{"version":3,"file":"paypalcorp.58ff93e09622e641a2b6.js","mappings":"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SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,QACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,SACN,GAAM,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","sources":["webpack:///../../node_modules/@paypalcorp/donate-react-advanced-end-date-badge/dist/donate-react-advanced-end-date-badge.esm.js","webpack:///../../node_modules/@paypalcorp/donate-react-campaign-image/dist/donate-react-campaign-image.esm.js","webpack:///../../node_modules/@paypalcorp/donate-react-campaigns-widget/dist/donate-react-campaigns-widget.esm.js","webpack:///../../node_modules/@paypalcorp/donate-react-cancel-return/dist/donate-react-cancel-return.esm.js","webpack:///../../node_modules/@paypalcorp/donate-react-checkbox/dist/donate-react-checkbox.esm.js","webpack:///../../node_modules/@paypalcorp/donate-react-donor-wall/dist/donate-react-donor-wall.esm.js","webpack:///../../node_modules/@paypalcorp/donate-react-goal-progress-meter/dist/donate-react-goal-progress-meter.esm.js","webpack:///../../node_modules/@paypalcorp/donate-react-hooks/dist/donate-react-hooks.esm.js","webpack:///../../node_modules/@paypalcorp/donate-react-logo-image/dist/donate-react-logo-image.esm.js","webpack:///../../node_modules/@paypalcorp/donate-react-preset-amounts/dist/donate-react-preset-amounts.esm.js","webpack:///../../node_modules/@paypalcorp/donate-react-single-amount/dist/donate-react-single-amount.esm.js","webpack:///../../node_modules/@paypalcorp/donate-react-status-badge/dist/donate-react-status-badge.esm.js","webpack:///../../node_modules/@paypalcorp/donate-react-title/dist/donate-react-title.esm.js","webpack:///../../node_modules/@paypalcorp/globalize/dist/globalize.js","webpack:///../../node_modules/@paypalcorp/globalize/dist/globalize/currency.js","webpack:///../../node_modules/@paypalcorp/globalize/dist/globalize/date.js","webpack:///../../node_modules/@paypalcorp/globalize/dist/globalize/number.js","webpack:///../../node_modules/@paypalcorp/globalize/dist/globalize/plural.js","webpack:///../../node_modules/@paypalcorp/globalize/dist/globalize/relative-time.js","webpack:///../../node_modules/@paypalcorp/globalize/dist/globalize/unit.js","webpack:///../../node_modules/@paypalcorp/globalize/dist/node-main.js","webpack:///../../node_modules/@paypalcorp/pp-react-accordion/dist/@paypalcorp/pp-react-accordion.esm.js","webpack:///../../node_modules/@paypalcorp/pp-react-alert/dist/@paypalcorp/pp-react-alert.esm.js","webpack:///../../node_modules/@paypalcorp/pp-react-animator/dist/@paypalcorp/pp-react-animator.esm.js","webpack:///../../node_modules/@paypalcorp/pp-react-badge/dist/@paypalcorp/pp-react-badge.esm.js","webpack:///../../node_modules/@paypalcorp/pp-react-banner/dist/@paypalcorp/pp-react-banner.esm.js","webpack:///../../node_modules/@paypalcorp/pp-react-buttons/dist/@paypalcorp/pp-react-buttons.esm.js","webpack:///../../node_modules/@paypalcorp/pp-react-card/dist/@paypalcorp/pp-react-card.esm.js","webpack:///../../node_modules/@paypalcorp/pp-react-checkbox/dist/@paypalcorp/pp-react-checkbox.esm.js","webpack:///../../node_modules/@paypalcorp/pp-react-contextual-alert/dist/@paypalcorp/pp-react-contextual-alert.esm.js","webpack:///../../node_modules/@paypalcorp/pp-react-currency-input/dist/@paypalcorp/pp-react-currency-input.esm.js","webpack:///../../node_modules/@paypalcorp/pp-react-data-table/dist/@paypalcorp/pp-react-data-table.esm.js","webpack:///../../node_modules/@paypalcorp/pp-react-date-input/dist/@paypalcorp/pp-react-date-input.esm.js","webpack:///../../node_modules/@paypalcorp/pp-react-divider/dist/@paypalcorp/pp-react-divider.esm.js","webpack:///../../node_modules/@paypalcorp/pp-react-dropdown-menu/dist/@paypalcorp/pp-react-dropdown-menu.esm.js","webpack:///../../node_modules/@paypalcorp/pp-react-flag/dist/@paypalcorp/pp-react-flag.esm.js","webpack:///../../node_modules/@paypalcorp/pp-react-grid/dist/@paypalcorp/pp-react-grid.esm.js","webpack:///../../node_modules/@paypalcorp/pp-react-horizontal-scroll/dist/@paypalcorp/pp-react-horizontal-scroll.esm.js","webpack:///../../node_modules/@paypalcorp/pp-react-icon-button/dist/@paypalcorp/pp-react-icon-button.esm.js","webpack:///../../node_modules/@paypalcorp/pp-react-icons/dist/@paypalcorp/pp-react-icons.esm.js","webpack:///../../node_modules/@paypalcorp/pp-react-intl/dist/@paypalcorp/pp-react-intl.esm.js","webpack:///../../node_modules/@paypalcorp/pp-react-links/dist/@paypalcorp/pp-react-links.esm.js","webpack:///../../node_modules/@paypalcorp/pp-react-list/dist/@paypalcorp/pp-react-list.esm.js","webpack:///../../node_modules/@paypalcorp/pp-react-loading-spinner/dist/@paypalcorp/pp-react-loading-spinner.esm.js","webpack:///../../node_modules/@paypalcorp/pp-react-masked-text-input/dist/@paypalcorp/pp-react-masked-text-input.esm.js","webpack:///../../node_modules/@paypalcorp/pp-react-menu/dist/@paypalcorp/pp-react-menu.esm.js","webpack:///../../node_modules/@paypalcorp/pp-react-modal/dist/@paypalcorp/pp-react-modal.esm.js","webpack:///../../node_modules/@paypalcorp/pp-react-overflow-menu/dist/@paypalcorp/pp-react-overflow-menu.esm.js","webpack:///../../node_modules/@paypalcorp/pp-react-progress-meter/dist/@paypalcorp/pp-react-progress-meter.esm.js","webpack:///../../node_modules/@paypalcorp/pp-react-radio/dist/@paypalcorp/pp-react-radio.esm.js","webpack:///../../node_modules/@paypalcorp/pp-react-segmented-controller/dist/@paypalcorp/pp-react-segmented-controller.esm.js","webpack:///../../node_modules/@paypalcorp/pp-react-switch/dist/@paypalcorp/pp-react-switch.esm.js","webpack:///../../node_modules/@paypalcorp/pp-react-table/dist/@paypalcorp/pp-react-table.esm.js","webpack:///../../node_modules/@paypalcorp/pp-react-text-input/dist/@paypalcorp/pp-react-text-input.esm.js","webpack:///../../node_modules/@paypalcorp/pp-react-text/dist/@paypalcorp/pp-react-text.esm.js","webpack:///../../node_modules/@paypalcorp/pp-react-theme/dist/@paypalcorp/pp-react-theme.esm.js","webpack:///../../node_modules/@paypalcorp/pp-react-toast/dist/@paypalcorp/pp-react-toast.esm.js","webpack:///../../node_modules/@paypalcorp/pp-react-tooltip/dist/@paypalcorp/pp-react-tooltip.esm.js","webpack:///../../node_modules/@paypalcorp/pp-react-utils/dist/@paypalcorp/pp-react-utils.esm.js","webpack:///../../node_modules/@paypalcorp/worldready-display-names/browser.js","webpack:///../../node_modules/@paypalcorp/worldready-phone/browser.js","webpack:///../../node_modules/@paypalcorp/worldready-name/browser.js","webpack:///../../node_modules/@paypalcorp/worldready-address/browser.js","webpack:///../../node_modules/@paypalcorp/worldready-example-generator/browser.js","webpack:///../../node_modules/@paypalcorp/pp-react-worldready/dist/@paypalcorp/pp-react-worldready.esm.js","webpack:///../../node_modules/@paypalcorp/pp-react-combobox/dist/@paypalcorp/pp-react-combobox.esm.js","webpack:///../../node_modules/@paypalcorp/pp-react-auto-suggest/dist/@paypalcorp/pp-react-auto-suggest.esm.js","webpack:///../../node_modules/@paypalcorp/pp-react-address-input/dist/@paypalcorp/pp-react-address-input.esm.js","webpack:///../../node_modules/@paypalcorp/pp-react-appbadge/dist/@paypalcorp/pp-react-appbadge.esm.js","webpack:///../../node_modules/@paypalcorp/pp-react-avatar/dist/@paypalcorp/pp-react-avatar.esm.js","webpack:///../../node_modules/@paypalcorp/pp-react-coach-tip/dist/@paypalcorp/pp-react-coach-tip.esm.js","webpack:///../../node_modules/@paypalcorp/pp-react-code-input/dist/@paypalcorp/pp-react-code-input.esm.js","webpack:///../../node_modules/@paypalcorp/pp-react-country-input/dist/@paypalcorp/pp-react-country-input.esm.js","webpack:///../../node_modules/@paypalcorp/pp-react-credit-card-input/dist/@paypalcorp/pp-react-credit-card-input.esm.js","webpack:///../../node_modules/@paypalcorp/pp-react-focus-flow/dist/@paypalcorp/pp-react-focus-flow.esm.js","webpack:///../../node_modules/@paypalcorp/pp-react-hero-currency/dist/@paypalcorp/pp-react-hero-currency.esm.js","webpack:///../../node_modules/@paypalcorp/pp-react-panel-slider/dist/@paypalcorp/pp-react-panel-slider.esm.js","webpack:///../../node_modules/@paypalcorp/pp-react-phone-input/dist/@paypalcorp/pp-react-phone-input.esm.js","webpack:///../../node_modules/@paypalcorp/pp-react-password-input/dist/@paypalcorp/pp-react-password-input.esm.js","webpack:///../../node_modules/@paypalcorp/pp-react-pill/dist/@paypalcorp/pp-react-pill.esm.js","webpack:///../../node_modules/@paypalcorp/pp-react-template/dist/@paypalcorp/pp-react-template.esm.js","webpack:///../../node_modules/@paypalcorp/pp-react-scroll-box/dist/@paypalcorp/pp-react-scroll-box.esm.js","webpack:///../../node_modules/@paypalcorp/pp-react-search-input/dist/@paypalcorp/pp-react-search-input.esm.js","webpack:///../../node_modules/@paypalcorp/pp-react-selection-group/dist/@paypalcorp/pp-react-selection-group.esm.js","webpack:///../../node_modules/@paypalcorp/pp-react-tabs/dist/@paypalcorp/pp-react-tabs.esm.js","webpack:///../../node_modules/@paypalcorp/relative-time/dist/relative-time.js","webpack:///../../node_modules/@paypalcorp/worldready-core/browser.js","webpack:///../../node_modules/@paypalcorp/worldready-currency/browser.js","webpack:///../../node_modules/@paypalcorp/worldready-smart-cache/browser.js","webpack:///../../node_modules/@paypalcorp/worldready-date/browser.js","webpack:///../../node_modules/@paypalcorp/worldready-message/browser.js","webpack:///../../node_modules/@paypalcorp/worldready-number/browser.js","webpack:///../../node_modules/@paypalcorp/worldready-react/browser.js","webpack:///../../node_modules/@paypalcorp/worldready-react/node_modules/react/cjs/react.production.min.js","webpack:///../../node_modules/@paypalcorp/worldready-react/node_modules/react/index.js","webpack:///../../node_modules/@paypalcorp/worldready-relative-time/browser.js","webpack:///../../node_modules/ppui4theme/dist/@paypalcorp/pp-react-theme.esm.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Badge } from '@paypalcorp/pp-react';\n\nvar CAMPAIGN_STATUS = {\n ACTIVE: 'ACTIVE',\n INACTIVE: 'INACTIVE',\n DRAFT: 'DRAFT'\n};\nfunction getBadgeDisplayAttributes(endTime, currentTime, content) {\n var type = 'warning';\n var oneDay = 1000 * 60 * 60 * 24;\n var daysBetween = Math.round(Math.abs((endTime - currentTime) / oneDay));\n var timeDifference = endTime.getTime() - currentTime.getTime();\n var hoursBetween = Math.round(timeDifference / (1000 * 60 * 60));\n var minutesBetween = Math.floor(Math.abs(timeDifference / (1000 * 60)));\n var yearsBetween = Math.round(Math.abs(endTime.getFullYear() - currentTime.getFullYear()));\n var duration = daysBetween;\n var unit = daysBetween > 1 ? getContent(content, 'days') : getContent(content, 'day');\n if (daysBetween > 365) {\n duration = yearsBetween;\n unit = yearsBetween > 1 ? getContent(content, 'years') : getContent(content, 'year');\n type = 'warning';\n } else if (daysBetween > 61 && daysBetween <= 365) {\n var monthsBetween = Math.floor(daysBetween / 30);\n duration = monthsBetween;\n unit = monthsBetween > 1 ? getContent(content, 'months') : getContent(content, 'month');\n type = 'warning';\n } else if (hoursBetween <= 24 && hoursBetween >= 1) {\n duration = hoursBetween;\n unit = hoursBetween > 1 ? getContent(content, 'hours') : getContent(content, 'hour');\n type = 'critical';\n } else if (hoursBetween <= 1 && hoursBetween >= 0) {\n duration = minutesBetween;\n unit = minutesBetween > 1 ? getContent(content, 'minutes') : getContent(content, 'minute');\n type = 'critical';\n }\n return {\n duration: duration,\n unit: unit,\n type: type\n };\n}\n\n/**\n * Function that gets content from an object of translated strings to avoid errors or undefined values in case the object is not provided\n * @param {object} content translated strings\n * @param {string} key key to obtain the value of a translated string\n * @returns The content from the provided object or an empty string\n */\nfunction getContent(content, key) {\n if (content && content[key]) {\n return content[key];\n }\n return '';\n}\nfunction isEmptyValue(value) {\n return value === undefined || value === null || value === '';\n}\nfunction isValidDate(date) {\n return date instanceof Date && !isNaN(date.valueOf());\n}\n\nfunction _extends() {\n return _extends = Object.assign ? Object.assign.bind() : function (n) {\n for (var e = 1; e < arguments.length; e++) {\n var t = arguments[e];\n for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);\n }\n return n;\n }, _extends.apply(null, arguments);\n}\n\nvar EndDateBadge = function EndDateBadge(_ref) {\n var content = _ref.content,\n className = _ref.className,\n type = _ref.type;\n var classObj = className ? {\n className: className\n } : {};\n return /*#__PURE__*/React.createElement(Badge, _extends({\n type: type\n }, classObj), content);\n};\nEndDateBadge.propTypes = {\n content: PropTypes.string,\n className: PropTypes.string,\n type: PropTypes.string,\n theme: PropTypes.string\n};\n\nfunction AdvancedEndDateBadge(_ref) {\n var content = _ref.content,\n endTime = _ref.endTime,\n campaignStatus = _ref.campaignStatus,\n currentTime = _ref.currentTime,\n formatDate = _ref.formatDate;\n var isValidEndTime = !isEmptyValue(endTime === null || endTime === void 0 ? void 0 : endTime.toString()) && isValidDate(endTime);\n var hasEnded = isValidEndTime && endTime.getTime() - currentTime.getTime() <= 0;\n var showEndDateBadge = isValidEndTime && (campaignStatus === CAMPAIGN_STATUS.ACTIVE || campaignStatus === CAMPAIGN_STATUS.DRAFT);\n var displayAttributes = {};\n var endDateContent = '';\n if (showEndDateBadge && !hasEnded) {\n displayAttributes = getBadgeDisplayAttributes(endTime, currentTime, content);\n endDateContent = getContent(content, 'endsInContent').replace('{duration}', displayAttributes.duration).replace('{unit}', displayAttributes.unit);\n } else if (showEndDateBadge && hasEnded) {\n displayAttributes = {\n type: 'neutral'\n };\n endDateContent = getContent(content, 'endedContent').replace('{date}', formatDate(endTime));\n }\n return /*#__PURE__*/React.createElement(React.Fragment, null, showEndDateBadge && /*#__PURE__*/React.createElement(EndDateBadge, {\n type: displayAttributes.type,\n content: endDateContent\n }));\n}\nAdvancedEndDateBadge.propTypes = {\n content: PropTypes.object,\n endTime: PropTypes.instanceOf(Date),\n campaignStatus: PropTypes.string,\n currentTime: PropTypes.instanceOf(Date),\n formatDate: PropTypes.func\n};\n\nexport { AdvancedEndDateBadge };\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport _isEmpty from 'lodash/isEmpty';\nimport { PictureIcon, CaptionText } from '@paypalcorp/pp-react';\n\nfunction _defineProperty(e, r, t) {\n return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, {\n value: t,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }) : e[r] = t, e;\n}\nfunction _extends$1() {\n return _extends$1 = Object.assign ? Object.assign.bind() : function (n) {\n for (var e = 1; e < arguments.length; e++) {\n var t = arguments[e];\n for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);\n }\n return n;\n }, _extends$1.apply(null, arguments);\n}\nfunction ownKeys(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function (r) {\n return Object.getOwnPropertyDescriptor(e, r).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread2(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys(Object(t), !0).forEach(function (r) {\n _defineProperty(e, r, t[r]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) {\n Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));\n });\n }\n return e;\n}\nfunction _objectWithoutProperties$1(e, t) {\n if (null == e) return {};\n var o,\n r,\n i = _objectWithoutPropertiesLoose$1(e, t);\n if (Object.getOwnPropertySymbols) {\n var n = Object.getOwnPropertySymbols(e);\n for (r = 0; r < n.length; r++) o = n[r], t.indexOf(o) >= 0 || {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]);\n }\n return i;\n}\nfunction _objectWithoutPropertiesLoose$1(r, e) {\n if (null == r) return {};\n var t = {};\n for (var n in r) if ({}.hasOwnProperty.call(r, n)) {\n if (e.indexOf(n) >= 0) continue;\n t[n] = r[n];\n }\n return t;\n}\nfunction _toPrimitive(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nfunction _toPropertyKey(t) {\n var i = _toPrimitive(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\n\nfunction _extends() {\n return _extends = Object.assign ? Object.assign.bind() : function (n) {\n for (var e = 1; e < arguments.length; e++) {\n var t = arguments[e];\n for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);\n }\n return n;\n }, _extends.apply(null, arguments);\n}\nfunction _objectWithoutProperties(e, t) {\n if (null == e) return {};\n var o,\n r,\n i = _objectWithoutPropertiesLoose(e, t);\n if (Object.getOwnPropertySymbols) {\n var n = Object.getOwnPropertySymbols(e);\n for (r = 0; r < n.length; r++) o = n[r], t.indexOf(o) >= 0 || {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]);\n }\n return i;\n}\nfunction _objectWithoutPropertiesLoose(r, e) {\n if (null == r) return {};\n var t = {};\n for (var n in r) if ({}.hasOwnProperty.call(r, n)) {\n if (e.indexOf(n) >= 0) continue;\n t[n] = r[n];\n }\n return t;\n}\n\nfunction r(e){var t,f,n=\"\";if(\"string\"==typeof e||\"number\"==typeof e)n+=e;else if(\"object\"==typeof e)if(Array.isArray(e))for(t=0;t= 0 || {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]);\n }\n return i;\n}\nfunction _objectWithoutPropertiesLoose$1(r, e) {\n if (null == r) return {};\n var t = {};\n for (var n in r) if ({}.hasOwnProperty.call(r, n)) {\n if (e.indexOf(n) >= 0) continue;\n t[n] = r[n];\n }\n return t;\n}\n\nvar _excluded$1 = [\"title\", \"size\"];\nvar Title = function Title(_ref) {\n var title = _ref.title,\n size = _ref.size,\n rest = _objectWithoutProperties$1(_ref, _excluded$1);\n return /*#__PURE__*/React.createElement(HeadingText, _extends$1({\n size: size\n }, rest), title);\n};\nTitle.propTypes = {\n title: PropTypes.string,\n size: PropTypes.string\n};\n\nfunction _extends() {\n return _extends = Object.assign ? Object.assign.bind() : function (n) {\n for (var e = 1; e < arguments.length; e++) {\n var t = arguments[e];\n for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);\n }\n return n;\n }, _extends.apply(null, arguments);\n}\nfunction _objectWithoutProperties(e, t) {\n if (null == e) return {};\n var o,\n r,\n i = _objectWithoutPropertiesLoose(e, t);\n if (Object.getOwnPropertySymbols) {\n var n = Object.getOwnPropertySymbols(e);\n for (r = 0; r < n.length; r++) o = n[r], t.indexOf(o) >= 0 || {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]);\n }\n return i;\n}\nfunction _objectWithoutPropertiesLoose(r, e) {\n if (null == r) return {};\n var t = {};\n for (var n in r) if ({}.hasOwnProperty.call(r, n)) {\n if (e.indexOf(n) >= 0) continue;\n t[n] = r[n];\n }\n return t;\n}\n\nfunction r(e){var t,f,n=\"\";if(\"string\"==typeof e||\"number\"==typeof e)n+=e;else if(\"object\"==typeof e)if(Array.isArray(e))for(t=0;t= 0 || {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]);\n }\n return i;\n}\nfunction _objectWithoutPropertiesLoose(r, e) {\n if (null == r) return {};\n var t = {};\n for (var n in r) if ({}.hasOwnProperty.call(r, n)) {\n if (e.indexOf(n) >= 0) continue;\n t[n] = r[n];\n }\n return t;\n}\n\nfunction styleInject(css, ref) {\n if ( ref === void 0 ) ref = {};\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nvar css_248z = \".styles-module_checkbox_with_tooltip__-PLEI {\\n display: flex;\\n align-items: center;\\n}\\n.styles-module_pointer_events__oWspB {\\n pointer-events: none;\\n}\\n\";\nvar styles = {\"checkbox_with_tooltip\":\"styles-module_checkbox_with_tooltip__-PLEI\",\"pointer_events\":\"styles-module_pointer_events__oWspB\"};\nstyleInject(css_248z);\n\nvar _excluded = [\"checkbox_content\", \"tooltip_content\", \"disabled\"];\nfunction DonateCheckbox(props) {\n var checkbox_content = props.checkbox_content,\n tooltip_content = props.tooltip_content,\n disabled = props.disabled,\n restProps = _objectWithoutProperties(props, _excluded);\n return /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(tooltip_content && styles.checkbox_with_tooltip, \" \").concat(disabled && styles.pointer_events)\n }, /*#__PURE__*/React.createElement(Checkbox, _extends({\n label: checkbox_content,\n disabled: disabled !== null && disabled !== void 0 ? disabled : false\n }, restProps)), tooltip_content && /*#__PURE__*/React.createElement(Tooltip, {\n disabled: disabled !== null && disabled !== void 0 ? disabled : false,\n description: tooltip_content\n }));\n}\nDonateCheckbox.propTypes = {\n checkbox_content: PropTypes.oneOfType([PropTypes.object, PropTypes.string]),\n tooltip_content: PropTypes.oneOfType([PropTypes.object, PropTypes.string]),\n name: PropTypes.string,\n disabled: PropTypes.bool,\n className: PropTypes.string,\n testid: PropTypes.string,\n checked: PropTypes.bool,\n onChange: PropTypes.func,\n onClick: PropTypes.func\n};\n\nexport { DonateCheckbox };\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Avatar, BodyText, CaptionText, Badge, PreferredSelectedIcon, Divider, HeadingText, LoadingSpinner, ContextualAlert, Button } from '@paypalcorp/pp-react';\n\nfunction styleInject$1(css, ref) {\n if ( ref === void 0 ) ref = {};\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nvar css_248z$1 = \".styles-module_title__exTx3 {\\n margin-bottom: 52px;\\n}\\n.styles-module_showMore__AjopN {\\n text-align: center;\\n}\\n.styles-module_donorList__n4HJ0 {\\n margin: 0;\\n padding: 0;\\n}\\n.styles-module_container__SRhpS {\\n display: flex;\\n padding: 12px 0px;\\n margin-bottom: 16px;\\n}\\n.styles-module_avatar__ClcMc {\\n flex-shrink: 0;\\n margin-right: 12px;\\n}\\ndiv.styles-module_anonymous__iDOF8 {\\n background-color: #25694f !important;\\n}\\n.styles-module_anonymous__iDOF8 svg:first-of-type {\\n color: #cbf3ec;\\n}\\n.styles-module_details__0zbF8 {\\n flex-grow: 1;\\n}\\n.styles-module_detailsRow__IEUgF {\\n display: flex;\\n justify-content: space-between;\\n align-items: center;\\n}\\n.styles-module_shimmerDetails__3p-QH > div:first-of-type {\\n margin-bottom: 6px;\\n}\\n.styles-module_date__svSd3 {\\n color: #515354 !important;\\n margin-top: 7px;\\n text-transform: capitalize;\\n}\\n.styles-module_amount__cJ6-h {\\n flex-shrink: 0;\\n}\\n.styles-module_note__Breg5 {\\n color: #515354;\\n background-color: #f7f5f0;\\n border-radius: 2px 8px 8px 8px;\\n display: inline-block;\\n margin-top: 12px;\\n padding: 14px 12px;\\n word-break: break-word;\\n}\\n\";\nvar styles$1 = {\"title\":\"styles-module_title__exTx3\",\"showMore\":\"styles-module_showMore__AjopN\",\"donorList\":\"styles-module_donorList__n4HJ0\",\"container\":\"styles-module_container__SRhpS\",\"avatar\":\"styles-module_avatar__ClcMc\",\"anonymous\":\"styles-module_anonymous__iDOF8\",\"details\":\"styles-module_details__0zbF8\",\"detailsRow\":\"styles-module_detailsRow__IEUgF\",\"shimmerDetails\":\"styles-module_shimmerDetails__3p-QH\",\"date\":\"styles-module_date__svSd3\",\"amount\":\"styles-module_amount__cJ6-h\",\"note\":\"styles-module_note__Breg5\"};\nstyleInject$1(css_248z$1);\n\nfunction styleInject(css, ref) {\n if ( ref === void 0 ) ref = {};\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nvar css_248z = \"div.styles-module_anonymous__iDOF8 {\\n background-color: #005400 !important;\\n}\\n.styles-module_anonymous__iDOF8 svg:first-of-type {\\n color: #d4f490;\\n}\\n\";\nvar styles = {\"anonymous\":\"styles-module_anonymous__iDOF8\"};\nstyleInject(css_248z);\n\nfunction extractUserInitials(userName) {\n // split the names using space as delimiter\n var splitNames = userName.split(/ +/g).filter(function (e) {\n return e;\n });\n // first name - straight forward\n var firstName = splitNames.length > 0 ? splitNames[0] : null;\n // last name - if user has middle name, consider last element as last name\n var lastName = splitNames.length > 1 ? splitNames[splitNames.length - 1] : null;\n var initials;\n if (firstName) {\n initials = firstName[0];\n }\n if (lastName) {\n initials = \"\".concat(initials).concat(lastName[0]);\n }\n return initials;\n}\n\nfunction DonorAvatar(_ref) {\n var _ref$isAnonymousAvata = _ref.isAnonymousAvatar,\n isAnonymousAvatar = _ref$isAnonymousAvata === void 0 ? false : _ref$isAnonymousAvata,\n name = _ref.name,\n photo = _ref.photo,\n color = _ref.color,\n className = _ref.className,\n _ref$size = _ref.size,\n size = _ref$size === void 0 ? 'sm' : _ref$size;\n return /*#__PURE__*/React.createElement(React.Fragment, null, isAnonymousAvatar ? /*#__PURE__*/React.createElement(Avatar, {\n generic: \"profile\",\n color: \"green\",\n size: size,\n className: className ? \"\".concat(styles.anonymous, \" \").concat(className) : styles.anonymous\n }) : /*#__PURE__*/React.createElement(Avatar, {\n src: photo,\n initials: extractUserInitials(name),\n color: color,\n size: size,\n className: className ? className : {}\n }));\n}\nDonorAvatar.propTypes = {\n isAnonymousAvatar: PropTypes.bool,\n name: PropTypes.string,\n photo: PropTypes.string,\n color: PropTypes.string,\n theme: PropTypes.string,\n className: PropTypes.string,\n size: PropTypes.string\n};\n\nfunction DonorRow(_ref) {\n var name = _ref.name,\n photo = _ref.photo,\n color = _ref.color,\n time = _ref.time,\n note = _ref.note,\n amount = _ref.amount,\n shareDonorInfo = _ref.shareDonorInfo,\n anonymousLabel = _ref.anonymousLabel,\n badgeType = _ref.badgeType,\n firstLabel = _ref.firstLabel,\n topLabel = _ref.topLabel,\n isPreviewMode = _ref.isPreviewMode,\n _ref$theme = _ref.theme,\n theme = _ref$theme === void 0 ? 'v2' : _ref$theme;\n var showAnonymousAvatar = !(shareDonorInfo && !isPreviewMode);\n return /*#__PURE__*/React.createElement(\"li\", {\n className: styles$1.container\n }, /*#__PURE__*/React.createElement(DonorAvatar, {\n photo: photo,\n name: name,\n color: color,\n isAnonymousAvatar: showAnonymousAvatar,\n className: styles$1.avatar,\n size: \"sm\"\n }), /*#__PURE__*/React.createElement(\"div\", {\n className: styles$1.details\n }, /*#__PURE__*/React.createElement(\"div\", {\n className: styles$1.detailsRow\n }, /*#__PURE__*/React.createElement(BodyText, {\n theme: theme\n }, shareDonorInfo || isPreviewMode ? name : anonymousLabel), /*#__PURE__*/React.createElement(BodyText, {\n className: styles$1.amount,\n theme: theme\n }, amount)), /*#__PURE__*/React.createElement(\"div\", {\n className: styles$1.detailsRow\n }, /*#__PURE__*/React.createElement(CaptionText, {\n className: styles$1.date,\n theme: theme\n }, time), badgeType === 'TOP' || badgeType === 'FIRST' ? /*#__PURE__*/React.createElement(Badge, {\n type: \"feature\",\n leftIcon: PreferredSelectedIcon,\n leftIconLabel: \"V2PreferredFilledIcon\"\n }, badgeType === 'FIRST' ? firstLabel : topLabel) : null), note ? /*#__PURE__*/React.createElement(CaptionText, {\n className: styles$1.note,\n theme: theme\n }, note) : null));\n}\nDonorRow.propTypes = {\n name: PropTypes.string,\n photo: PropTypes.string,\n color: PropTypes.string,\n time: PropTypes.string,\n note: PropTypes.string,\n amount: PropTypes.string,\n shareDonorInfo: PropTypes.bool,\n anonymousLabel: PropTypes.string,\n badgeType: PropTypes.string,\n firstLabel: PropTypes.string,\n topLabel: PropTypes.string,\n isPreviewMode: PropTypes.bool,\n theme: PropTypes.string\n};\n\nfunction ShimmerRow() {\n return /*#__PURE__*/React.createElement(\"div\", {\n className: styles$1.container\n }, /*#__PURE__*/React.createElement(Avatar, {\n isLoading: true,\n size: \"sm\",\n className: styles$1.avatar\n }), /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(styles$1.details, \" \").concat(styles$1.shimmerDetails)\n }, /*#__PURE__*/React.createElement(BodyText, {\n size: \"hero\",\n isLoading: true\n }), /*#__PURE__*/React.createElement(CaptionText, {\n size: \"hero\",\n isLoading: true\n })));\n}\n\nfunction Shimmer(_ref) {\n var loadingLabel = _ref.loadingLabel;\n return /*#__PURE__*/React.createElement(\"div\", {\n role: \"alert\",\n \"aria-label\": loadingLabel\n }, /*#__PURE__*/React.createElement(ShimmerRow, null), /*#__PURE__*/React.createElement(ShimmerRow, null), /*#__PURE__*/React.createElement(Divider, null), /*#__PURE__*/React.createElement(ShimmerRow, null));\n}\nShimmer.propTypes = {\n loadingLabel: PropTypes.string\n};\n\nfunction DonorWall(_ref) {\n var _ref$content = _ref.content,\n title = _ref$content.title,\n loading = _ref$content.loading,\n showMore = _ref$content.showMore,\n ariaLabel = _ref$content.ariaLabel,\n anonymous = _ref$content.anonymous,\n first = _ref$content.first,\n top = _ref$content.top,\n paginationLimitMessage = _ref$content.paginationLimitMessage,\n contributions = _ref.contributions,\n handleShowMore = _ref.handleShowMore,\n totalTransactions = _ref.totalTransactions,\n currentPage = _ref.currentPage,\n transactionsPerPage = _ref.transactionsPerPage,\n isLoading = _ref.isLoading,\n _ref$isPreviewMode = _ref.isPreviewMode,\n isPreviewMode = _ref$isPreviewMode === void 0 ? false : _ref$isPreviewMode,\n paginationLimit = _ref.paginationLimit;\n function renderShowMore() {\n if (isLoading && currentPage !== 1) {\n return /*#__PURE__*/React.createElement(LoadingSpinner, {\n screenReaderText: loading,\n style: {\n margin: '0 auto'\n }\n });\n } else if (currentPage * transactionsPerPage < totalTransactions) {\n if (paginationLimit && paginationLimit <= currentPage && paginationLimitMessage.length > 0) {\n return /*#__PURE__*/React.createElement(ContextualAlert, {\n type: \"warning\"\n }, paginationLimitMessage);\n }\n return /*#__PURE__*/React.createElement(Button, {\n tertiary: true,\n onClick: handleShowMore\n }, showMore);\n }\n return null;\n }\n return /*#__PURE__*/React.createElement(React.Fragment, null, isLoading && currentPage === 1 ? /*#__PURE__*/React.createElement(Shimmer, {\n loadingLabel: loading\n }) : /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(HeadingText, {\n size: \"sm\",\n className: styles$1.title\n }, title), contributions.featured.length > 0 ? /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"ul\", {\n className: styles$1.donorList\n }, contributions.featured.map(function (txn) {\n var _txn$photos$6$url, _txn$photos;\n return /*#__PURE__*/React.createElement(DonorRow, {\n key: txn.id,\n photo: (_txn$photos$6$url = (_txn$photos = txn.photos) === null || _txn$photos === void 0 || (_txn$photos = _txn$photos[6]) === null || _txn$photos === void 0 ? void 0 : _txn$photos.url) !== null && _txn$photos$6$url !== void 0 ? _txn$photos$6$url : '',\n name: txn.donor_name,\n color: txn.color,\n time: txn.formattedDate,\n note: txn.memo,\n amount: txn.formattedAmount,\n shareDonorInfo: txn.shareDonorInfo,\n anonymousLabel: anonymous,\n badgeType: txn.badge,\n firstLabel: first,\n topLabel: top,\n isPreviewMode: isPreviewMode\n });\n })), /*#__PURE__*/React.createElement(Divider, null)) : null, /*#__PURE__*/React.createElement(\"ul\", {\n className: styles$1.donorList,\n \"aria-label\": ariaLabel\n }, contributions.list.map(function (txn) {\n var _txn$photos$6$url2, _txn$photos2;\n return contributions.featured.some(function (i) {\n return i.id === txn.id;\n }) ? null : /*#__PURE__*/React.createElement(DonorRow, {\n key: txn.id,\n photo: (_txn$photos$6$url2 = (_txn$photos2 = txn.photos) === null || _txn$photos2 === void 0 || (_txn$photos2 = _txn$photos2[6]) === null || _txn$photos2 === void 0 ? void 0 : _txn$photos2.url) !== null && _txn$photos$6$url2 !== void 0 ? _txn$photos$6$url2 : '',\n name: txn.donor_name,\n color: txn.color,\n time: txn.formattedDate,\n note: txn.memo,\n amount: txn.formattedAmount,\n shareDonorInfo: txn.shareDonorInfo,\n anonymousLabel: anonymous,\n isPreviewMode: isPreviewMode\n });\n })), /*#__PURE__*/React.createElement(\"div\", {\n className: styles$1.showMore\n }, renderShowMore())));\n}\nDonorWall.propTypes = {\n content: PropTypes.shape({\n loading: PropTypes.string,\n title: PropTypes.string,\n showMore: PropTypes.string,\n ariaLabel: PropTypes.string,\n anonymous: PropTypes.string,\n first: PropTypes.string,\n top: PropTypes.string,\n paginationLimitMessage: PropTypes.string\n }),\n contributions: PropTypes.object,\n handleShowMore: PropTypes.func,\n currentPage: PropTypes.number,\n transactionsPerPage: PropTypes.number,\n totalTransactions: PropTypes.number,\n isLoading: PropTypes.bool,\n isPreviewMode: PropTypes.bool,\n paginationLimit: PropTypes.number\n};\n\nexport { DonorWall };\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { ProgressMeter } from '@paypalcorp/pp-react';\n\nfunction _extends() {\n return _extends = Object.assign ? Object.assign.bind() : function (n) {\n for (var e = 1; e < arguments.length; e++) {\n var t = arguments[e];\n for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);\n }\n return n;\n }, _extends.apply(null, arguments);\n}\n\nvar GoalProgressMeter = function GoalProgressMeter(_ref) {\n var max = _ref.max,\n value = _ref.value,\n steps = _ref.steps,\n title = _ref.title,\n className = _ref.className;\n var classObj = className ? {\n className: className\n } : {};\n return /*#__PURE__*/React.createElement(ProgressMeter, _extends({\n max: max,\n value: value,\n steps: steps,\n title: title\n }, classObj));\n};\nGoalProgressMeter.propTypes = {\n max: PropTypes.string,\n value: PropTypes.string,\n steps: PropTypes.string,\n title: PropTypes.oneOfType([PropTypes.object, PropTypes.string]),\n className: PropTypes.string\n};\n\nexport { GoalProgressMeter };\n","import { useState, useLayoutEffect } from 'react';\n\nfunction _arrayLikeToArray(r, a) {\n (null == a || a > r.length) && (a = r.length);\n for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e];\n return n;\n}\nfunction _arrayWithHoles(r) {\n if (Array.isArray(r)) return r;\n}\nfunction _iterableToArrayLimit(r, l) {\n var t = null == r ? null : \"undefined\" != typeof Symbol && r[Symbol.iterator] || r[\"@@iterator\"];\n if (null != t) {\n var e,\n n,\n i,\n u,\n a = [],\n f = !0,\n o = !1;\n try {\n if (i = (t = t.call(r)).next, 0 === l) {\n if (Object(t) !== t) return;\n f = !1;\n } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0);\n } catch (r) {\n o = !0, n = r;\n } finally {\n try {\n if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return;\n } finally {\n if (o) throw n;\n }\n }\n return a;\n }\n}\nfunction _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\nfunction _slicedToArray(r, e) {\n return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest();\n}\nfunction _unsupportedIterableToArray(r, a) {\n if (r) {\n if (\"string\" == typeof r) return _arrayLikeToArray(r, a);\n var t = {}.toString.call(r).slice(8, -1);\n return \"Object\" === t && r.constructor && (t = r.constructor.name), \"Map\" === t || \"Set\" === t ? Array.from(r) : \"Arguments\" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0;\n }\n}\n\nfunction useHasScrolledToPosition(offset) {\n var _useState = useState(false),\n _useState2 = _slicedToArray(_useState, 2),\n stickToTop = _useState2[0],\n setStickToTop = _useState2[1];\n useLayoutEffect(function () {\n window.addEventListener('scroll', handleScroll);\n return function () {\n window.removeEventListener('scroll', handleScroll);\n };\n });\n var handleScroll = function handleScroll() {\n setStickToTop(window.scrollY > offset);\n };\n return stickToTop;\n}\n\nexport { useHasScrolledToPosition };\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport _isEmpty from 'lodash/isEmpty';\nimport { PictureIcon, CaptionText } from '@paypalcorp/pp-react';\n\nfunction _defineProperty(e, r, t) {\n return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, {\n value: t,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }) : e[r] = t, e;\n}\nfunction _extends$1() {\n return _extends$1 = Object.assign ? Object.assign.bind() : function (n) {\n for (var e = 1; e < arguments.length; e++) {\n var t = arguments[e];\n for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);\n }\n return n;\n }, _extends$1.apply(null, arguments);\n}\nfunction ownKeys(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function (r) {\n return Object.getOwnPropertyDescriptor(e, r).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread2(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys(Object(t), !0).forEach(function (r) {\n _defineProperty(e, r, t[r]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) {\n Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));\n });\n }\n return e;\n}\nfunction _objectWithoutProperties$1(e, t) {\n if (null == e) return {};\n var o,\n r,\n i = _objectWithoutPropertiesLoose$1(e, t);\n if (Object.getOwnPropertySymbols) {\n var n = Object.getOwnPropertySymbols(e);\n for (r = 0; r < n.length; r++) o = n[r], t.indexOf(o) >= 0 || {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]);\n }\n return i;\n}\nfunction _objectWithoutPropertiesLoose$1(r, e) {\n if (null == r) return {};\n var t = {};\n for (var n in r) if ({}.hasOwnProperty.call(r, n)) {\n if (e.indexOf(n) >= 0) continue;\n t[n] = r[n];\n }\n return t;\n}\nfunction _toPrimitive(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nfunction _toPropertyKey(t) {\n var i = _toPrimitive(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\n\nfunction _extends() {\n return _extends = Object.assign ? Object.assign.bind() : function (n) {\n for (var e = 1; e < arguments.length; e++) {\n var t = arguments[e];\n for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);\n }\n return n;\n }, _extends.apply(null, arguments);\n}\nfunction _objectWithoutProperties(e, t) {\n if (null == e) return {};\n var o,\n r,\n i = _objectWithoutPropertiesLoose(e, t);\n if (Object.getOwnPropertySymbols) {\n var n = Object.getOwnPropertySymbols(e);\n for (r = 0; r < n.length; r++) o = n[r], t.indexOf(o) >= 0 || {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]);\n }\n return i;\n}\nfunction _objectWithoutPropertiesLoose(r, e) {\n if (null == r) return {};\n var t = {};\n for (var n in r) if ({}.hasOwnProperty.call(r, n)) {\n if (e.indexOf(n) >= 0) continue;\n t[n] = r[n];\n }\n return t;\n}\n\nfunction r(e){var t,f,n=\"\";if(\"string\"==typeof e||\"number\"==typeof e)n+=e;else if(\"object\"==typeof e)if(Array.isArray(e))for(t=0;t ((_b$label = b.label) === null || _b$label === void 0 ? void 0 : _b$label.length) ? a : b;\n }, 0);\n return longestOption === null || longestOption === void 0 || (_longestOption$label = longestOption.label) === null || _longestOption$label === void 0 ? void 0 : _longestOption$label.length;\n}\n\nfunction r(e){var t,f,n=\"\";if(\"string\"==typeof e||\"number\"==typeof e)n+=e;else if(\"object\"==typeof e)if(Array.isArray(e))for(t=0;t fieldset label:hover {\\n border-color: #ffffff;\\n cursor: inherit;\\n}\\n.styles-module_single_selection_group_wrapper__f6Y6v {\\n width: 100%;\\n}\\n.styles-module_single_selection_group_wrapper__f6Y6v:nth-child(1n) > fieldset label {\\n flex: 1;\\n padding: 5px !important;\\n}\\n.styles-module_single_selection_group_wrapper__f6Y6v:nth-child(1n)\\n > fieldset\\n div[class*='ppvx_selection-group__buttons'] {\\n min-width: 44px !important;\\n}\\n\\n.styles-module_normal_desktop_boxes__F-zcF:nth-child(1n) > fieldset label {\\n min-width: 100px;\\n max-width: 30%;\\n}\\n\\n@media only screen and (max-width: 467px) {\\n .styles-module_normal_desktop_boxes__F-zcF:nth-child(1n) > fieldset {\\n width: 100%;\\n }\\n}\\n@media only screen and (max-width: 355px) {\\n .styles-module_normal_desktop_boxes__F-zcF:nth-child(1n) > fieldset {\\n width: auto;\\n }\\n .styles-module_normal_desktop_boxes__F-zcF:nth-child(1n) > fieldset label {\\n max-width: none;\\n }\\n}\\n.styles-module_max_desktop_boxes__pUsNL:nth-child(1n) > fieldset label {\\n min-width: 122px;\\n max-width: 31%;\\n}\\n@media only screen and (max-width: 421px) {\\n .styles-module_max_desktop_boxes__pUsNL:nth-child(1n) > fieldset label {\\n max-width: none;\\n }\\n}\\n.styles-module_mobile_preview_small_boxes__QuDTa:nth-child(1n) > fieldset label {\\n min-width: 20%;\\n max-width: 29%;\\n}\\n.styles-module_mobile_preview_large_boxes__KqZaX:nth-child(1n) > fieldset label {\\n min-width: 30%;\\n}\\n\\n.styles-module_mobile_preview_max_boxes__tQnVY:nth-child(1n) > fieldset label {\\n min-width: 45%;\\n}\\n\";\nvar styles = {\"selection_disabled\":\"styles-module_selection_disabled__-zpMH\",\"single_selection_group_wrapper\":\"styles-module_single_selection_group_wrapper__f6Y6v\",\"normal_desktop_boxes\":\"styles-module_normal_desktop_boxes__F-zcF\",\"max_desktop_boxes\":\"styles-module_max_desktop_boxes__pUsNL\",\"mobile_preview_small_boxes\":\"styles-module_mobile_preview_small_boxes__QuDTa\",\"mobile_preview_large_boxes\":\"styles-module_mobile_preview_large_boxes__KqZaX\",\"mobile_preview_max_boxes\":\"styles-module_mobile_preview_max_boxes__tQnVY\"};\nstyleInject(css_248z);\n\nfunction PresetAmounts(_ref) {\n var presetOptions = _ref.presetOptions,\n selectedOption = _ref.selectedOption,\n handlePresetAmountClick = _ref.handlePresetAmountClick,\n showOtherAmount = _ref.showOtherAmount,\n amountFieldValue = _ref.amountFieldValue,\n isMobilePreview = _ref.isMobilePreview,\n charityAmountSymbol = _ref.charityAmountSymbol,\n charityAmountCode = _ref.charityAmountCode,\n showValidationError = _ref.showValidationError,\n messages = _ref.messages,\n handleAmountChange = _ref.handleAmountChange,\n isPreview = _ref.isPreview;\n var longestAmount = determineLongestAmount(presetOptions);\n var boxWidth = '';\n boxWidth = longestAmount > 10 ? 'max' : 'large';\n boxWidth = longestAmount < 6 ? 'small' : boxWidth;\n var smallWidthBoxes = boxWidth === 'small';\n var largeWidthBoxes = boxWidth === 'large';\n var maxWidthBoxes = boxWidth === 'max';\n var selectionGroupWrapperClassnames = clsx(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty({}, styles.single_selection_group_wrapper, true), styles.normal_desktop_boxes, !isMobilePreview && (largeWidthBoxes || smallWidthBoxes)), styles.max_desktop_boxes, !isMobilePreview && maxWidthBoxes), styles.mobile_preview_small_boxes, isMobilePreview && smallWidthBoxes), styles.mobile_preview_large_boxes, isMobilePreview && largeWidthBoxes), styles.mobile_preview_max_boxes, isMobilePreview && maxWidthBoxes), styles.selection_disabled, isPreview ? true : false));\n var errorText = showOtherAmount ? '' : showValidationError && messages.validationErrorMessage;\n var handleChange = function handleChange(event) {\n handlePresetAmountClick(event.target.value);\n };\n return /*#__PURE__*/React.createElement(\"div\", {\n className: selectionGroupWrapperClassnames\n }, /*#__PURE__*/React.createElement(SingleSelectionGroup, {\n name: \"preset-amounts\",\n options: presetOptions,\n value: selectedOption,\n onChange: handleChange,\n errorText: errorText,\n align: \"justify\",\n hideLabel: true,\n disabled: isPreview ? true : false\n }), showOtherAmount && /*#__PURE__*/React.createElement(AmountCondensed, {\n amount: amountFieldValue,\n symbol: charityAmountSymbol,\n currencyCode: charityAmountCode,\n handleAmount: handleAmountChange,\n showValidationError: showValidationError,\n validationErrorMessage: messages.validationErrorMessage,\n placeholder: messages.placeholderOtherAmount\n }));\n}\nPresetAmounts.propTypes = {\n presetOptions: PropTypes.array,\n selectedOption: PropTypes.string,\n handlePresetAmountClick: PropTypes.func,\n showOtherAmount: PropTypes.bool,\n amountFieldValue: PropTypes.string,\n isMobilePreview: PropTypes.bool,\n charityAmountSymbol: PropTypes.string,\n charityAmountCode: PropTypes.string,\n showValidationError: PropTypes.bool,\n messages: PropTypes.object,\n handleAmountChange: PropTypes.func,\n isPreview: PropTypes.bool\n};\n\nexport { PresetAmounts };\n","import React, { useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport { BodyText, HeroCurrency } from '@paypalcorp/pp-react';\n\nfunction styleInject(css, ref) {\n if ( ref === void 0 ) ref = {};\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nvar css_248z = \".styles-module_rtlCode__BNDgO {\\n order: 1;\\n}\\n\\n.styles-module_readOnly__mJHbD {\\n pointer-events: none;\\n}\\n\\n.styles-module_currencyAlign__4IMaI {\\n text-align: center;\\n margin-bottom: 0.675rem;\\n}\\n\\n.styles-module_caamlError__7GHJi {\\n margin-top: 2.5rem;\\n}\\n\";\nvar styles = {\"rtlCode\":\"styles-module_rtlCode__BNDgO\",\"readOnly\":\"styles-module_readOnly__mJHbD\",\"currencyAlign\":\"styles-module_currencyAlign__4IMaI\",\"caamlError\":\"styles-module_caamlError__7GHJi\"};\nstyleInject(css_248z);\n\n// This is a function added as an workaround for\n// the issue that, for currencies with 0 decimal points\n// if we pass amount as 100.00, it will be formatted to\n// 10000, which is wrong\n// TODO: remove this once pp-react makes the fix\nfunction parseAmount(amount) {\n // If the normalized amount received is having decimal points\n // as zero, we truncated the part after decimal point from the\n // amount string\n if (Number(amount) % 1 === 0 && amount.indexOf('.') >= 0) {\n return amount.slice(0, amount.indexOf('.'));\n }\n return amount;\n}\n\nfunction SingleAmount(_ref) {\n var amount = _ref.amount,\n currencyCode = _ref.currencyCode,\n currencySymbol = _ref.currencySymbol,\n _ref$directionality = _ref.directionality,\n directionality = _ref$directionality === void 0 ? 'ltr' : _ref$directionality,\n handleAmount = _ref.handleAmount,\n showValidationError = _ref.showValidationError,\n validationErrorMessage = _ref.validationErrorMessage,\n isEditable = _ref.isEditable,\n _ref$isPreview = _ref.isPreview,\n isPreview = _ref$isPreview === void 0 ? false : _ref$isPreview,\n handleAmountFocus = _ref.handleAmountFocus,\n getAmountBeforeFee = _ref.getAmountBeforeFee,\n isOptInCoverFee = _ref.isOptInCoverFee,\n isAtLandingPage = _ref.isAtLandingPage,\n handleTrackError = _ref.handleTrackError,\n validationErrorCode = _ref.validationErrorCode,\n maskOptions = _ref.maskOptions,\n caamlErrorStyle = _ref.caamlErrorStyle;\n var handleAccept = function handleAccept(value, unmaskedValue) {\n if (!isPreview || isEditable) {\n handleAmount === null || handleAmount === void 0 || handleAmount(unmaskedValue);\n }\n };\n function getErrorText() {\n if (showValidationError) {\n handleTrackError === null || handleTrackError === void 0 || handleTrackError(validationErrorCode, validationErrorMessage, 'currencyAmount');\n return validationErrorMessage;\n }\n return '';\n }\n useEffect(function () {\n // In case user opts in for cover fee and goes back to\n // landing page from guest page, we need to restore back\n // user's original entered amount\n if (isOptInCoverFee !== null && isOptInCoverFee !== void 0 && isOptInCoverFee() && isAtLandingPage !== null && isAtLandingPage !== void 0 && isAtLandingPage()) {\n var amountBeforeFee = getAmountBeforeFee === null || getAmountBeforeFee === void 0 ? void 0 : getAmountBeforeFee();\n amountBeforeFee && handleAccept(amountBeforeFee, amountBeforeFee);\n }\n }, []);\n return /*#__PURE__*/React.createElement(\"div\", {\n dir: directionality,\n tabIndex: isEditable ? '0' : '-1'\n }, directionality === 'rtl' ? /*#__PURE__*/React.createElement(BodyText, {\n strong: true,\n className: \"\".concat(styles.rtlCode, \" \").concat(styles.currencyAlign),\n tabIndex: isEditable ? '0' : '-1'\n }, currencyCode) : null, currencySymbol ? /*#__PURE__*/React.createElement(HeroCurrency, {\n name: \"myHeroCurrency\",\n className: !isEditable ? styles.readOnly : '',\n onAccept: handleAccept,\n value: parseAmount(amount),\n prefix: currencySymbol,\n maskOptions: maskOptions || {\n mask: Number\n },\n align: \"center\",\n currencyType: currencyCode,\n errorText: getErrorText(),\n onFocus: handleAmountFocus,\n tabIndex: isEditable ? '0' : '-1'\n }) : /*#__PURE__*/React.createElement(HeroCurrency, {\n name: \"myHeroCurrency\",\n className: !isEditable ? styles.readOnly : '',\n onAccept: handleAccept,\n value: parseAmount(amount),\n prefix: \" \",\n align: \"center\",\n maskOptions: maskOptions || {\n mask: Number\n },\n currencyType: currencyCode,\n errorText: getErrorText(),\n onFocus: handleAmountFocus,\n tabIndex: isEditable ? '0' : '-1'\n }), directionality === 'ltr' ? /*#__PURE__*/React.createElement(BodyText, {\n strong: true,\n className: \"\".concat(styles.currencyAlign, \" \").concat(caamlErrorStyle && styles.caamlError),\n tabIndex: isEditable ? '0' : '-1'\n }, currencyCode) : null);\n}\nSingleAmount.propTypes = {\n amount: PropTypes.string,\n currencyCode: PropTypes.string,\n directionality: PropTypes.string,\n isEditable: PropTypes.bool,\n isPreview: PropTypes.bool,\n handleAmount: PropTypes.func,\n getAmountBeforeFee: PropTypes.func,\n isOptInCoverFee: PropTypes.func,\n isAtLandingPage: PropTypes.func,\n handleAmountFocus: PropTypes.func,\n showValidationError: PropTypes.bool,\n validationErrorMessage: PropTypes.string,\n handleTrackError: PropTypes.func,\n validationErrorCode: PropTypes.string,\n currencySymbol: PropTypes.string,\n maskOptions: PropTypes.object,\n caamlErrorStyle: PropTypes.bool\n};\n\nexport { SingleAmount };\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Badge, CheckmarkBackgroundSmIcon } from '@paypalcorp/pp-react';\n\nfunction _extends() {\n return _extends = Object.assign ? Object.assign.bind() : function (n) {\n for (var e = 1; e < arguments.length; e++) {\n var t = arguments[e];\n for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);\n }\n return n;\n }, _extends.apply(null, arguments);\n}\n\nvar StatusBadge = function StatusBadge(_ref) {\n var content = _ref.content,\n className = _ref.className,\n type = _ref.type,\n checkIcon = _ref.checkIcon;\n var classObj = className ? {\n className: className\n } : {};\n var iconObj = checkIcon ? {\n leftIcon: CheckmarkBackgroundSmIcon\n } : {};\n return /*#__PURE__*/React.createElement(Badge, _extends({\n type: type\n }, iconObj, classObj), content);\n};\nStatusBadge.propTypes = {\n content: PropTypes.string,\n className: PropTypes.string,\n type: PropTypes.string,\n checkIcon: PropTypes.bool\n};\n\nexport { StatusBadge };\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { HeadingText } from '@paypalcorp/pp-react';\n\nfunction _extends() {\n return _extends = Object.assign ? Object.assign.bind() : function (n) {\n for (var e = 1; e < arguments.length; e++) {\n var t = arguments[e];\n for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);\n }\n return n;\n }, _extends.apply(null, arguments);\n}\nfunction _objectWithoutProperties(e, t) {\n if (null == e) return {};\n var o,\n r,\n i = _objectWithoutPropertiesLoose(e, t);\n if (Object.getOwnPropertySymbols) {\n var n = Object.getOwnPropertySymbols(e);\n for (r = 0; r < n.length; r++) o = n[r], t.indexOf(o) >= 0 || {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]);\n }\n return i;\n}\nfunction _objectWithoutPropertiesLoose(r, e) {\n if (null == r) return {};\n var t = {};\n for (var n in r) if ({}.hasOwnProperty.call(r, n)) {\n if (e.indexOf(n) >= 0) continue;\n t[n] = r[n];\n }\n return t;\n}\n\nvar _excluded = [\"title\", \"size\"];\nvar Title = function Title(_ref) {\n var title = _ref.title,\n size = _ref.size,\n rest = _objectWithoutProperties(_ref, _excluded);\n return /*#__PURE__*/React.createElement(HeadingText, _extends({\n size: size\n }, rest), title);\n};\nTitle.propTypes = {\n title: PropTypes.string,\n size: PropTypes.string\n};\n\nexport { Title };\n","/**\n * Globalize v2.0.0\n *\n * https://github.com/globalizejs/globalize\n *\n * Copyright OpenJS Foundation and other contributors\n * Released under the MIT license\n * https://jquery.org/license\n *\n * Date: @DATE\n */\n/*!\n * Globalize v2.0.0 @DATE Released under the MIT license\n * https://github.com/globalizejs/globalize\n */\n(function( root, factory ) {\n\n\t// UMD returnExports\n\tif ( typeof define === \"function\" && define.amd ) {\n\n\t\t// AMD\n\t\tdefine([\n\t\t\t\"cldr\",\n\t\t\t\"cldr/event\"\n\t\t], factory );\n\t} else if ( typeof exports === \"object\" ) {\n\n\t\t// Node, CommonJS\n\t\tmodule.exports = factory( require( \"cldrjs\" ) );\n\t} else {\n\n\t\t// Global\n\t\troot.Globalize = factory( root.Cldr );\n\t}\n}( this, function( Cldr ) {\n\n\n/**\n * A toString method that outputs meaningful values for objects or arrays and\n * still performs as fast as a plain string in case variable is string, or as\n * fast as `\"\" + number` in case variable is a number.\n * Ref: http://jsperf.com/my-stringify\n */\nvar toString = function( variable ) {\n\treturn typeof variable === \"string\" ? variable : ( typeof variable === \"number\" ? \"\" +\n\t\tvariable : JSON.stringify( variable ) );\n};\n\n\n\n\n/**\n * formatMessage( message, data )\n *\n * @message [String] A message with optional {vars} to be replaced.\n *\n * @data [Array or JSON] Object with replacing-variables content.\n *\n * Return the formatted message. For example:\n *\n * - formatMessage( \"{0} second\", [ 1 ] ); // 1 second\n *\n * - formatMessage( \"{0}/{1}\", [\"m\", \"s\"] ); // m/s\n *\n * - formatMessage( \"{name} <{email}>\", {\n * name: \"Foo\",\n * email: \"bar@baz.qux\"\n * }); // Foo \n */\nvar formatMessage = function( message, data ) {\n\n\t// Replace {attribute}'s\n\tmessage = message.replace( /{[0-9a-zA-Z-_. ]+}/g, function( name ) {\n\t\tname = name.replace( /^{([^}]*)}$/, \"$1\" );\n\t\treturn toString( data[ name ] );\n\t});\n\n\treturn message;\n};\n\n\n\n\nvar objectExtend = function() {\n\tvar destination = arguments[ 0 ],\n\t\tsources = [].slice.call( arguments, 1 );\n\n\tsources.forEach(function( source ) {\n\t\tvar prop;\n\t\tfor ( prop in source ) {\n\t\t\tdestination[ prop ] = source[ prop ];\n\t\t}\n\t});\n\n\treturn destination;\n};\n\n\n\n\nvar createError = function( code, message, attributes ) {\n\tvar error;\n\n\tmessage = code + ( message ? \": \" + formatMessage( message, attributes ) : \"\" );\n\terror = new Error( message );\n\terror.code = code;\n\n\tobjectExtend( error, attributes );\n\n\treturn error;\n};\n\n\n\n\n/**\n * Pushes part to parts array, concat two consecutive parts of the same type.\n */\nvar partsPush = function( parts, type, value ) {\n\n\t\t// Concat two consecutive parts of same type\n\t\tif ( parts.length && parts[ parts.length - 1 ].type === type ) {\n\t\t\tparts[ parts.length - 1 ].value += value;\n\t\t\treturn;\n\t\t}\n\n\t\tparts.push( { type: type, value: value } );\n};\n\n\n\n\n/**\n * formatMessage( message, data )\n *\n * @message [String] A message with optional {vars} to be replaced.\n *\n * @data [Array or JSON] Object with replacing-variables content.\n *\n * Return the formatted message. For example:\n *\n * - formatMessage( \"{0} second\", [ 1 ] );\n * > [{type: \"variable\", value: \"1\", name: \"0\"}, {type: \"literal\", value: \" second\"}]\n *\n * - formatMessage( \"{0}/{1}\", [\"m\", \"s\"] );\n * > [\n * { type: \"variable\", value: \"m\", name: \"0\" },\n * { type: \"literal\", value: \" /\" },\n * { type: \"variable\", value: \"s\", name: \"1\" }\n * ]\n */\nvar formatMessageToParts = function( message, data ) {\n\n\tvar lastOffset = 0,\n\t\tparts = [];\n\n\t// Create parts.\n\tmessage.replace( /{[0-9a-zA-Z-_. ]+}/g, function( nameIncludingBrackets, offset ) {\n\t\tvar name = nameIncludingBrackets.slice( 1, -1 );\n\t\tpartsPush( parts, \"literal\", message.slice( lastOffset, offset ));\n\t\tpartsPush( parts, \"variable\", data[ name ] );\n\t\tparts[ parts.length - 1 ].name = name;\n\t\tlastOffset += offset + nameIncludingBrackets.length;\n\t});\n\n\t// Skip empty ones such as `{ type: 'literal', value: '' }`.\n\treturn parts.filter(function( part ) {\n\t\treturn part.value !== \"\";\n\t});\n};\n\n\n\n\n/**\n * Returns joined parts values.\n */\nvar partsJoin = function( parts ) {\n\treturn parts.map( function( part ) {\n\t\treturn part.value;\n\t}).join( \"\" );\n};\n\n\n\n\nvar runtimeStringify = function( args ) {\n\treturn JSON.stringify( args, function( _key, value ) {\n\t\tif ( value && value.runtimeKey ) {\n\t\t\treturn value.runtimeKey;\n\t\t}\n\t\treturn value;\n\t} );\n};\n\n\n\n\n// Based on http://stackoverflow.com/questions/7616461/generate-a-hash-from-string-in-javascript-jquery\nvar stringHash = function( str ) {\n\treturn [].reduce.call( str, function( hash, i ) {\n\t\tvar chr = i.charCodeAt( 0 );\n\t\thash = ( ( hash << 5 ) - hash ) + chr;\n\t\treturn hash | 0;\n\t}, 0 );\n};\n\n\n\n\nvar runtimeKey = function( fnName, locale, args, argsStr ) {\n\tvar hash;\n\targsStr = argsStr || runtimeStringify( args );\n\thash = stringHash( fnName + locale + argsStr );\n\treturn hash > 0 ? \"a\" + hash : \"b\" + Math.abs( hash );\n};\n\n\n\n\nvar functionName = function( fn ) {\n\tif ( fn.name !== undefined ) {\n\t\treturn fn.name;\n\t}\n\n\t// fn.name is not supported by IE.\n\tvar matches = /^function\\s+([\\w\\$]+)\\s*\\(/.exec( fn.toString() );\n\n\tif ( matches && matches.length > 0 ) {\n\t\treturn matches[ 1 ];\n\t}\n};\n\n\n\n\nvar runtimeBind = function( args, cldr, fn, runtimeArgs ) {\n\n\tvar argsStr = runtimeStringify( args ),\n\t\tfnName = functionName( fn ),\n\t\tlocale = cldr.locale;\n\n\t// If name of the function is not available, this is most likely due to uglification,\n\t// which most likely means we are in production, and runtimeBind here is not necessary.\n\tif ( !fnName ) {\n\t\treturn fn;\n\t}\n\n\tfn.runtimeKey = runtimeKey( fnName, locale, null, argsStr );\n\n\tfn.generatorString = function() {\n\t\treturn \"Globalize(\\\"\" + locale + \"\\\").\" + fnName + \"(\" + argsStr.slice( 1, -1 ) + \")\";\n\t};\n\n\tfn.runtimeArgs = runtimeArgs;\n\n\treturn fn;\n};\n\n\n\n\nvar validate = function( code, message, check, attributes ) {\n\tif ( !check ) {\n\t\tthrow createError( code, message, attributes );\n\t}\n};\n\n\n\n\nvar alwaysArray = function( stringOrArray ) {\n\treturn Array.isArray( stringOrArray ) ? stringOrArray : stringOrArray ? [ stringOrArray ] : [];\n};\n\n\n\n\nvar validateCldr = function( path, value, options ) {\n\tvar skipBoolean;\n\toptions = options || {};\n\n\tskipBoolean = alwaysArray( options.skip ).some(function( pathRe ) {\n\t\treturn pathRe.test( path );\n\t});\n\n\tvalidate( \"E_MISSING_CLDR\", \"Missing required CLDR content `{path}`.\", value || skipBoolean, {\n\t\tpath: path\n\t});\n};\n\n\n\n\nvar validateDefaultLocale = function( value ) {\n\tvalidate( \"E_DEFAULT_LOCALE_NOT_DEFINED\", \"Default locale has not been defined.\",\n\t\tvalue !== undefined, {} );\n};\n\n\n\n\nvar validateParameterPresence = function( value, name ) {\n\tvalidate( \"E_MISSING_PARAMETER\", \"Missing required parameter `{name}`.\",\n\t\tvalue !== undefined, { name: name });\n};\n\n\n\n\n/**\n * range( value, name, minimum, maximum )\n *\n * @value [Number].\n *\n * @name [String] name of variable.\n *\n * @minimum [Number]. The lowest valid value, inclusive.\n *\n * @maximum [Number]. The greatest valid value, inclusive.\n */\nvar validateParameterRange = function( value, name, minimum, maximum ) {\n\tvalidate(\n\t\t\"E_PAR_OUT_OF_RANGE\",\n\t\t\"Parameter `{name}` has value `{value}` out of range [{minimum}, {maximum}].\",\n\t\tvalue === undefined || value >= minimum && value <= maximum,\n\t\t{\n\t\t\tmaximum: maximum,\n\t\t\tminimum: minimum,\n\t\t\tname: name,\n\t\t\tvalue: value\n\t\t}\n\t);\n};\n\n\n\n\nvar validateParameterType = function( value, name, check, expected ) {\n\tvalidate(\n\t\t\"E_INVALID_PAR_TYPE\",\n\t\t\"Invalid `{name}` parameter ({value}). {expected} expected.\",\n\t\tcheck,\n\t\t{\n\t\t\texpected: expected,\n\t\t\tname: name,\n\t\t\tvalue: value\n\t\t}\n\t);\n};\n\n\n\n\nvar validateParameterTypeLocale = function( value, name ) {\n\tvalidateParameterType(\n\t\tvalue,\n\t\tname,\n\t\tvalue === undefined || typeof value === \"string\" || value instanceof Cldr,\n\t\t\"String or Cldr instance\"\n\t);\n};\n\n\n\n\n/**\n * Function inspired by jQuery Core, but reduced to our use case.\n */\nvar isPlainObject = function( obj ) {\n\treturn obj !== null && \"\" + obj === \"[object Object]\";\n};\n\n\n\n\nvar validateParameterTypePlainObject = function( value, name ) {\n\tvalidateParameterType(\n\t\tvalue,\n\t\tname,\n\t\tvalue === undefined || isPlainObject( value ),\n\t\t\"Plain Object\"\n\t);\n};\n\n\n\n\nvar alwaysCldr = function( localeOrCldr ) {\n\treturn localeOrCldr instanceof Cldr ? localeOrCldr : new Cldr( localeOrCldr );\n};\n\n\n\n\n// ref: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions?redirectlocale=en-US&redirectslug=JavaScript%2FGuide%2FRegular_Expressions\nvar regexpEscape = function( string ) {\n\treturn string.replace( /([.*+?^=!:${}()|\\[\\]\\/\\\\])/g, \"\\\\$1\" );\n};\n\n\n\n\nvar stringPad = function( str, count, right ) {\n\tvar length;\n\tif ( typeof str !== \"string\" ) {\n\t\tstr = String( str );\n\t}\n\tfor ( length = str.length; length < count; length += 1 ) {\n\t\tstr = ( right ? ( str + \"0\" ) : ( \"0\" + str ) );\n\t}\n\treturn str;\n};\n\n\n\n\nfunction validateLikelySubtags( cldr ) {\n\tcldr.once( \"get\", validateCldr );\n\tcldr.get( \"supplemental/likelySubtags\" );\n}\n\n/**\n * [new] Globalize( locale|cldr )\n *\n * @locale [String]\n *\n * @cldr [Cldr instance]\n *\n * Create a Globalize instance.\n */\nfunction Globalize( locale ) {\n\tif ( !( this instanceof Globalize ) ) {\n\t\treturn new Globalize( locale );\n\t}\n\n\tvalidateParameterPresence( locale, \"locale\" );\n\tvalidateParameterTypeLocale( locale, \"locale\" );\n\n\tthis.cldr = alwaysCldr( locale );\n\n\tvalidateLikelySubtags( this.cldr );\n}\n\n/**\n * Globalize.load( json, ... )\n *\n * @json [JSON]\n *\n * Load resolved or unresolved cldr data.\n * Somewhat equivalent to previous Globalize.addCultureInfo(...).\n */\nGlobalize.load = function() {\n\n\t// validations are delegated to Cldr.load().\n\tCldr.load.apply( Cldr, arguments );\n};\n\n/**\n * Globalize.locale( [locale|cldr] )\n *\n * @locale [String]\n *\n * @cldr [Cldr instance]\n *\n * Set default Cldr instance if locale or cldr argument is passed.\n *\n * Return the default Cldr instance.\n */\nGlobalize.locale = function( locale ) {\n\tvalidateParameterTypeLocale( locale, \"locale\" );\n\n\tif ( arguments.length ) {\n\t\tthis.cldr = alwaysCldr( locale );\n\t\tvalidateLikelySubtags( this.cldr );\n\t}\n\treturn this.cldr;\n};\n\n/**\n * Optimization to avoid duplicating some internal functions across modules.\n */\nGlobalize._alwaysArray = alwaysArray;\nGlobalize._createError = createError;\nGlobalize._formatMessage = formatMessage;\nGlobalize._formatMessageToParts = formatMessageToParts;\nGlobalize._isPlainObject = isPlainObject;\nGlobalize._objectExtend = objectExtend;\nGlobalize._partsJoin = partsJoin;\nGlobalize._partsPush = partsPush;\nGlobalize._regexpEscape = regexpEscape;\nGlobalize._runtimeBind = runtimeBind;\nGlobalize._stringPad = stringPad;\nGlobalize._validate = validate;\nGlobalize._validateCldr = validateCldr;\nGlobalize._validateDefaultLocale = validateDefaultLocale;\nGlobalize._validateParameterPresence = validateParameterPresence;\nGlobalize._validateParameterRange = validateParameterRange;\nGlobalize._validateParameterTypePlainObject = validateParameterTypePlainObject;\nGlobalize._validateParameterType = validateParameterType;\n\nreturn Globalize;\n\n\n\n\n}));\n","/*!\n * Globalize v2.0.0\n *\n * https://github.com/globalizejs/globalize\n *\n * Copyright OpenJS Foundation and other contributors\n * Released under the MIT license\n * https://jquery.org/license\n *\n * Date: @DATE\n */\n(function( root, factory ) {\n\n\t// UMD returnExports\n\tif ( typeof define === \"function\" && define.amd ) {\n\n\t\t// AMD\n\t\tdefine([\n\t\t\t\"cldr\",\n\t\t\t\"../globalize\",\n\t\t\t\"./number\",\n\t\t\t\"cldr/event\",\n\t\t\t\"cldr/supplemental\"\n\t\t], factory );\n\t} else if ( typeof exports === \"object\" ) {\n\n\t\t// Node, CommonJS\n\t\tmodule.exports = factory( require( \"cldrjs\" ), require( \"../globalize\" ) );\n\t} else {\n\n\t\t// Global\n\t\tfactory( root.Cldr, root.Globalize );\n\t}\n}(this, function( Cldr, Globalize ) {\n\nvar alwaysArray = Globalize._alwaysArray,\n\tcreateError = Globalize._createError,\n\tformatMessageToParts = Globalize._formatMessageToParts,\n\tnumberNumberingSystem = Globalize._numberNumberingSystem,\n\tnumberPattern = Globalize._numberPattern,\n\tpartsJoin = Globalize._partsJoin,\n\tpartsPush = Globalize._partsPush,\n\truntimeBind = Globalize._runtimeBind,\n\tstringPad = Globalize._stringPad,\n\tvalidateCldr = Globalize._validateCldr,\n\tvalidateDefaultLocale = Globalize._validateDefaultLocale,\n\tvalidateParameterPresence = Globalize._validateParameterPresence,\n\tvalidateParameterType = Globalize._validateParameterType,\n\tvalidateParameterTypeNumber = Globalize._validateParameterTypeNumber,\n\tvalidateParameterTypePlainObject = Globalize._validateParameterTypePlainObject;\n\n\nvar createErrorPluralModulePresence = function() {\n\treturn createError( \"E_MISSING_PLURAL_MODULE\", \"Plural module not loaded.\" );\n};\n\n\n\n\nvar validateParameterTypeCurrency = function( value, name ) {\n\tvalidateParameterType(\n\t\tvalue,\n\t\tname,\n\t\tvalue === undefined || typeof value === \"string\" && ( /^[A-Za-z]{3}$/ ).test( value ),\n\t\t\"3-letter currency code string as defined by ISO 4217\"\n\t);\n};\n\n\n\n\nvar currencyFormatterFn = function( currencyToPartsFormatter ) {\n\treturn function currencyFormatter( value ) {\n\t\treturn partsJoin( currencyToPartsFormatter( value ));\n\t};\n};\n\n\n\n\n/**\n * supplementalOverride( currency, pattern, cldr )\n *\n * Return pattern with fraction digits overriden by supplemental currency data.\n */\nvar currencySupplementalOverride = function( currency, pattern, cldr ) {\n\tvar digits,\n\t\tfraction = \"\",\n\t\tfractionData = cldr.supplemental([ \"currencyData/fractions\", currency ]) ||\n\t\t\tcldr.supplemental( \"currencyData/fractions/DEFAULT\" );\n\n\tdigits = +fractionData._digits;\n\n\tif ( digits ) {\n\t\tfraction = \".\" + stringPad( \"0\", digits ).slice( 0, -1 ) + fractionData._rounding;\n\t}\n\n\treturn pattern.replace( /\\.(#+|0*[0-9]|0+[0-9]?)/g, fraction );\n};\n\n\n\n\nvar objectFilter = function( object, testRe ) {\n\tvar key,\n\t\tcopy = {};\n\n\tfor ( key in object ) {\n\t\tif ( testRe.test( key ) ) {\n\t\t\tcopy[ key ] = object[ key ];\n\t\t}\n\t}\n\n\treturn copy;\n};\n\n\n\n\nvar currencyUnitPatterns = function( cldr ) {\n\treturn objectFilter( cldr.main([\n\t\t\"numbers\",\n\t\t\"currencyFormats-numberSystem-\" + numberNumberingSystem( cldr )\n\t]), /^unitPattern/ );\n};\n\n\n\n\n/**\n * nameProperties( currency, cldr )\n *\n * Return number pattern with the appropriate currency code in as literal.\n */\nvar currencyNameProperties = function( currency, cldr ) {\n\tvar pattern = numberPattern( \"decimal\", cldr );\n\n\t// The number of decimal places and the rounding for each currency is not locale-specific. Those\n\t// values overridden by Supplemental Currency Data.\n\tpattern = currencySupplementalOverride( currency, pattern, cldr );\n\n\treturn {\n\t\tdisplayNames: objectFilter( cldr.main([\n\t\t\t\"numbers/currencies\",\n\t\t\tcurrency\n\t\t]), /^displayName/ ),\n\t\tpattern: pattern,\n\t\tunitPatterns: currencyUnitPatterns( cldr )\n\t};\n};\n\n\n\n\n/**\n * Unicode regular expression for: everything except symbols from the category S\n *\n * Generated by:\n *\n * var s = regenerate()\n * .addRange( 0x0, 0x10FFFF )\n * .remove( require( \"@unicode/unicode-13.0.0/General_Category/Math_Symbol/symbols\" ) )\n * .remove( require( \"@unicode/unicode-13.0.0/General_Category/Currency_Symbol/symbols\" ) )\n * .remove( require( \"@unicode/unicode-13.0.0/General_Category/Modifier_Symbol/symbols\" ) )\n * .remove( require( \"@unicode/unicode-13.0.0/General_Category/Other_Symbol/symbols\" ) )\n *\n * https://github.com/mathiasbynens/regenerate\n * https://github.com/node-unicode/unicode-13.0.0\n * http://www.unicode.org/reports/tr44/#General_Category_Values\n */\nvar regexpNotS = /[\\0-#%-\\*,-;\\?-\\]_a-\\{\\}\\x7F-\\xA1\\xA7\\xAA\\xAB\\xAD\\xB2\\xB3\\xB5-\\xB7\\xB9-\\xD6\\xD8-\\xF6\\xF8-\\u02C1\\u02C6-\\u02D1\\u02E0-\\u02E4\\u02EC\\u02EE\\u0300-\\u0374\\u0376-\\u0383\\u0386-\\u03F5\\u03F7-\\u0481\\u0483-\\u058C\\u0590-\\u0605\\u0609\\u060A\\u060C\\u060D\\u0610-\\u06DD\\u06DF-\\u06E8\\u06EA-\\u06FC\\u06FF-\\u07F5\\u07F7-\\u07FD\\u0800-\\u09F1\\u09F4-\\u09F9\\u09FC-\\u0AF0\\u0AF2-\\u0B6F\\u0B71-\\u0BF2\\u0BFB-\\u0C7E\\u0C80-\\u0D4E\\u0D50-\\u0D78\\u0D7A-\\u0E3E\\u0E40-\\u0F00\\u0F04-\\u0F12\\u0F14\\u0F18\\u0F19\\u0F20-\\u0F33\\u0F35\\u0F37\\u0F39-\\u0FBD\\u0FC6\\u0FCD\\u0FD0-\\u0FD4\\u0FD9-\\u109D\\u10A0-\\u138F\\u139A-\\u166C\\u166E-\\u17DA\\u17DC-\\u193F\\u1941-\\u19DD\\u1A00-\\u1B60\\u1B6B-\\u1B73\\u1B7D-\\u1FBC\\u1FBE\\u1FC2-\\u1FCC\\u1FD0-\\u1FDC\\u1FE0-\\u1FEC\\u1FF0-\\u1FFC\\u1FFF-\\u2043\\u2045-\\u2051\\u2053-\\u2079\\u207D-\\u2089\\u208D-\\u209F\\u20C0-\\u20FF\\u2102\\u2107\\u210A-\\u2113\\u2115\\u2119-\\u211D\\u2124\\u2126\\u2128\\u212A-\\u212D\\u212F-\\u2139\\u213C-\\u213F\\u2145-\\u2149\\u214E\\u2150-\\u2189\\u218C-\\u218F\\u2308-\\u230B\\u2329\\u232A\\u2427-\\u243F\\u244B-\\u249B\\u24EA-\\u24FF\\u2768-\\u2793\\u27C5\\u27C6\\u27E6-\\u27EF\\u2983-\\u2998\\u29D8-\\u29DB\\u29FC\\u29FD\\u2B74\\u2B75\\u2B96\\u2C00-\\u2CE4\\u2CEB-\\u2E4F\\u2E52-\\u2E7F\\u2E9A\\u2EF4-\\u2EFF\\u2FD6-\\u2FEF\\u2FFC-\\u3003\\u3005-\\u3011\\u3014-\\u301F\\u3021-\\u3035\\u3038-\\u303D\\u3040-\\u309A\\u309D-\\u318F\\u3192-\\u3195\\u31A0-\\u31BF\\u31E4-\\u31FF\\u321F-\\u3229\\u3248-\\u324F\\u3251-\\u325F\\u3280-\\u3289\\u32B1-\\u32BF\\u3400-\\u4DBF\\u4E00-\\uA48F\\uA4C7-\\uA6FF\\uA717-\\uA71F\\uA722-\\uA788\\uA78B-\\uA827\\uA82C-\\uA835\\uA83A-\\uAA76\\uAA7A-\\uAB5A\\uAB5C-\\uAB69\\uAB6C-\\uD7FF\\uE000-\\uFB28\\uFB2A-\\uFBB1\\uFBC2-\\uFDFB\\uFDFE-\\uFE61\\uFE63\\uFE67\\uFE68\\uFE6A-\\uFF03\\uFF05-\\uFF0A\\uFF0C-\\uFF1B\\uFF1F-\\uFF3D\\uFF3F\\uFF41-\\uFF5B\\uFF5D\\uFF5F-\\uFFDF\\uFFE7\\uFFEF-\\uFFFB\\uFFFE\\uFFFF]|\\uD800[\\uDC00-\\uDD36\\uDD40-\\uDD78\\uDD8A\\uDD8B\\uDD8F\\uDD9D-\\uDD9F\\uDDA1-\\uDDCF\\uDDFD-\\uDFFF]|[\\uD801\\uD803\\uD804\\uD806\\uD808-\\uD819\\uD81B-\\uD82E\\uD830-\\uD833\\uD837\\uD839\\uD83A\\uD83F-\\uDBFF][\\uDC00-\\uDFFF]|\\uD802[\\uDC00-\\uDC76\\uDC79-\\uDEC7\\uDEC9-\\uDFFF]|\\uD805[\\uDC00-\\uDF3E\\uDF40-\\uDFFF]|\\uD807[\\uDC00-\\uDFD4\\uDFF2-\\uDFFF]|\\uD81A[\\uDC00-\\uDF3B\\uDF40-\\uDF44\\uDF46-\\uDFFF]|\\uD82F[\\uDC00-\\uDC9B\\uDC9D-\\uDFFF]|\\uD834[\\uDCF6-\\uDCFF\\uDD27\\uDD28\\uDD65-\\uDD69\\uDD6D-\\uDD82\\uDD85-\\uDD8B\\uDDAA-\\uDDAD\\uDDE9-\\uDDFF\\uDE42-\\uDE44\\uDE46-\\uDEFF\\uDF57-\\uDFFF]|\\uD835[\\uDC00-\\uDEC0\\uDEC2-\\uDEDA\\uDEDC-\\uDEFA\\uDEFC-\\uDF14\\uDF16-\\uDF34\\uDF36-\\uDF4E\\uDF50-\\uDF6E\\uDF70-\\uDF88\\uDF8A-\\uDFA8\\uDFAA-\\uDFC2\\uDFC4-\\uDFFF]|\\uD836[\\uDE00-\\uDE36\\uDE3B-\\uDE6C\\uDE75\\uDE84\\uDE87-\\uDFFF]|\\uD838[\\uDC00-\\uDD4E\\uDD50-\\uDEFE\\uDF00-\\uDFFF]|\\uD83B[\\uDC00-\\uDCAB\\uDCAD-\\uDCAF\\uDCB1-\\uDD2D\\uDD2F-\\uDEEF\\uDEF2-\\uDFFF]|\\uD83C[\\uDC2C-\\uDC2F\\uDC94-\\uDC9F\\uDCAF\\uDCB0\\uDCC0\\uDCD0\\uDCF6-\\uDD0C\\uDDAE-\\uDDE5\\uDE03-\\uDE0F\\uDE3C-\\uDE3F\\uDE49-\\uDE4F\\uDE52-\\uDE5F\\uDE66-\\uDEFF]|\\uD83D[\\uDED8-\\uDEDF\\uDEED-\\uDEEF\\uDEFD-\\uDEFF\\uDF74-\\uDF7F\\uDFD9-\\uDFDF\\uDFEC-\\uDFFF]|\\uD83E[\\uDC0C-\\uDC0F\\uDC48-\\uDC4F\\uDC5A-\\uDC5F\\uDC88-\\uDC8F\\uDCAE\\uDCAF\\uDCB2-\\uDCFF\\uDD79\\uDDCC\\uDE54-\\uDE5F\\uDE6E\\uDE6F\\uDE75-\\uDE77\\uDE7B-\\uDE7F\\uDE87-\\uDE8F\\uDEA9-\\uDEAF\\uDEB7-\\uDEBF\\uDEC3-\\uDECF\\uDED7-\\uDEFF\\uDF93\\uDFCB-\\uDFFF]|[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?:[^\\uD800-\\uDBFF]|^)[\\uDC00-\\uDFFF]/;\n\n\n\n\n/**\n * Unicode regular expression for: everything except symbols from categories S and Z\n *\n * Generated by:\n *\n * var s = regenerate()\n * .addRange( 0x0, 0x10FFFF )\n * .remove( require( \"@unicode/unicode-13.0.0/General_Category/Math_Symbol/symbols\" ) )\n * .remove( require( \"@unicode/unicode-13.0.0/General_Category/Currency_Symbol/symbols\" ) )\n * .remove( require( \"@unicode/unicode-13.0.0/General_Category/Modifier_Symbol/symbols\" ) )\n * .remove( require( \"@unicode/unicode-13.0.0/General_Category/Other_Symbol/symbols\" ) )\n * .remove( require( \"@unicode/unicode-13.0.0/General_Category/Space_Separator/symbols\" ) )\n * .remove( require( \"@unicode/unicode-13.0.0/General_Category/Line_Separator/symbols\" ) )\n * .remove( require( \"@unicode/unicode-13.0.0/General_Category/Paragraph_Separator/symbols\" ) );\n *\n * https://github.com/mathiasbynens/regenerate\n * https://github.com/node-unicode/unicode-13.0.0\n * http://www.unicode.org/reports/tr44/#General_Category_Values\n */\nvar regexpNotSAndZ = /[\\0-\\x1F!-#%-\\*,-;\\?-\\]_a-\\{\\}\\x7F-\\x9F\\xA1\\xA7\\xAA\\xAB\\xAD\\xB2\\xB3\\xB5-\\xB7\\xB9-\\xD6\\xD8-\\xF6\\xF8-\\u02C1\\u02C6-\\u02D1\\u02E0-\\u02E4\\u02EC\\u02EE\\u0300-\\u0374\\u0376-\\u0383\\u0386-\\u03F5\\u03F7-\\u0481\\u0483-\\u058C\\u0590-\\u0605\\u0609\\u060A\\u060C\\u060D\\u0610-\\u06DD\\u06DF-\\u06E8\\u06EA-\\u06FC\\u06FF-\\u07F5\\u07F7-\\u07FD\\u0800-\\u09F1\\u09F4-\\u09F9\\u09FC-\\u0AF0\\u0AF2-\\u0B6F\\u0B71-\\u0BF2\\u0BFB-\\u0C7E\\u0C80-\\u0D4E\\u0D50-\\u0D78\\u0D7A-\\u0E3E\\u0E40-\\u0F00\\u0F04-\\u0F12\\u0F14\\u0F18\\u0F19\\u0F20-\\u0F33\\u0F35\\u0F37\\u0F39-\\u0FBD\\u0FC6\\u0FCD\\u0FD0-\\u0FD4\\u0FD9-\\u109D\\u10A0-\\u138F\\u139A-\\u166C\\u166E-\\u167F\\u1681-\\u17DA\\u17DC-\\u193F\\u1941-\\u19DD\\u1A00-\\u1B60\\u1B6B-\\u1B73\\u1B7D-\\u1FBC\\u1FBE\\u1FC2-\\u1FCC\\u1FD0-\\u1FDC\\u1FE0-\\u1FEC\\u1FF0-\\u1FFC\\u1FFF\\u200B-\\u2027\\u202A-\\u202E\\u2030-\\u2043\\u2045-\\u2051\\u2053-\\u205E\\u2060-\\u2079\\u207D-\\u2089\\u208D-\\u209F\\u20C0-\\u20FF\\u2102\\u2107\\u210A-\\u2113\\u2115\\u2119-\\u211D\\u2124\\u2126\\u2128\\u212A-\\u212D\\u212F-\\u2139\\u213C-\\u213F\\u2145-\\u2149\\u214E\\u2150-\\u2189\\u218C-\\u218F\\u2308-\\u230B\\u2329\\u232A\\u2427-\\u243F\\u244B-\\u249B\\u24EA-\\u24FF\\u2768-\\u2793\\u27C5\\u27C6\\u27E6-\\u27EF\\u2983-\\u2998\\u29D8-\\u29DB\\u29FC\\u29FD\\u2B74\\u2B75\\u2B96\\u2C00-\\u2CE4\\u2CEB-\\u2E4F\\u2E52-\\u2E7F\\u2E9A\\u2EF4-\\u2EFF\\u2FD6-\\u2FEF\\u2FFC-\\u2FFF\\u3001-\\u3003\\u3005-\\u3011\\u3014-\\u301F\\u3021-\\u3035\\u3038-\\u303D\\u3040-\\u309A\\u309D-\\u318F\\u3192-\\u3195\\u31A0-\\u31BF\\u31E4-\\u31FF\\u321F-\\u3229\\u3248-\\u324F\\u3251-\\u325F\\u3280-\\u3289\\u32B1-\\u32BF\\u3400-\\u4DBF\\u4E00-\\uA48F\\uA4C7-\\uA6FF\\uA717-\\uA71F\\uA722-\\uA788\\uA78B-\\uA827\\uA82C-\\uA835\\uA83A-\\uAA76\\uAA7A-\\uAB5A\\uAB5C-\\uAB69\\uAB6C-\\uD7FF\\uE000-\\uFB28\\uFB2A-\\uFBB1\\uFBC2-\\uFDFB\\uFDFE-\\uFE61\\uFE63\\uFE67\\uFE68\\uFE6A-\\uFF03\\uFF05-\\uFF0A\\uFF0C-\\uFF1B\\uFF1F-\\uFF3D\\uFF3F\\uFF41-\\uFF5B\\uFF5D\\uFF5F-\\uFFDF\\uFFE7\\uFFEF-\\uFFFB\\uFFFE\\uFFFF]|\\uD800[\\uDC00-\\uDD36\\uDD40-\\uDD78\\uDD8A\\uDD8B\\uDD8F\\uDD9D-\\uDD9F\\uDDA1-\\uDDCF\\uDDFD-\\uDFFF]|[\\uD801\\uD803\\uD804\\uD806\\uD808-\\uD819\\uD81B-\\uD82E\\uD830-\\uD833\\uD837\\uD839\\uD83A\\uD83F-\\uDBFF][\\uDC00-\\uDFFF]|\\uD802[\\uDC00-\\uDC76\\uDC79-\\uDEC7\\uDEC9-\\uDFFF]|\\uD805[\\uDC00-\\uDF3E\\uDF40-\\uDFFF]|\\uD807[\\uDC00-\\uDFD4\\uDFF2-\\uDFFF]|\\uD81A[\\uDC00-\\uDF3B\\uDF40-\\uDF44\\uDF46-\\uDFFF]|\\uD82F[\\uDC00-\\uDC9B\\uDC9D-\\uDFFF]|\\uD834[\\uDCF6-\\uDCFF\\uDD27\\uDD28\\uDD65-\\uDD69\\uDD6D-\\uDD82\\uDD85-\\uDD8B\\uDDAA-\\uDDAD\\uDDE9-\\uDDFF\\uDE42-\\uDE44\\uDE46-\\uDEFF\\uDF57-\\uDFFF]|\\uD835[\\uDC00-\\uDEC0\\uDEC2-\\uDEDA\\uDEDC-\\uDEFA\\uDEFC-\\uDF14\\uDF16-\\uDF34\\uDF36-\\uDF4E\\uDF50-\\uDF6E\\uDF70-\\uDF88\\uDF8A-\\uDFA8\\uDFAA-\\uDFC2\\uDFC4-\\uDFFF]|\\uD836[\\uDE00-\\uDE36\\uDE3B-\\uDE6C\\uDE75\\uDE84\\uDE87-\\uDFFF]|\\uD838[\\uDC00-\\uDD4E\\uDD50-\\uDEFE\\uDF00-\\uDFFF]|\\uD83B[\\uDC00-\\uDCAB\\uDCAD-\\uDCAF\\uDCB1-\\uDD2D\\uDD2F-\\uDEEF\\uDEF2-\\uDFFF]|\\uD83C[\\uDC2C-\\uDC2F\\uDC94-\\uDC9F\\uDCAF\\uDCB0\\uDCC0\\uDCD0\\uDCF6-\\uDD0C\\uDDAE-\\uDDE5\\uDE03-\\uDE0F\\uDE3C-\\uDE3F\\uDE49-\\uDE4F\\uDE52-\\uDE5F\\uDE66-\\uDEFF]|\\uD83D[\\uDED8-\\uDEDF\\uDEED-\\uDEEF\\uDEFD-\\uDEFF\\uDF74-\\uDF7F\\uDFD9-\\uDFDF\\uDFEC-\\uDFFF]|\\uD83E[\\uDC0C-\\uDC0F\\uDC48-\\uDC4F\\uDC5A-\\uDC5F\\uDC88-\\uDC8F\\uDCAE\\uDCAF\\uDCB2-\\uDCFF\\uDD79\\uDDCC\\uDE54-\\uDE5F\\uDE6E\\uDE6F\\uDE75-\\uDE77\\uDE7B-\\uDE7F\\uDE87-\\uDE8F\\uDEA9-\\uDEAF\\uDEB7-\\uDEBF\\uDEC3-\\uDECF\\uDED7-\\uDEFF\\uDF93\\uDFCB-\\uDFFF]|[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?:[^\\uD800-\\uDBFF]|^)[\\uDC00-\\uDFFF]/;\n\n\n\n\n/**\n * symbolProperties( currency, cldr )\n *\n * Return pattern replacing `¤` with the appropriate currency symbol literal.\n */\nvar currencySymbolProperties = function( currency, cldr, options ) {\n\tvar currencySpacing, pattern, symbol, symbolEntries,\n\t\tregexp = {\n\t\t\t\"[:digit:]\": /\\d/,\n\t\t\t\"[:^S:]\": regexpNotS,\n\t\t\t\"[[:^S:]&[:^Z:]]\": regexpNotSAndZ\n\t\t};\n\n\tif ( options.style === \"code\" ) {\n\t\tsymbol = currency;\n\t} else {\n\t\tsymbolEntries = [ \"symbol\" ];\n\n\t\t// If options.symbolForm === \"narrow\" was passed, prepend it.\n\t\tif ( options.symbolForm === \"narrow\" ) {\n\t\t\tsymbolEntries.unshift( \"symbol-alt-narrow\" );\n\t\t}\n\n\t\tsymbolEntries.some(function( symbolEntry ) {\n\t\t\treturn symbol = cldr.main([\n\t\t\t\t\"numbers/currencies\",\n\t\t\t\tcurrency,\n\t\t\t\tsymbolEntry\n\t\t\t]);\n\t\t});\n\t}\n\n\tcurrencySpacing = [ \"beforeCurrency\", \"afterCurrency\" ].map(function( position ) {\n\t\treturn cldr.main([\n\t\t\t\"numbers\",\n\t\t\t\"currencyFormats-numberSystem-\" + numberNumberingSystem( cldr ),\n\t\t\t\"currencySpacing\",\n\t\t\tposition\n\t\t]);\n\t});\n\n\tpattern = cldr.main([\n\t\t\"numbers\",\n\t\t\"currencyFormats-numberSystem-\" + numberNumberingSystem( cldr ),\n\t\toptions.style === \"accounting\" ? \"accounting\" : \"standard\"\n\t]);\n\n\tpattern =\n\n\t\t// The number of decimal places and the rounding for each currency is not locale-specific.\n\t\t// Those values are overridden by Supplemental Currency Data.\n\t\tcurrencySupplementalOverride( currency, pattern, cldr )\n\n\t\t// Replace \"¤\" (\\u00A4) with the appropriate symbol literal.\n\t\t.split( \";\" ).map(function( pattern ) {\n\n\t\t\treturn pattern.split( \"\\u00A4\" ).map(function( part, i ) {\n\t\t\t\tvar currencyMatch = regexp[ currencySpacing[ i ].currencyMatch ],\n\t\t\t\t\tsurroundingMatch = regexp[ currencySpacing[ i ].surroundingMatch ],\n\t\t\t\t\tinsertBetween = \"\";\n\n\t\t\t\t// For currencyMatch and surroundingMatch definitions, read [1].\n\t\t\t\t// When i === 0, beforeCurrency is being handled. Otherwise, afterCurrency.\n\t\t\t\t// 1: http://www.unicode.org/reports/tr35/tr35-numbers.html#Currencies\n\t\t\t\tcurrencyMatch = currencyMatch.test( symbol.charAt( i ? symbol.length - 1 : 0 ) );\n\t\t\t\tsurroundingMatch = surroundingMatch.test(\n\t\t\t\t\tpart.charAt( i ? 0 : part.length - 1 ).replace( /[#@,.]/g, \"0\" )\n\t\t\t\t);\n\n\t\t\t\tif ( currencyMatch && part && surroundingMatch ) {\n\t\t\t\t\tinsertBetween = currencySpacing[ i ].insertBetween;\n\t\t\t\t}\n\n\t\t\t\treturn ( i ? insertBetween : \"\" ) + part + ( i ? \"\" : insertBetween );\n\t\t\t}).join( \"\\u00A4\" );\n\t\t}).join( \";\" );\n\n\treturn {\n\t\tpattern: pattern,\n\t\tsymbol: symbol\n\t};\n};\n\n\n\n\n/**\n * nameFormat( formattedNumber, pluralForm, properties )\n *\n * Return the appropriate name form currency format.\n */\nvar currencyNameFormat = function( formattedNumber, pluralForm, properties ) {\n\tvar displayName, unitPattern,\n\t\tparts = [],\n\t\tdisplayNames = properties.displayNames || {},\n\t\tunitPatterns = properties.unitPatterns;\n\n\tdisplayName = displayNames[ \"displayName-count-\" + pluralForm ] ||\n\t\tdisplayNames[ \"displayName-count-other\" ] ||\n\t\tdisplayNames.displayName ||\n\t\tproperties.currency;\n\tunitPattern = unitPatterns[ \"unitPattern-count-\" + pluralForm ] ||\n\t\tunitPatterns[ \"unitPattern-count-other\" ];\n\n\tformatMessageToParts( unitPattern, [ formattedNumber, displayName ]).forEach(function( part ) {\n\t\tif ( part.type === \"variable\" && part.name === \"0\" ) {\n\t\t\tpart.value.forEach(function( part ) {\n\t\t\t\tpartsPush( parts, part.type, part.value );\n\t\t\t});\n\t\t} else if ( part.type === \"variable\" && part.name === \"1\" ) {\n\t\t\tpartsPush( parts, \"currency\", part.value );\n\t\t} else {\n\t\t\tpartsPush( parts, \"literal\", part.value );\n\t\t}\n\t});\n\n\treturn parts;\n};\n\n\n\n\n/**\n * symbolFormat( parts, symbol )\n *\n * Return the appropriate symbol/account form format.\n */\nvar currencySymbolFormat = function( parts, symbol ) {\n\tparts.forEach(function( part ) {\n\t\tif ( part.type === \"currency\" ) {\n\t\t\tpart.value = symbol;\n\t\t}\n\t});\n\treturn parts;\n};\n\n\n\n\nvar currencyToPartsFormatterFn = function( numberToPartsFormatter, pluralGenerator, properties ) {\n\tvar fn;\n\n\t// Return formatter when style is \"name\".\n\tif ( pluralGenerator && properties ) {\n\t\tfn = function currencyToPartsFormatter( value ) {\n\t\t\tvalidateParameterPresence( value, \"value\" );\n\t\t\tvalidateParameterTypeNumber( value, \"value\" );\n\t\t\treturn currencyNameFormat(\n\t\t\t\tnumberToPartsFormatter( value ),\n\t\t\t\tpluralGenerator( value ),\n\t\t\t\tproperties\n\t\t\t);\n\t\t};\n\n\t// Return formatter when style is \"symbol\", \"accounting\", or \"code\".\n\t} else {\n\t\tfn = function currencyToPartsFormatter( value ) {\n\n\t\t\t// 1: Reusing pluralGenerator argument, but in this case it is actually `symbol`\n\t\t\treturn currencySymbolFormat( numberToPartsFormatter( value ), pluralGenerator /* 1 */ );\n\t\t};\n\t}\n\n\treturn fn;\n};\n\n\n\n\n/**\n * objectOmit( object, keys )\n *\n * Return a copy of the object, filtered to omit the blacklisted key or array of keys.\n */\nvar objectOmit = function( object, keys ) {\n\tvar key,\n\t\tcopy = {};\n\n\tkeys = alwaysArray( keys );\n\n\tfor ( key in object ) {\n\t\tif ( keys.indexOf( key ) === -1 ) {\n\t\t\tcopy[ key ] = object[ key ];\n\t\t}\n\t}\n\n\treturn copy;\n};\n\n\n\n\nfunction validateRequiredCldr( path, value ) {\n\tvalidateCldr( path, value, {\n\t\tskip: [\n\t\t\t/numbers\\/currencies\\/[^/]+\\/symbol-alt-/,\n\t\t\t/supplemental\\/currencyData\\/fractions\\/[A-Za-z]{3}$/\n\t\t]\n\t});\n}\n\n/**\n * .currencyFormatter( currency [, options] )\n *\n * @currency [String] 3-letter currency code as defined by ISO 4217.\n *\n * @options [Object]:\n * - style: [String] \"symbol\" (default), \"accounting\", \"code\" or \"name\".\n * - see also number/format options.\n *\n * Return a function that formats a currency according to the given options and default/instance\n * locale.\n */\nGlobalize.currencyFormatter =\nGlobalize.prototype.currencyFormatter = function( currency, options ) {\n\tvar args, currencyToPartsFormatter, returnFn;\n\n\tvalidateParameterPresence( currency, \"currency\" );\n\tvalidateParameterTypeCurrency( currency, \"currency\" );\n\n\tvalidateParameterTypePlainObject( options, \"options\" );\n\n\toptions = options || {};\n\targs = [ currency, options ];\n\n\tcurrencyToPartsFormatter = this.currencyToPartsFormatter( currency, options );\n\treturnFn = currencyFormatterFn( currencyToPartsFormatter );\n\truntimeBind( args, this.cldr, returnFn, [ currencyToPartsFormatter ] );\n\n\treturn returnFn;\n};\n\n/**\n * .currencyToPartsFormatter( currency [, options] )\n *\n * @currency [String] 3-letter currency code as defined by ISO 4217.\n *\n * @options [Object]:\n * - style: [String] \"symbol\" (default), \"accounting\", \"code\" or \"name\".\n * - see also number/format options.\n *\n * Return a currency formatter function (of the form below) according to the given options and the\n * default/instance locale.\n *\n * fn( value )\n *\n * @value [Number]\n *\n * Return a function that formats a currency to parts according to the given options\n * and the default/instance locale.\n */\nGlobalize.currencyToPartsFormatter =\nGlobalize.prototype.currencyToPartsFormatter = function( currency, options ) {\n\tvar args, cldr, numberToPartsFormatter, pluralGenerator, properties, returnFn, style;\n\n\tvalidateParameterPresence( currency, \"currency\" );\n\tvalidateParameterTypeCurrency( currency, \"currency\" );\n\n\tvalidateParameterTypePlainObject( options, \"options\" );\n\n\tcldr = this.cldr;\n\toptions = options || {};\n\n\targs = [ currency, options ];\n\tstyle = options.style || \"symbol\";\n\n\tvalidateDefaultLocale( cldr );\n\n\t// Get properties given style (\"symbol\" default, \"code\" or \"name\").\n\tcldr.on( \"get\", validateRequiredCldr );\n\ttry {\n\t\tproperties = ({\n\t\t\taccounting: currencySymbolProperties,\n\t\t\tcode: currencySymbolProperties,\n\t\t\tname: currencyNameProperties,\n\t\t\tsymbol: currencySymbolProperties\n\t\t}[ style ] )( currency, cldr, options );\n\t} finally {\n\t\tcldr.off( \"get\", validateRequiredCldr );\n\t}\n\n\t// options = options minus style, plus raw pattern.\n\toptions = objectOmit( options, \"style\" );\n\toptions.raw = properties.pattern;\n\n\t// Return formatter when style is \"symbol\", \"accounting\", or \"code\".\n\tif ( style === \"symbol\" || style === \"accounting\" || style === \"code\" ) {\n\t\tnumberToPartsFormatter = this.numberToPartsFormatter( options );\n\n\t\treturnFn = currencyToPartsFormatterFn( numberToPartsFormatter, properties.symbol );\n\n\t\truntimeBind( args, cldr, returnFn, [ numberToPartsFormatter, properties.symbol ] );\n\n\t// Return formatter when style is \"name\".\n\t} else {\n\t\tnumberToPartsFormatter = this.numberToPartsFormatter( options );\n\n\t\t// Is plural module present? Yes, use its generator. Nope, use an error generator.\n\t\tpluralGenerator = this.plural !== undefined ?\n\t\t\tthis.pluralGenerator() :\n\t\t\tcreateErrorPluralModulePresence;\n\n\t\treturnFn = currencyToPartsFormatterFn(\n\t\t\tnumberToPartsFormatter,\n\t\t\tpluralGenerator,\n\t\t\tproperties\n\t\t);\n\n\t\truntimeBind( args, cldr, returnFn, [\n\t\t\tnumberToPartsFormatter,\n\t\t\tpluralGenerator,\n\t\t\tproperties\n\t\t]);\n\t}\n\n\treturn returnFn;\n};\n\n/**\n * .currencyParser( currency [, options] )\n *\n * @currency [String] 3-letter currency code as defined by ISO 4217.\n *\n * @options [Object] see currencyFormatter.\n *\n * Return the currency parser according to the given options and the default/instance locale.\n */\nGlobalize.currencyParser =\nGlobalize.prototype.currencyParser = function( /* currency, options */ ) {\n\n\t// TODO implement parser.\n\n};\n\n/**\n * .formatCurrency( value, currency [, options] )\n *\n * @value [Number] number to be formatted.\n *\n * @currency [String] 3-letter currency code as defined by ISO 4217.\n *\n * @options [Object] see currencyFormatter.\n *\n * Format a currency according to the given options and the default/instance locale.\n */\nGlobalize.formatCurrency =\nGlobalize.prototype.formatCurrency = function( value, currency, options ) {\n\tvalidateParameterPresence( value, \"value\" );\n\tvalidateParameterTypeNumber( value, \"value\" );\n\treturn this.currencyFormatter( currency, options )( value );\n};\n\n/**\n * .formatCurrencyToParts( value, currency [, options] )\n *\n * @value [Number] number to be formatted.\n *\n * @currency [String] 3-letter currency code as defined by ISO 4217.\n *\n * @options [Object] see currencyFormatter.\n *\n * Format a currency to parts according to the given options and the default/instance locale.\n */\nGlobalize.formatCurrencyToParts =\nGlobalize.prototype.formatCurrencyToParts = function( value, currency, options ) {\n\tvalidateParameterPresence( value, \"value\" );\n\tvalidateParameterTypeNumber( value, \"value\" );\n\treturn this.currencyToPartsFormatter( currency, options )( value );\n};\n\n/**\n * .parseCurrency( value, currency [, options] )\n *\n * @value [String]\n *\n * @currency [String] 3-letter currency code as defined by ISO 4217.\n *\n * @options [Object]: See currencyFormatter.\n *\n * Return the parsed currency or NaN when value is invalid.\n */\nGlobalize.parseCurrency =\nGlobalize.prototype.parseCurrency = function( /* value, currency, options */ ) {\n};\n\nreturn Globalize;\n\n\n\n\n}));\n","/**\n * Globalize v2.0.0\n *\n * https://github.com/globalizejs/globalize\n *\n * Copyright OpenJS Foundation and other contributors\n * Released under the MIT license\n * https://jquery.org/license\n *\n * Date: @DATE\n */\n/*!\n * Globalize v2.0.0 @DATE Released under the MIT license\n * https://github.com/globalizejs/globalize\n */\n(function( root, factory ) {\n\n\t// UMD returnExports\n\tif ( typeof define === \"function\" && define.amd ) {\n\n\t\t// AMD\n\t\tdefine([\n\t\t\t\"cldr\",\n\t\t\t\"../globalize\",\n\t\t\t\"./number\",\n\t\t\t\"cldr/event\",\n\t\t\t\"cldr/supplemental\"\n\t\t], factory );\n\t} else if ( typeof exports === \"object\" ) {\n\n\t\t// Node, CommonJS\n\t\tmodule.exports = factory( require( \"cldrjs\" ), require( \"../globalize\" ) );\n\t} else {\n\n\t\t// Extend global\n\t\tfactory( root.Cldr, root.Globalize );\n\t}\n}(this, function( Cldr, Globalize ) {\n\nvar createError = Globalize._createError,\n\tcreateErrorUnsupportedFeature = Globalize._createErrorUnsupportedFeature,\n\tformatMessage = Globalize._formatMessage,\n\tisPlainObject = Globalize._isPlainObject,\n\tlooseMatching = Globalize._looseMatching,\n\tnumberNumberingSystemDigitsMap = Globalize._numberNumberingSystemDigitsMap,\n\tnumberSymbol = Globalize._numberSymbol,\n\tpartsJoin = Globalize._partsJoin,\n\tpartsPush = Globalize._partsPush,\n\tregexpEscape = Globalize._regexpEscape,\n\tremoveLiteralQuotes = Globalize._removeLiteralQuotes,\n\truntimeBind = Globalize._runtimeBind,\n\tstringPad = Globalize._stringPad,\n\tvalidate = Globalize._validate,\n\tvalidateCldr = Globalize._validateCldr,\n\tvalidateDefaultLocale = Globalize._validateDefaultLocale,\n\tvalidateParameterPresence = Globalize._validateParameterPresence,\n\tvalidateParameterType = Globalize._validateParameterType,\n\tvalidateParameterTypePlainObject = Globalize._validateParameterTypePlainObject,\n\tvalidateParameterTypeString = Globalize._validateParameterTypeString;\n\n\nvar validateParameterTypeDate = function( value, name ) {\n\tvalidateParameterType( value, name, value === undefined || value instanceof Date, \"Date\" );\n};\n\n\n\n\nvar createErrorInvalidParameterValue = function( name, value ) {\n\treturn createError( \"E_INVALID_PAR_VALUE\", \"Invalid `{name}` value ({value}).\", {\n\t\tname: name,\n\t\tvalue: value\n\t});\n};\n\n\n\n\n/**\n * Create a map between the skeleton fields and their positions, e.g.,\n * {\n * G: 0\n * y: 1\n * ...\n * }\n */\nvar validateSkeletonFieldsPosMap = \"GyYuUrQqMLlwWEecdDFghHKkmsSAzZOvVXx\".split( \"\" ).reduce(function( memo, item, i ) {\n\tmemo[ item ] = i;\n\treturn memo;\n}, {});\n\n\n\n\n/**\n * validateSkeleton( skeleton )\n *\n * skeleton: Assume `j` has already been converted into a localized hour field.\n */\nvar validateSkeleton = function validateSkeleton( skeleton ) {\n\tvar last,\n\n\t\t// Using easier to read variable.\n\t\tfieldsPosMap = validateSkeletonFieldsPosMap;\n\n\t// \"The fields are from the Date Field Symbol Table in Date Format Patterns\"\n\t// Ref: http://www.unicode.org/reports/tr35/tr35-dates.html#availableFormats_appendItems\n\t// I.e., check for invalid characters.\n\tskeleton.replace( /[^GyYuUrQqMLlwWEecdDFghHKkmsSAzZOvVXx]/, function( field ) {\n\t\tthrow createError(\n\t\t\t\"E_INVALID_OPTIONS\", \"Invalid field `{invalidField}` of skeleton `{value}`\",\n\t\t\t{\n\t\t\t\tinvalidField: field,\n\t\t\t\ttype: \"skeleton\",\n\t\t\t\tvalue: skeleton\n\t\t\t}\n\t\t);\n\t});\n\n\t// \"The canonical order is from top to bottom in that table; that is, yM not My\".\n\t// http://www.unicode.org/reports/tr35/tr35-dates.html#availableFormats_appendItems\n\t// I.e., check for invalid order.\n\tskeleton.split( \"\" ).every(function( field ) {\n\t\tif ( fieldsPosMap[ field ] < last ) {\n\t\t\tthrow createError(\n\t\t\t\t\"E_INVALID_OPTIONS\", \"Invalid order `{invalidField}` of skeleton `{value}`\",\n\t\t\t\t{\n\t\t\t\t\tinvalidField: field,\n\t\t\t\t\ttype: \"skeleton\",\n\t\t\t\t\tvalue: skeleton\n\t\t\t\t}\n\t\t\t);\n\t\t}\n\t\tlast = fieldsPosMap[ field ];\n\t\treturn true;\n\t});\n};\n\n\n\n\n/**\n * Returns a new object created by using `object`'s values as keys, and the keys as values.\n */\nvar objectInvert = function( object, fn ) {\n\tfn = fn || function( object, key, value ) {\n\t\tobject[ value ] = key;\n\t\treturn object;\n\t};\n\treturn Object.keys( object ).reduce(function( newObject, key ) {\n\t\treturn fn( newObject, key, object[ key ] );\n\t}, {});\n};\n\n\n\n\n// Invert key and values, e.g., {\"e\": \"eEc\"} ==> {\"e\": \"e\", \"E\": \"e\", \"c\": \"e\"}.\nvar dateExpandPatternSimilarFieldsMap = objectInvert({\n\t\"e\": \"eEc\",\n\t\"L\": \"ML\"\n}, function( object, key, value ) {\n\tvalue.split( \"\" ).forEach(function( field ) {\n\t\tobject[ field ] = key;\n\t});\n\treturn object;\n});\n\n\n\n\nvar dateExpandPatternNormalizePatternType = function( character ) {\n\treturn dateExpandPatternSimilarFieldsMap[ character ] || character;\n};\n\n\n\n\nvar datePatternRe = ( /([a-z])\\1*|'([^']|'')+'|''|./ig );\n\n\n\n\nvar stringRepeat = function( str, count ) {\n\tvar i, result = \"\";\n\tfor ( i = 0; i < count; i++ ) {\n\t\tresult = result + str;\n\t}\n\treturn result;\n};\n\n\n\n\nfunction expandBestMatchFormat( skeletonWithoutFractionalSeconds, bestMatchFormat ) {\n\tvar i, j, bestMatchFormatParts, matchedType, matchedLength, requestedType,\n\t\trequestedLength, requestedSkeletonParts,\n\n\t\t// Using an easier to read variable.\n\t\tnormalizePatternType = dateExpandPatternNormalizePatternType;\n\n\trequestedSkeletonParts = skeletonWithoutFractionalSeconds.match( datePatternRe );\n\tbestMatchFormatParts = bestMatchFormat.match( datePatternRe );\n\n\tfor ( i = 0; i < bestMatchFormatParts.length; i++ ) {\n\t\tmatchedType = bestMatchFormatParts[ i ].charAt( 0 );\n\t\tmatchedLength = bestMatchFormatParts[ i ].length;\n\t\tfor ( j = 0; j < requestedSkeletonParts.length; j++ ) {\n\t\t\trequestedType = requestedSkeletonParts[ j ].charAt( 0 );\n\t\t\trequestedLength = requestedSkeletonParts[ j ].length;\n\t\t\tif ( normalizePatternType( matchedType ) === normalizePatternType( requestedType ) &&\n\t\t\t\tmatchedLength < requestedLength\n\t\t\t) {\n\t\t\t\tbestMatchFormatParts[ i ] = stringRepeat( matchedType, requestedLength );\n\t\t\t}\n\t\t}\n\t}\n\n\treturn bestMatchFormatParts.join( \"\" );\n}\n\n// See: http://www.unicode.org/reports/tr35/tr35-dates.html#Matching_Skeletons\nvar dateExpandPatternAugmentFormat = function( requestedSkeleton, bestMatchFormat, decimalSeparator ) {\n\tvar countOfFractionalSeconds, fractionalSecondMatch, lastSecondIdx,\n\t\tskeletonWithoutFractionalSeconds;\n\n\tfractionalSecondMatch = requestedSkeleton.match( /S/g );\n\tcountOfFractionalSeconds = fractionalSecondMatch ? fractionalSecondMatch.length : 0;\n\tskeletonWithoutFractionalSeconds = requestedSkeleton.replace( /S/g, \"\" );\n\n\tbestMatchFormat = expandBestMatchFormat( skeletonWithoutFractionalSeconds, bestMatchFormat );\n\n\tlastSecondIdx = bestMatchFormat.lastIndexOf( \"s\" );\n\tif ( lastSecondIdx !== -1 && countOfFractionalSeconds !== 0 ) {\n\t\tbestMatchFormat =\n\t\t\tbestMatchFormat.slice( 0, lastSecondIdx + 1 ) +\n\t\t\tdecimalSeparator +\n\t\t\tstringRepeat( \"S\", countOfFractionalSeconds ) +\n\t\t\tbestMatchFormat.slice( lastSecondIdx + 1 );\n\t}\n\treturn bestMatchFormat;\n};\n\n\n\n\nvar dateExpandPatternCompareFormats = function( formatA, formatB ) {\n\tvar a, b, distance, lenA, lenB, typeA, typeB, i, j,\n\n\t\t// Using easier to read variables.\n\t\tnormalizePatternType = dateExpandPatternNormalizePatternType;\n\n\tif ( formatA === formatB ) {\n\t\treturn 0;\n\t}\n\n\tformatA = formatA.match( datePatternRe );\n\tformatB = formatB.match( datePatternRe );\n\n\tif ( formatA.length !== formatB.length ) {\n\t\treturn -1;\n\t}\n\n\tdistance = 1;\n\tfor ( i = 0; i < formatA.length; i++ ) {\n\t\ta = formatA[ i ].charAt( 0 );\n\t\ttypeA = normalizePatternType( a );\n\t\ttypeB = null;\n\t\tfor ( j = 0; j < formatB.length; j++ ) {\n\t\t\tb = formatB[ j ].charAt( 0 );\n\t\t\ttypeB = normalizePatternType( b );\n\t\t\tif ( typeA === typeB ) {\n\t\t\t\tbreak;\n\t\t\t} else {\n\t\t\t\ttypeB = null;\n\t\t\t}\n\t\t}\n\t\tif ( typeB === null ) {\n\t\t\treturn -1;\n\t\t}\n\t\tlenA = formatA[ i ].length;\n\t\tlenB = formatB[ j ].length;\n\t\tdistance = distance + Math.abs( lenA - lenB );\n\n\t\t// Most symbols have a small distance from each other, e.g., M ≅ L; E ≅ c; a ≅ b ≅ B;\n\t\t// H ≅ k ≅ h ≅ K; ...\n\t\tif ( a !== b ) {\n\t\t\tdistance += 1;\n\t\t}\n\n\t\t// Numeric (l<3) and text fields (l>=3) are given a larger distance from each other.\n\t\tif ( ( lenA < 3 && lenB >= 3 ) || ( lenA >= 3 && lenB < 3 ) ) {\n\t\t\tdistance += 20;\n\t\t}\n\t}\n\treturn distance;\n};\n\n\n\n\nvar dateExpandPatternGetBestMatchPattern = function( cldr, askedSkeleton ) {\n\tvar availableFormats, decimalSeparator, pattern, ratedFormats, skeleton,\n\t\tpath = \"dates/calendars/gregorian/dateTimeFormats/availableFormats\",\n\n\t\t// Using easier to read variables.\n\t\taugmentFormat = dateExpandPatternAugmentFormat,\n\t\tcompareFormats = dateExpandPatternCompareFormats;\n\n\tpattern = cldr.main([ path, askedSkeleton ]);\n\n\tif ( askedSkeleton && !pattern ) {\n\t\tavailableFormats = cldr.main([ path ]);\n\t\tratedFormats = [];\n\n\t\tfor ( skeleton in availableFormats ) {\n\t\t\tratedFormats.push({\n\t\t\t\tskeleton: skeleton,\n\t\t\t\tpattern: availableFormats[ skeleton ],\n\t\t\t\trate: compareFormats( askedSkeleton, skeleton )\n\t\t\t});\n\t\t}\n\n\t\tratedFormats = ratedFormats\n\t\t\t.filter( function( format ) {\n\t\t\t\treturn format.rate > -1;\n\t\t\t} )\n\t\t\t.sort( function( formatA, formatB ) {\n\t\t\t\treturn formatA.rate - formatB.rate;\n\t\t\t});\n\n\t\tif ( ratedFormats.length ) {\n\t\t\tdecimalSeparator = numberSymbol( \"decimal\", cldr );\n\t\t\tpattern = augmentFormat( askedSkeleton, ratedFormats[ 0 ].pattern, decimalSeparator );\n\t\t}\n\t}\n\n\treturn pattern;\n};\n\n\n\n\n/**\n * expandPattern( options, cldr )\n *\n * @options [Object] if String, it's considered a skeleton. Object accepts:\n * - skeleton: [String] lookup availableFormat;\n * - date: [String] ( \"full\" | \"long\" | \"medium\" | \"short\" );\n * - time: [String] ( \"full\" | \"long\" | \"medium\" | \"short\" );\n * - datetime: [String] ( \"full\" | \"long\" | \"medium\" | \"short\" );\n * - raw: [String] For more info see datetime/format.js.\n *\n * @cldr [Cldr instance].\n *\n * Return the corresponding pattern.\n * Eg for \"en\":\n * - \"GyMMMd\" returns \"MMM d, y G\";\n * - { skeleton: \"GyMMMd\" } returns \"MMM d, y G\";\n * - { date: \"full\" } returns \"EEEE, MMMM d, y\";\n * - { time: \"full\" } returns \"h:mm:ss a zzzz\";\n * - { datetime: \"full\" } returns \"EEEE, MMMM d, y 'at' h:mm:ss a zzzz\";\n * - { raw: \"dd/mm\" } returns \"dd/mm\";\n */\nvar dateExpandPattern = function( options, cldr ) {\n\tvar dateSkeleton, result, skeleton, timeSkeleton, type,\n\n\t\t// Using easier to read variables.\n\t\tgetBestMatchPattern = dateExpandPatternGetBestMatchPattern;\n\n\tfunction combineDateTime( type, datePattern, timePattern ) {\n\t\treturn formatMessage(\n\t\t\tcldr.main([\n\t\t\t\t\"dates/calendars/gregorian/dateTimeFormats\",\n\t\t\t\ttype\n\t\t\t]),\n\t\t\t[ timePattern, datePattern ]\n\t\t);\n\t}\n\n\tswitch ( true ) {\n\t\tcase \"skeleton\" in options:\n\t\t\tskeleton = options.skeleton;\n\n\t\t\t// Preferred hour (j).\n\t\t\tskeleton = skeleton.replace( /j/g, function() {\n\t\t\t\treturn cldr.supplemental.timeData.preferred();\n\t\t\t});\n\n\t\t\tvalidateSkeleton( skeleton );\n\n\t\t\t// Try direct map (note that getBestMatchPattern handles it).\n\t\t\t// ... or, try to \"best match\" the whole skeleton.\n\t\t\tresult = getBestMatchPattern(\n\t\t\t\tcldr,\n\t\t\t\tskeleton\n\t\t\t);\n\t\t\tif ( result ) {\n\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\t// ... or, try to \"best match\" the date and time parts individually.\n\t\t\ttimeSkeleton = skeleton.split( /[^hHKkmsSAzZOvVXx]/ ).slice( -1 )[ 0 ];\n\t\t\tdateSkeleton = skeleton.split( /[^GyYuUrQqMLlwWdDFgEec]/ )[ 0 ];\n\t\t\tdateSkeleton = getBestMatchPattern(\n\t\t\t\tcldr,\n\t\t\t\tdateSkeleton\n\t\t\t);\n\t\t\ttimeSkeleton = getBestMatchPattern(\n\t\t\t\tcldr,\n\t\t\t\ttimeSkeleton\n\t\t\t);\n\n\t\t\tif ( /(MMMM|LLLL).*[Ec]/.test( dateSkeleton ) ) {\n\t\t\t\ttype = \"full\";\n\t\t\t} else if ( /MMMM|LLLL/.test( dateSkeleton ) ) {\n\t\t\t\ttype = \"long\";\n\t\t\t} else if ( /MMM|LLL/.test( dateSkeleton ) ) {\n\t\t\t\ttype = \"medium\";\n\t\t\t} else {\n\t\t\t\ttype = \"short\";\n\t\t\t}\n\n\t\t\tif ( dateSkeleton && timeSkeleton ) {\n\t\t\t\tresult = combineDateTime( type, dateSkeleton, timeSkeleton );\n\t\t\t} else {\n\t\t\t\tresult = dateSkeleton || timeSkeleton;\n\t\t\t}\n\n\t\t\tbreak;\n\n\t\tcase \"date\" in options:\n\t\tcase \"time\" in options:\n\t\t\tresult = cldr.main([\n\t\t\t\t\"dates/calendars/gregorian\",\n\t\t\t\t\"date\" in options ? \"dateFormats\" : \"timeFormats\",\n\t\t\t\t( options.date || options.time )\n\t\t\t]);\n\t\t\tbreak;\n\n\t\tcase \"datetime\" in options:\n\t\t\tresult = combineDateTime( options.datetime,\n\t\t\t\tcldr.main([ \"dates/calendars/gregorian/dateFormats\", options.datetime ]),\n\t\t\t\tcldr.main([ \"dates/calendars/gregorian/timeFormats\", options.datetime ])\n\t\t\t);\n\t\t\tbreak;\n\n\t\tcase \"raw\" in options:\n\t\t\tresult = options.raw;\n\t\t\tbreak;\n\n\t\tdefault:\n\t\t\tthrow createErrorInvalidParameterValue({\n\t\t\t\tname: \"options\",\n\t\t\t\tvalue: options\n\t\t\t});\n\t}\n\n\treturn result;\n};\n\n\n\n\nvar dateWeekDays = [ \"sun\", \"mon\", \"tue\", \"wed\", \"thu\", \"fri\", \"sat\" ];\n\n\n\n\n/**\n * firstDayOfWeek\n */\nvar dateFirstDayOfWeek = function( cldr ) {\n\treturn dateWeekDays.indexOf( cldr.supplemental.weekData.firstDay() );\n};\n\n\n\n\n/**\n * getTimeZoneName( length, type )\n */\nvar dateGetTimeZoneName = function( length, type, timeZone, cldr ) {\n\tvar metaZone, result;\n\n\tif ( !timeZone ) {\n\t\treturn;\n\t}\n\n\tresult = cldr.main([\n\t\t\"dates/timeZoneNames/zone\",\n\t\ttimeZone,\n\t\tlength < 4 ? \"short\" : \"long\",\n\t\ttype\n\t]);\n\n\tif ( result ) {\n\t\treturn result;\n\t}\n\n\t// The latest metazone data of the metazone array.\n\t// TODO expand to support the historic metazones based on the given date.\n\tmetaZone = cldr.supplemental([\n\t\t\"metaZones/metazoneInfo/timezone\", timeZone, 0,\n\t\t\"usesMetazone/_mzone\"\n\t]);\n\n\treturn cldr.main([\n\t\t\"dates/timeZoneNames/metazone\",\n\t\tmetaZone,\n\t\tlength < 4 ? \"short\" : \"long\",\n\t\ttype\n\t]);\n};\n\n\n\n\n/**\n * timezoneHourFormatShortH( hourFormat )\n *\n * @hourFormat [String]\n *\n * Unofficial deduction of the short hourFormat given time zone `hourFormat` element.\n * Official spec is pending resolution: http://unicode.org/cldr/trac/ticket/8293\n *\n * Example:\n * - \"+HH.mm;-HH.mm\" => \"+H;-H\"\n * - \"+HH:mm;-HH:mm\" => \"+H;-H\"\n * - \"+HH:mm;−HH:mm\" => \"+H;−H\" (Note MINUS SIGN \\u2212)\n * - \"+HHmm;-HHmm\" => \"+H:-H\"\n */\nvar dateTimezoneHourFormatH = function( hourFormat ) {\n\treturn hourFormat\n\t\t.split( \";\" )\n\t\t.map(function( format ) {\n\t\t\treturn format.slice( 0, format.indexOf( \"H\" ) + 1 );\n\t\t})\n\t\t.join( \";\" );\n};\n\n\n\n\n/**\n * timezoneHourFormatLongHm( hourFormat )\n *\n * @hourFormat [String]\n *\n * Unofficial deduction of the short hourFormat given time zone `hourFormat` element.\n * Official spec is pending resolution: http://unicode.org/cldr/trac/ticket/8293\n *\n * Example (hFormat === \"H\"): (used for short Hm)\n * - \"+HH.mm;-HH.mm\" => \"+H.mm;-H.mm\"\n * - \"+HH:mm;-HH:mm\" => \"+H:mm;-H:mm\"\n * - \"+HH:mm;−HH:mm\" => \"+H:mm;−H:mm\" (Note MINUS SIGN \\u2212)\n * - \"+HHmm;-HHmm\" => \"+Hmm:-Hmm\"\n *\n * Example (hFormat === \"HH\": (used for long Hm)\n * - \"+HH.mm;-HH.mm\" => \"+HH.mm;-HH.mm\"\n * - \"+HH:mm;-HH:mm\" => \"+HH:mm;-HH:mm\"\n * - \"+H:mm;-H:mm\" => \"+HH:mm;-HH:mm\"\n * - \"+HH:mm;−HH:mm\" => \"+HH:mm;−HH:mm\" (Note MINUS SIGN \\u2212)\n * - \"+HHmm;-HHmm\" => \"+HHmm:-HHmm\"\n */\nvar dateTimezoneHourFormatHm = function( hourFormat, hFormat ) {\n\treturn hourFormat\n\t\t.split( \";\" )\n\t\t.map(function( format ) {\n\t\t\tvar parts = format.split( /H+/ );\n\t\t\tparts.splice( 1, 0, hFormat );\n\t\t\treturn parts.join( \"\" );\n\t\t})\n\t\t.join( \";\" );\n};\n\n\n\n\nvar runtimeCacheDataBind = function( key, data ) {\n\tvar fn = function() {\n\t\treturn data;\n\t};\n\tfn.dataCacheKey = key;\n\treturn fn;\n};\n\n\n\n\n/**\n * properties( pattern, cldr )\n *\n * @pattern [String] raw pattern.\n * ref: http://www.unicode.org/reports/tr35/tr35-dates.html#Date_Format_Patterns\n *\n * @cldr [Cldr instance].\n *\n * Return the properties given the pattern and cldr.\n *\n * TODO Support other calendar types.\n */\nvar dateFormatProperties = function( pattern, cldr, timeZone ) {\n\tvar properties = {\n\t\t\tnumberFormatters: {},\n\t\t\tpattern: pattern,\n\t\t\ttimeSeparator: numberSymbol( \"timeSeparator\", cldr )\n\t\t},\n\t\twidths = [ \"abbreviated\", \"wide\", \"narrow\" ];\n\n\tfunction setNumberFormatterPattern( pad ) {\n\t\tproperties.numberFormatters[ pad ] = stringPad( \"\", pad );\n\t}\n\n\tif ( timeZone ) {\n\t\tproperties.timeZoneData = runtimeCacheDataBind( \"iana/\" + timeZone, {\n\t\t\toffsets: cldr.get([ \"globalize-iana/zoneData\", timeZone, \"offsets\" ]),\n\t\t\tuntils: cldr.get([ \"globalize-iana/zoneData\", timeZone, \"untils\" ]),\n\t\t\tisdsts: cldr.get([ \"globalize-iana/zoneData\", timeZone, \"isdsts\" ])\n\t\t});\n\t}\n\n\tpattern.replace( datePatternRe, function( current ) {\n\t\tvar aux, chr, daylightTzName, formatNumber, genericTzName, length, standardTzName;\n\n\t\tchr = current.charAt( 0 );\n\t\tlength = current.length;\n\n\t\tif ( chr === \"j\" ) {\n\n\t\t\t// Locale preferred hHKk.\n\t\t\t// http://www.unicode.org/reports/tr35/tr35-dates.html#Time_Data\n\t\t\tproperties.preferredTime = chr = cldr.supplemental.timeData.preferred();\n\t\t}\n\n\t\t// ZZZZ: same as \"OOOO\".\n\t\tif ( chr === \"Z\" && length === 4 ) {\n\t\t\tchr = \"O\";\n\t\t\tlength = 4;\n\t\t}\n\n\t\t// z...zzz: \"{shortRegion}\", eg. \"PST\" or \"PDT\".\n\t\t// zzzz: \"{regionName} {Standard Time}\" or \"{regionName} {Daylight Time}\",\n\t\t// e.g., \"Pacific Standard Time\" or \"Pacific Daylight Time\".\n\t\t// http://unicode.org/reports/tr35/tr35-dates.html#Date_Format_Patterns\n\t\tif ( chr === \"z\" ) {\n\t\t\tstandardTzName = dateGetTimeZoneName( length, \"standard\", timeZone, cldr );\n\t\t\tdaylightTzName = dateGetTimeZoneName( length, \"daylight\", timeZone, cldr );\n\t\t\tif ( standardTzName ) {\n\t\t\t\tproperties.standardTzName = standardTzName;\n\t\t\t}\n\t\t\tif ( daylightTzName ) {\n\t\t\t\tproperties.daylightTzName = daylightTzName;\n\t\t\t}\n\n\t\t\t// Fall through the \"O\" format in case one name is missing.\n\t\t\tif ( !standardTzName || !daylightTzName ) {\n\t\t\t\tchr = \"O\";\n\t\t\t\tif ( length < 4 ) {\n\t\t\t\t\tlength = 1;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// v...vvv: \"{shortRegion}\", eg. \"PT\".\n\t\t// vvvv: \"{regionName} {Time}\" or \"{regionName} {Time}\",\n\t\t// e.g., \"Pacific Time\"\n\t\t// http://unicode.org/reports/tr35/tr35-dates.html#Date_Format_Patterns\n\t\tif ( chr === \"v\" ) {\n\t\t\tgenericTzName = dateGetTimeZoneName( length, \"generic\", timeZone, cldr );\n\n\t\t\t// Fall back to \"V\" format.\n\t\t\tif ( !genericTzName ) {\n\t\t\t\tchr = \"V\";\n\t\t\t\tlength = 4;\n\t\t\t}\n\t\t}\n\n\t\tswitch ( chr ) {\n\n\t\t\t// Era\n\t\t\tcase \"G\":\n\t\t\t\tproperties.eras = cldr.main([\n\t\t\t\t\t\"dates/calendars/gregorian/eras\",\n\t\t\t\t\tlength <= 3 ? \"eraAbbr\" : ( length === 4 ? \"eraNames\" : \"eraNarrow\" )\n\t\t\t\t]);\n\t\t\t\tbreak;\n\n\t\t\t// Year\n\t\t\tcase \"y\":\n\n\t\t\t\t// Plain year.\n\t\t\t\tformatNumber = true;\n\t\t\t\tbreak;\n\n\t\t\tcase \"Y\":\n\n\t\t\t\t// Year in \"Week of Year\"\n\t\t\t\tproperties.firstDay = dateFirstDayOfWeek( cldr );\n\t\t\t\tproperties.minDays = cldr.supplemental.weekData.minDays();\n\t\t\t\tformatNumber = true;\n\t\t\t\tbreak;\n\n\t\t\tcase \"u\": // Extended year. Need to be implemented.\n\t\t\tcase \"U\": // Cyclic year name. Need to be implemented.\n\t\t\t\tthrow createErrorUnsupportedFeature({\n\t\t\t\t\tfeature: \"year pattern `\" + chr + \"`\"\n\t\t\t\t});\n\n\t\t\t// Quarter\n\t\t\tcase \"Q\":\n\t\t\tcase \"q\":\n\t\t\t\tif ( length > 2 ) {\n\t\t\t\t\tif ( !properties.quarters ) {\n\t\t\t\t\t\tproperties.quarters = {};\n\t\t\t\t\t}\n\t\t\t\t\tif ( !properties.quarters[ chr ] ) {\n\t\t\t\t\t\tproperties.quarters[ chr ] = {};\n\t\t\t\t\t}\n\t\t\t\t\tproperties.quarters[ chr ][ length ] = cldr.main([\n\t\t\t\t\t\t\"dates/calendars/gregorian/quarters\",\n\t\t\t\t\t\tchr === \"Q\" ? \"format\" : \"stand-alone\",\n\t\t\t\t\t\twidths[ length - 3 ]\n\t\t\t\t\t]);\n\t\t\t\t} else {\n\t\t\t\t\tformatNumber = true;\n\t\t\t\t}\n\t\t\t\tbreak;\n\n\t\t\t// Month\n\t\t\tcase \"M\":\n\t\t\tcase \"L\":\n\t\t\t\tif ( length > 2 ) {\n\t\t\t\t\tif ( !properties.months ) {\n\t\t\t\t\t\tproperties.months = {};\n\t\t\t\t\t}\n\t\t\t\t\tif ( !properties.months[ chr ] ) {\n\t\t\t\t\t\tproperties.months[ chr ] = {};\n\t\t\t\t\t}\n\t\t\t\t\tproperties.months[ chr ][ length ] = cldr.main([\n\t\t\t\t\t\t\"dates/calendars/gregorian/months\",\n\t\t\t\t\t\tchr === \"M\" ? \"format\" : \"stand-alone\",\n\t\t\t\t\t\twidths[ length - 3 ]\n\t\t\t\t\t]);\n\t\t\t\t} else {\n\t\t\t\t\tformatNumber = true;\n\t\t\t\t}\n\t\t\t\tbreak;\n\n\t\t\t// Week - Week of Year (w) or Week of Month (W).\n\t\t\tcase \"w\":\n\t\t\tcase \"W\":\n\t\t\t\tproperties.firstDay = dateFirstDayOfWeek( cldr );\n\t\t\t\tproperties.minDays = cldr.supplemental.weekData.minDays();\n\t\t\t\tformatNumber = true;\n\t\t\t\tbreak;\n\n\t\t\t// Day\n\t\t\tcase \"d\":\n\t\t\tcase \"D\":\n\t\t\tcase \"F\":\n\t\t\t\tformatNumber = true;\n\t\t\t\tbreak;\n\n\t\t\tcase \"g\":\n\n\t\t\t\t// Modified Julian day. Need to be implemented.\n\t\t\t\tthrow createErrorUnsupportedFeature({\n\t\t\t\t\tfeature: \"Julian day pattern `g`\"\n\t\t\t\t});\n\n\t\t\t// Week day\n\t\t\tcase \"e\":\n\t\t\tcase \"c\":\n\t\t\t\tif ( length <= 2 ) {\n\t\t\t\t\tproperties.firstDay = dateFirstDayOfWeek( cldr );\n\t\t\t\t\tformatNumber = true;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\n\t\t\t/* falls through */\n\t\t\tcase \"E\":\n\t\t\t\tif ( !properties.days ) {\n\t\t\t\t\tproperties.days = {};\n\t\t\t\t}\n\t\t\t\tif ( !properties.days[ chr ] ) {\n\t\t\t\t\tproperties.days[ chr ] = {};\n\t\t\t\t}\n\t\t\t\tif ( length === 6 ) {\n\n\t\t\t\t\t// If short day names are not explicitly specified, abbreviated day names are\n\t\t\t\t\t// used instead.\n\t\t\t\t\t// http://www.unicode.org/reports/tr35/tr35-dates.html#months_days_quarters_eras\n\t\t\t\t\t// http://unicode.org/cldr/trac/ticket/6790\n\t\t\t\t\tproperties.days[ chr ][ length ] = cldr.main([\n\t\t\t\t\t\t\t\"dates/calendars/gregorian/days\",\n\t\t\t\t\t\t\tchr === \"c\" ? \"stand-alone\" : \"format\",\n\t\t\t\t\t\t\t\"short\"\n\t\t\t\t\t\t]) || cldr.main([\n\t\t\t\t\t\t\t\"dates/calendars/gregorian/days\",\n\t\t\t\t\t\t\tchr === \"c\" ? \"stand-alone\" : \"format\",\n\t\t\t\t\t\t\t\"abbreviated\"\n\t\t\t\t\t\t]);\n\t\t\t\t} else {\n\t\t\t\t\tproperties.days[ chr ][ length ] = cldr.main([\n\t\t\t\t\t\t\"dates/calendars/gregorian/days\",\n\t\t\t\t\t\tchr === \"c\" ? \"stand-alone\" : \"format\",\n\t\t\t\t\t\twidths[ length < 3 ? 0 : length - 3 ]\n\t\t\t\t\t]);\n\t\t\t\t}\n\t\t\t\tbreak;\n\n\t\t\t// Period (AM or PM)\n\t\t\tcase \"a\":\n\t\t\t\tproperties.dayPeriods = {\n\t\t\t\t\tam: cldr.main(\n\t\t\t\t\t\t\"dates/calendars/gregorian/dayPeriods/format/wide/am\"\n\t\t\t\t\t),\n\t\t\t\t\tpm: cldr.main(\n\t\t\t\t\t\t\"dates/calendars/gregorian/dayPeriods/format/wide/pm\"\n\t\t\t\t\t)\n\t\t\t\t};\n\t\t\t\tbreak;\n\n\t\t\t// Hour\n\t\t\tcase \"h\": // 1-12\n\t\t\tcase \"H\": // 0-23\n\t\t\tcase \"K\": // 0-11\n\t\t\tcase \"k\": // 1-24\n\n\t\t\t// Minute\n\t\t\tcase \"m\":\n\n\t\t\t// Second\n\t\t\tcase \"s\":\n\t\t\tcase \"S\":\n\t\t\tcase \"A\":\n\t\t\t\tformatNumber = true;\n\t\t\t\tbreak;\n\n\t\t\t// Zone\n\t\t\tcase \"v\":\n\t\t\t\tif ( length !== 1 && length !== 4 ) {\n\t\t\t\t\tthrow createErrorUnsupportedFeature({\n\t\t\t\t\t\tfeature: \"timezone pattern `\" + pattern + \"`\"\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t\tproperties.genericTzName = genericTzName;\n\t\t\t\tbreak;\n\n\t\t\tcase \"V\":\n\n\t\t\t\tif ( length === 1 ) {\n\t\t\t\t\tthrow createErrorUnsupportedFeature({\n\t\t\t\t\t\tfeature: \"timezone pattern `\" + pattern + \"`\"\n\t\t\t\t\t});\n\t\t\t\t}\n\n\t\t\t\tif ( timeZone ) {\n\t\t\t\t\tif ( length === 2 ) {\n\t\t\t\t\t\tproperties.timeZoneName = timeZone;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\n\t\t\t\t\tvar timeZoneName,\n\t\t\t\t\t\texemplarCity = cldr.main([\n\t\t\t\t\t\t\t\"dates/timeZoneNames/zone\", timeZone, \"exemplarCity\"\n\t\t\t\t\t\t]);\n\n\t\t\t\t\t// Fallback logic to support CLDR v43 time zone name\n\t\t\t\t\tif (!exemplarCity && timeZone.split(\"/\").length === 2) {\n\t\t\t\t\t\texemplarCity = timeZone.split(\"/\")[ 1 ].replace(/_|-/, \" \");\n\t\t\t\t\t}\n\t\t\t\t\tif (!exemplarCity && timeZone.split(\"/\").length === 3) {\n\t\t\t\t\t\texemplarCity = timeZone.split(\"/\")[ 2 ].replace(/_|-/, \" \");\n\t\t\t\t\t}\n\t\t\t\t\tif (length === 3) {\n\t\t\t\t\t\tif (!exemplarCity) {\n\t\t\t\t\t\t\texemplarCity = cldr.main([\n\t\t\t\t\t\t\t\t\"dates/timeZoneNames/zone/Etc/Unknown/exemplarCity\"\n\t\t\t\t\t\t\t]);\n\t\t\t\t\t\t}\n\t\t\t\t\t\ttimeZoneName = exemplarCity;\n\t\t\t\t\t}\n\t\t\t\t\tif (exemplarCity && length === 4) {\n\t\t\t\t\t\ttimeZoneName = formatMessage(\n\t\t\t\t\t\t\tcldr.main(\"dates/timeZoneNames/regionFormat\"),\n\t\t\t\t\t\t\t[ exemplarCity ]\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t\tif (timeZoneName) {\n\t\t\t\t\t\tproperties.timeZoneName = timeZoneName;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tif ( current === \"v\" ) {\n\t\t\t\t\tlength = 1;\n\t\t\t\t}\n\n\t\t\t/* falls through */\n\t\t\tcase \"O\":\n\n\t\t\t\t// O: \"{gmtFormat}+H;{gmtFormat}-H\" or \"{gmtZeroFormat}\", eg. \"GMT-8\" or \"GMT\".\n\t\t\t\t// OOOO: \"{gmtFormat}{hourFormat}\" or \"{gmtZeroFormat}\", eg. \"GMT-08:00\" or \"GMT\".\n\t\t\t\tproperties.gmtFormat = cldr.main( \"dates/timeZoneNames/gmtFormat\" );\n\t\t\t\tproperties.gmtZeroFormat = cldr.main( \"dates/timeZoneNames/gmtZeroFormat\" );\n\n\t\t\t\t// Unofficial deduction of the hourFormat variations.\n\t\t\t\t// Official spec is pending resolution: http://unicode.org/cldr/trac/ticket/8293\n\t\t\t\taux = cldr.main( \"dates/timeZoneNames/hourFormat\" );\n\t\t\t\tproperties.hourFormat = length < 4 ?\n\t\t\t\t\t[ dateTimezoneHourFormatH( aux ), dateTimezoneHourFormatHm( aux, \"H\" ) ] :\n\t\t\t\t\tdateTimezoneHourFormatHm( aux, \"HH\" );\n\n\t\t\t/* falls through */\n\t\t\tcase \"Z\":\n\t\t\tcase \"X\":\n\t\t\tcase \"x\":\n\t\t\t\tsetNumberFormatterPattern( 1 );\n\t\t\t\tsetNumberFormatterPattern( 2 );\n\t\t\t\tbreak;\n\t\t}\n\n\t\tif ( formatNumber ) {\n\t\t\tsetNumberFormatterPattern( length );\n\t\t}\n\t});\n\n\treturn properties;\n};\n\n\n\n\nvar dateFormatterFn = function( dateToPartsFormatter ) {\n\treturn function dateFormatter( value ) {\n\t\treturn partsJoin( dateToPartsFormatter( value ));\n\t};\n};\n\n\n\n\n/**\n * parseProperties( cldr )\n *\n * @cldr [Cldr instance].\n *\n * @timeZone [String] FIXME.\n *\n * Return parser properties.\n */\nvar dateParseProperties = function( cldr, timeZone ) {\n\tvar properties = {\n\t\tpreferredTimeData: cldr.supplemental.timeData.preferred()\n\t};\n\n\tif ( timeZone ) {\n\t\tproperties.timeZoneData = runtimeCacheDataBind( \"iana/\" + timeZone, {\n\t\t\toffsets: cldr.get([ \"globalize-iana/zoneData\", timeZone, \"offsets\" ]),\n\t\t\tuntils: cldr.get([ \"globalize-iana/zoneData\", timeZone, \"untils\" ]),\n\t\t\tisdsts: cldr.get([ \"globalize-iana/zoneData\", timeZone, \"isdsts\" ])\n\t\t});\n\t}\n\n\treturn properties;\n};\n\n\nvar ZonedDateTime = (function() {\nfunction definePrivateProperty(object, property, value) {\n Object.defineProperty(object, property, {\n value: value\n });\n}\n\nfunction getUntilsIndex(original, untils) {\n var index = 0;\n var originalTime = original.getTime();\n\n // TODO Should we do binary search for improved performance?\n while (index < untils.length - 1 && originalTime >= untils[index]) {\n index++;\n }\n return index;\n}\n\nfunction setWrap(fn) {\n var offset1 = this.getTimezoneOffset();\n var ret = fn();\n this.original.setTime(new Date(this.getTime()));\n var offset2 = this.getTimezoneOffset();\n if (offset2 - offset1) {\n this.original.setMinutes(this.original.getMinutes() + offset2 - offset1);\n }\n return ret;\n}\n\nvar ZonedDateTime = function(date, timeZoneData) {\n definePrivateProperty(this, \"original\", new Date(date.getTime()));\n definePrivateProperty(this, \"local\", new Date(date.getTime()));\n definePrivateProperty(this, \"timeZoneData\", timeZoneData);\n definePrivateProperty(this, \"setWrap\", setWrap);\n if (!(timeZoneData.untils && timeZoneData.offsets && timeZoneData.isdsts)) {\n throw new Error(\"Invalid IANA data\");\n }\n this.setTime(this.local.getTime() - this.getTimezoneOffset() * 60 * 1000);\n};\n\nZonedDateTime.prototype.clone = function() {\n return new ZonedDateTime(this.original, this.timeZoneData);\n};\n\n// Date field getters.\n[\"getFullYear\", \"getMonth\", \"getDate\", \"getDay\", \"getHours\", \"getMinutes\",\n\"getSeconds\", \"getMilliseconds\"].forEach(function(method) {\n // Corresponding UTC method, e.g., \"getUTCFullYear\" if method === \"getFullYear\".\n var utcMethod = \"getUTC\" + method.substr(3);\n ZonedDateTime.prototype[method] = function() {\n return this.local[utcMethod]();\n };\n});\n\n// Note: Define .valueOf = .getTime for arithmetic operations like date1 - date2.\nZonedDateTime.prototype.valueOf =\nZonedDateTime.prototype.getTime = function() {\n return this.local.getTime() + this.getTimezoneOffset() * 60 * 1000;\n};\n\nZonedDateTime.prototype.getTimezoneOffset = function() {\n var index = getUntilsIndex(this.original, this.timeZoneData.untils);\n return this.timeZoneData.offsets[index];\n};\n\n// Date field setters.\n[\"setFullYear\", \"setMonth\", \"setDate\", \"setHours\", \"setMinutes\", \"setSeconds\", \"setMilliseconds\"].forEach(function(method) {\n // Corresponding UTC method, e.g., \"setUTCFullYear\" if method === \"setFullYear\".\n var utcMethod = \"setUTC\" + method.substr(3);\n ZonedDateTime.prototype[method] = function(value) {\n var local = this.local;\n // Note setWrap is needed for seconds and milliseconds just because\n // abs(value) could be >= a minute.\n return this.setWrap(function() {\n return local[utcMethod](value);\n });\n };\n});\n\nZonedDateTime.prototype.setTime = function(time) {\n return this.local.setTime(time);\n};\n\nZonedDateTime.prototype.isDST = function() {\n var index = getUntilsIndex(this.original, this.timeZoneData.untils);\n return Boolean(this.timeZoneData.isdsts[index]);\n};\n\nZonedDateTime.prototype.inspect = function() {\n var index = getUntilsIndex(this.original, this.timeZoneData.untils);\n var abbrs = this.timeZoneData.abbrs;\n return this.local.toISOString().replace(/Z$/, \"\") + \" \" +\n (abbrs && abbrs[index] + \" \" || (this.getTimezoneOffset() * -1) + \" \") +\n (this.isDST() ? \"(daylight savings)\" : \"\");\n};\n\nZonedDateTime.prototype.toDate = function() {\n return new Date(this.getTime());\n};\n\n// Type cast getters.\n[\"toISOString\", \"toJSON\", \"toUTCString\"].forEach(function(method) {\n ZonedDateTime.prototype[method] = function() {\n return this.toDate()[method]();\n };\n});\n\nreturn ZonedDateTime;\n}());\n\n\n/**\n * isLeapYear( year )\n *\n * @year [Number]\n *\n * Returns an indication whether the specified year is a leap year.\n */\nvar dateIsLeapYear = function( year ) {\n\treturn new Date( year, 1, 29 ).getMonth() === 1;\n};\n\n\n\n\n/**\n * lastDayOfMonth( date )\n *\n * @date [Date]\n *\n * Return the last day of the given date's month\n */\nvar dateLastDayOfMonth = function( date ) {\n\treturn new Date( date.getFullYear(), date.getMonth() + 1, 0 ).getDate();\n};\n\n\n\n\n/**\n * startOf changes the input to the beginning of the given unit.\n *\n * For example, starting at the start of a day, resets hours, minutes\n * seconds and milliseconds to 0. Starting at the month does the same, but\n * also sets the date to 1.\n *\n * Returns the modified date\n */\nvar dateStartOf = function( date, unit ) {\n\tdate = date instanceof ZonedDateTime ? date.clone() : new Date( date.getTime() );\n\tswitch ( unit ) {\n\t\tcase \"year\":\n\t\t\tdate.setMonth( 0 );\n\t\t/* falls through */\n\t\tcase \"month\":\n\t\t\tdate.setDate( 1 );\n\t\t/* falls through */\n\t\tcase \"day\":\n\t\t\tdate.setHours( 0 );\n\t\t/* falls through */\n\t\tcase \"hour\":\n\t\t\tdate.setMinutes( 0 );\n\t\t/* falls through */\n\t\tcase \"minute\":\n\t\t\tdate.setSeconds( 0 );\n\t\t/* falls through */\n\t\tcase \"second\":\n\t\t\tdate.setMilliseconds( 0 );\n\t}\n\treturn date;\n};\n\n\n\n\n/**\n * Differently from native date.setDate(), this function returns a date whose\n * day remains inside the month boundaries. For example:\n *\n * setDate( FebDate, 31 ): a \"Feb 28\" date.\n * setDate( SepDate, 31 ): a \"Sep 30\" date.\n */\nvar dateSetDate = function( date, day ) {\n\tvar lastDay = new Date( date.getFullYear(), date.getMonth() + 1, 0 ).getDate();\n\n\tdate.setDate( day < 1 ? 1 : day < lastDay ? day : lastDay );\n};\n\n\n\n\n/**\n * Differently from native date.setMonth(), this function adjusts date if\n * needed, so final month is always the one set.\n *\n * setMonth( Jan31Date, 1 ): a \"Feb 28\" date.\n * setDate( Jan31Date, 8 ): a \"Sep 30\" date.\n */\nvar dateSetMonth = function( date, month ) {\n\tvar originalDate = date.getDate();\n\n\tdate.setDate( 1 );\n\tdate.setMonth( month );\n\tdateSetDate( date, originalDate );\n};\n\n\n\n\nvar outOfRange = function( value, low, high ) {\n\treturn value < low || value > high;\n};\n\n\n\n\n/**\n * parse( value, tokens, properties )\n *\n * @value [String] string date.\n *\n * @tokens [Object] tokens returned by date/tokenizer.\n *\n * @properties [Object] output returned by date/tokenizer-properties.\n *\n * ref: http://www.unicode.org/reports/tr35/tr35-dates.html#Date_Format_Patterns\n */\nvar dateParse = function( _value, tokens, properties ) {\n\tvar amPm, day, daysOfYear, month, era, hour, hour12, timezoneOffset, valid,\n\t\tYEAR = 0,\n\t\tMONTH = 1,\n\t\tDAY = 2,\n\t\tHOUR = 3,\n\t\tMINUTE = 4,\n\t\tSECOND = 5,\n\t\tMILLISECONDS = 6,\n\t\tdate = new Date(),\n\t\ttruncateAt = [],\n\t\tunits = [ \"year\", \"month\", \"day\", \"hour\", \"minute\", \"second\", \"milliseconds\" ];\n\n\t// Create globalize date with given timezone data.\n\tif ( properties.timeZoneData ) {\n\t\tdate = new ZonedDateTime( date, properties.timeZoneData() );\n\t}\n\n\tif ( !tokens.length ) {\n\t\treturn null;\n\t}\n\n\tvalid = tokens.every(function( token ) {\n\t\tvar century, chr, value, length;\n\n\t\tif ( token.type === \"literal\" ) {\n\n\t\t\t// continue\n\t\t\treturn true;\n\t\t}\n\n\t\tchr = token.type.charAt( 0 );\n\t\tlength = token.type.length;\n\n\t\tif ( chr === \"j\" ) {\n\n\t\t\t// Locale preferred hHKk.\n\t\t\t// http://www.unicode.org/reports/tr35/tr35-dates.html#Time_Data\n\t\t\tchr = properties.preferredTimeData;\n\t\t}\n\n\t\tswitch ( chr ) {\n\n\t\t\t// Era\n\t\t\tcase \"G\":\n\t\t\t\ttruncateAt.push( YEAR );\n\t\t\t\tera = +token.value;\n\t\t\t\tbreak;\n\n\t\t\t// Year\n\t\t\tcase \"y\":\n\t\t\t\tvalue = token.value;\n\t\t\t\tif ( length === 2 ) {\n\t\t\t\t\tif ( outOfRange( value, 0, 99 ) ) {\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t}\n\n\t\t\t\t\t// mimic dojo/date/locale: choose century to apply, according to a sliding\n\t\t\t\t\t// window of 80 years before and 20 years after present year.\n\t\t\t\t\tcentury = Math.floor( date.getFullYear() / 100 ) * 100;\n\t\t\t\t\tvalue += century;\n\t\t\t\t\tif ( value > date.getFullYear() + 20 ) {\n\t\t\t\t\t\tvalue -= 100;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tdate.setFullYear( value );\n\t\t\t\ttruncateAt.push( YEAR );\n\t\t\t\tbreak;\n\n\t\t\tcase \"Y\": // Year in \"Week of Year\"\n\t\t\t\tthrow createErrorUnsupportedFeature({\n\t\t\t\t\tfeature: \"year pattern `\" + chr + \"`\"\n\t\t\t\t});\n\n\t\t\t// Quarter (skip)\n\t\t\tcase \"Q\":\n\t\t\tcase \"q\":\n\t\t\t\tbreak;\n\n\t\t\t// Month\n\t\t\tcase \"M\":\n\t\t\tcase \"L\":\n\t\t\t\tif ( length <= 2 ) {\n\t\t\t\t\tvalue = token.value;\n\t\t\t\t} else {\n\t\t\t\t\tvalue = +token.value;\n\t\t\t\t}\n\t\t\t\tif ( outOfRange( value, 1, 12 ) ) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\n\t\t\t\t// Setting the month later so that we have the correct year and can determine\n\t\t\t\t// the correct last day of February in case of leap year.\n\t\t\t\tmonth = value;\n\t\t\t\ttruncateAt.push( MONTH );\n\t\t\t\tbreak;\n\n\t\t\t// Week (skip)\n\t\t\tcase \"w\": // Week of Year.\n\t\t\tcase \"W\": // Week of Month.\n\t\t\t\tbreak;\n\n\t\t\t// Day\n\t\t\tcase \"d\":\n\t\t\t\tday = token.value;\n\t\t\t\ttruncateAt.push( DAY );\n\t\t\t\tbreak;\n\n\t\t\tcase \"D\":\n\t\t\t\tdaysOfYear = token.value;\n\t\t\t\ttruncateAt.push( DAY );\n\t\t\t\tbreak;\n\n\t\t\tcase \"F\":\n\n\t\t\t\t// Day of Week in month. eg. 2nd Wed in July.\n\t\t\t\t// Skip\n\t\t\t\tbreak;\n\n\t\t\t// Week day\n\t\t\tcase \"e\":\n\t\t\tcase \"c\":\n\t\t\tcase \"E\":\n\n\t\t\t\t// Skip.\n\t\t\t\t// value = arrayIndexOf( dateWeekDays, token.value );\n\t\t\t\tbreak;\n\n\t\t\t// Period (AM or PM)\n\t\t\tcase \"a\":\n\t\t\t\tamPm = token.value;\n\t\t\t\tbreak;\n\n\t\t\t// Hour\n\t\t\tcase \"h\": // 1-12\n\t\t\t\tvalue = token.value;\n\t\t\t\tif ( outOfRange( value, 1, 12 ) ) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t\thour = hour12 = true;\n\t\t\t\tdate.setHours( value === 12 ? 0 : value );\n\t\t\t\ttruncateAt.push( HOUR );\n\t\t\t\tbreak;\n\n\t\t\tcase \"K\": // 0-11\n\t\t\t\tvalue = token.value;\n\t\t\t\tif ( outOfRange( value, 0, 11 ) ) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t\thour = hour12 = true;\n\t\t\t\tdate.setHours( value );\n\t\t\t\ttruncateAt.push( HOUR );\n\t\t\t\tbreak;\n\n\t\t\tcase \"k\": // 1-24\n\t\t\t\tvalue = token.value;\n\t\t\t\tif ( outOfRange( value, 1, 24 ) ) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t\thour = true;\n\t\t\t\tdate.setHours( value === 24 ? 0 : value );\n\t\t\t\ttruncateAt.push( HOUR );\n\t\t\t\tbreak;\n\n\t\t\tcase \"H\": // 0-23\n\t\t\t\tvalue = token.value;\n\t\t\t\tif ( outOfRange( value, 0, 23 ) ) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t\thour = true;\n\t\t\t\tdate.setHours( value );\n\t\t\t\ttruncateAt.push( HOUR );\n\t\t\t\tbreak;\n\n\t\t\t// Minute\n\t\t\tcase \"m\":\n\t\t\t\tvalue = token.value;\n\t\t\t\tif ( outOfRange( value, 0, 59 ) ) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t\tdate.setMinutes( value );\n\t\t\t\ttruncateAt.push( MINUTE );\n\t\t\t\tbreak;\n\n\t\t\t// Second\n\t\t\tcase \"s\":\n\t\t\t\tvalue = token.value;\n\t\t\t\tif ( outOfRange( value, 0, 59 ) ) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t\tdate.setSeconds( value );\n\t\t\t\ttruncateAt.push( SECOND );\n\t\t\t\tbreak;\n\n\t\t\tcase \"A\":\n\t\t\t\tdate.setHours( 0 );\n\t\t\t\tdate.setMinutes( 0 );\n\t\t\t\tdate.setSeconds( 0 );\n\n\t\t\t/* falls through */\n\t\t\tcase \"S\":\n\t\t\t\tvalue = Math.round( token.value * Math.pow( 10, 3 - length ) );\n\t\t\t\tdate.setMilliseconds( value );\n\t\t\t\ttruncateAt.push( MILLISECONDS );\n\t\t\t\tbreak;\n\n\t\t\t// Zone\n\t\t\tcase \"z\":\n\t\t\tcase \"Z\":\n\t\t\tcase \"O\":\n\t\t\tcase \"v\":\n\t\t\tcase \"V\":\n\t\t\tcase \"X\":\n\t\t\tcase \"x\":\n\t\t\t\tif ( typeof token.value === \"number\" ) {\n\t\t\t\t\ttimezoneOffset = token.value;\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t}\n\n\t\treturn true;\n\t});\n\n\tif ( !valid ) {\n\t\treturn null;\n\t}\n\n\t// 12-hour format needs AM or PM, 24-hour format doesn't, ie. return null\n\t// if amPm && !hour12 || !amPm && hour12.\n\tif ( hour && !( !amPm ^ hour12 ) ) {\n\t\treturn null;\n\t}\n\n\tif ( era === 0 ) {\n\n\t\t// 1 BC = year 0\n\t\tdate.setFullYear( date.getFullYear() * -1 + 1 );\n\t}\n\n\tif ( month !== undefined ) {\n\t\tdateSetMonth( date, month - 1 );\n\t}\n\n\tif ( day !== undefined ) {\n\t\tif ( outOfRange( day, 1, dateLastDayOfMonth( date ) ) ) {\n\t\t\treturn null;\n\t\t}\n\t\tdate.setDate( day );\n\t} else if ( daysOfYear !== undefined ) {\n\t\tif ( outOfRange( daysOfYear, 1, dateIsLeapYear( date.getFullYear() ) ? 366 : 365 ) ) {\n\t\t\treturn null;\n\t\t}\n\t\tdate.setMonth( 0 );\n\t\tdate.setDate( daysOfYear );\n\t}\n\n\tif ( hour12 && amPm === \"pm\" ) {\n\t\tdate.setHours( date.getHours() + 12 );\n\t}\n\n\tif ( timezoneOffset !== undefined ) {\n\t\tdate.setMinutes( date.getMinutes() + timezoneOffset - date.getTimezoneOffset() );\n\t}\n\n\t// Truncate date at the most precise unit defined. Eg.\n\t// If value is \"12/31\", and pattern is \"MM/dd\":\n\t// => new Date( , 12, 31, 0, 0, 0, 0 );\n\ttruncateAt = Math.max.apply( null, truncateAt );\n\tdate = dateStartOf( date, units[ truncateAt ] );\n\n\t// Get date back from globalize date.\n\tif ( date instanceof ZonedDateTime ) {\n\t\tdate = date.toDate();\n\t}\n\n\treturn date;\n};\n\n\n/* eslint-disable no-unused-expressions */\n\n\n\n/**\n * tokenizer( value, numberParser, properties )\n *\n * @value [String] string date.\n *\n * @numberParser [Function]\n *\n * @properties [Object] output returned by date/tokenizer-properties.\n *\n * Returns an Array of tokens, eg. value \"5 o'clock PM\", pattern \"h 'o''clock' a\":\n * [{\n * type: \"h\",\n * lexeme: \"5\"\n * }, {\n * type: \"literal\",\n * lexeme: \" \"\n * }, {\n * type: \"literal\",\n * lexeme: \"o'clock\"\n * }, {\n * type: \"literal\",\n * lexeme: \" \"\n * }, {\n * type: \"a\",\n * lexeme: \"PM\",\n * value: \"pm\"\n * }]\n *\n * OBS: lexeme's are always String and may return invalid ranges depending of the token type.\n * Eg. \"99\" for month number.\n *\n * Return an empty Array when not successfully parsed.\n */\nvar dateTokenizer = function( value, numberParser, properties ) {\n\tvar digitsRe, valid,\n\t\ttokens = [],\n\t\twidths = [ \"abbreviated\", \"wide\", \"narrow\" ];\n\n\tdigitsRe = properties.digitsRe;\n\tvalue = looseMatching( value );\n\n\tvalid = properties.pattern.match( datePatternRe ).every(function( current ) {\n\t\tvar aux, chr, length, numeric, tokenRe,\n\t\t\ttoken = {};\n\n\t\tfunction hourFormatParse( tokenRe, numberParser ) {\n\t\t\tvar aux, isPositive,\n\t\t\t\tmatch = value.match( tokenRe );\n\t\t\tnumberParser = numberParser || function( value ) {\n\t\t\t\treturn +value;\n\t\t\t};\n\n\t\t\tif ( !match ) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\tisPositive = match[ 1 ];\n\n\t\t\t// hourFormat containing H only, e.g., `+H;-H`\n\t\t\tif ( match.length < 6 ) {\n\t\t\t\taux = isPositive ? 1 : 3;\n\t\t\t\ttoken.value = numberParser( match[ aux ] ) * 60;\n\n\t\t\t// hourFormat containing H and m, e.g., `+HHmm;-HHmm`\n\t\t\t} else if ( match.length < 10 ) {\n\t\t\t\taux = isPositive ? [ 1, 3 ] : [ 5, 7 ];\n\t\t\t\ttoken.value = numberParser( match[ aux[ 0 ] ] ) * 60 +\n\t\t\t\t\tnumberParser( match[ aux[ 1 ] ] );\n\n\t\t\t// hourFormat containing H, m, and s e.g., `+HHmmss;-HHmmss`\n\t\t\t} else {\n\t\t\t\taux = isPositive ? [ 1, 3, 5 ] : [ 7, 9, 11 ];\n\t\t\t\ttoken.value = numberParser( match[ aux[ 0 ] ] ) * 60 +\n\t\t\t\t\tnumberParser( match[ aux[ 1 ] ] ) +\n\t\t\t\t\tnumberParser( match[ aux[ 2 ] ] ) / 60;\n\t\t\t}\n\n\t\t\tif ( isPositive ) {\n\t\t\t\ttoken.value *= -1;\n\t\t\t}\n\n\t\t\treturn true;\n\t\t}\n\n\t\tfunction oneDigitIfLengthOne() {\n\t\t\tif ( length === 1 ) {\n\n\t\t\t\t// Unicode equivalent to /\\d/\n\t\t\t\tnumeric = true;\n\t\t\t\treturn tokenRe = digitsRe;\n\t\t\t}\n\t\t}\n\n\t\tfunction oneOrTwoDigitsIfLengthOne() {\n\t\t\tif ( length === 1 ) {\n\n\t\t\t\t// Unicode equivalent to /\\d\\d?/\n\t\t\t\tnumeric = true;\n\t\t\t\treturn tokenRe = new RegExp( \"^(\" + digitsRe.source + \"){1,2}\" );\n\t\t\t}\n\t\t}\n\n\t\tfunction oneOrTwoDigitsIfLengthOneOrTwo() {\n\t\t\tif ( length === 1 || length === 2 ) {\n\n\t\t\t\t// Unicode equivalent to /\\d\\d?/\n\t\t\t\tnumeric = true;\n\t\t\t\treturn tokenRe = new RegExp( \"^(\" + digitsRe.source + \"){1,2}\" );\n\t\t\t}\n\t\t}\n\n\t\tfunction twoDigitsIfLengthTwo() {\n\t\t\tif ( length === 2 ) {\n\n\t\t\t\t// Unicode equivalent to /\\d\\d/\n\t\t\t\tnumeric = true;\n\t\t\t\treturn tokenRe = new RegExp( \"^(\" + digitsRe.source + \"){2}\" );\n\t\t\t}\n\t\t}\n\n\t\t// Brute-force test every locale entry in an attempt to match the given value.\n\t\t// Return the first found one (and set token accordingly), or null.\n\t\tfunction lookup( path ) {\n\t\t\tvar array = properties[ path.join( \"/\" ) ];\n\n\t\t\tif ( !array ) {\n\t\t\t\treturn null;\n\t\t\t}\n\n\t\t\t// array of pairs [key, value] sorted by desc value length.\n\t\t\tarray.some(function( item ) {\n\t\t\t\tvar valueRe = item[ 1 ];\n\t\t\t\tif ( valueRe.test( value ) ) {\n\t\t\t\t\ttoken.value = item[ 0 ];\n\t\t\t\t\ttokenRe = item[ 1 ];\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\t\t\t});\n\t\t\treturn null;\n\t\t}\n\n\t\ttoken.type = current;\n\t\tchr = current.charAt( 0 );\n\t\tlength = current.length;\n\n\t\tif ( chr === \"Z\" ) {\n\n\t\t\t// Z..ZZZ: same as \"xxxx\".\n\t\t\tif ( length < 4 ) {\n\t\t\t\tchr = \"x\";\n\t\t\t\tlength = 4;\n\n\t\t\t// ZZZZ: same as \"OOOO\".\n\t\t\t} else if ( length < 5 ) {\n\t\t\t\tchr = \"O\";\n\t\t\t\tlength = 4;\n\n\t\t\t// ZZZZZ: same as \"XXXXX\"\n\t\t\t} else {\n\t\t\t\tchr = \"X\";\n\t\t\t\tlength = 5;\n\t\t\t}\n\t\t}\n\n\t\tif ( chr === \"z\" ) {\n\t\t\tif ( properties.standardOrDaylightTzName ) {\n\t\t\t\ttoken.value = null;\n\t\t\t\ttokenRe = properties.standardOrDaylightTzName;\n\t\t\t}\n\t\t}\n\n\t\t// v...vvv: \"{shortRegion}\", eg. \"PT\".\n\t\t// vvvv: \"{regionName} {Time}\" or \"{regionName} {Time}\",\n\t\t// e.g., \"Pacific Time\"\n\t\t// http://unicode.org/reports/tr35/tr35-dates.html#Date_Format_Patterns\n\t\tif ( chr === \"v\" ) {\n\t\t\tif ( properties.genericTzName ) {\n\t\t\t\ttoken.value = null;\n\t\t\t\ttokenRe = properties.genericTzName;\n\n\t\t\t// Fall back to \"V\" format.\n\t\t\t} else {\n\t\t\t\tchr = \"V\";\n\t\t\t\tlength = 4;\n\t\t\t}\n\t\t}\n\n\t\tif ( chr === \"V\" && properties.timeZoneName ) {\n\t\t\ttoken.value = length === 2 ? properties.timeZoneName : null;\n\t\t\ttokenRe = properties.timeZoneNameRe;\n\t\t}\n\n\t\tswitch ( chr ) {\n\n\t\t\t// Era\n\t\t\tcase \"G\":\n\t\t\t\tlookup([\n\t\t\t\t\t\"gregorian/eras\",\n\t\t\t\t\tlength <= 3 ? \"eraAbbr\" : ( length === 4 ? \"eraNames\" : \"eraNarrow\" )\n\t\t\t\t]);\n\t\t\t\tbreak;\n\n\t\t\t// Year\n\t\t\tcase \"y\":\n\t\t\tcase \"Y\":\n\t\t\t\tnumeric = true;\n\n\t\t\t\t// number l=1:+, l=2:{2}, l=3:{3,}, l=4:{4,}, ...\n\t\t\t\tif ( length === 1 ) {\n\n\t\t\t\t\t// Unicode equivalent to /\\d+/.\n\t\t\t\t\ttokenRe = new RegExp( \"^(\" + digitsRe.source + \")+\" );\n\t\t\t\t} else if ( length === 2 ) {\n\n\t\t\t\t\t// Lenient parsing: there's no year pattern to indicate non-zero-padded 2-digits\n\t\t\t\t\t// year, so parser accepts both zero-padded and non-zero-padded for `yy`.\n\t\t\t\t\t//\n\t\t\t\t\t// Unicode equivalent to /\\d\\d?/\n\t\t\t\t\ttokenRe = new RegExp( \"^(\" + digitsRe.source + \"){1,2}\" );\n\t\t\t\t} else {\n\n\t\t\t\t\t// Unicode equivalent to /\\d{length,}/\n\t\t\t\t\ttokenRe = new RegExp( \"^(\" + digitsRe.source + \"){\" + length + \",}\" );\n\t\t\t\t}\n\t\t\t\tbreak;\n\n\t\t\t// Quarter\n\t\t\tcase \"Q\":\n\t\t\tcase \"q\":\n\n\t\t\t\t// number l=1:{1}, l=2:{2}.\n\t\t\t\t// lookup l=3...\n\t\t\t\toneDigitIfLengthOne() || twoDigitsIfLengthTwo() ||\n\t\t\t\t\tlookup([\n\t\t\t\t\t\t\"gregorian/quarters\",\n\t\t\t\t\t\tchr === \"Q\" ? \"format\" : \"stand-alone\",\n\t\t\t\t\t\twidths[ length - 3 ]\n\t\t\t\t\t]);\n\t\t\t\tbreak;\n\n\t\t\t// Month\n\t\t\tcase \"M\":\n\t\t\tcase \"L\":\n\n\t\t\t\t// number l=1:{1,2}, l=2:{2}.\n\t\t\t\t// lookup l=3...\n\t\t\t\t//\n\t\t\t\t// Lenient parsing: skeleton \"yMd\" (i.e., one M) may include MM for the pattern,\n\t\t\t\t// therefore parser accepts both zero-padded and non-zero-padded for M and MM.\n\t\t\t\t// Similar for L.\n\t\t\t\toneOrTwoDigitsIfLengthOneOrTwo() || lookup([\n\t\t\t\t\t\"gregorian/months\",\n\t\t\t\t\tchr === \"M\" ? \"format\" : \"stand-alone\",\n\t\t\t\t\twidths[ length - 3 ]\n\t\t\t\t]);\n\t\t\t\tbreak;\n\n\t\t\t// Day\n\t\t\tcase \"D\":\n\n\t\t\t\t// number {l,3}.\n\t\t\t\tif ( length <= 3 ) {\n\n\t\t\t\t\t// Equivalent to /\\d{length,3}/\n\t\t\t\t\tnumeric = true;\n\t\t\t\t\ttokenRe = new RegExp( \"^(\" + digitsRe.source + \"){\" + length + \",3}\" );\n\t\t\t\t}\n\t\t\t\tbreak;\n\n\t\t\tcase \"W\":\n\t\t\tcase \"F\":\n\n\t\t\t\t// number l=1:{1}.\n\t\t\t\toneDigitIfLengthOne();\n\t\t\t\tbreak;\n\n\t\t\t// Week day\n\t\t\tcase \"e\":\n\t\t\tcase \"c\":\n\n\t\t\t\t// number l=1:{1}, l=2:{2}.\n\t\t\t\t// lookup for length >=3.\n\t\t\t\tif ( length <= 2 ) {\n\t\t\t\t\toneDigitIfLengthOne() || twoDigitsIfLengthTwo();\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\n\t\t\t/* falls through */\n\t\t\tcase \"E\":\n\t\t\t\tif ( length === 6 ) {\n\n\t\t\t\t\t// Note: if short day names are not explicitly specified, abbreviated day\n\t\t\t\t\t// names are used instead http://www.unicode.org/reports/tr35/tr35-dates.html#months_days_quarters_eras\n\t\t\t\t\tlookup([\n\t\t\t\t\t\t\"gregorian/days\",\n\t\t\t\t\t\t[ chr === \"c\" ? \"stand-alone\" : \"format\" ],\n\t\t\t\t\t\t\"short\"\n\t\t\t\t\t]) || lookup([\n\t\t\t\t\t\t\"gregorian/days\",\n\t\t\t\t\t\t[ chr === \"c\" ? \"stand-alone\" : \"format\" ],\n\t\t\t\t\t\t\"abbreviated\"\n\t\t\t\t\t]);\n\t\t\t\t} else {\n\t\t\t\t\tlookup([\n\t\t\t\t\t\t\"gregorian/days\",\n\t\t\t\t\t\t[ chr === \"c\" ? \"stand-alone\" : \"format\" ],\n\t\t\t\t\t\twidths[ length < 3 ? 0 : length - 3 ]\n\t\t\t\t\t]);\n\t\t\t\t}\n\t\t\t\tbreak;\n\n\t\t\t// Period (AM or PM)\n\t\t\tcase \"a\":\n\t\t\t\tlookup([\n\t\t\t\t\t\"gregorian/dayPeriods/format/wide\"\n\t\t\t\t]);\n\t\t\t\tbreak;\n\n\t\t\t// Week\n\t\t\tcase \"w\":\n\n\t\t\t\t// number l1:{1,2}, l2:{2}.\n\t\t\t\toneOrTwoDigitsIfLengthOne() || twoDigitsIfLengthTwo();\n\t\t\t\tbreak;\n\n\t\t\t// Day, Hour, Minute, or Second\n\t\t\tcase \"d\":\n\t\t\tcase \"h\":\n\t\t\tcase \"H\":\n\t\t\tcase \"K\":\n\t\t\tcase \"k\":\n\t\t\tcase \"j\":\n\t\t\tcase \"m\":\n\t\t\tcase \"s\":\n\n\t\t\t\t// number l1:{1,2}, l2:{2}.\n\t\t\t\t//\n\t\t\t\t// Lenient parsing:\n\t\t\t\t// - skeleton \"hms\" (i.e., one m) always includes mm for the pattern, i.e., it's\n\t\t\t\t// impossible to use a different skeleton to parse non-zero-padded minutes,\n\t\t\t\t// therefore parser accepts both zero-padded and non-zero-padded for m. Similar\n\t\t\t\t// for seconds s.\n\t\t\t\t// - skeleton \"hms\" (i.e., one h) may include h or hh for the pattern, i.e., it's\n\t\t\t\t// impossible to use a different skeleton to parser non-zero-padded hours for some\n\t\t\t\t// locales, therefore parser accepts both zero-padded and non-zero-padded for h.\n\t\t\t\t// Similar for d (in skeleton yMd).\n\t\t\t\toneOrTwoDigitsIfLengthOneOrTwo();\n\t\t\t\tbreak;\n\n\t\t\tcase \"S\":\n\n\t\t\t\t// number {l}.\n\n\t\t\t\t// Unicode equivalent to /\\d{length}/\n\t\t\t\tnumeric = true;\n\t\t\t\ttokenRe = new RegExp( \"^(\" + digitsRe.source + \"){\" + length + \"}\" );\n\t\t\t\tbreak;\n\n\t\t\tcase \"A\":\n\n\t\t\t\t// number {l+5}.\n\n\t\t\t\t// Unicode equivalent to /\\d{length+5}/\n\t\t\t\tnumeric = true;\n\t\t\t\ttokenRe = new RegExp( \"^(\" + digitsRe.source + \"){\" + ( length + 5 ) + \"}\" );\n\t\t\t\tbreak;\n\n\t\t\t// Zone\n\t\t\tcase \"v\":\n\t\t\tcase \"V\":\n\t\t\tcase \"z\":\n\t\t\t\tif ( tokenRe && tokenRe.test( value ) ) {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tif ( chr === \"V\" && length === 2 ) {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\n\t\t\t/* falls through */\n\t\t\tcase \"O\":\n\n\t\t\t\t// O: \"{gmtFormat}+H;{gmtFormat}-H\" or \"{gmtZeroFormat}\", eg. \"GMT-8\" or \"GMT\".\n\t\t\t\t// OOOO: \"{gmtFormat}{hourFormat}\" or \"{gmtZeroFormat}\", eg. \"GMT-08:00\" or \"GMT\".\n\t\t\t\tif ( value === properties[ \"timeZoneNames/gmtZeroFormat\" ] ) {\n\t\t\t\t\ttoken.value = 0;\n\t\t\t\t\ttokenRe = properties[ \"timeZoneNames/gmtZeroFormatRe\" ];\n\t\t\t\t} else {\n\t\t\t\t\taux = properties[ \"timeZoneNames/hourFormat\" ].some(function( hourFormatRe ) {\n\t\t\t\t\t\tif ( hourFormatParse( hourFormatRe, numberParser ) ) {\n\t\t\t\t\t\t\ttokenRe = hourFormatRe;\n\t\t\t\t\t\t\treturn true;\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t\tif ( !aux ) {\n\t\t\t\t\t\treturn null;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tbreak;\n\n\t\t\tcase \"X\":\n\n\t\t\t\t// Same as x*, except it uses \"Z\" for zero offset.\n\t\t\t\tif ( value === \"Z\" ) {\n\t\t\t\t\ttoken.value = 0;\n\t\t\t\t\ttokenRe = /^Z/;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\n\t\t\t/* falls through */\n\t\t\tcase \"x\":\n\n\t\t\t\t// x: hourFormat(\"+HH[mm];-HH[mm]\")\n\t\t\t\t// xx: hourFormat(\"+HHmm;-HHmm\")\n\t\t\t\t// xxx: hourFormat(\"+HH:mm;-HH:mm\")\n\t\t\t\t// xxxx: hourFormat(\"+HHmm[ss];-HHmm[ss]\")\n\t\t\t\t// xxxxx: hourFormat(\"+HH:mm[:ss];-HH:mm[:ss]\")\n\t\t\t\taux = properties.x.some(function( hourFormatRe ) {\n\t\t\t\t\tif ( hourFormatParse( hourFormatRe ) ) {\n\t\t\t\t\t\ttokenRe = hourFormatRe;\n\t\t\t\t\t\treturn true;\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t\tif ( !aux ) {\n\t\t\t\t\treturn null;\n\t\t\t\t}\n\t\t\t\tbreak;\n\n\t\t\tcase \"'\":\n\t\t\t\ttoken.type = \"literal\";\n\t\t\t\ttokenRe = new RegExp( \"^\" + regexpEscape( removeLiteralQuotes( current ) ) );\n\t\t\t\tbreak;\n\n\t\t\tdefault:\n\t\t\t\ttoken.type = \"literal\";\n\t\t\t\ttokenRe = new RegExp( \"^\" + regexpEscape( current ) );\n\t\t}\n\n\t\tif ( !tokenRe ) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// Get lexeme and consume it.\n\t\tvalue = value.replace( tokenRe, function( lexeme ) {\n\t\t\ttoken.lexeme = lexeme;\n\t\t\tif ( numeric ) {\n\t\t\t\ttoken.value = numberParser( lexeme );\n\t\t\t}\n\t\t\treturn \"\";\n\t\t});\n\n\t\tif ( !token.lexeme ) {\n\t\t\treturn false;\n\t\t}\n\n\t\tif ( numeric && isNaN( token.value ) ) {\n\t\t\treturn false;\n\t\t}\n\n\t\ttokens.push( token );\n\t\treturn true;\n\t});\n\n\tif ( value !== \"\" ) {\n\t\tvalid = false;\n\t}\n\n\treturn valid ? tokens : [];\n};\n\n\n\n\nvar dateParserFn = function( numberParser, parseProperties, tokenizerProperties ) {\n\treturn function dateParser( value ) {\n\t\tvar tokens;\n\n\t\tvalidateParameterPresence( value, \"value\" );\n\t\tvalidateParameterTypeString( value, \"value\" );\n\n\t\ttokens = dateTokenizer( value, numberParser, tokenizerProperties );\n\t\treturn dateParse( value, tokens, parseProperties ) || null;\n\t};\n};\n\n\n\n\nvar objectFilter = function( object, testRe ) {\n\tvar key,\n\t\tcopy = {};\n\n\tfor ( key in object ) {\n\t\tif ( testRe.test( key ) ) {\n\t\t\tcopy[ key ] = object[ key ];\n\t\t}\n\t}\n\n\treturn copy;\n};\n\n\n\n\n/**\n * tokenizerProperties( pattern, cldr )\n *\n * @pattern [String] raw pattern.\n *\n * @cldr [Cldr instance].\n *\n * Return Object with data that will be used by tokenizer.\n */\nvar dateTokenizerProperties = function( pattern, cldr, timeZone ) {\n\tvar digitsReSource,\n\t\tproperties = {\n\t\t\tpattern: looseMatching( pattern )\n\t\t},\n\t\ttimeSeparator = numberSymbol( \"timeSeparator\", cldr ),\n\t\twidths = [ \"abbreviated\", \"wide\", \"narrow\" ];\n\n\tdigitsReSource = numberNumberingSystemDigitsMap( cldr );\n\tdigitsReSource = digitsReSource ? \"[\" + digitsReSource + \"]\" : \"\\\\d\";\n\tproperties.digitsRe = new RegExp( digitsReSource );\n\n\t// Transform:\n\t// - \"+H;-H\" -> /\\+(\\d\\d?)|-(\\d\\d?)/\n\t// - \"+HH;-HH\" -> /\\+(\\d\\d)|-(\\d\\d)/\n\t// - \"+HHmm;-HHmm\" -> /\\+(\\d\\d)(\\d\\d)|-(\\d\\d)(\\d\\d)/\n\t// - \"+HH:mm;-HH:mm\" -> /\\+(\\d\\d):(\\d\\d)|-(\\d\\d):(\\d\\d)/\n\t//\n\t// If gmtFormat is GMT{0}, the regexp must fill {0} in each side, e.g.:\n\t// - \"+H;-H\" -> /GMT\\+(\\d\\d?)|GMT-(\\d\\d?)/\n\tfunction hourFormatRe( hourFormat, gmtFormat, digitsReSource, timeSeparator ) {\n\t\tvar re;\n\n\t\tif ( !digitsReSource ) {\n\t\t\tdigitsReSource = \"\\\\d\";\n\t\t}\n\t\tif ( !gmtFormat ) {\n\t\t\tgmtFormat = \"{0}\";\n\t\t}\n\n\t\tre = hourFormat\n\t\t\t.replace( \"+\", \"\\\\+\" )\n\n\t\t\t// Unicode equivalent to (\\\\d\\\\d)\n\t\t\t.replace( /HH|mm|ss/g, \"((\" + digitsReSource + \"){2})\" )\n\n\t\t\t// Unicode equivalent to (\\\\d\\\\d?)\n\t\t\t.replace( /H|m/g, \"((\" + digitsReSource + \"){1,2})\" );\n\n\t\tif ( timeSeparator ) {\n\t\t\tre = re.replace( /:/g, timeSeparator );\n\t\t}\n\n\t\tre = re.split( \";\" ).map(function( part ) {\n\t\t\treturn gmtFormat.replace( \"{0}\", part );\n\t\t}).join( \"|\" );\n\n\t\treturn new RegExp( \"^\" + re );\n\t}\n\n\tfunction populateProperties( path, value ) {\n\n\t\t// Skip\n\t\tvar skipRe = /(timeZoneNames\\/zone|supplemental\\/metaZones|timeZoneNames\\/metazone|timeZoneNames\\/regionFormat|timeZoneNames\\/gmtFormat)/;\n\t\tif ( skipRe.test( path ) ) {\n\t\t\treturn;\n\t\t}\n\n\t\tif ( !value ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// The `dates` and `calendars` trim's purpose is to reduce properties' key size only.\n\t\tpath = path.replace( /^.*\\/dates\\//, \"\" ).replace( /calendars\\//, \"\" );\n\n\t\t// Specific filter for \"gregorian/dayPeriods/format/wide\".\n\t\tif ( path === \"gregorian/dayPeriods/format/wide\" ) {\n\t\t\tvalue = objectFilter( value, /^am|^pm/ );\n\t\t}\n\n\t\t// Transform object into array of pairs [key, /value/], sort by desc value length.\n\t\tif ( isPlainObject( value ) ) {\n\t\t\tvalue = Object.keys( value ).map(function( key ) {\n\t\t\t\treturn [ key, new RegExp( \"^\" + regexpEscape( looseMatching( value[ key ] ) ) ) ];\n\t\t\t}).sort(function( a, b ) {\n\t\t\t\treturn b[ 1 ].source.length - a[ 1 ].source.length;\n\t\t\t});\n\n\t\t// If typeof value === \"string\".\n\t\t} else {\n\t\t\tvalue = looseMatching( value );\n\t\t}\n\t\tproperties[ path ] = value;\n\t}\n\n\tfunction regexpSourceSomeTerm( terms ) {\n\t\treturn \"(\" + terms.filter(function( item ) {\n\t\t\treturn item;\n\t\t}).reduce(function( memo, item ) {\n\t\t\treturn memo + \"|\" + item;\n\t\t}) + \")\";\n\t}\n\n\tcldr.on( \"get\", populateProperties );\n\n\tpattern.match( datePatternRe ).forEach(function( current ) {\n\t\tvar aux, chr, daylightTzName, gmtFormat, length, standardTzName;\n\n\t\tchr = current.charAt( 0 );\n\t\tlength = current.length;\n\n\t\tif ( chr === \"Z\" ) {\n\t\t\tif ( length < 5 ) {\n\t\t\t\tchr = \"O\";\n\t\t\t\tlength = 4;\n\t\t\t} else {\n\t\t\t\tchr = \"X\";\n\t\t\t\tlength = 5;\n\t\t\t}\n\t\t}\n\n\t\t// z...zzz: \"{shortRegion}\", eg. \"PST\" or \"PDT\".\n\t\t// zzzz: \"{regionName} {Standard Time}\" or \"{regionName} {Daylight Time}\",\n\t\t// e.g., \"Pacific Standard Time\" or \"Pacific Daylight Time\".\n\t\t// http://unicode.org/reports/tr35/tr35-dates.html#Date_Format_Patterns\n\t\tif ( chr === \"z\" ) {\n\t\t\tstandardTzName = dateGetTimeZoneName( length, \"standard\", timeZone, cldr );\n\t\t\tdaylightTzName = dateGetTimeZoneName( length, \"daylight\", timeZone, cldr );\n\t\t\tif ( standardTzName ) {\n\t\t\t\tstandardTzName = regexpEscape( looseMatching( standardTzName ) );\n\t\t\t}\n\t\t\tif ( daylightTzName ) {\n\t\t\t\tdaylightTzName = regexpEscape( looseMatching( daylightTzName ) );\n\t\t\t}\n\t\t\tif ( standardTzName || daylightTzName ) {\n\t\t\t\tproperties.standardOrDaylightTzName = new RegExp(\n\t\t\t\t\t\"^\" + regexpSourceSomeTerm([ standardTzName, daylightTzName ])\n\t\t\t\t);\n\t\t\t}\n\n\t\t\t// Fall through the \"O\" format in case one name is missing.\n\t\t\tif ( !standardTzName || !daylightTzName ) {\n\t\t\t\tchr = \"O\";\n\t\t\t\tif ( length < 4 ) {\n\t\t\t\t\tlength = 1;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// v...vvv: \"{shortRegion}\", eg. \"PT\".\n\t\t// vvvv: \"{regionName} {Time}\" or \"{regionName} {Time}\",\n\t\t// e.g., \"Pacific Time\"\n\t\t// http://unicode.org/reports/tr35/tr35-dates.html#Date_Format_Patterns\n\t\tif ( chr === \"v\" ) {\n\t\t\tif ( length !== 1 && length !== 4 ) {\n\t\t\t\tthrow createErrorUnsupportedFeature({\n\t\t\t\t\tfeature: \"timezone pattern `\" + pattern + \"`\"\n\t\t\t\t});\n\t\t\t}\n\t\t\tvar genericTzName = dateGetTimeZoneName( length, \"generic\", timeZone, cldr );\n\t\t\tif ( genericTzName ) {\n\t\t\t\tproperties.genericTzName = new RegExp(\n\t\t\t\t\t\"^\" + regexpEscape( looseMatching( genericTzName ) )\n\t\t\t\t);\n\t\t\t\tchr = \"O\";\n\n\t\t\t// Fall back to \"V\" format.\n\t\t\t} else {\n\t\t\t\tchr = \"V\";\n\t\t\t\tlength = 4;\n\t\t\t}\n\t\t}\n\n\t\tswitch ( chr ) {\n\n\t\t\t// Era\n\t\t\tcase \"G\":\n\t\t\t\tcldr.main([\n\t\t\t\t\t\"dates/calendars/gregorian/eras\",\n\t\t\t\t\tlength <= 3 ? \"eraAbbr\" : ( length === 4 ? \"eraNames\" : \"eraNarrow\" )\n\t\t\t\t]);\n\t\t\t\tbreak;\n\n\t\t\t// Year\n\t\t\tcase \"u\": // Extended year. Need to be implemented.\n\t\t\tcase \"U\": // Cyclic year name. Need to be implemented.\n\t\t\t\tthrow createErrorUnsupportedFeature({\n\t\t\t\t\tfeature: \"year pattern `\" + chr + \"`\"\n\t\t\t\t});\n\n\t\t\t// Quarter\n\t\t\tcase \"Q\":\n\t\t\tcase \"q\":\n\t\t\t\tif ( length > 2 ) {\n\t\t\t\t\tcldr.main([\n\t\t\t\t\t\t\"dates/calendars/gregorian/quarters\",\n\t\t\t\t\t\tchr === \"Q\" ? \"format\" : \"stand-alone\",\n\t\t\t\t\t\twidths[ length - 3 ]\n\t\t\t\t\t]);\n\t\t\t\t}\n\t\t\t\tbreak;\n\n\t\t\t// Month\n\t\t\tcase \"M\":\n\t\t\tcase \"L\":\n\n\t\t\t\t// number l=1:{1,2}, l=2:{2}.\n\t\t\t\t// lookup l=3...\n\t\t\t\tif ( length > 2 ) {\n\t\t\t\t\tcldr.main([\n\t\t\t\t\t\t\"dates/calendars/gregorian/months\",\n\t\t\t\t\t\tchr === \"M\" ? \"format\" : \"stand-alone\",\n\t\t\t\t\t\twidths[ length - 3 ]\n\t\t\t\t\t]);\n\t\t\t\t}\n\t\t\t\tbreak;\n\n\t\t\t// Day\n\t\t\tcase \"g\":\n\n\t\t\t\t// Modified Julian day. Need to be implemented.\n\t\t\t\tthrow createErrorUnsupportedFeature({\n\t\t\t\t\tfeature: \"Julian day pattern `g`\"\n\t\t\t\t});\n\n\t\t\t// Week day\n\t\t\tcase \"e\":\n\t\t\tcase \"c\":\n\n\t\t\t\t// lookup for length >=3.\n\t\t\t\tif ( length <= 2 ) {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\n\t\t\t/* falls through */\n\t\t\tcase \"E\":\n\t\t\t\tif ( length === 6 ) {\n\n\t\t\t\t\t// Note: if short day names are not explicitly specified, abbreviated day\n\t\t\t\t\t// names are used instead http://www.unicode.org/reports/tr35/tr35-dates.html#months_days_quarters_eras\n\t\t\t\t\t// eslint-disable-next-line no-unused-expressions\n\t\t\t\t\tcldr.main([\n\t\t\t\t\t\t\"dates/calendars/gregorian/days\",\n\t\t\t\t\t\t[ chr === \"c\" ? \"stand-alone\" : \"format\" ],\n\t\t\t\t\t\t\"short\"\n\t\t\t\t\t]) || cldr.main([\n\t\t\t\t\t\t\"dates/calendars/gregorian/days\",\n\t\t\t\t\t\t[ chr === \"c\" ? \"stand-alone\" : \"format\" ],\n\t\t\t\t\t\t\"abbreviated\"\n\t\t\t\t\t]);\n\t\t\t\t} else {\n\t\t\t\t\tcldr.main([\n\t\t\t\t\t\t\"dates/calendars/gregorian/days\",\n\t\t\t\t\t\t[ chr === \"c\" ? \"stand-alone\" : \"format\" ],\n\t\t\t\t\t\twidths[ length < 3 ? 0 : length - 3 ]\n\t\t\t\t\t]);\n\t\t\t\t}\n\t\t\t\tbreak;\n\n\t\t\t// Period (AM or PM)\n\t\t\tcase \"a\":\n\t\t\t\tcldr.main(\n\t\t\t\t\t\"dates/calendars/gregorian/dayPeriods/format/wide\"\n\t\t\t\t);\n\t\t\t\tbreak;\n\n\t\t\t// Zone\n\t\t\tcase \"V\":\n\n\t\t\t\tif ( length === 1 ) {\n\t\t\t\t\tthrow createErrorUnsupportedFeature({\n\t\t\t\t\t\tfeature: \"timezone pattern `\" + pattern + \"`\"\n\t\t\t\t\t});\n\t\t\t\t}\n\n\t\t\t\tif ( timeZone ) {\n\t\t\t\t\tif ( length === 2 ) {\n\n\t\t\t\t\t\t// Skip looseMatching processing since timeZone is a canonical posix value.\n\t\t\t\t\t\tproperties.timeZoneName = timeZone;\n\t\t\t\t\t\tproperties.timeZoneNameRe = new RegExp( \"^\" + regexpEscape( timeZone ) );\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\n\t\t\t\t\tvar timeZoneName,\n\t\t\t\t\t\texemplarCity = cldr.main([\n\t\t\t\t\t\t\t\"dates/timeZoneNames/zone\", timeZone, \"exemplarCity\"\n\t\t\t\t\t\t]);\n\n\t\t\t\t\tif ( length === 3 ) {\n\t\t\t\t\t\tif ( !exemplarCity ) {\n\t\t\t\t\t\t\texemplarCity = cldr.main([\n\t\t\t\t\t\t\t\t\"dates/timeZoneNames/zone/Etc/Unknown/exemplarCity\"\n\t\t\t\t\t\t\t]);\n\t\t\t\t\t\t}\n\t\t\t\t\t\ttimeZoneName = exemplarCity;\n\t\t\t\t\t}\n\n\t\t\t\t\tif ( exemplarCity && length === 4 ) {\n\t\t\t\t\t\ttimeZoneName = formatMessage(\n\t\t\t\t\t\t\tcldr.main(\n\t\t\t\t\t\t\t\t\"dates/timeZoneNames/regionFormat\"\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t[ exemplarCity ]\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\tif ( timeZoneName ) {\n\t\t\t\t\t\ttimeZoneName = looseMatching( timeZoneName );\n\t\t\t\t\t\tproperties.timeZoneName = timeZoneName;\n\t\t\t\t\t\tproperties.timeZoneNameRe = new RegExp(\n\t\t\t\t\t\t\t\"^\" + regexpEscape( timeZoneName )\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tif ( current === \"v\" ) {\n\t\t\t\t\tlength = 1;\n\t\t\t\t}\n\n\t\t\t/* falls through */\n\t\t\tcase \"z\":\n\t\t\tcase \"O\":\n\t\t\t\tgmtFormat = cldr.main( \"dates/timeZoneNames/gmtFormat\" );\n\t\t\t\tcldr.main( \"dates/timeZoneNames/gmtZeroFormat\" );\n\t\t\t\tcldr.main( \"dates/timeZoneNames/hourFormat\" );\n\t\t\t\tproperties[ \"timeZoneNames/gmtZeroFormatRe\" ] =\n\t\t\t\t\tnew RegExp( \"^\" + regexpEscape( properties[ \"timeZoneNames/gmtZeroFormat\" ] ) );\n\t\t\t\taux = properties[ \"timeZoneNames/hourFormat\" ];\n\t\t\t\tproperties[ \"timeZoneNames/hourFormat\" ] = (\n\t\t\t\t\tlength < 4 ?\n\t\t\t\t\t\t[ dateTimezoneHourFormatHm( aux, \"H\" ), dateTimezoneHourFormatH( aux ) ] :\n\t\t\t\t\t\t[ dateTimezoneHourFormatHm( aux, \"HH\" ) ]\n\t\t\t\t).map(function( hourFormat ) {\n\t\t\t\t\treturn hourFormatRe(\n\t\t\t\t\t\thourFormat,\n\t\t\t\t\t\tgmtFormat,\n\t\t\t\t\t\tdigitsReSource,\n\t\t\t\t\t\ttimeSeparator\n\t\t\t\t\t);\n\t\t\t\t});\n\n\t\t\t/* falls through */\n\t\t\tcase \"X\":\n\t\t\tcase \"x\":\n\n\t\t\t\t// x: hourFormat(\"+HH[mm];-HH[mm]\")\n\t\t\t\t// xx: hourFormat(\"+HHmm;-HHmm\")\n\t\t\t\t// xxx: hourFormat(\"+HH:mm;-HH:mm\")\n\t\t\t\t// xxxx: hourFormat(\"+HHmm[ss];-HHmm[ss]\")\n\t\t\t\t// xxxxx: hourFormat(\"+HH:mm[:ss];-HH:mm[:ss]\")\n\t\t\t\tproperties.x = [\n\t\t\t\t\t[ \"+HHmm;-HHmm\", \"+HH;-HH\" ],\n\t\t\t\t\t[ \"+HHmm;-HHmm\" ],\n\t\t\t\t\t[ \"+HH:mm;-HH:mm\" ],\n\t\t\t\t\t[ \"+HHmmss;-HHmmss\", \"+HHmm;-HHmm\" ],\n\t\t\t\t\t[ \"+HH:mm:ss;-HH:mm:ss\", \"+HH:mm;-HH:mm\" ]\n\t\t\t\t][ length - 1 ].map(function( hourFormat ) {\n\t\t\t\t\treturn hourFormatRe( hourFormat );\n\t\t\t\t});\n\t\t}\n\t});\n\n\tcldr.off( \"get\", populateProperties );\n\n\treturn properties;\n};\n\n\n\n\n/**\n * dayOfWeek( date, firstDay )\n *\n * @date\n *\n * @firstDay the result of `dateFirstDayOfWeek( cldr )`\n *\n * Return the day of the week normalized by the territory's firstDay [0-6].\n * Eg for \"mon\":\n * - return 0 if territory is GB, or BR, or DE, or FR (week starts on \"mon\");\n * - return 1 if territory is US (week starts on \"sun\");\n * - return 2 if territory is EG (week starts on \"sat\");\n */\nvar dateDayOfWeek = function( date, firstDay ) {\n\treturn ( date.getDay() - firstDay + 7 ) % 7;\n};\n\n\n\n\n/**\n * distanceInDays( from, to )\n *\n * Return the distance in days between from and to Dates.\n */\nvar dateDistanceInDays = function( from, to ) {\n\tvar inDays = 864e5;\n\treturn ( to.getTime() - from.getTime() ) / inDays;\n};\n\n\n\n\n/**\n * dayOfYear\n *\n * Return the distance in days of the date to the begin of the year [0-d].\n */\nvar dateDayOfYear = function( date ) {\n\treturn Math.floor( dateDistanceInDays( dateStartOf( date, \"year\" ), date ) );\n};\n\n\n\n\n// Invert key and values, e.g., {\"year\": \"yY\"} ==> {\"y\": \"year\", \"Y\": \"year\"}\nvar dateFieldsMap = objectInvert({\n\t\"era\": \"G\",\n\t\"year\": \"yY\",\n\t\"quarter\": \"qQ\",\n\t\"month\": \"ML\",\n\t\"week\": \"wW\",\n\t\"day\": \"dDF\",\n\t\"weekday\": \"ecE\",\n\t\"dayperiod\": \"a\",\n\t\"hour\": \"hHkK\",\n\t\"minute\": \"m\",\n\t\"second\": \"sSA\",\n\t\"zone\": \"zvVOxX\"\n}, function( object, key, value ) {\n\tvalue.split( \"\" ).forEach(function( symbol ) {\n\t\tobject[ symbol ] = key;\n\t});\n\treturn object;\n});\n\n\n\n\n/**\n * millisecondsInDay\n */\nvar dateMillisecondsInDay = function( date ) {\n\n\t// TODO Handle daylight savings discontinuities\n\treturn date - dateStartOf( date, \"day\" );\n};\n\n\n\n\n/**\n * hourFormat( date, format, timeSeparator, formatNumber )\n *\n * Return date's timezone offset according to the format passed.\n * Eg for format when timezone offset is 180:\n * - \"+H;-H\": -3\n * - \"+HHmm;-HHmm\": -0300\n * - \"+HH:mm;-HH:mm\": -03:00\n * - \"+HH:mm:ss;-HH:mm:ss\": -03:00:00\n */\nvar dateTimezoneHourFormat = function( date, format, timeSeparator, formatNumber ) {\n\tvar absOffset,\n\t\toffset = date.getTimezoneOffset();\n\n\tabsOffset = Math.abs( offset );\n\tformatNumber = formatNumber || {\n\t\t1: function( value ) {\n\t\t\treturn stringPad( value, 1 );\n\t\t},\n\t\t2: function( value ) {\n\t\t\treturn stringPad( value, 2 );\n\t\t}\n\t};\n\n\treturn format\n\n\t\t// Pick the correct sign side (+ or -).\n\t\t.split( \";\" )[ offset > 0 ? 1 : 0 ]\n\n\t\t// Localize time separator\n\t\t.replace( \":\", timeSeparator )\n\n\t\t// Update hours offset.\n\t\t.replace( /HH?/, function( match ) {\n\t\t\treturn formatNumber[ match.length ]( Math.floor( absOffset / 60 ) );\n\t\t})\n\n\t\t// Update minutes offset and return.\n\t\t.replace( /mm/, function() {\n\t\t\treturn formatNumber[ 2 ]( Math.floor( absOffset % 60 ) );\n\t\t})\n\n\t\t// Update minutes offset and return.\n\t\t.replace( /ss/, function() {\n\t\t\treturn formatNumber[ 2 ]( Math.floor( absOffset % 1 * 60 ) );\n\t\t});\n};\n\n\n\n\n/**\n * format( date, properties )\n *\n * @date [Date instance].\n *\n * @properties\n *\n * TODO Support other calendar types.\n *\n * Disclosure: this function borrows excerpts of dojo/date/locale.\n */\nvar dateFormat = function( date, numberFormatters, properties ) {\n\tvar parts = [];\n\n\tvar timeSeparator = properties.timeSeparator;\n\n\t// create globalize date with given timezone data\n\tif ( properties.timeZoneData ) {\n\t\tdate = new ZonedDateTime( date, properties.timeZoneData() );\n\t}\n\n\tproperties.pattern.replace( datePatternRe, function( current ) {\n\t\tvar aux, dateField, type, value,\n\t\t\tchr = current.charAt( 0 ),\n\t\t\tlength = current.length;\n\n\t\tif ( chr === \"j\" ) {\n\n\t\t\t// Locale preferred hHKk.\n\t\t\t// http://www.unicode.org/reports/tr35/tr35-dates.html#Time_Data\n\t\t\tchr = properties.preferredTime;\n\t\t}\n\n\t\tif ( chr === \"Z\" ) {\n\n\t\t\t// Z..ZZZ: same as \"xxxx\".\n\t\t\tif ( length < 4 ) {\n\t\t\t\tchr = \"x\";\n\t\t\t\tlength = 4;\n\n\t\t\t// ZZZZ: same as \"OOOO\".\n\t\t\t} else if ( length < 5 ) {\n\t\t\t\tchr = \"O\";\n\t\t\t\tlength = 4;\n\n\t\t\t// ZZZZZ: same as \"XXXXX\"\n\t\t\t} else {\n\t\t\t\tchr = \"X\";\n\t\t\t\tlength = 5;\n\t\t\t}\n\t\t}\n\n\t\t// z...zzz: \"{shortRegion}\", e.g., \"PST\" or \"PDT\".\n\t\t// zzzz: \"{regionName} {Standard Time}\" or \"{regionName} {Daylight Time}\",\n\t\t// e.g., \"Pacific Standard Time\" or \"Pacific Daylight Time\".\n\t\tif ( chr === \"z\" ) {\n\t\t\tif ( date.isDST ) {\n\t\t\t\tvalue = date.isDST() ? properties.daylightTzName : properties.standardTzName;\n\t\t\t}\n\n\t\t\t// Fall back to \"O\" format.\n\t\t\tif ( !value ) {\n\t\t\t\tchr = \"O\";\n\t\t\t\tif ( length < 4 ) {\n\t\t\t\t\tlength = 1;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tswitch ( chr ) {\n\n\t\t\t// Era\n\t\t\tcase \"G\":\n\t\t\t\tvalue = properties.eras[ date.getFullYear() < 0 ? 0 : 1 ];\n\t\t\t\tbreak;\n\n\t\t\t// Year\n\t\t\tcase \"y\":\n\n\t\t\t\t// Plain year.\n\t\t\t\t// The length specifies the padding, but for two letters it also specifies the\n\t\t\t\t// maximum length.\n\t\t\t\tvalue = date.getFullYear();\n\t\t\t\tif ( length === 2 ) {\n\t\t\t\t\tvalue = String( value );\n\t\t\t\t\tvalue = +value.substr( value.length - 2 );\n\t\t\t\t}\n\t\t\t\tbreak;\n\n\t\t\tcase \"Y\":\n\n\t\t\t\t// Year in \"Week of Year\"\n\t\t\t\t// The length specifies the padding, but for two letters it also specifies the\n\t\t\t\t// maximum length.\n\t\t\t\t// yearInWeekofYear = date + DaysInAWeek - (dayOfWeek - firstDay) - minDays\n\t\t\t\tvalue = new Date( date.getTime() );\n\t\t\t\tvalue.setDate(\n\t\t\t\t\tvalue.getDate() + 7 -\n\t\t\t\t\tdateDayOfWeek( date, properties.firstDay ) -\n\t\t\t\t\tproperties.firstDay -\n\t\t\t\t\tproperties.minDays\n\t\t\t\t);\n\t\t\t\tvalue = value.getFullYear();\n\t\t\t\tif ( length === 2 ) {\n\t\t\t\t\tvalue = String( value );\n\t\t\t\t\tvalue = +value.substr( value.length - 2 );\n\t\t\t\t}\n\t\t\t\tbreak;\n\n\t\t\t// Quarter\n\t\t\tcase \"Q\":\n\t\t\tcase \"q\":\n\t\t\t\tvalue = Math.ceil( ( date.getMonth() + 1 ) / 3 );\n\t\t\t\tif ( length > 2 ) {\n\t\t\t\t\tvalue = properties.quarters[ chr ][ length ][ value ];\n\t\t\t\t}\n\t\t\t\tbreak;\n\n\t\t\t// Month\n\t\t\tcase \"M\":\n\t\t\tcase \"L\":\n\t\t\t\tvalue = date.getMonth() + 1;\n\t\t\t\tif ( length > 2 ) {\n\t\t\t\t\tvalue = properties.months[ chr ][ length ][ value ];\n\t\t\t\t}\n\t\t\t\tbreak;\n\n\t\t\t// Week\n\t\t\tcase \"w\":\n\n\t\t\t\t// Week of Year.\n\t\t\t\t// woy = ceil( ( doy + dow of 1/1 ) / 7 ) - minDaysStuff ? 1 : 0.\n\t\t\t\tvalue = dateDayOfWeek( dateStartOf( date, \"year\" ), properties.firstDay );\n\t\t\t\tvalue = Math.ceil( ( dateDayOfYear( date ) + 1 + value ) / 7 ) -\n\t\t\t\t\t( 7 - value >= properties.minDays ? 0 : 1 );\n\t\t\t\tbreak;\n\n\t\t\tcase \"W\":\n\n\t\t\t\t// Week of Month.\n\t\t\t\t// wom = ceil( ( dom + dow of `1/month` ) / 7 ) - minDaysStuff ? 1 : 0.\n\t\t\t\tvalue = dateDayOfWeek( dateStartOf( date, \"month\" ), properties.firstDay );\n\t\t\t\tvalue = Math.ceil( ( date.getDate() + value ) / 7 ) -\n\t\t\t\t\t( 7 - value >= properties.minDays ? 0 : 1 );\n\t\t\t\tbreak;\n\n\t\t\t// Day\n\t\t\tcase \"d\":\n\t\t\t\tvalue = date.getDate();\n\t\t\t\tbreak;\n\n\t\t\tcase \"D\":\n\t\t\t\tvalue = dateDayOfYear( date ) + 1;\n\t\t\t\tbreak;\n\n\t\t\tcase \"F\":\n\n\t\t\t\t// Day of Week in month. eg. 2nd Wed in July.\n\t\t\t\tvalue = Math.floor( date.getDate() / 7 ) + 1;\n\t\t\t\tbreak;\n\n\t\t\t// Week day\n\t\t\tcase \"e\":\n\t\t\tcase \"c\":\n\t\t\t\tif ( length <= 2 ) {\n\n\t\t\t\t\t// Range is [1-7] (deduced by example provided on documentation)\n\t\t\t\t\t// TODO Should pad with zeros (not specified in the docs)?\n\t\t\t\t\tvalue = dateDayOfWeek( date, properties.firstDay ) + 1;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\n\t\t\t/* falls through */\n\t\t\tcase \"E\":\n\t\t\t\tvalue = dateWeekDays[ date.getDay() ];\n\t\t\t\tvalue = properties.days[ chr ][ length ][ value ];\n\t\t\t\tbreak;\n\n\t\t\t// Period (AM or PM)\n\t\t\tcase \"a\":\n\t\t\t\tvalue = properties.dayPeriods[ date.getHours() < 12 ? \"am\" : \"pm\" ];\n\t\t\t\tbreak;\n\n\t\t\t// Hour\n\t\t\tcase \"h\": // 1-12\n\t\t\t\tvalue = ( date.getHours() % 12 ) || 12;\n\t\t\t\tbreak;\n\n\t\t\tcase \"H\": // 0-23\n\t\t\t\tvalue = date.getHours();\n\t\t\t\tbreak;\n\n\t\t\tcase \"K\": // 0-11\n\t\t\t\tvalue = date.getHours() % 12;\n\t\t\t\tbreak;\n\n\t\t\tcase \"k\": // 1-24\n\t\t\t\tvalue = date.getHours() || 24;\n\t\t\t\tbreak;\n\n\t\t\t// Minute\n\t\t\tcase \"m\":\n\t\t\t\tvalue = date.getMinutes();\n\t\t\t\tbreak;\n\n\t\t\t// Second\n\t\t\tcase \"s\":\n\t\t\t\tvalue = date.getSeconds();\n\t\t\t\tbreak;\n\n\t\t\tcase \"S\":\n\t\t\t\tvalue = Math.round( date.getMilliseconds() * Math.pow( 10, length - 3 ) );\n\t\t\t\tbreak;\n\n\t\t\tcase \"A\":\n\t\t\t\tvalue = Math.round( dateMillisecondsInDay( date ) * Math.pow( 10, length - 3 ) );\n\t\t\t\tbreak;\n\n\t\t\t// Zone\n\t\t\tcase \"z\":\n\t\t\t\tbreak;\n\n\t\t\tcase \"v\":\n\n\t\t\t\t// v...vvv: \"{shortRegion}\", eg. \"PT\".\n\t\t\t\t// vvvv: \"{regionName} {Time}\",\n\t\t\t\t// e.g., \"Pacific Time\".\n\t\t\t\tif ( properties.genericTzName ) {\n\t\t\t\t\tvalue = properties.genericTzName;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\n\t\t\t/* falls through */\n\t\t\tcase \"V\":\n\n\t\t\t\t//VVVV: \"{explarCity} {Time}\", e.g., \"Los Angeles Time\"\n\t\t\t\tif ( properties.timeZoneName ) {\n\t\t\t\t\tvalue = properties.timeZoneName;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\n\t\t\t\tif ( current === \"v\" ) {\n\t\t\t\t\tlength = 1;\n\t\t\t\t}\n\n\t\t\t/* falls through */\n\t\t\tcase \"O\":\n\n\t\t\t\t// O: \"{gmtFormat}+H;{gmtFormat}-H\" or \"{gmtZeroFormat}\", eg. \"GMT-8\" or \"GMT\".\n\t\t\t\t// OOOO: \"{gmtFormat}{hourFormat}\" or \"{gmtZeroFormat}\", eg. \"GMT-08:00\" or \"GMT\".\n\t\t\t\tif ( date.getTimezoneOffset() === 0 ) {\n\t\t\t\t\tvalue = properties.gmtZeroFormat;\n\t\t\t\t} else {\n\n\t\t\t\t\t// If O..OOO and timezone offset has non-zero minutes, show minutes.\n\t\t\t\t\tif ( length < 4 ) {\n\t\t\t\t\t\taux = date.getTimezoneOffset();\n\t\t\t\t\t\taux = properties.hourFormat[ aux % 60 - aux % 1 === 0 ? 0 : 1 ];\n\t\t\t\t\t} else {\n\t\t\t\t\t\taux = properties.hourFormat;\n\t\t\t\t\t}\n\n\t\t\t\t\tvalue = dateTimezoneHourFormat(\n\t\t\t\t\t\tdate,\n\t\t\t\t\t\taux,\n\t\t\t\t\t\ttimeSeparator,\n\t\t\t\t\t\tnumberFormatters\n\t\t\t\t\t);\n\t\t\t\t\tvalue = properties.gmtFormat.replace( /\\{0\\}/, value );\n\t\t\t\t}\n\t\t\t\tbreak;\n\n\t\t\tcase \"X\":\n\n\t\t\t\t// Same as x*, except it uses \"Z\" for zero offset.\n\t\t\t\tif ( date.getTimezoneOffset() === 0 ) {\n\t\t\t\t\tvalue = \"Z\";\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\n\t\t\t/* falls through */\n\t\t\tcase \"x\":\n\n\t\t\t\t// x: hourFormat(\"+HH[mm];-HH[mm]\")\n\t\t\t\t// xx: hourFormat(\"+HHmm;-HHmm\")\n\t\t\t\t// xxx: hourFormat(\"+HH:mm;-HH:mm\")\n\t\t\t\t// xxxx: hourFormat(\"+HHmm[ss];-HHmm[ss]\")\n\t\t\t\t// xxxxx: hourFormat(\"+HH:mm[:ss];-HH:mm[:ss]\")\n\t\t\t\taux = date.getTimezoneOffset();\n\n\t\t\t\t// If x and timezone offset has non-zero minutes, use xx (i.e., show minutes).\n\t\t\t\tif ( length === 1 && aux % 60 - aux % 1 !== 0 ) {\n\t\t\t\t\tlength += 1;\n\t\t\t\t}\n\n\t\t\t\t// If (xxxx or xxxxx) and timezone offset has zero seconds, use xx or xxx\n\t\t\t\t// respectively (i.e., don't show optional seconds).\n\t\t\t\tif ( ( length === 4 || length === 5 ) && aux % 1 === 0 ) {\n\t\t\t\t\tlength -= 2;\n\t\t\t\t}\n\n\t\t\t\tvalue = [\n\t\t\t\t\t\"+HH;-HH\",\n\t\t\t\t\t\"+HHmm;-HHmm\",\n\t\t\t\t\t\"+HH:mm;-HH:mm\",\n\t\t\t\t\t\"+HHmmss;-HHmmss\",\n\t\t\t\t\t\"+HH:mm:ss;-HH:mm:ss\"\n\t\t\t\t][ length - 1 ];\n\n\t\t\t\tvalue = dateTimezoneHourFormat( date, value, \":\" );\n\t\t\t\tbreak;\n\n\t\t\t// timeSeparator\n\t\t\tcase \":\":\n\t\t\t\tvalue = timeSeparator;\n\t\t\t\tbreak;\n\n\t\t\t// ' literals.\n\t\t\tcase \"'\":\n\t\t\t\tvalue = removeLiteralQuotes( current );\n\t\t\t\tbreak;\n\n\t\t\t// Anything else is considered a literal, including [ ,:/.@#], chinese, japonese, and\n\t\t\t// arabic characters.\n\t\t\tdefault:\n\t\t\t\tvalue = current;\n\n\t\t}\n\t\tif ( typeof value === \"number\" ) {\n\t\t\tvalue = numberFormatters[ length ]( value );\n\t\t}\n\n\t\tdateField = dateFieldsMap[ chr ];\n\t\ttype = dateField ? dateField : \"literal\";\n\n\t\tpartsPush( parts, type, value );\n\t});\n\n\treturn parts;\n\n};\n\n\n\n\nvar dateToPartsFormatterFn = function( numberFormatters, properties ) {\n\treturn function dateToPartsFormatter( value ) {\n\t\tvalidateParameterPresence( value, \"value\" );\n\t\tvalidateParameterTypeDate( value, \"value\" );\n\n\t\treturn dateFormat( value, numberFormatters, properties );\n\t};\n\n};\n\n\n\n\nfunction optionsHasStyle( options ) {\n\treturn options.skeleton !== undefined ||\n\t\toptions.date !== undefined ||\n\t\toptions.time !== undefined ||\n\t\toptions.datetime !== undefined ||\n\t\toptions.raw !== undefined;\n}\n\nfunction validateRequiredCldr( path, value ) {\n\tvalidateCldr( path, value, {\n\t\tskip: [\n\t\t\t/dates\\/calendars\\/gregorian\\/dateTimeFormats\\/availableFormats/,\n\t\t\t/dates\\/calendars\\/gregorian\\/days\\/.*\\/short/,\n\t\t\t/dates\\/timeZoneNames\\/zone/,\n\t\t\t/dates\\/timeZoneNames\\/metazone/,\n\t\t\t/globalize-iana/,\n\t\t\t/supplemental\\/metaZones/,\n\t\t\t/supplemental\\/timeData\\/(?!001)/,\n\t\t\t/supplemental\\/weekData\\/(?!001)/\n\t\t]\n\t});\n}\n\nfunction validateOptionsPreset( options ) {\n\tvalidateOptionsPresetEach( \"date\", options );\n\tvalidateOptionsPresetEach( \"time\", options );\n\tvalidateOptionsPresetEach( \"datetime\", options );\n}\n\nfunction validateOptionsPresetEach( type, options ) {\n\tvar value = options[ type ];\n\tvalidate(\n\t\t\"E_INVALID_OPTIONS\",\n\t\t\"Invalid `{{type}: \\\"{value}\\\"}`.\",\n\t\tvalue === undefined || [ \"short\", \"medium\", \"long\", \"full\" ].indexOf( value ) !== -1,\n\t\t{ type: type, value: value }\n\t);\n}\n\nfunction validateOptionsSkeleton( pattern, skeleton ) {\n\tvalidate(\n\t\t\"E_INVALID_OPTIONS\",\n\t\t\"Invalid `{skeleton: \\\"{value}\\\"}` based on provided CLDR.\",\n\t\tskeleton === undefined || ( typeof pattern === \"string\" && pattern ),\n\t\t{ type: \"skeleton\", value: skeleton }\n\t);\n}\n\nfunction validateRequiredIana( timeZone ) {\n\treturn function( path, value ) {\n\n\t\tif ( !/globalize-iana/.test( path ) ) {\n\t\t\treturn;\n\t\t}\n\n\t\tvalidate(\n\t\t\t\"E_MISSING_IANA_TZ\",\n\t\t\t\"Missing required IANA timezone content for `{timeZone}`: `{path}`.\",\n\t\t\tvalue,\n\t\t\t{\n\t\t\t\tpath: path.replace( /globalize-iana\\//, \"\" ),\n\t\t\t\ttimeZone: timeZone\n\t\t\t}\n\t\t);\n\t};\n}\n\n/**\n * .loadTimeZone( json )\n *\n * @json [JSON]\n *\n * Load IANA timezone data.\n */\nGlobalize.loadTimeZone = function( json ) {\n\tvar customData = {\n\t\t\t\"globalize-iana\": json\n\t\t};\n\n\tvalidateParameterPresence( json, \"json\" );\n\tvalidateParameterTypePlainObject( json, \"json\" );\n\n\tCldr.load( customData );\n};\n\n/**\n * .dateFormatter( options )\n *\n * @options [Object] see date/expand_pattern for more info.\n *\n * Return a date formatter function (of the form below) according to the given options and the\n * default/instance locale.\n *\n * fn( value )\n *\n * @value [Date]\n *\n * Return a function that formats a date according to the given `format` and the default/instance\n * locale.\n */\nGlobalize.dateFormatter =\nGlobalize.prototype.dateFormatter = function( options ) {\n\tvar args, dateToPartsFormatter, returnFn;\n\n\tvalidateParameterTypePlainObject( options, \"options\" );\n\n\toptions = options || {};\n\tif ( !optionsHasStyle( options ) ) {\n\t\toptions.skeleton = \"yMd\";\n\t}\n\targs = [ options ];\n\n\tdateToPartsFormatter = this.dateToPartsFormatter( options );\n\treturnFn = dateFormatterFn( dateToPartsFormatter );\n\truntimeBind( args, this.cldr, returnFn, [ dateToPartsFormatter ] );\n\n\treturn returnFn;\n};\n\n/**\n * .dateToPartsFormatter( options )\n *\n * @options [Object] see date/expand_pattern for more info.\n *\n * Return a date formatter function (of the form below) according to the given options and the\n * default/instance locale.\n *\n * fn( value )\n *\n * @value [Date]\n *\n * Return a function that formats a date to parts according to the given `format`\n * and the default/instance\n * locale.\n */\nGlobalize.dateToPartsFormatter =\nGlobalize.prototype.dateToPartsFormatter = function( options ) {\n\tvar args, cldr, numberFormatters, pad, pattern, properties, returnFn,\n\t\ttimeZone, ianaListener;\n\n\tvalidateParameterTypePlainObject( options, \"options\" );\n\n\tcldr = this.cldr;\n\toptions = options || {};\n\tif ( !optionsHasStyle( options ) ) {\n\t\toptions.skeleton = \"yMd\";\n\t}\n\n\tvalidateOptionsPreset( options );\n\tvalidateDefaultLocale( cldr );\n\n\ttimeZone = options.timeZone;\n\tvalidateParameterTypeString( timeZone, \"options.timeZone\" );\n\n\targs = [ options ];\n\n\tcldr.on( \"get\", validateRequiredCldr );\n\tif ( timeZone ) {\n\t\tianaListener = validateRequiredIana( timeZone );\n\t\tcldr.on( \"get\", ianaListener );\n\t}\n\ttry {\n\t\tpattern = dateExpandPattern( options, cldr );\n\t\tvalidateOptionsSkeleton( pattern, options.skeleton );\n\t\tproperties = dateFormatProperties( pattern, cldr, timeZone );\n\t} finally {\n\t\tcldr.off( \"get\", validateRequiredCldr );\n\t\tif ( ianaListener ) {\n\t\t\tcldr.off( \"get\", ianaListener );\n\t\t}\n\t}\n\n\t// Create needed number formatters.\n\tnumberFormatters = properties.numberFormatters;\n\tdelete properties.numberFormatters;\n\tfor ( pad in numberFormatters ) {\n\t\tnumberFormatters[ pad ] = this.numberFormatter({\n\t\t\traw: numberFormatters[ pad ]\n\t\t});\n\t}\n\n\treturnFn = dateToPartsFormatterFn( numberFormatters, properties );\n\n\truntimeBind( args, cldr, returnFn, [ numberFormatters, properties ] );\n\n\treturn returnFn;\n};\n\n/**\n * .dateParser( options )\n *\n * @options [Object] see date/expand_pattern for more info.\n *\n * Return a function that parses a string date according to the given `formats` and the\n * default/instance locale.\n */\nGlobalize.dateParser =\nGlobalize.prototype.dateParser = function( options ) {\n\tvar args, cldr, numberParser, parseProperties, pattern, returnFn, timeZone,\n\t\ttokenizerProperties;\n\n\tvalidateParameterTypePlainObject( options, \"options\" );\n\n\tcldr = this.cldr;\n\toptions = options || {};\n\tif ( !optionsHasStyle( options ) ) {\n\t\toptions.skeleton = \"yMd\";\n\t}\n\n\tvalidateOptionsPreset( options );\n\tvalidateDefaultLocale( cldr );\n\n\ttimeZone = options.timeZone;\n\tvalidateParameterTypeString( timeZone, \"options.timeZone\" );\n\n\targs = [ options ];\n\n\ttry {\n\t\tcldr.on( \"get\", validateRequiredCldr );\n\t\tif ( timeZone ) {\n\t\t\tcldr.on( \"get\", validateRequiredIana( timeZone ) );\n\t\t}\n\t\tpattern = dateExpandPattern( options, cldr );\n\t\tvalidateOptionsSkeleton( pattern, options.skeleton );\n\t\ttokenizerProperties = dateTokenizerProperties( pattern, cldr, timeZone );\n\t\tparseProperties = dateParseProperties( cldr, timeZone );\n\t} finally {\n\t\tcldr.off( \"get\", validateRequiredCldr );\n\t\tif ( timeZone ) {\n\t\t\tcldr.off( \"get\", validateRequiredIana( timeZone ) );\n\t\t}\n\t}\n\tnumberParser = this.numberParser({ raw: \"0\" });\n\n\treturnFn = dateParserFn( numberParser, parseProperties, tokenizerProperties );\n\n\truntimeBind( args, cldr, returnFn, [ numberParser, parseProperties, tokenizerProperties ] );\n\n\treturn returnFn;\n};\n\n/**\n * .formatDate( value, options )\n *\n * @value [Date]\n *\n * @options [Object] see date/expand_pattern for more info.\n *\n * Formats a date or number according to the given options string and the default/instance locale.\n */\nGlobalize.formatDate =\nGlobalize.prototype.formatDate = function( value, options ) {\n\tvalidateParameterPresence( value, \"value\" );\n\tvalidateParameterTypeDate( value, \"value\" );\n\n\treturn this.dateFormatter( options )( value );\n};\n\n/**\n * .formatDateToParts( value, options )\n *\n * @value [Date]\n *\n * @options [Object] see date/expand_pattern for more info.\n *\n * Formats a date or number to parts according to the given options and the default/instance locale.\n */\nGlobalize.formatDateToParts =\nGlobalize.prototype.formatDateToParts = function( value, options ) {\n\tvalidateParameterPresence( value, \"value\" );\n\tvalidateParameterTypeDate( value, \"value\" );\n\n\treturn this.dateToPartsFormatter( options )( value );\n};\n\n/**\n * .parseDate( value, options )\n *\n * @value [String]\n *\n * @options [Object] see date/expand_pattern for more info.\n *\n * Return a Date instance or null.\n */\nGlobalize.parseDate =\nGlobalize.prototype.parseDate = function( value, options ) {\n\tvalidateParameterPresence( value, \"value\" );\n\tvalidateParameterTypeString( value, \"value\" );\n\n\treturn this.dateParser( options )( value );\n};\n\nreturn Globalize;\n\n\n\n\n}));\n","/**\n * Globalize v2.0.0\n *\n * https://github.com/globalizejs/globalize\n *\n * Copyright OpenJS Foundation and other contributors\n * Released under the MIT license\n * https://jquery.org/license\n *\n * Date: @DATE\n */\n/*!\n * Globalize v2.0.0 @DATE Released under the MIT license\n * https://github.com/globalizejs/globalize\n */\n(function( root, factory ) {\n\n\t// UMD returnExports\n\tif ( typeof define === \"function\" && define.amd ) {\n\n\t\t// AMD\n\t\tdefine([\n\t\t\t\"cldr\",\n\t\t\t\"../globalize\",\n\t\t\t\"cldr/event\",\n\t\t\t\"cldr/supplemental\"\n\t\t], factory );\n\t} else if ( typeof exports === \"object\" ) {\n\n\t\t// Node, CommonJS\n\t\tmodule.exports = factory( require( \"cldrjs\" ), require( \"../globalize\" ) );\n\t} else {\n\n\t\t// Global\n\t\tfactory( root.Cldr, root.Globalize );\n\t}\n}(this, function( Cldr, Globalize ) {\n\nvar createError = Globalize._createError,\n\tpartsJoin = Globalize._partsJoin,\n\tpartsPush = Globalize._partsPush,\n\tregexpEscape = Globalize._regexpEscape,\n\truntimeBind = Globalize._runtimeBind,\n\tstringPad = Globalize._stringPad,\n\tvalidateCldr = Globalize._validateCldr,\n\tvalidateDefaultLocale = Globalize._validateDefaultLocale,\n\tvalidateParameterPresence = Globalize._validateParameterPresence,\n\tvalidateParameterRange = Globalize._validateParameterRange,\n\tvalidateParameterType = Globalize._validateParameterType,\n\tvalidateParameterTypePlainObject = Globalize._validateParameterTypePlainObject;\n\n\nvar createErrorUnsupportedFeature = function( feature ) {\n\treturn createError( \"E_UNSUPPORTED\", \"Unsupported {feature}.\", {\n\t\tfeature: feature\n\t});\n};\n\n\n\n\nvar validateParameterTypeNumber = function( value, name ) {\n\tvalidateParameterType(\n\t\tvalue,\n\t\tname,\n\t\tvalue === undefined || typeof value === \"number\",\n\t\t\"Number\"\n\t);\n};\n\n\n\n\nvar validateParameterTypeString = function( value, name ) {\n\tvalidateParameterType(\n\t\tvalue,\n\t\tname,\n\t\tvalue === undefined || typeof value === \"string\",\n\t\t\"a string\"\n\t);\n};\n\n\n\n\nvar numberFormatterFn = function( numberToPartsFormatter ) {\n\treturn function numberFormatter( value ) {\n\t\treturn partsJoin( numberToPartsFormatter( value ));\n\t};\n};\n\n\n\n\n/**\n * NumberingSystem( cldr )\n *\n * - http://www.unicode.org/reports/tr35/tr35-numbers.html#otherNumberingSystems\n * - http://cldr.unicode.org/index/bcp47-extension\n * - http://www.unicode.org/reports/tr35/#u_Extension\n */\nvar numberNumberingSystem = function( cldr ) {\n\tvar nu = cldr.attributes[ \"u-nu\" ];\n\n\tif ( nu ) {\n\t\tif ( nu === \"traditio\" ) {\n\t\t\tnu = \"traditional\";\n\t\t}\n\t\tif ( [ \"native\", \"traditional\", \"finance\" ].indexOf( nu ) !== -1 ) {\n\n\t\t\t// Unicode locale extension `u-nu` is set using either (native, traditional or\n\t\t\t// finance). So, lookup the respective locale's numberingSystem and return it.\n\t\t\treturn cldr.main([ \"numbers/otherNumberingSystems\", nu ]);\n\t\t}\n\n\t\t// Unicode locale extension `u-nu` is set with an explicit numberingSystem. Return it.\n\t\treturn nu;\n\t}\n\n\t// Return the default numberingSystem.\n\treturn cldr.main( \"numbers/defaultNumberingSystem\" );\n};\n\n\n\n\n/**\n * Compact( name, cldr )\n *\n * @compactType [String] Compact mode, `short` or `long`.\n *\n * @cldr [Cldr instance].\n *\n * Return the localized compact map for the given compact mode.\n */\nvar numberCompact = function( compactType, cldr ) {\n\tvar maxExponent = 0;\n\n\tvar object = cldr.main([\n\t\t\"numbers/decimalFormats-numberSystem-\" + numberNumberingSystem( cldr ),\n\t\tcompactType,\n\t\t\"decimalFormat\"\n\t]);\n\n\tobject = Object.keys( object ).reduce(function( newObject, compactKey ) {\n\t\tvar numberExponent = compactKey.split( \"0\" ).length - 1;\n\t\tvar pluralForm = compactKey.split( \"-\" )[ 2 ];\n\t\tnewObject[ numberExponent ] = newObject[ numberExponent ] || {};\n\t\tnewObject[ numberExponent ][ pluralForm ] = object[ compactKey ];\n\t\tmaxExponent = Math.max( numberExponent, maxExponent );\n\t\treturn newObject;\n\t}, {});\n\n\tobject.maxExponent = maxExponent;\n\n\treturn object;\n};\n\n\n\n\n/**\n * nuMap( cldr )\n *\n * @cldr [Cldr instance].\n *\n * Return digits map if numbering system is different than `latn`.\n */\nvar numberNumberingSystemDigitsMap = function( cldr ) {\n\tvar aux,\n\t\tnu = numberNumberingSystem( cldr );\n\n\tif ( nu === \"latn\" ) {\n\t\treturn;\n\t}\n\n\taux = cldr.supplemental([ \"numberingSystems\", nu ]);\n\n\tif ( aux._type !== \"numeric\" ) {\n\t\tthrow createErrorUnsupportedFeature( \"`\" + aux._type + \"` numbering system\" );\n\t}\n\n\treturn aux._digits;\n};\n\n\n\n\n/**\n * EBNF representation:\n *\n * number_pattern_re = prefix?\n * padding?\n * (integer_fraction_pattern | significant_pattern)\n * scientific_notation?\n * suffix?\n *\n * prefix = non_number_stuff\n *\n * padding = \"*\" regexp(.)\n *\n * integer_fraction_pattern = integer_pattern\n * fraction_pattern?\n *\n * integer_pattern = regexp([#,]*[0,]*0+)\n *\n * fraction_pattern = \".\" regexp(0*[0-9]*#*)\n *\n * significant_pattern = regexp([#,]*@+#*)\n *\n * scientific_notation = regexp(E\\+?0+)\n *\n * suffix = non_number_stuff\n *\n * non_number_stuff = regexp(('[^']+'|''|[^*#@0,.E])*)\n *\n *\n * Regexp groups:\n *\n * 0: number_pattern_re\n * 1: prefix\n * 2: -\n * 3: -\n * 4: padding\n * 5: (integer_fraction_pattern | significant_pattern)\n * 6: integer_fraction_pattern\n * 7: integer_pattern\n * 8: fraction_pattern\n * 9: significant_pattern\n * 10: scientific_notation\n * 11: suffix\n * 12: -\n */\nvar numberPatternRe = ( /^(('([^']|'')*'|[^*#@0,.E])*)(\\*.)?((([#,]*[0,]*0+)(\\.0*[0-9]*#*)?)|([#,]*@+#*))(E\\+?0+)?(('[^']+'|''|[^*#@0,.E])*)$/ );\n\n\n\n\n/**\n * format( number, pattern )\n *\n * @number [Number].\n *\n * @pattern [String] raw pattern for numbers.\n *\n * Return the formatted number.\n * ref: http://www.unicode.org/reports/tr35/tr35-numbers.html\n */\nvar numberPatternProperties = function( pattern ) {\n\tvar aux1, aux2, fractionPattern, integerFractionOrSignificantPattern, integerPattern,\n\t\tmaximumFractionDigits, maximumSignificantDigits, minimumFractionDigits,\n\t\tminimumIntegerDigits, minimumSignificantDigits, padding, prefix, primaryGroupingSize,\n\t\troundIncrement, scientificNotation, secondaryGroupingSize, significantPattern, suffix;\n\n\tpattern = pattern.match( numberPatternRe );\n\tif ( !pattern ) {\n\t\tthrow new Error( \"Invalid pattern: \" + pattern );\n\t}\n\n\tprefix = pattern[ 1 ];\n\tpadding = pattern[ 4 ];\n\tintegerFractionOrSignificantPattern = pattern[ 5 ];\n\tsignificantPattern = pattern[ 9 ];\n\tscientificNotation = pattern[ 10 ];\n\tsuffix = pattern[ 11 ];\n\n\t// Significant digit format\n\tif ( significantPattern ) {\n\t\tsignificantPattern.replace( /(@+)(#*)/, function( _match, minimumSignificantDigitsMatch, maximumSignificantDigitsMatch ) {\n\t\t\tminimumSignificantDigits = minimumSignificantDigitsMatch.length;\n\t\t\tmaximumSignificantDigits = minimumSignificantDigits +\n\t\t\t\tmaximumSignificantDigitsMatch.length;\n\t\t});\n\n\t// Integer and fractional format\n\t} else {\n\t\tfractionPattern = pattern[ 8 ];\n\t\tintegerPattern = pattern[ 7 ];\n\n\t\tif ( fractionPattern ) {\n\n\t\t\t// Minimum fraction digits, and rounding.\n\t\t\tfractionPattern.replace( /[0-9]+/, function( match ) {\n\t\t\t\tminimumFractionDigits = match;\n\t\t\t});\n\t\t\tif ( minimumFractionDigits ) {\n\t\t\t\troundIncrement = +( \"0.\" + minimumFractionDigits );\n\t\t\t\tminimumFractionDigits = minimumFractionDigits.length;\n\t\t\t} else {\n\t\t\t\tminimumFractionDigits = 0;\n\t\t\t}\n\n\t\t\t// Maximum fraction digits\n\t\t\t// 1: ignore decimal character\n\t\t\tmaximumFractionDigits = fractionPattern.length - 1; /* 1 */\n\t\t} else {\n\t\t\tminimumFractionDigits = 0;\n\t\t\tmaximumFractionDigits = 0;\n\t\t}\n\n\t\t// Minimum integer digits\n\t\tintegerPattern.replace( /0+$/, function( match ) {\n\t\t\tminimumIntegerDigits = match.length;\n\t\t});\n\t}\n\n\t// Scientific notation\n\tif ( scientificNotation ) {\n\t\tthrow createErrorUnsupportedFeature({\n\t\t\tfeature: \"scientific notation (not implemented)\"\n\t\t});\n\t}\n\n\t// Padding\n\tif ( padding ) {\n\t\tthrow createErrorUnsupportedFeature({\n\t\t\tfeature: \"padding (not implemented)\"\n\t\t});\n\t}\n\n\t// Grouping\n\tif ( ( aux1 = integerFractionOrSignificantPattern.lastIndexOf( \",\" ) ) !== -1 ) {\n\n\t\t// Primary grouping size is the interval between the last group separator and the end of\n\t\t// the integer (or the end of the significant pattern).\n\t\taux2 = integerFractionOrSignificantPattern.split( \".\" )[ 0 ];\n\t\tprimaryGroupingSize = aux2.length - aux1 - 1;\n\n\t\t// Secondary grouping size is the interval between the last two group separators.\n\t\tif ( ( aux2 = integerFractionOrSignificantPattern.lastIndexOf( \",\", aux1 - 1 ) ) !== -1 ) {\n\t\t\tsecondaryGroupingSize = aux1 - 1 - aux2;\n\t\t}\n\t}\n\n\t// Return:\n\t// 0: @prefix String\n\t// 1: @padding Array [ , ] TODO\n\t// 2: @minimumIntegerDigits non-negative integer Number value indicating the minimum integer\n\t// digits to be used. Numbers will be padded with leading zeroes if necessary.\n\t// 3: @minimumFractionDigits and\n\t// 4: @maximumFractionDigits are non-negative integer Number values indicating the minimum and\n\t// maximum fraction digits to be used. Numbers will be rounded or padded with trailing\n\t// zeroes if necessary.\n\t// 5: @minimumSignificantDigits and\n\t// 6: @maximumSignificantDigits are positive integer Number values indicating the minimum and\n\t// maximum fraction digits to be shown. Either none or both of these properties are\n\t// present; if they are, they override minimum and maximum integer and fraction digits\n\t// – the formatter uses however many integer and fraction digits are required to display\n\t// the specified number of significant digits.\n\t// 7: @roundIncrement Decimal round increment or null\n\t// 8: @primaryGroupingSize\n\t// 9: @secondaryGroupingSize\n\t// 10: @suffix String\n\treturn [\n\t\tprefix,\n\t\tpadding,\n\t\tminimumIntegerDigits,\n\t\tminimumFractionDigits,\n\t\tmaximumFractionDigits,\n\t\tminimumSignificantDigits,\n\t\tmaximumSignificantDigits,\n\t\troundIncrement,\n\t\tprimaryGroupingSize,\n\t\tsecondaryGroupingSize,\n\t\tsuffix\n\t];\n};\n\n\n\n\n/**\n * Symbol( name, cldr )\n *\n * @name [String] Symbol name.\n *\n * @cldr [Cldr instance].\n *\n * Return the localized symbol given its name.\n */\nvar numberSymbol = function( name, cldr ) {\n\treturn cldr.main([\n\t\t\"numbers/symbols-numberSystem-\" + numberNumberingSystem( cldr ),\n\t\tname\n\t]);\n};\n\n\n\n\nvar numberSymbolName = {\n\t\".\": \"decimal\",\n\t\",\": \"group\",\n\t\"%\": \"percentSign\",\n\t\"+\": \"plusSign\",\n\t\"-\": \"minusSign\",\n\t\"E\": \"exponential\",\n\t\"\\u2030\": \"perMille\"\n};\n\n\n\n\n/**\n * symbolMap( cldr )\n *\n * @cldr [Cldr instance].\n *\n * Return the (localized symbol, pattern symbol) key value pair, eg. {\n * \".\": \"٫\",\n * \",\": \"٬\",\n * \"%\": \"٪\",\n * ...\n * };\n */\nvar numberSymbolMap = function( cldr ) {\n\tvar symbol,\n\t\tsymbolMap = {};\n\n\tfor ( symbol in numberSymbolName ) {\n\t\tsymbolMap[ symbol ] = numberSymbol( numberSymbolName[ symbol ], cldr );\n\t}\n\n\treturn symbolMap;\n};\n\n\n\n\nvar numberTruncate = function( value ) {\n\tif ( isNaN( value ) ) {\n\t\treturn NaN;\n\t}\n\treturn Math[ value < 0 ? \"ceil\" : \"floor\" ]( value );\n};\n\n\n\n\n/**\n * round( method )\n *\n * @method [String] with either \"round\", \"ceil\", \"floor\", or \"truncate\".\n *\n * Return function( value, incrementOrExp ):\n *\n * @value [Number] eg. 123.45.\n *\n * @incrementOrExp [Number] optional, eg. 0.1; or\n * [Object] Either { increment: } or { exponent: }\n *\n * Return the rounded number, eg:\n * - round( \"round\" )( 123.45 ): 123;\n * - round( \"ceil\" )( 123.45 ): 124;\n * - round( \"floor\" )( 123.45 ): 123;\n * - round( \"truncate\" )( 123.45 ): 123;\n * - round( \"round\" )( 123.45, 0.1 ): 123.5;\n * - round( \"round\" )( 123.45, 10 ): 120;\n *\n * Based on https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math/round\n * Ref: #376\n */\nvar numberRound = function( method ) {\n\tmethod = method || \"round\";\n\tmethod = method === \"truncate\" ? numberTruncate : Math[ method ];\n\n\treturn function( value, incrementOrExp ) {\n\t\tvar exp, increment;\n\n\t\tvalue = +value;\n\n\t\t// If the value is not a number, return NaN.\n\t\tif ( isNaN( value ) ) {\n\t\t\treturn NaN;\n\t\t}\n\n\t\t// Exponent given.\n\t\tif ( typeof incrementOrExp === \"object\" && incrementOrExp.exponent ) {\n\t\t\texp = +incrementOrExp.exponent;\n\t\t\tincrement = 1;\n\n\t\t\tif ( exp === 0 ) {\n\t\t\t\treturn method( value );\n\t\t\t}\n\n\t\t\t// If the exp is not an integer, return NaN.\n\t\t\tif ( !( typeof exp === \"number\" && exp % 1 === 0 ) ) {\n\t\t\t\treturn NaN;\n\t\t\t}\n\n\t\t// Increment given.\n\t\t} else {\n\t\t\tincrement = +incrementOrExp || 1;\n\n\t\t\tif ( increment === 1 ) {\n\t\t\t\treturn method( value );\n\t\t\t}\n\n\t\t\t// If the increment is not a number, return NaN.\n\t\t\tif ( isNaN( increment ) ) {\n\t\t\t\treturn NaN;\n\t\t\t}\n\n\t\t\tincrement = increment.toExponential().split( \"e\" );\n\t\t\texp = +increment[ 1 ];\n\t\t\tincrement = +increment[ 0 ];\n\t\t}\n\n\t\t// Shift & Round\n\t\tvalue = value.toString().split( \"e\" );\n\t\tvalue[ 0 ] = +value[ 0 ] / increment;\n\t\tvalue[ 1 ] = value[ 1 ] ? ( +value[ 1 ] - exp ) : -exp;\n\t\tvalue = method( +( value[ 0 ] + \"e\" + value[ 1 ] ) );\n\n\t\t// Shift back\n\t\tvalue = value.toString().split( \"e\" );\n\t\tvalue[ 0 ] = +value[ 0 ] * increment;\n\t\tvalue[ 1 ] = value[ 1 ] ? ( +value[ 1 ] + exp ) : exp;\n\t\treturn +( value[ 0 ] + \"e\" + value[ 1 ] );\n\t};\n};\n\n\n\n\n/**\n * formatProperties( pattern, cldr [, options] )\n *\n * @pattern [String] raw pattern for numbers.\n *\n * @cldr [Cldr instance].\n *\n * @options [Object]:\n * - minimumIntegerDigits [Number]\n * - minimumFractionDigits, maximumFractionDigits [Number]\n * - minimumSignificantDigits, maximumSignificantDigits [Number]\n * - round [String] \"ceil\", \"floor\", \"round\" (default), or \"truncate\".\n * - useGrouping [Boolean] default true.\n *\n * Return the processed properties that will be used in number/format.\n * ref: http://www.unicode.org/reports/tr35/tr35-numbers.html\n */\nvar numberFormatProperties = function( pattern, cldr, options ) {\n\tvar negativePattern, negativePrefix, negativeProperties, negativeSuffix, positivePattern,\n\t\troundFn, properties;\n\n\tfunction getOptions( attribute, propertyIndex ) {\n\t\tif ( attribute in options ) {\n\t\t\tproperties[ propertyIndex ] = options[ attribute ];\n\t\t}\n\t}\n\n\toptions = options || {};\n\tpattern = pattern.split( \";\" );\n\n\tpositivePattern = pattern[ 0 ];\n\n\tnegativePattern = pattern[ 1 ] || \"-\" + positivePattern;\n\tnegativeProperties = numberPatternProperties( negativePattern );\n\tnegativePrefix = negativeProperties[ 0 ];\n\tnegativeSuffix = negativeProperties[ 10 ];\n\n\t// Have runtime code to refer to numberRound() instead of including it explicitly.\n\troundFn = numberRound( options.round );\n\troundFn.generatorString = function() {\n\t\treturn \"numberRound(\" + ( options.round ? \"\\\"\" + options.round + \"\\\"\" : \"\" ) + \")\";\n\t};\n\n\tproperties = numberPatternProperties( positivePattern ).concat([\n\t\tpositivePattern,\n\t\tnegativePrefix + positivePattern + negativeSuffix,\n\t\tnegativePrefix,\n\t\tnegativeSuffix,\n\t\troundFn,\n\t\tnumberSymbol( \"infinity\", cldr ),\n\t\tnumberSymbol( \"nan\", cldr ),\n\t\tnumberSymbolMap( cldr ),\n\t\tnumberNumberingSystemDigitsMap( cldr )\n\t]);\n\n\tif ( options.compact ) {\n\n\t\t// The compact digits number pattern is always `0+`, so override the following properties.\n\t\t// Note: minimumIntegerDigits would actually range from `0` to `000` based on the scale of\n\t\t// the value to be formatted, though we're always using 1 as a simplification, because the\n\t\t// number won't be zero-padded since we chose the right format based on the scale, i.e.,\n\t\t// we'd never see something like `003M` anyway.\n\t\tproperties[ 2 ] = 1; // minimumIntegerDigits\n\t\tproperties[ 3 ] = 0; // minimumFractionDigits\n\t\tproperties[ 4 ] = 0; // maximumFractionDigits\n\t\tproperties[ 5 ] = // minimumSignificantDigits &\n\t\t\tproperties[ 6 ] = undefined; // maximumSignificantDigits\n\n\t\tproperties[ 20 ] = numberCompact( options.compact, cldr );\n\t}\n\n\tgetOptions( \"minimumIntegerDigits\", 2 );\n\tgetOptions( \"minimumFractionDigits\", 3 );\n\tgetOptions( \"maximumFractionDigits\", 4 );\n\tgetOptions( \"minimumSignificantDigits\", 5 );\n\tgetOptions( \"maximumSignificantDigits\", 6 );\n\n\t// Grouping separators\n\tif ( options.useGrouping === false ) {\n\t\tproperties[ 8 ] = null;\n\t}\n\n\t// Normalize number of digits if only one of either minimumFractionDigits or\n\t// maximumFractionDigits is passed in as an option\n\tif ( \"minimumFractionDigits\" in options && !( \"maximumFractionDigits\" in options ) ) {\n\n\t\t// maximumFractionDigits = Math.max( minimumFractionDigits, maximumFractionDigits );\n\t\tproperties[ 4 ] = Math.max( properties[ 3 ], properties[ 4 ] );\n\t} else if ( !( \"minimumFractionDigits\" in options ) &&\n\t\t\t\"maximumFractionDigits\" in options ) {\n\n\t\t// minimumFractionDigits = Math.min( minimumFractionDigits, maximumFractionDigits );\n\t\tproperties[ 3 ] = Math.min( properties[ 3 ], properties[ 4 ] );\n\t}\n\n\t// Return:\n\t// 0-10: see number/pattern-properties.\n\t// 11: @positivePattern [String] Positive pattern.\n\t// 12: @negativePattern [String] Negative pattern.\n\t// 13: @negativePrefix [String] Negative prefix.\n\t// 14: @negativeSuffix [String] Negative suffix.\n\t// 15: @round [Function] Round function.\n\t// 16: @infinitySymbol [String] Infinity symbol.\n\t// 17: @nanSymbol [String] NaN symbol.\n\t// 18: @symbolMap [Object] A bunch of other symbols.\n\t// 19: @nuDigitsMap [Array] Digits map if numbering system is different than `latn`.\n\t// 20: @compactMap [Object] Map of per-digit-count format patterns for specified compact mode.\n\treturn properties;\n};\n\n\n\n\n/**\n * Generated by:\n *\n * var regenerate = require( \"regenerate\" );\n * var formatSymbols = require( \"@unicode/unicode-13.0.0/General_Category/Format/symbols\" );\n * regenerate().add( formatSymbols ).toString();\n *\n * https://github.com/mathiasbynens/regenerate\n * https://github.com/node-unicode/unicode-13.0.0\n */\nvar regexpCfG = /[\\xAD\\u0600-\\u0605\\u061C\\u06DD\\u070F\\u08E2\\u180E\\u200B-\\u200F\\u202A-\\u202E\\u2060-\\u2064\\u2066-\\u206F\\uFEFF\\uFFF9-\\uFFFB]|\\uD804[\\uDCBD\\uDCCD]|\\uD80D[\\uDC30-\\uDC38]|\\uD82F[\\uDCA0-\\uDCA3]|\\uD834[\\uDD73-\\uDD7A]|\\uDB40[\\uDC01\\uDC20-\\uDC7F]/g;\n\n\n\n\n/**\n * Generated by:\n *\n * var regenerate = require( \"regenerate\" );\n * var dashSymbols = require( \"https://github.com/node-unicode/unicode-13.0.0/General_Category/Dash_Punctuation/symbols\" );\n * regenerate().add( dashSymbols ).toString();\n *\n * https://github.com/mathiasbynens/regenerate\n * https://github.com/node-unicode/unicode-13.0.0\n *\n * NOTE: In addition to [:dash:], the below includes MINUS SIGN U+2212.\n */\nvar regexpDashG = /[\\x2D\\u058A\\u05BE\\u1400\\u1806\\u2010-\\u2015\\u2E17\\u2E1A\\u2E3A\\u2E3B\\u2E40\\u301C\\u3030\\u30A0\\uFE31\\uFE32\\uFE58\\uFE63\\uFF0D\\u2212]|\\uD803\\uDEAD/g;\n\n\n\n\n/**\n * Generated by:\n *\n * var regenerate = require( \"regenerate\" );\n * var spaceSeparatorSymbols = require( \"@unicode/unicode-13.0.0/General_Category/Space_Separator/symbols\" );\n * regenerate().add( spaceSeparatorSymbols ).toString();\n *\n * https://github.com/mathiasbynens/regenerate\n * https://github.com/node-unicode/unicode-13.0.0\n */\nvar regexpZsG = /[ \\xA0\\u1680\\u2000-\\u200A\\u202F\\u205F\\u3000]/g;\n\n\n\n\n/**\n * Loose Matching:\n * - Ignore all format characters, which includes RLM, LRM or ALM used to control BIDI\n * formatting.\n * - Map all characters in [:Zs:] to U+0020 SPACE;\n * - Map all characters in [:Dash:] to U+002D HYPHEN-MINUS;\n */\nvar looseMatching = function( value ) {\n\treturn value\n\t\t.replace( regexpCfG, \"\" )\n\t\t.replace( regexpDashG, \"-\" )\n\t\t.replace( regexpZsG, \" \" );\n};\n\n\n\n\n/**\n * parse( value, properties )\n *\n * @value [String].\n *\n * @properties [Object] Parser properties is a reduced pre-processed cldr\n * data set returned by numberParserProperties().\n *\n * Return the parsed Number (including Infinity) or NaN when value is invalid.\n * ref: http://www.unicode.org/reports/tr35/tr35-numbers.html\n */\nvar numberParse = function( value, properties ) {\n\tvar grammar, invertedNuDigitsMap, invertedSymbolMap, negative, number, prefix, prefixNSuffix,\n\t\tsuffix, tokenizer, valid;\n\n\t// Grammar:\n\t// - Value <= NaN | PositiveNumber | NegativeNumber\n\t// - PositiveNumber <= PositivePrefix NumberOrInf PositiveSufix\n\t// - NegativeNumber <= NegativePrefix NumberOrInf\n\t// - NumberOrInf <= Number | Inf\n\tgrammar = [\n\t\t[ \"nan\" ],\n\t\t[ \"prefix\", \"infinity\", \"suffix\" ],\n\t\t[ \"prefix\", \"number\", \"suffix\" ],\n\t\t[ \"negativePrefix\", \"infinity\", \"negativeSuffix\" ],\n\t\t[ \"negativePrefix\", \"number\", \"negativeSuffix\" ]\n\t];\n\n\tinvertedSymbolMap = properties[ 0 ];\n\tinvertedNuDigitsMap = properties[ 1 ] || {};\n\ttokenizer = properties[ 2 ];\n\n\tvalue = looseMatching( value );\n\n\tfunction parse( type ) {\n\t\treturn function( lexeme ) {\n\n\t\t\t// Reverse localized symbols and numbering system.\n\t\t\tlexeme = lexeme.split( \"\" ).map(function( character ) {\n\t\t\t\treturn invertedSymbolMap[ character ] ||\n\t\t\t\t\tinvertedNuDigitsMap[ character ] ||\n\t\t\t\t\tcharacter;\n\t\t\t}).join( \"\" );\n\n\t\t\tswitch ( type ) {\n\t\t\t\tcase \"infinity\":\n\t\t\t\t\tnumber = Infinity;\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase \"nan\":\n\t\t\t\t\tnumber = NaN;\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase \"number\":\n\n\t\t\t\t\t// Remove grouping separators.\n\t\t\t\t\tlexeme = lexeme.replace( /,/g, \"\" );\n\n\t\t\t\t\tnumber = +lexeme;\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase \"prefix\":\n\t\t\t\tcase \"negativePrefix\":\n\t\t\t\t\tprefix = lexeme;\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase \"suffix\":\n\t\t\t\t\tsuffix = lexeme;\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase \"negativeSuffix\":\n\t\t\t\t\tsuffix = lexeme;\n\t\t\t\t\tnegative = true;\n\t\t\t\t\tbreak;\n\n\t\t\t\t// This should never be reached.\n\t\t\t\tdefault:\n\t\t\t\t\tthrow new Error( \"Internal error\" );\n\t\t\t}\n\t\t\treturn \"\";\n\t\t};\n\t}\n\n\tfunction tokenizeNParse( _value, grammar ) {\n\t\treturn grammar.some(function( statement ) {\n\t\t\tvar value = _value;\n\n\t\t\t// The whole grammar statement should be used (i.e., .every() return true) and value be\n\t\t\t// entirely consumed (i.e., !value.length).\n\t\t\treturn statement.every(function( type ) {\n\t\t\t\tif ( value.match( tokenizer[ type ] ) === null ) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\n\t\t\t\t// Consume and parse it.\n\t\t\t\tvalue = value.replace( tokenizer[ type ], parse( type ) );\n\t\t\t\treturn true;\n\t\t\t}) && !value.length;\n\t\t});\n\t}\n\n\tvalid = tokenizeNParse( value, grammar );\n\n\t// NaN\n\tif ( !valid || isNaN( number ) ) {\n\t\treturn NaN;\n\t}\n\n\tprefixNSuffix = \"\" + prefix + suffix;\n\n\t// Percent\n\tif ( prefixNSuffix.indexOf( \"%\" ) !== -1 ) {\n\t\tnumber /= 100;\n\n\t// Per mille\n\t} else if ( prefixNSuffix.indexOf( \"\\u2030\" ) !== -1 ) {\n\t\tnumber /= 1000;\n\t}\n\n\t// Negative number\n\tif ( negative ) {\n\t\tnumber *= -1;\n\t}\n\n\treturn number;\n};\n\n\n\n\nvar numberParserFn = function( properties ) {\n\treturn function numberParser( value ) {\n\t\tvalidateParameterPresence( value, \"value\" );\n\t\tvalidateParameterTypeString( value, \"value\" );\n\n\t\treturn numberParse( value, properties );\n\t};\n\n};\n\n\n\n\n/**\n * symbolMap( cldr )\n *\n * @cldr [Cldr instance].\n *\n * Return the (localized symbol, pattern symbol) key value pair, eg. {\n * \"٫\": \".\",\n * \"٬\": \",\",\n * \"٪\": \"%\",\n * ...\n * };\n */\nvar numberSymbolInvertedMap = function( cldr ) {\n\tvar symbol,\n\t\tsymbolMap = {};\n\n\tfor ( symbol in numberSymbolName ) {\n\t\tsymbolMap[ numberSymbol( numberSymbolName[ symbol ], cldr ) ] = symbol;\n\t}\n\n\treturn symbolMap;\n};\n\n\n\n\n/**\n * objectMap( object, fn)\n *\n * - object\n *\n * - fn( pair ) => pair\n */\nvar objectMap = function( object, fn ) {\n\treturn Object.keys( object ).map(function( key ) {\n\t\treturn fn([ key, object[ key ] ]);\n\t}).reduce(function( object, pair ) {\n\t\tobject[ pair[ 0 ] ] = pair[ 1 ];\n\t\treturn object;\n\t}, {});\n};\n\n\n\n\n/**\n * removeLiteralQuotes( string )\n *\n * Return:\n * - `'` if input string is `''`.\n * - `o'clock` if input string is `'o''clock'`.\n * - `foo` if input string is `foo`, i.e., return the same value in case it isn't a single-quoted\n * string.\n */\nvar removeLiteralQuotes = function( string ) {\n\tif ( string[ 0 ] + string[ string.length - 1 ] !== \"''\" ) {\n\t\treturn string;\n\t}\n\tif ( string === \"''\" ) {\n\t\treturn \"'\";\n\t}\n\treturn string.replace( /''/g, \"'\" ).slice( 1, -1 );\n};\n\n\n\n\n/**\n * parseProperties( pattern, cldr )\n *\n * @pattern [String] raw pattern for numbers.\n *\n * @cldr [Cldr instance].\n *\n * Return parser properties, used to feed parser function.\n *\n * TODO:\n * - Scientific_notation;\n * - Padding;\n */\nvar numberParseProperties = function( pattern, cldr, options ) {\n\tvar aux, decimalSymbolRe, digitsRe, groupingSeparatorRe, infinitySymbol, invertedNuDigitsMap,\n\t\tinvertedSymbolMap, maximumFractionDigits, maximumSignificantDigits,\n\t\tminimumSignificantDigits, nanSymbol, negativePrefix, negativeSuffix, nuDigitsMap,\n\t\tnumberTokenizer, prefix, primaryGroupingSize, secondaryGroupingSize, suffix, symbolMap,\n\t\tformatProperties = numberFormatProperties( pattern, cldr, options );\n\n\tprefix = looseMatching( formatProperties[ 0 ] );\n\tmaximumFractionDigits = formatProperties[ 4 ];\n\tminimumSignificantDigits = formatProperties[ 5 ];\n\tmaximumSignificantDigits = formatProperties[ 6 ];\n\tprimaryGroupingSize = formatProperties[ 8 ];\n\tsecondaryGroupingSize = formatProperties[ 9 ];\n\tsuffix = looseMatching( formatProperties[ 10 ] );\n\tnegativePrefix = looseMatching( formatProperties[ 13 ] );\n\tnegativeSuffix = looseMatching( formatProperties[ 14 ] );\n\tinfinitySymbol = looseMatching( formatProperties[ 16 ] );\n\tnanSymbol = looseMatching( formatProperties[ 17 ] );\n\tsymbolMap = objectMap( formatProperties[ 18 ], function( pair ) {\n\t\treturn [ pair[ 0 ], looseMatching( pair[ 1 ] ) ];\n\t});\n\tnuDigitsMap = formatProperties[ 19 ];\n\n\tinvertedSymbolMap = objectMap( numberSymbolInvertedMap( cldr ), function( pair ) {\n\t\treturn [ looseMatching( pair[ 0 ] ), pair[ 1 ] ];\n\t});\n\n\tdigitsRe = nuDigitsMap ? \"[\" + nuDigitsMap + \"]\" : \"\\\\d\";\n\tgroupingSeparatorRe = regexpEscape( symbolMap[ \",\" ] );\n\tdecimalSymbolRe = regexpEscape( symbolMap[ \".\" ] );\n\n\tif ( nuDigitsMap ) {\n\t\tinvertedNuDigitsMap = nuDigitsMap.split( \"\" ).reduce(function( object, localizedDigit, i ) {\n\t\t\tobject[ localizedDigit ] = String( i );\n\t\t\treturn object;\n\t\t}, {} );\n\t}\n\n\taux = [ prefix, suffix, negativePrefix, negativeSuffix ].map(function( value ) {\n\t\treturn value.replace( /('([^']|'')+'|'')|./g, function( character, literal ) {\n\n\t\t\t// Literals\n\t\t\tif ( literal ) {\n\t\t\t\treturn removeLiteralQuotes( literal );\n\t\t\t}\n\n\t\t\t// Symbols\n\t\t\tcharacter = character.replace( /[\\-+E%\\u2030]/, function( symbol ) {\n\t\t\t\treturn symbolMap[ symbol ];\n\t\t\t});\n\n\t\t\treturn character;\n\t\t});\n\t});\n\n\tprefix = aux[ 0 ];\n\tsuffix = aux[ 1 ];\n\tnegativePrefix = aux[ 2 ];\n\tnegativeSuffix = aux[ 3 ];\n\n\t// Number\n\t//\n\t// number_re = integer fraction?\n\t//\n\t// integer = digits | digits_using_grouping_separators\n\t//\n\t// fraction = regexp((.\\d+)?)\n\t//\n\t// digits = regexp(\\d+)\n\t//\n\t// digits_w_grouping_separators = digits_w_1_grouping_separators |\n\t// digits_w_2_grouping_separators\n\t//\n\t// digits_w_1_grouping_separators = regexp(\\d{1,3}(,\\d{3})+)\n\t//\n\t// digits_w_2_grouping_separators = regexp(\\d{1,2}((,\\d{2})*(,\\d{3})))\n\n\t// Integer part\n\tnumberTokenizer = digitsRe + \"+\";\n\n\t// Grouping separators\n\tif ( primaryGroupingSize ) {\n\t\tif ( secondaryGroupingSize ) {\n\t\t\taux = digitsRe + \"{1,\" + secondaryGroupingSize + \"}((\" + groupingSeparatorRe +\n\t\t\t\tdigitsRe + \"{\" + secondaryGroupingSize + \"})*(\" + groupingSeparatorRe +\n\t\t\t\tdigitsRe + \"{\" + primaryGroupingSize + \"}))\";\n\t\t} else {\n\t\t\taux = digitsRe + \"{1,\" + primaryGroupingSize + \"}(\" + groupingSeparatorRe +\n\t\t\t\tdigitsRe + \"{\" + primaryGroupingSize + \"})+\";\n\t\t}\n\t\tnumberTokenizer = \"(\" + aux + \"|\" + numberTokenizer + \")\";\n\t}\n\n\t// Fraction part? Only included if 1 or 2.\n\t// 1: Using significant digit format.\n\t// 2: Using integer and fractional format && it has a maximumFractionDigits.\n\tif ( !isNaN( minimumSignificantDigits * maximumSignificantDigits ) || /* 1 */\n\t\t\t\tmaximumFractionDigits /* 2 */ ) {\n\n\t\t// 1: Handle trailing decimal separator, e.g., `\"1.\" => `1``.\n\t\taux = decimalSymbolRe + digitsRe + \"+\";\n\t\tnumberTokenizer = numberTokenizer + \"(\" + aux + \"|\" + decimalSymbolRe /* 1 */ + \")?\" +\n\n\t\t\t// Handle non-padded decimals, e.g., `\".12\"` => `0.12` by making the integer part\n\t\t\t// optional.\n\t\t\t\"|(\" + numberTokenizer + \")?\" + aux;\n\n\t\tnumberTokenizer = \"(\" + numberTokenizer + \")\";\n\t}\n\n\t// 0: @invertedSymbolMap [Object] Inverted symbol map.\n\t// 1: @invertedNuDigitsMap [Object] Inverted digits map if numbering system is different than\n\t// `latn`.\n\t// 2: @tokenizer [Object] Tokenizer map, used by parser to consume input.\n\treturn [\n\t\tinvertedSymbolMap,\n\t\tinvertedNuDigitsMap,\n\t\t{\n\t\t\tinfinity: new RegExp( \"^\" + regexpEscape( infinitySymbol ) ),\n\t\t\tnan: new RegExp( \"^\" + regexpEscape( nanSymbol ) ),\n\t\t\tnegativePrefix: new RegExp( \"^\" + regexpEscape( negativePrefix ) ),\n\t\t\tnegativeSuffix: new RegExp( \"^\" + regexpEscape( negativeSuffix ) ),\n\t\t\tnumber: new RegExp( \"^\" + numberTokenizer ),\n\t\t\tprefix: new RegExp( \"^\" + regexpEscape( prefix ) ),\n\t\t\tsuffix: new RegExp( \"^\" + regexpEscape( suffix ) )\n\t\t}\n\t];\n\n};\n\n\n\n\n/**\n * Pattern( style )\n *\n * @style [String] \"decimal\" (default) or \"percent\".\n *\n * @cldr [Cldr instance].\n */\nvar numberPattern = function( style, cldr ) {\n\tif ( style !== \"decimal\" && style !== \"percent\" ) {\n\t\tthrow new Error( \"Invalid style\" );\n\t}\n\n\treturn cldr.main([\n\t\t\"numbers\",\n\t\tstyle + \"Formats-numberSystem-\" + numberNumberingSystem( cldr ),\n\t\t\"standard\"\n\t]);\n};\n\n\n\n\n/**\n * EBNF representation:\n *\n * compact_pattern_re = prefix?\n * number_pattern_re\n * suffix?\n *\n * number_pattern_re = 0+\n *\n * Regexp groups:\n *\n * 0: compact_pattern_re\n * 1: prefix\n * 2: number_pattern_re (the number pattern to use in compact mode)\n * 3: suffix\n */\nvar numberCompactPatternRe = ( /^([^0]*)(0+)([^0]*)$/ );\n\n\n\n\n/**\n * goupingSeparator( number, primaryGroupingSize, secondaryGroupingSize )\n *\n * @number [Number].\n *\n * @primaryGroupingSize [Number]\n *\n * @secondaryGroupingSize [Number]\n *\n * Return the formatted number with group separator.\n */\nvar numberFormatGroupingSeparator = function( number, primaryGroupingSize, secondaryGroupingSize ) {\n\tvar index,\n\t\tcurrentGroupingSize = primaryGroupingSize,\n\t\tret = \"\",\n\t\tsep = \",\",\n\t\tswitchToSecondary = secondaryGroupingSize ? true : false;\n\n\tnumber = String( number ).split( \".\" );\n\tindex = number[ 0 ].length;\n\n\twhile ( index > currentGroupingSize ) {\n\t\tret = number[ 0 ].slice( index - currentGroupingSize, index ) +\n\t\t\t( ret.length ? sep : \"\" ) + ret;\n\t\tindex -= currentGroupingSize;\n\t\tif ( switchToSecondary ) {\n\t\t\tcurrentGroupingSize = secondaryGroupingSize;\n\t\t\tswitchToSecondary = false;\n\t\t}\n\t}\n\n\tnumber[ 0 ] = number[ 0 ].slice( 0, index ) + ( ret.length ? sep : \"\" ) + ret;\n\treturn number.join( \".\" );\n};\n\n\n\n\n/**\n * integerFractionDigits( number, minimumIntegerDigits, minimumFractionDigits,\n * maximumFractionDigits, round, roundIncrement )\n *\n * @number [Number]\n *\n * @minimumIntegerDigits [Number]\n *\n * @minimumFractionDigits [Number]\n *\n * @maximumFractionDigits [Number]\n *\n * @round [Function]\n *\n * @roundIncrement [Function]\n *\n * Return the formatted integer and fraction digits.\n */\nvar numberFormatIntegerFractionDigits = function( number, minimumIntegerDigits, minimumFractionDigits, maximumFractionDigits, round,\n\troundIncrement ) {\n\n\t// Fraction\n\tif ( maximumFractionDigits ) {\n\n\t\t// Rounding\n\t\tif ( roundIncrement ) {\n\t\t\tnumber = round( number, roundIncrement );\n\n\t\t// Maximum fraction digits\n\t\t} else {\n\t\t\tnumber = round( number, { exponent: -maximumFractionDigits } );\n\t\t}\n\n\t} else {\n\t\tnumber = round( number );\n\t}\n\n\tnumber = String( number );\n\n\t// Maximum integer digits (post string phase)\n\tif ( maximumFractionDigits && /e-/.test( number ) ) {\n\n\t\t// Use toFixed( maximumFractionDigits ) to make sure small numbers like 1e-7 are\n\t\t// displayed using plain digits instead of scientific notation.\n\t\t// 1: Remove leading decimal zeros.\n\t\t// 2: Remove leading decimal separator.\n\t\t// Note: String() is still preferred so it doesn't mess up with a number precision\n\t\t// unnecessarily, e.g., (123456789.123).toFixed(10) === \"123456789.1229999959\",\n\t\t// String(123456789.123) === \"123456789.123\".\n\t\tnumber = ( +number ).toFixed( maximumFractionDigits )\n\t\t\t.replace( /0+$/, \"\" ) /* 1 */\n\t\t\t.replace( /\\.$/, \"\" ); /* 2 */\n\t}\n\n\t// Minimum fraction digits (post string phase)\n\tif ( minimumFractionDigits ) {\n\t\tnumber = number.split( \".\" );\n\t\tnumber[ 1 ] = stringPad( number[ 1 ] || \"\", minimumFractionDigits, true );\n\t\tnumber = number.join( \".\" );\n\t}\n\n\t// Minimum integer digits\n\tif ( minimumIntegerDigits ) {\n\t\tnumber = number.split( \".\" );\n\t\tnumber[ 0 ] = stringPad( number[ 0 ], minimumIntegerDigits );\n\t\tnumber = number.join( \".\" );\n\t}\n\n\treturn number;\n};\n\n\n\n\n/**\n * toPrecision( number, precision, round )\n *\n * @number (Number)\n *\n * @precision (Number) significant figures precision (not decimal precision).\n *\n * @round (Function)\n *\n * Return number.toPrecision( precision ) using the given round function.\n */\nvar numberToPrecision = function( number, precision, round ) {\n\tvar roundOrder;\n\n\tif ( number === 0 ) { // Fix #706\n\t\treturn number;\n\t}\n\n\troundOrder = Math.ceil( Math.log( Math.abs( number ) ) / Math.log( 10 ) );\n\troundOrder -= precision;\n\n\treturn round( number, { exponent: roundOrder } );\n};\n\n\n\n\n/**\n * toPrecision( number, minimumSignificantDigits, maximumSignificantDigits, round )\n *\n * @number [Number]\n *\n * @minimumSignificantDigits [Number]\n *\n * @maximumSignificantDigits [Number]\n *\n * @round [Function]\n *\n * Return the formatted significant digits number.\n */\nvar numberFormatSignificantDigits = function( number, minimumSignificantDigits, maximumSignificantDigits, round ) {\n\tvar atMinimum, atMaximum;\n\n\t// Sanity check.\n\tif ( minimumSignificantDigits > maximumSignificantDigits ) {\n\t\tmaximumSignificantDigits = minimumSignificantDigits;\n\t}\n\n\tatMinimum = numberToPrecision( number, minimumSignificantDigits, round );\n\tatMaximum = numberToPrecision( number, maximumSignificantDigits, round );\n\n\t// Use atMaximum only if it has more significant digits than atMinimum.\n\tnumber = +atMinimum === +atMaximum ? atMinimum : atMaximum;\n\n\t// Expand integer numbers, eg. 123e5 to 12300.\n\tnumber = ( +number ).toString( 10 );\n\n\tif ( ( /e/ ).test( number ) ) {\n\t\tthrow createErrorUnsupportedFeature({\n\t\t\tfeature: \"integers out of (1e21, 1e-7)\"\n\t\t});\n\t}\n\n\t// Add trailing zeros if necessary.\n\tif ( minimumSignificantDigits - number.replace( /^0+|\\./g, \"\" ).length > 0 ) {\n\t\tnumber = number.split( \".\" );\n\t\tnumber[ 1 ] = stringPad( number[ 1 ] || \"\", minimumSignificantDigits - number[ 0 ].replace( /^0+/, \"\" ).length, true );\n\t\tnumber = number.join( \".\" );\n\t}\n\n\treturn number;\n};\n\n\n\n\n/**\n * format( number, properties )\n *\n * @number [Number].\n *\n * @properties [Object] Output of number/format-properties.\n *\n * Return the formatted number.\n * ref: http://www.unicode.org/reports/tr35/tr35-numbers.html\n */\nvar numberFormat = function( number, properties, pluralGenerator ) {\n\tvar aux, compactMap, infinitySymbol, maximumFractionDigits, maximumSignificantDigits,\n\t\tminimumFractionDigits, minimumIntegerDigits, minimumSignificantDigits, nanSymbol,\n\t\tnuDigitsMap, prefix, primaryGroupingSize, pattern, round, roundIncrement,\n\t\tsecondaryGroupingSize, stringToParts, suffix, symbolMap;\n\n\tminimumIntegerDigits = properties[ 2 ];\n\tminimumFractionDigits = properties[ 3 ];\n\tmaximumFractionDigits = properties[ 4 ];\n\tminimumSignificantDigits = properties[ 5 ];\n\tmaximumSignificantDigits = properties[ 6 ];\n\troundIncrement = properties[ 7 ];\n\tprimaryGroupingSize = properties[ 8 ];\n\tsecondaryGroupingSize = properties[ 9 ];\n\tround = properties[ 15 ];\n\tinfinitySymbol = properties[ 16 ];\n\tnanSymbol = properties[ 17 ];\n\tsymbolMap = properties[ 18 ];\n\tnuDigitsMap = properties[ 19 ];\n\tcompactMap = properties[ 20 ];\n\n\t// NaN\n\tif ( isNaN( number ) ) {\n\t\treturn [ { type: \"nan\", value: nanSymbol } ];\n\t}\n\n\tif ( number < 0 ) {\n\t\tpattern = properties[ 12 ];\n\t\tprefix = properties[ 13 ];\n\t\tsuffix = properties[ 14 ];\n\t} else {\n\t\tpattern = properties[ 11 ];\n\t\tprefix = properties[ 0 ];\n\t\tsuffix = properties[ 10 ];\n\t}\n\n\t// For prefix, suffix, and number parts.\n\tstringToParts = function( string ) {\n\t\tvar numberType = \"integer\",\n\t\t\tparts = [];\n\n\t\t// TODO Move the tokenization of all parts that don't depend on number into\n\t\t// format-properties.\n\t\tstring.replace( /('([^']|'')+'|'')|./g, function( character, literal ) {\n\n\t\t\t// Literals\n\t\t\tif ( literal ) {\n\t\t\t\tpartsPush( parts, \"literal\", removeLiteralQuotes( literal ) );\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// Currency symbol\n\t\t\tif ( character === \"\\u00A4\" ) {\n\t\t\t\tpartsPush( parts, \"currency\", character );\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// Symbols\n\t\t\tcharacter = character.replace( /[.,\\-+E%\\u2030]/, function( symbol ) {\n\t\t\t\tif ( symbol === \".\" ) {\n\t\t\t\t\tnumberType = \"fraction\";\n\t\t\t\t}\n\t\t\t\tpartsPush( parts, numberSymbolName[ symbol ], symbolMap[ symbol ] );\n\n\t\t\t\t// \"Erase\" handled character.\n\t\t\t\treturn \"\";\n\t\t\t});\n\n\t\t\t// Number\n\t\t\tcharacter = character.replace( /[0-9]/, function( digit ) {\n\n\t\t\t\t// Numbering system\n\t\t\t\tif ( nuDigitsMap ) {\n\t\t\t\t\tdigit = nuDigitsMap[ +digit ];\n\t\t\t\t}\n\t\t\t\tpartsPush( parts, numberType, digit );\n\n\t\t\t\t// \"Erase\" handled character.\n\t\t\t\treturn \"\";\n\t\t\t});\n\n\t\t\t// Etc\n\t\t\tcharacter.replace( /./, function( etc ) {\n\t\t\t\tpartsPush( parts, \"literal\", etc );\n\t\t\t});\n\t\t});\n\t\treturn parts;\n\t};\n\n\tprefix = stringToParts( prefix );\n\tsuffix = stringToParts( suffix );\n\n\t// Infinity\n\tif ( !isFinite( number ) ) {\n\t\treturn prefix.concat(\n\t\t\t{ type: \"infinity\", value: infinitySymbol },\n\t\t\tsuffix\n\t\t);\n\t}\n\n\t// Percent\n\tif ( pattern.indexOf( \"%\" ) !== -1 ) {\n\t\tnumber *= 100;\n\n\t// Per mille\n\t} else if ( pattern.indexOf( \"\\u2030\" ) !== -1 ) {\n\t\tnumber *= 1000;\n\t}\n\n\tvar compactPattern, compactDigits, compactProperties, divisor, numberExponent, pluralForm;\n\n\t// Compact mode: initial number digit processing\n\tif ( compactMap ) {\n\t\tnumberExponent = Math.abs( Math.floor( number ) ).toString().length - 1;\n\t\tnumberExponent = Math.min( numberExponent, compactMap.maxExponent );\n\n\t\t// Use default plural form to perform initial decimal shift\n\t\tif ( numberExponent >= 3 ) {\n\t\t\tcompactPattern = compactMap[ numberExponent ] && compactMap[ numberExponent ].other;\n\t\t}\n\n\t\tif ( compactPattern === \"0\" ) {\n\t\t\tcompactPattern = null;\n\t\t} else if ( compactPattern ) {\n\t\t\tcompactDigits = compactPattern.split( \"0\" ).length - 1;\n\t\t\tdivisor = numberExponent - ( compactDigits - 1 );\n\t\t\tnumber = number / Math.pow( 10, divisor );\n\t\t}\n\t}\n\n\t// Significant digit format\n\tif ( !isNaN( minimumSignificantDigits * maximumSignificantDigits ) ) {\n\t\tnumber = numberFormatSignificantDigits( number, minimumSignificantDigits,\n\t\t\tmaximumSignificantDigits, round );\n\n\t// Integer and fractional format\n\t} else {\n\t\tnumber = numberFormatIntegerFractionDigits( number, minimumIntegerDigits,\n\t\t\tminimumFractionDigits, maximumFractionDigits, round, roundIncrement );\n\t}\n\n\t// Compact mode: apply formatting\n\tif ( compactMap && compactPattern ) {\n\n\t\t// Get plural form after possible roundings\n\t\tpluralForm = pluralGenerator ? pluralGenerator( +number ) : \"other\";\n\n\t\tcompactPattern = compactMap[ numberExponent ][ pluralForm ] || compactPattern;\n\t\tcompactProperties = compactPattern.match( numberCompactPatternRe );\n\n\t\t// TODO Move the tokenization of all parts that don't depend on number into\n\t\t// format-properties.\n\t\taux = function( string ) {\n\t\t\tvar parts = [];\n\t\t\tstring.replace( /(\\s+)|([^\\s0]+)/g, function( _garbage, space, compact ) {\n\n\t\t\t\t// Literals\n\t\t\t\tif ( space ) {\n\t\t\t\t\tpartsPush( parts, \"literal\", space );\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\t// Compact value\n\t\t\t\tif ( compact ) {\n\t\t\t\t\tpartsPush( parts, \"compact\", compact );\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t});\n\t\t\treturn parts;\n\t\t};\n\n\t\t// update prefix/suffix with compact prefix/suffix\n\t\tprefix = prefix.concat( aux( compactProperties[ 1 ] ) );\n\t\tsuffix = aux( compactProperties[ 3 ] ).concat( suffix );\n\t}\n\n\t// Remove the possible number minus sign\n\tnumber = number.replace( /^-/, \"\" );\n\n\t// Grouping separators\n\tif ( primaryGroupingSize ) {\n\t\tnumber = numberFormatGroupingSeparator( number, primaryGroupingSize,\n\t\t\tsecondaryGroupingSize );\n\t}\n\n\t// Scientific notation\n\t// TODO implement here\n\n\t// Padding/'([^']|'')+'|''|[.,\\-+E%\\u2030]/g\n\t// TODO implement here\n\n\treturn prefix.concat(\n\t\tstringToParts( number ),\n\t\tsuffix\n\t);\n};\n\n\n\n\nvar numberToPartsFormatterFn = function( properties, pluralGenerator ) {\n\treturn function numberToPartsFormatter( value ) {\n\t\tvalidateParameterPresence( value, \"value\" );\n\t\tvalidateParameterTypeNumber( value, \"value\" );\n\n\t\treturn numberFormat( value, properties, pluralGenerator );\n\t};\n};\n\n\n\n\nfunction validateDigits( properties ) {\n\tvar minimumIntegerDigits = properties[ 2 ],\n\t\tminimumFractionDigits = properties[ 3 ],\n\t\tmaximumFractionDigits = properties[ 4 ],\n\t\tminimumSignificantDigits = properties[ 5 ],\n\t\tmaximumSignificantDigits = properties[ 6 ];\n\n\t// Validate significant digit format properties\n\tif ( !isNaN( minimumSignificantDigits * maximumSignificantDigits ) ) {\n\t\tvalidateParameterRange( minimumSignificantDigits, \"minimumSignificantDigits\", 1, 21 );\n\t\tvalidateParameterRange( maximumSignificantDigits, \"maximumSignificantDigits\",\n\t\t\tminimumSignificantDigits, 21 );\n\n\t} else if ( !isNaN( minimumSignificantDigits ) || !isNaN( maximumSignificantDigits ) ) {\n\t\tthrow new Error( \"Neither or both the minimum and maximum significant digits must be \" +\n\t\t\t\"present\" );\n\n\t// Validate integer and fractional format\n\t} else {\n\t\tvalidateParameterRange( minimumIntegerDigits, \"minimumIntegerDigits\", 1, 21 );\n\t\tvalidateParameterRange( minimumFractionDigits, \"minimumFractionDigits\", 0, 20 );\n\t\tvalidateParameterRange( maximumFractionDigits, \"maximumFractionDigits\",\n\t\t\tminimumFractionDigits, 20 );\n\t}\n}\n\n/**\n * .numberFormatter( [options] )\n *\n * @options [Object]:\n * - style: [String] \"decimal\" (default) or \"percent\".\n * - see also number/format options.\n *\n * Return a function that formats a number according to the given options and default/instance\n * locale.\n */\nGlobalize.numberFormatter =\nGlobalize.prototype.numberFormatter = function( options ) {\n\tvar args, numberToPartsFormatter, returnFn;\n\n\tvalidateParameterTypePlainObject( options, \"options\" );\n\n\toptions = options || {};\n\targs = [ options ];\n\n\tnumberToPartsFormatter = this.numberToPartsFormatter( options );\n\treturnFn = numberFormatterFn( numberToPartsFormatter );\n\truntimeBind( args, this.cldr, returnFn, [ numberToPartsFormatter ] );\n\n\treturn returnFn;\n};\n\n/**\n * .numberToPartsFormatter( [options] )\n *\n * @options [Object]:\n * - style: [String] \"symbol\" (default), \"accounting\", \"code\" or \"name\".\n * - see also number/format options.\n *\n * Return a function that formats a number to parts according to the given options and\n * default/instance locale.\n */\nGlobalize.numberToPartsFormatter =\nGlobalize.prototype.numberToPartsFormatter = function( options ) {\n\tvar args, cldr, fnArgs, pattern, properties, returnFn;\n\n\tvalidateParameterTypePlainObject( options, \"options\" );\n\n\toptions = options || {};\n\tcldr = this.cldr;\n\n\targs = [ options ];\n\n\tvalidateDefaultLocale( cldr );\n\n\tcldr.on( \"get\", validateCldr );\n\ttry {\n\t\tif ( options.raw ) {\n\t\t\tpattern = options.raw;\n\t\t} else {\n\t\t\tpattern = numberPattern( options.style || \"decimal\", cldr );\n\t\t}\n\n\t\tproperties = numberFormatProperties( pattern, cldr, options );\n\t\tfnArgs = [ properties ];\n\t} finally {\n\t\tcldr.off( \"get\", validateCldr );\n\t}\n\n\tvalidateDigits( properties );\n\n\tif ( options.compact ) {\n\t\tfnArgs.push( this.pluralGenerator() );\n\t}\n\treturnFn = numberToPartsFormatterFn.apply( null, fnArgs );\n\truntimeBind( args, cldr, returnFn, fnArgs );\n\n\treturn returnFn;\n};\n\n/**\n * .numberParser( [options] )\n *\n * @options [Object]:\n * - style: [String] \"decimal\" (default) or \"percent\".\n *\n * Return the number parser according to the default/instance locale.\n */\nGlobalize.numberParser =\nGlobalize.prototype.numberParser = function( options ) {\n\tvar args, cldr, pattern, properties, returnFn;\n\n\tvalidateParameterTypePlainObject( options, \"options\" );\n\n\toptions = options || {};\n\tcldr = this.cldr;\n\n\targs = [ options ];\n\n\tvalidateDefaultLocale( cldr );\n\tif ( options.compact ) {\n\t\tthrow createErrorUnsupportedFeature({\n\t\t\tfeature: \"compact number parsing (not implemented)\"\n\t\t});\n\t}\n\n\tcldr.on( \"get\", validateCldr );\n\n\tif ( options.raw ) {\n\t\tpattern = options.raw;\n\t} else {\n\t\tpattern = numberPattern( options.style || \"decimal\", cldr );\n\t}\n\n\tproperties = numberParseProperties( pattern, cldr, options );\n\n\tcldr.off( \"get\", validateCldr );\n\n\treturnFn = numberParserFn( properties );\n\n\truntimeBind( args, cldr, returnFn, [ properties ] );\n\n\treturn returnFn;\n};\n\n/**\n * .formatNumber( value [, options] )\n *\n * @value [Number] number to be formatted.\n *\n * @options [Object]: see number/format-properties.\n *\n * Format a number according to the given options and default/instance locale.\n */\nGlobalize.formatNumber =\nGlobalize.prototype.formatNumber = function( value, options ) {\n\tvalidateParameterPresence( value, \"value\" );\n\tvalidateParameterTypeNumber( value, \"value\" );\n\n\treturn this.numberFormatter( options )( value );\n};\n\n/**\n * .formatNumberToParts( value [, options] )\n *\n * @value [Number] number to be formatted.\n *\n * @options [Object]: see number/format-properties.\n *\n * Format a number to pars according to the given options and default/instance locale.\n */\nGlobalize.formatNumberToParts =\nGlobalize.prototype.formatNumberToParts = function( value, options ) {\n\tvalidateParameterPresence( value, \"value\" );\n\tvalidateParameterTypeNumber( value, \"value\" );\n\n\treturn this.numberToPartsFormatter( options )( value );\n};\n\n/**\n * .parseNumber( value [, options] )\n *\n * @value [String]\n *\n * @options [Object]: See numberParser().\n *\n * Return the parsed Number (including Infinity) or NaN when value is invalid.\n */\nGlobalize.parseNumber =\nGlobalize.prototype.parseNumber = function( value, options ) {\n\tvalidateParameterPresence( value, \"value\" );\n\tvalidateParameterTypeString( value, \"value\" );\n\n\treturn this.numberParser( options )( value );\n};\n\n/**\n * Optimization to avoid duplicating some internal functions across modules.\n */\nGlobalize._createErrorUnsupportedFeature = createErrorUnsupportedFeature;\nGlobalize._numberNumberingSystem = numberNumberingSystem;\nGlobalize._numberNumberingSystemDigitsMap = numberNumberingSystemDigitsMap;\nGlobalize._numberPattern = numberPattern;\nGlobalize._numberSymbol = numberSymbol;\nGlobalize._looseMatching = looseMatching;\nGlobalize._removeLiteralQuotes = removeLiteralQuotes;\nGlobalize._stringPad = stringPad;\nGlobalize._validateParameterTypeNumber = validateParameterTypeNumber;\nGlobalize._validateParameterTypeString = validateParameterTypeString;\n\nreturn Globalize;\n\n\n\n\n}));\n","/**\n * Globalize v2.0.0\n *\n * https://github.com/globalizejs/globalize\n *\n * Copyright OpenJS Foundation and other contributors\n * Released under the MIT license\n * https://jquery.org/license\n *\n * Date: @DATE\n */\n/*!\n * Globalize v2.0.0 @DATE Released under the MIT license\n * https://github.com/globalizejs/globalize\n */\n(function( root, factory ) {\n\n\t// UMD returnExports\n\tif ( typeof define === \"function\" && define.amd ) {\n\n\t\t// AMD\n\t\tdefine([\n\t\t\t\"make-plural/cardinals\",\n\t\t\t\"make-plural/ordinals\",\n\t\t\t\"cldr\",\n\t\t\t\"../globalize\",\n\t\t\t\"cldr/event\",\n\t\t\t\"cldr/supplemental\"\n\t\t], factory );\n\t} else if ( typeof exports === \"object\" ) {\n\n\t\t// Node, CommonJS\n\t\tmodule.exports = factory( require( \"make-plural/cardinals\" ), require( \"make-plural/ordinals\" ), require( \"cldrjs\" ), require( \"../globalize\" ) );\n\t} else {\n\n\t\t// Global\n\t\tfactory( root.cardinals, root.ordinals, root.Cldr, root.Globalize );\n\t}\n}(this, function( cardinals, ordinals, Cldr, Globalize ) {\n\nvar runtimeBind = Globalize._runtimeBind,\n\tvalidateCldr = Globalize._validateCldr,\n\tvalidateDefaultLocale = Globalize._validateDefaultLocale,\n\tvalidateParameterPresence = Globalize._validateParameterPresence,\n\tvalidateParameterType = Globalize._validateParameterType,\n\tvalidateParameterTypePlainObject = Globalize._validateParameterTypePlainObject;\n\n\nvar validateParameterTypeNumber = function( value, name ) {\n\tvalidateParameterType(\n\t\tvalue,\n\t\tname,\n\t\tvalue === undefined || typeof value === \"number\",\n\t\t\"Number\"\n\t);\n};\n\n\n\n\nvar validateParameterTypePluralType = function( value, name ) {\n\tvalidateParameterType(\n\t\tvalue,\n\t\tname,\n\t\tvalue === undefined || value === \"cardinal\" || value === \"ordinal\",\n\t\t\"String \\\"cardinal\\\" or \\\"ordinal\\\"\"\n\t);\n};\n\n\n\n\nvar pluralGeneratorFn = function( plural ) {\n\treturn function pluralGenerator( value ) {\n\t\tvalidateParameterPresence( value, \"value\" );\n\t\tvalidateParameterTypeNumber( value, \"value\" );\n\n\t\treturn plural( value );\n\t};\n};\n\n\n\n\n/**\n * .plural( value )\n *\n * @value [Number]\n *\n * Return the corresponding form (zero | one | two | few | many | other) of a\n * value given locale.\n */\nGlobalize.plural =\nGlobalize.prototype.plural = function( value, options ) {\n\tvalidateParameterPresence( value, \"value\" );\n\tvalidateParameterTypeNumber( value, \"value\" );\n\treturn this.pluralGenerator( options )( value );\n};\n\n/**\n * .pluralGenerator( [options] )\n *\n * Return a plural function (of the form below).\n *\n * fn( value )\n *\n * @value [Number]\n *\n * Return the corresponding form (zero | one | two | few | many | other) of a value given the\n * default/instance locale.\n */\nGlobalize.pluralGenerator =\nGlobalize.prototype.pluralGenerator = function( options ) {\n\tvar args, cldr, isOrdinal, plural, returnFn, type;\n\n\tvalidateParameterTypePlainObject( options, \"options\" );\n\n\toptions = options || {};\n\tcldr = this.cldr;\n\n\targs = [ options ];\n\ttype = options.type || \"cardinal\";\n\n\tvalidateParameterTypePluralType( options.type, \"options.type\" );\n\n\tvalidateDefaultLocale( cldr );\n\n\tisOrdinal = type === \"ordinal\";\n\n\tcldr.on( \"get\", validateCldr );\n\ttry {\n\t\tcldr.supplemental([ \"plurals-type-\" + type, \"{language}\" ]);\n\t} finally {\n\t\tcldr.off( \"get\", validateCldr );\n\t}\n\n\tvar locale = cldr.locale.replace(/-.*/, \"\");\n\n\tif (!isOrdinal) {\n\t\tplural = cardinals[ locale ];\n\t} else {\n\t\tplural = ordinals[ locale ];\n\t}\n\n\treturnFn = pluralGeneratorFn( plural );\n\n\truntimeBind( args, cldr, returnFn, [ plural ] );\n\n\treturn returnFn;\n};\n\nreturn Globalize;\n\n\n\n\n}));\n","/**\n * Globalize v2.0.0\n *\n * https://github.com/globalizejs/globalize\n *\n * Copyright OpenJS Foundation and other contributors\n * Released under the MIT license\n * https://jquery.org/license\n *\n * Date: @DATE\n */\n/*!\n * Globalize v2.0.0 @DATE Released under the MIT license\n * https://github.com/globalizejs/globalize\n */\n(function( root, factory ) {\n\n\t// UMD returnExports\n\tif ( typeof define === \"function\" && define.amd ) {\n\n\t\t// AMD\n\t\tdefine([\n\t\t\t\"make-plural/cardinals\",\n\t\t\t\"cldr\",\n\t\t\t\"../globalize\",\n\t\t\t\"./number\",\n\t\t\t\"cldr/event\",\n\t\t\t\"cldr/supplemental\"\n\t\t], factory );\n\t} else if ( typeof exports === \"object\" ) {\n\n\t\t// Node, CommonJS\n\t\tmodule.exports = factory( require( \"make-plural/cardinals\" ), require( \"cldrjs\" ), require( \"../globalize\" ));\n\t} else {\n\n\t\t// Extend global\n\t\tfactory( root.cardinals, root.Cldr, root.Globalize );\n\t}\n}(this, function( cardinals, Cldr, Globalize ) {\n\nvar formatMessage = Globalize._formatMessage,\n\truntimeBind = Globalize._runtimeBind,\n\tvalidateCldr = Globalize._validateCldr,\n\tvalidateDefaultLocale = Globalize._validateDefaultLocale,\n\tvalidateParameterPresence = Globalize._validateParameterPresence,\n\tvalidateParameterTypeString = Globalize._validateParameterTypeString,\n\tvalidateParameterTypeNumber = Globalize._validateParameterTypeNumber;\n\n\n/**\n * format( value, numberFormatter, pluralGenerator, properties )\n *\n * @value [Number] The number to format\n *\n * @numberFormatter [String] A numberFormatter from Globalize.numberFormatter\n *\n * @properties [Object] containing relative time plural message.\n *\n * @cldr [Object] containing CLDR object.\n * Format relative time.\n */\nvar relativeTimeFormat = function( value, cldr, numberFormatter, properties) {\n\tvar relativeTime,\n\t\tmessage = properties[ \"relative-type-\" + value ];\n\n\tif ( message ) {\n\t\treturn message;\n\t}\n\n\trelativeTime = value <= 0 ? properties[ \"relativeTime-type-past\" ] :\n\t\tproperties[ \"relativeTime-type-future\" ];\n\n\tvalue = Math.abs( value );\n\n\tvar locale = cldr.locale.replace(/-.*/, \"\");\n var cardinaleVal = cardinals[ locale ](value);\n\n\tmessage = relativeTime[ \"relativeTimePattern-count-\" + cardinaleVal ];\n\treturn formatMessage( message, [ numberFormatter( value ) ] );\n};\n\n\n\n\nvar relativeTimeFormatterFn = function( cldr, numberFormatter, properties ) {\n\treturn function relativeTimeFormatter( value ) {\n\t\tvalidateParameterPresence( value, \"value\" );\n\t\tvalidateParameterTypeNumber( value, \"value\" );\n\n\t\treturn relativeTimeFormat( value, cldr, numberFormatter, properties );\n\t};\n\n};\n\n\n\n\n/**\n * properties( unit, cldr, options )\n *\n * @unit [String] eg. \"day\", \"week\", \"month\", etc.\n *\n * @cldr [Cldr instance].\n *\n * @options [Object]\n * - form: [String] eg. \"short\" or \"narrow\". Or falsy for default long form.\n *\n * Return relative time properties.\n */\nvar relativeTimeProperties = function( unit, cldr, options ) {\n\n\tvar form = options.form,\n\t\traw, properties, key, match;\n\n\tif ( form ) {\n\t\tunit = unit + \"-\" + form;\n\t}\n\n\traw = cldr.main( [ \"dates\", \"fields\", unit ] );\n\tproperties = {\n\t\t\"relativeTime-type-future\": raw[ \"relativeTime-type-future\" ],\n\t\t\"relativeTime-type-past\": raw[ \"relativeTime-type-past\" ]\n\t};\n\tfor ( key in raw ) {\n\t\tif ( raw.hasOwnProperty( key ) ) {\n\t\t\tmatch = /relative-type-(-?[0-9]+)/.exec( key );\n\t\t\tif ( match ) {\n\t\t\t\tproperties[ key ] = raw[ key ];\n\t\t\t}\n\t\t}\n\t}\n\n\treturn properties;\n};\n\n\n\n\n/**\n * .formatRelativeTime( value, unit [, options] )\n *\n * @value [Number] The number of unit to format.\n *\n * @unit [String] see .relativeTimeFormatter() for details.\n *\n * @options [Object] see .relativeTimeFormatter() for details.\n *\n * Formats a relative time according to the given unit, options, and the default/instance locale.\n */\nGlobalize.formatRelativeTime =\nGlobalize.prototype.formatRelativeTime = function( value, unit, options ) {\n\tvalidateParameterPresence( value, \"value\" );\n\tvalidateParameterTypeNumber( value, \"value\" );\n\n\treturn this.relativeTimeFormatter( unit, options )( value );\n};\n\n/**\n * .relativeTimeFormatter( unit [, options ])\n *\n * @unit [String] String value indicating the unit to be formatted. eg. \"day\", \"week\", \"month\", etc.\n *\n * @options [Object]\n * - form: [String] eg. \"short\" or \"narrow\". Or falsy for default long form.\n *\n * Returns a function that formats a relative time according to the given unit, options, and the\n * default/instance locale.\n */\nGlobalize.relativeTimeFormatter =\nGlobalize.prototype.relativeTimeFormatter = function( unit, options ) {\n\tvar args, cldr, numberFormatter, properties, returnFn;\n\n\tvalidateParameterPresence( unit, \"unit\" );\n\tvalidateParameterTypeString( unit, \"unit\" );\n\n\tcldr = this.cldr;\n\toptions = options || {};\n\n\targs = [ unit, options ];\n\n\tvalidateDefaultLocale( cldr );\n\n\tcldr.on( \"get\", validateCldr );\n\ttry {\n\t\tproperties = relativeTimeProperties( unit, cldr, options );\n\t} finally {\n\t\tcldr.off( \"get\", validateCldr );\n\t}\n\n\tnumberFormatter = this.numberFormatter( options );\n\n\treturnFn = relativeTimeFormatterFn( cldr, numberFormatter, properties);\n\n\truntimeBind( args, cldr, returnFn, [ cldr, numberFormatter, properties ] );\n\n\treturn returnFn;\n};\n\nreturn Globalize;\n\n\n\n\n}));\n","/**\n * Globalize v2.0.0\n *\n * https://github.com/globalizejs/globalize\n *\n * Copyright OpenJS Foundation and other contributors\n * Released under the MIT license\n * https://jquery.org/license\n *\n * Date: @DATE\n */\n/*!\n * Globalize v2.0.0 @DATE Released under the MIT license\n * https://github.com/globalizejs/globalize\n */\n(function( root, factory ) {\n\n\t// UMD returnExports\n\tif ( typeof define === \"function\" && define.amd ) {\n\n\t\t// AMD\n\t\tdefine([\n\t\t\t\"make-plural/cardinals\",\n\t\t\t\"cldr\",\n\t\t\t\"../globalize\",\n\t\t\t\"./number\"\n\t\t], factory );\n\t} else if ( typeof exports === \"object\" ) {\n\n\t\t// Node, CommonJS\n\t\tmodule.exports = factory( require( \"make-plural/cardinals\" ), require( \"cldrjs\" ), require( \"../globalize\" ) );\n\t} else {\n\n\t\t// Extend global\n\t\tfactory( root.cardinals, root.Cldr, root.Globalize );\n\t}\n}(this, function( cardinals, Cldr, Globalize ) {\n\nvar formatMessage = Globalize._formatMessage,\n\truntimeBind = Globalize._runtimeBind,\n\tvalidateParameterPresence = Globalize._validateParameterPresence,\n\tvalidateParameterTypePlainObject = Globalize._validateParameterTypePlainObject,\n\tvalidateParameterTypeNumber = Globalize._validateParameterTypeNumber,\n\tvalidateParameterTypeString = Globalize._validateParameterTypeString;\n\n\n/**\n * format( value, numberFormatter, pluralGenerator, unitProperies )\n *\n * @value [Number]\n *\n * @numberFormatter [Object]: A numberFormatter from Globalize.numberFormatter.\n *\n * @unitProperies [Object]: localized unit data from cldr.\n *\n * @cldr [Object]: CLDR object\n *\n * Format units such as seconds, minutes, days, weeks, etc.\n *\n * OBS:\n *\n * Unit Sequences are not implemented.\n * http://www.unicode.org/reports/tr35/tr35-35/tr35-general.html#Unit_Sequences\n *\n * Duration Unit (for composed time unit durations) is not implemented.\n * http://www.unicode.org/reports/tr35/tr35-35/tr35-general.html#durationUnit\n */\nvar unitFormat = function( value, cldr, numberFormatter, unitProperties ) {\n\tvar compoundUnitPattern = unitProperties.compoundUnitPattern, dividend, dividendProperties,\n\t\tformattedValue, divisor, divisorProperties, message, oneProperty;\n\n\tvar locale = cldr.locale.replace(/-.*/, \"\");\n var unitPlural = cardinals[ locale ](value);\n\tunitProperties = unitProperties.unitProperties;\n\tformattedValue = numberFormatter( value );\n\n\t// computed compound unit, eg. \"megabyte-per-second\".\n\tif ( unitProperties instanceof Array ) {\n\t\tdividendProperties = unitProperties[ 0 ];\n\t\tdivisorProperties = unitProperties[ 1 ];\n\t\toneProperty = divisorProperties.hasOwnProperty( \"one\" ) ? \"one\" : \"other\";\n\n\t\tdividend = formatMessage( dividendProperties[ unitPlural ], [ formattedValue ] );\n\t\tdivisor = formatMessage( divisorProperties[ oneProperty ], [ \"\" ] ).trim();\n\n\t\treturn formatMessage( compoundUnitPattern, [ dividend, divisor ] );\n\t}\n\n\tmessage = unitProperties[ unitPlural ];\n\n\treturn formatMessage( message, [ formattedValue ] );\n};\n\n\n\n\nvar unitFormatterFn = function( cldr, numberFormatter, unitProperties ) {\n\treturn function unitFormatter( value ) {\n\t\tvalidateParameterPresence( value, \"value\" );\n\t\tvalidateParameterTypeNumber( value, \"value\" );\n\n\t\treturn unitFormat( value, cldr, numberFormatter, unitProperties );\n\t};\n\n};\n\n\n\n\n/**\n * categories()\n *\n * Return all unit categories.\n */\nvar unitCategories = [ \"acceleration\", \"angle\", \"area\", \"digital\", \"duration\", \"length\", \"mass\", \"power\",\n\"pressure\", \"speed\", \"temperature\", \"volume\" ];\n\n\n\n\nfunction stripPluralGarbage( data ) {\n\tvar aux, pluralCount;\n\n\tif ( data ) {\n\t\taux = {};\n\t\tfor ( pluralCount in data ) {\n\t\t\taux[ pluralCount.replace( /unitPattern-count-/, \"\" ) ] = data[ pluralCount ];\n\t\t}\n\t}\n\n\treturn aux;\n}\n\n/**\n * get( unit, form, cldr )\n *\n * @unit [String] The full type-unit name (eg. duration-second), or the short unit name\n * (eg. second).\n *\n * @form [String] A string describing the form of the unit representation (eg. long,\n * short, narrow).\n *\n * @cldr [Cldr instance].\n *\n * Return the plural map of a unit, eg: \"second\"\n * { \"one\": \"{0} second\",\n * \"other\": \"{0} seconds\" }\n * }\n *\n * Or the Array of plural maps of a compound-unit, eg: \"foot-per-second\"\n * [ { \"one\": \"{0} foot\",\n * \"other\": \"{0} feet\" },\n * { \"one\": \"{0} second\",\n * \"other\": \"{0} seconds\" } ]\n *\n * Uses the precomputed form of a compound-unit if available, eg: \"mile-per-hour\"\n * { \"displayName\": \"miles per hour\",\n * \"unitPattern-count-one\": \"{0} mile per hour\",\n * \"unitPattern-count-other\": \"{0} miles per hour\"\n * },\n *\n * Also supports \"/\" instead of \"-per-\", eg. \"foot/second\", using the precomputed form if\n * available.\n *\n * Or the Array of plural maps of a compound-unit, eg: \"foot-per-second\"\n * [ { \"one\": \"{0} foot\",\n * \"other\": \"{0} feet\" },\n * { \"one\": \"{0} second\",\n * \"other\": \"{0} seconds\" } ]\n *\n * Or undefined in case the unit (or a unit of the compound-unit) doesn't exist.\n */\nvar get = function( unit, form, cldr ) {\n\tvar ret;\n\n\t// Ensure that we get the 'precomputed' form, if present.\n\tunit = unit.replace( /\\//, \"-per-\" );\n\n\t// Get unit or -unit (eg. \"duration-second\").\n\t[ \"\" ].concat( unitCategories ).some(function( category ) {\n\t\treturn ret = cldr.main([\n\t\t\t\"units\",\n\t\t\tform,\n\t\t\tcategory.length ? category + \"-\" + unit : unit\n\t\t]);\n\t});\n\n\t// Rename keys s/unitPattern-count-//g.\n\tret = stripPluralGarbage( ret );\n\n\t// Compound Unit, eg. \"foot-per-second\" or \"foot/second\".\n\tif ( !ret && ( /-per-/ ).test( unit ) ) {\n\n\t\t// \"Some units already have 'precomputed' forms, such as kilometer-per-hour;\n\t\t// where such units exist, they should be used in preference\" UTS#35.\n\t\t// Note that precomputed form has already been handled above (!ret).\n\n\t\t// Get both recursively.\n\t\tunit = unit.split( \"-per-\" );\n\t\tret = unit.map(function( unit ) {\n\t\t\treturn get( unit, form, cldr );\n\t\t});\n\t\tif ( !ret[ 0 ] || !ret[ 1 ] ) {\n\t\t\treturn;\n\t\t}\n\t}\n\n\treturn ret;\n};\n\nvar unitGet = get;\n\n\n\n\n/**\n * properties( unit, form, cldr )\n *\n * @unit [String] The full type-unit name (eg. duration-second), or the short unit name\n * (eg. second).\n *\n * @form [String] A string describing the form of the unit representation (eg. long,\n * short, narrow).\n *\n * @cldr [Cldr instance].\n */\nvar unitProperties = function( unit, form, cldr ) {\n\tvar compoundUnitPattern, unitProperties;\n\n\tcompoundUnitPattern = cldr.main( [ \"units\", form, \"per/compoundUnitPattern\" ] );\n\tunitProperties = unitGet( unit, form, cldr );\n\n\treturn {\n\t\tcompoundUnitPattern: compoundUnitPattern,\n\t\tunitProperties: unitProperties\n\t};\n};\n\n\n\n\n/**\n * Globalize.formatUnit( value, unit, options )\n *\n * @value [Number]\n *\n * @unit [String]: The unit (e.g \"second\", \"day\", \"year\")\n *\n * @options [Object]\n * - form: [String] \"long\", \"short\" (default), or \"narrow\".\n *\n * Format units such as seconds, minutes, days, weeks, etc.\n */\nGlobalize.formatUnit =\nGlobalize.prototype.formatUnit = function( value, unit, options ) {\n\tvalidateParameterPresence( value, \"value\" );\n\tvalidateParameterTypeNumber( value, \"value\" );\n\n\treturn this.unitFormatter( unit, options )( value );\n};\n\n/**\n * Globalize.unitFormatter( unit, options )\n *\n * @unit [String]: The unit (e.g \"second\", \"day\", \"year\")\n *\n * @options [Object]\n * - form: [String] \"long\", \"short\" (default), or \"narrow\".\n *\n * - numberFormatter: [Function] a number formatter function. Defaults to Globalize\n * `.numberFormatter()` for the current locale using the default options.\n */\nGlobalize.unitFormatter =\nGlobalize.prototype.unitFormatter = function( unit, options ) {\n\tvar args, form, numberFormatter, returnFn, properties;\n\n\tvalidateParameterPresence( unit, \"unit\" );\n\tvalidateParameterTypeString( unit, \"unit\" );\n\n\tvalidateParameterTypePlainObject( options, \"options\" );\n\n\toptions = options || {};\n\n\targs = [ unit, options ];\n\tform = options.form || \"long\";\n\tproperties = unitProperties( unit, form, this.cldr );\n\n\tnumberFormatter = options.numberFormatter || this.numberFormatter();\n\treturnFn = unitFormatterFn( this.cldr, numberFormatter, properties );\n\n\truntimeBind( args, this.cldr, returnFn, [ this.cldr, numberFormatter, properties ] );\n\n\treturn returnFn;\n};\n\nreturn Globalize;\n\n\n\n\n}));\n","/*!\n * Globalize v2.0.0\n *\n * https://github.com/globalizejs/globalize\n *\n * Copyright OpenJS Foundation and other contributors\n * Released under the MIT license\n * https://jquery.org/license\n *\n * Date: @DATE\n */\n\n// Core\nmodule.exports = require( \"./globalize\" );\n\n// Extent core with the following modules\n// require( \"./globalize/message\" );\nrequire( \"./globalize/number\" );\nrequire( \"./globalize/plural\" );\n\n// Load after globalize/number\nrequire( \"./globalize/currency\" );\nrequire( \"./globalize/date\" );\n\n// Load after globalize/number and globalize/plural\nrequire( \"./globalize/relative-time\" );\nrequire( \"./globalize/unit\" );\n","import _extends from '@babel/runtime/helpers/esm/extends';\nimport _objectWithoutProperties from '@babel/runtime/helpers/esm/objectWithoutProperties';\nimport React, { useMemo, useState, useEffect } from 'react';\nimport { css, useTheme, jsx } from '@emotion/react';\nimport _taggedTemplateLiteral from '@babel/runtime/helpers/esm/taggedTemplateLiteral';\nimport { math } from 'polished';\nimport { textStyles } from '@paypalcorp/pp-react-text';\nimport { devWarning, utilStyles } from '@paypalcorp/pp-react-utils';\nimport _slicedToArray from '@babel/runtime/helpers/esm/slicedToArray';\nimport { ChevronDownIcon } from '@paypalcorp/pp-react-icons';\n\nvar _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10;\nfunction styles(tokens) {\n /* istanbul ignore next */\n if (!Object.keys(tokens).length) {\n devWarning('Missing Emotion theme. Use ThemeProvider from @emotion/react to pass a valid theme from pp-react.');\n return {};\n }\n\n var sysSpaceXs = tokens.sysSpaceXs,\n sysSpaceLg = tokens.sysSpaceLg,\n sysColorBackgroundMediumContrast = tokens.sysColorBackgroundMediumContrast,\n sysColorBackgroundHighContrast = tokens.sysColorBackgroundHighContrast,\n sysMotionDurationMoveSmall = tokens.sysMotionDurationMoveSmall;\n\n var _utilStyles = utilStyles(tokens),\n focusStyles = _utilStyles.focusStyles,\n variables = _utilStyles.variables;\n\n var _textStyles = textStyles(tokens),\n textBody = _textStyles.body,\n headingSm = _textStyles.headingSm,\n title = _textStyles.title;\n\n var ppuiEaseMoveSmall = variables.ppuiEaseMoveSmall;\n var headerPaddingRight = math(\"\".concat(sysSpaceLg, \" * 3.25\"));\n var base = css(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n label: accordion_base;\\n width: 100%;\\n border-collapse: collapse;\\n \"])));\n var row = css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n label: row;\\n border: none;\\n \"])));\n var body = css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral([\"\\n label: body;\\n text-align: left;\\n max-height: 0;\\n overflow-y: hidden;\\n transition: max-height \", \" \", \";\\n\\n \", \";\\n p {\\n margin: 0;\\n }\\n\\n [dir='rtl'] & {\\n text-align: right;\\n }\\n \"])), sysMotionDurationMoveSmall, ppuiEaseMoveSmall, textBody({\n color: sysColorBackgroundHighContrast\n }));\n var bodyOpen = css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral([\"\\n label: body_open;\\n max-height: 125rem;\\n \"])));\n var innerBody = css(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral([\"\\n padding: 0 \", \" \", \";\\n padding-top: \", \";\\n \"])), sysSpaceLg, sysSpaceLg, sysSpaceXs);\n\n var getHeaderFont = function (size) {\n if (size === 'small') return css(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral([\"\\n \", \"\\n \"])), title({\n color: sysColorBackgroundHighContrast\n }));\n return css(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral([\"\\n \", \"\\n \"])), headingSm({\n color: sysColorBackgroundHighContrast\n }));\n };\n\n var header = function (size) {\n return css(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral([\"\\n label: header;\\n cursor: pointer;\\n word-break: break-word;\\n padding: \", \" \", \" \", \" \", \";\\n position: relative;\\n background: none;\\n border: none;\\n width: 100%;\\n display: flex;\\n align-items: center;\\n text-align: start;\\n \", \";\\n\\n &:focus {\\n \", \"\\n }\\n\\n &[aria-expanded='true'] {\\n &:before {\\n transform: rotateX(180deg);\\n }\\n }\\n\\n [dir='rtl'] & {\\n padding: \", \" \", \" \", \" \", \";\\n text-align: right;\\n }\\n \"])), sysSpaceLg, headerPaddingRight, sysSpaceLg, sysSpaceLg, getHeaderFont(size), focusStyles.focusInlineElement, sysSpaceLg, sysSpaceLg, sysSpaceLg, headerPaddingRight);\n };\n\n var svgIcon = css(_templateObject9 || (_templateObject9 = _taggedTemplateLiteral([\"\\n label: svg_icon;\\n color: \", \";\\n position: absolute;\\n right: \", \";\\n transition: transform \", \" \", \";\\n [dir='rtl'] & {\\n left: \", \";\\n right: auto;\\n }\\n \"])), sysColorBackgroundMediumContrast, sysSpaceLg, sysMotionDurationMoveSmall, ppuiEaseMoveSmall, sysSpaceLg);\n var iconRotate = css(_templateObject10 || (_templateObject10 = _taggedTemplateLiteral([\"\\n label: icon_rotate;\\n transform: rotate(180deg);\\n \"])));\n return {\n base: base,\n row: row,\n body: body,\n innerBody: innerBody,\n header: header,\n svgIcon: svgIcon,\n iconRotate: iconRotate,\n bodyOpen: bodyOpen\n };\n}\n\nvar _excluded = [\"name\", \"className\", \"children\", \"headerSize\"];\n\nvar Accordion = function (_ref) {\n var _ref$name = _ref.name,\n name = _ref$name === void 0 ? 'Accordion' : _ref$name,\n className = _ref.className,\n children = _ref.children,\n headerSize = _ref.headerSize,\n rest = _objectWithoutProperties(_ref, _excluded);\n\n var accordionRows = React.Children.map(children, function (child, index) {\n return React.cloneElement(child, {\n accordionName: name,\n rowNumber: index + 1,\n headerSize: headerSize\n });\n });\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n return jsx(\"div\", _extends({\n css: _styles.base,\n className: className,\n \"data-ppui-info\": \"accordion_3.7.7\"\n }, rest), accordionRows);\n};\n\nvar _excluded$1 = [\"accordionName\", \"heading\", \"rowNumber\", \"className\", \"headerClassName\", \"contentClassName\", \"iconClassName\", \"isOpen\", \"onClick\", \"children\", \"headerSize\"];\n\nvar AccordionRow = function (_ref) {\n var accordionName = _ref.accordionName,\n _ref$heading = _ref.heading,\n heading = _ref$heading === void 0 ? 'Heading' : _ref$heading,\n rowNumber = _ref.rowNumber,\n className = _ref.className,\n headerClassName = _ref.headerClassName,\n contentClassName = _ref.contentClassName,\n iconClassName = _ref.iconClassName,\n _ref$isOpen = _ref.isOpen,\n isOpen = _ref$isOpen === void 0 ? false : _ref$isOpen,\n onClick = _ref.onClick,\n children = _ref.children,\n _ref$headerSize = _ref.headerSize,\n headerSize = _ref$headerSize === void 0 ? 'large' : _ref$headerSize,\n rest = _objectWithoutProperties(_ref, _excluded$1);\n\n var _useState = useState(isOpen),\n _useState2 = _slicedToArray(_useState, 2),\n show = _useState2[0],\n setShowState = _useState2[1];\n\n var handleClick = function (event) {\n if (onClick) {\n onClick(event, parseInt(rowNumber, 10), !show);\n }\n\n setShowState(!show);\n };\n\n useEffect(function () {\n setShowState(isOpen);\n }, [isOpen]); // If theme is not directly provided, get from themeContext\n\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n var stylesBody = [_styles.body, show && _styles.bodyOpen];\n var stylesSvgIcon = [_styles.svgIcon, show && _styles.iconRotate];\n var rowId = \"\".concat(accordionName, \"-row\").concat(rowNumber);\n var contentId = \"\".concat(accordionName, \"-content\").concat(rowNumber);\n return jsx(\"div\", {\n css: _styles.row,\n className: className,\n \"data-ppui\": \"true\"\n }, jsx(\"button\", _extends({\n type: \"button\",\n id: rowId,\n css: _styles.header(headerSize),\n className: headerClassName,\n \"data-row\": rowNumber,\n \"aria-expanded\": show,\n \"aria-controls\": contentId,\n onClick: function (e) {\n return handleClick(e);\n }\n }, rest, {\n \"data-ppui\": \"true\"\n }), heading, jsx(ChevronDownIcon, {\n size: \"sm\",\n css: stylesSvgIcon,\n className: iconClassName,\n \"aria-hidden\": \"true\",\n \"data-ppui\": \"true\"\n })), jsx(\"div\", {\n id: contentId,\n css: stylesBody,\n \"aria-labelledby\": rowId,\n role: \"region\",\n className: contentClassName,\n \"aria-hidden\": !show,\n \"data-ppui\": \"true\"\n }, jsx(\"div\", {\n css: _styles.innerBody,\n \"data-ppui\": \"true\"\n }, children)));\n};\n\nexport { Accordion, AccordionRow, styles as accordionStyles };\n","import _extends from '@babel/runtime/helpers/esm/extends';\nimport _objectWithoutProperties from '@babel/runtime/helpers/esm/objectWithoutProperties';\nimport React, { useMemo, useState } from 'react';\nimport { IconButton } from '@paypalcorp/pp-react-icon-button';\nimport { CloseIcon, InformationIcon, CheckmarkBackgroundIcon, WarningIcon, CriticalIcon } from '@paypalcorp/pp-react-icons';\nimport { css, useTheme, jsx } from '@emotion/react';\nimport _taggedTemplateLiteral from '@babel/runtime/helpers/esm/taggedTemplateLiteral';\nimport { math } from 'polished';\nimport { textStyles } from '@paypalcorp/pp-react-text';\nimport { devWarning, getColorFamily, ColorProvider } from '@paypalcorp/pp-react-utils';\nimport _defineProperty from '@babel/runtime/helpers/esm/defineProperty';\nimport _slicedToArray from '@babel/runtime/helpers/esm/slicedToArray';\n\nvar _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8;\nfunction styles(tokens) {\n /* istanbul ignore next */\n if (!Object.keys(tokens).length) {\n devWarning('Missing Emotion theme. Use ThemeProvider from @emotion/react to pass a valid theme from pp-react.');\n return {};\n }\n\n var sysSpaceXs = tokens.sysSpaceXs,\n sysSpaceSm = tokens.sysSpaceSm,\n sysSpaceMd = tokens.sysSpaceMd,\n sysSpaceLg = tokens.sysSpaceLg,\n sysSizeFieldSm = tokens.sysSizeFieldSm,\n sysSizeIconSm = tokens.sysSizeIconSm,\n sysTypographyBodySize = tokens.sysTypographyBodySize,\n sysBorderThicknessNormal = tokens.sysBorderThicknessNormal,\n sysBorderRadiusLg = tokens.sysBorderRadiusLg,\n sysColorSystemMain = tokens.sysColorSystemMain,\n sysColorSystemMainActive = tokens.sysColorSystemMainActive,\n sysColorInfoMain = tokens.sysColorInfoMain,\n sysColorInfoContrast = tokens.sysColorInfoContrast,\n sysColorSuccessMain = tokens.sysColorSuccessMain,\n sysColorSuccessContrast = tokens.sysColorSuccessContrast,\n sysColorWarningMain = tokens.sysColorWarningMain,\n sysColorWarningContrast = tokens.sysColorWarningContrast,\n sysColorErrorMain = tokens.sysColorErrorMain,\n sysColorErrorContrast = tokens.sysColorErrorContrast;\n\n var _textStyles = textStyles(tokens),\n textBody = _textStyles.body;\n\n var alertPaddingRightSpacing = math(\"\".concat(sysSpaceXs, \" * 2\"));\n var alertPaddingRight = math(\" \".concat(alertPaddingRightSpacing, \" + \").concat(sysSizeFieldSm));\n var alertPaddingLeft = math(\"\".concat(sysSpaceLg, \" + \").concat(sysTypographyBodySize, \" + \").concat(sysSpaceMd));\n var alertPaddingTop = math(\"\".concat(sysSpaceLg, \" - \").concat(sysBorderThicknessNormal));\n var alertPaddingBottom = math(\"\".concat(sysSpaceLg, \" - \").concat(sysBorderThicknessNormal));\n var alertPaddingRightWithoutClose = math(\"\".concat(sysSpaceLg, \" - \").concat(sysBorderThicknessNormal));\n var alertIconSpaceLeft = math(\"\".concat(sysSpaceLg, \"- \").concat(sysBorderThicknessNormal));\n var sysAlertCloseBtnSpaceTop = math(\"\".concat(sysSpaceSm, \" - \").concat(sysBorderThicknessNormal));\n var sysAlertCloseBtnSpaceRight = math(\"\".concat(sysSpaceSm, \" - \").concat(sysBorderThicknessNormal));\n var sysAlertIconSvgSpaceTop = math(\"\".concat(sysSpaceLg, \"- \").concat(sysBorderThicknessNormal));\n var base = css(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n label: alert_base;\\n box-sizing: border-box;\\n padding: \", \" \", \" \", \"\\n \", \";\\n border-width: \", \";\\n border-style: solid;\\n border-radius: \", \";\\n position: relative;\\n text-align: initial;\\n \", \";\\n\\n [dir='rtl'] & {\\n padding-left: \", \";\\n padding-right: \", \";\\n\\n &:before {\\n left: auto;\\n right: \", \";\\n }\\n }\\n \"])), alertPaddingTop, alertPaddingRight, alertPaddingBottom, alertPaddingLeft, sysBorderThicknessNormal, sysBorderRadiusLg, textBody({\n color: sysColorSystemMain\n }), alertPaddingRight, alertPaddingLeft, alertIconSpaceLeft);\n var svgIcon = css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n label: svg_icon;\\n display: inline-block;\\n position: absolute;\\n left: \", \";\\n text-align: center;\\n color: \", \";\\n line-height: \", \";\\n font-size: \", \";\\n top: \", \";\\n vertical-align: middle;\\n\\n [dir='rtl'] & {\\n left: auto;\\n right: \", \";\\n }\\n \"])), alertIconSpaceLeft, sysColorSystemMainActive, sysSizeIconSm, sysSizeIconSm, sysAlertIconSvgSpaceTop, alertIconSpaceLeft);\n var closeBtn = css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral([\"\\n label: close_btn;\\n position: absolute;\\n top: \", \";\\n right: \", \";\\n\\n [dir='rtl'] & {\\n left: \", \";\\n right: auto;\\n }\\n \"])), sysAlertCloseBtnSpaceTop, sysAlertCloseBtnSpaceRight, sysAlertCloseBtnSpaceRight);\n\n var alertColor = function (backgroundColor, color) {\n return css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral([\"\\n border: none;\\n background-color: \", \";\\n color: \", \";\\n \"])), backgroundColor, color);\n };\n\n var alertType = function (type) {\n var colorMap = {\n info: alertColor(sysColorInfoMain, sysColorInfoContrast),\n warning: alertColor(sysColorWarningMain, sysColorWarningContrast),\n success: alertColor(sysColorSuccessMain, sysColorSuccessContrast),\n error: alertColor(sysColorErrorMain, sysColorErrorContrast)\n };\n return css(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral([\"\\n label: \", \";\\n \", \";\\n \"])), type, colorMap[type]);\n };\n\n var iconColor = function (color) {\n return css(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral([\"\\n color: \", \";\\n \"])), color);\n };\n\n var alertIcon = function (type) {\n var iconMap = {\n info: iconColor(sysColorInfoContrast),\n warning: iconColor(sysColorWarningContrast),\n success: iconColor(sysColorSuccessContrast),\n error: iconColor(sysColorErrorContrast)\n };\n var classLabel = \"\".concat(type, \"_icon\");\n return css(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral([\"\\n label: \", \";\\n \", \";\\n \"])), classLabel, iconMap[type]);\n };\n\n var noCloseBtn = css(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral([\"\\n label: no_close_btn;\\n padding-right: \", \";\\n [dir='rtl'] & {\\n padding-left: \", \";\\n padding-right: \", \";\\n }\\n \"])), alertPaddingRightWithoutClose, alertPaddingRightWithoutClose, alertPaddingLeft);\n return {\n base: base,\n svgIcon: svgIcon,\n closeBtn: closeBtn,\n noCloseBtn: noCloseBtn,\n alertType: alertType,\n alertIcon: alertIcon\n };\n}\n\nvar _excluded = [\"className\", \"type\", \"typeIconAriaLabel\", \"closeButton\", \"closeButtonLabel\", \"children\"];\nvar icons = {\n info: InformationIcon,\n success: CheckmarkBackgroundIcon,\n warning: WarningIcon,\n error: CriticalIcon\n};\n\nvar Alert = function (_ref) {\n var _styles$alertType, _styles$alertIcon;\n\n var className = _ref.className,\n _ref$type = _ref.type,\n type = _ref$type === void 0 ? 'info' : _ref$type,\n _ref$typeIconAriaLabe = _ref.typeIconAriaLabel,\n typeIconAriaLabel = _ref$typeIconAriaLabe === void 0 ? type : _ref$typeIconAriaLabe,\n closeButton = _ref.closeButton,\n _ref$closeButtonLabel = _ref.closeButtonLabel,\n closeButtonLabel = _ref$closeButtonLabel === void 0 ? 'close alert' : _ref$closeButtonLabel,\n children = _ref.children,\n rest = _objectWithoutProperties(_ref, _excluded);\n\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n var AlertStatusIcon = icons[type];\n var alertCSSVal = [_styles.base, (_styles$alertType = _styles.alertType) === null || _styles$alertType === void 0 ? void 0 : _styles$alertType.call(_styles, type), !closeButton && _styles.noCloseBtn];\n var closeBtnEl;\n\n if (closeButton) {\n var otherProps = _extends({}, closeButton);\n\n var alertCloseBtnCSSVal = [_styles.closeBtn];\n closeBtnEl = closeButton && jsx(\"span\", {\n \"data-ppui\": \"true\"\n }, jsx(IconButton, _extends({\n css: alertCloseBtnCSSVal,\n buttonType: \"tertiary\",\n size: \"sm\",\n svgIconComponent: CloseIcon\n }, otherProps, {\n \"data-ppui\": \"true\"\n }), closeButtonLabel));\n }\n\n var alertSvgCSSVal = [_styles.svgIcon, (_styles$alertIcon = _styles.alertIcon) === null || _styles$alertIcon === void 0 ? void 0 : _styles$alertIcon.call(_styles, type)];\n var alert = jsx(\"div\", _extends({\n role: \"alert\",\n css: alertCSSVal,\n className: className,\n \"data-ppui-info\": \"alert_3.4.6\"\n }, rest), jsx(AlertStatusIcon, {\n size: \"sm\",\n css: alertSvgCSSVal,\n role: \"img\",\n \"aria-label\": typeIconAriaLabel,\n \"data-ppui\": \"true\"\n }), children, closeBtnEl);\n var colorFamily = getColorFamily({\n info: 'Info',\n warning: 'Warning',\n success: 'Success',\n error: 'Error'\n }[type], tokens);\n return jsx(ColorProvider, {\n colorFamily: colorFamily,\n \"data-ppui\": \"true\"\n }, alert);\n};\n\nvar _excluded$1 = [\"className\", \"type\", \"typeIconAriaLabel\", \"closeButton\", \"closeButtonLabel\", \"children\"];\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nvar DismissibleAlert = function (_ref) {\n var className = _ref.className,\n _ref$type = _ref.type,\n type = _ref$type === void 0 ? 'info' : _ref$type,\n _ref$typeIconAriaLabe = _ref.typeIconAriaLabel,\n typeIconAriaLabel = _ref$typeIconAriaLabe === void 0 ? type : _ref$typeIconAriaLabe,\n _ref$closeButton = _ref.closeButton,\n closeButton = _ref$closeButton === void 0 ? {} : _ref$closeButton,\n _ref$closeButtonLabel = _ref.closeButtonLabel,\n closeButtonLabel = _ref$closeButtonLabel === void 0 ? 'close alert' : _ref$closeButtonLabel,\n children = _ref.children,\n rest = _objectWithoutProperties(_ref, _excluded$1);\n\n var _useState = useState(true),\n _useState2 = _slicedToArray(_useState, 2),\n showAlert = _useState2[0],\n setShowAlert = _useState2[1];\n\n var closeBtnProps = _objectSpread({}, closeButton);\n\n closeBtnProps.onClick = function (event) {\n if (closeButton && closeButton.onClick) {\n closeButton.onClick(event);\n }\n\n setShowAlert(false);\n };\n\n return showAlert && /*#__PURE__*/React.createElement(Alert, _extends({\n className: className,\n type: type,\n typeIconAriaLabel: typeIconAriaLabel,\n closeButton: closeBtnProps,\n closeButtonLabel: closeButtonLabel\n }, rest, {\n \"data-ppui\": \"true\"\n }), children);\n};\n\nexport { Alert, DismissibleAlert, styles as alertStyles };\n","import _defineProperty from '@babel/runtime/helpers/esm/defineProperty';\nimport _slicedToArray from '@babel/runtime/helpers/esm/slicedToArray';\nimport React, { useState, useRef, useEffect, useLayoutEffect } from 'react';\nimport { uniqueId, devWarning } from '@paypalcorp/pp-react-utils';\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nvar Animator = function (_ref) {\n var _ref$id = _ref.id,\n id = _ref$id === void 0 ? uniqueId('animatee#') : _ref$id,\n _ref$shouldHide = _ref.shouldHide,\n shouldHide = _ref$shouldHide === void 0 ? false : _ref$shouldHide,\n onOpen = _ref.onOpen,\n onClose = _ref.onClose,\n _ref$onCloseComplete = _ref.onCloseComplete,\n onCloseComplete = _ref$onCloseComplete === void 0 ? onClose : _ref$onCloseComplete,\n _ref$phaseProps = _ref.phaseProps,\n phaseProps = _ref$phaseProps === void 0 ? {\n initial: {\n isHidden: true\n },\n showing: {\n isHidden: false\n },\n hiding: {\n isHidden: true\n }\n } : _ref$phaseProps,\n children = _ref.children;\n\n var _useState = useState('initial'),\n _useState2 = _slicedToArray(_useState, 2),\n currentPhase = _useState2[0],\n setCurrentPhase = _useState2[1];\n\n var closeEvent = useRef({\n event: null,\n closeMethod: ''\n });\n var animatee = useRef(id);\n var fallbackTimer = useRef(null);\n useEffect(function () {\n // istanbul ignore next\n if (process.env.NODE_ENV !== 'production') {\n if (onClose) {\n // eslint-disable-next-line no-console\n devWarning('onClose() has been renamed onCloseComplete(), please update your code');\n }\n }\n }); // If we're done hiding, tell the app that it's safe to remove us from the DOM\n\n var finishClose = function () {\n // istanbul ignore next\n if (fallbackTimer.current) {\n clearTimeout(fallbackTimer.current);\n fallbackTimer.current = null;\n }\n /* istanbul ignore next */\n\n\n var _ref2 = closeEvent.current || {},\n event = _ref2.event,\n closeMethod = _ref2.closeMethod; // istanbul ignore next\n\n\n setCurrentPhase(function (oldPhase) {\n // Since we have the failsafe (see below), we must make sure\n // that we don't send the notification twice...\n if (oldPhase !== 'initial') {\n if (typeof onCloseComplete === 'function') {\n onCloseComplete(event, closeMethod);\n }\n\n return 'initial';\n }\n\n return oldPhase;\n });\n };\n\n useLayoutEffect(function () {\n if (!shouldHide && currentPhase === 'initial') {\n setCurrentPhase('showing');\n }\n\n if (shouldHide && currentPhase !== 'initial') {\n closeEvent.current.closeMethod = 'caller';\n setCurrentPhase('hiding');\n }\n }, [shouldHide]);\n\n var onAnimationEnd = function (evt) {\n /* istanbul ignore else */\n if (evt.target.dataset.animatee === animatee.current) {\n if (currentPhase === 'hiding') {\n finishClose();\n } else if (typeof onOpen === 'function') {\n onOpen(evt); // Let app know entrance is complete and we're ready for action\n }\n\n evt.stopPropagation();\n evt.nativeEvent.stopImmediatePropagation();\n }\n };\n\n if (shouldHide && currentPhase === 'initial') {\n return null;\n }\n\n var childProps = _objectSpread({\n requestClose: function requestClose(evt, closedBy) {\n closeEvent.current.event = evt;\n closeEvent.current.closeMethod = closedBy;\n setCurrentPhase('hiding'); // Failsafe here in case the closing animation event gets dropped\n // or stomped upon. This mostly happens on Chrome but has been\n // seen on all browsers with rapid clicking of open/close\n // https://paypal.atlassian.net/browse/DTPAYPALUI-15339\n // --Love, BCC\n\n /* istanbul ignore next */\n\n fallbackTimer.current = setTimeout(function () {\n finishClose();\n }, 1000);\n },\n 'data-animatee': animatee.current\n }, phaseProps[currentPhase]);\n\n return /*#__PURE__*/React.createElement(\"div\", {\n \"data-testid\": \"animator\",\n onTransitionEnd: onAnimationEnd,\n onAnimationEnd: onAnimationEnd,\n \"data-ppui\": \"true\"\n }, children(childProps));\n};\n\nexport { Animator };\n","import _extends from '@babel/runtime/helpers/esm/extends';\nimport _objectWithoutProperties from '@babel/runtime/helpers/esm/objectWithoutProperties';\nimport { useMemo } from 'react';\nimport { css, useTheme, jsx } from '@emotion/react';\nimport { CriticalIcon, CheckmarkBackgroundSmIcon, ClockIcon, CriticalSmIcon, PreferredSelectedIcon } from '@paypalcorp/pp-react-icons';\nimport { devWarning, utilStyles, getColorFamily, ColorProvider } from '@paypalcorp/pp-react-utils';\nimport _taggedTemplateLiteral from '@babel/runtime/helpers/esm/taggedTemplateLiteral';\nimport { math } from 'polished';\nimport { textStyles } from '@paypalcorp/pp-react-text';\n\nvar _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11;\nfunction styles(tokens) {\n /* istanbul ignore next */\n if (!Object.keys(tokens).length) {\n devWarning('Missing Emotion theme. Use ThemeProvider from @emotion/react to pass a valid theme from pp-react.');\n return {};\n }\n\n var sysSpaceXs = tokens.sysSpaceXs,\n sysSpaceSm = tokens.sysSpaceSm,\n sysSizeIconXs = tokens.sysSizeIconXs,\n sysSpaceTiny = tokens.sysSpaceTiny,\n sysBorderRadiusMd = tokens.sysBorderRadiusMd,\n sysBorderThicknessEmphasis = tokens.sysBorderThicknessEmphasis,\n sysBorderThicknessNormal = tokens.sysBorderThicknessNormal,\n sysSizeCircleXs = tokens.sysSizeCircleXs,\n sysColorErrorMain = tokens.sysColorErrorMain,\n sysColorErrorContrast = tokens.sysColorErrorContrast,\n sysColorWarningMain = tokens.sysColorWarningMain,\n sysColorWarningContrast = tokens.sysColorWarningContrast,\n sysColorSuccessMain = tokens.sysColorSuccessMain,\n sysColorSuccessContrast = tokens.sysColorSuccessContrast,\n sysColorInfoMain = tokens.sysColorInfoMain,\n sysColorInfoContrast = tokens.sysColorInfoContrast,\n sysColorSpecialtyMain = tokens.sysColorSpecialtyMain,\n sysColorSpecialtyContrast = tokens.sysColorSpecialtyContrast,\n sysColorBackgroundMain = tokens.sysColorBackgroundMain,\n sysColorBackgroundSurface = tokens.sysColorBackgroundSurface,\n sysColorWarningAlt = tokens.sysColorWarningAlt;\n\n var _textStyles = textStyles(tokens),\n textCaption = _textStyles.caption;\n\n var _utilStyles = utilStyles(tokens),\n screenReader = _utilStyles.screenReader;\n\n // 288px\n var base = css(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n label: badge_base;\\n \", \"\\n max-width: \", \";\\n overflow: hidden;\\n word-break: break-word;\\n text-transform: none;\\n -webkit-line-clamp: 2;\\n display: -webkit-inline-box;\\n -webkit-box-orient: vertical;\\n height: auto;\\n padding: \", \" \", \";\\n border-radius: \", \";\\n [dir='rtl'] & {\\n text-align: right;\\n }\\n \"])), textCaption(), '18rem', sysSpaceTiny, sysSpaceSm, sysBorderRadiusMd);\n\n var badgeColor = function (backgroundColor, color) {\n return css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n color: \", \";\\n background-color: \", \";\\n \"])), color, backgroundColor);\n };\n\n var iconBadge = function (color) {\n return css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral([\"\\n color: \", \";\\n width: \", \";\\n height: \", \";\\n padding: \", \";\\n background-color: \", \";\\n border: \", \" solid \", \";\\n border-radius: 50%;\\n \"])), color, sysSizeCircleXs, sysSizeCircleXs, sysBorderThicknessNormal, sysColorBackgroundMain, sysBorderThicknessEmphasis, sysColorBackgroundSurface);\n };\n\n var badgeType = function (type) {\n var colorMap = {\n feature: badgeColor(sysColorSpecialtyMain, sysColorSpecialtyContrast),\n success: badgeColor(sysColorSuccessMain, sysColorSuccessContrast),\n warning: badgeColor(sysColorWarningMain, sysColorWarningContrast),\n critical: badgeColor(sysColorErrorMain, sysColorErrorContrast),\n neutral: badgeColor(sysColorInfoMain, sysColorInfoContrast)\n };\n return css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral([\"\\n label: \", \";\\n \", \";\\n \"])), type, colorMap[type]);\n };\n\n var paddingLeft = math(\"\".concat(sysSpaceSm, \" + \").concat(sysSizeIconXs, \" + \").concat(sysSpaceTiny));\n var leftIcon = css(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral([\"\\n label: left_icon;\\n position: relative;\\n padding-inline-start: \", \";\\n \"])), paddingLeft); //Note: additional 1px added to align the icon with the text.\n\n var iconVerticalSpacing = math(\"\".concat(sysSpaceTiny, \" + \").concat(sysBorderThicknessNormal));\n var icon = css(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral([\"\\n label: icon;\\n position: absolute;\\n inset-block: \", \";\\n inset-inline: \", \" auto;\\n \"])), iconVerticalSpacing, sysSpaceSm);\n var authorized = css(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral([\"\\n label: authorized;\\n \", \";\\n \"])), iconBadge(sysColorSuccessMain));\n var inProgress = css(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral([\"\\n label: in_progress;\\n \", \";\\n \"])), iconBadge(sysColorWarningAlt));\n var onHold = css(_templateObject9 || (_templateObject9 = _taggedTemplateLiteral([\"\\n label: on_hold;\\n \", \";\\n \"])), iconBadge(sysColorErrorMain));\n var favorite = css(_templateObject10 || (_templateObject10 = _taggedTemplateLiteral([\"\\n label: favorite;\\n \", \";\\n \"])), iconBadge(sysColorSpecialtyMain));\n var numeric = css(_templateObject11 || (_templateObject11 = _taggedTemplateLiteral([\"\\n label: numeric;\\n color: \", \";\\n background-color: \", \";\\n padding: 0 \", \";\\n height: \", \";\\n min-width: \", \";\\n border: \", \" solid \", \";\\n border-radius: \", \";\\n text-align: center;\\n [dir='rtl'] & {\\n text-align: center;\\n }\\n \"])), sysColorErrorContrast, sysColorErrorMain, sysSpaceXs, sysSizeCircleXs, sysSizeCircleXs, sysBorderThicknessEmphasis, sysColorBackgroundSurface, math(\"\".concat(sysSizeCircleXs, \"/2\")));\n return {\n base: base,\n badgeType: badgeType,\n leftIcon: leftIcon,\n icon: icon,\n screenReader: screenReader,\n authorized: authorized,\n inProgress: inProgress,\n onHold: onHold,\n favorite: favorite,\n numeric: numeric\n };\n}\n\nvar _excluded = [\"type\", \"status\", \"className\", \"leftIcon\", \"leftIconLabel\", \"children\"],\n _excluded2 = [\"className\", \"children\", \"label\", \"icon\"];\n\nfunction useStyles() {\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n return _styles;\n}\n\nvar Badge = function (_ref) {\n var _styles$badgeType;\n\n var _ref$type = _ref.type,\n type = _ref$type === void 0 ? 'feature' : _ref$type,\n status = _ref.status,\n className = _ref.className,\n leftIcon = _ref.leftIcon,\n leftIconLabel = _ref.leftIconLabel,\n children = _ref.children,\n rest = _objectWithoutProperties(_ref, _excluded);\n\n var _styles = useStyles();\n\n var tokens = useTheme();\n var colorFamily = getColorFamily({\n neutral: 'Info',\n warning: 'Warning',\n success: 'Success',\n critical: 'Error',\n feature: 'Specialty'\n }[type], tokens);\n var badgeCssVal = [_styles.base, (_styles$badgeType = _styles.badgeType) === null || _styles$badgeType === void 0 ? void 0 : _styles$badgeType.call(_styles, type), (leftIcon || leftIconLabel) && _styles.leftIcon]; //Badge with icon\n\n var ariaProps = {\n 'aria-hidden': true\n };\n var badgeIcon = (leftIcon || leftIconLabel) && jsx(\"span\", {\n css: _styles.icon,\n \"data-ppui\": \"true\"\n }, jsx(function Icon() {\n /* istanbul ignore next */\n if (type === 'critical') {\n return jsx(CriticalIcon, _extends({\n size: \"xs\"\n }, ariaProps, {\n \"data-ppui\": \"true\"\n }));\n }\n\n return jsx(leftIcon, _extends({\n size: \"xs\"\n }, ariaProps, {\n \"data-ppui\": \"true\"\n }));\n }, {\n \"data-ppui\": \"true\"\n }), jsx(\"span\", {\n css: _styles.screenReader,\n \"data-ppui\": \"true\"\n }, leftIconLabel)); // End badge with icon\n\n return jsx(ColorProvider, {\n colorFamily: colorFamily,\n \"data-ppui\": \"true\"\n }, jsx(\"span\", _extends({\n css: badgeCssVal,\n className: className,\n \"data-ppui-info\": \"badge_3.4.6\"\n }, rest), badgeIcon, children));\n}; //Authorized Badge\n\n\nvar AuthorizedBadge = function (props) {\n var _useStyles = useStyles(),\n authorized = _useStyles.authorized;\n\n return jsx(BadgeComponent, _extends({}, props, {\n css: authorized,\n className: props.className,\n icon: jsx(CheckmarkBackgroundSmIcon, {\n size: \"xs\",\n \"aria-hidden\": \"true\",\n \"data-ppui\": \"true\"\n }),\n \"data-ppui\": \"true\"\n }));\n}; //InProgress Badge\n\nvar InProgressBadge = function (props) {\n var _useStyles2 = useStyles(),\n inProgress = _useStyles2.inProgress;\n\n return jsx(BadgeComponent, _extends({}, props, {\n css: inProgress,\n className: props.className,\n icon: jsx(ClockIcon, {\n size: \"xs\",\n \"aria-hidden\": \"true\",\n \"data-ppui\": \"true\"\n }),\n \"data-ppui\": \"true\"\n }));\n}; //OnHold Badge\n\nvar OnHoldBadge = function (props) {\n var _useStyles3 = useStyles(),\n onHold = _useStyles3.onHold;\n\n return jsx(BadgeComponent, _extends({}, props, {\n css: onHold,\n className: props.className,\n icon: jsx(CriticalSmIcon, {\n size: \"xs\",\n \"aria-hidden\": \"true\",\n \"data-ppui\": \"true\"\n }),\n \"data-ppui\": \"true\"\n }));\n}; //Favorite Badge\n\nvar FavoriteBadge = function (props) {\n var _useStyles4 = useStyles(),\n favorite = _useStyles4.favorite;\n\n return jsx(BadgeComponent, _extends({}, props, {\n css: favorite,\n className: props.className,\n icon: jsx(PreferredSelectedIcon, {\n size: \"xs\",\n \"aria-hidden\": \"true\",\n \"data-ppui\": \"true\"\n }),\n \"data-ppui\": \"true\"\n }));\n}; //Numeric Badge\n\nvar NumericBadge = function (props) {\n //@ts-ignore\n var numericProp = parseInt(props.children, 10);\n var numericValue = numericProp < 10 ? numericProp : '9+';\n\n var _useStyles5 = useStyles(),\n numeric = _useStyles5.numeric;\n\n return jsx(BadgeComponent, _extends({}, props, {\n css: numeric,\n \"data-ppui\": \"true\"\n }), numericValue);\n};\n\nvar BadgeComponent = function (_ref2) {\n var className = _ref2.className,\n children = _ref2.children,\n label = _ref2.label,\n icon = _ref2.icon,\n rest = _objectWithoutProperties(_ref2, _excluded2);\n\n var _useStyles6 = useStyles(),\n base = _useStyles6.base,\n screenReader = _useStyles6.screenReader;\n\n return jsx(\"span\", _extends({\n css: base,\n className: className,\n \"data-ppui-info\": \"badge_3.4.6\"\n }, rest), icon, icon ? jsx(\"span\", {\n css: screenReader,\n \"data-ppui\": \"true\"\n }, label) : children);\n};\n\nexport { AuthorizedBadge, Badge, FavoriteBadge, InProgressBadge, NumericBadge, OnHoldBadge, styles as badgeStyles };\n","import _extends from '@babel/runtime/helpers/esm/extends';\nimport _defineProperty from '@babel/runtime/helpers/esm/defineProperty';\nimport _slicedToArray from '@babel/runtime/helpers/esm/slicedToArray';\nimport _objectWithoutProperties from '@babel/runtime/helpers/esm/objectWithoutProperties';\nimport { useMemo, useRef, useState, useEffect } from 'react';\nimport { Row, Col, Container } from '@paypalcorp/pp-react-grid';\nimport { devWarning, utilStyles, uniqueId, KeyboardCode } from '@paypalcorp/pp-react-utils';\nimport { CriticalIcon, WarningIcon, CausesIcon, ArrowLeftIcon, ArrowRightIcon } from '@paypalcorp/pp-react-icons';\nimport { css, useTheme, jsx } from '@emotion/react';\nimport _taggedTemplateLiteral from '@babel/runtime/helpers/esm/taggedTemplateLiteral';\nimport { textStyles } from '@paypalcorp/pp-react-text';\n\nvar _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8;\nfunction styles(tokens) {\n /* istanbul ignore next */\n if (!Object.keys(tokens).length) {\n devWarning('Missing Emotion theme. Use ThemeProvider from @emotion/react to pass a valid theme from pp-react.');\n return {};\n }\n\n var sysBorderThicknessNormal = tokens.sysBorderThicknessNormal,\n sysSpaceTiny = tokens.sysSpaceTiny,\n sysSpaceSm = tokens.sysSpaceSm,\n sysColorErrorMain = tokens.sysColorErrorMain,\n sysColorErrorContrast = tokens.sysColorErrorContrast,\n sysColorErrorMainActive = tokens.sysColorErrorMainActive,\n sysColorWarningMain = tokens.sysColorWarningMain,\n sysColorWarningMainActive = tokens.sysColorWarningMainActive,\n sysColorWarningContrast = tokens.sysColorWarningContrast,\n sysColorSpecialtyMain = tokens.sysColorSpecialtyMain,\n sysColorSpecialtyMainActive = tokens.sysColorSpecialtyMainActive,\n sysColorSpecialtyContrast = tokens.sysColorSpecialtyContrast,\n sysSpaceLg = tokens.sysSpaceLg,\n sysSpaceJumbo = tokens.sysSpaceJumbo,\n sysSpaceMd = tokens.sysSpaceMd;\n\n var _utilStyles = utilStyles(tokens),\n focusStyles = _utilStyles.focusStyles;\n\n var _textStyles = textStyles(tokens),\n textBody = _textStyles.body,\n textTitle = _textStyles.title;\n /**\n * Get the color based on the type of banner\n * @param type string\n * @returns object\n *\n */\n\n\n var getColorMap = function (type) {\n var bgColor = sysColorSpecialtyMain;\n var activeBgColor = sysColorSpecialtyMainActive;\n var textColor = sysColorSpecialtyContrast;\n\n if (type === 'critical') {\n bgColor = sysColorErrorMain;\n activeBgColor = sysColorErrorMainActive;\n textColor = sysColorErrorContrast;\n } else if (type === 'warning') {\n bgColor = sysColorWarningMain;\n activeBgColor = sysColorWarningMainActive;\n textColor = sysColorWarningContrast;\n }\n\n return {\n bgColor: bgColor,\n activeBgColor: activeBgColor,\n textColor: textColor\n };\n };\n /**\n * Get the styles for the banner\n * @param type string\n * @returns SerializedStyles\n *\n */\n\n\n var getBanner = function (type) {\n var _getColorMap = getColorMap(type),\n bgColor = _getColorMap.bgColor,\n activeBgColor = _getColorMap.activeBgColor;\n\n return css(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n label: \", \";\\n background-color: \", \";\\n &:active {\\n background-color: \", \";\\n }\\n \"])), type, bgColor, activeBgColor);\n };\n /**\n * Get the styles for the banner text\n * @param type string\n * @returns SerializedStyles\n *\n */\n\n\n var getTextColor = function (type) {\n var _getColorMap2 = getColorMap(type),\n textColor = _getColorMap2.textColor;\n\n var label = \"text_\".concat(type);\n return css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n label: \", \";\\n color: \", \";\\n \"])), label, textColor);\n }; // Base Class for banner\n\n\n var base = css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral([\"\\n label: banner_base;\\n box-sizing: border-box;\\n padding: \", \" \", \";\\n border-width: \", \";\\n position: relative;\\n width: 100%;\\n cursor: pointer;\\n display: block;\\n text-decoration: none;\\n outline: \", \" solid transparent;\\n &:focus {\\n \", \"\\n }\\n \"])), sysSpaceMd, sysSpaceLg, sysBorderThicknessNormal, sysBorderThicknessNormal, focusStyles.focusInlineElement);\n\n var fullWidth = function (type) {\n var _getColorMap3 = getColorMap(type),\n bgColor = _getColorMap3.bgColor;\n\n return css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral([\"\\n label: banner_full_width;\\n position: relative;\\n &:before {\\n content: '';\\n position: absolute;\\n background-color: \", \";\\n margin: 0 -50vw;\\n inset: 0 50%;\\n }\\n \"])), bgColor);\n };\n\n var title = css(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral([\"\\n label: banner_title;\\n \", \";\\n text-align: left;\\n max-width: 100%;\\n width: 100%;\\n display: flex;\\n [dir='rtl'] & {\\n text-align: right;\\n }\\n \"])), textTitle());\n var leftSideIcon = css(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral([\"\\n label: icon_left;\\n margin-right: \", \";\\n margin-top: \", \";\\n [dir='rtl'] & {\\n margin-left: \", \";\\n margin-right: 0;\\n }\\n \"])), sysSpaceSm, sysSpaceTiny, sysSpaceSm);\n var rightSideIcon = css(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral([\"\\n label: icon_right;\\n margin-right: 0;\\n margin-left: auto;\\n margin-top: \", \";\\n [dir='rtl'] & {\\n margin-left: 0;\\n margin-right: auto;\\n }\\n \"])), sysSpaceTiny);\n var subText = css(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral([\"\\n label: subtext;\\n \", \"\\n display: flex;\\n padding: 0 \", \";\\n text-align: left;\\n [dir='rtl'] & {\\n margin-right: 0;\\n text-align: right;\\n }\\n \"])), textBody(), sysSpaceJumbo);\n return {\n getBanner: getBanner,\n getTextColor: getTextColor,\n base: base,\n fullWidth: fullWidth,\n title: title,\n leftSideIcon: leftSideIcon,\n rightSideIcon: rightSideIcon,\n subText: subText\n };\n}\n\nvar _excluded = [\"id\", \"className\", \"titleClassName\", \"subTitleClassName\", \"title\", \"type\", \"specialtyIcon\", \"subText\", \"href\", \"fullWidth\", \"onClick\"];\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nvar Banner = function (_ref) {\n var _styles$getBanner, _styles$getTextColor, _styles$getTextColor2, _styles$fullWidth;\n\n var _ref$id = _ref.id,\n id = _ref$id === void 0 ? uniqueId('Banner_') : _ref$id,\n className = _ref.className,\n titleClassName = _ref.titleClassName,\n subTitleClassName = _ref.subTitleClassName,\n _ref$title = _ref.title,\n title = _ref$title === void 0 ? 'default' : _ref$title,\n _ref$type = _ref.type,\n type = _ref$type === void 0 ? 'critical' : _ref$type,\n specialtyIcon = _ref.specialtyIcon,\n subText = _ref.subText,\n href = _ref.href,\n fullWidth = _ref.fullWidth,\n onClick = _ref.onClick,\n rest = _objectWithoutProperties(_ref, _excluded);\n\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n var bannerCssVal = [_styles.base, type && ((_styles$getBanner = _styles.getBanner) === null || _styles$getBanner === void 0 ? void 0 : _styles$getBanner.call(_styles, type))];\n var titleCssVal = [_styles.title, type && ((_styles$getTextColor = _styles.getTextColor) === null || _styles$getTextColor === void 0 ? void 0 : _styles$getTextColor.call(_styles, type))];\n var subTextCssVal = [_styles.subText, type && ((_styles$getTextColor2 = _styles.getTextColor) === null || _styles$getTextColor2 === void 0 ? void 0 : _styles$getTextColor2.call(_styles, type))];\n var subTextContent = subText && jsx(\"div\", {\n css: subTextCssVal,\n className: subTitleClassName,\n \"data-ppui\": \"true\"\n }, ' ', subText);\n var titleRef = useRef(null);\n\n var _useState = useState(false),\n _useState2 = _slicedToArray(_useState, 2),\n rtl = _useState2[0],\n setRtl = _useState2[1];\n\n useEffect(function () {\n var titleElm = titleRef.current;\n var computedStyle = window.getComputedStyle(titleElm);\n setRtl(computedStyle && computedStyle.direction === 'rtl');\n }, []);\n var StatusIcon = {\n critical: CriticalIcon,\n warning: WarningIcon,\n specialty: specialtyIcon || CausesIcon\n }[type];\n /* istanbul ignore next */\n\n var ClickIcon = rtl ? ArrowLeftIcon : ArrowRightIcon;\n var bannerContent = jsx(Row, {\n \"data-ppui\": \"true\"\n }, jsx(Col, {\n lg: 12,\n \"data-ppui\": \"true\"\n }, jsx(\"div\", {\n css: titleCssVal,\n className: titleClassName,\n ref: titleRef,\n \"data-ppui\": \"true\"\n }, jsx(StatusIcon, {\n css: _styles.leftSideIcon,\n size: \"sm\",\n \"data-ppui\": \"true\"\n }), title, jsx(ClickIcon, {\n css: _styles.rightSideIcon,\n size: \"sm\",\n \"data-ppui\": \"true\"\n })), subTextContent));\n var commonProps = {\n className: className,\n css: bannerCssVal,\n 'data-ppui-info': ''\n };\n\n var componentTypeProps = _objectSpread({\n id: id,\n tabIndex: 0,\n role: 'button',\n onClick: onClick,\n onKeyDown: function keyHandler(event) {\n /* istanbul ignore next */\n var KeyCode = new KeyboardCode(event.key || event.keyCode);\n\n if (KeyCode.IS_ENTER || KeyCode.IS_SPACEBAR) {\n event.preventDefault();\n onClick(event);\n }\n }\n }, commonProps);\n\n if (href) {\n componentTypeProps = _objectSpread({\n as: 'a',\n href: href\n }, commonProps);\n }\n\n var containerElm = jsx(Container, _extends({}, componentTypeProps, rest, {\n \"data-ppui\": \"true\"\n }), bannerContent);\n return fullWidth ? jsx(\"div\", {\n css: (_styles$fullWidth = _styles.fullWidth) === null || _styles$fullWidth === void 0 ? void 0 : _styles$fullWidth.call(_styles, type),\n \"data-ppui\": \"true\"\n }, containerElm) : containerElm;\n};\n\nexport { Banner, styles as bannerStyles };\n","import _taggedTemplateLiteral from '@babel/runtime/helpers/esm/taggedTemplateLiteral';\nimport { css, keyframes, useTheme, jsx } from '@emotion/react';\nimport { math, stripUnit, remToPx } from 'polished';\nimport { textStyles } from '@paypalcorp/pp-react-text';\nimport { devWarning, utilStyles, getColorValue, ColorContext, hasWindow } from '@paypalcorp/pp-react-utils';\nimport _defineProperty from '@babel/runtime/helpers/esm/defineProperty';\nimport _extends from '@babel/runtime/helpers/esm/extends';\nimport _objectWithoutProperties from '@babel/runtime/helpers/esm/objectWithoutProperties';\nimport React, { forwardRef, useMemo, useState, useRef, Children } from 'react';\nimport { LoadingSpinner } from '@paypalcorp/pp-react-loading-spinner';\nimport { CheckmarkIcon, ChevronUpIcon, ChevronDownIcon } from '@paypalcorp/pp-react-icons';\nimport _slicedToArray from '@babel/runtime/helpers/esm/slicedToArray';\nimport { ActionMenu } from '@paypalcorp/pp-react-menu';\n\nvar _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14, _templateObject15, _templateObject16, _templateObject17, _templateObject18, _templateObject19, _templateObject20, _templateObject21;\nfunction styles(tokens, colorTokens) {\n /* istanbul ignore next */\n if (!Object.keys(tokens).length) {\n devWarning('Missing Emotion theme. Use ThemeProvider from @emotion/react to pass a valid theme from pp-react.');\n return {};\n }\n\n var sysSpaceSm = tokens.sysSpaceSm,\n sysSpaceMd = tokens.sysSpaceMd,\n sysSpaceLg = tokens.sysSpaceLg,\n sysSpaceJumbo = tokens.sysSpaceJumbo,\n sysBorderRadiusSm = tokens.sysBorderRadiusSm,\n sysBorderThicknessEmphasis = tokens.sysBorderThicknessEmphasis,\n sysSizeIndicatorMd = tokens.sysSizeIndicatorMd,\n sysMotionDurationAction = tokens.sysMotionDurationAction,\n sysColorPrimaryMain = tokens.sysColorPrimaryMain,\n sysColorPrimaryContrast = tokens.sysColorPrimaryContrast,\n sysColorPrimaryMainHover = tokens.sysColorPrimaryMainHover,\n sysColorPrimaryMainActive = tokens.sysColorPrimaryMainActive,\n sysColorPrimaryContrastHover = tokens.sysColorPrimaryContrastHover,\n sysColorPrimaryContrastActive = tokens.sysColorPrimaryContrastActive,\n sysColorFeaturedMain = tokens.sysColorFeaturedMain,\n sysColorFeaturedMainHover = tokens.sysColorFeaturedMainHover,\n sysColorFeaturedMainActive = tokens.sysColorFeaturedMainActive,\n sysColorFeaturedContrast = tokens.sysColorFeaturedContrast,\n sysColorSecondaryMain = tokens.sysColorSecondaryMain,\n sysColorSuccessMain = tokens.sysColorSuccessMain,\n sysMotionDurationHover = tokens.sysMotionDurationHover,\n sysSizeMediaMd = tokens.sysSizeMediaMd,\n sysSizeMediaSm = tokens.sysSizeMediaSm;\n\n var _utilStyles = utilStyles(tokens),\n screenReader = _utilStyles.screenReader,\n focusStyles = _utilStyles.focusStyles;\n\n var _textStyles = textStyles(tokens),\n buttonLg = _textStyles.buttonLg,\n buttonSm = _textStyles.buttonSm;\n\n var focusOffsetElement = focusStyles.focusOffsetElement; // Base Styles for button\n\n var base = css(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n label: button_base;\\n position: relative;\\n border-radius: 1000px;\\n color: \", \";\\n cursor: pointer;\\n display: inline-block;\\n min-width: \", \";\\n text-align: center;\\n text-decoration: none;\\n transition: color \", \" ease,\\n background-color \", \" ease,\\n border-color \", \" ease;\\n border: \", \" solid\\n \", \";\\n \", \";\\n background-color: \", \";\\n padding: \", \"\\n \", \";\\n\\n &:hover,\\n &:active,\\n &:visited {\\n color: \", \";\\n }\\n\\n &:hover {\\n text-decoration: none;\\n background-color: \", \";\\n border-color: \", \";\\n }\\n\\n &:active {\\n outline: none;\\n background-color: \", \";\\n border-color: \", \";\\n }\\n\\n &:focus {\\n outline: none;\\n \", \";\\n }\\n \"])), getColorValue(colorTokens, sysColorPrimaryContrast, 'contrast'), '6rem', sysMotionDurationAction, sysMotionDurationAction, sysMotionDurationAction, sysBorderThicknessEmphasis, getColorValue(colorTokens, sysColorPrimaryMain, 'main'), buttonLg({\n color: getColorValue(colorTokens, sysColorPrimaryContrast, 'contrast')\n }), getColorValue(colorTokens, sysColorPrimaryMain, 'main'), math(\"\".concat(sysSpaceMd, \" - \").concat(sysBorderThicknessEmphasis)), math(\"\".concat(sysSpaceJumbo, \" - \").concat(sysBorderThicknessEmphasis)), getColorValue(colorTokens, sysColorPrimaryContrast, 'contrast'), getColorValue(colorTokens, sysColorPrimaryMainHover, 'hover'), getColorValue(colorTokens, sysColorPrimaryMainHover, 'hover'), getColorValue(colorTokens, sysColorPrimaryMainActive, 'active'), getColorValue(colorTokens, sysColorPrimaryMainActive, 'active'), focusOffsetElement); // Styles for button in dark background\n\n var inverse = css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n label: inverse;\\n background-color: \", \";\\n border-color: \", \";\\n color: \", \";\\n\\n &:hover,\\n &:active,\\n &:visited {\\n color: \", \";\\n }\\n\\n &:hover {\\n background: \", \";\\n border-color: \", \";\\n }\\n\\n &:active {\\n background: \", \";\\n border-color: \", \";\\n }\\n\\n &:focus {\\n border: 2px solid \", \";\\n }\\n \"])), getColorValue(colorTokens, sysColorPrimaryContrast, 'contrast'), getColorValue(colorTokens, sysColorPrimaryContrast, 'contrast'), getColorValue(colorTokens, sysColorPrimaryMain, 'main'), getColorValue(colorTokens, sysColorPrimaryMain, 'main'), getColorValue(colorTokens, sysColorPrimaryContrastHover, 'hover'), getColorValue(colorTokens, sysColorPrimaryContrastHover, 'hover'), getColorValue(colorTokens, sysColorPrimaryContrastActive, 'active'), getColorValue(colorTokens, sysColorPrimaryContrastActive, 'active'), sysColorPrimaryMain); // Styles for secondary buttons\n\n var secondary = css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral([\"\\n label: secondary;\\n background: transparent;\\n border-color: \", \";\\n color: \", \";\\n\\n &:visited {\\n color: \", \";\\n }\\n\\n &:hover {\\n background: transparent;\\n color: \", \";\\n border-color: \", \";\\n }\\n\\n &:active {\\n background: transparent;\\n color: \", \";\\n border-color: \", \";\\n }\\n \"])), getColorValue(colorTokens, sysColorPrimaryMain, 'main'), getColorValue(colorTokens, sysColorPrimaryMain, 'main'), getColorValue(colorTokens, sysColorPrimaryMain, 'main'), getColorValue(colorTokens, sysColorPrimaryMainHover, 'hover'), getColorValue(colorTokens, sysColorPrimaryMainHover, 'hover'), getColorValue(colorTokens, sysColorPrimaryMainActive, 'active'), getColorValue(colorTokens, sysColorPrimaryMainActive, 'active')); // Styles for secondary inverse\n\n var secondaryInverse = css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral([\"\\n label: secondary_inverse;\\n border-color: \", \";\\n color: \", \";\\n background-color: transparent;\\n\\n &:visited {\\n color: \", \";\\n }\\n\\n &:hover {\\n background: \", \";\\n color: \", \";\\n border-color: \", \";\\n }\\n\\n &:active {\\n background: \", \";\\n color: \", \";\\n border-color: \", \";\\n }\\n\\n &:focus {\\n border: 2px solid \", \";\\n }\\n \"])), getColorValue(colorTokens, sysColorPrimaryContrast, 'contrast'), getColorValue(colorTokens, sysColorPrimaryContrast, 'contrast'), getColorValue(colorTokens, sysColorPrimaryContrastActive, 'contrast'), getColorValue(colorTokens, 'transparent', 'hover'), getColorValue(colorTokens, sysColorPrimaryContrastHover, 'contrast'), getColorValue(colorTokens, sysColorPrimaryContrastHover, 'contrast'), getColorValue(colorTokens, sysColorPrimaryMainActive, 'active'), getColorValue(colorTokens, sysColorPrimaryContrastActive, 'contrast'), getColorValue(colorTokens, sysColorPrimaryContrastActive, 'contrast'), sysColorPrimaryMain); // Styles for branded buttons\n // Only applies to large variant, cannot be applied to icon\n\n var branded = css(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral([\"\\n label: branded;\\n background: \", \";\\n border-color: \", \";\\n color: \", \";\\n\\n &:hover,\\n &:active,\\n &:visited {\\n color: \", \";\\n }\\n\\n &:hover {\\n background: \", \";\\n border-color: \", \";\\n }\\n\\n &:active {\\n background: \", \";\\n border-color: \", \";\\n }\\n \"])), sysColorFeaturedMain, sysColorFeaturedMain, sysColorFeaturedContrast, sysColorFeaturedContrast, sysColorFeaturedMainHover, sysColorFeaturedMainHover, sysColorFeaturedMainActive, sysColorFeaturedMainActive); // Styles for tertiary button\n\n var tertiary = css(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral([\"\\n label: tertiary;\\n position: relative;\\n cursor: pointer;\\n display: inline-block;\\n background: transparent;\\n border: none;\\n \", \"\\n padding: \", \" \", \";\\n\\n &:hover,\\n &:active {\\n color: \", \";\\n background: transparent;\\n }\\n\\n &:hover,\\n &:focus {\\n text-decoration: underline;\\n }\\n\\n &:active {\\n text-decoration: none;\\n }\\n\\n &:focus {\\n color: \", \";\\n border-radius: \", \";\\n \", \";\\n }\\n \"])), buttonLg({\n color: getColorValue(colorTokens, sysColorSecondaryMain, 'main')\n }), sysSpaceMd, sysSpaceSm, getColorValue(colorTokens, sysColorSecondaryMain, 'main'), getColorValue(colorTokens, sysColorSecondaryMain, 'main'), sysBorderRadiusSm, focusOffsetElement); // styles for icon\n\n var icon = css(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral([\"\\n label: icon;\\n vertical-align: top;\\n margin-inline-end: \", \";\\n margin-inline-start: 0;\\n \"])), sysSpaceSm);\n var affordance = css(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral([\"\\n label: affordance;\\n margin-inline-start: \", \";\\n margin-inline-end: 0;\\n vertical-align: top;\\n position: relative;\\n pointer-events: none;\\n \"])), sysSpaceSm);\n var menuWrapper = css(_templateObject9 || (_templateObject9 = _taggedTemplateLiteral([\"\\n label: menu-wrap;\\n position: relative;\\n \"]))); // Size sm\n\n var sizeSm = css(_templateObject10 || (_templateObject10 = _taggedTemplateLiteral([\"\\n label: size_sm;\\n \", \"\\n min-width: \", \";\\n padding: \", \"\\n \", \";\\n \"])), buttonSm({\n color: getColorValue(colorTokens, sysColorPrimaryContrast, 'contrast')\n }), '3.75rem', math(\"\".concat(sysSizeIndicatorMd, \" - \").concat(sysBorderThicknessEmphasis)), math(\"\".concat(sysSpaceLg, \" - \").concat(sysBorderThicknessEmphasis))); // Stateful button styles\n // Button success state\n\n var successState = css(_templateObject11 || (_templateObject11 = _taggedTemplateLiteral([\"\\n label: success_state;\\n border-color: \", \";\\n background-color: \", \";\\n pointer-events: none;\\n \"])), getColorValue(colorTokens, sysColorSuccessMain, 'main'), getColorValue(colorTokens, sysColorSuccessMain, 'main')); // Button processing state\n\n var processingState = css(_templateObject12 || (_templateObject12 = _taggedTemplateLiteral([\"\\n label: processing_state;\\n color: transparent;\\n pointer-events: none;\\n\\n &:hover,\\n &:active,\\n &:visited {\\n color: transparent;\\n }\\n \"])));\n var fadeIn = keyframes(_templateObject13 || (_templateObject13 = _taggedTemplateLiteral([\"\\n 0% {\\n opacity: 0;\\n }\\n 100% {\\n opacity: 1;\\n }\\n \"]))); //Overlay\n\n var overlay = css(_templateObject14 || (_templateObject14 = _taggedTemplateLiteral([\"\\n label: overlay;\\n position: absolute;\\n top: 0;\\n bottom: 0;\\n left: 0;\\n right: 0;\\n border-radius: inherit;\\n text-align: center;\\n opacity: 0;\\n animation: \", \" \", \" ease-in forwards;\\n display: flex;\\n justify-content: center;\\n align-items: center;\\n padding-right: 0;\\n \"])), fadeIn, sysMotionDurationHover);\n var successStateOverlay = css(_templateObject15 || (_templateObject15 = _taggedTemplateLiteral([\"\\n label: success_state_overlay;\\n background-color: \", \";\\n \"])), getColorValue(colorTokens, sysColorSuccessMain, 'main'));\n var successStateIcon = css(_templateObject16 || (_templateObject16 = _taggedTemplateLiteral([\"\\n label: success_state_icon;\\n line-height: \", \";\\n color: \", \";\\n \"])), 2, getColorValue(colorTokens, sysColorPrimaryContrast, 'contrast'));\n var successStateIconSm = css(_templateObject17 || (_templateObject17 = _taggedTemplateLiteral([\"\\n label: success_state_icon_sm;\\n line-height: \", \";\\n \"])), 1.6);\n var buttonGroup = css(_templateObject18 || (_templateObject18 = _taggedTemplateLiteral([\"\\n label: button_group;\\n display: inline-grid;\\n grid-template-columns: 1fr 1fr;\\n gap: \", \";\\n padding: \", \" \", \";\\n \"])), sysSpaceLg, sysSpaceMd, sysSpaceLg);\n var buttonGroupSolo = css(_templateObject19 || (_templateObject19 = _taggedTemplateLiteral([\"\\n label: solo;\\n grid-template-columns: 1fr;\\n \"])));\n var btnFullWidth = css(_templateObject20 || (_templateObject20 = _taggedTemplateLiteral([\"\\n label: btn_full_width;\\n @media (max-width: \", \") {\\n width: 100%;\\n }\\n \"])), sysSizeMediaMd);\n var btnGroupFullWidth = css(_templateObject21 || (_templateObject21 = _taggedTemplateLiteral([\"\\n label: btn_group_full_width;\\n @media (max-width: \", \") {\\n grid-template-columns: none;\\n width: 100%;\\n }\\n \"])), sysSizeMediaSm);\n return {\n base: base,\n secondary: secondary,\n inverse: inverse,\n secondaryInverse: secondaryInverse,\n branded: branded,\n tertiary: tertiary,\n icon: icon,\n affordance: affordance,\n menuWrapper: menuWrapper,\n sizeSm: sizeSm,\n successState: successState,\n processingState: processingState,\n screenReader: screenReader,\n overlay: overlay,\n successStateOverlay: successStateOverlay,\n successStateIcon: successStateIcon,\n successStateIconSm: successStateIconSm,\n buttonGroup: buttonGroup,\n buttonGroupSolo: buttonGroupSolo,\n btnFullWidth: btnFullWidth,\n btnGroupFullWidth: btnGroupFullWidth\n };\n}\n\nvar _excluded = [\"isMenu\", \"isOpen\", \"isSmall\"],\n _excluded2 = [\"size\", \"inverse\", \"secondary\", \"branded\", \"tertiary\", \"isMenu\", \"isOpen\", \"btnState\", \"screenReaderText\", \"className\", \"children\", \"as\", \"iconComponent\", \"fullWidthOnMobile\"];\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nvar AffordanceIcon = function (_ref) {\n var isMenu = _ref.isMenu,\n isOpen = _ref.isOpen,\n isSmall = _ref.isSmall,\n rest = _objectWithoutProperties(_ref, _excluded);\n\n if (!isMenu) {\n return null;\n }\n\n var Icon = isOpen ? ChevronUpIcon : ChevronDownIcon; // @ts-ignore\n\n return jsx(Icon, _extends({}, rest, {\n size: isSmall ? 'xs' : 'sm',\n \"data-ppui\": \"true\"\n }));\n};\n\n/* eslint-disable complexity */\nvar Button = forwardRef(function (_ref2, ref) {\n var size = _ref2.size,\n inverse = _ref2.inverse,\n secondary = _ref2.secondary,\n branded = _ref2.branded,\n tertiary = _ref2.tertiary,\n isMenu = _ref2.isMenu,\n isOpen = _ref2.isOpen,\n _ref2$btnState = _ref2.btnState,\n btnState = _ref2$btnState === void 0 ? 'initial' : _ref2$btnState,\n screenReaderText = _ref2.screenReaderText,\n className = _ref2.className,\n children = _ref2.children,\n as = _ref2.as,\n iconComponent = _ref2.iconComponent,\n _ref2$fullWidthOnMobi = _ref2.fullWidthOnMobile,\n fullWidthOnMobile = _ref2$fullWidthOnMobi === void 0 ? true : _ref2$fullWidthOnMobi,\n rest = _objectWithoutProperties(_ref2, _excluded2);\n\n // If theme is not directly provided, get from themeContext\n var tokens = useTheme();\n var colorTokens = React.useContext(ColorContext);\n var buttonStyles = useMemo(function () {\n return styles(tokens, colorTokens);\n }, [tokens]);\n var loadingSpinnerProps = {};\n\n if (btnState === 'processing') {\n loadingSpinnerProps.as = 'span';\n\n if (size === 'sm') {\n loadingSpinnerProps.size = 'xs';\n }\n\n if (secondary && inverse || !secondary && !inverse) {\n loadingSpinnerProps.inverse = true;\n }\n }\n\n var cssVal;\n\n if (branded) {\n devWarning('Branded Button variant is deprecated and will be removed in the next major release.');\n cssVal = [buttonStyles.base, buttonStyles.branded];\n } else if (tertiary) {\n cssVal = [buttonStyles.tertiary];\n } else {\n // Note: the order of composition below is very important since rules from a latter style set will override the former.\n cssVal = [buttonStyles.base, fullWidthOnMobile && buttonStyles.btnFullWidth, size === 'sm' && buttonStyles.sizeSm, inverse && buttonStyles.inverse, secondary && buttonStyles.secondary, secondary && inverse && buttonStyles.secondaryInverse, btnState === 'success' && buttonStyles.successState, btnState === 'processing' && buttonStyles.processingState];\n }\n\n var componentProps = _objectSpread({}, rest);\n\n if (isOpen !== undefined) {\n componentProps['aria-expanded'] = isOpen;\n }\n\n return jsx(as || 'button', _extends({\n css: cssVal,\n tabIndex: 0,\n className: className,\n disabled: btnState && btnState !== 'initial',\n ref: ref,\n \"data-ppui-info\": \"buttons_7.9.12\"\n }, componentProps), function renderChildren() {\n var srText;\n\n if (btnState !== 'initial') {\n srText = screenReaderText || btnState;\n }\n\n var successIconSize = size === 'sm' ? 'sm' : 'md';\n var successIconCSSVal = [buttonStyles.successStateIcon, size === 'sm' && buttonStyles.successStateIconSm];\n var buttonCheckmarkIcon = jsx(CheckmarkIcon, {\n css: successIconCSSVal,\n size: successIconSize,\n \"data-ppui\": \"true\"\n });\n var iconMarkup = null;\n\n if (iconComponent) {\n var svgIconSize = size === 'sm' ? 'xs' : 'sm';\n iconMarkup = jsx(iconComponent, {\n css: buttonStyles.icon,\n size: svgIconSize,\n \"data-ppui\": \"true\"\n });\n }\n\n var overlayCSSVal = [buttonStyles.overlay, btnState === 'success' && buttonStyles.successStateOverlay];\n var stateOverlay = btnState !== 'initial' ? jsx(\"span\", {\n css: overlayCSSVal,\n \"data-ppui\": \"true\"\n }, btnState === 'success' && buttonCheckmarkIcon, btnState === 'processing' && jsx(LoadingSpinner, _extends({}, loadingSpinnerProps, {\n \"data-ppui\": \"true\"\n }))) : null;\n var assistiveText = srText ? jsx(\"span\", {\n role: \"status\",\n css: buttonStyles.screenReader,\n \"data-ppui\": \"true\"\n }, children, \" \", srText) : null;\n return jsx(React.Fragment, null, iconMarkup, children, jsx(AffordanceIcon, {\n isMenu: isMenu,\n isOpen: isOpen,\n isSmall: size === 'sm',\n css: buttonStyles.affordance,\n \"data-ppui\": \"true\"\n }), stateOverlay, assistiveText);\n }());\n});\n\nvar _excluded$1 = [\"id\", \"name\", \"onSelection\", \"options\", \"children\", \"mobileTitle\", \"onClose\"];\nvar ButtonMenu = function (props) {\n var id = props.id,\n name = props.name,\n onSelection = props.onSelection,\n options = props.options,\n children = props.children,\n _props$mobileTitle = props.mobileTitle,\n mobileTitle = _props$mobileTitle === void 0 ? name : _props$mobileTitle,\n onClose = props.onClose,\n rest = _objectWithoutProperties(props, _excluded$1);\n\n var _useState = useState(false),\n _useState2 = _slicedToArray(_useState, 2),\n isMenuOpen = _useState2[0],\n setIsMenuOpen = _useState2[1];\n\n var menuId = \"\".concat(id, \"_menu\");\n var buttonRef = useRef(null);\n var buttonStyles = styles(useTheme());\n return jsx(\"div\", {\n css: buttonStyles.menuWrapper,\n \"data-ppui\": \"true\"\n }, jsx(Button, _extends({\n onClick: function toggleMenu() {\n setIsMenuOpen(function (currentlyOpen) {\n return !currentlyOpen;\n });\n },\n isMenu: true,\n isOpen: isMenuOpen,\n \"aria-haspopup\": \"menu\",\n \"aria-expanded\": isMenuOpen,\n id: id,\n ref: buttonRef\n }, rest, {\n \"data-ppui\": \"true\"\n }), children), jsx(ActionMenu, _extends({\n name: name,\n id: menuId,\n initialItemFocus: true,\n triggerRef: buttonRef,\n isOpen: isMenuOpen,\n options: options,\n mobileTitle: mobileTitle,\n onClose: function handleClose(evt) {\n setIsMenuOpen(false);\n /* istanbul ignore next */\n\n if (typeof onClose === 'function') {\n onClose(evt);\n }\n },\n onSelection: function handleSelection(index) {\n setIsMenuOpen(false);\n /* istanbul ignore next */\n\n if (typeof onSelection === 'function') {\n onSelection(index);\n }\n\n buttonRef.current.focus();\n }\n }, rest, {\n \"data-ppui\": \"true\"\n })));\n};\n\nvar ButtonGroup = function (_ref) {\n var className = _ref.className,\n _ref$fullWidthOnMobil = _ref.fullWidthOnMobile,\n fullWidthOnMobile = _ref$fullWidthOnMobil === void 0 ? true : _ref$fullWidthOnMobil,\n children = _ref.children;\n // If theme is not directly provided, get from themeContext\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n var childArray = Children.toArray(children); //@ts-ignore\n\n var breakPointValue = \"\".concat(stripUnit(remToPx(tokens.sysSizeMediaSm)));\n var innerWidth = hasWindow() && window.innerWidth;\n var computedChildren = children;\n\n if (breakPointValue && innerWidth > parseInt(breakPointValue, 10)) {\n computedChildren = childArray.reverse();\n }\n\n var hasButtonCountOne = childArray.length === 1;\n var buttonGroupCSSVal = [_styles.buttonGroup, hasButtonCountOne && _styles.buttonGroupSolo, fullWidthOnMobile && _styles.btnGroupFullWidth];\n return jsx(\"div\", {\n css: buttonGroupCSSVal,\n className: className,\n \"data-ppui\": \"true\"\n }, computedChildren);\n};\n\nexport { Button, ButtonGroup, ButtonMenu, styles as buttonStyles };\n","import _defineProperty from '@babel/runtime/helpers/esm/defineProperty';\nimport _extends from '@babel/runtime/helpers/esm/extends';\nimport _objectWithoutProperties from '@babel/runtime/helpers/esm/objectWithoutProperties';\nimport { useMemo } from 'react';\nimport { devWarning, utilStyles, Shimmer } from '@paypalcorp/pp-react-utils';\nimport { css, useTheme, jsx } from '@emotion/react';\nimport _taggedTemplateLiteral from '@babel/runtime/helpers/esm/taggedTemplateLiteral';\nimport { textStyles } from '@paypalcorp/pp-react-text';\n\nvar _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11;\nfunction styles(tokens) {\n /* istanbul ignore next */\n if (!Object.keys(tokens).length) {\n devWarning('Missing Emotion theme. Use ThemeProvider from @emotion/react to pass a valid theme from pp-react.');\n return {};\n }\n\n var sysSpaceXl = tokens.sysSpaceXl,\n sysColorStructureBorderLowContrast = tokens.sysColorStructureBorderLowContrast,\n sysColorBackgroundSurface = tokens.sysColorBackgroundSurface,\n sysBorderThicknessNormal = tokens.sysBorderThicknessNormal,\n sysBorderRadiusLg = tokens.sysBorderRadiusLg,\n sysSpaceXs = tokens.sysSpaceXs;\n\n var _utilStyles = utilStyles(tokens),\n focusStyles = _utilStyles.focusStyles,\n elevationStyles = _utilStyles.elevationStyles;\n\n var _textStyles = textStyles(tokens),\n textHeadingSm = _textStyles.headingSm;\n\n var base = css(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n label: card_base;\\n padding: \", \";\\n position: relative;\\n text-align: initial;\\n background-color: \", \";\\n border: \", \" solid\\n \", \";\\n border-radius: \", \";\\n appearance: none;\\n\\n &:focus {\\n \", \";\\n }\\n \"])), sysSpaceXl, sysColorBackgroundSurface, sysBorderThicknessNormal, sysColorStructureBorderLowContrast, sysBorderRadiusLg, focusStyles.focusInlineElement);\n var clickable = css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n label: clickable;\\n cursor: pointer;\\n width: 100%;\\n appearance: none;\\n\\n &:hover {\\n \", \"\\n }\\n\\n &:active {\\n box-shadow: none;\\n }\\n\\n &:focus:active {\\n &:after {\\n content: none;\\n }\\n }\\n \"])), elevationStyles.level1); // header styles\n\n var header = css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral([\"\\n label: header;\\n margin-bottom: \", \";\\n display: table;\\n \"])), sysSpaceXl);\n var title = css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral([\"\\n label: title;\\n \", \"\\n width: 100%;\\n display: table-cell;\\n margin: initial;\\n padding: \", \" 0;\\n text-transform: none;\\n vertical-align: middle;\\n \"])), textHeadingSm(), sysSpaceXs); // content styles\n\n var content = css(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral([\"\\n label: content;\\n margin-top: 0.9375rem;\\n margin-bottom: 0.9375rem;\\n \"]))); // footer styles\n\n var footer = css(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral([\"\\n label: footer;\\n margin-top: \", \";\\n\\n button,\\n a {\\n margin: initial;\\n }\\n\\n button:not(:last-child),\\n a:not(:last-child) {\\n margin-right: \", \";\\n }\\n\\n [dir='rtl'] & {\\n button:not(:last-child),\\n a:not(:last-child) {\\n margin-right: initial;\\n margin-left: \", \";\\n }\\n }\\n \"])), sysSpaceXl, sysSpaceXl, sysSpaceXl); // sizes\n\n var sizeXs = css(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral([\"\\n label: sizeXs;\\n min-width: \", \";\\n min-height: \", \";\\n \"])), '10.3125rem', '5rem');\n var sizeXsLong = css(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral([\"\\n label: sizeXsLong;\\n min-width: \", \";\\n min-height: \", \";\\n \"])), '21.4375rem', '5rem');\n var sizeSm = css(_templateObject9 || (_templateObject9 = _taggedTemplateLiteral([\"\\n label: sizeSm;\\n min-width: \", \";\\n min-height: \", \";\\n \"])), '10.3125rem', '13.25rem');\n var sizeMd = css(_templateObject10 || (_templateObject10 = _taggedTemplateLiteral([\"\\n label: sizeMd;\\n min-width: \", \";\\n min-height: \", \";\\n \"])), '21.4375rem', '12.5rem');\n var sizeLg = css(_templateObject11 || (_templateObject11 = _taggedTemplateLiteral([\"\\n label: sizeLg;\\n min-width: \", \";\\n min-height: \", \";\\n \"])), '21.4375rem', '26.25rem');\n return {\n base: base,\n clickable: clickable,\n header: header,\n title: title,\n content: content,\n footer: footer,\n sizeXs: sizeXs,\n sizeXsLong: sizeXsLong,\n sizeSm: sizeSm,\n sizeMd: sizeMd,\n sizeLg: sizeLg\n };\n}\n\nvar _excluded = [\"onClick\", \"label\", \"as\", \"children\", \"className\", \"isLoading\", \"isInverse\", \"size\"],\n _excluded2 = [\"className\", \"children\"],\n _excluded3 = [\"className\", \"children\"],\n _excluded4 = [\"className\", \"children\"];\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nvar Card = function (_ref) {\n var onClick = _ref.onClick,\n label = _ref.label,\n _ref$as = _ref.as,\n as = _ref$as === void 0 ? typeof onClick === 'function' ? 'button' : 'div' : _ref$as,\n children = _ref.children,\n className = _ref.className,\n isLoading = _ref.isLoading,\n isInverse = _ref.isInverse,\n size = _ref.size,\n rest = _objectWithoutProperties(_ref, _excluded);\n\n var tokens = useTheme();\n var cardStyles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n if (isLoading) {\n return jsx(Shimmer, _extends({\n isInverse: isInverse\n }, rest, {\n \"data-ppui\": \"true\"\n }), children);\n }\n\n var isCardSizeDeprecated = size && ['sm', 'md', 'lg'].some(function (str) {\n return size.includes(str);\n });\n\n if (isCardSizeDeprecated) {\n devWarning(\"Card size \".concat(size, \" is deprecated and will be removed in the next major release.\"));\n }\n\n var sizeStyleMap = {\n xs: cardStyles.sizeXs,\n 'xs-long': cardStyles.sizeXsLong,\n sm: cardStyles.sizeSm,\n md: cardStyles.sizeMd,\n lg: cardStyles.sizeLg\n };\n\n var props = _objectSpread({}, rest);\n\n if (label) {\n props['aria-label'] = label;\n }\n\n return jsx(as, _extends({\n css: [cardStyles.base, sizeStyleMap[size], onClick && cardStyles.clickable],\n className: className,\n \"data-ppui-info\": \"card_2.4.5\",\n onClick: onClick\n }, props), children);\n};\n\nvar Header = function (_ref2) {\n var className = _ref2.className,\n children = _ref2.children,\n rest = _objectWithoutProperties(_ref2, _excluded2);\n\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n return jsx(\"header\", _extends({\n css: _styles.header,\n className: className\n }, rest, {\n \"data-ppui\": \"true\"\n }), jsx(\"h3\", {\n css: _styles.title,\n className: className,\n \"data-ppui\": \"true\"\n }, children));\n};\n\nvar Content = function (_ref3) {\n var className = _ref3.className,\n children = _ref3.children,\n rest = _objectWithoutProperties(_ref3, _excluded3);\n\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n return jsx(\"div\", _extends({\n css: _styles.content,\n className: className\n }, rest, {\n \"data-ppui\": \"true\"\n }), children);\n};\n\nvar Footer = function (_ref4) {\n var className = _ref4.className,\n children = _ref4.children,\n rest = _objectWithoutProperties(_ref4, _excluded4);\n\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n return jsx(\"footer\", _extends({\n css: _styles.footer,\n className: className\n }, rest, {\n \"data-ppui\": \"true\"\n }), children);\n};\n\nCard.Header = Header;\nCard.Content = Content;\nCard.Footer = Footer;\n\nexport { Card, styles as cardStyles };\n","import _taggedTemplateLiteral from '@babel/runtime/helpers/esm/taggedTemplateLiteral';\nimport { css, useTheme, jsx, ClassNames } from '@emotion/react';\nimport { math } from 'polished';\nimport { textStyles, BodyText, CaptionText } from '@paypalcorp/pp-react-text';\nimport { utilStyles, devWarning, uniqueId } from '@paypalcorp/pp-react-utils';\nimport _extends from '@babel/runtime/helpers/esm/extends';\nimport _objectWithoutProperties from '@babel/runtime/helpers/esm/objectWithoutProperties';\nimport React, { forwardRef, useMemo } from 'react';\nimport { CriticalIcon, CheckmarkBackgroundIcon, CheckmarkSmIcon } from '@paypalcorp/pp-react-icons';\nimport _defineProperty from '@babel/runtime/helpers/esm/defineProperty';\nimport { Link } from '@paypalcorp/pp-react-links';\n\nvar _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14, _templateObject15, _templateObject16, _templateObject17, _templateObject18, _templateObject19, _templateObject20, _templateObject21, _templateObject22, _templateObject23, _templateObject24, _templateObject25, _templateObject26, _templateObject27, _templateObject28, _templateObject29, _templateObject30, _templateObject31, _templateObject32;\nfunction styles(tokens) {\n var _utilStyles = utilStyles(tokens),\n screenReader = _utilStyles.screenReader;\n /* istanbul ignore next */\n\n\n if (!Object.keys(tokens).length) {\n // eslint-disable-next-line no-console\n devWarning('Missing Emotion theme. Use ThemeProvider from @emotion/react to pass a valid theme from pp-react.');\n return {};\n }\n\n var sysBorderRadiusSm = tokens.sysBorderRadiusSm,\n sysBorderThicknessNormal = tokens.sysBorderThicknessNormal,\n sysSizeCircleXs = tokens.sysSizeCircleXs,\n sysColorBackgroundSurface = tokens.sysColorBackgroundSurface,\n sysColorSelectedContrast = tokens.sysColorSelectedContrast,\n sysBorderThicknessEmphasis = tokens.sysBorderThicknessEmphasis,\n sysColorStructureBorderHighContrast = tokens.sysColorStructureBorderHighContrast,\n sysColorSelectedMain = tokens.sysColorSelectedMain,\n sysColorErrorMain = tokens.sysColorErrorMain,\n sysColorSuccessMain = tokens.sysColorSuccessMain,\n sysColorBackgroundMediumContrast = tokens.sysColorBackgroundMediumContrast,\n sysSpaceXs = tokens.sysSpaceXs,\n sysSpaceMd = tokens.sysSpaceMd,\n sysSpaceTiny = tokens.sysSpaceTiny,\n sysSizeIconXs = tokens.sysSizeIconXs,\n sysSizeIconLg = tokens.sysSizeIconLg,\n sysSpaceSm = tokens.sysSpaceSm,\n sysBorderRadiusXs = tokens.sysBorderRadiusXs,\n sysSpaceXl = tokens.sysSpaceXl;\n var checkboxItemTextSpacing = math(\"\".concat(sysSizeCircleXs, \" + \").concat(sysSpaceMd, \" + \").concat(sysSpaceTiny)); // tokens not available so created variables\n\n var _textStyles = textStyles(tokens),\n textBody = _textStyles.body,\n textCaption = _textStyles.caption;\n\n var _utilStyles2 = utilStyles(tokens),\n focusStyles = _utilStyles2.focusStyles;\n\n var labelCheckedCommon = function () {\n return css(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n border-color: \", \";\\n background-color: \", \";\\n color: \", \";\\n border-radius: \", \";\\n \"])), sysColorSelectedMain, sysColorSelectedMain, sysColorSelectedContrast, sysBorderRadiusSm);\n }; // Checkbox base class\n\n\n var checkboxBase = css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n label: checkbox_base;\\n position: relative;\\n text-align: start;\\n margin-bottom: 0;\\n \"]))); // Checkbox group class\n\n var checkboxGroup = css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral([\"\\n label: checkbox_group;\\n display: flex;\\n flex-direction: column;\\n margin: 0;\\n padding: 0;\\n border: none;\\n text-align: start;\\n \"]))); // Checkbox inside group class\n\n var groupBase = css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral([\"\\n label: group_base;\\n padding: \", \" 0;\\n \"])), sysSpaceMd); // Checkbox label class\n\n var checkboxLabel = css(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral([\"\\n label: label;\\n -moz-osx-font-smoothing: grayscale;\\n cursor: pointer;\\n display: block;\\n padding-inline-start: \", \";\\n \", \"\\n position: relative;\\n text-align: start;\\n span:first-of-type {\\n inset-inline-start: 0;\\n }\\n -webkit-tap-highlight-color: transparent;\\n \"])), checkboxItemTextSpacing, textBody());\n var groupLabel = css(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral([\"\\n label: group_label;\\n \", \"\\n padding: 0 0 \", \" 0;\\n margin-bottom: \", \";\\n text-align: start;\\n \"])), textBody({\n color: sysColorBackgroundMediumContrast\n }), sysSpaceMd, sysSpaceXs); // Checkbox icon label class\n\n var iconLabel = css(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral([\"\\n label: icon_label;\\n position: relative;\\n top: 0.125rem;\\n margin-left: \", \";\\n \"])), sysSpaceMd); // Checkbox icon container class\n\n var checkIconContainer = function (isDecoration) {\n return css(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral([\"\\n label: checkmark_container;\\n border-radius: \", \";\\n border: \", \" solid\\n \", \";\\n box-sizing: border-box;\\n height: \", \";\\n left: 0;\\n position: absolute;\\n top: \", \";\\n width: \", \";\\n line-height: \", \";\\n text-align: center;\\n background-color: \", \";\\n display: flex;\\n justify-content: center;\\n align-items: center;\\n \"])), sysBorderRadiusSm, sysBorderThicknessNormal, sysColorStructureBorderHighContrast, sysSizeCircleXs, isDecoration ? 'auto' : 0, sysSizeCircleXs, 1.3, sysColorBackgroundSurface);\n };\n\n var checkIcon = css(_templateObject9 || (_templateObject9 = _taggedTemplateLiteral([\"\\n label: check_icon;\\n display: none;\\n font-size: \", \";\\n \"])), sysSizeIconXs);\n var partialIcon = css(_templateObject10 || (_templateObject10 = _taggedTemplateLiteral([\"\\n label: partial_icon;\\n height: \", \";\\n width: \", \";\\n background-color: \", \";\\n border-radius: \", \";\\n \"])), sysSpaceTiny, \"0.875rem\", sysColorSelectedContrast, sysBorderRadiusXs);\n var checkboxInput = css(_templateObject11 || (_templateObject11 = _taggedTemplateLiteral([\"\\n label: checkbox_input;\\n cursor: pointer;\\n opacity: 0;\\n position: absolute;\\n &:checked + label > span > span:first-of-type {\\n \", \"\\n span:first-of-type {\\n display: inline;\\n }\\n }\\n &:focus + label > span > span:first-of-type {\\n \", \";\\n [dir='rtl'] & {\\n left: 0;\\n right: -\", \";\\n }\\n }\\n \"])), labelCheckedCommon(), focusStyles.focusOffsetElement, sysBorderThicknessNormal); // Checkbox error class\n\n var checkboxErrorState = css(_templateObject12 || (_templateObject12 = _taggedTemplateLiteral([\"\\n label: error;\\n &:checked + label > span > span:first-of-type {\\n border-width: \", \";\\n border-color: \", \";\\n }\\n &:focus + label > span > span:first-of-type {\\n [dir='rtl'] & {\\n left: 0;\\n right: -\", \";\\n }\\n }\\n \"])), sysBorderThicknessEmphasis, sysColorErrorMain, sysBorderThicknessEmphasis);\n var errorCheckIconContainer = css(_templateObject13 || (_templateObject13 = _taggedTemplateLiteral([\"\\n label: error_checkbox;\\n border-width: \", \";\\n border-color: \", \";\\n line-height: \", \";\\n \"])), sysBorderThicknessEmphasis, sysColorErrorMain, 1.1);\n var checkboxMessageText = css(_templateObject14 || (_templateObject14 = _taggedTemplateLiteral([\"\\n label: error_text;\\n \", \"\\n display: flex;\\n align-items: center;\\n margin: 0;\\n \"])), textCaption({\n color: sysColorBackgroundMediumContrast\n }));\n var errorIcon = css(_templateObject15 || (_templateObject15 = _taggedTemplateLiteral([\"\\n label: error_icon;\\n color: \", \";\\n margin-inline-end: \", \";\\n \"])), sysColorErrorMain, sysSpaceXs);\n var successIcon = css(_templateObject16 || (_templateObject16 = _taggedTemplateLiteral([\"\\n label: success_icon;\\n color: \", \";\\n margin-inline-end: \", \";\\n \"])), sysColorSuccessMain, sysSpaceXs);\n var labelError = css(_templateObject17 || (_templateObject17 = _taggedTemplateLiteral([\"\\n padding-bottom: \", \";\\n \"])), sysSpaceMd);\n var helper = css(_templateObject18 || (_templateObject18 = _taggedTemplateLiteral([\"\\n label: helper_text;\\n \", \"\\n margin: \", \" 0 0;\\n \"])), textCaption({\n color: sysColorBackgroundMediumContrast\n }), sysSpaceXs);\n var groupHelper = css(_templateObject19 || (_templateObject19 = _taggedTemplateLiteral([\"\\n label: group_helper_text;\\n margin: 0;\\n \"])));\n var checkboxItems = css(_templateObject20 || (_templateObject20 = _taggedTemplateLiteral([\"\\n label: checkbox_items;\\n display: flex;\\n align-items: center;\\n min-height: \", \";\\n margin: 0;\\n \"])), \"1.5rem\");\n var itemThumbnail = css(_templateObject21 || (_templateObject21 = _taggedTemplateLiteral([\"\\n label: thumbnail;\\n display: flex;\\n align-items: center;\\n margin-inline-end: \", \";\\n min-height: auto;\\n pointer-events: none;\\n \"])), sysSpaceSm);\n var itemThumbnailDecoration = css(_templateObject22 || (_templateObject22 = _taggedTemplateLiteral([\"\\n label: thumbnail_decoration;\\n width: \", \";\\n height: \", \";\\n \"])), sysSizeIconLg, sysSizeIconLg);\n var itemText = css(_templateObject23 || (_templateObject23 = _taggedTemplateLiteral([\"\\n label: item_text;\\n margin: 0; /* overwrite default margin */\\n pointer-events: none;\\n \"])));\n var itemSecondaryText = css(_templateObject24 || (_templateObject24 = _taggedTemplateLiteral([\"\\n label: item_secondary_text;\\n display: block;\\n padding-top: \", \";\\n pointer-events: none;\\n \", \";\\n \"])), sysSpaceXs, textCaption({\n color: sysColorBackgroundMediumContrast\n }));\n var groupBaseWithSecText = css(_templateObject25 || (_templateObject25 = _taggedTemplateLiteral([\"\\n label: group_base_with_sec_text;\\n padding: \", \" 0;\\n \"])), sysSpaceSm);\n var legalConsentLabel = css(_templateObject26 || (_templateObject26 = _taggedTemplateLiteral([\"\\n label: legal_consent_label;\\n margin-bottom: \", \";\\n > span:first-of-type {\\n display: flex;\\n }\\n \"])), sysSpaceMd);\n var legalConsentText = css(_templateObject27 || (_templateObject27 = _taggedTemplateLiteral([\"\\n label: legal_consent_text;\\n \", \";\\n \"])), textCaption({\n color: sysColorBackgroundMediumContrast\n }));\n var legalConsentSupportingTextWrapper = css(_templateObject28 || (_templateObject28 = _taggedTemplateLiteral([\"\\n label: legal_consent_supporting_text_wrapper;\\n padding-inline-start: \", \";\\n \", \";\\n margin: 0;\\n \"])), checkboxItemTextSpacing, textCaption({\n color: sysColorBackgroundMediumContrast\n }));\n var legalConsentSupportingTextWrapperWhenNoLabel = css(_templateObject29 || (_templateObject29 = _taggedTemplateLiteral([\"\\n label: legal_consent_supporting_text_wrapper_when_no_label;\\n padding-inline-start: 0;\\n \"])));\n var legalConsentLinksWrapper = css(_templateObject30 || (_templateObject30 = _taggedTemplateLiteral([\"\\n label: legal_consent_links_wrapper;\\n padding: \", \" 0 0 0;\\n margin: 0;\\n list-style-type: none;\\n \"])), sysSpaceMd);\n var legalConsentLinksWrapperWhenNoLabel = css(_templateObject31 || (_templateObject31 = _taggedTemplateLiteral([\"\\n label: legal_consent_links_wrapper_when_no_label;\\n padding-top: 0;\\n \"])));\n var legalConsentGroupSpacing = css(_templateObject32 || (_templateObject32 = _taggedTemplateLiteral([\"\\n label: legal_consent_group_spacing;\\n display: flex;\\n flex-direction: column;\\n row-gap: \", \";\\n align-items: flex-start;\\n \"])), sysSpaceXl);\n return {\n checkboxBase: checkboxBase,\n checkboxGroup: checkboxGroup,\n groupBase: groupBase,\n checkboxLabel: checkboxLabel,\n groupLabel: groupLabel,\n iconLabel: iconLabel,\n checkIconContainer: checkIconContainer,\n checkIcon: checkIcon,\n checkboxInput: checkboxInput,\n checkboxErrorState: checkboxErrorState,\n errorCheckIconContainer: errorCheckIconContainer,\n checkboxMessageText: checkboxMessageText,\n errorIcon: errorIcon,\n partialIcon: partialIcon,\n successIcon: successIcon,\n labelError: labelError,\n helper: helper,\n groupHelper: groupHelper,\n checkboxItems: checkboxItems,\n itemThumbnail: itemThumbnail,\n itemThumbnailDecoration: itemThumbnailDecoration,\n itemText: itemText,\n itemSecondaryText: itemSecondaryText,\n groupBaseWithSecText: groupBaseWithSecText,\n screenReader: screenReader,\n legalConsentLabel: legalConsentLabel,\n legalConsentText: legalConsentText,\n legalConsentSupportingTextWrapper: legalConsentSupportingTextWrapper,\n legalConsentSupportingTextWrapperWhenNoLabel: legalConsentSupportingTextWrapperWhenNoLabel,\n legalConsentLinksWrapper: legalConsentLinksWrapper,\n legalConsentGroupSpacing: legalConsentGroupSpacing,\n legalConsentLinksWrapperWhenNoLabel: legalConsentLinksWrapperWhenNoLabel\n };\n}\n\nvar _excluded = [\"id\", \"label\", \"aria-label\", \"decoration\", \"secondaryText\", \"labelIcon\", \"helperText\", \"errorText\", \"errorIconAriaLabel\", \"error\", \"successText\", \"successIconAriaLabel\", \"partial\", \"name\", \"dir\", \"className\", \"onChange\", \"inCheckboxGroup\"];\nvar Checkbox = forwardRef(function (_ref, ref) {\n var id = _ref.id,\n label = _ref.label,\n ariaLabel = _ref['aria-label'],\n decoration = _ref.decoration,\n secondaryText = _ref.secondaryText,\n labelIcon = _ref.labelIcon,\n helperText = _ref.helperText,\n errorText = _ref.errorText,\n _ref$errorIconAriaLab = _ref.errorIconAriaLabel,\n errorIconAriaLabel = _ref$errorIconAriaLab === void 0 ? 'Error' : _ref$errorIconAriaLab,\n error = _ref.error,\n successText = _ref.successText,\n _ref$successIconAriaL = _ref.successIconAriaLabel,\n successIconAriaLabel = _ref$successIconAriaL === void 0 ? 'Success' : _ref$successIconAriaL,\n partial = _ref.partial,\n _ref$name = _ref.name,\n name = _ref$name === void 0 ? 'default' : _ref$name,\n dir = _ref.dir,\n className = _ref.className,\n onChange = _ref.onChange,\n inCheckboxGroup = _ref.inCheckboxGroup,\n rest = _objectWithoutProperties(_ref, _excluded);\n\n var tokens = useTheme();\n var checkboxStyles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n var cssVal = [checkboxStyles.checkboxBase, error && checkboxStyles.checkboxErrorState, inCheckboxGroup && checkboxStyles.groupBase, inCheckboxGroup && secondaryText && checkboxStyles.groupBaseWithSecText];\n\n var checkboxTextItemsElm = function () {\n var thumbnail = decoration && jsx(\"span\", {\n css: checkboxStyles.itemThumbnail,\n \"data-ppui\": \"true\"\n }, jsx(ClassNames, {\n \"data-ppui\": \"true\"\n }, function (_ref2) {\n var css = _ref2.css,\n cx = _ref2.cx;\n return React.cloneElement(decoration, {\n className: cx(decoration.props.className, css(checkboxStyles.itemThumbnailDecoration))\n });\n }));\n var itemText = jsx(\"span\", {\n css: checkboxStyles.itemText,\n \"data-ppui\": \"true\"\n }, jsx(BodyText, {\n as: \"span\",\n css: [!label && checkboxStyles.screenReader],\n \"data-ppui\": \"true\"\n }, label !== null && label !== void 0 ? label : ariaLabel), secondaryText && jsx(CaptionText, {\n css: checkboxStyles.itemSecondaryText,\n as: \"span\",\n \"data-ppui\": \"true\"\n }, secondaryText));\n return jsx(\"span\", {\n css: checkboxStyles.checkboxItems,\n \"data-ppui\": \"true\"\n }, thumbnail, itemText);\n };\n\n var checkboxId = id !== null && id !== void 0 ? id : uniqueId('Checkbox_');\n var checkboxErrorIcon = jsx(CriticalIcon, {\n css: checkboxStyles.errorIcon,\n size: \"sm\",\n role: \"img\",\n \"aria-label\": errorIconAriaLabel,\n \"data-ppui\": \"true\"\n });\n var checkboxSuccessIcon = jsx(CheckmarkBackgroundIcon, {\n css: checkboxStyles.successIcon,\n size: \"sm\",\n role: \"img\",\n \"aria-label\": successIconAriaLabel,\n \"data-ppui\": \"true\"\n });\n var message;\n\n if (error && !successText) {\n message = errorText && jsx(\"p\", {\n css: checkboxStyles.checkboxMessageText,\n id: name,\n \"data-ppui\": \"true\"\n }, checkboxErrorIcon, errorText);\n } else if (successText && !error) {\n message = successText && jsx(\"p\", {\n css: checkboxStyles.checkboxMessageText,\n id: name,\n \"data-ppui\": \"true\"\n }, checkboxSuccessIcon, successText);\n }\n\n return jsx(\"div\", {\n css: cssVal,\n className: className,\n \"data-id\": \"checkbox\",\n dir: dir,\n \"data-ppui-info\": \"checkbox_4.8.8\"\n }, jsx(\"input\", _extends({\n css: [checkboxStyles.checkboxInput, error && checkboxStyles.checkboxErrorState],\n tabIndex: 0,\n type: \"checkbox\",\n id: checkboxId,\n name: name,\n ref: ref,\n onChange: function handleChange(evt) {\n // stop the propagation to the parent if onChange exists\n\n /* istanbul ignore next */\n if (onChange) {\n evt.stopPropagation();\n onChange(evt);\n }\n }\n }, rest, error && errorText && {\n 'aria-describedby': name,\n 'aria-invalid': true\n }, {\n \"data-ppui\": \"true\"\n })), function renderLabel() {\n var _checkboxStyles$check;\n\n var labelIconElm = labelIcon && jsx(\"span\", {\n css: checkboxStyles.iconLabel,\n \"data-ppui\": \"true\"\n }, labelIcon);\n var checkboxCheckIcon = jsx(CheckmarkSmIcon, {\n css: checkboxStyles.checkIcon,\n size: \"xs\",\n \"data-ppui\": \"true\"\n });\n var checkboxPartialIcon = jsx(\"span\", {\n css: checkboxStyles.partialIcon,\n \"data-ppui\": \"true\"\n });\n var helperTextElm = !error && !successText && helperText && jsx(\"p\", {\n css: checkboxStyles.helper,\n \"data-ppui\": \"true\"\n }, helperText);\n var iconContainerCssVal = [(_checkboxStyles$check = checkboxStyles.checkIconContainer) === null || _checkboxStyles$check === void 0 ? void 0 : _checkboxStyles$check.call(checkboxStyles, !!decoration), error && checkboxStyles.errorCheckIconContainer];\n var labelContainerCssVal = [checkboxStyles.checkboxLabel, (error || successText) && !inCheckboxGroup && checkboxStyles.labelError];\n var checkboxItemsIcon = partial ? checkboxPartialIcon : checkboxCheckIcon;\n var checkboxItemsElm = jsx(\"span\", {\n css: checkboxStyles.checkboxItems,\n \"data-ppui\": \"true\"\n }, jsx(\"span\", {\n css: iconContainerCssVal,\n \"data-ppui\": \"true\"\n }, checkboxItemsIcon), checkboxTextItemsElm());\n return jsx(\"label\", {\n css: labelContainerCssVal,\n htmlFor: checkboxId,\n \"data-ppui\": \"true\"\n }, checkboxItemsElm, labelIconElm, helperTextElm);\n }(), message);\n});\n\nvar _excluded$1 = [\"id\", \"name\", \"label\", \"links\", \"onChange\", \"errorText\", \"errorIconAriaLabel\", \"className\", \"children\"];\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nvar LegalConsent = forwardRef(function (_ref, ref) {\n var id = _ref.id,\n name = _ref.name,\n label = _ref.label,\n _ref$links = _ref.links,\n links = _ref$links === void 0 ? [] : _ref$links,\n onChange = _ref.onChange,\n errorText = _ref.errorText,\n _ref$errorIconAriaLab = _ref.errorIconAriaLabel,\n errorIconAriaLabel = _ref$errorIconAriaLab === void 0 ? 'Error' : _ref$errorIconAriaLab,\n className = _ref.className,\n children = _ref.children,\n rest = _objectWithoutProperties(_ref, _excluded$1);\n\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n var linkComponents = links.map(function (props, index) {\n var link = React.createElement(Link, _objectSpread(_objectSpread({}, props), {}, {\n size: 'sm'\n }));\n return jsx(\"li\", {\n key: index,\n \"data-ppui\": \"true\"\n }, link);\n });\n var checkboxId = id !== null && id !== void 0 ? id : uniqueId('LegalConsent_');\n var cssVal = [_styles.checkboxBase, errorText && _styles.checkboxErrorState];\n var legalConsentSupportingTextWrapperCssVal = [_styles.legalConsentSupportingTextWrapper, label && errorText && _styles.labelError, !(label === null || label === void 0 ? void 0 : label.length) && _styles.legalConsentSupportingTextWrapperWhenNoLabel];\n var legalConsentLinksWrapperCssVal = [_styles.legalConsentGroupSpacing, _styles.legalConsentLinksWrapper, !(label === null || label === void 0 ? void 0 : label.length) && _styles.legalConsentLinksWrapperWhenNoLabel];\n var componentMarkup;\n var Tag = 'p';\n\n if (linkComponents.length) {\n componentMarkup = jsx(\"ul\", {\n css: legalConsentLinksWrapperCssVal,\n \"data-ppui\": \"true\"\n }, linkComponents);\n Tag = 'div';\n } else {\n componentMarkup = children;\n }\n\n return jsx(\"div\", {\n css: cssVal,\n className: className,\n \"data-ppui-info\": \"checkbox_4.8.8\"\n }, label && jsx(React.Fragment, null, jsx(\"input\", _extends({\n css: [_styles.checkboxInput, errorText && _styles.checkboxErrorState],\n tabIndex: 0,\n type: \"checkbox\",\n id: checkboxId,\n name: name,\n ref: ref,\n onChange: function handleChange(evt) {\n // stop the propagation to the parent if onChange exists\n\n /* istanbul ignore next */\n if (onChange) {\n evt.stopPropagation();\n onChange(evt);\n }\n }\n }, rest, errorText && {\n 'aria-describedby': name,\n 'aria-invalid': true\n }, {\n \"data-ppui\": \"true\"\n })), function renderLabel() {\n var _styles$checkIconCont;\n\n var iconContainerCssVal = [(_styles$checkIconCont = _styles.checkIconContainer) === null || _styles$checkIconCont === void 0 ? void 0 : _styles$checkIconCont.call(_styles, false), errorText && _styles.errorCheckIconContainer];\n var checkboxItemsElm = jsx(\"span\", {\n \"data-ppui\": \"true\"\n }, jsx(\"span\", {\n css: iconContainerCssVal,\n \"data-ppui\": \"true\"\n }, jsx(CheckmarkSmIcon, {\n css: _styles.checkIcon,\n size: \"xs\",\n \"data-ppui\": \"true\"\n })), jsx(CaptionText, {\n css: _styles.legalConsentText,\n as: \"span\",\n \"data-ppui\": \"true\"\n }, label));\n var labelContainerCssVal = [_styles.checkboxLabel, _styles.checkboxItems, _styles.legalConsentLabel];\n return jsx(\"label\", {\n css: labelContainerCssVal,\n htmlFor: checkboxId,\n \"data-ppui\": \"true\"\n }, checkboxItemsElm);\n }()), jsx(Tag, {\n css: legalConsentSupportingTextWrapperCssVal,\n \"data-ppui\": \"true\"\n }, componentMarkup), label && errorText && jsx(\"p\", {\n css: _styles.checkboxMessageText,\n id: name,\n \"data-ppui\": \"true\"\n }, jsx(CriticalIcon, {\n css: _styles.errorIcon,\n size: \"sm\",\n role: \"img\",\n \"aria-label\": errorIconAriaLabel,\n \"data-ppui\": \"true\"\n }), errorText));\n});\n\nvar _excluded$2 = [\"children\", \"className\"];\n\nvar LegalConsentGroup = function (_ref) {\n var children = _ref.children,\n className = _ref.className,\n rest = _objectWithoutProperties(_ref, _excluded$2);\n\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n return jsx(\"div\", _extends({\n css: _styles.legalConsentGroupSpacing,\n className: className\n }, rest, {\n \"data-ppui\": \"true\"\n }), children);\n};\n\nvar _excluded$3 = [\"label\", \"labelIcon\", \"helperText\", \"errorText\", \"error\", \"successText\", \"className\", \"children\"];\n\n// eslint-disable-next-line complexity\nvar CheckboxGroup = function (_ref) {\n var label = _ref.label,\n labelIcon = _ref.labelIcon,\n helperText = _ref.helperText,\n errorText = _ref.errorText,\n error = _ref.error,\n successText = _ref.successText,\n className = _ref.className,\n children = _ref.children,\n rest = _objectWithoutProperties(_ref, _excluded$3);\n\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n var isError = error && !successText;\n var isSuccess = successText && !error;\n var checkboxErrorIcon = jsx(CriticalIcon, {\n css: _styles.errorIcon,\n size: \"sm\",\n \"data-ppui\": \"true\"\n });\n var checkboxSuccessIcon = jsx(CheckmarkBackgroundIcon, {\n css: _styles.successIcon,\n size: \"sm\",\n \"data-ppui\": \"true\"\n });\n var helperCssVal = [!error && _styles.helper, (isError || isSuccess) && _styles.checkboxMessageText, _styles.groupHelper];\n var message = (errorText || helperText || successText) && jsx(\"p\", {\n css: helperCssVal,\n \"data-ppui\": \"true\"\n }, isError && checkboxErrorIcon, isSuccess && checkboxSuccessIcon, isError && errorText, isSuccess && successText, !isError && !isSuccess && helperText);\n var labelIconElm = labelIcon && jsx(\"span\", {\n css: _styles.iconLabel,\n \"data-ppui\": \"true\"\n }, labelIcon);\n var childProps = {\n error: error,\n inCheckboxGroup: true\n };\n var checkboxList = React.Children.toArray(children).map(function (child) {\n return React.cloneElement(child, childProps);\n });\n return jsx(\"fieldset\", _extends({\n css: [_styles.checkboxGroup, error && _styles.checkboxErrorState],\n className: className,\n \"data-ppui-info\": \"checkbox_4.8.8\"\n }, rest), jsx(\"legend\", {\n css: _styles.groupLabel,\n \"data-ppui\": \"true\"\n }, label, labelIconElm), checkboxList, message);\n};\n\nexport { Checkbox, CheckboxGroup, LegalConsent, LegalConsentGroup, styles as checkboxStyles };\n","import _extends from '@babel/runtime/helpers/esm/extends';\nimport _objectWithoutProperties from '@babel/runtime/helpers/esm/objectWithoutProperties';\nimport { useMemo } from 'react';\nimport { InformationIcon, CheckmarkBackgroundIcon, WarningIcon, CriticalIcon } from '@paypalcorp/pp-react-icons';\nimport { css, useTheme, jsx } from '@emotion/react';\nimport _taggedTemplateLiteral from '@babel/runtime/helpers/esm/taggedTemplateLiteral';\nimport { textStyles } from '@paypalcorp/pp-react-text';\nimport { devWarning } from '@paypalcorp/pp-react-utils';\n\nvar _templateObject, _templateObject2, _templateObject3;\nfunction styles(tokens) {\n /* istanbul ignore next */\n if (!Object.keys(tokens).length) {\n devWarning('Missing Emotion theme. Use ThemeProvider from @emotion/react to pass a valid theme from pp-react.');\n return {};\n }\n\n var sysSpaceSm = tokens.sysSpaceSm,\n sysSpaceLg = tokens.sysSpaceLg,\n sysSizeIconXs = tokens.sysSizeIconXs;\n\n var _textStyles = textStyles(tokens),\n textCaption = _textStyles.caption;\n\n var base = css(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n label: contextual-alert_base;\\n display: flex;\\n padding: \", \" 0;\\n \", \"\\n \"])), sysSpaceLg, textCaption());\n var statusIcon = css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n label: status_icon;\\n margin-top: \", \";\\n margin-right: \", \";\\n height: \", \";\\n\\n [dir='rtl'] & {\\n margin-left: \", \";\\n margin-right: 0;\\n }\\n \"])), '0.0625rem', sysSpaceSm, sysSizeIconXs, sysSpaceSm);\n var noPadding = css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral([\"\\n label: no_padding;\\n padding: 0;\\n \"])));\n return {\n base: base,\n statusIcon: statusIcon,\n noPadding: noPadding\n };\n}\n\nvar _excluded = [\"className\", \"type\", \"typeIconAriaLabel\", \"children\", \"noPadding\"];\nvar iconMap = {\n info: InformationIcon,\n success: CheckmarkBackgroundIcon,\n warning: WarningIcon,\n error: CriticalIcon\n};\n\nvar ContextualAlert = function (_ref) {\n var className = _ref.className,\n _ref$type = _ref.type,\n type = _ref$type === void 0 ? 'info' : _ref$type,\n _ref$typeIconAriaLabe = _ref.typeIconAriaLabel,\n typeIconAriaLabel = _ref$typeIconAriaLabe === void 0 ? type : _ref$typeIconAriaLabe,\n children = _ref.children,\n _ref$noPadding = _ref.noPadding,\n noPadding = _ref$noPadding === void 0 ? false : _ref$noPadding,\n rest = _objectWithoutProperties(_ref, _excluded);\n\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n var iconCssVal = _styles.statusIcon;\n var StatusIcon = iconMap[type];\n var baseCSS = [_styles.base, noPadding && _styles.noPadding];\n return jsx(\"div\", _extends({\n role: \"alert\",\n css: baseCSS,\n className: className,\n \"data-ppui-info\": \"contextual-alert_3.2.6\"\n }, rest), jsx(StatusIcon, {\n css: iconCssVal,\n size: \"xs\",\n color: {\n info: 'sysColorInfoContrast',\n success: 'sysColorSuccessMain',\n warning: 'sysColorWarningAlt',\n error: 'sysColorErrorMain'\n }[type],\n role: \"img\",\n \"aria-label\": typeIconAriaLabel,\n \"data-ppui\": \"true\"\n }), children);\n};\n\nexport { ContextualAlert, styles as contextualAlertStyles };\n","import _extends from '@babel/runtime/helpers/esm/extends';\nimport _slicedToArray from '@babel/runtime/helpers/esm/slicedToArray';\nimport _objectWithoutProperties from '@babel/runtime/helpers/esm/objectWithoutProperties';\nimport React, { forwardRef, useContext } from 'react';\nimport { MaskedTextInput } from '@paypalcorp/pp-react-masked-text-input';\nimport { IntlContext, getCurrencyMaskOptions } from '@paypalcorp/pp-react-intl';\n\nvar _excluded = [\"name\", \"maskOptions\", \"prefix\", \"suffix\", \"currencyType\", \"value\"];\nvar CurrencyInput = forwardRef(function (_ref, ref) {\n var name = _ref.name,\n maskOptions = _ref.maskOptions,\n prefix = _ref.prefix,\n suffix = _ref.suffix,\n _ref$currencyType = _ref.currencyType,\n currencyType = _ref$currencyType === void 0 ? 'USD' : _ref$currencyType,\n value = _ref.value,\n rest = _objectWithoutProperties(_ref, _excluded);\n\n var intlContext = useContext(IntlContext);\n\n var _getCurrencyMaskOptio = getCurrencyMaskOptions(intlContext, maskOptions, currencyType),\n currencyMaskOptions = _getCurrencyMaskOptio.currencyMaskOptions,\n intlCurrencyPrefix = _getCurrencyMaskOptio.intlCurrencyPrefix,\n intlCurrencySuffix = _getCurrencyMaskOptio.intlCurrencySuffix;\n\n var inputMode = 'decimal';\n var computedValue = value;\n\n if (currencyMaskOptions) {\n //istanbul ignore next\n if (currencyMaskOptions.scale === 0) {\n inputMode = 'numeric';\n }\n\n if (computedValue) {\n var _computedValue$split = computedValue.split('.'),\n _computedValue$split2 = _slicedToArray(_computedValue$split, 2),\n wholePart = _computedValue$split2[0],\n fractionalPart = _computedValue$split2[1];\n\n if (fractionalPart) {\n var fractionValue = fractionalPart.substring(0, currencyMaskOptions.scale);\n computedValue = wholePart + (fractionValue ? '.' + fractionValue : '');\n }\n }\n }\n\n return /*#__PURE__*/React.createElement(MaskedTextInput, _extends({\n name: name,\n value: computedValue,\n maskOptions: currencyMaskOptions,\n prefix: prefix ? prefix : intlCurrencyPrefix,\n suffix: suffix ? suffix : intlCurrencySuffix,\n inputMode: inputMode,\n ref: ref,\n \"data-ppui-info\": \"currency-input_2.0.38\"\n }, rest));\n});\n\nexport { CurrencyInput };\n","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 _slicedToArray from '@babel/runtime/helpers/esm/slicedToArray';\nimport React, { useMemo, useRef, useState } from 'react';\nimport { TableHeadingCell, TableHead, TableCell, TableRow, TableBody as TableBody$2, ResponsiveTable, Table, PPTableContext, TableFoot } from '@paypalcorp/pp-react-table';\nimport { Button, ButtonGroup } from '@paypalcorp/pp-react-buttons';\nimport { devWarning } from '@paypalcorp/pp-react-utils';\nimport { SettingsIcon, ArrowUpSmIcon, ArrowDownSmIcon, RefreshIcon, Icon, ChevronUpIcon, ChevronDownIcon } from '@paypalcorp/pp-react-icons';\nimport { LoadingSpinner } from '@paypalcorp/pp-react-loading-spinner';\nimport { IconButton } from '@paypalcorp/pp-react-icon-button';\nimport { Checkbox } from '@paypalcorp/pp-react-checkbox';\nimport { css, useTheme, jsx, ClassNames } from '@emotion/react';\nimport _taggedTemplateLiteral from '@babel/runtime/helpers/esm/taggedTemplateLiteral';\nimport { stripUnit, remToPx } from 'polished';\nimport { ActionMenu } from '@paypalcorp/pp-react-menu';\nimport _typeof from '@babel/runtime/helpers/esm/typeof';\n\nvar _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14, _templateObject15, _templateObject16;\nfunction styles(tokens) {\n /* istanbul ignore next */\n if (!Object.keys(tokens).length) {\n devWarning('Missing Emotion theme. Use ThemeProvider from @emotion/react to pass a valid theme from pp-react.');\n return {};\n }\n\n var sysSpaceSm = tokens.sysSpaceSm,\n sysSpaceMd = tokens.sysSpaceMd,\n sysSpaceXs = tokens.sysSpaceXs,\n sysSizePictogramSm = tokens.sysSizePictogramSm,\n sysSizeCircleLg = tokens.sysSizeCircleLg,\n sysSizeMediaMd = tokens.sysSizeMediaMd,\n sysBorderThicknessNormal = tokens.sysBorderThicknessNormal,\n sysBorderRadiusInteractive = tokens.sysBorderRadiusInteractive,\n sysColorPrimaryMain = tokens.sysColorPrimaryMain,\n sysColorStructureScrim = tokens.sysColorStructureScrim;\n var mdBreakpoint = stripUnit(remToPx(sysSizeMediaMd));\n var flexContainer = css(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n display: flex;\\n align-items: center;\\n \"])));\n var settingsIcon = css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n display: grid;\\n grid-template-columns: 1fr auto;\\n gap: \", \";\\n align-items: center;\\n \"])), sysSpaceMd);\n var interactiveCellCheckbox = css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral([\"\\n label {\\n display: block;\\n }\\n \"])));\n var interactiveCellCheckboxDisabled = css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral([\"\\n label: interactive_cell_checkbox_disabled;\\n visibility: hidden;\\n \"])));\n var emptyTableLabel = css(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral([\"\\n label: empty_table_label;\\n background-size: \", \";\\n \"])), sysSizeCircleLg);\n var infoBlock = css(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral([\"\\n label: info_block;\\n margin-top: \", \";\\n display: grid;\\n grid-template-columns: auto;\\n grid-template-rows: auto auto;\\n place-items: center;\\n \"])), sysSpaceMd);\n var infoBlockMessage = css(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral([\"\\n label: iblock_msg;\\n margin: \", \" 0;\\n \"])), sysSpaceMd);\n var infoBlockAction = css(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral([\"\\n label: iblock_action;\\n margin: \", \" 0;\\n \"])), sysSpaceMd);\n var infoBlockDecoration = css(_templateObject9 || (_templateObject9 = _taggedTemplateLiteral([\"\\n label: iblock_deco;\\n width: \", \";\\n \"])), sysSizePictogramSm);\n var iconMessage = css(_templateObject10 || (_templateObject10 = _taggedTemplateLiteral([\"\\n label: icon_message;\\n padding: \", \";\\n display: inline-grid;\\n grid-template-columns: auto 1fr;\\n place-items: center;\\n gap: \", \";\\n height: auto;\\n \"])), sysSpaceSm, sysSpaceSm);\n var seeMoreBlock = css(_templateObject11 || (_templateObject11 = _taggedTemplateLiteral([\"\\n label: see_more;\\n padding: \", \" \", \";\\n \"])), sysSpaceSm, sysSpaceMd);\n var headerButton = css(_templateObject12 || (_templateObject12 = _taggedTemplateLiteral([\"\\n label: header_button;\\n margin-left: \", \";\\n\\n [dir='rtl'] & {\\n margin-right: \", \";\\n margin-left: 0;\\n }\\n \"])), sysSpaceXs, sysSpaceXs);\n var currentlySortedByIcon = css(_templateObject13 || (_templateObject13 = _taggedTemplateLiteral([\"\\n label: currently_sorted_by_icon;\\n color: \", \";\\n border: \", \" solid \", \";\\n border-radius: \", \";\\n \"])), sysColorPrimaryMain, sysBorderThicknessNormal, sysColorPrimaryMain, sysBorderRadiusInteractive);\n var tableLoading = css(_templateObject14 || (_templateObject14 = _taggedTemplateLiteral([\"\\n label: data_table_loading;\\n position: relative;\\n\\n &:before {\\n content: ' ';\\n position: absolute;\\n inset: 0 0 0 0;\\n background-color: \", \";\\n z-index: 1;\\n }\\n \"])), sysColorStructureScrim);\n var spinnerBlock = css(_templateObject15 || (_templateObject15 = _taggedTemplateLiteral([\"\\n label: data_table_spinner;\\n padding: \", \";\\n display: grid;\\n place-items: center;\\n \"])), sysSpaceMd);\n var spinnerOverlay = css(_templateObject16 || (_templateObject16 = _taggedTemplateLiteral([\"\\n label: data_table_spinner;\\n position: absolute;\\n top: 50%;\\n left: 50%;\\n transform: translate(-50%, -50%);\\n z-index: 1;\\n \"])));\n return {\n mdBreakpoint: mdBreakpoint,\n flexContainer: flexContainer,\n settingsIcon: settingsIcon,\n seeMoreBlock: seeMoreBlock,\n interactiveCellCheckbox: interactiveCellCheckbox,\n interactiveCellCheckboxDisabled: interactiveCellCheckboxDisabled,\n emptyTableLabel: emptyTableLabel,\n headerButton: headerButton,\n tableLoading: tableLoading,\n spinnerBlock: spinnerBlock,\n spinnerOverlay: spinnerOverlay,\n iconMessage: iconMessage,\n infoBlock: infoBlock,\n infoBlockMessage: infoBlockMessage,\n infoBlockAction: infoBlockAction,\n infoBlockDecoration: infoBlockDecoration,\n currentlySortedByIcon: currentlySortedByIcon\n };\n}\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n/*\n * We're now assuming that columnOrder exists and includes only the names\n * of columns which are visible. This has been taken care of in dataTable.tsx.\n */\n\nvar TableHeader = function (_ref) {\n var columns = _ref.columns,\n columnOrder = _ref.columnOrder,\n isInteractive = _ref.isInteractive,\n _ref$toggleAllLabel = _ref.toggleAllLabel,\n toggleAllLabel = _ref$toggleAllLabel === void 0 ? 'Toggle all rows' : _ref$toggleAllLabel,\n selectedRows = _ref.selectedRows,\n idPrefix = _ref.idPrefix,\n rows = _ref.rows,\n interactiveCellContentClassName = _ref.interactiveCellContentClassName,\n onSelection = _ref.onSelection,\n onSort = _ref.onSort,\n sortInProgress = _ref.sortInProgress,\n settings = _ref.settings,\n tableContext = _ref.tableContext;\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n var rowIds = useMemo(function () {\n return rows.reduce(function (acc, _ref2) {\n var id = _ref2.id,\n isUnselectable = _ref2.isUnselectable;\n\n if (!isUnselectable) {\n acc.push(id);\n }\n\n return acc;\n }, []);\n }, [rows]);\n var checkboxElm;\n var checkboxElmCSSVal = [_styles.flexContainer, rowIds.length === 0 && _styles.interactiveCellCheckboxDisabled];\n\n if (isInteractive) {\n var isAnythingChecked = selectedRows.length > 0;\n var allChecked = rowIds.length && selectedRows.length === rowIds.length;\n checkboxElm = jsx(Checkbox, {\n name: \"\".concat(idPrefix, \"DataTableToggleAll\"),\n id: \"\".concat(idPrefix, \"DataTableToggleAll\"),\n \"aria-label\": toggleAllLabel,\n css: checkboxElmCSSVal,\n partial: isAnythingChecked && !allChecked,\n checked: isAnythingChecked || allChecked,\n onChange: function handleChange(evt) {\n onSelection(evt.target.checked ? rowIds : []);\n },\n \"data-ppui\": \"true\"\n });\n }\n\n var renderInteractiveCellContent = function (content) {\n return jsx(\"div\", {\n css: _styles.flexContainer,\n className: interactiveCellContentClassName,\n \"data-ppui\": \"true\"\n }, checkboxElm, content);\n };\n\n var hasContent = function (title) {\n return typeof title === 'string' && title.length > 0 || !!title;\n };\n\n var renderColumnHeader = function (name, _ref3, index, isLast) {\n var title = _ref3.title,\n sortButtonLabel = _ref3.sortButtonLabel,\n sortDirection = _ref3.sortDirection,\n isSortCurrent = _ref3.isSortCurrent,\n align = _ref3.align,\n width = _ref3.width,\n claimsRemainingSpace = _ref3.claimsRemainingSpace;\n var contents = title;\n\n var handleClick = function () {\n /* istanbul ignore next */\n if (onSort) {\n onSort(name, sortDirection === 'ascending' ? 'descending' : 'ascending');\n }\n };\n\n var settingsClick = function () {\n /* istanbul ignore next */\n if (settings && settings.onClick) {\n settings.onClick();\n }\n };\n\n if (sortDirection) {\n var SortIcon = sortDirection === 'ascending' ? ArrowUpSmIcon : ArrowDownSmIcon;\n var labelPrefix = isSortCurrent ? 'Currently' : '';\n var hiddenLabel = sortButtonLabel || \"\".concat(labelPrefix, \" sorted by \").concat(name, \" in \").concat(sortDirection, \" order\");\n contents = jsx(\"div\", {\n css: _styles.flexContainer,\n \"data-ppui\": \"true\"\n }, title, jsx(ClassNames, {\n \"data-ppui\": \"true\"\n }, function (_ref4) {\n var css = _ref4.css;\n return jsx(IconButton, {\n css: _styles.headerButton,\n iconClassName: isSortCurrent && css(_styles.currentlySortedByIcon),\n svgIconComponent: SortIcon,\n onClick: handleClick,\n buttonType: \"tertiary\",\n btnState: sortInProgress === name ? 'processing' : 'initial',\n size: \"sm\",\n \"data-ppui\": \"true\"\n }, hiddenLabel);\n }));\n }\n\n if (index === 0 && isInteractive) {\n contents = renderInteractiveCellContent(contents);\n }\n\n if (isLast && typeof (settings === null || settings === void 0 ? void 0 : settings.onClick) === 'function') {\n var icon = jsx(IconButton, {\n svgIconComponent: SettingsIcon,\n buttonType: \"tertiary\",\n onClick: settingsClick,\n \"data-ppui\": \"true\"\n }, settings.screenReaderText);\n\n if (hasContent(title)) {\n contents = jsx(\"div\", {\n css: _styles.settingsIcon,\n \"data-ppui\": \"true\"\n }, jsx(\"div\", {\n \"data-ppui\": \"true\"\n }, contents), jsx(\"div\", {\n \"data-ppui\": \"true\"\n }, icon));\n } else {\n var _align;\n\n contents = icon;\n align = (_align = align) !== null && _align !== void 0 ? _align : 'end';\n }\n }\n\n var cellContext = _objectSpread(_objectSpread({}, tableContext), {}, {\n section: 'thead',\n isFirst: index === 0,\n isSticky: true\n });\n\n return jsx(TableHeadingCell, {\n key: name,\n scope: \"col\",\n \"aria-sort\": sortDirection,\n align: align,\n width: width,\n tableContext: cellContext,\n claimsRemainingSpace: claimsRemainingSpace,\n \"data-ppui\": \"true\"\n }, contents);\n };\n\n var lastIndex = columnOrder.length - 1;\n var headerElms = columnOrder.map(function (name, index) {\n return renderColumnHeader(name, columns[name], index, index === lastIndex);\n });\n return jsx(TableHead, {\n sticky: true,\n \"data-ppui\": \"true\"\n }, jsx(\"tr\", {\n \"data-ppui\": \"true\"\n }, headerElms));\n};\n\nvar TableHeader$1 = React.memo(TableHeader);\n\nfunction ownKeys$1(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread$1(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$1(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$1(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n/*\n * We're now assuming that columnOrder exists and includes only the names\n * of columns which are visible. This has been taken care of in dataTable.tsx.\n */\n\nvar TableBody = function (_ref) {\n var tableContext = _ref.tableContext,\n rows = _ref.rows,\n isInteractive = _ref.isInteractive,\n idPrefix = _ref.idPrefix,\n selectedRows = _ref.selectedRows,\n columns = _ref.columns,\n columnOrder = _ref.columnOrder,\n interactiveCellContentClassName = _ref.interactiveCellContentClassName,\n onSelection = _ref.onSelection,\n loadingProps = _ref.loadingProps;\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n var renderCellContent = function (row, columnName) {\n var content = row[columnName] ? row[columnName].value : '';\n\n if (columns[columnName].cellAs) {\n var Component = columns[columnName].cellAs;\n content = jsx(Component, _extends({\n id: row.id\n }, row[columnName], {\n \"data-ppui\": \"true\"\n }));\n }\n\n return content;\n };\n\n var renderInteractiveCellContent = function (checkboxElm, content) {\n return jsx(\"div\", {\n css: _styles.flexContainer,\n className: interactiveCellContentClassName,\n \"data-ppui\": \"true\"\n }, checkboxElm, content);\n };\n\n var renderCells = function (row, checkboxElm) {\n return columnOrder.map(function (columnName, index) {\n var content = renderCellContent(row, columnName);\n var _columns$columnName = columns[columnName],\n mobile = _columns$columnName.mobile,\n align = _columns$columnName.align,\n width = _columns$columnName.width;\n\n var cellContext = _objectSpread$1(_objectSpread$1({}, tableContext), {}, {\n section: 'tbody'\n });\n\n if (index === 0 && isInteractive) {\n cellContext.isFirst = true;\n return jsx(TableHeadingCell, {\n tableContext: cellContext,\n key: columnName,\n mobile: mobile,\n align: align,\n width: width,\n scope: \"row\",\n \"data-ppui\": \"true\"\n }, renderInteractiveCellContent(checkboxElm, content));\n }\n\n return jsx(TableCell, {\n tableContext: cellContext,\n key: columnName,\n mobile: mobile,\n align: align,\n width: width,\n \"data-ppui\": \"true\"\n }, content);\n });\n };\n\n var rowElms = rows.map(function (row) {\n var key = row.id;\n var checkboxElm;\n\n if (isInteractive) {\n checkboxElm = jsx(Checkbox, {\n name: \"\".concat(idPrefix, \"DataTable\").concat(key),\n id: \"\".concat(idPrefix, \"DataTable\").concat(key),\n \"aria-label\": key,\n css: [_styles.interactiveCellCheckbox, row.isUnselectable && _styles.interactiveCellCheckboxDisabled],\n disabled: !!row.isUnselectable,\n checked: selectedRows.includes(key),\n onChange: function handleChange(evt) {\n var updatedSelection = evt.target.checked ? selectedRows.concat(key) : selectedRows.filter(function (item) {\n return item !== key;\n });\n onSelection(updatedSelection);\n },\n \"data-ppui\": \"true\"\n });\n }\n\n var isSelected = isInteractive && selectedRows.includes(key);\n var cellElms = renderCells(row, checkboxElm);\n return jsx(TableRow, {\n key: key,\n isSelected: isSelected,\n tableContext: {\n section: 'tbody'\n },\n \"data-ppui\": \"true\"\n }, cellElms);\n });\n\n var EmptyBlock = function (_ref2) {\n var decoration = _ref2.decoration,\n buttonLabel = _ref2.buttonLabel,\n buttonRef = _ref2.buttonRef,\n message = _ref2.message,\n isError = _ref2.isError,\n buttonAction = _ref2.buttonAction,\n processing = _ref2.processing;\n var tableStyles = _styles;\n /* istanbul ignore next */\n\n var button = buttonLabel && buttonAction ? jsx(Button, {\n onClick: buttonAction,\n secondary: isError,\n tertiary: !isError,\n size: \"sm\",\n ref: buttonRef,\n key: \"load-btn\",\n btnState: processing ? 'processing' : 'initial',\n \"data-ppui\": \"true\"\n }, buttonLabel) : null;\n return jsx(\"div\", {\n css: tableStyles.infoBlock,\n \"data-ppui\": \"true\"\n }, decoration, jsx(\"div\", {\n css: tableStyles.infoBlockMessage,\n \"data-ppui\": \"true\"\n }, message), jsx(\"div\", {\n css: tableStyles.infoBlockAction,\n \"data-ppui\": \"true\"\n }, button));\n };\n\n if (rowElms.length) {\n return jsx(TableBody$2, {\n \"data-ppui\": \"true\"\n }, rowElms);\n }\n\n var contents;\n\n if (loadingProps.errorMsg) {\n contents = jsx(EmptyBlock, {\n decoration: jsx(RefreshIcon, {\n color: \"PrimaryMain\",\n size: \"xl\",\n \"data-ppui\": \"true\"\n }),\n buttonLabel: loadingProps.retryButtonLabel,\n buttonAction: loadingProps.onRetry,\n buttonRef: loadingProps.retryButtonRef,\n isError: true,\n message: loadingProps.errorMsg,\n processing: loadingProps.isLoading,\n \"data-ppui\": \"true\"\n });\n } else if (loadingProps.isLoading) {\n contents = jsx(\"div\", {\n css: _styles.spinnerBlock,\n \"data-ppui\": \"true\"\n }, jsx(LoadingSpinner, {\n size: \"lg\",\n as: \"div\",\n screenReaderText: loadingProps.loadingText,\n \"aria-live\": loadingProps.loadingText,\n \"data-ppui\": \"true\"\n }));\n } else {\n contents = jsx(EmptyBlock, {\n decoration: jsx(\"img\", {\n css: _styles.infoBlockDecoration,\n alt: \"emtpy\",\n src: \"https://www.paypalobjects.com/paypal-ui/pictograms/grayscale/svg/grayscale-1.svg\",\n \"data-ppui\": \"true\"\n }),\n buttonLabel: loadingProps.retryButtonLabel,\n buttonAction: loadingProps.onRetry,\n buttonRef: loadingProps.retryButtonRef,\n isError: false,\n message: loadingProps.emptyMsg,\n \"data-ppui\": \"true\"\n });\n }\n\n return jsx(TableBody$2, {\n \"data-ppui\": \"true\"\n }, jsx(TableRow, {\n \"data-ppui\": \"true\"\n }, jsx(TableCell, {\n span: columnOrder.length,\n align: \"center\",\n css: _styles.emptyTableLabel,\n mobile: {\n placement: 'ab123'\n },\n \"data-ppui\": \"true\"\n }, contents)));\n};\n\nvar TableBody$1 = React.memo(TableBody);\n\nvar _excluded = [\"rows\", \"columns\", \"columnOrder\", \"description\", \"className\", \"isLoading\", \"loadingStateLabel\", \"isInteractive\", \"selectedRows\", \"toggleAllLabel\", \"emptyTableLabel\", \"loadingProps\", \"idPrefix\", \"interactiveCellContentClassName\", \"onSelection\", \"onSort\", \"sortInProgress\", \"settings\", \"seeMoreProps\"];\n\nfunction ownKeys$2(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread$2(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$2(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$2(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nvar isResponsive = function (cols) {\n return Object.entries(cols).findIndex(function (_ref) {\n var _ref2 = _slicedToArray(_ref, 2),\n _key = _ref2[0],\n value = _ref2[1];\n\n return value.hasOwnProperty('mobile');\n }) >= 0;\n}; // istanbul ignore next\n\n\nvar deprecationWarning = function (propName) {\n devWarning(\"Deprecated: the prop \".concat(propName, \" has been deprecated and will have no effect.\"));\n};\n\nvar deprecationCheck = function (deprecatedItems, props) {\n deprecatedItems.forEach(function (item) {\n // istanbul ignore next\n if (props.hasOwnProperty(item)) {\n deprecationWarning(item);\n }\n });\n};\n\nvar onlyVisible = function (cols, order) {\n var keyList = !order || order.length === 0 ? Object.keys(cols) : order;\n return keyList.filter(function (col) {\n var _cols$col;\n\n return ((_cols$col = cols[col]) === null || _cols$col === void 0 ? void 0 : _cols$col.isVisible) !== false;\n });\n};\n\nvar DataTable = function (_ref3) {\n var _ref3$rows = _ref3.rows,\n rows = _ref3$rows === void 0 ? [] : _ref3$rows,\n _ref3$columns = _ref3.columns,\n columns = _ref3$columns === void 0 ? {} : _ref3$columns,\n columnOrder = _ref3.columnOrder,\n _ref3$description = _ref3.description,\n description = _ref3$description === void 0 ? 'Table' : _ref3$description,\n className = _ref3.className,\n _ref3$isLoading = _ref3.isLoading,\n isLoading = _ref3$isLoading === void 0 ? false : _ref3$isLoading,\n _ref3$loadingStateLab = _ref3.loadingStateLabel,\n loadingStateLabel = _ref3$loadingStateLab === void 0 ? 'Loading data' : _ref3$loadingStateLab,\n _ref3$isInteractive = _ref3.isInteractive,\n isInteractive = _ref3$isInteractive === void 0 ? false : _ref3$isInteractive,\n _ref3$selectedRows = _ref3.selectedRows,\n selectedRows = _ref3$selectedRows === void 0 ? [] : _ref3$selectedRows,\n toggleAllLabel = _ref3.toggleAllLabel,\n emptyTableLabel = _ref3.emptyTableLabel,\n loadingProps = _ref3.loadingProps,\n idPrefix = _ref3.idPrefix,\n interactiveCellContentClassName = _ref3.interactiveCellContentClassName,\n onSelection = _ref3.onSelection,\n onSort = _ref3.onSort,\n sortInProgress = _ref3.sortInProgress,\n settings = _ref3.settings,\n seeMoreProps = _ref3.seeMoreProps,\n rest = _objectWithoutProperties(_ref3, _excluded);\n\n if (!rows.length) {\n devWarning('Required prop `rows` is missing.');\n }\n /* istanbul ignore next */\n\n\n if (!Object.keys(columns).length) {\n devWarning('Required prop `columns` is missing.');\n }\n\n var tokens = useTheme();\n var tableStyles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n var visibleCols = onlyVisible(columns, columnOrder);\n var wrapperRef = useRef(null);\n deprecationCheck(['combinedColCellContentClassName', 'isHeaderCompact', 'isBodyCompact'], rest);\n var spinnerElm = isLoading && jsx(\"div\", {\n css: tableStyles.spinnerOverlay,\n \"data-ppui\": \"true\"\n }, jsx(LoadingSpinner, {\n screenReaderText: loadingStateLabel,\n size: \"md\",\n \"data-ppui\": \"true\"\n }));\n var props = {\n columns: columns,\n columnOrder: visibleCols,\n rows: rows,\n isInteractive: isInteractive,\n idPrefix: idPrefix,\n selectedRows: selectedRows,\n interactiveCellContentClassName: interactiveCellContentClassName,\n onSelection: onSelection\n };\n var TableComponent = isResponsive(columns) ? ResponsiveTable : Table;\n var tableContext = {\n tableType: 'data',\n isResponsive: isResponsive(columns)\n };\n return jsx(\"div\", {\n css: isLoading && tableStyles.tableLoading,\n className: className,\n \"data-ppui-info\": \"data-table_2.13.13\",\n ref: wrapperRef\n }, spinnerElm, jsx(TableComponent, _extends({\n isLegacy: false,\n \"aria-label\": description\n }, rest, {\n \"data-ppui\": \"true\"\n }), jsx(PPTableContext.Provider, {\n value: _objectSpread$2(_objectSpread$2({}, tableContext), {}, {\n section: 'thead'\n }),\n \"data-ppui\": \"true\"\n }, jsx(TableHeader$1, _extends({}, props, {\n toggleAllLabel: toggleAllLabel,\n onSort: onSort,\n sortInProgress: sortInProgress,\n settings: settings,\n \"data-ppui\": \"true\"\n }))), jsx(PPTableContext.Provider, {\n value: _objectSpread$2(_objectSpread$2({}, tableContext), {}, {\n section: 'tbody'\n }),\n \"data-ppui\": \"true\"\n }, jsx(TableBody$1, _extends({}, props, {\n loadingProps: loadingProps !== null && loadingProps !== void 0 ? loadingProps : {\n emptyMsg: emptyTableLabel,\n loadingText: loadingStateLabel\n },\n \"data-ppui\": \"true\"\n }))), jsx(function DataTableFooter(_ref4) {\n var onClick = _ref4.onClick,\n buttonLabel = _ref4.buttonLabel,\n buttonRef = _ref4.buttonRef,\n processing = _ref4.isLoading,\n errorMsg = _ref4.errorMsg,\n colCount = _ref4.colCount,\n backToTopLabel = _ref4.backToTopLabel,\n onBackToTopClick = _ref4.onBackToTopClick;\n var errorRow = errorMsg ? jsx(TableRow, {\n \"data-ppui\": \"true\"\n }, jsx(TableCell, {\n span: colCount,\n align: \"center\",\n tableContext: {\n section: 'utility'\n },\n mobile: {\n placement: 'ab123'\n },\n \"data-ppui\": \"true\"\n }, jsx(\"div\", {\n css: tableStyles.iconMessage,\n \"data-ppui\": \"true\"\n }, jsx(Icon, {\n name: \"refresh\",\n size: \"sm\",\n color: \"PrimaryMain\",\n \"data-ppui\": \"true\"\n }), jsx(\"div\", {\n \"data-ppui\": \"true\"\n }, errorMsg)))) : null;\n\n var isVisible = function (elem) {\n return !!(elem.offsetWidth || elem.offsetHeight || elem.getClientRects().length);\n };\n\n var seeMoreButton = onClick ? jsx(Button, {\n onClick: onClick,\n secondary: true,\n size: \"sm\",\n key: \"see-more-button\",\n ref: buttonRef,\n btnState: processing ? 'processing' : 'initial',\n \"data-ppui\": \"true\"\n }, buttonLabel) : null;\n var backToTopButton = onBackToTopClick ? jsx(Button, {\n onClick: function handleBackToTop(evt) {\n var target = evt.target;\n var table = target.closest('table'); // istanbul ignore next\n\n if (table) {\n // We want to find the first visible element in the table\n // make it focusable, set focus to it and then make it not focusable\n // Usually, that's the first th in the header.\n // BUT... the header is hidden for responsive tables. So we have\n // to find the first child (may be th or td) of the first row\n // of the body. --love, BCC\n var firstCell = table.querySelector('thead>tr>th');\n\n if (!isVisible(firstCell)) {\n var firstRow = table.querySelector('tbody>tr');\n firstCell = firstRow.firstChild;\n }\n\n firstCell.tabIndex = 1;\n firstCell.focus();\n requestAnimationFrame(function () {\n firstCell.tabIndex = -1;\n });\n table.scrollTop = 0;\n } // istanbul ignore next\n\n\n if (typeof onBackToTopClick === 'function') {\n onBackToTopClick();\n }\n },\n secondary: true,\n size: \"sm\",\n iconComponent: ArrowUpSmIcon,\n \"data-ppui\": \"true\"\n }, backToTopLabel) : null;\n return seeMoreButton || backToTopButton ? jsx(TableFoot, {\n \"data-ppui\": \"true\"\n }, errorRow, jsx(TableRow, {\n \"data-ppui\": \"true\"\n }, jsx(TableCell, {\n span: colCount,\n align: \"center\",\n mobile: {\n placement: 'ab123'\n },\n \"data-ppui\": \"true\"\n }, jsx(ButtonGroup, {\n \"data-ppui\": \"true\"\n }, backToTopButton, seeMoreButton)))) : null;\n }, _extends({}, seeMoreProps, {\n colCount: visibleCols.length,\n \"data-ppui\": \"true\"\n }))));\n};\n\nvar doCompare = function (a, b) {\n return a < b ? -1 : a > b ? 1 : 0;\n};\n\nvar ASCENDING = 1;\nvar DESCENDING = -1;\nvar DataTableUtils = {\n sortCompare: function sortCompare(a, b, columnName) {\n var direction = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 'ascending';\n var dir = direction === 'ascending' ? ASCENDING : DESCENDING;\n return doCompare(a[columnName].value, b[columnName].value) * dir;\n }\n};\n\nvar DataTableSortMenu = function (_ref) {\n var selectedIndex = _ref.selectedIndex,\n options = _ref.options,\n _ref$triggerLabel = _ref.triggerLabel,\n triggerLabel = _ref$triggerLabel === void 0 ? 'Open sort menu' : _ref$triggerLabel,\n className = _ref.className,\n onSelection = _ref.onSelection;\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n var _useState = useState(false),\n _useState2 = _slicedToArray(_useState, 2),\n isOpen = _useState2[0],\n setOpen = _useState2[1];\n\n var IconComponent = isOpen ? ChevronUpIcon : ChevronDownIcon;\n var trigger = jsx(IconButton, {\n css: _styles.headerButton,\n svgIconComponent: IconComponent,\n onClick: function onClick() {\n return setOpen(true);\n },\n buttonType: \"tertiary\",\n size: \"sm\",\n \"data-ppui\": \"true\"\n }, triggerLabel);\n return jsx(\"div\", {\n css: _styles.flexContainer,\n className: className,\n \"data-ppui-info\": \"data-table_2.13.13\"\n }, \"Sort by: \".concat(options[selectedIndex].title), trigger, jsx(ActionMenu, {\n isOpen: isOpen,\n onClose: function handleOnClose() {\n setOpen(false);\n },\n options: options,\n onSelection: function handleSelect(index) {\n setOpen(false);\n onSelection(index);\n },\n \"data-ppui\": \"true\"\n }));\n};\n\nvar _excluded$1 = [\"items\", \"adjustments\", \"totals\", \"description\", \"className\", \"isLoading\", \"loadingStateLabel\", \"emptyTableLabel\", \"idPrefix\"];\n\nfunction ownKeys$3(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread$3(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$3(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$3(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nvar renderCellContent = function (data, id, Component) {\n var _data$value;\n\n var content = (_data$value = data === null || data === void 0 ? void 0 : data.value) !== null && _data$value !== void 0 ? _data$value : data;\n\n if (Component) {\n var props = _typeof(data) === 'object' ? _objectSpread$3({}, data) : {\n value: content\n };\n return jsx(Component, _extends({\n id: id\n }, props, {\n \"data-ppui\": \"true\"\n }), content);\n }\n\n return content;\n};\n\nvar SummaryHeadingRow = function (_ref) {\n var tableContext = _ref.tableContext,\n columns = _ref.columns;\n\n var subContext = _objectSpread$3(_objectSpread$3({}, tableContext), {}, {\n section: 'summaryHeading'\n });\n\n var cells = columns.map(function (_ref2, index) {\n var title = _ref2.title,\n mobile = _ref2.mobile,\n width = _ref2.width,\n align = _ref2.align;\n subContext.isFirst = index === 0;\n return jsx(TableHeadingCell, {\n key: index,\n mobile: mobile,\n width: width,\n align: align,\n tableContext: subContext,\n \"data-ppui\": \"true\"\n }, title);\n });\n return jsx(TableRow, {\n \"data-ppui\": \"true\"\n }, cells);\n};\n\nvar SummaryItemRows = function (_ref3) {\n var tableContext = _ref3.tableContext,\n columns = _ref3.columns,\n rows = _ref3.rows;\n var itemRows = rows.map(function (row, rIndex) {\n var cells = columns.map(function (_ref4, index) {\n var mobile = _ref4.mobile,\n width = _ref4.width,\n align = _ref4.align,\n data = _ref4.data,\n cellAs = _ref4.cellAs;\n return jsx(TableCell, {\n tableContext: tableContext,\n key: index,\n mobile: mobile,\n width: width,\n align: align,\n \"data-ppui\": \"true\"\n }, renderCellContent(row[data], row.id, cellAs));\n });\n return jsx(TableRow, {\n key: rIndex,\n tableContext: tableContext,\n \"data-ppui\": \"true\"\n }, cells);\n });\n return jsx(React.Fragment, null, itemRows);\n};\n\nvar SummaryRows = function (_ref5) {\n var tableContext = _ref5.tableContext,\n columns = _ref5.columns,\n rows = _ref5.rows;\n var adjustmentRows = rows.map(function (row, rIndex) {\n var cells = columns.map(function (_ref6, index) {\n var mobile = _ref6.mobile,\n width = _ref6.width,\n align = _ref6.align,\n data = _ref6.data,\n cellAs = _ref6.cellAs,\n span = _ref6.span;\n return jsx(TableCell, {\n tableContext: tableContext,\n span: span,\n key: index,\n mobile: mobile,\n align: align,\n width: width,\n \"data-ppui\": \"true\"\n }, renderCellContent(row[data], null, cellAs));\n });\n return jsx(TableRow, {\n key: rIndex,\n tableContext: tableContext,\n \"data-ppui\": \"true\"\n }, cells);\n });\n return jsx(React.Fragment, null, adjustmentRows);\n};\n\nvar SummaryTable = function (_ref7) {\n var items = _ref7.items,\n adjustments = _ref7.adjustments,\n totals = _ref7.totals,\n _ref7$description = _ref7.description,\n description = _ref7$description === void 0 ? 'Table' : _ref7$description,\n className = _ref7.className,\n _ref7$isLoading = _ref7.isLoading,\n isLoading = _ref7$isLoading === void 0 ? false : _ref7$isLoading,\n _ref7$loadingStateLab = _ref7.loadingStateLabel,\n emptyTableLabel = _ref7.emptyTableLabel,\n idPrefix = _ref7.idPrefix,\n rest = _objectWithoutProperties(_ref7, _excluded$1);\n\n var tokens = useTheme();\n var tableStyles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n var tableContext = {\n tableType: 'summary',\n isResponsive: true,\n isSticky: true\n };\n\n var tableProps = _objectSpread$3(_objectSpread$3({}, rest), {}, {\n tableType: 'summary'\n });\n\n return jsx(\"div\", {\n css: isLoading && tableStyles.tableLoading,\n className: className,\n \"data-ppui-info\": \"data-table_2.13.13\"\n }, jsx(ResponsiveTable, _extends({\n \"aria-label\": description\n }, tableProps, {\n \"data-ppui\": \"true\"\n }), jsx(TableHead, {\n \"data-ppui\": \"true\"\n }, jsx(SummaryHeadingRow, {\n tableContext: _objectSpread$3(_objectSpread$3({}, tableContext), {}, {\n section: 'summaryHeading'\n }),\n columns: items.columns,\n \"data-ppui\": \"true\"\n })), jsx(TableBody$2, {\n \"data-ppui\": \"true\"\n }, jsx(SummaryItemRows, _extends({\n tableContext: _objectSpread$3(_objectSpread$3({}, tableContext), {}, {\n section: 'summaryItem'\n })\n }, items, {\n \"data-ppui\": \"true\"\n })), jsx(SummaryRows, _extends({\n tableContext: _objectSpread$3(_objectSpread$3({}, tableContext), {}, {\n section: 'summaryAdjust'\n })\n }, adjustments, {\n \"data-ppui\": \"true\"\n }))), jsx(TableFoot, {\n \"data-ppui\": \"true\"\n }, jsx(SummaryRows, _extends({\n tableContext: _objectSpread$3(_objectSpread$3({}, tableContext), {}, {\n section: 'summaryTotal'\n })\n }, totals, {\n \"data-ppui\": \"true\"\n })))));\n};\n\nexport { DataTable, DataTableSortMenu, DataTableUtils, SummaryTable, styles as dataTableStyles };\n","import _taggedTemplateLiteral from '@babel/runtime/helpers/esm/taggedTemplateLiteral';\nimport { css, useTheme, jsx, ClassNames } from '@emotion/react';\nimport { math } from 'polished';\nimport { devWarning, utilStyles, ZINDEX_DROPDOWN, KeyboardCode } from '@paypalcorp/pp-react-utils';\nimport { textStyles, CaptionText, BodyText } from '@paypalcorp/pp-react-text';\nimport _extends from '@babel/runtime/helpers/esm/extends';\nimport _objectWithoutProperties from '@babel/runtime/helpers/esm/objectWithoutProperties';\nimport _defineProperty from '@babel/runtime/helpers/esm/defineProperty';\nimport React, { useMemo, useState, useRef, useLayoutEffect, forwardRef, useContext, useCallback, useEffect } from 'react';\nimport { CalendarIcon, ClockSmIcon, ArrowRightIcon, ArrowLeftIcon } from '@paypalcorp/pp-react-icons';\nimport { MaskType, MaskedTextInput } from '@paypalcorp/pp-react-masked-text-input';\nimport _slicedToArray from '@babel/runtime/helpers/esm/slicedToArray';\nimport { Sheet } from '@paypalcorp/pp-react-modal';\nimport { IntlContext } from '@paypalcorp/pp-react-intl';\nimport { IconButton } from '@paypalcorp/pp-react-icon-button';\n\nvar _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14, _templateObject15, _templateObject16, _templateObject17, _templateObject18, _templateObject19, _templateObject20, _templateObject21, _templateObject22, _templateObject23, _templateObject24, _templateObject25, _templateObject26, _templateObject27, _templateObject28, _templateObject29, _templateObject30, _templateObject31, _templateObject32;\nfunction styles(tokens) {\n /* istanbul ignore next */\n if (!Object.keys(tokens).length) {\n devWarning('Missing Emotion theme. Use ThemeProvider from @emotion/react to pass a valid theme from pp-react.');\n return {};\n }\n\n var sysColorBackgroundSurface = tokens.sysColorBackgroundSurface,\n sysSpaceLg = tokens.sysSpaceLg,\n sysBorderRadiusSm = tokens.sysBorderRadiusSm,\n sysBorderThicknessNormal = tokens.sysBorderThicknessNormal,\n sysBorderRadiusInteractive = tokens.sysBorderRadiusInteractive,\n sysColorBackgroundHighContrast = tokens.sysColorBackgroundHighContrast,\n sysColorPrimaryMainHover = tokens.sysColorPrimaryMainHover,\n sysBorderThicknessEmphasis = tokens.sysBorderThicknessEmphasis,\n sysSizeMediaMd = tokens.sysSizeMediaMd,\n sysColorSpecialtyMain = tokens.sysColorSpecialtyMain,\n sysColorBackgroundMediumContrast = tokens.sysColorBackgroundMediumContrast,\n sysSpaceTiny = tokens.sysSpaceTiny,\n sysColorSelectedRangeMain = tokens.sysColorSelectedRangeMain,\n sysColorSelectedMain = tokens.sysColorSelectedMain,\n sysSizeIconLg = tokens.sysSizeIconLg,\n sysSizePointerWidthLg = tokens.sysSizePointerWidthLg,\n sysSizeTapTargetDefault = tokens.sysSizeTapTargetDefault,\n sysSizeTapTargetSm = tokens.sysSizeTapTargetSm,\n sysSizeTapTargetXs = tokens.sysSizeTapTargetXs,\n sysSizeFieldLg = tokens.sysSizeFieldLg,\n sysSpaceSm = tokens.sysSpaceSm,\n sysSpaceXl = tokens.sysSpaceXl,\n sysTypographyCaptionSize = tokens.sysTypographyCaptionSize,\n sysSpaceXs = tokens.sysSpaceXs,\n sysColorSelectedContrast = tokens.sysColorSelectedContrast,\n sysColorSelectedRangeContrast = tokens.sysColorSelectedRangeContrast;\n\n var _utilStyles = utilStyles(tokens),\n elevationStyles = _utilStyles.elevationStyles,\n caretStyles = _utilStyles.caretStyles;\n\n var _textStyles = textStyles(tokens),\n textBody = _textStyles.body;\n\n var calendarContainerOffset = math(\"\".concat(sysSizeFieldLg, \" + \").concat(sysSpaceSm)); // offset from calendar icon\n\n var xsBreakpoint = '22.5rem';\n var smBreakpoint = '25rem';\n\n function getDateDimensions(dateSize) {\n return css(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n width: \", \";\\n height: \", \";\\n \"])), dateSize, dateSize);\n }\n\n var calendarTrigger = css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n label: calendar_trigger;\\n cursor: pointer;\\n \"])));\n\n function calendarContainerStyle() {\n return css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral([\"\\n background-color: \", \";\\n position: absolute;\\n top: \", \";\\n padding: \", \";\\n border: \", \" solid \", \";\\n border-radius: \", \";\\n \", \"\\n \", \"\\n \", \"\\n \", \";\\n z-index: \", \";\\n cursor: initial;\\n \"])), sysColorBackgroundSurface, calendarContainerOffset, sysSpaceLg, sysBorderThicknessNormal, sysColorBackgroundSurface, sysBorderRadiusSm, elevationStyles.level2, caretStyles.base(sysSizePointerWidthLg), caretStyles.positionTop(math(\"\".concat(sysSizePointerWidthLg, \" / 2\"))), caretStyles.positionCenter(sysSizePointerWidthLg), ZINDEX_DROPDOWN);\n }\n\n var calendarContainer = css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral([\"\\n label: calendar_container;\\n \", \"\\n &:after {\\n top: -\", \";\\n }\\n \"])), calendarContainerStyle(), sysBorderThicknessNormal);\n var calendarContainerLeft = css(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral([\"\\n label: calendar_container-left;\\n \", \"\\n right: -\", \";\\n &:before {\\n left: calc(100% - ((\", \" / 2) + \", \"));\\n }\\n &:after {\\n top: -\", \";\\n left: calc(100% - ((\", \" / 2) + \", \"));\\n }\\n \"])), calendarContainerStyle(), sysSpaceSm, sysSizeIconLg, sysSpaceLg, sysBorderThicknessNormal, sysSizeIconLg, sysSpaceXl);\n var calendarContainerRight = css(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral([\"\\n label: calendar_container-right;\\n \", \"\\n left: -\", \";\\n &:before {\\n left: calc(\", \" / 2);\\n }\\n &:after {\\n top: -\", \";\\n left: calc((\", \" / 2) - \", \");\\n }\\n \"])), calendarContainerStyle(), sysSpaceSm, sysSizeIconLg, sysBorderThicknessNormal, sysSizeIconLg, sysSpaceSm);\n var calendarNav = css(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral([\"\\n label: calendar_nav;\\n display: flex;\\n align-items: center;\\n justify-content: space-between;\\n white-space: nowrap;\\n \"])));\n var calendarNavButtonPrev = css(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral([\"\\n label: nav_prev_btn;\\n \"])));\n var calendarNavButtonNext = css(_templateObject9 || (_templateObject9 = _taggedTemplateLiteral([\"\\n label: nav_next_btn;\\n \"])));\n var calendarNavButtonsNotFocusable = css(_templateObject10 || (_templateObject10 = _taggedTemplateLiteral([\"\\n &:after {\\n display: none;\\n }\\n \"])));\n var calendarNavButtonsHidden = css(_templateObject11 || (_templateObject11 = _taggedTemplateLiteral([\"\\n label: hidden;\\n visibility: hidden;\\n \"])));\n var fullWidth = css(_templateObject12 || (_templateObject12 = _taggedTemplateLiteral([\"\\n width: 100%;\\n \"])));\n var tableFullWidth = css(_templateObject13 || (_templateObject13 = _taggedTemplateLiteral([\"\\n table {\\n \", \"\\n }\\n \"])), fullWidth);\n var calendarTable = css(_templateObject14 || (_templateObject14 = _taggedTemplateLiteral([\"\\n label: calendar_table;\\n border-spacing: 0;\\n\\n th,\\n td {\\n text-align: center;\\n padding: \", \" 0;\\n }\\n\\n @media (max-width: \", \") {\\n \", \"\\n }\\n \"])), sysSpaceTiny, sysSizeMediaMd, fullWidth);\n var calendarCellInRange = css(_templateObject15 || (_templateObject15 = _taggedTemplateLiteral([\"\\n label: cell_in_range;\\n border-top: \", \" solid transparent;\\n border-bottom: \", \" solid transparent;\\n background-color: \", \";\\n \"])), sysBorderThicknessNormal, sysBorderThicknessNormal, sysColorSelectedRangeMain);\n var calendarCellRangeStart = css(_templateObject16 || (_templateObject16 = _taggedTemplateLiteral([\"\\n label: range_start;\\n background: linear-gradient(\\n to right,\\n \", \" 50%,\\n \", \" 50%\\n );\\n \"])), sysColorBackgroundSurface, sysColorSelectedRangeMain);\n var calendarCellRangeEnd = css(_templateObject17 || (_templateObject17 = _taggedTemplateLiteral([\"\\n label: range_end;\\n background: linear-gradient(\\n to right,\\n \", \" 50%,\\n \", \" 50%\\n );\\n \"])), sysColorSelectedRangeMain, sysColorBackgroundSurface);\n var calendarDate = css(_templateObject18 || (_templateObject18 = _taggedTemplateLiteral([\"\\n label: date;\\n \", \"\\n border: none;\\n padding: 0;\\n margin: 0 \", \";\\n text-decoration: none;\\n cursor: pointer;\\n \", \"\\n border-radius: \", \";\\n background-color: transparent;\\n\\n &:hover {\\n border: \", \" solid \", \";\\n }\\n\\n @media (max-width: \", \") {\\n \", \"\\n }\\n\\n @media (min-width: \", \") and (max-width: \", \") {\\n \", \"\\n }\\n \"])), textBody(), sysSpaceTiny, getDateDimensions(sysSizeTapTargetDefault), sysBorderRadiusInteractive, sysBorderThicknessEmphasis, sysColorPrimaryMainHover, xsBreakpoint, getDateDimensions(sysSizeTapTargetXs), xsBreakpoint, smBreakpoint, getDateDimensions(sysSizeTapTargetSm));\n var calendarDateInRange = css(_templateObject19 || (_templateObject19 = _taggedTemplateLiteral([\"\\n label: date_in_range;\\n color: \", \";\\n \"])), sysColorSelectedRangeContrast);\n var calendarDateNotCurrent = css(_templateObject20 || (_templateObject20 = _taggedTemplateLiteral([\"\\n label: date_not_current;\\n color: \", \";\\n \"])), sysColorBackgroundMediumContrast);\n var calendarDateDisabled = css(_templateObject21 || (_templateObject21 = _taggedTemplateLiteral([\"\\n label: disabled;\\n text-decoration-line: line-through;\\n cursor: not-allowed;\\n color: \", \";\\n\\n &:hover {\\n border: none;\\n }\\n \"])), sysColorBackgroundMediumContrast);\n var calendarDateToday = css(_templateObject22 || (_templateObject22 = _taggedTemplateLiteral([\"\\n label: today;\\n border: \", \" solid \", \";\\n \"])), sysBorderThicknessNormal, sysColorBackgroundHighContrast);\n var calendarDateSelected = css(_templateObject23 || (_templateObject23 = _taggedTemplateLiteral([\"\\n label: selected;\\n color: \", \";\\n border: \", \" solid \", \";\\n background-color: \", \";\\n \"])), sysColorSelectedContrast, sysBorderThicknessNormal, sysColorSelectedMain, sysColorSelectedMain);\n var calendarDueDate = css(_templateObject24 || (_templateObject24 = _taggedTemplateLiteral([\"\\n label: due_date;\\n color: \", \";\\n border: \", \" solid \", \";\\n \"])), sysColorSpecialtyMain, sysBorderThicknessNormal, sysColorSpecialtyMain);\n var calendarDueDateSelected = css(_templateObject25 || (_templateObject25 = _taggedTemplateLiteral([\"\\n label: due_date_selected;\\n border: \", \" solid \", \";\\n \"])), sysBorderThicknessNormal, sysColorSpecialtyMain);\n var calendarDueDateIconContainer = css(_templateObject26 || (_templateObject26 = _taggedTemplateLiteral([\"\\n label: icon_container;\\n display: inline-block;\\n position: relative;\\n \", \"\\n\\n @media (max-width: \", \") {\\n \", \"\\n }\\n\\n @media (min-width: \", \") and (max-width: \", \") {\\n \", \"\\n }\\n \"])), getDateDimensions(sysSizeTapTargetDefault), xsBreakpoint, getDateDimensions(sysSizeTapTargetXs), xsBreakpoint, smBreakpoint, getDateDimensions(sysSizeTapTargetSm));\n var calendarDueDateIcon = css(_templateObject27 || (_templateObject27 = _taggedTemplateLiteral([\"\\n label: icon;\\n position: absolute;\\n bottom: 0;\\n right: 0;\\n pointer-events: none;\\n background-color: \", \";\\n border-radius: \", \";\\n color: \", \";\\n \"])), sysColorBackgroundSurface, sysBorderRadiusInteractive, sysColorSpecialtyMain);\n var legend = css(_templateObject28 || (_templateObject28 = _taggedTemplateLiteral([\"\\n label: legend;\\n display: flex;\\n align-items: center;\\n margin-top: \", \";\\n margin-inline-start: \", \";\\n \"])), sysSpaceSm, sysSpaceLg);\n var legendItem = css(_templateObject29 || (_templateObject29 = _taggedTemplateLiteral([\"\\n label: legend_item;\\n display: flex;\\n align-items: center;\\n white-space: nowrap;\\n margin-inline-end: \", \";\\n \"])), sysSpaceLg);\n var legendKey = css(_templateObject30 || (_templateObject30 = _taggedTemplateLiteral([\"\\n label: key;\\n width: \", \";\\n height: \", \";\\n display: inline-block;\\n margin-inline-end: \", \";\\n border-radius: \", \";\\n \"])), sysTypographyCaptionSize, sysTypographyCaptionSize, sysSpaceXs, sysBorderRadiusInteractive);\n var dueDateLegendKey = css(_templateObject31 || (_templateObject31 = _taggedTemplateLiteral([\"\\n label: due_date_legend_key;\\n background-color: \", \";\\n color: \", \";\\n margin-inline-end: \", \";\\n border-radius: \", \";\\n \"])), sysColorBackgroundSurface, sysColorSpecialtyMain, sysSpaceXs, sysBorderRadiusInteractive);\n var wrapperContainer = css(_templateObject32 || (_templateObject32 = _taggedTemplateLiteral([\"\\n label: wrapper;\\n [dir='rtl'] & input {\\n text-align: right;\\n direction: ltr;\\n }\\n \"])));\n return {\n calendarTrigger: calendarTrigger,\n calendarContainer: calendarContainer,\n calendarContainerLeft: calendarContainerLeft,\n calendarContainerRight: calendarContainerRight,\n calendarNav: calendarNav,\n calendarTable: calendarTable,\n calendarNavButtonPrev: calendarNavButtonPrev,\n calendarNavButtonNext: calendarNavButtonNext,\n calendarNavButtonsNotFocusable: calendarNavButtonsNotFocusable,\n calendarNavButtonsHidden: calendarNavButtonsHidden,\n calendarCellInRange: calendarCellInRange,\n calendarCellRangeStart: calendarCellRangeStart,\n calendarCellRangeEnd: calendarCellRangeEnd,\n calendarDate: calendarDate,\n calendarDateNotCurrent: calendarDateNotCurrent,\n calendarDateDisabled: calendarDateDisabled,\n calendarDateToday: calendarDateToday,\n calendarDateSelected: calendarDateSelected,\n calendarDueDate: calendarDueDate,\n calendarDueDateIconContainer: calendarDueDateIconContainer,\n calendarDueDateIcon: calendarDueDateIcon,\n calendarDateInRange: calendarDateInRange,\n calendarDueDateSelected: calendarDueDateSelected,\n legend: legend,\n legendItem: legendItem,\n legendKey: legendKey,\n dueDateLegendKey: dueDateLegendKey,\n tableFullWidth: tableFullWidth,\n wrapperContainer: wrapperContainer\n };\n}\n\nvar MD_BREAKPOINT = 752;\nvar BASE_FONT_SIZE = 16;\nvar BASE_CALENDAR_IDEAL_WIDTH = 200;\n\nvar CalendarContainer = function (_ref) {\n var isCalendarVisible = _ref.isCalendarVisible,\n label = _ref.label,\n children = _ref.children,\n calendarTriggerRef = _ref.calendarTriggerRef,\n wrapperContainerRef = _ref.wrapperContainerRef,\n onShowCalendar = _ref.onShowCalendar,\n _ref$calendarInSheet = _ref.calendarInSheet,\n calendarInSheet = _ref$calendarInSheet === void 0 ? false : _ref$calendarInSheet;\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n var _useState = useState(false),\n _useState2 = _slicedToArray(_useState, 2),\n isMobile = _useState2[0],\n setMobile = _useState2[1];\n\n var containerRef = useRef();\n\n var _useState3 = useState(_styles.calendarContainer),\n _useState4 = _slicedToArray(_useState3, 2),\n calendarPosition = _useState4[0],\n setCalendarPosition = _useState4[1];\n\n var isMobileViewPort = function () {\n return (\n /* istanbul ignore next */\n window && window.innerWidth < MD_BREAKPOINT\n );\n };\n /* istanbul ignore next */\n\n\n var handleKey = function (evt) {\n if (new KeyboardCode(evt.key || evt.keyCode).IS_ESC) {\n onShowCalendar(false);\n }\n };\n /* istanbul ignore next */\n\n\n var handleOutsideClick = function (evt) {\n if (!calendarTriggerRef.current.contains(evt.target) && !containerRef.current.contains(evt.target)) {\n onShowCalendar(false);\n }\n };\n /* istanbul ignore next */\n\n\n var handleResize = function () {\n /* Event to dismiss calendar popup on window resize */\n onShowCalendar(false);\n };\n\n var getRefCurrent = function (myref) {\n return (\n /* istanbul ignore next */\n myref && myref.current ? myref.current : null\n );\n };\n /* istanbul ignore next */\n\n\n var getCalendarBoundary = function () {\n var calendarTrigger = getRefCurrent(calendarTriggerRef);\n var calendarTriggerPos = calendarTrigger.getBoundingClientRect();\n var windowWidth = window && window.innerWidth || document.documentElement.clientWidth;\n var fontSizeVal = window && parseFloat(window.getComputedStyle(document.documentElement).fontSize);\n var calculatedSpace = BASE_CALENDAR_IDEAL_WIDTH + BASE_CALENDAR_IDEAL_WIDTH * ((fontSizeVal - BASE_FONT_SIZE) * 0.0625);\n\n if (wrapperContainerRef === null || wrapperContainerRef === void 0 ? void 0 : wrapperContainerRef.current) {\n var wrapperContainerPos = wrapperContainerRef.current.getBoundingClientRect();\n\n if (calendarTriggerPos.left - wrapperContainerPos.left < calculatedSpace) {\n // Left side is out of viewoprt\n setCalendarPosition(_styles.calendarContainerRight);\n } else if (wrapperContainerPos.right + calculatedSpace > wrapperContainerPos.width) {\n // Right side is out of viewport\n setCalendarPosition(_styles.calendarContainerLeft);\n }\n } else if (calendarTrigger) {\n if (calendarTriggerPos.left < calculatedSpace) {\n // Left side is out of viewoprt\n setCalendarPosition(_styles.calendarContainerRight);\n } else if (calendarTriggerPos.right + calculatedSpace > windowWidth) {\n // Right side is out of viewport\n setCalendarPosition(_styles.calendarContainerLeft);\n }\n }\n };\n\n useLayoutEffect(function () {\n setCalendarPosition(_styles.calendarContainer);\n\n var _isMobile = isMobileViewPort();\n\n getCalendarBoundary();\n setMobile(_isMobile);\n\n if (!_isMobile && isCalendarVisible) {\n var _containerRef$current, _containerRef$current2;\n\n window.addEventListener('resize', handleResize);\n document.addEventListener('keydown', handleKey); // Add handleOutSideClick when calendar is not in sheet, let sheet handle outside click on its own\n\n /* istanbul ignore next */\n\n if (!calendarInSheet) {\n document.addEventListener('click', handleOutsideClick);\n } // eslint-disable-next-line no-unused-expressions\n\n\n (_containerRef$current = containerRef.current) === null || _containerRef$current === void 0 ? void 0 : (_containerRef$current2 = _containerRef$current.scrollIntoView) === null || _containerRef$current2 === void 0 ? void 0 : _containerRef$current2.call(_containerRef$current, {\n behavior: 'smooth',\n block: 'nearest'\n });\n }\n\n return function () {\n window.removeEventListener('resize', handleResize);\n document.removeEventListener('keydown', handleKey);\n document.removeEventListener('click', handleOutsideClick);\n };\n }, [isCalendarVisible]);\n\n if (isMobile || calendarInSheet) {\n /* istanbul ignore next */\n return jsx(Sheet, {\n isOpen: isCalendarVisible,\n onCloseComplete: function onCloseComplete() {\n return onShowCalendar(false);\n },\n noCloseButton: true,\n title: label,\n skipFormFocus: true,\n \"data-ppui\": \"true\"\n }, calendarInSheet && !isMobile ? jsx(\"div\", {\n css: _styles.tableFullWidth,\n \"data-ppui\": \"true\"\n }, children) : children);\n }\n\n return isCalendarVisible ? jsx(\"div\", {\n css: calendarPosition,\n ref: containerRef,\n \"data-ppui\": \"true\"\n }, children) : null;\n};\n\nvar _excluded = [\"name\", \"label\", \"className\", \"calendar\", \"isCalendarVisible\", \"wrapperContainerRef\", \"onShowCalendar\", \"maskOptions\", \"selectedDate\", \"onSelection\", \"parseDate\", \"formatDate\", \"formatterSkeleton\", \"sheetContainerRef\", \"onComplete\", \"onAccept\", \"calendarInSheet\"];\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nvar DEFAULT_MASK_OPTIONS = {\n mask: 'm`/d`/y',\n // here backquote ` is needed to prevent characters shifting back on edit. Refer https://github.com/uNmAnNeR/imaskjs/issues/89\n lazy: false,\n blocks: {\n d: {\n mask: MaskType.Range,\n from: 1,\n to: 31,\n maxLength: 2,\n placeholderChar: 'D'\n },\n m: {\n mask: MaskType.Range,\n from: 1,\n to: 12,\n maxLength: 2,\n placeholderChar: 'M'\n },\n y: {\n mask: MaskType.Range,\n from: 1900,\n to: 2999,\n maxLength: 4,\n placeholderChar: 'Y'\n }\n }\n}; // eslint-disable-next-line\n\nvar localTimeZone = Intl.DateTimeFormat().resolvedOptions().timeZone;\n\nfunction defaultParseDate(str) {\n /* istanbul ignore next */\n if (!str) {\n return null;\n }\n\n var parts = str.split('/');\n var month = Number(parts[0]);\n var date = Number(parts[1]);\n var year = Number(parts[2]);\n return new Date(year, month - 1, date);\n}\n\nfunction defaultFormatDate(date) {\n if (!date) {\n return '';\n }\n\n return new Intl.DateTimeFormat('en-US', {\n month: '2-digit',\n day: '2-digit',\n year: 'numeric'\n }).format(date);\n}\n\nfunction getDateMaskOptions(intlContext, formatterSkeleton, maskOptions) {\n if (!(intlContext && intlContext.dateTimeFormatter)) {\n return _objectSpread(_objectSpread({}, DEFAULT_MASK_OPTIONS), maskOptions);\n } // Get pattern from Worldready\n\n\n var dateTimeFormatter = intlContext.dateTimeFormatter({\n style: formatterSkeleton,\n timeZone: localTimeZone\n });\n var parts = dateTimeFormatter.formatToParts(new Date());\n var pattern = parts.map(function (_ref) {\n var type = _ref.type,\n value = _ref.value;\n\n switch (type) {\n case 'month':\n return 'm';\n\n case 'day':\n return 'd';\n\n case 'year':\n return 'y';\n\n default:\n // Remove any rtl marker chars\n // eslint-disable-next-line\n var separator = value.replace(/[^\\x00-\\x7F]/g, '');\n return \"`\".concat(separator);\n }\n }).join('');\n return _objectSpread(_objectSpread(_objectSpread({}, DEFAULT_MASK_OPTIONS), maskOptions), {}, {\n mask: pattern\n });\n}\n\nfunction getFormatters(intlContext, formatterSkeleton, formatDate, parseDate) {\n if (!(intlContext && intlContext.dateTimeFormatter)) {\n return {\n _formatDate: formatDate || defaultFormatDate,\n _parseDate: parseDate || defaultParseDate\n };\n } // Get formatters from Worldready\n\n\n var dateTimeFormatter = intlContext.dateTimeFormatter({\n style: formatterSkeleton,\n timeZone: localTimeZone\n });\n return {\n _formatDate: formatDate || function _formatDate(date) {\n /* istanbul ignore next */\n if (!date) {\n return '';\n }\n\n return dateTimeFormatter.format(date);\n },\n _parseDate: parseDate || function _parseDate(str) {\n return str && dateTimeFormatter.parse(str);\n }\n };\n}\n\nvar DateInput = forwardRef(function (_ref2, ref) {\n var name = _ref2.name,\n label = _ref2.label,\n className = _ref2.className,\n calendar = _ref2.calendar,\n isCalendarVisible = _ref2.isCalendarVisible,\n wrapperContainerRef = _ref2.wrapperContainerRef,\n onShowCalendar = _ref2.onShowCalendar,\n maskOptions = _ref2.maskOptions,\n selectedDate = _ref2.selectedDate,\n onSelection = _ref2.onSelection,\n parseDate = _ref2.parseDate,\n formatDate = _ref2.formatDate,\n _ref2$formatterSkelet = _ref2.formatterSkeleton,\n formatterSkeleton = _ref2$formatterSkelet === void 0 ? 'yyyyMMdd' : _ref2$formatterSkelet,\n sheetContainerRef = _ref2.sheetContainerRef,\n onComplete = _ref2.onComplete,\n onAccept = _ref2.onAccept,\n calendarInSheet = _ref2.calendarInSheet,\n rest = _objectWithoutProperties(_ref2, _excluded);\n\n if (!onSelection) {\n onSelection = function () {\n return devWarning('Required prop `onSelection` is missing');\n };\n }\n\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n var intlContext = useContext(IntlContext);\n var calendarTriggerRef = useRef();\n var internalRef = useRef();\n var inputRef = ref || internalRef;\n var prevVal = useRef();\n\n var _maskOptions = useMemo(function () {\n return getDateMaskOptions(intlContext, formatterSkeleton, maskOptions);\n }, [formatterSkeleton, maskOptions]);\n\n var _useMemo = useMemo(function () {\n return getFormatters(intlContext, formatterSkeleton, formatDate, parseDate);\n }, [formatDate, parseDate]),\n _formatDate = _useMemo._formatDate,\n _parseDate = _useMemo._parseDate;\n\n var handleComplete = function (value, unmaskedValue, typedValue) {\n /* istanbul ignore next */\n if (unmaskedValue !== prevVal.current) {\n onSelection(_parseDate(value));\n }\n\n if (onComplete) {\n onComplete(value, unmaskedValue, typedValue);\n }\n };\n\n var handleAccept = function (value, unmaskedValue, typedValue) {\n if (!unmaskedValue) {\n onSelection(null);\n }\n\n if (onAccept) {\n onAccept(value, unmaskedValue, typedValue);\n }\n };\n\n var icon = calendar && jsx(React.Fragment, null, jsx(CalendarIcon, {\n size: \"sm\",\n onMouseDown: function onMouseDown(evt) {\n return evt.preventDefault();\n },\n onClick: function handleIconClick() {\n var inputElm = inputRef.current;\n inputElm.focus();\n onShowCalendar(!isCalendarVisible);\n },\n svgElementRef: calendarTriggerRef,\n color: \"sysColorBackgroundMediumContrast\",\n css: _styles.calendarTrigger,\n \"aria-hidden\": \"true\",\n \"data-ppui\": \"true\"\n }), jsx(CalendarContainer, {\n isCalendarVisible: isCalendarVisible,\n onShowCalendar: onShowCalendar,\n label: label,\n sheetContainerRef: sheetContainerRef,\n wrapperContainerRef: wrapperContainerRef,\n calendarTriggerRef: calendarTriggerRef,\n calendarInSheet: calendarInSheet,\n \"data-ppui\": \"true\"\n }, calendar));\n\n var unmaskedValue = _formatDate(selectedDate).replace(/\\D/g, '');\n\n prevVal.current = unmaskedValue;\n return jsx(ClassNames, {\n \"data-ppui\": \"true\"\n }, function (_ref3) {\n var cx = _ref3.cx,\n css = _ref3.css;\n return jsx(MaskedTextInput, _extends({\n name: name,\n label: label,\n rightIcon: icon,\n maskOptions: _maskOptions,\n className: cx(css(_styles.wrapperContainer), className),\n inputMode: \"numeric\",\n \"data-ppui-info\": \"date-input_3.8.11\"\n }, rest, {\n onComplete: handleComplete,\n onAccept: handleAccept,\n value: unmaskedValue,\n ref: inputRef\n }));\n });\n});\n\nvar CalendarRange;\n\n(function (CalendarRange) {\n CalendarRange[\"START\"] = \"start\";\n CalendarRange[\"END\"] = \"end\";\n})(CalendarRange || (CalendarRange = {}));\n\nvar MONTH_NAMES = ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'];\nvar DAY_NAMES = {\n sun: 'Sun',\n mon: 'Mon',\n tue: 'Tue',\n wed: 'Wed',\n thu: 'Thu',\n fri: 'Fri',\n sat: 'Sat'\n};\n\nfunction getFormattedDateFromParts(parts) {\n return parts.reduce(function (acc, _ref) {\n var type = _ref.type,\n value = _ref.value;\n\n if (type === 'month' || type === 'day' || type === 'year') {\n acc[type] = value;\n }\n\n return acc;\n }, {});\n}\n\nfunction defaultFormatToParts(date) {\n var parts = new Intl.DateTimeFormat('en-US', {\n month: 'numeric',\n day: 'numeric',\n year: 'numeric'\n }).formatToParts(date);\n return getFormattedDateFromParts(parts);\n}\n\nfunction isDateInRange(date, selectedDate, range, rangeCompletionDate) {\n if (range === CalendarRange.START && selectedDate && rangeCompletionDate) {\n return date.getTime() >= selectedDate.getTime() && date.getTime() <= rangeCompletionDate.getTime();\n } else if (range === CalendarRange.END && selectedDate && rangeCompletionDate) {\n return date.getTime() <= selectedDate.getTime() && date.getTime() >= rangeCompletionDate.getTime();\n }\n\n return false;\n}\n\nfunction isDateEqual(date, providedDate) {\n return providedDate && date.getTime() === providedDate.getTime();\n}\n\nfunction isDateRangeStart(date, selectedDate, range, rangeCompletionDate) {\n return range === CalendarRange.START && selectedDate && date.getTime() === selectedDate.getTime() || range === CalendarRange.END && rangeCompletionDate && date.getTime() === rangeCompletionDate.getTime();\n}\n\nfunction isDateRangeEnd(date, selectedDate, range, rangeCompletionDate) {\n return range === CalendarRange.END && selectedDate && date.getTime() === selectedDate.getTime() || range === CalendarRange.START && rangeCompletionDate && date.getTime() === rangeCompletionDate.getTime();\n}\n\nfunction getDatesForMonth(date, daysOfWeek, firstDayOfWeek, selectedDate, range, rangeCompletionDate, dueDate, isDateDisabled, calendarRange) {\n var dates = [];\n var startMonth = date.getMonth();\n var startYear = date.getFullYear();\n var from = new Date(startYear, startMonth, 1);\n var firstday = Object.keys(DAY_NAMES)[from.getDay()];\n var firstDayIndex = daysOfWeek.indexOf(firstday);\n var firstDOWIndex = Object.keys(DAY_NAMES).indexOf(firstDayOfWeek);\n var todayDate = new Date();\n var today = new Date(todayDate.getFullYear(), todayDate.getMonth(), todayDate.getDate());\n from.setDate(-firstDayIndex + 1);\n\n while (from) {\n var month = from.getMonth();\n var day = from.getDate();\n var year = from.getFullYear();\n\n if (year === startYear && month > startMonth || year > startYear) {\n if (from.getDay() === firstDOWIndex) break;\n }\n\n var _dateObj = new Date(year, month, day);\n\n var isDisabled = isDateDisabled && isDateDisabled(_dateObj);\n\n if (calendarRange === CalendarRange.START && (month < startMonth || year < startYear)) {\n isDisabled = true;\n }\n\n if (calendarRange === CalendarRange.END && (month > startMonth || year > startYear)) {\n isDisabled = true;\n }\n\n dates.push({\n day: day,\n date: _dateObj,\n isDisabled: isDisabled,\n isToday: isDateEqual(from, today),\n inCurrentMonth: month === startMonth,\n isSelected: isDateEqual(from, selectedDate),\n isDue: isDateEqual(from, dueDate),\n inRange: isDateInRange(from, selectedDate, range, rangeCompletionDate),\n isRangeStart: isDateRangeStart(from, selectedDate, range, rangeCompletionDate),\n isRangeEnd: isDateRangeEnd(from, selectedDate, range, rangeCompletionDate)\n });\n from.setDate(day + 1);\n }\n\n return dates;\n}\n\nfunction getDaysOfWeek(firstDayOfWeek) {\n var daysOfWeek = Object.keys(DAY_NAMES);\n var firstDOWIndex = daysOfWeek.indexOf(firstDayOfWeek);\n\n if (firstDOWIndex === 0) {\n return daysOfWeek;\n }\n\n return daysOfWeek.slice(firstDOWIndex).concat(daysOfWeek.slice(0, firstDOWIndex));\n}\n\nfunction getFirstDayOfWeek(intlContext, firstDayOfWeek) {\n if (intlContext && intlContext.worldReadyObj && intlContext.worldReadyObj.weekInfo) {\n return firstDayOfWeek || intlContext.worldReadyObj.weekInfo.firstDay;\n }\n\n return firstDayOfWeek || 'sun';\n}\n\nfunction getNames(intlContext, monthNames, dayNames) {\n if (intlContext && intlContext.getDisplayNamesObject) {\n var monthDisplayNames = intlContext.getDisplayNamesObject({\n type: 'month',\n style: 'wide'\n });\n\n var _monthNames = monthDisplayNames.select(['1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12']);\n\n var dayDisplayNames = intlContext.getDisplayNamesObject({\n type: 'day',\n style: 'abbreviated'\n });\n var keys = Object.keys(DAY_NAMES);\n var values = dayDisplayNames.select(keys);\n\n var _dayNames = keys.reduce(function (acc, key, index) {\n acc[key] = values[index];\n return acc;\n }, {});\n\n return {\n _monthNames: monthNames || _monthNames,\n _dayNames: dayNames || _dayNames\n };\n }\n\n return {\n _monthNames: monthNames || MONTH_NAMES,\n _dayNames: dayNames || DAY_NAMES\n };\n}\n\nfunction getFormatter(intlContext, formatToParts, formatterSkeleton) {\n if (intlContext && intlContext.dateTimeFormatter) {\n var dateTimeFormatter = intlContext.dateTimeFormatter({\n style: formatterSkeleton,\n // eslint-disable-next-line\n timeZone: Intl.DateTimeFormat().resolvedOptions().timeZone\n });\n return formatToParts || function fn(date) {\n var parts = dateTimeFormatter.formatToParts(date);\n return getFormattedDateFromParts(parts);\n };\n }\n\n return formatToParts || defaultFormatToParts;\n}\n\nfunction areMonthsEqual(date1, date2) {\n return date1.getFullYear() === date2.getFullYear() && date1.getMonth() === date2.getMonth();\n}\n/* eslint-disable complexity */\n\n\nvar Calendar = function (_ref2) {\n var className = _ref2.className,\n monthNames = _ref2.monthNames,\n dayNames = _ref2.dayNames,\n firstDayOfWeek = _ref2.firstDayOfWeek,\n _ref2$prevMonthLabel = _ref2.prevMonthLabel,\n prevMonthLabel = _ref2$prevMonthLabel === void 0 ? 'Go to prev month' : _ref2$prevMonthLabel,\n _ref2$nextMonthLabel = _ref2.nextMonthLabel,\n nextMonthLabel = _ref2$nextMonthLabel === void 0 ? 'Go to next month' : _ref2$nextMonthLabel,\n selectedDate = _ref2.selectedDate,\n range = _ref2.range,\n rangeCompletionDate = _ref2.rangeCompletionDate,\n isFocusable = _ref2.isFocusable,\n dateAs = _ref2.dateAs,\n calendarFrom = _ref2.calendarFrom,\n calendarTo = _ref2.calendarTo,\n navClassName = _ref2.navClassName,\n tableClassName = _ref2.tableClassName,\n dateClassName = _ref2.dateClassName,\n dueDate = _ref2.dueDate,\n formatToParts = _ref2.formatToParts,\n _ref2$formatterSkelet = _ref2.formatterSkeleton,\n formatterSkeleton = _ref2$formatterSkelet === void 0 ? 'yyyyMd' : _ref2$formatterSkelet,\n _ref2$legendSelectedD = _ref2.legendSelectedDateLabel,\n legendSelectedDateLabel = _ref2$legendSelectedD === void 0 ? 'Selected' : _ref2$legendSelectedD,\n _ref2$legendDueDateLa = _ref2.legendDueDateLabel,\n legendDueDateLabel = _ref2$legendDueDateLa === void 0 ? 'Due date' : _ref2$legendDueDateLa,\n _ref2$legendTodayLabe = _ref2.legendTodayLabel,\n legendTodayLabel = _ref2$legendTodayLabe === void 0 ? 'Today' : _ref2$legendTodayLabe,\n isDateDisabled = _ref2.isDateDisabled,\n onSelection = _ref2.onSelection,\n onMonthChange = _ref2.onMonthChange;\n\n /* istanbul ignore next */\n if (!onSelection) {\n onSelection = function () {\n return devWarning('Required prop `onSelection` is missing');\n };\n }\n\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n var _currentDate = selectedDate || new Date();\n\n var _useState = useState(new Date(_currentDate.getFullYear(), _currentDate.getMonth())),\n _useState2 = _slicedToArray(_useState, 2),\n currentDate = _useState2[0],\n setCurrentDate = _useState2[1];\n\n var _useState3 = useState(false),\n _useState4 = _slicedToArray(_useState3, 2),\n isRTL = _useState4[0],\n setRTL = _useState4[1];\n\n var intlContext = useContext(IntlContext);\n var containerRef = useCallback(function (node) {\n if (node !== null) {\n var computedStyle = window.getComputedStyle(node);\n setRTL(computedStyle && computedStyle.direction === 'rtl');\n }\n }, []);\n\n var _firstDayOfWeek = useMemo(function () {\n return getFirstDayOfWeek(intlContext, firstDayOfWeek);\n }, [firstDayOfWeek]);\n\n var _useMemo = useMemo(function () {\n return getNames(intlContext, monthNames, dayNames);\n }, [monthNames, dayNames]),\n _monthNames = _useMemo._monthNames,\n _dayNames = _useMemo._dayNames;\n\n var _formatToParts = useMemo(function () {\n return getFormatter(intlContext, formatToParts, formatterSkeleton);\n }, [formatToParts, formatterSkeleton]);\n\n var tabIndex = !isFocusable ? -1 : 0;\n useEffect(function () {\n setCurrentDate(new Date(_currentDate.getFullYear(), _currentDate.getMonth()));\n }, [selectedDate]);\n\n var renderDateButton = function (dateInfo) {\n var isDisabled = dateInfo.isDisabled,\n isToday = dateInfo.isToday,\n isSelected = dateInfo.isSelected,\n isRangeStart = dateInfo.isRangeStart,\n isRangeEnd = dateInfo.isRangeEnd,\n isDue = dateInfo.isDue,\n inCurrentMonth = dateInfo.inCurrentMonth,\n inRange = dateInfo.inRange,\n date = dateInfo.date;\n var shouldApplySelectedStyles = !isDisabled && (isSelected || isRangeStart || isRangeEnd);\n var cssVal = [_styles.calendarDate, !inCurrentMonth && _styles.calendarDateNotCurrent, isDisabled && _styles.calendarDateDisabled, isToday && _styles.calendarDateToday, isDue && _styles.calendarDueDate, inRange && _styles.calendarDateInRange, shouldApplySelectedStyles && _styles.calendarDateSelected, shouldApplySelectedStyles && isDue && _styles.calendarDueDateSelected];\n var props = {\n css: cssVal,\n className: dateClassName,\n onMouseDown: function onMouseDown(evt) {\n return evt.preventDefault();\n },\n onClick: function onClick() {\n return !(isDisabled || isSelected) && onSelection(date);\n },\n disabled: isDisabled,\n tabIndex: tabIndex,\n type: 'button'\n };\n\n if (dateAs) {\n props.dateInfo = dateInfo;\n }\n\n var formattedDate = _formatToParts(date);\n\n var button = jsx(dateAs || 'button', _extends({}, props, {\n \"data-ppui\": \"true\"\n }), formattedDate.day);\n\n if (isDue) {\n return jsx(\"div\", {\n css: _styles.calendarDueDateIconContainer,\n \"data-ppui\": \"true\"\n }, button, jsx(ClockSmIcon, {\n size: \"xs\",\n css: _styles.calendarDueDateIcon,\n \"data-ppui\": \"true\"\n }));\n }\n\n return button;\n };\n\n var currentMonth = _monthNames[currentDate.getMonth()];\n\n var daysOfWeek = getDaysOfWeek(_firstDayOfWeek);\n var header = jsx(\"thead\", {\n \"data-ppui\": \"true\"\n }, jsx(\"tr\", {\n \"data-ppui\": \"true\"\n }, daysOfWeek.map(function (name) {\n return jsx(\"th\", {\n key: name,\n \"data-ppui\": \"true\"\n }, jsx(CaptionText, {\n \"data-ppui\": \"true\"\n }, _dayNames[name]));\n })));\n var isPrevHidden = calendarFrom && areMonthsEqual(currentDate, calendarFrom);\n var isNextHidden = calendarTo && areMonthsEqual(currentDate, calendarTo);\n var calendarRange = '';\n\n if (isPrevHidden) {\n calendarRange = CalendarRange.START;\n }\n\n if (isNextHidden) {\n calendarRange = CalendarRange.END;\n }\n\n var dates = getDatesForMonth(currentDate, daysOfWeek, _firstDayOfWeek, selectedDate, range, rangeCompletionDate, dueDate, isDateDisabled, calendarRange);\n var dateRows = [];\n var shouldApplyRangeStyles = true;\n var isDueDateVisible = false;\n\n if (isDateDisabled) {\n var isSelectedDateDisabled = selectedDate && isDateDisabled(selectedDate);\n var isRangeCompletionDateDisabled = rangeCompletionDate && isDateDisabled(rangeCompletionDate);\n /* istanbul ignore next */\n\n if (isSelectedDateDisabled || isRangeCompletionDateDisabled) {\n shouldApplyRangeStyles = false;\n }\n }\n\n for (var i = 0; i < dates.length; i = i + 7) {\n var dateCols = [];\n\n for (var j = 0; j < 7; j++) {\n var _dates = dates[i + j],\n isRangeStart = _dates.isRangeStart,\n isRangeEnd = _dates.isRangeEnd,\n inRange = _dates.inRange,\n isDue = _dates.isDue;\n var allowInRange = inRange; // if start and end date is same don't need range styles\n // @ts-ignore\n\n if (isRangeStart && isRangeEnd) {\n allowInRange = false;\n }\n\n var cssVal = [shouldApplyRangeStyles && allowInRange && _styles.calendarCellInRange, shouldApplyRangeStyles && allowInRange && isRangeStart && _styles.calendarCellRangeStart, shouldApplyRangeStyles && allowInRange && isRangeEnd && _styles.calendarCellRangeEnd];\n\n if (!isDueDateVisible && isDue) {\n isDueDateVisible = true;\n }\n\n dateCols.push(jsx(\"td\", {\n key: j,\n \"data-ppui\": \"true\"\n }, jsx(\"div\", {\n css: cssVal,\n \"data-ppui\": \"true\"\n }, renderDateButton(dates[i + j]))));\n }\n\n dateRows.push(jsx(\"tr\", {\n key: i,\n \"data-ppui\": \"true\"\n }, dateCols));\n }\n\n var body = jsx(\"tbody\", {\n \"data-ppui\": \"true\"\n }, dateRows);\n\n var formattedCurrentDate = _formatToParts(currentDate);\n\n var legend = jsx(\"div\", {\n css: _styles.legend,\n \"data-ppui\": \"true\"\n }, jsx(\"div\", {\n css: _styles.legendItem,\n \"data-ppui\": \"true\"\n }, jsx(\"span\", {\n css: [_styles.legendKey, _styles.calendarDateSelected],\n \"data-ppui\": \"true\"\n }), jsx(CaptionText, {\n as: \"span\",\n \"data-ppui\": \"true\"\n }, legendSelectedDateLabel)), isDueDateVisible && jsx(\"div\", {\n css: _styles.legendItem,\n \"data-ppui\": \"true\"\n }, jsx(ClockSmIcon, {\n size: \"xs\",\n css: _styles.dueDateLegendKey,\n \"data-ppui\": \"true\"\n }), jsx(CaptionText, {\n as: \"span\",\n \"data-ppui\": \"true\"\n }, legendDueDateLabel)), jsx(\"div\", {\n css: _styles.legendItem,\n \"data-ppui\": \"true\"\n }, jsx(\"span\", {\n css: [_styles.legendKey, _styles.calendarDateToday],\n \"data-ppui\": \"true\"\n }), jsx(CaptionText, {\n as: \"span\",\n \"data-ppui\": \"true\"\n }, legendTodayLabel)));\n /* istanbul ignore next */\n\n return jsx(\"div\", {\n className: className,\n ref: containerRef,\n \"data-ppui\": \"true\"\n }, jsx(\"div\", {\n css: _styles.calendarNav,\n className: navClassName,\n \"data-ppui\": \"true\"\n }, jsx(IconButton, {\n svgIconComponent: isRTL ? ArrowRightIcon : ArrowLeftIcon,\n buttonType: \"tertiary\",\n onMouseDown: function onMouseDown(evt) {\n return evt.preventDefault();\n },\n onClick: function handlePrevClick() {\n currentDate.setMonth(currentDate.getMonth() - 1);\n var prevDate = new Date(currentDate.getFullYear(), currentDate.getMonth());\n setCurrentDate(prevDate);\n /* istanbul ignore next */\n\n if (onMonthChange) {\n onMonthChange(prevDate);\n }\n },\n css: [_styles.calendarNavButtonPrev, !isFocusable && _styles.calendarNavButtonsNotFocusable, isPrevHidden && _styles.calendarNavButtonsHidden],\n tabIndex: tabIndex,\n \"data-ppui\": \"true\"\n }, prevMonthLabel), jsx(BodyText, {\n \"data-ppui\": \"true\"\n }, \"\".concat(currentMonth, \" \").concat(formattedCurrentDate.year)), jsx(IconButton, {\n svgIconComponent: isRTL ? ArrowLeftIcon : ArrowRightIcon,\n buttonType: \"tertiary\",\n onMouseDown: function onMouseDown(evt) {\n return evt.preventDefault();\n },\n onClick: function handleNextClick() {\n currentDate.setMonth(currentDate.getMonth() + 1);\n var nextDate = new Date(currentDate.getFullYear(), currentDate.getMonth());\n setCurrentDate(nextDate);\n /* istanbul ignore next */\n\n if (onMonthChange) {\n onMonthChange(nextDate);\n }\n },\n css: [_styles.calendarNavButtonNext, !isFocusable && _styles.calendarNavButtonsNotFocusable, isNextHidden && _styles.calendarNavButtonsHidden],\n tabIndex: tabIndex,\n \"data-ppui\": \"true\"\n }, nextMonthLabel)), jsx(\"table\", {\n css: _styles.calendarTable,\n className: tableClassName,\n \"data-ppui\": \"true\"\n }, header, body), legend);\n};\n\nexport { Calendar, DateInput, styles as dateInputStyles };\n","import _extends from '@babel/runtime/helpers/esm/extends';\nimport _objectWithoutProperties from '@babel/runtime/helpers/esm/objectWithoutProperties';\nimport { useMemo } from 'react';\nimport { css, useTheme, jsx } from '@emotion/react';\nimport _taggedTemplateLiteral from '@babel/runtime/helpers/esm/taggedTemplateLiteral';\nimport { devWarning } from '@paypalcorp/pp-react-utils';\n\nvar _templateObject, _templateObject2;\nfunction styles(tokens) {\n /* istanbul ignore next */\n if (!Object.keys(tokens).length) {\n devWarning('Missing Emotion theme. Use ThemeProvider from @emotion/react to pass a valid theme from pp-react.');\n return {};\n }\n\n var sysColorStructureDivider = tokens.sysColorStructureDivider,\n sysSpaceMd = tokens.sysSpaceMd,\n sysBorderThicknessNormal = tokens.sysBorderThicknessNormal,\n sysColorPrimaryContrast = tokens.sysColorPrimaryContrast; // Base class for Divider\n\n var base = css(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n label: divider_base;\\n border: none;\\n border-top: \", \" solid \", \";\\n margin: \", \" 0;\\n \"])), sysBorderThicknessNormal, sysColorStructureDivider, sysSpaceMd); // Inverse State\n\n var inverse = css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n label: inverse;\\n border-color: \", \";\\n \"])), sysColorPrimaryContrast);\n return {\n base: base,\n inverse: inverse\n };\n}\n\nvar _excluded = [\"inverse\", \"className\"];\n\nvar Divider = function (_ref) {\n var inverse = _ref.inverse,\n className = _ref.className,\n rest = _objectWithoutProperties(_ref, _excluded);\n\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n var cssVal = [_styles.base, inverse && _styles.inverse];\n return jsx(\"hr\", _extends({\n css: cssVal,\n className: className\n }, rest, {\n \"data-ppui-info\": \"divider_4.2.4\"\n }));\n};\n\nexport { Divider, styles as dividerStyles };\n","import _defineProperty from '@babel/runtime/helpers/esm/defineProperty';\nimport _slicedToArray from '@babel/runtime/helpers/esm/slicedToArray';\nimport _objectWithoutProperties from '@babel/runtime/helpers/esm/objectWithoutProperties';\nimport _extends from '@babel/runtime/helpers/esm/extends';\nimport { forwardRef, useMemo, useRef, useState, useEffect } from 'react';\nimport { SelectionMenu } from '@paypalcorp/pp-react-menu';\nimport { CriticalIcon, ChevronUpIcon, ChevronDownIcon } from '@paypalcorp/pp-react-icons';\nimport { devWarning, utilStyles, KeyboardCode } from '@paypalcorp/pp-react-utils';\nimport { css, useTheme, jsx } from '@emotion/react';\nimport _taggedTemplateLiteral from '@babel/runtime/helpers/esm/taggedTemplateLiteral';\nimport { math } from 'polished';\nimport { textStyles } from '@paypalcorp/pp-react-text';\n\nvar _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11;\nfunction styles(tokens) {\n /* istanbul ignore next */\n if (!Object.keys(tokens).length) {\n devWarning('Missing Emotion theme. Use ThemeProvider from @emotion/react to pass a valid theme from pp-react.');\n return {};\n }\n\n var sysMotionDurationHover = tokens.sysMotionDurationHover,\n sysSizeIconSm = tokens.sysSizeIconSm,\n sysSizeFieldLg = tokens.sysSizeFieldLg,\n sysColorBackgroundSurface = tokens.sysColorBackgroundSurface,\n sysBorderThicknessNormal = tokens.sysBorderThicknessNormal,\n sysBorderRadiusSm = tokens.sysBorderRadiusSm,\n sysColorStructureBorderHighContrast = tokens.sysColorStructureBorderHighContrast,\n sysSpaceTiny = tokens.sysSpaceTiny,\n sysSpaceXs = tokens.sysSpaceXs,\n sysSpaceSm = tokens.sysSpaceSm,\n sysSpaceMd = tokens.sysSpaceMd,\n sysColorBackgroundMediumContrast = tokens.sysColorBackgroundMediumContrast,\n sysTypographyFieldLabelLgLineHeight = tokens.sysTypographyFieldLabelLgLineHeight,\n sysTypographyFieldLabelSmLineHeight = tokens.sysTypographyFieldLabelSmLineHeight,\n sysBorderThicknessEmphasis = tokens.sysBorderThicknessEmphasis,\n sysColorErrorMain = tokens.sysColorErrorMain;\n\n var _utilStyles = utilStyles(tokens),\n focusStyles = _utilStyles.focusStyles,\n ellipsis = _utilStyles.ellipsis;\n\n var _textStyles = textStyles(tokens),\n textFieldLabelLg = _textStyles.fieldLabelLg,\n textFieldValueSm = _textStyles.fieldValueSm,\n textFieldLabelSm = _textStyles.fieldLabelSm,\n textCaption = _textStyles.caption; //Base styles\n\n\n var base = css(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n label: dropdown_menu_base;\\n position: relative;\\n text-align: start;\\n \"])));\n var label = css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n label: dropdown_menu_label;\\n pointer-events: none; // Better way to fix the cursor: text issue!\\n position: absolute;\\n \", \"\\n transition: font-size \", \" ease-in-out, top \", \" ease-in-out, background-color \", \" linear;\\n left: \", \";\\n top: \", \";\\n \", \"\\n right: \", \";\\n\\n [dir='rtl'] & {\\n right: \", \";\\n left: \", \";\\n }\\n \"])), textFieldLabelLg(), sysMotionDurationHover, sysMotionDurationHover, sysMotionDurationHover, sysSpaceMd, math(\"(\".concat(sysSizeFieldLg, \" - \").concat(sysTypographyFieldLabelLgLineHeight, \") / 2\")), ellipsis, math(\"\".concat(sysSpaceMd, \" + \").concat(sysSizeIconSm)), sysSpaceMd, math(\"\".concat(sysSpaceMd, \" + \").concat(sysSizeIconSm)));\n var buttonActive = css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral([\"\\n label: active;\\n \", \";\\n \"])), focusStyles.focusOffsetElement);\n var button = css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral([\"\\n label: dropdown_menu_button;\\n \", \";\\n box-sizing: border-box;\\n height: \", \";\\n width: 100%;\\n border: \", \" solid\\n \", \";\\n border-radius: \", \";\\n background-color: \", \";\\n padding-top: \", \";\\n padding-right: \", \";\\n padding-left: \", \";\\n padding-bottom: \", \";\\n cursor: pointer;\\n text-align: start;\\n \", \"\\n\\n &:focus {\\n \", \";\\n }\\n\\n [dir='rtl'] & {\\n padding-left: \", \";\\n padding-right: \", \";\\n }\\n \"])), textFieldValueSm(), sysSizeFieldLg, sysBorderThicknessNormal, sysColorStructureBorderHighContrast, sysBorderRadiusSm, sysColorBackgroundSurface, math(\"\".concat(sysSpaceSm, \" + \").concat(sysSpaceTiny, \" + \").concat(sysTypographyFieldLabelSmLineHeight, \" - \").concat(sysBorderThicknessNormal)), math(\"\".concat(sysSpaceMd, \" + \").concat(sysSizeIconSm, \" - \").concat(sysBorderThicknessNormal)), math(\"\".concat(sysSpaceMd, \" - \").concat(sysBorderThicknessNormal)), math(\"\".concat(sysSpaceMd, \" - \").concat(sysBorderThicknessNormal)), ellipsis, buttonActive, math(\"\".concat(sysSpaceMd, \" + \").concat(sysSizeIconSm, \" - \").concat(sysBorderThicknessNormal)), math(\"\".concat(sysSpaceMd, \" - \").concat(sysBorderThicknessNormal)));\n var buttonError = css(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral([\"\\n label: error;\\n border: \", \" solid \", \";\\n padding-top: \", \";\\n padding-right: \", \";\\n padding-left: \", \";\\n padding-bottom: \", \";\\n\\n [dir='rtl'] & {\\n padding-left: \", \";\\n padding-right: \", \";\\n }\\n \"])), sysBorderThicknessEmphasis, sysColorErrorMain, math(\"\".concat(sysSpaceSm, \" + \").concat(sysSpaceTiny, \" + \").concat(sysTypographyFieldLabelSmLineHeight, \" - \").concat(sysBorderThicknessEmphasis)), math(\"\".concat(sysSpaceMd, \" + \").concat(sysSizeIconSm, \" - \").concat(sysBorderThicknessEmphasis)), math(\"\".concat(sysSpaceMd, \" - \").concat(sysBorderThicknessEmphasis)), math(\"\".concat(sysSpaceMd, \" - \").concat(sysBorderThicknessEmphasis)), math(\"\".concat(sysSpaceMd, \" + \").concat(sysSizeIconSm, \" - \").concat(sysBorderThicknessEmphasis)), math(\"\".concat(sysSpaceMd, \" - \").concat(sysBorderThicknessEmphasis)));\n var labelActive = css(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral([\"\\n label: active;\\n \", \"\\n top: \", \";\\n \"])), textFieldLabelSm(), sysSpaceSm);\n var affordanceIcon = css(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral([\"\\n label: dropdown_menu_affordance_icon;\\n pointer-events: none;\\n position: absolute;\\n top: \", \";\\n right: \", \";\\n margin-left: \", \";\\n\\n [dir='rtl'] & {\\n margin-right: \", \";\\n left: \", \";\\n right: auto;\\n }\\n \"])), math(\"\".concat(sysSpaceSm, \" + \").concat(sysSpaceMd)), math(\"\".concat(sysSpaceSm, \" + \").concat(sysSpaceMd)), sysSpaceMd, sysSpaceMd, sysSpaceSm);\n var helperText = css(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral([\"\\n label: dropdown_menu_helper_text;\\n \", \"\\n margin-top: \", \";\\n list-style: none; // In case it's a list of helper texts\\n \"])), textCaption({\n color: sysColorBackgroundMediumContrast\n }), sysSpaceXs);\n var errorText = css(_templateObject9 || (_templateObject9 = _taggedTemplateLiteral([\"\\n label: dropdown_menu_error_text;\\n \", \"\\n display: flex;\\n margin-top: \", \";\\n align-items: center;\\n \"])), textCaption({\n color: sysColorBackgroundMediumContrast\n }), sysSpaceXs);\n var errorIcon = css(_templateObject10 || (_templateObject10 = _taggedTemplateLiteral([\"\\n label: dropdown_menu_error_icon;\\n color: \", \";\\n margin-right: \", \";\\n\\n [dir='rtl'] & {\\n margin-left: \", \";\\n margin-right: 0;\\n }\\n \"])), sysColorErrorMain, sysSpaceXs, sysSpaceXs);\n var selectBox = css(_templateObject11 || (_templateObject11 = _taggedTemplateLiteral([\"\\n label: dropdown_menu_select;\\n opacity: 0;\\n position: absolute;\\n pointer-events: none;\\n width: 0;\\n height: 0;\\n \"])));\n return {\n base: base,\n label: label,\n button: button,\n buttonError: buttonError,\n buttonActive: buttonActive,\n affordanceIcon: affordanceIcon,\n labelActive: labelActive,\n helperText: helperText,\n errorText: errorText,\n errorIcon: errorIcon,\n selectBox: selectBox\n };\n}\n\nvar _excluded = [\"className\", \"menuContainerClassName\", \"menuListClassName\", \"menuItemClassName\", \"menuMobileHeaderClassName\", \"menuButtonClassName\", \"menuLabelClassName\", \"skipButtonFocus\", \"sheetClassName\", \"sheetWrapperClassName\", \"id\", \"label\", \"name\", \"errorText\", \"errorIconAriaLabel\", \"helperText\", \"value\", \"options\", \"ariaLabelledby\", \"renderButtonContent\", \"onChange\", \"onClose\", \"onClick\", \"onKeyDown\", \"isLoadingOptions\", \"showUnselect\"];\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nvar getRefCurrent = function (ref) {\n return (\n /* istanbul ignore next */\n ref && ref.current ? ref.current : null\n );\n}; // Get either the error message or helper text or... nothing\n\n\nvar renderMessage = function (errorText, errorIconAriaLabel, helperText, msgId, _styles) {\n if (errorText) {\n var errorProps = {\n css: _styles.errorIcon,\n role: 'img',\n 'aria-label': errorIconAriaLabel\n };\n var dropdownErrorIcon = jsx(CriticalIcon, _extends({\n size: \"sm\"\n }, errorProps, {\n \"data-ppui\": \"true\"\n }));\n return jsx(\"div\", {\n css: _styles.errorText,\n id: msgId,\n role: \"alert\",\n \"data-ppui\": \"true\"\n }, dropdownErrorIcon, jsx(\"span\", {\n \"data-ppui\": \"true\"\n }, errorText));\n }\n\n if (helperText) {\n return jsx(\"div\", {\n css: _styles.helperText,\n id: msgId,\n \"data-ppui\": \"true\"\n }, jsx(\"span\", {\n \"data-ppui\": \"true\"\n }, helperText));\n }\n\n return null;\n};\n\nvar hasNoModifiers = function (evt) {\n return !evt.altKey && !evt.ctrlKey && !evt.shiftKey && !evt.metaKey;\n};\n\nvar DropdownMenu = forwardRef( // eslint-disable-next-line complexity\nfunction (props, ref) {\n var className = props.className,\n menuContainerClassName = props.menuContainerClassName,\n menuListClassName = props.menuListClassName,\n menuItemClassName = props.menuItemClassName,\n menuMobileHeaderClassName = props.menuMobileHeaderClassName,\n menuButtonClassName = props.menuButtonClassName,\n menuLabelClassName = props.menuLabelClassName,\n _props$skipButtonFocu = props.skipButtonFocus,\n skipButtonFocus = _props$skipButtonFocu === void 0 ? false : _props$skipButtonFocu,\n sheetClassName = props.sheetClassName,\n sheetWrapperClassName = props.sheetWrapperClassName,\n id = props.id,\n _props$label = props.label,\n label = _props$label === void 0 ? 'Label' : _props$label,\n name = props.name,\n errorText = props.errorText,\n _props$errorIconAriaL = props.errorIconAriaLabel,\n errorIconAriaLabel = _props$errorIconAriaL === void 0 ? 'Error' : _props$errorIconAriaL,\n helperText = props.helperText,\n value = props.value,\n _props$options = props.options,\n options = _props$options === void 0 ? [] : _props$options,\n ariaLabelledby = props.ariaLabelledby,\n renderButtonContent = props.renderButtonContent,\n onChange = props.onChange,\n onClose = props.onClose,\n onClick = props.onClick,\n onKeyDown = props.onKeyDown,\n isLoadingOptions = props.isLoadingOptions,\n showUnselect = props.showUnselect,\n rest = _objectWithoutProperties(props, _excluded);\n\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n var buttonId = id ? \"dropdownMenuButton_\".concat(id) : \"dropdownMenuButton_\".concat(label.replace(/\\s/g, ''));\n var internalRef = useRef();\n var buttonRef = ref !== null && ref !== void 0 ? ref : internalRef;\n var selectId = id ? \"dropdownMenuSelect_\".concat(id) : \"dropdownMenuSelect_\".concat(label.replace(/\\s/g, ''));\n\n var _useState = useState(false),\n _useState2 = _slicedToArray(_useState, 2),\n showMenu = _useState2[0],\n setShowMenu = _useState2[1];\n\n var _useState3 = useState(!!value),\n _useState4 = _slicedToArray(_useState3, 2),\n initialItemFocus = _useState4[0],\n setKeyboardActive = _useState4[1];\n\n var _useState5 = useState(false),\n _useState6 = _slicedToArray(_useState5, 2),\n isRtl = _useState6[0],\n setRtl = _useState6[1];\n\n useEffect(function () {\n var _window;\n\n var btn = getRefCurrent(buttonRef);\n var computedStyle = btn && ((_window = window) === null || _window === void 0 ? void 0 : _window.getComputedStyle(btn));\n setRtl((computedStyle === null || computedStyle === void 0 ? void 0 : computedStyle.direction) === 'rtl');\n });\n\n var openMenu = function (evt) {\n setShowMenu(function (prevState) {\n return !prevState;\n });\n setKeyboardActive(!evt.detail);\n };\n\n var handleItemClick = function (index) {\n setShowMenu(false);\n var buttonCurrent = getRefCurrent(buttonRef);\n /* istanbul ignore next */\n\n if (buttonCurrent) {\n if (skipButtonFocus) {\n buttonCurrent.blur();\n } else {\n buttonCurrent.focus();\n }\n }\n\n var selectedValue;\n /* istanbul ignore next */\n\n if (onChange) {\n var hasOptionsIndex = options.length > 0 && index >= 0;\n selectedValue = hasOptionsIndex ? options[index].value || options[index].primaryText : null;\n\n if (showUnselect) {\n selectedValue = hasOptionsIndex ? options[index].value : null;\n }\n\n var myEvent = {\n target: {\n selectedIndex: index,\n value: selectedValue\n }\n };\n onChange(myEvent);\n }\n };\n\n var msgId = helperText && 'dropdown_helperText' || errorText && 'dropdown_errorText';\n var buttonText = '';\n var buttonValue = '';\n var selectedIndex = -1;\n\n if (value) {\n for (var i = 0; i < options.length; i++) {\n if (options[i].value === value) {\n if (renderButtonContent) {\n buttonText = renderButtonContent();\n } else {\n buttonText = options[i].primaryText;\n }\n\n buttonValue = options[i].value;\n selectedIndex = i;\n break;\n }\n }\n } else if (!value && options.length > 0 && options[0].value === '') {\n selectedIndex = 0;\n }\n\n var AffordanceIconComponent = showMenu ? ChevronUpIcon : ChevronDownIcon;\n var AffordanceIcon = jsx(AffordanceIconComponent, {\n size: \"sm\",\n css: _styles.affordanceIcon,\n color: \"BackgroundMediumContrast\",\n \"aria-hidden\": \"true\",\n \"data-ppui\": \"true\"\n });\n var labelledBy = ariaLabelledby ? \"\".concat(buttonId, \"-label \").concat(ariaLabelledby) : \"\".concat(buttonId, \"-label\");\n\n if (buttonText) {\n labelledBy = \"\".concat(labelledBy, \" \").concat(buttonId);\n }\n\n var otherButtonAttr = _objectSpread(_objectSpread(_objectSpread({}, msgId && {\n 'aria-describedby': msgId\n }), {\n 'aria-labelledby': labelledBy\n }), rest);\n\n var buttonCssVal = [_styles.button, showMenu && _styles.buttonActive, errorText && _styles.buttonError];\n var labelCssVal = [_styles.label, (showMenu || buttonText) && _styles.labelActive];\n return jsx(\"div\", {\n className: className,\n css: _styles.base,\n id: id,\n \"data-ppui-info\": \"dropdown-menu_3.6.12\"\n }, jsx(\"select\", {\n css: _styles.selectBox,\n \"aria-hidden\": \"true\",\n id: selectId,\n name: name,\n tabIndex: -1,\n onChange: function (evt) {\n return handleItemClick(evt.target.selectedIndex - 1);\n },\n value: buttonValue,\n \"data-ppui\": \"true\"\n }, jsx(\"option\", {\n disabled: true,\n value: \"\",\n \"data-ppui\": \"true\"\n }, label), options.length > 0 && options.map(function (opt, index) {\n return jsx(\"option\", {\n key: index,\n value: opt.value ? opt.value : opt.primaryText,\n \"data-ppui\": \"true\"\n }, opt.primaryText);\n })), jsx(\"button\", _extends({\n className: menuButtonClassName,\n css: buttonCssVal,\n type: \"button\",\n id: buttonId,\n ref: buttonRef,\n \"aria-haspopup\": \"listbox\",\n \"aria-expanded\": showMenu,\n onClick: function handleClick(evt) {\n if (!(options === null || options === void 0 ? void 0 : options.length) && !isLoadingOptions) {\n return;\n }\n\n openMenu(evt);\n /* istanbul ignore next */\n\n if (onClick) {\n onClick(evt);\n }\n },\n onKeyDown: function handleKey(evt) {\n /* istanbul ignore next */\n var KeyCode = new KeyboardCode(evt.key || evt.keyCode);\n\n if (!showMenu && (KeyCode.IS_ARROW_UP || KeyCode.IS_ARROW_DOWN) && hasNoModifiers(evt)) {\n evt.preventDefault();\n openMenu(evt);\n }\n /* istanbul ignore next */\n\n\n if (onKeyDown) {\n onKeyDown(evt);\n }\n }\n }, otherButtonAttr, {\n \"data-ppui\": \"true\"\n }), AffordanceIcon, jsx(\"span\", {\n \"data-ppui\": \"true\"\n }, buttonText)), jsx(\"label\", {\n id: \"\".concat(buttonId, \"-label\"),\n htmlFor: buttonId,\n css: labelCssVal,\n className: menuLabelClassName,\n \"data-ppui\": \"true\"\n }, jsx(\"span\", {\n \"data-ppui\": \"true\"\n }, label)), jsx(SelectionMenu, {\n initialItemFocus: initialItemFocus,\n isOpen: showMenu,\n mobileTitle: label,\n onClose: function handleClose(evt) {\n setShowMenu(false);\n\n if (onClose) {\n onClose(evt);\n }\n },\n onSelection: handleItemClick,\n selectedIndex: selectedIndex,\n triggerElementRef: buttonRef,\n options: options,\n className: menuListClassName,\n containerClassName: menuContainerClassName,\n itemClassName: menuItemClassName,\n mobileHeaderClassName: menuMobileHeaderClassName,\n sheetClassName: sheetClassName,\n sheetWrapperClassName: sheetWrapperClassName,\n rtl: isRtl,\n returnFocusToTrigger: !skipButtonFocus,\n isLoadingOptions: isLoadingOptions,\n searchEnabled: true,\n \"data-ppui\": \"true\"\n }), renderMessage(errorText, errorIconAriaLabel, helperText, msgId, _styles));\n});\n\nexport { DropdownMenu, styles as dropdownMenuStyles };\n","import _extends from '@babel/runtime/helpers/esm/extends';\nimport _objectWithoutProperties from '@babel/runtime/helpers/esm/objectWithoutProperties';\nimport { useMemo } from 'react';\nimport { css, useTheme, jsx } from '@emotion/react';\nimport _taggedTemplateLiteral from '@babel/runtime/helpers/esm/taggedTemplateLiteral';\nimport { rem, math } from 'polished';\nimport { devWarning } from '@paypalcorp/pp-react-utils';\n\nconst flagData = {\n \"countries\": {\n \"ad\": \"0.431\",\n \"ae\": \"0.862\",\n \"ag\": \"1.293\",\n \"ai\": \"1.724\",\n \"al\": \"2.155\",\n \"am\": \"2.586\",\n \"an\": \"3.017\",\n \"ao\": \"3.448\",\n \"ar\": \"3.879\",\n \"at\": \"4.310\",\n \"au\": \"4.741\",\n \"aw\": \"5.172\",\n \"az\": \"5.603\",\n \"ba\": \"6.034\",\n \"bb\": \"6.466\",\n \"be\": \"6.897\",\n \"bf\": \"7.328\",\n \"bg\": \"7.759\",\n \"bh\": \"8.190\",\n \"bi\": \"8.621\",\n \"bj\": \"9.052\",\n \"bm\": \"9.483\",\n \"bn\": \"9.914\",\n \"bo\": \"10.345\",\n \"br\": \"10.776\",\n \"bs\": \"11.207\",\n \"bt\": \"11.638\",\n \"bw\": \"12.069\",\n \"by\": \"12.500\",\n \"bz\": \"12.931\",\n \"c2\": \"13.362\",\n \"ca\": \"13.793\",\n \"cd\": \"14.224\",\n \"cg\": \"14.655\",\n \"ch\": \"15.086\",\n \"ci\": \"15.517\",\n \"ck\": \"15.948\",\n \"cl\": \"16.379\",\n \"cm\": \"16.810\",\n \"cn\": \"17.241\",\n \"co\": \"17.672\",\n \"cr\": \"18.103\",\n \"cv\": \"18.534\",\n \"cy\": \"18.966\",\n \"cz\": \"19.397\",\n \"de\": \"19.828\",\n \"dj\": \"20.259\",\n \"dk\": \"20.690\",\n \"dm\": \"21.121\",\n \"do\": \"21.552\",\n \"dz\": \"21.983\",\n \"ec\": \"22.414\",\n \"ee\": \"22.845\",\n \"eg\": \"23.276\",\n \"er\": \"23.707\",\n \"es\": \"24.138\",\n \"et\": \"24.569\",\n \"fi\": \"25.000\",\n \"fj\": \"25.431\",\n \"fk\": \"25.862\",\n \"fm\": \"26.293\",\n \"fo\": \"26.724\",\n \"fr\": \"27.155\",\n \"ga\": \"27.586\",\n \"gb\": \"28.017\",\n \"gd\": \"28.448\",\n \"ge\": \"28.879\",\n \"gf\": \"29.310\",\n \"gi\": \"29.741\",\n \"gl\": \"30.172\",\n \"gm\": \"30.603\",\n \"gn\": \"31.034\",\n \"gp\": \"31.466\",\n \"gr\": \"31.897\",\n \"gt\": \"32.328\",\n \"gw\": \"32.759\",\n \"gy\": \"33.190\",\n \"hk\": \"33.621\",\n \"hn\": \"34.052\",\n \"hr\": \"34.483\",\n \"hu\": \"34.914\",\n \"id\": \"35.345\",\n \"ie\": \"35.776\",\n \"il\": \"36.207\",\n \"in\": \"36.638\",\n \"is\": \"37.069\",\n \"it\": \"37.500\",\n \"jm\": \"37.931\",\n \"jo\": \"38.362\",\n \"jp\": \"38.793\",\n \"ke\": \"39.224\",\n \"kg\": \"39.655\",\n \"kh\": \"40.086\",\n \"ki\": \"40.517\",\n \"km\": \"40.948\",\n \"kn\": \"41.379\",\n \"kr\": \"41.810\",\n \"kw\": \"42.241\",\n \"ky\": \"42.672\",\n \"kz\": \"43.103\",\n \"la\": \"43.534\",\n \"lc\": \"43.966\",\n \"li\": \"44.397\",\n \"lk\": \"44.828\",\n \"ls\": \"45.259\",\n \"lt\": \"45.690\",\n \"lu\": \"46.121\",\n \"lv\": \"46.552\",\n \"ma\": \"46.983\",\n \"mc\": \"47.414\",\n \"md\": \"47.845\",\n \"me\": \"48.276\",\n \"mg\": \"48.707\",\n \"mh\": \"49.138\",\n \"mk\": \"49.569\",\n \"ml\": \"50.000\",\n \"mn\": \"50.431\",\n \"mq\": \"50.862\",\n \"mr\": \"51.293\",\n \"ms\": \"51.724\",\n \"mt\": \"52.155\",\n \"mu\": \"52.586\",\n \"mv\": \"53.017\",\n \"mw\": \"53.448\",\n \"mx\": \"53.879\",\n \"my\": \"54.310\",\n \"mz\": \"54.741\",\n \"na\": \"55.172\",\n \"nc\": \"55.603\",\n \"ne\": \"56.034\",\n \"nf\": \"56.466\",\n \"ng\": \"56.897\",\n \"ni\": \"57.328\",\n \"nl\": \"57.759\",\n \"no\": \"58.190\",\n \"np\": \"58.621\",\n \"nr\": \"59.052\",\n \"nu\": \"59.483\",\n \"nz\": \"59.914\",\n \"om\": \"60.345\",\n \"pa\": \"60.776\",\n \"pe\": \"61.207\",\n \"pf\": \"61.638\",\n \"pg\": \"62.069\",\n \"ph\": \"62.500\",\n \"pl\": \"62.931\",\n \"pm\": \"63.362\",\n \"pn\": \"63.793\",\n \"pt\": \"64.224\",\n \"pw\": \"64.655\",\n \"py\": \"65.086\",\n \"qa\": \"65.517\",\n \"re\": \"65.948\",\n \"ro\": \"66.379\",\n \"rs\": \"66.810\",\n \"ru\": \"67.241\",\n \"rw\": \"67.672\",\n \"sa\": \"68.103\",\n \"sb\": \"68.534\",\n \"sc\": \"68.966\",\n \"se\": \"69.397\",\n \"sg\": \"69.828\",\n \"sh\": \"70.259\",\n \"si\": \"70.690\",\n \"sj\": \"71.121\",\n \"sk\": \"71.552\",\n \"sl\": \"71.983\",\n \"sm\": \"72.414\",\n \"sn\": \"72.845\",\n \"so\": \"73.276\",\n \"sr\": \"73.707\",\n \"st\": \"74.138\",\n \"sv\": \"74.569\",\n \"sz\": \"75.000\",\n \"tc\": \"75.431\",\n \"td\": \"75.862\",\n \"tg\": \"76.293\",\n \"th\": \"76.724\",\n \"tj\": \"77.155\",\n \"tm\": \"77.586\",\n \"tn\": \"78.017\",\n \"to\": \"78.448\",\n \"tr\": \"78.879\",\n \"tt\": \"79.310\",\n \"tv\": \"79.741\",\n \"tw\": \"0.000\",\n \"tz\": \"80.603\",\n \"ua\": \"81.034\",\n \"ug\": \"81.466\",\n \"us\": \"81.897\",\n \"uy\": \"82.328\",\n \"va\": \"82.759\",\n \"vc\": \"83.190\",\n \"ve\": \"83.621\",\n \"vg\": \"84.052\",\n \"vn\": \"84.483\",\n \"vu\": \"84.914\",\n \"wf\": \"85.345\",\n \"ws\": \"85.776\",\n \"ye\": \"86.207\",\n \"yt\": \"86.638\",\n \"za\": \"87.069\",\n \"zm\": \"87.500\",\n \"zw\": \"87.931\",\n \"eu\": \"88.362\",\n \"af\": \"88.793\",\n \"as\": \"89.224\",\n \"bd\": \"89.655\",\n \"io\": \"90.086\",\n \"cf\": \"90.517\",\n \"cx\": \"90.948\",\n \"cc\": \"91.379\",\n \"gq\": \"91.810\",\n \"gh\": \"92.241\",\n \"gu\": \"92.672\",\n \"gg\": \"93.103\",\n \"ht\": \"93.534\",\n \"im\": \"93.966\",\n \"lb\": \"94.397\",\n \"je\": \"94.828\",\n \"lr\": \"95.259\",\n \"mo\": \"95.690\",\n \"mm\": \"96.121\",\n \"mp\": \"96.552\",\n \"pk\": \"96.983\",\n \"ps\": \"97.414\",\n \"pr\": \"97.845\",\n \"tl\": \"98.276\",\n \"tk\": \"98.707\",\n \"vi\": \"99.138\",\n \"uz\": \"99.569\",\n \"eh\": \"100.000\"\n },\n \"sprites\": {\n \"1x\": {\n \"url\": \"https://www.paypalobjects.com/paypal-ui/components/flags/1x.png\",\n \"width\": 32,\n \"height\": 24\n },\n \"2x\": {\n \"url\": \"https://www.paypalobjects.com/paypal-ui/components/flags/2x.png\",\n \"width\": 64,\n \"height\": 48\n },\n \"3x\": {\n \"url\": \"https://www.paypalobjects.com/paypal-ui/components/flags/3x.png\",\n \"width\": 96,\n \"height\": 72\n }\n }\n};\n\nvar _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5;\nfunction styles(tokens) {\n /* istanbul ignore next */\n if (!Object.keys(tokens).length) {\n devWarning('Missing Emotion theme. Use ThemeProvider from @emotion/react to pass a valid theme from pp-react.');\n return {};\n }\n\n var sysBorderRadiusSm = tokens.sysBorderRadiusSm,\n sysBorderThicknessNormal = tokens.sysBorderThicknessNormal,\n sysColorStructureDivider = tokens.sysColorStructureDivider,\n sysSizeIconSm = tokens.sysSizeIconSm,\n sysSizeIconMd = tokens.sysSizeIconMd;\n var countries = flagData.countries,\n sprites = flagData.sprites;\n var sprite1x = sprites['1x'];\n var sprite2x = sprites['2x'];\n var flagSprite1XUrl = sprite1x.url;\n var flagSprite2XUrl = sprite2x.url;\n var flagSprite1XWidth = rem(sprite1x.width);\n var flagSprite1XHeight = rem(sprite1x.height);\n var flagSprite2XWidth = rem(sprite2x.width);\n var flagSprite2XHeight = rem(sprite2x.height);\n var flagWidth = {\n sm: sysSizeIconSm,\n md: sysSizeIconMd\n };\n\n var countryScale = function (size) {\n var density = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '1x';\n var calculatedVal = math(\"\".concat(flagWidth[size], \" / \").concat(density === '1x' ? flagSprite1XWidth : flagSprite2XWidth));\n return parseFloat(calculatedVal);\n };\n\n var base = css(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n label: flag;\\n display: inline-block;\\n box-sizing: border-box;\\n position: relative;\\n \"])));\n\n var flagSize = function (size) {\n var sizeLabel = \"size_\".concat(size);\n return css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n label: \", \";\\n width: \", \";\\n height: \", \";\\n \"])), sizeLabel, flagWidth[size], math(\"\".concat(flagWidth[size], \" * \").concat(3 / 4)));\n };\n\n var scale = function (size, noRoundCorners) {\n return css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral([\"\\n label: \", \";\\n width: \", \";\\n height: \", \";\\n background: transparent url(\", \") no-repeat;\\n background-size: cover;\\n background-origin: border-box;\\n transform-origin: top left;\\n position: absolute;\\n left: 0;\\n border: \", \" solid \", \";\\n transform: scale(\", \");\\n border-radius: \", \";\\n @media only screen and (min-device-pixel-ratio: 2),\\n only screen and (min-resolution: 192dpi),\\n only screen and (min-resolution: 2dppx) {\\n width: \", \";\\n height: \", \";\\n background-image: url(\", \");\\n transform: scale(\", \");\\n border-radius: \", \";\\n }\\n \"])), noRoundCorners ? 'scale_no_border' : 'scale', flagSprite1XWidth, flagSprite1XHeight, flagSprite1XUrl, sysBorderThicknessNormal, sysColorStructureDivider, countryScale(size), noRoundCorners ? 0 : math(\"\".concat(sysBorderRadiusSm, \"/\").concat(countryScale(size))), flagSprite2XWidth, flagSprite2XHeight, flagSprite2XUrl, countryScale(size, '2x'), noRoundCorners ? 0 : math(\"\".concat(sysBorderRadiusSm, \"/\").concat(countryScale(size, '2x'))));\n };\n\n var flag = function (countryCode) {\n if (!countryCode) {\n return css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral([\"\\n label: flag_default;\\n background-position: 0 0%;\\n \"])));\n }\n\n var country = countryCode.toLocaleLowerCase(); // @ts-ignore\n\n var backgroundPosition = countries[country] || 0;\n var flagLabel = backgroundPosition ? \"flag_\".concat(country) : \"flag_default\";\n return css(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral([\"\\n label: \", \";\\n // We are using percentage value to support text-scaling.\\n // In case flag sprite gets changed, it needs to be deployed as a brand-new URL\\n //without replacing the old file for backward-compatibility\\n background-position: 0 \", \"%;\\n \"])), flagLabel, backgroundPosition);\n };\n\n return {\n base: base,\n flagSize: flagSize,\n scale: scale,\n flag: flag\n };\n}\n\nvar _excluded = [\"countryCode\", \"size\", \"noRoundCorners\", \"className\"];\n\nvar Flag = function (_ref) {\n var _styles$flagSize, _styles$scale, _styles$flag;\n\n var countryCode = _ref.countryCode,\n _ref$size = _ref.size,\n size = _ref$size === void 0 ? 'sm' : _ref$size,\n _ref$noRoundCorners = _ref.noRoundCorners,\n noRoundCorners = _ref$noRoundCorners === void 0 ? false : _ref$noRoundCorners,\n className = _ref.className,\n rest = _objectWithoutProperties(_ref, _excluded);\n\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n var containerCssVal = [_styles.base, (_styles$flagSize = _styles.flagSize) === null || _styles$flagSize === void 0 ? void 0 : _styles$flagSize.call(_styles, size)];\n var flagCssVal = [(_styles$scale = _styles.scale) === null || _styles$scale === void 0 ? void 0 : _styles$scale.call(_styles, size, noRoundCorners), (_styles$flag = _styles.flag) === null || _styles$flag === void 0 ? void 0 : _styles$flag.call(_styles, countryCode)];\n return jsx(\"div\", _extends({\n css: containerCssVal,\n className: className,\n \"data-ppui-info\": \"flag_2.24.0\"\n }, rest), jsx(\"span\", {\n css: flagCssVal,\n \"data-ppui\": \"true\"\n }));\n};\n\nexport { Flag, styles as flagStyles };\n","import _taggedTemplateLiteral from '@babel/runtime/helpers/esm/taggedTemplateLiteral';\nimport { css, useTheme, jsx } from '@emotion/react';\nimport { devWarning } from '@paypalcorp/pp-react-utils';\nimport _extends from '@babel/runtime/helpers/esm/extends';\nimport _objectWithoutProperties from '@babel/runtime/helpers/esm/objectWithoutProperties';\nimport { useMemo } from 'react';\nimport _typeof from '@babel/runtime/helpers/esm/typeof';\n\nvar _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14, _templateObject15, _templateObject16, _templateObject17, _templateObject18, _templateObject19, _templateObject20, _templateObject21, _templateObject22, _templateObject23, _templateObject24, _templateObject25, _templateObject26, _templateObject27, _templateObject28, _templateObject29, _templateObject30, _templateObject31, _templateObject32, _templateObject33, _templateObject34, _templateObject35, _templateObject36, _templateObject37, _templateObject38, _templateObject39, _templateObject40, _templateObject41, _templateObject42, _templateObject43, _templateObject44, _templateObject45, _templateObject46, _templateObject47, _templateObject48, _templateObject49, _templateObject50, _templateObject51, _templateObject52;\nfunction styles(tokens) {\n /* istanbul ignore next */\n if (!Object.keys(tokens).length) {\n devWarning('Missing Emotion theme. Use ThemeProvider from @emotion/react to pass a valid theme from pp-react.');\n return {};\n }\n\n var sysSpaceSm = tokens.sysSpaceSm,\n sysSpaceMd = tokens.sysSpaceMd,\n sysSpaceXl = tokens.sysSpaceXl,\n sysSpaceJumbo = tokens.sysSpaceJumbo,\n sysSizeMediaSm = tokens.sysSizeMediaSm,\n sysSizeMediaMd = tokens.sysSizeMediaMd,\n sysSizeMediaLg = tokens.sysSizeMediaLg,\n sysSizeMediaXl = tokens.sysSizeMediaXl,\n sysSizeMediaXxl = tokens.sysSizeMediaXxl;\n var vxContainerPaddingMD = '2.25rem';\n var sysSpaceXl4 = '3rem';\n var breakpointMap = {\n sm: sysSizeMediaSm,\n md: sysSizeMediaMd,\n lg: sysSizeMediaLg,\n xl: sysSizeMediaXl,\n xxl: sysSizeMediaXxl\n };\n var commonColumn = css(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n position: relative;\\n width: 100%;\\n min-height: 1px;\\n padding-right: \", \";\\n padding-left: \", \";\\n \"])), sysSpaceMd, sysSpaceMd);\n\n var commonColumnForm = function () {\n return css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n padding-top: \", \";\\n padding-bottom: \", \";\\n \"])), sysSpaceSm, sysSpaceSm);\n };\n\n var colGridCalculator = function (n, breakpoint) {\n var space = n / 12 * 100;\n var labelStr = \"col\".concat(breakpoint ? '_' + breakpoint : '', \"_\").concat(n);\n return css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral([\"\\n label: \", \";\\n -ms-flex: 0 0 \", \"%;\\n flex: 0 0 \", \"%;\\n max-width: \", \"%;\\n \"])), labelStr, space, space, space);\n };\n /* istanbul ignore next */\n\n\n var colGridBreakpoint = function (n) {\n var breakpoint = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'sm';\n return css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral([\"\\n \", \";\\n @media (min-width: \", \") {\\n \", \"\\n }\\n \"])), commonColumn, breakpointMap[breakpoint], colGridCalculator(n, breakpoint));\n };\n /* istanbul ignore next */\n\n\n var order = function (num, breakpoint) {\n var labelStr = \"order\".concat(breakpoint ? '_' + breakpoint : '', \"_\").concat(num);\n return css(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral([\"\\n label: \", \";\\n -ms-flex-order: \", \";\\n order: \", \";\\n \"])), labelStr, num, num);\n };\n /* istanbul ignore next */\n\n\n var orderBreakpoint = function (n) {\n var breakpoint = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'sm';\n return css(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral([\"\\n @media (min-width: \", \") {\\n \", \"\\n }\\n \"])), breakpointMap[breakpoint], order(n, breakpoint));\n };\n\n var offset = function (num, breakpoint) {\n var labelStr = \"offset\".concat(breakpoint ? '_' + breakpoint : '', \"_\").concat(num);\n return css(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral([\"\\n label: \", \";\\n margin-inline-start: \", \"%;\\n \"])), labelStr, num / 12 * 100);\n };\n /* istanbul ignore next */\n\n\n var offsetBreakpoint = function (n) {\n var breakpoint = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'sm';\n return css(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral([\"\\n @media (min-width: \", \") {\\n \", \";\\n }\\n \"])), breakpointMap[breakpoint], offset(n, breakpoint));\n };\n /* istanbul ignore next */\n\n\n /* istanbul ignore next */\n var dynamicCol = function (breakpoint, n) {\n if (breakpoint && n) {\n return colGridBreakpoint(n, breakpoint);\n } else if (n && (breakpoint === undefined || breakpoint === '')) {\n return css(_templateObject9 || (_templateObject9 = _taggedTemplateLiteral([\"\\n \", \";\\n \", \"\\n \"])), commonColumn, colGridCalculator(n));\n }\n\n return '';\n };\n /* istanbul ignore next */\n\n\n var display = function (_display, breakpoint) {\n var labelStr = \"display\".concat(breakpoint ? '_' + breakpoint : '', \"_\").concat(_display);\n return css(_templateObject10 || (_templateObject10 = _taggedTemplateLiteral([\"\\n label: \", \";\\n display: \", \";\\n \"])), labelStr, _display);\n };\n\n var displayBreakpoint = function (breakpoint, _display) {\n return css(_templateObject11 || (_templateObject11 = _taggedTemplateLiteral([\"\\n @media (min-width: \", \") {\\n \", \"\\n }\\n \"])), breakpointMap[breakpoint], display(_display, breakpoint));\n };\n\n var container = css(_templateObject12 || (_templateObject12 = _taggedTemplateLiteral([\"\\n label: grid_container;\\n width: 100%;\\n padding-right: \", \";\\n padding-left: \", \";\\n margin-right: auto;\\n margin-left: auto;\\n\\n @media (min-width: \", \") {\\n padding-right: \", \";\\n padding-left: \", \";\\n max-width: \", \";\\n }\\n\\n @media (min-width: \", \") {\\n padding-right: \", \";\\n padding-left: \", \";\\n max-width: \", \";\\n }\\n\\n @media (min-width: \", \") {\\n padding-right: \", \";\\n padding-left: \", \";\\n max-width: \", \";\\n }\\n\\n @media (min-width: \", \") {\\n padding-right: \", \";\\n padding-left: \", \";\\n max-width: \", \";\\n }\\n \"])), sysSpaceMd, sysSpaceMd, sysSizeMediaSm, sysSpaceXl, sysSpaceXl, sysSizeMediaSm, sysSizeMediaMd, vxContainerPaddingMD, vxContainerPaddingMD, sysSizeMediaMd, sysSizeMediaLg, vxContainerPaddingMD, vxContainerPaddingMD, sysSizeMediaLg, sysSizeMediaXl, vxContainerPaddingMD, vxContainerPaddingMD, sysSizeMediaXl);\n var layoutContainer = css(_templateObject13 || (_templateObject13 = _taggedTemplateLiteral([\"\\n label: layout_container;\\n width: 100%;\\n padding-right: \", \";\\n padding-left: \", \";\\n margin-right: auto;\\n margin-left: auto;\\n max-width: \", \";\\n\\n @media (min-width: \", \") {\\n padding-right: \", \";\\n padding-left: \", \";\\n max-width: \", \";\\n }\\n\\n @media (min-width: \", \") {\\n padding-right: \", \";\\n padding-left: \", \";\\n max-width: \", \";\\n }\\n \"])), vxContainerPaddingMD, vxContainerPaddingMD, sysSizeMediaXxl, sysSizeMediaMd, sysSpaceJumbo, sysSpaceJumbo, sysSizeMediaXxl, sysSizeMediaXxl, sysSpaceXl4, sysSpaceXl4, sysSizeMediaXxl);\n var row = css(_templateObject14 || (_templateObject14 = _taggedTemplateLiteral([\"\\n label: row;\\n display: -ms-flexbox;\\n display: flex;\\n -ms-flex-wrap: wrap;\\n flex-wrap: wrap;\\n margin-right: -\", \";\\n margin-left: -\", \";\\n \"])), sysSpaceMd, sysSpaceMd);\n var containerForm = css(_templateObject15 || (_templateObject15 = _taggedTemplateLiteral([\"\\n label: container_form;\\n width: 100%;\\n padding-right: 0;\\n padding-left: 0;\\n margin-right: auto;\\n margin-left: auto;\\n \"])));\n var containerFluid = css(_templateObject16 || (_templateObject16 = _taggedTemplateLiteral([\"\\n label: container_fluid;\\n width: 100%;\\n padding-right: \", \";\\n padding-left: \", \";\\n margin-right: auto;\\n margin-left: auto;\\n \"])), sysSpaceMd, sysSpaceMd);\n var noGutter = css(_templateObject17 || (_templateObject17 = _taggedTemplateLiteral([\"\\n label: no_gutter;\\n margin-right: 0;\\n margin-left: 0;\\n\\n > [class*='-col-'],\\n > [class*='-col'] {\\n padding-right: 0;\\n padding-left: 0;\\n }\\n \"])));\n var col = css(_templateObject18 || (_templateObject18 = _taggedTemplateLiteral([\"\\n label: col;\\n \", \";\\n -ms-flex-preferred-size: 0;\\n flex-basis: 0;\\n -ms-flex-positive: 1;\\n flex-grow: 1;\\n max-width: 100%;\\n \"])), commonColumn);\n var colAuto = css(_templateObject19 || (_templateObject19 = _taggedTemplateLiteral([\"\\n label: col_auto;\\n \", \";\\n -ms-flex: 0 0 auto;\\n flex: 0 0 auto;\\n width: auto;\\n max-width: none;\\n \"])), commonColumn);\n var colFormVspace = css(_templateObject20 || (_templateObject20 = _taggedTemplateLiteral([\"\\n label: col_form_vspace;\\n \", \"\\n \"])), commonColumnForm());\n var colFormFull = css(_templateObject21 || (_templateObject21 = _taggedTemplateLiteral([\"\\n label: col_form_full;\\n \", \";\\n \", \"\\n @media (min-width: \", \") {\\n -ms-flex: 0 0 100%;\\n flex: 0 0 100%;\\n max-width: 100%;\\n }\\n \"])), commonColumn, commonColumnForm(), sysSizeMediaSm);\n var colFormHalf = css(_templateObject22 || (_templateObject22 = _taggedTemplateLiteral([\"\\n label: col_form_half;\\n \", \";\\n \", \"\\n @media (min-width: \", \") {\\n -ms-flex: 0 0 50%;\\n flex: 0 0 50%;\\n max-width: 50%;\\n }\\n \"])), commonColumn, commonColumnForm(), sysSizeMediaSm);\n var colForm3qtr = css(_templateObject23 || (_templateObject23 = _taggedTemplateLiteral([\"\\n label: col_form_3_qtr;\\n \", \";\\n \", \"\\n @media (min-width: \", \") {\\n -ms-flex: 0 0 75%;\\n flex: 0 0 75%;\\n max-width: 75%;\\n }\\n \"])), commonColumn, commonColumnForm(), sysSizeMediaSm);\n var colForm1qtr = css(_templateObject24 || (_templateObject24 = _taggedTemplateLiteral([\"\\n label: col_form_1_qtr;\\n \", \";\\n \", \"\\n @media (min-width: \", \") {\\n -ms-flex: 0 0 25%;\\n flex: 0 0 25%;\\n max-width: 25%;\\n }\\n \"])), commonColumn, commonColumnForm(), sysSizeMediaSm);\n var colFormAuto = css(_templateObject25 || (_templateObject25 = _taggedTemplateLiteral([\"\\n label: col_form_auto;\\n \", \";\\n \", \"\\n -ms-flex: 0 0 auto;\\n flex: 0 0 auto;\\n width: auto;\\n max-width: none;\\n \"])), commonColumn, commonColumnForm());\n var orderFirst = css(_templateObject26 || (_templateObject26 = _taggedTemplateLiteral([\"\\n label: order_first;\\n -ms-flex-order: -1;\\n order: -1;\\n \"])));\n var orderLast = css(_templateObject27 || (_templateObject27 = _taggedTemplateLiteral([\"\\n label: order_last;\\n -ms-flex-order: 13;\\n order: 13;\\n \"])));\n var colSm = css(_templateObject28 || (_templateObject28 = _taggedTemplateLiteral([\"\\n label: col_sm;\\n \", \";\\n @media (min-width: \", \") {\\n -ms-flex-preferred-size: 0;\\n flex-basis: 0;\\n -ms-flex-positive: 1;\\n flex-grow: 1;\\n max-width: 100%;\\n }\\n \"])), commonColumn, sysSizeMediaSm);\n var colSmAuto = css(_templateObject29 || (_templateObject29 = _taggedTemplateLiteral([\"\\n label: col_sm_auto;\\n \", \";\\n @media (min-width: \", \") {\\n -ms-flex: 0 0 auto;\\n flex: 0 0 auto;\\n width: auto;\\n max-width: none;\\n }\\n \"])), commonColumn, sysSizeMediaSm);\n var colMd = css(_templateObject30 || (_templateObject30 = _taggedTemplateLiteral([\"\\n label: col_md;\\n @media (min-width: \", \") {\\n \", \";\\n -ms-flex-preferred-size: 0;\\n flex-basis: 0;\\n -ms-flex-positive: 1;\\n flex-grow: 1;\\n max-width: 100%;\\n }\\n \"])), sysSizeMediaMd, commonColumn);\n var colMdAuto = css(_templateObject31 || (_templateObject31 = _taggedTemplateLiteral([\"\\n label: col_md_auto;\\n \", \";\\n @media (min-width: \", \") {\\n -ms-flex: 0 0 auto;\\n flex: 0 0 auto;\\n width: auto;\\n max-width: none;\\n }\\n \"])), commonColumn, sysSizeMediaMd);\n var colLg = css(_templateObject32 || (_templateObject32 = _taggedTemplateLiteral([\"\\n label: col_lg;\\n \", \";\\n @media (min-width: \", \") {\\n -ms-flex-preferred-size: 0;\\n flex-basis: 0;\\n -ms-flex-positive: 1;\\n flex-grow: 1;\\n max-width: 100%;\\n }\\n \"])), commonColumn, sysSizeMediaLg);\n var colLgAuto = css(_templateObject33 || (_templateObject33 = _taggedTemplateLiteral([\"\\n label: col_lg_auto;\\n \", \";\\n @media (min-width: \", \") {\\n -ms-flex: 0 0 auto;\\n flex: 0 0 auto;\\n width: auto;\\n max-width: none;\\n }\\n \"])), commonColumn, sysSizeMediaLg);\n var colXl = css(_templateObject34 || (_templateObject34 = _taggedTemplateLiteral([\"\\n label: col_xl;\\n \", \";\\n @media (min-width: \", \") {\\n -ms-flex-preferred-size: 0;\\n flex-basis: 0;\\n -ms-flex-positive: 1;\\n flex-grow: 1;\\n max-width: 100%;\\n }\\n \"])), commonColumn, sysSizeMediaXl);\n var colXlAuto = css(_templateObject35 || (_templateObject35 = _taggedTemplateLiteral([\"\\n label: col_xl_auto;\\n \", \";\\n @media (min-width: \", \") {\\n -ms-flex: 0 0 auto;\\n flex: 0 0 auto;\\n width: auto;\\n max-width: none;\\n }\\n \"])), commonColumn, sysSizeMediaXl);\n var colXxl = css(_templateObject36 || (_templateObject36 = _taggedTemplateLiteral([\"\\n label: col_xxl;\\n \", \";\\n @media (min-width: \", \") {\\n -ms-flex-preferred-size: 0;\\n flex-basis: 0;\\n -ms-flex-positive: 1;\\n flex-grow: 1;\\n max-width: 100%;\\n }\\n \"])), commonColumn, sysSizeMediaXxl);\n var colXxlAuto = css(_templateObject37 || (_templateObject37 = _taggedTemplateLiteral([\"\\n label: col_xxl_auto;\\n \", \";\\n @media (min-width: \", \") {\\n -ms-flex: 0 0 auto;\\n flex: 0 0 auto;\\n width: auto;\\n max-width: none;\\n }\\n \"])), commonColumn, sysSizeMediaXxl);\n var orderSmFirst = css(_templateObject38 || (_templateObject38 = _taggedTemplateLiteral([\"\\n label: order_sm_first;\\n @media (min-width: \", \") {\\n -ms-flex-order: -1;\\n order: -1;\\n }\\n \"])), sysSizeMediaSm);\n var orderSmLast = css(_templateObject39 || (_templateObject39 = _taggedTemplateLiteral([\"\\n label: order_sm_last;\\n @media (min-width: \", \") {\\n -ms-flex-order: 13;\\n order: 13;\\n }\\n \"])), sysSizeMediaSm);\n var orderMdFirst = css(_templateObject40 || (_templateObject40 = _taggedTemplateLiteral([\"\\n label: order_md_first;\\n @media (min-width: \", \") {\\n -ms-flex-order: -1;\\n order: -1;\\n }\\n \"])), sysSizeMediaMd);\n var orderMdLast = css(_templateObject41 || (_templateObject41 = _taggedTemplateLiteral([\"\\n label: order_md_last;\\n @media (min-width: \", \") {\\n -ms-flex-order: 13;\\n order: 13;\\n }\\n \"])), sysSizeMediaMd);\n var orderLgFirst = css(_templateObject42 || (_templateObject42 = _taggedTemplateLiteral([\"\\n label: order_lg_first;\\n @media (min-width: \", \") {\\n -ms-flex-order: -1;\\n order: -1;\\n }\\n \"])), sysSizeMediaLg);\n var orderLgLast = css(_templateObject43 || (_templateObject43 = _taggedTemplateLiteral([\"\\n label: order_lg_last;\\n @media (min-width: \", \") {\\n -ms-flex-order: 13;\\n order: 13;\\n }\\n \"])), sysSizeMediaLg);\n var orderXlFirst = css(_templateObject44 || (_templateObject44 = _taggedTemplateLiteral([\"\\n label: order_xl_first;\\n @media (min-width: \", \") {\\n -ms-flex-order: -1;\\n order: -1;\\n }\\n \"])), sysSizeMediaXl);\n var orderXlLast = css(_templateObject45 || (_templateObject45 = _taggedTemplateLiteral([\"\\n label: order_xl_last;\\n @media (min-width: \", \") {\\n -ms-flex-order: 13;\\n order: 13;\\n }\\n \"])), sysSizeMediaXl);\n var orderXxlFirst = css(_templateObject46 || (_templateObject46 = _taggedTemplateLiteral([\"\\n label: order_xxl_first;\\n @media (min-width: \", \") {\\n -ms-flex-order: -1;\\n order: -1;\\n }\\n \"])), sysSizeMediaXxl);\n var orderXxlLast = css(_templateObject47 || (_templateObject47 = _taggedTemplateLiteral([\"\\n label: order_xxl_last;\\n @media (min-width: \", \") {\\n -ms-flex-order: 13;\\n order: 13;\\n }\\n \"])), sysSizeMediaXxl);\n var justifyContentStart = css(_templateObject48 || (_templateObject48 = _taggedTemplateLiteral([\"\\n label: justify_content_start;\\n -ms-flex-pack: start !important;\\n justify-content: flex-start !important;\\n \"])));\n var justifyContentEnd = css(_templateObject49 || (_templateObject49 = _taggedTemplateLiteral([\"\\n label: justify_content_end;\\n -ms-flex-pack: end !important;\\n justify-content: flex-end !important;\\n \"])));\n var justifyContentCenter = css(_templateObject50 || (_templateObject50 = _taggedTemplateLiteral([\"\\n label: justify_content_center;\\n -ms-flex-pack: center !important;\\n justify-content: center !important;\\n \"])));\n var justifyContentBetween = css(_templateObject51 || (_templateObject51 = _taggedTemplateLiteral([\"\\n label: justify_content_between;\\n -ms-flex-pack: justify !important;\\n justify-content: space-between !important;\\n \"])));\n var justifyContentAround = css(_templateObject52 || (_templateObject52 = _taggedTemplateLiteral([\"\\n label: justify_content_around;\\n -ms-flex-pack: distribute !important;\\n justify-content: space-around !important;\\n \"])));\n return {\n firstLtrUprCase: function firstLtrUprCase(str) {\n return str && typeof str === 'string' ? str.charAt(0).toUpperCase() + str.slice(1) : str;\n },\n container: container,\n layoutContainer: layoutContainer,\n row: row,\n containerForm: containerForm,\n containerFluid: containerFluid,\n noGutter: noGutter,\n commonColumn: commonColumn,\n col: col,\n colAuto: colAuto,\n colFormVspace: colFormVspace,\n colFormFull: colFormFull,\n colFormHalf: colFormHalf,\n colForm3qtr: colForm3qtr,\n colForm1qtr: colForm1qtr,\n colFormAuto: colFormAuto,\n dynamicCol: dynamicCol,\n dynamicOrder: function dynamicOrder(breakpoint, n) {\n if (breakpoint && n) {\n return orderBreakpoint(n, breakpoint);\n }\n\n return order(n);\n },\n dynamicOffset: function dynamicOffset(breakpoint, n) {\n if (breakpoint && n) {\n return offsetBreakpoint(n, breakpoint);\n }\n\n return offset(n);\n },\n dynamicDisplay: function dynamicDisplay(breakpoint, _display) {\n if (breakpoint && _display) return displayBreakpoint(breakpoint, _display);\n return display(_display);\n },\n orderFirst: orderFirst,\n orderLast: orderLast,\n colSm: colSm,\n colSmAuto: colSmAuto,\n colMd: colMd,\n colMdAuto: colMdAuto,\n colLg: colLg,\n colLgAuto: colLgAuto,\n colXl: colXl,\n colXlAuto: colXlAuto,\n colXxl: colXxl,\n colXxlAuto: colXxlAuto,\n orderSmFirst: orderSmFirst,\n orderSmLast: orderSmLast,\n orderMdFirst: orderMdFirst,\n orderMdLast: orderMdLast,\n orderLgFirst: orderLgFirst,\n orderLgLast: orderLgLast,\n orderXlFirst: orderXlFirst,\n orderXlLast: orderXlLast,\n orderXxlFirst: orderXxlFirst,\n orderXxlLast: orderXxlLast,\n justifyContentStart: justifyContentStart,\n justifyContentEnd: justifyContentEnd,\n justifyContentCenter: justifyContentCenter,\n justifyContentBetween: justifyContentBetween,\n justifyContentAround: justifyContentAround\n };\n}\n\nvar _excluded = [\"as\", \"fluid\", \"form\", \"xxl\", \"className\"];\n\nvar getClass = function (fluid, form, xxl, _styles) {\n if (form) {\n return _styles.containerForm;\n }\n\n if (fluid) {\n return _styles.containerFluid;\n }\n\n if (xxl) {\n return _styles.layoutContainer;\n }\n\n return _styles.container;\n};\n\nvar Container = function (_ref) {\n var _ref$as = _ref.as,\n as = _ref$as === void 0 ? 'div' : _ref$as,\n _ref$fluid = _ref.fluid,\n fluid = _ref$fluid === void 0 ? false : _ref$fluid,\n _ref$form = _ref.form,\n form = _ref$form === void 0 ? false : _ref$form,\n _ref$xxl = _ref.xxl,\n xxl = _ref$xxl === void 0 ? false : _ref$xxl,\n className = _ref.className,\n props = _objectWithoutProperties(_ref, _excluded);\n\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n return jsx(as, _extends({\n css: getClass(fluid, form, xxl, _styles),\n className: className,\n \"data-ppui-info\": \"grid_3.3.3\"\n }, props));\n};\n\nvar _excluded$1 = [\"as\", \"className\", \"form\"];\nvar sizes = ['xs', 'sm', 'md', 'lg', 'xl', 'xxl'];\nvar vxColClass = 'col';\n\nvar columnClasses = function (form, props, _styles) {\n var spans = [];\n var classes = [];\n\n if (form) {\n var _styles$firstLtrUprCa;\n\n var formUprCase = (_styles$firstLtrUprCa = _styles.firstLtrUprCase) === null || _styles$firstLtrUprCa === void 0 ? void 0 : _styles$firstLtrUprCa.call(_styles, form);\n classes.push(_styles[\"colForm\".concat(formUprCase)]);\n } // Iterate through breakpoint sizes, generate classes for configured breakpoints\n\n\n sizes.forEach(function (breakpoint) {\n var propValue = props[breakpoint];\n delete props[breakpoint];\n var span, offset, order, display; // Configuration is coming in as object notation\n\n if (_typeof(propValue) === 'object') {\n span = propValue.span || true;\n offset = propValue.offset;\n order = propValue.order;\n display = propValue.display;\n } else {\n span = propValue;\n\n if (typeof propValue === 'boolean') {\n display = propValue ? 'block' : 'none';\n }\n }\n\n var infix = '',\n infixLwrCse = '';\n\n if (breakpoint !== 'xs') {\n var _styles$firstLtrUprCa2;\n\n infix = (_styles$firstLtrUprCa2 = _styles.firstLtrUprCase) === null || _styles$firstLtrUprCa2 === void 0 ? void 0 : _styles$firstLtrUprCa2.call(_styles, breakpoint);\n infixLwrCse = breakpoint;\n }\n /* istanbul ignore next */\n\n\n var spanCssVal = function (spanVal) {\n var _styles$dynamicCol, _styles$firstLtrUprCa3;\n\n if (spanVal === true) {\n return _styles[\"\".concat(vxColClass).concat(infix)];\n }\n\n return typeof spanVal === 'number' ? (_styles$dynamicCol = _styles.dynamicCol) === null || _styles$dynamicCol === void 0 ? void 0 : _styles$dynamicCol.call(_styles, infixLwrCse, spanVal) : _styles[\"\".concat(vxColClass).concat(infix).concat((_styles$firstLtrUprCa3 = _styles.firstLtrUprCase) === null || _styles$firstLtrUprCa3 === void 0 ? void 0 : _styles$firstLtrUprCa3.call(_styles, spanVal))];\n }; // Append base col classess\n\n\n if (typeof span !== 'undefined') {\n spans.push(spanCssVal(span));\n } // Append order based classes\n\n\n if (typeof order !== 'undefined') {\n var _styles$dynamicOrder;\n\n classes.push((_styles$dynamicOrder = _styles.dynamicOrder) === null || _styles$dynamicOrder === void 0 ? void 0 : _styles$dynamicOrder.call(_styles, infixLwrCse, order));\n } // Append offset classes\n\n\n if (typeof offset !== 'undefined') {\n var _styles$dynamicOffset;\n\n classes.push((_styles$dynamicOffset = _styles.dynamicOffset) === null || _styles$dynamicOffset === void 0 ? void 0 : _styles$dynamicOffset.call(_styles, infixLwrCse, offset));\n } // Append display classes\n\n\n if (typeof display !== 'undefined') {\n var _styles$dynamicDispla;\n\n classes.push((_styles$dynamicDispla = _styles.dynamicDisplay) === null || _styles$dynamicDispla === void 0 ? void 0 : _styles$dynamicDispla.call(_styles, infixLwrCse, display));\n }\n }); // Add in the base col class if no spans were configured\n\n if (!spans.length && !form) {\n spans.push(_styles[\"\".concat(vxColClass)]);\n }\n\n return [].concat(spans, classes);\n};\n\nvar Col = function (_ref) {\n var _ref$as = _ref.as,\n as = _ref$as === void 0 ? 'div' : _ref$as,\n className = _ref.className,\n form = _ref.form,\n props = _objectWithoutProperties(_ref, _excluded$1);\n\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n return jsx(as, _extends({\n css: columnClasses(form, props, _styles),\n className: className\n }, props, {\n \"data-ppui\": \"true\"\n }));\n};\n\nvar _excluded$2 = [\"as\", \"className\", \"noGutters\", \"align\"];\n\nvar Row = function (_ref) {\n var _styles$firstLtrUprCa;\n\n var _ref$as = _ref.as,\n as = _ref$as === void 0 ? 'div' : _ref$as,\n className = _ref.className,\n _ref$noGutters = _ref.noGutters,\n noGutters = _ref$noGutters === void 0 ? false : _ref$noGutters,\n _ref$align = _ref.align,\n align = _ref$align === void 0 ? null : _ref$align,\n props = _objectWithoutProperties(_ref, _excluded$2);\n\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n /* istanbul ignore next */\n var alignUprCase = align && typeof align === 'string' ? (_styles$firstLtrUprCa = _styles.firstLtrUprCase) === null || _styles$firstLtrUprCa === void 0 ? void 0 : _styles$firstLtrUprCa.call(_styles, align) : align;\n var cssVal = [_styles.row, noGutters && _styles.noGutter, align && _styles[\"justifyContent\".concat(alignUprCase)]];\n return jsx(as, _extends({\n css: cssVal,\n className: className,\n \"data-ppui-info\": \"grid_3.3.3\"\n }, props));\n};\n\nexport { Col, Container, Row, styles as gridStyles };\n","import _extends from '@babel/runtime/helpers/esm/extends';\nimport _defineProperty from '@babel/runtime/helpers/esm/defineProperty';\nimport _slicedToArray from '@babel/runtime/helpers/esm/slicedToArray';\nimport _objectWithoutProperties from '@babel/runtime/helpers/esm/objectWithoutProperties';\nimport { useMemo, useRef, useEffect, forwardRef, useState, useLayoutEffect } from 'react';\nimport { IconButton } from '@paypalcorp/pp-react-icon-button';\nimport { ArrowRightIcon, ArrowLeftIcon } from '@paypalcorp/pp-react-icons';\nimport _taggedTemplateLiteral from '@babel/runtime/helpers/esm/taggedTemplateLiteral';\nimport { devWarning, utilStyles } from '@paypalcorp/pp-react-utils';\nimport { css, useTheme, jsx } from '@emotion/react';\nimport { stripUnit, remToPx, math } from 'polished';\n\nvar _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14, _templateObject15, _templateObject16;\nfunction styles(tokens) {\n /* istanbul ignore next */\n if (!Object.keys(tokens).length) {\n devWarning('Missing Emotion theme. Use ThemeProvider from @emotion/react to pass a valid theme from pp-react.');\n return {};\n }\n\n var sysSizeMediaMd = tokens.sysSizeMediaMd,\n sysSpaceLg = tokens.sysSpaceLg,\n sysSpaceMd = tokens.sysSpaceMd,\n sysSpaceSm = tokens.sysSpaceSm,\n sysSizeIndicatorLg = tokens.sysSizeIndicatorLg,\n sysColorUnselectedMain = tokens.sysColorUnselectedMain,\n sysColorSelectedMain = tokens.sysColorSelectedMain,\n sysBorderRadiusInteractive = tokens.sysBorderRadiusInteractive;\n var peekWidth = Number(stripUnit(remToPx(sysSpaceLg)));\n var mobileItemMargin = Number(stripUnit(remToPx(sysSpaceMd)));\n var itemMargin = Number(stripUnit(remToPx(sysSpaceLg)));\n\n var _utilStyles = utilStyles(tokens),\n elevationStyles = _utilStyles.elevationStyles,\n variables = _utilStyles.variables;\n\n var ppuiEaseInOut = variables.ppuiEaseInOut;\n var base = css(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n label: horizontal_scroll_base;\\n position: relative;\\n\\n &:hover {\\n & > div:nth-of-type(2n), // on hover show the navigation buttons\\n & > div:nth-of-type(3n) {\\n opacity: 1;\\n }\\n }\\n \"])));\n var itemList = css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n label: item_list;\\n display: flex;\\n flex-direction: row;\\n list-style: none;\\n margin: 0;\\n overflow-y: -moz-hidden-unscrollable;\\n overflow-x: auto;\\n padding: \", \" 0;\\n\\n & > * {\\n flex: 0 0 auto;\\n }\\n \"])), sysSpaceLg);\n var item = css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral([\"\\n label: item;\\n margin: 0 \", \"px;\\n\\n @media (max-width: \", \") {\\n margin: 0 \", \"px;\\n }\\n \"])), math(\"\".concat(itemMargin, \" / 2\")), sysSizeMediaMd, math(\"\".concat(mobileItemMargin, \" / 2\")));\n var buttonNavigation = css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral([\"\\n label: button_nav;\\n position: absolute;\\n top: 0;\\n display: flex;\\n align-items: center;\\n height: calc(100% - \", \" - \", \");\\n opacity: 0;\\n transition: opacity 0.3s ease-in-out;\\n pointer-events: none;\\n\\n button {\\n pointer-events: all;\\n \", \"\\n\\n &:focus:after {\\n display: none;\\n }\\n\\n &:hover {\\n \", \"\\n }\\n }\\n \"])), sysSizeIndicatorLg, sysSpaceLg, elevationStyles.level1, elevationStyles.level3);\n var buttonPrevious = css(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral([\"\\n \", \";\\n label: buton_previous;\\n left: \", \";\\n\\n [dir='rtl'] & {\\n left: unset;\\n right: \", \";\\n }\\n \"])), buttonNavigation, sysSpaceLg, sysSpaceLg);\n var buttonNext = css(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral([\"\\n \", \";\\n label: button_next;\\n right: \", \";\\n\\n [dir='rtl'] & {\\n left: \", \";\\n right: unset;\\n }\\n \"])), buttonNavigation, sysSpaceLg, sysSpaceLg);\n var itemListDesktop = css(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral([\"\\n label: item_list_desktop;\\n overflow-x: visible;\\n \"])));\n var pageContainer = css(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral([\"\\n label: page_container;\\n overflow-x: hidden;\\n \"])));\n var page = css(_templateObject9 || (_templateObject9 = _taggedTemplateLiteral([\"\\n label: page;\\n position: relative;\\n left: 0;\\n transition: left 1s \", \";\\n\\n [dir='rtl'] & {\\n right: 0;\\n left: unset;\\n transition: right 1s ease-in-out;\\n }\\n \"])), ppuiEaseInOut);\n var dots = css(_templateObject10 || (_templateObject10 = _taggedTemplateLiteral([\"\\n label: dots;\\n padding-bottom: \", \";\\n text-align: center;\\n line-height: \", \";\\n \"])), sysSpaceLg, sysSizeIndicatorLg);\n var dot = css(_templateObject11 || (_templateObject11 = _taggedTemplateLiteral([\"\\n label: dot;\\n margin: 0 \", \";\\n height: \", \";\\n width: \", \";\\n border-radius: \", \";\\n background-color: \", \";\\n display: inline-block;\\n \"])), sysSpaceSm, sysSizeIndicatorLg, sysSizeIndicatorLg, sysBorderRadiusInteractive, sysColorUnselectedMain);\n var dotSelected = css(_templateObject12 || (_templateObject12 = _taggedTemplateLiteral([\"\\n label: dot_selected;\\n background-color: \", \";\\n \"])), sysColorSelectedMain);\n /**\n * Get styles for each item in the item list\n * @param props ItemListProps\n * @returns SerializedStyles\n */\n\n var getFlexBasisItems = function (props) {\n var items = props.items,\n isMobileBreakpoint = props.isMobileBreakpoint,\n numOfVisibleItems = props.numOfVisibleItems,\n hasFixedSizeItems = props.hasFixedSizeItems;\n\n if (hasFixedSizeItems) {\n return css(_templateObject13 || (_templateObject13 = _taggedTemplateLiteral([\"\\n label: fixed_size;\\n flex-basis: auto;\\n \"])));\n }\n\n var peekOffset = items.length === numOfVisibleItems ? 0 : peekWidth + mobileItemMargin / 2;\n\n if (isMobileBreakpoint) {\n return css(_templateObject14 || (_templateObject14 = _taggedTemplateLiteral([\"\\n label: mobile;\\n flex-basis: calc(\\n calc(100% - \", \"px) / \", \" -\\n \", \"px\\n );\\n \"])), peekOffset, numOfVisibleItems, mobileItemMargin);\n }\n\n return css(_templateObject15 || (_templateObject15 = _taggedTemplateLiteral([\"\\n label: desktop;\\n flex-basis: calc(100% / \", \" - \", \"px);\\n \"])), numOfVisibleItems, itemMargin);\n };\n\n var getContainerWidth = function (pageWidth) {\n var hasFixedSizeItems = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n return hasFixedSizeItems && css(_templateObject16 || (_templateObject16 = _taggedTemplateLiteral([\"\\n width: \", \"px;\\n \"])), pageWidth);\n };\n\n return {\n base: base,\n itemList: itemList,\n item: item,\n buttonPrevious: buttonPrevious,\n buttonNext: buttonNext,\n itemListDesktop: itemListDesktop,\n pageContainer: pageContainer,\n page: page,\n dots: dots,\n dot: dot,\n dotSelected: dotSelected,\n getFlexBasisItems: getFlexBasisItems,\n getContainerWidth: getContainerWidth,\n peekWidth: peekWidth,\n mobileItemMargin: mobileItemMargin,\n itemMargin: itemMargin\n };\n}\n\nvar _excluded = [\"items\", \"numOfVisibleItems\", \"renderItem\", \"className\", \"itemClassName\", \"hasFixedSizeItems\", \"onItemListScroll\", \"onInit\"];\n\nfunction _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nvar HorizontalScrollMobile = function (_ref) {\n var _ref$items = _ref.items,\n items = _ref$items === void 0 ? [] : _ref$items,\n numOfVisibleItems = _ref.numOfVisibleItems,\n renderItem = _ref.renderItem,\n className = _ref.className,\n itemClassName = _ref.itemClassName,\n hasFixedSizeItems = _ref.hasFixedSizeItems,\n onItemListScroll = _ref.onItemListScroll,\n onInit = _ref.onInit,\n rest = _objectWithoutProperties(_ref, _excluded);\n\n /* istanbul ignore next */\n if (!renderItem) {\n renderItem = function () {\n return null;\n };\n }\n\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n var baseRef = useRef();\n var itemListRef = useRef();\n var visibleItemIdsRef = useRef([]);\n\n var handleResize = function () {\n if (hasFixedSizeItems) {\n var baseElm = baseRef.current;\n var item = baseElm.querySelector('li:first-child');\n var itemWidth = item.getBoundingClientRect().width;\n var baseElmWidth = baseElm.getBoundingClientRect().width;\n var peekOffset = _styles.peekWidth + _styles.mobileItemMargin / 2;\n var pageWidth = (itemWidth + _styles.mobileItemMargin) * numOfVisibleItems + peekOffset;\n /* istanbul ignore next */\n\n if (pageWidth < baseElmWidth) {\n baseElm.style.width = \"\".concat(pageWidth, \"px\");\n }\n }\n };\n /* istanbul ignore next */\n\n\n useEffect(function () {\n var resizeObserver;\n\n if (window.ResizeObserver) {\n var item = baseRef.current.querySelector('li:first-child');\n\n if (hasFixedSizeItems) {\n resizeObserver = new ResizeObserver(function () {\n handleResize();\n });\n resizeObserver.observe(item);\n }\n }\n\n return function () {\n if (resizeObserver) {\n resizeObserver.disconnect();\n }\n };\n }, []);\n /* istanbul ignore next */\n\n useEffect(function () {\n var itemObserver;\n handleResize();\n visibleItemIdsRef.current = [];\n\n if (window.IntersectionObserver) {\n var itemList = itemListRef.current;\n itemObserver = new IntersectionObserver(function (entries) {\n if (!visibleItemIdsRef.current.length) {\n var _iterator = _createForOfIteratorHelper(entries),\n _step;\n\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var entry = _step.value;\n\n if (entry.isIntersecting) {\n var id = entry.target.getAttribute('data-item-id');\n visibleItemIdsRef.current.push(id);\n }\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n\n if (onInit) {\n onInit(visibleItemIdsRef.current);\n }\n } else {\n var _iterator2 = _createForOfIteratorHelper(entries),\n _step2;\n\n try {\n for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {\n var _entry = _step2.value;\n\n if (_entry.isIntersecting) {\n var _id = _entry.target.getAttribute('data-item-id');\n\n if (onItemListScroll) {\n onItemListScroll(_id);\n }\n }\n }\n } catch (err) {\n _iterator2.e(err);\n } finally {\n _iterator2.f();\n }\n }\n }, {\n root: baseRef.current,\n threshold: 1\n });\n var itemElms = itemList.querySelectorAll('li');\n itemElms.forEach(function (item) {\n return itemObserver.observe(item);\n });\n }\n\n return function () {\n if (itemObserver) {\n itemObserver.disconnect();\n }\n };\n }, [numOfVisibleItems, hasFixedSizeItems]);\n return jsx(\"div\", _extends({\n css: _styles.base,\n className: className,\n ref: baseRef,\n \"data-ppui-info\": \"horizontal-scroll_2.4.7\"\n }, rest), jsx(ItemList, {\n items: items,\n hasFixedSizeItems: hasFixedSizeItems,\n isMobileBreakpoint: true,\n numOfVisibleItems: numOfVisibleItems,\n renderItem: renderItem,\n itemClassName: itemClassName,\n ref: itemListRef,\n \"data-ppui\": \"true\"\n }));\n};\n\nvar _excluded$1 = [\"items\", \"hasFixedSizeItems\", \"isMobileBreakpoint\", \"itemClassName\", \"numOfVisibleItems\", \"renderItem\"],\n _excluded2 = [\"currentPage\", \"prevPageLabel\", \"nextPageLabel\", \"onPageChange\"],\n _excluded3 = [\"onItemListScroll\", \"onInit\"];\nvar ItemList = forwardRef(function (props, ref) {\n var items = props.items,\n hasFixedSizeItems = props.hasFixedSizeItems,\n isMobileBreakpoint = props.isMobileBreakpoint,\n itemClassName = props.itemClassName,\n numOfVisibleItems = props.numOfVisibleItems,\n renderItem = props.renderItem,\n rest = _objectWithoutProperties(props, _excluded$1);\n\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n /* istanbul ignore next */\n\n\n var handleFocus = function (evt) {\n evt.target.scrollIntoView({\n block: 'nearest'\n });\n };\n\n var itemElements = items.map(function (item, index) {\n var _styles$getFlexBasisI;\n\n var flexBasisStyles = (_styles$getFlexBasisI = _styles.getFlexBasisItems) === null || _styles$getFlexBasisI === void 0 ? void 0 : _styles$getFlexBasisI.call(_styles, props);\n return jsx(\"li\", {\n \"aria-label\": \"\".concat(index + 1, \"-\").concat(items.length),\n key: item.id,\n \"data-item-id\": item.id,\n css: [_styles.item, flexBasisStyles],\n className: itemClassName,\n \"data-ppui\": \"true\"\n }, renderItem(item, {\n tabIndex: '0',\n role: 'button',\n onFocus: handleFocus\n }));\n });\n return jsx(\"ul\", _extends({\n css: _styles.itemList,\n ref: ref\n }, rest, {\n \"data-ppui\": \"true\"\n }), itemElements);\n});\n\nvar HorizontalScroll = function (props) {\n /* istanbul ignore next */\n if (!props.items) {\n devWarning('Required prop `items` is missing');\n }\n /* istanbul ignore next */\n\n\n if (!props.renderItem) {\n devWarning('Required prop `renderItem` is missing');\n }\n\n var _useState = useState(false),\n _useState2 = _slicedToArray(_useState, 2),\n showMobileHScroll = _useState2[0],\n setShowMobileHScroll = _useState2[1];\n\n var _useEmotionTheme = useTheme(),\n sysSizeMediaMd = _useEmotionTheme.sysSizeMediaMd;\n\n var mdBreakpoint = Number(stripUnit(remToPx(sysSizeMediaMd)));\n /* istanbul ignore next */\n\n useEffect(function () {\n var mql = window.matchMedia && window.matchMedia('(hover: hover) and (pointer: fine)');\n var hasHover = mql && mql.matches;\n setShowMobileHScroll(window.innerWidth < mdBreakpoint || window.matchMedia && !hasHover);\n }, []);\n\n if (showMobileHScroll) {\n var currentPage = props.currentPage,\n prevPageLabel = props.prevPageLabel,\n nextPageLabel = props.nextPageLabel,\n onPageChange = props.onPageChange,\n _rest = _objectWithoutProperties(props, _excluded2);\n\n return jsx(HorizontalScrollMobile, _extends({}, _rest, {\n \"data-ppui\": \"true\"\n }));\n }\n\n var onItemListScroll = props.onItemListScroll,\n onInit = props.onInit,\n rest = _objectWithoutProperties(props, _excluded3);\n\n return jsx(HorizontalScrollDesktop, _extends({}, rest, {\n autoAdvance: props.autoAdvance,\n advanceInterval: props.advanceInterval,\n \"data-ppui\": \"true\"\n }));\n};\n\nvar _excluded$2 = [\"items\", \"numOfVisibleItems\", \"renderItem\", \"className\", \"itemClassName\", \"prevButtonClassName\", \"nextButtonClassName\", \"prevPageLabel\", \"nextPageLabel\", \"currentPage\", \"hasFixedSizeItems\", \"autoAdvance\", \"advanceInterval\", \"onPageChange\", \"style\"];\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nvar Dots = function (_ref) {\n var numOfPages = _ref.numOfPages,\n currentPage = _ref.currentPage;\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n var dotElements = [];\n\n for (var i = 1; i <= numOfPages; i++) {\n var dotStyles = [_styles.dot, currentPage === i && _styles.dotSelected];\n dotElements.push(jsx(\"div\", {\n key: i,\n css: dotStyles,\n \"data-ppui\": \"true\"\n }));\n }\n\n return jsx(\"div\", {\n css: _styles.dots,\n \"aria-hidden\": true,\n \"data-ppui\": \"true\"\n }, dotElements);\n};\n/*\n * Turns out that using setInterval() in react with hooks is awkward.\n * This method I lifted from Dan Abramov makes it easy to use in a\n * react hook-ish way.\n * Pass in a callback and a delay in ms or null to turn it off\n * --love, BCC\n */\n\n/* istanbul ignore next */\n\n\nfunction useInterval(callback, delay) {\n var savedCallback = useRef(); // Remember the latest function.\n\n useLayoutEffect(function () {\n savedCallback.current = callback;\n }, [callback]); // Set up the interval.\n\n useLayoutEffect(function () {\n function tick() {\n savedCallback.current();\n }\n\n if (delay !== null) {\n var id = setInterval(tick, delay);\n return function () {\n clearInterval(id);\n };\n }\n\n return undefined;\n }, [delay]);\n}\n/* (from the Jira spec)\n Auto-advance activates on a new page load.\n It will advance every 4 seconds by default, but the caller can specify a different timing.\n It will stop if the user scrolls the horizontal scroll out of view, interacts with cards, or clicks a button.\n It will also stop after 1 full cycle.\n */\n\n\nvar HorizontalScrollDesktop = function (_ref2) {\n var _styles$getContainerW, _styles$getContainerW2;\n\n var _ref2$items = _ref2.items,\n items = _ref2$items === void 0 ? [] : _ref2$items,\n _ref2$numOfVisibleIte = _ref2.numOfVisibleItems,\n numOfVisibleItems = _ref2$numOfVisibleIte === void 0 ? 1 : _ref2$numOfVisibleIte,\n renderItem = _ref2.renderItem,\n className = _ref2.className,\n itemClassName = _ref2.itemClassName,\n prevButtonClassName = _ref2.prevButtonClassName,\n nextButtonClassName = _ref2.nextButtonClassName,\n _ref2$prevPageLabel = _ref2.prevPageLabel,\n prevPageLabel = _ref2$prevPageLabel === void 0 ? 'Scroll left' : _ref2$prevPageLabel,\n _ref2$nextPageLabel = _ref2.nextPageLabel,\n nextPageLabel = _ref2$nextPageLabel === void 0 ? 'Scroll right' : _ref2$nextPageLabel,\n _ref2$currentPage = _ref2.currentPage,\n currentPage = _ref2$currentPage === void 0 ? 1 : _ref2$currentPage,\n hasFixedSizeItems = _ref2.hasFixedSizeItems,\n _ref2$autoAdvance = _ref2.autoAdvance,\n autoAdvance = _ref2$autoAdvance === void 0 ? false : _ref2$autoAdvance,\n _ref2$advanceInterval = _ref2.advanceInterval,\n advanceInterval = _ref2$advanceInterval === void 0 ? 4000 : _ref2$advanceInterval,\n onPageChange = _ref2.onPageChange,\n style = _ref2.style,\n rest = _objectWithoutProperties(_ref2, _excluded$2);\n\n /* istanbul ignore next */\n if (!renderItem) {\n renderItem = function () {\n return null;\n };\n }\n\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n var baseRef = useRef(null);\n var scrollPanel = useRef(null);\n var pageContainerRef = useRef();\n var itemListRef = useRef();\n\n var _useState = useState(Math.ceil(items.length / numOfVisibleItems)),\n _useState2 = _slicedToArray(_useState, 2),\n numOfPages = _useState2[0],\n setNumOfPages = _useState2[1];\n\n var _useState3 = useState(false),\n _useState4 = _slicedToArray(_useState3, 2),\n isAutoAdvance = _useState4[0],\n setIsAutoAdvance = _useState4[1];\n\n var _useState5 = useState(false),\n _useState6 = _slicedToArray(_useState5, 2),\n isRTL = _useState6[0],\n setRTL = _useState6[1];\n\n var _useState7 = useState(0),\n _useState8 = _slicedToArray(_useState7, 2),\n pageWidth = _useState8[0],\n setPageWidth = _useState8[1];\n\n var viewObserver = useRef(null);\n var hasBeenVisibleRef = useRef(false);\n var autoAdvanceComplete = useRef(false);\n /* istanbul ignore next */\n\n var handleResize = function () {\n var pageContainer = pageContainerRef.current;\n\n if (pageContainer) {\n if (hasFixedSizeItems) {\n var item = pageContainer.querySelector('li:first-child');\n var itemWidth = item.getBoundingClientRect().width;\n var newNumOfPages = Math.ceil(items.length / numOfVisibleItems);\n setPageWidth((itemWidth + _styles.itemMargin) * numOfVisibleItems);\n setNumOfPages(newNumOfPages);\n\n if (currentPage > newNumOfPages) {\n onPageChange(newNumOfPages);\n }\n } else {\n var itemList = itemListRef.current; // scrollwidth always returns a whole value, getBoundingClientRect().width sometimes returns value comparing\n // pageContainerWidth with scrollWidth when the width causes an overflow resulting in adding and extra page.\n // e.g. scrollWidth = 1201, vs pageContainerWidth = 1200.092\n\n var itemListScrollWidth = itemList === null || itemList === void 0 ? void 0 : itemList.scrollWidth;\n var pageContainerWidth = Math.ceil(pageContainer.getBoundingClientRect().width);\n\n if (itemListScrollWidth && pageContainerWidth) {\n var _newNumOfPages = Math.ceil(itemListScrollWidth / pageContainerWidth);\n\n setNumOfPages(_newNumOfPages);\n\n if (currentPage > _newNumOfPages) {\n onPageChange(_newNumOfPages);\n }\n }\n\n setPageWidth(pageContainerWidth);\n }\n }\n };\n /* istanbul ignore next */\n\n\n /* istanbul ignore next */\n var stopAutoAdvance = function () {\n setIsAutoAdvance(false);\n autoAdvanceComplete.current = true; // eslint-disable-next-line no-unused-expressions\n\n viewObserver && viewObserver.current && viewObserver.current.disconnect();\n };\n /* istanbul ignore next */\n\n\n /* istanbul ignore next */\n var handleIntersection = function (entries) {\n var _entries = _slicedToArray(entries, 1),\n entry = _entries[0]; // No intersection between hscroll & viewport?\n // ...then we've scrolled off screen - stop auto advance\n\n\n if (!entry.isIntersecting) {\n if (hasBeenVisibleRef.current) {\n stopAutoAdvance();\n }\n } else if (autoAdvance && !hasBeenVisibleRef.current) {\n setIsAutoAdvance(!autoAdvanceComplete.current);\n hasBeenVisibleRef.current = true;\n }\n };\n /* istanbul ignore next */\n\n\n useEffect(function () {\n var computedStyle = window.getComputedStyle(baseRef.current);\n setRTL(computedStyle && computedStyle.direction === 'rtl');\n var resizeObserver;\n\n if (window.ResizeObserver && baseRef.current) {\n var item = baseRef.current.querySelector('li:first-child');\n resizeObserver = new ResizeObserver(function () {\n handleResize();\n });\n resizeObserver.observe(hasFixedSizeItems ? item : pageContainerRef.current);\n }\n\n return function () {\n if (resizeObserver) {\n resizeObserver.disconnect();\n }\n };\n }, []);\n useEffect(function () {\n /* istanbul ignore next */\n if (items.length && numOfVisibleItems) {\n window.requestAnimationFrame(handleResize);\n }\n }, [numOfVisibleItems, hasFixedSizeItems, items]);\n useEffect(function () {\n /* istanbul ignore next */\n setIsAutoAdvance(autoAdvance && hasBeenVisibleRef.current && !autoAdvanceComplete.current);\n }, [autoAdvance, hasBeenVisibleRef.current]);\n /* istanbul ignore next */\n\n useInterval(function handleAutoAdvance() {\n var nextPage = currentPage + 1;\n\n if (currentPage >= numOfPages) {\n // Have we reached the last page?\n stopAutoAdvance(); // We're done with auto advance\n\n var panel = scrollPanel.current;\n panel.style.transition = '0s linear';\n panel.style.left = '0px';\n setTimeout(function () {\n panel.style.transition = '';\n }, 100);\n nextPage = 1; // Go back to first page\n }\n\n onPageChange(nextPage);\n }, isAutoAdvance ? advanceInterval : null);\n useLayoutEffect(function () {\n /* istanbul ignore next */\n if (window && window.IntersectionObserver) {\n var hscroll = baseRef.current;\n\n if (autoAdvance && !autoAdvanceComplete.current) {\n viewObserver.current = new window.IntersectionObserver(handleIntersection);\n viewObserver.current.observe(hscroll);\n }\n }\n }, [autoAdvance, autoAdvanceComplete.current]);\n /* istanbul ignore next */\n\n useEffect(function () {\n if (!window.IntersectionObserver) {\n return undefined;\n }\n\n var hscroll = baseRef.current;\n\n var stopObserving = function () {\n if (viewObserver && viewObserver.current) {\n viewObserver.current.unobserve(hscroll);\n }\n };\n\n if (autoAdvance) {\n viewObserver.current.observe(hscroll);\n } else {\n stopObserving();\n }\n\n return stopObserving;\n }, [baseRef, autoAdvance]);\n /* istanbul ignore next */\n\n var renderPreviousButton = currentPage > 1 ? jsx(\"div\", {\n css: _styles.buttonPrevious,\n \"data-ppui\": \"true\"\n }, jsx(IconButton, {\n buttonType: \"secondary\",\n inverse: true,\n svgIconComponent: isRTL ? ArrowRightIcon : ArrowLeftIcon,\n tabIndex: -1,\n \"aria-hidden\": true,\n onClick: function handlePrevClick() {\n onPageChange(currentPage - 1);\n setIsAutoAdvance(false);\n },\n onMouseDown: function onMouseDown(evt) {\n return evt.preventDefault();\n },\n className: prevButtonClassName,\n \"data-ppui\": \"true\"\n }, prevPageLabel)) : null;\n /* istanbul ignore next */\n\n var renderNextButton = currentPage < numOfPages ? jsx(\"div\", {\n css: _styles.buttonNext,\n \"data-ppui\": \"true\"\n }, jsx(IconButton, {\n buttonType: \"secondary\",\n inverse: true,\n svgIconComponent: isRTL ? ArrowLeftIcon : ArrowRightIcon,\n tabIndex: -1,\n \"aria-hidden\": true,\n onClick: function handleNextClick() {\n onPageChange(currentPage + 1);\n setIsAutoAdvance(false);\n },\n onMouseDown: function onMouseDown(evt) {\n return evt.preventDefault();\n },\n className: nextButtonClassName,\n \"data-ppui\": \"true\"\n }, nextPageLabel)) : null;\n /* istanbul ignore next */\n\n var renderDots = numOfPages > 1 ? jsx(Dots, {\n numOfPages: numOfPages,\n currentPage: currentPage,\n \"data-ppui\": \"true\"\n }) : null;\n var pageOffset = -pageWidth * (currentPage - 1);\n /* istanbul ignore next */\n\n var pageStyle = isRTL ? {\n right: pageOffset\n } : {\n left: pageOffset\n };\n return jsx(\"div\", _extends({\n css: [_styles.base, (_styles$getContainerW = _styles.getContainerWidth) === null || _styles$getContainerW === void 0 ? void 0 : _styles$getContainerW.call(_styles, pageWidth, hasFixedSizeItems)],\n className: className,\n ref: baseRef,\n onFocus: autoAdvance ? function handleFocus() {\n setIsAutoAdvance(false);\n } : null,\n style: _objectSpread({}, style),\n \"data-ppui-info\": \"horizontal-scroll_2.4.7\"\n }, rest), jsx(\"div\", {\n css: [_styles.pageContainer, (_styles$getContainerW2 = _styles.getContainerWidth) === null || _styles$getContainerW2 === void 0 ? void 0 : _styles$getContainerW2.call(_styles, pageWidth, hasFixedSizeItems)],\n ref: pageContainerRef,\n \"data-ppui\": \"true\"\n }, jsx(\"div\", {\n css: _styles.page,\n style: pageStyle,\n ref: scrollPanel,\n \"data-ppui\": \"true\"\n }, jsx(ItemList, {\n items: items,\n hasFixedSizeItems: hasFixedSizeItems,\n isMobileBreakpoint: false,\n numOfVisibleItems: numOfVisibleItems,\n renderItem: renderItem,\n itemClassName: itemClassName,\n ref: itemListRef,\n css: _styles.itemListDesktop,\n \"data-ppui\": \"true\"\n }))), renderPreviousButton, renderNextButton, renderDots);\n};\n\nexport { HorizontalScroll, HorizontalScrollDesktop, HorizontalScrollMobile, ItemList, styles as horizontalScrollStyles };\n","import _defineProperty from '@babel/runtime/helpers/esm/defineProperty';\nimport _extends from '@babel/runtime/helpers/esm/extends';\nimport _objectWithoutProperties from '@babel/runtime/helpers/esm/objectWithoutProperties';\nimport React, { forwardRef, useMemo } from 'react';\nimport { CheckmarkIcon } from '@paypalcorp/pp-react-icons';\nimport { devWarning, utilStyles, getColorValue, ColorContext, Shimmer } from '@paypalcorp/pp-react-utils';\nimport { LoadingSpinner } from '@paypalcorp/pp-react-loading-spinner';\nimport { css, useTheme, jsx } from '@emotion/react';\nimport _taggedTemplateLiteral from '@babel/runtime/helpers/esm/taggedTemplateLiteral';\nimport { math } from 'polished';\nimport { textStyles } from '@paypalcorp/pp-react-text';\n\nvar _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14, _templateObject15, _templateObject16, _templateObject17, _templateObject18, _templateObject19, _templateObject20;\nfunction styles(tokens, colorTokens) {\n /* istanbul ignore next */\n if (!Object.keys(tokens).length) {\n devWarning('Missing Emotion theme. Use ThemeProvider from @emotion/react to pass a valid theme from pp-react.');\n return {};\n }\n\n var sysSpaceSm = tokens.sysSpaceSm,\n sysSpaceLg = tokens.sysSpaceLg,\n sysSpaceMd = tokens.sysSpaceMd,\n sysSizeIconSm = tokens.sysSizeIconSm,\n sysSizeTapTargetXs = tokens.sysSizeTapTargetXs,\n sysSizeTapTargetSm = tokens.sysSizeTapTargetSm,\n sysSizeCircleLg = tokens.sysSizeCircleLg,\n sysBorderRadiusInteractive = tokens.sysBorderRadiusInteractive,\n sysColorOverlayMain = tokens.sysColorOverlayMain,\n sysColorOverlayContrast = tokens.sysColorOverlayContrast,\n sysColorOverlayMainHover = tokens.sysColorOverlayMainHover,\n sysColorOverlayMainActive = tokens.sysColorOverlayMainActive,\n sysColorPrimaryMain = tokens.sysColorPrimaryMain,\n sysColorPrimaryContrast = tokens.sysColorPrimaryContrast,\n sysColorPrimaryMainHover = tokens.sysColorPrimaryMainHover,\n sysColorPrimaryMainActive = tokens.sysColorPrimaryMainActive,\n sysColorPrimaryContrastActive = tokens.sysColorPrimaryContrastActive,\n sysColorPrimaryContrastHover = tokens.sysColorPrimaryContrastHover,\n sysColorTertiaryMain = tokens.sysColorTertiaryMain,\n sysColorTertiaryContrast = tokens.sysColorTertiaryContrast,\n sysColorTertiaryMainHover = tokens.sysColorTertiaryMainHover,\n sysColorTertiaryMainActive = tokens.sysColorTertiaryMainActive,\n sysColorBackgroundMediumContrast = tokens.sysColorBackgroundMediumContrast,\n sysColorBackgroundHighContrast = tokens.sysColorBackgroundHighContrast,\n sysColorBackgroundSurfaceActive = tokens.sysColorBackgroundSurfaceActive,\n sysColorBackgroundSurfaceHover = tokens.sysColorBackgroundSurfaceHover,\n sysColorSuccessMain = tokens.sysColorSuccessMain,\n sysColorSuccessContrast = tokens.sysColorSuccessContrast;\n\n var _utilStyles = utilStyles(tokens),\n screenReader = _utilStyles.screenReader,\n focusStyles = _utilStyles.focusStyles,\n shimmerStyles = _utilStyles.shimmerStyles;\n\n var _textStyles = textStyles(tokens),\n caption = _textStyles.caption;\n\n var focusOffsetElement = focusStyles.focusOffsetElement;\n var defaults = shimmerStyles.defaults;\n /* token for tap target in small icon-button */\n\n var sysIconbuttonPositionTapTargetOffset = math(\"\".concat(sysSizeTapTargetSm, \" - \").concat(sysSizeTapTargetXs));\n var iconButtonSize = math(\"\".concat(sysSizeIconSm, \" + 2 *\\n \").concat(sysSpaceMd));\n var base = css(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n label: icon-button_base;\\n position: relative;\\n cursor: pointer;\\n border-radius: \", \";\\n padding: \", \";\\n border: none;\\n background-color: transparent;\\n text-decoration: none;\\n display: inline-flex;\\n &:focus {\\n \", \";\\n }\\n \"])), sysBorderRadiusInteractive, sysSpaceMd, focusOffsetElement);\n var container = css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n label: icon-button_container;\\n position: relative;\\n display: flex;\\n flex-direction: column;\\n align-items: center;\\n padding: \", \" 0;\\n width: \", \";\\n word-wrap: break-word;\\n \", \"\\n border: none;\\n background-color: transparent;\\n\\n &:focus,\\n &:hover {\\n cursor: pointer;\\n -webkit-text-stroke-width: \", \";\\n }\\n\\n &:focus {\\n outline: none;\\n & div:first-of-type {\\n \", \";\\n }\\n span:last-of-type {\\n text-decoration: underline;\\n }\\n }\\n\\n &:hover {\\n span:last-of-type {\\n text-decoration: underline;\\n }\\n }\\n\\n &:hover > div:first-of-type {\\n background: \", \";\\n }\\n \"])), sysSpaceMd, '6rem', caption({\n color: getColorValue(colorTokens, sysColorBackgroundHighContrast, 'contrast')\n }), '0.0421875rem', focusOffsetElement, sysColorTertiaryMainHover);\n var processingContainer = css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral([\"\\n label: processing_container;\\n &:hover {\\n cursor: default;\\n }\\n \"])));\n var successContainer = css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral([\"\\n label: success_container;\\n &:hover {\\n cursor: default;\\n }\\n &:hover > div:first-of-type {\\n background-color: \", \";\\n }\\n \"])), getColorValue(colorTokens, sysColorSuccessMain, 'main'));\n var primary = css(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral([\"\\n label: primary;\\n color: \", \";\\n background: \", \";\\n &:hover {\\n background: \", \";\\n }\\n &:active {\\n background: \", \";\\n }\\n \"])), getColorValue(colorTokens, sysColorPrimaryContrast, 'contrast'), getColorValue(colorTokens, sysColorPrimaryMain, 'main'), getColorValue(colorTokens, sysColorPrimaryMainHover, 'hover'), getColorValue(colorTokens, sysColorPrimaryMainActive, 'active'));\n var inverse = css(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral([\"\\n label: inverse;\\n color: \", \";\\n \"])), getColorValue(colorTokens, sysColorPrimaryContrast, 'contrast'));\n var sizeSm = css(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral([\"\\n label: size_sm;\\n padding: \", \";\\n &:before {\\n content: '';\\n position: absolute;\\n border-radius: \", \";\\n top: -\", \";\\n right: -\", \";\\n bottom: -\", \";\\n left: -\", \";\\n }\\n \"])), sysSpaceSm, sysBorderRadiusInteractive, math(\"\".concat(sysIconbuttonPositionTapTargetOffset, \" / 2\")), math(\"\".concat(sysIconbuttonPositionTapTargetOffset, \" / 2\")), math(\"\".concat(sysIconbuttonPositionTapTargetOffset, \" / 2\")), math(\"\".concat(sysIconbuttonPositionTapTargetOffset, \" / 2\")));\n var sizeXl = css(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral([\"\\n label: size_xl;\\n \", \"\\n padding: \", \";\\n \"])), sizeSm, sysSpaceLg);\n var secondary = css(_templateObject9 || (_templateObject9 = _taggedTemplateLiteral([\"\\n label: secondary;\\n color: \", \";\\n background: \", \";\\n &:active {\\n background: \", \";\\n }\\n &:hover {\\n background: \", \";\\n }\\n \"])), getColorValue(colorTokens, sysColorTertiaryContrast, 'contrast'), getColorValue(colorTokens, sysColorTertiaryMain, 'main'), getColorValue(colorTokens, sysColorTertiaryMainActive, 'active'), getColorValue(colorTokens, sysColorTertiaryMainHover, 'hover'));\n var secondaryInverse = css(_templateObject10 || (_templateObject10 = _taggedTemplateLiteral([\"\\n label: secondary_inverse;\\n background: \", \";\\n color: \", \";\\n &:hover {\\n background: \", \";\\n }\\n &:active {\\n background: \", \";\\n }\\n \"])), getColorValue(colorTokens, sysColorPrimaryContrast, 'contrast'), getColorValue(colorTokens, sysColorPrimaryMain, 'main'), getColorValue(colorTokens, sysColorPrimaryContrastHover, 'hover'), getColorValue(colorTokens, sysColorPrimaryContrastActive, 'active'));\n var tertiary = css(_templateObject11 || (_templateObject11 = _taggedTemplateLiteral([\"\\n label: tertiary;\\n color: \", \";\\n &:hover {\\n background: \", \";\\n }\\n &:active {\\n background: \", \";\\n }\\n \"])), getColorValue(colorTokens, sysColorBackgroundMediumContrast, 'contrast'), getColorValue(colorTokens, sysColorBackgroundSurfaceHover, 'hover'), getColorValue(colorTokens, sysColorBackgroundSurfaceActive, 'active'));\n var tertiaryInverse = css(_templateObject12 || (_templateObject12 = _taggedTemplateLiteral([\"\\n label: tertiary_inverse;\\n color: \", \";\\n background: \", \";\\n &:hover {\\n background: \", \";\\n }\\n &:active {\\n background: \", \";\\n }\\n \"])), getColorValue(colorTokens, sysColorOverlayContrast, 'contrast'), getColorValue(colorTokens, sysColorOverlayMain, 'main'), getColorValue(colorTokens, sysColorOverlayMainHover, 'hover'), getColorValue(colorTokens, sysColorOverlayMainActive, 'active'));\n var icon = css(_templateObject13 || (_templateObject13 = _taggedTemplateLiteral([\"\\n label: icon;\\n pointer-events: none;\\n \"])));\n var shimmer = css(_templateObject14 || (_templateObject14 = _taggedTemplateLiteral([\"\\n label: shimmer;\\n \", \"\\n \"])), defaults({\n borderRadius: sysBorderRadiusInteractive,\n width: iconButtonSize,\n height: iconButtonSize\n }));\n var shimmerSizeSm = css(_templateObject15 || (_templateObject15 = _taggedTemplateLiteral([\"\\n label: shimmer_size_sm;\\n width: \", \";\\n height: \", \";\\n &:before {\\n display: none; //tap-target is not needed in shimmer state\\n }\\n \"])), sysSizeTapTargetXs, sysSizeTapTargetXs);\n var shimmerSizeXl = css(_templateObject16 || (_templateObject16 = _taggedTemplateLiteral([\"\\n label: shimmer_size_xl;\\n width: \", \";\\n height: \", \";\\n &:before {\\n display: none; //tap-target is not needed in shimmer state\\n }\\n \"])), sysSizeCircleLg, sysSizeCircleLg);\n var loadingSpinner = css(_templateObject17 || (_templateObject17 = _taggedTemplateLiteral([\"\\n label: loading_spinner;\\n margin: 0;\\n \"])));\n var processingState = css(_templateObject18 || (_templateObject18 = _taggedTemplateLiteral([\"\\n label: processing_state;\\n pointer-events: none;\\n \"])));\n var successState = css(_templateObject19 || (_templateObject19 = _taggedTemplateLiteral([\"\\n label: success_state;\\n pointer-events: none;\\n background-color: \", \";\\n color: \", \";\\n &:hover {\\n background: \", \";\\n cursor: default;\\n }\\n &:active {\\n background: \", \";\\n }\\n \"])), getColorValue(colorTokens, sysColorSuccessMain, 'main'), getColorValue(colorTokens, sysColorSuccessContrast, 'contrast'), getColorValue(colorTokens, sysColorSuccessMain, 'main'), getColorValue(colorTokens, sysColorSuccessMain, 'main'));\n var label = css(_templateObject20 || (_templateObject20 = _taggedTemplateLiteral([\"\\n label: icon-button_label;\\n display: block;\\n text-align: center;\\n padding: \", \" \", \" 0 \", \";\\n width: inherit;\\n display: -webkit-box;\\n -webkit-line-clamp: 2;\\n -webkit-box-orient: vertical;\\n overflow: hidden;\\n \"])), sysSpaceSm, sysSpaceSm, sysSpaceSm);\n return {\n base: base,\n container: container,\n successContainer: successContainer,\n processingContainer: processingContainer,\n primary: primary,\n inverse: inverse,\n sizeSm: sizeSm,\n sizeXl: sizeXl,\n secondary: secondary,\n secondaryInverse: secondaryInverse,\n tertiary: tertiary,\n tertiaryInverse: tertiaryInverse,\n screenReader: screenReader,\n icon: icon,\n shimmer: shimmer,\n shimmerSizeSm: shimmerSizeSm,\n shimmerSizeXl: shimmerSizeXl,\n loadingSpinner: loadingSpinner,\n processingState: processingState,\n successState: successState,\n label: label\n };\n}\n\nvar _excluded = [\"as\", \"iconName\", \"svgIconComponent\", \"className\", \"label\", \"iconClassName\", \"children\", \"buttonType\", \"btnState\", \"screenReaderText\", \"inverse\", \"size\", \"isLoading\"];\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\n/* eslint-disable complexity */\nvar IconButton = forwardRef(function (props, ref) {\n var as = props.as,\n iconName = props.iconName,\n svgIconComponent = props.svgIconComponent,\n className = props.className,\n label = props.label,\n iconClassName = props.iconClassName,\n children = props.children,\n _props$buttonType = props.buttonType,\n buttonType = _props$buttonType === void 0 ? 'primary' : _props$buttonType,\n _props$btnState = props.btnState,\n btnState = _props$btnState === void 0 ? 'initial' : _props$btnState,\n screenReaderText = props.screenReaderText,\n inverse = props.inverse,\n size = props.size,\n isLoading = props.isLoading,\n rest = _objectWithoutProperties(props, _excluded); // If theme is not directly provided, get from themeContext\n\n\n var tokens = useTheme();\n var colorTokens = React.useContext(ColorContext);\n\n var _styles = useMemo(function () {\n return styles(tokens, colorTokens);\n }, [tokens, colorTokens]);\n\n if (isLoading) {\n var shimmerSizesStyleMap = {\n sm: _styles.shimmerSizeSm,\n xl: _styles.shimmerSizeXl\n };\n var shimmerCSSVal = [_styles.shimmer, shimmerSizesStyleMap[size]];\n return jsx(Shimmer, _extends({\n css: shimmerCSSVal,\n className: className,\n isInverse: inverse,\n hasStyleDefaults: false\n }, rest, {\n \"data-ppui\": \"true\"\n }), children);\n }\n /* istanbul ignore next */\n\n\n var iconSize = size === 'xl' ? 'md' : 'sm';\n var sizesStyleMap = {\n sm: _styles.sizeSm,\n xl: _styles.sizeXl\n };\n var cssVal = [_styles.base, sizesStyleMap[size], buttonType === 'primary' && _styles.primary, buttonType === 'secondary' && _styles.secondary, buttonType === 'tertiary' && _styles.tertiary, inverse && _styles.inverse, buttonType === 'secondary' && inverse && _styles.secondaryInverse, buttonType === 'tertiary' && inverse && _styles.tertiaryInverse, btnState === 'success' && _styles.successState, btnState === 'processing' && _styles.processingState];\n var withLabelCssVal = [_styles.base, size === 'sm' ? '' : sizesStyleMap[size], _styles.secondary, btnState === 'success' && _styles.successState, btnState === 'processing' && _styles.processingState];\n var Component = as || 'button';\n\n if (label) {\n Component = 'div';\n } // Setting type to null will not add the attribute:\n\n\n var type = Component === 'button' ? 'button' : null;\n var renderIconComponent = svgIconComponent ? jsx(svgIconComponent, {\n css: _styles.icon,\n className: iconClassName,\n name: iconName,\n size: iconSize,\n \"aria-hidden\": \"true\",\n \"data-ppui\": \"true\"\n }) : null; // Do not add rest props when there is a label. The `iconButtonComponent` component will be inside a wrapper.\n\n var restProps = !label ? _objectSpread({}, rest) : {};\n\n var componentProps = _objectSpread({\n className: className,\n css: label ? withLabelCssVal : cssVal,\n ref: ref,\n type: type,\n disabled: btnState && btnState !== 'initial'\n }, restProps);\n\n var iconButtonComponent = jsx(Component, _extends({\n \"data-ppui-info\": \"icon-button_3.6.6\"\n }, componentProps), btnState !== 'initial' ? function renderButtonState() {\n var iconProps = {\n css: _styles.icon\n };\n var buttonStateComponent = jsx(CheckmarkIcon, _extends({\n size: iconSize\n }, iconProps, {\n \"data-ppui\": \"true\"\n }));\n\n if (btnState === 'processing') {\n /* istanbul ignore next */\n var loadingSpinnerProps = {\n css: [_styles.icon, _styles.loadingSpinner],\n inverse: label ? false : buttonType === 'primary' || buttonType === 'tertiary' && inverse\n };\n buttonStateComponent = jsx(LoadingSpinner, _extends({\n size: iconSize\n }, loadingSpinnerProps, {\n \"data-ppui\": \"true\"\n }));\n }\n\n return jsx(React.Fragment, null, buttonStateComponent, jsx(\"span\", {\n css: _styles.screenReader,\n role: \"status\",\n \"data-ppui\": \"true\"\n }, screenReaderText || btnState));\n }() : jsx(React.Fragment, null, renderIconComponent, !label && jsx(\"span\", {\n css: _styles.screenReader,\n \"data-ppui\": \"true\"\n }, children)));\n\n if (!label) {\n return jsx(React.Fragment, null, iconButtonComponent);\n }\n\n return jsx(React.Fragment, null, function iconButtonComponentWithLabel() {\n var WrapperComponent = as !== null && as !== void 0 ? as : 'button';\n return jsx(WrapperComponent, _extends({\n css: [_styles.container, btnState === 'success' && _styles.successContainer, btnState === 'processing' && _styles.processingContainer],\n className: className,\n tabIndex: 0\n }, rest, {\n \"data-ppui\": \"true\"\n }), iconButtonComponent, jsx(\"span\", {\n css: _styles.label,\n \"data-ppui\": \"true\"\n }, label));\n }());\n});\n\nexport { IconButton, styles as iconButtonStyles };\n","import _taggedTemplateLiteral from '@babel/runtime/helpers/esm/taggedTemplateLiteral';\nimport { css, useTheme, jsx } from '@emotion/react';\nimport { devWarning, svgBasePath, getColor, getColorValue, ColorContext } from '@paypalcorp/pp-react-utils';\nimport _extends from '@babel/runtime/helpers/esm/extends';\nimport _objectWithoutProperties from '@babel/runtime/helpers/esm/objectWithoutProperties';\nimport React, { useMemo } from 'react';\n\nvar _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11;\n/* Icon base class */\n\nfunction styles(tokens, colorTokens) {\n /* istanbul ignore next */\n if (!Object.keys(tokens).length) {\n devWarning('Missing Emotion theme. Use ThemeProvider from @emotion/react to pass a valid theme from pp-react.');\n return {};\n }\n\n var sysSizeIconXs = tokens.sysSizeIconXs,\n sysSizeIconSm = tokens.sysSizeIconSm,\n sysSizeIconMd = tokens.sysSizeIconMd,\n sysSizeIconLg = tokens.sysSizeIconLg,\n sysSizeIconXl = tokens.sysSizeIconXl,\n sysColorBackgroundMain = tokens.sysColorBackgroundMain,\n sysColorBackgroundAlt = tokens.sysColorBackgroundAlt,\n sysColorBackgroundSurface = tokens.sysColorBackgroundSurface,\n sysColorBackgroundSurfaceHover = tokens.sysColorBackgroundSurfaceHover,\n sysColorBackgroundSurfaceActive = tokens.sysColorBackgroundSurfaceActive,\n sysColorBackgroundHighContrast = tokens.sysColorBackgroundHighContrast,\n sysColorBackgroundMediumContrast = tokens.sysColorBackgroundMediumContrast,\n sysColorPrimaryMain = tokens.sysColorPrimaryMain,\n sysColorPrimaryMainHover = tokens.sysColorPrimaryMainHover,\n sysColorPrimaryMainActive = tokens.sysColorPrimaryMainActive,\n sysColorPrimaryContrast = tokens.sysColorPrimaryContrast,\n sysColorPrimaryContrastHover = tokens.sysColorPrimaryContrastHover,\n sysColorPrimaryContrastActive = tokens.sysColorPrimaryContrastActive,\n sysColorSecondaryMain = tokens.sysColorSecondaryMain,\n sysColorSecondaryMainHover = tokens.sysColorSecondaryMainHover,\n sysColorSecondaryMainActive = tokens.sysColorSecondaryMainActive,\n sysColorSecondaryContrast = tokens.sysColorSecondaryContrast,\n sysColorTertiaryMain = tokens.sysColorTertiaryMain,\n sysColorTertiaryMainHover = tokens.sysColorTertiaryMainHover,\n sysColorTertiaryMainActive = tokens.sysColorTertiaryMainActive,\n sysColorTertiaryContrast = tokens.sysColorTertiaryContrast,\n sysColorFeaturedMain = tokens.sysColorFeaturedMain,\n sysColorFeaturedMainHover = tokens.sysColorFeaturedMainHover,\n sysColorFeaturedMainActive = tokens.sysColorFeaturedMainActive,\n sysColorFeaturedContrast = tokens.sysColorFeaturedContrast,\n sysColorUnselectedMain = tokens.sysColorUnselectedMain,\n sysColorUnselectedMainHover = tokens.sysColorUnselectedMainHover,\n sysColorUnselectedMainActive = tokens.sysColorUnselectedMainActive,\n sysColorUnselectedContrast = tokens.sysColorUnselectedContrast,\n sysColorSelectedMain = tokens.sysColorSelectedMain,\n sysColorSelectedMainHover = tokens.sysColorSelectedMainHover,\n sysColorSelectedMainActive = tokens.sysColorSelectedMainActive,\n sysColorSelectedContrast = tokens.sysColorSelectedContrast,\n sysColorSelectedRangeMain = tokens.sysColorSelectedRangeMain,\n sysColorSelectedRangeMainHover = tokens.sysColorSelectedRangeMainHover,\n sysColorSelectedRangeMainActive = tokens.sysColorSelectedRangeMainActive,\n sysColorSelectedRangeContrast = tokens.sysColorSelectedRangeContrast,\n sysColorLinkMain = tokens.sysColorLinkMain,\n sysColorLinkMainHover = tokens.sysColorLinkMainHover,\n sysColorLinkMainActive = tokens.sysColorLinkMainActive,\n sysColorLinkAlt = tokens.sysColorLinkAlt,\n sysColorLinkAltHover = tokens.sysColorLinkAltHover,\n sysColorLinkAltActive = tokens.sysColorLinkAltActive,\n sysColorLinkContrast = tokens.sysColorLinkContrast,\n sysColorLinkContrastHover = tokens.sysColorLinkContrastHover,\n sysColorLinkContrastActive = tokens.sysColorLinkContrastActive,\n sysColorAccent1Main = tokens.sysColorAccent1Main,\n sysColorAccent1Contrast = tokens.sysColorAccent1Contrast,\n sysColorAccent2Main = tokens.sysColorAccent2Main,\n sysColorAccent2Contrast = tokens.sysColorAccent2Contrast,\n sysColorAccent3Main = tokens.sysColorAccent3Main,\n sysColorAccent3Contrast = tokens.sysColorAccent3Contrast,\n sysColorAccent4Main = tokens.sysColorAccent4Main,\n sysColorAccent4Contrast = tokens.sysColorAccent4Contrast,\n sysColorErrorMain = tokens.sysColorErrorMain,\n sysColorErrorMainHover = tokens.sysColorErrorMainHover,\n sysColorErrorMainActive = tokens.sysColorErrorMainActive,\n sysColorErrorContrast = tokens.sysColorErrorContrast,\n sysColorWarningMain = tokens.sysColorWarningMain,\n sysColorWarningMainHover = tokens.sysColorWarningMainHover,\n sysColorWarningMainActive = tokens.sysColorWarningMainActive,\n sysColorWarningAlt = tokens.sysColorWarningAlt,\n sysColorWarningContrast = tokens.sysColorWarningContrast,\n sysColorSuccessMain = tokens.sysColorSuccessMain,\n sysColorSuccessMainHover = tokens.sysColorSuccessMainHover,\n sysColorSuccessMainActive = tokens.sysColorSuccessMainActive,\n sysColorSuccessContrast = tokens.sysColorSuccessContrast,\n sysColorSystemMain = tokens.sysColorSystemMain,\n sysColorSystemMainHover = tokens.sysColorSystemMainHover,\n sysColorSystemMainActive = tokens.sysColorSystemMainActive,\n sysColorSystemContrast = tokens.sysColorSystemContrast,\n sysColorInfoMain = tokens.sysColorInfoMain,\n sysColorInfoMainHover = tokens.sysColorInfoMainHover,\n sysColorInfoMainActive = tokens.sysColorInfoMainActive,\n sysColorInfoContrast = tokens.sysColorInfoContrast,\n sysColorSpecialtyMain = tokens.sysColorSpecialtyMain,\n sysColorSpecialtyMainHover = tokens.sysColorSpecialtyMainHover,\n sysColorSpecialtyMainActive = tokens.sysColorSpecialtyMainActive,\n sysColorSpecialtyContrast = tokens.sysColorSpecialtyContrast;\n var base = css(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n label: icon_base;\\n speak: none;\\n aspect-ratio: 1;\\n \"])));\n var backgroundBase = css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n label: icon_background_base;\\n display: inline-block;\\n width: \", \";\\n height: \", \";\\n \"])), sysSizeIconLg, sysSizeIconLg);\n var sizeXs = css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral([\"\\n label: size_xs;\\n width: \", \";\\n height: \", \";\\n \"])), sysSizeIconXs, sysSizeIconXs);\n var sizeSm = css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral([\"\\n label: size_sm;\\n width: \", \";\\n height: \", \";\\n \"])), sysSizeIconSm, sysSizeIconSm);\n var sizeMd = css(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral([\"\\n label: size_md;\\n width: \", \";\\n height: \", \";\\n \"])), sysSizeIconMd, sysSizeIconMd);\n var sizeLg = css(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral([\"\\n label: size_lg;\\n width: \", \";\\n height: \", \";\\n \"])), sysSizeIconLg, sysSizeIconLg);\n var sizeXl = css(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral([\"\\n label: size_xl;\\n width: \", \";\\n height: \", \";\\n \"])), sysSizeIconXl, sysSizeIconXl);\n var sizes = {\n xs: sysSizeIconXs,\n sm: sysSizeIconSm,\n md: sysSizeIconMd,\n lg: sysSizeIconLg,\n xl: sysSizeIconXl\n };\n\n var getIconSizeCss = function (sizeName) {\n var _sizes$sizeName;\n\n var size = (_sizes$sizeName = sizes[sizeName]) !== null && _sizes$sizeName !== void 0 ? _sizes$sizeName : sizes.xl;\n return css(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral([\"\\n label: size_ \", \";\\n width: \", \";\\n height: \", \";\\n \"])), sizeName, size, size);\n };\n\n var legalColors = {\n sysColorBackgroundMain: sysColorBackgroundMain,\n sysColorBackgroundAlt: sysColorBackgroundAlt,\n sysColorBackgroundSurface: sysColorBackgroundSurface,\n sysColorBackgroundSurfaceHover: sysColorBackgroundSurfaceHover,\n sysColorBackgroundSurfaceActive: sysColorBackgroundSurfaceActive,\n sysColorBackgroundHighContrast: sysColorBackgroundHighContrast,\n sysColorBackgroundMediumContrast: sysColorBackgroundMediumContrast,\n sysColorPrimaryMain: sysColorPrimaryMain,\n sysColorPrimaryMainHover: sysColorPrimaryMainHover,\n sysColorPrimaryMainActive: sysColorPrimaryMainActive,\n sysColorPrimaryContrast: sysColorPrimaryContrast,\n sysColorPrimaryContrastHover: sysColorPrimaryContrastHover,\n sysColorPrimaryContrastActive: sysColorPrimaryContrastActive,\n sysColorSecondaryMain: sysColorSecondaryMain,\n sysColorSecondaryMainHover: sysColorSecondaryMainHover,\n sysColorSecondaryMainActive: sysColorSecondaryMainActive,\n sysColorSecondaryContrast: sysColorSecondaryContrast,\n sysColorTertiaryMain: sysColorTertiaryMain,\n sysColorTertiaryMainHover: sysColorTertiaryMainHover,\n sysColorTertiaryMainActive: sysColorTertiaryMainActive,\n sysColorTertiaryContrast: sysColorTertiaryContrast,\n sysColorFeaturedMain: sysColorFeaturedMain,\n sysColorFeaturedMainHover: sysColorFeaturedMainHover,\n sysColorFeaturedMainActive: sysColorFeaturedMainActive,\n sysColorFeaturedContrast: sysColorFeaturedContrast,\n sysColorUnselectedMain: sysColorUnselectedMain,\n sysColorUnselectedMainHover: sysColorUnselectedMainHover,\n sysColorUnselectedMainActive: sysColorUnselectedMainActive,\n sysColorUnselectedContrast: sysColorUnselectedContrast,\n sysColorSelectedMain: sysColorSelectedMain,\n sysColorSelectedMainHover: sysColorSelectedMainHover,\n sysColorSelectedMainActive: sysColorSelectedMainActive,\n sysColorSelectedContrast: sysColorSelectedContrast,\n sysColorSelectedRangeMain: sysColorSelectedRangeMain,\n sysColorSelectedRangeMainHover: sysColorSelectedRangeMainHover,\n sysColorSelectedRangeMainActive: sysColorSelectedRangeMainActive,\n sysColorSelectedRangeContrast: sysColorSelectedRangeContrast,\n sysColorLinkMain: sysColorLinkMain,\n sysColorLinkMainHover: sysColorLinkMainHover,\n sysColorLinkMainActive: sysColorLinkMainActive,\n sysColorLinkAlt: sysColorLinkAlt,\n sysColorLinkAltHover: sysColorLinkAltHover,\n sysColorLinkAltActive: sysColorLinkAltActive,\n sysColorLinkContrast: sysColorLinkContrast,\n sysColorLinkContrastHover: sysColorLinkContrastHover,\n sysColorLinkContrastActive: sysColorLinkContrastActive,\n sysColorAccent1Main: sysColorAccent1Main,\n sysColorAccent1Contrast: sysColorAccent1Contrast,\n sysColorAccent2Main: sysColorAccent2Main,\n sysColorAccent2Contrast: sysColorAccent2Contrast,\n sysColorAccent3Main: sysColorAccent3Main,\n sysColorAccent3Contrast: sysColorAccent3Contrast,\n sysColorAccent4Main: sysColorAccent4Main,\n sysColorAccent4Contrast: sysColorAccent4Contrast,\n sysColorErrorMain: sysColorErrorMain,\n sysColorErrorMainHover: sysColorErrorMainHover,\n sysColorErrorMainActive: sysColorErrorMainActive,\n sysColorErrorContrast: sysColorErrorContrast,\n sysColorWarningMain: sysColorWarningMain,\n sysColorWarningMainHover: sysColorWarningMainHover,\n sysColorWarningMainActive: sysColorWarningMainActive,\n sysColorWarningAlt: sysColorWarningAlt,\n sysColorWarningContrast: sysColorWarningContrast,\n sysColorSuccessMain: sysColorSuccessMain,\n sysColorSuccessMainHover: sysColorSuccessMainHover,\n sysColorSuccessMainActive: sysColorSuccessMainActive,\n sysColorSuccessContrast: sysColorSuccessContrast,\n sysColorSystemMain: sysColorSystemMain,\n sysColorSystemMainHover: sysColorSystemMainHover,\n sysColorSystemMainActive: sysColorSystemMainActive,\n sysColorSystemContrast: sysColorSystemContrast,\n sysColorInfoMain: sysColorInfoMain,\n sysColorInfoMainHover: sysColorInfoMainHover,\n sysColorInfoMainActive: sysColorInfoMainActive,\n sysColorInfoContrast: sysColorInfoContrast,\n sysColorSpecialtyMain: sysColorSpecialtyMain,\n sysColorSpecialtyMainHover: sysColorSpecialtyMainHover,\n sysColorSpecialtyMainActive: sysColorSpecialtyMainActive,\n sysColorSpecialtyContrast: sysColorSpecialtyContrast\n };\n var ICON_FALLBACK_COLOR = legalColors.sysColorBackgroundHighContrast;\n\n var getMaskImageCss = function (colorName, iconName, cdnHost) {\n var iconURL = \"\".concat(svgBasePath(cdnHost), \"/\").concat(iconName, \".svg\");\n var iconColor = getColor(colorName, legalColors, ICON_FALLBACK_COLOR);\n return css(_templateObject9 || (_templateObject9 = _taggedTemplateLiteral([\"\\n label: \", \";\\n mask: url(\", \") center no-repeat;\\n background-color: \", \"; // Note: we set the BACKGROUND color here...\\n \"])), \"mask-\".concat(colorName), iconURL, getColorValue(colorTokens, iconColor, 'contrast'));\n };\n\n var getColorCss = function (colorName) {\n return colorName ? css(_templateObject10 || (_templateObject10 = _taggedTemplateLiteral([\"\\n label: \", \";\\n color: \", \";\\n \"])), \"\".concat(colorName), getColorValue(colorTokens, getColor(colorName, legalColors, ICON_FALLBACK_COLOR), 'contrast')) : null;\n };\n\n var svg = css(_templateObject11 || (_templateObject11 = _taggedTemplateLiteral([\"\\n label: svg;\\n speak: none;\\n display: inline-block;\\n aspect-ratio: 1;\\n img,\\n svg {\\n width: 100%;\\n height: 100%;\\n display: block;\\n }\\n \"])));\n return {\n base: base,\n backgroundBase: backgroundBase,\n sizeXs: sizeXs,\n sizeSm: sizeSm,\n sizeMd: sizeMd,\n sizeLg: sizeLg,\n sizeXl: sizeXl,\n svg: svg,\n legalColors: legalColors,\n getIconSizeCss: getIconSizeCss,\n getMaskImageCss: getMaskImageCss,\n getColorCss: getColorCss\n };\n}\n\nvar _excluded = [\"as\", \"size\", \"color\", \"className\", \"children\"];\nvar IconContainer = function (_ref) {\n var _iconStyles$getColorC;\n\n var _ref$as = _ref.as,\n as = _ref$as === void 0 ? 'span' : _ref$as,\n _ref$size = _ref.size,\n size = _ref$size === void 0 ? 'md' : _ref$size,\n color = _ref.color,\n className = _ref.className,\n children = _ref.children,\n rest = _objectWithoutProperties(_ref, _excluded);\n\n var tokens = useTheme();\n var colorTokens = React.useContext(ColorContext);\n var iconStyles = useMemo(function () {\n return styles(tokens, colorTokens);\n }, [tokens, colorTokens]);\n var cssVal = [iconStyles.svg, size === 'xs' && iconStyles.sizeXs, size === 'sm' && iconStyles.sizeSm, size === 'md' && iconStyles.sizeMd, size === 'lg' && iconStyles.sizeLg, size === 'xl' && iconStyles.sizeXl, (_iconStyles$getColorC = iconStyles.getColorCss) === null || _iconStyles$getColorC === void 0 ? void 0 : _iconStyles$getColorC.call(iconStyles, color)];\n return jsx(as, _extends({\n css: cssVal,\n className: className,\n \"data-ppui-info\": \"icons_8.22.0\"\n }, rest), children);\n};\n\nvar _excluded$1 = [\"svgElementRef\"],\n _excluded2 = [\"svgElementRef\"],\n _excluded3 = [\"svgElementRef\"],\n _excluded4 = [\"svgElementRef\"],\n _excluded5 = [\"svgElementRef\"],\n _excluded6 = [\"svgElementRef\"],\n _excluded7 = [\"svgElementRef\"],\n _excluded8 = [\"svgElementRef\"],\n _excluded9 = [\"svgElementRef\"],\n _excluded10 = [\"svgElementRef\"],\n _excluded11 = [\"svgElementRef\"],\n _excluded12 = [\"svgElementRef\"],\n _excluded13 = [\"svgElementRef\"],\n _excluded14 = [\"svgElementRef\"],\n _excluded15 = [\"svgElementRef\"],\n _excluded16 = [\"svgElementRef\"],\n _excluded17 = [\"svgElementRef\"],\n _excluded18 = [\"svgElementRef\"],\n _excluded19 = [\"svgElementRef\"],\n _excluded20 = [\"svgElementRef\"],\n _excluded21 = [\"svgElementRef\"],\n _excluded22 = [\"svgElementRef\"],\n _excluded23 = [\"svgElementRef\"],\n _excluded24 = [\"svgElementRef\"],\n _excluded25 = [\"svgElementRef\"],\n _excluded26 = [\"svgElementRef\"],\n _excluded27 = [\"svgElementRef\"],\n _excluded28 = [\"svgElementRef\"],\n _excluded29 = [\"svgElementRef\"],\n _excluded30 = [\"svgElementRef\"],\n _excluded31 = [\"svgElementRef\"],\n _excluded32 = [\"svgElementRef\"],\n _excluded33 = [\"svgElementRef\"],\n _excluded34 = [\"svgElementRef\"],\n _excluded35 = [\"svgElementRef\"],\n _excluded36 = [\"svgElementRef\"],\n _excluded37 = [\"svgElementRef\"],\n _excluded38 = [\"svgElementRef\"],\n _excluded39 = [\"svgElementRef\"],\n _excluded40 = [\"svgElementRef\"],\n _excluded41 = [\"svgElementRef\"],\n _excluded42 = [\"svgElementRef\"],\n _excluded43 = [\"svgElementRef\"],\n _excluded44 = [\"svgElementRef\"],\n _excluded45 = [\"svgElementRef\"],\n _excluded46 = [\"svgElementRef\"],\n _excluded47 = [\"svgElementRef\"],\n _excluded48 = [\"svgElementRef\"],\n _excluded49 = [\"svgElementRef\"],\n _excluded50 = [\"svgElementRef\"],\n _excluded51 = [\"svgElementRef\"],\n _excluded52 = [\"svgElementRef\"],\n _excluded53 = [\"svgElementRef\"],\n _excluded54 = [\"svgElementRef\"],\n _excluded55 = [\"svgElementRef\"],\n _excluded56 = [\"svgElementRef\"],\n _excluded57 = [\"svgElementRef\"],\n _excluded58 = [\"svgElementRef\"],\n _excluded59 = [\"svgElementRef\"],\n _excluded60 = [\"svgElementRef\"],\n _excluded61 = [\"svgElementRef\"],\n _excluded62 = [\"svgElementRef\"],\n _excluded63 = [\"svgElementRef\"],\n _excluded64 = [\"svgElementRef\"],\n _excluded65 = [\"svgElementRef\"],\n _excluded66 = [\"svgElementRef\"],\n _excluded67 = [\"svgElementRef\"],\n _excluded68 = [\"svgElementRef\"],\n _excluded69 = [\"svgElementRef\"],\n _excluded70 = [\"svgElementRef\"],\n _excluded71 = [\"svgElementRef\"],\n _excluded72 = [\"svgElementRef\"],\n _excluded73 = [\"svgElementRef\"],\n _excluded74 = [\"svgElementRef\"],\n _excluded75 = [\"svgElementRef\"],\n _excluded76 = [\"svgElementRef\"],\n _excluded77 = [\"svgElementRef\"],\n _excluded78 = [\"svgElementRef\"],\n _excluded79 = [\"svgElementRef\"],\n _excluded80 = [\"svgElementRef\"],\n _excluded81 = [\"svgElementRef\"],\n _excluded82 = [\"svgElementRef\"],\n _excluded83 = [\"svgElementRef\"],\n _excluded84 = [\"svgElementRef\"],\n _excluded85 = [\"svgElementRef\"],\n _excluded86 = [\"svgElementRef\"],\n _excluded87 = [\"svgElementRef\"],\n _excluded88 = [\"svgElementRef\"],\n _excluded89 = [\"svgElementRef\"],\n _excluded90 = [\"svgElementRef\"],\n _excluded91 = [\"svgElementRef\"],\n _excluded92 = [\"svgElementRef\"],\n _excluded93 = [\"svgElementRef\"],\n _excluded94 = [\"svgElementRef\"],\n _excluded95 = [\"svgElementRef\"],\n _excluded96 = [\"svgElementRef\"],\n _excluded97 = [\"svgElementRef\"],\n _excluded98 = [\"svgElementRef\"],\n _excluded99 = [\"svgElementRef\"],\n _excluded100 = [\"svgElementRef\"],\n _excluded101 = [\"svgElementRef\"],\n _excluded102 = [\"svgElementRef\"],\n _excluded103 = [\"svgElementRef\"],\n _excluded104 = [\"svgElementRef\"],\n _excluded105 = [\"svgElementRef\"],\n _excluded106 = [\"svgElementRef\"],\n _excluded107 = [\"svgElementRef\"],\n _excluded108 = [\"svgElementRef\"],\n _excluded109 = [\"svgElementRef\"],\n _excluded110 = [\"svgElementRef\"],\n _excluded111 = [\"svgElementRef\"],\n _excluded112 = [\"svgElementRef\"],\n _excluded113 = [\"svgElementRef\"],\n _excluded114 = [\"svgElementRef\"],\n _excluded115 = [\"svgElementRef\"],\n _excluded116 = [\"svgElementRef\"],\n _excluded117 = [\"svgElementRef\"],\n _excluded118 = [\"svgElementRef\"],\n _excluded119 = [\"svgElementRef\"],\n _excluded120 = [\"svgElementRef\"],\n _excluded121 = [\"svgElementRef\"],\n _excluded122 = [\"svgElementRef\"],\n _excluded123 = [\"svgElementRef\"],\n _excluded124 = [\"svgElementRef\"],\n _excluded125 = [\"svgElementRef\"],\n _excluded126 = [\"svgElementRef\"],\n _excluded127 = [\"svgElementRef\"],\n _excluded128 = [\"svgElementRef\"],\n _excluded129 = [\"svgElementRef\"],\n _excluded130 = [\"svgElementRef\"],\n _excluded131 = [\"svgElementRef\"],\n _excluded132 = [\"svgElementRef\"],\n _excluded133 = [\"svgElementRef\"],\n _excluded134 = [\"svgElementRef\"],\n _excluded135 = [\"svgElementRef\"],\n _excluded136 = [\"svgElementRef\"],\n _excluded137 = [\"svgElementRef\"],\n _excluded138 = [\"svgElementRef\"],\n _excluded139 = [\"svgElementRef\"],\n _excluded140 = [\"svgElementRef\"],\n _excluded141 = [\"svgElementRef\"],\n _excluded142 = [\"svgElementRef\"],\n _excluded143 = [\"svgElementRef\"],\n _excluded144 = [\"svgElementRef\"],\n _excluded145 = [\"svgElementRef\"],\n _excluded146 = [\"svgElementRef\"],\n _excluded147 = [\"svgElementRef\"],\n _excluded148 = [\"svgElementRef\"],\n _excluded149 = [\"svgElementRef\"],\n _excluded150 = [\"svgElementRef\"],\n _excluded151 = [\"svgElementRef\"],\n _excluded152 = [\"svgElementRef\"],\n _excluded153 = [\"svgElementRef\"],\n _excluded154 = [\"svgElementRef\"],\n _excluded155 = [\"svgElementRef\"],\n _excluded156 = [\"svgElementRef\"],\n _excluded157 = [\"svgElementRef\"],\n _excluded158 = [\"svgElementRef\"],\n _excluded159 = [\"svgElementRef\"],\n _excluded160 = [\"svgElementRef\"],\n _excluded161 = [\"svgElementRef\"],\n _excluded162 = [\"svgElementRef\"],\n _excluded163 = [\"svgElementRef\"],\n _excluded164 = [\"svgElementRef\"],\n _excluded165 = [\"svgElementRef\"],\n _excluded166 = [\"svgElementRef\"],\n _excluded167 = [\"svgElementRef\"],\n _excluded168 = [\"svgElementRef\"],\n _excluded169 = [\"svgElementRef\"],\n _excluded170 = [\"svgElementRef\"],\n _excluded171 = [\"svgElementRef\"],\n _excluded172 = [\"svgElementRef\"],\n _excluded173 = [\"svgElementRef\"],\n _excluded174 = [\"svgElementRef\"],\n _excluded175 = [\"svgElementRef\"],\n _excluded176 = [\"svgElementRef\"],\n _excluded177 = [\"svgElementRef\"],\n _excluded178 = [\"svgElementRef\"],\n _excluded179 = [\"svgElementRef\"],\n _excluded180 = [\"svgElementRef\"],\n _excluded181 = [\"svgElementRef\"],\n _excluded182 = [\"svgElementRef\"],\n _excluded183 = [\"svgElementRef\"],\n _excluded184 = [\"svgElementRef\"],\n _excluded185 = [\"svgElementRef\"],\n _excluded186 = [\"svgElementRef\"],\n _excluded187 = [\"svgElementRef\"],\n _excluded188 = [\"svgElementRef\"],\n _excluded189 = [\"svgElementRef\"],\n _excluded190 = [\"svgElementRef\"],\n _excluded191 = [\"svgElementRef\"],\n _excluded192 = [\"svgElementRef\"],\n _excluded193 = [\"svgElementRef\"],\n _excluded194 = [\"svgElementRef\"],\n _excluded195 = [\"svgElementRef\"],\n _excluded196 = [\"svgElementRef\"],\n _excluded197 = [\"svgElementRef\"],\n _excluded198 = [\"svgElementRef\"],\n _excluded199 = [\"svgElementRef\"],\n _excluded200 = [\"svgElementRef\"],\n _excluded201 = [\"svgElementRef\"],\n _excluded202 = [\"svgElementRef\"],\n _excluded203 = [\"svgElementRef\"],\n _excluded204 = [\"svgElementRef\"],\n _excluded205 = [\"svgElementRef\"],\n _excluded206 = [\"svgElementRef\"],\n _excluded207 = [\"svgElementRef\"],\n _excluded208 = [\"svgElementRef\"],\n _excluded209 = [\"svgElementRef\"],\n _excluded210 = [\"svgElementRef\"],\n _excluded211 = [\"svgElementRef\"],\n _excluded212 = [\"svgElementRef\"],\n _excluded213 = [\"svgElementRef\"],\n _excluded214 = [\"svgElementRef\"],\n _excluded215 = [\"svgElementRef\"],\n _excluded216 = [\"svgElementRef\"],\n _excluded217 = [\"svgElementRef\"],\n _excluded218 = [\"svgElementRef\"],\n _excluded219 = [\"svgElementRef\"],\n _excluded220 = [\"svgElementRef\"],\n _excluded221 = [\"svgElementRef\"],\n _excluded222 = [\"svgElementRef\"],\n _excluded223 = [\"svgElementRef\"],\n _excluded224 = [\"svgElementRef\"],\n _excluded225 = [\"svgElementRef\"],\n _excluded226 = [\"svgElementRef\"],\n _excluded227 = [\"svgElementRef\"],\n _excluded228 = [\"svgElementRef\"],\n _excluded229 = [\"svgElementRef\"],\n _excluded230 = [\"svgElementRef\"],\n _excluded231 = [\"svgElementRef\"],\n _excluded232 = [\"svgElementRef\"],\n _excluded233 = [\"svgElementRef\"],\n _excluded234 = [\"svgElementRef\"],\n _excluded235 = [\"svgElementRef\"],\n _excluded236 = [\"svgElementRef\"],\n _excluded237 = [\"svgElementRef\"],\n _excluded238 = [\"svgElementRef\"],\n _excluded239 = [\"svgElementRef\"],\n _excluded240 = [\"svgElementRef\"],\n _excluded241 = [\"svgElementRef\"],\n _excluded242 = [\"svgElementRef\"],\n _excluded243 = [\"svgElementRef\"],\n _excluded244 = [\"svgElementRef\"],\n _excluded245 = [\"svgElementRef\"],\n _excluded246 = [\"svgElementRef\"],\n _excluded247 = [\"svgElementRef\"],\n _excluded248 = [\"svgElementRef\"],\n _excluded249 = [\"svgElementRef\"],\n _excluded250 = [\"svgElementRef\"],\n _excluded251 = [\"svgElementRef\"],\n _excluded252 = [\"svgElementRef\"],\n _excluded253 = [\"svgElementRef\"],\n _excluded254 = [\"svgElementRef\"],\n _excluded255 = [\"svgElementRef\"],\n _excluded256 = [\"svgElementRef\"],\n _excluded257 = [\"svgElementRef\"],\n _excluded258 = [\"svgElementRef\"],\n _excluded259 = [\"svgElementRef\"],\n _excluded260 = [\"svgElementRef\"],\n _excluded261 = [\"svgElementRef\"],\n _excluded262 = [\"svgElementRef\"],\n _excluded263 = [\"svgElementRef\"],\n _excluded264 = [\"svgElementRef\"],\n _excluded265 = [\"svgElementRef\"],\n _excluded266 = [\"svgElementRef\"],\n _excluded267 = [\"svgElementRef\"],\n _excluded268 = [\"svgElementRef\"],\n _excluded269 = [\"svgElementRef\"],\n _excluded270 = [\"svgElementRef\"],\n _excluded271 = [\"svgElementRef\"],\n _excluded272 = [\"svgElementRef\"],\n _excluded273 = [\"svgElementRef\"],\n _excluded274 = [\"svgElementRef\"],\n _excluded275 = [\"svgElementRef\"],\n _excluded276 = [\"svgElementRef\"],\n _excluded277 = [\"svgElementRef\"],\n _excluded278 = [\"svgElementRef\"],\n _excluded279 = [\"svgElementRef\"],\n _excluded280 = [\"svgElementRef\"],\n _excluded281 = [\"svgElementRef\"],\n _excluded282 = [\"svgElementRef\"],\n _excluded283 = [\"svgElementRef\"],\n _excluded284 = [\"svgElementRef\"],\n _excluded285 = [\"svgElementRef\"],\n _excluded286 = [\"svgElementRef\"],\n _excluded287 = [\"svgElementRef\"],\n _excluded288 = [\"svgElementRef\"],\n _excluded289 = [\"svgElementRef\"],\n _excluded290 = [\"svgElementRef\"],\n _excluded291 = [\"svgElementRef\"],\n _excluded292 = [\"svgElementRef\"],\n _excluded293 = [\"svgElementRef\"],\n _excluded294 = [\"svgElementRef\"],\n _excluded295 = [\"svgElementRef\"],\n _excluded296 = [\"svgElementRef\"],\n _excluded297 = [\"svgElementRef\"],\n _excluded298 = [\"svgElementRef\"],\n _excluded299 = [\"svgElementRef\"],\n _excluded300 = [\"svgElementRef\"],\n _excluded301 = [\"svgElementRef\"],\n _excluded302 = [\"svgElementRef\"],\n _excluded303 = [\"svgElementRef\"],\n _excluded304 = [\"svgElementRef\"],\n _excluded305 = [\"svgElementRef\"],\n _excluded306 = [\"svgElementRef\"],\n _excluded307 = [\"svgElementRef\"],\n _excluded308 = [\"svgElementRef\"],\n _excluded309 = [\"svgElementRef\"],\n _excluded310 = [\"svgElementRef\"],\n _excluded311 = [\"svgElementRef\"],\n _excluded312 = [\"svgElementRef\"],\n _excluded313 = [\"svgElementRef\"],\n _excluded314 = [\"svgElementRef\"],\n _excluded315 = [\"svgElementRef\"],\n _excluded316 = [\"svgElementRef\"],\n _excluded317 = [\"svgElementRef\"],\n _excluded318 = [\"svgElementRef\"],\n _excluded319 = [\"svgElementRef\"],\n _excluded320 = [\"svgElementRef\"],\n _excluded321 = [\"svgElementRef\"],\n _excluded322 = [\"svgElementRef\"],\n _excluded323 = [\"svgElementRef\"],\n _excluded324 = [\"svgElementRef\"],\n _excluded325 = [\"svgElementRef\"],\n _excluded326 = [\"svgElementRef\"],\n _excluded327 = [\"svgElementRef\"],\n _excluded328 = [\"svgElementRef\"],\n _excluded329 = [\"svgElementRef\"],\n _excluded330 = [\"svgElementRef\"],\n _excluded331 = [\"svgElementRef\"],\n _excluded332 = [\"svgElementRef\"],\n _excluded333 = [\"svgElementRef\"],\n _excluded334 = [\"svgElementRef\"],\n _excluded335 = [\"svgElementRef\"],\n _excluded336 = [\"svgElementRef\"],\n _excluded337 = [\"svgElementRef\"],\n _excluded338 = [\"svgElementRef\"];\nvar AcornsIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded$1);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M19.575 11.024H4.426c-1.335-.104-1.291-6.117 6.459-6.676.072-.032.088-.04.132-.184a3.26 3.26 0 0 0 .12-.756 2.094 2.094 0 0 0-.12-.8A1.977 1.977 0 0 0 10.661 2c.24 0 .48.048.704.14.292.116.592.32.86.588.264.268.496.568.684.892a5.492 5.492 0 0 1 .388.792c7.566.655 7.602 6.508 6.278 6.612zm-.36 1.003s1.2 7.633-6.139 9.041c-.331.284-.883.936-1.087.932-.2.004-.756-.648-1.088-.932-7.375-1.264-6.135-9.04-6.135-9.04h14.45z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar ActivityIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded2);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M4 5a1 1 0 0 1 1-1h14a1 1 0 0 1 1 1v14a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1V5zm6.002 3a.75.75 0 0 1 .75-.75h6.5a.75.75 0 0 1 0 1.5h-6.5a.75.75 0 0 1-.75-.75zM7 9a1 1 0 1 0 0-2 1 1 0 0 0 0 2zm3.002 3a.75.75 0 0 1 .75-.75h6.5a.75.75 0 0 1 0 1.5h-6.5a.75.75 0 0 1-.75-.75zM7 13a1 1 0 1 0 0-2 1 1 0 0 0 0 2zm3.002 3a.75.75 0 0 1 .75-.75h6.5a.75.75 0 0 1 0 1.5h-6.5a.75.75 0 0 1-.75-.75zM7 17a1 1 0 1 0 0-2 1 1 0 0 0 0 2z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar AddCameraIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded3);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M15.748 18.867a.75.75 0 0 1-.75-.75v-1.625h-1.625a.75.75 0 1 1 0-1.5h1.625v-1.625a.75.75 0 1 1 1.5 0v1.625h1.625a.75.75 0 1 1 0 1.5h-1.625v1.625a.75.75 0 0 1-.75.75zM9.5 11.996a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M4 6.996v-2a1 1 0 0 1 1-1h6a1 1 0 0 1 1 1v2h9a1 1 0 0 1 1 1v7.75a6.25 6.25 0 0 1-12.084 2.25H3a1 1 0 0 1-1-1v-9a1 1 0 0 1 1-1h1zm1.5 0v-1.5h5v1.5h-5zm15 8.75a4.75 4.75 0 0 1-4.734 4.75h-.017a4.75 4.75 0 1 1 0-9.5 4.75 4.75 0 0 1 4.75 4.75zm-1.25-5.25h-.107a6.213 6.213 0 0 0-2.133-.874.75.75 0 0 1 .74-.626h1.5a.75.75 0 0 1 0 1.5zM8 8.996a3 3 0 0 1 2.985 2.703 6.228 6.228 0 0 0-1.366 2.823A3 3 0 1 1 8 8.996z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar AddCashIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded4);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M12.623 15.746a.75.75 0 0 1 .75-.75h1.625v-1.625a.75.75 0 0 1 1.5 0v1.625h1.625a.75.75 0 0 1 0 1.5h-1.625v1.625a.75.75 0 0 1-1.5 0v-1.625h-1.625a.75.75 0 0 1-.75-.75z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M1.998 14a1 1 0 0 0 1 1h6.545a6.25 6.25 0 1 0 12.455.87H22v-2.25h-.002V6a1 1 0 0 0-1-1h-18a1 1 0 0 0-1 1v8zm9 1.75a4.724 4.724 0 0 1 .879-2.752A4.75 4.75 0 1 1 15.75 20.5 4.75 4.75 0 0 1 11 15.75zm-.609-3.217a6.252 6.252 0 0 1 4.575-2.985 3 3 0 1 0-4.575 2.985z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar AddUserIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded5);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M15.749 18.87a.75.75 0 0 1-.75-.75v-1.625h-1.625a.75.75 0 0 1 0-1.5h1.625V13.37a.75.75 0 0 1 1.5 0v1.625h1.625a.75.75 0 0 1 0 1.5h-1.625v1.625a.75.75 0 0 1-.75.75z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M15.344 9.51a4.5 4.5 0 1 0-5.68.834A8.004 8.004 0 0 0 4.002 18v3a1 1 0 0 0 1 1h10.749a6.25 6.25 0 1 0-.407-12.488zm5.157 6.239a4.794 4.794 0 0 0-.087-.912 4.753 4.753 0 0 0-4.274-3.823 4.75 4.75 0 1 0 4.36 4.734z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar AddVideoIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded6);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M12.623 15.742a.75.75 0 0 1 .75-.75h1.625v-1.625a.75.75 0 0 1 1.5 0v1.625h1.625a.75.75 0 0 1 0 1.5h-1.625v1.625a.75.75 0 0 1-1.5 0v-1.625h-1.625a.75.75 0 0 1-.75-.75z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M3 3.996a1 1 0 0 0-1 1v10a1 1 0 0 0 1 1h6.504A6.25 6.25 0 1 0 20 11.162V4.996a1 1 0 0 0-1-1H3zM14.182 20.23a4.753 4.753 0 0 1-1.165-8.37l-.011.006c.15-.106.306-.204.468-.292l-.012.007a4.75 4.75 0 1 1 1.248 8.8l-.528-.151zm-4.4-6.349a6.257 6.257 0 0 1 5.222-4.343.99.99 0 0 0-.36-.391L9.53 5.952A1 1 0 0 0 8 6.8v6.391a1 1 0 0 0 1.53.848l.252-.157z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar AddIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded7);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M13 5a1 1 0 1 0-2 0v6H5a1 1 0 1 0 0 2h6v6a1 1 0 1 0 2 0v-6h6a1 1 0 1 0 0-2h-6V5z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar AlarmClockIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded8);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M15.487 2.784c-.446.325-.386.969.037 1.324l1.03.863-.907.907A7.966 7.966 0 0 0 12 5a7.966 7.966 0 0 0-3.647.878l-.907-.907 1.03-.863c.423-.355.483-1 .037-1.324A4.102 4.102 0 0 0 2.415 7.9c.243.496.887.549 1.31.194l1.03-.864.899.899a8 8 0 1 0 12.693 0l.898-.9 1.03.865c.423.355 1.067.302 1.31-.194a4.102 4.102 0 0 0-6.098-5.116zM12 7.01a.75.75 0 0 0-.75.75v4.688l-3.352 1.916a.75.75 0 0 0 .745 1.302l3.73-2.132a.75.75 0 0 0 .377-.651V7.76a.75.75 0 0 0-.75-.75z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar AnimalsIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded9);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M16 3a4 4 0 0 0-4 4v4H5c-.552 0-1.007.45-.939.998a8.009 8.009 0 0 0 5.189 6.517V20.5h-1.5a.75.75 0 0 0 0 1.5h8.5a.75.75 0 0 0 0-1.5h-1.5v-1.985A8.003 8.003 0 0 0 20 11V9h1a1 1 0 1 0 0-2h-1a4 4 0 0 0-4-4zm-2.75 17.5v-1.597a8.06 8.06 0 0 1-2.5 0V20.5h2.5zM17.5 7A1.25 1.25 0 1 1 15 7a1.25 1.25 0 0 1 2.5 0zm-7.75 6.5a.75.75 0 0 0-1.5 0 3.75 3.75 0 1 0 7.5 0 .75.75 0 0 0-1.5 0 2.25 2.25 0 1 1-4.5 0z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar AppMenuIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded10);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M7 5a2 2 0 1 1-4 0 2 2 0 0 1 4 0zm0 7a2 2 0 1 1-4 0 2 2 0 0 1 4 0zm-2 9a2 2 0 1 0 0-4 2 2 0 0 0 0 4zm7-14a2 2 0 1 0 0-4 2 2 0 0 0 0 4zm0 7a2 2 0 1 0 0-4 2 2 0 0 0 0 4zm2 5a2 2 0 1 1-4 0 2 2 0 0 1 4 0zm5-12a2 2 0 1 0 0-4 2 2 0 0 0 0 4zm0 7a2 2 0 1 0 0-4 2 2 0 0 0 0 4zm2 5a2 2 0 1 1-4 0 2 2 0 0 1 4 0z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar AppliancesIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded11);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M8 18h8v1a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1v-1h1a1 1 0 0 0 1-1V5a1 1 0 0 0-1-1H3a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h1v1a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1v-1zM3.5 5.5v11h11v-11h-11zM18.248 16a1.751 1.751 0 1 0 0-3.502 1.751 1.751 0 0 0 0 3.502zm-2.25-8.75a.75.75 0 0 1 .75-.75h3.002a.75.75 0 0 1 0 1.5h-3.003a.75.75 0 0 1-.75-.75zm.75 2.25a.75.75 0 0 0 0 1.5h3.002a.75.75 0 0 0 0-1.5h-3.003z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar ArrowDownSmIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded12);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 18 18\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M10 4.5a1 1 0 0 0-2 0v6.755L4.669 8.257a1 1 0 0 0-1.338 1.486l5 4.5a1 1 0 0 0 1.338 0l5-4.5a1 1 0 0 0-1.338-1.486L10 11.255V4.5z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar ArrowDownIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded13);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M18.707 14.29a1 1 0 0 0-1.414 0L13 18.583V2.997a1 1 0 1 0-2 0v15.586L6.707 14.29a1 1 0 0 0-1.414 1.414l5.993 5.993a1.03 1.03 0 0 0 .714.3.997.997 0 0 0 .714-.3l5.993-5.993a1 1 0 0 0 0-1.414z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar ArrowLeftIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded14);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M9.707 17.29a1 1 0 1 1-1.414 1.414L2.3 12.711a.997.997 0 0 1 0-1.428L8.293 5.29a1 1 0 0 1 1.414 1.414l-4.293 4.293H21a1 1 0 1 1 0 2H5.414l4.293 4.293z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar ArrowRightIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded15);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M14.293 18.704a1 1 0 0 1 0-1.414l4.293-4.293H3a1 1 0 1 1 0-2h15.586l-4.293-4.293a1 1 0 0 1 1.414-1.414l5.993 5.993a1.03 1.03 0 0 1 .3.714.997.997 0 0 1-.295.71l-.002.002-.003.002-5.993 5.993a1 1 0 0 1-1.414 0z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar ArrowUpSmIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded16);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 18 18\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M9 14.5a1 1 0 0 1-1-1V6.745L4.669 9.743A1 1 0 1 1 3.33 8.257l5-4.5a1 1 0 0 1 1.338 0l5 4.5a1 1 0 1 1-1.338 1.486L10 6.745V13.5a1 1 0 0 1-1 1z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar ArrowUpIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded17);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M6.707 9.71a1 1 0 0 1-1.414-1.414l5.993-5.993.02-.02a.997.997 0 0 1 1.408.02l5.993 5.993a1 1 0 0 1-1.414 1.414L13 5.417v15.586a1 1 0 1 1-2 0V5.417L6.707 9.71z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar ArrowsInIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded18);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M19.14 9.53a1 1 0 1 1-.002 2l-5.65-.006a1.01 1.01 0 0 1-1.009-1.01l.007-5.65a1 1 0 0 1 2 .002l-.004 3.245 4.287-4.276A1 1 0 0 1 20.18 5.25l-4.286 4.276 3.245.004zM4.853 14.495a1 1 0 0 1 .002-2l5.65.007c.558 0 1.01.453 1.009 1.011l-.007 5.65a1 1 0 1 1-2-.002l.004-3.246-4.287 4.277a1 1 0 1 1-1.412-1.416l4.286-4.277-3.245-.004z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar ArrowsOutIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded19);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M13.817 5.533a1 1 0 0 1 .002-2l5.65.007c.558 0 1.01.453 1.009 1.01l-.007 5.65a1 1 0 1 1-2-.002l.004-3.245-4.287 4.276a1 1 0 0 1-1.412-1.416l4.286-4.276-3.245-.004zm-3.641 12.96a1 1 0 0 1-.002 2l-5.65-.006a1.01 1.01 0 0 1-1.009-1.011l.007-5.65a1 1 0 1 1 2 .002l-.004 3.246 4.287-4.277a1 1 0 1 1 1.412 1.416L6.931 18.49l3.245.003z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar ArtIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded20);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M12 21a9 9 0 1 0-9-9 8.98 8.98 0 0 0 .525 3.036c.266.742 1.329.724 2.018.34a3 3 0 0 1 4.3 3.583c-.252.748-.079 1.797.7 1.924.474.077.961.117 1.457.117zm2-14a2 2 0 1 1-4 0 2 2 0 0 1 4 0zm3 5a2 2 0 1 0 0-4 2 2 0 0 0 0 4zm0 4a2 2 0 1 1-4 0 2 2 0 0 1 4 0zM7 12a2 2 0 1 0 0-4 2 2 0 0 0 0 4z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar AttachIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded21);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M9 7a5 5 0 0 1 10 0v8a7 7 0 1 1-14 0V7a1 1 0 0 1 2 0v8a5 5 0 0 0 10 0V7a3 3 0 1 0-6 0v8a1 1 0 1 0 2 0V7a1 1 0 1 1 2 0v8a3 3 0 1 1-6 0V7z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar AutoIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded22);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M21.5 13.102v2.373a.474.474 0 0 1-.474.475H19.6a2.85 2.85 0 0 1-5.7 0h-3.8a2.85 2.85 0 0 1-5.7 0H2.973a.474.474 0 0 1-.474-.474V12.15a1.896 1.896 0 0 1 1.425-1.832L5.35 6.697A1.9 1.9 0 0 1 7.113 5.5h6.352a2.15 2.15 0 0 1 1.484.713l3.225 4.039h.474a2.85 2.85 0 0 1 2.852 2.85zm-12.825 2.85a1.425 1.425 0 1 0-2.85 0 1.425 1.425 0 0 0 2.85 0zm.712-8.55H7.113l-1.14 2.85h3.414v-2.85zm6.354 2.85l-2.28-2.85h-2.647v2.85h4.927zm2.443 5.7a1.425 1.425 0 1 0-1.425 1.425 1.425 1.425 0 0 0 1.415-1.425h.01z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar AutopayNoIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded23);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M19.521 16.94c-.321.49-1.005.515-1.419.102l-.017-.017c-.36-.361-.384-.933-.117-1.369a6.96 6.96 0 0 0 .837-2.02c.12-.498.54-.886 1.052-.886h.024c.584 0 1.05.501.931 1.074a8.95 8.95 0 0 1-1.29 3.116zm-3.865 1.029c.436-.268 1.008-.244 1.37.117l.016.017c.414.413.388 1.097-.1 1.419a8.948 8.948 0 0 1-3.118 1.292c-.573.118-1.074-.347-1.074-.931v-.024c0-.512.388-.933.885-1.052a6.96 6.96 0 0 0 2.021-.838zM8.341 6.03c-.435.267-1.007.243-1.369-.118l-.016-.017c-.414-.414-.388-1.097.1-1.42a8.949 8.949 0 0 1 3.12-1.29c.572-.118 1.074.346 1.074.931v.024c0 .511-.389.933-.886 1.051a6.958 6.958 0 0 0-2.023.838zm-2.447.925c-.413-.413-1.097-.387-1.418.101a8.95 8.95 0 0 0-1.294 3.12c-.117.572.347 1.074.932 1.074h.024c.511 0 .933-.389 1.052-.886a6.96 6.96 0 0 1 .839-2.023c.267-.435.244-1.008-.118-1.37l-.017-.016zm7.93-3.77c-.573-.118-1.074.347-1.074.932v.024c0 .511.388.932.885 1.051.724.174 1.404.46 2.021.839.436.267 1.008.244 1.37-.118l.016-.016c.414-.414.388-1.097-.1-1.42a8.95 8.95 0 0 0-3.118-1.292zM5.19 13.635c-.12-.497-.54-.885-1.052-.885h-.024c-.585 0-1.05.501-.932 1.074a8.95 8.95 0 0 0 1.294 3.12c.321.488 1.005.514 1.418.1l.017-.016c.362-.362.385-.934.118-1.37a6.958 6.958 0 0 1-.84-2.023zm1.782 4.453c.362-.361.934-.385 1.37-.118a6.957 6.957 0 0 0 2.022.838c.497.119.886.54.886 1.052v.024c0 .584-.502 1.049-1.074.931a8.95 8.95 0 0 1-3.12-1.291c-.488-.322-.514-1.006-.1-1.42l.016-.016zm11.13-11.13c.414-.414 1.098-.388 1.42.101a8.95 8.95 0 0 1 1.29 3.116c.118.573-.347 1.075-.931 1.075h-.024c-.511 0-.933-.389-1.052-.886a6.961 6.961 0 0 0-.837-2.02c-.267-.436-.244-1.008.117-1.37l.017-.016z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M6.997 12a5 5 0 1 0 10 0 5 5 0 0 0-10 0zm5.75.167V9.75a.75.75 0 0 0-1.5 0v1.981l-1.28.731a.75.75 0 0 0 .743 1.303l1.66-.947a.75.75 0 0 0 .378-.651z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar AutopayIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded24);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M20 12c-.552 0-.992.45-1.07.997A7.001 7.001 0 0 1 5 12a7 7 0 0 1 13.448-2.729c.199.47.702.759 1.17.729H20a1 1 0 0 0 1-1V4a1 1 0 1 0-2 0v2.343a9 9 0 1 0 1.945 6.656c.06-.55-.393-.999-.945-.999z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M12 17a5 5 0 1 1 0-10 5 5 0 0 1 0 10zm.75-7.25v2.417a.75.75 0 0 1-.378.652l-1.659.946a.75.75 0 0 1-.743-1.303l1.28-.73V9.75a.75.75 0 0 1 1.5 0z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar BabyProductsIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded25);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M13 4a1 1 0 0 0-1 1v5H5.498V7.5a1 1 0 0 0-1-1H2.75a.75.75 0 0 0 0 1.5h1.248v4H4v3a1 1 0 0 0 1 1h3.5a2.5 2.5 0 1 0 0 5 2.5 2.5 0 0 0 0-5h9.027a2.5 2.5 0 1 0 0 5 2.5 2.5 0 0 0 0-5H21a1 1 0 0 0 1-1v-5a6 6 0 0 0-6-6h-3zm4.527 15.5a1 1 0 1 0 0-2 1 1 0 0 0 0 2zm-8.027-1a1 1 0 1 1-2 0 1 1 0 0 1 2 0z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar BankDepositIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded26);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M15.748 18.875a.75.75 0 0 1-.75-.75V16.5h-1.625a.75.75 0 1 1 0-1.5h1.625v-1.625a.75.75 0 1 1 1.5 0V15h1.625a.75.75 0 0 1 0 1.5h-1.625v1.625a.75.75 0 0 1-.75.75z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M4 6.903a1.5 1.5 0 0 1 .793-1.324l6.265-3.343a2 2 0 0 1 1.883 0l6.265 3.343c.488.261.794.77.794 1.324v2.1a1 1 0 0 1-1 1h-.796a6.252 6.252 0 1 1-7.038 10H5a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h1v-7H5a1 1 0 0 1-1-1v-2.1zm5.5 8.753a6.352 6.352 0 0 0 0 .193v1.154h-2v-7h2v5.653zm1.5.181v-.169a4.744 4.744 0 0 1 4.672-4.665h.154a4.717 4.717 0 0 1 2.174.566 4.757 4.757 0 0 1 2.5 4.184 4.75 4.75 0 0 1-9.5.084zm2-5.699a6.274 6.274 0 0 0-2 1.552v-1.687h2v.135zm.75-3.635a1.75 1.75 0 1 1-3.5 0 1.75 1.75 0 0 1 3.5 0z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar BankInfoIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded27);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M16.25 15.25a.25.25 0 0 1 .25.25v3.25a.25.25 0 0 1-.25.25h-1a.25.25 0 0 1-.25-.25V15.5a.25.25 0 0 1 .25-.25h1zm-.5-1.005a.998.998 0 1 0 0-1.995.998.998 0 0 0 0 1.995z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M4 6.9a1.5 1.5 0 0 1 .794-1.324l6.264-3.343a2 2 0 0 1 1.884 0l6.264 3.343A1.5 1.5 0 0 1 20 6.9V9a1 1 0 0 1-1 1h-.795a6.252 6.252 0 1 1-7.038 10H5a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h1v-7H5a1 1 0 0 1-1-1V6.9zM15.75 11a4.73 4.73 0 0 0-2.75.877 4.742 4.742 0 0 0-2 3.788v.169c.007.403.064.794.165 1.166a4.763 4.763 0 0 0 2.461 3 4.728 4.728 0 0 0 2.688.467 4.75 4.75 0 0 0-.564-9.468zM13 10v.135a6.273 6.273 0 0 0-2 1.552V10h2zm-3.5 0v5.653a6.352 6.352 0 0 0 0 .193V17h-2v-7h2zm4.25-3.5a1.75 1.75 0 1 1-3.5 0 1.75 1.75 0 0 1 3.5 0z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar BankIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded28);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M4 6.9a1.5 1.5 0 0 1 .794-1.324l6.264-3.343a2 2 0 0 1 1.884 0l6.264 3.343A1.5 1.5 0 0 1 20 6.9V9a1 1 0 0 1-1 1h-1v7h1a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h1v-7H5a1 1 0 0 1-1-1V6.9zM7.5 10v7h2v-7h-2zm3.5 0v7h2v-7h-2zm3.5 0v7h2v-7h-2zm-.75-3.5a1.75 1.75 0 1 1-3.5 0 1.75 1.75 0 0 1 3.5 0z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar BeautyIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded29);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M11.966 16a6.5 6.5 0 1 0-6.931 0H5a1 1 0 0 0-1 1H3a1 1 0 0 0-1 1v1a1 1 0 0 0 1 1h11a1 1 0 0 0 1-1v-1a1 1 0 0 0-1-1h-1a1 1 0 0 0-1-1h-.034zm1.534-5.5a5 5 0 1 1-10 0 5 5 0 0 1 10 0z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M17 13a1 1 0 0 0-1 1v5a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1v-5a1 1 0 0 0-1-1v-2a1 1 0 0 0-1-1V4.604a.25.25 0 0 0-.427-.177l-1.28 1.28a1 1 0 0 0-.293.707V10a1 1 0 0 0-1 1v2z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar BigPurchaseIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded30);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M12.5 2a.75.75 0 0 1 .75.75V3h4.224a1 1 0 0 1 .917 1.399L17.912 5.5l.48 1.101A1 1 0 0 1 17.473 8H13.25v1.15c.016.017.03.036.046.055l6.995 9.19A1 1 0 0 1 19.496 20H5.504a1 1 0 0 1-.795-1.606l6.995-9.189.046-.055v-6.4A.75.75 0 0 1 12.5 2zm3.776 3.5l.436 1H13.25v-2h3.462l-.436 1z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar BillPaymentIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded31);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M6.002 1.997a1 1 0 0 0-1 1v18a1 1 0 0 0 1 1H18a1 1 0 0 0 1-1v-18a1 1 0 0 0-1-1H6.002zm1.75 13.5a.75.75 0 0 0 0 1.5h5.498a.75.75 0 0 0 0-1.5H7.752zm-.75 3.75a.75.75 0 0 1 .75-.75h5.498a.75.75 0 0 1 0 1.5H7.752a.75.75 0 0 1-.75-.75zm9.249-3.75a.75.75 0 0 1 0 1.5h-.502a.75.75 0 0 1 0-1.5h.502zm.75 3.75a.75.75 0 0 0-.75-.75h-.502a.75.75 0 0 0 0 1.5h.502a.75.75 0 0 0 .75-.75zm-9-15.25a1 1 0 0 0-1 1v1a1 1 0 0 0 1 1h3a1 1 0 0 0 1-1v-1a1 1 0 0 0-1-1h-3z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar BirthdayIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded32);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M12 5a1 1 0 0 0 1-1c0-.552-.448-2-1-2s-1 1.448-1 2a1 1 0 0 0 1 1zm-1 3.5V6h2v2.5h5.99c.834 0 1.51.676 1.51 1.51v2.172c0 .65-.189 1.208-.5 1.672V19a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1v-5.146a2.952 2.952 0 0 1-.5-1.672V10.01c0-.834.676-1.51 1.51-1.51H11zm3.333 3.682c0 .647-.433 1.214-1.085 1.537-.361.178-.79.281-1.248.281-.459 0-.887-.103-1.248-.281-.652-.323-1.085-.89-1.085-1.537 0 .647-.434 1.214-1.086 1.537A2.828 2.828 0 0 1 7.333 14C6.045 14 5 13.186 5 12.182V10.01a.01.01 0 0 1 .01-.01h13.98a.01.01 0 0 1 .01.01v2.172C19 13.186 17.955 14 16.667 14c-.46 0-.887-.103-1.248-.281-.652-.323-1.086-.89-1.086-1.537z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar BitcoinCashIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded33);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M12.376 4.859c2.292-.322 4.23-.042 4.905 1.973l-.001.002c.496 1.474.074 2.524-.816 3.272 1.753.016 3.02.763 3.326 3.022.38 2.804-1.497 4.014-4.384 4.857l.666 2.887-1.74.401-.657-2.847c-.45.104-.913.207-1.393.307l.66 2.861-1.738.401-.668-2.891-3.51.8-.135-2.161s1.293-.276 1.266-.29c.492-.114.54-.498.52-.727L6.87 8.895c-.148-.338-.472-.694-1.177-.531.016-.029-1.264.292-1.264.292L4 6.798l3.507-.816-.66-2.857 1.739-.401.647 2.801a71.37 71.37 0 0 1 1.385-.339l-.642-2.784L11.716 2l.66 2.859zm-.2 11.686c1.429-.31 4.554-.985 4.096-2.968-.469-2.026-3.444-1.265-4.896-.894a15.35 15.35 0 0 1-.424.106l.884 3.83c.097-.022.211-.047.34-.074zm-1.34-5.573c1.193-.254 3.797-.81 3.38-2.613-.425-1.842-2.902-1.202-4.114-.888-.136.035-.257.066-.357.09l.804 3.474.287-.063z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar BitcoinIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded34);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M19.07 10.04c.315-2.102-1.285-3.232-3.473-3.985l.71-2.847-1.733-.431-.692 2.771a68.358 68.358 0 0 0-1.388-.326l.695-2.79L11.457 2l-.709 2.845-3.495-.865-.46 1.85s1.285.295 1.258.314c.702.175.829.64.808 1.007L6.914 14.95c-.086.213-.304.532-.794.41.017.025-1.26-.316-1.26-.316L4 17.031l3.49.88-.717 2.88 1.73.432.711-2.848c.474.128.932.246 1.38.358l-.707 2.835L11.62 22l.717-2.874c2.955.559 5.178.333 6.112-2.337.753-2.152-.037-3.393-1.592-4.203 1.132-.262 1.985-1.007 2.213-2.545v-.001zm-3.96 5.552c-.537 2.152-4.159.989-5.334.697l.952-3.815c1.175.293 4.941.874 4.383 3.118zm.538-5.583c-.489 1.958-3.505.963-4.483.72l.861-3.461c.98.244 4.13.7 3.62 2.741\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar BlockIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded35);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M22 12c0 5.523-4.477 10-10 10S2 17.523 2 12 6.477 2 12 2s10 4.477 10 10zm-2 0a8 8 0 0 1-12.906 6.32L18.32 7.094A7.965 7.965 0 0 1 20 12zM5.68 16.906L16.906 5.68A8 8 0 0 0 5.68 16.906z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar BooksIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded36);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M12 6.226a8.758 8.758 0 0 1 9.328.244l.46.307a.476.476 0 0 1 .212.396V18.56c0 .35-.39.559-.682.364l-.664-.443a7.676 7.676 0 0 0-.594-.358l-.031-.017-.03-.016a7.675 7.675 0 0 0-7.411.115 1.186 1.186 0 0 1-1.177 0 7.538 7.538 0 0 0-.412-.219 7.678 7.678 0 0 0-7.654.495l-.664.443A.437.437 0 0 1 2 18.56V7.173c0-.159.079-.307.211-.396l.46-.307A8.756 8.756 0 0 1 12 6.226zm1 1.733a6.758 6.758 0 0 1 7 .036v7.893a9.681 9.681 0 0 0-7-.08v-7.85zm-9 7.929a9.687 9.687 0 0 1 7-.079v-7.85a6.758 6.758 0 0 0-7 .036v7.893z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar BoxIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded37);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M4 7a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1h16a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1v12a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1V7zm2.247 11.5a.75.75 0 0 1 0-1.5h1.5a.75.75 0 0 1 0 1.5h-1.5zm-.75-3.25c0 .414.336.75.75.75h3.5a.75.75 0 1 0 0-1.5h-3.5a.75.75 0 0 0-.75.75z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar BusinessIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded38);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M7 3v2H3a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h18a1 1 0 0 0 1-1V6a1 1 0 0 0-1-1h-4V3a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1zm1.5.5V5h7V3.5h-7zm-5 9.25h5v-1.5h-5v1.5zm12 0h5v-1.5h-5v1.5zM14 11a1 1 0 0 0-1-1h-2a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1v-2z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar ButtonIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded39);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M9 5a7 7 0 0 0 0 14h6a7 7 0 1 0 0-14H9zm4.461 2.043a.75.75 0 0 1 .508.931l-2.492 8.475a.75.75 0 0 1-1.44-.424l2.493-8.474a.75.75 0 0 1 .931-.508zm-4.94 7.176a.75.75 0 1 1-1.061 1.06l-2.743-2.742a.76.76 0 0 1 0-1.074L7.46 8.72a.75.75 0 1 1 1.06 1.06L6.301 12l2.22 2.22zm6.948 0a.75.75 0 1 0 1.061 1.06l2.743-2.742a.76.76 0 0 0 0-1.074L16.53 8.72a.75.75 0 0 0-1.06 1.06L17.689 12l-2.22 2.22z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar CalculatorIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded40);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M3 2a1 1 0 0 0-1 1v7.25a1 1 0 0 0 1 1h7.25a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1H3zm3.625 1.625a.75.75 0 0 0-.75.75v1.5h-1.5a.75.75 0 0 0 0 1.5h1.5v1.5a.75.75 0 0 0 1.5 0v-1.5h1.5a.75.75 0 0 0 0-1.5h-1.5v-1.5a.75.75 0 0 0-.75-.75zM3 12.75a1 1 0 0 0-1 1V21a1 1 0 0 0 1 1h7.25a1 1 0 0 0 1-1v-7.25a1 1 0 0 0-1-1H3zm5.747 2.503a.75.75 0 0 0-1.061 0l-1.061 1.061-1.061-1.06a.75.75 0 0 0-1.06 1.06l1.06 1.06-1.06 1.062a.75.75 0 0 0 1.06 1.06l1.06-1.06 1.062 1.06a.75.75 0 1 0 1.06-1.06l-1.06-1.061 1.06-1.061a.75.75 0 0 0 0-1.06zM13.75 2a1 1 0 0 0-1 1v7.25a1 1 0 0 0 1 1H21a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1h-7.25zm6.625 4.625a.75.75 0 0 0-.75-.75h-4.5a.75.75 0 1 0 0 1.5h4.5a.75.75 0 0 0 .75-.75zM13.75 12.75a1 1 0 0 0-1 1V21a1 1 0 0 0 1 1H21a1 1 0 0 0 1-1v-7.25a1 1 0 0 0-1-1h-7.25zm6.625 6.127a.75.75 0 0 0-.75-.75h-4.5a.75.75 0 1 0 0 1.5h4.5a.75.75 0 0 0 .75-.75zm-.75-3.755a.75.75 0 0 1 0 1.5h-4.5a.75.75 0 1 1 0-1.5h4.5z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar CalendarPausedIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded41);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M17.254 18a.75.75 0 0 1-.75-.75v-3a.75.75 0 0 1 1.5 0v3a.75.75 0 0 1-.75.75zm-3.75-.75a.75.75 0 0 0 1.5 0v-3a.75.75 0 0 0-1.5 0v3z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M9 2.75a.75.75 0 0 1 1.5 0V4h3V2.75a.75.75 0 0 1 1.5 0V4h4a1 1 0 0 1 1 1v6.167A6.25 6.25 0 1 1 11.167 20H5a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1h4V2.75zm6.75 17.75A4.75 4.75 0 0 1 11 15.75a4.75 4.75 0 1 1 4.75 4.75zM18.5 10h-.295a6.23 6.23 0 0 0-2.455-.5 6.23 6.23 0 0 0-2.456.5H5.5V5.5H9v.75a.75.75 0 0 0 1.5 0V5.5h3v.75a.75.75 0 0 0 1.5 0V5.5h3.5V10z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar CalendarSmIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded42);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 18 18\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M10.75 1.999a.75.75 0 0 1 .75.75V3H14a1 1 0 0 1 1 1v10a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h2.5v-.251a.75.75 0 1 1 1.5 0V3h2v-.251a.75.75 0 0 1 .75-.75zM6.5 4.5v.751a.75.75 0 1 0 1.5 0V4.5h2v.751a.75.75 0 0 0 1.5 0V4.5h2V8h-9V4.5h2z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar CalendarIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded43);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M9 2.75a.75.75 0 0 1 1.5 0V4h3V2.75a.75.75 0 0 1 1.5 0V4h4a1 1 0 0 1 1 1v14a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1h4V2.75zM9 5.5H5.5V10h13V5.5H15v.75a.75.75 0 0 1-1.5 0V5.5h-3v.75a.75.75 0 0 1-1.5 0V5.5z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar CameraIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded44);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M9.5 12a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M4 7V5a1 1 0 0 1 1-1h6a1 1 0 0 1 1 1v2h9a1 1 0 0 1 1 1v9a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V8a1 1 0 0 1 1-1h1zm1.5 0V5.5h5V7h-5zM8 9a3 3 0 1 0 0 6 3 3 0 0 0 0-6zm11.25 0a.75.75 0 0 1 0 1.5h-1.5a.75.75 0 0 1 0-1.5h1.5z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar CardStackIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded45);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M6 8V4.8a.8.8 0 0 1 .8-.8h14.4a.8.8 0 0 1 .8.8v9.6a.8.8 0 0 1-.8.8H18v3.2a.8.8 0 0 1-.8.8H2.8a.8.8 0 0 1-.8-.8V8.8a.8.8 0 0 1 .8-.8H6zm1.5 0V5.5h13v8.2H18V8.8a.8.8 0 0 0-.8-.8H7.5zm4.75 9a.75.75 0 0 1 .75-.75h3a.75.75 0 0 1 0 1.5h-3a.75.75 0 0 1-.75-.75z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar CashBackIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded46);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M15.75 17.75a1.25 1.25 0 1 0 0-2.5 1.25 1.25 0 0 0 0 2.5z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M6.855 7h1.142V6a4 4 0 1 1 8 0v1h1.142a1 1 0 0 1 .989.848L18.92 13h2.075a1 1 0 0 1 1 1v5a1 1 0 0 1-1 1H5.163a1 1 0 0 1-.989-1.152l1.693-11A1 1 0 0 1 6.855 7zm7.642-1v1h-5V6a2.5 2.5 0 0 1 5 0zM20.5 18.5v-4H11v4h9.5z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar CashPickupIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded47);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M6 6v4H3a1 1 0 0 0-1 1v7a1 1 0 0 0 1 1h14a1 1 0 0 0 1-1v-4h3a1 1 0 0 0 1-1V6a1 1 0 0 0-1-1H7a1 1 0 0 0-1 1zm1.5.5V10H17a1 1 0 0 1 1 1v1.5h2.5v-6h-13zM10 17a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar CashIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded48);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M19.242 18c.42 0 .76-.34.76-.76v-2.242h1a1 1 0 0 0 1-1v-7a1 1 0 0 0-1-1h-15a1 1 0 0 0-1 1v1H2.76a.76.76 0 0 0-.76.76v8.482c0 .42.34.76.76.76h16.482zM5.002 9.498H3.5V16.5h15.002v-1.502h-12.5a1 1 0 0 1-1-1v-4.5zm6 1a2.5 2.5 0 1 0 5 0 2.5 2.5 0 0 0-5 0z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar CausesIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded49);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M12.05 5.437C12.29 4.87 13.287 3 16.35 3c3.76 0 5.79 3.94 3.98 8a8.755 8.755 0 0 1-.236.492 2.99 2.99 0 0 1 1.027.691l.587.605a1 1 0 0 1-.015 1.409l-4.725 4.653A4 4 0 0 1 14.16 20H9.5l-1.544 1.543a1 1 0 0 1-1.414 0l-3.836-3.836a1 1 0 0 1 0-1.414L5.37 13.63c-.697-.824-1.292-1.716-1.7-2.63-1.81-4.06.22-8 3.98-8 3.06 0 4.06 1.87 4.301 2.437.018.043.08.043.098 0zM7.25 20.13l1.63-1.63h5.282a2.49 2.49 0 0 0 1.754-.719l4.371-4.304-.241-.249a1.493 1.493 0 0 0-.764-.422 1.5 1.5 0 0 0-1.373.407l-2.847 2.848a1.5 1.5 0 0 1-1.073.439H9.75a.75.75 0 0 1 0-1.5h2.75v-1.5H8.657a2.5 2.5 0 0 0-1.768.732L4.121 17l3.13 3.129z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar CenterAlignIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded50);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M5 5a1 1 0 0 0 0 2h14a1 1 0 1 0 0-2H5zm0 8a1 1 0 1 0 0 2h14a1 1 0 1 0 0-2H5zm1.5 5a1 1 0 0 1 1-1h9a1 1 0 1 1 0 2h-9a1 1 0 0 1-1-1zm1-9a1 1 0 0 0 0 2h9a1 1 0 1 0 0-2h-9z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar ChangePlanIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded51);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M17.296 8.295a1 1 0 0 0 1.414 1.414l2.993-2.995a1.01 1.01 0 0 0 0-1.428L18.71 2.29a1 1 0 1 0-1.414 1.414L18.59 5h-1.598c-1.127 0-2.083.212-2.896.623-.815.411-1.433.995-1.922 1.66-.552.749-.962 1.646-1.313 2.544-.483-.95-1.078-1.883-1.886-2.669C7.61 5.83 5.725 5 3 5a1 1 0 0 0 0 2c2.272 0 3.636.67 4.582 1.592.993.966 1.616 2.287 2.242 3.792l.038.091c-.474 1.145-1.018 2.147-1.844 2.92C7.037 16.31 5.55 17 3 17a1 1 0 0 0 0 2c2.946 0 4.959-.812 6.384-2.145a8.386 8.386 0 0 0 1.527-1.962c.327.662.7 1.3 1.15 1.86C13.15 18.105 14.683 19 16.992 19h1.598l-1.294 1.295a1 1 0 0 0 1.414 1.414l2.993-2.995a1.01 1.01 0 0 0 0-1.428L18.71 14.29a1 1 0 1 0-1.414 1.414L18.59 17h-1.598c-1.688 0-2.654-.606-3.375-1.502-.647-.804-1.1-1.835-1.6-3.041l.04-.106.28-.757c.459-1.255.843-2.306 1.447-3.126.339-.46.727-.815 1.213-1.06C15.483 7.163 16.12 7 16.992 7h1.598l-1.294 1.295z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar CharitiesIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded52);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M11.997 6.75a1.25 1.25 0 1 0 0-2.5 1.25 1.25 0 0 0 0 2.5z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M6.751 2a1 1 0 0 0-1 1v5a1 1 0 0 0 1 1h10.496a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1H6.751zm.5 1.5v4h9.496v-4H7.251zM4.003 11a1 1 0 0 1 1-1h14a1 1 0 0 1 1 1v1a1 1 0 0 1-.997 1v8a1 1 0 0 1-1 1H6a1 1 0 0 1-1-1v-8a1 1 0 0 1-.997-1v-1zm9.413 2.21c-.53 1.246-2.296 1.246-2.826.001a1.028 1.028 0 0 0-.294-.377c-.166-.135-.506-.335-1.193-.335-.67 0-1.126.321-1.38.826-.27.537-.352 1.394.095 2.398.416.933 1.28 1.92 2.25 2.69.474.375.936.668 1.323.86.38.187.578.222.609.228h.007c.03-.005.229-.04.611-.228a7.68 7.68 0 0 0 1.325-.859c.97-.768 1.831-1.754 2.243-2.687l.002-.004c.448-1.004.367-1.86.097-2.398-.255-.505-.711-.826-1.38-.826-.689 0-1.029.2-1.194.335-.19.154-.272.324-.295.377z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar ChatIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded53);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M3 5a1 1 0 0 0-1 1v11a1 1 0 0 0 1 1h3v3a1 1 0 0 0 1.651.76l4.38-3.76H21a1 1 0 0 0 1-1V6a1 1 0 0 0-1-1H3z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar CheckCaptureIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded54);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M1.997 5.746a.75.75 0 0 1 .75-.75h2.504a.75.75 0 1 1 0 1.5H3.497v1.752a.75.75 0 1 1-1.5 0V5.746zm19.251-.75a.75.75 0 0 1 .75.75v2.497a.75.75 0 0 1-1.5 0V6.496h-1.749a.75.75 0 0 1 0-1.5h2.499zM2.747 18.997a.75.75 0 0 1-.75-.75v-2.502a.75.75 0 0 1 1.5 0v1.752h1.754a.75.75 0 0 1 0 1.5H2.747zm18.501 0a.75.75 0 0 0 .75-.75v-2.5a.75.75 0 0 0-1.5 0v1.75h-1.75a.75.75 0 0 0 0 1.5h2.5z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M6.001 8a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V9a1 1 0 0 0-1-1h-12zm5.75 4.75a.75.75 0 0 0 0 1.5h5a.75.75 0 0 0 0-1.5h-5zm-5.25.75a.75.75 0 0 1 .75-.75h1.5a.75.75 0 0 1 0 1.5h-1.5a.75.75 0 0 1-.75-.75z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar CheckIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded55);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M2 8a1 1 0 0 1 1-1h18a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V8zm2 6.25a.75.75 0 0 1 .75-.75h2.5a.75.75 0 0 1 0 1.5h-2.5a.75.75 0 0 1-.75-.75zm6.75-.75a.75.75 0 0 0 0 1.5h8.5a.75.75 0 0 0 0-1.5h-8.5z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar CheckmarkBackgroundSmIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded56);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 18 18\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M9 16A7 7 0 1 0 9 2a7 7 0 0 0 0 14zm3.854-9.183a.75.75 0 1 0-1.189-.914L7.95 10.738l-1.652-1.7a.75.75 0 1 0-1.076 1.045l2.248 2.314a.76.76 0 0 0 1.148-.066l4.236-5.514z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar CheckmarkBackgroundIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded57);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M12 21a9 9 0 1 0 0-18 9 9 0 0 0 0 18zm5.135-11.954a.75.75 0 0 0-1.19-.912l-5.292 6.904-2.59-2.661a.75.75 0 0 0-1.075 1.046l3.188 3.275a.76.76 0 0 0 1.147-.068l5.812-7.584z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar CheckmarkSmIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded58);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 18 18\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M7.69 11.474l5.517-7.19a1 1 0 0 1 1.586 1.218l-6.22 8.107a1 1 0 0 1-1.51.089l-3.35-3.44a1 1 0 1 1 1.433-1.396l2.544 2.612z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar CheckmarkIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded59);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M19.62 6.207a1 1 0 0 1 .185 1.402L11.37 18.603a1.01 1.01 0 0 1-1.525.09l-4.996-5.13a1 1 0 1 1 1.433-1.396l4.198 4.311 7.74-10.086a1 1 0 0 1 1.402-.185z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar ChevronDownSmIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded60);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 18 18\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M4.291 6.293a1 1 0 0 1 1.415 0l3.293 3.293 3.293-3.293a1 1 0 1 1 1.414 1.414L9.713 11.7a1.01 1.01 0 0 1-1.428 0L4.29 7.707a1 1 0 0 1 0-1.414z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar ChevronDownIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded61);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M4.292 8.293a1 1 0 0 1 1.414 0L12 14.586l6.293-6.293a1 1 0 0 1 1.414 1.414L12.713 16.7a1.01 1.01 0 0 1-1.428 0L4.292 9.707a1 1 0 0 1 0-1.414z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar ChevronLeftIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded62);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M15.703 4.293a1 1 0 0 1 0 1.414L9.41 12l6.293 6.293a1 1 0 0 1-1.414 1.414l-6.993-6.993a1.01 1.01 0 0 1 0-1.428l6.993-6.993a1 1 0 0 1 1.414 0z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar ChevronRightIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded63);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M8.797 4.389a.979.979 0 0 0 0 1.396L15.09 12l-6.293 6.215a.979.979 0 0 0 0 1.396c.39.386 1.024.386 1.414 0l6.993-6.906a.989.989 0 0 0 0-1.41l-6.993-6.906a1.009 1.009 0 0 0-1.414 0z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar ChevronUpSmIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded64);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 18 18\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M13.707 11.703a1 1 0 0 1-1.414 0L8.999 8.41l-3.293 3.293a1 1 0 0 1-1.414-1.414l3.993-3.993a1.01 1.01 0 0 1 1.429 0l3.993 3.993a1 1 0 0 1 0 1.414z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar ChevronUpIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded65);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M4.293 15.703a1 1 0 0 0 1.414 0L12 9.41l6.293 6.293a1 1 0 0 0 1.414-1.414l-6.993-6.993a1.01 1.01 0 0 0-1.428 0l-6.993 6.993a1 1 0 0 0 0 1.414z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar ChildrenIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded66);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M14.336 10.347a4.5 4.5 0 1 0-4.673 0A8.003 8.003 0 0 0 3.999 18v3a1 1 0 0 0 1 1h14.962a2.038 2.038 0 0 0 2.038-2.038v-.431c0-1.68-.77-3.178-1.975-4.163a3.68 3.68 0 0 0-4.942-4.752 7.93 7.93 0 0 0-.746-.27zm6.163 9.615a.538.538 0 0 1-.538.538h-6.676a.538.538 0 0 1-.538-.538v-.431a3.878 3.878 0 0 1 2.744-3.708 2.18 2.18 0 0 1 1.132-4.044 2.182 2.182 0 0 1 1.132 4.044 3.882 3.882 0 0 1 2.745 3.708v.43z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar ClockSmIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded67);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 18 18\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M9 16A7 7 0 1 1 9 2a7 7 0 0 1 0 14zm.75-11.25v4.996a.75.75 0 0 1-.379.651L6.577 11.99a.75.75 0 1 1-.743-1.303L8.25 9.31V4.75a.75.75 0 0 1 1.5 0z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar ClockIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded68);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M12 21a9 9 0 1 1 0-18 9 9 0 0 1 0 18zm.75-15.235v6.25a.75.75 0 0 1-.378.652l-4.349 2.481a.75.75 0 1 1-.743-1.302l3.97-2.266V5.765a.75.75 0 0 1 1.5 0z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar CloseSmIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded69);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 18 18\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M9 7.598L5.443 4.04a.992.992 0 1 0-1.402 1.403L7.597 9l-3.556 3.557a.992.992 0 1 0 1.402 1.402L9 10.403l3.556 3.556a.992.992 0 0 0 1.403-1.402L10.403 9l3.556-3.556a.992.992 0 1 0-1.402-1.403L9 7.598z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar CloseIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded70);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M17.293 5.293a1 1 0 1 1 1.414 1.414L13.414 12l5.293 5.293a1 1 0 0 1-1.414 1.414L12 13.414l-5.293 5.293a1 1 0 0 1-1.414-1.414L10.586 12 5.293 6.707a1 1 0 0 1 1.414-1.414L12 10.586l5.293-5.293z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar ClothingIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded71);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M12 7a3 3 0 0 0 3-3V3l6.275 1.793a1 1 0 0 1 .726.961V10a1 1 0 0 1-1 1h-2.004v10a1 1 0 0 1-1 1H6.004a1 1 0 0 1-1-1V11H3a1 1 0 0 1-1-1V5.754a1 1 0 0 1 .726-.961L9 3v3-2a3 3 0 0 0 3 3z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar CloudStorageIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded72);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M20 9.5c0 .401-.053.79-.151 1.16a4.5 4.5 0 0 1-1.732 8.297H5.883A4.5 4.5 0 0 1 6 10.028a4 4 0 0 1 6.051-3.418A4.5 4.5 0 0 1 20 9.5zm-8.49-.44a.732.732 0 0 1 .98 0l2.662 2.396a.732.732 0 1 1-.98 1.088l-1.44-1.295v5.147a.732.732 0 0 1-1.464 0v-5.147l-1.44 1.295a.732.732 0 0 1-.98-1.088L11.51 9.06z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar CodeIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded73);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M14.341 4.04a1 1 0 0 1 .677 1.242l-4.118 14a1 1 0 0 1-1.918-.564l4.118-14a1 1 0 0 1 1.241-.677zM18.586 12l-2.473 2.473a1 1 0 0 0 1.414 1.415l3.18-3.18a1 1 0 0 0 0-1.415l-3.18-3.18a1 1 0 1 0-1.415 1.414L18.587 12zM7.888 14.473L5.414 12l2.474-2.473a1 1 0 0 0-1.415-1.414l-3.18 3.18a1 1 0 0 0 0 1.414l3.18 3.18a1 1 0 0 0 1.415-1.414z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar CommunityIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded74);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M13.413 3.712c-.53 1.246-2.297 1.246-2.827 0a1.028 1.028 0 0 0-.294-.377C10.126 3.2 9.786 3 9.099 3c-.67 0-1.126.322-1.38.827-.27.537-.352 1.394.096 2.397.415.933 1.278 1.92 2.249 2.69.474.376.936.669 1.323.86.38.188.578.223.609.228h.007c.03-.005.229-.04.611-.228a7.68 7.68 0 0 0 1.325-.859c.97-.768 1.831-1.753 2.243-2.686l.003-.005c.447-1.003.366-1.86.096-2.397C16.026 3.322 15.57 3 14.9 3c-.689 0-1.029.2-1.194.335-.19.154-.272.325-.294.377zM7.47 9.969a1.97 1.97 0 0 1-.946 1.683A3.502 3.502 0 0 1 9.001 15v.357A.643.643 0 0 1 8.36 16H2.644a.643.643 0 0 1-.643-.643V15a3.502 3.502 0 0 1 2.478-3.348A1.968 1.968 0 0 1 5.502 8c1.087 0 1.968.881 1.968 1.969zm13 0c0 .713-.378 1.337-.946 1.683A3.502 3.502 0 0 1 22.001 15v.357a.643.643 0 0 1-.642.643h-5.715a.643.643 0 0 1-.643-.643V15a3.501 3.501 0 0 1 2.478-3.348A1.968 1.968 0 0 1 18.502 8c1.087 0 1.968.881 1.968 1.969zm-7.446 5.683A1.968 1.968 0 0 0 12.002 12a1.969 1.969 0 0 0-1.023 3.652A3.502 3.502 0 0 0 8.501 19v.357c0 .355.288.643.643.643h5.715a.643.643 0 0 0 .643-.643V19a3.502 3.502 0 0 0-2.478-3.348z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar ConnectionIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded75);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M17.834 17.834c.293.292.77.294 1.038-.022A8.964 8.964 0 0 0 21 12a8.96 8.96 0 0 0-2.128-5.812c-.268-.317-.745-.315-1.038-.022-.293.293-.29.766-.027 1.086A7.47 7.47 0 0 1 19.5 12a7.47 7.47 0 0 1-1.694 4.747c-.262.32-.265.794.028 1.087z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M15.712 15.712c.293.293.772.296 1.027-.031A5.974 5.974 0 0 0 18 12c0-1.387-.47-2.665-1.261-3.68-.255-.328-.734-.325-1.027-.032-.293.292-.287.764-.046 1.102A4.48 4.48 0 0 1 16.5 12a4.48 4.48 0 0 1-.834 2.61c-.24.337-.247.81.046 1.102zm-6.667-3.081l2.234-4.205c.187-.352.721-.22.721.18v2.291h2.617c.288 0 .473.307.338.562l-2.234 4.205c-.187.353-.721.22-.721-.18v-2.29H9.383a.383.383 0 0 1-.338-.563zM5.128 6.188c.268-.317.745-.315 1.038-.022.293.293.29.766.028 1.086A7.47 7.47 0 0 0 4.5 12a7.47 7.47 0 0 0 1.694 4.747c.262.32.265.794-.028 1.087-.293.292-.77.294-1.038-.022A8.964 8.964 0 0 1 3 12c0-2.216.8-4.244 2.128-5.812z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M7.261 8.32c.255-.328.734-.325 1.027-.032.293.292.286.764.046 1.102A4.48 4.48 0 0 0 7.5 12c0 .973.309 1.874.834 2.61.24.337.247.81-.046 1.102-.293.293-.772.296-1.027-.031A5.974 5.974 0 0 1 6 12c0-1.387.47-2.665 1.261-3.68z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar ContactUsIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded76);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M3 4.997a1 1 0 0 0-1 1v11a1 1 0 0 0 1 1h3v3a1 1 0 0 0 1.651.76l4.38-3.76H21a1 1 0 0 0 1-1v-11a1 1 0 0 0-1-1H3zm8.422 7.54h1.164c.168 0 .264-.097.276-.277.06-.564.324-.84.912-1.296l.108-.084c.756-.588 1.164-1.296 1.164-2.172 0-1.344-1.032-2.412-2.916-2.412-1.788 0-2.868.96-3.012 2.52-.012.192.096.288.276.288h1.32c.168 0 .264-.096.288-.276.06-.648.42-1.02 1.08-1.02.636 0 1.02.408 1.02.936 0 .516-.276.876-.552 1.128l-.456.42c-.672.612-.912 1.032-.948 1.956 0 .192.096.288.276.288zm.578 3.46a1 1 0 1 0 0-2 1 1 0 0 0 0 2z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar ContactsIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded77);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M6 5a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v14a1 1 0 0 1-1 1H7a1 1 0 0 1-1-1v-1H5a1 1 0 1 1 0-2h1v-3H5a1 1 0 1 1 0-2h1V8H5a1 1 0 0 1 0-2h1V5zm9.25 4.25c0 .815-.433 1.528-1.081 1.923A4.002 4.002 0 0 1 17 15v.444a.556.556 0 0 1-.556.556H9.556A.556.556 0 0 1 9 15.444V15a4.002 4.002 0 0 1 2.831-3.827A2.249 2.249 0 0 1 13 7a2.25 2.25 0 0 1 2.25 2.25z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar CopyToClipboardIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded78);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M16 16v3a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1V9a1 1 0 0 1 1-1h3V5a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v10a1 1 0 0 1-1 1h-3zm2.5-10.5v9H16V9a1 1 0 0 0-1-1H9.5V5.5h9z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar CreditCardIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded79);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M2 5.997a1 1 0 0 1 1-1h18a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1v-12zm3 3a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1H6a1 1 0 0 1-1-1v-2zm11.05 5.021c-.203.432-.767.475-1.105.138-.256-.257-.291-.653-.161-.99A3.24 3.24 0 0 0 15 11.997c0-.412-.076-.805-.216-1.168-.13-.338-.095-.734.161-.99.338-.337.902-.294 1.105.138.289.613.45 1.298.45 2.02a4.73 4.73 0 0 1-.45 2.021zm.997 1.299c-.205.326-.184.756.088 1.028.316.316.839.293 1.085-.08a7.714 7.714 0 0 0 1.28-4.268c0-1.577-.47-3.043-1.28-4.267-.246-.373-.769-.397-1.085-.08-.272.272-.293.702-.088 1.028.604.961.953 2.1.953 3.32a6.22 6.22 0 0 1-.953 3.319z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar CreditMastercardIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded80);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M2 5.997a1 1 0 0 1 1-1h18a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1v-12zm3 3a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1H6a1 1 0 0 1-1-1v-2zm11.59 7.982a2.546 2.546 0 1 0 0-4.528c.602.566.977 1.371.977 2.263a3.1 3.1 0 0 1-.977 2.264zm-.967-4.529a3.102 3.102 0 0 0-.977 2.264 3.1 3.1 0 0 0 .977 2.264 2.546 2.546 0 1 1 0-4.528zm.484 4.204a2.54 2.54 0 0 1-.897-1.94c0-.777.348-1.473.896-1.94a2.54 2.54 0 0 1 .897 1.94 2.54 2.54 0 0 1-.896 1.94z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar CriticalSmIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded81);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 18 18\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M8.105 2.55a1 1 0 0 1 1.79 0l5.996 11.998a1 1 0 0 1-.895 1.447H3.004a1 1 0 0 1-.895-1.447L8.105 2.55zm.481 8.428h.827c.136 0 .224-.08.234-.218.015-.355.034-.704.054-1.06.045-.811.092-1.658.092-2.686v-.785c0-.15-.078-.229-.224-.229H8.431c-.146 0-.224.08-.224.229v.785c0 1.028.047 1.875.092 2.685.02.357.04.706.054 1.06.01.14.097.22.233.22zM9 14.5a1 1 0 1 0 0-2 1 1 0 0 0 0 2z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar CriticalIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded82);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M11.105 3.554a1 1 0 0 1 1.79 0l7.498 14.998a1 1 0 0 1-.895 1.447H4.502a1 1 0 0 1-.895-1.447l7.498-14.998zm.384 10.96h1.02c.168 0 .276-.096.288-.264.018-.428.042-.85.067-1.28.055-.98.113-2.002.113-3.244v-.948c0-.18-.096-.276-.276-.276h-1.404c-.18 0-.277.096-.277.276v.948c0 1.242.058 2.264.114 3.243.024.43.048.853.066 1.281.013.168.12.264.289.264zm.51 3.486A1 1 0 1 0 12 16a1 1 0 0 0 0 2z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar CrowdfundIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded83);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M13.023 5.652A1.968 1.968 0 0 0 12 2a1.969 1.969 0 0 0-1.022 3.652A3.502 3.502 0 0 0 8.5 9v.357c0 .355.288.643.643.643h5.714a.643.643 0 0 0 .643-.643V9a3.502 3.502 0 0 0-2.477-3.348zM7.469 9.969a1.97 1.97 0 0 1-.946 1.683A3.502 3.502 0 0 1 9 15v.357a.643.643 0 0 1-.643.643H2.643A.643.643 0 0 1 2 15.357V15a3.502 3.502 0 0 1 2.478-3.348A1.968 1.968 0 0 1 5.5 8c1.087 0 1.969.881 1.969 1.969zm13 0a1.97 1.97 0 0 1-.946 1.683A3.502 3.502 0 0 1 22 15v.357a.643.643 0 0 1-.643.643h-5.714a.643.643 0 0 1-.643-.643V15a3.502 3.502 0 0 1 2.478-3.348A1.968 1.968 0 0 1 18.5 8c1.087 0 1.969.881 1.969 1.969zm-6.5 6a1.97 1.97 0 0 1-.946 1.683A3.502 3.502 0 0 1 15.5 21v.357a.643.643 0 0 1-.643.643H9.143a.643.643 0 0 1-.643-.643V21a3.502 3.502 0 0 1 2.478-3.348A1.968 1.968 0 0 1 12 14c1.088 0 1.969.882 1.969 1.969z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar CryptoIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded84);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M15 2a1 1 0 0 1 1 1v3h3a1 1 0 0 1 1 1v3a1 1 0 0 1-2 0V8H6v7.998h12V14a1 1 0 1 1 2 0v2.998a1 1 0 0 1-1 1h-3v3.005a1 1 0 1 1-2 0v-3.005h-4v3.005a1 1 0 1 1-2 0v-3.005H5a1 1 0 0 1-1-1V7a1 1 0 0 1 1-1h3V3a1 1 0 0 1 2 0v3h4V3a1 1 0 0 1 1-1z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar CultureIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded85);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M18.933 9.206a.75.75 0 0 0 0-1.06l-.355-.355a.75.75 0 1 0-1.06 1.06l.354.355a.75.75 0 0 0 1.06 0zm-3.228-1.414a.75.75 0 0 1 0 1.06l-.352.353a.75.75 0 0 1-1.06-1.06l.352-.353a.75.75 0 0 1 1.06 0zm-.652 5.238a.706.706 0 0 1-.998 0l-.062-.063a.706.706 0 0 1 0-.998 3.723 3.723 0 0 1 5.264 0 .706.706 0 0 1 0 .998l-.062.063a.706.706 0 0 1-.998 0 2.223 2.223 0 0 0-3.144 0z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M12.75 15.57a4.984 4.984 0 0 0 3.5 1.428H17a5 5 0 0 0 5-5V3.566a1 1 0 0 0-1.447-.894l-.35.175a8 8 0 0 1-7.156 0l-.35-.175a1 1 0 0 0-1.447.894v3.132l-.297.149a8 8 0 0 1-7.156 0l-.35-.175A1 1 0 0 0 2 7.566V16a5 5 0 0 0 5 5h.75a5 5 0 0 0 5-5v-.43zM20.5 4.365a9.5 9.5 0 0 1-7.75 0v7.703a3.5 3.5 0 0 0 3.5 3.43H17a3.5 3.5 0 0 0 3.5-3.5V4.365zM8.947 15.967a.706.706 0 0 1 .998 0l.063.063a.706.706 0 0 1 0 .998 3.723 3.723 0 0 1-5.265 0 .706.706 0 0 1 0-.998l.062-.063a.706.706 0 0 1 .999 0 2.223 2.223 0 0 0 3.143 0zm-3.21-2.719a.75.75 0 0 0 0-1.5h-.498a.75.75 0 0 0 0 1.5h.498zm3.999-1.5a.75.75 0 0 1 0 1.5h-.502a.75.75 0 0 1 0-1.5h.502z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar CurrencyChfIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded86);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M5.62 15.705c1.64 0 2.83-.78 3.35-2.13.01-.03.02-.06.02-.1 0-.1-.09-.14-.22-.14H7.4c-.12 0-.2.05-.27.16-.33.5-.82.8-1.5.8-1.2 0-1.92-.9-1.92-2.28 0-1.44.72-2.35 1.92-2.35.72 0 1.25.33 1.57.92.06.12.14.17.27.17l1.32-.01c.13 0 .21-.06.21-.16 0-.03-.01-.07-.02-.1-.51-1.37-1.71-2.19-3.34-2.19-2.17 0-3.64 1.45-3.64 3.71 0 2.31 1.45 3.7 3.62 3.7zm4.627-.13h1.18c.15 0 .23-.08.23-.23v-2.75h2.6v2.75c0 .15.08.23.23.23h1.18c.15 0 .23-.08.23-.23v-6.69c0-.15-.08-.23-.23-.23h-1.18c-.15 0-.23.08-.23.23v2.53h-2.6v-2.53c0-.15-.08-.23-.23-.23h-1.18c-.15 0-.23.08-.23.23v6.69c0 .15.08.23.23.23zm7.363 0h1.18c.15 0 .23-.08.23-.23v-2.69h2.54c.15 0 .23-.08.23-.23v-.92c0-.15-.08-.23-.23-.23h-2.54v-1.45h2.75c.15 0 .23-.08.23-.23v-.94c0-.15-.08-.23-.23-.23h-4.16c-.15 0-.23.08-.23.23v6.69c0 .15.08.23.23.23z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar CurrencyDollarIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded87);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M11.665 21h1.69c.317 0 .486-.169.486-.486V19.1c2.366-.38 3.908-1.902 3.908-4.184 0-2.387-1.479-3.21-4.183-4.14l-1.225-.423c-1.31-.444-1.902-.718-1.902-1.775 0-.908.74-1.5 1.944-1.5 1.183 0 1.901.529 2.176 1.458.084.275.275.423.55.423h1.837c.275 0 .465-.148.465-.38 0-.127-.063-.444-.127-.655-.464-1.627-1.669-2.662-3.443-2.98V3.487c0-.317-.17-.486-.486-.486h-1.69c-.317 0-.486.169-.486.486v1.458c-2.26.422-3.655 1.901-3.655 3.887 0 2.176 1.373 3.211 4.077 4.12l1.078.359c1.288.422 2.197.697 2.197 1.817 0 1.056-.887 1.774-2.303 1.774-1.394 0-2.197-.676-2.514-1.774-.063-.275-.232-.423-.528-.423H7.629c-.295 0-.464.148-.464.423 0 .274.21 1.077.359 1.394.612 1.395 1.88 2.303 3.655 2.578v1.415c0 .317.169.486.486.486z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar CurrencyEuroIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded88);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M6.284 11.384h.942v1.619h-.942c-.362 0-.555.193-.555.555v1.28c0 .363.193.557.555.557H7.42C8.048 18.898 9.69 21 13.34 21c3.02 0 4.638-1.401 5.339-3.89.097-.338.242-.87.242-1.184 0-.314-.145-.507-.508-.507h-1.909c-.338 0-.531.169-.604.531-.29 1.57-1.208 2.489-2.633 2.489-1.691 0-2.465-1.136-2.73-3.044h3.841c.363 0 .556-.194.556-.556v-1.28c0-.363-.193-.556-.556-.556h-3.986v-1.62h4.397c.362 0 .556-.192.556-.555v-1.28c0-.363-.194-.556-.556-.556h-4.277c.17-1.981 1.063-3.43 2.803-3.43 1.498 0 2.223.99 2.561 2.56.073.338.266.508.604.508h1.957c.363 0 .532-.194.532-.58 0-.194-.049-.363-.097-.58C18.244 4.619 16.552 3 13.34 3 9.933 3 8 5.126 7.492 8.364l-.096.628H6.284c-.362 0-.555.193-.555.556v1.28c0 .363.193.556.555.556z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar CurrencyPoundIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded89);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M5.946 13.349h2.587c.359.87.487 1.69.487 2.459 0 1.434-.718 2.715-2.792 3.048-.359.076-.564.281-.564.64v1.255c0 .384.205.59.59.59h11.218c.384 0 .59-.206.59-.59v-1.434c0-.384-.206-.59-.59-.59h-3.535l-2.766.026c.717-.87 1.025-1.818 1.025-2.894 0-.794-.154-1.716-.436-2.51h3.817c.384 0 .589-.205.589-.59v-1.383c0-.384-.205-.589-.59-.589h-4.712c-.256-.845-.59-1.69-.59-2.663 0-1.41.667-2.741 2.485-2.741 1.486 0 2.203.845 2.434 2.075.076.358.281.538.64.538h1.998c.384 0 .589-.205.563-.615-.23-2.946-2.28-4.713-5.584-4.713-3.918 0-5.84 2.459-5.84 5.353 0 1.102.231 1.998.513 2.766H5.946c-.384 0-.59.205-.59.59v1.383c0 .384.206.589.59.589z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar CurrencyRupeeIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded90);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M5.53 7.441v1.284c0 .378.201.58.579.58h5.463c-.403 1.132-1.36 1.66-3.071 1.66H6.134c-.377 0-.579.202-.579.58v1.334c0 .277.076.478.252.705l5.564 6.772c.176.226.402.327.704.327h2.971c.302 0 .504-.126.504-.327 0-.151-.05-.252-.303-.529L9.76 13.382c2.77-.201 4.708-1.636 5.237-4.078h2.895c.378 0 .579-.201.579-.579V7.441c0-.377-.201-.579-.58-.579h-2.87a4.66 4.66 0 0 0-.805-1.712h3.676c.378 0 .579-.201.579-.579V3.262c0-.377-.201-.579-.58-.579H6.11c-.378 0-.579.202-.579.58v1.384c0 .377.201.579.579.579h2.366c1.687 0 2.694.478 3.072 1.636H6.109c-.378 0-.579.202-.579.58z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar CurrencyYenIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded91);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M5.48 3.68l2.443 5.186H6.21c-.378 0-.58.201-.58.579v1.334c0 .378.202.579.58.579h2.895l.806 1.687H6.21c-.378 0-.58.201-.58.579v1.334c0 .378.202.58.58.58h4.254v4.883c0 .378.202.579.58.579h2.19c.377 0 .579-.201.579-.579v-4.884h4.405c.378 0 .58-.201.58-.579v-1.334c0-.378-.202-.58-.58-.58h-3.852l.831-1.686h3.021c.378 0 .58-.201.58-.579V9.445c0-.378-.202-.58-.58-.58H16.38l2.442-5.034c.126-.252.151-.353.151-.453 0-.227-.2-.378-.503-.378h-2.266c-.327 0-.554.151-.68.453l-3.197 7.452h-.075L9.005 3.453C8.88 3.151 8.653 3 8.325 3H5.91c-.327 0-.504.151-.504.403 0 .075.025.176.076.277z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar CustomersIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded92);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M19 18h-2v1a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1v-1.5a6.003 6.003 0 0 1 4.469-5.803 3.657 3.657 0 0 1 1.766-6.688 3.656 3.656 0 1 1 5.296 4.688A6.003 6.003 0 0 1 20 15.5V17a1 1 0 0 1-1 1zm-4.844-9.289v-.055c0-1.54-.952-2.857-2.3-3.396a2.156 2.156 0 1 1 2.3 3.451zM13.306 11a3.677 3.677 0 0 1-.775.697 6.007 6.007 0 0 1 4.386 4.803H18.5v-1A4.5 4.5 0 0 0 14 11h-.693z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar DailyDealIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded93);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M15 16a1 1 0 1 0 0-2 1 1 0 0 0 0 2z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M9.75 2a.75.75 0 0 0-.75.75V4H5a1 1 0 0 0-1 1v14a1 1 0 0 0 1 1h9.46l1.81 1.809a.653.653 0 0 0 .922 0l4.617-4.617a.653.653 0 0 0 0-.923L20 14.46V5a1 1 0 0 0-1-1h-4V2.75a.75.75 0 0 0-1.5 0V4h-3V2.75A.75.75 0 0 0 9.75 2zm6.98 18.15l3.42-3.42-4.232-4.23H12.5v3.418l4.23 4.231zM5.5 5.5H9v.75a.75.75 0 0 0 1.5 0V5.5h3v.75a.75.75 0 0 0 1.5 0V5.5h3.5V10h-13V5.5z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar DashboardIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded94);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M5 4a1 1 0 0 0-1 1v2.75a1 1 0 0 0 1 1h5.75a1 1 0 0 0 1-1V5a1 1 0 0 0-1-1H5zm0 6.25a1 1 0 0 0-1 1V19a1 1 0 0 0 1 1h5.75a1 1 0 0 0 1-1v-7.75a1 1 0 0 0-1-1H5zM13.25 5a1 1 0 0 1 1-1H19a1 1 0 0 1 1 1v8.75a1 1 0 0 1-1 1h-4.75a1 1 0 0 1-1-1V5zm1 11.25a1 1 0 0 0-1 1V19a1 1 0 0 0 1 1H19a1 1 0 0 0 1-1v-1.75a1 1 0 0 0-1-1h-4.75z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar DayIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded95);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M12 2a.77.77 0 0 1 .77.77v2.05a.77.77 0 1 1-1.54 0V2.77A.77.77 0 0 1 12 2zM4.79 4.79a.767.767 0 0 1 1.087 0l1.45 1.45A.77.77 0 1 1 6.24 7.328l-1.45-1.45a.77.77 0 0 1 0-1.089zm2.626 12.882a.77.77 0 1 0-1.088-1.088l-1.45 1.45a.77.77 0 1 0 1.087 1.089l1.45-1.45zM2 12a.77.77 0 0 1 .77-.77h2.05a.77.77 0 1 1 0 1.54H2.77A.77.77 0 0 1 2 12zm9.23 9.23a.77.77 0 0 0 1.54 0v-2.05a.77.77 0 0 0-1.54 0v2.05zm7.98-2.02a.767.767 0 0 1-1.087 0l-1.45-1.45a.77.77 0 1 1 1.087-1.088l1.45 1.45c.3.301.3.788 0 1.089zM16.584 6.328a.77.77 0 0 0 1.088 1.088l1.45-1.45a.77.77 0 0 0-1.087-1.089l-1.45 1.45zM22 12a.77.77 0 0 1-.77.77h-2.05a.77.77 0 0 1 0-1.54h2.05A.77.77 0 0 1 22 12zm-10 5a5 5 0 1 0 0-10 5 5 0 0 0 0 10z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar DealsIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded96);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M8.788 4.287a.998.998 0 0 1 .808-.282 1 1 0 0 1 .29.034l5.961 1.597a2 2 0 0 1 1.215.932l4.742 8.215a1 1 0 0 1-.366 1.365l-8.066 4.657a1 1 0 0 1-1.366-.366L11.753 20H5a1 1 0 0 1-1-1V9.838a2 2 0 0 1 .597-1.426l4.191-4.125zm-1.524 7.938a2 2 0 0 1-.2-1.518l.953-3.556-2.368 2.33a.5.5 0 0 0-.149.357V18.5h5.387l-3.623-6.275zm4.45-1.485a1.5 1.5 0 1 0 .776-2.898 1.5 1.5 0 0 0-.776 2.898z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar DeclineIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded97);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M12 21a9 9 0 1 0 0-18 9 9 0 0 0 0 18zM8.111 9.171L10.94 12l-2.83 2.829a.75.75 0 0 0 1.06 1.06L12 13.061l2.828 2.828a.75.75 0 0 0 1.06-1.06L13.061 12l2.828-2.828a.75.75 0 1 0-1.06-1.061L12 10.939 9.172 8.111a.75.75 0 0 0-1.06 1.06z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar DeleteIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded98);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M7 3v3H5a1 1 0 0 0-1 1v1a1 1 0 0 0 1 1h1v12a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V9h1a1 1 0 0 0 1-1V7a1 1 0 0 0-1-1h-2V3a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1zm1.5.5V6h7V3.5h-7zm1 7.25a.75.75 0 0 1 1.5 0v8.5a.75.75 0 0 1-1.5 0v-8.5zm3.5 0a.75.75 0 0 1 1.5 0v8.5a.75.75 0 0 1-1.5 0v-8.5z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar DesktopIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded99);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M4 5a1 1 0 0 1 1-1h14a1 1 0 0 1 1 1v11a1 1 0 0 1-1 1h-6v2h2.25a.75.75 0 0 1 0 1.5h-6.5a.75.75 0 0 1 0-1.5H11v-2H5a1 1 0 0 1-1-1V5zm2 9.25a.75.75 0 0 1 .75-.75h10.5a.75.75 0 0 1 0 1.5H6.75a.75.75 0 0 1-.75-.75z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar DetailedListIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded100);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M4 5.002a2 2 0 0 1 3.732-1H19a1 1 0 1 1 0 2H7.732a2 2 0 0 1-3.732-1zM6 8a2 2 0 1 0 1.732 3H19a1 1 0 1 0 0-2H7.732A2 2 0 0 0 6 8zM4 20a2 2 0 0 1 3.732-1H19a1 1 0 1 1 0 2H7.732A2 2 0 0 1 4 20zm0-5a2 2 0 0 1 3.732-1H19a1 1 0 1 1 0 2H7.732A2 2 0 0 1 4 15z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar DirectDepositIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded101);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M2 4a1 1 0 0 1 1-1h18a1 1 0 0 1 1 1l-.001 9.477a1 1 0 0 1-.298.712l-4.733 4.661A4 4 0 0 1 14.16 20H9.5l-1.543 1.543a1 1 0 0 1-1.414 0l-3.836-3.836a1 1 0 0 1 0-1.414l3.121-3.121c.06-.06.12-.117.183-.172H3a1 1 0 0 1-1-1V4zm13.915 13.781a2.5 2.5 0 0 1-1.754.719H8.879L7.25 20.129 4.121 17l2.768-2.768a2.5 2.5 0 0 1 1.768-.732H12.5V15H9.75a.75.75 0 0 0 0 1.5h4.236a1.508 1.508 0 0 0 1.075-.44l2.847-2.847a1.5 1.5 0 0 1 2.137.015l.241.249-4.37 4.304zM4 10.25a.75.75 0 0 1 .75-.75h2.5a.75.75 0 0 1 0 1.5h-2.5a.75.75 0 0 1-.75-.75zm6.75-.75a.75.75 0 0 0 0 1.5h8.5a.75.75 0 0 0 0-1.5h-8.5z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar DisasterReliefIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded102);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M11.996 2a6 6 0 0 1 6 6v.334a.808.808 0 0 1-.025.21.748.748 0 0 1-.387.476l-1.942.98H18a1 1 0 0 1 1 1v10a1 1 0 0 1-1 1H6a1 1 0 0 1-1-1V11a1 1 0 0 1 1-1h2.35l-1.942-.98a.748.748 0 0 1-.412-.686V8a6 6 0 0 1 6-6zm4.501 5.888l-3.75 1.893V8.007a1.877 1.877 0 0 1 3.75-.119zm-5.255.121c0 .033.002.066.004.099v1.673L7.5 7.89a1.873 1.873 0 0 1 3.744.103v.016zm2.174 5.202c-.53 1.245-2.297 1.245-2.827 0a1.028 1.028 0 0 0-.294-.377c-.166-.135-.506-.335-1.193-.335-.67 0-1.126.321-1.38.826-.27.537-.352 1.394.095 2.398.416.933 1.28 1.92 2.25 2.69.474.375.936.668 1.323.86.38.187.578.222.609.228h.007c.03-.005.229-.04.611-.228a7.68 7.68 0 0 0 1.325-.859c.97-.768 1.831-1.754 2.243-2.687l.003-.004c.447-1.004.366-1.86.096-2.398-.255-.505-.711-.826-1.38-.826-.689 0-1.029.2-1.194.335-.19.154-.272.324-.294.377z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar DisasterIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded103);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M12 22a7 7 0 0 0 7-7c0-2.884-1.155-4.714-2.355-6.615-.982-1.556-1.994-3.158-2.427-5.424-.167-.875-1.287-1.305-1.864-.626-4.571 5.369-2.89 7.99-2.207 9.056.278.434.391.61-.147.61-1.329 0-1.885-1.545-2.109-2.582-.11-.513-.587-.91-.976-.558C5.614 10.041 5 13.775 5 15a7 7 0 0 0 7 7zm2-3.5a2 2 0 1 1-4 0c0-1.105.895-5 2-5s2 3.895 2 5z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar DislikeSelectedIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded104);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M13.113 22.568a.753.753 0 0 1-.661.392 3.23 3.23 0 0 1-2.37-1.053 3.505 3.505 0 0 1-.456-.617c-.37-.635-.405-1.314-.3-1.924.103-.6.348-1.172.596-1.652a.84.84 0 0 0-.747-1.226H5.04a2.358 2.358 0 0 1-1.053-.238 2.481 2.481 0 0 1-.85-.679 2.65 2.65 0 0 1-.493-.974 2.745 2.745 0 0 1-.067-1.094L3.76 5.181c.085-.606.372-1.17.82-1.582a2.391 2.391 0 0 1 1.643-.638h10.174a.74.74 0 0 1 .21.03h3.062c1.052 0 1.707.958 1.707 1.874v8.976c0 .916-.655 1.874-1.707 1.874h-2.815l-3.74 6.853zm6.756-8.728a.474.474 0 0 1-.1.306c-.05.06-.09.063-.101.063H17.16V4.496h2.507c.012 0 .05.004.1.064.053.06.1.167.1.305v8.976z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar DislikeIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded105);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M12.452 22.96a.75.75 0 0 0 .66-.392l3.74-6.853h2.816c1.052 0 1.707-.958 1.707-1.874V4.864c0-.916-.655-1.875-1.707-1.875h-3.062a.752.752 0 0 0-.21-.03H6.222A2.391 2.391 0 0 0 4.58 3.6a2.646 2.646 0 0 0-.82 1.582l-1.182 8.322a2.71 2.71 0 0 0 .56 2.068c.23.286.519.52.849.68.328.158.688.24 1.053.237h4.135a.84.84 0 0 1 .747 1.226c-.248.48-.493 1.053-.596 1.652-.105.61-.07 1.289.3 1.924.129.22.282.427.457.617a3.23 3.23 0 0 0 2.369 1.053zm3.191-8.172L12.034 21.4a1.772 1.772 0 0 1-.846-.517 1.997 1.997 0 0 1-.26-.352c-.142-.243-.182-.538-.118-.91.065-.38.233-.795.45-1.217.806-1.562-.328-3.422-2.085-3.422H5.027a.853.853 0 0 1-.383-.087.976.976 0 0 1-.333-.268 1.146 1.146 0 0 1-.212-.422 1.24 1.24 0 0 1-.03-.492L5.25 5.39a1.14 1.14 0 0 1 .347-.682.885.885 0 0 1 .61-.241h9.435v10.321z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar DisputesIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded106);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M6 2a1 1 0 0 0-1 1v11a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h14a1 1 0 0 0 1-1v-6a1 1 0 0 0-1-1V3a1 1 0 0 0-1-1H6zm10.25 12h-8.5a.75.75 0 0 1 0-1.5h8.5a.75.75 0 0 1 0 1.5zm0-7.5a.75.75 0 0 1 0 1.5h-8.5a.75.75 0 0 1 0-1.5h8.5zm-8.5 3a.75.75 0 0 0 0 1.5h8.5a.75.75 0 0 0 0-1.5h-8.5zm7.715 6a3.501 3.501 0 0 1-6.93 0H5.5v5h13v-5h-3.035z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar DocumentIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded107);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M10.414 2.586A2 2 0 0 1 11.828 2H18a1 1 0 0 1 1 1v18a1 1 0 0 1-1 1H6a1 1 0 0 1-1-1V8.828a2 2 0 0 1 .586-1.414l4.828-4.828zM11 4.125V8H7.125L11 4.125zm5.25 8.375a.75.75 0 0 1 0 1.5h-8.5a.75.75 0 0 1 0-1.5h8.5zm-8.5 3a.75.75 0 0 0 0 1.5h8.5a.75.75 0 0 0 0-1.5h-8.5zm0 3a.75.75 0 0 0 0 1.5h8.5a.75.75 0 0 0 0-1.5h-8.5z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar DonateIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded108);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M16.35 5c-3.062 0-4.06 1.87-4.3 2.437a.054.054 0 0 1-.099 0C11.71 6.87 10.711 5 7.651 5c-3.76 0-5.79 3.94-3.98 8C5.31 16.68 10 20 12 20c.124 0 .26-.013.404-.038 1.285 1.21 2.776 2.041 3.594 2.041 1.333 0 4.468-2.207 5.555-4.668.903-2.027.372-4.009-1.004-4.877C21.956 8.596 19.942 5 16.35 5zm1.062 9.212c-.53 1.246-2.297 1.246-2.826 0a1.027 1.027 0 0 0-.295-.377c-.166-.135-.506-.335-1.193-.335-.67 0-1.126.322-1.38.827-.27.537-.352 1.394.095 2.397.416.933 1.28 1.92 2.25 2.69.474.376.936.668 1.323.86.38.188.578.223.609.228h.007c.03-.005.229-.04.611-.228a7.68 7.68 0 0 0 1.325-.858c.97-.769 1.831-1.754 2.244-2.687l.002-.005c.447-1.003.366-1.86.096-2.397-.255-.505-.711-.827-1.38-.827-.689 0-1.029.2-1.194.335-.19.154-.272.325-.294.377z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar DownloadIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded109);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M11.998 2a1 1 0 0 1 1 1v10.59l2.295-2.295a1 1 0 0 1 1.414 1.414l-3.995 3.995a1.01 1.01 0 0 1-1.428 0L7.288 12.71a1 1 0 0 1 1.415-1.414l2.295 2.295V3a1 1 0 0 1 1-1z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M3 13a1 1 0 1 1 2 0v6h14v-6a1 1 0 1 1 2 0v7a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1v-7z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar EditIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded110);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M11.278 8.77l.026-.026 5.45-5.451a1 1 0 0 1 1.415 0l2.54 2.54a1 1 0 0 1 0 1.414l-3.93 3.928a.937.937 0 0 1-.025.027l-7.375 7.375a2 2 0 0 1-.965.535l-3.801.877a.5.5 0 0 1-.6-.6l.877-3.8a2 2 0 0 1 .535-.965l5.853-5.854zm3.29-1.169l2.894-2.894 1.832 1.832L16.4 9.434 14.568 7.6z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar EducationIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded111);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M22 6a1 1 0 0 0-1-1H3a1 1 0 0 0-1 1v1a1 1 0 0 0 1 1h.25v9.002l-.815 1.96A.75.75 0 0 0 3.127 20h1.746a.75.75 0 0 0 .693-1.038L4.75 17V8H6v7.266a.68.68 0 0 0 .065.31C6.339 16.122 7.605 18 12 18c4.396 0 5.66-1.878 5.935-2.424a.68.68 0 0 0 .065-.31V8h3a1 1 0 0 0 1-1V6z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar ElectricityIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded112);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M7 3v5H4a1 1 0 0 0-1 1v3a9 9 0 1 0 18 0V9a1 1 0 0 0-1-1h-3V3a1 1 0 1 0-2 0v5H9V3a1 1 0 0 0-2 0zm1.393 11.53l2.194-4.13c.367-.69 1.413-.429 1.413.352V13h2.726a1 1 0 0 1 .883 1.47l-2.197 4.134c-.366.69-1.412.43-1.412-.352V16H9.277a1 1 0 0 1-.884-1.47z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar EmailIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded113);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M22 6a1 1 0 0 0-1-1H3a1 1 0 0 0-1 1v12a.995.995 0 0 0 .44.83c.16.107.353.17.56.17h18a1 1 0 0 0 1-1V6zm-18.5.504v1.75l7.986 4.79a1 1 0 0 0 1.028 0l7.986-4.79v-1.75l-8.5 5.1-8.5-5.1z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar EmojiIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded114);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M12 21a9 9 0 1 0 0-18 9 9 0 0 0 0 18zm4.5-6.87a.75.75 0 0 0-1.06 0l-.334.333a4.393 4.393 0 0 1-6.212 0l-.333-.333A.75.75 0 0 0 7.5 15.19l.333.333a5.893 5.893 0 0 0 8.334 0l.333-.333a.75.75 0 0 0 0-1.06zM17 9.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0zM8.5 11a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar EnvironmentIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded115);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M4.246 4a8.753 8.753 0 0 1 8.001 5.2 8.761 8.761 0 0 1 8-5.2v3.251A8.75 8.75 0 0 1 13 15.871v5.378a.75.75 0 0 1-1.5 0V16h-.002v-.128a8.754 8.754 0 0 1-7.252-8.623V4zM13 14.344v-.095h-.002v-1.5a7.251 7.251 0 0 1 5.748-7.094v1.596A7.251 7.251 0 0 1 13 14.344z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar EthereumIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded116);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M17.905 12.188l-5.45 3.624L7 12.188 12.454 2l5.451 10.188zm-5.45 4.789L7 13.352 12.454 22l5.455-8.648-5.454 3.625z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar FaceIdIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded117);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M6.275 5.428a.736.736 0 0 0-.735.736v1.6a.736.736 0 0 1-1.472 0v-1.6c0-1.22.988-2.207 2.207-2.207h1.71a.736.736 0 1 1 0 1.471h-1.71zm11.518 0c.406 0 .736.33.736.736v1.6a.736.736 0 1 0 1.471 0v-1.6c0-1.22-.988-2.207-2.207-2.207h-1.71a.736.736 0 0 0 0 1.471h1.71zm-5.072 4.719a.687.687 0 1 0-1.374 0v2.07h-.232a.687.687 0 0 0 0 1.373h.91a.696.696 0 0 0 .696-.696v-2.747zm3.318 4.85a.736.736 0 1 0-1.04-1.04l-.144.144a3.99 3.99 0 0 1-5.643 0l-.142-.142a.736.736 0 1 0-1.041 1.04l.142.143a5.462 5.462 0 0 0 7.724 0l.144-.144zm2.49 2.77c0 .406-.33.735-.736.735h-1.71a.736.736 0 0 0 0 1.472h1.71A2.207 2.207 0 0 0 20 17.766v-1.6a.736.736 0 0 0-1.471 0v1.6zm-12.99 0c0 .406.33.735.736.735h1.71a.736.736 0 0 1 0 1.472h-1.71a2.207 2.207 0 0 1-2.207-2.208v-1.6a.736.736 0 0 1 1.472 0v1.6zm3.548-9.683c.406 0 .736.33.736.736v1.867a.736.736 0 1 1-1.472 0V8.82c0-.407.33-.736.736-.736zm6.63.736a.736.736 0 0 0-1.472 0v1.867a.736.736 0 1 0 1.472 0V8.82z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar FamilySupportIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded118);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M21.547 12.383a1 1 0 0 1-1.414 0L20 12.25v8.586a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1V12.25l-.133.133a1 1 0 0 1-1.414-1.414l8.84-8.84a1 1 0 0 1 1.414 0l8.84 8.84a1 1 0 0 1 0 1.414zm-8.132-.336c-.53 1.245-2.296 1.245-2.826 0a1.027 1.027 0 0 0-.295-.378c-.165-.134-.505-.335-1.193-.335-.67 0-1.126.322-1.38.827-.27.537-.351 1.394.096 2.398.416.933 1.279 1.92 2.25 2.69.474.375.935.668 1.323.86.38.187.577.222.608.227l.004.001h.004c.03-.006.228-.04.611-.229a7.68 7.68 0 0 0 1.324-.858c.971-.768 1.832-1.754 2.244-2.687l.002-.004c.448-1.004.367-1.861.096-2.398-.254-.505-.71-.827-1.38-.827-.688 0-1.028.2-1.193.335-.19.154-.272.325-.295.378z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar FaqIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded119);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M2 4.003a1 1 0 0 1 1-1h14a1 1 0 0 1 1 1v2h3a1 1 0 0 1 1 1v10a1 1 0 0 1-1 1h-1v2.996a1 1 0 0 1-1.651.758l-4.374-3.754H6.53l-.879.754A1 1 0 0 1 4 18v-2.996H3a1 1 0 0 1-1-1v-10zm6.278 12.5h6.252l3.97 3.407v-3.407h2v-9H18v6.5a1 1 0 0 1-1 1h-6.975l-1.747 1.5zM11 12.253a1 1 0 1 1-2 0 1 1 0 0 1 2 0zm-.525-2.25h-.97c-.15 0-.23-.08-.23-.24.03-.77.23-1.12.79-1.63l.38-.35c.23-.21.46-.51.46-.94 0-.44-.32-.78-.85-.78-.55 0-.85.31-.9.85-.02.15-.1.23-.24.23h-1.1c-.15 0-.24-.08-.23-.24.12-1.3 1.02-2.1 2.51-2.1 1.57 0 2.43.89 2.43 2.01 0 .73-.34 1.32-.97 1.81l-.09.07c-.49.38-.71.61-.76 1.08-.01.15-.09.23-.23.23z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar FavoriteSelectedIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded120);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M12.05 7.437C12.29 6.87 13.289 5 16.35 5c3.76 0 5.79 3.94 3.98 8C18.7 16.69 14 20 12 20c-1.999 0-6.69-3.32-8.33-7-1.81-4.06.22-8 3.98-8 3.061 0 4.06 1.87 4.301 2.437.019.043.08.043.099 0z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar FavoriteIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded121);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M13.89 8.22c-.708 1.665-3.07 1.665-3.779 0l1.765-.75-1.764.75-.008-.018a1.815 1.815 0 0 0-.615-.726C9.183 7.261 8.632 7 7.651 7c-1.102 0-1.87.538-2.293 1.377-.443.881-.558 2.245.14 3.809.645 1.448 1.97 2.958 3.445 4.127.723.573 1.43 1.022 2.029 1.318.299.147.55.246.745.305.181.055.271.063.283.064.001 0 .002 0 0 0h.001c.012-.001.102-.008.286-.064.196-.06.447-.158.746-.305.6-.296 1.307-.744 2.03-1.316 1.475-1.167 2.798-2.675 3.438-4.123l.003-.006c.697-1.563.583-2.928.14-3.81C18.22 7.539 17.451 7 16.35 7c-.982 0-1.533.26-1.839.476L13.36 5.841C14.02 5.375 14.979 5 16.35 5c3.76 0 5.79 3.94 3.98 8C18.7 16.69 14 20 12 20s-6.69-3.32-8.33-7c-1.81-4.06.22-8 3.98-8 1.371 0 2.329.376 2.99.841l.107.078a3.831 3.831 0 0 1 1.204 1.518c.018.043.08.043.098 0a3.581 3.581 0 0 1 .06-.132 3.827 3.827 0 0 1 1.25-1.464l1.152 1.635a1.813 1.813 0 0 0-.614.725l-.007.019z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar FilterIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded122);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M15 12c1.953 0 3.579-1.4 3.93-3.25h2.32a.75.75 0 0 0 0-1.5h-2.32a4.001 4.001 0 0 0-7.86 0H2.75a.75.75 0 0 0 0 1.5h8.32A4.001 4.001 0 0 0 15 12zm-2.07 3.25h8.32a.75.75 0 0 1 0 1.5h-8.32a4.001 4.001 0 0 1-7.86 0H2.75a.75.75 0 0 1 0-1.5h2.32a4.001 4.001 0 0 1 7.86 0z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar FingerprintIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded123);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M19.278 6.508a.75.75 0 0 1-1.057.088c-3.672-3.11-9.078-3.119-12.737-.001a.75.75 0 1 1-.973-1.142c4.223-3.598 10.45-3.584 14.68-.002a.75.75 0 0 1 .087 1.057zm-5.025.869a6.688 6.688 0 0 0-8.986 7.783l.154.635a.75.75 0 0 1-1.458.353l-.154-.635a8.188 8.188 0 0 1 11.002-9.529l.172.07a8.655 8.655 0 0 1 5.352 9.254l-.116.816-.029.103a3.77 3.77 0 0 1-7.402-.806l-.093-1.863a.799.799 0 1 0-1.595.097l.145 2.022c.021.296.077.589.166.872l.18.573c.362 1.157 1.115 2.085 2.17 2.727a.75.75 0 1 1-.78 1.282c-1.347-.82-2.344-2.035-2.822-3.56l-.18-.573a5.332 5.332 0 0 1-.23-1.214l-.145-2.021a2.299 2.299 0 1 1 4.589-.28l.093 1.863a2.27 2.27 0 0 0 4.458.485l.003-.012.103-.722a7.155 7.155 0 0 0-4.424-7.651l-.173-.07zm-2.287.956c-3 0-5.433 2.433-5.433 5.434v.438c.01 1.483.195 4.165 1.778 6.181a.75.75 0 1 0 1.18-.926c-1.25-1.591-1.448-3.818-1.458-5.263v-.43a3.933 3.933 0 1 1 7.867 0v1.374a.75.75 0 0 0 1.5 0v-1.374a5.434 5.434 0 0 0-5.434-5.434z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar FlagIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded124);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M5 2a1 1 0 0 0-1 1v18a1 1 0 0 0 1 1h1a1 1 0 0 0 1-1v-7h12.234a1 1 0 0 0 .857-1.514L18 9l2.091-3.486A1 1 0 0 0 19.234 4H7V3a1 1 0 0 0-1-1H5z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar FlashOffIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded125);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M10.117 2.529L8.22 6.098 4.346 2.223a.75.75 0 0 0-1.068 1.054l.004.003 17.436 17.436.006.006a.75.75 0 0 0 1.055-1.066l-4.527-4.527 2.475-4.66A1 1 0 0 0 18.844 9H12V3c0-1.043-1.394-1.39-1.883-.47zM15.78 17.9L6.749 8.868 4.272 13.53A1 1 0 0 0 5.155 15H12v6c0 1.043 1.394 1.39 1.883.47l1.897-3.57z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar FlashIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded126);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M10.117 2.529L4.272 13.531A1 1 0 0 0 5.155 15H12v6c0 1.043 1.394 1.39 1.883.47l5.844-11A1 1 0 0 0 18.844 9H12V2.998c0-1.042-1.394-1.39-1.883-.469z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar FlowersIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded127);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M12 2c-.894 0-1.618.724-1.618 1.617v1.48L9.336 4.05A1.617 1.617 0 1 0 7.05 6.337l1.048 1.048H6.615a1.615 1.615 0 0 0 0 3.23H8.1l-1.05 1.052a1.614 1.614 0 0 0 2.283 2.283l1.05-1.05v1.483c0 .622.35 1.163.867 1.433v1.2A2.993 2.993 0 0 0 9 16H7a3 3 0 0 0 3 3h1.25v2.248a.75.75 0 0 0 1.5 0V19H14a3 3 0 0 0 3-3h-2c-.896 0-1.7.393-2.25 1.016v-1.2c.515-.27.867-.81.867-1.433v-1.48l1.046 1.047a1.617 1.617 0 0 0 2.286-2.287l-1.048-1.048h1.483a1.615 1.615 0 1 0 0-3.23h-1.486l1.051-1.052a1.614 1.614 0 1 0-2.283-2.283l-1.05 1.05V3.617A1.615 1.615 0 0 0 12 2zm2 7a2 2 0 1 1-4 0 2 2 0 0 1 4 0z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar FoodIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded128);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M9.954 6.97a.75.75 0 1 0 1.06 1.06l1.824-1.823 1.939 1.94-1.823 1.823a.75.75 0 0 0 1.06 1.06l1.824-1.823 1.939 1.94-1.823 1.823a.75.75 0 0 0 1.06 1.06l1.811-1.81a5 5 0 0 1-.287 6.758l-.437.436a2 2 0 0 1-2.828 0L4.586 8.727a2 2 0 0 1 0-2.829l.436-.436a5 5 0 0 1 6.741-.302l-1.81 1.81z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar FundraiserIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded129);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M4 3a1 1 0 0 1 1-1h14a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1h-.004v6.274a2.99 2.99 0 0 1 2.123.91l.587.604a1 1 0 0 1-.016 1.409l-4.724 4.653A4 4 0 0 1 14.159 20H9.498l-1.543 1.543a1 1 0 0 1-1.414 0l-3.836-3.836a1 1 0 0 1 0-1.414l2.299-2.299V5H5a1 1 0 0 1-1-1V3zm3.248 17.129L8.877 18.5h5.282a2.507 2.507 0 0 0 1.754-.719l4.37-4.304-.24-.249a1.495 1.495 0 0 0-1.047-.454 1.495 1.495 0 0 0-1.09.439l-2.847 2.848a1.498 1.498 0 0 1-1.073.439H9.748a.75.75 0 0 1 0-1.5h2.75v-1.5H8.655a2.5 2.5 0 0 0-1.768.732L4.119 17l3.129 3.129zM13.419 5.21c-.53 1.245-2.296 1.245-2.826 0a1.027 1.027 0 0 0-.295-.377c-.165-.135-.505-.335-1.193-.335-.67 0-1.126.321-1.38.826-.27.537-.351 1.394.096 2.398.416.933 1.279 1.92 2.25 2.69.474.376.935.668 1.323.86.38.187.577.222.608.228h.008c.03-.005.228-.04.611-.228a7.63 7.63 0 0 0 1.324-.859c.971-.768 1.832-1.754 2.244-2.687l.002-.004c.448-1.004.367-1.86.096-2.398-.254-.505-.71-.826-1.38-.826-.688 0-1.028.2-1.193.334-.19.154-.272.325-.295.378z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar FurnitureIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded130);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M4 5a1 1 0 0 1 1-1h14a1 1 0 0 1 1 1v6h1a1 1 0 0 1 1 1v6a1 1 0 0 1-1 1h-2a1 1 0 0 1-1-1v-1H6v1a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1v-6a1 1 0 0 1 1-1h1V5zm14 7H6v1.5h12V12z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar GasPumpIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded131);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M8.501 12.498v-4h5v4h-5z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M5 4.999a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v2h4.05c.11 0 .214.023.308.066a1 1 0 0 1 .642.934v3a1 1 0 0 1-.75.968v3.031a4.25 4.25 0 0 1-4.25 4.25v1.75a1 1 0 0 1-1 1H6a1 1 0 0 1-1-1v-16zm14.001 6a1 1 0 0 0 .75.968v3.031a2.75 2.75 0 0 1-2.75 2.75v-9.25h2v2.5zm-12-3a1 1 0 0 1 1-1h6a1 1 0 0 1 1 1v5a1 1 0 0 1-1 1h-6a1 1 0 0 1-1-1v-5z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar GeneralSupportIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded132);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M3 5.999a1 1 0 0 0 1 1v12a1 1 0 0 0 1 1h14a1 1 0 0 0 1-1v-12a1 1 0 0 0 1-1v-1a1 1 0 0 0-1-1H4a1 1 0 0 0-1 1v1zm10.413 4.21c-.53 1.246-2.296 1.246-2.826 0a1.027 1.027 0 0 0-.295-.377c-.165-.134-.505-.335-1.193-.335-.67 0-1.126.322-1.38.827-.27.537-.351 1.394.096 2.397.416.933 1.279 1.92 2.25 2.69.474.376.935.669 1.323.86.38.188.577.223.608.228L12 16.5h.004c.03-.006.228-.04.611-.229a7.68 7.68 0 0 0 1.324-.858c.971-.768 1.832-1.754 2.244-2.687l.002-.005c.447-1.003.366-1.86.096-2.397-.254-.505-.71-.827-1.38-.827-.688 0-1.028.2-1.194.335a1.029 1.029 0 0 0-.294.377z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar GetDirectionsIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded133);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M12.707 2.295a1 1 0 0 0-1.414 0l-8.999 8.998a1 1 0 0 0 0 1.414l8.999 8.998a1 1 0 0 0 1.414 0l8.998-8.998a1 1 0 0 0 0-1.414l-8.998-8.998zm1.998 13.414a.75.75 0 1 1-1.061-1.06l1.899-1.9H9.25v2.5a.75.75 0 1 1-1.5 0v-3a1 1 0 0 1 1-1h6.793l-1.899-1.898a.75.75 0 0 1 1.06-1.06l3.003 3.002a1 1 0 0 1 0 1.414l-3.002 3.002z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar GiftCardIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded134);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M11.55 5.997a2.75 2.75 0 0 1 4.452-3.136 2.75 2.75 0 0 1 4.452 3.136H21a1 1 0 0 1 1 1v7a1 1 0 0 1-1 1h-1v4a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1v-10a1 1 0 0 1 1-1h7v-1a1 1 0 0 1 1-1h.55zm2.45-2.5c.69 0 1.25.56 1.25 1.25v1.25H14a1.25 1.25 0 1 1 0-2.5zm-2.5 4h9v6h-9v-6zm1.969 7.738c.027-.078.05-.157.07-.238h1.531a4.32 4.32 0 0 1-.328 1.09c-.197.437-.763.48-1.101.141-.256-.256-.291-.651-.172-.993zm4.323-.238h-1.51a5.515 5.515 0 0 1-.758 2.177c-.2.328-.18.758.093 1.03.316.317.84.294 1.083-.082a7.008 7.008 0 0 0 1.092-3.125zm.211-9a1.25 1.25 0 1 0-1.25-1.25v1.25h1.25zM4.5 11.497a1 1 0 0 1 1-1H7a1 1 0 0 1 1 1v1.5a1 1 0 0 1-1 1H5.5a1 1 0 0 1-1-1v-1.5z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar GoalsIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded135);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M20.707 3.293a1 1 0 0 1 0 1.414l-6.775 6.775a2.006 2.006 0 0 1-1.169 2.367 2 2 0 1 1-.245-3.782l6.775-6.774a1 1 0 0 1 1.414 0z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M15.65 3.77c.606.27.695 1.057.226 1.526-.324.323-.82.388-1.243.216a7 7 0 1 0 3.855 3.855c-.172-.424-.107-.92.216-1.243.47-.469 1.256-.38 1.525.226A9 9 0 1 1 12 3c1.3 0 2.535.275 3.65.77z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M12.614 6.533c.793.088.987 1.037.423 1.602-.263.262-.637.367-1.008.364H12A3.501 3.501 0 1 0 15.502 12v-.03c-.003-.37.102-.745.364-1.007.565-.564 1.514-.37 1.602.424a5.501 5.501 0 1 1-4.854-4.854z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar GoldIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded136);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M10.81 19.348c-1.908-.41-3.35-1.223-4.322-2.44-.961-1.23-1.454-2.817-1.48-4.764-.012-1.268.218-2.414.692-3.439A6.825 6.825 0 0 1 7.736 6.17c.884-.666 1.908-1.095 3.074-1.287V3h2.42v1.883c1.307.243 2.42.736 3.343 1.479.935.73 1.64 1.825 2.113 3.285h-2.344a4.097 4.097 0 0 0-1.71-1.921c-.755-.461-1.639-.692-2.65-.692-.73 0-1.39.135-1.979.404-.576.256-1.018.544-1.326.864a4.975 4.975 0 0 0-1.056 1.69c-.205.59-.307 1.288-.307 2.094 0 .577.09 1.191.268 1.845.193.64.455 1.159.788 1.556.525.602 1.076 1.03 1.652 1.287.576.256 1.23.384 1.96.384 1.357 0 2.395-.243 3.112-.73.448-.307.787-.66 1.018-1.057.23-.41.384-.89.46-1.44h-3.65v-2.056h6.071c0 1.358-.121 2.459-.365 3.304a5.077 5.077 0 0 1-1.19 2.152 6.21 6.21 0 0 1-1.902 1.383 6.888 6.888 0 0 1-2.325.634V21H10.81v-1.652z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar GourmetFoodIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded137);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M18 8.896a4.002 4.002 0 0 1 3.01-3.877c.535-.136.99.325.99.877v6c0 .023 0 .046-.002.069v6.285a.75.75 0 0 1-1.5 0v-5.646A4.001 4.001 0 0 1 18 8.896zM2 6a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v4a2 2 0 0 1-1.25 1.855v6.395a.75.75 0 0 1-1.5 0v-6.395A2 2 0 0 1 2 10V6zm10 11a5 5 0 1 0 0-10 5 5 0 0 0 0 10z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar GrantsIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded138);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M11.828 2a2 2 0 0 0-1.414.586L5.585 7.414A2 2 0 0 0 5 8.828V21a1 1 0 0 0 1 1h8.999v-.003a.988.988 0 0 0 .54-.218l1.917-1.533 1.917 1.533a1 1 0 0 0 1.624-.78V15.33A4.502 4.502 0 0 0 19 8.256V3a1 1 0 0 0-1-1h-6.171zM19 9.901a2.997 2.997 0 0 1 .498 4.837 2.99 2.99 0 0 1-1.998.762 2.99 2.99 0 0 1-2.086-.843A3 3 0 0 1 19 9.9zM17.5 17a4.48 4.48 0 0 1-2.086-.511v3.47l2.042-1.634 2.041 1.633v-3.425A4.482 4.482 0 0 1 17.5 17zm-9.75-4.5H13c0 .526.09 1.03.256 1.5H7.75a.75.75 0 0 1 0-1.5zm6.164 3H7.75a.75.75 0 0 0 0 1.5h6.164v-1.5zm0 3H7.75a.75.75 0 0 0 0 1.5h6.164v-1.5zM11 8V4.125L7.125 8h3.874z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar HandbagsIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded139);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M5.304 9h1.695V8a5 5 0 1 1 10 0v1h1.696a1 1 0 0 1 .701.288l2.307 2.272a1 1 0 0 1 .246 1.033l-2.615 7.727a1 1 0 0 1-.947.68H5.612a1 1 0 0 1-.948-.68L2.05 12.593a1 1 0 0 1 .245-1.033l2.307-2.272A1 1 0 0 1 5.304 9zm10.295-1v1H8.4V8a3.6 3.6 0 1 1 7.2 0zM7 11.75a.75.75 0 0 0-1.5 0 6.5 6.5 0 1 0 13 0 .75.75 0 0 0-1.5 0 5 5 0 0 1-10 0z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar HealthIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded140);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M7.1 5a5.022 5.022 0 0 1-.099-.999V3a1 1 0 0 1 1-1h7.998a1 1 0 0 1 1 1v1.001c0 .342-.034.676-.1 1H18a1 1 0 0 1 1 1v15a1 1 0 0 1-1 1H6a1 1 0 0 1-1-1V6a1 1 0 0 1 1-1h1.1zm1.546 0a3.5 3.5 0 0 1-.145-.999V3.5h6.998v.501a3.509 3.509 0 0 1-.145 1 3.5 3.5 0 0 1-6.708 0zm4.85 5.747a1 1 0 0 0-1-1h-1a1 1 0 0 0-1 1v2.25h-2.25a1 1 0 0 0-1 1v1a1 1 0 0 0 1 1h2.25v2.249a1 1 0 0 0 1 1h1a1 1 0 0 0 1-1v-2.25h2.25a1 1 0 0 0 1-1v-1a1 1 0 0 0-1-1h-2.25v-2.25z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar HelpIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded141);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M21 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0zm-1.5 0a7.48 7.48 0 0 1-.532 2.78l-2.323-.926A4.986 4.986 0 0 0 17 12c0-.701-.144-1.369-.405-1.974l2.298-.987c.39.908.607 1.91.607 2.961zm-4.72-6.968A7.48 7.48 0 0 0 12 4.5a7.476 7.476 0 0 0-2.961.607l.987 2.298A4.984 4.984 0 0 1 12 7c.655 0 1.28.126 1.854.355l.927-2.323zm-.806 11.563l.987 2.298c-.908.39-1.91.607-2.961.607-.982 0-1.92-.189-2.78-.532l.926-2.323A4.986 4.986 0 0 0 12 17c.701 0 1.369-.144 1.974-.405zm-6.57-2.62A4.984 4.984 0 0 1 7 12c0-.655.126-1.28.355-1.854L5.032 9.22A7.48 7.48 0 0 0 4.5 12c0 1.052.216 2.053.607 2.961l2.298-.987zM15.5 12a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar HideIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded142);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M20.718 2.222a.75.75 0 0 1 0 1.06L3.286 20.714a.75.75 0 0 1-1.062-1.06l2.723-2.722C3.075 15.134 2 13.02 2 12c0-1.969 4-8 10-8 1.724 0 3.283.495 4.63 1.25l3.027-3.028a.75.75 0 0 1 1.06 0zM12 7c.834 0 1.621.204 2.313.566l-1.137 1.137a3.5 3.5 0 0 0-4.474 4.474l-1.136 1.136A5 5 0 0 1 12 7z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M7.374 18.747C8.72 19.503 10.277 20 12 20c6 0 10-6 10-8 0-1.036-1.073-3.145-2.941-4.937l-2.625 2.624a5 5 0 0 1-6.747 6.747l-2.313 2.313z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M10.824 15.297a3.5 3.5 0 0 0 4.474-4.474l-4.474 4.474z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar HomeIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded143);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M20.133 12.547a1 1 0 0 0 1.414-1.414l-8.84-8.84a1 1 0 0 0-1.414 0l-8.84 8.84a1 1 0 1 0 1.414 1.414L4 12.414V21a1 1 0 0 0 1 1h14a1 1 0 0 0 1-1v-8.586l.133.133zM10 15a2 2 0 1 1 4 0v5.5h-4V15z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar HomeownerIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded144);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M10.57 11.5a5.009 5.009 0 0 0 1.014-1.5h1.208a.5.5 0 0 0 .354-.146l.5-.5a.5.5 0 0 1 .707 0l.5.5a.5.5 0 0 0 .354.146h.585a.5.5 0 0 0 .354-.146l.5-.5a.5.5 0 0 1 .707 0l.5.5a.5.5 0 0 0 .354.146h.641a.5.5 0 0 0 .277-.084l2.25-1.5a.5.5 0 0 0 0-.832l-1.872-1.248A2 2 0 0 0 18.394 6h-6.81a5.001 5.001 0 1 0-5.91 6.823l-2.97 2.97a1 1 0 0 0 0 1.414l3.836 3.836a1 1 0 0 0 1.414 0L9.497 19.5h4.661a4 4 0 0 0 2.807-1.15l4.725-4.653a1 1 0 0 0 .015-1.41l-.587-.604a3 3 0 0 0-4.273-.03L13.997 14.5v-2a1 1 0 0 0-1-1H10.57zm1.927 3h-2.75a.75.75 0 0 0 0 1.5h4.239a1.5 1.5 0 0 0 1.072-.44l2.848-2.847a1.493 1.493 0 0 1 .926-.433c.434-.04.882.11 1.21.448l.241.249-4.37 4.304a2.5 2.5 0 0 1-1.755.719H8.876l-1.629 1.629L4.12 16.5l2.767-2.768A2.5 2.5 0 0 1 8.654 13h3.843v1.5zM7 8a1.499 1.499 0 1 1-2.998 0A1.499 1.499 0 0 1 7 8z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar HoneyIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded145);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M17.43 18.791c.713.03 1.454-.494 2.036-1.17.311-.353 1.213.132 1.002.606C19.787 19.709 18.423 21 16.87 21c-1.754-.01-2.716-1.16-2.716-2.874V14c0-.444-.221-.746-.682-.746-1.975 0-3.429 5.062-3.57 6.777-.04.575-.861.706-1.302.695-.391-.01-1.063-.14-1.113-.635 0-3.489 0-5.648.01-9.147-1.183-.06-2.526-.403-3.368-1.3-1.023-1.09-.803-2.693.711-3.087.13-.04.27.03.32.161.402.949 1.274 2.542 2.357 2.703 0-.464 0-1.35-.01-1.815-.03-6.04 8.04-5.87 7.89-1.069-.09 2.824-3.148 4.064-5.354 4.407v4.417c.742-2.016 1.745-4.467 4.27-4.367 1.455.102 2.226 1.16 2.357 2.482.05.443.05.897.04 1.35v2.37l-.001.144c-.006.575-.015 1.423.723 1.45zM10.745 4.874c-.491.585-.652 1.573-.682 2.32-.012.396-.013.869-.014 1.329-.001.31-.002.616-.006.889 1.153-.303 2.176-1.19 2.727-2.27.26-.493.41-1.2.3-1.774-.23-1.18-1.634-1.311-2.325-.494z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar HourglassIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded146);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M6 2a1 1 0 0 0-1 1v3a1 1 0 0 0 1 1h1v.325C7 9.907 9.239 12 12 12c-2.761 0-5 2.093-5 4.675V17H6a1 1 0 0 0-1 1v3a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-3a1 1 0 0 0-1-1h-1v-.325C17 14.093 14.761 12 12 12c2.761 0 5-2.093 5-4.675V7h1a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1H6zm.5 1.5v2h11v-2h-11zm0 17v-2h11v2h-11z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar HouseholdSuppliesIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded147);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M5 3a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v.18a1 1 0 0 1-.803.98l-.944.19V6c0 .921.174 1.515.385 1.853.193.31.404.397.613.397a.75.75 0 0 1 0 1.5c-.791 0-1.455-.412-1.886-1.103-.413-.662-.612-1.568-.612-2.647V4.65l-1.655.33A1 1 0 0 1 13.9 5h.1v4l2.6 3.467a2 2 0 0 1 .4 1.2V21a1 1 0 0 1-1 1H6a1 1 0 0 1-1-1v-7.333a2 2 0 0 1 .4-1.2L8 9V5H6a1 1 0 0 1-1-1V3z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar HouseholdIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded148);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M11 4a1 1 0 0 1 1 1v1.846c0 1.37.57 2.65 1.135 3.916.139.312.277.622.407.933.042.1.08.202.117.305H21c.553 0 1.007.45.939.998A8.001 8.001 0 0 1 14 20H5.056A1.056 1.056 0 0 1 4 18.944c0-.3-.131-.583-.339-.8A5.98 5.98 0 0 1 2.001 14c0-.816.163-1.595.458-2.305.13-.31.268-.621.407-.933C3.43 9.495 4 8.215 4 6.846V5a1 1 0 0 1 1-1h6zm4.127 14.403A6.534 6.534 0 0 1 14 18.5m1.127-.097a6.508 6.508 0 0 0 5.2-4.903H7.674a6.512 6.512 0 0 0 4.567 4.76c.56.156 1.15.24 1.76.24\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar HumanServicesIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded149);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M13.143 6.005c.663-.539 1.678-1.006 3.209-1.006 3.76 0 5.79 3.94 3.98 8-.737 1.668-2.102 3.258-3.56 4.5-1.768 1.506-3.675 2.5-4.77 2.5-1.097 0-3.003-.999-4.77-2.508-1.457-1.242-2.82-2.83-3.56-4.492-1.81-4.06.22-8 3.98-8 1.67 0 2.728.557 3.382 1.156a3.75 3.75 0 0 1 .896 1.23l.016.035.007.016c.018.042.08.042.098 0l.015-.037.007-.015.032-.07a3.783 3.783 0 0 1 1.038-1.31zm-5.22 10.099c.232.208.47.408.71.599.746.591 1.482 1.06 2.118 1.374.677.335 1.096.421 1.25.421.156 0 .576-.087 1.254-.42.637-.314 1.373-.782 2.12-1.372.24-.19.476-.389.707-.596a5.009 5.009 0 0 0-2.622-1.895 2.812 2.812 0 1 0-2.92 0 5.01 5.01 0 0 0-2.617 1.889z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar HumanIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded150);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M14.813 4.812a2.812 2.812 0 0 1-1.352 2.405A5.002 5.002 0 0 1 17 12v2.111a.89.89 0 0 1-.89.889H15v6a1 1 0 0 1-1 1h-4a1 1 0 0 1-1-1v-6H7.888A.889.889 0 0 1 7 14.111V12a5.002 5.002 0 0 1 3.54-4.783 2.812 2.812 0 1 1 4.273-2.404z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar HungerIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded151);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M12.704 5.402a1.25 1.25 0 0 1 0-1.768l.353-.354a.75.75 0 0 0-1.06-1.06l-.354.353a2.75 2.75 0 0 0 0 3.89l.353.353a.75.75 0 1 0 1.061-1.06l-.354-.354zm-3.559 0a1.25 1.25 0 0 1 0-1.768l.354-.354a.75.75 0 0 0-1.061-1.06l-.354.353a2.75 2.75 0 0 0 0 3.89l.354.353a.75.75 0 1 0 1.06-1.06l-.353-.354zm7-1.768a1.25 1.25 0 0 0 0 1.768l.354.353a.75.75 0 1 1-1.061 1.06l-.354-.353a2.75 2.75 0 0 1 0-3.889l.354-.353a.75.75 0 0 1 1.06 1.06l-.353.354z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M19 8c.552 0 1.007.45.938.998a7.944 7.944 0 0 1-.644 2.293c.67.073 1.318.37 1.825.892l.587.605a1 1 0 0 1-.016 1.409l-4.724 4.653A4 4 0 0 1 14.159 20H9.498l-1.543 1.543a1 1 0 0 1-1.414 0l-3.836-3.836a1 1 0 0 1 0-1.414l3.121-3.121.038-.038a7.965 7.965 0 0 1-1.802-4.136C3.993 8.45 4.448 8 5 8h14zm-5.005 8.5a1.5 1.5 0 0 0 1.06-.44l2.847-2.847a1.501 1.501 0 0 1 2.141.015l.24.249-4.37 4.304a2.5 2.5 0 0 1-1.754.719H8.877l-1.63 1.629-.001-.002-.002.002L4.115 17l2.768-2.768a2.5 2.5 0 0 1 1.768-.732h3.843V15H9.748a.75.75 0 0 0 0 1.5h4.248z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar InFlightIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded152);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M5 3a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v1a1 1 0 0 1-.675.946L10.482 13H16a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1h-3.25v4.5h2.5a.75.75 0 0 1 0 1.5h-6.5a.75.75 0 0 1 0-1.5h2.5V16H9c-.02 0-.039 0-.058-.002a1 1 0 0 1-.96-.741L5.043 4.294A.997.997 0 0 1 5 3.904V3z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M12 5.5a3.5 3.5 0 1 1 7 0v2a3.5 3.5 0 1 1-7 0v-2zm5.5 0v2a2 2 0 1 1-4 0v-2a2 2 0 1 1 4 0z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar IndustrialIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded153);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M4.999 3a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1h-4v.765l-4 2.667V5h-4a1 1 0 0 1-1-1V3zm5 7.235v2.197l4-2.667V7.568l-4 2.667zm0 4l4-2.667v2.197l-4 2.667v-2.197zm0 4V19l1.566 2.74a.5.5 0 0 0 .868 0L14 19v-3.432l-4 2.667z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar InformationSmIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded154);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 18 18\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M16 9A7 7 0 1 1 2 9a7 7 0 0 1 14 0zm-7.537 3.969h1.072c.146 0 .224-.078.224-.224V8.193c0-.146-.078-.224-.224-.224H8.463c-.147 0-.225.078-.225.224v4.552c0 .146.078.224.225.224zM9 6.5a1 1 0 1 0 0-2 1 1 0 0 0 0 2z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar InformationIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded155);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M21 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0zm-9.662 5h1.32c.18 0 .276-.096.276-.276v-5.925c0-.18-.096-.276-.276-.276h-1.32c-.18 0-.276.096-.276.276v5.925c0 .18.096.276.276.276zM12 9a1 1 0 1 0 0-2 1 1 0 0 0 0 2z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar InsightsIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded156);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M4 5a1 1 0 0 1 1-1h14a1 1 0 0 1 1 1v14a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1V5zm1.5 8.44v2.12l3.5-3.5 1.47 1.47a.75.75 0 0 0 1.06 0l5.474-5.473v2.787a.75.75 0 0 0 1.496.078v-4.75a.75.75 0 0 0-.74-.672h-4.606A.75.75 0 0 0 13.16 7h2.78L11 11.94l-1.47-1.47a.75.75 0 0 0-1.06 0L5.5 13.44z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar InstallmentsIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded157);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M7 7H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-3h3a1 1 0 0 0 1-1V4a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v3zm1.5 0h3v-.75a.75.75 0 0 1 1.5 0V7h3a1 1 0 0 1 1 1v7.5h2.5v-11h-11V7zm-4 1.5H7v.75a.75.75 0 1 0 1.5 0V8.5h3v.75a.75.75 0 0 0 1.5 0V8.5h2.5V12h-11V8.5z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar InsuranceIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded158);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M13.792 11.293l-2.623 3.418-1.01-1.037a.75.75 0 1 0-1.075 1.046l1.413 1.452a1 1 0 0 0 1.51-.089l2.975-3.877a.75.75 0 1 0-1.19-.913z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M4 5a1 1 0 0 1 1-1h14a1 1 0 0 1 1 1v14a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1V5zm12.629 7.992a1 1 0 0 0 1.193-1.581l-5.117-5.118a1 1 0 0 0-1.415 0L6.172 11.41a1 1 0 0 0 1.194 1.58V17a1 1 0 0 0 1 1h7.263a1 1 0 0 0 1-1v-4.008z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar InsuredIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded159);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M13.501 10.503v-.5a1.5 1.5 0 0 0-3 0v.5h3zM11 14a1 1 0 1 1 2 0 1 1 0 0 1-2 0z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M12.001 22.004c.12 0 .24-.028.347-.081 1.536-.765 7.653-4.306 7.653-11.015V5.659c0-.383-.344-.699-.784-.725-4.106-.248-5.464-1.525-6.607-2.68-.337-.34-.947-.336-1.278.009-1.11 1.157-2.472 2.474-6.547 2.722-.441.027-.784.342-.784.725v5.247c0 6.665 6.116 10.202 7.653 10.966a.78.78 0 0 0 .347.081zm3-11.501a1 1 0 0 1 1 1v4.5a1 1 0 0 1-1 1h-6a1 1 0 0 1-1-1v-4.5a1 1 0 0 1 1-1v-.5a3 3 0 1 1 6 0v.5z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar InternationalIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded160);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M20.998 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0zM5.036 9.21a.406.406 0 0 0 .16.088c.374.101.716.502 1.107.96.722.843 1.61 1.883 3.174 1.603 1.52-.278 1.648-1.43 1.766-2.482.1-.896.192-1.72 1.127-1.873 1.592-.26 2.473-1.7 2.784-2.312A7.503 7.503 0 0 0 5.034 9.21zM12.08 19.5a7.5 7.5 0 0 0 7.083-9.722c-1.182.311-1.77.838-2.914 1.866-.263.236-.555.498-.89.79-1.135.988-.873 2.005-.641 2.903.166.645.316 1.229-.077 1.697-.334.394-.861.804-1.351 1.186-.667.52-1.264.984-1.21 1.28z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar InternetIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded161);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M2.456 5.93c-.476.323-.536.991-.158 1.425.346.397.941.456 1.379.164A14.93 14.93 0 0 1 12 5c3.079 0 5.942.928 8.323 2.52.438.292 1.033.232 1.38-.165.377-.433.317-1.101-.159-1.425A16.92 16.92 0 0 0 12 3C8.462 3 5.177 4.08 2.456 5.93zm15.747 3.795c.5.303.567.989.182 1.43-.338.387-.916.456-1.36.197A9.954 9.954 0 0 0 12 10a9.954 9.954 0 0 0-5.024 1.352c-.444.259-1.023.19-1.36-.197-.385-.44-.319-1.127.182-1.43A11.944 11.944 0 0 1 12 8c2.27 0 4.393.63 6.203 1.725zm-3.165 5.263c.401-.458.302-1.172-.257-1.414a6.978 6.978 0 0 0-2.78-.574c-.989 0-1.93.205-2.782.574-.558.242-.657.956-.257 1.415l.039.044c.312.358.83.436 1.276.272A4.99 4.99 0 0 1 12.001 15a5 5 0 0 1 1.723.305c.445.163.963.085 1.276-.272l.038-.045zM12 21a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar InvestIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded162);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M16.25 5a1 1 0 0 1 1-1h2.5a1 1 0 0 1 1 1v14a1 1 0 0 1-1 1h-2.5a1 1 0 0 1-1-1V5zm-12 4a1 1 0 0 1 1-1h2.5a1 1 0 0 1 1 1v10a1 1 0 0 1-1 1h-2.5a1 1 0 0 1-1-1V9zm7 3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.5a1 1 0 0 0 1-1v-6a1 1 0 0 0-1-1h-2.5z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar InvoiceIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded163);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M5 3a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v18a1 1 0 0 1-1 1H6a1 1 0 0 1-1-1V3zm2 9.25a.75.75 0 0 1 .75-.75h8.5a.75.75 0 0 1 0 1.5h-8.5a.75.75 0 0 1-.75-.75zm.75 2.25a.75.75 0 0 0 0 1.5h8.5a.75.75 0 0 0 0-1.5h-8.5zM12 18.25a.75.75 0 0 1 .75-.75h3.5a.75.75 0 0 1 0 1.5h-3.5a.75.75 0 0 1-.75-.75zM13 4a1 1 0 0 0-1 1v1a1 1 0 0 0 1 1h3a1 1 0 0 0 1-1V5a1 1 0 0 0-1-1h-3z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar JewelryIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded164);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M14.935 6.596l.742-1.113a1 1 0 0 0 .063-1.002l-.465-.928A1 1 0 0 0 14.381 3H9.617a1 1 0 0 0-.894.553l-.464.928a1 1 0 0 0 .062 1.002l.742 1.113A7.502 7.502 0 0 0 12 21a7.5 7.5 0 0 0 2.936-14.404zM9.914 7.872l1.253 1.88a1 1 0 0 0 1.664 0l1.253-1.88A6.002 6.002 0 0 1 12 19.5 6 6 0 0 1 9.914 7.872z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar JusticeIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded165);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M12.75 2.75a.75.75 0 0 0-1.5 0V4h-6.5a.75.75 0 0 0 0 1.5H6L2 15a4 4 0 0 0 8 0L6 5.5h5.25v15h-2.5a.75.75 0 0 0 0 1.5h6.5a.75.75 0 0 0 0-1.5h-2.5v-15H18L14 15a4 4 0 0 0 8 0l-4-9.5h1.25a.75.75 0 0 0 0-1.5h-6.5V2.75zM8.371 15L6 9.365 3.627 15h4.745zm12 0L18 9.365 15.627 15h4.745z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar LaptopIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded166);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M4 6a1 1 0 0 1 1-1h14a1 1 0 0 1 1 1v10h1a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h1V6zm13.25 1a.75.75 0 0 1 0 1.5H6.75a.75.75 0 0 1 0-1.5h10.5zM10 16.75a.75.75 0 0 1 .75-.75h2.5a.75.75 0 0 1 0 1.5h-2.5a.75.75 0 0 1-.75-.75z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar LawnIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded167);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M3.748 2A.748.748 0 0 0 3 2.748V10a1 1 0 0 0 1 1h4.748v10.25a.75.75 0 0 0 1.5 0V11h4.753a1 1 0 0 0 1-1V2.748a.748.748 0 0 0-1.497 0V8h-1.38V2.748a.748.748 0 0 0-1.496 0V8h-1.38V2.748a.748.748 0 1 0-1.496 0V8h-1.38V2.748a.748.748 0 1 0-1.495 0V8h-1.38V2.748A.748.748 0 0 0 3.747 2z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M17.748 2.75a.75.75 0 0 1 1.5 0V14H21a1 1 0 0 1 1 1v.498C22 17.432 20.433 22 18.498 22c-1.934 0-3.502-4.568-3.502-6.502V15c.003-.553.452-1 1.004-1h1.748V2.75z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar LeftAlignIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded168);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M5 5a1 1 0 0 0 0 2h14a1 1 0 1 0 0-2H5zm0 8a1 1 0 1 0 0 2h14a1 1 0 1 0 0-2H5zm-1 5a1 1 0 0 1 1-1h9a1 1 0 1 1 0 2H5a1 1 0 0 1-1-1zm1-9a1 1 0 0 0 0 2h9a1 1 0 1 0 0-2H5z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar LetterCheckmarkIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded169);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M17.572 13.54l-2.624 3.419-1.01-1.038a.75.75 0 1 0-1.074 1.047l1.413 1.451a1 1 0 0 0 1.51-.089l2.975-3.877a.75.75 0 1 0-1.19-.913z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M11.827 2a2 2 0 0 0-1.414.586L5.584 7.414A2 2 0 0 0 5 8.828V21a1 1 0 0 0 1 1h9.999c.188 0 .373-.017.552-.05A6.25 6.25 0 0 0 19 10.412V3a1 1 0 0 0-1-1h-6.172zm-1.413 10.5H7.751a.75.75 0 0 0 0 1.5h2a6.25 6.25 0 0 1 .663-1.5zm.922 1.5c.223-.56.549-1.068.955-1.5a4.735 4.735 0 0 1 3.46-1.496c1.256 0 2.398.488 3.248 1.285a4.735 4.735 0 0 1 1.5 3.463c0 1.37-.58 2.604-1.509 3.471a4.732 4.732 0 0 1-3.24 1.277c-.763 0-1.484-.18-2.123-.5a4.77 4.77 0 0 1-2.459-3 4.753 4.753 0 0 1 .168-3zm-1.829 1.5H7.751a.75.75 0 0 0 0 1.5h1.876a6.277 6.277 0 0 1-.12-1.5zm.63 3H7.752a.75.75 0 0 0 0 1.5h3.418a6.261 6.261 0 0 1-1.031-1.5zM10.999 8V4.125L7.124 8h3.875z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar LightBulbIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded170);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M16.886 15.19c-.52.448-.886 1.072-.886 1.758V18a4 4 0 0 1-8 0v-1.052c0-.686-.365-1.31-.886-1.757a7.5 7.5 0 1 1 9.771 0zM14.5 16.5v1.25h-5V16.5h5zm-4.666 2.75a2.499 2.499 0 0 0 4.332 0H9.834zm.223-10.169L12 11.348l1.942-2.267a.75.75 0 0 1 1.14.976l-2.332 2.72V15h-1.5v-2.222l-2.332-2.72a.75.75 0 1 1 1.14-.977z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar LikeSelectedIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded171);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M10.887 2.432a.753.753 0 0 1 .661-.392c.9 0 1.752.386 2.37 1.053.175.19.327.397.456.618.37.634.405 1.314.3 1.923-.103.6-.348 1.172-.596 1.652a.84.84 0 0 0 .747 1.226h4.135c.365-.003.725.079 1.053.238.33.16.62.393.85.679.23.286.397.619.493.974.095.356.118.729.067 1.094l-1.182 8.322a2.646 2.646 0 0 1-.82 1.582 2.39 2.39 0 0 1-1.643.638H7.604a.755.755 0 0 1-.21-.03H4.332c-1.052 0-1.707-.958-1.707-1.874v-8.976c0-.916.655-1.874 1.707-1.874h2.815l3.74-6.853zm-6.756 8.727c0-.138.048-.244.1-.305.05-.06.09-.063.101-.063H6.84v9.713H4.332c-.012 0-.05-.004-.1-.064a.474.474 0 0 1-.1-.305v-8.976z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar LikeIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded172);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M11.511 2a.753.753 0 0 0-.661.392L7.11 9.245H4.295c-1.053 0-1.707.958-1.707 1.875v8.975c0 .917.654 1.875 1.707 1.875h3.062c.067.02.138.03.21.03H17.74a2.391 2.391 0 0 0 1.642-.639c.449-.412.735-.976.82-1.581l1.182-8.323a2.746 2.746 0 0 0-.067-1.093 2.65 2.65 0 0 0-.493-.975 2.483 2.483 0 0 0-.85-.679 2.358 2.358 0 0 0-1.052-.237h-4.135a.84.84 0 0 1-.747-1.226c.247-.48.493-1.053.596-1.653.105-.609.069-1.289-.3-1.923a3.5 3.5 0 0 0-.457-.617A3.23 3.23 0 0 0 11.511 2zm-3.192 8.172l3.61-6.612c.312.083.605.257.846.517.098.106.186.224.26.352.142.244.182.538.118.91-.066.38-.233.795-.451 1.218-.805 1.562.329 3.422 2.086 3.422h4.149a.837.837 0 0 1 .382.087c.123.06.238.15.333.268.096.119.17.262.212.421.043.16.053.328.03.493l-1.182 8.322a1.138 1.138 0 0 1-.348.682.885.885 0 0 1-.61.242H8.32V10.172z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar LinkIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded173);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M18.063 11.599a4.006 4.006 0 0 1-4.868.617l-.98.98a4.005 4.005 0 0 1-.616 4.867l-1.764 1.764a4.004 4.004 0 0 1-5.662-5.663l1.763-1.763a4.006 4.006 0 0 1 4.865-.62l.98-.98a4.005 4.005 0 0 1 .62-4.865l1.764-1.764a4.004 4.004 0 1 1 5.662 5.663l-1.764 1.764zm.35-3.178l-1.764 1.764a2.003 2.003 0 0 1-1.94.517l1.29-1.29a1 1 0 0 0-1.415-1.414l-1.288 1.289a2.003 2.003 0 0 1 .519-1.936l1.764-1.764a2.004 2.004 0 0 1 2.834 2.834zM7.998 14.584l1.288-1.288a2.003 2.003 0 0 0-1.935.52l-1.764 1.763a2.004 2.004 0 0 0 2.834 2.834l1.764-1.764c.525-.525.698-1.27.517-1.94l-1.29 1.29a1 1 0 0 1-1.414-1.415z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar ListSimpleIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded174);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M5 4.002a1 1 0 0 0 0 2h14a1 1 0 1 0 0-2H5zM5 9a1 1 0 0 0 0 2h14a1 1 0 1 0 0-2H5zm0 10a1 1 0 1 0 0 2h14a1 1 0 1 0 0-2H5zm-1-4a1 1 0 0 1 1-1h14a1 1 0 1 1 0 2H5a1 1 0 0 1-1-1z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar LitecoinIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded175);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M13.293 10.008L15.533 2H9.267L6.224 12.489l-2.296.805L3 16.118l2.412-.83L3.464 22h16.943l1.393-4.235H11.123l1.376-4.918 2.802-.965.697-2.823-2.705.949z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar LoansIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded176);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M18.405 7a3 3 0 1 0-5.995.172 3 3 0 1 0-1.991 5.662.951.951 0 0 0-.014.166v2l-2.848-2.848a3 3 0 0 0-4.273.031l-.587.605a1 1 0 0 0 .016 1.409l4.724 4.653A4 4 0 0 0 10.244 20h4.66l1.544 1.543a1 1 0 0 0 1.414 0l3.836-3.836a1 1 0 0 0 0-1.414l-3.122-3.121A4 4 0 0 0 15.748 12h-2.107a2.989 2.989 0 0 0 .759-2.172A3 3 0 0 0 18.405 7zm-6.5 8v-1.5h3.847a2.5 2.5 0 0 1 1.768.732L20.288 17l-3.13 3.129-.001-.002-.002.002-1.629-1.629h-5.282a2.5 2.5 0 0 1-1.754-.719l-4.371-4.304.241-.249a1.496 1.496 0 0 1 1.078-.454c.384 0 .769.145 1.062.439l2.848 2.848a1.5 1.5 0 0 0 1.06.439h4.246a.75.75 0 0 0 0-1.5h-2.75z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar LocationIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded177);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M12.531 21.802C14.318 20.521 20 16.056 20 11a8 8 0 1 0-16 0c0 5.057 5.682 9.522 7.469 10.802a.908.908 0 0 0 1.062 0zM12 15a4 4 0 1 0 0-8 4 4 0 0 0 0 8z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar LockIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded178);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M5 9h1V8a6 6 0 1 1 12 0v1h1a1 1 0 0 1 1 1v11a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1V10a1 1 0 0 1 1-1zm11.5-1v1h-9V8a4.5 4.5 0 0 1 9 0zM14 14a2 2 0 0 1-1 1.732V18a1 1 0 1 1-2 0v-2.268A2 2 0 0 1 12 12a2 2 0 0 1 2 2z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar LogoutIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded179);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M16.295 15.295a1 1 0 0 0 1.414 1.414l3.995-3.995a1.01 1.01 0 0 0 0-1.428L17.71 7.29a1 1 0 1 0-1.414 1.414L18.59 11H8a1 1 0 1 0 0 2h10.59l-2.295 2.295z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M11 19a1 1 0 1 1 0 2H4a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h7a1 1 0 1 1 0 2H5v14h6z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar LoyaltyCardIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded180);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M3.001 5a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h17.997a1 1 0 0 0 1-1V6a1 1 0 0 0-1-1H3.001zm5.223 3.38a.5.5 0 0 0-.949 0l-.67 2.004-2.113.019a.5.5 0 0 0-.293.901l1.698 1.257-.635 2.015a.5.5 0 0 0 .768.557l1.72-1.226 1.72 1.226a.5.5 0 0 0 .767-.557l-.635-2.015 1.698-1.257a.5.5 0 0 0-.293-.901l-2.113-.02-.67-2.002zm4.775 1.868a.75.75 0 0 1 .75-.75h5.5a.75.75 0 0 1 0 1.5h-5.5a.75.75 0 0 1-.75-.75zm.75 2.754a.75.75 0 0 0 0 1.5h5.5a.75.75 0 1 0 0-1.5h-5.5z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar LuggageIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded181);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M9 3.499v3.5H6.005a1 1 0 0 0-1 1v11a1 1 0 0 0 1 1h1.514a1.75 1.75 0 1 0 3.465 0h2.035a1.75 1.75 0 1 0 3.465 0h1.521a1 1 0 0 0 1-1v-11a1 1 0 0 0-1-1h-3.003v-3.5h1.25a.75.75 0 0 0 0-1.5h-8.5a.75.75 0 1 0 0 1.5H9zm1.5 0v3.5h3v-3.5h-3z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar MedicalIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded182);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M7.003 3v2h-4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h18a1 1 0 0 0 1-1V6a1 1 0 0 0-1-1h-4V3a1 1 0 0 0-1-1h-8a1 1 0 0 0-1 1zm1.5.5V5h7V3.5h-7zm3.995 3.75a1 1 0 0 1 1 1v2.25h2.25a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1h-2.25v2.25a1 1 0 0 1-1 1h-1a1 1 0 0 1-1-1V13.5h-2.25a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h2.25V8.25a1 1 0 0 1 1-1h1z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar MembershipsIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded183);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M3 5a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h18a1 1 0 0 0 1-1V6a1 1 0 0 0-1-1H3zm11.75 10.5a.75.75 0 0 0 0 1.5h4.498a.75.75 0 0 0 0-1.5H14.75zm1.826-7.74a.5.5 0 0 1 .948 0l.54 1.61 1.699.016a.5.5 0 0 1 .293.902l-1.366 1.011.51 1.62a.5.5 0 0 1-.766.558l-1.384-.986-1.384.986a.5.5 0 0 1-.767-.557l.51-1.621-1.365-1.011a.5.5 0 0 1 .293-.902l1.7-.015.539-1.612zm-6.325 2.49c0 .815-.433 1.528-1.082 1.923A4.002 4.002 0 0 1 12.001 16v.444a.556.556 0 0 1-.556.556H4.556A.556.556 0 0 1 4 16.444V16a4.002 4.002 0 0 1 2.832-3.827A2.249 2.249 0 0 1 8 8a2.25 2.25 0 0 1 2.25 2.25z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar MemorialsIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded184);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M14 7a2 2 0 1 1-4 0c0-1.105.895-5 2-5s2 3.895 2 5z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M16 14.938V10a1 1 0 0 0-1-1H9a1 1 0 0 0-1 1v4.938H5.938c-.553 0-1.008.45-.93.997A7.061 7.061 0 0 0 8 20.759V21a1 1 0 0 0 1 1h6a1 1 0 0 0 1-1v-.241a7.061 7.061 0 0 0 2.992-4.824c.078-.547-.377-.997-.93-.997H16z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar MenuIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded185);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M5 5a1 1 0 0 0 0 2h14a1 1 0 1 0 0-2H5zm-1 7a1 1 0 0 1 1-1h14a1 1 0 1 1 0 2H5a1 1 0 0 1-1-1zm0 6a1 1 0 0 1 1-1h14a1 1 0 1 1 0 2H5a1 1 0 0 1-1-1z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar MerchantIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded186);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M19.345 4.835l1.286 2.572c.213.426.444 1.085.3 1.843a3.991 3.991 0 0 1-.93 1.896V19a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1v-7.857a3.991 3.991 0 0 1-.928-1.894c-.143-.757.086-1.415.298-1.84l1.284-2.573A1.51 1.51 0 0 1 6.006 4h11.988a1.51 1.51 0 0 1 1.35.835zm-1.342.67l1.287 2.573c.139.278.225.587.167.892a2.5 2.5 0 0 1-4.955-.47 2.5 2.5 0 1 1-5 0 2.5 2.5 0 0 1-4.955.47c-.058-.305.028-.614.166-.891l1.284-2.573L6 5.5h12l.003.006zM7 15a2 2 0 1 1 4 0v3.5H7V15zm7-2a1 1 0 0 0-1 1v1a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1v-1a1 1 0 0 0-1-1h-2z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar MessageCenterIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded187);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M20 10h1a1 1 0 0 1 1 1v7a1 1 0 0 1-1 1h-5.445l-2.904 2.492A1 1 0 0 1 11 20.733V19h-1a1 1 0 0 1-1-1v-4H3a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h16a1 1 0 0 1 1 1v6zM3.5 6.018V4.5h.386L11 8.769 18.114 4.5h.386v1.518l-6.986 4.191a1 1 0 0 1-1.028 0L3.5 6.018zm9 11.482h-2v-6h10v6H15l-2.5 2.145V17.5z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar MessageIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded188);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M2.999 5a1 1 0 0 0-1 1v11a1 1 0 0 0 1 1h3v3a1 1 0 0 0 1.65.76L12.03 18H21a1 1 0 0 0 1-1V6a1 1 0 0 0-1-1H3zM5 9.719a.75.75 0 0 1 .75-.75h12.5a.75.75 0 0 1 0 1.5H5.75a.75.75 0 0 1-.75-.75zm.75 2.75a.75.75 0 1 0 0 1.5h12.5a.75.75 0 0 0 0-1.5H5.75z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar MgmIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded189);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M5.23 5.825a3.726 3.726 0 0 1-.323-.609C4.822 5 4.81 4.86 4.823 4.787v-.004c.005-.026.012-.065.125-.124.16-.082.505-.18 1.173-.18h7.302l2.856 5.867a.993.993 0 0 0 .897.544h2.795c.528 0 .95-.392.985-.874.183-2.57-.217-4.29-.892-5.399C19.384 3.501 18.409 3 17.563 3H6.121c-.788 0-1.432.108-1.919.36-.528.272-.831.695-.918 1.182-.078.44.034.866.16 1.189.126.32.295.613.432.83l2.067 3.92c.193.366.662.514 1.047.331a.722.722 0 0 0 .349-.992L5.245 5.85l-.015-.025z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M15.597 12.128H4.357c-1.165 0-1.477.408-1.319 1.502l.909 6.217.005.035c.126.874.161 1.118 1.109 1.118h10.536v-8.872zm-5.548 3.095c0 .595-.401 1.101-.96 1.289v1.179a.468.468 0 0 1-.48.455.468.468 0 0 1-.48-.455v-1.18c-.56-.187-.961-.693-.961-1.288 0-.755.645-1.367 1.44-1.367.796 0 1.44.612 1.44 1.367z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M19.854 12.128h-2.806V21h2.806c.95 0 .948-.118.937-.865a18.77 18.77 0 0 1-.002-.288v-6.654l.002-.287c.011-.731.012-.778-.938-.778z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar MicrophoneIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded190);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M12 2a4 4 0 0 0-4 4v3H5.91a.91.91 0 0 0-.91.91V12a7.001 7.001 0 0 0 6.238 6.959V20.5H8.75a.75.75 0 0 0 0 1.5h6.5a.75.75 0 0 0 0-1.5h-2.488v-1.541A7.001 7.001 0 0 0 19 12V9.91a.91.91 0 0 0-.91-.91H16V6a4 4 0 0 0-4-4zm-4 8.5V12a4 4 0 0 0 8 0v-1.5h1.5V12a5.5 5.5 0 1 1-11 0v-1.5H8z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar MilitaryIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded191);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M18.163 8.598l-3.121 2.23a6 6 0 1 1-6.084 0l-3.12-2.23A2 2 0 0 1 5 6.971V3a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v3.97a2 2 0 0 1-.837 1.628zm-5.689 3.818a.5.5 0 0 0-.948 0l-.67 2.003-2.113.019a.5.5 0 0 0-.293.901l1.698 1.257-.635 2.015a.5.5 0 0 0 .767.557L12 17.942l1.72 1.226a.5.5 0 0 0 .767-.557l-.635-2.015 1.698-1.257a.5.5 0 0 0-.293-.901l-2.112-.02-.67-2.002z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar MoveIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded192);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M15.707 6.707a1 1 0 0 1-1.414 0L13 5.414V11h5.586l-1.293-1.293a1 1 0 0 1 1.414-1.414l2.993 2.993a1.01 1.01 0 0 1 0 1.428l-2.993 2.993a1 1 0 0 1-1.414-1.414L18.586 13H13v5.586l1.293-1.293a1 1 0 1 1 1.414 1.414L12.714 21.7a1.01 1.01 0 0 1-1.428 0l-2.993-2.993a1 1 0 1 1 1.414-1.414L11 18.586V13H5.414l1.293 1.293a1 1 0 1 1-1.414 1.414L2.3 12.714a1.01 1.01 0 0 1 0-1.428l2.993-2.993a1 1 0 0 1 1.414 1.414L5.414 11H11V5.414L9.707 6.707a1 1 0 1 1-1.414-1.414L11.286 2.3a1.01 1.01 0 0 1 1.428 0l2.993 2.993a1 1 0 0 1 0 1.414z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar MovieIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded193);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M3.483 7.068a1 1 0 0 1 .707-1.225l1.981-.53L4.24 8.659a1.003 1.003 0 0 0-.498-.625l-.258-.966zm2.616 1.37L8.22 4.763 11 4.018 8.88 7.693l-2.781.745zm4.829-1.294l2.122-3.675 2.78-.745L13.71 6.4l-2.782.745zm4.83-1.294l2.112-3.66a1 1 0 0 1 1.067.737l.26.966a1 1 0 0 1-.708 1.225l-2.73.732z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M4 10a1 1 0 0 1 .32-.732L7.051 12h2.12l-3-3H19a1 1 0 0 1 1 1v9a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1v-9zm10.173 2h-2.121l-3-3h2.12l3 3zm4.987-.013A1.004 1.004 0 0 1 19 12h-1.948l-3-3h2.12l2.988 2.987z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar MusicIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded194);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M9 4a1 1 0 0 0-1 1v9.535A4 4 0 1 0 10 18V8h10v4.535A4 4 0 1 0 22 16V5a1 1 0 0 0-1-1H9z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar MusicalInstrumentsIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded195);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M3 5a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h17.997a1 1 0 0 0 1-1V8.085C21.998 8.057 22 8.029 22 8V6a1 1 0 0 0-1-1H3zm12.131 8V9h-1.633v4a1 1 0 0 1-.747.968v.658a573.018 573.018 0 0 0 .003 2.874h3.125l-.002-.482c-.002-.61-.002-1.456-.001-2.394v-.657a1 1 0 0 1-.745-.967zm2.245.97v.656a573.018 573.018 0 0 0 .003 2.874h3.117V9h-2.365v4a1 1 0 0 1-.755.97zM10.502 13a1 1 0 0 0 .75.968l-.001.656a576.798 576.798 0 0 0 .003 2.876H8.13l-.002-.487a573.56 573.56 0 0 1-.001-2.387v-.658A1 1 0 0 0 8.873 13V9h1.63v4zM6.63 17.5H3.5V9h2.378v4a1 1 0 0 0 .748.968v.656a575.361 575.361 0 0 0 .003 2.876z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar MuteIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded196);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M20.715 2.223a.75.75 0 0 1 0 1.061L3.283 20.716a.75.75 0 0 1-1.062-1.06L5.877 16H3a1 1 0 0 1-1-1V9a1 1 0 0 1 1-1h4l5.342-4.663C12.99 2.772 14 3.232 14 4.09v3.787l5.654-5.654a.75.75 0 0 1 1.06 0zM8.665 17.454l3.677 3.212c.647.565 1.658.106 1.658-.753V12.12l-5.335 5.335z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar NavigateIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded197);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M9.73 14.27l-7.123-3.068c-.819-.352-.806-1.518.02-1.854l17.884-7.254c.154-.062.318-.094.484-.094C21.55 2 22 2.45 22 3.005c0 .166-.032.33-.094.484l-7.254 17.884c-.336.826-1.502.839-1.854.02L9.73 14.27z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar NightIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded198);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M19.901 16.8c.14-.214-.115-.46-.344-.345A8.267 8.267 0 0 1 9.8 3.435c.173-.188.01-.5-.235-.427A9.19 9.19 0 0 0 3 11.814a9.186 9.186 0 0 0 16.901 4.987z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar NoIconIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded199);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M6 6v11.998h11.998V5.999H5.999zM5 4a1 1 0 0 0-1 1v13.997a1 1 0 0 0 1 1h13.997a1 1 0 0 0 1-1V5a1 1 0 0 0-1-1H5z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar NotificationPreferencesIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded200);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M15.313 13.751a2.254 2.254 0 1 0 0-4.508 2.254 2.254 0 0 0 0 4.508z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M13.998 3.997a2 2 0 0 0-4 0v.341c-2.33.824-4 3.047-4 5.66v6h-1a1 1 0 1 0 0 2l14-.001a1 1 0 0 0 .888-1.46.758.758 0 0 0 .102-.139l1.907-3.302a.76.76 0 0 0-.278-1.038l-.971-.56.971-.561a.76.76 0 0 0 .278-1.039L19.99 6.596a.76.76 0 0 0-1.038-.278l-.972.56v-1.12a.76.76 0 0 0-.76-.76h-1.904a5.98 5.98 0 0 0-1.317-.66v-.34zm.148 3.932V6.497h2.333V7.93l.428.203c.182.087.356.188.52.301l.391.27 1.242-.716 1.167 2.02-1.242.717.038.472a3.785 3.785 0 0 1 0 .602l-.038.473 1.24.716-1.166 2.02-1.241-.716-.39.27a3.718 3.718 0 0 1-.52.3l-.429.204v1.432h-2.333v-1.432l-.428-.204a3.712 3.712 0 0 1-.52-.3l-.39-.27-1.242.716-1.167-2.02 1.241-.717-.038-.472a3.787 3.787 0 0 1 0-.602l.038-.472-1.24-.717 1.166-2.02 1.242.716.39-.27c.164-.113.338-.214.52-.3l.428-.204z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M11.998 21.997a3 3 0 0 1-2.959-2.5h5.917a3 3 0 0 1-2.958 2.5z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar NotificationIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded201);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M12 2a2 2 0 0 1 2 2v.341c2.33.824 4 3.047 4 5.659v6h1a1 1 0 1 1 0 2H5a1 1 0 1 1 0-2h1v-6a6.003 6.003 0 0 1 4-5.659V4a2 2 0 0 1 2-2zM9.041 19.5a3 3 0 0 0 5.918 0H9.04z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar NumberPadIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded202);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M6 3a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1V4a1 1 0 0 0-1-1H6zm5 0a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1V4a1 1 0 0 0-1-1h-2zm4 1a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1h-2a1 1 0 0 1-1-1V4zM6 8a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1V9a1 1 0 0 0-1-1H6zm4 1a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1h-2a1 1 0 0 1-1-1V9zm6-1a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1V9a1 1 0 0 0-1-1h-2zM5 14a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1H6a1 1 0 0 1-1-1v-2zm6-1a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1v-2a1 1 0 0 0-1-1h-2zm4 1a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1h-2a1 1 0 0 1-1-1v-2zm-4 4a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1v-2a1 1 0 0 0-1-1h-2z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar NumberedListIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded203);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M6.368 11h1.368c.18 0 .276-.096.276-.276V2.696c0-.18-.096-.276-.276-.276H6.572c-.156 0-.252.072-.312.228-.324.792-1.032 1.26-2.028 1.26-.168 0-.24.096-.24.276v.804c0 .18.096.276.276.276h1.824v5.46c0 .18.096.276.276.276zM12 4.002a1 1 0 1 0 0 2h7a1 1 0 1 0 0-2h-7zM12 9a1 1 0 1 0 0 2h7a1 1 0 1 0 0-2h-7zm0 10a1 1 0 1 0 0 2h7a1 1 0 1 0 0-2h-7zm-1-4a1 1 0 0 1 1-1h7a1 1 0 1 1 0 2h-7a1 1 0 0 1-1-1zm-1.891 6H3.3c-.18 0-.276-.096-.276-.276v-1.068a.39.39 0 0 1 .168-.336c.96-.744 1.416-1.104 2.688-2.136 1.08-.876 1.428-1.536 1.428-2.22 0-.684-.42-1.068-1.104-1.068-.732 0-1.092.444-1.176 1.104-.012.168-.108.264-.276.264h-1.38c-.18 0-.276-.096-.264-.288.12-1.704 1.248-2.76 3.12-2.76 1.932 0 3.108 1.02 3.108 2.616 0 1.284-.828 2.316-1.98 3.192-.354.272-.646.484-.91.676-.354.257-.656.477-.986.752.264-.012.432-.012.708-.012h2.94c.18 0 .276.096.276.276v1.008c0 .18-.096.276-.276.276z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar OccasionIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded204);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M9.75 2a.75.75 0 0 0-.75.75V4H5a1 1 0 0 0-1 1v14a1 1 0 0 0 1 1h14a1 1 0 0 0 1-1V5a1 1 0 0 0-1-1h-4V2.75a.75.75 0 0 0-1.5 0V4h-3V2.75A.75.75 0 0 0 9.75 2zM5.5 5.5H9v.75a.75.75 0 0 0 1.5 0V5.5h3v.75a.75.75 0 0 0 1.5 0V5.5h3.5V10h-13V5.5zm6.974 5.916a.5.5 0 0 0-.948 0l-.67 2.003-2.113.019a.5.5 0 0 0-.293.901l1.698 1.257-.635 2.015a.5.5 0 0 0 .767.557L12 16.942l1.72 1.226a.5.5 0 0 0 .767-.557l-.635-2.015 1.698-1.257a.5.5 0 0 0-.293-.901l-2.112-.02-.67-2.002z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar OffersIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded205);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M12.817 3.422a1 1 0 0 0-1.635 0l-.592.841a1 1 0 0 1-1.238.332l-.933-.432a1 1 0 0 0-1.416.817L6.91 6.005a1 1 0 0 1-.905.905l-1.025.093a1 1 0 0 0-.817 1.416l.432.933a1 1 0 0 1-.332 1.238l-.84.592a1 1 0 0 0 0 1.635l.84.593a1 1 0 0 1 .332 1.237l-.432.934a1 1 0 0 0 .817 1.416l1.025.092a1 1 0 0 1 .905.906l.093 1.025a1 1 0 0 0 1.416.817l.933-.432a1 1 0 0 1 1.238.332l.592.84a1 1 0 0 0 1.635 0l.593-.84a1 1 0 0 1 1.237-.332l.934.432a1 1 0 0 0 1.416-.817l.092-1.025a1 1 0 0 1 .906-.906l1.025-.092a1 1 0 0 0 .817-1.416l-.432-.934a1 1 0 0 1 .332-1.237l.84-.593a1 1 0 0 0 0-1.635l-.84-.592a1 1 0 0 1-.332-1.238l.432-.933a1 1 0 0 0-.817-1.416l-1.025-.093a1 1 0 0 1-.906-.905l-.092-1.025a1 1 0 0 0-1.416-.817l-.934.432a1 1 0 0 1-1.237-.332l-.593-.84zm1.659 4.29a.75.75 0 0 0-1.025.274L9.25 15.264a.75.75 0 0 0 1.3.75l4.201-7.278a.75.75 0 0 0-.274-1.025zm2.04 5.788a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0zM9 12a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar OfficeSuppliesIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded206);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M2 7.883a1 1 0 0 1 .876-.993l14.628-1.828A4 4 0 0 1 22 9.032V11a1 1 0 0 1-1 1h-1v1a1 1 0 0 1-1 1h-9v2h11a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V7.883zM6 16a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar OfflineIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded207);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M19.192 6.927L7.12 19H17v-.027a4.5 4.5 0 0 0 2.849-8.312 4.507 4.507 0 0 0-.657-3.734zM3.273 20.726a.75.75 0 0 1-1.055-1.067l1.569-1.569A4.5 4.5 0 0 1 6 10.027a4 4 0 0 1 6.051-3.418 4.504 4.504 0 0 1 4.661-1.444l2.945-2.945a.75.75 0 0 1 1.068 1.053l-.005.005-17.44 17.44a1.214 1.214 0 0 0-.007.008z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar OnlineShoppingIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded208);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M16.721 6.556h-1.889v-.612a.944.944 0 1 1 1.89 0v.612z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M6 2a1 1 0 0 0-1 1v18a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-5h.5a2.5 2.5 0 0 0 2.47-2.88l-.914-5.945a2.5 2.5 0 0 0-1.387-1.873 3.946 3.946 0 0 0-4.035-3.3A3.544 3.544 0 0 0 15.501 2H6zm13.926 12.405a.995.995 0 0 1-.426.095h-7.447a1 1 0 0 1-.988-1.152l.915-5.945a1 1 0 0 1 .988-.847h.364v-.612a2.444 2.444 0 1 1 4.89 0v.612h.363a.997.997 0 0 1 .989.847l.914 5.945a1 1 0 0 1-.562 1.057zM11.998 20a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar OnlineIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded209);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M19.849 10.66a4.5 4.5 0 0 0-7.799-4.05A4 4 0 0 0 6 10.027a4.5 4.5 0 0 0 1 8.946V19h10v-.027a4.5 4.5 0 0 0 2.849-8.312z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar OpenBrowserIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded210);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M3.5 16.75V7.254h17v9.496H15v1.5h6a1 1 0 0 0 1-1v-14a1 1 0 0 0-1-1H3a1 1 0 0 0-1 1v14a1 1 0 0 0 1 1h6.007v-1.5H3.5z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M12 22.038a1 1 0 0 1-1-1V12.16l-2.295 2.295a1 1 0 0 1-1.414-1.414l3.995-3.995a1.01 1.01 0 0 1 1.428 0l3.995 3.995a1 1 0 1 1-1.414 1.414L13 12.16v8.878a1 1 0 0 1-1 1z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar OrderAheadIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded211);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M19 21a1 1 0 0 1-1 1h-1c-1.657 0-3-2.686-3-6 0-2.613.835-4.835 2-5.659V3a1 1 0 0 1 1-1h1a1 1 0 0 1 1 1v18zM12.25 2.003a.75.75 0 0 1 .75.75V8a4.001 4.001 0 0 1-2.5 3.709V21a1 1 0 0 1-1 1h-1a1 1 0 0 1-1-1v-9.291A4.001 4.001 0 0 1 5 7.999V2.754a.75.75 0 0 1 1.5 0V7h1.75V2.753a.75.75 0 0 1 1.5 0V7h1.75V2.753a.75.75 0 0 1 .75-.75z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar OthersIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded212);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M4.237 10.691l-.751.45-.003.002a1 1 0 0 0 .003 1.714l7.486 4.491a2 2 0 0 0 2.056 0l7.485-4.491a1 1 0 0 0 .005-1.712l-.005-.003-.75-.45-5.963 3.576-.001.001-1.023.614a1.51 1.51 0 0 1-1.553 0L4.237 10.69z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M10.97 2.286a2 2 0 0 1 2.058 0l7.485 4.49c.364.22.523.612.478.982a.989.989 0 0 1-.478.734l-7.485 4.49-.001.001a2 2 0 0 1-2.057 0L3.486 8.491a1.001 1.001 0 0 1-.059-1.678m7.543-4.527l-7.484 4.49 7.484-4.49zM3.486 15.507l.75-.45 6.987 4.19a1.51 1.51 0 0 0 1.553 0l6.986-4.19.75.45a1 1 0 0 1 0 1.715l-7.484 4.49a2 2 0 0 1-2.058 0l-7.484-4.49a1 1 0 0 1 0-1.715z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar OverflowIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded213);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M14 12a2 2 0 1 1-4 0 2 2 0 0 1 4 0zm0-7a2 2 0 1 1-4 0 2 2 0 0 1 4 0zm0 14a2 2 0 1 1-4 0 2 2 0 0 1 4 0z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar PackageSizeIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded214);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M17 2.75a.75.75 0 0 1 .75-.75h3.49c.42 0 .76.34.76.76v3.49a.75.75 0 0 1-1.5 0V3.5h-2.75a.75.75 0 0 1-.75-.75zM7 21.25a.75.75 0 0 1-.75.75H2.764a.76.76 0 0 1-.76-.76v-3.486a.75.75 0 0 1 1.5 0V20.5H6.25a.75.75 0 0 1 .75.75z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M6 5a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V6a1 1 0 0 0-1-1H6zm.5 11.75c0 .414.336.75.75.75h1.5a.75.75 0 0 0 0-1.5h-1.5a.75.75 0 0 0-.75.75zM7.25 15a.75.75 0 0 1 0-1.5h3.5a.75.75 0 0 1 0 1.5h-3.5z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar PartySuppliesIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded215);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M19 9a7.003 7.003 0 0 1-5.127 6.746l.403.807A1 1 0 0 1 13.382 18h-.632v3.25a.75.75 0 0 1-1.5 0V18h-.632a1 1 0 0 1-.894-1.447l.403-.807A7 7 0 1 1 19 9z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar PasskeyIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded216);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M9.692 11.473c2.55 0 4.616-2.12 4.616-4.736C14.308 4.12 12.242 2 9.692 2S5.077 4.12 5.077 6.737c0 2.616 2.065 4.736 4.615 4.736z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M19.704 14.903a3.593 3.593 0 0 0 1.665-1.35 3.73 3.73 0 0 0 .631-2.08 3.73 3.73 0 0 0-1.05-2.605 3.54 3.54 0 0 0-2.538-1.077 3.54 3.54 0 0 0-2.539 1.077 3.73 3.73 0 0 0-1.05 2.605c0 .695.196 1.378.558 1.962.361.588.88 1.058 1.492 1.354v5.632l1.538 1.58 2.566-2.634-1.538-1.578 1.538-1.58-1.273-1.306zM18.41 9.365c.274 0 .535.11.727.308.193.198.3.466.3.746 0 .28-.107.549-.3.746a1.014 1.014 0 0 1-1.453 0 1.068 1.068 0 0 1-.3-.746c0-.28.107-.548.3-.746.192-.197.454-.308.727-.308z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M13.735 13.57a5.408 5.408 0 0 0 1.6 2.103v5.798H2v-2.104c0-1.673.65-3.28 1.804-4.464a6.076 6.076 0 0 1 4.35-1.851h3.077a6.013 6.013 0 0 1 2.504.517z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar PasswordInputIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded217);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M17.276 15.477h1.32c.18 0 .276-.096.276-.276V9.276c0-.18-.096-.276-.276-.276h-1.32c-.18 0-.276.096-.276.276v5.925c0 .18.096.276.276.276z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M8.5 11.75a1.75 1.75 0 1 1-3.5 0 1.75 1.75 0 0 1 3.5 0zm6 0a1.75 1.75 0 1 1-3.5 0 1.75 1.75 0 0 1 3.5 0z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M2 5a1 1 0 0 1 1-1h18a1 1 0 0 1 1 1v14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V5zm1.5 13.5v-13h17v13h-17z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar PauseIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded218);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M7 6a1 1 0 0 0-1 1v10a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1V7a1 1 0 0 0-1-1H7zm8 0a1 1 0 0 0-1 1v10a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1V7a1 1 0 0 0-1-1h-2z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar PayLaterIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded219);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M12 3v3a6 6 0 1 0 6 6h-1.5A4.5 4.5 0 1 1 12 7.5v3.887c0 .619.203.617.756.612H16.5A4.5 4.5 0 0 0 12 7.5V6a6 6 0 0 1 6 5.998h3V12a9 9 0 1 1-9-9z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar PayMonthlyIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded220);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M9.748 2a.75.75 0 0 0-.75.75V4h-4a1 1 0 0 0-1 1v14a1 1 0 0 0 1 1H19a1 1 0 0 0 1-1V9c0-.022 0-.044-.002-.066V5a1 1 0 0 0-1-1h-4V2.75a.75.75 0 1 0-1.5 0V4h-3V2.75a.75.75 0 0 0-.75-.75zm-4.25 3.5h3.5v.75a.75.75 0 1 0 1.5 0V5.5h3v.75a.75.75 0 0 0 1.5 0V5.5h3.5V8h-13V5.5zm5.999 6.015a.218.218 0 0 0-.216.184l-.757 4.785H9.19a.19.19 0 0 1-.186-.23L9.96 10.2a.235.235 0 0 1 .221-.2h2.3c.993-.005 1.85.707 1.847 1.67-.256-.131-.586-.155-.931-.155h-1.901zm-.147 2.426h1.058c.935 0 1.728-.682 1.872-1.605.011-.07.017-.181.019-.25-.238-.124-.559-.152-.864-.154h-1.604c-.124 0-.178.096-.194.192l-.287 1.817zm3.319-1.4a2.05 2.05 0 0 0 .02-.236c.64.335 1.013 1.01.896 1.753a2.16 2.16 0 0 1-2.131 1.817h-.668c-.108 0-.2.078-.216.184l-.278 1.744a.238.238 0 0 1-.235.197h-1.123a.193.193 0 0 1-.191-.223l.51-3.218a.238.238 0 0 1 .235-.2h1.05a2.16 2.16 0 0 0 2.13-1.818z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar PayoutsIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded221);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M15.75 17.75a1.25 1.25 0 1 0 0-2.5 1.25 1.25 0 0 0 0 2.5z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M6 3a1 1 0 0 1 1-1h6a1 1 0 0 1 1 1v1h1a1 1 0 0 1 1 1v8h5a1 1 0 0 1 1 1v5a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1h1V3zm1 4a1 1 0 0 0-1 1v1h3V8a1 1 0 0 0-1-1H7zm4 1a1 1 0 0 1 1-1h1a1 1 0 0 1 1 1v1h-3V8zm-4 3a1 1 0 0 0-1 1v1h3v-1a1 1 0 0 0-1-1H7zm-1 5a1 1 0 0 1 1-1h1a1 1 0 0 1 1 1v1H6v-1zm6-5a1 1 0 0 0-1 1v1h3v-1a1 1 0 0 0-1-1h-1zm-1 7.5v-4h9.5v4H11z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar PaypalAppIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded222);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M5 4a1 1 0 0 0-1 1v14a1 1 0 0 0 1 1h14a1 1 0 0 0 1-1V5a1 1 0 0 0-1-1H5zm6.121 4.893a.273.273 0 0 0-.27.23l-.946 5.982H8.238a.238.238 0 0 1-.233-.286L9.2 7.25A.294.294 0 0 1 9.478 7h2.874c1.242-.006 2.313.884 2.309 2.088-.32-.165-.732-.194-1.164-.195h-2.376zm-.184 3.032h1.323A2.37 2.37 0 0 0 14.6 9.92c.014-.088.021-.226.023-.312-.297-.155-.698-.19-1.08-.193H11.54c-.156 0-.224.12-.243.24l-.36 2.271zm4.148-1.749c.016-.1.022-.192.026-.295.799.419 1.266 1.263 1.12 2.19a2.7 2.7 0 0 1-2.664 2.272h-.835a.273.273 0 0 0-.27.23l-.348 2.181a.298.298 0 0 1-.293.246h-1.405a.242.242 0 0 1-.238-.28l.638-4.021a.297.297 0 0 1 .293-.252h1.312a2.7 2.7 0 0 0 2.664-2.27z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar PaypalAssistantIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded223);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M18.4 3.922l-1.983.805 1.982.766.743 1.959.828-1.96 1.897-.765-1.897-.805-.828-1.92-.743 1.92zM4 20.386l1.042-11.08A2.543 2.543 0 0 1 7.575 7h7.879a2.543 2.543 0 0 1 2.534 2.762l-.442 5.121a2.543 2.543 0 0 1-2.534 2.325h-6.13c-.818 0-1.586.393-2.064 1.056l-1.803 2.503A.561.561 0 0 1 4 20.387zm4.441-8.356l2.201-.876.825-2.09.92 2.09 2.105.876-2.105.834-.92 2.132-.825-2.132-2.2-.834z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar PaypalBalanceIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded224);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M19 5v2h2a1 1 0 0 1 1 1v2.526h-2a2 2 0 0 0-2 2v.947a2 2 0 0 0 2 2h2V18a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1h15a1 1 0 0 1 1 1zM3.5 7h14V5.5h-14V7zm7.682 3.368a.522.522 0 0 1 .23-.052h2.178c.271 0 .523.019.748.055a3.183 3.183 0 0 1 .467.113c.022.007.043.016.065.024l.02.008c.043-.6-.123-1.018-.41-1.337-.42-.47-1.162-.679-2.12-.679H9.773a.398.398 0 0 0-.393.338l-1.157 7.386a.24.24 0 0 0 .236.278h1.524l.904-5.735a.534.534 0 0 1 .295-.399zm3.508.465a2.303 2.303 0 0 0-.41-.099 4.358 4.358 0 0 0-.69-.05h-2.023a.35.35 0 0 0-.343.296l-.365 2.338a.716.716 0 0 1 .124-.012h.816c.432 0 .819-.049 1.16-.148.863-.25 1.444-.815 1.734-1.714a4.54 4.54 0 0 0 .145-.555 2.227 2.227 0 0 0-.148-.056zm.502.216c.091.062.177.13.247.21.297.341.386.807.32 1.362-.007.05-.015.1-.025.149-.32 1.657-1.417 2.23-2.818 2.23H12.7a.349.349 0 0 0-.344.296l-.304 1.908a.348.348 0 0 1-.343.296h-1.255c-.116 0-.226-.104-.207-.232.024-.162.51-3.24.51-3.24a.396.396 0 0 1 .39-.338l.626.002c2.52 0 3.193-1.546 3.419-2.643z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M20 11.526a1 1 0 0 0-1 1v.947a1 1 0 0 0 1 1h2v-2.947h-2z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar PaypalUsdIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded225);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M14.255 2.07H8.319a1.35 1.35 0 0 0-1.335 1.136l-.418 2.69v.02H4.574a.956.956 0 0 0-.956.956c0 .537.438.956.956.976h1.693L5.968 9.7l-.02.14H3.956a.956.956 0 0 0-.956.956.97.97 0 0 0 .956.956H5.65l-.916 5.797-.299 1.932-.16 1.036a1.348 1.348 0 0 0 1.336 1.554h4.462c.657 0 1.215-.478 1.334-1.136l.857-5.318h2.092c3.764 0 6.832-3.108 6.773-6.893-.06-3.725-3.168-6.653-6.873-6.653zM8.219 7.849l6.016.02c.538 0 .996.438.996.996a.999.999 0 0 1-.996.996H7.9l.32-2.012zm6.056 5.816h-2.51c-.657 0-1.215.479-1.335 1.136l-.856 5.338H6.307l1.295-8.366h6.633a2.912 2.912 0 0 0 2.908-2.908 2.925 2.925 0 0 0-2.908-2.909l-5.697-.02.299-1.912h5.537c2.71 0 4.9 2.231 4.841 4.94-.08 2.63-2.29 4.701-4.94 4.701z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar PendingPausedIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded226);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M17.254 18a.75.75 0 0 1-.75-.75v-3a.75.75 0 0 1 1.5 0v3a.75.75 0 0 1-.75.75zm-3.75-.75a.75.75 0 0 0 1.5 0v-3a.75.75 0 0 0-1.5 0v3z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M12 21a9 9 0 1 1 8.993-8.653 6.25 6.25 0 0 1-8.647 8.646c-.114.005-.23.007-.346.007zm.75-15.235v4.5a6.271 6.271 0 0 0-1.5 1.146V5.766a.75.75 0 0 1 1.5 0zm-5.47 8.08l3.661-2.089a6.232 6.232 0 0 0-1.247 2.439l-1.67.953a.75.75 0 1 1-.744-1.302zm8.47 6.655a4.75 4.75 0 1 0 0-9.5 4.75 4.75 0 0 0 0 9.5z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar PersonalInfoIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded227);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M16.25 15.25a.25.25 0 0 1 .25.25v3.253a.25.25 0 0 1-.25.25h-1a.25.25 0 0 1-.25-.25V15.5a.25.25 0 0 1 .25-.25h1zm-.5-1a1 1 0 1 0 0-2 1 1 0 0 0 0 2z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M16 22H5a1 1 0 0 1-1-1v-3a8.004 8.004 0 0 1 5.664-7.653 4.5 4.5 0 1 1 5.68-.834 6.25 6.25 0 0 1 1.64 12.366A4.049 4.049 0 0 1 16 22zm4.455-6.904a4.75 4.75 0 1 1-4.576-4.094h-.001a4.752 4.752 0 0 1 4.577 4.094z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar PersonalSavingsIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded228);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M7 3.5a1 1 0 0 0-1 1v1a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1v-1a1 1 0 0 0-1-1H7zm6.498 11.627a.75.75 0 0 0 0 1.5h1.625v1.625a.75.75 0 1 0 1.5 0v-1.625h1.625a.75.75 0 1 0 0-1.5h-1.625v-1.625a.75.75 0 1 0-1.5 0v1.625h-1.625z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M6.998 8.002a1 1 0 0 0-1 1v1a1 1 0 0 0 1 1h4.688a6.274 6.274 0 0 0-1.552 2H6.998a1 1 0 0 0-1 1v1a1 1 0 0 0 1 1h2.505a6.23 6.23 0 0 0 .412 2H6.998a1 1 0 0 0-1 1v1a1 1 0 0 0 1 1h5.357A6.25 6.25 0 1 0 17.998 9.92v-.917a1 1 0 0 0-1-1h-10zm4 7.75a4.73 4.73 0 0 1 .877-2.75 4.75 4.75 0 1 1-.877 2.75z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar PetSuppliesIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded229);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M10.758 4.757a5.98 5.98 0 0 0-1.34 2.039 3.001 3.001 0 0 0-4.196 1.929 3 3 0 0 0 1.554 5.796l2.689 2.689a3 3 0 1 0 5.796 1.554 3.001 3.001 0 0 0 1.937-4.179 5.957 5.957 0 0 0 2.045-1.342 6 6 0 1 0-8.485-8.486zm.333 4.327a2.988 2.988 0 0 0-.448-1.208c.02-.082.044-.164.07-.245a4.48 4.48 0 0 0 1.813-1.106 4.481 4.481 0 0 0 1.105-1.813 4.517 4.517 0 0 1 1.6-.206 5.972 5.972 0 0 1-1.645 3.08 5.974 5.974 0 0 1-2.495 1.498zm-1.89 1.457a1.5 1.5 0 1 0-2.146.016 1.5 1.5 0 1 0 .005 2.126l4.242 4.243a1.5 1.5 0 1 0 2.126.004 1.479 1.479 0 0 0 .116.104 1.501 1.501 0 0 0 2.138-2.073 1.5 1.5 0 0 0-2.258-.157l-.02-.02-4.188-4.187-.035-.035.02-.02zm7.169 2.747c-.08.025-.16.048-.24.069a2.986 2.986 0 0 0-1.21-.46 5.975 5.975 0 0 1 1.495-2.483 5.972 5.972 0 0 1 3.08-1.644 4.516 4.516 0 0 1-.207 1.6 4.48 4.48 0 0 0-1.813 1.105 4.48 4.48 0 0 0-1.105 1.813z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar Phone2Icon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded230);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M4.065 7.992c.622 6.306 5.638 11.319 11.943 11.943.066.007.127.016.19.025.133.02.272.04.469.04a3.333 3.333 0 0 0 3.304-3.777c-.087-.652-.688-1.063-1.338-1.164l-2.58-.401-.764-.121c-.65-.104-1.35.103-1.633.698a3.308 3.308 0 0 0-.228.64 10.035 10.035 0 0 1-5.303-5.303c.223-.054.437-.13.64-.228.595-.283.802-.982.698-1.633l-.121-.764-.401-2.58c-.101-.65-.512-1.251-1.164-1.338a3.333 3.333 0 0 0-3.712 3.963z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar PhoneIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded231);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M6 2a1 1 0 0 0-1 1v18a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1H6zm6 18a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar PhotoIdIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded232);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M2 6a1 1 0 0 1 1-1h18a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V6zm12 6a.75.75 0 0 1 .75-.75h5a.75.75 0 0 1 0 1.5h-5A.75.75 0 0 1 14 12zm.75-3.75a.75.75 0 0 0 0 1.5h3a.75.75 0 0 0 0-1.5h-3zM14 15a.75.75 0 0 1 .75-.75h3a.75.75 0 0 1 0 1.5h-3A.75.75 0 0 1 14 15zm-3.75-4.75c0 .815-.433 1.528-1.082 1.923A4.002 4.002 0 0 1 12 16v.444a.556.556 0 0 1-.556.556H4.555A.556.556 0 0 1 4 16.444V16a4.002 4.002 0 0 1 2.831-3.827A2.249 2.249 0 0 1 8 8a2.25 2.25 0 0 1 2.25 2.25z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar PictureBrokenIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded233);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M21.113 5.006l-8.306 8.307c.042.02.083.041.124.065l1.158.67a1 1 0 0 0 1.326-.3l1.546-2.257a.75.75 0 0 1 1.308.127l1.72 3.986A1 1 0 0 1 19.07 17H9.12l-2 2H21a1 1 0 0 0 1-1V6a1 1 0 0 0-.887-.994z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M3.274 20.725a.75.75 0 0 1-1.056-1.066l.666-.666A1 1 0 0 1 2 18V6a1 1 0 0 1 1-1h13.877l2.78-2.78a.75.75 0 0 1 1.068 1.054l-.005.004-17.44 17.44-.006.007zM8 9a2 2 0 1 1-4 0 2 2 0 0 1 4 0z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar PictureIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded234);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M2 6a1 1 0 0 1 1-1h18a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V6zm6 3a2 2 0 1 1-4 0 2 2 0 0 1 4 0zm4.931 4.378l1.158.67a1 1 0 0 0 1.326-.3l1.546-2.257a.75.75 0 0 1 1.308.127l1.72 3.986A1 1 0 0 1 19.07 17H9.09c-.704 0-1.02-.881-.477-1.329l2.612-2.153a1.5 1.5 0 0 1 1.706-.14z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar PinIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded235);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M17.639 4.177a1.75 1.75 0 0 0-2.475 0l-3.59 3.59a1 1 0 0 0-.249.072L6.507 9.934a1 1 0 0 0-.309 1.625l2.592 2.59-4.82 4.82a.75.75 0 0 0 1.06 1.062l4.82-4.82 2.585 2.585a1 1 0 0 0 1.625-.309l2.095-4.818c.033-.076.056-.154.07-.233l3.598-3.6a1.75 1.75 0 0 0 0-2.474L17.64 4.177zm-2.179 6.901l3.303-3.302a.25.25 0 0 0 0-.354l-2.185-2.184a.25.25 0 0 0-.354 0L12.922 8.54l2.538 2.538z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar PixIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded236);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M9.185 7.213A3.61 3.61 0 0 0 6.643 6.16h-.06l3.27-3.27a3.038 3.038 0 0 1 4.296 0l3.287 3.286a3.613 3.613 0 0 0-2.381 1.05l-2.93 2.93-2.94-2.943zM6.83 18.09l3.02 3.02a3.038 3.038 0 0 0 4.296 0l3.052-3.047a3.612 3.612 0 0 1-2.143-1.03l-2.93-2.934-2.936 2.939-.002.002a3.596 3.596 0 0 1-2.357 1.05z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M21.11 9.852l-1.997-1.998a1 1 0 0 0-.736-.292l-.78.022a2.07 2.07 0 0 0-1.454.603l-3 3c-.28.28-.65.42-1.018.42-.37 0-.738-.14-1.02-.42L8.098 8.174a2.071 2.071 0 0 0-1.454-.602l-1.015-.023a1 1 0 0 0-.729.293l-2.01 2.01a3.04 3.04 0 0 0 0 4.297l2.01 2.01a1 1 0 0 0 .73.293l1.014-.022a2.06 2.06 0 0 0 1.454-.603l3.009-3.012c.546-.543 1.492-.543 2.037 0l3 3.003c.382.381.912.602 1.454.602l.782.02a1 1 0 0 0 .733-.292l1.999-2a3.039 3.039 0 0 0 0-4.296z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar PlayIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded237);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M19.643 12.848L8.53 19.794A1 1 0 0 1 7 18.946V5.054a1 1 0 0 1 1.53-.848l11.113 6.946a1 1 0 0 1 0 1.696z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar PledgeIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded238);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M21.999 6a1 1 0 0 0-1-1h-18a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h18a1 1 0 0 0 1-1V6zm-18.5.504v1.75l2.54 1.523A3.486 3.486 0 0 1 6.56 8.34L3.5 6.504zm17 1.75l-2.532 1.518a3.485 3.485 0 0 0-.524-1.434l3.056-1.834v1.75zm-7.083.958c-.53 1.246-2.296 1.246-2.826 0a1.027 1.027 0 0 0-.294-.377C10.13 8.7 9.79 8.5 9.102 8.5c-.67 0-1.126.322-1.38.827-.27.537-.351 1.394.096 2.397.416.933 1.28 1.92 2.25 2.69.474.376.936.668 1.323.86.38.188.577.223.608.228h.008c.03-.005.228-.04.611-.228a7.68 7.68 0 0 0 1.325-.858c.97-.769 1.831-1.754 2.243-2.687l.002-.005c.448-1.003.367-1.86.096-2.397-.254-.505-.71-.827-1.38-.827-.688 0-1.028.2-1.193.335-.19.154-.272.325-.295.377z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar PreferredSelectedIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded239);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M12.948 3.624c-.305-.91-1.592-.91-1.896 0L9.25 9.003l-5.672.05c-.96.01-1.357 1.234-.586 1.805l4.559 3.375-1.704 5.41c-.289.915.753 1.672 1.534 1.115L12 17.465l4.618 3.293c.782.557 1.823-.2 1.535-1.115l-1.704-5.41 4.558-3.375c.771-.571.374-1.795-.586-1.804l-5.672-.051-1.801-5.379z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar PreferredIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded240);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M13.306 10.99L12 7.092l-1.306 3.898-4.11.037 3.303 2.447-1.235 3.921L12 15.01l3.348 2.386-1.235-3.921 3.304-2.447-4.111-.037zM9.25 9.003l-5.672.051c-.96.009-1.357 1.233-.586 1.804l4.558 3.375-1.704 5.41c-.288.914.753 1.67 1.535 1.114L12 17.465l4.618 3.292c.782.557 1.823-.2 1.535-1.115l-1.704-5.41 4.558-3.374c.77-.571.373-1.795-.586-1.804l-5.672-.051-1.8-5.378c-.306-.91-1.592-.91-1.897 0L9.25 9.003z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar PreviewIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded241);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M12 13.998a1.998 1.998 0 1 0 .001-3.996 1.998 1.998 0 0 0 0 3.996z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M18.5 12c0 1.3-2.6 5.2-6.5 5.2S5.5 13.28 5.5 12c0-1.28 2.6-5.2 6.5-5.2s6.5 3.9 6.5 5.2zM12 15.498a3.498 3.498 0 1 0 0-6.996 3.498 3.498 0 0 0 0 6.996z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M2.002 5a1 1 0 0 1 1-1h18a1 1 0 0 1 1 1v14a1 1 0 0 1-1 1h-18a1 1 0 0 1-1-1V5zm1.5 13.5v-13h17v13h-17z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar PrintIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded242);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M6 5a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v2h3a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1h-3v2a1 1 0 0 1-1 1H7a1 1 0 0 1-1-1v-2H3a1 1 0 0 1-1-1V8a1 1 0 0 1 1-1h3V5zm10.5 6.5a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3zm-9 2h9v5h-9v-5z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar PropertyMgmtIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded243);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M12.001 16.754a2.254 2.254 0 1 0 0-4.508 2.254 2.254 0 0 0 0 4.508z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M21.546 12.547a1 1 0 0 1-1.414 0l-.133-.133V21a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1v-8.586l-.133.133a1 1 0 0 1-1.414-1.414l8.84-8.84a1 1 0 0 1 1.414 0l8.84 8.84a1 1 0 0 1 0 1.414zM10.834 9.75a.25.25 0 0 1 .25-.25h1.833a.25.25 0 0 1 .25.25v1.182l.428.203c.182.087.356.188.52.301l.391.27 1.025-.591a.25.25 0 0 1 .342.091l.917 1.588a.25.25 0 0 1-.092.341l-1.024.592.037.472a3.784 3.784 0 0 1 0 .602l-.038.472 1.025.592a.25.25 0 0 1 .091.341l-.917 1.588a.25.25 0 0 1-.341.091l-1.025-.591-.39.27a3.728 3.728 0 0 1-.52.3l-.429.204v1.182a.25.25 0 0 1-.25.25h-1.833a.25.25 0 0 1-.25-.25v-1.182l-.428-.204a3.721 3.721 0 0 1-.52-.3l-.39-.27-1.025.591a.25.25 0 0 1-.342-.091l-.917-1.588a.25.25 0 0 1 .092-.341l1.024-.592-.037-.472a3.78 3.78 0 0 1 0-.602l.037-.472-1.024-.592a.25.25 0 0 1-.091-.341l.916-1.588a.25.25 0 0 1 .342-.091l1.025.591.39-.27c.165-.113.338-.214.52-.3l.428-.204V9.75z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar PurchaseProtectionIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded244);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M12 22.003c.12 0 .24-.028.347-.082C13.884 21.157 20 17.615 20 10.906V5.658c0-.383-.343-.699-.784-.725-4.106-.248-5.464-1.526-6.607-2.68-.337-.34-.947-.337-1.278.008-1.11 1.157-2.472 2.474-6.547 2.722-.44.027-.784.342-.784.726v5.246c0 6.666 6.117 10.202 7.653 10.966a.778.778 0 0 0 .347.082zm2.47-12.865l-3.438 4.48-1.493-1.533a.75.75 0 0 0-1.074 1.047l1.895 1.947a1 1 0 0 0 1.51-.089l3.79-4.938a.75.75 0 0 0-1.19-.914z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar QrcIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded245);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M5 4a1 1 0 0 0-1 1v3.25a.75.75 0 0 0 1.5 0V5.5h2.75a.75.75 0 0 0 0-1.5H5zm14 0a1 1 0 0 1 1 1v3.25a.75.75 0 0 1-1.5 0V5.5h-2.75a.75.75 0 0 1 0-1.5H19zM4 19a1 1 0 0 0 1 1h3.25a.75.75 0 0 0 0-1.5H5.5v-2.75a.75.75 0 0 0-1.5 0V19zm15 1a1 1 0 0 0 1-1v-3.25a.75.75 0 0 0-1.5 0v2.75h-2.75a.75.75 0 0 0 0 1.5H19zM7 8a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1H8a1 1 0 0 1-1-1V8z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M12.5 13.5a1 1 0 0 1 1-1h3a1 1 0 0 1 1 1v3a1 1 0 0 1-1 1h-3a1 1 0 0 1-1-1v-3zM14 16v-2h2v2h-2z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M7 14a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1H8a1 1 0 0 1-1-1v-2zm7-7a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1V8a1 1 0 0 0-1-1h-2zM5 4a1 1 0 0 0-1 1v3.25a.75.75 0 0 0 1.5 0V5.5h2.75a.75.75 0 0 0 0-1.5H5zm14 0a1 1 0 0 1 1 1v3.25a.75.75 0 0 1-1.5 0V5.5h-2.75a.75.75 0 0 1 0-1.5H19zM4 19a1 1 0 0 0 1 1h3.25a.75.75 0 0 0 0-1.5H5.5v-2.75a.75.75 0 0 0-1.5 0V19zm15 1a1 1 0 0 0 1-1v-3.25a.75.75 0 0 0-1.5 0v2.75h-2.75a.75.75 0 0 0 0 1.5H19zM7 8a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1H8a1 1 0 0 1-1-1V8z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M12.5 13.5a1 1 0 0 1 1-1h3a1 1 0 0 1 1 1v3a1 1 0 0 1-1 1h-3a1 1 0 0 1-1-1v-3zM14 16v-2h2v2h-2z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M7 14a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1H8a1 1 0 0 1-1-1v-2zm7-7a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1V8a1 1 0 0 0-1-1h-2z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar QuestionSmIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded246);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 18 18\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M16 9A7 7 0 1 1 2 9a7 7 0 0 1 14 0zm-7.476 1h.945c.137 0 .215-.078.225-.224.048-.458.263-.683.74-1.053l.088-.068c.615-.478.946-1.053.946-1.765 0-1.092-.838-1.96-2.37-1.96-1.452 0-2.33.78-2.446 2.048-.01.156.078.234.224.234h1.072c.137 0 .215-.078.234-.225.05-.526.342-.828.878-.828.517 0 .829.331.829.76 0 .42-.225.712-.449.917l-.37.34c-.546.498-.741.84-.77 1.59 0 .156.077.234.224.234zM9 13.5a1 1 0 1 0 0-2 1 1 0 0 0 0 2z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar QuestionIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded247);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M21 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0zm-9.578 1.54h1.164c.168 0 .264-.097.276-.277.06-.564.324-.84.912-1.296l.108-.084c.756-.588 1.164-1.296 1.164-2.172 0-1.344-1.032-2.412-2.916-2.412-1.788 0-2.868.96-3.012 2.52-.012.192.096.288.276.288h1.32c.168 0 .264-.096.288-.276.06-.648.42-1.02 1.08-1.02.636 0 1.02.408 1.02.936 0 .516-.276.876-.552 1.128l-.456.42c-.672.612-.912 1.032-.948 1.956 0 .192.096.288.276.288zM12 17a1 1 0 1 0 0-2 1 1 0 0 0 0 2z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar RainyDayIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded248);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M12 2a1 1 0 0 0-.998 1.062A8.001 8.001 0 0 0 4 11a1 1 0 0 0 1 1h6.25v6a1.25 1.25 0 1 1-2.5 0v-1.25a.75.75 0 0 0-1.5 0V18a2.75 2.75 0 1 0 5.5 0v-6H19a1 1 0 0 0 1-1 8.001 8.001 0 0 0-7.002-7.938A1 1 0 0 0 12 2z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar RecurrentIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded249);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M17.745 8A7.002 7.002 0 0 0 5.07 11.003C4.993 11.55 4.552 12 4 12s-1.006-.45-.945-.998A9.001 9.001 0 0 1 19 6.342V4a1 1 0 1 1 2 0v5a1 1 0 0 1-1 1h-5a1 1 0 1 1 0-2h2.745zm-11.49 8H9a1 1 0 1 0 0-2H4a1 1 0 0 0-1 1v5a1 1 0 1 0 2 0v-2.343a9.001 9.001 0 0 0 15.945-4.659c.06-.549-.393-.998-.945-.998-.552 0-.992.45-1.07.997A7.001 7.001 0 0 1 6.255 16z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar RecurringPausedIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded250);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M17.254 18a.75.75 0 0 1-.75-.75v-3a.75.75 0 0 1 1.5 0v3a.75.75 0 0 1-.75.75zm-3.75-.75a.75.75 0 0 0 1.5 0v-3a.75.75 0 0 0-1.5 0v3z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M15.75 22a6.221 6.221 0 0 1-3.403-1.007A9 9 0 1 1 19 6.343V4a1 1 0 1 1 2 0v5a1 1 0 0 1-1 1h-.382c-.468.03-.971-.26-1.17-.729A7.002 7.002 0 0 0 5 12a7.003 7.003 0 0 0 5.287 6.789A6.25 6.25 0 1 1 15.75 22zm3.407-9.56a4.75 4.75 0 1 0-6.816 6.619 4.75 4.75 0 0 0 6.816-6.619z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar RefreshIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded251);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M18.93 12.997c.078-.547.518-.997 1.07-.997s1.006.45.945.998A9.001 9.001 0 0 1 3 12a9 9 0 0 1 16-5.657V4a1 1 0 1 1 2 0v5a1 1 0 0 1-1 1h-5a1 1 0 1 1 0-2h2.745a7 7 0 1 0 1.184 4.997z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar RefundIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded252);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M22 15.75A6.25 6.25 0 1 1 9.544 15H3a1 1 0 0 1-1-1V6a1 1 0 0 1 1-1h18a1 1 0 0 1 1 1v9.75zM12 7a3 3 0 0 1 2.967 2.548 6.252 6.252 0 0 0-4.576 2.984A3 3 0 0 1 12 7zm2.794 4.096a4.753 4.753 0 0 0-2.866 7.475 2.534 2.534 0 0 0 3.015-3.048l-.612.612a.75.75 0 0 1-1.06-1.06l1.767-1.769a1 1 0 0 1 1.414 0l1.768 1.768a.75.75 0 1 1-1.06 1.06l-.707-.706a4.03 4.03 0 0 1-1.127 3.52 4.017 4.017 0 0 1-1.748 1.027 4.73 4.73 0 0 0 2.725.493 4.75 4.75 0 1 0-1.509-9.372z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar RegistrationDocIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded253);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M3 5a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h10.915v1.998a1 1 0 0 0 1.625.781l1.916-1.533 1.917 1.533a1 1 0 0 0 1.625-.78V19H21a1 1 0 0 0 1-1V6a1 1 0 0 0-1-1H3zm2.752 3.25h10.265a4.51 4.51 0 0 0-2.08 1.5H5.753a.75.75 0 0 1 0-1.5zM17.5 9.5c-.427 0-.833.09-1.2.25a3.012 3.012 0 0 0-1.528 1.5 2.99 2.99 0 0 0-.262 1.5 2.996 2.996 0 0 0 2.99 2.75 2.99 2.99 0 0 0 1.998-.762A3.001 3.001 0 0 0 17.5 9.5zM5.752 11.25h7.424a4.503 4.503 0 0 0-.17 1.5H5.753a.75.75 0 0 1 0-1.5zm0 3h7.601a4.51 4.51 0 0 0 1.034 1.5H5.752a.75.75 0 0 1 0-1.5zM17.5 17a4.48 4.48 0 0 1-2.085-.511v3.47l2.041-1.634 2.042 1.633v-3.425A4.482 4.482 0 0 1 17.5 17z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar ReloadPhonesIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded254);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M5.002 3a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v18a1 1 0 0 1-1 1h-12a1 1 0 0 1-1-1V3zm8.5 15.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0zM15.75 5a.75.75 0 0 0-.75.75v.896a4.5 4.5 0 1 0 1.062 5.293c.22-.46-.16-.939-.67-.939-.337 0-.63.219-.8.51A3 3 0 1 1 14.236 8h-1.485a.75.75 0 0 0 0 1.5h2.75a1 1 0 0 0 1-1V5.75a.75.75 0 0 0-.75-.75z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar RentIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded255);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M20.133 12.547a1 1 0 0 0 1.414-1.414l-8.84-8.84a1 1 0 0 0-1.414 0l-8.84 8.84a1 1 0 1 0 1.414 1.414L4 12.414V21a1 1 0 0 0 1 1h14a1 1 0 0 0 1-1v-8.586l.133.133zM7.75 17.25a.75.75 0 0 0 0 1.5h5.5a.75.75 0 0 0 0-1.5h-5.5zM7 15a.75.75 0 0 1 .75-.75h5.5a.75.75 0 0 1 0 1.5h-5.5A.75.75 0 0 1 7 15zm.75-3.75a.75.75 0 0 0 0 1.5h5.5a.75.75 0 0 0 0-1.5h-5.5zM15 18a.75.75 0 0 1 .75-.75h.5a.75.75 0 0 1 0 1.5h-.5A.75.75 0 0 1 15 18zm.75-3.75a.75.75 0 1 0 0 1.5h.5a.75.75 0 0 0 0-1.5h-.5zM15 12a.75.75 0 0 1 .75-.75h.5a.75.75 0 0 1 0 1.5h-.5A.75.75 0 0 1 15 12z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar ReportProblemIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded256);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M2.998 5a1 1 0 0 0-1 1v11a1 1 0 0 0 1 1h3v3a1 1 0 0 0 1.651.76L12.03 18h8.969a1 1 0 0 0 1-1V6a1 1 0 0 0-1-1h-18zm8.491 8.014h1.02c.168 0 .276-.096.288-.264.019-.428.042-.85.067-1.28.055-.98.113-2.002.113-3.244v-.948c0-.18-.096-.276-.276-.276h-1.404c-.18 0-.276.096-.276.276v.948c0 1.242.058 2.264.114 3.243.024.43.048.853.066 1.281.012.168.12.264.288.264zM12 16.5a1 1 0 1 0 0-2 1 1 0 0 0 0 2z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar RequestMoneyIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded257);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M16.46 18.703a1 1 0 0 1-1.413 0l-1.768-1.767a.75.75 0 0 1 1.06-1.061l.665.664v-3.288a.75.75 0 0 1 1.5 0v3.288l.664-.664a.75.75 0 0 1 1.06 1.06l-1.767 1.768z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M22 15.752A6.25 6.25 0 1 1 9.544 15H3a1 1 0 0 1-1-1V6a1 1 0 0 1 1-1h18a1 1 0 0 1 1 1v9.752zm-7.034-6.204a3 3 0 1 0-4.576 2.984 6.252 6.252 0 0 1 4.576-2.984zM11.058 15a4.75 4.75 0 1 0 9.383 1.5 4.75 4.75 0 0 0-9.383-1.5z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar ResolutionIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded258);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M18.75 15.955a2.12 2.12 0 0 0 .618-1.621 2.816 2.816 0 0 0 2.633-2.81V9.268a2 2 0 0 0-.583-1.411L18.17 4.594a2 2 0 0 0-.933-.53L13.22 3.06a2 2 0 0 0-1.9.526l-1.232 1.232-2.846-.407a1.75 1.75 0 0 0-1.485.495L2.514 8.15A1.75 1.75 0 0 0 2 9.386v.182c0 2.76 1.096 5.408 3.048 7.36l2.74 2.74a2.125 2.125 0 0 0 3.48-.725 2.125 2.125 0 0 0 2.652-1.238 2.125 2.125 0 0 0 2.652-1.237c.74.247 1.587.076 2.176-.513zM8.584 6.32l-.018.018a2.977 2.977 0 0 0 .001 4.208l.006.006.01.01a3 3 0 0 0 4.243 0l.707-.707 4.154 4.154a.625.625 0 1 1-.883.884l-.686-.685-.021-.022-1.503-1.502a.75.75 0 0 0-1.06 1.06l1.513 1.514a.625.625 0 0 1-.895.873l-2.21-2.21a.75.75 0 0 0-1.06 1.06l1.502 1.503a.625.625 0 1 1-.884.884l-.698-.698-.009-.009-1.502-1.503A.75.75 0 0 0 8.23 16.22l1.507 1.507a.625.625 0 0 1-.888.88l-2.74-2.74A8.907 8.907 0 0 1 3.5 9.568v-.182a.25.25 0 0 1 .073-.176l3.243-3.243a.25.25 0 0 1 .212-.07l1.732.247-.176.177z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar RetirementIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded259);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M18.082 9.936c.543.93.966 1.97 1.022 2.948a1.5 1.5 0 0 1-2.658 1.037l-.274-.34c-.479-.598-1.064-1.328-1.83-1.972a7.066 7.066 0 0 0-.466-.36c.348 1.944.76 5.007.583 6.943 2.616.422 4.642 1.5 5.308 2.845.244.495-.215.963-.767.963H5c-.552 0-1.011-.468-.767-.963.697-1.409 2.886-2.523 5.681-2.9.228-2.066.439-5.285.071-7.08-1.256.822-2.13 2.182-2.563 3.434a1.5 1.5 0 0 1-2.868-.107c-.221-.837-.319-2.119.028-3.434l.007-.026a4.262 4.262 0 0 0-.13.105 1.5 1.5 0 0 1-2.453-1.297c.103-1.063.861-2.598 2.376-3.687a1.498 1.498 0 0 1 .042-2.508c1.285-.813 4.24-1.518 6.97.34.67-.571 1.514-1.126 2.504-1.484 1.683-.607 3.72-.61 5.818.705a1.5 1.5 0 0 1-.584 2.756c1.058.717 2.034 1.753 2.724 3.202a1.5 1.5 0 0 1-2.195 1.887l-.205-.14a15.957 15.957 0 0 0-1.374-.867zm-4.036-.347c-.803-.44-1.718-.719-2.741-.675-1.484.3-2.666 1.118-3.557 2.112a8.923 8.923 0 0 0-1.744 2.975c-.225-.852-.296-2.469.514-3.846a4.363 4.363 0 0 1 1.675-1.611c-.469-.126-1.245-.202-2.172.021a5.406 5.406 0 0 0-.265.071c-.7.207-1.472.587-2.257 1.24.062-.645.62-1.843 1.869-2.69.4-.27.87-.505 1.419-.675.28-.086.58-.156.9-.204a7.804 7.804 0 0 1 1.498-.066c0-.06-.05-.144-.145-.242-.314-.323-1.125-.794-2.28-1.037a7.468 7.468 0 0 0-1.535-.157c.798-.505 2.702-1.022 4.637-.084.273.132.546.293.817.488.272.195.541.422.805.688.239-.28.538-.586.889-.884.329-.28.704-.551 1.119-.786 1.43-.809 3.33-1.172 5.428.142-.622.05-1.513.143-2.397.328-.839.175-1.671.433-2.259.817-.237.155-.434.33-.576.528.541-.12 1.355-.134 2.254.06.179.038.361.085.546.14 1.473.445 3.065 1.464 4.013 3.459l-.21-.145c-.716-.497-2.137-1.484-3.902-1.862-.232-.05-.47-.09-.714-.115a6.178 6.178 0 0 0-1.636.036c.311.223.619.481.915.764.231.22.455.456.669.701 1.096 1.26 1.92 2.785 1.983 3.89l-.243-.302c-.68-.851-1.797-2.25-3.317-3.08z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar ReturnRightIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded260);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M14.29 12.304a1 1 0 0 0 1.415 1.414l4.998-4.998a1.01 1.01 0 0 0 0-1.429l-4.998-4.998a1 1 0 0 0-1.414 1.414L17.584 7H10.5a7.5 7.5 0 0 0 0 15H18a1 1 0 1 0 0-2h-7.5a5.5 5.5 0 1 1 0-11h7.094l-3.304 3.304z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar RewardsIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded261);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M8.5 8A2.5 2.5 0 0 1 6 5.5v-.156A2.344 2.344 0 0 1 8.344 3a3.908 3.908 0 0 1 3.654 2.524A3.91 3.91 0 0 1 15.655 3 2.345 2.345 0 0 1 18 5.345V5.5A2.5 2.5 0 0 1 15.5 8H19a1 1 0 0 1 1 1v10a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1V9a1 1 0 0 1 1-1h3.5zm-1-2.656V5.5a1 1 0 0 0 1 1h2.216a2.407 2.407 0 0 0-2.372-2 .844.844 0 0 0-.844.844zm9 .001V5.5a1 1 0 0 1-1 1h-2.22a2.41 2.41 0 0 1 2.375-2c.467 0 .845.378.845.845zM6.75 10.5a.75.75 0 0 0 0 1.5h4.5v5.25a.75.75 0 0 0 1.5 0V12h4.5a.75.75 0 0 0 0-1.5h-4.5v-.75a.75.75 0 0 0-1.5 0v.75h-4.5z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar RightAlignIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded262);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M5 5a1 1 0 0 0 0 2h14a1 1 0 1 0 0-2H5zm0 8a1 1 0 1 0 0 2h14a1 1 0 1 0 0-2H5zm4 5a1 1 0 0 1 1-1h9a1 1 0 1 1 0 2h-9a1 1 0 0 1-1-1zm1-9a1 1 0 0 0 0 2h9a1 1 0 1 0 0-2h-9z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar SafariIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded263);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M12 21c4.924 0 9-4.085 9-9 0-4.924-4.085-9-9.009-9C7.076 3 3 7.076 3 12c0 4.915 4.085 9 9 9zm0-1.5A7.464 7.464 0 0 1 4.509 12c0-4.165 3.317-7.5 7.482-7.5s7.5 3.335 7.509 7.5a7.466 7.466 0 0 1-7.5 7.5zm-3.697-3.044l5.065-2.48c.282-.132.476-.335.617-.608l2.462-5.056c.282-.6-.15-1.06-.768-.76l-5.047 2.463a1.257 1.257 0 0 0-.608.617l-2.48 5.065c-.282.582.177 1.041.759.759zM12 13.094c-.6 0-1.076-.485-1.076-1.085S11.4 10.932 12 10.932c.6 0 1.085.477 1.085 1.077S12.6 13.094 12 13.094z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar SavingsIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded264);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M4 5a1 1 0 0 1 1-1h14a1 1 0 0 1 1 1v14a1 1 0 0 1-1 1h-1v1a1 1 0 0 1-1 1h-2a1 1 0 0 1-1-1v-1h-4v1a1 1 0 0 1-1 1H7a1 1 0 0 1-1-1v-1H5a1 1 0 0 1-1-1V5zm10 7a3.5 3.5 0 0 1-6.92.75h3.42a.75.75 0 0 0 0-1.5H7.08A3.501 3.501 0 0 1 14 12zm2.5 5.25a.75.75 0 0 0 1.5 0V16h-1.5v1.25zm0-3.25H18v-4h-1.5v4zm0-6V6.75a.75.75 0 0 1 1.5 0V8h-1.5z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar ScanBarcodeIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded265);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M7 5a1 1 0 0 1 1-1h8a1 1 0 0 1 1 1v7H7V5zm-1.5 7V4.75a.75.75 0 0 0-1.5 0V12h1.5zm-2.75 1.5a.75.75 0 0 0 0 1.5H4v4.25a.75.75 0 0 0 1.5 0V15H7v4a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1v-4h1.5v4.25a.75.75 0 0 0 1.5 0V15h1.25a.75.75 0 0 0 0-1.5H2.75zM18.5 12H20V4.75a.75.75 0 0 0-1.5 0V12z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar ScanIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded266);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M5 4a1 1 0 0 0-1 1v3.25a.75.75 0 0 0 1.5 0V5.5h2.75a.75.75 0 0 0 0-1.5H5zm14 0a1 1 0 0 1 1 1v3.25a.75.75 0 0 1-1.5 0V5.5h-2.75a.75.75 0 0 1 0-1.5H19zM4 19a1 1 0 0 0 1 1h3.25a.75.75 0 0 0 0-1.5H5.5v-2.75a.75.75 0 0 0-1.5 0V19zm15 1a1 1 0 0 0 1-1v-3.25a.75.75 0 0 0-1.5 0v2.75h-2.75a.75.75 0 0 0 0 1.5H19z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M5 4a1 1 0 0 0-1 1v3.25a.75.75 0 0 0 1.5 0V5.5h2.75a.75.75 0 0 0 0-1.5H5zm14 0a1 1 0 0 1 1 1v3.25a.75.75 0 0 1-1.5 0V5.5h-2.75a.75.75 0 0 1 0-1.5H19zM4 19a1 1 0 0 0 1 1h3.25a.75.75 0 0 0 0-1.5H5.5v-2.75a.75.75 0 0 0-1.5 0V19zm15 1a1 1 0 0 0 1-1v-3.25a.75.75 0 0 0-1.5 0v2.75h-2.75a.75.75 0 0 0 0 1.5H19z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar ScienceIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded267);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M15 11.764V6a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1H9a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1v5.764a1 1 0 0 1-.106.447l-4.17 8.342A1 1 0 0 0 5.616 22H18.38a1 1 0 0 0 .895-1.447l-4.171-8.342a1 1 0 0 1-.106-.447zM14.5 3.5v1h-1v7.264c0 .079.003.158.01.236h-3.022a2.51 2.51 0 0 0 .011-.236V4.5h-1v-1h5zM9.051 15.25l-.75 1.5h2.944a.75.75 0 1 0 0-1.5H9.052zm-1.5 3l-.739 1.477c.06.015.122.023.186.023h4.247a.75.75 0 1 0 0-1.5H7.552z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar SearchSmIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded268);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 18 18\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M10.757 12.172a5 5 0 1 1 1.414-1.414l2.536 2.536a1 1 0 1 1-1.414 1.414l-2.536-2.536zM11 8a3 3 0 1 1-6 0 3 3 0 0 1 6 0z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar SearchIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded269);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M15.052 16.46a7.5 7.5 0 1 1 1.413-1.415l3.243 3.243a1 1 0 1 1-1.414 1.414l-3.242-3.241zM16 10.5a5.5 5.5 0 1 1-11 0 5.5 5.5 0 0 1 11 0z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar SecurityIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded270);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M12.347 21.921a.778.778 0 0 1-.694 0C10.116 21.157 4 17.621 4 10.955V5.71c0-.384.343-.699.784-.726 4.075-.248 5.437-1.565 6.547-2.722.331-.345.941-.349 1.278-.008 1.143 1.154 2.501 2.432 6.607 2.68.44.026.784.342.784.725v5.248c0 6.71-6.117 10.25-7.653 11.015z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar SendMoneyIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded271);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M15.046 12.79a1 1 0 0 1 1.415 0l1.768 1.767a.75.75 0 0 1-1.061 1.06l-.665-.664v3.289a.75.75 0 1 1-1.5 0v-3.289l-.664.665a.75.75 0 1 1-1.06-1.061l1.768-1.768z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M22 6a1 1 0 0 0-1-1H3a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h6.544A6.25 6.25 0 1 0 22 15.75V6zm-7.034 3.548a3 3 0 1 0-4.576 2.984 6.252 6.252 0 0 1 4.576-2.984zM11.058 15a4.75 4.75 0 1 0 9.383 1.5 4.75 4.75 0 0 0-9.383-1.5z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar SendToBankIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded272);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M9.79 14.21l-7.088-3.052c-.816-.351-.803-1.511.02-1.845L20.75 2H21a1 1 0 0 1 1 1v.25l-7.313 18.03c-.334.822-1.494.835-1.845.02L9.79 14.21zm6.958-8.019l1.596-1.596-13.95 5.659 5.796 2.496 6.558-6.559z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar ServicesIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded273);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M8.67 3.768l.678.391c.206-.142.423-.268.651-.376V3a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v.782c.229.109.447.235.653.378l.678-.392a1 1 0 0 1 1.366.366l1 1.732a1 1 0 0 1-.366 1.366l-.678.392a4.727 4.727 0 0 1 0 .752l.678.392a1 1 0 0 1 .366 1.366l-1 1.732a1 1 0 0 1-1.366.366l-.678-.391a4.67 4.67 0 0 1-.652.377V15l2.848-2.848a3 3 0 0 1 4.273.031l.587.605a1 1 0 0 1-.015 1.409l-4.725 4.653A4 4 0 0 1 14.16 20H9.5l-1.544 1.543a1 1 0 0 1-1.414 0l-3.836-3.836a1 1 0 0 1 0-1.414l3.122-3.121a4 4 0 0 1 1.726-1.017.998.998 0 0 1-.251-.289l-1-1.732a1 1 0 0 1 .366-1.366l.678-.392a4.732 4.732 0 0 1 0-.752l-.678-.392a1 1 0 0 1-.366-1.366l1-1.732a1 1 0 0 1 1.366-.366zM8.657 13.5a2.5 2.5 0 0 0-1.768.732L4.121 17l3.13 3.129L8.878 18.5h5.282a2.5 2.5 0 0 0 1.755-.719l4.37-4.304-.24-.249a1.496 1.496 0 0 0-2.137-.016l-2.848 2.849a1.5 1.5 0 0 1-1.073.439H9.75a.75.75 0 0 1 0-1.5h2.75v-1.5H8.657zM12 10.352a2.352 2.352 0 1 0 0-4.704 2.352 2.352 0 0 0 0 4.704z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar SettingsIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded274);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M14.402 5.42V3.998a1 1 0 0 0-1-1h-3a1 1 0 0 0-1 1v1.498c-.66.264-1.27.626-1.813 1.067l-1.265-.73a1 1 0 0 0-1.366.366l-1.5 2.597a1 1 0 0 0 .366 1.366l1.265.73a7.053 7.053 0 0 0 0 2.212l-1.264.73a1 1 0 0 0-.366 1.366l1.498 2.595a1 1 0 0 0 1.366.366l1.265-.73a6.99 6.99 0 0 0 1.914 1.107v1.46a1 1 0 0 0 1 1h3a1 1 0 0 0 1-1v-1.46a6.995 6.995 0 0 0 1.914-1.107l1.265.73a1 1 0 0 0 1.366-.365l1.498-2.596a1 1 0 0 0-.366-1.366l-1.264-.73a7.063 7.063 0 0 0 0-2.213l1.264-.73a1 1 0 0 0 .366-1.366L19.047 6.2a1 1 0 0 0-1.366-.366l-1.265.73a6.992 6.992 0 0 0-2.014-1.144zm1.6 6.578a4 4 0 1 1-8 0 4 4 0 0 1 8 0z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar SewingIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded275);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M10 10h3v7H5a1 1 0 0 0-1 1v1a1 1 0 0 0 1 1h14a1 1 0 0 0 1-1V5a1 1 0 0 0-1-1H5a1 1 0 0 0-1 1v5c0 1.398.957 2.572 2.25 2.905V15a.75.75 0 0 0 1.5 0v-2.095A3.001 3.001 0 0 0 10 10zm6.498-.499a2 2 0 1 0 0-4 2 2 0 0 0 0 4zm-2 3.749a.75.75 0 0 1 .75-.75h2.5a.75.75 0 0 1 0 1.5h-2.5a.75.75 0 0 1-.75-.75zm.75 2.25a.75.75 0 0 0 0 1.5h2.5a.75.75 0 0 0 0-1.5h-2.5z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar ShareAndroidIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded276);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M17 8a3 3 0 1 0-2.967-2.557L7.799 9.6a3 3 0 1 0 .08 4.74l6.23 3.857a3 3 0 1 0 1.15-1.64L8.933 12.64a3.011 3.011 0 0 0-.023-1.376l6.07-4.047A2.99 2.99 0 0 0 17 8z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar ShareFacebookIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded277);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M21 12.055C21 7.055 16.97 3 12 3s-9 4.054-9 9.055c0 4.52 3.291 8.266 7.594 8.945v-6.328H8.309v-2.617h2.285V10.06c0-2.27 1.343-3.523 3.4-3.523.984 0 2.014.177 2.014.177v2.228h-1.135c-1.118 0-1.467.698-1.467 1.414v1.699h2.496l-.399 2.617h-2.097V21C17.71 20.32 21 16.575 21 12.055z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar ShareInstagramIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded278);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M14.997 3.023l.194.007.52.023c.958.043 1.612.196 2.184.418A4.41 4.41 0 0 1 19.49 4.51c.5.5.808 1.003 1.038 1.595.223.572.375 1.226.418 2.184.01.192.016.358.023.52l.007.194c.016.488.022 1.022.024 2.205v1.585a69.443 69.443 0 0 1-.024 2.205l-.007.194-.023.52c-.043.958-.196 1.612-.418 2.184a4.41 4.41 0 0 1-1.038 1.595c-.5.5-1.003.808-1.595 1.038-.572.223-1.226.375-2.184.418a81.13 81.13 0 0 1-.52.023l-.194.007c-.488.016-1.022.022-2.205.024h-1.585a69.441 69.441 0 0 1-2.205-.024l-.194-.007a81.276 81.276 0 0 1-.52-.023c-.958-.043-1.612-.196-2.184-.418a4.412 4.412 0 0 1-1.595-1.038 4.41 4.41 0 0 1-1.038-1.595c-.222-.572-.375-1.226-.418-2.184A42.556 42.556 0 0 1 3 13.49v-2.723c.004-1.36.018-1.71.053-2.479.043-.958.196-1.612.418-2.184A4.412 4.412 0 0 1 4.51 4.509c.5-.5 1.003-.808 1.595-1.038.572-.222 1.226-.375 2.184-.418l.52-.023.194-.007c.385-.012.798-.02 1.534-.022L13.232 3c.885.003 1.342.01 1.765.023zm-1.74 1.599h-2.26c-1.509.002-1.837.014-2.635.05-.877.04-1.354.188-1.671.31-.42.164-.72.36-1.035.674-.315.315-.51.615-.673 1.035-.123.317-.27.794-.31 1.671-.034.75-.047 1.086-.051 2.38v2.26c.001.976.007 1.458.02 1.893l.009.235.022.507c.04.877.186 1.354.31 1.671.163.42.358.72.673 1.035.315.315.615.51 1.035.673.317.124.794.27 1.671.31.798.037 1.126.049 2.635.052h2.005a63.868 63.868 0 0 0 1.893-.022l.235-.008.507-.022c.877-.04 1.354-.186 1.671-.31a2.79 2.79 0 0 0 1.035-.673 2.79 2.79 0 0 0 .673-1.035c.124-.317.27-.794.31-1.671l.022-.507.008-.235c.014-.434.02-.917.022-1.893v-2.005c-.003-1.509-.015-1.837-.052-2.635-.04-.877-.186-1.354-.31-1.671a2.79 2.79 0 0 0-.673-1.035 2.79 2.79 0 0 0-1.035-.673c-.317-.123-.794-.27-1.671-.31a73.53 73.53 0 0 0-.507-.022l-.235-.008c-.395-.013-.83-.019-1.639-.021zm-1.258 2.755a4.622 4.622 0 1 1 0 9.245 4.622 4.622 0 0 1 0-9.245zM12 9a3 3 0 1 0 0 6 3 3 0 0 0 0-6zm4.805-2.884a1.08 1.08 0 1 1 0 2.16 1.08 1.08 0 0 1 0-2.16z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar ShareIosIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded279);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M8.28 6.547a.92.92 0 0 1 0-1.322l3.043-2.951A.956.956 0 0 1 12.02 2a.965.965 0 0 1 .66.278l3.04 2.947a.92.92 0 0 1 0 1.322.973.973 0 0 1-1.353 0l-1.41-1.355v8.873A.946.946 0 0 1 12 15a.946.946 0 0 1-.957-.935V5.192l-1.41 1.355a.973.973 0 0 1-1.353 0z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M5 11a2 2 0 0 1 2-2h2v2H7v9h10v-9h-2V9h2a2 2 0 0 1 2 2v9a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2v-9z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar ShareLineIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded280);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M17.1 3A3.9 3.9 0 0 1 21 6.9v10.2a3.9 3.9 0 0 1-3.9 3.9H6.9A3.9 3.9 0 0 1 3 17.1V6.9A3.9 3.9 0 0 1 6.9 3h10.2zm-5.13 2.89c-3.613 0-6.553 2.386-6.553 5.319 0 2.629 2.332 4.83 5.481 5.247.214.046.504.14.578.323.066.166.043.425.02.592l-.093.561c-.029.166-.132.648.568.354.7-.295 3.774-2.223 5.15-3.805h-.001c.95-1.042 1.404-2.099 1.404-3.272 0-2.933-2.94-5.319-6.553-5.319zm-1.33 3.901c.07 0 .127.058.127.128v2.855c0 .07-.057.128-.128.128h-.46a.128.128 0 0 1-.127-.128V9.92c0-.07.057-.128.128-.128h.46zm1.172.001h.007l.005.002a.11.11 0 0 1 .008.001l.004.001.004.002h.004l.011.005.004.002.007.004.007.005.004.002.01.008.01.01v.001a.15.15 0 0 1 .01.013l1.31 1.767V9.92c0-.07.056-.128.127-.128h.46c.07 0 .127.058.127.128v2.855c0 .07-.057.128-.128.128h-.46a.12.12 0 0 1-.043-.008l-.003-.001a.102.102 0 0 1-.013-.006l-.011-.007h-.002a.126.126 0 0 1-.032-.032l-1.31-1.77v1.696c0 .07-.057.128-.128.128h-.46a.128.128 0 0 1-.127-.128V9.92c0-.07.057-.128.127-.128l.471.001zm-3.658 0c.07 0 .128.056.128.127v2.268h1.25c.07 0 .127.057.127.128v.46c0 .07-.057.127-.128.127H7.695l-.033-.004a.129.129 0 0 1-.095-.123V9.918c0-.07.057-.128.128-.128h.46zm8.188 0c.07 0 .127.057.127.127v.46c0 .07-.057.127-.127.127h-1.249v.483h1.249c.07 0 .127.057.127.128v.46c0 .07-.057.127-.127.127h-1.249v.483h1.249c.07 0 .127.057.127.128v.46c0 .07-.057.127-.127.127h-1.836l-.034-.004a.128.128 0 0 1-.094-.123V9.918c0-.034.014-.065.035-.088l.002-.002.002-.002a.127.127 0 0 1 .088-.036h1.837z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar ShareLinkedinIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded281);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M19.667 3a1.318 1.318 0 0 1 1.325 1.163l.008.135V19.7a1.317 1.317 0 0 1-1.198 1.294l-.135.005H4.328a1.315 1.315 0 0 1-1.32-1.165L3 19.701V4.3a1.314 1.314 0 0 1 1.194-1.292L4.328 3h15.339zM8.338 9.748h-2.67v8.59h2.67v-8.59zm6.799-.214a2.806 2.806 0 0 0-2.527 1.388h-.035V9.748h-2.56v8.589h2.666v-4.25c0-1.12.213-2.205 1.602-2.205 1.37 0 1.387 1.282 1.387 2.278v4.177h2.667l.002-4.712c0-2.313-.499-4.09-3.202-4.09zM7.004 5.478a1.548 1.548 0 1 0 .001 3.096 1.548 1.548 0 0 0 0-3.096z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar ShareMessengerIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded282);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M12 3c5.07 0 9 3.714 9 8.73s-3.93 8.73-9 8.73c-.91 0-1.786-.12-2.606-.346a.718.718 0 0 0-.48.037l-1.785.787a.721.721 0 0 1-1.01-.637l-.05-1.6a.725.725 0 0 0-.242-.513C4.076 16.62 3 14.354 3 11.73 3 6.714 6.93 3 12 3zm5.404 6.718c.255-.402-.241-.856-.62-.568l-2.84 2.155a.54.54 0 0 1-.65.001L11.193 9.73a1.351 1.351 0 0 0-1.952.36l-2.644 4.194c-.255.402.241.857.62.57l2.84-2.156a.54.54 0 0 1 .65-.002l2.102 1.578c.63.472 1.532.306 1.952-.36l2.644-4.195z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar ShareSnapchatIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded283);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M20.687 17.477c-.87.487-1.45.435-1.9.728-.383.25-.156.787-.434.981-.342.239-1.351-.017-2.656.419-1.075.36-1.761 1.395-3.696 1.395-1.935 0-2.605-1.033-3.698-1.398-1.302-.436-2.314-.18-2.656-.419-.277-.194-.052-.731-.434-.98-.45-.294-1.03-.242-1.9-.726-.555-.31-.24-.502-.055-.592 3.155-1.547 3.658-3.934 3.68-4.111.028-.215.058-.383-.175-.601-.226-.211-1.226-.838-1.504-1.034-.459-.324-.66-.649-.512-1.047.104-.276.358-.38.625-.38.084 0 .168.01.25.029.504.11.994.366 1.276.435a.446.446 0 0 0 .105.014c.15 0 .204-.076.193-.251-.032-.559-.11-1.646-.023-2.663.12-1.399.564-2.092 1.093-2.704C8.52 4.277 9.714 3 11.997 3s3.48 1.272 3.734 1.565c.53.613.975 1.306 1.094 2.705.087 1.016.012 2.105-.024 2.662-.012.184.043.252.194.252a.44.44 0 0 0 .104-.014c.283-.07.773-.325 1.277-.435.082-.019.166-.029.25-.029.268 0 .52.106.625.38.149.398-.052.722-.512 1.047-.277.196-1.278.822-1.503 1.033-.234.218-.203.387-.176.602.022.18.525 2.567 3.681 4.11.186.095.5.286-.054.599z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar ShareTwitterIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded284);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M13.712 10.622L20.413 3h-1.587l-5.819 6.618L8.36 3H3l7.027 10.007L3 21h1.588l6.144-6.989L15.64 21H21l-7.288-10.378zm-2.175 2.474l-.712-.997L5.16 4.17H7.6l4.571 6.4.712.996 5.943 8.319h-2.439l-4.85-6.788z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar ShareWechatIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded285);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M15.595 9.985c2.994 0 5.405 2.011 5.405 4.505 0 1.347-.723 2.573-1.869 3.398-.1.06-.16.16-.14.301 0 .04 0 .08.02.12.08.343.24.886.24.906 0 .06.02.1.02.14a.18.18 0 0 1-.18.181c-.04 0-.06-.02-.1-.04l-1.186-.683a.654.654 0 0 0-.281-.08c-.06 0-.12 0-.161.02a6.368 6.368 0 0 1-1.768.24c-2.994 0-5.405-2.01-5.405-4.503 0-2.494 2.41-4.505 5.405-4.505zM9.505 5c3.155 0 5.795 1.862 6.362 4.347l.043.209h-.363c-3.263 0-5.921 2.208-5.921 4.917 0 .37.052.726.144 1.07l.078.255h-.363c-.725 0-1.45-.12-2.115-.301-.06-.02-.12-.02-.18-.02a.652.652 0 0 0-.264.06l-.08.04-1.43.823c-.04.02-.08.04-.12.04-.12 0-.222-.1-.222-.22 0-.06.02-.1.04-.161.02-.02.202-.683.303-1.084 0-.04.02-.1.02-.14a.456.456 0 0 0-.181-.362C3.866 13.49 3 12.025 3 10.4 3 7.409 5.92 5 9.505 5zm7.874 7.294a.732.732 0 0 0-.735.735c0 .408.327.735.735.735a.745.745 0 0 0 .735-.735.732.732 0 0 0-.735-.735zm-3.621 0a.732.732 0 0 0-.735.735c0 .408.327.735.735.735a.745.745 0 0 0 .735-.735.732.732 0 0 0-.735-.735zm-2.152-4.46a.833.833 0 0 0-.84.84c0 .468.372.84.84.84.47 0 .84-.391.84-.84a.833.833 0 0 0-.84-.84zm-4.303 0a.833.833 0 0 0-.84.84c0 .468.372.84.84.84.469 0 .84-.391.84-.84a.833.833 0 0 0-.84-.84z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar ShareWhatsappIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded286);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M16.06 13.787c-.222-.112-1.318-.651-1.522-.726-.204-.074-.353-.111-.501.112-.149.223-.576.725-.706.874-.13.149-.26.167-.483.056-.223-.112-.941-.347-1.792-1.107-.663-.59-1.11-1.32-1.24-1.543-.13-.223-.014-.344.098-.455.1-.1.223-.26.334-.39.111-.13.149-.224.223-.373.074-.148.037-.278-.019-.39-.055-.111-.501-1.209-.687-1.655-.18-.434-.365-.375-.501-.382a8.936 8.936 0 0 0-.427-.008.819.819 0 0 0-.595.279c-.204.223-.78.762-.78 1.859s.799 2.157.91 2.305c.112.15 1.572 2.4 3.808 3.366.531.23.946.366 1.27.47.534.169 1.02.145 1.404.087.428-.064 1.318-.539 1.504-1.06.186-.52.186-.966.13-1.06-.056-.092-.204-.148-.427-.26zm-4.066 5.552h-.003a7.403 7.403 0 0 1-3.773-1.033l-.27-.161-2.806.736.748-2.736-.176-.28a7.396 7.396 0 0 1-1.133-3.946c.001-4.087 3.327-7.413 7.416-7.413a7.365 7.365 0 0 1 5.242 2.175 7.37 7.37 0 0 1 2.169 5.244c-.002 4.088-3.327 7.414-7.414 7.414zm6.31-13.723A8.861 8.861 0 0 0 11.994 3c-4.916 0-8.917 4.001-8.92 8.919 0 1.572.41 3.106 1.191 4.459L3 21l4.728-1.24a8.912 8.912 0 0 0 4.263 1.085h.003c4.916 0 8.918-4.001 8.92-8.92a8.866 8.866 0 0 0-2.61-6.31z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar ShareIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded287);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M16.586 6H13a1 1 0 1 1 0-2h6a1 1 0 0 1 1 1v6a1 1 0 1 1-2 0V7.414l-8.293 8.293a1 1 0 0 1-1.414-1.414L16.586 6z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M4 8a1 1 0 0 1 1-1h6a1 1 0 1 1 0 2H6v9h9v-5a1 1 0 1 1 2 0v6a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1V8z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar ShippingLabelIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded288);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M4 5a1 1 0 0 1 1-1h14a1 1 0 0 1 1 1v5h1a1 1 0 0 1 1 1v9.998a1 1 0 0 1-1.625.781l-1.916-1.533-1.917 1.533a1 1 0 0 1-1.625-.78V20H5a1 1 0 0 1-1-1V5zm14.459 13.325l-2.042 1.633V11.5H20.5v8.458l-2.041-1.633zM6.25 18.5a.75.75 0 0 1 0-1.5h1.5a.75.75 0 0 1 0 1.5h-1.5zm-.75-3.25c0 .414.336.75.75.75h3.5a.75.75 0 0 0 0-1.5h-3.5a.75.75 0 0 0-.75.75z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar ShippingPackIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded289);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M12.75 2.746a.75.75 0 0 0-1.5 0v3.697l-.972-.971a.75.75 0 1 0-1.06 1.06l2.245 2.245a.76.76 0 0 0 1.075 0l2.245-2.245a.75.75 0 0 0-1.061-1.06l-.972.971V2.746z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M6.36 10.221a.747.747 0 0 1 .517-.22V10h10.246v.002c.19.001.38.074.524.22l3.138 3.137a.75.75 0 1 1-1.06 1.06L18 12.697V21a1 1 0 0 1-1 1H7a1 1 0 0 1-1-1v-8.297l-1.718 1.718a.75.75 0 0 1-1.06-1.06l3.139-3.14zM8.25 20.5a.75.75 0 0 1 0-1.5h1.5a.75.75 0 0 1 0 1.5h-1.5zm-.75-3.25c0 .414.336.75.75.75h3.5a.75.75 0 0 0 0-1.5h-3.5a.75.75 0 0 0-.75.75z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar ShippingSendIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded290);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M15.293 13.04a1 1 0 0 1 1.414 0l1.768 1.767a.75.75 0 0 1-1.06 1.06l-.665-.664v3.289a.75.75 0 0 1-1.5 0v-3.288l-.664.664a.75.75 0 0 1-1.06-1.06l1.767-1.769z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M5 4a1 1 0 0 0-1 1v14a1 1 0 0 0 1 1h6.528A6 6 0 1 0 20 11.528V5a1 1 0 0 0-1-1H5zm8.936 16c.619.32 1.32.5 2.064.5s1.445-.18 2.064-.5A4.52 4.52 0 0 0 20 18.064c.32-.619.5-1.32.5-2.064s-.18-1.445-.5-2.064A4.5 4.5 0 1 0 13.936 20zm-3.747-5.5H6.25a.75.75 0 0 0 0 1.5H10c0-.518.066-1.02.189-1.5zM5.5 17.75c0 .414.336.75.75.75h1.5a.75.75 0 0 0 0-1.5h-1.5a.75.75 0 0 0-.75.75z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar ShippingIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded291);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M2 6a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v2a1 1 0 0 1 1-1h3.984a1.5 1.5 0 0 1 1.393.943l.193.48a20 20 0 0 1 1.43 7.43V16a1 1 0 0 1-1 1h-3.55a2.5 2.5 0 0 1-4.9 0H8.423a2.5 2.5 0 0 1-4.9 0H3a1 1 0 0 1-1-1V6zm17.285 3.855l.276.829A1 1 0 0 1 18.613 12H18a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h.1a1.25 1.25 0 0 1 1.185.855zM16.25 16.5a1.251 1.251 0 1 1-2.502 0 1.251 1.251 0 0 1 2.502 0zM5.973 17.751a1.251 1.251 0 1 0 0-2.502 1.251 1.251 0 0 0 0 2.502z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar ShoesIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded292);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M2.003 6a1 1 0 0 1 1-1h7.996a1 1 0 0 1 1 1v2a4 4 0 0 0 4 4h2.004a4 4 0 0 1 4 4v2a1 1 0 0 1-1 1h-18a1 1 0 0 1-1-1V6zm18.5 10h-17v1.5h17V16zM3.5 8.25a.75.75 0 0 1 .75-.75h3a.75.75 0 0 1 0 1.5h-3a.75.75 0 0 1-.75-.75zm.75 2.25a.75.75 0 1 0 0 1.5h3a.75.75 0 0 0 0-1.5h-3z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar ShopIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded293);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M8 7H6.858a1 1 0 0 0-.988.848l-1.693 11A1 1 0 0 0 5.166 20h13.668a1 1 0 0 0 .989-1.152l-1.692-11A1 1 0 0 0 17.142 7H16V6a4 4 0 1 0-8 0v1zm1.5 0h5V6a2.5 2.5 0 0 0-5 0v1z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar ShoppingBasketIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded294);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M12 3a7 7 0 0 0-7 7H4a1 1 0 0 0-1 1v1a1 1 0 0 0 1 1h.273l.644 7.09a1 1 0 0 0 .996.91h12.159a1 1 0 0 0 .997-.926L19.596 13h.403a1 1 0 0 0 1-1v-1a1 1 0 0 0-1-1H19a7 7 0 0 0-7-7zm0 1.5a5.5 5.5 0 0 1 5.5 5.5h-11A5.5 5.5 0 0 1 12 4.5zm-3.25 9.25v4.5a.75.75 0 0 1-1.5 0v-4.5a.75.75 0 0 1 1.5 0zm4 4.5v-4.5a.75.75 0 0 0-1.5 0v4.5a.75.75 0 0 0 1.5 0zm4-4.5v4.5a.75.75 0 0 1-1.5 0v-4.5a.75.75 0 0 1 1.5 0z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar ShoppingCartIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded295);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M2.75 3.25a.75.75 0 0 0 0 1.5h1.706l2.642 9.375a.698.698 0 0 0 .007.024l.598 2.122.02.063A2.5 2.5 0 0 0 8.975 21a2.5 2.5 0 0 0 2-3.999H14.5a2.5 2.5 0 1 0 4.002 0h.376a1 1 0 0 0 .967-.744l2.123-8A1 1 0 0 0 21 7H6.648l-.902-3.203a.75.75 0 0 0-.722-.547H2.75zm15.002 15.249a1.251 1.251 0 1 1-2.503 0 1.251 1.251 0 0 1 2.502 0zm-8.777 1.252a1.251 1.251 0 1 0 0-2.503 1.251 1.251 0 0 0 0 2.502z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar SkipIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded296);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M17 4a1 1 0 0 0-1 1v14a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1V5a1 1 0 0 0-1-1h-2zm-3.34 8.753L5.657 19.75c-.646.565-1.658.106-1.658-.753V5.003c0-.859 1.012-1.318 1.658-.753l8.001 6.997a1 1 0 0 1 0 1.506z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar SmartphonePhotoIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded297);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M5.25 2a.75.75 0 0 1 0 1.5H3.5v1.75a.75.75 0 0 1-1.5 0V3a1 1 0 0 1 1-1h2.25zM18 2.75c0 .414.336.75.75.75h1.75v1.75a.75.75 0 0 0 1.5 0V3a1 1 0 0 0-1-1h-2.25a.75.75 0 0 0-.75.75zm0 18.5a.75.75 0 0 1 .75-.75h1.75v-1.75a.75.75 0 0 1 1.5 0V21a1 1 0 0 1-1 1h-2.25a.75.75 0 0 1-.75-.75zm-14.5-2.5a.75.75 0 0 0-1.5 0V21a1 1 0 0 0 1 1h2.25a.75.75 0 0 0 0-1.5H3.5v-1.75z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M5.004 6.004a1 1 0 0 1 1-1h11.992a1 1 0 0 1 1 1v11.992a1 1 0 0 1-1 1H6.005a1 1 0 0 1-1-1V6.005zm8.165 5.674A2.249 2.249 0 0 0 12 7.505a2.25 2.25 0 0 0-1.169 4.173A4.002 4.002 0 0 0 8 15.505v.444c0 .307.249.556.556.556h6.888a.556.556 0 0 0 .556-.556v-.444a4.002 4.002 0 0 0-2.831-3.827z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar SnoozeIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded298);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M14 4a2 2 0 1 0-4 0v.341C7.67 5.165 6 7.388 6 10v6H5a1 1 0 1 0 0 2h14a1 1 0 1 0 0-2h-1v-6a6.002 6.002 0 0 0-4-5.659V4zm.5 11H9.532c-.18 0-.276-.096-.276-.276v-.9a.46.46 0 0 1 .132-.336c.442-.501.927-1.056 1.379-1.573.739-.845 1.39-1.59 1.62-1.835-.011 0-.023-.012-.011-.012-.492.024-.936.024-1.476.024H9.64c-.18 0-.276-.096-.276-.276v-.84c0-.18.096-.276.276-.276h4.68c.18 0 .276.096.276.276v.9c0 .132-.036.24-.144.348a327.532 327.532 0 0 0-2.758 3.133l-.218.251v.012l.192-.004c.458-.01.866-.02 1.404-.02H14.5c.18 0 .276.096.276.276v.852c0 .18-.096.276-.276.276z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M12 22a3 3 0 0 1-2.959-2.5h5.918A3 3 0 0 1 12 22z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar SocialJusticeIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded299);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M6.563 4c.708 0 1.349.287 1.813.751A2.554 2.554 0 0 1 10.188 4c.708 0 1.349.287 1.813.751A2.555 2.555 0 0 1 13.813 4c.708 0 1.349.287 1.813.751A2.563 2.563 0 0 1 20 6.562v2.876c0 .723-.3 1.376-.782 1.842a2.657 2.657 0 0 1 .78 1.97H20V15a5.001 5.001 0 0 1-3 4.584V21a1 1 0 0 1-1 1H8a1 1 0 0 1-1-1v-1.416A5.001 5.001 0 0 1 4 15V6.563A2.562 2.562 0 0 1 6.563 4zm1.063 5.438v.02l-.002.041a1.063 1.063 0 0 1-2.122 0v-.008l-.001-.053V6.562a1.063 1.063 0 0 1 2.125 0v2.875zm10.872 3.812l.003-.077v-.008c0-.644-.522-1.166-1.166-1.166h-3.669a1.166 1.166 0 0 0 0 2.332h3.669c.615 0 1.12-.477 1.163-1.081zm-7.031-1.591a2.666 2.666 0 0 0 2.2 4.172h3.668c.399 0 .777-.088 1.117-.245A3.505 3.505 0 0 1 16.4 18.21l-.9.393V20.5h-7v-1.898l-.899-.393A3.501 3.501 0 0 1 5.501 15v-3.23a2.556 2.556 0 0 0 2.875-.521 2.554 2.554 0 0 0 1.812.751c.466 0 .902-.124 1.279-.341zM10.188 5.5c.587 0 1.063.476 1.063 1.063v2.882a1.062 1.062 0 0 1-2.125 0V6.562c0-.587.475-1.063 1.062-1.063zm2.564 4v-.004h.001a1.017 1.017 0 0 1-.001-.059V6.563a1.063 1.063 0 0 1 2.125 0v2.875a1.062 1.062 0 0 1-2.124.062zm3.624-.063a1.063 1.063 0 0 0 2.125 0V6.563a1.063 1.063 0 0 0-2.125 0v2.875z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar SpiritualityIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded300);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M11.713 2.293l.288.28.287-.28a1 1 0 0 1 1.41.015l4.653 4.725A4 4 0 0 1 19.5 9.84v4.66l1.543 1.544a1 1 0 0 1 0 1.414l-3.836 3.836a1 1 0 0 1-1.414 0l-3.122-3.122A4 4 0 0 1 12 17.28c-.18.325-.405.625-.672.892l-3.121 3.122a1 1 0 0 1-1.414 0l-3.836-3.836a1 1 0 0 1 0-1.414L4.5 14.5V9.84a4 4 0 0 1 1.15-2.807l4.653-4.725a1 1 0 0 1 1.41-.015zm-5.688 7.2a2.5 2.5 0 0 0-.024.347v5.282l-1.629 1.629 3.129 3.128 2.768-2.767A2.5 2.5 0 0 0 11 15.344V11.5H9.5v2.75a.75.75 0 0 1-1.5 0v-4.239a1.501 1.501 0 0 1 .44-1.072l2.847-2.848a1.5 1.5 0 0 0-.016-2.136l-.211-.206-.037-.035-4.304 4.37a2.5 2.5 0 0 0-.695 1.408zm3.476.508L14 10h.5L12 7.5 9.5 10zm3.44-6.25c.382.81.382 1.756-.002 2.566L16 10.007v4.244a.75.75 0 0 1-1.5 0V11.5H13v3.843a2.499 2.499 0 0 0 .732 1.768l2.768 2.768 3.128-3.13L18 15.121V9.84a2.5 2.5 0 0 0-.719-1.755l-4.305-4.37-.036.035z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar SplitBillIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded301);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M5.001 3a1 1 0 0 1 1-1h11.997a1 1 0 0 1 1 1v7.886a.778.778 0 0 0-.059.053l-.939.94-1.293-1.293a1 1 0 0 0-1.414 0L14 11.879l-1.293-1.293a1 1 0 0 0-1.414 0L10 11.879l-1.293-1.293a1 1 0 0 0-1.414 0L6 11.879l-.999-.999V3zM7 5a1 1 0 0 1 1-1h5a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H8a1 1 0 0 1-1-1V5zm-1.999 8.002V21a1 1 0 0 0 1 1h11.997a1 1 0 0 0 1-1v-7.998l-.29.29a1 1 0 0 1-1.415 0L16 12l-1.293 1.293a1 1 0 0 1-1.414 0L12 12l-1.293 1.293a1 1 0 0 1-1.414 0L8 12l-1.293 1.293a1 1 0 0 1-1.414 0L5 13.002zM7 16.25a.75.75 0 0 1 .75-.75h5.5a.75.75 0 0 1 0 1.5h-5.5a.75.75 0 0 1-.75-.75zm8.75-.75a.75.75 0 0 0 0 1.5h.5a.75.75 0 0 0 0-1.5h-.5zM7 19.25a.75.75 0 0 1 .75-.75h5.5a.75.75 0 0 1 0 1.5h-5.5a.75.75 0 0 1-.75-.75zm8.75-.75a.75.75 0 0 0 0 1.5h.5a.75.75 0 0 0 0-1.5h-.5z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar SportsIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded302);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M3.6 3.998a1.903 1.903 0 1 1 3.801 0l-.8 16.007A1 1 0 0 1 6.5 22h-2a1 1 0 0 1-.1-1.995L3.6 3.998z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M21.115 16.181A7 7 0 1 0 9.886 7.818a7 7 0 0 0 11.23 8.363zm-2.041 0a5.476 5.476 0 0 1-2.823 1.268V12.75h1.477a6.964 6.964 0 0 0 1.346 3.431zm-4.323-3.431v4.7a5.477 5.477 0 0 1-2.823-1.269 6.963 6.963 0 0 0 1.346-3.431h1.477zm2.977-1.5h-1.477v-4.7c1.07.147 2.041.6 2.823 1.269a6.963 6.963 0 0 0-1.346 3.431zm-2.977 0v-4.7c-1.07.147-2.041.6-2.823 1.269a6.963 6.963 0 0 1 1.346 3.431h1.477zm4.488 1.5c.114.832.413 1.605.856 2.276.442-.67.742-1.444.855-2.276h-1.71zm1.711-1.5h-1.71a5.468 5.468 0 0 1 .855-2.276c.442.67.742 1.444.855 2.276zm-9.187 0a5.468 5.468 0 0 0-.856-2.276 5.467 5.467 0 0 0-.855 2.276h1.71zm-1.711 1.5c.113.832.413 1.605.855 2.276.443-.67.742-1.444.856-2.276h-1.711z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar SubscriptionsIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded303);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M9 3v3H6a1 1 0 0 0-1 1v13.997a1 1 0 0 0 1.64.768L10 18.964l3.36 2.801a1 1 0 0 0 1.64-.768v-5.2l2.36 1.968a1 1 0 0 0 1.64-.768V3a1 1 0 0 0-1-1h-8a1 1 0 0 0-1 1zm5 3h-3.5V3.5h7v12.43L15 13.844V7a1 1 0 0 0-1-1zm-4 2.748a.75.75 0 0 1 .75.75v1.252H12a.75.75 0 0 1 0 1.5h-1.25v1.252a.75.75 0 0 1-1.5 0V12.25H8a.75.75 0 0 1 0-1.5h1.25V9.498a.75.75 0 0 1 .75-.75z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar SubtractIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded304);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M4 12a1 1 0 0 1 1-1h14a1 1 0 1 1 0 2H5a1 1 0 0 1-1-1z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar SurveyIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded305);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M7.102 4.998a5.022 5.022 0 0 1-.1-.999V2.998a1 1 0 0 1 1-1H16a1 1 0 0 1 1 1v1.001c0 .342-.034.676-.1 1h1.101a1 1 0 0 1 1 1v15a1 1 0 0 1-1 1h-12a1 1 0 0 1-1-1v-15a1 1 0 0 1 1-1h1.1zm1.545 0A3.5 3.5 0 0 1 8.502 4v-.501H15.5V4a3.51 3.51 0 0 1-.145 1 3.5 3.5 0 0 1-6.708 0zM7 11.748a.75.75 0 0 1 .75-.75h8.5a.75.75 0 0 1 0 1.5h-8.5a.75.75 0 0 1-.75-.75zm0 3a.75.75 0 0 1 .75-.75h8.5a.75.75 0 0 1 0 1.5h-8.5a.75.75 0 0 1-.75-.75zm10 3a.75.75 0 0 0-.75-.75h-8.5a.75.75 0 0 0 0 1.5h8.5a.75.75 0 0 0 .75-.75z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar SwitchCardIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded306);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M4.75 4.25h14.793l-.664-.664a.75.75 0 0 1 1.06-1.06l1.768 1.767a1 1 0 0 1 0 1.414l-1.77 1.77a.75.75 0 0 1-1.06-1.06l.666-.667H4.75a.75.75 0 1 1 0-1.5z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M7 8a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V9a1 1 0 0 0-1-1H7zm1.495 1.5a1 1 0 0 0-1 1v.5a1 1 0 0 0 1 1H9a1 1 0 0 0 1-1v-.5a1 1 0 0 0-1-1h-.505z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M19.25 18.248a.75.75 0 1 1 0 1.5H4.457l.666.666a.75.75 0 1 1-1.06 1.06l-1.77-1.77a1 1 0 0 1 0-1.413l1.768-1.768a.75.75 0 0 1 1.06 1.06l-.664.665H19.25z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar TermsIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded307);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M5.837 7.176l2.296-2.991A1 1 0 1 1 9.72 5.402l-3 3.908a1 1 0 0 1-1.51.09L3.77 7.92a1 1 0 1 1 1.433-1.395l.634.651zm0 5.279l2.296-2.991A1 1 0 0 1 9.72 10.68l-3 3.909a1 1 0 0 1-1.51.088L3.77 13.2a1 1 0 0 1 1.433-1.395l.634.651zm2.296 2.287A1 1 0 1 1 9.72 15.96l-3 3.908a1 1 0 0 1-1.51.089l-1.44-1.48a1 1 0 0 1 1.433-1.395l.634.652 2.296-2.992zm1.864-7.74a1 1 0 0 1 1-1H19a1 1 0 1 1 0 2h-8.003a1 1 0 0 1-1-1zm1 3.998a1 1 0 1 0 0 2H19a1 1 0 1 0 0-2h-8.003zm0 5a1 1 0 1 0 0 2H19a1 1 0 1 0 0-2h-8.003z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar TextSizeIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded308);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M9.55 7a.3.3 0 0 1-.3-.3V4.3a.3.3 0 0 1 .3-.3H19.7a.3.3 0 0 1 .3.3v2.4a.3.3 0 0 1-.3.3h-3.575v12.752a.3.3 0 0 1-.3.3h-2.4a.3.3 0 0 1-.3-.3V7H9.55zM4.3 12a.3.3 0 0 1-.3-.3V9.8a.3.3 0 0 1 .3-.3h7.4a.3.3 0 0 1 .3.3v1.9a.3.3 0 0 1-.3.3H9.25v7.725a.3.3 0 0 1-.3.3h-1.9a.3.3 0 0 1-.3-.3V12H4.3z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar TipJarIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded309);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M7 3a1 1 0 0 1 1-1h8a1 1 0 0 1 1 1v3a1 1 0 0 1-1 1H8a1 1 0 0 1-1-1V3zm1.5 2.5v-2h7v2h-7zM6 7a1 1 0 0 0-1 1v13a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V8a1 1 0 0 0-1-1H6zm10 10a2 2 0 1 1-4 0 2 2 0 0 1 4 0zm-6-3a2 2 0 1 0 0-4 2 2 0 0 0 0 4z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar ToolsIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded310);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M13.414 12l2.047 2.047.353-.354a1 1 0 0 1 1.414 0l3.538 3.538a1 1 0 0 1 0 1.414l-2.12 2.121a1 1 0 0 1-1.415 0l-3.538-3.537a1 1 0 0 1 0-1.415l.354-.353L12 13.414l-2.422 2.422a3.5 3.5 0 0 1-4.744 4.74l2.725-2.724-1.414-1.414-2.725 2.725a3.5 3.5 0 0 1 4.744-4.742L10.585 12 8.399 9.813a.999.999 0 0 1-.43-.028l-2.315-.67a1 1 0 0 1-.605-.491L2.935 4.655a1 1 0 0 1 .176-1.177l.367-.367a1 1 0 0 1 1.177-.176l3.969 2.113a1 1 0 0 1 .49.605l.67 2.315a1 1 0 0 1 .029.43L12 10.586l2.42-2.421a3.502 3.502 0 0 1 4.745-4.745L16.44 6.146l1.415 1.415 2.726-2.726a3.502 3.502 0 0 1-4.745 4.744L13.414 12zm3.107 3.108l2.83 2.83-1.413 1.414-2.83-2.83 1.413-1.414zM7.732 6.273l.581 2.006-.004.03-.03.004-2.006-.58L4.61 4.61l3.121 1.662z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar TopUpIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded311);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M4 5a1 1 0 0 1 1-1h14a1 1 0 1 1 0 2H5a1 1 0 0 1-1-1zm15.708 10.708a1 1 0 0 1-1.414 0L13 10.414V21a1 1 0 1 1-2 0V10.414l-5.294 5.294a1 1 0 0 1-1.414-1.414L11.286 7.3l.003-.003a.997.997 0 0 1 1.421-.001l.004.004 6.994 6.994a1 1 0 0 1 0 1.414z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar ToysIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded312);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M12 5a1 1 0 0 1 1-1h4c.024 0 .047 0 .07.002a.99.99 0 0 1 1.05.847l1.313 9.182a3 3 0 1 1-1.946.378l-.185-1.293-4.595 4.595a1 1 0 0 1-.707.293l-4.171-.002A3.001 3.001 0 0 1 2 17a3 3 0 0 1 5.83-1h3.346a1 1 0 0 0 .707-.293l4.965-4.965c.032-.033.067-.062.102-.09L16.286 6H13a1 1 0 0 1-1-1zm5.74 11.185a1.5 1.5 0 1 0 2.519 1.63 1.5 1.5 0 0 0-2.518-1.63zM6.5 17A1.496 1.496 0 0 1 5 18.5 1.5 1.5 0 1 1 6.5 17z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar TransferIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded313);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M14.29 11.709a1 1 0 0 1 0-1.414L16.587 8H5a1 1 0 1 1 0-2h11.586L14.29 3.705a1 1 0 0 1 1.414-1.414L19.7 6.286a1.01 1.01 0 0 1 0 1.428l-3.995 3.995a1 1 0 0 1-1.414 0zm-4.585 10a1 1 0 0 0 0-1.414L7.41 18h11.586a1 1 0 1 0 0-2H7.41l2.295-2.295a1 1 0 1 0-1.414-1.414l-3.995 3.995a1.01 1.01 0 0 0 0 1.428l3.995 3.995a1 1 0 0 0 1.414 0z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar TravelIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded314);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M11.073 2.68l4.463 6.82H19.5a2.5 2.5 0 0 1 0 5h-3.964l-4.464 6.824a1.5 1.5 0 0 1-1.256.679h-.499a.75.75 0 0 1-.71-.99L10.81 14.5H6.988l-1.414 1.414a2 2 0 0 1-1.414.586H2.502a.5.5 0 0 1-.39-.814L4.676 12.5 2.394 8.236a.5.5 0 0 1 .441-.736H4.16a2 2 0 0 1 1.414.586L6.988 9.5h3.822L8.609 2.99a.75.75 0 0 1 .71-.99h.5a1.5 1.5 0 0 1 1.254.679zM19.301 11a.75.75 0 1 0 0 1.5h.5a.75.75 0 0 0 0-1.5h-.5z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar TreatYourselfIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded315);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M21 5a1 1 0 0 1 1 1v2.535a3.5 3.5 0 1 0 0 6.93V18a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1v-2.536a3.5 3.5 0 1 0 0-6.93V6.001a1 1 0 0 1 1-1h18zm-9.474 3.38a.5.5 0 0 1 .948 0l.67 2.003 2.113.02a.5.5 0 0 1 .293.901l-1.698 1.257.635 2.015a.5.5 0 0 1-.767.557L12 13.907l-1.72 1.226a.5.5 0 0 1-.767-.557l.635-2.015-1.698-1.257a.5.5 0 0 1 .293-.902l2.112-.018.67-2.003z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar TrophyIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded316);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M6 3a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v3h3a1 1 0 0 1 1 1 7 7 0 0 1-6.678 6.993c-.842 1.673-1.569 3.426-1.728 5.114 1.937.266 3.482 1.006 4.106 1.954.304.462-.148.939-.7.939H7c-.552 0-1.004-.477-.7-.939.624-.948 2.169-1.688 4.106-1.954-.16-1.688-.886-3.44-1.728-5.114A7 7 0 0 1 2 7a1 1 0 0 1 1-1h3V3zM3.522 7.5H6.04c.112 1.303.452 2.384.926 3.28.195.368.4.747.611 1.134l.25.46A5.504 5.504 0 0 1 3.522 7.5zm12.901 4.414l-.25.46A5.504 5.504 0 0 0 20.478 7.5H17.96c-.112 1.303-.453 2.384-.926 3.28a109 109 0 0 1-.611 1.134z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar TuitionIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded317);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M15.748 16.752a1.25 1.25 0 1 0 0-2.5 1.25 1.25 0 0 0 0 2.5z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M21 5a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1h-3v4.002h2.998a1 1 0 0 1 1 1v5a1 1 0 0 1-1 1H10.502a1 1 0 0 1-1-1v-.247C7.09 17.228 6.278 16 6.065 15.575A.68.68 0 0 1 6 15.267V8H4.75v9l.816 1.962A.75.75 0 0 1 4.873 20H3.127a.75.75 0 0 1-.692-1.038l.815-1.96V8H3a1 1 0 0 1-1-1V6a1 1 0 0 1 1-1h18zm-.502 12.502h-9.5v-4h9.5v4z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar UndoIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded318);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M9.71 12.303a1 1 0 0 1-1.415 1.414L3.297 8.719a1.01 1.01 0 0 1 0-1.429l4.998-4.998A1 1 0 1 1 9.71 3.706L6.416 7H13.5a7.5 7.5 0 0 1 0 15H6a1 1 0 1 1 0-2h7.5a5.5 5.5 0 0 0 0-11H6.406l3.303 3.304z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar UnlinkIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded319);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M3.28 3.28a.75.75 0 1 1 1.061-1.06l6.903 6.902A3.996 3.996 0 0 1 12.4 5.937l1.764-1.764a4.004 4.004 0 1 1 5.662 5.662L18.063 11.6a3.995 3.995 0 0 1-3.185 1.157l6.902 6.903a.75.75 0 0 1-1.06 1.06L3.28 3.28zm2.656 9.121a3.99 3.99 0 0 1 2.593-1.165l4.235 4.235a3.988 3.988 0 0 1-1.165 2.593l-1.764 1.763a4.004 4.004 0 0 1-5.662-5.662L5.936 12.4zm10.713-2.216l1.764-1.764a2.004 2.004 0 1 0-2.834-2.834L13.815 7.35a2.003 2.003 0 0 0-.519 1.935L14.581 8a1 1 0 1 1 1.414 1.414l-1.287 1.287c.67.181 1.415.008 1.941-.517zm-7.363 3.111L8 14.582a1 1 0 0 0 1.415 1.414l1.287-1.287c.18.67.008 1.415-.518 1.94l-1.763 1.764a2.004 2.004 0 1 1-2.834-2.834l1.764-1.764a2.003 2.003 0 0 1 1.935-.519z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar UnlockIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded320);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M6 8v1H5a1 1 0 0 0-1 1v11a1 1 0 0 0 1 1h14a1 1 0 0 0 1-1V10a1 1 0 0 0-1-1H7.5V8a4.501 4.501 0 0 1 3.753-4.437c.409-.069.747-.398.747-.812 0-.414-.338-.755-.748-.704A6.001 6.001 0 0 0 6 8.001zm8 6a2 2 0 0 1-1 1.733v2.268a1 1 0 0 1-2 0v-2.268a2 2 0 1 1 3-1.732z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar UnmuteIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded321);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M14 4.09c0-.858-1.01-1.318-1.658-.753L7 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h4l5.342 4.666c.647.565 1.658.106 1.658-.753V4.09zm3.834 2.076c-.293.293-.29.766-.027 1.087A7.469 7.469 0 0 1 19.5 12a7.469 7.469 0 0 1-1.694 4.748c-.262.32-.265.793.028 1.086.293.293.77.294 1.038-.022A8.964 8.964 0 0 0 21 12c0-2.215-.8-4.244-2.128-5.812-.268-.316-.745-.314-1.038-.022z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M15.666 9.39c-.24-.337-.246-.81.046-1.102.293-.293.773-.296 1.027.031A5.974 5.974 0 0 1 18 12c0 1.387-.47 2.665-1.261 3.68-.255.328-.734.325-1.027.033-.292-.293-.286-.765-.046-1.103A4.48 4.48 0 0 0 16.5 12a4.48 4.48 0 0 0-.834-2.61z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar UploadIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded322);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M10.998 16a1 1 0 1 0 2 0V5.41l2.295 2.295a1 1 0 1 0 1.414-1.414l-3.995-3.995a1.01 1.01 0 0 0-1.428 0L7.288 6.29a1 1 0 1 0 1.415 1.414l2.295-2.295V16z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M4 12a1 1 0 0 0-1 1v7a1 1 0 0 0 1 1h16a1 1 0 0 0 1-1v-7a1 1 0 1 0-2 0v6H5v-6a1 1 0 0 0-1-1z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar UserProfileIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded323);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M14.337 10.347a4.5 4.5 0 1 0-4.673 0A8.004 8.004 0 0 0 4 18v3a1 1 0 0 0 1 1h14a1 1 0 0 0 1-1v-3a8.004 8.004 0 0 0-5.663-7.653z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar VacationIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded324);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M15.783 2.553a1.75 1.75 0 0 0-1.566 0l-5 2.5a1.75 1.75 0 0 0-.967 1.565V7c0 .966.784 1.75 1.75 1.75h4.25v11.5a.75.75 0 0 0 1.5 0V8.75H20A1.75 1.75 0 0 0 21.75 7v-.382a1.75 1.75 0 0 0-.967-1.565l-5-2.5z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M10.5 12a1 1 0 0 0-1-1h-3a1 1 0 0 0-1 1v4h-.75a.747.747 0 0 0-.75.75v3.5a.75.75 0 0 0 1.5 0V17.5h5v2.75a.75.75 0 0 0 1.5 0v-3.5a.75.75 0 0 0-.75-.75h-.75v-4z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar VerifiedIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded325);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M12.817 3.422a1 1 0 0 0-1.635 0l-.592.841a1 1 0 0 1-1.238.332l-.933-.432a1 1 0 0 0-1.416.817L6.91 6.005a1 1 0 0 1-.905.905l-1.025.093a1 1 0 0 0-.817 1.416l.432.933a1 1 0 0 1-.332 1.238l-.84.592a1 1 0 0 0 0 1.635l.84.593a1 1 0 0 1 .332 1.237l-.432.934a1 1 0 0 0 .817 1.416l1.025.092a1 1 0 0 1 .905.906l.093 1.025a1 1 0 0 0 1.416.817l.933-.432a1 1 0 0 1 1.238.332l.592.84a1 1 0 0 0 1.635 0l.593-.84a1 1 0 0 1 1.237-.332l.934.432a1 1 0 0 0 1.416-.817l.092-1.025a1 1 0 0 1 .906-.906l1.025-.092a1 1 0 0 0 .817-1.416l-.432-.934a1 1 0 0 1 .332-1.237l.84-.593a1 1 0 0 0 0-1.635l-.84-.592a1 1 0 0 1-.332-1.238l.432-.933a1 1 0 0 0-.817-1.416l-1.025-.093a1 1 0 0 1-.906-.905l-.092-1.025a1 1 0 0 0-1.416-.817l-.934.432a1 1 0 0 1-1.237-.332l-.593-.84zm1.652 5.285l-3.437 4.48-1.493-1.532A.75.75 0 1 0 8.464 12.7l1.896 1.947a1 1 0 0 0 1.51-.089l3.79-4.938a.75.75 0 1 0-1.19-.914z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar VideoGamesIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded326);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M2 7a1 1 0 0 1 1-1h18a1 1 0 0 1 1 1v9.5a3.5 3.5 0 1 1-7 0V16H9v.5a3.5 3.5 0 1 1-7 0V7zm18 5.495a1.251 1.251 0 1 1-2.502 0 1.251 1.251 0 0 1 2.502 0zm-3.749-1.246a1.251 1.251 0 1 0 0-2.502 1.251 1.251 0 0 0 0 2.502zm-12.628-.002a.75.75 0 0 1 .75-.75h1.625V8.872a.75.75 0 1 1 1.5 0v1.625h1.625a.75.75 0 1 1 0 1.5H7.498v1.625a.75.75 0 0 1-1.5 0v-1.625H4.373a.75.75 0 0 1-.75-.75z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar ViewIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded327);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M15.5 12a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M12 20c6 0 10-6 10-8s-4-8-10-8-10 6.031-10 8c0 1.969 4 8 10 8zm5-8a5 5 0 1 1-10 0 5 5 0 0 1 10 0z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar WalletIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded328);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M6 4a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v.5a1 1 0 0 1-1 1H7a1 1 0 0 1-1-1V4zM5 7a1 1 0 0 0-1 1v.5a1 1 0 0 0 1 1h14a1 1 0 0 0 1-1V8a1 1 0 0 0-1-1H5zm-2 5a1 1 0 0 1 1-1h16a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1v-8z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar WandIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded329);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M9.8 5.8L9 8l-.8-2.2L6 5l2.2-.8L9 2l.8 2.2L12 5l-2.2.8z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M14.471 6.68a1 1 0 0 0-.95.262L3.294 17.17a1 1 0 0 0 0 1.414l2.124 2.124a1 1 0 0 0 1.414 0l7.057-7.057.01-.01 3.16-3.16a1 1 0 0 0 0-1.414l-2.123-2.123a.995.995 0 0 0-.465-.264zm-2.696 4.13l2.454-2.453 1.416 1.416-2.453 2.453-1.417-1.416z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M19 8l.8-2.2L22 5l-2.2-.8L19 2l-.8 2.2L16 5l2.2.8L19 8zm.8 7.8L19 18l-.8-2.2L16 15l2.2-.8.8-2.2.8 2.2 2.2.8-2.2.8z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar WarningSmIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded330);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 18 18\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M16 9.001a7 7 0 1 1-14 0 7 7 0 0 1 14 0zm-7.414.982h.827c.136 0 .224-.08.233-.219.015-.355.035-.704.054-1.06.045-.811.092-1.658.092-2.686v-.785c0-.15-.077-.229-.223-.229H8.43c-.145 0-.223.08-.223.229v.785c0 1.028.047 1.875.092 2.686.02.356.039.705.054 1.06.01.14.097.219.233.219zM9 13.5a1 1 0 1 0 0-2 1 1 0 0 0 0 2z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar WarningIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded331);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M21 12.001a9 9 0 1 1-18 0 9 9 0 0 1 18 0zm-9.511 1.514h1.02c.168 0 .276-.096.288-.264.018-.428.042-.85.067-1.28.055-.98.113-2.002.113-3.244v-.948c0-.18-.096-.276-.276-.276h-1.404c-.18 0-.276.096-.276.276v.948c0 1.242.058 2.264.113 3.243.025.43.049.852.067 1.281.012.168.12.264.288.264zM12 17.001a1 1 0 1 0 0-2 1 1 0 0 0 0 2z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar WebsiteIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded332);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M2 5.001v14a1 1 0 0 0 1 1h18a1 1 0 0 0 1-1v-14a1 1 0 0 0-1-1H3a1 1 0 0 0-1 1zm1.5.5v3.5h17v-3.5h-17zm11.491 8.344l-5.616-2.553a.441.441 0 0 0-.584.584l2.553 5.616a.44.44 0 0 0 .796.015l.643-1.287 1.272 1.272a.441.441 0 0 0 .624 0l.312-.312a.441.441 0 0 0 0-.623l-1.272-1.272 1.287-.644a.441.441 0 0 0-.015-.796z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar WellnessIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded333);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M12.048 7.437C12.288 6.87 13.287 5 16.348 5c3.76 0 5.79 3.94 3.98 8-1.63 3.69-6.33 7-8.33 7-1.999 0-6.69-3.32-8.33-7-1.81-4.06.22-8 3.98-8 3.061 0 4.06 1.87 4.302 2.437.018.043.08.043.098 0zm2.729 2.701l-3.86 5.03-1.742-1.79A.75.75 0 1 0 8.1 14.425l2.146 2.203a1 1 0 0 0 1.51-.088l4.21-5.488a.75.75 0 0 0-1.19-.914z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar WildlifeIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded334);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M10.207 13a.5.5 0 0 0-.354.854l1.793 1.792a.5.5 0 0 0 .707 0l1.793-1.792a.5.5 0 0 0-.353-.854h-3.586z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M18.74 9.457A3.005 3.005 0 0 0 20 7.007 3.003 3.003 0 0 0 17 4c-1.4 0-2.575.96-2.907 2.26A8.513 8.513 0 0 0 12 6a8.47 8.47 0 0 0-2.093.26A3.002 3.002 0 0 0 7 4C5.343 4 4 5.346 4 7.007c0 1.01.498 1.905 1.26 2.45A7.13 7.13 0 0 0 4 13.5c0 3.465 2.506 6.381 5.912 7.242.431.125.878.212 1.338.258v-.032a8.645 8.645 0 0 0 1.5 0V21c.46-.046.907-.133 1.338-.258C17.494 19.881 20 16.965 20 13.5a7.13 7.13 0 0 0-1.26-4.043zM16 15a4 4 0 1 1-8 0 4 4 0 0 1 8 0z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar WithdrawCashIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded335);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M9 21v-2h12a1 1 0 0 0 1-1v-8a1 1 0 0 0-1-1H9V7a1 1 0 0 0-1-1H3a1 1 0 0 0-1 1v14a1 1 0 0 0 1 1h5a1 1 0 0 0 1-1zm-5.5-.5h4V19H5V9h2.5V7.5h-4v13zM12 11a3 3 0 1 1 0 6 3 3 0 0 1 0-6z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M19.953 4.293a1 1 0 0 1 0 1.414l-1.767 1.768a.75.75 0 0 1-1.06-1.06l.663-.665h-6.288a.75.75 0 0 1 0-1.5h6.288l-.664-.664a.75.75 0 1 1 1.06-1.06l1.768 1.767z\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar WorkingCapitalIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded336);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M18 9c0 .996-.243 1.935-.672 2.761a3.001 3.001 0 0 1 3.793.422l.587.605a1 1 0 0 1-.016 1.409l-4.724 4.653A4 4 0 0 1 14.16 20H9.5l-1.543 1.543a1 1 0 0 1-1.414 0l-3.836-3.836a1 1 0 0 1 0-1.414l3.121-3.121a3.998 3.998 0 0 1 1.193-.822A6 6 0 1 1 18 9zm-5.5 4.5V15H9.75a.75.75 0 0 0 0 1.5h4.238a1.496 1.496 0 0 0 1.072-.44l2.848-2.847a1.494 1.494 0 0 1 1.35-.411c.29.056.566.199.787.426l.24.249-4.37 4.304a2.5 2.5 0 0 1-1.754.719H8.879l-1.63 1.629L4.122 17l2.768-2.768a2.5 2.5 0 0 1 1.768-.732H12.5zm-1.25-6.002h1.191L9.5 10.44a.75.75 0 0 0 1.06 1.061l2.94-2.94v1.19a.75.75 0 0 0 1.5 0V6.998a1 1 0 0 0-1-1h-2.75a.75.75 0 0 0 0 1.5z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar ZoomInIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded337);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M10.5 7a1 1 0 0 1 1 1v1.5H13a1 1 0 1 1 0 2h-1.5V13a1 1 0 1 1-2 0v-1.5H8a1 1 0 1 1 0-2h1.5V8a1 1 0 0 1 1-1z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M10.5 18c1.71 0 3.287-.573 4.55-1.537l3.243 3.244a1 1 0 0 0 1.414-1.414l-3.244-3.244A7.5 7.5 0 1 0 10.5 18zm0-2a5.5 5.5 0 1 0 0-11 5.5 5.5 0 0 0 0 11z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\nvar ZoomOutIcon = function (props) {\n var svgElementRef = props.svgElementRef,\n rest = _objectWithoutProperties(props, _excluded338);\n\n return /*#__PURE__*/React.createElement(IconContainer, _extends({}, rest, {\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n ref: props.svgElementRef,\n \"data-ppui\": \"true\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M13 11.5a1 1 0 1 0 0-2H8a1 1 0 1 0 0 2h5z\",\n \"data-ppui\": \"true\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M10.5 18c1.71 0 3.287-.573 4.55-1.537l3.243 3.244a1 1 0 0 0 1.414-1.414l-3.244-3.244A7.5 7.5 0 1 0 10.5 18zm0-2a5.5 5.5 0 1 0 0-11 5.5 5.5 0 0 0 0 11z\",\n clipRule: \"evenodd\",\n \"data-ppui\": \"true\"\n })), props.children);\n};\n\nvar _excluded$2 = [\"name\", \"as\", \"size\", \"className\", \"children\", \"color\", \"cdnHost\"];\nvar Icon = function (_ref) {\n var _iconStyles$getIconSi, _iconStyles$getMaskIm;\n\n var _ref$name = _ref.name,\n name = _ref$name === void 0 ? 'acorns' : _ref$name,\n _ref$as = _ref.as,\n as = _ref$as === void 0 ? 'span' : _ref$as,\n _ref$size = _ref.size,\n size = _ref$size === void 0 ? 'md' : _ref$size,\n className = _ref.className,\n children = _ref.children,\n color = _ref.color,\n cdnHost = _ref.cdnHost,\n rest = _objectWithoutProperties(_ref, _excluded$2);\n\n var tokens = useTheme();\n var iconStyles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n var cssVal = [iconStyles.base, iconStyles.backgroundBase, // @ts-ignore\n (_iconStyles$getIconSi = iconStyles.getIconSizeCss) === null || _iconStyles$getIconSi === void 0 ? void 0 : _iconStyles$getIconSi.call(iconStyles, size), (_iconStyles$getMaskIm = iconStyles.getMaskImageCss) === null || _iconStyles$getMaskIm === void 0 ? void 0 : _iconStyles$getMaskIm.call(iconStyles, color, name, cdnHost)];\n return jsx(as, _extends({\n css: cssVal,\n className: className\n }, rest, {\n \"data-ppui-info\": \"icons_8.22.0\"\n }));\n};\n\nexport { AcornsIcon, ActivityIcon, AddCameraIcon, AddCashIcon, AddIcon, AddUserIcon, AddVideoIcon, AlarmClockIcon, AnimalsIcon, AppMenuIcon, AppliancesIcon, ArrowDownIcon, ArrowDownSmIcon, ArrowLeftIcon, ArrowRightIcon, ArrowUpIcon, ArrowUpSmIcon, ArrowsInIcon, ArrowsOutIcon, ArtIcon, AttachIcon, AutoIcon, AutopayIcon, AutopayNoIcon, BabyProductsIcon, BankDepositIcon, BankIcon, BankInfoIcon, BeautyIcon, BigPurchaseIcon, BillPaymentIcon, BirthdayIcon, BitcoinCashIcon, BitcoinIcon, BlockIcon, BooksIcon, BoxIcon, BusinessIcon, ButtonIcon, CalculatorIcon, CalendarIcon, CalendarPausedIcon, CalendarSmIcon, CameraIcon, CardStackIcon, CashBackIcon, CashIcon, CashPickupIcon, CausesIcon, CenterAlignIcon, ChangePlanIcon, CharitiesIcon, ChatIcon, CheckCaptureIcon, CheckIcon, CheckmarkBackgroundIcon, CheckmarkBackgroundSmIcon, CheckmarkIcon, CheckmarkSmIcon, ChevronDownIcon, ChevronDownSmIcon, ChevronLeftIcon, ChevronRightIcon, ChevronUpIcon, ChevronUpSmIcon, ChildrenIcon, ClockIcon, ClockSmIcon, CloseIcon, CloseSmIcon, ClothingIcon, CloudStorageIcon, CodeIcon, CommunityIcon, ConnectionIcon, ContactUsIcon, ContactsIcon, CopyToClipboardIcon, CreditCardIcon, CreditMastercardIcon, CriticalIcon, CriticalSmIcon, CrowdfundIcon, CryptoIcon, CultureIcon, CurrencyChfIcon, CurrencyDollarIcon, CurrencyEuroIcon, CurrencyPoundIcon, CurrencyRupeeIcon, CurrencyYenIcon, CustomersIcon, DailyDealIcon, DashboardIcon, DayIcon, DealsIcon, DeclineIcon, DeleteIcon, DesktopIcon, DetailedListIcon, DirectDepositIcon, DisasterIcon, DisasterReliefIcon, DislikeIcon, DislikeSelectedIcon, DisputesIcon, DocumentIcon, DonateIcon, DownloadIcon, EditIcon, EducationIcon, ElectricityIcon, EmailIcon, EmojiIcon, EnvironmentIcon, EthereumIcon, FaceIdIcon, FamilySupportIcon, FaqIcon, FavoriteIcon, FavoriteSelectedIcon, FilterIcon, FingerprintIcon, FlagIcon, FlashIcon, FlashOffIcon, FlowersIcon, FoodIcon, FundraiserIcon, FurnitureIcon, GasPumpIcon, GeneralSupportIcon, GetDirectionsIcon, GiftCardIcon, GoalsIcon, GoldIcon, GourmetFoodIcon, GrantsIcon, HandbagsIcon, HealthIcon, HelpIcon, HideIcon, HomeIcon, HomeownerIcon, HoneyIcon, HourglassIcon, HouseholdIcon, HouseholdSuppliesIcon, HumanIcon, HumanServicesIcon, HungerIcon, Icon, IconContainer, InFlightIcon, IndustrialIcon, InformationIcon, InformationSmIcon, InsightsIcon, InstallmentsIcon, InsuranceIcon, InsuredIcon, InternationalIcon, InternetIcon, InvestIcon, InvoiceIcon, JewelryIcon, JusticeIcon, LaptopIcon, LawnIcon, LeftAlignIcon, LetterCheckmarkIcon, LightBulbIcon, LikeIcon, LikeSelectedIcon, LinkIcon, ListSimpleIcon, LitecoinIcon, LoansIcon, LocationIcon, LockIcon, LogoutIcon, LoyaltyCardIcon, LuggageIcon, MedicalIcon, MembershipsIcon, MemorialsIcon, MenuIcon, MerchantIcon, MessageCenterIcon, MessageIcon, MgmIcon, MicrophoneIcon, MilitaryIcon, MoveIcon, MovieIcon, MusicIcon, MusicalInstrumentsIcon, MuteIcon, NavigateIcon, NightIcon, NoIconIcon, NotificationIcon, NotificationPreferencesIcon, NumberPadIcon, NumberedListIcon, OccasionIcon, OffersIcon, OfficeSuppliesIcon, OfflineIcon, OnlineIcon, OnlineShoppingIcon, OpenBrowserIcon, OrderAheadIcon, OthersIcon, OverflowIcon, PackageSizeIcon, PartySuppliesIcon, PasskeyIcon, PasswordInputIcon, PauseIcon, PayLaterIcon, PayMonthlyIcon, PayoutsIcon, PaypalAppIcon, PaypalAssistantIcon, PaypalBalanceIcon, PaypalUsdIcon, PendingPausedIcon, PersonalInfoIcon, PersonalSavingsIcon, PetSuppliesIcon, Phone2Icon, PhoneIcon, PhotoIdIcon, PictureBrokenIcon, PictureIcon, PinIcon, PixIcon, PlayIcon, PledgeIcon, PreferredIcon, PreferredSelectedIcon, PreviewIcon, PrintIcon, PropertyMgmtIcon, PurchaseProtectionIcon, QrcIcon, QuestionIcon, QuestionSmIcon, RainyDayIcon, RecurrentIcon, RecurringPausedIcon, RefreshIcon, RefundIcon, RegistrationDocIcon, ReloadPhonesIcon, RentIcon, ReportProblemIcon, RequestMoneyIcon, ResolutionIcon, RetirementIcon, ReturnRightIcon, RewardsIcon, RightAlignIcon, SafariIcon, SavingsIcon, ScanBarcodeIcon, ScanIcon, ScienceIcon, SearchIcon, SearchSmIcon, SecurityIcon, SendMoneyIcon, SendToBankIcon, ServicesIcon, SettingsIcon, SewingIcon, ShareAndroidIcon, ShareFacebookIcon, ShareIcon, ShareInstagramIcon, ShareIosIcon, ShareLineIcon, ShareLinkedinIcon, ShareMessengerIcon, ShareSnapchatIcon, ShareTwitterIcon, ShareWechatIcon, ShareWhatsappIcon, ShippingIcon, ShippingLabelIcon, ShippingPackIcon, ShippingSendIcon, ShoesIcon, ShopIcon, ShoppingBasketIcon, ShoppingCartIcon, SkipIcon, SmartphonePhotoIcon, SnoozeIcon, SocialJusticeIcon, SpiritualityIcon, SplitBillIcon, SportsIcon, SubscriptionsIcon, SubtractIcon, SurveyIcon, SwitchCardIcon, TermsIcon, TextSizeIcon, TipJarIcon, ToolsIcon, TopUpIcon, ToysIcon, TransferIcon, TravelIcon, TreatYourselfIcon, TrophyIcon, TuitionIcon, UndoIcon, UnlinkIcon, UnlockIcon, UnmuteIcon, UploadIcon, UserProfileIcon, VacationIcon, VerifiedIcon, VideoGamesIcon, ViewIcon, WalletIcon, WandIcon, WarningIcon, WarningSmIcon, WebsiteIcon, WellnessIcon, WildlifeIcon, WithdrawCashIcon, WorkingCapitalIcon, ZoomInIcon, ZoomOutIcon, styles as iconStyles };\n","import _defineProperty from '@babel/runtime/helpers/esm/defineProperty';\nimport _objectWithoutProperties from '@babel/runtime/helpers/esm/objectWithoutProperties';\nimport React from 'react';\n\nvar _excluded = [\"locale\", \"messageFormatter\", \"currencyFormatter\", \"getDisplayNamesObject\", \"phoneFormatter\", \"addressFormatter\", \"exampleGenerator\", \"dateTimeFormatter\", \"children\"];\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nvar IntlContext = React.createContext(null);\n\nvar IntlProvider = function (_ref) {\n var locale = _ref.locale,\n messageFormatter = _ref.messageFormatter,\n currencyFormatter = _ref.currencyFormatter,\n getDisplayNamesObject = _ref.getDisplayNamesObject,\n phoneFormatter = _ref.phoneFormatter,\n addressFormatter = _ref.addressFormatter,\n exampleGenerator = _ref.exampleGenerator,\n dateTimeFormatter = _ref.dateTimeFormatter,\n children = _ref.children,\n rest = _objectWithoutProperties(_ref, _excluded);\n\n return /*#__PURE__*/React.createElement(IntlContext.Provider, {\n value: _objectSpread({\n locale: locale,\n messageFormatter: messageFormatter,\n currencyFormatter: currencyFormatter,\n getDisplayNamesObject: getDisplayNamesObject,\n phoneFormatter: phoneFormatter,\n addressFormatter: addressFormatter,\n exampleGenerator: exampleGenerator,\n dateTimeFormatter: dateTimeFormatter\n }, rest)\n }, children);\n};\n\nfunction ownKeys$1(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread$1(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$1(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$1(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nvar getFormattedMessage = function (intlContext, defaultMessage, id, variables) {\n if (!id) {\n return defaultMessage;\n }\n\n if (!(intlContext && intlContext.messageFormatter)) {\n return id;\n }\n\n return intlContext.messageFormatter({\n id: id\n }).format(variables);\n};\nvar getCurrencyMaskOptions = function (intlContext, maskOptions, currencyType) {\n if (intlContext && intlContext.currencyFormatter) {\n var currencyFormat = intlContext.currencyFormatter({\n currency: currencyType\n });\n var currencyPartsArr = currencyFormat.formatToParts(1000);\n\n var _getIntlCurrencyPatte = getIntlCurrencyPattern(currencyPartsArr),\n intlMaskOptions = _getIntlCurrencyPatte.intlMaskOptions,\n intlCurrencyPrefix = _getIntlCurrencyPatte.intlCurrencyPrefix,\n intlCurrencySuffix = _getIntlCurrencyPatte.intlCurrencySuffix; //set mask-options padFractionalZeros to false and scale to 0 if currency does not support fractional values\n\n\n var currencyFormatOptions = currencyFormat.resolvedOptions();\n\n if (currencyFormatOptions.maximumFractionDigits === 0) {\n intlMaskOptions.padFractionalZeros = false;\n intlMaskOptions.scale = 0;\n }\n\n return {\n currencyMaskOptions: _objectSpread$1(_objectSpread$1({\n padFractionalZeros: true\n }, intlMaskOptions), maskOptions),\n intlCurrencyPrefix: intlCurrencyPrefix,\n intlCurrencySuffix: intlCurrencySuffix\n };\n }\n\n return {\n currencyMaskOptions: maskOptions\n };\n};\n\nfunction getIntlCurrencyPattern(currencyPartsArr) {\n var intlMaskOptions = {\n mask: Number\n };\n var intlCurrencyPrefix = '';\n var intlCurrencySuffix = '';\n currencyPartsArr.forEach(function (_ref, idx) {\n var type = _ref.type,\n value = _ref.value;\n\n switch (type) {\n case 'currencySymbol':\n if (idx === 0) {\n intlCurrencyPrefix = value;\n } else {\n intlCurrencySuffix = value;\n }\n\n break;\n\n case 'currency':\n if (idx === 0) {\n intlCurrencyPrefix = value;\n } else {\n intlCurrencySuffix = value;\n }\n\n break;\n\n case 'group':\n intlMaskOptions.thousandsSeparator = value;\n break;\n\n case 'fraction':\n intlMaskOptions.scale = value.length;\n break;\n\n case 'decimal':\n intlMaskOptions.radix = value;\n break;\n }\n });\n return {\n intlMaskOptions: intlMaskOptions,\n intlCurrencyPrefix: intlCurrencyPrefix,\n intlCurrencySuffix: intlCurrencySuffix\n };\n}\n\nexport { IntlContext, IntlProvider, getCurrencyMaskOptions, getFormattedMessage };\n","import _extends from '@babel/runtime/helpers/esm/extends';\nimport _objectWithoutProperties from '@babel/runtime/helpers/esm/objectWithoutProperties';\nimport React, { forwardRef, useMemo } from 'react';\nimport { devWarning, utilStyles, getColorValue, ColorContext, Shimmer } from '@paypalcorp/pp-react-utils';\nimport _taggedTemplateLiteral from '@babel/runtime/helpers/esm/taggedTemplateLiteral';\nimport { css, useTheme, jsx } from '@emotion/react';\nimport { textStyles } from '@paypalcorp/pp-react-text';\nimport { math } from 'polished';\n\nvar _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8;\nfunction styles(tokens, colorTokens) {\n /* istanbul ignore next */\n if (!Object.keys(tokens).length) {\n devWarning('Missing Emotion theme. Use ThemeProvider from @emotion/react to pass a valid theme from pp-react.');\n return {};\n }\n\n var sysColorLinkAlt = tokens.sysColorLinkAlt,\n sysColorLinkAltHover = tokens.sysColorLinkAltHover,\n sysColorLinkAltActive = tokens.sysColorLinkAltActive,\n sysColorLinkContrast = tokens.sysColorLinkContrast,\n sysColorLinkContrastActive = tokens.sysColorLinkContrastActive,\n sysColorLinkContrastHover = tokens.sysColorLinkContrastHover,\n sysColorLinkMain = tokens.sysColorLinkMain,\n sysColorLinkMainActive = tokens.sysColorLinkMainActive,\n sysColorLinkMainHover = tokens.sysColorLinkMainHover,\n sysSizeIconXs = tokens.sysSizeIconXs,\n sysSizeIconSm = tokens.sysSizeIconSm,\n sysSpaceSm = tokens.sysSpaceSm,\n sysSpaceXl = tokens.sysSpaceXl,\n sysBorderRadiusXs = tokens.sysBorderRadiusXs;\n\n var _utilStyles = utilStyles(tokens),\n focusStyles = _utilStyles.focusStyles,\n shimmerStyles = _utilStyles.shimmerStyles;\n\n var _textStyles = textStyles(tokens),\n bodyStrong = _textStyles.bodyStrong,\n captionStrong = _textStyles.captionStrong;\n\n var base = css(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n label: links_base;\\n text-decoration: none;\\n border-radius: \", \";\\n \", \"\\n &:focus {\\n color: \", \";\\n \", \";\\n }\\n\\n &:focus,\\n &:hover {\\n text-decoration: underline;\\n cursor: pointer;\\n }\\n\\n &:hover {\\n color: \", \";\\n background-color: \", \";\\n }\\n\\n &:active {\\n color: \", \";\\n background-color: \", \";\\n }\\n \"])), sysBorderRadiusXs, bodyStrong({\n color: getColorValue(colorTokens, sysColorLinkMain, 'contrast')\n }), getColorValue(colorTokens, sysColorLinkMain, 'contrast'), focusStyles.focusOffsetElement, getColorValue(colorTokens, sysColorLinkMainHover, 'contrast'), getColorValue(colorTokens, null, 'hover'), getColorValue(colorTokens, sysColorLinkMainActive, 'contrast'), getColorValue(colorTokens, null, 'active'));\n var baseIcon = css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n label: base_icon;\\n position: relative;\\n padding-inline-start: \", \";\\n \"])), math(\"\".concat(sysSizeIconSm, \" + \").concat(sysSpaceSm)));\n var baseSmIcon = css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral([\"\\n label: base_sm_icon;\\n padding-inline-start: \", \";\\n \"])), math(\"\".concat(sysSizeIconXs, \" + \").concat(sysSpaceSm)));\n var secondary = css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral([\"\\n label: secondary;\\n text-decoration: underline;\\n \", \"\\n\\n &:active {\\n color: \", \";\\n text-decoration: none;\\n }\\n\\n &:focus,\\n &:hover {\\n color: \", \";\\n text-decoration: underline;\\n }\\n\\n &:visited {\\n color: \", \";\\n }\\n \"])), bodyStrong({\n color: getColorValue(colorTokens, sysColorLinkAlt, 'contrast')\n }), getColorValue(colorTokens, sysColorLinkAltActive, 'contrast'), getColorValue(colorTokens, sysColorLinkAltHover, 'contrast'), getColorValue(colorTokens, sysColorLinkAlt, 'contrast'));\n var shimmer = css(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral([\"\\n label: shimmer;\\n \", \"\\n \"])), shimmerStyles.defaults({\n height: sysSpaceXl\n }));\n var inverse = css(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral([\"\\n label: inverse;\\n color: \", \";\\n text-decoration: underline;\\n\\n &:visited,\\n &:focus {\\n color: \", \";\\n }\\n\\n &:hover {\\n color: \", \";\\n }\\n\\n &:active {\\n color: \", \";\\n text-decoration: underline;\\n }\\n \"])), getColorValue(colorTokens, sysColorLinkContrast, 'contrast'), getColorValue(colorTokens, sysColorLinkContrast, 'contrast'), getColorValue(colorTokens, sysColorLinkContrastHover, 'contrast'), getColorValue(colorTokens, sysColorLinkContrastActive, 'contrast'));\n var leftIcon = css(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral([\"\\n label: left_icon;\\n position: absolute;\\n inset: 0;\\n \"])));\n /**\n * Get caption sized styles.\n * @param useSecondaryStyles boolean\n * @param useInverseStyles boolean\n * @returns SerializedStyles\n */\n\n var getCaptionStyles = function () {\n var useSecondaryStyles = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n var useInverseStyles = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n var color = getColorValue(colorTokens, sysColorLinkMain, 'contrast');\n var variantName = 'caption_primary';\n\n if (useInverseStyles) {\n variantName = 'caption_inverse';\n color = getColorValue(colorTokens, sysColorLinkContrast, 'contrast');\n }\n\n if (useSecondaryStyles) {\n variantName = 'caption_secondary';\n color = getColorValue(colorTokens, sysColorLinkAlt, 'contrast');\n }\n\n return css(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral([\"\\n label: \", \";\\n \", \";\\n \"])), variantName, captionStrong({\n color: color\n }));\n };\n\n return {\n base: base,\n baseIcon: baseIcon,\n baseSmIcon: baseSmIcon,\n secondary: secondary,\n shimmer: shimmer,\n inverse: inverse,\n leftIcon: leftIcon,\n getCaptionStyles: getCaptionStyles\n };\n}\n\nvar _excluded = [\"inverse\", \"secondary\", \"size\", \"primaryAlt\", \"className\", \"leftIcon\", \"children\", \"as\", \"isLoading\"];\n\nvar internalHosts = new Set(['', 'paypal.com', 'paypal.cn', 'gopay.cn']);\nvar NO_REFERRER = /\\bnoreferrer\\b/;\nvar NO_OPENER = /\\bnoopener\\b/;\nvar Link = forwardRef(function (_ref, ref) {\n var _styles$getCaptionSty;\n\n var inverse = _ref.inverse,\n secondary = _ref.secondary,\n size = _ref.size,\n primaryAlt = _ref.primaryAlt,\n className = _ref.className,\n leftIcon = _ref.leftIcon,\n children = _ref.children,\n _ref$as = _ref.as,\n as = _ref$as === void 0 ? 'a' : _ref$as,\n isLoading = _ref.isLoading,\n rest = _objectWithoutProperties(_ref, _excluded);\n\n var colorTokens = React.useContext(ColorContext);\n var tokens = useTheme(); // Fetch tokens from Emotion context\n\n var _styles = useMemo(function () {\n return styles(tokens, colorTokens);\n }, [tokens, colorTokens]);\n\n if (isLoading) {\n return jsx(Shimmer, _extends({\n css: _styles.shimmer,\n className: className,\n hasStyleDefaults: false,\n isInverse: inverse\n }, rest, {\n \"data-ppui\": \"true\"\n }), children);\n }\n\n var isInternalUrl = function (urlStr) {\n try {\n var url = new URL(urlStr);\n return internalHosts.has(url.hostname);\n } catch (e) {\n devWarning(\"isInternalUrl('\".concat(urlStr, \"'}) failed to parse: \").concat(e));\n }\n\n return false;\n };\n\n var checkForUnsafe = function (urlStr, rel) {\n if (!(NO_REFERRER.test(rel) && NO_OPENER.test(rel) || isInternalUrl(urlStr))) {\n devWarning(\"WARNING! '\".concat(urlStr, \"'\\nOpening 3rd party URL in a new window/tab without setting rel to \\\"noreferrer noopener\\\" is potentially unsafe.\"));\n }\n };\n\n var linkTarget = rest.target,\n _rest$rel = rest.rel,\n rel = _rest$rel === void 0 ? null : _rest$rel,\n _rest$href = rest.href,\n href = _rest$href === void 0 ? '/' : _rest$href;\n\n if (as === 'a' && (linkTarget === null || linkTarget === void 0 ? void 0 : linkTarget.trim())) {\n var _rel;\n\n if (!((_rel = rel) === null || _rel === void 0 ? void 0 : _rel.trim())) {\n rel = 'noreferrer noopener';\n } else {\n checkForUnsafe(href, rel);\n }\n }\n\n var leftIconElement = jsx(\"span\", {\n css: _styles.leftIcon,\n \"data-ppui\": \"true\"\n }, leftIcon);\n var isSecondaryStyles = primaryAlt || secondary;\n var linkStyles = [_styles.base, leftIcon && _styles.baseIcon, leftIcon && size === 'sm' && _styles.baseSmIcon, inverse && _styles.inverse, isSecondaryStyles && _styles.secondary, size === 'sm' && ((_styles$getCaptionSty = _styles.getCaptionStyles) === null || _styles$getCaptionSty === void 0 ? void 0 : _styles$getCaptionSty.call(_styles, isSecondaryStyles, inverse))];\n return jsx(as, _extends({\n css: linkStyles,\n className: className,\n ref: ref,\n \"data-ppui-info\": \"links_4.6.5\",\n target: linkTarget,\n rel: rel\n }, rest), leftIcon && leftIconElement, children);\n});\n\nexport { Link, styles as linkStyles };\n","import _extends from '@babel/runtime/helpers/esm/extends';\nimport _toConsumableArray from '@babel/runtime/helpers/esm/toConsumableArray';\nimport _slicedToArray from '@babel/runtime/helpers/esm/slicedToArray';\nimport _objectWithoutProperties from '@babel/runtime/helpers/esm/objectWithoutProperties';\nimport React, { useMemo, useRef, useEffect, useState } from 'react';\nimport { css, useTheme, jsx } from '@emotion/react';\nimport _taggedTemplateLiteral from '@babel/runtime/helpers/esm/taggedTemplateLiteral';\nimport { devWarning, utilStyles, KeyboardCode } from '@paypalcorp/pp-react-utils';\nimport { CaptionText, BodyText } from '@paypalcorp/pp-react-text';\nimport _defineProperty from '@babel/runtime/helpers/esm/defineProperty';\nimport { CheckmarkIcon } from '@paypalcorp/pp-react-icons';\n\nvar _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14;\nfunction styles(tokens) {\n /* istanbul ignore next */\n if (!Object.keys(tokens).length) {\n devWarning('Missing Emotion theme. Use ThemeProvider from @emotion/react to pass a valid theme from pp-react.');\n return {\n listItem: function listItem() {},\n align: function () {}\n };\n }\n\n var sysColorBackgroundMediumContrast = tokens.sysColorBackgroundMediumContrast,\n sysColorPrimaryMain = tokens.sysColorPrimaryMain,\n sysSpaceLg = tokens.sysSpaceLg,\n sysSpaceMd = tokens.sysSpaceMd,\n sysSpaceSm = tokens.sysSpaceSm,\n sysSpaceXs = tokens.sysSpaceXs,\n sysColorBackgroundSurface = tokens.sysColorBackgroundSurface,\n sysColorBackgroundSurfaceHover = tokens.sysColorBackgroundSurfaceHover,\n sysColorBackgroundSurfaceActive = tokens.sysColorBackgroundSurfaceActive;\n\n var _utilStyles = utilStyles(tokens),\n focusStyles = _utilStyles.focusStyles;\n\n var base = css(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n label: list_base;\\n list-style: none;\\n padding: 0;\\n margin: 0;\\n background-color: transparent;\\n \"])));\n var listItemWrapper = css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n label: list_item_wrapper;\\n padding: \", \" \", \";\\n display: flex;\\n text-decoration: none;\\n background-color: \", \";\\n outline: none;\\n\\n > div:not(:last-child),\\n a:not(:last-child) {\\n margin-inline-end: \", \";\\n }\\n \"])), sysSpaceMd, sysSpaceLg, sysColorBackgroundSurface, sysSpaceSm);\n var hoverAndActiveStyles = css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral([\"\\n label: hover_active;\\n cursor: pointer;\\n position: relative;\\n &:hover {\\n background-color: \", \";\\n }\\n &:active {\\n background-color: \", \";\\n }\\n \"])), sysColorBackgroundSurfaceHover, sysColorBackgroundSurfaceActive);\n var highlight = css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral([\"\\n label: highlight;\\n background-color: \", \";\\n \"])), sysColorBackgroundSurfaceHover);\n var decoration = css(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral([\"\\n label: decoration;\\n display: inherit;\\n color: \", \"; // Possible Breaking Change - Review later with team.\\n pointer-events: none;\\n flex-grow: 0;\\n \"])), sysColorPrimaryMain);\n var content = css(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral([\"\\n label: content;\\n align-self: center;\\n display: inline-flex;\\n flex-direction: column;\\n gap: \", \";\\n pointer-events: none;\\n flex-grow: 1;\\n \"])), sysSpaceXs);\n var action = css(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral([\"\\n label: action;\\n * {\\n pointer-events: auto;\\n }\\n \"])));\n var trailingContent = css(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral([\"\\n label: trailing_content;\\n align-self: center;\\n text-align: right;\\n display: flex;\\n flex-direction: column;\\n gap: \", \";\\n pointer-events: none;\\n flex-grow: 0;\\n [dir='rtl'] & {\\n text-align: left;\\n justify-self: end;\\n }\\n \"])), sysSpaceXs);\n var text = css(_templateObject9 || (_templateObject9 = _taggedTemplateLiteral([\"\\n label: text;\\n margin: 0;\\n \"])));\n var labelDescription = css(_templateObject10 || (_templateObject10 = _taggedTemplateLiteral([\"\\n label: secondary_text;\\n \", \";\\n color: \", \";\\n \"])), text, sysColorBackgroundMediumContrast);\n\n var align = function () {\n var alignment = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'top';\n return css(_templateObject11 || (_templateObject11 = _taggedTemplateLiteral([\"\\n align-self: \", \";\\n \"])), {\n top: 'start',\n bottom: 'end',\n center: 'center'\n }[alignment] || 'start');\n };\n\n var focusActive = css(_templateObject12 || (_templateObject12 = _taggedTemplateLiteral([\"\\n label: keyboard_active;\\n position: relative;\\n &:focus {\\n \", \";\\n }\\n \"])), focusStyles.focusInlineElement);\n var sectionList = css(_templateObject13 || (_templateObject13 = _taggedTemplateLiteral([\"\\n label: section_list;\\n list-style-type: none;\\n margin: 0;\\n padding: 0;\\n \"])));\n var title = css(_templateObject14 || (_templateObject14 = _taggedTemplateLiteral([\"\\n label: title;\\n padding: \", \" \", \";\\n \"])), sysSpaceMd, sysSpaceLg);\n return {\n base: base,\n listItemWrapper: listItemWrapper,\n hoverAndActiveStyles: hoverAndActiveStyles,\n highlight: highlight,\n content: content,\n action: action,\n decoration: decoration,\n trailingContent: trailingContent,\n text: text,\n labelDescription: labelDescription,\n align: align,\n focusActive: focusActive,\n sectionList: sectionList,\n title: title\n };\n}\n\nvar _excluded = [\"label\", \"labelLineClamp\", \"status\", \"labelContext\", \"labelDescription\", \"labelDescriptionLineClamp\", \"alert\", \"action\", \"value\", \"decoration\", \"trailingContent\", \"navigationOptions\", \"className\", \"focusActive\", \"isFocused\", \"isHighlighted\", \"isSelected\", \"as\", \"isItemFocusable\", \"isItemNavigational\", \"ariaDescribedby\", \"role\"];\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n/* eslint-disable complexity */\n\nvar ListItem = function (_ref) {\n var label = _ref.label,\n labelLineClamp = _ref.labelLineClamp,\n status = _ref.status,\n labelContext = _ref.labelContext,\n labelDescription = _ref.labelDescription,\n labelDescriptionLineClamp = _ref.labelDescriptionLineClamp,\n alert = _ref.alert,\n action = _ref.action,\n value = _ref.value,\n decoration = _ref.decoration,\n trailingContent = _ref.trailingContent,\n navigationOptions = _ref.navigationOptions,\n className = _ref.className,\n focusActive = _ref.focusActive,\n isFocused = _ref.isFocused,\n isHighlighted = _ref.isHighlighted,\n isSelected = _ref.isSelected,\n _ref$as = _ref.as,\n as = _ref$as === void 0 ? 'div' : _ref$as,\n isItemFocusable = _ref.isItemFocusable,\n isItemNavigational = _ref.isItemNavigational,\n ariaDescribedby = _ref.ariaDescribedby,\n role = _ref.role,\n rest = _objectWithoutProperties(_ref, _excluded);\n\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n var listRef = useRef();\n useEffect(function () {\n if (isFocused) {\n listRef.current.focus();\n }\n }, [isFocused]);\n var listItemWrapperCSS = [_styles.listItemWrapper, isItemNavigational && _styles.hoverAndActiveStyles, isHighlighted && _styles.highlight, isItemFocusable && _styles.focusActive];\n var decorationCSS = [_styles.decoration, decoration && _styles.align(decoration.align)];\n var trailingContentCSS = [_styles.trailingContent, trailingContent && _styles.align(trailingContent.align)];\n\n var navigationProps = navigationOptions && _objectSpread({}, navigationOptions);\n\n return jsx(as, _extends({\n css: listItemWrapperCSS,\n role: role,\n tabIndex: -1,\n ref: listRef\n }, navigationProps, rest, {\n \"aria-describedby\": ariaDescribedby,\n \"aria-selected\": isSelected !== undefined && isSelected,\n \"data-ppui\": \"true\"\n }), (decoration === null || decoration === void 0 ? void 0 : decoration.thumbnail) && jsx(\"div\", {\n css: decorationCSS,\n \"data-ppui\": \"true\"\n }, decoration.thumbnail), (!!label || !!alert || !!action || !!status || !!labelContext || !!labelDescription) && jsx(\"div\", {\n css: _styles.content,\n \"data-ppui\": \"true\"\n }, status && jsx(\"div\", {\n \"data-ppui\": \"true\"\n }, status), labelContext && jsx(CaptionText, {\n as: \"p\",\n css: _styles.labelDescription,\n \"data-ppui\": \"true\"\n }, labelContext, \" \\xA0\"), label && jsx(BodyText, {\n as: \"p\",\n strong: isSelected,\n css: _styles.text,\n clampAtLine: labelLineClamp,\n \"data-ppui\": \"true\"\n }, label, \" \\xA0\"), labelDescription && jsx(CaptionText, {\n as: \"p\",\n css: _styles.labelDescription,\n clampAtLine: labelDescriptionLineClamp,\n \"data-ppui\": \"true\"\n }, labelDescription, \" \\xA0\"), alert, action && jsx(\"div\", {\n css: _styles.action,\n \"data-ppui\": \"true\"\n }, action)), (trailingContent || isSelected) && jsx(\"div\", {\n css: trailingContentCSS,\n \"data-ppui\": \"true\"\n }, isSelected ? jsx(CheckmarkIcon, {\n size: \"sm\",\n color: \"SelectedMain\",\n \"data-ppui\": \"true\"\n }) : null, (trailingContent === null || trailingContent === void 0 ? void 0 : trailingContent.status) && jsx(\"div\", {\n \"data-ppui\": \"true\"\n }, trailingContent.status), (trailingContent === null || trailingContent === void 0 ? void 0 : trailingContent.labelContext) && jsx(CaptionText, {\n as: \"p\",\n css: _styles.labelDescription,\n \"data-ppui\": \"true\"\n }, trailingContent.labelContext), (trailingContent === null || trailingContent === void 0 ? void 0 : trailingContent.label) && jsx(BodyText, {\n as: \"p\",\n css: _styles.text,\n \"data-ppui\": \"true\"\n }, trailingContent.label), (trailingContent === null || trailingContent === void 0 ? void 0 : trailingContent.labelDescription) && jsx(CaptionText, {\n as: \"p\",\n css: _styles.labelDescription,\n \"data-ppui\": \"true\"\n }, trailingContent.labelDescription), (trailingContent === null || trailingContent === void 0 ? void 0 : trailingContent.action) && jsx(\"div\", {\n css: _styles.action,\n \"data-ppui\": \"true\"\n }, trailingContent.action), (trailingContent === null || trailingContent === void 0 ? void 0 : trailingContent.icon) && jsx(\"div\", {\n css: _styles.action,\n \"data-ppui\": \"true\"\n }, trailingContent.icon)));\n};\n\nvar _excluded$1 = [\"options\", \"listStyles\", \"focusActive\", \"activeIndex\", \"focusedIndex\", \"onKeyDown\", \"onClick\", \"onFocus\", \"onBlur\", \"hasSections\", \"isTextHighlighted\", \"itemAs\"];\nvar List = React.forwardRef(function (_ref, ref) {\n var options = _ref.options,\n listStyles = _ref.listStyles,\n focusActive = _ref.focusActive,\n _ref$activeIndex = _ref.activeIndex,\n activeIndex = _ref$activeIndex === void 0 ? -1 : _ref$activeIndex,\n _ref$focusedIndex = _ref.focusedIndex,\n focusedIndex = _ref$focusedIndex === void 0 ? -1 : _ref$focusedIndex,\n onKeyDown = _ref.onKeyDown,\n onClick = _ref.onClick,\n onFocus = _ref.onFocus,\n onBlur = _ref.onBlur,\n hasSections = _ref.hasSections,\n isTextHighlighted = _ref.isTextHighlighted,\n _ref$itemAs = _ref.itemAs,\n itemAs = _ref$itemAs === void 0 ? ListItem : _ref$itemAs,\n rest = _objectWithoutProperties(_ref, _excluded$1);\n\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n var listRef = useRef();\n var computedRef = ref || listRef;\n\n var _useState = useState(focusedIndex),\n _useState2 = _slicedToArray(_useState, 2),\n focusedIndexRef = _useState2[0],\n setFocusedIndex = _useState2[1];\n\n useEffect(function () {\n setFocusedIndex(focusedIndex);\n }, [focusedIndex]);\n\n var handleClick = function (evt, index) {\n setFocusedIndex(index);\n /* istanbul ignore next */\n\n if (onClick) {\n onClick(evt, index);\n }\n };\n /* Create a flat list of sectionItems for highlight and selection by index */\n\n\n var normalizeSectionItem = function (items) {\n return items.reduce(function (acc, item) {\n /* istanbul ignore next */\n if (item === null || item === void 0 ? void 0 : item.sectionItems) {\n acc.push.apply(acc, _toConsumableArray(item.sectionItems));\n }\n\n return acc;\n }, []);\n };\n\n var listItems = function (optList, ItemAs, sectionId) {\n var normalizedIndex = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 0;\n return optList.map(function (option, index) {\n var _option$value;\n\n if (typeof option.label !== 'string' && !option.value) {\n devWarning('When label is a React Element, `value` property is necessary in option');\n }\n\n var hasOnClick = onClick || option.onClick;\n var isItemNavigational = !!hasOnClick || !!option.navigationOptions;\n var idx = hasSections ? index + normalizedIndex : index;\n var otherProps = {\n value: (_option$value = option.value) !== null && _option$value !== void 0 ? _option$value : option.label,\n role: hasOnClick ? 'option' : null,\n focusActive: focusActive,\n isFocused: focusActive && focusedIndexRef === idx,\n isHighlighted: activeIndex === idx,\n isItemNavigational: isItemNavigational,\n isItemFocusable: focusActive !== null && focusActive !== void 0 ? focusActive : isItemNavigational,\n as: option.navigationOptions ? 'a' : 'div',\n ariaDescribedby: hasSections ? sectionId : null\n };\n return jsx(\"li\", {\n className: option.className //@ts-ignore\n ,\n onClick: function (evt) {\n return handleClick(evt, idx);\n },\n key: idx,\n role: \"listitem\",\n \"data-value\": option.value,\n \"data-ppui\": \"true\"\n }, jsx(ItemAs, _extends({}, otherProps, option, {\n \"data-ppui\": \"true\"\n })));\n });\n };\n\n return jsx(\"menu\", _extends({\n css: [_styles.base, listStyles],\n ref: computedRef,\n tabIndex: focusActive && focusedIndexRef === -1 ? 0 : -1\n }, rest, {\n onFocus: function handleListFocus(evt) {\n var isFocusedCurrent = focusActive && evt.target === computedRef.current && evt.currentTarget === computedRef.current;\n\n if (!onKeyDown && isFocusedCurrent) {\n setFocusedIndex(0);\n }\n\n if (onFocus) {\n onFocus(evt);\n }\n },\n onBlur: function handleListBlur(evt) {\n var isTargetContained = !computedRef.current.contains(evt.target) || !evt.relatedTarget;\n\n if (!onKeyDown && focusActive && isTargetContained) {\n setFocusedIndex(-1);\n }\n\n if (onBlur) {\n onBlur(evt);\n }\n },\n onKeyDown: function handleKey(evt) {\n var tempOptions = hasSections ? normalizeSectionItem(options) : options;\n\n if (onKeyDown) {\n onKeyDown(evt);\n } else {\n /* istanbul ignore next */\n var KeyCode = new KeyboardCode(evt.key);\n\n if (KeyCode.IS_ARROW_UP && focusedIndexRef > 0) {\n evt.preventDefault();\n setFocusedIndex(focusedIndexRef - 1);\n } else if (KeyCode.IS_ARROW_DOWN && focusedIndexRef < tempOptions.length - 1) {\n evt.preventDefault();\n setFocusedIndex(focusedIndexRef + 1);\n } else if ((KeyCode.IS_ENTER || KeyCode.IS_SPACEBAR) && onClick) {\n evt.preventDefault();\n handleClick(evt, focusedIndexRef);\n }\n }\n },\n \"data-ppui\": \"true\"\n }), hasSections ? function listSectionItems(optList, ItemAs) {\n var currentNormalizedIndex = 0;\n return optList.reduce(function (acc, option) {\n var _option$sectionItems;\n\n if (option === null || option === void 0 ? void 0 : (_option$sectionItems = option.sectionItems) === null || _option$sectionItems === void 0 ? void 0 : _option$sectionItems.length) {\n /* istanbul ignore next */\n var uniqueKey = option.id ? option.id : Math.floor(Math.random() * (1000 - 1));\n acc.push(jsx(\"li\", {\n role: \"presentation\",\n key: uniqueKey,\n \"data-ppui\": \"true\"\n }, option.title && jsx(\"div\", {\n css: _styles.title,\n id: option.id,\n \"aria-hidden\": \"true\",\n \"data-ppui\": \"true\"\n }, jsx(CaptionText, {\n \"data-ppui\": \"true\"\n }, option.title)), jsx(\"menu\", _extends({\n \"aria-labelledby\": option.id,\n css: _styles.sectionList\n }, rest, {\n \"data-ppui\": \"true\"\n }), listItems(option.sectionItems, ItemAs, option.id, currentNormalizedIndex))));\n currentNormalizedIndex += option.sectionItems.length;\n }\n\n return acc;\n }, []);\n }(options, itemAs) : listItems(options, itemAs));\n});\n\nexport { List, ListItem, styles as listStyles };\n","import _extends from '@babel/runtime/helpers/esm/extends';\nimport _objectWithoutProperties from '@babel/runtime/helpers/esm/objectWithoutProperties';\nimport { useMemo } from 'react';\nimport { keyframes, css, useTheme, jsx } from '@emotion/react';\nimport _taggedTemplateLiteral from '@babel/runtime/helpers/esm/taggedTemplateLiteral';\nimport { devWarning, utilStyles } from '@paypalcorp/pp-react-utils';\n\nvar _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7;\nfunction styles(tokens) {\n /* istanbul ignore next */\n if (!Object.keys(tokens).length) {\n devWarning('Missing Emotion theme. Use ThemeProvider from @emotion/react to pass a valid theme from pp-react.');\n return {};\n }\n\n var sysColorPrimaryMain = tokens.sysColorPrimaryMain,\n sysColorPrimaryContrast = tokens.sysColorPrimaryContrast,\n sysSizeCircleXs = tokens.sysSizeCircleXs,\n sysSizeCircleSm = tokens.sysSizeCircleSm,\n sysSizeCircleMd = tokens.sysSizeCircleMd,\n sysSizeCircleXl = tokens.sysSizeCircleXl,\n sysBorderThicknessEmphasis = tokens.sysBorderThicknessEmphasis,\n sysMotionDurationLoopStandard = tokens.sysMotionDurationLoopStandard;\n var borderSpinner = keyframes(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n to {\\n transform: rotate(360deg);\\n }\\n \"])));\n\n var _utilStyles = utilStyles(tokens),\n screenReader = _utilStyles.screenReader,\n variables = _utilStyles.variables;\n\n var ppuiEaseLoopStandard = variables.ppuiEaseLoopStandard;\n var base = css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n label: loading-spinner_base;\\n width: \", \";\\n height: \", \";\\n color: \", \";\\n animation: \", \" \", \"\\n \", \" infinite;\\n border: \", \" solid currentColor;\\n border-radius: 50%;\\n clip-path: polygon(50% 0%, 50% 50%, 100% 50%, 100% 100%, 0 100%, 0 0);\\n \"])), sysSizeCircleXs, sysSizeCircleXs, sysColorPrimaryMain, borderSpinner, sysMotionDurationLoopStandard, ppuiEaseLoopStandard, sysBorderThicknessEmphasis); // Size Xs\n\n var sizeXs = css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral([\"\\n label: size_xs;\\n width: \", \";\\n height: \", \";\\n \"])), sysSizeCircleXs, sysSizeCircleXs); // Size md\n\n var sizeMd = css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral([\"\\n label: size_md;\\n width: \", \";\\n height: \", \";\\n \"])), sysSizeCircleSm, sysSizeCircleSm); // Size Lg\n\n var sizeLg = css(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral([\"\\n label: size_lg;\\n width: \", \";\\n height: \", \";\\n \"])), sysSizeCircleMd, sysSizeCircleMd); // Size Xl\n\n var sizeXl = css(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral([\"\\n label: size_xl;\\n width: \", \";\\n height: \", \";\\n \"])), sysSizeCircleXl, sysSizeCircleXl); // Inverse\n\n var inverse = css(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral([\"\\n label: inverse;\\n color: \", \";\\n \"])), sysColorPrimaryContrast);\n return {\n base: base,\n sizeXs: sizeXs,\n sizeMd: sizeMd,\n sizeLg: sizeLg,\n sizeXl: sizeXl,\n inverse: inverse,\n screenReader: screenReader\n };\n}\n\nvar _excluded = [\"as\", \"className\", \"inverse\", \"size\", \"screenReaderText\"];\n\nvar LoadingSpinner = function (_ref) {\n var _ref$as = _ref.as,\n as = _ref$as === void 0 ? 'p' : _ref$as,\n className = _ref.className,\n inverse = _ref.inverse,\n size = _ref.size,\n screenReaderText = _ref.screenReaderText,\n rest = _objectWithoutProperties(_ref, _excluded);\n\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n var sizesStyleMap = {\n xs: _styles.sizeXs,\n // to be used for stateful buttons ONLY.\n sm: '',\n md: _styles.sizeMd,\n lg: _styles.sizeLg,\n xl: _styles.sizeXl\n };\n var cssVal = [_styles.base, inverse && _styles.inverse, sizesStyleMap[size]];\n return jsx(as, _extends({\n css: cssVal,\n className: className,\n \"data-ppui-info\": \"loading-spinner_3.2.2\"\n }, rest, {\n role: \"alert\"\n }), jsx(\"span\", {\n css: _styles.screenReader,\n \"data-ppui\": \"true\"\n }, screenReaderText));\n};\n\nexport { LoadingSpinner, styles as loadingSpinnerStyles };\n","import _extends from '@babel/runtime/helpers/esm/extends';\nimport _objectWithoutProperties$1 from '@babel/runtime/helpers/esm/objectWithoutProperties';\nimport React, { forwardRef, useRef, useEffect } from 'react';\nimport { TextInput } from '@paypalcorp/pp-react-text-input';\n\nfunction _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, _typeof(obj);\n}\n\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\n\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n Object.defineProperty(Constructor, \"prototype\", {\n writable: false\n });\n return Constructor;\n}\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n Object.defineProperty(subClass, \"prototype\", {\n writable: false\n });\n if (superClass) _setPrototypeOf(subClass, superClass);\n}\n\nfunction _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}\n\nfunction _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n return _setPrototypeOf(o, p);\n}\n\nfunction _isNativeReflectConstruct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n if (Reflect.construct.sham) return false;\n if (typeof Proxy === \"function\") return true;\n\n try {\n Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));\n return true;\n } catch (e) {\n return false;\n }\n}\n\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n\n return target;\n}\n\nfunction _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n\n var target = _objectWithoutPropertiesLoose(source, excluded);\n\n var key, i;\n\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n\n return target;\n}\n\nfunction _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return self;\n}\n\nfunction _possibleConstructorReturn(self, call) {\n if (call && (typeof call === \"object\" || typeof call === \"function\")) {\n return call;\n } else if (call !== void 0) {\n throw new TypeError(\"Derived constructors may only return object or undefined\");\n }\n\n return _assertThisInitialized(self);\n}\n\nfunction _createSuper(Derived) {\n var hasNativeReflectConstruct = _isNativeReflectConstruct();\n\n return function _createSuperInternal() {\n var Super = _getPrototypeOf(Derived),\n result;\n\n if (hasNativeReflectConstruct) {\n var NewTarget = _getPrototypeOf(this).constructor;\n\n result = Reflect.construct(Super, arguments, NewTarget);\n } else {\n result = Super.apply(this, arguments);\n }\n\n return _possibleConstructorReturn(this, result);\n };\n}\n\nfunction _superPropBase(object, property) {\n while (!Object.prototype.hasOwnProperty.call(object, property)) {\n object = _getPrototypeOf(object);\n if (object === null) break;\n }\n\n return object;\n}\n\nfunction _get() {\n if (typeof Reflect !== \"undefined\" && Reflect.get) {\n _get = Reflect.get.bind();\n } else {\n _get = function _get(target, property, receiver) {\n var base = _superPropBase(target, property);\n\n if (!base) return;\n var desc = Object.getOwnPropertyDescriptor(base, property);\n\n if (desc.get) {\n return desc.get.call(arguments.length < 3 ? target : receiver);\n }\n\n return desc.value;\n };\n }\n\n return _get.apply(this, arguments);\n}\n\nfunction set(target, property, value, receiver) {\n if (typeof Reflect !== \"undefined\" && Reflect.set) {\n set = Reflect.set;\n } else {\n set = function set(target, property, value, receiver) {\n var base = _superPropBase(target, property);\n\n var desc;\n\n if (base) {\n desc = Object.getOwnPropertyDescriptor(base, property);\n\n if (desc.set) {\n desc.set.call(receiver, value);\n return true;\n } else if (!desc.writable) {\n return false;\n }\n }\n\n desc = Object.getOwnPropertyDescriptor(receiver, property);\n\n if (desc) {\n if (!desc.writable) {\n return false;\n }\n\n desc.value = value;\n Object.defineProperty(receiver, property, desc);\n } else {\n _defineProperty(receiver, property, value);\n }\n\n return true;\n };\n }\n\n return set(target, property, value, receiver);\n}\n\nfunction _set(target, property, value, receiver, isStrict) {\n var s = set(target, property, value, receiver || target);\n\n if (!s && isStrict) {\n throw new Error('failed to set property');\n }\n\n return value;\n}\n\nfunction _slicedToArray(arr, i) {\n return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();\n}\n\nfunction _toConsumableArray(arr) {\n return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread();\n}\n\nfunction _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return _arrayLikeToArray(arr);\n}\n\nfunction _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}\n\nfunction _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter);\n}\n\nfunction _iterableToArrayLimit(arr, i) {\n var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"];\n\n if (_i == null) return;\n var _arr = [];\n var _n = true;\n var _d = false;\n\n var _s, _e;\n\n try {\n for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n\n return _arr;\n}\n\nfunction _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n}\n\nfunction _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n\n return arr2;\n}\n\nfunction _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\nfunction _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\n/**\n Provides details of changing model value\n @param {Object} [details]\n @param {string} [details.inserted] - Inserted symbols\n @param {boolean} [details.skip] - Can skip chars\n @param {number} [details.removeCount] - Removed symbols count\n @param {number} [details.tailShift] - Additional offset if any changes occurred before tail\n*/\nvar ChangeDetails = /*#__PURE__*/function () {\n /** Inserted symbols */\n\n /** Can skip chars */\n\n /** Additional offset if any changes occurred before tail */\n\n /** Raw inserted is used by dynamic mask */\n function ChangeDetails(details) {\n _classCallCheck(this, ChangeDetails);\n\n Object.assign(this, {\n inserted: '',\n rawInserted: '',\n skip: false,\n tailShift: 0\n }, details);\n }\n /**\n Aggregate changes\n @returns {ChangeDetails} `this`\n */\n\n\n _createClass(ChangeDetails, [{\n key: \"aggregate\",\n value: function aggregate(details) {\n this.rawInserted += details.rawInserted;\n this.skip = this.skip || details.skip;\n this.inserted += details.inserted;\n this.tailShift += details.tailShift;\n return this;\n }\n /** Total offset considering all changes */\n\n }, {\n key: \"offset\",\n get: function get() {\n return this.tailShift + this.inserted.length;\n }\n }]);\n\n return ChangeDetails;\n}();\n\n/** Checks if value is string */\n\nfunction isString(str) {\n return typeof str === 'string' || str instanceof String;\n}\n/**\n Direction\n @prop {string} NONE\n @prop {string} LEFT\n @prop {string} FORCE_LEFT\n @prop {string} RIGHT\n @prop {string} FORCE_RIGHT\n*/\n\nvar DIRECTION = {\n NONE: 'NONE',\n LEFT: 'LEFT',\n FORCE_LEFT: 'FORCE_LEFT',\n RIGHT: 'RIGHT',\n FORCE_RIGHT: 'FORCE_RIGHT'\n};\n/** */\n\nfunction forceDirection(direction) {\n switch (direction) {\n case DIRECTION.LEFT:\n return DIRECTION.FORCE_LEFT;\n\n case DIRECTION.RIGHT:\n return DIRECTION.FORCE_RIGHT;\n\n default:\n return direction;\n }\n}\n/** Escapes regular expression control chars */\n\nfunction escapeRegExp(str) {\n return str.replace(/([.*+?^=!:${}()|[\\]\\/\\\\])/g, '\\\\$1');\n}\nfunction normalizePrepare(prep) {\n return Array.isArray(prep) ? prep : [prep, new ChangeDetails()];\n} // cloned from https://github.com/epoberezkin/fast-deep-equal with small changes\n\nfunction objectIncludes(b, a) {\n if (a === b) return true;\n var arrA = Array.isArray(a),\n arrB = Array.isArray(b),\n i;\n\n if (arrA && arrB) {\n if (a.length != b.length) return false;\n\n for (i = 0; i < a.length; i++) {\n if (!objectIncludes(a[i], b[i])) return false;\n }\n\n return true;\n }\n\n if (arrA != arrB) return false;\n\n if (a && b && _typeof(a) === 'object' && _typeof(b) === 'object') {\n var dateA = a instanceof Date,\n dateB = b instanceof Date;\n if (dateA && dateB) return a.getTime() == b.getTime();\n if (dateA != dateB) return false;\n var regexpA = a instanceof RegExp,\n regexpB = b instanceof RegExp;\n if (regexpA && regexpB) return a.toString() == b.toString();\n if (regexpA != regexpB) return false;\n var keys = Object.keys(a); // if (keys.length !== Object.keys(b).length) return false;\n\n for (i = 0; i < keys.length; i++) {\n // $FlowFixMe ... ???\n if (!Object.prototype.hasOwnProperty.call(b, keys[i])) return false;\n }\n\n for (i = 0; i < keys.length; i++) {\n if (!objectIncludes(b[keys[i]], a[keys[i]])) return false;\n }\n\n return true;\n } else if (a && b && typeof a === 'function' && typeof b === 'function') {\n return a.toString() === b.toString();\n }\n\n return false;\n}\n\n/** Provides details of changing input */\n\nvar ActionDetails = /*#__PURE__*/function () {\n /** Current input value */\n\n /** Current cursor position */\n\n /** Old input value */\n\n /** Old selection */\n function ActionDetails(value, cursorPos, oldValue, oldSelection) {\n _classCallCheck(this, ActionDetails);\n\n this.value = value;\n this.cursorPos = cursorPos;\n this.oldValue = oldValue;\n this.oldSelection = oldSelection; // double check if left part was changed (autofilling, other non-standard input triggers)\n\n while (this.value.slice(0, this.startChangePos) !== this.oldValue.slice(0, this.startChangePos)) {\n --this.oldSelection.start;\n }\n }\n /**\n Start changing position\n @readonly\n */\n\n\n _createClass(ActionDetails, [{\n key: \"startChangePos\",\n get: function get() {\n return Math.min(this.cursorPos, this.oldSelection.start);\n }\n /**\n Inserted symbols count\n @readonly\n */\n\n }, {\n key: \"insertedCount\",\n get: function get() {\n return this.cursorPos - this.startChangePos;\n }\n /**\n Inserted symbols\n @readonly\n */\n\n }, {\n key: \"inserted\",\n get: function get() {\n return this.value.substr(this.startChangePos, this.insertedCount);\n }\n /**\n Removed symbols count\n @readonly\n */\n\n }, {\n key: \"removedCount\",\n get: function get() {\n // Math.max for opposite operation\n return Math.max(this.oldSelection.end - this.startChangePos || // for Delete\n this.oldValue.length - this.value.length, 0);\n }\n /**\n Removed symbols\n @readonly\n */\n\n }, {\n key: \"removed\",\n get: function get() {\n return this.oldValue.substr(this.startChangePos, this.removedCount);\n }\n /**\n Unchanged head symbols\n @readonly\n */\n\n }, {\n key: \"head\",\n get: function get() {\n return this.value.substring(0, this.startChangePos);\n }\n /**\n Unchanged tail symbols\n @readonly\n */\n\n }, {\n key: \"tail\",\n get: function get() {\n return this.value.substring(this.startChangePos + this.insertedCount);\n }\n /**\n Remove direction\n @readonly\n */\n\n }, {\n key: \"removeDirection\",\n get: function get() {\n if (!this.removedCount || this.insertedCount) return DIRECTION.NONE; // align right if delete at right\n\n return (this.oldSelection.end === this.cursorPos || this.oldSelection.start === this.cursorPos) && // if not range removed (event with backspace)\n this.oldSelection.end === this.oldSelection.start ? DIRECTION.RIGHT : DIRECTION.LEFT;\n }\n }]);\n\n return ActionDetails;\n}();\n\n/** Provides details of continuous extracted tail */\nvar ContinuousTailDetails = /*#__PURE__*/function () {\n /** Tail value as string */\n\n /** Tail start position */\n\n /** Start position */\n function ContinuousTailDetails() {\n var value = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';\n var from = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;\n var stop = arguments.length > 2 ? arguments[2] : undefined;\n\n _classCallCheck(this, ContinuousTailDetails);\n\n this.value = value;\n this.from = from;\n this.stop = stop;\n }\n\n _createClass(ContinuousTailDetails, [{\n key: \"toString\",\n value: function toString() {\n return this.value;\n }\n }, {\n key: \"extend\",\n value: function extend(tail) {\n this.value += String(tail);\n }\n }, {\n key: \"appendTo\",\n value: function appendTo(masked) {\n return masked.append(this.toString(), {\n tail: true\n }).aggregate(masked._appendPlaceholder());\n }\n }, {\n key: \"state\",\n get: function get() {\n return {\n value: this.value,\n from: this.from,\n stop: this.stop\n };\n },\n set: function set(state) {\n Object.assign(this, state);\n }\n }, {\n key: \"unshift\",\n value: function unshift(beforePos) {\n if (!this.value.length || beforePos != null && this.from >= beforePos) return '';\n var shiftChar = this.value[0];\n this.value = this.value.slice(1);\n return shiftChar;\n }\n }, {\n key: \"shift\",\n value: function shift() {\n if (!this.value.length) return '';\n var shiftChar = this.value[this.value.length - 1];\n this.value = this.value.slice(0, -1);\n return shiftChar;\n }\n }]);\n\n return ContinuousTailDetails;\n}();\n\n/**\n * Applies mask on element.\n * @constructor\n * @param {HTMLInputElement|HTMLTextAreaElement|MaskElement} el - Element to apply mask\n * @param {Object} opts - Custom mask options\n * @return {InputMask}\n */\nfunction IMask(el) {\n var opts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n // currently available only for input-like elements\n return new IMask.InputMask(el, opts);\n}\n\n/** Supported mask type */\n\n/** Provides common masking stuff */\nvar Masked = /*#__PURE__*/function () {\n // $Shape; TODO after fix https://github.com/facebook/flow/issues/4773\n\n /** @type {Mask} */\n\n /** */\n // $FlowFixMe no ideas\n\n /** Transforms value before mask processing */\n\n /** Validates if value is acceptable */\n\n /** Does additional processing in the end of editing */\n\n /** Format typed value to string */\n\n /** Parse strgin to get typed value */\n\n /** Enable characters overwriting */\n\n /** */\n\n /** */\n function Masked(opts) {\n _classCallCheck(this, Masked);\n\n this._value = '';\n\n this._update(Object.assign({}, Masked.DEFAULTS, opts));\n\n this.isInitialized = true;\n }\n /** Sets and applies new options */\n\n\n _createClass(Masked, [{\n key: \"updateOptions\",\n value: function updateOptions(opts) {\n if (!Object.keys(opts).length) return; // $FlowFixMe\n\n this.withValueRefresh(this._update.bind(this, opts));\n }\n /**\n Sets new options\n @protected\n */\n\n }, {\n key: \"_update\",\n value: function _update(opts) {\n Object.assign(this, opts);\n }\n /** Mask state */\n\n }, {\n key: \"state\",\n get: function get() {\n return {\n _value: this.value\n };\n },\n set: function set(state) {\n this._value = state._value;\n }\n /** Resets value */\n\n }, {\n key: \"reset\",\n value: function reset() {\n this._value = '';\n }\n /** */\n\n }, {\n key: \"value\",\n get: function get() {\n return this._value;\n },\n set: function set(value) {\n this.resolve(value);\n }\n /** Resolve new value */\n\n }, {\n key: \"resolve\",\n value: function resolve(value) {\n this.reset();\n this.append(value, {\n input: true\n }, '');\n this.doCommit();\n return this.value;\n }\n /** */\n\n }, {\n key: \"unmaskedValue\",\n get: function get() {\n return this.value;\n },\n set: function set(value) {\n this.reset();\n this.append(value, {}, '');\n this.doCommit();\n }\n /** */\n\n }, {\n key: \"typedValue\",\n get: function get() {\n return this.doParse(this.value);\n },\n set: function set(value) {\n this.value = this.doFormat(value);\n }\n /** Value that includes raw user input */\n\n }, {\n key: \"rawInputValue\",\n get: function get() {\n return this.extractInput(0, this.value.length, {\n raw: true\n });\n },\n set: function set(value) {\n this.reset();\n this.append(value, {\n raw: true\n }, '');\n this.doCommit();\n }\n /** */\n\n }, {\n key: \"isComplete\",\n get: function get() {\n return true;\n }\n /** */\n\n }, {\n key: \"isFilled\",\n get: function get() {\n return this.isComplete;\n }\n /** Finds nearest input position in direction */\n\n }, {\n key: \"nearestInputPos\",\n value: function nearestInputPos(cursorPos, direction) {\n return cursorPos;\n }\n /** Extracts value in range considering flags */\n\n }, {\n key: \"extractInput\",\n value: function extractInput() {\n var fromPos = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;\n var toPos = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : this.value.length;\n return this.value.slice(fromPos, toPos);\n }\n /** Extracts tail in range */\n\n }, {\n key: \"extractTail\",\n value: function extractTail() {\n var fromPos = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;\n var toPos = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : this.value.length;\n return new ContinuousTailDetails(this.extractInput(fromPos, toPos), fromPos);\n }\n /** Appends tail */\n // $FlowFixMe no ideas\n\n }, {\n key: \"appendTail\",\n value: function appendTail(tail) {\n if (isString(tail)) tail = new ContinuousTailDetails(String(tail));\n return tail.appendTo(this);\n }\n /** Appends char */\n\n }, {\n key: \"_appendCharRaw\",\n value: function _appendCharRaw(ch) {\n if (!ch) return new ChangeDetails();\n this._value += ch;\n return new ChangeDetails({\n inserted: ch,\n rawInserted: ch\n });\n }\n /** Appends char */\n\n }, {\n key: \"_appendChar\",\n value: function _appendChar(ch) {\n var flags = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var checkTail = arguments.length > 2 ? arguments[2] : undefined;\n var consistentState = this.state;\n var details;\n\n var _normalizePrepare = normalizePrepare(this.doPrepare(ch, flags));\n\n var _normalizePrepare2 = _slicedToArray(_normalizePrepare, 2);\n\n ch = _normalizePrepare2[0];\n details = _normalizePrepare2[1];\n details = details.aggregate(this._appendCharRaw(ch, flags));\n\n if (details.inserted) {\n var consistentTail;\n var appended = this.doValidate(flags) !== false;\n\n if (appended && checkTail != null) {\n // validation ok, check tail\n var beforeTailState = this.state;\n\n if (this.overwrite === true) {\n consistentTail = checkTail.state;\n checkTail.unshift(this.value.length);\n }\n\n var tailDetails = this.appendTail(checkTail);\n appended = tailDetails.rawInserted === checkTail.toString(); // not ok, try shift\n\n if (!(appended && tailDetails.inserted) && this.overwrite === 'shift') {\n this.state = beforeTailState;\n consistentTail = checkTail.state;\n checkTail.shift();\n tailDetails = this.appendTail(checkTail);\n appended = tailDetails.rawInserted === checkTail.toString();\n } // if ok, rollback state after tail\n\n\n if (appended && tailDetails.inserted) this.state = beforeTailState;\n } // revert all if something went wrong\n\n\n if (!appended) {\n details = new ChangeDetails();\n this.state = consistentState;\n if (checkTail && consistentTail) checkTail.state = consistentTail;\n }\n }\n\n return details;\n }\n /** Appends optional placeholder at end */\n\n }, {\n key: \"_appendPlaceholder\",\n value: function _appendPlaceholder() {\n return new ChangeDetails();\n }\n /** Appends optional eager placeholder at end */\n\n }, {\n key: \"_appendEager\",\n value: function _appendEager() {\n return new ChangeDetails();\n }\n /** Appends symbols considering flags */\n // $FlowFixMe no ideas\n\n }, {\n key: \"append\",\n value: function append(str, flags, tail) {\n if (!isString(str)) throw new Error('value should be string');\n var details = new ChangeDetails();\n var checkTail = isString(tail) ? new ContinuousTailDetails(String(tail)) : tail;\n if (flags !== null && flags !== void 0 && flags.tail) flags._beforeTailState = this.state;\n\n for (var ci = 0; ci < str.length; ++ci) {\n details.aggregate(this._appendChar(str[ci], flags, checkTail));\n } // append tail but aggregate only tailShift\n\n\n if (checkTail != null) {\n details.tailShift += this.appendTail(checkTail).tailShift; // TODO it's a good idea to clear state after appending ends\n // but it causes bugs when one append calls another (when dynamic dispatch set rawInputValue)\n // this._resetBeforeTailState();\n }\n\n if (this.eager && flags !== null && flags !== void 0 && flags.input && str) {\n details.aggregate(this._appendEager());\n }\n\n return details;\n }\n /** */\n\n }, {\n key: \"remove\",\n value: function remove() {\n var fromPos = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;\n var toPos = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : this.value.length;\n this._value = this.value.slice(0, fromPos) + this.value.slice(toPos);\n return new ChangeDetails();\n }\n /** Calls function and reapplies current value */\n\n }, {\n key: \"withValueRefresh\",\n value: function withValueRefresh(fn) {\n if (this._refreshing || !this.isInitialized) return fn();\n this._refreshing = true;\n var rawInput = this.rawInputValue;\n var value = this.value;\n var ret = fn();\n this.rawInputValue = rawInput; // append lost trailing chars at end\n\n if (this.value && this.value !== value && value.indexOf(this.value) === 0) {\n this.append(value.slice(this.value.length), {}, '');\n }\n\n delete this._refreshing;\n return ret;\n }\n /** */\n\n }, {\n key: \"runIsolated\",\n value: function runIsolated(fn) {\n if (this._isolated || !this.isInitialized) return fn(this);\n this._isolated = true;\n var state = this.state;\n var ret = fn(this);\n this.state = state;\n delete this._isolated;\n return ret;\n }\n /**\n Prepares string before mask processing\n @protected\n */\n\n }, {\n key: \"doPrepare\",\n value: function doPrepare(str) {\n var flags = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n return this.prepare ? this.prepare(str, this, flags) : str;\n }\n /**\n Validates if value is acceptable\n @protected\n */\n\n }, {\n key: \"doValidate\",\n value: function doValidate(flags) {\n return (!this.validate || this.validate(this.value, this, flags)) && (!this.parent || this.parent.doValidate(flags));\n }\n /**\n Does additional processing in the end of editing\n @protected\n */\n\n }, {\n key: \"doCommit\",\n value: function doCommit() {\n if (this.commit) this.commit(this.value, this);\n }\n /** */\n\n }, {\n key: \"doFormat\",\n value: function doFormat(value) {\n return this.format ? this.format(value, this) : value;\n }\n /** */\n\n }, {\n key: \"doParse\",\n value: function doParse(str) {\n return this.parse ? this.parse(str, this) : str;\n }\n /** */\n\n }, {\n key: \"splice\",\n value: function splice(start, deleteCount, inserted, removeDirection) {\n var flags = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : {\n input: true\n };\n var tailPos = start + deleteCount;\n var tail = this.extractTail(tailPos);\n var oldRawValue;\n\n if (this.eager) {\n removeDirection = forceDirection(removeDirection);\n oldRawValue = this.extractInput(0, tailPos, {\n raw: true\n });\n }\n\n var startChangePos = this.nearestInputPos(start, deleteCount > 1 && start !== 0 && !this.eager ? DIRECTION.NONE : removeDirection);\n var details = new ChangeDetails({\n tailShift: startChangePos - start // adjust tailShift if start was aligned\n\n }).aggregate(this.remove(startChangePos));\n\n if (this.eager && removeDirection !== DIRECTION.NONE && oldRawValue === this.rawInputValue) {\n if (removeDirection === DIRECTION.FORCE_LEFT) {\n var valLength;\n\n while (oldRawValue === this.rawInputValue && (valLength = this.value.length)) {\n details.aggregate(new ChangeDetails({\n tailShift: -1\n })).aggregate(this.remove(valLength - 1));\n }\n } else if (removeDirection === DIRECTION.FORCE_RIGHT) {\n tail.unshift();\n }\n }\n\n return details.aggregate(this.append(inserted, flags, tail));\n }\n }, {\n key: \"maskEquals\",\n value: function maskEquals(mask) {\n return this.mask === mask;\n }\n }, {\n key: \"typedValueEquals\",\n value: function typedValueEquals(value) {\n var tval = this.typedValue;\n return value === tval || Masked.EMPTY_VALUES.includes(value) && Masked.EMPTY_VALUES.includes(tval) || this.doFormat(value) === this.doFormat(this.typedValue);\n }\n }]);\n\n return Masked;\n}();\nMasked.DEFAULTS = {\n format: function format(v) {\n return v;\n },\n parse: function parse(v) {\n return v;\n }\n};\nMasked.EMPTY_VALUES = [undefined, null, ''];\nIMask.Masked = Masked;\n\n/** Get Masked class by mask type */\n\nfunction maskedClass(mask) {\n if (mask == null) {\n throw new Error('mask property should be defined');\n } // $FlowFixMe\n\n\n if (mask instanceof RegExp) return IMask.MaskedRegExp; // $FlowFixMe\n\n if (isString(mask)) return IMask.MaskedPattern; // $FlowFixMe\n\n if (mask instanceof Date || mask === Date) return IMask.MaskedDate; // $FlowFixMe\n\n if (mask instanceof Number || typeof mask === 'number' || mask === Number) return IMask.MaskedNumber; // $FlowFixMe\n\n if (Array.isArray(mask) || mask === Array) return IMask.MaskedDynamic; // $FlowFixMe\n\n if (IMask.Masked && mask.prototype instanceof IMask.Masked) return mask; // $FlowFixMe\n\n if (mask instanceof IMask.Masked) return mask.constructor; // $FlowFixMe\n\n if (mask instanceof Function) return IMask.MaskedFunction;\n console.warn('Mask not found for mask', mask); // eslint-disable-line no-console\n // $FlowFixMe\n\n return IMask.Masked;\n}\n/** Creates new {@link Masked} depending on mask type */\n\nfunction createMask(opts) {\n // $FlowFixMe\n if (IMask.Masked && opts instanceof IMask.Masked) return opts;\n opts = Object.assign({}, opts);\n var mask = opts.mask; // $FlowFixMe\n\n if (IMask.Masked && mask instanceof IMask.Masked) return mask;\n var MaskedClass = maskedClass(mask);\n if (!MaskedClass) throw new Error('Masked class is not found for provided mask, appropriate module needs to be import manually before creating mask.');\n return new MaskedClass(opts);\n}\nIMask.createMask = createMask;\n\nvar _excluded = [\"mask\"];\nvar DEFAULT_INPUT_DEFINITIONS = {\n '0': /\\d/,\n 'a': /[\\u0041-\\u005A\\u0061-\\u007A\\u00AA\\u00B5\\u00BA\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02C1\\u02C6-\\u02D1\\u02E0-\\u02E4\\u02EC\\u02EE\\u0370-\\u0374\\u0376\\u0377\\u037A-\\u037D\\u0386\\u0388-\\u038A\\u038C\\u038E-\\u03A1\\u03A3-\\u03F5\\u03F7-\\u0481\\u048A-\\u0527\\u0531-\\u0556\\u0559\\u0561-\\u0587\\u05D0-\\u05EA\\u05F0-\\u05F2\\u0620-\\u064A\\u066E\\u066F\\u0671-\\u06D3\\u06D5\\u06E5\\u06E6\\u06EE\\u06EF\\u06FA-\\u06FC\\u06FF\\u0710\\u0712-\\u072F\\u074D-\\u07A5\\u07B1\\u07CA-\\u07EA\\u07F4\\u07F5\\u07FA\\u0800-\\u0815\\u081A\\u0824\\u0828\\u0840-\\u0858\\u08A0\\u08A2-\\u08AC\\u0904-\\u0939\\u093D\\u0950\\u0958-\\u0961\\u0971-\\u0977\\u0979-\\u097F\\u0985-\\u098C\\u098F\\u0990\\u0993-\\u09A8\\u09AA-\\u09B0\\u09B2\\u09B6-\\u09B9\\u09BD\\u09CE\\u09DC\\u09DD\\u09DF-\\u09E1\\u09F0\\u09F1\\u0A05-\\u0A0A\\u0A0F\\u0A10\\u0A13-\\u0A28\\u0A2A-\\u0A30\\u0A32\\u0A33\\u0A35\\u0A36\\u0A38\\u0A39\\u0A59-\\u0A5C\\u0A5E\\u0A72-\\u0A74\\u0A85-\\u0A8D\\u0A8F-\\u0A91\\u0A93-\\u0AA8\\u0AAA-\\u0AB0\\u0AB2\\u0AB3\\u0AB5-\\u0AB9\\u0ABD\\u0AD0\\u0AE0\\u0AE1\\u0B05-\\u0B0C\\u0B0F\\u0B10\\u0B13-\\u0B28\\u0B2A-\\u0B30\\u0B32\\u0B33\\u0B35-\\u0B39\\u0B3D\\u0B5C\\u0B5D\\u0B5F-\\u0B61\\u0B71\\u0B83\\u0B85-\\u0B8A\\u0B8E-\\u0B90\\u0B92-\\u0B95\\u0B99\\u0B9A\\u0B9C\\u0B9E\\u0B9F\\u0BA3\\u0BA4\\u0BA8-\\u0BAA\\u0BAE-\\u0BB9\\u0BD0\\u0C05-\\u0C0C\\u0C0E-\\u0C10\\u0C12-\\u0C28\\u0C2A-\\u0C33\\u0C35-\\u0C39\\u0C3D\\u0C58\\u0C59\\u0C60\\u0C61\\u0C85-\\u0C8C\\u0C8E-\\u0C90\\u0C92-\\u0CA8\\u0CAA-\\u0CB3\\u0CB5-\\u0CB9\\u0CBD\\u0CDE\\u0CE0\\u0CE1\\u0CF1\\u0CF2\\u0D05-\\u0D0C\\u0D0E-\\u0D10\\u0D12-\\u0D3A\\u0D3D\\u0D4E\\u0D60\\u0D61\\u0D7A-\\u0D7F\\u0D85-\\u0D96\\u0D9A-\\u0DB1\\u0DB3-\\u0DBB\\u0DBD\\u0DC0-\\u0DC6\\u0E01-\\u0E30\\u0E32\\u0E33\\u0E40-\\u0E46\\u0E81\\u0E82\\u0E84\\u0E87\\u0E88\\u0E8A\\u0E8D\\u0E94-\\u0E97\\u0E99-\\u0E9F\\u0EA1-\\u0EA3\\u0EA5\\u0EA7\\u0EAA\\u0EAB\\u0EAD-\\u0EB0\\u0EB2\\u0EB3\\u0EBD\\u0EC0-\\u0EC4\\u0EC6\\u0EDC-\\u0EDF\\u0F00\\u0F40-\\u0F47\\u0F49-\\u0F6C\\u0F88-\\u0F8C\\u1000-\\u102A\\u103F\\u1050-\\u1055\\u105A-\\u105D\\u1061\\u1065\\u1066\\u106E-\\u1070\\u1075-\\u1081\\u108E\\u10A0-\\u10C5\\u10C7\\u10CD\\u10D0-\\u10FA\\u10FC-\\u1248\\u124A-\\u124D\\u1250-\\u1256\\u1258\\u125A-\\u125D\\u1260-\\u1288\\u128A-\\u128D\\u1290-\\u12B0\\u12B2-\\u12B5\\u12B8-\\u12BE\\u12C0\\u12C2-\\u12C5\\u12C8-\\u12D6\\u12D8-\\u1310\\u1312-\\u1315\\u1318-\\u135A\\u1380-\\u138F\\u13A0-\\u13F4\\u1401-\\u166C\\u166F-\\u167F\\u1681-\\u169A\\u16A0-\\u16EA\\u1700-\\u170C\\u170E-\\u1711\\u1720-\\u1731\\u1740-\\u1751\\u1760-\\u176C\\u176E-\\u1770\\u1780-\\u17B3\\u17D7\\u17DC\\u1820-\\u1877\\u1880-\\u18A8\\u18AA\\u18B0-\\u18F5\\u1900-\\u191C\\u1950-\\u196D\\u1970-\\u1974\\u1980-\\u19AB\\u19C1-\\u19C7\\u1A00-\\u1A16\\u1A20-\\u1A54\\u1AA7\\u1B05-\\u1B33\\u1B45-\\u1B4B\\u1B83-\\u1BA0\\u1BAE\\u1BAF\\u1BBA-\\u1BE5\\u1C00-\\u1C23\\u1C4D-\\u1C4F\\u1C5A-\\u1C7D\\u1CE9-\\u1CEC\\u1CEE-\\u1CF1\\u1CF5\\u1CF6\\u1D00-\\u1DBF\\u1E00-\\u1F15\\u1F18-\\u1F1D\\u1F20-\\u1F45\\u1F48-\\u1F4D\\u1F50-\\u1F57\\u1F59\\u1F5B\\u1F5D\\u1F5F-\\u1F7D\\u1F80-\\u1FB4\\u1FB6-\\u1FBC\\u1FBE\\u1FC2-\\u1FC4\\u1FC6-\\u1FCC\\u1FD0-\\u1FD3\\u1FD6-\\u1FDB\\u1FE0-\\u1FEC\\u1FF2-\\u1FF4\\u1FF6-\\u1FFC\\u2071\\u207F\\u2090-\\u209C\\u2102\\u2107\\u210A-\\u2113\\u2115\\u2119-\\u211D\\u2124\\u2126\\u2128\\u212A-\\u212D\\u212F-\\u2139\\u213C-\\u213F\\u2145-\\u2149\\u214E\\u2183\\u2184\\u2C00-\\u2C2E\\u2C30-\\u2C5E\\u2C60-\\u2CE4\\u2CEB-\\u2CEE\\u2CF2\\u2CF3\\u2D00-\\u2D25\\u2D27\\u2D2D\\u2D30-\\u2D67\\u2D6F\\u2D80-\\u2D96\\u2DA0-\\u2DA6\\u2DA8-\\u2DAE\\u2DB0-\\u2DB6\\u2DB8-\\u2DBE\\u2DC0-\\u2DC6\\u2DC8-\\u2DCE\\u2DD0-\\u2DD6\\u2DD8-\\u2DDE\\u2E2F\\u3005\\u3006\\u3031-\\u3035\\u303B\\u303C\\u3041-\\u3096\\u309D-\\u309F\\u30A1-\\u30FA\\u30FC-\\u30FF\\u3105-\\u312D\\u3131-\\u318E\\u31A0-\\u31BA\\u31F0-\\u31FF\\u3400-\\u4DB5\\u4E00-\\u9FCC\\uA000-\\uA48C\\uA4D0-\\uA4FD\\uA500-\\uA60C\\uA610-\\uA61F\\uA62A\\uA62B\\uA640-\\uA66E\\uA67F-\\uA697\\uA6A0-\\uA6E5\\uA717-\\uA71F\\uA722-\\uA788\\uA78B-\\uA78E\\uA790-\\uA793\\uA7A0-\\uA7AA\\uA7F8-\\uA801\\uA803-\\uA805\\uA807-\\uA80A\\uA80C-\\uA822\\uA840-\\uA873\\uA882-\\uA8B3\\uA8F2-\\uA8F7\\uA8FB\\uA90A-\\uA925\\uA930-\\uA946\\uA960-\\uA97C\\uA984-\\uA9B2\\uA9CF\\uAA00-\\uAA28\\uAA40-\\uAA42\\uAA44-\\uAA4B\\uAA60-\\uAA76\\uAA7A\\uAA80-\\uAAAF\\uAAB1\\uAAB5\\uAAB6\\uAAB9-\\uAABD\\uAAC0\\uAAC2\\uAADB-\\uAADD\\uAAE0-\\uAAEA\\uAAF2-\\uAAF4\\uAB01-\\uAB06\\uAB09-\\uAB0E\\uAB11-\\uAB16\\uAB20-\\uAB26\\uAB28-\\uAB2E\\uABC0-\\uABE2\\uAC00-\\uD7A3\\uD7B0-\\uD7C6\\uD7CB-\\uD7FB\\uF900-\\uFA6D\\uFA70-\\uFAD9\\uFB00-\\uFB06\\uFB13-\\uFB17\\uFB1D\\uFB1F-\\uFB28\\uFB2A-\\uFB36\\uFB38-\\uFB3C\\uFB3E\\uFB40\\uFB41\\uFB43\\uFB44\\uFB46-\\uFBB1\\uFBD3-\\uFD3D\\uFD50-\\uFD8F\\uFD92-\\uFDC7\\uFDF0-\\uFDFB\\uFE70-\\uFE74\\uFE76-\\uFEFC\\uFF21-\\uFF3A\\uFF41-\\uFF5A\\uFF66-\\uFFBE\\uFFC2-\\uFFC7\\uFFCA-\\uFFCF\\uFFD2-\\uFFD7\\uFFDA-\\uFFDC]/,\n // http://stackoverflow.com/a/22075070\n '*': /./\n};\n/** */\n\nvar PatternInputDefinition = /*#__PURE__*/function () {\n /** */\n\n /** */\n\n /** */\n\n /** */\n\n /** */\n\n /** */\n\n /** */\n function PatternInputDefinition(opts) {\n _classCallCheck(this, PatternInputDefinition);\n\n var mask = opts.mask,\n blockOpts = _objectWithoutProperties(opts, _excluded);\n\n this.masked = createMask({\n mask: mask\n });\n Object.assign(this, blockOpts);\n }\n\n _createClass(PatternInputDefinition, [{\n key: \"reset\",\n value: function reset() {\n this.isFilled = false;\n this.masked.reset();\n }\n }, {\n key: \"remove\",\n value: function remove() {\n var fromPos = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;\n var toPos = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : this.value.length;\n\n if (fromPos === 0 && toPos >= 1) {\n this.isFilled = false;\n return this.masked.remove(fromPos, toPos);\n }\n\n return new ChangeDetails();\n }\n }, {\n key: \"value\",\n get: function get() {\n return this.masked.value || (this.isFilled && !this.isOptional ? this.placeholderChar : '');\n }\n }, {\n key: \"unmaskedValue\",\n get: function get() {\n return this.masked.unmaskedValue;\n }\n }, {\n key: \"isComplete\",\n get: function get() {\n return Boolean(this.masked.value) || this.isOptional;\n }\n }, {\n key: \"_appendChar\",\n value: function _appendChar(ch) {\n var flags = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n if (this.isFilled) return new ChangeDetails();\n var state = this.masked.state; // simulate input\n\n var details = this.masked._appendChar(ch, flags);\n\n if (details.inserted && this.doValidate(flags) === false) {\n details.inserted = details.rawInserted = '';\n this.masked.state = state;\n }\n\n if (!details.inserted && !this.isOptional && !this.lazy && !flags.input) {\n details.inserted = this.placeholderChar;\n }\n\n details.skip = !details.inserted && !this.isOptional;\n this.isFilled = Boolean(details.inserted);\n return details;\n }\n }, {\n key: \"append\",\n value: function append() {\n var _this$masked;\n\n // TODO probably should be done via _appendChar\n return (_this$masked = this.masked).append.apply(_this$masked, arguments);\n }\n }, {\n key: \"_appendPlaceholder\",\n value: function _appendPlaceholder() {\n var details = new ChangeDetails();\n if (this.isFilled || this.isOptional) return details;\n this.isFilled = true;\n details.inserted = this.placeholderChar;\n return details;\n }\n }, {\n key: \"_appendEager\",\n value: function _appendEager() {\n return new ChangeDetails();\n }\n }, {\n key: \"extractTail\",\n value: function extractTail() {\n var _this$masked2;\n\n return (_this$masked2 = this.masked).extractTail.apply(_this$masked2, arguments);\n }\n }, {\n key: \"appendTail\",\n value: function appendTail() {\n var _this$masked3;\n\n return (_this$masked3 = this.masked).appendTail.apply(_this$masked3, arguments);\n }\n }, {\n key: \"extractInput\",\n value: function extractInput() {\n var fromPos = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;\n var toPos = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : this.value.length;\n var flags = arguments.length > 2 ? arguments[2] : undefined;\n return this.masked.extractInput(fromPos, toPos, flags);\n }\n }, {\n key: \"nearestInputPos\",\n value: function nearestInputPos(cursorPos) {\n var direction = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : DIRECTION.NONE;\n var minPos = 0;\n var maxPos = this.value.length;\n var boundPos = Math.min(Math.max(cursorPos, minPos), maxPos);\n\n switch (direction) {\n case DIRECTION.LEFT:\n case DIRECTION.FORCE_LEFT:\n return this.isComplete ? boundPos : minPos;\n\n case DIRECTION.RIGHT:\n case DIRECTION.FORCE_RIGHT:\n return this.isComplete ? boundPos : maxPos;\n\n case DIRECTION.NONE:\n default:\n return boundPos;\n }\n }\n }, {\n key: \"doValidate\",\n value: function doValidate() {\n var _this$masked4, _this$parent;\n\n return (_this$masked4 = this.masked).doValidate.apply(_this$masked4, arguments) && (!this.parent || (_this$parent = this.parent).doValidate.apply(_this$parent, arguments));\n }\n }, {\n key: \"doCommit\",\n value: function doCommit() {\n this.masked.doCommit();\n }\n }, {\n key: \"state\",\n get: function get() {\n return {\n masked: this.masked.state,\n isFilled: this.isFilled\n };\n },\n set: function set(state) {\n this.masked.state = state.masked;\n this.isFilled = state.isFilled;\n }\n }]);\n\n return PatternInputDefinition;\n}();\n\nvar PatternFixedDefinition = /*#__PURE__*/function () {\n /** */\n\n /** */\n\n /** */\n\n /** */\n\n /** */\n\n /** */\n function PatternFixedDefinition(opts) {\n _classCallCheck(this, PatternFixedDefinition);\n\n Object.assign(this, opts);\n this._value = '';\n this.isFixed = true;\n }\n\n _createClass(PatternFixedDefinition, [{\n key: \"value\",\n get: function get() {\n return this._value;\n }\n }, {\n key: \"unmaskedValue\",\n get: function get() {\n return this.isUnmasking ? this.value : '';\n }\n }, {\n key: \"reset\",\n value: function reset() {\n this._isRawInput = false;\n this._value = '';\n }\n }, {\n key: \"remove\",\n value: function remove() {\n var fromPos = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;\n var toPos = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : this._value.length;\n this._value = this._value.slice(0, fromPos) + this._value.slice(toPos);\n if (!this._value) this._isRawInput = false;\n return new ChangeDetails();\n }\n }, {\n key: \"nearestInputPos\",\n value: function nearestInputPos(cursorPos) {\n var direction = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : DIRECTION.NONE;\n var minPos = 0;\n var maxPos = this._value.length;\n\n switch (direction) {\n case DIRECTION.LEFT:\n case DIRECTION.FORCE_LEFT:\n return minPos;\n\n case DIRECTION.NONE:\n case DIRECTION.RIGHT:\n case DIRECTION.FORCE_RIGHT:\n default:\n return maxPos;\n }\n }\n }, {\n key: \"extractInput\",\n value: function extractInput() {\n var fromPos = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;\n var toPos = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : this._value.length;\n var flags = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n return flags.raw && this._isRawInput && this._value.slice(fromPos, toPos) || '';\n }\n }, {\n key: \"isComplete\",\n get: function get() {\n return true;\n }\n }, {\n key: \"isFilled\",\n get: function get() {\n return Boolean(this._value);\n }\n }, {\n key: \"_appendChar\",\n value: function _appendChar(ch) {\n var flags = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var details = new ChangeDetails();\n if (this._value) return details;\n var appended = this.char === ch;\n var isResolved = appended && (this.isUnmasking || flags.input || flags.raw) && (!flags.raw || !this.eager) && !flags.tail;\n if (isResolved) details.rawInserted = this.char;\n this._value = details.inserted = this.char;\n this._isRawInput = isResolved && (flags.raw || flags.input);\n return details;\n }\n }, {\n key: \"_appendEager\",\n value: function _appendEager() {\n return this._appendChar(this.char, {\n tail: true\n });\n }\n }, {\n key: \"_appendPlaceholder\",\n value: function _appendPlaceholder() {\n var details = new ChangeDetails();\n if (this._value) return details;\n this._value = details.inserted = this.char;\n return details;\n }\n }, {\n key: \"extractTail\",\n value: function extractTail() {\n arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : this.value.length;\n return new ContinuousTailDetails('');\n } // $FlowFixMe no ideas\n\n }, {\n key: \"appendTail\",\n value: function appendTail(tail) {\n if (isString(tail)) tail = new ContinuousTailDetails(String(tail));\n return tail.appendTo(this);\n }\n }, {\n key: \"append\",\n value: function append(str, flags, tail) {\n var details = this._appendChar(str[0], flags);\n\n if (tail != null) {\n details.tailShift += this.appendTail(tail).tailShift;\n }\n\n return details;\n }\n }, {\n key: \"doCommit\",\n value: function doCommit() {}\n }, {\n key: \"state\",\n get: function get() {\n return {\n _value: this._value,\n _isRawInput: this._isRawInput\n };\n },\n set: function set(state) {\n Object.assign(this, state);\n }\n }]);\n\n return PatternFixedDefinition;\n}();\n\nvar _excluded$1 = [\"chunks\"];\n\nvar ChunksTailDetails = /*#__PURE__*/function () {\n /** */\n function ChunksTailDetails() {\n var chunks = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n var from = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;\n\n _classCallCheck(this, ChunksTailDetails);\n\n this.chunks = chunks;\n this.from = from;\n }\n\n _createClass(ChunksTailDetails, [{\n key: \"toString\",\n value: function toString() {\n return this.chunks.map(String).join('');\n } // $FlowFixMe no ideas\n\n }, {\n key: \"extend\",\n value: function extend(tailChunk) {\n if (!String(tailChunk)) return;\n if (isString(tailChunk)) tailChunk = new ContinuousTailDetails(String(tailChunk));\n var lastChunk = this.chunks[this.chunks.length - 1];\n var extendLast = lastChunk && ( // if stops are same or tail has no stop\n lastChunk.stop === tailChunk.stop || tailChunk.stop == null) && // if tail chunk goes just after last chunk\n tailChunk.from === lastChunk.from + lastChunk.toString().length;\n\n if (tailChunk instanceof ContinuousTailDetails) {\n // check the ability to extend previous chunk\n if (extendLast) {\n // extend previous chunk\n lastChunk.extend(tailChunk.toString());\n } else {\n // append new chunk\n this.chunks.push(tailChunk);\n }\n } else if (tailChunk instanceof ChunksTailDetails) {\n if (tailChunk.stop == null) {\n // unwrap floating chunks to parent, keeping `from` pos\n var firstTailChunk;\n\n while (tailChunk.chunks.length && tailChunk.chunks[0].stop == null) {\n firstTailChunk = tailChunk.chunks.shift();\n firstTailChunk.from += tailChunk.from;\n this.extend(firstTailChunk);\n }\n } // if tail chunk still has value\n\n\n if (tailChunk.toString()) {\n // if chunks contains stops, then popup stop to container\n tailChunk.stop = tailChunk.blockIndex;\n this.chunks.push(tailChunk);\n }\n }\n }\n }, {\n key: \"appendTo\",\n value: function appendTo(masked) {\n // $FlowFixMe\n if (!(masked instanceof IMask.MaskedPattern)) {\n var tail = new ContinuousTailDetails(this.toString());\n return tail.appendTo(masked);\n }\n\n var details = new ChangeDetails();\n\n for (var ci = 0; ci < this.chunks.length && !details.skip; ++ci) {\n var chunk = this.chunks[ci];\n\n var lastBlockIter = masked._mapPosToBlock(masked.value.length);\n\n var stop = chunk.stop;\n var chunkBlock = void 0;\n\n if (stop != null && ( // if block not found or stop is behind lastBlock\n !lastBlockIter || lastBlockIter.index <= stop)) {\n if (chunk instanceof ChunksTailDetails || // for continuous block also check if stop is exist\n masked._stops.indexOf(stop) >= 0) {\n details.aggregate(masked._appendPlaceholder(stop));\n }\n\n chunkBlock = chunk instanceof ChunksTailDetails && masked._blocks[stop];\n }\n\n if (chunkBlock) {\n var tailDetails = chunkBlock.appendTail(chunk);\n tailDetails.skip = false; // always ignore skip, it will be set on last\n\n details.aggregate(tailDetails);\n masked._value += tailDetails.inserted; // get not inserted chars\n\n var remainChars = chunk.toString().slice(tailDetails.rawInserted.length);\n if (remainChars) details.aggregate(masked.append(remainChars, {\n tail: true\n }));\n } else {\n details.aggregate(masked.append(chunk.toString(), {\n tail: true\n }));\n }\n }\n return details;\n }\n }, {\n key: \"state\",\n get: function get() {\n return {\n chunks: this.chunks.map(function (c) {\n return c.state;\n }),\n from: this.from,\n stop: this.stop,\n blockIndex: this.blockIndex\n };\n },\n set: function set(state) {\n var chunks = state.chunks,\n props = _objectWithoutProperties(state, _excluded$1);\n\n Object.assign(this, props);\n this.chunks = chunks.map(function (cstate) {\n var chunk = \"chunks\" in cstate ? new ChunksTailDetails() : new ContinuousTailDetails(); // $FlowFixMe already checked above\n\n chunk.state = cstate;\n return chunk;\n });\n }\n }, {\n key: \"unshift\",\n value: function unshift(beforePos) {\n if (!this.chunks.length || beforePos != null && this.from >= beforePos) return '';\n var chunkShiftPos = beforePos != null ? beforePos - this.from : beforePos;\n var ci = 0;\n\n while (ci < this.chunks.length) {\n var chunk = this.chunks[ci];\n var shiftChar = chunk.unshift(chunkShiftPos);\n\n if (chunk.toString()) {\n // chunk still contains value\n // but not shifted - means no more available chars to shift\n if (!shiftChar) break;\n ++ci;\n } else {\n // clean if chunk has no value\n this.chunks.splice(ci, 1);\n }\n\n if (shiftChar) return shiftChar;\n }\n\n return '';\n }\n }, {\n key: \"shift\",\n value: function shift() {\n if (!this.chunks.length) return '';\n var ci = this.chunks.length - 1;\n\n while (0 <= ci) {\n var chunk = this.chunks[ci];\n var shiftChar = chunk.shift();\n\n if (chunk.toString()) {\n // chunk still contains value\n // but not shifted - means no more available chars to shift\n if (!shiftChar) break;\n --ci;\n } else {\n // clean if chunk has no value\n this.chunks.splice(ci, 1);\n }\n\n if (shiftChar) return shiftChar;\n }\n\n return '';\n }\n }]);\n\n return ChunksTailDetails;\n}();\n\nvar PatternCursor = /*#__PURE__*/function () {\n function PatternCursor(masked, pos) {\n _classCallCheck(this, PatternCursor);\n\n this.masked = masked;\n this._log = [];\n\n var _ref = masked._mapPosToBlock(pos) || (pos < 0 ? // first\n {\n index: 0,\n offset: 0\n } : // last\n {\n index: this.masked._blocks.length,\n offset: 0\n }),\n offset = _ref.offset,\n index = _ref.index;\n\n this.offset = offset;\n this.index = index;\n this.ok = false;\n }\n\n _createClass(PatternCursor, [{\n key: \"block\",\n get: function get() {\n return this.masked._blocks[this.index];\n }\n }, {\n key: \"pos\",\n get: function get() {\n return this.masked._blockStartPos(this.index) + this.offset;\n }\n }, {\n key: \"state\",\n get: function get() {\n return {\n index: this.index,\n offset: this.offset,\n ok: this.ok\n };\n },\n set: function set(s) {\n Object.assign(this, s);\n }\n }, {\n key: \"pushState\",\n value: function pushState() {\n this._log.push(this.state);\n }\n }, {\n key: \"popState\",\n value: function popState() {\n var s = this._log.pop();\n\n this.state = s;\n return s;\n }\n }, {\n key: \"bindBlock\",\n value: function bindBlock() {\n if (this.block) return;\n\n if (this.index < 0) {\n this.index = 0;\n this.offset = 0;\n }\n\n if (this.index >= this.masked._blocks.length) {\n this.index = this.masked._blocks.length - 1;\n this.offset = this.block.value.length;\n }\n }\n }, {\n key: \"_pushLeft\",\n value: function _pushLeft(fn) {\n this.pushState();\n\n for (this.bindBlock(); 0 <= this.index; --this.index, this.offset = ((_this$block = this.block) === null || _this$block === void 0 ? void 0 : _this$block.value.length) || 0) {\n var _this$block;\n\n if (fn()) return this.ok = true;\n }\n\n return this.ok = false;\n }\n }, {\n key: \"_pushRight\",\n value: function _pushRight(fn) {\n this.pushState();\n\n for (this.bindBlock(); this.index < this.masked._blocks.length; ++this.index, this.offset = 0) {\n if (fn()) return this.ok = true;\n }\n\n return this.ok = false;\n }\n }, {\n key: \"pushLeftBeforeFilled\",\n value: function pushLeftBeforeFilled() {\n var _this = this;\n\n return this._pushLeft(function () {\n if (_this.block.isFixed || !_this.block.value) return;\n _this.offset = _this.block.nearestInputPos(_this.offset, DIRECTION.FORCE_LEFT);\n if (_this.offset !== 0) return true;\n });\n }\n }, {\n key: \"pushLeftBeforeInput\",\n value: function pushLeftBeforeInput() {\n var _this2 = this;\n\n // cases:\n // filled input: 00|\n // optional empty input: 00[]|\n // nested block: XX<[]>|\n return this._pushLeft(function () {\n if (_this2.block.isFixed) return;\n _this2.offset = _this2.block.nearestInputPos(_this2.offset, DIRECTION.LEFT);\n return true;\n });\n }\n }, {\n key: \"pushLeftBeforeRequired\",\n value: function pushLeftBeforeRequired() {\n var _this3 = this;\n\n return this._pushLeft(function () {\n if (_this3.block.isFixed || _this3.block.isOptional && !_this3.block.value) return;\n _this3.offset = _this3.block.nearestInputPos(_this3.offset, DIRECTION.LEFT);\n return true;\n });\n }\n }, {\n key: \"pushRightBeforeFilled\",\n value: function pushRightBeforeFilled() {\n var _this4 = this;\n\n return this._pushRight(function () {\n if (_this4.block.isFixed || !_this4.block.value) return;\n _this4.offset = _this4.block.nearestInputPos(_this4.offset, DIRECTION.FORCE_RIGHT);\n if (_this4.offset !== _this4.block.value.length) return true;\n });\n }\n }, {\n key: \"pushRightBeforeInput\",\n value: function pushRightBeforeInput() {\n var _this5 = this;\n\n return this._pushRight(function () {\n if (_this5.block.isFixed) return; // const o = this.offset;\n\n _this5.offset = _this5.block.nearestInputPos(_this5.offset, DIRECTION.NONE); // HACK cases like (STILL DOES NOT WORK FOR NESTED)\n // aa|X\n // aaX_ - this will not work\n // if (o && o === this.offset && this.block instanceof PatternInputDefinition) continue;\n\n return true;\n });\n }\n }, {\n key: \"pushRightBeforeRequired\",\n value: function pushRightBeforeRequired() {\n var _this6 = this;\n\n return this._pushRight(function () {\n if (_this6.block.isFixed || _this6.block.isOptional && !_this6.block.value) return; // TODO check |[*]XX_\n\n _this6.offset = _this6.block.nearestInputPos(_this6.offset, DIRECTION.NONE);\n return true;\n });\n }\n }]);\n\n return PatternCursor;\n}();\n\n/** Masking by RegExp */\n\nvar MaskedRegExp = /*#__PURE__*/function (_Masked) {\n _inherits(MaskedRegExp, _Masked);\n\n var _super = _createSuper(MaskedRegExp);\n\n function MaskedRegExp() {\n _classCallCheck(this, MaskedRegExp);\n\n return _super.apply(this, arguments);\n }\n\n _createClass(MaskedRegExp, [{\n key: \"_update\",\n value:\n /**\n @override\n @param {Object} opts\n */\n function _update(opts) {\n if (opts.mask) opts.validate = function (value) {\n return value.search(opts.mask) >= 0;\n };\n\n _get(_getPrototypeOf(MaskedRegExp.prototype), \"_update\", this).call(this, opts);\n }\n }]);\n\n return MaskedRegExp;\n}(Masked);\nIMask.MaskedRegExp = MaskedRegExp;\n\nvar _excluded$2 = [\"_blocks\"];\n\n/**\n Pattern mask\n @param {Object} opts\n @param {Object} opts.blocks\n @param {Object} opts.definitions\n @param {string} opts.placeholderChar\n @param {boolean} opts.lazy\n*/\nvar MaskedPattern = /*#__PURE__*/function (_Masked) {\n _inherits(MaskedPattern, _Masked);\n\n var _super = _createSuper(MaskedPattern);\n\n /** */\n\n /** */\n\n /** Single char for empty input */\n\n /** Show placeholder only when needed */\n function MaskedPattern() {\n var opts = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n\n _classCallCheck(this, MaskedPattern);\n\n // TODO type $Shape={} does not work\n opts.definitions = Object.assign({}, DEFAULT_INPUT_DEFINITIONS, opts.definitions);\n return _super.call(this, Object.assign({}, MaskedPattern.DEFAULTS, opts));\n }\n /**\n @override\n @param {Object} opts\n */\n\n\n _createClass(MaskedPattern, [{\n key: \"_update\",\n value: function _update() {\n var opts = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n opts.definitions = Object.assign({}, this.definitions, opts.definitions);\n\n _get(_getPrototypeOf(MaskedPattern.prototype), \"_update\", this).call(this, opts);\n\n this._rebuildMask();\n }\n /** */\n\n }, {\n key: \"_rebuildMask\",\n value: function _rebuildMask() {\n var _this = this;\n\n var defs = this.definitions;\n this._blocks = [];\n this._stops = [];\n this._maskedBlocks = {};\n var pattern = this.mask;\n if (!pattern || !defs) return;\n var unmaskingBlock = false;\n var optionalBlock = false;\n\n for (var i = 0; i < pattern.length; ++i) {\n if (this.blocks) {\n var _ret = function () {\n var p = pattern.slice(i);\n var bNames = Object.keys(_this.blocks).filter(function (bName) {\n return p.indexOf(bName) === 0;\n }); // order by key length\n\n bNames.sort(function (a, b) {\n return b.length - a.length;\n }); // use block name with max length\n\n var bName = bNames[0];\n\n if (bName) {\n // $FlowFixMe no ideas\n var maskedBlock = createMask(Object.assign({\n parent: _this,\n lazy: _this.lazy,\n eager: _this.eager,\n placeholderChar: _this.placeholderChar,\n overwrite: _this.overwrite\n }, _this.blocks[bName]));\n\n if (maskedBlock) {\n _this._blocks.push(maskedBlock); // store block index\n\n\n if (!_this._maskedBlocks[bName]) _this._maskedBlocks[bName] = [];\n\n _this._maskedBlocks[bName].push(_this._blocks.length - 1);\n }\n\n i += bName.length - 1;\n return \"continue\";\n }\n }();\n\n if (_ret === \"continue\") continue;\n }\n\n var char = pattern[i];\n var isInput = (char in defs);\n\n if (char === MaskedPattern.STOP_CHAR) {\n this._stops.push(this._blocks.length);\n\n continue;\n }\n\n if (char === '{' || char === '}') {\n unmaskingBlock = !unmaskingBlock;\n continue;\n }\n\n if (char === '[' || char === ']') {\n optionalBlock = !optionalBlock;\n continue;\n }\n\n if (char === MaskedPattern.ESCAPE_CHAR) {\n ++i;\n char = pattern[i];\n if (!char) break;\n isInput = false;\n }\n\n var def = isInput ? new PatternInputDefinition({\n parent: this,\n lazy: this.lazy,\n eager: this.eager,\n placeholderChar: this.placeholderChar,\n mask: defs[char],\n isOptional: optionalBlock\n }) : new PatternFixedDefinition({\n char: char,\n eager: this.eager,\n isUnmasking: unmaskingBlock\n });\n\n this._blocks.push(def);\n }\n }\n /**\n @override\n */\n\n }, {\n key: \"state\",\n get: function get() {\n return Object.assign({}, _get(_getPrototypeOf(MaskedPattern.prototype), \"state\", this), {\n _blocks: this._blocks.map(function (b) {\n return b.state;\n })\n });\n },\n set: function set(state) {\n var _blocks = state._blocks,\n maskedState = _objectWithoutProperties(state, _excluded$2);\n\n this._blocks.forEach(function (b, bi) {\n return b.state = _blocks[bi];\n });\n\n _set(_getPrototypeOf(MaskedPattern.prototype), \"state\", maskedState, this, true);\n }\n /**\n @override\n */\n\n }, {\n key: \"reset\",\n value: function reset() {\n _get(_getPrototypeOf(MaskedPattern.prototype), \"reset\", this).call(this);\n\n this._blocks.forEach(function (b) {\n return b.reset();\n });\n }\n /**\n @override\n */\n\n }, {\n key: \"isComplete\",\n get: function get() {\n return this._blocks.every(function (b) {\n return b.isComplete;\n });\n }\n /**\n @override\n */\n\n }, {\n key: \"isFilled\",\n get: function get() {\n return this._blocks.every(function (b) {\n return b.isFilled;\n });\n }\n }, {\n key: \"isFixed\",\n get: function get() {\n return this._blocks.every(function (b) {\n return b.isFixed;\n });\n }\n }, {\n key: \"isOptional\",\n get: function get() {\n return this._blocks.every(function (b) {\n return b.isOptional;\n });\n }\n /**\n @override\n */\n\n }, {\n key: \"doCommit\",\n value: function doCommit() {\n this._blocks.forEach(function (b) {\n return b.doCommit();\n });\n\n _get(_getPrototypeOf(MaskedPattern.prototype), \"doCommit\", this).call(this);\n }\n /**\n @override\n */\n\n }, {\n key: \"unmaskedValue\",\n get: function get() {\n return this._blocks.reduce(function (str, b) {\n return str += b.unmaskedValue;\n }, '');\n },\n set: function set(unmaskedValue) {\n _set(_getPrototypeOf(MaskedPattern.prototype), \"unmaskedValue\", unmaskedValue, this, true);\n }\n /**\n @override\n */\n\n }, {\n key: \"value\",\n get: function get() {\n // TODO return _value when not in change?\n return this._blocks.reduce(function (str, b) {\n return str += b.value;\n }, '');\n },\n set: function set(value) {\n _set(_getPrototypeOf(MaskedPattern.prototype), \"value\", value, this, true);\n }\n /**\n @override\n */\n\n }, {\n key: \"appendTail\",\n value: function appendTail(tail) {\n return _get(_getPrototypeOf(MaskedPattern.prototype), \"appendTail\", this).call(this, tail).aggregate(this._appendPlaceholder());\n }\n /**\n @override\n */\n\n }, {\n key: \"_appendEager\",\n value: function _appendEager() {\n var _this$_mapPosToBlock;\n\n var details = new ChangeDetails();\n var startBlockIndex = (_this$_mapPosToBlock = this._mapPosToBlock(this.value.length)) === null || _this$_mapPosToBlock === void 0 ? void 0 : _this$_mapPosToBlock.index;\n if (startBlockIndex == null) return details; // TODO test if it works for nested pattern masks\n\n if (this._blocks[startBlockIndex].isFilled) ++startBlockIndex;\n\n for (var bi = startBlockIndex; bi < this._blocks.length; ++bi) {\n var d = this._blocks[bi]._appendEager();\n\n if (!d.inserted) break;\n details.aggregate(d);\n }\n\n return details;\n }\n /**\n @override\n */\n\n }, {\n key: \"_appendCharRaw\",\n value: function _appendCharRaw(ch) {\n var flags = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n var blockIter = this._mapPosToBlock(this.value.length);\n\n var details = new ChangeDetails();\n if (!blockIter) return details;\n\n for (var bi = blockIter.index;; ++bi) {\n var _flags$_beforeTailSta, _flags$_beforeTailSta2;\n\n var _block = this._blocks[bi];\n if (!_block) break;\n\n var blockDetails = _block._appendChar(ch, Object.assign({}, flags, {\n _beforeTailState: (_flags$_beforeTailSta = flags._beforeTailState) === null || _flags$_beforeTailSta === void 0 ? void 0 : (_flags$_beforeTailSta2 = _flags$_beforeTailSta._blocks) === null || _flags$_beforeTailSta2 === void 0 ? void 0 : _flags$_beforeTailSta2[bi]\n }));\n\n var skip = blockDetails.skip;\n details.aggregate(blockDetails);\n if (skip || blockDetails.rawInserted) break; // go next char\n }\n\n return details;\n }\n /**\n @override\n */\n\n }, {\n key: \"extractTail\",\n value: function extractTail() {\n var _this2 = this;\n\n var fromPos = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;\n var toPos = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : this.value.length;\n var chunkTail = new ChunksTailDetails();\n if (fromPos === toPos) return chunkTail;\n\n this._forEachBlocksInRange(fromPos, toPos, function (b, bi, bFromPos, bToPos) {\n var blockChunk = b.extractTail(bFromPos, bToPos);\n blockChunk.stop = _this2._findStopBefore(bi);\n blockChunk.from = _this2._blockStartPos(bi);\n if (blockChunk instanceof ChunksTailDetails) blockChunk.blockIndex = bi;\n chunkTail.extend(blockChunk);\n });\n\n return chunkTail;\n }\n /**\n @override\n */\n\n }, {\n key: \"extractInput\",\n value: function extractInput() {\n var fromPos = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;\n var toPos = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : this.value.length;\n var flags = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n if (fromPos === toPos) return '';\n var input = '';\n\n this._forEachBlocksInRange(fromPos, toPos, function (b, _, fromPos, toPos) {\n input += b.extractInput(fromPos, toPos, flags);\n });\n\n return input;\n }\n }, {\n key: \"_findStopBefore\",\n value: function _findStopBefore(blockIndex) {\n var stopBefore;\n\n for (var si = 0; si < this._stops.length; ++si) {\n var stop = this._stops[si];\n if (stop <= blockIndex) stopBefore = stop;else break;\n }\n\n return stopBefore;\n }\n /** Appends placeholder depending on laziness */\n\n }, {\n key: \"_appendPlaceholder\",\n value: function _appendPlaceholder(toBlockIndex) {\n var _this3 = this;\n\n var details = new ChangeDetails();\n if (this.lazy && toBlockIndex == null) return details;\n\n var startBlockIter = this._mapPosToBlock(this.value.length);\n\n if (!startBlockIter) return details;\n var startBlockIndex = startBlockIter.index;\n var endBlockIndex = toBlockIndex != null ? toBlockIndex : this._blocks.length;\n\n this._blocks.slice(startBlockIndex, endBlockIndex).forEach(function (b) {\n if (!b.lazy || toBlockIndex != null) {\n // $FlowFixMe `_blocks` may not be present\n var args = b._blocks != null ? [b._blocks.length] : [];\n\n var bDetails = b._appendPlaceholder.apply(b, args);\n\n _this3._value += bDetails.inserted;\n details.aggregate(bDetails);\n }\n });\n\n return details;\n }\n /** Finds block in pos */\n\n }, {\n key: \"_mapPosToBlock\",\n value: function _mapPosToBlock(pos) {\n var accVal = '';\n\n for (var bi = 0; bi < this._blocks.length; ++bi) {\n var _block2 = this._blocks[bi];\n var blockStartPos = accVal.length;\n accVal += _block2.value;\n\n if (pos <= accVal.length) {\n return {\n index: bi,\n offset: pos - blockStartPos\n };\n }\n }\n }\n /** */\n\n }, {\n key: \"_blockStartPos\",\n value: function _blockStartPos(blockIndex) {\n return this._blocks.slice(0, blockIndex).reduce(function (pos, b) {\n return pos += b.value.length;\n }, 0);\n }\n /** */\n\n }, {\n key: \"_forEachBlocksInRange\",\n value: function _forEachBlocksInRange(fromPos) {\n var toPos = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : this.value.length;\n var fn = arguments.length > 2 ? arguments[2] : undefined;\n\n var fromBlockIter = this._mapPosToBlock(fromPos);\n\n if (fromBlockIter) {\n var toBlockIter = this._mapPosToBlock(toPos); // process first block\n\n\n var isSameBlock = toBlockIter && fromBlockIter.index === toBlockIter.index;\n var fromBlockStartPos = fromBlockIter.offset;\n var fromBlockEndPos = toBlockIter && isSameBlock ? toBlockIter.offset : this._blocks[fromBlockIter.index].value.length;\n fn(this._blocks[fromBlockIter.index], fromBlockIter.index, fromBlockStartPos, fromBlockEndPos);\n\n if (toBlockIter && !isSameBlock) {\n // process intermediate blocks\n for (var bi = fromBlockIter.index + 1; bi < toBlockIter.index; ++bi) {\n fn(this._blocks[bi], bi, 0, this._blocks[bi].value.length);\n } // process last block\n\n\n fn(this._blocks[toBlockIter.index], toBlockIter.index, 0, toBlockIter.offset);\n }\n }\n }\n /**\n @override\n */\n\n }, {\n key: \"remove\",\n value: function remove() {\n var fromPos = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;\n var toPos = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : this.value.length;\n\n var removeDetails = _get(_getPrototypeOf(MaskedPattern.prototype), \"remove\", this).call(this, fromPos, toPos);\n\n this._forEachBlocksInRange(fromPos, toPos, function (b, _, bFromPos, bToPos) {\n removeDetails.aggregate(b.remove(bFromPos, bToPos));\n });\n\n return removeDetails;\n }\n /**\n @override\n */\n\n }, {\n key: \"nearestInputPos\",\n value: function nearestInputPos(cursorPos) {\n var direction = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : DIRECTION.NONE;\n if (!this._blocks.length) return 0;\n var cursor = new PatternCursor(this, cursorPos);\n\n if (direction === DIRECTION.NONE) {\n // -------------------------------------------------\n // NONE should only go out from fixed to the right!\n // -------------------------------------------------\n if (cursor.pushRightBeforeInput()) return cursor.pos;\n cursor.popState();\n if (cursor.pushLeftBeforeInput()) return cursor.pos;\n return this.value.length;\n } // FORCE is only about a|* otherwise is 0\n\n\n if (direction === DIRECTION.LEFT || direction === DIRECTION.FORCE_LEFT) {\n // try to break fast when *|a\n if (direction === DIRECTION.LEFT) {\n cursor.pushRightBeforeFilled();\n if (cursor.ok && cursor.pos === cursorPos) return cursorPos;\n cursor.popState();\n } // forward flow\n\n\n cursor.pushLeftBeforeInput();\n cursor.pushLeftBeforeRequired();\n cursor.pushLeftBeforeFilled(); // backward flow\n\n if (direction === DIRECTION.LEFT) {\n cursor.pushRightBeforeInput();\n cursor.pushRightBeforeRequired();\n if (cursor.ok && cursor.pos <= cursorPos) return cursor.pos;\n cursor.popState();\n if (cursor.ok && cursor.pos <= cursorPos) return cursor.pos;\n cursor.popState();\n }\n\n if (cursor.ok) return cursor.pos;\n if (direction === DIRECTION.FORCE_LEFT) return 0;\n cursor.popState();\n if (cursor.ok) return cursor.pos;\n cursor.popState();\n if (cursor.ok) return cursor.pos; // cursor.popState();\n // if (\n // cursor.pushRightBeforeInput() &&\n // // TODO HACK for lazy if has aligned left inside fixed and has came to the start - use start position\n // (!this.lazy || this.extractInput())\n // ) return cursor.pos;\n\n return 0;\n }\n\n if (direction === DIRECTION.RIGHT || direction === DIRECTION.FORCE_RIGHT) {\n // forward flow\n cursor.pushRightBeforeInput();\n cursor.pushRightBeforeRequired();\n if (cursor.pushRightBeforeFilled()) return cursor.pos;\n if (direction === DIRECTION.FORCE_RIGHT) return this.value.length; // backward flow\n\n cursor.popState();\n if (cursor.ok) return cursor.pos;\n cursor.popState();\n if (cursor.ok) return cursor.pos;\n return this.nearestInputPos(cursorPos, DIRECTION.LEFT);\n }\n\n return cursorPos;\n }\n /** Get block by name */\n\n }, {\n key: \"maskedBlock\",\n value: function maskedBlock(name) {\n return this.maskedBlocks(name)[0];\n }\n /** Get all blocks by name */\n\n }, {\n key: \"maskedBlocks\",\n value: function maskedBlocks(name) {\n var _this4 = this;\n\n var indices = this._maskedBlocks[name];\n if (!indices) return [];\n return indices.map(function (gi) {\n return _this4._blocks[gi];\n });\n }\n }]);\n\n return MaskedPattern;\n}(Masked);\nMaskedPattern.DEFAULTS = {\n lazy: true,\n placeholderChar: '_'\n};\nMaskedPattern.STOP_CHAR = '`';\nMaskedPattern.ESCAPE_CHAR = '\\\\';\nMaskedPattern.InputDefinition = PatternInputDefinition;\nMaskedPattern.FixedDefinition = PatternFixedDefinition;\nIMask.MaskedPattern = MaskedPattern;\n\n/** Pattern which accepts ranges */\n\nvar MaskedRange = /*#__PURE__*/function (_MaskedPattern) {\n _inherits(MaskedRange, _MaskedPattern);\n\n var _super = _createSuper(MaskedRange);\n\n function MaskedRange() {\n _classCallCheck(this, MaskedRange);\n\n return _super.apply(this, arguments);\n }\n\n _createClass(MaskedRange, [{\n key: \"_matchFrom\",\n get:\n /**\n Optionally sets max length of pattern.\n Used when pattern length is longer then `to` param length. Pads zeros at start in this case.\n */\n\n /** Min bound */\n\n /** Max bound */\n\n /** */\n function get() {\n return this.maxLength - String(this.from).length;\n }\n /**\n @override\n */\n\n }, {\n key: \"_update\",\n value: function _update(opts) {\n // TODO type\n opts = Object.assign({\n to: this.to || 0,\n from: this.from || 0,\n maxLength: this.maxLength || 0\n }, opts);\n var maxLength = String(opts.to).length;\n if (opts.maxLength != null) maxLength = Math.max(maxLength, opts.maxLength);\n opts.maxLength = maxLength;\n var fromStr = String(opts.from).padStart(maxLength, '0');\n var toStr = String(opts.to).padStart(maxLength, '0');\n var sameCharsCount = 0;\n\n while (sameCharsCount < toStr.length && toStr[sameCharsCount] === fromStr[sameCharsCount]) {\n ++sameCharsCount;\n }\n\n opts.mask = toStr.slice(0, sameCharsCount).replace(/0/g, '\\\\0') + '0'.repeat(maxLength - sameCharsCount);\n\n _get(_getPrototypeOf(MaskedRange.prototype), \"_update\", this).call(this, opts);\n }\n /**\n @override\n */\n\n }, {\n key: \"isComplete\",\n get: function get() {\n return _get(_getPrototypeOf(MaskedRange.prototype), \"isComplete\", this) && Boolean(this.value);\n }\n }, {\n key: \"boundaries\",\n value: function boundaries(str) {\n var minstr = '';\n var maxstr = '';\n\n var _ref = str.match(/^(\\D*)(\\d*)(\\D*)/) || [],\n _ref2 = _slicedToArray(_ref, 3),\n placeholder = _ref2[1],\n num = _ref2[2];\n\n if (num) {\n minstr = '0'.repeat(placeholder.length) + num;\n maxstr = '9'.repeat(placeholder.length) + num;\n }\n\n minstr = minstr.padEnd(this.maxLength, '0');\n maxstr = maxstr.padEnd(this.maxLength, '9');\n return [minstr, maxstr];\n } // TODO str is a single char everytime\n\n /**\n @override\n */\n\n }, {\n key: \"doPrepare\",\n value: function doPrepare(ch) {\n var flags = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var details;\n\n var _normalizePrepare = normalizePrepare(_get(_getPrototypeOf(MaskedRange.prototype), \"doPrepare\", this).call(this, ch.replace(/\\D/g, ''), flags));\n\n var _normalizePrepare2 = _slicedToArray(_normalizePrepare, 2);\n\n ch = _normalizePrepare2[0];\n details = _normalizePrepare2[1];\n if (!this.autofix || !ch) return ch;\n var fromStr = String(this.from).padStart(this.maxLength, '0');\n var toStr = String(this.to).padStart(this.maxLength, '0');\n var nextVal = this.value + ch;\n if (nextVal.length > this.maxLength) return '';\n\n var _this$boundaries = this.boundaries(nextVal),\n _this$boundaries2 = _slicedToArray(_this$boundaries, 2),\n minstr = _this$boundaries2[0],\n maxstr = _this$boundaries2[1];\n\n if (Number(maxstr) < this.from) return fromStr[nextVal.length - 1];\n\n if (Number(minstr) > this.to) {\n if (this.autofix === 'pad' && nextVal.length < this.maxLength) {\n return ['', details.aggregate(this.append(fromStr[nextVal.length - 1] + ch, flags))];\n }\n\n return toStr[nextVal.length - 1];\n }\n\n return ch;\n }\n /**\n @override\n */\n\n }, {\n key: \"doValidate\",\n value: function doValidate() {\n var _get2;\n\n var str = this.value;\n var firstNonZero = str.search(/[^0]/);\n if (firstNonZero === -1 && str.length <= this._matchFrom) return true;\n\n var _this$boundaries3 = this.boundaries(str),\n _this$boundaries4 = _slicedToArray(_this$boundaries3, 2),\n minstr = _this$boundaries4[0],\n maxstr = _this$boundaries4[1];\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return this.from <= Number(maxstr) && Number(minstr) <= this.to && (_get2 = _get(_getPrototypeOf(MaskedRange.prototype), \"doValidate\", this)).call.apply(_get2, [this].concat(args));\n }\n }]);\n\n return MaskedRange;\n}(MaskedPattern);\nIMask.MaskedRange = MaskedRange;\n\n/** Date mask */\n\nvar MaskedDate = /*#__PURE__*/function (_MaskedPattern) {\n _inherits(MaskedDate, _MaskedPattern);\n\n var _super = _createSuper(MaskedDate);\n\n /** Pattern mask for date according to {@link MaskedDate#format} */\n\n /** Start date */\n\n /** End date */\n\n /** */\n\n /**\n @param {Object} opts\n */\n function MaskedDate(opts) {\n _classCallCheck(this, MaskedDate);\n\n return _super.call(this, Object.assign({}, MaskedDate.DEFAULTS, opts));\n }\n /**\n @override\n */\n\n\n _createClass(MaskedDate, [{\n key: \"_update\",\n value: function _update(opts) {\n if (opts.mask === Date) delete opts.mask;\n if (opts.pattern) opts.mask = opts.pattern;\n var blocks = opts.blocks;\n opts.blocks = Object.assign({}, MaskedDate.GET_DEFAULT_BLOCKS()); // adjust year block\n\n if (opts.min) opts.blocks.Y.from = opts.min.getFullYear();\n if (opts.max) opts.blocks.Y.to = opts.max.getFullYear();\n\n if (opts.min && opts.max && opts.blocks.Y.from === opts.blocks.Y.to) {\n opts.blocks.m.from = opts.min.getMonth() + 1;\n opts.blocks.m.to = opts.max.getMonth() + 1;\n\n if (opts.blocks.m.from === opts.blocks.m.to) {\n opts.blocks.d.from = opts.min.getDate();\n opts.blocks.d.to = opts.max.getDate();\n }\n }\n\n Object.assign(opts.blocks, this.blocks, blocks); // add autofix\n\n Object.keys(opts.blocks).forEach(function (bk) {\n var b = opts.blocks[bk];\n if (!('autofix' in b) && 'autofix' in opts) b.autofix = opts.autofix;\n });\n\n _get(_getPrototypeOf(MaskedDate.prototype), \"_update\", this).call(this, opts);\n }\n /**\n @override\n */\n\n }, {\n key: \"doValidate\",\n value: function doValidate() {\n var _get2;\n\n var date = this.date;\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return (_get2 = _get(_getPrototypeOf(MaskedDate.prototype), \"doValidate\", this)).call.apply(_get2, [this].concat(args)) && (!this.isComplete || this.isDateExist(this.value) && date != null && (this.min == null || this.min <= date) && (this.max == null || date <= this.max));\n }\n /** Checks if date is exists */\n\n }, {\n key: \"isDateExist\",\n value: function isDateExist(str) {\n return this.format(this.parse(str, this), this).indexOf(str) >= 0;\n }\n /** Parsed Date */\n\n }, {\n key: \"date\",\n get: function get() {\n return this.typedValue;\n },\n set: function set(date) {\n this.typedValue = date;\n }\n /**\n @override\n */\n\n }, {\n key: \"typedValue\",\n get: function get() {\n return this.isComplete ? _get(_getPrototypeOf(MaskedDate.prototype), \"typedValue\", this) : null;\n },\n set: function set(value) {\n _set(_getPrototypeOf(MaskedDate.prototype), \"typedValue\", value, this, true);\n }\n /**\n @override\n */\n\n }, {\n key: \"maskEquals\",\n value: function maskEquals(mask) {\n return mask === Date || _get(_getPrototypeOf(MaskedDate.prototype), \"maskEquals\", this).call(this, mask);\n }\n }]);\n\n return MaskedDate;\n}(MaskedPattern);\nMaskedDate.DEFAULTS = {\n pattern: 'd{.}`m{.}`Y',\n format: function format(date) {\n if (!date) return '';\n var day = String(date.getDate()).padStart(2, '0');\n var month = String(date.getMonth() + 1).padStart(2, '0');\n var year = date.getFullYear();\n return [day, month, year].join('.');\n },\n parse: function parse(str) {\n var _str$split = str.split('.'),\n _str$split2 = _slicedToArray(_str$split, 3),\n day = _str$split2[0],\n month = _str$split2[1],\n year = _str$split2[2];\n\n return new Date(year, month - 1, day);\n }\n};\n\nMaskedDate.GET_DEFAULT_BLOCKS = function () {\n return {\n d: {\n mask: MaskedRange,\n from: 1,\n to: 31,\n maxLength: 2\n },\n m: {\n mask: MaskedRange,\n from: 1,\n to: 12,\n maxLength: 2\n },\n Y: {\n mask: MaskedRange,\n from: 1900,\n to: 9999\n }\n };\n};\n\nIMask.MaskedDate = MaskedDate;\n\n/**\n Generic element API to use with mask\n @interface\n*/\nvar MaskElement = /*#__PURE__*/function () {\n function MaskElement() {\n _classCallCheck(this, MaskElement);\n }\n\n _createClass(MaskElement, [{\n key: \"selectionStart\",\n get:\n /** */\n\n /** */\n\n /** */\n\n /** Safely returns selection start */\n function get() {\n var start;\n\n try {\n start = this._unsafeSelectionStart;\n } catch (e) {}\n\n return start != null ? start : this.value.length;\n }\n /** Safely returns selection end */\n\n }, {\n key: \"selectionEnd\",\n get: function get() {\n var end;\n\n try {\n end = this._unsafeSelectionEnd;\n } catch (e) {}\n\n return end != null ? end : this.value.length;\n }\n /** Safely sets element selection */\n\n }, {\n key: \"select\",\n value: function select(start, end) {\n if (start == null || end == null || start === this.selectionStart && end === this.selectionEnd) return;\n\n try {\n this._unsafeSelect(start, end);\n } catch (e) {}\n }\n /** Should be overriden in subclasses */\n\n }, {\n key: \"_unsafeSelect\",\n value: function _unsafeSelect(start, end) {}\n /** Should be overriden in subclasses */\n\n }, {\n key: \"isActive\",\n get: function get() {\n return false;\n }\n /** Should be overriden in subclasses */\n\n }, {\n key: \"bindEvents\",\n value: function bindEvents(handlers) {}\n /** Should be overriden in subclasses */\n\n }, {\n key: \"unbindEvents\",\n value: function unbindEvents() {}\n }]);\n\n return MaskElement;\n}();\nIMask.MaskElement = MaskElement;\n\n/** Bridge between HTMLElement and {@link Masked} */\n\nvar HTMLMaskElement = /*#__PURE__*/function (_MaskElement) {\n _inherits(HTMLMaskElement, _MaskElement);\n\n var _super = _createSuper(HTMLMaskElement);\n\n /** Mapping between HTMLElement events and mask internal events */\n\n /** HTMLElement to use mask on */\n\n /**\n @param {HTMLInputElement|HTMLTextAreaElement} input\n */\n function HTMLMaskElement(input) {\n var _this;\n\n _classCallCheck(this, HTMLMaskElement);\n\n _this = _super.call(this);\n _this.input = input;\n _this._handlers = {};\n return _this;\n }\n /** */\n // $FlowFixMe https://github.com/facebook/flow/issues/2839\n\n\n _createClass(HTMLMaskElement, [{\n key: \"rootElement\",\n get: function get() {\n var _this$input$getRootNo, _this$input$getRootNo2, _this$input;\n\n return (_this$input$getRootNo = (_this$input$getRootNo2 = (_this$input = this.input).getRootNode) === null || _this$input$getRootNo2 === void 0 ? void 0 : _this$input$getRootNo2.call(_this$input)) !== null && _this$input$getRootNo !== void 0 ? _this$input$getRootNo : document;\n }\n /**\n Is element in focus\n @readonly\n */\n\n }, {\n key: \"isActive\",\n get: function get() {\n //$FlowFixMe\n return this.input === this.rootElement.activeElement;\n }\n /**\n Returns HTMLElement selection start\n @override\n */\n\n }, {\n key: \"_unsafeSelectionStart\",\n get: function get() {\n return this.input.selectionStart;\n }\n /**\n Returns HTMLElement selection end\n @override\n */\n\n }, {\n key: \"_unsafeSelectionEnd\",\n get: function get() {\n return this.input.selectionEnd;\n }\n /**\n Sets HTMLElement selection\n @override\n */\n\n }, {\n key: \"_unsafeSelect\",\n value: function _unsafeSelect(start, end) {\n this.input.setSelectionRange(start, end);\n }\n /**\n HTMLElement value\n @override\n */\n\n }, {\n key: \"value\",\n get: function get() {\n return this.input.value;\n },\n set: function set(value) {\n this.input.value = value;\n }\n /**\n Binds HTMLElement events to mask internal events\n @override\n */\n\n }, {\n key: \"bindEvents\",\n value: function bindEvents(handlers) {\n var _this2 = this;\n\n Object.keys(handlers).forEach(function (event) {\n return _this2._toggleEventHandler(HTMLMaskElement.EVENTS_MAP[event], handlers[event]);\n });\n }\n /**\n Unbinds HTMLElement events to mask internal events\n @override\n */\n\n }, {\n key: \"unbindEvents\",\n value: function unbindEvents() {\n var _this3 = this;\n\n Object.keys(this._handlers).forEach(function (event) {\n return _this3._toggleEventHandler(event);\n });\n }\n /** */\n\n }, {\n key: \"_toggleEventHandler\",\n value: function _toggleEventHandler(event, handler) {\n if (this._handlers[event]) {\n this.input.removeEventListener(event, this._handlers[event]);\n delete this._handlers[event];\n }\n\n if (handler) {\n this.input.addEventListener(event, handler);\n this._handlers[event] = handler;\n }\n }\n }]);\n\n return HTMLMaskElement;\n}(MaskElement);\nHTMLMaskElement.EVENTS_MAP = {\n selectionChange: 'keydown',\n input: 'input',\n drop: 'drop',\n click: 'click',\n focus: 'focus',\n commit: 'blur'\n};\nIMask.HTMLMaskElement = HTMLMaskElement;\n\nvar HTMLContenteditableMaskElement = /*#__PURE__*/function (_HTMLMaskElement) {\n _inherits(HTMLContenteditableMaskElement, _HTMLMaskElement);\n\n var _super = _createSuper(HTMLContenteditableMaskElement);\n\n function HTMLContenteditableMaskElement() {\n _classCallCheck(this, HTMLContenteditableMaskElement);\n\n return _super.apply(this, arguments);\n }\n\n _createClass(HTMLContenteditableMaskElement, [{\n key: \"_unsafeSelectionStart\",\n get:\n /**\n Returns HTMLElement selection start\n @override\n */\n function get() {\n var root = this.rootElement;\n var selection = root.getSelection && root.getSelection();\n var anchorOffset = selection && selection.anchorOffset;\n var focusOffset = selection && selection.focusOffset;\n\n if (focusOffset == null || anchorOffset == null || anchorOffset < focusOffset) {\n return anchorOffset;\n }\n\n return focusOffset;\n }\n /**\n Returns HTMLElement selection end\n @override\n */\n\n }, {\n key: \"_unsafeSelectionEnd\",\n get: function get() {\n var root = this.rootElement;\n var selection = root.getSelection && root.getSelection();\n var anchorOffset = selection && selection.anchorOffset;\n var focusOffset = selection && selection.focusOffset;\n\n if (focusOffset == null || anchorOffset == null || anchorOffset > focusOffset) {\n return anchorOffset;\n }\n\n return focusOffset;\n }\n /**\n Sets HTMLElement selection\n @override\n */\n\n }, {\n key: \"_unsafeSelect\",\n value: function _unsafeSelect(start, end) {\n if (!this.rootElement.createRange) return;\n var range = this.rootElement.createRange();\n range.setStart(this.input.firstChild || this.input, start);\n range.setEnd(this.input.lastChild || this.input, end);\n var root = this.rootElement;\n var selection = root.getSelection && root.getSelection();\n\n if (selection) {\n selection.removeAllRanges();\n selection.addRange(range);\n }\n }\n /**\n HTMLElement value\n @override\n */\n\n }, {\n key: \"value\",\n get: function get() {\n // $FlowFixMe\n return this.input.textContent;\n },\n set: function set(value) {\n this.input.textContent = value;\n }\n }]);\n\n return HTMLContenteditableMaskElement;\n}(HTMLMaskElement);\nIMask.HTMLContenteditableMaskElement = HTMLContenteditableMaskElement;\n\nvar _excluded$3 = [\"mask\"];\n/** Listens to element events and controls changes between element and {@link Masked} */\n\nvar InputMask = /*#__PURE__*/function () {\n /**\n View element\n @readonly\n */\n\n /**\n Internal {@link Masked} model\n @readonly\n */\n\n /**\n @param {MaskElement|HTMLInputElement|HTMLTextAreaElement} el\n @param {Object} opts\n */\n function InputMask(el, opts) {\n _classCallCheck(this, InputMask);\n\n this.el = el instanceof MaskElement ? el : el.isContentEditable && el.tagName !== 'INPUT' && el.tagName !== 'TEXTAREA' ? new HTMLContenteditableMaskElement(el) : new HTMLMaskElement(el);\n this.masked = createMask(opts);\n this._listeners = {};\n this._value = '';\n this._unmaskedValue = '';\n this._saveSelection = this._saveSelection.bind(this);\n this._onInput = this._onInput.bind(this);\n this._onChange = this._onChange.bind(this);\n this._onDrop = this._onDrop.bind(this);\n this._onFocus = this._onFocus.bind(this);\n this._onClick = this._onClick.bind(this);\n this.alignCursor = this.alignCursor.bind(this);\n this.alignCursorFriendly = this.alignCursorFriendly.bind(this);\n\n this._bindEvents(); // refresh\n\n\n this.updateValue();\n\n this._onChange();\n }\n /** Read or update mask */\n\n\n _createClass(InputMask, [{\n key: \"mask\",\n get: function get() {\n return this.masked.mask;\n },\n set: function set(mask) {\n if (this.maskEquals(mask)) return; // $FlowFixMe No ideas ... after update\n\n if (!(mask instanceof IMask.Masked) && this.masked.constructor === maskedClass(mask)) {\n this.masked.updateOptions({\n mask: mask\n });\n return;\n }\n\n var masked = createMask({\n mask: mask\n });\n masked.unmaskedValue = this.masked.unmaskedValue;\n this.masked = masked;\n }\n /** Raw value */\n\n }, {\n key: \"maskEquals\",\n value: function maskEquals(mask) {\n var _this$masked;\n\n return mask == null || ((_this$masked = this.masked) === null || _this$masked === void 0 ? void 0 : _this$masked.maskEquals(mask));\n }\n }, {\n key: \"value\",\n get: function get() {\n return this._value;\n },\n set: function set(str) {\n if (this.value === str) return;\n this.masked.value = str;\n this.updateControl();\n this.alignCursor();\n }\n /** Unmasked value */\n\n }, {\n key: \"unmaskedValue\",\n get: function get() {\n return this._unmaskedValue;\n },\n set: function set(str) {\n if (this.unmaskedValue === str) return;\n this.masked.unmaskedValue = str;\n this.updateControl();\n this.alignCursor();\n }\n /** Typed unmasked value */\n\n }, {\n key: \"typedValue\",\n get: function get() {\n return this.masked.typedValue;\n },\n set: function set(val) {\n if (this.masked.typedValueEquals(val)) return;\n this.masked.typedValue = val;\n this.updateControl();\n this.alignCursor();\n }\n /**\n Starts listening to element events\n @protected\n */\n\n }, {\n key: \"_bindEvents\",\n value: function _bindEvents() {\n this.el.bindEvents({\n selectionChange: this._saveSelection,\n input: this._onInput,\n drop: this._onDrop,\n click: this._onClick,\n focus: this._onFocus,\n commit: this._onChange\n });\n }\n /**\n Stops listening to element events\n @protected\n */\n\n }, {\n key: \"_unbindEvents\",\n value: function _unbindEvents() {\n if (this.el) this.el.unbindEvents();\n }\n /**\n Fires custom event\n @protected\n */\n\n }, {\n key: \"_fireEvent\",\n value: function _fireEvent(ev) {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n var listeners = this._listeners[ev];\n if (!listeners) return;\n listeners.forEach(function (l) {\n return l.apply(void 0, args);\n });\n }\n /**\n Current selection start\n @readonly\n */\n\n }, {\n key: \"selectionStart\",\n get: function get() {\n return this._cursorChanging ? this._changingCursorPos : this.el.selectionStart;\n }\n /** Current cursor position */\n\n }, {\n key: \"cursorPos\",\n get: function get() {\n return this._cursorChanging ? this._changingCursorPos : this.el.selectionEnd;\n },\n set: function set(pos) {\n if (!this.el || !this.el.isActive) return;\n this.el.select(pos, pos);\n\n this._saveSelection();\n }\n /**\n Stores current selection\n @protected\n */\n\n }, {\n key: \"_saveSelection\",\n value: function\n /* ev */\n _saveSelection() {\n if (this.value !== this.el.value) {\n console.warn('Element value was changed outside of mask. Syncronize mask using `mask.updateValue()` to work properly.'); // eslint-disable-line no-console\n }\n\n this._selection = {\n start: this.selectionStart,\n end: this.cursorPos\n };\n }\n /** Syncronizes model value from view */\n\n }, {\n key: \"updateValue\",\n value: function updateValue() {\n this.masked.value = this.el.value;\n this._value = this.masked.value;\n }\n /** Syncronizes view from model value, fires change events */\n\n }, {\n key: \"updateControl\",\n value: function updateControl() {\n var newUnmaskedValue = this.masked.unmaskedValue;\n var newValue = this.masked.value;\n var isChanged = this.unmaskedValue !== newUnmaskedValue || this.value !== newValue;\n this._unmaskedValue = newUnmaskedValue;\n this._value = newValue;\n if (this.el.value !== newValue) this.el.value = newValue;\n if (isChanged) this._fireChangeEvents();\n }\n /** Updates options with deep equal check, recreates @{link Masked} model if mask type changes */\n\n }, {\n key: \"updateOptions\",\n value: function updateOptions(opts) {\n var mask = opts.mask,\n restOpts = _objectWithoutProperties(opts, _excluded$3);\n\n var updateMask = !this.maskEquals(mask);\n var updateOpts = !objectIncludes(this.masked, restOpts);\n if (updateMask) this.mask = mask;\n if (updateOpts) this.masked.updateOptions(restOpts);\n if (updateMask || updateOpts) this.updateControl();\n }\n /** Updates cursor */\n\n }, {\n key: \"updateCursor\",\n value: function updateCursor(cursorPos) {\n if (cursorPos == null) return;\n this.cursorPos = cursorPos; // also queue change cursor for mobile browsers\n\n this._delayUpdateCursor(cursorPos);\n }\n /**\n Delays cursor update to support mobile browsers\n @private\n */\n\n }, {\n key: \"_delayUpdateCursor\",\n value: function _delayUpdateCursor(cursorPos) {\n var _this = this;\n\n this._abortUpdateCursor();\n\n this._changingCursorPos = cursorPos;\n this._cursorChanging = setTimeout(function () {\n if (!_this.el) return; // if was destroyed\n\n _this.cursorPos = _this._changingCursorPos;\n\n _this._abortUpdateCursor();\n }, 10);\n }\n /**\n Fires custom events\n @protected\n */\n\n }, {\n key: \"_fireChangeEvents\",\n value: function _fireChangeEvents() {\n this._fireEvent('accept', this._inputEvent);\n\n if (this.masked.isComplete) this._fireEvent('complete', this._inputEvent);\n }\n /**\n Aborts delayed cursor update\n @private\n */\n\n }, {\n key: \"_abortUpdateCursor\",\n value: function _abortUpdateCursor() {\n if (this._cursorChanging) {\n clearTimeout(this._cursorChanging);\n delete this._cursorChanging;\n }\n }\n /** Aligns cursor to nearest available position */\n\n }, {\n key: \"alignCursor\",\n value: function alignCursor() {\n this.cursorPos = this.masked.nearestInputPos(this.masked.nearestInputPos(this.cursorPos, DIRECTION.LEFT));\n }\n /** Aligns cursor only if selection is empty */\n\n }, {\n key: \"alignCursorFriendly\",\n value: function alignCursorFriendly() {\n if (this.selectionStart !== this.cursorPos) return; // skip if range is selected\n\n this.alignCursor();\n }\n /** Adds listener on custom event */\n\n }, {\n key: \"on\",\n value: function on(ev, handler) {\n if (!this._listeners[ev]) this._listeners[ev] = [];\n\n this._listeners[ev].push(handler);\n\n return this;\n }\n /** Removes custom event listener */\n\n }, {\n key: \"off\",\n value: function off(ev, handler) {\n if (!this._listeners[ev]) return this;\n\n if (!handler) {\n delete this._listeners[ev];\n return this;\n }\n\n var hIndex = this._listeners[ev].indexOf(handler);\n\n if (hIndex >= 0) this._listeners[ev].splice(hIndex, 1);\n return this;\n }\n /** Handles view input event */\n\n }, {\n key: \"_onInput\",\n value: function _onInput(e) {\n this._inputEvent = e;\n\n this._abortUpdateCursor(); // fix strange IE behavior\n\n\n if (!this._selection) return this.updateValue();\n var details = new ActionDetails( // new state\n this.el.value, this.cursorPos, // old state\n this.value, this._selection);\n var oldRawValue = this.masked.rawInputValue;\n var offset = this.masked.splice(details.startChangePos, details.removed.length, details.inserted, details.removeDirection, {\n input: true,\n raw: true\n }).offset; // force align in remove direction only if no input chars were removed\n // otherwise we still need to align with NONE (to get out from fixed symbols for instance)\n\n var removeDirection = oldRawValue === this.masked.rawInputValue ? details.removeDirection : DIRECTION.NONE;\n var cursorPos = this.masked.nearestInputPos(details.startChangePos + offset, removeDirection);\n if (removeDirection !== DIRECTION.NONE) cursorPos = this.masked.nearestInputPos(cursorPos, DIRECTION.NONE);\n this.updateControl();\n this.updateCursor(cursorPos);\n delete this._inputEvent;\n }\n /** Handles view change event and commits model value */\n\n }, {\n key: \"_onChange\",\n value: function _onChange() {\n if (this.value !== this.el.value) {\n this.updateValue();\n }\n\n this.masked.doCommit();\n this.updateControl();\n\n this._saveSelection();\n }\n /** Handles view drop event, prevents by default */\n\n }, {\n key: \"_onDrop\",\n value: function _onDrop(ev) {\n ev.preventDefault();\n ev.stopPropagation();\n }\n /** Restore last selection on focus */\n\n }, {\n key: \"_onFocus\",\n value: function _onFocus(ev) {\n this.alignCursorFriendly();\n }\n /** Restore last selection on focus */\n\n }, {\n key: \"_onClick\",\n value: function _onClick(ev) {\n this.alignCursorFriendly();\n }\n /** Unbind view events and removes element reference */\n\n }, {\n key: \"destroy\",\n value: function destroy() {\n this._unbindEvents(); // $FlowFixMe why not do so?\n\n\n this._listeners.length = 0; // $FlowFixMe\n\n delete this.el;\n }\n }]);\n\n return InputMask;\n}();\nIMask.InputMask = InputMask;\n\n/**\n Number mask\n @param {Object} opts\n @param {string} opts.radix - Single char\n @param {string} opts.thousandsSeparator - Single char\n @param {Array} opts.mapToRadix - Array of single chars\n @param {number} opts.min\n @param {number} opts.max\n @param {number} opts.scale - Digits after point\n @param {boolean} opts.signed - Allow negative\n @param {boolean} opts.normalizeZeros - Flag to remove leading and trailing zeros in the end of editing\n @param {boolean} opts.padFractionalZeros - Flag to pad trailing zeros after point in the end of editing\n*/\nvar MaskedNumber = /*#__PURE__*/function (_Masked) {\n _inherits(MaskedNumber, _Masked);\n\n var _super = _createSuper(MaskedNumber);\n\n /** Single char */\n\n /** Single char */\n\n /** Array of single chars */\n\n /** */\n\n /** */\n\n /** Digits after point */\n\n /** */\n\n /** Flag to remove leading and trailing zeros in the end of editing */\n\n /** Flag to pad trailing zeros after point in the end of editing */\n function MaskedNumber(opts) {\n _classCallCheck(this, MaskedNumber);\n\n return _super.call(this, Object.assign({}, MaskedNumber.DEFAULTS, opts));\n }\n /**\n @override\n */\n\n\n _createClass(MaskedNumber, [{\n key: \"_update\",\n value: function _update(opts) {\n _get(_getPrototypeOf(MaskedNumber.prototype), \"_update\", this).call(this, opts);\n\n this._updateRegExps();\n }\n /** */\n\n }, {\n key: \"_updateRegExps\",\n value: function _updateRegExps() {\n // use different regexp to process user input (more strict, input suffix) and tail shifting\n var start = '^' + (this.allowNegative ? '[+|\\\\-]?' : '');\n var midInput = '(0|([1-9]+\\\\d*))?';\n var mid = '\\\\d*';\n var end = (this.scale ? '(' + escapeRegExp(this.radix) + '\\\\d{0,' + this.scale + '})?' : '') + '$';\n this._numberRegExpInput = new RegExp(start + midInput + end);\n this._numberRegExp = new RegExp(start + mid + end);\n this._mapToRadixRegExp = new RegExp('[' + this.mapToRadix.map(escapeRegExp).join('') + ']', 'g');\n this._thousandsSeparatorRegExp = new RegExp(escapeRegExp(this.thousandsSeparator), 'g');\n }\n /** */\n\n }, {\n key: \"_removeThousandsSeparators\",\n value: function _removeThousandsSeparators(value) {\n return value.replace(this._thousandsSeparatorRegExp, '');\n }\n /** */\n\n }, {\n key: \"_insertThousandsSeparators\",\n value: function _insertThousandsSeparators(value) {\n // https://stackoverflow.com/questions/2901102/how-to-print-a-number-with-commas-as-thousands-separators-in-javascript\n var parts = value.split(this.radix);\n parts[0] = parts[0].replace(/\\B(?=(\\d{3})+(?!\\d))/g, this.thousandsSeparator);\n return parts.join(this.radix);\n }\n /**\n @override\n */\n\n }, {\n key: \"doPrepare\",\n value: function doPrepare(ch) {\n var _get2;\n\n ch = ch.replace(this._mapToRadixRegExp, this.radix);\n\n var noSepCh = this._removeThousandsSeparators(ch);\n\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n var _normalizePrepare = normalizePrepare((_get2 = _get(_getPrototypeOf(MaskedNumber.prototype), \"doPrepare\", this)).call.apply(_get2, [this, noSepCh].concat(args))),\n _normalizePrepare2 = _slicedToArray(_normalizePrepare, 2),\n prepCh = _normalizePrepare2[0],\n details = _normalizePrepare2[1];\n\n if (ch && !noSepCh) details.skip = true;\n return [prepCh, details];\n }\n /** */\n\n }, {\n key: \"_separatorsCount\",\n value: function _separatorsCount(to) {\n var extendOnSeparators = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n var count = 0;\n\n for (var pos = 0; pos < to; ++pos) {\n if (this._value.indexOf(this.thousandsSeparator, pos) === pos) {\n ++count;\n if (extendOnSeparators) to += this.thousandsSeparator.length;\n }\n }\n\n return count;\n }\n /** */\n\n }, {\n key: \"_separatorsCountFromSlice\",\n value: function _separatorsCountFromSlice() {\n var slice = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this._value;\n return this._separatorsCount(this._removeThousandsSeparators(slice).length, true);\n }\n /**\n @override\n */\n\n }, {\n key: \"extractInput\",\n value: function extractInput() {\n var fromPos = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;\n var toPos = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : this.value.length;\n var flags = arguments.length > 2 ? arguments[2] : undefined;\n\n var _this$_adjustRangeWit = this._adjustRangeWithSeparators(fromPos, toPos);\n\n var _this$_adjustRangeWit2 = _slicedToArray(_this$_adjustRangeWit, 2);\n\n fromPos = _this$_adjustRangeWit2[0];\n toPos = _this$_adjustRangeWit2[1];\n return this._removeThousandsSeparators(_get(_getPrototypeOf(MaskedNumber.prototype), \"extractInput\", this).call(this, fromPos, toPos, flags));\n }\n /**\n @override\n */\n\n }, {\n key: \"_appendCharRaw\",\n value: function _appendCharRaw(ch) {\n var flags = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n if (!this.thousandsSeparator) return _get(_getPrototypeOf(MaskedNumber.prototype), \"_appendCharRaw\", this).call(this, ch, flags);\n var prevBeforeTailValue = flags.tail && flags._beforeTailState ? flags._beforeTailState._value : this._value;\n\n var prevBeforeTailSeparatorsCount = this._separatorsCountFromSlice(prevBeforeTailValue);\n\n this._value = this._removeThousandsSeparators(this.value);\n\n var appendDetails = _get(_getPrototypeOf(MaskedNumber.prototype), \"_appendCharRaw\", this).call(this, ch, flags);\n\n this._value = this._insertThousandsSeparators(this._value);\n var beforeTailValue = flags.tail && flags._beforeTailState ? flags._beforeTailState._value : this._value;\n\n var beforeTailSeparatorsCount = this._separatorsCountFromSlice(beforeTailValue);\n\n appendDetails.tailShift += (beforeTailSeparatorsCount - prevBeforeTailSeparatorsCount) * this.thousandsSeparator.length;\n appendDetails.skip = !appendDetails.rawInserted && ch === this.thousandsSeparator;\n return appendDetails;\n }\n /** */\n\n }, {\n key: \"_findSeparatorAround\",\n value: function _findSeparatorAround(pos) {\n if (this.thousandsSeparator) {\n var searchFrom = pos - this.thousandsSeparator.length + 1;\n var separatorPos = this.value.indexOf(this.thousandsSeparator, searchFrom);\n if (separatorPos <= pos) return separatorPos;\n }\n\n return -1;\n }\n }, {\n key: \"_adjustRangeWithSeparators\",\n value: function _adjustRangeWithSeparators(from, to) {\n var separatorAroundFromPos = this._findSeparatorAround(from);\n\n if (separatorAroundFromPos >= 0) from = separatorAroundFromPos;\n\n var separatorAroundToPos = this._findSeparatorAround(to);\n\n if (separatorAroundToPos >= 0) to = separatorAroundToPos + this.thousandsSeparator.length;\n return [from, to];\n }\n /**\n @override\n */\n\n }, {\n key: \"remove\",\n value: function remove() {\n var fromPos = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;\n var toPos = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : this.value.length;\n\n var _this$_adjustRangeWit3 = this._adjustRangeWithSeparators(fromPos, toPos);\n\n var _this$_adjustRangeWit4 = _slicedToArray(_this$_adjustRangeWit3, 2);\n\n fromPos = _this$_adjustRangeWit4[0];\n toPos = _this$_adjustRangeWit4[1];\n var valueBeforePos = this.value.slice(0, fromPos);\n var valueAfterPos = this.value.slice(toPos);\n\n var prevBeforeTailSeparatorsCount = this._separatorsCount(valueBeforePos.length);\n\n this._value = this._insertThousandsSeparators(this._removeThousandsSeparators(valueBeforePos + valueAfterPos));\n\n var beforeTailSeparatorsCount = this._separatorsCountFromSlice(valueBeforePos);\n\n return new ChangeDetails({\n tailShift: (beforeTailSeparatorsCount - prevBeforeTailSeparatorsCount) * this.thousandsSeparator.length\n });\n }\n /**\n @override\n */\n\n }, {\n key: \"nearestInputPos\",\n value: function nearestInputPos(cursorPos, direction) {\n if (!this.thousandsSeparator) return cursorPos;\n\n switch (direction) {\n case DIRECTION.NONE:\n case DIRECTION.LEFT:\n case DIRECTION.FORCE_LEFT:\n {\n var separatorAtLeftPos = this._findSeparatorAround(cursorPos - 1);\n\n if (separatorAtLeftPos >= 0) {\n var separatorAtLeftEndPos = separatorAtLeftPos + this.thousandsSeparator.length;\n\n if (cursorPos < separatorAtLeftEndPos || this.value.length <= separatorAtLeftEndPos || direction === DIRECTION.FORCE_LEFT) {\n return separatorAtLeftPos;\n }\n }\n\n break;\n }\n\n case DIRECTION.RIGHT:\n case DIRECTION.FORCE_RIGHT:\n {\n var separatorAtRightPos = this._findSeparatorAround(cursorPos);\n\n if (separatorAtRightPos >= 0) {\n return separatorAtRightPos + this.thousandsSeparator.length;\n }\n }\n }\n\n return cursorPos;\n }\n /**\n @override\n */\n\n }, {\n key: \"doValidate\",\n value: function doValidate(flags) {\n var regexp = flags.input ? this._numberRegExpInput : this._numberRegExp; // validate as string\n\n var valid = regexp.test(this._removeThousandsSeparators(this.value));\n\n if (valid) {\n // validate as number\n var number = this.number;\n valid = valid && !isNaN(number) && ( // check min bound for negative values\n this.min == null || this.min >= 0 || this.min <= this.number) && ( // check max bound for positive values\n this.max == null || this.max <= 0 || this.number <= this.max);\n }\n\n return valid && _get(_getPrototypeOf(MaskedNumber.prototype), \"doValidate\", this).call(this, flags);\n }\n /**\n @override\n */\n\n }, {\n key: \"doCommit\",\n value: function doCommit() {\n if (this.value) {\n var number = this.number;\n var validnum = number; // check bounds\n\n if (this.min != null) validnum = Math.max(validnum, this.min);\n if (this.max != null) validnum = Math.min(validnum, this.max);\n if (validnum !== number) this.unmaskedValue = String(validnum);\n var formatted = this.value;\n if (this.normalizeZeros) formatted = this._normalizeZeros(formatted);\n if (this.padFractionalZeros && this.scale > 0) formatted = this._padFractionalZeros(formatted);\n this._value = formatted;\n }\n\n _get(_getPrototypeOf(MaskedNumber.prototype), \"doCommit\", this).call(this);\n }\n /** */\n\n }, {\n key: \"_normalizeZeros\",\n value: function _normalizeZeros(value) {\n var parts = this._removeThousandsSeparators(value).split(this.radix); // remove leading zeros\n\n\n parts[0] = parts[0].replace(/^(\\D*)(0*)(\\d*)/, function (match, sign, zeros, num) {\n return sign + num;\n }); // add leading zero\n\n if (value.length && !/\\d$/.test(parts[0])) parts[0] = parts[0] + '0';\n\n if (parts.length > 1) {\n parts[1] = parts[1].replace(/0*$/, ''); // remove trailing zeros\n\n if (!parts[1].length) parts.length = 1; // remove fractional\n }\n\n return this._insertThousandsSeparators(parts.join(this.radix));\n }\n /** */\n\n }, {\n key: \"_padFractionalZeros\",\n value: function _padFractionalZeros(value) {\n if (!value) return value;\n var parts = value.split(this.radix);\n if (parts.length < 2) parts.push('');\n parts[1] = parts[1].padEnd(this.scale, '0');\n return parts.join(this.radix);\n }\n /**\n @override\n */\n\n }, {\n key: \"unmaskedValue\",\n get: function get() {\n return this._removeThousandsSeparators(this._normalizeZeros(this.value)).replace(this.radix, '.');\n },\n set: function set(unmaskedValue) {\n _set(_getPrototypeOf(MaskedNumber.prototype), \"unmaskedValue\", unmaskedValue.replace('.', this.radix), this, true);\n }\n /**\n @override\n */\n\n }, {\n key: \"typedValue\",\n get: function get() {\n return Number(this.unmaskedValue);\n },\n set: function set(n) {\n _set(_getPrototypeOf(MaskedNumber.prototype), \"unmaskedValue\", String(n), this, true);\n }\n /** Parsed Number */\n\n }, {\n key: \"number\",\n get: function get() {\n return this.typedValue;\n },\n set: function set(number) {\n this.typedValue = number;\n }\n /**\n Is negative allowed\n @readonly\n */\n\n }, {\n key: \"allowNegative\",\n get: function get() {\n return this.signed || this.min != null && this.min < 0 || this.max != null && this.max < 0;\n }\n /**\n @override\n */\n\n }, {\n key: \"typedValueEquals\",\n value: function typedValueEquals(value) {\n // handle 0 -> '' case (typed = 0 even if value = '')\n // for details see https://github.com/uNmAnNeR/imaskjs/issues/134\n return (_get(_getPrototypeOf(MaskedNumber.prototype), \"typedValueEquals\", this).call(this, value) || MaskedNumber.EMPTY_VALUES.includes(value) && MaskedNumber.EMPTY_VALUES.includes(this.typedValue)) && !(value === 0 && this.value === '');\n }\n }]);\n\n return MaskedNumber;\n}(Masked);\nMaskedNumber.DEFAULTS = {\n radix: ',',\n thousandsSeparator: '',\n mapToRadix: ['.'],\n scale: 2,\n signed: false,\n normalizeZeros: true,\n padFractionalZeros: false\n};\nMaskedNumber.EMPTY_VALUES = [].concat(_toConsumableArray(Masked.EMPTY_VALUES), [0]);\nIMask.MaskedNumber = MaskedNumber;\n\nvar _excluded$4 = [\"name\", \"maskOptions\", \"onAccept\", \"onComplete\", \"value\"];\n\nvar MaskType = {\n Range: IMask.MaskedRange\n};\nvar MaskedTextInput = forwardRef(function (_ref, ref) {\n var name = _ref.name,\n _ref$maskOptions = _ref.maskOptions,\n maskOptions = _ref$maskOptions === void 0 ? {\n mask: Number\n } : _ref$maskOptions,\n onAccept = _ref.onAccept,\n onComplete = _ref.onComplete,\n value = _ref.value,\n rest = _objectWithoutProperties$1(_ref, _excluded$4);\n\n var internalRef = useRef();\n var inputRef = ref || internalRef;\n var maskedRef = useRef(null);\n useEffect(function () {\n var masked = maskedRef.current;\n /* istanbul ignore else */\n\n if (masked) {\n masked.updateOptions(maskOptions);\n }\n }, [maskOptions]);\n useEffect(function () {\n var masked = maskedRef.current;\n /* istanbul ignore else */\n\n if (masked) {\n masked.unmaskedValue = value;\n }\n }, [value]);\n useEffect(function () {\n var elm = inputRef.current;\n /* istanbul ignore else */\n\n if (elm && !maskedRef.current) {\n // eslint-disable-next-line\n maskedRef.current = IMask(elm, maskOptions);\n var masked = maskedRef.current;\n masked.on('accept', function () {\n /* istanbul ignore else */\n if (onAccept) {\n onAccept(masked.value, masked.unmaskedValue, masked.typedValue);\n }\n });\n masked.on('complete', function () {\n /* istanbul ignore else */\n if (onComplete) {\n onComplete(masked.value, masked.unmaskedValue, masked.typedValue);\n }\n });\n }\n\n return function () {\n /* istanbul ignore else */\n if (maskedRef.current) {\n var _masked = maskedRef.current;\n\n _masked.off('accept');\n\n _masked.off('complete');\n\n _masked.destroy();\n\n maskedRef.current = null;\n }\n };\n }, []);\n return /*#__PURE__*/React.createElement(TextInput, _extends({\n name: name,\n value: value,\n ref: inputRef,\n \"data-ppui-info\": \"masked-text-input_2.0.38\"\n }, rest));\n});\n\nexport { MaskType, MaskedTextInput };\n","import _taggedTemplateLiteral from '@babel/runtime/helpers/esm/taggedTemplateLiteral';\nimport { css, useTheme, jsx } from '@emotion/react';\nimport { math, stripUnit, remToPx } from 'polished';\nimport { devWarning, utilStyles, ZINDEX_DROPDOWN, uniqueId, hasWindow, hasDocument, highlightMatch, KeyboardCode } from '@paypalcorp/pp-react-utils';\nimport { textStyles, CaptionText, BodyText } from '@paypalcorp/pp-react-text';\nimport _toConsumableArray from '@babel/runtime/helpers/esm/toConsumableArray';\nimport _slicedToArray from '@babel/runtime/helpers/esm/slicedToArray';\nimport _extends from '@babel/runtime/helpers/esm/extends';\nimport _objectWithoutProperties from '@babel/runtime/helpers/esm/objectWithoutProperties';\nimport React, { useRef, useState, useMemo, useLayoutEffect, useEffect } from 'react';\nimport { CheckmarkIcon } from '@paypalcorp/pp-react-icons';\nimport { LoadingSpinner } from '@paypalcorp/pp-react-loading-spinner';\nimport { Sheet } from '@paypalcorp/pp-react-modal';\nimport { List } from '@paypalcorp/pp-react-list';\n\nvar _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8;\nfunction menuListStyles(tokens) {\n /* istanbul ignore next */\n if (!Object.keys(tokens).length) {\n devWarning('Missing Emotion theme. Use ThemeProvider from @emotion/react to pass a valid theme from pp-react.');\n return {};\n }\n\n var sysColorBackgroundSurface = tokens.sysColorBackgroundSurface,\n sysColorBackgroundSurfaceHover = tokens.sysColorBackgroundSurfaceHover,\n sysColorBackgroundSurfaceActive = tokens.sysColorBackgroundSurfaceActive,\n sysColorBackgroundMediumContrast = tokens.sysColorBackgroundMediumContrast,\n sysBorderRadiusLg = tokens.sysBorderRadiusLg,\n sysSpaceXs = tokens.sysSpaceXs,\n sysSpaceSm = tokens.sysSpaceSm,\n sysSpaceMd = tokens.sysSpaceMd,\n sysSpaceLg = tokens.sysSpaceLg,\n sysBorderThicknessNormal = tokens.sysBorderThicknessNormal,\n sysSizeMediaMd = tokens.sysSizeMediaMd;\n\n var _utilStyles = utilStyles(tokens),\n elevationStyles = _utilStyles.elevationStyles,\n focusStyles = _utilStyles.focusStyles;\n\n var _textStyles = textStyles(tokens),\n textBody = _textStyles.body,\n textCaption = _textStyles.caption; // component specific tokens\n\n\n var menuListWidthMin = '8rem';\n\n // 34px\n function menuContainer() {\n var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var _args$borderRadius = args.borderRadius,\n borderRadius = _args$borderRadius === void 0 ? sysBorderRadiusLg : _args$borderRadius,\n _args$backgroundColor = args.backgroundColor,\n backgroundColor = _args$backgroundColor === void 0 ? sysColorBackgroundSurface : _args$backgroundColor,\n _args$marginTop = args.marginTop,\n marginTop = _args$marginTop === void 0 ? sysSpaceXs : _args$marginTop,\n _args$maxHeight = args.maxHeight,\n maxHeight = _args$maxHeight === void 0 ? '30rem' : _args$maxHeight,\n _args$minWidth = args.minWidth,\n minWidth = _args$minWidth === void 0 ? menuListWidthMin : _args$minWidth,\n _args$outline = args.outline,\n outline = _args$outline === void 0 ? sysBorderThicknessNormal : _args$outline;\n return css(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n label: menu_container;\\n border-radius: \", \";\\n min-width: \", \";\\n max-height: \", \";\\n overflow-y: auto;\\n overflow-x: hidden;\\n position: absolute;\\n margin-top: \", \";\\n \", \";\\n background-color: \", \";\\n outline: \", \" solid transparent; // for HCM View\\n z-index: \", \";\\n \"])), borderRadius, minWidth, maxHeight, marginTop, elevationStyles.level3, backgroundColor, outline, ZINDEX_DROPDOWN);\n }\n\n function menuList() {\n var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var _args$desktopPaddingB = args.desktopPaddingBottom,\n desktopPaddingBottom = _args$desktopPaddingB === void 0 ? sysSpaceSm : _args$desktopPaddingB,\n _args$desktopPaddingT = args.desktopPaddingTop,\n desktopPaddingTop = _args$desktopPaddingT === void 0 ? sysSpaceSm : _args$desktopPaddingT;\n var _args$paddingBottom = args.paddingBottom,\n paddingBottom = _args$paddingBottom === void 0 ? sysSpaceSm : _args$paddingBottom,\n _args$paddingTop = args.paddingTop,\n paddingTop = _args$paddingTop === void 0 ? sysSpaceSm : _args$paddingTop; // overwrite the padding if it is isMobile\n\n if (args.isMobile) {\n paddingBottom = '2.125rem';\n paddingTop = paddingTop;\n }\n\n return css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n label: list;\\n list-style: none;\\n margin: 0;\\n padding: \", \" 0 \", \" 0;\\n background-color: transparent;\\n @media (min-width: \", \") {\\n padding-bottom: \", \";\\n padding-top: \", \";\\n }\\n \"])), paddingTop, paddingBottom, sysSizeMediaMd, desktopPaddingBottom, desktopPaddingTop);\n }\n\n function menuListItem() {\n var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var _args$paddingRight = args.paddingRight,\n paddingRight = _args$paddingRight === void 0 ? sysSpaceLg : _args$paddingRight,\n _args$paddingLeft = args.paddingLeft,\n paddingLeft = _args$paddingLeft === void 0 ? sysSpaceLg : _args$paddingLeft,\n _args$desktopPaddingB2 = args.desktopPaddingBottom,\n desktopPaddingBottom = _args$desktopPaddingB2 === void 0 ? sysSpaceSm : _args$desktopPaddingB2,\n _args$desktopPaddingT2 = args.desktopPaddingTop,\n desktopPaddingTop = _args$desktopPaddingT2 === void 0 ? sysSpaceSm : _args$desktopPaddingT2,\n _args$hoverBgColor = args.hoverBgColor,\n hoverBgColor = _args$hoverBgColor === void 0 ? sysColorBackgroundSurfaceHover : _args$hoverBgColor,\n _args$activeBgColor = args.activeBgColor,\n activeBgColor = _args$activeBgColor === void 0 ? sysColorBackgroundSurfaceActive : _args$activeBgColor;\n var _args$paddingTop2 = args.paddingTop,\n paddingTop = _args$paddingTop2 === void 0 ? desktopPaddingTop : _args$paddingTop2,\n _args$paddingBottom2 = args.paddingBottom,\n paddingBottom = _args$paddingBottom2 === void 0 ? desktopPaddingBottom : _args$paddingBottom2; // overwrite the padding if it is mobile\n\n if (args.isMobile) {\n paddingBottom = sysSpaceSm;\n paddingTop = sysSpaceSm;\n }\n\n return css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral([\"\\n label: list_item;\\n padding: \", \" \", \" \", \" \", \";\\n outline: none;\\n position: relative;\\n display: flex;\\n align-items: center;\\n cursor: pointer;\\n\\n @media (min-width: \", \") {\\n padding-bottom: \", \";\\n padding-top: \", \";\\n }\\n\\n &:hover {\\n background-color: \", \";\\n }\\n\\n &:active {\\n background-color: \", \";\\n }\\n \"])), paddingTop, paddingRight, paddingBottom, paddingLeft, sysSizeMediaMd, desktopPaddingBottom, desktopPaddingTop, hoverBgColor, activeBgColor);\n }\n\n function menuItemThumbnail() {\n var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var _args$marginRightLeft = args.marginRightLeft,\n marginRightLeft = _args$marginRightLeft === void 0 ? sysSpaceMd : _args$marginRightLeft;\n return css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral([\"\\n label: thumbnail;\\n display: flex;\\n align-items: center;\\n margin-right: \", \";\\n min-height: auto;\\n [dir='rtl'] & {\\n margin-right: 0;\\n margin-left: \", \";\\n }\\n pointer-events: none;\\n \"])), marginRightLeft, marginRightLeft);\n }\n\n function menuItemText() {\n return css(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral([\"\\n label: item_text;\\n margin: 0; /* overwrite default margin */\\n pointer-events: none;\\n \", \";\\n \"])), textBody());\n }\n\n function menuSecondaryText() {\n var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var _args$paddingTop3 = args.paddingTop,\n paddingTop = _args$paddingTop3 === void 0 ? sysSpaceXs : _args$paddingTop3;\n return css(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral([\"\\n label: secondary_text;\\n display: -webkit-box;\\n padding-top: \", \";\\n pointer-events: none;\\n \", \";\\n \"])), paddingTop, textCaption({\n color: sysColorBackgroundMediumContrast\n }));\n }\n\n function menuLoadingContainer() {\n return css(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral([\"\\n label: loading_container;\\n display: flex;\\n height: 100%;\\n align-items: center;\\n justify-content: center;\\n \"])));\n }\n\n var menuKeyboardActive = css(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral([\"\\n label: keyboard_active;\\n &:focus {\\n \", \"\\n }\\n \"])), focusStyles.focusInlineElement);\n return {\n menuContainer: menuContainer,\n menuList: menuList,\n menuListItem: menuListItem,\n menuItemThumbnail: menuItemThumbnail,\n menuItemText: menuItemText,\n menuSecondaryText: menuSecondaryText,\n menuLoadingContainer: menuLoadingContainer,\n menuKeyboardActive: menuKeyboardActive,\n menuListWidthMin: menuListWidthMin,\n menuListWidthMax: '67.5rem'\n };\n}\n\nvar _templateObject$1, _templateObject2$1, _templateObject3$1, _templateObject4$1, _templateObject5$1, _templateObject6$1, _templateObject7$1;\nfunction styles(tokens) {\n /* istanbul ignore next */\n if (!Object.keys(tokens).length) {\n devWarning('Missing Emotion theme. Use ThemeProvider from @emotion/react to pass a valid theme from pp-react.');\n return {};\n }\n\n var sysSpaceSm = tokens.sysSpaceSm,\n sysSpaceMd = tokens.sysSpaceMd,\n sysSpaceLg = tokens.sysSpaceLg,\n sysSizeCircleSm = tokens.sysSizeCircleSm,\n sysSizeIconSm = tokens.sysSizeIconSm,\n sysColorBackgroundSurfaceHover = tokens.sysColorBackgroundSurfaceHover;\n\n var _menuListStyles = menuListStyles(tokens),\n menuContainer = _menuListStyles.menuContainer,\n menuList = _menuListStyles.menuList,\n menuListItem = _menuListStyles.menuListItem,\n menuItemThumbnail = _menuListStyles.menuItemThumbnail,\n menuItemText = _menuListStyles.menuItemText,\n menuSecondaryText = _menuListStyles.menuSecondaryText,\n menuLoadingContainer = _menuListStyles.menuLoadingContainer,\n menuKeyboardActive = _menuListStyles.menuKeyboardActive;\n\n var sMenuItemTextSelectedSpacing = math(\"\".concat(sysSizeIconSm, \" + \").concat(sysSpaceSm)); // 24px + 8px\n // selection menu\n\n var selectionMenuItemText = css(_templateObject$1 || (_templateObject$1 = _taggedTemplateLiteral([\"\\n \", \";\\n margin-right: \", \";\\n\\n [dir='rtl'] & {\\n margin-right: 0;\\n margin-left: \", \";\\n }\\n \"])), menuItemText(), sMenuItemTextSelectedSpacing, sMenuItemTextSelectedSpacing);\n var selectedIcon = css(_templateObject2$1 || (_templateObject2$1 = _taggedTemplateLiteral([\"\\n label: selected_icon;\\n position: absolute;\\n top: 50%;\\n right: \", \";\\n transform: translateY(-50%);\\n\\n [dir='rtl'] & {\\n left: \", \";\\n right: auto;\\n }\\n \"])), sysSpaceLg, sysSpaceLg);\n var itemThumbnailImage = css(_templateObject3$1 || (_templateObject3$1 = _taggedTemplateLiteral([\"\\n label: thumbnail_image;\\n width: \", \";\\n \"])), sysSizeCircleSm);\n var itemHilite = css(_templateObject4$1 || (_templateObject4$1 = _taggedTemplateLiteral([\"\\n label: hilite;\\n background-color: \", \";\\n \"])), sysColorBackgroundSurfaceHover);\n var unselectable = css(_templateObject5$1 || (_templateObject5$1 = _taggedTemplateLiteral([\"\\n label: unselectable;\\n pointer-events: none;\\n \"])));\n var content = css(_templateObject6$1 || (_templateObject6$1 = _taggedTemplateLiteral([\"\\n label: content;\\n padding: \", \" \", \";\\n \"])), sysSpaceMd, sysSpaceLg);\n var suggestionSublist = css(_templateObject7$1 || (_templateObject7$1 = _taggedTemplateLiteral([\"\\n label: suggestion_sublist;\\n list-style-type: none;\\n margin: 0;\\n padding: 0;\\n \"])));\n return {\n menuContainer: menuContainer,\n menuList: menuList,\n menuListItem: menuListItem,\n menuItemText: menuItemText,\n menuSecondaryText: menuSecondaryText,\n menuItemThumbnail: menuItemThumbnail,\n menuLoadingContainer: menuLoadingContainer,\n menuKeyboardActive: menuKeyboardActive,\n selectionMenuItemText: selectionMenuItemText,\n selectedIcon: selectedIcon,\n itemThumbnailImage: itemThumbnailImage,\n itemHilite: itemHilite,\n unselectable: unselectable,\n menuListStyles: menuListStyles,\n suggestionSublist: suggestionSublist,\n content: content\n };\n}\n\nvar _excluded = [\"menuName\", \"primaryText\", \"primaryTextLineClamp\", \"secondaryText\", \"secondaryTextLineClamp\", \"decoration\", \"id\", \"label\", \"value\", \"isFocused\", \"isHilite\", \"isSelected\", \"onItemClick\", \"className\", \"unselectable\", \"isLoadingOptions\", \"isMobile\", \"keyboardActive\", \"highlightText\", \"isTextHightlighted\", \"section\", \"scrollToSelected\"],\n _excluded2 = [\"name\", \"value\", \"className\", \"containerClassName\", \"itemClassName\", \"mobileHeaderClassName\", \"sheetClassName\", \"sheetWrapperClassName\", \"id\", \"initialItemFocus\", \"isOpen\", \"ignoreKeyboard\", \"mobileTitle\", \"mobileHeaderContents\", \"outsideClickCheck\", \"onOpen\", \"onClose\", \"onSelection\", \"options\", \"returnFocusToTrigger\", \"selectedIndex\", \"activeItem\", \"triggerElementId\", \"triggerElementRef\", \"rtl\", \"isLoadingOptions\", \"searchEnabled\", \"mobileFixedHeight\", \"hasSections\", \"highlightText\", \"isTextHightlighted\", \"scrollToSelected\"];\nvar ANIMATION_DELAY = 700; //increased ANIMATION_DELAY to 700, so the scroll event can trigger after the sheet-input focus event for the MWeb\n\n/* eslint-disable react/prop-types */\n\nvar SelectionMenuOption = function (_ref) {\n var menuName = _ref.menuName,\n primaryText = _ref.primaryText,\n primaryTextLineClamp = _ref.primaryTextLineClamp,\n secondaryText = _ref.secondaryText,\n secondaryTextLineClamp = _ref.secondaryTextLineClamp,\n decoration = _ref.decoration,\n optionId = _ref.id,\n label = _ref.label,\n value = _ref.value,\n isFocused = _ref.isFocused,\n isHilite = _ref.isHilite,\n isSelected = _ref.isSelected,\n onItemClick = _ref.onItemClick,\n className = _ref.className,\n unselectable = _ref.unselectable,\n isLoadingOptions = _ref.isLoadingOptions,\n isMobile = _ref.isMobile,\n keyboardActive = _ref.keyboardActive,\n highlightText = _ref.highlightText,\n isTextHightlighted = _ref.isTextHightlighted,\n section = _ref.section,\n scrollToSelected = _ref.scrollToSelected,\n rest = _objectWithoutProperties(_ref, _excluded);\n\n var optionRef = useRef(null);\n var itemId = optionId || \"\".concat(menuName, \"_item_\").concat(value);\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n var itemCssVal = [_styles.menuListItem({\n isMobile: isMobile\n }), keyboardActive && _styles.menuKeyboardActive, unselectable && _styles.unselectable, isHilite && _styles.itemHilite];\n /* istanbul ignore next */\n\n var scrollIntoSelection = function (option) {\n var _option$parentElement;\n\n var container = option === null || option === void 0 ? void 0 : (_option$parentElement = option.parentElement) === null || _option$parentElement === void 0 ? void 0 : _option$parentElement.parentElement;\n\n if (container) {\n var boundingBox = container.getBoundingClientRect();\n var optionBox = option.getBoundingClientRect();\n\n if (optionBox.bottom > boundingBox.bottom || optionBox.top < boundingBox.top) {\n option.scrollIntoView({\n block: 'nearest',\n behavior: 'smooth'\n });\n }\n }\n };\n /* istanbul ignore next */\n\n\n useEffect(function () {\n if (optionRef && optionRef.current) {\n var option = optionRef.current;\n\n if (isFocused && scrollToSelected) {\n option.focus();\n }\n\n if ((isFocused || isHilite || isSelected) && scrollToSelected) {\n scrollIntoSelection(option);\n }\n }\n }, [isHilite, isFocused, isSelected, scrollToSelected]);\n /* istanbul ignore next */\n\n useEffect(function () {\n setTimeout(function () {\n if (optionRef && optionRef.current && isMobile && isSelected) {\n var option = optionRef.current;\n\n if (isFocused || isSelected) {\n scrollIntoSelection(option);\n }\n }\n }, ANIMATION_DELAY); // Animator component is delayed\n }, []); // This needs to only run first time\n\n var thumbnail = decoration && jsx(\"div\", {\n css: _styles.menuItemThumbnail,\n \"data-ppui\": \"true\"\n }, decoration);\n var optionValue = label ? label : primaryText;\n var optionVal = isTextHightlighted ? highlightMatch(optionValue, highlightText) : optionValue;\n return jsx(\"li\", _extends({\n css: itemCssVal,\n className: className,\n id: itemId,\n role: \"option\",\n \"aria-selected\": isSelected,\n tabIndex: -1,\n \"data-value\": value,\n ref: optionRef,\n onClick: onItemClick\n }, section ? {\n 'aria-describedby': section.id\n } : null, rest, {\n \"data-ppui\": \"true\"\n }), thumbnail, jsx(\"p\", {\n css: _styles.selectionMenuItemText,\n \"data-ppui\": \"true\"\n }, jsx(BodyText, {\n strong: isSelected,\n as: \"span\",\n clampAtLine: primaryTextLineClamp,\n dangerouslySetInnerHTML: {\n __html: optionVal\n },\n \"data-ppui\": \"true\"\n }), secondaryText && jsx(CaptionText, {\n css: _styles.menuSecondaryText,\n as: \"span\",\n clampAtLine: secondaryTextLineClamp,\n \"data-ppui\": \"true\"\n }, secondaryText), isSelected && jsx(CheckmarkIcon, {\n size: \"sm\",\n css: _styles.selectedIcon,\n color: \"SelectedMain\",\n \"data-ppui\": \"true\"\n })));\n};\n/*\n * Sigh... We need this if you want to use useState() from a \"global\" event handler\n * Otherwise you will get the old value of state and it won't ever appear to change.\n * This stores the state (to get refresh) and also stashes it into a ref, which\n * will always be up-to-date\n *\n * Love, BCC\n */\n\n\nfunction useReferredState(initialValue) {\n var _React$useState = React.useState(initialValue),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n state = _React$useState2[0],\n setState = _React$useState2[1];\n\n var reference = React.useRef(state);\n return [reference, function setReferredState(value) {\n reference.current = value;\n setState(value);\n }];\n}\n\nvar SelectionMenu = function (_ref2) {\n var _styles$menuListStyle;\n\n var _ref2$name = _ref2.name,\n name = _ref2$name === void 0 ? 'smenu' : _ref2$name,\n value = _ref2.value,\n className = _ref2.className,\n containerClassName = _ref2.containerClassName,\n itemClassName = _ref2.itemClassName,\n mobileHeaderClassName = _ref2.mobileHeaderClassName,\n sheetClassName = _ref2.sheetClassName,\n sheetWrapperClassName = _ref2.sheetWrapperClassName,\n _ref2$id = _ref2.id,\n id = _ref2$id === void 0 ? uniqueId('selectionMenu_') : _ref2$id,\n _ref2$initialItemFocu = _ref2.initialItemFocus,\n initialItemFocus = _ref2$initialItemFocu === void 0 ? true : _ref2$initialItemFocu,\n isOpen = _ref2.isOpen,\n ignoreKeyboard = _ref2.ignoreKeyboard,\n mobileTitle = _ref2.mobileTitle,\n mobileHeaderContents = _ref2.mobileHeaderContents,\n outsideClickCheck = _ref2.outsideClickCheck,\n onOpen = _ref2.onOpen,\n onClose = _ref2.onClose,\n onSelection = _ref2.onSelection,\n options = _ref2.options,\n _ref2$returnFocusToTr = _ref2.returnFocusToTrigger,\n returnFocusToTrigger = _ref2$returnFocusToTr === void 0 ? true : _ref2$returnFocusToTr,\n _ref2$selectedIndex = _ref2.selectedIndex,\n selectedIndex = _ref2$selectedIndex === void 0 ? 0 : _ref2$selectedIndex,\n _ref2$activeItem = _ref2.activeItem,\n activeItem = _ref2$activeItem === void 0 ? -1 : _ref2$activeItem,\n triggerElementId = _ref2.triggerElementId,\n triggerElementRef = _ref2.triggerElementRef,\n _ref2$rtl = _ref2.rtl,\n rtl = _ref2$rtl === void 0 ? false : _ref2$rtl,\n _ref2$isLoadingOption = _ref2.isLoadingOptions,\n isLoadingOptions = _ref2$isLoadingOption === void 0 ? false : _ref2$isLoadingOption,\n _ref2$searchEnabled = _ref2.searchEnabled,\n searchEnabled = _ref2$searchEnabled === void 0 ? false : _ref2$searchEnabled,\n mobileFixedHeight = _ref2.mobileFixedHeight,\n _ref2$hasSections = _ref2.hasSections,\n hasSections = _ref2$hasSections === void 0 ? false : _ref2$hasSections,\n _ref2$highlightText = _ref2.highlightText,\n highlightText = _ref2$highlightText === void 0 ? null : _ref2$highlightText,\n _ref2$isTextHightligh = _ref2.isTextHightlighted,\n isTextHightlighted = _ref2$isTextHightligh === void 0 ? false : _ref2$isTextHightligh,\n _ref2$scrollToSelecte = _ref2.scrollToSelected,\n scrollToSelected = _ref2$scrollToSelecte === void 0 ? true : _ref2$scrollToSelecte,\n rest = _objectWithoutProperties(_ref2, _excluded2);\n\n var wrapperRef = useRef();\n var menuRef = useRef();\n var loaderRef = useRef();\n var searchText = useRef('');\n var typeToFindTimer;\n var hasOptions = options && options.length > 0;\n\n var _useReferredState = useReferredState(initialItemFocus ? selectedIndex : -1),\n _useReferredState2 = _slicedToArray(_useReferredState, 2),\n focusedIndexRef = _useReferredState2[0],\n setFocusedIndex = _useReferredState2[1];\n\n var _useState = useState(true),\n _useState2 = _slicedToArray(_useState, 2),\n keyboardActive = _useState2[0],\n setKeyboardActive = _useState2[1];\n\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n /* istanbul ignore next */\n\n\n var _ref3 = ((_styles$menuListStyle = _styles.menuListStyles) === null || _styles$menuListStyle === void 0 ? void 0 : _styles$menuListStyle.call(_styles, tokens)) || {},\n menuListWidthMin = _ref3.menuListWidthMin,\n menuListWidthMax = _ref3.menuListWidthMax;\n\n var sysSizeMediaMd = tokens.sysSizeMediaMd; // min and max width for ul/li convert into PX\n\n var MIN_WIDTH = stripUnit(remToPx(menuListWidthMin, '16px'));\n var MAX_WIDTH = stripUnit(remToPx(menuListWidthMax, '16px'));\n var MEDIUM_BREAKPOINT = \"\".concat(stripUnit(remToPx(sysSizeMediaMd, '16px')));\n /* istanbul ignore next */\n\n var isMobile = hasWindow() ? window.innerWidth < parseInt(MEDIUM_BREAKPOINT, 10) : false;\n\n var getRefCurrent = function (ref) {\n return (\n /* istanbul ignore next */\n ref && ref.current ? ref.current : null\n );\n };\n /**\n * To enable support for `shadow-dom` get the trigger element from `ref` or by `id`\n */\n\n\n var TRIGGER_ELEMENT = function getTriggerElement() {\n var triggerElement = getRefCurrent(triggerElementRef);\n /* istanbul ignore next */\n\n if (triggerElement) {\n return triggerElement;\n } // need to check existence of document object for SSR\n\n\n if (triggerElementId && hasDocument()) {\n return document.getElementById(triggerElementId);\n }\n\n return null;\n }();\n\n var calculateWidth = function () {\n var triggerWidth = TRIGGER_ELEMENT === null || TRIGGER_ELEMENT === void 0 ? void 0 : TRIGGER_ELEMENT.getBoundingClientRect().width;\n /* istanbul ignore next */\n\n if (isLoadingOptions) {\n var loader = getRefCurrent(loaderRef);\n loader.style.width = triggerWidth ? \"\".concat(triggerWidth, \"px\") : \"\".concat(MAX_WIDTH, \"px\");\n } else {\n var menu = getRefCurrent(menuRef);\n\n if (!menu) {\n return;\n }\n\n var menuWidth = menu.getBoundingClientRect().width;\n /* istanbul ignore next */\n\n if (triggerWidth > MIN_WIDTH && triggerWidth > menuWidth) {\n menu.style.width = \"\".concat(triggerWidth, \"px\");\n }\n }\n };\n /* Create a flat list of suggestions for highlight and selection by index */\n\n\n var normalizeSuggestions = function (suggestions) {\n return suggestions.reduce(function (acc, section) {\n /* istanbul ignore next */\n if (section === null || section === void 0 ? void 0 : section.suggestions) {\n acc.push.apply(acc, _toConsumableArray(section.suggestions));\n }\n\n return acc;\n }, []);\n };\n\n var setFocus = function (newIndex) {\n setFocusedIndex(newIndex);\n };\n\n var moveFocus = function (offset) {\n var tempOptions = hasSections ? normalizeSuggestions(options) : options;\n var nextIndex = Math.min(Math.max(focusedIndexRef.current + offset, 0), tempOptions.length - 1);\n setFocus(nextIndex);\n };\n\n var handleClickOutside = function (evt) {\n var wrapperCurrent = getRefCurrent(wrapperRef); // Trigger click is also handled here in React 17\n\n var isTriggerClicked = TRIGGER_ELEMENT === null || TRIGGER_ELEMENT === void 0 ? void 0 : TRIGGER_ELEMENT.contains(evt.target); // istanbul ignore next\n\n if ((!outsideClickCheck || outsideClickCheck(evt)) && !isTriggerClicked) {\n if (wrapperCurrent && !wrapperCurrent.contains(evt.target)) {\n onClose(evt, 'backdropClick');\n }\n }\n };\n\n var handleClick = function (index) {\n setFocus(index);\n onSelection(index);\n };\n /* istanbul ignore next */\n\n\n var getFirstPrefixPosition = function () {\n var list = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n var typedText = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';\n return list.findIndex(function (option) {\n return option.primaryText.toLowerCase().startsWith(typedText.toLowerCase());\n });\n };\n /* eslint-disable complexity */\n\n\n var handleKey = function (evt) {\n evt.preventDefault();\n var focusedIndex = focusedIndexRef.current;\n /* istanbul ignore next */\n\n var KeyCode = new KeyboardCode(evt.key || evt.keyCode);\n\n if (KeyCode.IS_ARROW_UP) {\n setKeyboardActive(true);\n moveFocus(-1);\n } else if (KeyCode.IS_ARROW_DOWN) {\n setKeyboardActive(true);\n moveFocus(1);\n } else if (KeyCode.IS_ENTER) {\n onSelection(focusedIndex);\n } else if (KeyCode.IS_TAB || KeyCode.IS_ESC) {\n var closedBy = KeyCode.IS_TAB ? KeyboardCode.NAME_TAB : KeyboardCode.NAME_ESC; // We don't need to call onClose if we have a sheet -- it will do that for us!\n\n /* istanbul ignore next */\n\n if (typeof onClose === 'function' && !isMobile) {\n onClose(evt, closedBy);\n } // eslint-disable-next-line no-unused-expressions\n\n\n TRIGGER_ELEMENT === null || TRIGGER_ELEMENT === void 0 ? void 0 : TRIGGER_ELEMENT.focus();\n } else if (searchEnabled && evt.key.length === 1) {\n // Since we're handling keydown event, we might get values like\n // 'Shift' or 'Alt'. We don't want to search unless it's a single character\n clearTimeout(typeToFindTimer);\n searchText.current = searchText.current + evt.key; // Clear the typeToFindText if user doesn't consecutively type keys between 700 milliseconds\n //istanbul ignore next\n\n typeToFindTimer = setTimeout(function () {\n searchText.current = '';\n }, 700);\n var firstMatchedItemIndex = getFirstPrefixPosition(options, searchText.current);\n\n if (firstMatchedItemIndex >= 0) {\n setKeyboardActive(true);\n setFocus(firstMatchedItemIndex);\n }\n }\n };\n /* eslint-enable complexity */\n\n\n var handleKeyDown = function (evt) {\n handleKey(evt);\n };\n /* We need this method because we're trying to support index-based and\n * value-based operation at the same time. If we revert to only using\n * value-based, this code can get much simpler\n */\n\n\n var selectedValue = function getSelectedValue(currentValue, defaultValue) {\n if (currentValue !== undefined) {\n return currentValue;\n } // istanbul ignore next\n\n\n if (selectedIndex !== undefined && selectedIndex >= 0) {\n if (options && options[selectedIndex] && options[selectedIndex].value !== undefined) {\n return options[selectedIndex].value;\n }\n }\n\n return defaultValue;\n }(value);\n\n var renderImg = function (decoration) {\n return decoration && typeof decoration === 'string' ? jsx(\"img\", {\n css: _styles.itemThumbnailImage,\n src: decoration,\n role: \"none\",\n \"data-ppui\": \"true\"\n }) : decoration;\n };\n\n var focusedIndex = ignoreKeyboard ? -1 : focusedIndexRef.current;\n\n var renderOptionList = function (menuOptions, section) {\n var normalizedIndex = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0;\n\n if (!isOpen || !hasOptions) {\n return null;\n }\n\n return menuOptions.map(function (option, idx) {\n // We have to test against false because non-existence means it's selectable\n var index = hasSections ? idx + normalizedIndex : idx;\n var optionValue = option.hasOwnProperty('value') ? option.value : option.primaryText;\n var isSelected = !option.unselectable && (selectedValue === undefined ? selectedIndex === index : optionValue === selectedValue);\n var decoration = renderImg(option.decoration || option.imgSrc);\n return jsx(SelectionMenuOption, _extends({\n menuName: name\n }, option, {\n section: section,\n value: optionValue,\n isSelected: isSelected,\n isFocused: focusedIndex === index,\n isHilite: activeItem === index,\n className: itemClassName,\n decoration: decoration,\n key: \"smenu_\".concat(index),\n isMobile: isMobile,\n keyboardActive: keyboardActive,\n onItemClick: function onItemClick() {\n handleClick(index);\n },\n highlightText: highlightText,\n isTextHightlighted: isTextHightlighted,\n scrollToSelected: scrollToSelected,\n \"data-ppui\": \"true\"\n }));\n });\n };\n\n useLayoutEffect(function () {\n if (isOpen && !isMobile) {\n calculateWidth();\n }\n\n if (isOpen && hasOptions) {\n // Bind the event listener\n // @ts-ignore\n document.addEventListener('click', handleClickOutside);\n\n if (!ignoreKeyboard) {\n document.body.addEventListener('keydown', handleKeyDown);\n }\n\n if (!isMobile) {\n setKeyboardActive(initialItemFocus); // istanbul ignore next\n\n if (focusedIndex < 0) {\n setFocus(0);\n }\n } else {\n // set keyboard focus active to false, on mobile we don't show the focus indicator\n setKeyboardActive(false);\n }\n\n if (typeof onOpen === 'function') {\n onOpen(isMobile);\n }\n }\n\n return function () {\n // @ts-ignore\n document.removeEventListener('click', handleClickOutside);\n\n if (!ignoreKeyboard) {\n document.body.removeEventListener('keydown', handleKeyDown);\n }\n\n setKeyboardActive(false);\n };\n }, [isOpen, isLoadingOptions]);\n //pass dir manually to fix styles in sheet rtl\n //set to null in ltr so the attribute is not added\n\n /* istanbul ignore next */\n var direction = rtl ? 'rtl' : null;\n var optionList = hasSections ? function renderSections() {\n var currentNormalizedIndex = 0;\n return options.reduce(function (acc, option) {\n var _option$suggestions;\n\n // istanbul ignore next\n if (option === null || option === void 0 ? void 0 : (_option$suggestions = option.suggestions) === null || _option$suggestions === void 0 ? void 0 : _option$suggestions.length) {\n var uniqueKey = option.id ? option.id : Math.floor(Math.random() * (1000 - 1));\n acc.push(jsx(\"li\", {\n role: \"presentation\",\n key: uniqueKey,\n \"data-ppui\": \"true\"\n }, option.title && jsx(\"div\", {\n css: _styles.content,\n id: option.id,\n \"aria-hidden\": \"true\",\n \"data-ppui\": \"true\"\n }, jsx(CaptionText, {\n \"data-ppui\": \"true\"\n }, option.title)), jsx(\"ul\", {\n role: \"listbox\",\n css: _styles.suggestionSublist,\n \"aria-labelledby\": option.id,\n \"data-ppui\": \"true\"\n }, renderOptionList(option.suggestions, option, currentNormalizedIndex))));\n currentNormalizedIndex += option.suggestions.length;\n }\n\n return acc;\n }, []);\n }() : renderOptionList(options);\n var menuListStyleOptions = {\n isMobile: isMobile,\n paddingTop: isMobile ? 0 : undefined\n };\n var contentList = optionList ? jsx(\"ul\", _extends({\n css: _styles.menuList(menuListStyleOptions),\n className: className,\n id: id,\n tabIndex: 0,\n role: \"listbox\",\n \"aria-hidden\": !isOpen,\n ref: menuRef,\n dir: direction\n }, rest, {\n \"data-ppui\": \"true\"\n }), optionList) : null;\n var loadingSpinner = jsx(\"div\", {\n ref: loaderRef,\n css: _styles.menuLoadingContainer,\n \"data-ppui\": \"true\"\n }, jsx(LoadingSpinner, {\n screenReaderText: \"loading\",\n size: \"md\",\n \"data-ppui\": \"true\"\n }));\n var content = isLoadingOptions ? loadingSpinner : contentList;\n return function bodyWrapper() {\n if (isMobile) {\n // istanbul ignore next\n var isFixedHeight = mobileHeaderContents ? '90' : undefined;\n return jsx(Sheet, {\n isOpen: isOpen,\n onCloseComplete: onClose,\n title: mobileTitle,\n headerClassName: mobileHeaderClassName,\n headerContents: mobileHeaderContents,\n noPadding: true,\n noCloseButton: false,\n mobileFixedHeight: mobileFixedHeight || isFixedHeight,\n className: sheetClassName,\n wrapperClassName: sheetWrapperClassName,\n returnFocusToTrigger: returnFocusToTrigger,\n \"data-ppui\": \"true\"\n }, content);\n }\n\n return isOpen && jsx(\"div\", {\n ref: wrapperRef,\n css: _styles.menuContainer,\n className: containerClassName,\n \"data-ppui-info\": \"selection-menu_3.14.6\"\n }, content);\n }();\n};\n\nvar _excluded$1 = [\"className\", \"containerClassName\", \"itemClassName\", \"id\", \"initialItemFocus\", \"isOpen\", \"mobileTitle\", \"isLoadingOptions\", \"options\", \"onClose\", \"onSelection\", \"triggerRef\", \"mobileFixedHeight\", \"overrideMobileView\"];\n\nvar getRefCurrent = function (ref) {\n return (\n /* istanbul ignore next */\n ref && ref.current ? ref.current : null\n );\n};\n\nvar ActionMenu = function (_ref) {\n var className = _ref.className,\n containerClassName = _ref.containerClassName,\n itemClassName = _ref.itemClassName,\n _ref$id = _ref.id,\n id = _ref$id === void 0 ? uniqueId('actionMenu_') : _ref$id,\n _ref$initialItemFocus = _ref.initialItemFocus,\n initialItemFocus = _ref$initialItemFocus === void 0 ? true : _ref$initialItemFocus,\n isOpen = _ref.isOpen,\n mobileTitle = _ref.mobileTitle,\n _ref$isLoadingOptions = _ref.isLoadingOptions,\n isLoadingOptions = _ref$isLoadingOptions === void 0 ? false : _ref$isLoadingOptions,\n options = _ref.options,\n onClose = _ref.onClose,\n onSelection = _ref.onSelection,\n triggerRef = _ref.triggerRef,\n mobileFixedHeight = _ref.mobileFixedHeight,\n _ref$overrideMobileVi = _ref.overrideMobileView,\n overrideMobileView = _ref$overrideMobileVi === void 0 ? false : _ref$overrideMobileVi,\n rest = _objectWithoutProperties(_ref, _excluded$1);\n\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n var sysSizeMediaMd = tokens.sysSizeMediaMd;\n var MEDIUM_BREAKPOINT = \"\".concat(stripUnit(remToPx(sysSizeMediaMd, '16px')));\n var containerRef = useRef();\n var menuRef = useRef();\n var validateOptions = options && options.length;\n\n var _useState = useState(0),\n _useState2 = _slicedToArray(_useState, 2),\n selectedIndex = _useState2[0],\n setSelectedIndex = _useState2[1];\n\n var _useState3 = useState(false),\n _useState4 = _slicedToArray(_useState3, 2),\n keyboardActive = _useState4[0],\n setKeyboardActive = _useState4[1];\n /* istanbul ignore next */\n\n\n var isMobile = !overrideMobileView && hasWindow() ? window.innerWidth < parseInt(MEDIUM_BREAKPOINT, 10) : false;\n\n var setFocus = function (offset) {\n var current = getRefCurrent(menuRef);\n /* istanbul ignore next */\n\n if (current) {\n var _listItems = current.querySelectorAll('[role=\"menuitem\"]');\n\n if (_listItems.length) {\n var len = _listItems.length;\n var nextIndex = selectedIndex + offset;\n var curIndex = nextIndex >= 0 && nextIndex <= len - 1 ? nextIndex : 0;\n setSelectedIndex(curIndex);\n }\n }\n };\n\n var handleClickOutside = function (evt) {\n var wrapperCurrent = getRefCurrent(containerRef); // triggerRef is required for React 17\n\n if (wrapperCurrent && !wrapperCurrent.contains(evt.target) && triggerRef && !triggerRef.current.contains(evt.target)) {\n onClose(evt);\n } else if (!triggerRef && wrapperCurrent && !wrapperCurrent.contains(evt.target)) {\n onClose(evt);\n }\n };\n /* eslint-disable complexity */\n\n\n /* eslint-enable complexity */\n useEffect(function () {\n /* istanbul ignore next */\n if (isOpen) {\n if (!isMobile) {\n setFocus(0);\n setKeyboardActive(initialItemFocus);\n }\n\n document.addEventListener('click', handleClickOutside);\n window.addEventListener('resize', onClose);\n } else {\n document.removeEventListener('click', handleClickOutside);\n window.removeEventListener('resize', onClose);\n }\n\n return function () {\n setSelectedIndex(0);\n setKeyboardActive(false);\n document.removeEventListener('click', handleClickOutside);\n window.removeEventListener('resize', onClose);\n };\n }, [isOpen, options]);\n var optionList = validateOptions ? jsx(List, _extends({\n options: options.map(function (_ref2, optionIndex) {\n var itemLeft = _ref2.itemLeft,\n title = _ref2.title,\n navigationOptions = _ref2.navigationOptions;\n return {\n decoration: itemLeft ? {\n thumbnail: itemLeft\n } : null,\n label: title,\n className: itemClassName,\n role: 'menuitem',\n onClick: !navigationOptions ? function (event) {\n return onSelection(optionIndex, event);\n } : null,\n navigationOptions: navigationOptions\n };\n }),\n focusActive: keyboardActive,\n focusedIndex: selectedIndex,\n listStyles: _styles.menuList({\n isMobile: isMobile\n }),\n className: className,\n id: id,\n role: \"menu\",\n \"aria-hidden\": !isOpen,\n ref: menuRef,\n onKeyDown: function handleKey(evt) {\n evt.preventDefault();\n /* istanbul ignore next */\n\n var KeyCode = new KeyboardCode(evt.key || evt.keyCode);\n var triggerEl = getRefCurrent(triggerRef);\n\n if (KeyCode.IS_ARROW_UP) {\n setKeyboardActive(true);\n setFocus(-1);\n } else if (KeyCode.IS_ARROW_DOWN) {\n setKeyboardActive(true);\n setFocus(1);\n } else if (KeyCode.IS_ENTER) {\n onSelection(selectedIndex, evt);\n var anchor = evt.target;\n /* istanbul ignore next */\n\n if (anchor.href) {\n anchor.click();\n }\n } else if (KeyCode.IS_TAB || KeyCode.IS_ESC) {\n onClose(evt);\n }\n\n if ((KeyCode.IS_TAB || KeyCode.IS_ESC || KeyCode.IS_ENTER) && triggerEl) {\n triggerEl.focus();\n }\n }\n }, rest, {\n \"data-ppui\": \"true\"\n })) : null;\n var listItems = isLoadingOptions ? jsx(\"div\", {\n css: _styles.menuLoadingContainer,\n \"data-ppui\": \"true\"\n }, jsx(LoadingSpinner, {\n screenReaderText: \"loading\",\n size: \"md\",\n \"data-ppui\": \"true\"\n })) : optionList;\n var container = isMobile ? jsx(Sheet, {\n title: mobileTitle,\n isOpen: isOpen,\n onCloseComplete: onClose,\n noPadding: true,\n mobileFixedHeight: mobileFixedHeight,\n \"data-ppui\": \"true\"\n }, listItems) : jsx(\"nav\", {\n css: _styles.menuContainer,\n className: containerClassName,\n ref: containerRef,\n \"data-ppui-info\": \"action-menu_3.14.6\"\n }, listItems);\n return isOpen && container;\n};\n\nexport { ActionMenu, SelectionMenu, styles as menuStyles };\n","import _taggedTemplateLiteral from '@babel/runtime/helpers/esm/taggedTemplateLiteral';\nimport { css, useTheme, jsx } from '@emotion/react';\nimport { math, stripUnit, remToPx } from 'polished';\nimport { textStyles } from '@paypalcorp/pp-react-text';\nimport { devWarning, utilStyles, ZINDEX_MODAL, isDocumentRTL, hasWindow, uniqueId, isTouchDevice } from '@paypalcorp/pp-react-utils';\nimport _extends from '@babel/runtime/helpers/esm/extends';\nimport _slicedToArray from '@babel/runtime/helpers/esm/slicedToArray';\nimport _objectWithoutProperties from '@babel/runtime/helpers/esm/objectWithoutProperties';\nimport React, { useState, useRef, useMemo, useEffect } from 'react';\nimport ReactDOM from 'react-dom';\nimport { Animator } from '@paypalcorp/pp-react-animator';\nimport _regeneratorRuntime from '@babel/runtime/regenerator';\nimport _asyncToGenerator from '@babel/runtime/helpers/esm/asyncToGenerator';\nimport { FocusOn, AutoFocusInside } from 'react-focus-on';\nimport { IconButton } from '@paypalcorp/pp-react-icon-button';\nimport { CloseIcon } from '@paypalcorp/pp-react-icons';\n\nvar _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14, _templateObject15, _templateObject16, _templateObject17, _templateObject18, _templateObject19, _templateObject20, _templateObject21, _templateObject22, _templateObject23, _templateObject24, _templateObject25, _templateObject26, _templateObject27, _templateObject28, _templateObject29, _templateObject30, _templateObject31, _templateObject32, _templateObject33, _templateObject34, _templateObject35, _templateObject36, _templateObject37, _templateObject38, _templateObject39, _templateObject40, _templateObject41, _templateObject42, _templateObject43, _templateObject44, _templateObject45, _templateObject46;\nfunction styles(tokens) {\n /* istanbul ignore next */\n if (!Object.keys(tokens).length) {\n devWarning('Missing Emotion theme. Use ThemeProvider from @emotion/react to pass a valid theme from pp-react.');\n return {};\n }\n\n var sysSpaceLg = tokens.sysSpaceLg,\n sysTypographyDisplaySize = tokens.sysTypographyDisplaySize,\n sysSizeIconLg = tokens.sysSizeIconLg,\n sysSizeTapTargetDefault = tokens.sysSizeTapTargetDefault,\n sysSpaceXl = tokens.sysSpaceXl,\n sysSpaceSm = tokens.sysSpaceSm,\n sysSizeMediaMd = tokens.sysSizeMediaMd,\n sysSizeMediaSm = tokens.sysSizeMediaSm,\n sysColorBackgroundSurface = tokens.sysColorBackgroundSurface,\n sysSizeMediaLg = tokens.sysSizeMediaLg,\n sysMotionDurationDepart = tokens.sysMotionDurationDepart,\n sysSpaceMd = tokens.sysSpaceMd,\n sysSpaceXs = tokens.sysSpaceXs,\n sysMotionDurationArrive = tokens.sysMotionDurationArrive,\n sysSizeIconSm = tokens.sysSizeIconSm,\n sysSizeIconMd = tokens.sysSizeIconMd,\n sysColorOverlayMainHover = tokens.sysColorOverlayMainHover,\n sysSizeIndicatorMd = tokens.sysSizeIndicatorMd,\n sysSizeIconXl = tokens.sysSizeIconXl,\n sysSpaceJumbo = tokens.sysSpaceJumbo,\n sysSizeMediaXl = tokens.sysSizeMediaXl,\n sysColorBackgroundMediumContrast = tokens.sysColorBackgroundMediumContrast,\n sysBorderRadiusLg = tokens.sysBorderRadiusLg,\n sysSizeIndicatorSm = tokens.sysSizeIndicatorSm;\n\n var _utilStyles = utilStyles(tokens),\n elevationStyles = _utilStyles.elevationStyles,\n variables = _utilStyles.variables,\n screenReader = _utilStyles.screenReader;\n\n var ppuiEaseInOut = variables.ppuiEaseInOut;\n\n var _textStyles = textStyles(tokens),\n textBody = _textStyles.body;\n\n var lightboxMinHeight = math(\"8 * \".concat(sysSpaceLg));\n var modalHeaderMinHeight = sysTypographyDisplaySize;\n var modalHeaderZoneMinWidth = sysSizeIconLg;\n var dialogWidth = '75%'; // 8 columns in a 12 column grid\n\n var dialogMaxWidth = math(\"\".concat(sysSizeMediaXl, \" * 0.75\")); // 75% of XL screen grid max width\n\n var mdMarginDelta = math(\"\".concat(sysSpaceXl, \" * 2\"));\n var smMarginDelta = math(\"\".concat(sysSpaceLg, \" * 2\"));\n var sheetHeaderHeightMobile = math(\"\".concat(sysSizeIconLg, \" + (2 * \").concat(sysSpaceXs, \")\"));\n var sheetHeaderHeightDesktop = math(\"\".concat(sysSizeIconXl, \" + (2 * \").concat(sysSpaceXs, \")\"));\n var sheetWidthSm = '100vw';\n var sheetButtonSize = sysSizeIconSm + sysSpaceMd * 2;\n var modalBorderRadius = sysBorderRadiusLg;\n\n var containerCenter = function () {\n var valign = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'center';\n return css(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n label: container_center;\\n display: flex;\\n align-items: \", \";\\n justify-content: space-around;\\n \"])), valign);\n };\n\n var containerMiddle = css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n label: container_middle;\\n \", \";\\n width: \", \";\\n max-width: \", \";\\n\\n @media screen and (max-width: \", \") {\\n width: calc(100% - \", \");\\n }\\n\\n @media screen and (max-width: \", \") {\\n width: calc(100% - \", \");\\n }\\n \"])), containerCenter(), dialogWidth, dialogMaxWidth, sysSizeMediaMd, mdMarginDelta, sysSizeMediaSm, smMarginDelta);\n var containerBottom = css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral([\"\\n label: container_bottom;\\n \", \";\\n width: \", \";\\n\\n @media screen and (max-width: \", \") {\\n width: \", \";\\n }\\n @media screen and (max-width: \", \") {\\n width: \", \";\\n }\\n \"])), containerCenter('flex-end'), sysSizeMediaMd, sysSizeMediaLg, sysSizeMediaSm, sysSizeMediaMd, sheetWidthSm);\n var base = css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral([\"\\n label: base;\\n background-color: \", \";\\n display: grid;\\n grid-template-rows: auto 1fr auto;\\n position: relative;\\n flex-basis: 100%;\\n \"])), sysColorBackgroundSurface);\n var modalNoContainer = css(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral([\"\\n label: modal_no_container;\\n width: \", \";\\n max-width: \", \";\\n \"])), dialogWidth, dialogMaxWidth);\n var modalDialog = css(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral([\"\\n label: modal_dialog;\\n min-height: \", \";\\n border-radius: \", \";\\n max-height: \", \";\\n \", \";\\n opacity: 0;\\n will-change: opacity;\\n transition: opacity \", \" \", \";\\n \"])), lightboxMinHeight, modalBorderRadius, '75dvh', elevationStyles.level3, sysMotionDurationDepart, ppuiEaseInOut);\n var modalTopBorder = css(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral([\"\\n label: modal_top_border;\\n border-top-left-radius: \", \";\\n border-top-right-radius: \", \";\\n \"])), modalBorderRadius, modalBorderRadius);\n var modalSheet = css(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral([\"\\n label: modal_sheet;\\n height: 100dvh;\\n width: auto;\\n \", \";\\n will-change: transform;\\n transition: transform \", \" \", \",\\n height \", \" \", \";\\n transform: translateZ(0) translateY(100%);\\n\\n @media screen and (max-width: \", \") {\\n width: \", \";\\n height: auto;\\n min-height: \", \";\\n max-height: \", \"; /* Fallback for browsers that do not support Custom Properties */\\n \", \"\\n }\\n \"])), elevationStyles.level3, sysMotionDurationDepart, ppuiEaseInOut, sysMotionDurationDepart, ppuiEaseInOut, sysSizeMediaMd, sheetWidthSm, sysSizeTapTargetDefault, '90dvh', modalTopBorder);\n var modalSheetShow = css(_templateObject9 || (_templateObject9 = _taggedTemplateLiteral([\"\\n label: modal_sheet_show;\\n transform: translateZ(0) translateY(0);\\n \"])));\n var modalBackdrop = css(_templateObject10 || (_templateObject10 = _taggedTemplateLiteral([\"\\n label: modal_backdrop;\\n position: fixed;\\n top: 0;\\n left: 0;\\n bottom: 0;\\n right: 0;\\n z-index: \", \";\\n visibility: hidden;\\n opacity: 0;\\n will-change: opacity;\\n transition: opacity \", \" ease-in-out,\\n visibility \", \" \", \";\\n background-color: \", \";\\n \", \";\\n box-shadow: none;\\n\\n &[aria-hidden='false'] {\\n transition-duration: \", \";\\n }\\n\\n &[aria-hidden='true'] {\\n transition-duration: \", \";\\n }\\n \"])), ZINDEX_MODAL, sysMotionDurationDepart, sysMotionDurationDepart, sysMotionDurationDepart, sysColorOverlayMainHover, containerCenter('center'), sysMotionDurationArrive, sysMotionDurationArrive);\n var modalBackdropShow = css(_templateObject11 || (_templateObject11 = _taggedTemplateLiteral([\"\\n label: modal_backdrop_show;\\n visibility: visible;\\n opacity: 1;\\n transition: opacity \", \" ease-in-out;\\n \"])), sysMotionDurationDepart);\n var modalBackdropShowDialog = css(_templateObject12 || (_templateObject12 = _taggedTemplateLiteral([\"\\n label: modal_backdrop_show_dialog;\\n opacity: 1;\\n transition: opacity \", \" ease-in-out\\n \", \";\\n \"])), sysMotionDurationDepart, sysMotionDurationDepart);\n var scrim = css(_templateObject13 || (_templateObject13 = _taggedTemplateLiteral([\"\\n label: scrim;\\n position: fixed;\\n top: 0;\\n left: 0;\\n bottom: 0;\\n right: 0;\\n z-index: \", \";\\n visibility: hidden;\\n transition: visibility \", \" \", \";\\n \", \";\\n\\n &::before {\\n content: ' ';\\n position: absolute;\\n top: 0;\\n left: 0;\\n bottom: 0;\\n right: 0;\\n opacity: 0;\\n will-change: opacity;\\n transition: opacity \", \" ease-in-out;\\n background-color: \", \";\\n }\\n \"])), ZINDEX_MODAL, sysMotionDurationDepart, sysMotionDurationDepart, containerCenter('flex-end'), sysMotionDurationDepart, sysColorOverlayMainHover);\n var scrimShow = css(_templateObject14 || (_templateObject14 = _taggedTemplateLiteral([\"\\n label: scrim_show;\\n visibility: visible;\\n transition: none; /* visibility should not be animated when coming in */\\n\\n &::before {\\n opacity: 1;\\n transition-duration: \", \";\\n }\\n \"])), sysMotionDurationArrive);\n var showGripper = css(_templateObject15 || (_templateObject15 = _taggedTemplateLiteral([\"\\n label: show_gripper;\\n &::before {\\n content: ' ';\\n position: absolute;\\n top: \", \";\\n left: 0;\\n right: 0;\\n margin: auto;\\n width: \", \";\\n height: \", \";\\n background-color: \", \";\\n border-radius: \", \";\\n display: none;\\n @media screen and (max-width: \", \") {\\n display: block;\\n }\\n }\\n \"])), sysSpaceSm, sysSizeTapTargetDefault, sysSizeIndicatorSm, sysColorBackgroundMediumContrast, modalBorderRadius, sysSizeMediaMd);\n var modalContents = css(_templateObject16 || (_templateObject16 = _taggedTemplateLiteral([\"\\n label: modal_contents;\\n flex: 1 1 auto;\\n overflow: auto;\\n\\n position: relative;\\n border-radius: inherit;\\n \", \";\\n\\n @media screen and (max-width: \", \") {\\n padding: 0 \", \" \", \";\\n }\\n \"])), textBody(), sysSizeMediaMd, sysSpaceXl, sysSpaceXl);\n var modalContentWithHeader = css(_templateObject17 || (_templateObject17 = _taggedTemplateLiteral([\"\\n label: modal_content_with_header;\\n @media screen and (max-width: \", \") {\\n border-radius: 0;\\n }\\n \"])), sysSizeMediaMd);\n var modalContentsSheet = css(_templateObject18 || (_templateObject18 = _taggedTemplateLiteral([\"\\n label: modal_content_sheet;\\n padding: 0 \", \";\\n\\n @media screen and (max-width: \", \") {\\n padding: 0 \", \";\\n }\\n @media screen and (max-width: \", \") {\\n padding: 0 \", \" \", \";\\n }\\n \"])), '8.5rem', sysSizeMediaLg, '5rem', sysSizeMediaMd, sysSpaceLg, sysSpaceLg);\n var modalContentsDialog = css(_templateObject19 || (_templateObject19 = _taggedTemplateLiteral([\"\\n label: modal_content_dialog;\\n max-height: \", \";\\n padding: 0 \", \";\\n \"])), '70dvh', sysSpaceJumbo);\n var modalContentsNoPadding = css(_templateObject20 || (_templateObject20 = _taggedTemplateLiteral([\"\\n label: modal_content_no_padding;\\n padding: 0;\\n @media screen and (max-width: \", \") {\\n padding: 0;\\n }\\n \"])), sysSizeMediaLg);\n var modalContentDialogPadding = css(_templateObject21 || (_templateObject21 = _taggedTemplateLiteral([\"\\n label: modal_content_dialog_no_padding;\\n @media screen and (max-width: \", \") {\\n padding: 0 \", \" \", \";\\n }\\n \"])), sysSizeMediaSm, sysSpaceLg, sysSpaceXl);\n var modalContentsCenter = css(_templateObject22 || (_templateObject22 = _taggedTemplateLiteral([\"\\n label: modal_content_center;\\n text-align: center;\\n \"])));\n var modalHeader = css(_templateObject23 || (_templateObject23 = _taggedTemplateLiteral([\"\\n label: modal_header;\\n display: flex;\\n justify-content: space-between;\\n align-items: center;\\n flex-wrap: wrap;\\n position: relative;\\n flex: 0 0 auto;\\n z-index: 1;\\n min-height: \", \";\\n padding: \", \";\\n \"])), modalHeaderMinHeight, sysSpaceMd);\n var modalHeaderSheet = css(_templateObject24 || (_templateObject24 = _taggedTemplateLiteral([\"\\n label: modal_header_sheet;\\n min-height: \", \";\\n\\n @media screen and (max-width: \", \") {\\n min-height: \", \";\\n \", \"\\n }\\n \"])), sheetHeaderHeightDesktop, sysSizeMediaMd, sheetHeaderHeightMobile, modalTopBorder);\n var modalHeaderSheetAction = css(_templateObject25 || (_templateObject25 = _taggedTemplateLiteral([\"\\n label: modal_header_sheet_action;\\n min-height: \", \";\\n padding: \", \";\\n margin: 0;\\n\\n @media screen and (max-width: \", \") {\\n min-height: \", \";\\n padding: \", \";\\n margin: 0;\\n }\\n \"])), sheetHeaderHeightDesktop, sysSpaceMd, sysSizeMediaMd, sheetHeaderHeightMobile, sysSpaceSm);\n var modalHeaderScrolled = css(_templateObject26 || (_templateObject26 = _taggedTemplateLiteral([\"\\n label: modal_header_scrolled;\\n \", \"\\n \"])), elevationStyles.level3);\n var modalHeaderAction = css(_templateObject27 || (_templateObject27 = _taggedTemplateLiteral([\"\\n label: modal_header_action;\\n flex: 0 0 \", \";\\n flex-basis: \", \";\\n \"])), modalHeaderZoneMinWidth, sheetButtonSize);\n var modalHeaderTitle = css(_templateObject28 || (_templateObject28 = _taggedTemplateLiteral([\"\\n label: modal_header_title;\\n flex: 1 1 3rem;\\n margin: \", \";\\n text-align: center;\\n \", \";\\n \"])), sysSpaceSm, textBody());\n var modalHeaderClose = css(_templateObject29 || (_templateObject29 = _taggedTemplateLiteral([\"\\n label: modal_header_close;\\n flex: 0 0 \", \";\\n text-align: right;\\n flex-basis: \", \";\\n \"])), modalHeaderZoneMinWidth, sheetButtonSize);\n var modalHeaderWorkArea = css(_templateObject30 || (_templateObject30 = _taggedTemplateLiteral([\"\\n label: modal_header_work_area;\\n flex: 0 0 100%;\\n padding: \", \" \", \";\\n \"])), sysSpaceSm, sysSpaceLg);\n var modalHeaderLogo = css(_templateObject31 || (_templateObject31 = _taggedTemplateLiteral([\"\\n label: modal_header_logo;\\n display: flex;\\n flex: 1 1 3rem;\\n justify-content: center;\\n margin-top: \", \";\\n \"])), sysSpaceSm);\n var modalHeaderLogoImage = css(_templateObject32 || (_templateObject32 = _taggedTemplateLiteral([\"\\n label: modal_header_logo_image;\\n width: \", \";\\n height: \", \";\\n \"])), sysSizeIconMd, sysSizeIconMd);\n var modalContentsClose = css(_templateObject33 || (_templateObject33 = _taggedTemplateLiteral([\"\\n label: modal_content_close;\\n position: absolute;\\n right: \", \";\\n top: \", \";\\n z-index: 2;\\n\\n [dir='rtl'] & {\\n left: \", \";\\n right: auto;\\n\\n @media screen and (min-width: \", \") {\\n left: \", \";\\n }\\n }\\n\\n @media screen and (min-width: \", \") {\\n right: \", \";\\n top: \", \";\\n }\\n \"])), sysSpaceXs, sysSpaceXs, sysSpaceXs, sysSizeMediaMd, sysSizeIndicatorMd, sysSizeMediaMd, sysSizeIndicatorMd, sysSpaceMd);\n var modalFooter = css(_templateObject34 || (_templateObject34 = _taggedTemplateLiteral([\"\\n label: modal_footer;\\n min-height: \", \";\\n padding: \", \";\\n position: relative;\\n flex: 1 0 auto;\\n \"])), modalHeaderMinHeight, sysSpaceLg);\n var modalFooterScrolled = css(_templateObject35 || (_templateObject35 = _taggedTemplateLiteral([\"\\n label: modal_footer_scrolled;\\n \", \"\\n border-bottom-left-radius: inherit;\\n border-bottom-right-radius: inherit;\\n \"])), elevationStyles.level3Above);\n var modalFooterAlignCenter = css(_templateObject36 || (_templateObject36 = _taggedTemplateLiteral([\"\\n label: modal_footer_align_center;\\n text-align: center;\\n \"])));\n var modalFooterAlignRight = css(_templateObject37 || (_templateObject37 = _taggedTemplateLiteral([\"\\n label: modal_footer_align_right;\\n text-align: right;\\n \"])));\n var modalSheetHeight90 = css(_templateObject38 || (_templateObject38 = _taggedTemplateLiteral([\"\\n label: modal_sheet_height_90;\\n @media screen and (max-width: \", \") {\\n height: 90dvh;\\n \", \"\\n }\\n \"])), sysSizeMediaMd, modalTopBorder);\n var modalSheetHeight100 = css(_templateObject39 || (_templateObject39 = _taggedTemplateLiteral([\"\\n label: modal_sheet_height_100;\\n @media screen and (max-width: \", \") {\\n height: 100dvh;\\n max-height: 100dvh;\\n border-top-left-radius: 0;\\n border-top-right-radius: 0;\\n }\\n \"])), sysSizeMediaMd);\n var justifyRight = css(_templateObject40 || (_templateObject40 = _taggedTemplateLiteral([\"\\n label: sheet_right_side;\\n @media screen and (min-width: \", \") {\\n justify-content: flex-end;\\n }\\n \"])), sysSizeMediaMd);\n var containerRightWidth = css(_templateObject41 || (_templateObject41 = _taggedTemplateLiteral([\"\\n @media screen and (min-width: \", \") {\\n width: \", \";\\n }\\n \"])), sysSizeMediaMd, '35.5rem');\n var commonContainerStyles = css(_templateObject42 || (_templateObject42 = _taggedTemplateLiteral([\"\\n label: container;\\n @media screen and (min-width: \", \") {\\n will-change: transform;\\n transition: transform \", \";\\n bottom: inherit;\\n\\n &[aria-hidden='false'] {\\n transform: translateZ(0) translateX(0);\\n }\\n }\\n \"])), sysSizeMediaMd, sysMotionDurationDepart);\n var containerRight = css(_templateObject43 || (_templateObject43 = _taggedTemplateLiteral([\"\\n label: container_right;\\n \", \"\\n @media screen and (min-width: \", \") {\\n transform: translateZ(0) translateX(100%);\\n }\\n \"])), commonContainerStyles, sysSizeMediaMd);\n var containerLeft = css(_templateObject44 || (_templateObject44 = _taggedTemplateLiteral([\"\\n label: container_left;\\n \", \"\\n @media screen and (min-width: \", \") {\\n transform: translateZ(0) translateX(-100%);\\n }\\n \"])), commonContainerStyles, sysSizeMediaMd);\n var drawerContainer = css(_templateObject45 || (_templateObject45 = _taggedTemplateLiteral([\"\\n label: drawer_container;\\n @media screen and (min-width: \", \") {\\n padding-left: \", \";\\n padding-right: \", \";\\n }\\n \"])), sysSizeMediaMd, math(\"\".concat(sysSpaceXl, \" * 2\")), math(\"\".concat(sysSpaceXl, \" * 2\")));\n var modalSheetHeight50 = css(_templateObject46 || (_templateObject46 = _taggedTemplateLiteral([\"\\n label: modal_sheet_height_50;\\n @media screen and (max-width: \", \") {\\n height: 50dvh; /* Fallback for browsers that do not support Custom Properties */\\n \", \"\\n }\\n \"])), sysSizeMediaMd, modalTopBorder);\n return {\n base: base,\n modalContents: modalContents,\n modalContentsCenter: modalContentsCenter,\n modalContentsNoPadding: modalContentsNoPadding,\n modalHeader: modalHeader,\n modalHeaderScrolled: modalHeaderScrolled,\n modalHeaderClose: modalHeaderClose,\n modalHeaderAction: modalHeaderAction,\n modalHeaderTitle: modalHeaderTitle,\n modalHeaderLogo: modalHeaderLogo,\n modalHeaderLogoImage: modalHeaderLogoImage,\n modalFooter: modalFooter,\n modalFooterScrolled: modalFooterScrolled,\n modalFooterAlignCenter: modalFooterAlignCenter,\n modalFooterAlignRight: modalFooterAlignRight,\n screenReader: screenReader,\n modalTopBorder: modalTopBorder,\n // Dialog specific styles\n modalDialog: modalDialog,\n modalBackdrop: modalBackdrop,\n modalBackdropShow: modalBackdropShow,\n modalBackdropShowDialog: modalBackdropShowDialog,\n modalContentsClose: modalContentsClose,\n modalContentsDialog: modalContentsDialog,\n containerMiddle: containerMiddle,\n modalContentDialogPadding: modalContentDialogPadding,\n // Sheet Specific\n modalSheet: modalSheet,\n modalSheetShow: modalSheetShow,\n modalSheetHeight100: modalSheetHeight100,\n modalSheetHeight90: modalSheetHeight90,\n modalSheetHeight50: modalSheetHeight50,\n modalNoContainer: modalNoContainer,\n modalHeaderSheet: modalHeaderSheet,\n modalHeaderSheetAction: modalHeaderSheetAction,\n modalHeaderWorkArea: modalHeaderWorkArea,\n modalContentsSheet: modalContentsSheet,\n modalContentWithHeader: modalContentWithHeader,\n scrim: scrim,\n scrimShow: scrimShow,\n showGripper: showGripper,\n containerBottom: containerBottom,\n justifyRight: justifyRight,\n containerRightWidth: containerRightWidth,\n containerRight: containerRight,\n containerLeft: containerLeft,\n drawerContainer: drawerContainer\n };\n}\n\nvar _excluded = [\"requestClose\", \"onBeforeClose\", \"className\", \"isHidden\", \"center\", \"noPadding\", \"closeButtonLabel\", \"noCloseButton\", \"closeButtonProps\", \"hideTitle\", \"showLogo\", \"mobileFixedHeight\", \"showGripper\", \"title\", \"id\", \"action\", \"headerContents\", \"footerContents\", \"footerAlign\", \"children\", \"returnFocusToTrigger\", \"headerClassName\", \"containerClassName\", \"contentContainerRef\", \"wrapperClassName\", \"footerClassName\", \"skipFormFocus\", \"contentScrollTop\", \"onContentScroll\", \"showDrawer\"];\n\nvar closeSheet = function () {\n return true;\n}; // eslint-disable-next-line complexity\n\n\nvar SheetComponent = function (_ref) {\n var requestClose = _ref.requestClose,\n _ref$onBeforeClose = _ref.onBeforeClose,\n onBeforeClose = _ref$onBeforeClose === void 0 ? closeSheet : _ref$onBeforeClose,\n className = _ref.className,\n isHidden = _ref.isHidden,\n center = _ref.center,\n noPadding = _ref.noPadding,\n _ref$closeButtonLabel = _ref.closeButtonLabel,\n closeButtonLabel = _ref$closeButtonLabel === void 0 ? 'close sheet' : _ref$closeButtonLabel,\n noCloseButton = _ref.noCloseButton,\n _ref$closeButtonProps = _ref.closeButtonProps,\n closeButtonProps = _ref$closeButtonProps === void 0 ? {} : _ref$closeButtonProps,\n hideTitle = _ref.hideTitle,\n showLogo = _ref.showLogo,\n mobileFixedHeight = _ref.mobileFixedHeight,\n _ref$showGripper = _ref.showGripper,\n showGripper = _ref$showGripper === void 0 ? false : _ref$showGripper,\n title = _ref.title,\n id = _ref.id,\n action = _ref.action,\n headerContents = _ref.headerContents,\n footerContents = _ref.footerContents,\n footerAlign = _ref.footerAlign,\n children = _ref.children,\n _ref$returnFocusToTri = _ref.returnFocusToTrigger,\n returnFocusToTrigger = _ref$returnFocusToTri === void 0 ? true : _ref$returnFocusToTri,\n headerClassName = _ref.headerClassName,\n containerClassName = _ref.containerClassName,\n contentContainerRef = _ref.contentContainerRef,\n wrapperClassName = _ref.wrapperClassName,\n footerClassName = _ref.footerClassName,\n skipFormFocus = _ref.skipFormFocus,\n _ref$contentScrollTop = _ref.contentScrollTop,\n contentScrollTop = _ref$contentScrollTop === void 0 ? 0 : _ref$contentScrollTop,\n onContentScroll = _ref.onContentScroll,\n _ref$showDrawer = _ref.showDrawer,\n showDrawer = _ref$showDrawer === void 0 ? false : _ref$showDrawer,\n rest = _objectWithoutProperties(_ref, _excluded);\n\n var _useState = useState(false),\n _useState2 = _slicedToArray(_useState, 2),\n headerScroll = _useState2[0],\n setHeaderScroll = _useState2[1];\n\n var _useState3 = useState(false),\n _useState4 = _slicedToArray(_useState3, 2),\n footerScroll = _useState4[0],\n setFooterScroll = _useState4[1];\n\n var _useState5 = useState(0.5),\n _useState6 = _slicedToArray(_useState5, 2),\n dynamicHeight = _useState6[0],\n setDynamicHeight = _useState6[1];\n\n var sheetRef = useRef();\n var closeButtonRef = useRef();\n var actionZoneRef = useRef();\n var refContent = useRef();\n var contentRef = contentContainerRef || refContent;\n var headerContentRef = useRef();\n var isRtl = isDocumentRTL();\n var startX;\n var startY;\n var isDynamicHeight = mobileFixedHeight === 'dynamic' || showGripper; // If theme is not directly provided, get from themeContext\n\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n var sysSizeMediaMd = tokens.sysSizeMediaMd;\n var MEDIUM_BREAKPOINT = stripUnit(remToPx(sysSizeMediaMd, '16px'));\n /* istanbul ignore next */\n\n var isMobile = hasWindow() ? window && window.innerWidth < MEDIUM_BREAKPOINT : false;\n var headerLogo = showLogo && !isMobile;\n var idBase = id !== null && id !== void 0 ? id : uniqueId();\n var showHeader = !!action || !noCloseButton || !hideTitle || !!headerContents || headerLogo; // jest has no way to test things like scrollTop or scrollHeight --BCC\n\n /* istanbul ignore next */\n\n var scrollCheck = function () {\n if (contentRef && contentRef.current) {\n var contents = contentRef.current;\n var newHeaderScroll = contents.scrollTop !== 0;\n\n if (newHeaderScroll !== headerScroll) {\n setHeaderScroll(newHeaderScroll);\n } // Footer is optional, may not be one to watch for!\n\n\n if (footerContents) {\n // Have we scrolled to the bottom?\n var newFooterScroll = contents.scrollTop + contents.offsetHeight !== contents.scrollHeight;\n\n if (newFooterScroll !== footerScroll) {\n setFooterScroll(newFooterScroll);\n }\n }\n }\n };\n\n /* istanbul ignore next */\n var setFixedHeight = function () {\n var sheetEl = sheetRef.current;\n\n if (sheetEl) {\n var height90Percent = window.innerHeight * 0.9;\n\n if (mobileFixedHeight === '100') {\n sheetEl.style.height = \"\".concat(window.innerHeight);\n } else if (mobileFixedHeight === '90') {\n sheetEl.style.height = \"\".concat(height90Percent, \"px\");\n } else if (mobileFixedHeight === '50') {\n sheetEl.style.height = \"\".concat(window.innerHeight * 0.5, \"px\");\n } else {\n sheetEl.style.maxHeight = \"\".concat(height90Percent, \"px\");\n }\n }\n };\n /* istanbul ignore next */\n\n\n var updateHeight = function () {\n var sheetEl = sheetRef.current;\n\n if (sheetEl) {\n sheetEl.style.height = \"\".concat(window.innerHeight * dynamicHeight, \"px\");\n sheetEl.style.maxHeight = 'fit-content';\n }\n };\n /* istanbul ignore next */\n\n\n var increaseHeight = /*#__PURE__*/function () {\n var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {\n return _regeneratorRuntime.wrap(function (_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n setDynamicHeight(0.9);\n\n case 1:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n\n return function () {\n return _ref2.apply(this, arguments);\n };\n }();\n /* istanbul ignore next */\n\n\n var decreaseHeight = function () {\n setDynamicHeight(0.5);\n };\n /* istanbul ignore next */\n\n\n var checkContentScroll = function () {\n var content = contentRef && contentRef.current;\n\n if (dynamicHeight === 0.5) {\n content.style.overflow = 'hidden';\n }\n\n if (dynamicHeight === 0.9) {\n content.style.overflow = 'scroll';\n }\n };\n\n useEffect(function () {\n if (!isHidden) {\n var _window;\n\n scrollCheck();\n /*eslint-disable */\n // istanbul ignore next\n // eslint-disable-next-line no-unused-expressions\n\n (_window = window) === null || _window === void 0 ? void 0 : _window.setTimeout(function () {\n /*eslint-enable */\n // HACK ALERT! react-on-focus fails at setting the focus\n // if we are transitioning opacity. This causes the sheet\n // to set the focus on the close button but NOT indicate\n // that fact to the user either visually or in the screen reader\n // So timeOut was needed\n var focused = false; // For combobox input on sheet header\n\n if (headerContentRef && headerContentRef.current) {\n //@ts-ignore\n var formElement = headerContentRef.current.querySelector('input');\n\n if (formElement) {\n formElement.focus();\n focused = true;\n }\n } // For Forms\n\n\n if (!focused && !skipFormFocus && contentRef && contentRef.current) {\n //@ts-ignore\n var focusableEls = contentRef.current.querySelectorAll('a, button, textarea, input, select');\n\n if (focusableEls.length > 0) {\n focusableEls[0].focus();\n focused = true;\n }\n } // Otherwise focus on action item or close button\n\n\n if (!focused && showHeader) {\n if (action && actionZoneRef && actionZoneRef.current) {\n //@ts-ignore\n var focusableActionEl = actionZoneRef.current.querySelectorAll('a, button, select');\n\n if (focusableActionEl.length > 0) {\n focusableActionEl[0].focus();\n }\n } else {\n var closeButtonCurrent = closeButtonRef.current;\n\n if (closeButtonCurrent) {\n //@ts-ignore\n closeButtonCurrent.focus();\n }\n }\n }\n }, 500);\n /* istanbul ignore next */\n\n if (isTouchDevice() && window.innerHeight) {\n window.addEventListener('resize', setFixedHeight, false);\n\n if (isDynamicHeight) {\n updateHeight();\n checkContentScroll();\n } else {\n setFixedHeight();\n }\n }\n }\n\n return function () {\n window.removeEventListener('resize', setFixedHeight, false);\n };\n }, [isHidden, dynamicHeight]);\n useEffect(function () {\n if (!isHidden && contentRef.current) {\n var contents = contentRef.current;\n contents.scrollTop = contentScrollTop;\n }\n }, [contentScrollTop, isHidden]);\n var wrapperCss = [_styles.scrim, !isHidden && _styles.scrimShow, showDrawer && _styles.justifyRight];\n var containerCss = [_styles.base, _styles.modalNoContainer, _styles.modalSheet, mobileFixedHeight === '100' && _styles.modalSheetHeight100, mobileFixedHeight === '90' && _styles.modalSheetHeight90, mobileFixedHeight === '50' && _styles.modalSheetHeight50, isDynamicHeight && _styles.modalSheetHeight50, !isHidden && _styles.modalSheetShow, showDrawer && !isRtl && _styles.containerRight, showDrawer && isRtl && _styles.containerLeft];\n var contentCss = [_styles.modalContents, _styles.modalContentsSheet, center && _styles.modalContentsCenter, noPadding && _styles.modalContentsNoPadding, showHeader && _styles.modalContentWithHeader, showDrawer && _styles.drawerContainer];\n var ariaHidden = isHidden ? 'true' : 'false';\n\n var handleClose = function (evt, closedBy) {\n var okToClose = onBeforeClose(closedBy);\n\n if (okToClose) {\n requestClose(evt, closedBy);\n startX = null;\n startY = null;\n }\n };\n\n var closeButtonTag = noCloseButton ? null : jsx(IconButton, _extends({\n svgIconComponent: CloseIcon,\n onClick: function onClick(evt) {\n handleClose(evt, 'closeButton');\n },\n ref: closeButtonRef,\n buttonType: \"tertiary\"\n }, closeButtonProps, {\n \"data-ppui\": \"true\"\n }), closeButtonLabel);\n\n /* istanbul ignore next */\n var mobileTouchEnd = function (evt, content) {\n var endTouch = evt.changedTouches[0];\n var endX = endTouch.pageX;\n var endY = endTouch.pageY;\n var xDiff = startX - endX;\n var yDiff = startY - endY; // means up/down is most significant\n\n if (Math.abs(yDiff) > Math.abs(xDiff)) {\n // swipe Down\n if (yDiff < 0 && (content ? content.scrollTop === 0 : true)) {\n if (isDynamicHeight) {\n decreaseHeight();\n\n if (yDiff < -150 || dynamicHeight === 0.5) {\n handleClose(evt, 'swipeDown');\n }\n } else {\n handleClose(evt, 'swipeDown');\n }\n } // swipe Up\n\n\n if (yDiff > 0 && isDynamicHeight) {\n increaseHeight();\n }\n }\n\n startX = null;\n startY = null;\n };\n /* istanbul ignore next */\n\n\n var handleTouchMove = function (evt) {\n // Prevent from scrolling\n evt.preventDefault();\n };\n /* istanbul ignore next */\n\n\n var handleTouchStart = function (evt) {\n /* istanbul ignore next */\n if (!startY && !startX) {\n var firstTouch = evt.changedTouches[0];\n startY = firstTouch.pageY;\n startX = firstTouch.pageX;\n }\n };\n /* istanbul ignore next */\n\n\n var titleId = \"header_\".concat(idBase);\n var ariaProps = {\n role: 'dialog',\n className: wrapperClassName,\n 'aria-modal': 'true',\n 'aria-hidden': ariaHidden\n };\n\n if (headerLogo || hideTitle) {\n ariaProps['aria-label'] = title;\n } else {\n ariaProps['aria-labelledby'] = titleId;\n } // If there's a close button, we need to have an action zone even if there's nothing in it\n // Same for close button. Need to have an empty div if there's something in the action\n // But if neither is present, we want to give the whole space to the title.\n\n\n var emptyCloseButtonZone = action ? jsx(\"div\", {\n css: [_styles.modalHeaderClose],\n \"data-ppui\": \"true\"\n }) : null;\n var emptyActionZone = closeButtonTag ? jsx(\"div\", {\n css: [_styles.modalHeaderAction],\n \"data-ppui\": \"true\"\n }) : null; // Now that we've decided what the empty states would look like, decide if they're actually empty or not\n\n var closeButtonZone = closeButtonTag ? jsx(\"div\", {\n css: [_styles.modalHeaderClose],\n \"data-ppui\": \"true\"\n }, closeButtonTag) : emptyCloseButtonZone;\n var actionZone = action ? jsx(\"div\", {\n css: [_styles.modalHeaderAction],\n ref: actionZoneRef,\n \"data-ppui\": \"true\"\n }, action) : emptyActionZone;\n var titleContentCss = [headerLogo ? _styles.modalHeaderLogo : _styles.modalHeaderTitle];\n var titleContentZone = jsx(\"div\", {\n css: titleContentCss,\n id: titleId,\n \"aria-live\": \"assertive\",\n \"data-ppui\": \"true\"\n }, function titleContents() {\n if (headerLogo) {\n return jsx(\"img\", {\n src: \"https://www.paypalobjects.com/paypal-ui/logos/svg/paypal-mark-color.svg\",\n alt: \"paypal-logo\",\n css: _styles.modalHeaderLogoImage,\n \"data-ppui\": \"true\"\n });\n }\n\n return hideTitle ? null : title;\n }());\n var headerContentZone = headerContents ? jsx(\"div\", {\n css: _styles.modalHeaderWorkArea,\n ref: headerContentRef,\n \"data-ppui\": \"true\"\n }, headerContents) : null;\n var header = showHeader ? jsx(\"header\", {\n className: headerClassName,\n css: [_styles.modalHeader, _styles.modalHeaderSheet, headerScroll && _styles.modalHeaderScrolled, actionZone && _styles.modalHeaderSheetAction, showGripper && _styles.showGripper],\n onTouchStart: handleTouchStart,\n onTouchMove: handleTouchMove,\n onTouchEnd: function handleTouchEnd(evt) {\n mobileTouchEnd(evt, null);\n },\n \"data-ppui\": \"true\"\n }, actionZone, titleContentZone, closeButtonZone, headerContentZone) : null;\n var footer = footerContents ? jsx(\"footer\", {\n className: footerClassName,\n css: [_styles.modalFooter,\n /* istanbul ignore next */\n footerScroll && _styles.modalFooterScrolled, footerAlign === 'center' && _styles.modalFooterAlignCenter, footerAlign === 'right' && _styles.modalFooterAlignRight],\n \"data-ppui\": \"true\"\n }, footerContents) : null;\n return jsx(\"div\", _extends({}, ariaProps, {\n css: wrapperCss,\n \"data-ppui-info\": \"sheet_3.14.2\"\n }), jsx(FocusOn, {\n enabled: !isHidden // @ts-ignore: onEscapeKey() wants an Event, but the rest of this code wants SyntheticEvent<>\n ,\n onEscapeKey: function handleEscape(evt) {\n evt.preventDefault();\n handleClose(evt, 'ESC');\n },\n onClickOutside: function handleBackdropClick(evt) {\n handleClose(evt, 'backdropClick');\n },\n returnFocus: returnFocusToTrigger,\n css: [_styles.containerBottom, showDrawer && _styles.containerRightWidth],\n \"data-ppui\": \"true\"\n }, jsx(\"article\", _extends({\n css: containerCss,\n className: containerClassName\n }, rest, {\n ref: sheetRef,\n \"aria-hidden\": ariaHidden,\n \"data-ppui\": \"true\"\n }), header, jsx(\"section\", {\n css: contentCss,\n className: className,\n onScroll: function handleScroll() {\n /* istanbul ignore else */\n if (contentRef && contentRef.current) {\n var contents = contentRef.current;\n /* istanbul ignore else */\n\n if (onContentScroll) {\n onContentScroll(contents.scrollTop);\n }\n }\n\n scrollCheck();\n },\n ref: contentRef,\n onTouchStart: handleTouchStart,\n onTouchMove: handleTouchMove,\n onTouchEnd: function handleContentTouchEnd(evt) {\n var content = contentRef && contentRef.current;\n\n if (isDynamicHeight) {\n mobileTouchEnd(evt, content);\n }\n },\n \"data-ppui\": \"true\"\n }, children), footer)));\n};\n\nvar _excluded$1 = [\"isOpen\", \"onOpen\", \"onClose\", \"onCloseComplete\", \"containerRef\"];\n\nvar Sheet = function (_ref) {\n var isOpen = _ref.isOpen,\n onOpen = _ref.onOpen,\n onClose = _ref.onClose,\n _ref$onCloseComplete = _ref.onCloseComplete,\n onCloseComplete = _ref$onCloseComplete === void 0 ? onClose : _ref$onCloseComplete,\n containerRef = _ref.containerRef,\n componentProps = _objectWithoutProperties(_ref, _excluded$1);\n\n var _useState = useState(false),\n _useState2 = _slicedToArray(_useState, 2),\n isMounted = _useState2[0],\n setIsMounted = _useState2[1];\n\n useEffect(function () {\n setIsMounted(true);\n }, []);\n var contents = /*#__PURE__*/React.createElement(Animator, {\n shouldHide: !isOpen,\n onOpen: onOpen,\n onCloseComplete: onCloseComplete,\n \"data-ppui\": \"true\"\n }, function animatee(props) {\n return /*#__PURE__*/React.createElement(SheetComponent, _extends({}, props, componentProps, {\n \"data-ppui\": \"true\"\n }));\n });\n var containerElm = containerRef && containerRef.current; // Delay createPortal until component is mounted to fix server side rendering\n\n return isMounted && ReactDOM.createPortal(contents, containerElm || document.body);\n};\n\nvar _excluded$2 = [\"isFullView\", \"showInverseCloseButton\", \"requestClose\", \"className\", \"headerClassName\", \"footerClassName\", \"containerClassName\", \"isHidden\", \"center\", \"hideTitle\", \"closeButtonLabel\", \"closeButtonProps\", \"closeOnBackgroundClick\", \"onBeforeClose\", \"contentContainerRef\", \"title\", \"id\", \"action\", \"footerContents\", \"footerAlign\", \"children\", \"skipFormFocus\", \"showTitleInHeader\"];\n\nvar closeDialog = function () {\n return true;\n};\n\nvar DialogComponent = function (_ref) {\n var isFullView = _ref.isFullView,\n showInverseCloseButton = _ref.showInverseCloseButton,\n requestClose = _ref.requestClose,\n className = _ref.className,\n headerClassName = _ref.headerClassName,\n footerClassName = _ref.footerClassName,\n containerClassName = _ref.containerClassName,\n isHidden = _ref.isHidden,\n center = _ref.center,\n _ref$hideTitle = _ref.hideTitle,\n hideTitle = _ref$hideTitle === void 0 ? isFullView : _ref$hideTitle,\n _ref$closeButtonLabel = _ref.closeButtonLabel,\n closeButtonLabel = _ref$closeButtonLabel === void 0 ? 'Close Dialog' : _ref$closeButtonLabel,\n _ref$closeButtonProps = _ref.closeButtonProps,\n closeButtonProps = _ref$closeButtonProps === void 0 ? {} : _ref$closeButtonProps,\n closeOnBackgroundClick = _ref.closeOnBackgroundClick,\n _ref$onBeforeClose = _ref.onBeforeClose,\n onBeforeClose = _ref$onBeforeClose === void 0 ? closeDialog : _ref$onBeforeClose,\n contentContainerRef = _ref.contentContainerRef,\n title = _ref.title,\n id = _ref.id,\n action = _ref.action,\n footerContents = _ref.footerContents,\n footerAlign = _ref.footerAlign,\n children = _ref.children,\n skipFormFocus = _ref.skipFormFocus,\n _ref$showTitleInHeade = _ref.showTitleInHeader,\n showTitleInHeader = _ref$showTitleInHeade === void 0 ? false : _ref$showTitleInHeade,\n rest = _objectWithoutProperties(_ref, _excluded$2);\n\n var _useState = useState(false),\n _useState2 = _slicedToArray(_useState, 2),\n headerScroll = _useState2[0],\n setHeaderScroll = _useState2[1];\n\n var _useState3 = useState(false),\n _useState4 = _slicedToArray(_useState3, 2),\n footerScroll = _useState4[0],\n setFooterScroll = _useState4[1];\n\n var refContent = useRef();\n var contentRef = contentContainerRef || refContent;\n var closeButtonRef = useRef();\n var actionZoneRef = useRef();\n var idBase = id || uniqueId(); // jest has no way to test things like scrollTop or scrollHeight --BCC\n\n /* istanbul ignore next */\n\n var scrollCheck = function () {\n if (contentRef && contentRef.current) {\n var contents = contentRef.current;\n var newHeaderScroll = contents.scrollTop !== 0;\n\n if (newHeaderScroll !== headerScroll) {\n setHeaderScroll(newHeaderScroll);\n } // Footer is optional, may not be one to watch for!\n\n\n if (footerContents) {\n // Have we scrolled to the bottom?\n var newFooterScroll = Math.ceil(contents.scrollTop + contents.getBoundingClientRect().height) < contents.scrollHeight;\n\n if (newFooterScroll !== footerScroll) {\n setFooterScroll(newFooterScroll);\n }\n }\n }\n };\n\n useEffect(function () {\n if (!isHidden) {\n scrollCheck(); // istanbul ignore next\n\n if (window && window.setTimeout) {\n // istanbul ignore next\n window.setTimeout(function () {\n // HACK ALERT! react-on-focus fails at setting the focus\n // if we are transitioning opacity. This causes the dialog\n // to set the focus on the close button but NOT indicate\n // that fact to the user either visually or in the screen reader\n // So timeOut was needed\n var focused = false; // For Forms\n\n if (!focused && !skipFormFocus && contentRef && contentRef.current) {\n //@ts-ignore\n var focusableEls = contentRef.current.querySelectorAll('a, button, textarea, input, select');\n\n if (focusableEls.length > 0) {\n focusableEls[0].focus();\n focused = true;\n }\n } // Otherwise focus on action item or close button\n\n\n if (!focused && (!!action || !hideTitle)) {\n if (action && actionZoneRef && actionZoneRef.current) {\n //@ts-ignore\n var focusableActionEl = actionZoneRef.current.querySelectorAll('a, button, select');\n\n if (focusableActionEl.length > 0) {\n focusableActionEl[0].focus();\n }\n } else {\n var closeButton = closeButtonRef.current;\n\n if (closeButton) {\n //@ts-ignore\n closeButton.focus();\n }\n }\n }\n }, 100);\n }\n }\n }, [isHidden]);\n /* istanbul ignore next */\n\n // If theme is not directly provided, get from themeContext\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n var wrapperCss = [_styles.modalBackdrop, !isHidden && _styles.modalBackdropShow];\n var contentCss = [_styles.modalContents, _styles.modalContentsDialog, center && _styles.modalContentsCenter, isFullView && _styles.modalContentsNoPadding, !isFullView && _styles.modalContentDialogPadding];\n\n var handleClose = function (evt, closedBy) {\n var okToClose = onBeforeClose(closedBy);\n /* istanbul ignore next */\n\n if (okToClose) {\n requestClose(evt, closedBy);\n }\n };\n\n var titleId = \"header_\".concat(idBase);\n var titleElement = null;\n var ariaProps = {\n role: 'dialog',\n 'aria-modal': 'true',\n 'aria-hidden': isHidden ? 'true' : 'false'\n };\n\n if (hideTitle || showTitleInHeader) {\n ariaProps['aria-label'] = title;\n\n if (showTitleInHeader && !isFullView) {\n titleElement = jsx(\"span\", {\n id: titleId,\n \"aria-live\": \"assertive\",\n \"data-ppui\": \"true\"\n }, title);\n }\n } else {\n ariaProps['aria-labelledby'] = titleId;\n titleElement = jsx(\"h2\", {\n id: titleId,\n \"aria-live\": \"assertive\",\n \"data-ppui\": \"true\"\n }, title);\n }\n\n var closeButtonContainerCss = isFullView ? _styles.modalContentsClose : _styles.modalHeaderClose;\n var closeButtonTag = jsx(\"div\", {\n css: closeButtonContainerCss,\n \"data-ppui\": \"true\"\n }, jsx(IconButton, _extends({\n buttonType: \"tertiary\",\n svgIconComponent: CloseIcon,\n inverse: showInverseCloseButton,\n ref: closeButtonRef,\n onClick: function handleCloseButtonClick(evt) {\n handleClose(evt, 'closeButton');\n }\n }, closeButtonProps, {\n \"data-ppui\": \"true\"\n }), closeButtonLabel));\n var footer = footerContents ? jsx(\"footer\", {\n className: footerClassName,\n css: [_styles.modalFooter,\n /* istanbul ignore next */\n footerScroll && _styles.modalFooterScrolled, footerAlign === 'center' && _styles.modalFooterAlignCenter, footerAlign === 'right' && _styles.modalFooterAlignRight],\n \"data-ppui\": \"true\"\n }, footerContents) : null;\n var header = jsx(\"header\", {\n className: headerClassName,\n css: [_styles.modalHeader,\n /* istanbul ignore next */\n headerScroll && _styles.modalHeaderScrolled, _styles.modalTopBorder],\n \"data-ppui\": \"true\"\n }, jsx(\"div\", {\n css: _styles.modalHeaderAction,\n ref: actionZoneRef,\n \"data-ppui\": \"true\"\n }, action), jsx(\"div\", {\n css: _styles.modalHeaderTitle,\n \"data-ppui\": \"true\"\n }, showTitleInHeader && titleElement), closeButtonTag);\n return jsx(\"div\", _extends({}, ariaProps, {\n css: wrapperCss,\n \"data-ppui-info\": \"dialog_3.14.2\"\n }), jsx(FocusOn, {\n enabled: !isHidden // @ts-ignore: onEscapeKey() wants an Event, but the rest of this code wants SyntheticEvent<>\n ,\n onEscapeKey: function handleEscape(evt) {\n evt.preventDefault();\n handleClose(evt, 'ESC');\n },\n onClickOutside: function handleBackdropClick(evt) {\n if (closeOnBackgroundClick) {\n handleClose(evt, 'backdropClick');\n }\n },\n css: _styles.containerMiddle,\n \"data-ppui\": \"true\"\n }, jsx(\"article\", _extends({\n css: [_styles.base, _styles.modalDialog, !isHidden && _styles.modalBackdropShowDialog],\n className: containerClassName\n }, rest, {\n \"data-ppui\": \"true\"\n }), isFullView ? closeButtonTag : header, jsx(\"section\", {\n className: className,\n css: contentCss,\n onScroll: function scrollChecker() {\n return scrollCheck();\n },\n ref: contentRef,\n \"data-ppui\": \"true\"\n }, jsx(AutoFocusInside, {\n \"data-ppui\": \"true\"\n }, !showTitleInHeader && titleElement, children)), footer)));\n};\n\nvar _excluded$3 = [\"isOpen\", \"onOpen\", \"onClose\", \"onCloseComplete\", \"containerRef\"];\n\nvar Dialog = function (_ref) {\n var isOpen = _ref.isOpen,\n onOpen = _ref.onOpen,\n onClose = _ref.onClose,\n _ref$onCloseComplete = _ref.onCloseComplete,\n onCloseComplete = _ref$onCloseComplete === void 0 ? onClose : _ref$onCloseComplete,\n containerRef = _ref.containerRef,\n componentProps = _objectWithoutProperties(_ref, _excluded$3);\n\n var _useState = useState(false),\n _useState2 = _slicedToArray(_useState, 2),\n isMounted = _useState2[0],\n setIsMounted = _useState2[1];\n\n useEffect(function () {\n setIsMounted(true);\n }, []);\n var contents = /*#__PURE__*/React.createElement(Animator, {\n shouldHide: !isOpen,\n onOpen: onOpen,\n onCloseComplete: onCloseComplete,\n \"data-ppui\": \"true\"\n }, function animatee(props) {\n return /*#__PURE__*/React.createElement(DialogComponent, _extends({}, props, componentProps, {\n \"data-ppui\": \"true\"\n }));\n });\n var containerElm = containerRef && containerRef.current; // Delay createPortal until component is mounted to fix server side rendering\n\n return isMounted && ReactDOM.createPortal(contents, containerElm || document.body);\n};\n\nexport { Dialog, Sheet, styles as modalStyles };\n","import _extends from '@babel/runtime/helpers/esm/extends';\nimport _defineProperty from '@babel/runtime/helpers/esm/defineProperty';\nimport _slicedToArray from '@babel/runtime/helpers/esm/slicedToArray';\nimport _objectWithoutProperties from '@babel/runtime/helpers/esm/objectWithoutProperties';\nimport { useRef, useMemo, useState, useEffect, useLayoutEffect } from 'react';\nimport { IconButton } from '@paypalcorp/pp-react-icon-button';\nimport { OverflowIcon } from '@paypalcorp/pp-react-icons';\nimport { devWarning, utilStyles, ZINDEX_DROPDOWN, getPx, KeyboardCode } from '@paypalcorp/pp-react-utils';\nimport { css, useTheme, jsx } from '@emotion/react';\nimport _taggedTemplateLiteral from '@babel/runtime/helpers/esm/taggedTemplateLiteral';\nimport { textStyles } from '@paypalcorp/pp-react-text';\n\nvar _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5;\nvar menuHeightMax = '16rem';\nfunction styles(tokens) {\n /* istanbul ignore next */\n if (!Object.keys(tokens).length) {\n devWarning('Missing Emotion theme. Use ThemeProvider from @emotion/react to pass a valid theme from pp-react.');\n return {};\n }\n\n var sysSpaceLg = tokens.sysSpaceLg,\n sysSpaceMd = tokens.sysSpaceMd,\n sysSpaceSm = tokens.sysSpaceSm,\n sysColorBackgroundSurface = tokens.sysColorBackgroundSurface,\n sysColorBackgroundSurfaceHover = tokens.sysColorBackgroundSurfaceHover,\n sysBorderRadiusLg = tokens.sysBorderRadiusLg,\n sysColorBackgroundSurfaceActive = tokens.sysColorBackgroundSurfaceActive;\n\n var _utilStyles = utilStyles(tokens),\n focusStyles = _utilStyles.focusStyles,\n elevationStyles = _utilStyles.elevationStyles;\n\n var _textStyles = textStyles(tokens),\n textBody = _textStyles.body;\n\n var overflowMenuBase = css(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n label: overflow_menu_base;\\n position: relative;\\n display: inline-block;\\n max-height: \", \";\\n \"])), menuHeightMax);\n var keyboardActive = css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n label: keyboard_active;\\n &:focus {\\n \", \";\\n }\\n \"])), focusStyles.focusInlineElement);\n var btnActive = css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral([\"\\n label: btn_active;\\n &[aria-expanded='true'] {\\n background: \", \";\\n }\\n \"])), sysColorBackgroundSurfaceActive);\n var list = css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral([\"\\n label: list;\\n right: 0;\\n margin: 0;\\n position: fixed;\\n z-index: \", \";\\n list-style: none;\\n border-radius: \", \";\\n \", \"\\n background-color: \", \";\\n display: none;\\n padding: \", \" 0;\\n overflow: auto;\\n width: fit-content;\\n\\n &[aria-hidden='false'] {\\n display: inline-block;\\n }\\n [dir='rtl'] & {\\n right: auto; // remove ltr style\\n left: \", \";\\n }\\n \"])), ZINDEX_DROPDOWN, sysBorderRadiusLg, elevationStyles.level1, sysColorBackgroundSurface, sysSpaceSm, sysSpaceMd);\n var listItem = css(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral([\"\\n label: list_item;\\n white-space: nowrap;\\n display: block;\\n text-align: justify;\\n text-overflow: ellipsis;\\n position: relative;\\n \", \"\\n text-decoration:none;\\n padding: \", \" \", \";\\n &:hover {\\n background-color: \", \";\\n cursor: pointer;\\n outline: 0;\\n }\\n\\n &:focus {\\n // override link styles\\n box-shadow: none;\\n outline: 0;\\n border-radius: 0;\\n }\\n \"])), textBody(), sysSpaceMd, sysSpaceLg, sysColorBackgroundSurfaceHover);\n return {\n overflowMenuBase: overflowMenuBase,\n keyboardActive: keyboardActive,\n btnActive: btnActive,\n list: list,\n listItem: listItem\n };\n}\n\nvar _excluded = [\"name\", \"value\", \"ariaLabel\", \"options\", \"isOpen\", \"onChange\", \"onOpen\", \"onClose\", \"className\", \"triggerClassName\", \"theme\"],\n _excluded2 = [\"label\", \"value\", \"href\"];\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nvar OverflowMenu = function (_ref) {\n var _ref$name = _ref.name,\n name = _ref$name === void 0 ? 'Overflow' : _ref$name,\n _ref$value = _ref.value,\n value = _ref$value === void 0 ? 0 : _ref$value,\n _ref$ariaLabel = _ref.ariaLabel,\n ariaLabel = _ref$ariaLabel === void 0 ? name : _ref$ariaLabel,\n _ref$options = _ref.options,\n options = _ref$options === void 0 ? [] : _ref$options,\n isOpen = _ref.isOpen,\n onChange = _ref.onChange,\n onOpen = _ref.onOpen,\n onClose = _ref.onClose,\n className = _ref.className,\n triggerClassName = _ref.triggerClassName,\n theme = _ref.theme,\n rest = _objectWithoutProperties(_ref, _excluded);\n\n var wrapperRef = useRef();\n var menuRef = useRef();\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n var _useState = useState(false),\n _useState2 = _slicedToArray(_useState, 2),\n focusedIndex = _useState2[0],\n setFocusedIndex = _useState2[1];\n\n var listItemCss = [_styles.listItem, focusedIndex && _styles.keyboardActive];\n var optionList = options.map(function (_ref2, index) {\n var label = _ref2.label,\n optValue = _ref2.value,\n _ref2$href = _ref2.href,\n href = _ref2$href === void 0 ? '#' : _ref2$href,\n otherProps = _objectWithoutProperties(_ref2, _excluded2);\n\n return jsx(\"li\", {\n role: \"presentation\",\n key: \"ofmenu_\".concat(index),\n \"data-ppui\": \"true\"\n }, jsx(\"a\", _extends({\n href: href,\n \"data-name\": name,\n \"data-value\": optValue,\n css: listItemCss,\n role: \"menuitem\",\n tabIndex: -1\n }, otherProps, {\n \"data-ppui\": \"true\"\n }), label));\n });\n\n var getWrapperCurrent = function (w) {\n return (\n /* istanbul ignore next */\n w && w.current ? w.current : null\n );\n };\n /**\n * Determines whether the click is outside the element and invoke `onClose` function.\n */\n\n\n function handleClickOutside(evt) {\n var current = getWrapperCurrent(wrapperRef);\n\n if (isOpen && current && !current.contains(evt.target)) {\n evt.stopPropagation();\n onClose(evt);\n }\n }\n\n var getActiveIndex = function (menuItems) {\n for (var i = 0; i < menuItems.length; ++i) {\n if (menuItems[i] === document.activeElement) {\n return i;\n }\n }\n\n return 0;\n };\n\n function setFocus(offset) {\n var current = getWrapperCurrent(wrapperRef);\n /* istanbul ignore next */\n\n if (current) {\n var menuItems = current.querySelectorAll('[role=\"menuitem\"]');\n var len = menuItems.length;\n var curIndex = getActiveIndex(menuItems);\n menuItems[(curIndex + offset + len) % len].focus();\n }\n }\n\n function handleKey(evt) {\n /* istanbul ignore next */\n var KeyCode = new KeyboardCode(evt.key || evt.keyCode);\n\n if (KeyCode.IS_ARROW_UP) {\n setFocus(-1);\n setFocusedIndex(true);\n } else if (KeyCode.IS_ARROW_DOWN) {\n setFocus(1);\n setFocusedIndex(true);\n } else if (KeyCode.IS_ESC || KeyCode.IS_TAB) {\n onClose(evt);\n } else {\n return; // Don't stopPropagation() if not one of the above\n }\n\n evt.preventDefault();\n evt.stopPropagation();\n }\n\n var getComputedDirection = function (elem) {\n return getComputedStyle(elem).direction;\n };\n\n useEffect(function () {\n // Now that we're using position: fixed for the menu,\n // We need to close whenever the content scrolls to avoid\n // having the trigger button scroll away from its menu\n // We could \"stalk\" the trigger and follow it around\n // But if we did that, the button could get clipped leaving a\n // disembodied menu... --BCC\n // istanbul ignore next\n function handleScroll(evt) {\n var target = evt.target;\n\n if (target !== (menuRef === null || menuRef === void 0 ? void 0 : menuRef.current)) {\n onClose(evt);\n }\n } // istanbul ignore next\n\n\n function handleResize(evt) {\n onClose(evt);\n }\n\n function startListening() {\n document.addEventListener('mousedown', handleClickOutside);\n document.addEventListener('keydown', handleKey);\n window.addEventListener('scroll', handleScroll, {\n passive: true,\n capture: true\n });\n window.addEventListener('resize', handleResize);\n }\n\n function stopListening() {\n document.removeEventListener('mousedown', handleClickOutside);\n document.removeEventListener('keydown', handleKey);\n window.removeEventListener('scroll', handleScroll, true);\n window.removeEventListener('resize', handleResize);\n }\n\n if (isOpen) {\n startListening();\n setFocus(value);\n } else {\n stopListening();\n }\n\n return function () {\n stopListening();\n };\n }, [isOpen]);\n /*\n * The following code is very tricky. There are things you have to keep\n * straight in your mind:\n * - some values are strings and others are numbers\n * - some values are in px others in rem. numbers always represent px\n * - sometimes \"right\" is an x coordinate, others it's an inset FROM the right\n * - sometimes \"bottom\" is a y coordinate, others it's an inset FROM the bottom\n * - the getPx() utility will parse '0.75rem' or '12px' to the same value: 12\n *\n * --love BCC\n */\n // istanbul ignore next\n\n var stayInsideViewport = function (menu, wrapper, viewPort, isRtl) {\n var visBottom = viewPort.offsetTop + viewPort.height;\n var sysSpaceSm = tokens.sysSpaceSm;\n var smSpace = getPx(sysSpaceSm); // keep the top/bottom from touching the edge\n // The default case is to put the menu below the trigger and line up their right edges\n\n var targetBounds = wrapper.getBoundingClientRect(); // menu.style.top = `${targetBounds.bottom - offsetY + smSpace}px`\n // Now that it's in place, ask the browser about its dimensions\n\n var menuBounds = menu.getBoundingClientRect(); // Does the menu go off the bottom of the visual viewport?\n\n if (menuBounds.bottom > visBottom) {\n // consider putting the menu above the trigger instead\n var proposedTop = targetBounds.top - (menuBounds.height + smSpace); // but... would that send menu off the top of the screen?\n\n if (proposedTop < 0) {\n // The menu won't fit above or below - we must shorten the menu\n // So which is the lesser evil? Above or Below?\n if (Math.abs(proposedTop) < menuBounds.bottom - visBottom) {\n // Above: slide it down so the top is visible with a little breathing room\n menu.style.top = \"\".concat(smSpace, \"px\"); // wants a string here!\n } else {\n menu.style.top = '';\n menu.style.bottom = sysSpaceSm; // wants a string here!\n }\n } else {\n // It fits above - go with that\n // menu.style.left = `${wrapperRect.right - menuRect.width - offset.x}px`\n menu.style.top = \"\".concat(proposedTop - viewPort.offsetTop, \"px\");\n }\n } // We don't check for a fit here. If we need to we can set a max-width of 1vw - margins\n\n\n if (isRtl && menuBounds.right > viewPort.offsetLeft + viewPort.width) {\n menu.style.left = '';\n menu.style.right = \"\".concat(viewPort.width - targetBounds.right, \"px\");\n } else if (menuBounds.left < viewPort.offsetLeft) {\n menu.style.right = '';\n menu.style.left = \"\".concat(targetBounds.left - viewPort.offsetLeft, \"px\");\n }\n }; // Make a bounding client rect look like a visual viewport\n\n\n var visualViewportFrom = function (_ref4) {\n var height = _ref4.height,\n offsetLeft = _ref4.left,\n offsetTop = _ref4.top,\n width = _ref4.width;\n return {\n offsetLeft: offsetLeft,\n offsetTop: offsetTop,\n height: height,\n width: width\n };\n }; // istanbul ignore next\n\n\n var offsetBounds = function (wrapper) {\n var _wrapper$offsetParent, _window$visualViewpor, _window;\n\n var op = (_wrapper$offsetParent = wrapper.offsetParent) !== null && _wrapper$offsetParent !== void 0 ? _wrapper$offsetParent : document.body;\n var offsetTransform = window.getComputedStyle(op).transform;\n\n if ((offsetTransform !== null && offsetTransform !== void 0 ? offsetTransform : 'none') !== 'none') {\n return visualViewportFrom(op.getBoundingClientRect());\n }\n\n return (_window$visualViewpor = (_window = window) === null || _window === void 0 ? void 0 : _window.visualViewport) !== null && _window$visualViewpor !== void 0 ? _window$visualViewpor : visualViewportFrom(document.body.getBoundingClientRect());\n };\n\n useLayoutEffect(function () {\n var menu = menuRef.current;\n var wrapper = wrapperRef.current;\n var sysSpaceXs = tokens.sysSpaceXs;\n var spaceXs = getPx(sysSpaceXs);\n var wrapperRect = wrapper.getBoundingClientRect();\n var menuRect = menu.getBoundingClientRect();\n var isRtl = getComputedDirection(wrapper) === 'rtl';\n var localViewport = offsetBounds(wrapper);\n menu.style.top = \"\".concat(wrapperRect.bottom - localViewport.offsetTop + spaceXs, \"px\"); // clear out any old styles so we can start over\n\n menu.style.bottom = menu.style.left = menu.style.right = menu.style.maxHeight = ''; // istanbul ignore next\n\n if (isRtl) {\n menu.style.left = \"\".concat(wrapperRect.left + spaceXs, \"px\");\n } else {\n // need to position from left side since we don't know how far away the\n // right side might be...\n menu.style.left = \"\".concat(wrapperRect.right - menuRect.width - localViewport.offsetLeft, \"px\");\n }\n\n stayInsideViewport(menu, wrapper, localViewport, isRtl);\n }, [isOpen]);\n var triggerCss = [isOpen && _styles.btnActive]; // I switched from
    to Spec says they're interchangeable and\n // is semantically more readable. If nothing else makes it easier to debug\n\n return jsx(\"div\", _extends({\n css: _styles.overflowMenuBase,\n className: className,\n ref: wrapperRef,\n \"data-ppui-info\": \"overflow-menu_3.6.6\"\n }, rest), jsx(IconButton, {\n className: triggerClassName,\n buttonType: \"tertiary\",\n css: triggerCss,\n name: name,\n svgIconComponent: OverflowIcon,\n \"aria-haspopup\": \"true\",\n \"aria-expanded\": isOpen,\n onClick: function handleClick(evt) {\n if (isOpen) {\n onClose(evt);\n } else {\n onOpen(evt);\n /* istanbul ignore next */\n\n setFocusedIndex(evt.detail === 0); // 1 = click, 0 = keyboard\n }\n },\n \"data-ppui\": \"true\"\n }, ariaLabel), jsx(\"menu\", {\n ref: menuRef,\n css: _styles.list,\n tabIndex: -1,\n role: \"menu\",\n onClick: function itemClickHandler(evt) {\n var target = evt.target; // @ts-ignore\n\n var targetName = target.dataset.name; // @ts-ignore\n\n var targetValue = target.dataset.value;\n\n var namedTarget = _objectSpread(_objectSpread({}, target), {}, {\n name: targetName,\n value: targetValue\n });\n\n if (onChange) {\n evt.preventDefault();\n evt.stopPropagation(); // @ts-ignore\n\n onChange(_objectSpread(_objectSpread({}, evt), {}, {\n target: namedTarget\n }));\n }\n\n onClose(evt);\n },\n \"aria-label\": name,\n \"aria-hidden\": !isOpen,\n \"data-ppui\": \"true\"\n }, optionList));\n};\n\nexport { OverflowMenu, styles as overflowMenuStyles };\n","import _extends from '@babel/runtime/helpers/esm/extends';\nimport _objectWithoutProperties from '@babel/runtime/helpers/esm/objectWithoutProperties';\nimport { useMemo, forwardRef } from 'react';\nimport _taggedTemplateLiteral from '@babel/runtime/helpers/esm/taggedTemplateLiteral';\nimport { css, useTheme, jsx } from '@emotion/react';\nimport { textStyles, CaptionText, HeadingText } from '@paypalcorp/pp-react-text';\nimport { devWarning, uniqueId, utilStyles } from '@paypalcorp/pp-react-utils';\n\nvar Color;\n/** @deprecated */\n\n(function (Color) {\n Color[\"Accent1\"] = \"sysColorAccent1Main\";\n Color[\"Accent2\"] = \"sysColorAccent2Main\";\n Color[\"Accent3\"] = \"sysColorAccent3Main\";\n Color[\"Accent4\"] = \"sysColorAccent4Main\";\n})(Color || (Color = {}));\n\nvar colorMap = {\n blue: Color.Accent1,\n magenta: Color.Accent2,\n green: Color.Accent3,\n purple: Color.Accent4\n};\n\nvar Size;\n\n(function (Size) {\n Size[\"SMALL\"] = \"sm\";\n Size[\"LARGE\"] = \"lg\";\n})(Size || (Size = {}));\n\nvar _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14, _templateObject15, _templateObject16, _templateObject17, _templateObject18, _templateObject19, _templateObject20, _templateObject21, _templateObject22, _templateObject23, _templateObject24, _templateObject25, _templateObject26, _templateObject27, _templateObject28, _templateObject29, _templateObject30;\nfunction styles(tokens) {\n /* istanbul ignore next */\n if (!Object.keys(tokens).length) {\n devWarning('Missing Emotion theme. Use ThemeProvider from @emotion/react to pass a valid theme from pp-react.');\n return {};\n }\n\n var sysBorderRadiusInteractive = tokens.sysBorderRadiusInteractive,\n sysBorderRadiusSm = tokens.sysBorderRadiusSm,\n sysBorderThicknessNormal = tokens.sysBorderThicknessNormal,\n sysColorAccent1Contrast = tokens.sysColorAccent1Contrast,\n sysColorAccent1Main = tokens.sysColorAccent1Main,\n sysColorAccent2Contrast = tokens.sysColorAccent2Contrast,\n sysColorAccent2Main = tokens.sysColorAccent2Main,\n sysColorAccent3Contrast = tokens.sysColorAccent3Contrast,\n sysColorAccent3Main = tokens.sysColorAccent3Main,\n sysColorAccent4Contrast = tokens.sysColorAccent4Contrast,\n sysColorAccent4Main = tokens.sysColorAccent4Main,\n sysColorBackgroundAlt = tokens.sysColorBackgroundAlt,\n sysColorBackgroundMediumContrast = tokens.sysColorBackgroundMediumContrast,\n sysColorBackgroundHighContrast = tokens.sysColorBackgroundHighContrast,\n sysColorBackgroundSurface = tokens.sysColorBackgroundSurface,\n sysColorSystemContrast = tokens.sysColorSystemContrast,\n sysSizeCircleMd = tokens.sysSizeCircleMd,\n sysSizeCircleXl = tokens.sysSizeCircleXl,\n sysSizeIndicatorLg = tokens.sysSizeIndicatorLg,\n sysSizeIndicatorMd = tokens.sysSizeIndicatorMd,\n sysSizeIndicatorSm = tokens.sysSizeIndicatorSm,\n sysSizeIndicatorXs = tokens.sysSizeIndicatorXs,\n sysSpaceMd = tokens.sysSpaceMd,\n sysSpaceSm = tokens.sysSpaceSm,\n sysSizeIconSm = tokens.sysSizeIconSm,\n sysSizeIconLg = tokens.sysSizeIconLg,\n sysSpaceXl = tokens.sysSpaceXl,\n sysSpaceXs = tokens.sysSpaceXs,\n sysMotionDurationArrive = tokens.sysMotionDurationArrive;\n\n var _textStyles = textStyles(tokens),\n textBody = _textStyles.body,\n textCaption = _textStyles.caption,\n textCaptionStrong = _textStyles.captionStrong; // Circle progress meter variables\n\n\n var circleRadiusSvg = 50;\n var circleProgressMeterSize = parseInt(sysSizeCircleXl, 10);\n var circleProgressMeterBorderSize = parseFloat(sysSizeIndicatorSm);\n var circleProgressMeterSmSize = parseInt(sysSizeCircleMd, 10);\n var circleProgressMeterSmBorderSize = sysSizeIndicatorXs;\n var progressIndicatorCircleStrokeWidth = circleProgressMeterBorderSize / circleProgressMeterSize * 100;\n var progressIndicatorCircleSmStrokeWidth = parseFloat(circleProgressMeterSmBorderSize) / circleProgressMeterSmSize * 100;\n var colorMapContrast = new Map();\n colorMapContrast.set(Color.Accent1, sysColorAccent1Contrast);\n colorMapContrast.set(Color.Accent2, sysColorAccent2Contrast);\n colorMapContrast.set(Color.Accent3, sysColorAccent3Contrast);\n colorMapContrast.set(Color.Accent4, sysColorAccent4Contrast);\n var colorMapAccent = new Map();\n colorMapAccent.set(Color.Accent1, sysColorAccent1Main);\n colorMapAccent.set(Color.Accent2, sysColorAccent2Main);\n colorMapAccent.set(Color.Accent3, sysColorAccent3Main);\n colorMapAccent.set(Color.Accent4, sysColorAccent4Main);\n /**\n * Get the styles for the height of the linear progress meter\n * @param height string [This should include value with units, example: `10px`, `2rem`]\n * @returns SerializedStyles\n */\n\n var getProgressMeterHeightStyles = function (height) {\n return css(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n height: \", \";\\n\\n &::-moz-progress-bar {\\n height: \", \";\\n }\\n\\n &::-webkit-progress-value {\\n height: \", \";\\n }\\n\\n &::-webkit-progress-bar {\\n height: \", \";\\n }\\n \"])), height, height, height, height);\n };\n /**\n * Get the styles for color and background\n * @param color Color\n * @returns SerializedStyles\n */\n\n\n var getColorStyles = function (color) {\n var label = \"color_\".concat(color);\n return css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n label: \", \";\\n color: \", \";\\n background-color: \", \";\\n \"])), label, colorMapContrast.get(color), colorMapAccent.get(color));\n };\n /**\n * Check whether the size is small or not\n * @param size Size\n * @returns boolean\n */\n\n\n var isSizeSmall = function () {\n var size = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;\n return size && size === Size.SMALL;\n };\n /**\n * Get the styles for the color of the linear progress meter\n * @param color Color\n * @param backgroundColor string\n * @returns SerializedStyles\n */\n\n\n var getProgressMeterColorStyles = function (color) {\n var backgroundColor = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : sysColorBackgroundAlt;\n var meterColor = colorMapAccent.get(color);\n var label = \"container_color_\".concat(color);\n return css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral([\"\\n label: \", \";\\n progress {\\n color: \", \";\\n\\n &::-moz-progress-bar {\\n background-color: \", \";\\n }\\n\\n &::-webkit-progress-value {\\n background-color: \", \";\\n }\\n\\n &::-webkit-progress-bar {\\n background-color: \", \";\\n }\\n }\\n \"])), label, colorMapContrast.get(color), meterColor, meterColor, backgroundColor);\n };\n /**\n * Get the styles for the stroke color\n * @param color Color\n * @returns SerializedStyles\n */\n\n\n var getStrokeColorStyles = function (color) {\n var label = \"stroke_\".concat(color);\n return css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral([\"\\n label: \", \";\\n stroke: \", \";\\n \"])), label, colorMapAccent.get(color));\n };\n /**\n * Get the radius based on circle size\n * @param size Size [defaults to null]\n * @returns number\n */\n\n\n /**\n * Get the dash offset styles for the Circle Meter\n * @param maxDashOffset number\n * @param dashOffset number\n * @returns SerializedStyles\n */\n var getDashOffsetStyles = function (maxDashOffset, dashOffset) {\n return css(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral([\"\\n stroke-dasharray: \", \";\\n stroke-dashoffset: \", \";\\n \"])), maxDashOffset.toFixed(5), dashOffset.toFixed(5));\n };\n /**\n * Get the width and height of the bounding-box / wrapper of the Icon container\n * @param size Size;\n * @returns SerializedStyles\n */\n\n\n var getIconWrapStyles = function () {\n var size = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;\n var sizeValue = isSizeSmall(size) ? sysSizeIconSm : sysSizeIconLg;\n return css(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral([\"\\n label: icon_wrap;\\n width: \", \";\\n height: \", \";\\n \"])), sizeValue, sizeValue);\n };\n\n var base = css(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral([\"\\n label: progress-meter_base;\\n\\n & {\\n padding: \", \" \", \" \", \" \", \";\\n transition: value \", \";\\n }\\n\\n progress {\\n vertical-align: bottom;\\n width: 100%;\\n background-clip: content-box;\\n -webkit-background-clip: content-box;\\n border: \", \" solid transparent;\\n border-radius: \", \";\\n \", \"\\n margin-bottom: \", \";\\n\\n &::-moz-progress-bar {\\n margin-top: -\", \";\\n border-radius: \", \";\\n padding: 0;\\n }\\n\\n &::-webkit-progress-value {\\n margin-top: -\", \";\\n border-radius: \", \";\\n }\\n\\n &::-webkit-progress-bar {\\n border-radius: \", \";\\n }\\n }\\n\\n \", \";\\n \"])), sysSpaceXs, sysSpaceXl, sysSpaceXl, sysSpaceXl, sysMotionDurationArrive, sysBorderThicknessNormal, sysBorderRadiusSm, getProgressMeterHeightStyles(sysSizeIndicatorLg), sysSpaceSm, sysBorderThicknessNormal, sysBorderRadiusSm, sysBorderThicknessNormal, sysBorderRadiusSm, sysBorderRadiusSm, getProgressMeterColorStyles(Color.Accent3));\n var inverseLabel = css(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral([\"\\n label: inverse_label;\\n color: \", \";\\n \"])), sysColorBackgroundSurface);\n var inverseLabelSteps = css(_templateObject9 || (_templateObject9 = _taggedTemplateLiteral([\"\\n label: inverse_steps;\\n color: \", \";\\n \"])), sysColorSystemContrast);\n var inverseLabelTitle = css(_templateObject10 || (_templateObject10 = _taggedTemplateLiteral([\"\\n label: inverse_title;\\n color: \", \";\\n \"])), sysColorBackgroundSurface);\n var label = css(_templateObject11 || (_templateObject11 = _taggedTemplateLiteral([\"\\n label: label;\\n \", \";\\n \"])), textBody({}));\n var steps = css(_templateObject12 || (_templateObject12 = _taggedTemplateLiteral([\"\\n label: steps;\\n \", \"\\n letter-spacing: normal;\\n margin-right: \", \";\\n\\n [dir='rtl'] & {\\n margin-left: \", \";\\n }\\n \"])), textCaptionStrong({}), sysSpaceMd, sysSpaceXs);\n var title = css(_templateObject13 || (_templateObject13 = _taggedTemplateLiteral([\"\\n label: title;\\n \", \"\\n letter-spacing: normal;\\n \"])), textCaption({}));\n var labelSteps = css(_templateObject14 || (_templateObject14 = _taggedTemplateLiteral([\"\\n label: label_steps;\\n \", \"\\n margin-right: \", \";\\n \"])), textBody({}), sysSpaceXs);\n var labelTitle = css(_templateObject15 || (_templateObject15 = _taggedTemplateLiteral([\"\\n label: label_title;\\n \", \"\\n \"])), textBody({\n color: sysColorBackgroundMediumContrast\n }));\n var sizeSm = css(_templateObject16 || (_templateObject16 = _taggedTemplateLiteral([\"\\n label: size_sm;\\n progress {\\n \", \"\\n }\\n \"])), getProgressMeterHeightStyles(sysSizeIndicatorMd));\n var sizeSmLabel = css(_templateObject17 || (_templateObject17 = _taggedTemplateLiteral([\"\\n label: size_sm_label;\\n \", \"\\n \"])), textCaption({}));\n var sizeSmLabelSteps = css(_templateObject18 || (_templateObject18 = _taggedTemplateLiteral([\"\\n label: size_sm_steps;\\n \", \"\\n \"])), textCaption({}));\n var sizeSmLabelTitle = css(_templateObject19 || (_templateObject19 = _taggedTemplateLiteral([\"\\n label: size_sm_title;\\n \", \"\\n \"])), textCaption({\n color: sysColorBackgroundMediumContrast\n }));\n var sizeSmInverseLabelSteps = css(_templateObject20 || (_templateObject20 = _taggedTemplateLiteral([\"\\n label: size_sm_inverse_label_steps;\\n color: \", \";\\n \"])), sysColorSystemContrast);\n var sizeSmInverseLabelTitle = css(_templateObject21 || (_templateObject21 = _taggedTemplateLiteral([\"\\n label: size_sm_inverse_label_title;\\n color: \", \";\\n \"])), sysColorBackgroundSurface); // Circle progress meter Styles\n\n var circleBase = css(_templateObject22 || (_templateObject22 = _taggedTemplateLiteral([\"\\n label: circle-progress-meter_base;\\n position: relative;\\n border-radius: \", \";\\n border: \", \"rem solid \", \";\\n width: \", \"rem;\\n height: \", \"rem;\\n background-color: \", \";\\n padding: \", \";\\n flex-shrink: 0;\\n \"])), sysBorderRadiusInteractive, circleProgressMeterBorderSize, sysColorBackgroundAlt, circleProgressMeterSize, circleProgressMeterSize, sysColorBackgroundSurface, sysSpaceXs);\n var circleInner = css(_templateObject23 || (_templateObject23 = _taggedTemplateLiteral([\"\\n label: circle_inner;\\n border-radius: \", \";\\n width: 100%;\\n height: 100%;\\n display: flex;\\n justify-content: center;\\n align-items: center;\\n \", \"\\n \"])), sysBorderRadiusInteractive, getColorStyles(Color.Accent2));\n var circleInnerImage = css(_templateObject24 || (_templateObject24 = _taggedTemplateLiteral([\"\\n label: circle_inner_image;\\n width: 100%;\\n height: 100%;\\n border-radius: inherit;\\n \"])));\n var circleProgressIndicator = css(_templateObject25 || (_templateObject25 = _taggedTemplateLiteral([\"\\n label: progress_indicator;\\n position: absolute;\\n top: -\", \"rem;\\n left: -\", \"rem;\\n width: \", \"rem;\\n height: \", \"rem;\\n fill: none;\\n stroke-width: \", \"%;\\n stroke-linecap: round;\\n transform: rotate(-90deg);\\n transform-origin: 50% 50%;\\n \", \"\\n \"])), circleProgressMeterBorderSize, circleProgressMeterBorderSize, circleProgressMeterSize, circleProgressMeterSize, progressIndicatorCircleStrokeWidth.toFixed(5), getStrokeColorStyles(Color.Accent2));\n var circleSm = css(_templateObject26 || (_templateObject26 = _taggedTemplateLiteral([\"\\n label: size_sm;\\n width: \", \"rem;\\n height: \", \"rem;\\n border-width: \", \";\\n \"])), circleProgressMeterSmSize, circleProgressMeterSmSize, circleProgressMeterSmBorderSize);\n var circleSmProgressIndicator = css(_templateObject27 || (_templateObject27 = _taggedTemplateLiteral([\"\\n label: size_sm_progress_indicator;\\n top: -\", \";\\n left: -\", \";\\n width: \", \"rem;\\n height: \", \"rem;\\n stroke-width: \", \"%;\\n \"])), circleProgressMeterSmBorderSize, circleProgressMeterSmBorderSize, circleProgressMeterSmSize, circleProgressMeterSmSize, progressIndicatorCircleSmStrokeWidth);\n var textProgressMeterBase = css(_templateObject28 || (_templateObject28 = _taggedTemplateLiteral([\"\\n label: text_progress_meter_base;\\n padding: 0;\\n \"])));\n var textProgressMeterInnerText = css(_templateObject29 || (_templateObject29 = _taggedTemplateLiteral([\"\\n label: text_progress_meter_inner_text;\\n background-color: \", \";\\n \"])), sysColorBackgroundSurface);\n var textContent = css(_templateObject30 || (_templateObject30 = _taggedTemplateLiteral([\"\\n label: text_content;\\n overflow: hidden;\\n color: \", \";\\n \"])), sysColorBackgroundHighContrast);\n return {\n linear: {\n base: base,\n label: label,\n steps: steps,\n title: title,\n getProgressMeterColorStyles: getProgressMeterColorStyles,\n inverseLabel: inverseLabel,\n inverseLabelSteps: inverseLabelSteps,\n inverseLabelTitle: inverseLabelTitle,\n labelSteps: labelSteps,\n labelTitle: labelTitle,\n sizeSm: sizeSm,\n sizeSmLabel: sizeSmLabel,\n sizeSmLabelSteps: sizeSmLabelSteps,\n sizeSmLabelTitle: sizeSmLabelTitle,\n sizeSmInverseLabelSteps: sizeSmInverseLabelSteps,\n sizeSmInverseLabelTitle: sizeSmInverseLabelTitle\n },\n circle: {\n base: circleBase,\n inner: circleInner,\n progressIndicator: circleProgressIndicator,\n sizeSm: circleSm,\n progressIndicatorSizeSm: circleSmProgressIndicator,\n innerImage: circleInnerImage,\n circleRadiusSvg: circleRadiusSvg,\n getStrokeColorStyles: getStrokeColorStyles,\n getCircleRadius: function getCircleRadius() {\n var size = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;\n return isSizeSmall(size) ? circleRadiusSvg - progressIndicatorCircleSmStrokeWidth / 2 : circleRadiusSvg - progressIndicatorCircleStrokeWidth / 2;\n },\n getDashOffsetStyles: getDashOffsetStyles,\n getIconWrapStyles: getIconWrapStyles\n },\n text: {\n base: textProgressMeterBase,\n inner: textProgressMeterInnerText,\n content: textContent\n },\n util: {\n getColorStyles: getColorStyles,\n isSizeSmall: isSizeSmall\n }\n };\n}\n\nvar _excluded = [\"className\", \"id\", \"max\", \"value\", \"inverse\", \"steps\", \"size\", \"title\", \"color\"];\n\nvar ProgressMeter = function (_ref) {\n var _styles$util, _styles$util$isSizeSm, _styles$linear, _styles$linear2, _styles$linear3, _styles$linear4, _styles$linear5, _styles$linear5$getPr, _styles$linear6, _styles$linear7, _styles$linear8, _styles$linear9, _styles$linear10, _styles$linear11, _styles$linear12, _styles$linear13, _styles$linear14, _styles$linear15, _styles$linear16;\n\n var className = _ref.className,\n _ref$id = _ref.id,\n id = _ref$id === void 0 ? uniqueId('progressMeter_') : _ref$id,\n _ref$max = _ref.max,\n max = _ref$max === void 0 ? 0 : _ref$max,\n _ref$value = _ref.value,\n value = _ref$value === void 0 ? 0 : _ref$value,\n _ref$inverse = _ref.inverse,\n inverse = _ref$inverse === void 0 ? false : _ref$inverse,\n steps = _ref.steps,\n size = _ref.size,\n title = _ref.title,\n color = _ref.color,\n rest = _objectWithoutProperties(_ref, _excluded);\n\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n var isSizeSmall = (_styles$util = _styles.util) === null || _styles$util === void 0 ? void 0 : (_styles$util$isSizeSm = _styles$util.isSizeSmall) === null || _styles$util$isSizeSm === void 0 ? void 0 : _styles$util$isSizeSm.call(_styles$util, size);\n var labelStyles = [(_styles$linear = _styles.linear) === null || _styles$linear === void 0 ? void 0 : _styles$linear.label, inverse && ((_styles$linear2 = _styles.linear) === null || _styles$linear2 === void 0 ? void 0 : _styles$linear2.inverseLabel), isSizeSmall && ((_styles$linear3 = _styles.linear) === null || _styles$linear3 === void 0 ? void 0 : _styles$linear3.sizeSmLabel)];\n var computedColor = colorMap[color] || color;\n var progressMeterStyles = [(_styles$linear4 = _styles.linear) === null || _styles$linear4 === void 0 ? void 0 : _styles$linear4.base, color && ((_styles$linear5 = _styles.linear) === null || _styles$linear5 === void 0 ? void 0 : (_styles$linear5$getPr = _styles$linear5.getProgressMeterColorStyles) === null || _styles$linear5$getPr === void 0 ? void 0 : _styles$linear5$getPr.call(_styles$linear5, computedColor)), isSizeSmall && ((_styles$linear6 = _styles.linear) === null || _styles$linear6 === void 0 ? void 0 : _styles$linear6.sizeSm)];\n var stepsStyles = [(_styles$linear7 = _styles.linear) === null || _styles$linear7 === void 0 ? void 0 : _styles$linear7.steps, (_styles$linear8 = _styles.linear) === null || _styles$linear8 === void 0 ? void 0 : _styles$linear8.labelSteps, inverse && ((_styles$linear9 = _styles.linear) === null || _styles$linear9 === void 0 ? void 0 : _styles$linear9.inverseLabelSteps), isSizeSmall && ((_styles$linear10 = _styles.linear) === null || _styles$linear10 === void 0 ? void 0 : _styles$linear10.sizeSmLabelSteps), isSizeSmall && inverse && ((_styles$linear11 = _styles.linear) === null || _styles$linear11 === void 0 ? void 0 : _styles$linear11.sizeSmInverseLabelSteps)];\n var titleStyles = [(_styles$linear12 = _styles.linear) === null || _styles$linear12 === void 0 ? void 0 : _styles$linear12.title, (_styles$linear13 = _styles.linear) === null || _styles$linear13 === void 0 ? void 0 : _styles$linear13.labelTitle, inverse && ((_styles$linear14 = _styles.linear) === null || _styles$linear14 === void 0 ? void 0 : _styles$linear14.inverseLabelTitle), isSizeSmall && ((_styles$linear15 = _styles.linear) === null || _styles$linear15 === void 0 ? void 0 : _styles$linear15.sizeSmLabelTitle), isSizeSmall && inverse && ((_styles$linear16 = _styles.linear) === null || _styles$linear16 === void 0 ? void 0 : _styles$linear16.sizeSmInverseLabelTitle)];\n return jsx(\"div\", {\n css: progressMeterStyles,\n className: className,\n \"data-ppui-info\": \"progress-meter_3.6.1\"\n }, jsx(\"progress\", _extends({\n id: id,\n max: max,\n value: value\n }, rest, {\n \"data-ppui\": \"true\"\n })), jsx(\"label\", {\n css: labelStyles,\n htmlFor: id,\n \"data-ppui\": \"true\"\n }, steps && jsx(\"span\", {\n css: stepsStyles,\n \"data-ppui\": \"true\"\n }, steps), title && jsx(\"span\", {\n css: titleStyles,\n \"data-ppui\": \"true\"\n }, title)));\n};\n\nvar _excluded$1 = [\"className\", \"max\", \"value\", \"color\", \"label\", \"size\", \"children\", \"innerText\"],\n _excluded2 = [\"iconComponent\", \"size\"],\n _excluded3 = [\"imageSrc\"];\nvar CircleProgressMeter = forwardRef(function (props, ref) {\n var _styles$util, _styles$util$isSizeSm, _styles$circle, _styles$circle$getCir, _styles$circle2, _styles$text, _styles$circle3, _styles$circle4, _styles$circle5, _styles$circle6, _styles$circle7, _styles$circle7$getDa, _styles$circle8, _styles$util2, _styles$util2$getColo, _styles$text2, _styles$circle9, _styles$circle10;\n\n var className = props.className,\n _props$max = props.max,\n max = _props$max === void 0 ? 1 : _props$max,\n _props$value = props.value,\n value = _props$value === void 0 ? 0 : _props$value,\n color = props.color,\n label = props.label,\n size = props.size,\n children = props.children,\n innerText = props.innerText,\n rest = _objectWithoutProperties(props, _excluded$1);\n\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n var _utilStyles = utilStyles(tokens),\n screenReader = _utilStyles.screenReader;\n\n var isSizeSmall = (_styles$util = _styles.util) === null || _styles$util === void 0 ? void 0 : (_styles$util$isSizeSm = _styles$util.isSizeSmall) === null || _styles$util$isSizeSm === void 0 ? void 0 : _styles$util$isSizeSm.call(_styles$util, size);\n var radius = (_styles$circle = _styles.circle) === null || _styles$circle === void 0 ? void 0 : (_styles$circle$getCir = _styles$circle.getCircleRadius) === null || _styles$circle$getCir === void 0 ? void 0 : _styles$circle$getCir.call(_styles$circle, size);\n var maxDashOffset = 2 * Math.PI * radius;\n\n /* \n // Commenting out code related to draw out animation\n const [dashOffset, setDashOffset] = useState(maxDashOffset);\n useEffect(() => {\n const newDashOffset = maxDashOffset - (value / max) * maxDashOffset;\n setDashOffset(newDashOffset);\n }, [value]);\n */\n var computedColor = colorMap[color] || color;\n var baseStyles = [(_styles$circle2 = _styles.circle) === null || _styles$circle2 === void 0 ? void 0 : _styles$circle2.base, innerText && ((_styles$text = _styles.text) === null || _styles$text === void 0 ? void 0 : _styles$text.base), isSizeSmall && ((_styles$circle3 = _styles.circle) === null || _styles$circle3 === void 0 ? void 0 : _styles$circle3.sizeSm)];\n var iconStyles = [(_styles$circle4 = _styles.circle) === null || _styles$circle4 === void 0 ? void 0 : _styles$circle4.progressIndicator, color && ((_styles$circle5 = _styles.circle) === null || _styles$circle5 === void 0 ? void 0 : _styles$circle5.getStrokeColorStyles(computedColor)), isSizeSmall && ((_styles$circle6 = _styles.circle) === null || _styles$circle6 === void 0 ? void 0 : _styles$circle6.progressIndicatorSizeSm), (_styles$circle7 = _styles.circle) === null || _styles$circle7 === void 0 ? void 0 : (_styles$circle7$getDa = _styles$circle7.getDashOffsetStyles) === null || _styles$circle7$getDa === void 0 ? void 0 : _styles$circle7$getDa.call(_styles$circle7, maxDashOffset, maxDashOffset - value / max * maxDashOffset)];\n var circleInnerStyles = [(_styles$circle8 = _styles.circle) === null || _styles$circle8 === void 0 ? void 0 : _styles$circle8.inner, color && ((_styles$util2 = _styles.util) === null || _styles$util2 === void 0 ? void 0 : (_styles$util2$getColo = _styles$util2.getColorStyles) === null || _styles$util2$getColo === void 0 ? void 0 : _styles$util2$getColo.call(_styles$util2, computedColor)), innerText && ((_styles$text2 = _styles.text) === null || _styles$text2 === void 0 ? void 0 : _styles$text2.inner)];\n var renderContent = innerText ? function renderInnerText() {\n var _styles$text3;\n\n var textColor = [(_styles$text3 = _styles.text) === null || _styles$text3 === void 0 ? void 0 : _styles$text3.content];\n return size === 'sm' ? jsx(CaptionText, {\n css: textColor,\n \"data-ppui\": \"true\"\n }, innerText) : jsx(HeadingText, {\n size: \"sm\",\n css: textColor,\n \"data-ppui\": \"true\"\n }, innerText);\n }() : children;\n return jsx(\"div\", {\n css: baseStyles,\n className: className,\n \"data-ppui-info\": \"progress-meter_3.6.1\"\n }, jsx(\"svg\", {\n css: iconStyles,\n \"aria-hidden\": \"true\",\n viewBox: \"0 0 100 100\",\n xmlns: \"http://www.w3.org/2000/svg\",\n \"data-ppui\": \"true\"\n }, jsx(\"circle\", {\n cx: (_styles$circle9 = _styles.circle) === null || _styles$circle9 === void 0 ? void 0 : _styles$circle9.circleRadiusSvg,\n cy: (_styles$circle10 = _styles.circle) === null || _styles$circle10 === void 0 ? void 0 : _styles$circle10.circleRadiusSvg,\n r: radius,\n \"data-ppui\": \"true\"\n })), jsx(\"div\", {\n css: circleInnerStyles,\n \"aria-hidden\": \"true\",\n \"data-ppui\": \"true\"\n }, renderContent), jsx(\"label\", {\n css: screenReader,\n \"data-ppui\": \"true\"\n }, label, jsx(\"progress\", _extends({\n max: max,\n value: value\n }, rest, {\n ref: ref,\n \"data-ppui\": \"true\"\n }))));\n});\nvar IconProgressMeter = forwardRef(function (props, ref) {\n var _styles$util3, _styles$util3$isSizeS, _styles$circle11, _styles$circle11$getI;\n\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n var iconComponent = props.iconComponent,\n size = props.size,\n rest = _objectWithoutProperties(props, _excluded2);\n\n var iconSize = ((_styles$util3 = _styles.util) === null || _styles$util3 === void 0 ? void 0 : (_styles$util3$isSizeS = _styles$util3.isSizeSmall) === null || _styles$util3$isSizeS === void 0 ? void 0 : _styles$util3$isSizeS.call(_styles$util3, size)) ? Size.SMALL : Size.LARGE;\n return jsx(CircleProgressMeter, _extends({\n size: size,\n ref: ref\n }, rest, {\n \"data-ppui\": \"true\"\n }), jsx(\"div\", {\n css: (_styles$circle11 = _styles.circle) === null || _styles$circle11 === void 0 ? void 0 : (_styles$circle11$getI = _styles$circle11.getIconWrapStyles) === null || _styles$circle11$getI === void 0 ? void 0 : _styles$circle11$getI.call(_styles$circle11, size),\n \"data-ppui\": \"true\"\n }, jsx(iconComponent, {\n size: iconSize,\n \"data-ppui\": \"true\"\n })));\n});\nvar ImageProgressMeter = forwardRef(function (props, ref) {\n var _styles$circle12;\n\n var imageSrc = props.imageSrc,\n rest = _objectWithoutProperties(props, _excluded3);\n\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n return jsx(CircleProgressMeter, _extends({\n ref: ref\n }, rest, {\n \"data-ppui\": \"true\"\n }), jsx(\"img\", {\n src: imageSrc,\n css: (_styles$circle12 = _styles.circle) === null || _styles$circle12 === void 0 ? void 0 : _styles$circle12.innerImage,\n \"data-ppui\": \"true\"\n }));\n});\n\nexport { CircleProgressMeter, IconProgressMeter, ImageProgressMeter, ProgressMeter, styles as progressMeterStyles };\n","import _taggedTemplateLiteral from '@babel/runtime/helpers/esm/taggedTemplateLiteral';\nimport { css, useTheme, jsx } from '@emotion/react';\nimport { math } from 'polished';\nimport { textStyles } from '@paypalcorp/pp-react-text';\nimport { devWarning, utilStyles, uniqueId } from '@paypalcorp/pp-react-utils';\nimport _extends from '@babel/runtime/helpers/esm/extends';\nimport _objectWithoutProperties from '@babel/runtime/helpers/esm/objectWithoutProperties';\nimport React, { forwardRef, useMemo } from 'react';\nimport _defineProperty from '@babel/runtime/helpers/esm/defineProperty';\nimport { CriticalIcon } from '@paypalcorp/pp-react-icons';\n\nvar _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14, _templateObject15, _templateObject16;\nfunction styles(tokens) {\n /* istanbul ignore next */\n if (!Object.keys(tokens).length) {\n devWarning('Missing Emotion theme. Use ThemeProvider from @emotion/react to pass a valid theme from pp-react.');\n return {};\n }\n\n var sysBorderRadiusInteractive = tokens.sysBorderRadiusInteractive,\n sysBorderThicknessEmphasis = tokens.sysBorderThicknessEmphasis,\n sysBorderThicknessNormal = tokens.sysBorderThicknessNormal,\n sysColorBackgroundMediumContrast = tokens.sysColorBackgroundMediumContrast,\n sysColorBackgroundSurface = tokens.sysColorBackgroundSurface,\n sysColorBackgroundSurfaceActive = tokens.sysColorBackgroundSurfaceActive,\n sysColorErrorMain = tokens.sysColorErrorMain,\n sysColorSelectedMain = tokens.sysColorSelectedMain,\n sysColorStructureBorderHighContrast = tokens.sysColorStructureBorderHighContrast,\n sysSizeCircleXs = tokens.sysSizeCircleXs,\n sysSizeTapTargetSm = tokens.sysSizeTapTargetSm,\n sysSpaceSm = tokens.sysSpaceSm,\n sysSpaceMd = tokens.sysSpaceMd,\n sysSpaceXl = tokens.sysSpaceXl,\n sysSpaceXs = tokens.sysSpaceXs;\n var radiobuttonItemTextSpacing = math(\"\".concat(sysSpaceXl, \" + \").concat(sysSpaceMd));\n\n var _textStyles = textStyles(tokens),\n textCaption = _textStyles.caption,\n fieldLabelLg = _textStyles.fieldLabelLg,\n fieldValueSm = _textStyles.fieldValueSm;\n\n var _utilStyles = utilStyles(tokens),\n focusStyles = _utilStyles.focusStyles; // Base Class for radio-group\n\n\n var radioGroupBase = css(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n label: radio_group_base;\\n display: flex; // to avoid collapsing margins\\n flex-direction: column;\\n margin: 0;\\n padding: 0;\\n border: none;\\n text-align: left;\\n\\n [dir='rtl'] & {\\n text-align: right;\\n }\\n \"]))); // Base Class for radio\n\n var radioBase = css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n label: radio_base;\\n position: relative;\\n padding: \", \" 0;\\n text-align: left;\\n\\n [dir='rtl'] & {\\n text-align: right;\\n }\\n \"])), sysSpaceMd);\n var radioGroupLabel = css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral([\"\\n label: radio_group_label;\\n \", \";\\n display: block;\\n padding-bottom: \", \";\\n margin-bottom: \", \";\\n \"])), fieldLabelLg({\n color: sysColorBackgroundMediumContrast\n }), sysSpaceMd, sysSpaceXs);\n var radioGroupLabelWithIcon = css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral([\"\\n label: with_icon;\\n display: flex;\\n align-items: center;\\n min-height: \", \";\\n padding-bottom: 0;\\n \"])), sysSizeTapTargetSm);\n var radioGroupLabelIcon = css(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral([\"\\n label: radio_group_label-icon;\\n margin-inline-start: \", \";\\n \"])), sysSpaceSm);\n var radioLabel = css(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral([\"\\n label: radio_label;\\n -moz-osx-font-smoothing: grayscale;\\n cursor: pointer;\\n display: inline-block;\\n padding-left: \", \";\\n \", \"\\n position: relative;\\n -webkit-tap-highlight-color: transparent;\\n\\n [dir='rtl'] & {\\n padding-right: \", \";\\n padding-left: 0;\\n }\\n \"])), radiobuttonItemTextSpacing, fieldValueSm(), radiobuttonItemTextSpacing);\n var checkIconContainer = css(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral([\"\\n label: check_icon_container;\\n border-radius: \", \";\\n border: \", \" solid\\n \", \";\\n height: \", \";\\n position: absolute;\\n top: 0;\\n left: 0;\\n width: \", \";\\n background-color: \", \";\\n\\n [dir='rtl'] & {\\n right: 0;\\n }\\n \"])), sysBorderRadiusInteractive, sysBorderThicknessNormal, sysColorStructureBorderHighContrast, sysSizeCircleXs, sysSizeCircleXs, sysColorBackgroundSurface);\n var errorCheckIconContainer = css(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral([\"\\n label: error_check_icon_container;\\n border: \", \" solid \", \";\\n \"])), sysBorderThicknessEmphasis, sysColorErrorMain);\n var checkIcon = css(_templateObject9 || (_templateObject9 = _taggedTemplateLiteral([\"\\n label: check_icon;\\n display: none;\\n \"])));\n var input = css(_templateObject10 || (_templateObject10 = _taggedTemplateLiteral([\"\\n label: input;\\n cursor: pointer;\\n opacity: 0;\\n position: absolute;\\n margin: 0;\\n\\n &:checked + label > span:first-of-type {\\n border-color: \", \";\\n background-color: \", \";\\n color: \", \";\\n\\n span:first-of-type {\\n display: inline;\\n }\\n }\\n\\n &:focus + label > span:first-of-type {\\n \", \";\\n }\\n\\n &:active:not(:checked) + label > span:first-of-type {\\n background: \", \";\\n }\\n \"])), sysColorSelectedMain, sysColorSelectedMain, sysColorBackgroundSurface, focusStyles.focusOffsetElement, sysColorBackgroundSurfaceActive);\n var inputWithError = css(_templateObject11 || (_templateObject11 = _taggedTemplateLiteral([\"\\n label: input_with_error;\\n &:checked + label > span:first-of-type {\\n border: \", \" solid \", \";\\n }\\n \"])), sysBorderThicknessEmphasis, sysColorErrorMain);\n var centeredLabelCheckIconContainer = css(_templateObject12 || (_templateObject12 = _taggedTemplateLiteral([\"\\n label: centered_label_check_icon_container;\\n top: 50%;\\n transform: translateY(-50%);\\n \"])));\n var helperText = css(_templateObject13 || (_templateObject13 = _taggedTemplateLiteral([\"\\n label: helper_text;\\n \", \";\\n margin: 0;\\n list-style: none; // In case it's a list of helper texts\\n margin-top: \", \";\\n \"])), textCaption({\n color: sysColorBackgroundMediumContrast\n }), sysSpaceXs);\n var groupHelperText = css(_templateObject14 || (_templateObject14 = _taggedTemplateLiteral([\"\\n label: group_helper_text;\\n \", \";\\n margin: 0;\\n list-style: none; // In case it's a list of helper texts\\n \"])), textCaption({\n color: sysColorBackgroundMediumContrast\n }));\n var errorText = css(_templateObject15 || (_templateObject15 = _taggedTemplateLiteral([\"\\n label: error_text;\\n \", \";\\n display: flex;\\n margin: 0;\\n align-items: center;\\n \"])), textCaption({\n color: sysColorBackgroundMediumContrast\n }));\n var errorIcon = css(_templateObject16 || (_templateObject16 = _taggedTemplateLiteral([\"\\n label: error_icon;\\n color: \", \";\\n margin-right: \", \";\\n\\n [dir='rtl'] & {\\n margin-left: \", \";\\n margin-right: 0;\\n }\\n \"])), sysColorErrorMain, sysSpaceXs, sysSpaceXs);\n return {\n radioGroupBase: radioGroupBase,\n radioBase: radioBase,\n radioGroupLabel: radioGroupLabel,\n radioGroupLabelWithIcon: radioGroupLabelWithIcon,\n radioGroupLabelIcon: radioGroupLabelIcon,\n radioLabel: radioLabel,\n checkIconContainer: checkIconContainer,\n errorCheckIconContainer: errorCheckIconContainer,\n checkIcon: checkIcon,\n input: input,\n inputWithError: inputWithError,\n centeredLabelCheckIconContainer: centeredLabelCheckIconContainer,\n helperText: helperText,\n groupHelperText: groupHelperText,\n errorText: errorText,\n errorIcon: errorIcon\n };\n}\n\nvar _excluded = [\"label\", \"name\", \"value\", \"id\", \"centeredLabel\", \"helperText\", \"className\", \"labelClassName\", \"onChange\", \"checked\", \"errorText\"];\n\nvar renderHelperText = function (text, helperTextCssVals) {\n return text && jsx(\"p\", {\n css: helperTextCssVals,\n \"data-ppui\": \"true\"\n }, text);\n};\n\nvar inferValue = function (label) {\n if (typeof label === 'string') {\n return label;\n }\n\n return 'value_not_set';\n};\n\nvar RadioCheckIcon = function (props) {\n return jsx(\"span\", {\n css: props.checkIconCssVals,\n \"aria-hidden\": \"true\",\n \"data-ppui\": \"true\"\n }, jsx(\"svg\", {\n viewBox: \"0 0 100 100\",\n xmlns: \"http://www.w3.org/2000/svg\",\n \"data-ppui\": \"true\"\n }, jsx(\"circle\", {\n r: \"18\",\n cy: \"50\",\n cx: \"50\",\n strokeWidth: \"0\",\n fill: \"currentColor\",\n \"data-ppui\": \"true\"\n })));\n};\n\nvar Radio = forwardRef(function (_ref, ref) {\n var label = _ref.label,\n _ref$name = _ref.name,\n name = _ref$name === void 0 ? uniqueId() : _ref$name,\n _ref$value = _ref.value,\n value = _ref$value === void 0 ? inferValue(label) : _ref$value,\n _ref$id = _ref.id,\n id = _ref$id === void 0 ? \"Radio_\".concat(name, \"_\").concat(value) : _ref$id,\n _ref$centeredLabel = _ref.centeredLabel,\n centeredLabel = _ref$centeredLabel === void 0 ? false : _ref$centeredLabel,\n helperText = _ref.helperText,\n className = _ref.className,\n labelClassName = _ref.labelClassName,\n onChange = _ref.onChange,\n _ref$checked = _ref.checked,\n checked = _ref$checked === void 0 ? false : _ref$checked,\n errorText = _ref.errorText,\n rest = _objectWithoutProperties(_ref, _excluded);\n\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n var checkedPropName = onChange ? 'checked' : 'defaultChecked';\n var valueProps = {\n onChange: onChange\n };\n valueProps[checkedPropName] = checked;\n var inputCssVals = [_styles.input, !!errorText && _styles.inputWithError];\n var checkIconContainerCssVals = [_styles.checkIconContainer, !!errorText && _styles.errorCheckIconContainer, centeredLabel && _styles.centeredLabelCheckIconContainer];\n return jsx(\"div\", {\n css: _styles.radioBase,\n className: className,\n \"data-ppui-info\": \"radio_3.7.6\"\n }, jsx(\"input\", _extends({\n css: inputCssVals,\n type: \"radio\",\n name: name,\n value: value,\n id: id,\n ref: ref\n }, valueProps, rest, {\n \"data-ppui\": \"true\"\n })), jsx(\"label\", {\n css: _styles.radioLabel,\n className: labelClassName,\n htmlFor: id,\n \"data-ppui\": \"true\"\n }, jsx(\"span\", {\n css: checkIconContainerCssVals,\n \"data-ppui\": \"true\"\n }, jsx(RadioCheckIcon, {\n checkIconCssVals: _styles.checkIcon,\n \"data-ppui\": \"true\"\n })), label, renderHelperText(helperText, _styles.helperText)));\n});\n\nvar _excluded$1 = [\"as\", \"children\", \"className\"];\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nvar FieldGroupLabel = function (_ref) {\n var as = _ref.as,\n children = _ref.children,\n className = _ref.className,\n rest = _objectWithoutProperties(_ref, _excluded$1);\n\n var componentProps = _objectSpread({\n className: className,\n children: children\n }, rest);\n\n return /*#__PURE__*/React.createElement(as || 'legend', _extends({}, componentProps, {\n \"data-ppui\": \"true\"\n }));\n};\n\nvar FieldGroupMessage = function (_ref) {\n var errorText = _ref.errorText,\n helperText = _ref.helperText,\n errorIconAriaLabel = _ref.errorIconAriaLabel,\n msgId = _ref.msgId,\n _styles = _ref._styles;\n // Get either the error message or helper text or... nothing\n var radioErrorIcon = jsx(CriticalIcon, {\n css: _styles.errorIcon,\n size: \"sm\",\n role: \"img\",\n \"aria-label\": errorIconAriaLabel,\n \"data-ppui\": \"true\"\n });\n return errorText && jsx(\"p\", {\n css: _styles.errorText,\n id: msgId,\n \"data-ppui\": \"true\"\n }, radioErrorIcon, errorText) || helperText && jsx(\"p\", {\n css: _styles.groupHelperText,\n id: msgId,\n \"data-ppui\": \"true\"\n }, helperText) || null;\n};\n\nvar _excluded$2 = [\"className\", \"radioLabelClassName\", \"errorText\", \"errorIconAriaLabel\", \"helperText\", \"id\", \"label\", \"name\", \"value\", \"icon\", \"options\", \"onChange\"];\n\nfunction ownKeys$1(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread$1(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$1(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$1(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nvar RadioButton = function (_ref) {\n var className = _ref.className,\n radioLabelClassName = _ref.radioLabelClassName,\n errorText = _ref.errorText,\n _ref$errorIconAriaLab = _ref.errorIconAriaLabel,\n errorIconAriaLabel = _ref$errorIconAriaLab === void 0 ? 'Error' : _ref$errorIconAriaLab,\n helperText = _ref.helperText,\n id = _ref.id,\n label = _ref.label,\n _ref$name = _ref.name,\n name = _ref$name === void 0 ? 'radioButton' : _ref$name,\n _ref$value = _ref.value,\n value = _ref$value === void 0 ? '' : _ref$value,\n icon = _ref.icon,\n _ref$options = _ref.options,\n options = _ref$options === void 0 ? [] : _ref$options,\n onChange = _ref.onChange,\n rest = _objectWithoutProperties(_ref, _excluded$2);\n\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n var radioId = id !== null && id !== void 0 ? id : uniqueId('RadioButtton_');\n var msgId = \"message_\".concat(radioId);\n var fieldGroupLabelCssVal = [_styles.radioGroupLabel, icon && _styles.radioGroupLabelWithIcon];\n return (//@ts-ignore\n jsx(\"fieldset\", _extends({\n css: _styles.radioGroupBase,\n className: className,\n \"data-ppui-info\": \"radio_3.7.6\"\n }, rest), jsx(FieldGroupLabel, {\n css: fieldGroupLabelCssVal,\n \"data-ppui\": \"true\"\n }, label, icon && jsx(\"span\", {\n css: _styles.radioGroupLabelIcon,\n \"data-ppui\": \"true\"\n }, icon)), function renderRadios(optionsList, componentName, currentValue, changeHandler) {\n if (optionsList.length === 0) {\n return jsx(\"i\", {\n \"data-ppui\": \"true\"\n }, \"No Options!\");\n }\n\n return optionsList.map(function (listProps, index) {\n var checkedPropName = changeHandler ? 'checked' : 'defaultChecked';\n\n var radioProps = _objectSpread$1(_objectSpread$1({}, listProps), {}, {\n labelClassName: radioLabelClassName\n });\n\n if (currentValue === listProps.value) {\n radioProps[checkedPropName] = true;\n }\n\n return jsx(Radio, _extends({\n key: \"rbtn-item\".concat(index),\n name: componentName,\n onChange: changeHandler,\n errorText: errorText\n }, radioProps, rest, {\n \"data-ppui\": \"true\"\n }));\n });\n }(options, name, value, onChange), jsx(FieldGroupMessage, {\n errorText: errorText,\n helperText: helperText,\n errorIconAriaLabel: errorIconAriaLabel,\n msgId: msgId,\n _styles: _styles,\n \"data-ppui\": \"true\"\n }))\n );\n};\n\nexport { Radio, RadioButton, styles as radioStyles };\n","import _extends from '@babel/runtime/helpers/esm/extends';\nimport _objectWithoutProperties from '@babel/runtime/helpers/esm/objectWithoutProperties';\nimport React, { useMemo, useRef, useLayoutEffect } from 'react';\nimport _taggedTemplateLiteral from '@babel/runtime/helpers/esm/taggedTemplateLiteral';\nimport { css, useTheme, jsx } from '@emotion/react';\nimport { devWarning, utilStyles, throttle, KeyboardCode } from '@paypalcorp/pp-react-utils';\nimport { textStyles } from '@paypalcorp/pp-react-text';\n\nvar _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7;\nfunction styles(tokens) {\n /* istanbul ignore next */\n if (!Object.keys(tokens).length) {\n devWarning('Missing Emotion theme. Use ThemeProvider from @emotion/react to pass a valid theme from pp-react.');\n return {};\n }\n\n var sysBorderRadiusInteractive = tokens.sysBorderRadiusInteractive,\n sysColorBackgroundAlt = tokens.sysColorBackgroundAlt,\n sysColorBackgroundMediumContrast = tokens.sysColorBackgroundMediumContrast,\n sysColorPrimaryContrast = tokens.sysColorPrimaryContrast,\n sysColorPrimaryMain = tokens.sysColorPrimaryMain,\n sysColorStructureBorderHighContrast = tokens.sysColorStructureBorderHighContrast,\n sysMotionDurationMoveSmall = tokens.sysMotionDurationMoveSmall,\n sysBorderThicknessNormal = tokens.sysBorderThicknessNormal,\n sysColorStructureFocus = tokens.sysColorStructureFocus,\n sysSpaceSm = tokens.sysSpaceSm,\n sysBorderThicknessEmphasis = tokens.sysBorderThicknessEmphasis;\n\n var _utilStyles = utilStyles(tokens),\n focusStyles = _utilStyles.focusStyles,\n variables = _utilStyles.variables;\n\n var _textStyles = textStyles(tokens),\n textCaption = _textStyles.caption;\n /* istanbul ignore next */\n\n\n var borderRadius = sysBorderRadiusInteractive === '50%' ? '64rem' : sysBorderRadiusInteractive;\n var webkitSize = '0.0421875rem';\n var segmentedControllerSpace = '0.1875rem'; // 3px\n\n var tabWrapBaseStyles = css(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n label: segmented_controller_tab_wrap_base;\\n background-color: \", \";\\n border-radius: \", \";\\n display: flex;\\n align-items: stretch;\\n justify-content: flex-start;\\n position: relative;\\n padding: \", \";\\n gap: \", \";\\n \"])), sysColorBackgroundAlt, borderRadius, segmentedControllerSpace, segmentedControllerSpace);\n var tabStyles = css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n label: segmented_controller_tab;\\n border-radius: inherit;\\n position: relative;\\n background-color: transparent;\\n width: 100%;\\n border: 0;\\n min-width: 0;\\n padding: 0;\\n cursor: pointer;\\n \", \"\\n z-index: 1;\\n\\n &:focus {\\n \", \";\\n }\\n\\n @media (hover: hover) {\\n &:hover {\\n &:not(:focus) {\\n span {\\n outline: \", \" solid\\n \", \";\\n }\\n }\\n }\\n }\\n\\n &[aria-selected='true'] {\\n label: tab_aria_selected;\\n \", \"\\n -webkit-text-stroke-width: \", \";\\n\\n span {\\n color: \", \";\\n }\\n &:focus {\\n span {\\n outline-offset: -\", \";\\n outline: \", \" solid\\n \", \";\\n }\\n }\\n }\\n \"])), textCaption(), focusStyles.focusOffsetElement, sysBorderThicknessEmphasis, sysColorStructureFocus, textCaption(), webkitSize, sysColorPrimaryMain, sysBorderThicknessNormal, sysBorderThicknessNormal, sysColorStructureBorderHighContrast);\n var tabSlider = css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral([\"\\n label: slider;\\n position: absolute;\\n top: 0;\\n left: 0;\\n width: 0;\\n height: 0;\\n background: \", \";\\n border-radius: \", \";\\n -webkit-text-stroke-width: \", \";\\n transition: all \", \" \", \";\\n \"])), sysColorPrimaryContrast, borderRadius, webkitSize, sysMotionDurationMoveSmall, variables.ppuiEaseMoveSmall);\n var tabTitleStyles = css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral([\"\\n label: tab_title_base;\\n display: flex;\\n flex-wrap: wrap;\\n justify-content: center;\\n align-items: center;\\n height: 100%;\\n word-break: break-word;\\n border: \", \" solid transparent;\\n padding: \", \";\\n border-radius: inherit;\\n color: \", \";\\n pointer-events: none;\\n \"])), sysBorderThicknessNormal, sysSpaceSm, sysColorBackgroundMediumContrast);\n var tabContentStyles = css(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral([\"\\n label: tab_content;\\n\\n &[aria-hidden='true'] {\\n display: none;\\n }\\n \"])));\n var tabContentVisible = css(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral([\"\\n label: tab_content_visible;\\n display: block;\\n \"])));\n var tabContentHidden = css(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral([\"\\n label: tab_content_hidden;\\n display: none;\\n \"])));\n return {\n tabWrapBaseStyles: tabWrapBaseStyles,\n tabStyles: tabStyles,\n tabSlider: tabSlider,\n tabTitleStyles: tabTitleStyles,\n tabContentStyles: tabContentStyles,\n tabContentVisible: tabContentVisible,\n tabContentHidden: tabContentHidden\n };\n}\n\nvar _excluded = [\"id\", \"tabIdx\", \"label\", \"segmentedControllerId\", \"panelId\", \"selected\", \"onClick\", \"className\"];\nvar SegmentedControllerTab = React.forwardRef(function (_ref, ref) {\n var id = _ref.id,\n tabIdx = _ref.tabIdx,\n label = _ref.label,\n segmentedControllerId = _ref.segmentedControllerId,\n panelId = _ref.panelId,\n selected = _ref.selected,\n onClick = _ref.onClick,\n className = _ref.className,\n rest = _objectWithoutProperties(_ref, _excluded);\n\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n var focusable = selected ? 0 : -1;\n var tabId = id || \"\".concat(segmentedControllerId, \"-tab\").concat(parseInt(tabIdx, 10) + 1);\n var tabStyles = [_styles.tabStyles];\n return jsx(\"button\", _extends({\n \"data-tab-index\": tabIdx,\n id: tabId,\n css: tabStyles,\n className: className,\n \"aria-controls\": panelId,\n \"aria-selected\": selected,\n tabIndex: focusable,\n type: \"button\",\n role: \"tab\",\n ref: ref\n }, rest, {\n onClick: onClick,\n \"data-ppui\": \"true\"\n }), jsx(\"span\", {\n css: _styles.tabTitleStyles,\n \"data-ppui\": \"true\"\n }, label));\n});\n\nvar _excluded$1 = [\"id\", \"panelId\", \"label\"];\n\nvar getRefCurrent = function (myRef) {\n return (\n /* istanbul ignore next */\n myRef && myRef.current ? myRef.current : null\n );\n};\n\nvar SegmentedControllerTabs = function (_ref) {\n var _ref$name = _ref.name,\n name = _ref$name === void 0 ? 'segmentedController' : _ref$name,\n selectedTabIdx = _ref.selectedTabIdx,\n _ref$tabs = _ref.tabs,\n tabs = _ref$tabs === void 0 ? [] : _ref$tabs,\n onClick = _ref.onClick,\n className = _ref.className,\n tabClassName = _ref.tabClassName,\n tabsWrapperClassName = _ref.tabsWrapperClassName,\n keepAlive = _ref.keepAlive,\n lazyLoad = _ref.lazyLoad,\n children = _ref.children;\n\n /* istanbul ignore next */\n if (!onClick) {\n devWarning('Required prop `onClick` is missing');\n }\n\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n var containerEleRef = useRef();\n var prevSelectedTabIdxRef = useRef(0);\n var isTabsFocusedRef = useRef(false);\n var focusedIdxRef = useRef();\n var sliderRef = useRef();\n var tabRef = useRef([]);\n\n var getSelectedTabIdx = function () {\n var index = Math.floor(selectedTabIdx);\n\n if (!selectedTabIdx || !index || index >= tabs.length || index < 0) {\n return 0;\n }\n\n return index;\n };\n\n var getWrapperCurrent = function (w) {\n return (\n /* istanbul ignore next */\n w && w.current ? w.current : null\n );\n }; // apply styles to the slider element based on the\n // dimention of the tab\n\n\n var applySliderStyles = function (element) {\n var _element$offsetParent;\n\n var slider = getWrapperCurrent(sliderRef);\n slider.style.left = \"\".concat((element === null || element === void 0 ? void 0 : element.getBoundingClientRect().left) - (element === null || element === void 0 ? void 0 : (_element$offsetParent = element.offsetParent) === null || _element$offsetParent === void 0 ? void 0 : _element$offsetParent.getBoundingClientRect().left), \"px\");\n slider.style.width = \"\".concat(element === null || element === void 0 ? void 0 : element.getBoundingClientRect().width, \"px\");\n slider.style.top = \"\".concat(element === null || element === void 0 ? void 0 : element.offsetTop, \"px\");\n slider.style.height = \"\".concat(element === null || element === void 0 ? void 0 : element.offsetHeight, \"px\");\n };\n\n var offsetFocus = function (offset) {\n var container = getRefCurrent(containerEleRef);\n var tabDomItems = container.querySelectorAll('[role=\"tab\"]');\n var nextIndex = focusedIdxRef.current + offset;\n var index;\n /* istanbul ignore next */\n\n if (nextIndex === tabs.length) {\n index = 0;\n } else if (nextIndex === -1) {\n index = tabs.length - 1;\n } else {\n index = nextIndex;\n }\n\n tabDomItems[index].focus();\n focusedIdxRef.current = index;\n };\n\n var keyHandler = function (event) {\n if (!isTabsFocusedRef.current) {\n return;\n }\n\n var selectedIndex = getSelectedTabIdx();\n /* istanbul ignore next */\n\n var KeyCode = new KeyboardCode(event.key || event.keyCode);\n\n if (KeyCode.IS_ARROW_LEFT) {\n offsetFocus(-1);\n } else if (KeyCode.IS_ARROW_RIGHT) {\n offsetFocus(1);\n } else if (KeyCode.IS_ENTER || KeyCode.IS_SPACEBAR) {\n /* istanbul ignore next */\n if (selectedIndex !== focusedIdxRef.current) {\n onClick(event, focusedIdxRef.current);\n }\n }\n };\n\n useLayoutEffect(function () {\n prevSelectedTabIdxRef.current = getSelectedTabIdx();\n }, [tabs, selectedTabIdx, onClick]);\n useLayoutEffect(function () {\n // For the first time during initialisation\n focusedIdxRef.current = getSelectedTabIdx();\n /* istanbul ignore next */\n\n var resizeObserver = window.ResizeObserver ? new ResizeObserver(throttle(function () {\n applySliderStyles(tabRef.current[focusedIdxRef.current]);\n }, 100)) : null;\n /* istanbul ignore next */\n\n if (window.ResizeObserver) {\n resizeObserver.observe(containerEleRef.current);\n }\n\n return function () {\n /* istanbul ignore next */\n if (resizeObserver) {\n resizeObserver.disconnect();\n }\n };\n }, [selectedTabIdx]);\n\n var handleClick = function (event) {\n var tabIdxClicked = parseInt(event.currentTarget.getAttribute('data-tab-index'), 10);\n event.currentTarget.focus(); // This is tested, but coverage not registering it\n\n /* istanbul ignore next */\n\n if (!isNaN(tabIdxClicked)) {\n focusedIdxRef.current = tabIdxClicked;\n }\n\n applySliderStyles(event.target);\n onClick(event, tabIdxClicked);\n };\n\n var selectedIndex = getSelectedTabIdx();\n var selectedId;\n var tabItems = tabs.map(function (tabProps, index) {\n var id = tabProps.id,\n panelId = tabProps.panelId,\n label = tabProps.label,\n rest = _objectWithoutProperties(tabProps, _excluded$1);\n\n var keyIdentifier = \"\".concat(name, \"-tab\").concat(index + 1); // update animation (only on the selected tab)\n\n if (index === selectedIndex) {\n selectedId = id || keyIdentifier;\n }\n\n return jsx(SegmentedControllerTab, _extends({\n key: keyIdentifier,\n id: id,\n tabIdx: index.toString(),\n label: label,\n ref: function ref(el) {\n return tabRef.current[index] = el;\n },\n segmentedControllerId: name,\n panelId: panelId,\n selected: index === selectedIndex,\n onClick: handleClick,\n className: tabClassName\n }, rest, {\n \"data-ppui\": \"true\"\n }));\n });\n var tabContent = null;\n\n if (keepAlive || lazyLoad) {\n tabContent = React.Children.toArray(children).map(function (_panel, index) {\n var isSelected = selectedIndex === index;\n return React.cloneElement(_panel, {\n hidden: !isSelected,\n tabId: isSelected ? selectedId : undefined,\n visible: keepAlive ? true : isSelected\n });\n });\n } else {\n var tabPanel = React.Children.toArray(children).filter(function (_panel, index) {\n return selectedIndex === index;\n })[0];\n tabContent = React.cloneElement(tabPanel, {\n tabId: selectedId,\n hidden: false\n });\n }\n\n return jsx(\"div\", {\n ref: containerEleRef,\n id: name,\n className: className,\n \"data-ppui-info\": \"segmented-controller_2.10.0\"\n }, jsx(\"div\", {\n id: \"\".concat(name, \"-tabs\"),\n css: _styles.tabWrapBaseStyles,\n className: tabsWrapperClassName,\n role: \"tablist\",\n onFocus: function handleFocus() {\n isTabsFocusedRef.current = true;\n },\n onBlur: function handleFocusOut() {\n isTabsFocusedRef.current = false;\n },\n onKeyDown: function onKeyDown(evt) {\n return keyHandler(evt);\n },\n \"data-ppui\": \"true\"\n }, tabItems, jsx(\"div\", {\n css: _styles.tabSlider,\n ref: sliderRef,\n \"data-ppui\": \"true\"\n })), tabContent);\n};\n\nvar _excluded$2 = [\"id\", \"tabId\", \"className\", \"hidden\", \"children\", \"visible\"];\n\nvar SegmentedControllerPanel = function (_ref) {\n var id = _ref.id,\n tabId = _ref.tabId,\n className = _ref.className,\n hidden = _ref.hidden,\n children = _ref.children,\n _ref$visible = _ref.visible,\n visible = _ref$visible === void 0 ? true : _ref$visible,\n rest = _objectWithoutProperties(_ref, _excluded$2);\n\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]); // MutableRefObject variable to determine whether to render the component or not.\n\n\n var hasRendered = useRef(visible);\n /* istanbul ignore next */\n\n if (visible && !hasRendered.current) {\n hasRendered.current = true;\n }\n /* istanbul ignore next */\n\n\n if (!hasRendered.current) {\n // Do not re-render the Panel when its already present in the DOM.\n return null;\n }\n\n var panelContentStyles = [_styles.tabContentStyles,\n /* istanbul ignore next */\n visible ? _styles.tabContentVisible : _styles.tabContentHidden];\n return jsx(\"div\", _extends({\n id: id,\n css: panelContentStyles,\n className: className,\n \"aria-labelledby\": tabId,\n \"aria-hidden\": hidden,\n tabIndex: 0,\n role: \"tabpanel\"\n }, rest, {\n \"data-ppui\": \"true\"\n }), children);\n};\n\nexport { SegmentedControllerTabs as SegmentedController, SegmentedControllerPanel, SegmentedControllerTab, styles as segmentedControllerStyles };\n","import _extends from '@babel/runtime/helpers/esm/extends';\nimport _objectWithoutProperties from '@babel/runtime/helpers/esm/objectWithoutProperties';\nimport React, { forwardRef, useMemo } from 'react';\nimport { CheckmarkSmIcon } from '@paypalcorp/pp-react-icons';\nimport _defineProperty from '@babel/runtime/helpers/esm/defineProperty';\nimport { css, useTheme, jsx } from '@emotion/react';\nimport _taggedTemplateLiteral from '@babel/runtime/helpers/esm/taggedTemplateLiteral';\nimport { math } from 'polished';\nimport { textStyles } from '@paypalcorp/pp-react-text';\nimport { devWarning, utilStyles, uniqueId } from '@paypalcorp/pp-react-utils';\n\nvar _excluded = [\"as\", \"children\", \"className\"];\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nvar IfNotEmpty = function (_ref) {\n var _ref$as = _ref.as,\n as = _ref$as === void 0 ? 'span' : _ref$as,\n children = _ref.children,\n className = _ref.className,\n rest = _objectWithoutProperties(_ref, _excluded);\n\n return children ? React.createElement(as, _objectSpread({\n className: className\n }, rest), children) : null;\n};\n\nvar _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12;\nfunction styles(tokens) {\n /* istanbul ignore next */\n if (!Object.keys(tokens).length) {\n devWarning('Missing Emotion theme. Use ThemeProvider from @emotion/react to pass a valid theme from pp-react.');\n return {};\n }\n\n var sysBorderRadiusInteractive = tokens.sysBorderRadiusInteractive,\n sysBorderThicknessNormal = tokens.sysBorderThicknessNormal,\n sysColorBackgroundMediumContrast = tokens.sysColorBackgroundMediumContrast,\n sysColorSelectedMain = tokens.sysColorSelectedMain,\n sysColorSelectedMainHover = tokens.sysColorSelectedMainHover,\n sysColorSelectedContrast = tokens.sysColorSelectedContrast,\n sysColorStructureBorderHighContrast = tokens.sysColorStructureBorderHighContrast,\n sysColorUnselectedMainHover = tokens.sysColorUnselectedMainHover,\n sysColorUnselectedMain = tokens.sysColorUnselectedMain,\n sysMotionDurationMoveSmall = tokens.sysMotionDurationMoveSmall,\n sysSizeCircleSm = tokens.sysSizeCircleSm,\n sysSpaceXs = tokens.sysSpaceXs,\n sysSpaceMd = tokens.sysSpaceMd,\n sysSpaceXl = tokens.sysSpaceXl;\n\n var _textStyles = textStyles(tokens),\n textBody = _textStyles.body,\n caption = _textStyles.caption;\n\n var _utilStyles = utilStyles(tokens),\n focusStyles = _utilStyles.focusStyles,\n variables = _utilStyles.variables;\n\n var switchIndicatorWidth = '3.5rem';\n var switchBorderRadius = math(\"\".concat(sysSizeCircleSm, \" / 2\"));\n var switchTranslateWidth = math(\"\".concat(switchIndicatorWidth, \" - \").concat(sysSizeCircleSm));\n var base = css(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n label: switch_base;\\n position: relative;\\n text-align: left;\\n\\n [dir='rtl'] & {\\n text-align: right;\\n }\\n \"])));\n var label = css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n label: label;\\n \", \";\\n display: block;\\n margin-bottom: \", \";\\n\\n [dir='rtl'] & {\\n padding-right: 0;\\n padding-left: \", \";\\n }\\n \"])), textBody(), sysSpaceMd, sysSpaceXl);\n var secondaryLabel = css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral([\"\\n label: secondary_label;\\n display: block;\\n \", \";\\n \"])), textBody({\n color: sysColorBackgroundMediumContrast\n }));\n var inline = css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral([\"\\n label: inline;\\n display: flex;\\n flex-wrap: wrap;\\n align-items: center;\\n width: 100%;\\n \"])));\n var inlineLabel = css(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral([\"\\n label: inline_label;\\n flex: 1 1 0;\\n text-align: start;\\n padding-right: \", \";\\n margin-bottom: 0;\\n\\n [dir='rtl'] & {\\n padding-right: 0;\\n padding-left: \", \";\\n }\\n \"])), sysSpaceXl, sysSpaceXl);\n var inlineHelperText = css(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral([\"\\n label: inline_helper_text;\\n flex: 0 0 100%;\\n \"])));\n var container = css(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral([\"\\n label: container;\\n width: \", \";\\n height: \", \";\\n position: relative;\\n \"])), switchIndicatorWidth, sysSizeCircleSm);\n var state = css(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral([\"\\n label: state;\\n display: inline-block;\\n width: \", \";\\n height: \", \";\\n cursor: pointer;\\n border: \", \" solid\\n \", \";\\n border-radius: \", \";\\n background-color: \", \";\\n\\n > span {\\n visibility: hidden;\\n width: 0.0625rem;\\n height: 0.0625rem;\\n overflow: hidden;\\n position: absolute;\\n white-space: nowrap;\\n }\\n \"])), switchIndicatorWidth, sysSizeCircleSm, sysBorderThicknessNormal, sysColorStructureBorderHighContrast, switchBorderRadius, sysColorUnselectedMain);\n var handler = css(_templateObject9 || (_templateObject9 = _taggedTemplateLiteral([\"\\n label: handler;\\n position: absolute;\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n pointer-events: none;\\n top: 0;\\n left: 0;\\n width: \", \";\\n height: \", \";\\n background-color: \", \";\\n border-radius: \", \";\\n border: \", \" solid\\n \", \";\\n transition: \", \" \", \";\\n \"])), sysSizeCircleSm, sysSizeCircleSm, sysColorSelectedContrast, sysBorderRadiusInteractive, sysBorderThicknessNormal, sysColorStructureBorderHighContrast, sysMotionDurationMoveSmall, variables.ppuiEaseMoveSmall);\n var selectedIcon = css(_templateObject10 || (_templateObject10 = _taggedTemplateLiteral([\"\\n label: selected_icon;\\n display: none;\\n color: \", \";\\n \"])), sysColorSelectedMain);\n var control = css(_templateObject11 || (_templateObject11 = _taggedTemplateLiteral([\"\\n label: control;\\n opacity: 0;\\n position: absolute;\\n\\n &:focus ~ label {\\n \", \"\\n }\\n\\n &:hover ~ label {\\n background-color: \", \";\\n }\\n\\n &:checked ~ label {\\n background-color: \", \";\\n border: \", \" solid \", \";\\n }\\n\\n &:checked ~ span {\\n transform: translateX(\", \");\\n border: \", \" solid \", \";\\n }\\n\\n &:checked + label + span > span:first-of-type {\\n display: inline-block;\\n }\\n\\n &:checked:hover ~ label {\\n background-color: \", \";\\n }\\n \"])), focusStyles.focusOffsetElement, sysColorUnselectedMainHover, sysColorSelectedMain, sysBorderThicknessNormal, sysColorSelectedMain, switchTranslateWidth, sysBorderThicknessNormal, sysColorSelectedMain, sysColorSelectedMainHover);\n var helperText = css(_templateObject12 || (_templateObject12 = _taggedTemplateLiteral([\"\\n label: helper_text;\\n margin-top: \", \";\\n list-style: none;\\n padding-left: 0;\\n \", \"\\n \"])), sysSpaceXs, caption({\n color: sysColorBackgroundMediumContrast\n }));\n return {\n base: base,\n label: label,\n secondaryLabel: secondaryLabel,\n inline: inline,\n inlineLabel: inlineLabel,\n inlineHelperText: inlineHelperText,\n container: container,\n state: state,\n control: control,\n handler: handler,\n selectedIcon: selectedIcon,\n helperText: helperText\n };\n}\n\nvar _excluded$1 = [\"checked\", \"inline\", \"className\", \"inputClassName\", \"labelClassName\", \"helperText\", \"hideLabel\", \"id\", \"label\", \"secondaryLabel\", \"onChange\", \"required\", \"value\"];\nvar Switch = forwardRef(function (_ref, ref) {\n var checked = _ref.checked,\n inline = _ref.inline,\n className = _ref.className,\n inputClassName = _ref.inputClassName,\n labelClassName = _ref.labelClassName,\n helperText = _ref.helperText,\n hideLabel = _ref.hideLabel,\n _ref$id = _ref.id,\n id = _ref$id === void 0 ? uniqueId('Switch_') : _ref$id,\n label = _ref.label,\n secondaryLabel = _ref.secondaryLabel,\n onChange = _ref.onChange,\n required = _ref.required,\n value = _ref.value,\n rest = _objectWithoutProperties(_ref, _excluded$1);\n\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n var containerCSSVal = [_styles.base, inline && _styles.inline];\n var labelCssVal = [_styles.label, inline && _styles.inlineLabel];\n var helperCssVal = [_styles.helperText, inline && _styles.inlineHelperText];\n var messageId = \"message_\".concat(id);\n var labelId = \"label_\".concat(id);\n var valueProps = onChange ? {\n onChange: onChange,\n checked: checked\n } : {\n defaultChecked: checked\n };\n return jsx(\"div\", {\n css: containerCSSVal,\n className: className,\n \"data-ppui-info\": \"switch_3.6.5\"\n }, !hideLabel && jsx(\"span\", {\n id: labelId,\n css: labelCssVal,\n \"data-ppui\": \"true\"\n }, label, jsx(IfNotEmpty, {\n as: \"div\",\n css: _styles.secondaryLabel,\n \"data-ppui\": \"true\"\n }, secondaryLabel)), jsx(\"div\", {\n css: _styles.container,\n \"data-ppui\": \"true\"\n }, jsx(\"input\", _extends({}, helperText ? {\n 'aria-describedby': messageId\n } : null, !hideLabel ? {\n 'aria-labelledby': labelId\n } : {}, {\n //@ts-ignore\n \"aria-label\": hideLabel ? label : null,\n css: _styles.control,\n className: inputClassName,\n id: id,\n role: \"switch\",\n type: \"checkbox\",\n value: value,\n ref: ref\n }, valueProps, rest, {\n \"data-ppui\": \"true\"\n })), jsx(\"label\", {\n css: _styles.state,\n className: labelClassName,\n htmlFor: id,\n \"data-ppui\": \"true\"\n }, jsx(\"span\", {\n \"data-ppui\": \"true\"\n }, label)), jsx(\"span\", {\n css: _styles.handler,\n \"data-ppui\": \"true\"\n }, jsx(CheckmarkSmIcon, {\n size: \"xs\",\n css: _styles.selectedIcon,\n \"aria-hidden\": \"true\",\n \"data-ppui\": \"true\"\n }))), function renderMessage(help, msgId) {\n return help && jsx(\"div\", {\n css: helperCssVal,\n id: msgId,\n \"data-ppui\": \"true\"\n }, help) || null;\n }(helperText, messageId));\n});\n\nexport { Switch, styles as switchStyles };\n","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 { createContext, useMemo, forwardRef, useContext } from 'react';\nimport { css, useTheme, jsx } from '@emotion/react';\nimport _taggedTemplateLiteral from '@babel/runtime/helpers/esm/taggedTemplateLiteral';\nimport { textStyles } from '@paypalcorp/pp-react-text';\nimport { devWarning, utilStyles } from '@paypalcorp/pp-react-utils';\nimport { math } from 'polished';\n\nvar _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14, _templateObject15, _templateObject16, _templateObject17, _templateObject18, _templateObject19, _templateObject20, _templateObject21, _templateObject22, _templateObject23, _templateObject24, _templateObject25, _templateObject26, _templateObject27, _templateObject28, _templateObject29, _templateObject30, _templateObject31, _templateObject32, _templateObject33, _templateObject34, _templateObject35, _templateObject36, _templateObject37, _templateObject38, _templateObject39, _templateObject40, _templateObject41, _templateObject42, _templateObject43, _templateObject44, _templateObject45, _templateObject46, _templateObject47, _templateObject48, _templateObject49, _templateObject50, _templateObject51, _templateObject52, _templateObject53, _templateObject54, _templateObject55, _templateObject56, _templateObject57, _templateObject58, _templateObject59, _templateObject60, _templateObject61;\n\nfunction styles(tokens) {\n /* istanbul ignore next */\n if (!Object.keys(tokens).length) {\n devWarning('Missing Emotion theme. Use ThemeProvider from @emotion/react to pass a valid theme from pp-react.');\n return {};\n }\n\n var _utilStyles = utilStyles(tokens),\n mediaQuery = _utilStyles.mediaQuery;\n\n var sysBorderThicknessNormal = tokens.sysBorderThicknessNormal,\n sysBorderRadiusLg = tokens.sysBorderRadiusLg,\n sysSpaceXs = tokens.sysSpaceXs,\n sysSpaceSm = tokens.sysSpaceSm,\n sysSpaceMd = tokens.sysSpaceMd,\n sysSpaceLg = tokens.sysSpaceLg,\n sysElevationBlurBase = tokens.sysElevationBlurBase,\n sysColorBackgroundSurface = tokens.sysColorBackgroundSurface,\n sysColorBackgroundMain = tokens.sysColorBackgroundMain,\n sysColorStructureBorderHighContrast = tokens.sysColorStructureBorderHighContrast,\n sysColorSelectedRangeMain = tokens.sysColorSelectedRangeMain,\n sysColorSelectedRangeContrast = tokens.sysColorSelectedRangeContrast,\n sysSizeTapTargetDefault = tokens.sysSizeTapTargetDefault,\n sysSizeMediaMd = tokens.sysSizeMediaMd;\n\n var _textStyles = textStyles(tokens),\n textBody = _textStyles.body,\n bodyStrong = _textStyles.bodyStrong,\n titleStrong = _textStyles.titleStrong;\n\n var _utilStyles2 = utilStyles(tokens),\n elevationStyles = _utilStyles2.elevationStyles;\n\n var responsiveTableBase = css(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n label: r_table_base;\\n border-spacing: 0;\\n border-collapse: separate;\\n border: none;\\n table-layout: fixed;\\n overflow: auto;\\n width: 100%;\\n \"])));\n var summaryWrapper = css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n label: summary_wrap;\\n @media screen and (max-width: \", \") {\\n border: \", \" solid\\n \", \";\\n border-end-start-radius: \", \";\\n border-end-end-radius: \", \";\\n }\\n \"])), sysSizeMediaMd, sysBorderThicknessNormal, sysColorStructureBorderHighContrast, sysBorderRadiusLg, sysBorderRadiusLg);\n var fixedFirstColumn = css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral([\"\\n label: fixed1st;\\n display: block;\\n \"])));\n var thead = css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral([\"\\n label: thead;\\n [data-responsive='true'] & {\\n @media screen and (max-width: \", \") {\\n display: none;\\n }\\n }\\n \"])), sysSizeMediaMd);\n var tbody = css(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral([\"\\n label: tbody;\\n background-color: \", \";\\n \"])), sysColorBackgroundSurface);\n var tfoot = css(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral([\"\\n label: tfoot;\\n background-color: \", \";\\n \"])), sysColorBackgroundSurface);\n var rowBase = css(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral([\"\\n label: row_base;\\n background-color: \", \";\\n border-bottom: \", \" solid \", \";\\n \"])), sysColorBackgroundSurface, sysSpaceXs, sysColorBackgroundMain);\n var rowSelected = css(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral([\"\\n label: row_selected;\\n background-color: \", \";\\n color: \", \";\\n \"])), sysColorSelectedRangeMain, sysColorSelectedRangeContrast);\n var rowResponsive = css(_templateObject9 || (_templateObject9 = _taggedTemplateLiteral([\"\\n label: row_resp;\\n @media screen and (max-width: \", \") {\\n display: grid;\\n width: 100%;\\n grid-template-areas:\\n 'a1 a2 a3'\\n 'b1 b2 b3';\\n grid-template-columns: auto 1fr auto;\\n gap: 0 \", \";\\n padding: \", \" 0;\\n\\n thead th {\\n display: none;\\n }\\n }\\n \"])), sysSizeMediaMd, sysSpaceSm, sysSpaceMd);\n var rowHeading = css(_templateObject10 || (_templateObject10 = _taggedTemplateLiteral([\"\\n label: row_head;\\n white-space: nowrap;\\n \"])));\n var rowFooting = css(_templateObject11 || (_templateObject11 = _taggedTemplateLiteral([\"\\n label: row_foot;\\n background-color: \", \";\\n white-space: nowrap;\\n \"])), sysColorBackgroundMain);\n var rowSummaryItem = css(_templateObject12 || (_templateObject12 = _taggedTemplateLiteral([\"\\n label: row_item;\\n border-bottom: none;\\n \"])));\n var rowSummaryAdjust = css(_templateObject13 || (_templateObject13 = _taggedTemplateLiteral([\"\\n label: row_adj;\\n border-bottom: none;\\n border-top: \", \" solid\\n \", \";\\n \"])), sysBorderThicknessNormal, sysColorStructureBorderHighContrast);\n var rowSummaryTotal = css(_templateObject14 || (_templateObject14 = _taggedTemplateLiteral([\"\\n label: row_total;\\n border-top: \", \" solid\\n \", \";\\n background-color: \", \";\\n \"])), sysBorderThicknessNormal, sysColorStructureBorderHighContrast, sysColorBackgroundMain); // NOTE: setting height on a cell is equivalent to min-height\n // Height allows for icon button + 12px above and below 44px + 12px + 12px\n\n var cellBase = css(_templateObject15 || (_templateObject15 = _taggedTemplateLiteral([\"\\n \", \"\\n padding: \", \";\\n height: \", \";\\n vertical-align: middle;\\n border-bottom: \", \" solid\\n \", \";\\n \"])), textBody({\n label: 'cell',\n color: 'inherit'\n }), sysSpaceMd, math(\"\".concat(sysSizeTapTargetDefault, \" + (\").concat(sysSpaceMd, \" * 2 )\")), sysBorderThicknessNormal, sysColorStructureBorderHighContrast);\n var cellResponsive = css(_templateObject16 || (_templateObject16 = _taggedTemplateLiteral([\"\\n label: cell_resp;\\n @media screen and (min-width: \", \") {\\n &:first-of-type {\\n padding-left: \", \";\\n }\\n &:last-of-type {\\n padding-right: \", \";\\n }\\n }\\n @media screen and (max-width: \", \") {\\n display: block;\\n height: auto;\\n padding: \", \" \", \";\\n min-width: \", \";\\n border: none !important;\\n }\\n \"])), sysSizeMediaMd, sysSpaceLg, sysSpaceLg, sysSizeMediaMd, sysSpaceXs, sysSpaceSm, sysSpaceMd);\n var headRowCell = css(_templateObject17 || (_templateObject17 = _taggedTemplateLiteral([\"\\n \", \"\\n position: sticky;\\n top: 0;\\n vertical-align: middle;\\n z-index: 1;\\n &:first-of-type {\\n z-index: 2;\\n }\\n \"])), titleStrong({\n label: 'h_th'\n }));\n var footerRowCell = css(_templateObject18 || (_templateObject18 = _taggedTemplateLiteral([\"\\n \", \"\\n vertical-align: middle;\\n z-index: 1;\\n &:first-of-type {\\n z-index: 2;\\n }\\n \"])), titleStrong({\n label: 'f_th'\n }));\n var dataHeaderCell = css(_templateObject19 || (_templateObject19 = _taggedTemplateLiteral([\"\\n \", \"\\n background-color: \", \";\\n \"])), bodyStrong(), sysColorBackgroundMain);\n var summaryHeaderCell = css(_templateObject20 || (_templateObject20 = _taggedTemplateLiteral([\"\\n \", \"\\n background-color: \", \";\\n \"])), titleStrong({\n label: 'sum_th'\n }), sysColorBackgroundSurface);\n var summaryFooterCell = css(_templateObject21 || (_templateObject21 = _taggedTemplateLiteral([\"\\n label: f_th;\\n \", \"\\n background-color: \", \";\\n \"])), titleStrong({\n label: 'total_th'\n }), sysColorBackgroundMain);\n var stickyRowHeader = css(_templateObject22 || (_templateObject22 = _taggedTemplateLiteral([\"\\n label: sticky_h_th;\\n position: sticky;\\n top: 0;\\n z-index: 1; // No token, just need this to be on top of other headers\\n &:first-of-type {\\n z-index: 2;\\n }\\n \"])));\n var stickyRowFooter = css(_templateObject23 || (_templateObject23 = _taggedTemplateLiteral([\"\\n label: sticky_f_th;\\n \", \"\\n position: sticky;\\n bottom: 0;\\n vertical-align: middle;\\n \"])), titleStrong({\n label: ''\n }));\n var stickyColHeading = css(_templateObject24 || (_templateObject24 = _taggedTemplateLiteral([\"\\n label: sticky_col;\\n &:first-of-type {\\n position: sticky;\\n left: 0;\\n }\\n \"])));\n var cellHeading = css(_templateObject25 || (_templateObject25 = _taggedTemplateLiteral([\"\\n label: th;\\n text-align: start;\\n padding: \", \";\\n tbody &:first-of-type {\\n \", \"\\n background-color: inherit;\\n }\\n \"])), sysSpaceMd, titleStrong({\n label: ''\n }));\n var legacyTh = css(_templateObject26 || (_templateObject26 = _taggedTemplateLiteral([\"\\n th {\\n text-align: start;\\n }\\n \"])));\n var tableBase = css(_templateObject27 || (_templateObject27 = _taggedTemplateLiteral([\"\\n \", \"\\n border-spacing: 0;\\n border-collapse: separate;\\n \"])), textBody({\n label: 'table_base'\n }));\n var legacyTableBase = css(_templateObject28 || (_templateObject28 = _taggedTemplateLiteral([\"\\n label: legacy_table;\\n > tbody {\\n > tr {\\n background-color: \", \";\\n > td,\\n > th {\\n border-bottom: \", \" solid\\n \", \";\\n border-top: \", \" solid transparent;\\n }\\n\\n > td {\\n padding: \", \";\\n &:first-of-type {\\n padding-left: \", \";\\n }\\n &:last-of-type {\\n padding-right: \", \";\\n }\\n }\\n > th {\\n padding: \", \";\\n &:first-of-type {\\n padding-left: \", \";\\n }\\n }\\n }\\n }\\n\\n > thead > tr {\\n background-color: \", \";\\n white-space: nowrap;\\n\\n > th {\\n position: relative;\\n \", \"\\n border-bottom: \", \" solid \", \";\\n padding: \", \";\\n\\n &:last-of-type {\\n padding-right: \", \";\\n }\\n &:first-of-type {\\n padding-left: \", \";\\n }\\n }\\n }\\n \"])), sysColorBackgroundSurface, sysBorderThicknessNormal, sysColorStructureBorderHighContrast, sysBorderThicknessNormal, sysSpaceMd, sysSpaceLg, sysSpaceLg, sysSpaceMd, sysSpaceLg, sysColorBackgroundMain, bodyStrong(), sysBorderThicknessNormal, sysColorStructureBorderHighContrast, sysSpaceMd, sysSpaceLg, sysSpaceLg);\n var scrollContext = css(_templateObject29 || (_templateObject29 = _taggedTemplateLiteral([\"\\n label: scroll_context;\\n display: inline-block;\\n overflow: auto;\\n max-height: 100%;\\n width: 100%;\\n \"])));\n var scrollContextTable = css(_templateObject30 || (_templateObject30 = _taggedTemplateLiteral([\"\\n label: scroll_context_table;\\n border: none;\\n table-layout: fixed;\\n display: block;\\n overflow: auto;\\n\\n > thead {\\n position: sticky;\\n top: 0;\\n z-index: 10;\\n\\n /* If this table can scroll, remove the border beneath the header row and replace it with a drop shadow */\\n > tr {\\n position: relative;\\n \", \";\\n > th {\\n border-bottom: none;\\n position: sticky;\\n top: 0;\\n background-color: \", \";\\n }\\n }\\n }\\n > tbody {\\n > tr {\\n > th {\\n \", \"\\n clip-path: polygon(0 0, 0 100%, calc(100% + \", \") 100%, calc(100% + \", \") 0);\\n &:first-of-type {\\n background-color: inherit;\\n position: sticky;\\n left: 0;\\n }\\n }\\n > td:nth-of-type(2) {\\n padding-left: \", \";\\n }\\n }\\n }\\n \"])), elevationStyles.filterLevel1, sysColorBackgroundMain, elevationStyles.level1Horizontal, sysElevationBlurBase, sysElevationBlurBase, sysSpaceMd); // the clip-path below clips the individual shadows and prevents\n // them from bleeding over into other cells. --BCC\n\n var fixedFirstColumnTable = css(_templateObject31 || (_templateObject31 = _taggedTemplateLiteral([\"\\n label: fixed_first_column_table;\\n > thead > tr > th:first-of-type {\\n position: sticky;\\n border-bottom: none;\\n \", \"\\n clip-path: polygon(0 0, 0 100%, calc(100% + \", \") 100%, calc(100% + \", \") 0);\\n z-index: 2;\\n left: 0;\\n\\n &:after {\\n background-color: inherit;\\n }\\n }\\n > tbody > tr > th:first-of-type {\\n position: sticky;\\n left: 0;\\n }\\n\\n [dir='rtl'] & {\\n > thead > tr > th:first-of-type {\\n clip-path: polygon(\\n -\", \" 0,\\n -\", \" 100%,\\n 100% 100%,\\n 100% -\", \"\\n );\\n right: 0;\\n left: unset;\\n }\\n > tbody > tr > th {\\n position: sticky;\\n left: unset;\\n right: 0;\\n clip-path: polygon(\\n -\", \" 0,\\n -\", \" 100%,\\n 100% 100%,\\n 100% -\", \"\\n );\\n }\\n }\\n \"])), elevationStyles.level1Horizontal, sysElevationBlurBase, sysElevationBlurBase, sysElevationBlurBase, sysElevationBlurBase, sysElevationBlurBase, sysElevationBlurBase, sysElevationBlurBase, sysElevationBlurBase);\n\n var customWidth = function (width) {\n return css(_templateObject32 || (_templateObject32 = _taggedTemplateLiteral([\"\\n label: cust_width;\\n width: \", \";\\n \"])), width);\n };\n\n var mobileGridZones = {\n zone_hidden: css(_templateObject33 || (_templateObject33 = _taggedTemplateLiteral([\"\\n label: m_hide;\\n @media screen and (max-width: \", \") {\\n display: none;\\n }\\n \"])), sysSizeMediaMd),\n zone_a1: css(_templateObject34 || (_templateObject34 = _taggedTemplateLiteral([\"\\n label: m_a1;\\n @media screen and (max-width: \", \") {\\n grid-area: a1;\\n }\\n \"])), sysSizeMediaMd),\n zone_a2: css(_templateObject35 || (_templateObject35 = _taggedTemplateLiteral([\"\\n label: m_a2;\\n @media screen and (max-width: \", \") {\\n grid-area: a2;\\n }\\n \"])), sysSizeMediaMd),\n zone_a3: css(_templateObject36 || (_templateObject36 = _taggedTemplateLiteral([\"\\n label: m_a3;\\n @media screen and (max-width: \", \") {\\n grid-area: a3;\\n text-align: end;\\n width: 100%;\\n }\\n \"])), sysSizeMediaMd),\n zone_a12: css(_templateObject37 || (_templateObject37 = _taggedTemplateLiteral([\"\\n label: m_a12;\\n @media screen and (max-width: \", \") {\\n grid-area: a1 / a1 / a2 / a2;\\n }\\n \"])), sysSizeMediaMd),\n zone_a23: css(_templateObject38 || (_templateObject38 = _taggedTemplateLiteral([\"\\n label: m_a23;\\n @media screen and (max-width: \", \") {\\n grid-area: a2 / a2 / a3 / a3;\\n width: 100%;\\n }\\n \"])), sysSizeMediaMd),\n zone_a123: css(_templateObject39 || (_templateObject39 = _taggedTemplateLiteral([\"\\n label: m_a123;\\n @media screen and (max-width: \", \") {\\n grid-area: a1 / a1 / a3 / a3;\\n }\\n \"])), sysSizeMediaMd),\n zone_b1: css(_templateObject40 || (_templateObject40 = _taggedTemplateLiteral([\"\\n label: m_b1;\\n @media screen and (max-width: \", \") {\\n grid-area: b1;\\n }\\n \"])), sysSizeMediaMd),\n zone_b2: css(_templateObject41 || (_templateObject41 = _taggedTemplateLiteral([\"\\n label: m_b2;\\n @media screen and (max-width: \", \") {\\n grid-area: b2;\\n }\\n \"])), sysSizeMediaMd),\n zone_b3: css(_templateObject42 || (_templateObject42 = _taggedTemplateLiteral([\"\\n label: m_b3;\\n @media screen and (max-width: \", \") {\\n grid-area: b3;\\n text-align: end;\\n width: 100%;\\n }\\n \"])), sysSizeMediaMd),\n zone_b12: css(_templateObject43 || (_templateObject43 = _taggedTemplateLiteral([\"\\n label: m_b12;\\n @media screen and (max-width: \", \") {\\n grid-area: b1 / b1 / b2 / b2;\\n }\\n \"])), sysSizeMediaMd),\n zone_b23: css(_templateObject44 || (_templateObject44 = _taggedTemplateLiteral([\"\\n label: m_b23;\\n @media screen and (max-width: \", \") {\\n grid-area: b2 / b2 / b3 / b3;\\n width: 100%;\\n }\\n \"])), sysSizeMediaMd),\n zone_b123: css(_templateObject45 || (_templateObject45 = _taggedTemplateLiteral([\"\\n label: m_b123;\\n @media screen and (max-width: \", \") {\\n grid-area: b1 / b1 / b3 / b3;\\n width: 100%;\\n }\\n \"])), sysSizeMediaMd),\n zone_ab1: css(_templateObject46 || (_templateObject46 = _taggedTemplateLiteral([\"\\n label: m_ab1;\\n @media screen and (max-width: \", \") {\\n grid-area: a1 / a1 / b1 / b1;\\n }\\n \"])), sysSizeMediaMd),\n zone_ab2: css(_templateObject47 || (_templateObject47 = _taggedTemplateLiteral([\"\\n label: m_ab2;\\n @media screen and (max-width: \", \") {\\n grid-area: a2 / a2 / b2 / b2;\\n }\\n \"])), sysSizeMediaMd),\n zone_ab3: css(_templateObject48 || (_templateObject48 = _taggedTemplateLiteral([\"\\n label: m_ab3;\\n @media screen and (max-width: \", \") {\\n grid-area: a3 / a3 / b3 / b3;\\n width: 100%;\\n }\\n \"])), sysSizeMediaMd),\n zone_ab12: css(_templateObject49 || (_templateObject49 = _taggedTemplateLiteral([\"\\n label: m_ab12;\\n @media screen and (max-width: \", \") {\\n grid-area: a1 / a1 / b2 / b2;\\n }\\n \"])), sysSizeMediaMd),\n zone_ab23: css(_templateObject50 || (_templateObject50 = _taggedTemplateLiteral([\"\\n label: m_ab23;\\n @media screen and (max-width: \", \") {\\n grid-area: a2 / a2 / b3 / b3;\\n width: 100%;\\n }\\n \"])), sysSizeMediaMd),\n zone_ab123: css(_templateObject51 || (_templateObject51 = _taggedTemplateLiteral([\"\\n label: m_ab123;\\n @media screen and (max-width: \", \") {\\n grid-area: a1 / a1 / b3 / b3;\\n width: 100%;\\n }\\n \"])), sysSizeMediaMd)\n };\n var columnRemaining = css(_templateObject52 || (_templateObject52 = _taggedTemplateLiteral([\"\\n label: w100;\\n width: 100%;\\n \"])));\n var columnStart = css(_templateObject53 || (_templateObject53 = _taggedTemplateLiteral([\"\\n label: align_start;\\n text-align: start;\\n \"])));\n var columnEnd = css(_templateObject54 || (_templateObject54 = _taggedTemplateLiteral([\"\\n label: align_end;\\n text-align: end;\\n \"])));\n var columnCenter = css(_templateObject55 || (_templateObject55 = _taggedTemplateLiteral([\"\\n label: align_center;\\n text-align: center;\\n \"])));\n var normalCell = css(_templateObject56 || (_templateObject56 = _taggedTemplateLiteral([\"\\n label: td_norm;\\n text-align: start;\\n \"])));\n var utilityCell = css(_templateObject57 || (_templateObject57 = _taggedTemplateLiteral([\"\\n label: util_cell;\\n border-bottom: none;\\n background-color: \", \";\\n \"])), sysColorBackgroundSurface);\n var summaryHeadingCell = css(_templateObject58 || (_templateObject58 = _taggedTemplateLiteral([\"\\n \", \"\\n text-align: start;\\n padding: \", \";\\n border-bottom: \", \" solid\\n \", \";\\n \"])), titleStrong({\n label: 'sum_head'\n }), sysSpaceMd, sysBorderThicknessNormal, sysColorStructureBorderHighContrast);\n var summaryItemCell = css(_templateObject59 || (_templateObject59 = _taggedTemplateLiteral([\"\\n label: item;\\n border-bottom: none;\\n &:first-of-type {\\n border-left: \", \" solid\\n \", \";\\n }\\n &:last-of-type {\\n border-right: \", \" solid\\n \", \";\\n }\\n \"])), sysBorderThicknessNormal, sysColorStructureBorderHighContrast, sysBorderThicknessNormal, sysColorStructureBorderHighContrast);\n var summaryAdjustCell = css(_templateObject60 || (_templateObject60 = _taggedTemplateLiteral([\"\\n label: adjust;\\n border-top: \", \" solid\\n \", \";\\n border-bottom: none;\\n \", \"\\n &:first-of-type {\\n border-left: \", \" solid\\n \", \";\\n }\\n &:last-of-type {\\n border-right: \", \" solid\\n \", \";\\n }\\n \"])), sysBorderThicknessNormal, sysColorStructureBorderHighContrast, bodyStrong(), sysBorderThicknessNormal, sysColorStructureBorderHighContrast, sysBorderThicknessNormal, sysColorStructureBorderHighContrast);\n var summaryTotalCell = css(_templateObject61 || (_templateObject61 = _taggedTemplateLiteral([\"\\n label: summary;\\n background-color: \", \";\\n \", \"\\n border-top: \", \" solid \", \";\\n &:first-of-type {\\n border-end-start-radius: \", \";\\n border-left: \", \" solid\\n \", \";\\n }\\n &:last-of-type {\\n border-end-end-radius: \", \";\\n border-right: \", \" solid\\n \", \";\\n }\\n \"])), sysColorBackgroundMain, titleStrong(), sysBorderThicknessNormal, sysColorStructureBorderHighContrast, sysBorderRadiusLg, sysBorderThicknessNormal, sysColorStructureBorderHighContrast, sysBorderRadiusLg, sysBorderThicknessNormal, sysColorStructureBorderHighContrast);\n return {\n tableBase: tableBase,\n legacyTableBase: legacyTableBase,\n legacyTh: legacyTh,\n summaryWrapper: summaryWrapper,\n fixedFirstColumnTable: fixedFirstColumnTable,\n scrollContext: scrollContext,\n scrollContextTable: scrollContextTable,\n columnRemaining: columnRemaining,\n getAlignment: function getAlignment(align) {\n switch (align) {\n case 'right':\n case 'end':\n return columnEnd;\n\n case 'center':\n return columnCenter;\n\n case 'left':\n case 'start':\n default:\n return columnStart;\n }\n },\n responsiveTableBase: responsiveTableBase,\n // Base style for a responsive table\n fixedFirstColumn: fixedFirstColumn,\n //\n thead: thead,\n // Base styles for a head, body, and foot sections\n tbody: tbody,\n tfoot: tfoot,\n cellBase: cellBase,\n // Styles shared by all table cells\n cellResponsive: cellResponsive,\n cellHeading: cellHeading,\n // Styles specific to heading cells\n mobileWidth: function mobileWidth(widthStr) {\n return mediaQuery(\"width: \".concat(widthStr));\n },\n // Width to use for screens < md size\n mobileAlign: function mobileAlign(align) {\n return mediaQuery(\"align: \".concat(align));\n },\n // Alignment to use for screens < md size\n dataHeaderCell: dataHeaderCell,\n summaryHeaderCell: summaryHeaderCell,\n summaryFooterCell: summaryFooterCell,\n rowBase: rowBase,\n // Styles shared by all table rows\n rowSelected: rowSelected,\n rowResponsive: rowResponsive,\n rowHeading: rowHeading,\n // Styles specific to a heading row\n rowFooting: rowFooting,\n // Styles specific to a footer row\n rowSummaryItem: rowSummaryItem,\n rowSummaryAdjust: rowSummaryAdjust,\n rowSummaryTotal: rowSummaryTotal,\n mobileGridZones: mobileGridZones,\n // Defines 6 zones to which a responsive cell may move\n customWidth: customWidth,\n // Defines a prop-specified width\n headRowCell: headRowCell,\n footerRowCell: footerRowCell,\n stickyRowHeader: stickyRowHeader,\n stickyRowFooter: stickyRowFooter,\n stickyColHeading: stickyColHeading,\n normalCell: normalCell,\n utilityCell: utilityCell,\n summaryHeadingCell: summaryHeadingCell,\n summaryItemCell: summaryItemCell,\n summaryAdjustCell: summaryAdjustCell,\n summaryTotalCell: summaryTotalCell\n };\n}\n\nvar DEFAULT_TABLE_CONTEXT = {\n tableType: 'data',\n isResponsive: false,\n isSticky: false\n};\nvar PPTableContext = createContext(DEFAULT_TABLE_CONTEXT);\n\nvar _excluded = [\"className\", \"fixedFirstColumn\", \"children\", \"tableType\", \"isLegacy\"];\nvar ResponsiveTable = function (_ref) {\n var className = _ref.className,\n _ref$fixedFirstColumn = _ref.fixedFirstColumn,\n fixedFirstColumn = _ref$fixedFirstColumn === void 0 ? false : _ref$fixedFirstColumn,\n children = _ref.children,\n tableType = _ref.tableType,\n isLegacy = _ref.isLegacy,\n rest = _objectWithoutProperties(_ref, _excluded);\n\n var tokens = useTheme();\n var tableStyles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n var tableCss = [tableStyles.responsiveTableBase, fixedFirstColumn && tableStyles.fixedFirstColumn];\n var wrapperCss = [tableStyles.scrollContext, tableType === 'summary' && tableStyles.summaryWrapper];\n return jsx(PPTableContext.Provider, {\n value: {\n tableType: 'data',\n isResponsive: true,\n isSticky: true\n },\n \"data-ppui\": \"true\"\n }, jsx(\"div\", {\n css: wrapperCss,\n \"data-responsive\": \"true\",\n \"data-ppui\": \"true\"\n }, jsx(\"table\", _extends({\n css: tableCss,\n \"data-ppui-info\": \"table_3.20.0\"\n }, rest, {\n className: className\n }), children)));\n};\n\nvar _excluded$1 = [\"tableContext\", \"className\", \"children\", \"sticky\", \"as\"];\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nvar TableSection = forwardRef(function (props, ref) {\n var tableContext = props.tableContext,\n className = props.className,\n children = props.children,\n sticky = props.sticky,\n _props$as = props.as,\n Component = _props$as === void 0 ? 'tbody' : _props$as,\n rest = _objectWithoutProperties(props, _excluded$1);\n\n var context = _objectSpread(_objectSpread({}, useContext(PPTableContext)), tableContext);\n\n var tokens = useTheme();\n var tableStyles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n var css = tableStyles[Component];\n var classes = sticky ? \"pp_react_sticky \".concat(className) : className;\n\n var newTableContext = _objectSpread({}, context);\n\n if (!newTableContext.hasOwnProperty('section')) {\n newTableContext.section = Component;\n }\n\n return jsx(PPTableContext.Provider, {\n value: newTableContext,\n \"data-ppui\": \"true\"\n }, jsx(Component, _extends({\n ref: ref,\n css: css,\n className: classes\n }, rest, {\n \"data-ppui\": \"true\"\n }), children));\n});\nvar TableBody = function (props) {\n return jsx(TableSection, _extends({}, props, {\n as: \"tbody\",\n \"data-ppui\": \"true\"\n }));\n};\nvar TableHead = function (props) {\n return jsx(TableSection, _extends({}, props, {\n as: \"thead\",\n \"data-ppui\": \"true\"\n }));\n};\nvar TableFoot = function (props) {\n return jsx(TableSection, _extends({}, props, {\n as: \"tfoot\",\n \"data-ppui\": \"true\"\n }));\n};\nvar TableCaption = function (props) {\n return jsx(TableSection, _extends({}, props, {\n as: \"caption\",\n \"data-ppui\": \"true\"\n }));\n};\n\nvar _excluded$2 = [\"tableContext\", \"isSelected\", \"className\", \"children\"];\n\nfunction ownKeys$1(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread$1(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$1(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$1(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nvar TableRow = forwardRef(function (props, ref) {\n var tableContext = props.tableContext,\n isSelected = props.isSelected,\n className = props.className,\n children = props.children,\n rest = _objectWithoutProperties(props, _excluded$2);\n\n var context = _objectSpread$1(_objectSpread$1({}, useContext(PPTableContext)), tableContext);\n\n var tokens = useTheme();\n var tableStyles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n var section = context.section,\n isResponsive = context.isResponsive;\n var rowCss = [tableStyles.rowBase, isSelected && tableStyles.rowSelected, isResponsive && tableStyles.rowResponsive, section === 'thead' && tableStyles.rowHeading, section === 'tfoot' && tableStyles.rowFooting, section === 'summaryItem' && tableStyles.rowSummaryItem, section === 'summaryAdjust' && tableStyles.rowSummaryAdjust, section === 'summaryTotal' && tableStyles.rowSummaryTotal];\n return jsx(\"tr\", _extends({\n ref: ref,\n css: rowCss,\n className: className\n }, rest, {\n \"data-ppui\": \"true\"\n }), children);\n});\n\nvar _excluded$3 = [\"className\", \"tableContext\", \"mobile\", \"claimsRemainingSpace\", \"width\", \"span\", \"isHeader\", \"children\", \"align\"];\n\nfunction ownKeys$2(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread$2(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$2(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$2(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nvar stickableFooters = new Set(['utility', 'tfoot']);\nvar TableCell = forwardRef( // eslint-disable-next-line complexity\nfunction (props, ref) {\n var _context$section, _tableStyles$getAlign, _tableStyles$customWi, _tableStyles$mobileWi, _tableStyles$mobileAl;\n\n var className = props.className,\n tableContext = props.tableContext,\n mobile = props.mobile,\n claimsRemainingSpace = props.claimsRemainingSpace,\n width = props.width,\n _props$span = props.span,\n span = _props$span === void 0 ? 1 : _props$span,\n isHeader = props.isHeader,\n children = props.children,\n _props$align = props.align,\n align = _props$align === void 0 ? 'start' : _props$align,\n rest = _objectWithoutProperties(props, _excluded$3);\n\n var context = _objectSpread$2(_objectSpread$2({}, useContext(PPTableContext)), tableContext); // eslint-disable-next-line complexity\n\n\n var tokens = useTheme();\n var tableStyles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n var mobileGridZones = tableStyles.mobileGridZones,\n cellResponsive = tableStyles.cellResponsive;\n var sectionCellStyleName = \"\".concat((_context$section = context === null || context === void 0 ? void 0 : context.section) !== null && _context$section !== void 0 ? _context$section : 'normal', \"Cell\"); // At ease, typescript... it's really ok\n\n var sectionCss = tableStyles[sectionCellStyleName]; // To convert cellCss to farenheit multiply by 9/5 add 32... --BCC\n\n var cellCss = [tableStyles.cellBase, (tableContext === null || tableContext === void 0 ? void 0 : tableContext.isResponsive) && cellResponsive, isHeader && function getHeaderStyles(styleSet, headerContext) {\n var tableType = headerContext.tableType,\n isSticky = headerContext.isSticky,\n section = headerContext.section,\n isFirst = headerContext.isFirst;\n var css = [styleSet.cellHeading, section === 'thead' && styleSet.headerRow, section === 'thead' && tableType === 'data' && styleSet.dataHeaderCell, section === 'thead' && tableType === 'summary' && styleSet.summaryHeaderCell, section === 'thead' && isSticky && styleSet.stickyColHeader, section === 'tfoot' && styleSet.footerRow, stickableFooters.has(section) && isSticky && styleSet.stickyRowFooter, section === 'tfoot' && tableType === 'summary' && styleSet.summaryFooterCell, section === 'utility' && styleSet.utilityCell, section === 'tbody' && isSticky && isFirst && styleSet.stickyColHeading];\n return css;\n }(tableStyles, context), sectionCss, (_tableStyles$getAlign = tableStyles.getAlignment) === null || _tableStyles$getAlign === void 0 ? void 0 : _tableStyles$getAlign.call(tableStyles, align), width && ((_tableStyles$customWi = tableStyles.customWidth) === null || _tableStyles$customWi === void 0 ? void 0 : _tableStyles$customWi.call(tableStyles, width)), (mobile === null || mobile === void 0 ? void 0 : mobile.placement) && cellResponsive, (mobile === null || mobile === void 0 ? void 0 : mobile.placement) && (mobileGridZones === null || mobileGridZones === void 0 ? void 0 : mobileGridZones[\"zone_\".concat(mobile.placement)]), // TODO - move this logic into styles.tsx\n (mobile === null || mobile === void 0 ? void 0 : mobile.width) && ((_tableStyles$mobileWi = tableStyles.mobileWidth) === null || _tableStyles$mobileWi === void 0 ? void 0 : _tableStyles$mobileWi.call(tableStyles, mobile.width)), (mobile === null || mobile === void 0 ? void 0 : mobile.align) && ((_tableStyles$mobileAl = tableStyles.mobileAlign) === null || _tableStyles$mobileAl === void 0 ? void 0 : _tableStyles$mobileAl.call(tableStyles, mobile.align))];\n var Component = isHeader ? 'th' : 'td';\n\n if (claimsRemainingSpace) {\n cellCss.push(tableStyles.columnRemaining);\n }\n\n var cellProps = _objectSpread$2({}, rest);\n\n if (span > 1) {\n // @ts-ignore\n cellProps.colSpan = span; // There is no CSS way to do colspan!\n }\n\n return jsx(Component, _extends({\n ref: ref,\n css: cellCss,\n className: className\n }, cellProps, {\n \"data-ppui\": \"true\"\n }), children);\n});\nvar TableHeadingCell = function (props) {\n return jsx(TableCell, _extends({\n isHeader: true\n }, props, {\n \"data-ppui\": \"true\"\n }));\n};\n\nvar _excluded$4 = [\"className\", \"scroll\", \"fixedFirstColumn\", \"children\", \"align\", \"isFullWidth\", \"isLegacy\"];\n\nfunction ownKeys$3(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread$3(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$3(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$3(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nvar Table = function (_ref) {\n var _tableStyles$getAlign;\n\n var className = _ref.className,\n _ref$scroll = _ref.scroll,\n scroll = _ref$scroll === void 0 ? false : _ref$scroll,\n _ref$fixedFirstColumn = _ref.fixedFirstColumn,\n fixedFirstColumn = _ref$fixedFirstColumn === void 0 ? false : _ref$fixedFirstColumn,\n children = _ref.children,\n align = _ref.align,\n isFullWidth = _ref.isFullWidth,\n _ref$isLegacy = _ref.isLegacy,\n isLegacy = _ref$isLegacy === void 0 ? true : _ref$isLegacy,\n rest = _objectWithoutProperties(_ref, _excluded$4);\n\n var tokens = useTheme();\n var tableStyles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n var cssVal = [[scroll || fixedFirstColumn] && tableStyles.scrollContext];\n var tableCss = [tableStyles.tableBase, isLegacy && tableStyles.legacyTableBase, isLegacy && tableStyles.legacyTh, (_tableStyles$getAlign = tableStyles.getAlignment) === null || _tableStyles$getAlign === void 0 ? void 0 : _tableStyles$getAlign.call(tableStyles, align), isFullWidth && tableStyles.columnRemaining, scroll && tableStyles.scrollContextTable, fixedFirstColumn && [tableStyles.scrollContextTable, tableStyles.fixedFirstColumnTable]];\n\n var context = _objectSpread$3(_objectSpread$3({}, DEFAULT_TABLE_CONTEXT), {}, {\n isSticky: scroll\n });\n\n var renderTable = jsx(PPTableContext.Provider, {\n value: context,\n \"data-ppui\": \"true\"\n }, jsx(\"table\", _extends({\n css: tableCss,\n \"data-ppui-info\": \"table_3.20.0\"\n }, rest, {\n className: className\n }), children));\n return scroll || fixedFirstColumn ? jsx(\"div\", {\n css: cssVal,\n \"data-ppui\": \"true\"\n }, renderTable) : renderTable;\n};\n\nexport { DEFAULT_TABLE_CONTEXT, PPTableContext, ResponsiveTable, Table, TableBody, TableCaption, TableCell, TableFoot, TableHead, TableHeadingCell, TableRow, TableSection, styles as tableStyles };\n","import _extends from '@babel/runtime/helpers/esm/extends';\nimport _objectWithoutProperties from '@babel/runtime/helpers/esm/objectWithoutProperties';\nimport React, { useMemo, useEffect, forwardRef, useRef, useState, useContext } from 'react';\nimport _defineProperty from '@babel/runtime/helpers/esm/defineProperty';\nimport { CriticalIcon, CheckmarkBackgroundIcon } from '@paypalcorp/pp-react-icons';\nimport { css, useTheme, jsx, ClassNames } from '@emotion/react';\nimport _taggedTemplateLiteral from '@babel/runtime/helpers/esm/taggedTemplateLiteral';\nimport { math, remToPx } from 'polished';\nimport { textStyles } from '@paypalcorp/pp-react-text';\nimport { devWarning, utilStyles } from '@paypalcorp/pp-react-utils';\nimport _slicedToArray from '@babel/runtime/helpers/esm/slicedToArray';\nimport { IntlContext, getFormattedMessage } from '@paypalcorp/pp-react-intl';\n\nvar _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14, _templateObject15, _templateObject16, _templateObject17, _templateObject18, _templateObject19, _templateObject20, _templateObject21, _templateObject22, _templateObject23, _templateObject24, _templateObject25, _templateObject26, _templateObject27, _templateObject28, _templateObject29, _templateObject30, _templateObject31, _templateObject32, _templateObject33, _templateObject34, _templateObject35, _templateObject36, _templateObject37, _templateObject38, _templateObject39, _templateObject40, _templateObject41, _templateObject42, _templateObject43, _templateObject44, _templateObject45, _templateObject46, _templateObject47, _templateObject48, _templateObject49, _templateObject50;\nfunction styles(tokens) {\n /* istanbul ignore next */\n if (!Object.keys(tokens).length) {\n devWarning('Missing Emotion theme. Use ThemeProvider from @emotion/react to pass a valid theme from pp-react.');\n return {};\n }\n\n var sysBorderThicknessNormal = tokens.sysBorderThicknessNormal,\n sysBorderThicknessEmphasis = tokens.sysBorderThicknessEmphasis,\n sysBorderRadiusSm = tokens.sysBorderRadiusSm,\n sysColorBackgroundSurface = tokens.sysColorBackgroundSurface,\n sysColorBackgroundMediumContrast = tokens.sysColorBackgroundMediumContrast,\n sysSpaceTiny = tokens.sysSpaceTiny,\n sysSpaceXs = tokens.sysSpaceXs,\n sysSpaceSm = tokens.sysSpaceSm,\n sysSpaceMd = tokens.sysSpaceMd,\n sysSpaceXl = tokens.sysSpaceXl,\n sysMotionDurationMoveSmall = tokens.sysMotionDurationMoveSmall,\n sysSizeTapTargetDefault = tokens.sysSizeTapTargetDefault,\n sysColorStructureBorderHighContrast = tokens.sysColorStructureBorderHighContrast,\n sysColorErrorMain = tokens.sysColorErrorMain,\n sysColorSuccessMain = tokens.sysColorSuccessMain,\n sysTypographyBodyLineHeight = tokens.sysTypographyBodyLineHeight,\n sysTypographyCaptionLineHeight = tokens.sysTypographyCaptionLineHeight,\n sysColorBackgroundHighContrast = tokens.sysColorBackgroundHighContrast,\n sysSizeFieldLg = tokens.sysSizeFieldLg,\n sysSizeFieldSm = tokens.sysSizeFieldSm;\n var backgroundSpaceTop = math(\"(\".concat(sysSizeFieldLg, \" - \").concat(sysTypographyBodyLineHeight, \") / 2\"));\n var backgroundSpaceBottom = math(\"(\".concat(sysSizeFieldLg, \" - \").concat(sysTypographyBodyLineHeight, \") / 2\")); // 64px - 8px - 20px - 2px - 24px\n\n var backgroundSpaceBottomEntered = math(\"\".concat(sysSizeFieldLg, \" - \").concat(sysSpaceSm, \" - \").concat(sysTypographyCaptionLineHeight, \" - \").concat(sysSpaceTiny, \" - \").concat(sysTypographyBodyLineHeight));\n var ppuiV2CurrencyInputMinHeight = math('4rem - 0.125rem'); //subtract borders in currency input\n\n var _utilStyles = utilStyles(tokens),\n focusStyles = _utilStyles.focusStyles,\n ellipsis = _utilStyles.ellipsis,\n screenReader = _utilStyles.screenReader,\n variables = _utilStyles.variables;\n\n var _textStyles = textStyles(tokens),\n caption = _textStyles.caption,\n body = _textStyles.body,\n fieldLabelSm = _textStyles.fieldLabelSm;\n\n var focusOffsetElement = focusStyles.focusOffsetElement;\n var ppuiEaseMoveSmall = variables.ppuiEaseMoveSmall;\n\n function info() {\n return css(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n \", \";\\n display: flex;\\n margin: \", \" 0 0;\\n \"])), caption({\n color: sysColorBackgroundMediumContrast\n }), sysSpaceXs);\n }\n\n function fieldIcon() {\n return css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n text-decoration: none;\\n position: absolute;\\n \"])));\n }\n\n var label = css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral([\"\\n label: label;\\n \", \"\\n \", \";\\n pointer-events: none;\\n position: absolute;\\n top: \", \";\\n transition: font-size \", \" \", \",\\n top \", \" \", \",\\n background-color \", \" \", \";\\n right: \", \";\\n left: \", \";\\n background-clip: padding-box;\\n \"])), fieldLabelSm({\n color: sysColorBackgroundMediumContrast\n }), ellipsis, sysSpaceSm, sysMotionDurationMoveSmall, ppuiEaseMoveSmall, sysMotionDurationMoveSmall, ppuiEaseMoveSmall, sysMotionDurationMoveSmall, ppuiEaseMoveSmall, sysSpaceMd, sysSpaceMd);\n var labelWhenPlaceholderShownAndInputNotFocused = css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral([\"\\n label: label_placeholder_shown_and_not_focused;\\n :placeholder-shown:not(:focus) ~ label {\\n \", \";\\n top: \", \";\\n background-color: transparent;\\n margin-bottom: 0;\\n }\\n \"])), body({\n color: sysColorBackgroundMediumContrast\n }), backgroundSpaceTop);\n var labelWithScreenreader = css(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral([\"\\n label: label_screenreader;\\n \", \"\\n \"])), screenReader);\n var helperText = css(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral([\"\\n label: helper_text;\\n \", \"\\n display: block;\\n list-style: none;\\n padding: 0;\\n overflow-wrap: break-word;\\n \"])), info());\n var base = css(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral([\"\\n label: text_input_base;\\n \", \";\\n padding: 0;\\n position: relative;\\n text-align: left;\\n [dir='rtl'] & {\\n text-align: right;\\n }\\n \"])), body());\n var iconRight = css(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral([\"\\n label: icon_right;\\n \", \"\\n width: \", \";\\n height: \", \";\\n display: flex;\\n justify-content: center;\\n align-items: center;\\n top: \", \";\\n right: \", \";\\n left: auto;\\n [dir='rtl'] & {\\n left: \", \";\\n right: auto;\\n }\\n \"])), fieldIcon(), sysSizeTapTargetDefault, sysSizeTapTargetDefault, sysSpaceSm, sysSpaceSm, sysSpaceSm);\n var iconLeft = css(_templateObject9 || (_templateObject9 = _taggedTemplateLiteral([\"\\n label: icon_left;\\n pointer-events: none;\\n z-index: 1;\\n \", \"\\n inset: \", \" auto \", \" \", \";\\n color: \", \";\\n [dir='rtl'] & {\\n inset: \", \" \", \" \", \" auto;\\n }\\n \"])), fieldIcon(), backgroundSpaceTop, backgroundSpaceTop, sysSpaceMd, sysColorBackgroundMediumContrast, backgroundSpaceTop, sysSpaceMd, backgroundSpaceTop);\n var control = css(_templateObject10 || (_templateObject10 = _taggedTemplateLiteral([\"\\n label: text_input_control;\\n padding: \", \"\\n \", \"\\n \", \"\\n \", \";\\n \", \";\\n text-overflow: ellipsis;\\n box-sizing: border-box;\\n width: 100%;\\n border: \", \" solid\\n \", \";\\n border-radius: \", \";\\n background-color: \", \";\\n &::placeholder {\\n color: \", \";\\n }\\n &:placeholder-shown:not(:focus)::-webkit-input-placeholder {\\n opacity: 0;\\n transition: opacity \", \" \", \";\\n }\\n &:placeholder-shown:not(:focus)::-moz-placeholder {\\n opacity: 0;\\n transition: opacity \", \" \", \";\\n }\\n &:first-line {\\n line-height: \", \";\\n }\\n &::-ms-reveal,\\n &::-ms-clear {\\n display: none;\\n }\\n\\n margin: 0;\\n outline: none;\\n position: relative;\\n\\n &:focus {\\n \", \";\\n }\\n\\n -webkit-appearance: none;\\n -moz-appearance: none;\\n\\n min-height: \", \"; // Replace later\\n &::-webkit-input-placeholder {\\n color: \", \";\\n opacity: 1;\\n }\\n &:-moz-placeholder {\\n color: \", \";\\n opacity: 1;\\n transition: opacity \", \" \", \";\\n }\\n \"])), math(\"\".concat(backgroundSpaceTop, \" + \").concat(sysSpaceSm)), math(\"\".concat(sysSpaceMd, \" - \").concat(sysBorderThicknessNormal)), backgroundSpaceBottomEntered, math(\"\".concat(sysSpaceMd, \" - \").concat(sysBorderThicknessNormal)), body(), sysColorStructureBorderHighContrast, sysBorderThicknessNormal, sysBorderRadiusSm, sysColorBackgroundSurface, sysColorBackgroundMediumContrast, sysMotionDurationMoveSmall, ppuiEaseMoveSmall, sysMotionDurationMoveSmall, ppuiEaseMoveSmall, sysTypographyBodyLineHeight, focusOffsetElement, sysSizeFieldLg, sysColorBackgroundMediumContrast, sysColorBackgroundMediumContrast, sysMotionDurationMoveSmall, ppuiEaseMoveSmall);\n var nolabelControl = css(_templateObject11 || (_templateObject11 = _taggedTemplateLiteral([\"\\n label: no_label_text_input_control;\\n padding: \", \"\\n \", \"\\n \", \"\\n \", \";\\n &:placeholder-shown:not(:focus)::placeholder {\\n opacity: 1;\\n }\\n \"])), math(\"\".concat(backgroundSpaceTop, \" - \").concat(sysBorderThicknessNormal)), math(\"\".concat(sysSpaceMd, \" - \").concat(sysBorderThicknessNormal)), math(\"\".concat(backgroundSpaceBottom, \" - \").concat(sysBorderThicknessNormal)), math(\"\".concat(sysSpaceMd, \" - \").concat(sysBorderThicknessNormal)));\n var errorControl = css(_templateObject12 || (_templateObject12 = _taggedTemplateLiteral([\"\\n label: error_text_input_control;\\n border: \", \" solid \", \";\\n padding: \", \"\\n \", \"\\n \", \"\\n \", \";\\n \"])), sysBorderThicknessEmphasis, sysColorErrorMain, math(\"\".concat(backgroundSpaceTop, \" + \").concat(sysSpaceSm, \" - \").concat(sysBorderThicknessEmphasis, \" / 2\")), math(\"\".concat(sysSpaceMd, \" - \").concat(sysBorderThicknessEmphasis)), math(\"\".concat(backgroundSpaceBottomEntered, \" - \").concat(sysBorderThicknessEmphasis, \" / 2\")), math(\"\".concat(sysSpaceMd, \" - \").concat(sysBorderThicknessEmphasis)));\n var controlErrorWithIconRight = css(_templateObject13 || (_templateObject13 = _taggedTemplateLiteral([\"\\n label: text_input_control_error_with_icon_right;\\n padding-right: \", \";\\n padding-left: \", \";\\n [dir='rtl'] & {\\n padding-left: \", \";\\n padding-right: \", \";\\n }\\n \"])), math(\"\".concat(sysSpaceMd, \" +\\n \").concat(sysSizeTapTargetDefault, \" - \").concat(sysBorderThicknessEmphasis)), math(\"\".concat(sysSpaceMd, \" -\\n \").concat(sysBorderThicknessEmphasis)), math(\"\".concat(sysSpaceMd, \" +\\n \").concat(sysSizeTapTargetDefault, \" - \").concat(sysBorderThicknessEmphasis)), math(\"\".concat(sysSpaceMd, \" -\\n \").concat(sysBorderThicknessEmphasis)));\n var controlErrorWithIconLeft = css(_templateObject14 || (_templateObject14 = _taggedTemplateLiteral([\"\\n label: text_input_control_error_with_icon_left;\\n padding-left: \", \";\\n padding-right: \", \";\\n [dir='rtl'] & {\\n padding-right: \", \";\\n padding-left: \", \";\\n }\\n \"])), math(\"2 * \".concat(sysSpaceMd, \" + \").concat(sysSpaceXl, \" -\\n \").concat(sysBorderThicknessEmphasis)), math(\"\".concat(sysSpaceMd, \" -\\n \").concat(sysBorderThicknessEmphasis)), math(\"2 * \".concat(sysSpaceMd, \" + \").concat(sysSpaceXl, \" -\\n \").concat(sysBorderThicknessEmphasis)), math(\"\".concat(sysSpaceMd, \" -\\n \").concat(sysBorderThicknessEmphasis)));\n var controlErrorWithIconLeftAndRight = css(_templateObject15 || (_templateObject15 = _taggedTemplateLiteral([\"\\n label: text_input_control_error_with_icon_left_and_right;\\n padding-right: \", \";\\n padding-left: \", \";\\n [dir='rtl'] & {\\n padding-right: \", \";\\n padding-left: \", \";\\n }\\n \"])), math(\"\".concat(sysSpaceMd, \" +\\n \").concat(sysSizeTapTargetDefault, \" - \").concat(sysBorderThicknessEmphasis)), math(\"2 * \".concat(sysSpaceMd, \" + \").concat(sysSpaceXl, \" -\\n \").concat(sysBorderThicknessEmphasis)), math(\"2 * \".concat(sysSpaceMd, \" + \").concat(sysSpaceXl, \" -\\n \").concat(sysBorderThicknessEmphasis)), math(\"\".concat(sysSpaceMd, \" +\\n \").concat(sysSizeTapTargetDefault, \" - \").concat(sysBorderThicknessEmphasis)));\n var noLabelControlError = css(_templateObject16 || (_templateObject16 = _taggedTemplateLiteral([\"\\n label: no_label_text_input_control_error;\\n padding: \", \"\\n \", \"\\n \", \"\\n \", \";\\n \"])), math(\"\".concat(backgroundSpaceTop, \" - \").concat(sysBorderThicknessEmphasis)), math(\"\".concat(sysSpaceMd, \" - \").concat(sysBorderThicknessEmphasis)), math(\"\".concat(backgroundSpaceBottom, \" - \").concat(sysBorderThicknessEmphasis)), math(\"\".concat(sysSpaceMd, \" - \").concat(sysBorderThicknessEmphasis)));\n var controlWithIconRight = css(_templateObject17 || (_templateObject17 = _taggedTemplateLiteral([\"\\n label: text_input_control_with_icon_right;\\n padding-right: \", \";\\n padding-left: \", \";\\n [dir='rtl'] & {\\n padding-left: \", \";\\n padding-right: \", \";\\n }\\n \"])), math(\"\".concat(sysSpaceMd, \" + \").concat(sysSpaceSm, \" + \").concat(sysSizeTapTargetDefault, \" - \").concat(sysBorderThicknessNormal)), math(\"\".concat(sysSpaceMd, \" - \").concat(sysBorderThicknessNormal)), math(\"\".concat(sysSpaceMd, \" + \").concat(sysSpaceSm, \" + \").concat(sysSizeTapTargetDefault, \" - \").concat(sysBorderThicknessNormal)), math(\"\".concat(sysSpaceMd, \" - \").concat(sysBorderThicknessNormal)));\n var controlWithIconLeft = css(_templateObject18 || (_templateObject18 = _taggedTemplateLiteral([\"\\n label: text_input_control_with_icon_left;\\n padding-left: \", \";\\n padding-right: \", \";\\n [dir='rtl'] & {\\n padding-right: \", \";\\n padding-left: \", \";\\n }\\n \"])), math(\"2 * \".concat(sysSpaceMd, \" + \").concat(sysSpaceXl, \" -\\n \").concat(sysBorderThicknessNormal)), math(\"\".concat(sysSpaceMd, \" -\\n \").concat(sysBorderThicknessNormal)), math(\"2 * \".concat(sysSpaceMd, \" + \").concat(sysSpaceXl, \" -\\n \").concat(sysBorderThicknessNormal)), math(\"\".concat(sysSpaceMd, \" -\\n \").concat(sysBorderThicknessNormal)));\n var controlWithIconLeftAndRight = css(_templateObject19 || (_templateObject19 = _taggedTemplateLiteral([\"\\n label: text_input_control_with_icon_left_and_right;\\n padding-left: \", \";\\n padding-right: \", \";\\n [dir='rtl'] & {\\n padding-right: \", \";\\n padding-left: \", \";\\n }\\n \"])), math(\"2 * \".concat(sysSpaceMd, \" + \").concat(sysSpaceXl, \" -\\n \").concat(sysBorderThicknessNormal)), math(\"\".concat(sysSpaceMd, \" +\\n \").concat(sysSizeTapTargetDefault, \" - \").concat(sysBorderThicknessNormal)), math(\"2 * \".concat(sysSpaceMd, \" + \").concat(sysSpaceXl, \" -\\n \").concat(sysBorderThicknessNormal)), math(\"\".concat(sysSpaceMd, \" +\\n \").concat(sysSizeTapTargetDefault, \" - \").concat(sysBorderThicknessNormal)));\n var labelWithIconRight = css(_templateObject20 || (_templateObject20 = _taggedTemplateLiteral([\"\\n label: label_with_icon_right;\\n left: \", \";\\n right: \", \";\\n [dir='rtl'] & {\\n left: \", \";\\n right: \", \";\\n }\\n \"])), sysSpaceMd, math(\"\".concat(sysSpaceMd, \" +\\n \").concat(sysSizeTapTargetDefault)), math(\"\".concat(sysSpaceMd, \" + \").concat(sysSizeTapTargetDefault)), sysSpaceMd);\n var labelWithIconLeft = css(_templateObject21 || (_templateObject21 = _taggedTemplateLiteral([\"\\n label: label_with_icon_left;\\n left: \", \";\\n right: \", \";\\n [dir='rtl'] & {\\n right: \", \";\\n left: \", \";\\n }\\n \"])), math(\"2 * \".concat(sysSpaceMd, \" + \").concat(sysSpaceXl)), sysSpaceMd, math(\"2 * \".concat(sysSpaceMd, \" + \").concat(sysSpaceXl)), sysSpaceMd);\n var errorText = css(_templateObject22 || (_templateObject22 = _taggedTemplateLiteral([\"\\n label: error_text;\\n \", \"\\n align-items: center;\\n \"])), info());\n var errorIcon = css(_templateObject23 || (_templateObject23 = _taggedTemplateLiteral([\"\\n label: error_icon;\\n color: \", \";\\n margin-right: \", \";\\n margin-left: 0;\\n align-self: flex-start;\\n [dir='rtl'] & {\\n margin-left: \", \";\\n margin-right: 0;\\n }\\n \"])), sysColorErrorMain, sysSpaceXs, sysSpaceXs);\n var successIcon = css(_templateObject24 || (_templateObject24 = _taggedTemplateLiteral([\"\\n label: success_icon;\\n color: \", \";\\n margin-right: \", \";\\n margin-left: initial;\\n align-self: flex-start;\\n [dir='rtl'] & {\\n margin-left: \", \";\\n margin-right: 0;\\n }\\n \"])), sysColorSuccessMain, sysSpaceXs, sysSpaceXs);\n var multiLineError = css(_templateObject25 || (_templateObject25 = _taggedTemplateLiteral([\"\\n label: multi_line_error;\\n list-style: none;\\n padding: 0;\\n margin: 0;\\n \"])));\n var prefixWrapper = css(_templateObject26 || (_templateObject26 = _taggedTemplateLiteral([\"\\n label: prefix_wrapper;\\n position: relative;\\n display: flex;\\n background-color: \", \";\\n &:after {\\n content: ' ';\\n position: absolute;\\n height: 100%;\\n width: 100%;\\n top: 0;\\n left: 0;\\n border: \", \" solid\\n \", \";\\n border-radius: \", \";\\n pointer-events: none;\\n }\\n &:focus-within {\\n border-radius: \", \";\\n \", \";\\n }\\n padding: \", \";\\n \"])), sysColorBackgroundSurface, sysBorderThicknessNormal, sysColorStructureBorderHighContrast, sysBorderRadiusSm, sysBorderRadiusSm, focusOffsetElement, sysBorderThicknessNormal);\n var prefixWrapperError = css(_templateObject27 || (_templateObject27 = _taggedTemplateLiteral([\"\\n label: prefix_wrapper_error;\\n &:after {\\n border: \", \" solid \", \";\\n }\\n padding: \", \" \", \";\\n \"])), sysBorderThicknessEmphasis, sysColorErrorMain, sysBorderThicknessNormal, sysBorderThicknessEmphasis);\n var prefixSuffix = css(_templateObject28 || (_templateObject28 = _taggedTemplateLiteral([\"\\n label: prefix_suffix;\\n white-space: nowrap;\\n color: \", \";\\n padding: \", \" \", \"\\n \", \" \", \";\\n \"])), sysColorBackgroundHighContrast, math(\"\".concat(backgroundSpaceTop, \" + \").concat(sysSpaceSm)), sysSpaceTiny, backgroundSpaceBottomEntered, sysSpaceTiny);\n var PrefixWrapperControl = css(_templateObject29 || (_templateObject29 = _taggedTemplateLiteral([\"\\n label: prefix_wrapper_control;\\n border: none;\\n min-height: \", \";\\n &:focus {\\n box-shadow: none;\\n outline: none;\\n }\\n &:placeholder-shown:not(:focus) ~ div {\\n opacity: 0;\\n }\\n \"])), ppuiV2CurrencyInputMinHeight);\n var prefix = css(_templateObject30 || (_templateObject30 = _taggedTemplateLiteral([\"\\n label: prefix;\\n order: -1;\\n \", \"\\n padding-left: \", \";\\n [dir='rtl'] & {\\n \", \"\\n padding-right: \", \";\\n }\\n \"])), prefixSuffix, sysSpaceMd, prefixSuffix, sysSpaceMd);\n var suffix = css(_templateObject31 || (_templateObject31 = _taggedTemplateLiteral([\"\\n label: suffix;\\n \", \"\\n padding-right: \", \";\\n [dir='rtl'] & {\\n \", \"\\n padding-left: \", \";\\n }\\n \"])), prefixSuffix, sysSpaceMd, prefixSuffix, sysSpaceMd);\n var noLabelSuffixOrPrefix = css(_templateObject32 || (_templateObject32 = _taggedTemplateLiteral([\"\\n label: no_label_suffix_or_prefix;\\n padding-top: \", \";\\n padding-bottom: \", \";\\n [dir='rtl'] & {\\n padding-top: \", \";\\n padding-bottom: \", \";\\n }\\n \"])), math(\"\".concat(backgroundSpaceTop, \" - \").concat(sysBorderThicknessNormal)), math(\"\".concat(backgroundSpaceBottom, \" - \").concat(sysBorderThicknessNormal)), math(\"\".concat(backgroundSpaceTop, \" - \").concat(sysBorderThicknessNormal)), math(\"\".concat(backgroundSpaceBottom, \" - \").concat(sysBorderThicknessNormal)));\n var prefixWrapperControlWithPrefix = css(_templateObject33 || (_templateObject33 = _taggedTemplateLiteral([\"\\n label: prefix_wrapper_control_with_prefix;\\n padding-left: 0;\\n [dir='rtl'] & {\\n padding-right: 0;\\n padding-left: \", \";\\n }\\n \"])), sysSpaceMd);\n var prefixWrapperControlWithSuffix = css(_templateObject34 || (_templateObject34 = _taggedTemplateLiteral([\"\\n label: prefix_wrapper_control_with_prefix;\\n padding-right: 0;\\n [dir='rtl'] & {\\n padding-left: 0;\\n padding-right: \", \";\\n }\\n \"])), sysSpaceMd);\n var prefixWrapperControlWithPrefixSuffix = css(_templateObject35 || (_templateObject35 = _taggedTemplateLiteral([\"\\n label: prefix_wrapper_control_with_prefix_suffix;\\n padding-left: 0;\\n padding-right: 0;\\n [dir='rtl'] & {\\n padding-left: 0;\\n padding-right: 0;\\n }\\n \"])));\n /********* TextArea ************/\n\n var textAreaControl = css(_templateObject36 || (_templateObject36 = _taggedTemplateLiteral([\"\\n label: text_area_control;\\n background-color: \", \";\\n outline: none;\\n box-shadow: none;\\n resize: none;\\n display: block;\\n &:placeholder-shown:not(:focus) {\\n ~ label {\\n padding-top: 0;\\n }\\n }\\n \"])), sysColorBackgroundSurface);\n var textAreaControlLabel = css(_templateObject37 || (_templateObject37 = _taggedTemplateLiteral([\"\\n label: text_area_control_label;\\n background-color: \", \";\\n top: \", \";\\n padding-top: \", \";\\n \"])), sysColorBackgroundSurface, sysBorderThicknessNormal, math(\"\".concat(sysSpaceSm, \" -\\n \").concat(sysBorderThicknessNormal)));\n var textAreaControlErrorLabel = css(_templateObject38 || (_templateObject38 = _taggedTemplateLiteral([\"\\n label: text_area_control_error_label;\\n top: \", \";\\n padding-top: \", \";\\n \"])), sysBorderThicknessEmphasis, math(\"\".concat(sysSpaceSm, \" -\\n \").concat(sysBorderThicknessEmphasis)));\n var textAreaWrapper = css(_templateObject39 || (_templateObject39 = _taggedTemplateLiteral([\"\\n label: text_area_counter_wrapper;\\n cursor: text;\\n position: relative;\\n padding: \", \";\\n &:after {\\n content: ' ';\\n position: absolute;\\n height: 100%;\\n width: 100%;\\n top: 0;\\n left: 0;\\n border: \", \" solid\\n \", \";\\n border-radius: \", \";\\n pointer-events: none;\\n }\\n textarea:focus,\\n textarea:not(:focus) {\\n border: none;\\n outline: none;\\n box-shadow: none;\\n margin-top: \", \";\\n padding-top: 0;\\n padding-bottom: \", \";\\n min-height: \", \";\\n }\\n\\n &:focus-within {\\n border-radius: \", \";\\n \", \";\\n }\\n \"])), sysBorderThicknessNormal, sysBorderThicknessNormal, sysColorStructureBorderHighContrast, sysBorderRadiusSm, math(\"\".concat(backgroundSpaceTop, \" + \").concat(sysSpaceSm)), backgroundSpaceBottomEntered, math(\"\".concat(sysSizeFieldSm, \" - \").concat(sysSpaceMd, \" - \").concat(sysBorderThicknessEmphasis)), sysBorderRadiusSm, focusOffsetElement);\n var textAreaCounterText = css(_templateObject40 || (_templateObject40 = _taggedTemplateLiteral([\"\\n label: text_area_counter_text;\\n \", \"\\n padding: \", \"\\n \", \"\\n \", \"\\n \", \";\\n text-align: right;\\n background-color: \", \";\\n [dir='rtl'] & {\\n text-align: left;\\n }\\n \"])), caption({\n color: sysColorBackgroundMediumContrast\n }), sysSpaceSm, math(\"\".concat(sysSpaceMd, \" - \").concat(sysBorderThicknessNormal)), math(\"\".concat(sysSpaceSm, \" - \").concat(sysBorderThicknessNormal)), math(\"\".concat(sysSpaceMd, \" - \").concat(sysBorderThicknessNormal)), sysColorBackgroundSurface);\n var textAreaErrorCounterWrapper = css(_templateObject41 || (_templateObject41 = _taggedTemplateLiteral([\"\\n label: text_area_error_counter_wrapper;\\n padding-left: \", \";\\n padding-right: \", \";\\n\\n &:after {\\n border: \", \" solid \", \";\\n }\\n \"])), sysBorderThicknessEmphasis, sysBorderThicknessEmphasis, sysBorderThicknessEmphasis, sysColorErrorMain);\n var textAreaErrorCounterText = css(_templateObject42 || (_templateObject42 = _taggedTemplateLiteral([\"\\n label: text_area_error_counter_text;\\n color: \", \";\\n padding-left: \", \";\\n padding-right: \", \";\\n \"])), sysColorErrorMain, math(\"\".concat(sysSpaceMd, \" -\\n \").concat(sysBorderThicknessEmphasis)), math(\"\".concat(sysSpaceMd, \" -\\n \").concat(sysBorderThicknessEmphasis)));\n /********** Text Display ************/\n\n var ppuiTextInputDisplayRightIconSpaceRight = math(\"\".concat(sysSizeTapTargetDefault, \" + \").concat(sysSpaceMd)); // 48px + 12px\n\n var ppuiTextInputDisplayValueSpaceTop = math(\"\".concat(sysTypographyCaptionLineHeight, \" + \").concat(sysSpaceTiny)); // 20px (letter space) + 2px\n\n // 46px\n var textDisplayNoLabelControl = css(_templateObject43 || (_templateObject43 = _taggedTemplateLiteral([\"\\n label: text_display_no_label_control;\\n padding-top: \", \";\\n padding-bottom: \", \";\\n padding-left: 0;\\n [dir='rtl'] & {\\n padding-left: \", \";\\n }\\n \"])), sysSpaceMd, sysSpaceMd, ppuiTextInputDisplayRightIconSpaceRight);\n var textDisplayControl = css(_templateObject44 || (_templateObject44 = _taggedTemplateLiteral([\"\\n label: text_display_control;\\n border: 0;\\n padding-left: 0;\\n padding-top: \", \";\\n padding-bottom: 0;\\n min-height: \", \";\\n display: block;\\n background-color: transparent;\\n overflow-wrap: break-word;\\n [dir='rtl'] & {\\n padding-right: 0;\\n }\\n \"])), ppuiTextInputDisplayValueSpaceTop, '2.875rem');\n var textDisplayLabel = css(_templateObject45 || (_templateObject45 = _taggedTemplateLiteral([\"\\n label: text_display_label;\\n top: 0;\\n left: 0;\\n [dir='rtl'] & {\\n left: \", \";\\n right: 0;\\n }\\n \"])), ppuiTextInputDisplayRightIconSpaceRight);\n var textDisplayIconRight = css(_templateObject46 || (_templateObject46 = _taggedTemplateLiteral([\"\\n label: text_display_icon_right;\\n top: 0;\\n \"])));\n var textDisplaylabelIconRight = css(_templateObject47 || (_templateObject47 = _taggedTemplateLiteral([\"\\n label: text_display_label_icon_right;\\n right: \", \";\\n \"])), ppuiTextInputDisplayRightIconSpaceRight);\n var textDisplayControlIconRight = css(_templateObject48 || (_templateObject48 = _taggedTemplateLiteral([\"\\n label: text_display_control_icon_right;\\n padding-right: \", \";\\n\\n [dir='rtl'] & {\\n padding-left: \", \";\\n }\\n \"])), math(\"\".concat(ppuiTextInputDisplayRightIconSpaceRight, \" - \").concat(sysBorderThicknessNormal)), math(\"\".concat(ppuiTextInputDisplayRightIconSpaceRight, \" - \").concat(sysBorderThicknessNormal)));\n var placemat = css(_templateObject49 || (_templateObject49 = _taggedTemplateLiteral([\"\\n label: placemat;\\n \", \"\\n position: absolute;\\n top: 0;\\n right: 0;\\n left: 0;\\n padding: \", \"\\n \", \"\\n \", \"\\n \", \";\\n background-color: \", \";\\n white-space: nowrap;\\n & + input:focus {\\n background-color: transparent;\\n }\\n [dir='rtl'] & {\\n transform: translateX(-\", \");\\n }\\n \"])), body({\n color: sysColorBackgroundMediumContrast\n }), math(\"\".concat(backgroundSpaceTop, \" + \").concat(sysSpaceSm, \" + \").concat(sysBorderThicknessNormal)), sysSpaceMd, math(\"\".concat(backgroundSpaceBottomEntered, \" + \").concat(sysBorderThicknessNormal)), sysSpaceMd, sysColorBackgroundSurface, sysBorderThicknessNormal);\n var noLabelPlacemat = css(_templateObject50 || (_templateObject50 = _taggedTemplateLiteral([\"\\n label: no_label_placemat;\\n padding-top: \", \";\\n \"])), backgroundSpaceTop);\n return {\n label: label,\n labelWithScreenreader: labelWithScreenreader,\n helperText: helperText,\n base: base,\n iconRight: iconRight,\n iconLeft: iconLeft,\n control: control,\n nolabelControl: nolabelControl,\n errorControl: errorControl,\n prefixWrapperError: prefixWrapperError,\n controlErrorWithIconRight: controlErrorWithIconRight,\n controlErrorWithIconLeft: controlErrorWithIconLeft,\n controlErrorWithIconLeftAndRight: controlErrorWithIconLeftAndRight,\n noLabelControlError: noLabelControlError,\n placemat: placemat,\n noLabelPlacemat: noLabelPlacemat,\n controlWithIconRight: controlWithIconRight,\n controlWithIconLeft: controlWithIconLeft,\n controlWithIconLeftAndRight: controlWithIconLeftAndRight,\n labelWithIconRight: labelWithIconRight,\n labelWithIconLeft: labelWithIconLeft,\n errorText: errorText,\n errorIcon: errorIcon,\n successIcon: successIcon,\n multiLineError: multiLineError,\n prefixWrapper: prefixWrapper,\n prefixSuffix: prefixSuffix,\n PrefixWrapperControl: PrefixWrapperControl,\n prefix: prefix,\n suffix: suffix,\n noLabelSuffixOrPrefix: noLabelSuffixOrPrefix,\n prefixWrapperControlWithPrefix: prefixWrapperControlWithPrefix,\n prefixWrapperControlWithSuffix: prefixWrapperControlWithSuffix,\n prefixWrapperControlWithPrefixSuffix: prefixWrapperControlWithPrefixSuffix,\n labelWhenPlaceholderShownAndInputNotFocused: labelWhenPlaceholderShownAndInputNotFocused,\n textAreaControl: textAreaControl,\n textAreaControlLabel: textAreaControlLabel,\n textAreaControlErrorLabel: textAreaControlErrorLabel,\n textAreaWrapper: textAreaWrapper,\n textAreaCounterText: textAreaCounterText,\n textAreaErrorCounterWrapper: textAreaErrorCounterWrapper,\n textAreaErrorCounterText: textAreaErrorCounterText,\n textDisplayNoLabelControl: textDisplayNoLabelControl,\n textDisplayControl: textDisplayControl,\n textDisplayLabel: textDisplayLabel,\n textDisplayIconRight: textDisplayIconRight,\n textDisplaylabelIconRight: textDisplaylabelIconRight,\n textDisplayControlIconRight: textDisplayControlIconRight\n };\n}\n\nvar _excluded = [\"setFocus\", \"className\", \"inputClassName\", \"labelClassName\", \"successText\", \"successIconAriaLabel\", \"errorText\", \"error\", \"errorIconAriaLabel\", \"helperText\", \"value\", \"name\", \"id\", \"label\", \"isLabelHidden\", \"placeholder\", \"placemat\", \"leftIcon\", \"rightIcon\", \"onChange\", \"children\", \"renderContent\", \"removeBorderRadiusLeft\", \"removeBorderRadiusRight\", \"removeBorderRadiusBoth\", \"dir\", \"leftIconCSS\", \"rightIconCSS\"];\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nvar FormMessage = function (_ref) {\n var messageId = _ref.messageId,\n helperText = _ref.helperText,\n errorText = _ref.errorText,\n errorIconAriaLabel = _ref.errorIconAriaLabel,\n successText = _ref.successText,\n successIconAriaLabel = _ref.successIconAriaLabel;\n var tokens = useTheme(); // Fetch tokens from Emotion context\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]); // errorText takes higher priority over helperText\n\n\n if (errorText || successText) {\n var _errorIcon;\n\n var text = errorText ? errorText : successText;\n var processText = Array.isArray(text) ? jsx(\"ul\", {\n css: _styles.multiLineError,\n \"data-ppui\": \"true\"\n }, text.map(function (msg, index) {\n return jsx(\"li\", {\n key: \"msg\".concat(messageId, \"-\").concat(index),\n \"data-ppui\": \"true\"\n }, msg);\n })) : text;\n var errorIcon, successIcon;\n\n if (errorText) {\n var errorProps = {\n css: _styles.errorIcon,\n role: 'img',\n 'aria-label': errorIconAriaLabel\n };\n errorIcon = jsx(CriticalIcon, _extends({\n size: \"sm\"\n }, errorProps, {\n \"data-ppui\": \"true\"\n }));\n }\n\n if (!errorText) {\n var successProps = {\n css: _styles.successIcon,\n role: 'img',\n 'aria-label': successIconAriaLabel\n };\n successIcon = jsx(CheckmarkBackgroundIcon, _extends({\n size: \"sm\"\n }, successProps, {\n \"data-ppui\": \"true\"\n }));\n }\n\n return jsx(\"div\", {\n css: _styles.errorText,\n id: messageId,\n role: \"alert\",\n \"data-ppui\": \"true\"\n }, (_errorIcon = errorIcon) !== null && _errorIcon !== void 0 ? _errorIcon : successIcon, processText);\n }\n\n if (helperText) {\n var helperTextCssVal = [_styles.helperText];\n\n var _processText = Array.isArray(helperText) ? jsx(\"ul\", {\n css: helperTextCssVal,\n id: messageId,\n \"data-ppui\": \"true\"\n }, helperText.map(function (msg, index) {\n return jsx(\"li\", {\n key: \"msg\".concat(messageId, \"-\").concat(index),\n \"data-ppui\": \"true\"\n }, msg);\n })) : jsx(\"div\", {\n css: helperTextCssVal,\n id: messageId,\n \"data-ppui\": \"true\"\n }, helperText);\n\n return _processText;\n }\n\n return null;\n};\n\nvar renderIcon = function (icon, side, customIconCSS, _styles) {\n return icon ? jsx(\"div\", {\n css: [side === 'left' && _styles.iconLeft, side === 'right' && _styles.iconRight, customIconCSS],\n key: \"icon-\".concat(side),\n \"data-ppui\": \"true\"\n }, icon) : null;\n};\n\nvar TextInputWrapper = function (_ref2) {\n var setFocus = _ref2.setFocus,\n className = _ref2.className,\n inputClassName = _ref2.inputClassName,\n labelClassName = _ref2.labelClassName,\n successText = _ref2.successText,\n _ref2$successIconAria = _ref2.successIconAriaLabel,\n successIconAriaLabel = _ref2$successIconAria === void 0 ? 'Success' : _ref2$successIconAria,\n errorText = _ref2.errorText,\n _ref2$error = _ref2.error,\n error = _ref2$error === void 0 ? !!errorText : _ref2$error,\n _ref2$errorIconAriaLa = _ref2.errorIconAriaLabel,\n errorIconAriaLabel = _ref2$errorIconAriaLa === void 0 ? 'Error' : _ref2$errorIconAriaLa,\n helperText = _ref2.helperText,\n value = _ref2.value,\n name = _ref2.name,\n _ref2$id = _ref2.id,\n id = _ref2$id === void 0 ? \"text-input-\".concat(name) : _ref2$id,\n label = _ref2.label,\n isLabelHidden = _ref2.isLabelHidden,\n _ref2$placeholder = _ref2.placeholder,\n placeholder = _ref2$placeholder === void 0 ? ' ' : _ref2$placeholder,\n placemat = _ref2.placemat,\n _ref2$leftIcon = _ref2.leftIcon,\n leftIcon = _ref2$leftIcon === void 0 ? null : _ref2$leftIcon,\n _ref2$rightIcon = _ref2.rightIcon,\n rightIcon = _ref2$rightIcon === void 0 ? null : _ref2$rightIcon,\n onChange = _ref2.onChange,\n children = _ref2.children,\n renderContent = _ref2.renderContent,\n removeBorderRadiusLeft = _ref2.removeBorderRadiusLeft,\n removeBorderRadiusRight = _ref2.removeBorderRadiusRight,\n removeBorderRadiusBoth = _ref2.removeBorderRadiusBoth,\n dir = _ref2.dir,\n leftIconCSS = _ref2.leftIconCSS,\n rightIconCSS = _ref2.rightIconCSS,\n rest = _objectWithoutProperties(_ref2, _excluded);\n\n var tokens = useTheme(); // Fetch tokens from Emotion context\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n var mainCSS = [_styles.base];\n var msgId = \"message_\".concat(id);\n var valueProps = onChange ? {\n onChange: onChange,\n value: value\n } : {\n defaultValue: value\n };\n var ariaDescribedByProp = helperText || errorText ? {\n 'aria-describedby': msgId\n } : {};\n\n var otherProps = _objectSpread(_objectSpread(_objectSpread({}, ariaDescribedByProp), valueProps), rest);\n\n return jsx(\"div\", {\n className: className,\n css: mainCSS,\n dir: dir,\n \"data-ppui-info\": \"text-input_5.5.2\"\n }, renderIcon(leftIcon, 'left', leftIconCSS, _styles), renderContent(_objectSpread({\n inputClassName: inputClassName,\n name: name,\n id: id,\n setFocus: setFocus,\n hasError: error,\n placeholder: placeholder,\n placemat: placemat,\n label: label,\n labelClassName: labelClassName,\n isLabelHidden: isLabelHidden,\n inputTag: 'input',\n leftIcon: leftIcon,\n rightIcon: rightIcon\n }, otherProps)), jsx(FormMessage, {\n errorText: errorText,\n errorIconAriaLabel: errorIconAriaLabel,\n successText: successText,\n successIconAriaLabel: successIconAriaLabel,\n helperText: helperText,\n messageId: msgId,\n \"data-ppui\": \"true\"\n }), renderIcon(rightIcon, 'right', rightIconCSS, _styles));\n};\n\nvar _excluded$1 = [\"inputClassName\", \"inputTag\", \"name\", \"id\", \"setFocus\", \"inputRef\", \"hasError\", \"placeholder\", \"placemat\", \"label\", \"labelClassName\", \"isLabelHidden\", \"rightIcon\", \"leftIcon\", \"prefix\", \"suffix\"];\n\nvar overlayValue = function () {\n var value = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';\n var mask = arguments.length > 1 ? arguments[1] : undefined;\n var vLen = value.length;\n var mLen = mask.length;\n\n if (vLen >= mLen) {\n return value;\n }\n\n return value.concat(mask.substring(vLen));\n};\n\nvar Placemat = function (_ref) {\n var placeholder = _ref.placeholder,\n _ref$value = _ref.value,\n value = _ref$value === void 0 ? '' : _ref$value,\n _ref$isLabelHidden = _ref.isLabelHidden,\n isLabelHidden = _ref$isLabelHidden === void 0 ? false : _ref$isLabelHidden,\n _styles = _ref.styles;\n var combinedText = overlayValue(value, placeholder);\n var cssVal = [_styles.placemat, isLabelHidden && _styles.noLabelPlacemat];\n return jsx(\"div\", {\n css: cssVal,\n \"data-ppui\": \"true\"\n }, combinedText);\n};\n\nvar normalizePlaceholder = function (placeholder) {\n var normalized = placeholder !== null && placeholder !== void 0 ? placeholder : ' ';\n return normalized === '' ? ' ' : normalized;\n}; // eslint-disable-next-line complexity\n\n\nvar TextInputContent = function (_ref2) {\n var inputClassName = _ref2.inputClassName,\n inputTag = _ref2.inputTag,\n name = _ref2.name,\n id = _ref2.id,\n setFocus = _ref2.setFocus,\n inputRef = _ref2.inputRef,\n hasError = _ref2.hasError,\n placeholder = _ref2.placeholder,\n placemat = _ref2.placemat,\n label = _ref2.label,\n labelClassName = _ref2.labelClassName,\n isLabelHidden = _ref2.isLabelHidden,\n rightIcon = _ref2.rightIcon,\n leftIcon = _ref2.leftIcon,\n prefix = _ref2.prefix,\n suffix = _ref2.suffix,\n rest = _objectWithoutProperties(_ref2, _excluded$1);\n\n var tokens = useTheme(); // Fetch tokens from Emotion context\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n var isLabelHiddenFinal = !label || label === '' || isLabelHidden; // DO NOT CHANGE THE ORDER OF THE STYLES BELOW\n\n var inputTagCSS = [_styles.control, isLabelHiddenFinal && _styles.nolabelControl, rightIcon && _styles.controlWithIconRight, leftIcon && _styles.controlWithIconLeft, rightIcon && leftIcon && _styles.controlWithIconLeftAndRight, _styles.labelWhenPlaceholderShownAndInputNotFocused, hasError && _styles.errorControl, hasError && isLabelHiddenFinal && _styles.noLabelControlError, hasError && rightIcon && _styles.controlErrorWithIconRight, hasError && leftIcon && _styles.controlErrorWithIconLeft, hasError && leftIcon && rightIcon && _styles.controlErrorWithIconLeftAndRight, prefix || suffix ? _styles.PrefixWrapperControl : null, hasError && isLabelHiddenFinal && (prefix || suffix) ? _styles.noLabelControlError : null, prefix && _styles.prefixWrapperControlWithPrefix, suffix && _styles.prefixWrapperControlWithSuffix, prefix && suffix && _styles.prefixWrapperControlWithPrefixSuffix];\n var labelCSS = [_styles.label, rightIcon && _styles.labelWithIconRight, leftIcon && _styles.labelWithIconLeft, isLabelHiddenFinal && _styles.labelWithScreenreader];\n // @ts-ignore\n var value = rest.value;\n useEffect(function () {\n var elem = inputRef.current;\n\n if (setFocus && elem) {\n elem.focus();\n }\n }, [setFocus]);\n return jsx(React.Fragment, null, !!placemat && jsx(Placemat, {\n placeholder: placemat,\n value: value,\n isLabelHidden: isLabelHiddenFinal,\n styles: _styles,\n \"data-ppui\": \"true\"\n }), jsx(inputTag, _extends({\n className: inputClassName,\n css: inputTagCSS,\n name: name,\n id: id,\n ref: inputRef,\n \"aria-invalid\": hasError,\n placeholder: normalizePlaceholder(placeholder)\n }, rest, {\n \"data-ppui\": \"true\"\n })), label && jsx(\"label\", {\n htmlFor: id,\n id: \"\".concat(id, \"-label\"),\n className: labelClassName,\n css: labelCSS,\n \"data-ppui\": \"true\"\n }, label));\n};\n\nvar _excluded$2 = [\"label\", \"id\", \"prefix\", \"suffix\", \"prefixClassName\", \"suffixClassName\", \"inputClassName\", \"inputRef\", \"onBlur\", \"onFocus\", \"hasError\", \"isLabelHidden\"];\n\nvar TextInputContentWithPrefixSuffix = function (_ref) {\n var label = _ref.label,\n id = _ref.id,\n prefix = _ref.prefix,\n suffix = _ref.suffix,\n prefixClassName = _ref.prefixClassName,\n suffixClassName = _ref.suffixClassName,\n inputClassName = _ref.inputClassName,\n inputRef = _ref.inputRef,\n _ref$onBlur = _ref.onBlur,\n onBlur = _ref$onBlur === void 0 ? null : _ref$onBlur,\n _ref$onFocus = _ref.onFocus,\n onFocus = _ref$onFocus === void 0 ? null : _ref$onFocus,\n hasError = _ref.hasError,\n isLabelHidden = _ref.isLabelHidden,\n rest = _objectWithoutProperties(_ref, _excluded$2);\n\n var tokens = useTheme(); // Fetch tokens from Emotion context\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n var textInputRef = inputRef;\n var isLabelHiddenFinal = !label || label === '' || isLabelHidden;\n var prefixClass = [_styles.prefix, isLabelHiddenFinal && _styles.noLabelSuffixOrPrefix];\n var suffixClass = [_styles.suffix, isLabelHiddenFinal && _styles.noLabelSuffixOrPrefix];\n var prefixWrapperClass = [_styles.prefixWrapper, hasError && _styles.prefixWrapperError];\n var labelId = label ? \"\".concat(id, \"-label \") : '';\n var prefixEleId = prefix ? \"\".concat(id, \"-prefix \") : '';\n var suffixEleId = suffix ? \"\".concat(id, \"-suffix\") : '';\n var ariaLabelledByIds = \"\".concat(labelId).concat(prefixEleId).concat(suffixEleId);\n return jsx(\"div\", {\n css: prefixWrapperClass,\n onClick: function handlePrefixWrapperClick() {\n /* istanbul ignore else */\n if (textInputRef.current) {\n var textInputElm = textInputRef.current;\n textInputElm.focus();\n }\n },\n \"data-ppui\": \"true\"\n }, jsx(TextInputContent, _extends({\n label: label,\n id: id,\n prefix: prefix,\n suffix: suffix,\n inputClassName: inputClassName,\n inputRef: inputRef,\n onFocus: function handleFocus(event) {\n /* istanbul ignore else */\n if (onFocus) {\n onFocus(event);\n }\n },\n onBlur: function handleBlur(event) {\n /* istanbul ignore else */\n if (onBlur) {\n onBlur(event);\n }\n },\n \"aria-labelledby\": ariaLabelledByIds.trim(),\n hasError: hasError,\n isLabelHidden: isLabelHiddenFinal\n }, rest, {\n \"data-ppui\": \"true\"\n })), prefix && jsx(\"div\", {\n id: prefixEleId.trim(),\n css: prefixClass,\n className: prefixClassName,\n \"data-ppui\": \"true\"\n }, prefix), suffix && jsx(\"div\", {\n id: suffixEleId.trim(),\n css: suffixClass,\n className: suffixClassName,\n \"data-ppui\": \"true\"\n }, suffix));\n};\n\nvar _excluded$3 = [\"prefix\", \"suffix\", \"prefixClassName\", \"suffixClassName\"],\n _excluded2 = [\"inputClassName\", \"name\", \"id\", \"setFocus\", \"hasError\", \"placeholder\", \"placemat\", \"label\", \"labelClassName\", \"inputTag\"];\nvar TextInput = forwardRef(function (_ref, ref) {\n var prefix = _ref.prefix,\n suffix = _ref.suffix,\n prefixClassName = _ref.prefixClassName,\n suffixClassName = _ref.suffixClassName,\n props = _objectWithoutProperties(_ref, _excluded$3);\n\n var internalRef = useRef();\n var textInputRef = ref || internalRef;\n return /*#__PURE__*/React.createElement(TextInputWrapper, _extends({\n renderContent: function renderContent(_ref2) {\n var inputClassName = _ref2.inputClassName,\n name = _ref2.name,\n id = _ref2.id,\n setFocus = _ref2.setFocus,\n hasError = _ref2.hasError,\n placeholder = _ref2.placeholder,\n placemat = _ref2.placemat,\n label = _ref2.label,\n labelClassName = _ref2.labelClassName,\n inputTag = _ref2.inputTag,\n otherProps = _objectWithoutProperties(_ref2, _excluded2);\n\n if (prefix || suffix) {\n return /*#__PURE__*/React.createElement(TextInputContentWithPrefixSuffix, _extends({\n inputClassName: inputClassName,\n inputTag: inputTag,\n name: name,\n id: id,\n setFocus: setFocus,\n inputRef: textInputRef,\n hasError: hasError,\n placeholder: placeholder\n /*placemat={placemat} placemat is currently not supported with prefix and suffix*/\n ,\n label: label,\n labelClassName: labelClassName,\n prefix: prefix,\n suffix: suffix,\n prefixClassName: prefixClassName,\n suffixClassName: suffixClassName\n }, otherProps, {\n \"data-ppui\": \"true\"\n }));\n }\n\n return /*#__PURE__*/React.createElement(TextInputContent, _extends({\n inputClassName: inputClassName,\n inputTag: inputTag,\n name: name,\n id: id,\n setFocus: setFocus,\n inputRef: textInputRef,\n hasError: hasError,\n placeholder: placeholder,\n placemat: placemat,\n label: label,\n labelClassName: labelClassName\n }, otherProps, {\n \"data-ppui\": \"true\"\n }));\n }\n }, props, {\n \"data-ppui\": \"true\"\n }));\n});\n\nvar _excluded$4 = [\"className\", \"minRows\", \"maxRows\", \"showCharacterCounter\", \"maxCharacters\", \"counterStatusText\", \"onChange\", \"onBlur\", \"onFocus\", \"value\", \"errorText\", \"successText\"],\n _excluded2$1 = [\"inputClassName\", \"name\", \"id\", \"setFocus\", \"hasError\", \"placeholder\", \"label\", \"labelClassName\", \"inputTag\", \"placemat\"];\n// The default should still be 2 rows.\n\nvar MIN_ROWS = 1;\nvar DEFAULT_ROWS = 2;\nvar MAX_ROWS = 6;\nvar TextArea = forwardRef(function (_ref, ref) {\n var className = _ref.className,\n minRows = _ref.minRows,\n maxRows = _ref.maxRows,\n _ref$showCharacterCou = _ref.showCharacterCounter,\n showCharacterCounter = _ref$showCharacterCou === void 0 ? false : _ref$showCharacterCou,\n maxCharacters = _ref.maxCharacters,\n counterStatusText = _ref.counterStatusText,\n _ref$onChange = _ref.onChange,\n onChange = _ref$onChange === void 0 ? null : _ref$onChange,\n _ref$onBlur = _ref.onBlur,\n onBlur = _ref$onBlur === void 0 ? null : _ref$onBlur,\n _ref$onFocus = _ref.onFocus,\n onFocus = _ref$onFocus === void 0 ? null : _ref$onFocus,\n value = _ref.value,\n errorText = _ref.errorText,\n successText = _ref.successText,\n rest = _objectWithoutProperties(_ref, _excluded$4);\n\n var tokens = useTheme(); // Fetch tokens from Emotion context\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n var textLineHeight = remToPx( // @ts-ignore\n tokens.sysTypographyFieldLabelLgLineHeight).split('px')[0];\n var maxAllowedRows = maxRows > MIN_ROWS ? Math.min(maxRows, MAX_ROWS) : MAX_ROWS;\n var minAllowedRows = minRows >= MIN_ROWS ? Math.max(minRows, MIN_ROWS) : DEFAULT_ROWS;\n\n var _useState = useState(value ? value.length : 0),\n _useState2 = _slicedToArray(_useState, 2),\n charCount = _useState2[0],\n setCharCount = _useState2[1];\n\n var _useState3 = useState(false),\n _useState4 = _slicedToArray(_useState3, 2),\n isRTL = _useState4[0],\n setRTL = _useState4[1];\n\n var internalRef = useRef();\n var textAreaRef = ref || internalRef;\n var intlContext = useContext(IntlContext);\n var bordersOffset = useRef(0);\n var maxHeight = useRef(textLineHeight * maxAllowedRows);\n var minHeight = useRef(textLineHeight * minAllowedRows);\n\n var computeHeight = function () {\n var textAreaElm = textAreaRef.current; // reset height to min height before setting it again\n\n textAreaElm.style.height = \"\".concat(minHeight.current, \"px\");\n var newHeight = textAreaElm.scrollHeight + bordersOffset.current;\n /* istanbul ignore next */\n\n if (newHeight > maxHeight.current) {\n textAreaElm.style.height = \"\".concat(maxHeight.current, \"px\");\n } else if (newHeight > minHeight.current) {\n textAreaElm.style.height = \"\".concat(newHeight, \"px\");\n } else {\n textAreaElm.style.height = \"\".concat(minHeight.current, \"px\");\n }\n };\n\n useEffect(function () {\n /* istanbul ignore next */\n if (textAreaRef.current) {\n var textAreaElm = textAreaRef.current;\n var offsetHeight = textAreaElm.offsetHeight,\n clientHeight = textAreaElm.clientHeight;\n var computedStyle = window.getComputedStyle(textAreaElm);\n var lineHeightValue = Number(computedStyle.getPropertyValue('line-height').split('px')[0]);\n var paddingBottomValue = Number(computedStyle.getPropertyValue('padding-bottom').split('px')[0]);\n var paddingTopValue = Number(computedStyle.getPropertyValue('padding-top').split('px')[0]);\n var lineHeight = Number.isNaN(lineHeightValue) ? textLineHeight : lineHeightValue;\n var paddingBottom = Number.isNaN(paddingBottomValue) ? 0 : paddingBottomValue;\n var paddingTop = Number.isNaN(paddingTopValue) ? 0 : paddingTopValue;\n bordersOffset.current = offsetHeight - clientHeight;\n maxHeight.current = bordersOffset.current + paddingTop + paddingBottom + lineHeight * maxAllowedRows;\n minHeight.current = bordersOffset.current + paddingTop + paddingBottom + lineHeight * minAllowedRows;\n computeHeight();\n setRTL(computedStyle.direction === 'rtl');\n }\n }, [minAllowedRows, maxAllowedRows, value]);\n\n var handleCounterWrapperClick = function () {\n /* istanbul ignore else */\n if (textAreaRef.current) {\n var textAreaElm = textAreaRef.current;\n textAreaElm.focus();\n }\n };\n\n return jsx(TextInputWrapper, _extends({\n className: className,\n value: value,\n onChange: function handleChange(event) {\n var textAreaElm = event.target;\n setCharCount(textAreaElm.value.length);\n /* istanbul ignore else */\n\n if (onChange) {\n onChange(event);\n }\n },\n onFocus: function handleFocus(event) {\n /* istanbul ignore else */\n if (onFocus) {\n onFocus(event);\n }\n },\n onBlur: function handleBlur(event) {\n /* istanbul ignore else */\n if (onBlur) {\n onBlur(event);\n }\n },\n renderContent: function renderContent(_ref2) {\n var inputClassName = _ref2.inputClassName,\n name = _ref2.name,\n id = _ref2.id,\n setFocus = _ref2.setFocus,\n hasError = _ref2.hasError,\n placeholder = _ref2.placeholder,\n label = _ref2.label,\n labelClassName = _ref2.labelClassName,\n inputTag = _ref2.inputTag,\n placemat = _ref2.placemat,\n otherProps = _objectWithoutProperties(_ref2, _excluded2$1);\n\n var textInputContent = jsx(ClassNames, {\n \"data-ppui\": \"true\"\n }, function (_ref3) {\n var css = _ref3.css,\n cx = _ref3.cx;\n return jsx(TextInputContent, _extends({\n inputClassName: cx(inputClassName, _defineProperty({}, css(_styles.textAreaControl), true)),\n inputTag: \"textarea\",\n name: name,\n id: id,\n setFocus: setFocus,\n inputRef: textAreaRef,\n hasError: hasError,\n placeholder: placeholder,\n label: label,\n labelClassName: cx(labelClassName, _defineProperty({}, css(_styles.textAreaControlLabel), true), _defineProperty({}, css(_styles.textAreaControlErrorLabel), hasError))\n }, otherProps, {\n \"data-ppui\": \"true\"\n }));\n });\n var wrapperCSS = [_styles.textAreaWrapper, hasError && _styles.textAreaErrorCounterWrapper];\n\n if (showCharacterCounter) {\n var maxCharsText = '';\n\n if (maxCharacters) {\n maxCharsText = isRTL ? \"\".concat(maxCharacters, \"/\") : \"/\".concat(maxCharacters);\n }\n\n var counterText = isRTL ? \"\".concat(maxCharsText).concat(charCount) : \"\".concat(charCount).concat(maxCharsText);\n var counterStatusMessage = getFormattedMessage(intlContext, \"\".concat(charCount, \" out of \").concat(maxCharacters, \" characters used\"), counterStatusText, {\n charCount: charCount,\n maxCharacters: maxCharacters\n });\n var counterTextCSS = [_styles.textAreaCounterText, hasError && _styles.textAreaErrorCounterText];\n return jsx(\"div\", {\n css: wrapperCSS,\n onClick: handleCounterWrapperClick,\n \"data-ppui\": \"true\"\n }, textInputContent, jsx(\"div\", {\n css: counterTextCSS,\n role: \"status\",\n \"aria-live\": \"polite\",\n \"aria-atomic\": \"true\",\n \"aria-label\": counterStatusMessage,\n \"data-ppui\": \"true\"\n }, counterText));\n }\n\n return jsx(\"div\", {\n css: wrapperCSS,\n onClick: handleCounterWrapperClick,\n \"data-ppui\": \"true\"\n }, textInputContent);\n },\n errorText: errorText,\n successText: successText,\n \"data-ppui-info\": \"text-area_5.5.2\"\n }, rest));\n});\n\nvar _excluded$5 = [\"className\", \"valueClassName\", \"labelClassName\", \"name\", \"id\", \"label\", \"value\", \"rightIcon\", \"helperText\", \"isLabelHidden\"];\n\nvar TextDisplay = function (_ref) {\n var className = _ref.className,\n valueClassName = _ref.valueClassName,\n labelClassName = _ref.labelClassName,\n _ref$name = _ref.name,\n name = _ref$name === void 0 ? 'textDisplay' : _ref$name,\n id = _ref.id,\n _ref$label = _ref.label,\n label = _ref$label === void 0 ? 'TextDisplay' : _ref$label,\n _ref$value = _ref.value,\n value = _ref$value === void 0 ? '' : _ref$value,\n rightIcon = _ref.rightIcon,\n helperText = _ref.helperText,\n isLabelHidden = _ref.isLabelHidden,\n rest = _objectWithoutProperties(_ref, _excluded$5);\n\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n var controlStyles = [_styles.control, _styles.textDisplayControl, rightIcon && _styles.textDisplayControlIconRight];\n var labelStyles = [_styles.label, _styles.textDisplayLabel, rightIcon && _styles.textDisplaylabelIconRight, isLabelHidden && _styles.textDisplayNoLabelControl, isLabelHidden && _styles.labelWithScreenreader];\n var labelId = \"txtDsplyLbl_\".concat(name);\n var valueId = \"txtDsplyVlu_\".concat(name);\n return jsx(TextInputWrapper, _extends({\n className: className,\n label: label,\n name: name,\n isLabelHidden: isLabelHidden,\n helperText: helperText,\n renderContent: function renderContent() {\n return jsx(\"div\", {\n \"aria-labelledby\": \"\".concat(labelId, \" \").concat(valueId),\n id: id,\n \"data-ppui-info\": \"text-display_5.5.2\"\n }, jsx(\"input\", {\n type: \"hidden\",\n name: name,\n value: value,\n \"data-ppui\": \"true\"\n }), jsx(\"span\", {\n css: controlStyles,\n className: valueClassName,\n id: valueId,\n \"data-ppui\": \"true\"\n }, value), jsx(\"span\", {\n css: labelStyles,\n className: labelClassName,\n id: labelId,\n \"data-ppui\": \"true\"\n }, label));\n },\n rightIcon: rightIcon,\n rightIconCSS: _styles.textDisplayIconRight\n }, rest, {\n \"data-ppui\": \"true\"\n }));\n};\n\nexport { TextArea, TextDisplay, TextInput, styles as textInputStyles };\n","import _taggedTemplateLiteral from '@babel/runtime/helpers/esm/taggedTemplateLiteral';\nimport { css, useTheme, jsx } from '@emotion/react';\nimport { devWarning, utilStyles, getColorValue, ColorContext, Shimmer } from '@paypalcorp/pp-react-utils';\nimport { math, remToPx } from 'polished';\nimport _extends from '@babel/runtime/helpers/esm/extends';\nimport _objectWithoutProperties from '@babel/runtime/helpers/esm/objectWithoutProperties';\nimport React, { useMemo } from 'react';\n\nvar _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9;\nfunction styles(tokens, colorTokens) {\n /* istanbul ignore next */\n if (!Object.keys(tokens).length) {\n devWarning('Missing Emotion theme. Use ThemeProvider from @emotion/react to pass a valid theme from pp-react.');\n return {};\n }\n\n var sysColorBackgroundHighContrast = tokens.sysColorBackgroundHighContrast,\n sysColorBackgroundMediumContrast = tokens.sysColorBackgroundMediumContrast,\n sysTypographyDisplayFamily = tokens.sysTypographyDisplayFamily,\n sysTypographyDisplaySize = tokens.sysTypographyDisplaySize,\n sysTypographyDisplayWeight = tokens.sysTypographyDisplayWeight,\n sysTypographyDisplayLineHeight = tokens.sysTypographyDisplayLineHeight,\n sysTypographyDisplayMaxScaleFactor = tokens.sysTypographyDisplayMaxScaleFactor,\n sysTypographyHeadingLgFamily = tokens.sysTypographyHeadingLgFamily,\n sysTypographyHeadingLgSize = tokens.sysTypographyHeadingLgSize,\n sysTypographyHeadingLgWeight = tokens.sysTypographyHeadingLgWeight,\n sysTypographyHeadingLgLineHeight = tokens.sysTypographyHeadingLgLineHeight,\n sysTypographyHeadingLgMaxScaleFactor = tokens.sysTypographyHeadingLgMaxScaleFactor,\n sysTypographyHeadingSmFamily = tokens.sysTypographyHeadingSmFamily,\n sysTypographyHeadingSmSize = tokens.sysTypographyHeadingSmSize,\n sysTypographyHeadingSmWeight = tokens.sysTypographyHeadingSmWeight,\n sysTypographyHeadingSmLineHeight = tokens.sysTypographyHeadingSmLineHeight,\n sysTypographyHeadingSmMaxScaleFactor = tokens.sysTypographyHeadingSmMaxScaleFactor,\n sysTypographyTitleStrongFamily = tokens.sysTypographyTitleStrongFamily,\n sysTypographyTitleStrongSize = tokens.sysTypographyTitleStrongSize,\n sysTypographyTitleStrongWeight = tokens.sysTypographyTitleStrongWeight,\n sysTypographyTitleStrongLineHeight = tokens.sysTypographyTitleStrongLineHeight,\n sysTypographyTitleStrongMaxScaleFactor = tokens.sysTypographyTitleStrongMaxScaleFactor,\n sysTypographyTitleFamily = tokens.sysTypographyTitleFamily,\n sysTypographyTitleSize = tokens.sysTypographyTitleSize,\n sysTypographyTitleWeight = tokens.sysTypographyTitleWeight,\n sysTypographyTitleLineHeight = tokens.sysTypographyTitleLineHeight,\n sysTypographyTitleMaxScaleFactor = tokens.sysTypographyTitleMaxScaleFactor,\n sysTypographyBodyStrongFamily = tokens.sysTypographyBodyStrongFamily,\n sysTypographyBodyStrongSize = tokens.sysTypographyBodyStrongSize,\n sysTypographyBodyStrongWeight = tokens.sysTypographyBodyStrongWeight,\n sysTypographyBodyStrongLineHeight = tokens.sysTypographyBodyStrongLineHeight,\n sysTypographyBodyStrongMaxScaleFactor = tokens.sysTypographyBodyStrongMaxScaleFactor,\n sysTypographyBodyFamily = tokens.sysTypographyBodyFamily,\n sysTypographyBodySize = tokens.sysTypographyBodySize,\n sysTypographyBodyWeight = tokens.sysTypographyBodyWeight,\n sysTypographyBodyLineHeight = tokens.sysTypographyBodyLineHeight,\n sysTypographyBodyMaxScaleFactor = tokens.sysTypographyBodyMaxScaleFactor,\n sysTypographyCaptionFamily = tokens.sysTypographyCaptionFamily,\n sysTypographyCaptionSize = tokens.sysTypographyCaptionSize,\n sysTypographyCaptionWeight = tokens.sysTypographyCaptionWeight,\n sysTypographyCaptionLineHeight = tokens.sysTypographyCaptionLineHeight,\n sysTypographyCaptionMaxScaleFactor = tokens.sysTypographyCaptionMaxScaleFactor,\n sysTypographyCaptionStrongFamily = tokens.sysTypographyCaptionStrongFamily,\n sysTypographyCaptionStrongSize = tokens.sysTypographyCaptionStrongSize,\n sysTypographyCaptionStrongWeight = tokens.sysTypographyCaptionStrongWeight,\n sysTypographyCaptionStrongLineHeight = tokens.sysTypographyCaptionStrongLineHeight,\n sysTypographyCaptionStrongMaxScaleFactor = tokens.sysTypographyCaptionStrongMaxScaleFactor,\n sysTypographyButtonLgFamily = tokens.sysTypographyButtonLgFamily,\n sysTypographyButtonLgSize = tokens.sysTypographyButtonLgSize,\n sysTypographyButtonLgWeight = tokens.sysTypographyButtonLgWeight,\n sysTypographyButtonLgLineHeight = tokens.sysTypographyButtonLgLineHeight,\n sysTypographyButtonLgMaxScaleFactor = tokens.sysTypographyButtonLgMaxScaleFactor,\n sysTypographyButtonSmFamily = tokens.sysTypographyButtonSmFamily,\n sysTypographyButtonSmSize = tokens.sysTypographyButtonSmSize,\n sysTypographyButtonSmWeight = tokens.sysTypographyButtonSmWeight,\n sysTypographyButtonSmLineHeight = tokens.sysTypographyButtonSmLineHeight,\n sysTypographyButtonSmMaxScaleFactor = tokens.sysTypographyButtonSmMaxScaleFactor,\n sysTypographyFieldLabelLgFamily = tokens.sysTypographyFieldLabelLgFamily,\n sysTypographyFieldLabelLgSize = tokens.sysTypographyFieldLabelLgSize,\n sysTypographyFieldLabelLgWeight = tokens.sysTypographyFieldLabelLgWeight,\n sysTypographyFieldLabelLgLineHeight = tokens.sysTypographyFieldLabelLgLineHeight,\n sysTypographyFieldLabelLgMaxScaleFactor = tokens.sysTypographyFieldLabelLgMaxScaleFactor,\n sysTypographyFieldLabelSmFamily = tokens.sysTypographyFieldLabelSmFamily,\n sysTypographyFieldLabelSmSize = tokens.sysTypographyFieldLabelSmSize,\n sysTypographyFieldLabelSmWeight = tokens.sysTypographyFieldLabelSmWeight,\n sysTypographyFieldLabelSmLineHeight = tokens.sysTypographyFieldLabelSmLineHeight,\n sysTypographyFieldLabelSmMaxScaleFactor = tokens.sysTypographyFieldLabelSmMaxScaleFactor,\n sysTypographyFieldValueXlFamily = tokens.sysTypographyFieldValueXlFamily,\n sysTypographyFieldValueXlSize = tokens.sysTypographyFieldValueXlSize,\n sysTypographyFieldValueXlWeight = tokens.sysTypographyFieldValueXlWeight,\n sysTypographyFieldValueXlLineHeight = tokens.sysTypographyFieldValueXlLineHeight,\n sysTypographyFieldValueXlMaxScaleFactor = tokens.sysTypographyFieldValueXlMaxScaleFactor,\n sysTypographyFieldValueLgFamily = tokens.sysTypographyFieldValueLgFamily,\n sysTypographyFieldValueLgSize = tokens.sysTypographyFieldValueLgSize,\n sysTypographyFieldValueLgWeight = tokens.sysTypographyFieldValueLgWeight,\n sysTypographyFieldValueLgLineHeight = tokens.sysTypographyFieldValueLgLineHeight,\n sysTypographyFieldValueLgMaxScaleFactor = tokens.sysTypographyFieldValueLgMaxScaleFactor,\n sysTypographyFieldValueSmFamily = tokens.sysTypographyFieldValueSmFamily,\n sysTypographyFieldValueSmSize = tokens.sysTypographyFieldValueSmSize,\n sysTypographyFieldValueSmWeight = tokens.sysTypographyFieldValueSmWeight,\n sysTypographyFieldValueSmLineHeight = tokens.sysTypographyFieldValueSmLineHeight,\n sysTypographyFieldValueSmMaxScaleFactor = tokens.sysTypographyFieldValueSmMaxScaleFactor,\n sysSizeMediaMd = tokens.sysSizeMediaMd;\n\n var _utilStyles = utilStyles(tokens),\n shimmerStyles = _utilStyles.shimmerStyles;\n\n var remToPxBase = '16px';\n\n function maxSizeInMWeb(size, scaleFactor) {\n var maxSize = math(\"\".concat(size, \"*\").concat(scaleFactor));\n var maxSizeInPx = remToPx(maxSize, remToPxBase);\n return \"min(\".concat(size, \", \").concat(maxSizeInPx, \")\");\n }\n\n function font(label, color, family, size, scaleFactor, lineHeight, fontWeight) {\n var fontFamily = \"\".concat(family, \", \\\"Helvetica Neue\\\", Arial, sans-serif\"); // calculate screen maxwidth in px\n\n var mediaMdInPx = remToPx(sysSizeMediaMd, remToPxBase);\n return css(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n label: \", \";\\n color: \", \";\\n font-family: \", \";\\n font-size: \", \";\\n line-height: \", \";\\n font-weight: \", \";\\n\\n @media screen and (max-width: \", \") {\\n font-size: \", \";\\n line-height: \", \";\\n }\\n \"])), label, getColorValue(colorTokens, color, 'contrast'), fontFamily, size, lineHeight, fontWeight, mediaMdInPx, maxSizeInMWeb(size, scaleFactor), maxSizeInMWeb(lineHeight, scaleFactor));\n }\n\n function lineClamping(clampLine) {\n var clampAtLine = clampLine > 4 ? 4 : clampLine; // max 4 lines\n\n return css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n label: \", \";\\n display: -webkit-box;\\n -webkit-box-orient: vertical;\\n overflow: hidden;\\n -webkit-line-clamp: \", \";\\n \"])), \"line_clamp_\".concat(clampAtLine), clampAtLine);\n }\n\n var shimmer = css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral([\"\\n label: text_shimmer;\\n \", \"\\n \"])), shimmerStyles.defaults());\n var shimmerDisplay = css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral([\"\\n label: display;\\n height: \", \";\\n \"])), sysTypographyDisplayLineHeight);\n var shimmerHeadingLg = css(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral([\"\\n label: heading_lg;\\n height: \", \";\\n \"])), sysTypographyHeadingLgLineHeight);\n var shimmerHeadingSm = css(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral([\"\\n label: heading_sm;\\n height: \", \";\\n \"])), sysTypographyHeadingSmLineHeight);\n var shimmerBody = css(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral([\"\\n label: body;\\n height: \", \";\\n \"])), sysTypographyBodyLineHeight);\n var shimmerCaption = css(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral([\"\\n label: caption;\\n height: \", \";\\n \"])), sysTypographyCaptionLineHeight);\n var shimmerTitle = css(_templateObject9 || (_templateObject9 = _taggedTemplateLiteral([\"\\n label: title;\\n height: \", \";\\n \"])), sysTypographyTitleLineHeight);\n return {\n body: function () {\n var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var _args$lineHeight = args.lineHeight,\n lineHeight = _args$lineHeight === void 0 ? sysTypographyBodyLineHeight : _args$lineHeight,\n _args$color = args.color,\n color = _args$color === void 0 ? sysColorBackgroundHighContrast : _args$color;\n return font('text_body', color, sysTypographyBodyFamily, sysTypographyBodySize, sysTypographyBodyMaxScaleFactor, lineHeight, sysTypographyBodyWeight);\n },\n bodyStrong: function () {\n var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var _args$lineHeight2 = args.lineHeight,\n lineHeight = _args$lineHeight2 === void 0 ? sysTypographyBodyStrongLineHeight : _args$lineHeight2,\n _args$color2 = args.color,\n color = _args$color2 === void 0 ? sysColorBackgroundHighContrast : _args$color2;\n return font('text_body_strong', color, sysTypographyBodyStrongFamily, sysTypographyBodyStrongSize, sysTypographyBodyStrongMaxScaleFactor, lineHeight, sysTypographyBodyStrongWeight);\n },\n caption: function () {\n var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var _args$lineHeight3 = args.lineHeight,\n lineHeight = _args$lineHeight3 === void 0 ? sysTypographyCaptionLineHeight : _args$lineHeight3,\n _args$color3 = args.color,\n color = _args$color3 === void 0 ? sysColorBackgroundHighContrast : _args$color3;\n return font('text_caption', color, sysTypographyCaptionFamily, sysTypographyCaptionSize, sysTypographyCaptionMaxScaleFactor, lineHeight, sysTypographyCaptionWeight);\n },\n captionStrong: function () {\n var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var _args$lineHeight4 = args.lineHeight,\n lineHeight = _args$lineHeight4 === void 0 ? sysTypographyCaptionStrongLineHeight : _args$lineHeight4,\n _args$color4 = args.color,\n color = _args$color4 === void 0 ? sysColorBackgroundHighContrast : _args$color4;\n return font('text_caption_strong', color, sysTypographyCaptionStrongFamily, sysTypographyCaptionStrongSize, sysTypographyCaptionStrongMaxScaleFactor, lineHeight, sysTypographyCaptionStrongWeight);\n },\n headingSm: function () {\n var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var _args$lineHeight7 = args.lineHeight,\n lineHeight = _args$lineHeight7 === void 0 ? sysTypographyHeadingSmLineHeight : _args$lineHeight7,\n _args$color7 = args.color,\n color = _args$color7 === void 0 ? sysColorBackgroundHighContrast : _args$color7;\n return font('text_heading_sm', color, sysTypographyHeadingSmFamily, sysTypographyHeadingSmSize, sysTypographyHeadingSmMaxScaleFactor, lineHeight, sysTypographyHeadingSmWeight);\n },\n headingLg: function () {\n var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var _args$lineHeight8 = args.lineHeight,\n lineHeight = _args$lineHeight8 === void 0 ? sysTypographyHeadingLgLineHeight : _args$lineHeight8,\n _args$color8 = args.color,\n color = _args$color8 === void 0 ? sysColorBackgroundHighContrast : _args$color8;\n return font('text_heading_lg', color, sysTypographyHeadingLgFamily, sysTypographyHeadingLgSize, sysTypographyHeadingLgMaxScaleFactor, lineHeight, sysTypographyHeadingLgWeight);\n },\n display: function () {\n var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var _args$lineHeight9 = args.lineHeight,\n lineHeight = _args$lineHeight9 === void 0 ? sysTypographyDisplayLineHeight : _args$lineHeight9,\n _args$color9 = args.color,\n color = _args$color9 === void 0 ? sysColorBackgroundHighContrast : _args$color9;\n return font('text_display', color, sysTypographyDisplayFamily, sysTypographyDisplaySize, sysTypographyDisplayMaxScaleFactor, lineHeight, sysTypographyDisplayWeight);\n },\n title: function () {\n var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var _args$lineHeight5 = args.lineHeight,\n lineHeight = _args$lineHeight5 === void 0 ? sysTypographyTitleLineHeight : _args$lineHeight5,\n _args$color5 = args.color,\n color = _args$color5 === void 0 ? sysColorBackgroundHighContrast : _args$color5;\n return font('text_title', color, sysTypographyTitleFamily, sysTypographyTitleSize, sysTypographyTitleMaxScaleFactor, lineHeight, sysTypographyTitleWeight);\n },\n titleStrong: function () {\n var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var _args$lineHeight6 = args.lineHeight,\n lineHeight = _args$lineHeight6 === void 0 ? sysTypographyTitleStrongLineHeight : _args$lineHeight6,\n _args$color6 = args.color,\n color = _args$color6 === void 0 ? sysColorBackgroundHighContrast : _args$color6,\n _args$label = args.label,\n label = _args$label === void 0 ? 'text_title_strong' : _args$label;\n return font(label, color, sysTypographyTitleStrongFamily, sysTypographyTitleStrongSize, sysTypographyTitleStrongMaxScaleFactor, lineHeight, sysTypographyTitleStrongWeight);\n },\n buttonLg: function () {\n var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var _args$lineHeight11 = args.lineHeight,\n lineHeight = _args$lineHeight11 === void 0 ? sysTypographyButtonLgLineHeight : _args$lineHeight11,\n _args$color11 = args.color,\n color = _args$color11 === void 0 ? sysColorBackgroundHighContrast : _args$color11;\n return font('text_button_lg', color, sysTypographyButtonLgFamily, sysTypographyButtonLgSize, sysTypographyButtonLgMaxScaleFactor, lineHeight, sysTypographyButtonLgWeight);\n },\n buttonSm: function () {\n var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var _args$lineHeight10 = args.lineHeight,\n lineHeight = _args$lineHeight10 === void 0 ? sysTypographyButtonSmLineHeight : _args$lineHeight10,\n _args$color10 = args.color,\n color = _args$color10 === void 0 ? sysColorBackgroundHighContrast : _args$color10;\n return font('text_button_sm', color, sysTypographyButtonSmFamily, sysTypographyButtonSmSize, sysTypographyButtonSmMaxScaleFactor, lineHeight, sysTypographyButtonSmWeight);\n },\n fieldLabelSm: function () {\n var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var _args$lineHeight12 = args.lineHeight,\n lineHeight = _args$lineHeight12 === void 0 ? sysTypographyFieldLabelSmLineHeight : _args$lineHeight12,\n _args$color12 = args.color,\n color = _args$color12 === void 0 ? sysColorBackgroundMediumContrast : _args$color12;\n return font('text_field_label_sm', color, sysTypographyFieldLabelSmFamily, sysTypographyFieldLabelSmSize, sysTypographyFieldLabelSmMaxScaleFactor, lineHeight, sysTypographyFieldLabelSmWeight);\n },\n fieldLabelLg: function () {\n var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var _args$lineHeight13 = args.lineHeight,\n lineHeight = _args$lineHeight13 === void 0 ? sysTypographyFieldLabelLgLineHeight : _args$lineHeight13,\n _args$color13 = args.color,\n color = _args$color13 === void 0 ? sysColorBackgroundMediumContrast : _args$color13;\n return font('text_field_label_lg', color, sysTypographyFieldLabelLgFamily, sysTypographyFieldLabelLgSize, sysTypographyFieldLabelLgMaxScaleFactor, lineHeight, sysTypographyFieldLabelLgWeight);\n },\n fieldValueSm: function () {\n var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var _args$lineHeight14 = args.lineHeight,\n lineHeight = _args$lineHeight14 === void 0 ? sysTypographyFieldValueSmLineHeight : _args$lineHeight14,\n _args$color14 = args.color,\n color = _args$color14 === void 0 ? sysColorBackgroundHighContrast : _args$color14;\n return font('text_field_value_sm', color, sysTypographyFieldValueSmFamily, sysTypographyFieldValueSmSize, sysTypographyFieldValueSmMaxScaleFactor, lineHeight, sysTypographyFieldValueSmWeight);\n },\n fieldValueLg: function () {\n var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var _args$lineHeight15 = args.lineHeight,\n lineHeight = _args$lineHeight15 === void 0 ? sysTypographyFieldValueLgLineHeight : _args$lineHeight15,\n _args$color15 = args.color,\n color = _args$color15 === void 0 ? sysColorBackgroundHighContrast : _args$color15;\n return font('text_field_value_lg', color, sysTypographyFieldValueLgFamily, sysTypographyFieldValueLgSize, sysTypographyFieldValueLgMaxScaleFactor, lineHeight, sysTypographyFieldValueLgWeight);\n },\n fieldValueXl: function () {\n var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var _args$lineHeight16 = args.lineHeight,\n lineHeight = _args$lineHeight16 === void 0 ? sysTypographyFieldValueXlLineHeight : _args$lineHeight16,\n _args$color16 = args.color,\n color = _args$color16 === void 0 ? sysColorBackgroundHighContrast : _args$color16;\n return font('text_field_value_xl', color, sysTypographyFieldValueXlFamily, sysTypographyFieldValueXlSize, sysTypographyFieldValueXlMaxScaleFactor, lineHeight, sysTypographyFieldValueXlWeight);\n },\n lineClamping: lineClamping,\n shimmer: shimmer,\n shimmerDisplay: shimmerDisplay,\n shimmerHeadingLg: shimmerHeadingLg,\n shimmerHeadingSm: shimmerHeadingSm,\n shimmerBody: shimmerBody,\n shimmerCaption: shimmerCaption,\n shimmerTitle: shimmerTitle\n };\n}\n\nvar _excluded = [\"level\", \"as\", \"size\", \"className\", \"isLoading\", \"isInverse\", \"children\"];\n\nvar chooseSize = function (level, size) {\n if (size) {\n return size;\n }\n\n switch (level) {\n case 1:\n return 'lg';\n\n case 2:\n return 'sm';\n\n case 3:\n return 'title';\n\n default:\n return 'lg';\n }\n};\n\nvar HeadingText = function (_ref) {\n var level = _ref.level,\n _ref$as = _ref.as,\n as = _ref$as === void 0 ? level ? \"h\".concat(level) : 'div' : _ref$as,\n size = _ref.size,\n className = _ref.className,\n isLoading = _ref.isLoading,\n isInverse = _ref.isInverse,\n children = _ref.children,\n rest = _objectWithoutProperties(_ref, _excluded);\n\n var tokens = useTheme();\n var colorTokens = React.useContext(ColorContext);\n\n var _styles = useMemo(function () {\n return styles(tokens, colorTokens);\n }, [tokens, colorTokens]);\n\n var headingSize = chooseSize(level, size);\n var stylesMap = {\n display: _styles.display,\n hero: _styles.display,\n sm: _styles.headingSm,\n lg: _styles.headingLg,\n title: _styles.title\n };\n var shimmerStylesMap = {\n display: _styles.shimmerDisplay,\n hero: _styles.shimmerDisplay,\n sm: _styles.shimmerHeadingSm,\n lg: _styles.shimmerHeadingLg,\n title: _styles.shimmerTitle\n };\n\n if (isLoading) {\n return jsx(Shimmer, _extends({\n css: [_styles.shimmer, shimmerStylesMap[headingSize]],\n className: className,\n hasStyleDefaults: false,\n isInverse: isInverse\n }, rest, {\n \"data-ppui\": \"true\"\n }), children);\n }\n\n return jsx(as, _extends({\n css: stylesMap[headingSize],\n className: className,\n \"data-ppui-info\": \"heading-text_6.7.4\"\n }, rest), children);\n};\n\nvar _excluded$1 = [\"as\", \"strong\", \"className\", \"isLoading\", \"isInverse\", \"clampAtLine\", \"children\"];\n\nvar BodyText = function (_ref) {\n var _styles$lineClamping;\n\n var _ref$as = _ref.as,\n as = _ref$as === void 0 ? 'div' : _ref$as,\n strong = _ref.strong,\n className = _ref.className,\n isLoading = _ref.isLoading,\n isInverse = _ref.isInverse,\n clampAtLine = _ref.clampAtLine,\n children = _ref.children,\n rest = _objectWithoutProperties(_ref, _excluded$1);\n\n var tokens = useTheme();\n var colorTokens = React.useContext(ColorContext);\n\n var _styles = useMemo(function () {\n return styles(tokens, colorTokens);\n }, [tokens, colorTokens]);\n\n if (isLoading) {\n return jsx(Shimmer, _extends({\n css: [_styles.shimmer, _styles.shimmerBody],\n className: className,\n hasStyleDefaults: false,\n isInverse: isInverse\n }, rest, {\n \"data-ppui\": \"true\"\n }), children);\n }\n\n var cssVal = [!strong && _styles.body, strong && _styles.bodyStrong, clampAtLine && ((_styles$lineClamping = _styles.lineClamping) === null || _styles$lineClamping === void 0 ? void 0 : _styles$lineClamping.call(_styles, clampAtLine))];\n return jsx(as, _extends({\n css: cssVal,\n className: className,\n \"data-ppui-info\": \"body-text_6.7.4\"\n }, rest), children);\n};\n\nvar _excluded$2 = [\"as\", \"strong\", \"clampAtLine\", \"className\", \"isLoading\", \"isInverse\", \"children\"];\n\nvar CaptionText = function (_ref) {\n var _styles$lineClamping;\n\n var _ref$as = _ref.as,\n as = _ref$as === void 0 ? 'div' : _ref$as,\n strong = _ref.strong,\n clampAtLine = _ref.clampAtLine,\n className = _ref.className,\n isLoading = _ref.isLoading,\n isInverse = _ref.isInverse,\n children = _ref.children,\n rest = _objectWithoutProperties(_ref, _excluded$2);\n\n var tokens = useTheme();\n var colorTokens = React.useContext(ColorContext);\n\n var _styles = useMemo(function () {\n return styles(tokens, colorTokens);\n }, [tokens, colorTokens]);\n\n if (isLoading) {\n return jsx(Shimmer, _extends({\n css: [_styles.shimmer, _styles.shimmerCaption],\n className: className,\n hasStyleDefaults: false,\n isInverse: isInverse\n }, rest, {\n \"data-ppui\": \"true\"\n }), children);\n }\n\n var cssVal = [!strong && _styles.caption, strong && _styles.captionStrong, clampAtLine && ((_styles$lineClamping = _styles.lineClamping) === null || _styles$lineClamping === void 0 ? void 0 : _styles$lineClamping.call(_styles, clampAtLine))];\n return jsx(as, _extends({\n css: cssVal,\n className: className,\n \"data-ppui-info\": \"caption-text_6.7.4\"\n }, rest), children);\n};\n\nexport { BodyText, CaptionText, HeadingText, styles as textStyles };\n","const PAYPAL_THEME = {\n \"name\": \"paypal\",\n \"mode\": \"light\",\n \"sysSizeIconXs\": \"1.125rem\",\n \"sysSizeIconSm\": \"1.5rem\",\n \"sysSizeIconMd\": \"2rem\",\n \"sysSizeIconLg\": \"3rem\",\n \"sysSizeIconXl\": \"4rem\",\n \"sysSizePictogramSm\": \"6rem\",\n \"sysSizePictogramMd\": \"8.5rem\",\n \"sysSizePictogramLg\": \"10rem\",\n \"sysSizeCircleXs\": \"1.5rem\",\n \"sysSizeCircleSm\": \"2rem\",\n \"sysSizeCircleMd\": \"3rem\",\n \"sysSizeCircleLg\": \"4rem\",\n \"sysSizeCircleXl\": \"6rem\",\n \"sysSizeTapTargetXs\": \"2.5rem\",\n \"sysSizeTapTargetSm\": \"2.75rem\",\n \"sysSizeTapTargetDefault\": \"3rem\",\n \"sysSizeTapTargetLg\": \"4rem\",\n \"sysSizePointerWidthSm\": \"0.75rem\",\n \"sysSizePointerWidthLg\": \"1rem\",\n \"sysSizeIndicatorXs\": \"0.1875rem\",\n \"sysSizeIndicatorSm\": \"0.25rem\",\n \"sysSizeIndicatorMd\": \"0.375rem\",\n \"sysSizeIndicatorLg\": \"0.5rem\",\n \"sysSizeFieldSm\": \"3rem\",\n \"sysSizeFieldLg\": \"4rem\",\n \"sysSizeMediaXs\": \"22rem\",\n \"sysSizeMediaSm\": \"36rem\",\n \"sysSizeMediaMd\": \"47rem\",\n \"sysSizeMediaLg\": \"64rem\",\n \"sysSizeMediaXl\": \"72rem\",\n \"sysSizeMediaXxl\": \"90rem\",\n \"sysSpaceTiny\": \"0.125rem\",\n \"sysSpaceXs\": \"0.25rem\",\n \"sysSpaceSm\": \"0.5rem\",\n \"sysSpaceMd\": \"0.75rem\",\n \"sysSpaceLg\": \"1rem\",\n \"sysSpaceXl\": \"1.5rem\",\n \"sysSpaceJumbo\": \"2rem\",\n \"sysElevationLevel1Yoffset\": \"0.0625rem\",\n \"sysElevationLevel1Opacity\": 0.08,\n \"sysElevationLevel1Blur\": \"0.75rem\",\n \"sysElevationLevel2Yoffset\": \"0.125rem\",\n \"sysElevationLevel2Opacity\": 0.1,\n \"sysElevationLevel2Blur\": \"0.875rem\",\n \"sysElevationLevel3Yoffset\": \"0.125rem\",\n \"sysElevationLevel3Opacity\": 0.1,\n \"sysElevationLevel3Blur\": \"1.125rem\",\n \"sysElevationBlurCurve\": 1,\n \"sysElevationBlurSlope\": -1,\n \"sysElevationBlurBase\": \"0.625rem\",\n \"sysElevationOpacity\": 0.15,\n \"sysElevationBrightenFactor\": 0.02,\n \"sysElevationVerticalOffsetRatio\": 1,\n \"sysElevationHorizontalOffsetRatio\": 0,\n \"sysMotionTimingX1\": 0,\n \"sysMotionTimingY1\": 0.9,\n \"sysMotionTimingX2\": 0.3,\n \"sysMotionTimingY2\": 1,\n \"sysMotionDurationHover\": \"0.10s\",\n \"sysMotionDurationAction\": \"0.20s\",\n \"sysMotionDurationArrive\": \"0.50s\",\n \"sysMotionDurationDepart\": \"0.30s\",\n \"sysMotionDurationRepeat\": \"1.30s\",\n \"sysMotionDurationLinger\": \"7.00s\",\n \"sysMotionDurationEnterSmall\": \"0.20s\",\n \"sysMotionDurationEnterMedium\": \"0.30s\",\n \"sysMotionDurationEnterLarge\": \"0.50s\",\n \"sysMotionDurationExitSmall\": \"0.10s\",\n \"sysMotionDurationExitMedium\": \"0.20s\",\n \"sysMotionDurationExitLarge\": \"0.20s\",\n \"sysMotionDurationMoveSmall\": \"0.20s\",\n \"sysMotionDurationMoveMedium\": \"0.50s\",\n \"sysMotionDurationMoveLarge\": \"0.80s\",\n \"sysMotionDurationLoopBackForth\": \"0.50s\",\n \"sysMotionDurationLoopStandard\": \"1.30s\",\n \"sysMotionEasingEnterSmall\": \"0,0,0,1\",\n \"sysMotionEasingEnterMedium\": \"0.05,0.7,0.1,1\",\n \"sysMotionEasingEnterLarge\": \"0.05,0.7,0.1,1\",\n \"sysMotionEasingExitSmall\": \"0.3,0,1,1\",\n \"sysMotionEasingExitMedium\": \"0.3,0,0.8,0.15\",\n \"sysMotionEasingExitLarge\": \"0.3,0,0.8,0.15\",\n \"sysMotionEasingMoveSmall\": \"0.2,0,0,1\",\n \"sysMotionEasingMoveMedium\": \"0.2,0,0,1\",\n \"sysMotionEasingMoveLarge\": \"0.2,0,0,1\",\n \"sysMotionEasingLoopBackForth\": \"0.2,0,0,1\",\n \"sysMotionEasingLoopStandard\": \"0,0,1,1\",\n \"sysBorderThicknessNormal\": \"0.0625rem\",\n \"sysBorderThicknessEmphasis\": \"0.125rem\",\n \"sysBorderThicknessFocus\": \"0.1875rem\",\n \"sysBorderThicknessFocusOutline\": \"0.375rem\",\n \"sysBorderRadiusXs\": \"0.125rem\",\n \"sysBorderRadiusSm\": \"0.25rem\",\n \"sysBorderRadiusMd\": \"0.5rem\",\n \"sysBorderRadiusLg\": \"0.75rem\",\n \"sysBorderRadiusInteractive\": \"50%\",\n \"sysTypographyDisplayFamily\": \"PayPalOpen-Regular\",\n \"sysTypographyDisplaySize\": \"4.5rem\",\n \"sysTypographyDisplayWeight\": 400,\n \"sysTypographyDisplayLineHeight\": \"4.875rem\",\n \"sysTypographyDisplayMaxScaleFactor\": 1.25,\n \"sysTypographyHeadingLgFamily\": \"PayPalOpen-Regular\",\n \"sysTypographyHeadingLgSize\": \"2.75rem\",\n \"sysTypographyHeadingLgWeight\": 400,\n \"sysTypographyHeadingLgLineHeight\": \"3rem\",\n \"sysTypographyHeadingLgMaxScaleFactor\": 1.5,\n \"sysTypographyHeadingSmFamily\": \"PayPalOpen-Regular\",\n \"sysTypographyHeadingSmSize\": \"1.75rem\",\n \"sysTypographyHeadingSmWeight\": 400,\n \"sysTypographyHeadingSmLineHeight\": \"2.25rem\",\n \"sysTypographyHeadingSmMaxScaleFactor\": 1.5,\n \"sysTypographyTitleStrongFamily\": \"PayPalOpen-Bold\",\n \"sysTypographyTitleStrongSize\": \"1.375rem\",\n \"sysTypographyTitleStrongWeight\": 400,\n \"sysTypographyTitleStrongLineHeight\": \"1.75rem\",\n \"sysTypographyTitleStrongMaxScaleFactor\": 2,\n \"sysTypographyTitleFamily\": \"PayPalOpen-Regular\",\n \"sysTypographyTitleSize\": \"1.375rem\",\n \"sysTypographyTitleWeight\": 400,\n \"sysTypographyTitleLineHeight\": \"1.75rem\",\n \"sysTypographyTitleMaxScaleFactor\": 2,\n \"sysTypographyBodyStrongFamily\": \"PayPalOpen-Bold\",\n \"sysTypographyBodyStrongSize\": \"1.125rem\",\n \"sysTypographyBodyStrongWeight\": 400,\n \"sysTypographyBodyStrongLineHeight\": \"1.5rem\",\n \"sysTypographyBodyStrongMaxScaleFactor\": 2,\n \"sysTypographyBodyFamily\": \"PayPalOpen-Regular\",\n \"sysTypographyBodySize\": \"1.125rem\",\n \"sysTypographyBodyWeight\": 400,\n \"sysTypographyBodyLineHeight\": \"1.5rem\",\n \"sysTypographyBodyMaxScaleFactor\": 2,\n \"sysTypographyCaptionStrongFamily\": \"PayPalOpen-Bold\",\n \"sysTypographyCaptionStrongSize\": \"0.875rem\",\n \"sysTypographyCaptionStrongWeight\": 400,\n \"sysTypographyCaptionStrongLineHeight\": \"1.25rem\",\n \"sysTypographyCaptionStrongMaxScaleFactor\": 2,\n \"sysTypographyCaptionFamily\": \"PayPalOpen-Regular\",\n \"sysTypographyCaptionSize\": \"0.875rem\",\n \"sysTypographyCaptionWeight\": 400,\n \"sysTypographyCaptionLineHeight\": \"1.25rem\",\n \"sysTypographyCaptionMaxScaleFactor\": 2,\n \"sysTypographyLinkLgFamily\": \"PayPalOpen-Bold\",\n \"sysTypographyLinkLgSize\": \"1.125rem\",\n \"sysTypographyLinkLgWeight\": 400,\n \"sysTypographyLinkLgLineHeight\": \"1.5rem\",\n \"sysTypographyLinkLgUnderline\": true,\n \"sysTypographyLinkLgMaxScaleFactor\": 2,\n \"sysTypographyLinkSmFamily\": \"PayPalOpen-Bold\",\n \"sysTypographyLinkSmSize\": \"0.875rem\",\n \"sysTypographyLinkSmWeight\": 400,\n \"sysTypographyLinkSmLineHeight\": \"1.25rem\",\n \"sysTypographyLinkSmUnderline\": true,\n \"sysTypographyLinkSmMaxScaleFactor\": 2,\n \"sysTypographyButtonLgFamily\": \"PayPalOpen-Bold\",\n \"sysTypographyButtonLgSize\": \"1.125rem\",\n \"sysTypographyButtonLgWeight\": 400,\n \"sysTypographyButtonLgLineHeight\": \"1.5rem\",\n \"sysTypographyButtonLgMaxScaleFactor\": 2,\n \"sysTypographyButtonSmFamily\": \"PayPalOpen-Bold\",\n \"sysTypographyButtonSmSize\": \"0.875rem\",\n \"sysTypographyButtonSmWeight\": 400,\n \"sysTypographyButtonSmLineHeight\": \"1.25rem\",\n \"sysTypographyButtonSmMaxScaleFactor\": 2,\n \"sysTypographyFieldLabelLgFamily\": \"PayPalOpen-Regular\",\n \"sysTypographyFieldLabelLgSize\": \"1.125rem\",\n \"sysTypographyFieldLabelLgWeight\": 400,\n \"sysTypographyFieldLabelLgLineHeight\": \"1.5rem\",\n \"sysTypographyFieldLabelLgMaxScaleFactor\": 2,\n \"sysTypographyFieldLabelSmFamily\": \"PayPalOpen-Regular\",\n \"sysTypographyFieldLabelSmSize\": \"0.875rem\",\n \"sysTypographyFieldLabelSmWeight\": 400,\n \"sysTypographyFieldLabelSmLineHeight\": \"1.25rem\",\n \"sysTypographyFieldLabelSmMaxScaleFactor\": 2,\n \"sysTypographyFieldValueXlFamily\": \"PayPalOpen-Regular\",\n \"sysTypographyFieldValueXlSize\": \"2.75rem\",\n \"sysTypographyFieldValueXlWeight\": 400,\n \"sysTypographyFieldValueXlLineHeight\": \"3rem\",\n \"sysTypographyFieldValueXlMaxScaleFactor\": 1.5,\n \"sysTypographyFieldValueLgFamily\": \"PayPalOpen-Regular\",\n \"sysTypographyFieldValueLgSize\": \"1.75rem\",\n \"sysTypographyFieldValueLgWeight\": 400,\n \"sysTypographyFieldValueLgLineHeight\": \"2.25rem\",\n \"sysTypographyFieldValueLgMaxScaleFactor\": 2,\n \"sysTypographyFieldValueSmFamily\": \"PayPalOpen-Regular\",\n \"sysTypographyFieldValueSmSize\": \"1.125rem\",\n \"sysTypographyFieldValueSmWeight\": 400,\n \"sysTypographyFieldValueSmLineHeight\": \"1.5rem\",\n \"sysTypographyFieldValueSmMaxScaleFactor\": 2,\n \"sysColorBackgroundMain\": \"#faf8f5\",\n \"sysColorBackgroundAlt\": \"#f1ede8\",\n \"sysColorBackgroundSurface\": \"#ffffff\",\n \"sysColorBackgroundSurfaceHover\": \"#faf8f5\",\n \"sysColorBackgroundSurfaceActive\": \"#f1ede8\",\n \"sysColorBackgroundHighContrast\": \"#001435\",\n \"sysColorBackgroundMediumContrast\": \"#545d68\",\n \"sysColorPrimaryMain\": \"#003087\",\n \"sysColorPrimaryMainHover\": \"#0070e0\",\n \"sysColorPrimaryMainActive\": \"#001c64\",\n \"sysColorPrimaryContrast\": \"#ffffff\",\n \"sysColorPrimaryContrastHover\": \"#b9effc\",\n \"sysColorPrimaryContrastActive\": \"#5bbbfc\",\n \"sysColorSecondaryMain\": \"#0070e0\",\n \"sysColorSecondaryMainHover\": \"#5bbbfc\",\n \"sysColorSecondaryMainActive\": \"#003087\",\n \"sysColorSecondaryContrast\": \"#ffffff\",\n \"sysColorTertiaryMain\": \"#faf8f5\",\n \"sysColorTertiaryMainHover\": \"#f1ede8\",\n \"sysColorTertiaryMainActive\": \"#e6e0d9\",\n \"sysColorTertiaryContrast\": \"#003087\",\n \"sysColorFeaturedMain\": \"#ffd140\",\n \"sysColorFeaturedMainHover\": \"#ffe888\",\n \"sysColorFeaturedMainActive\": \"#ff9100\",\n \"sysColorFeaturedContrast\": \"#003087\",\n \"sysColorUnselectedMain\": \"#e6e0d9\",\n \"sysColorUnselectedMainHover\": \"#faf8f5\",\n \"sysColorUnselectedMainActive\": \"#f1ede8\",\n \"sysColorUnselectedContrast\": \"#545d68\",\n \"sysColorSelectedMain\": \"#0070e0\",\n \"sysColorSelectedMainHover\": \"#5bbbfc\",\n \"sysColorSelectedMainActive\": \"#003087\",\n \"sysColorSelectedContrast\": \"#ffffff\",\n \"sysColorSelectedRangeMain\": \"#b9effc\",\n \"sysColorSelectedRangeMainHover\": \"#5bbbfc\",\n \"sysColorSelectedRangeMainActive\": \"#0070e0\",\n \"sysColorSelectedRangeContrast\": \"#003087\",\n \"sysColorLinkMain\": \"#0070e0\",\n \"sysColorLinkMainHover\": \"#003087\",\n \"sysColorLinkMainActive\": \"#003087\",\n \"sysColorLinkAlt\": \"#001435\",\n \"sysColorLinkAltHover\": \"#001435\",\n \"sysColorLinkAltActive\": \"#001435\",\n \"sysColorLinkContrast\": \"#ffffff\",\n \"sysColorLinkContrastHover\": \"#b9effc\",\n \"sysColorLinkContrastActive\": \"#5bbbfc\",\n \"sysColorOverlayMain\": \"rgba(0, 0, 0, 0.55)\",\n \"sysColorOverlayMainHover\": \"rgba(0, 0, 0, 0.4)\",\n \"sysColorOverlayMainActive\": \"rgba(0, 0, 0, 0.7)\",\n \"sysColorOverlayContrast\": \"#ffffff\",\n \"sysColorAccent1Main\": \"#003087\",\n \"sysColorAccent1Contrast\": \"#ffffff\",\n \"sysColorAccent2Main\": \"#e02d50\",\n \"sysColorAccent2Contrast\": \"#ffffff\",\n \"sysColorAccent3Main\": \"#388c00\",\n \"sysColorAccent3Contrast\": \"#ffffff\",\n \"sysColorAccent4Main\": \"#7252cc\",\n \"sysColorAccent4Contrast\": \"#ffffff\",\n \"sysColorErrorMain\": \"#d50102\",\n \"sysColorErrorMainHover\": \"#ff5a6d\",\n \"sysColorErrorMainActive\": \"#9b0021\",\n \"sysColorErrorContrast\": \"#ffffff\",\n \"sysColorWarningMain\": \"#ffbe4a\",\n \"sysColorWarningMainHover\": \"#ffe888\",\n \"sysColorWarningMainActive\": \"#ff9100\",\n \"sysColorWarningAlt\": \"#e85e00\",\n \"sysColorWarningContrast\": \"#001435\",\n \"sysColorSuccessMain\": \"#0f8514\",\n \"sysColorSuccessMainHover\": \"#6fc400\",\n \"sysColorSuccessMainActive\": \"#388c00\",\n \"sysColorSuccessContrast\": \"#ffffff\",\n \"sysColorSystemMain\": \"#001435\",\n \"sysColorSystemMainHover\": \"#929496\",\n \"sysColorSystemMainActive\": \"#545d68\",\n \"sysColorSystemContrast\": \"#ffffff\",\n \"sysColorInfoMain\": \"#e6e0d9\",\n \"sysColorInfoMainHover\": \"#faf8f5\",\n \"sysColorInfoMainActive\": \"#f1ede8\",\n \"sysColorInfoContrast\": \"#001435\",\n \"sysColorSpecialtyMain\": \"#7252cc\",\n \"sysColorSpecialtyMainHover\": \"#b976ff\",\n \"sysColorSpecialtyMainActive\": \"#24247f\",\n \"sysColorSpecialtyContrast\": \"#ffffff\",\n \"sysColorStructureBorderHighContrast\": \"#929496\",\n \"sysColorStructureBorderLowContrast\": \"rgba(0, 0, 0, 0.1)\",\n \"sysColorStructureDivider\": \"#f1ede8\",\n \"sysColorStructureFocus\": \"#097ff5\",\n \"sysColorStructureFocusOutline\": \"rgba(209, 229, 249, 0.9)\",\n \"sysColorStructureErrorOutline\": \"rgba(224, 45, 80, 0.16)\",\n \"sysColorStructureScrim\": \"rgba(0, 0, 0, 0.4)\",\n \"sysColorStructureShimmer\": \"#e6e0d9\",\n \"sysColorStructureShimmerInverse\": \"#545d68\",\n \"sysColorStructureSheen\": \"rgba(255, 255, 255, 0.7)\",\n \"sysColorStructureShadow\": \"#000000\"\n};\n\nexport { PAYPAL_THEME };\n","import _extends from '@babel/runtime/helpers/esm/extends';\nimport _slicedToArray from '@babel/runtime/helpers/esm/slicedToArray';\nimport _objectWithoutProperties from '@babel/runtime/helpers/esm/objectWithoutProperties';\nimport { useMemo, useState, useRef, useEffect } from 'react';\nimport ReactDOM from 'react-dom';\nimport { css, keyframes, useTheme, jsx } from '@emotion/react';\nimport { CheckmarkBackgroundIcon } from '@paypalcorp/pp-react-icons';\nimport { devWarning, utilStyles, ZINDEX_TOAST, getColorFamily, hasDocument, ColorProvider, KeyboardCode } from '@paypalcorp/pp-react-utils';\nimport _taggedTemplateLiteral from '@babel/runtime/helpers/esm/taggedTemplateLiteral';\nimport { math } from 'polished';\nimport { textStyles } from '@paypalcorp/pp-react-text';\n\nvar _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8;\nfunction styles(tokens) {\n /* istanbul ignore next */\n if (!Object.keys(tokens).length) {\n devWarning('Missing Emotion theme. Use ThemeProvider from @emotion/react to pass a valid theme from pp-react.');\n return {};\n }\n\n var sysBorderRadiusLg = tokens.sysBorderRadiusLg,\n sysColorSystemMain = tokens.sysColorSystemMain,\n sysColorSystemContrast = tokens.sysColorSystemContrast,\n sysColorSuccessMain = tokens.sysColorSuccessMain,\n sysColorSuccessContrast = tokens.sysColorSuccessContrast,\n sysSpaceLg = tokens.sysSpaceLg,\n sysSpaceSm = tokens.sysSpaceSm,\n sysSizeIconSm = tokens.sysSizeIconSm,\n sysMotionDurationEnterSmall = tokens.sysMotionDurationEnterSmall,\n sysMotionDurationExitSmall = tokens.sysMotionDurationExitSmall;\n\n var _utilStyles = utilStyles(tokens),\n variables = _utilStyles.variables;\n\n var _utilStyles2 = utilStyles(tokens),\n elevationStyles = _utilStyles2.elevationStyles;\n\n var ppuiEaseEnterSmall = variables.ppuiEaseEnterSmall,\n ppuiEaseExitSmall = variables.ppuiEaseExitSmall;\n\n var _textStyles = textStyles(tokens),\n textBody = _textStyles.body;\n\n var verticalExitPosition = math(\"-2*\".concat(sysSpaceLg));\n var base = css(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n label: toast_base;\\n display: flex;\\n padding: \", \";\\n border-radius: \", \";\\n left: 0;\\n right: 0;\\n margin: auto;\\n white-space: normal;\\n \", \";\\n background-color: \", \";\\n max-width: \", \";\\n \", \"\\n pointer-events: auto;\\n \"])), sysSpaceLg, sysBorderRadiusLg, elevationStyles.level2, sysColorSystemMain, '30rem', textBody({\n color: sysColorSystemContrast\n }));\n var container = css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n label: container;\\n display: flex;\\n position: fixed;\\n top: \", \";\\n z-index: \", \";\\n left: 50%;\\n transform: translateX(-50%);\\n width: calc(100% - \", \" * 2);\\n visibility: hidden;\\n opacity: 0;\\n pointer-events: none;\\n\\n &[aria-hidden='false'] {\\n visibility: visible;\\n opacity: 1;\\n }\\n \"])), sysSpaceLg, ZINDEX_TOAST, sysSpaceLg);\n var fadeIn = keyframes(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral([\"\\n 0% {\\n transform: translate(\\n -50%,\\n \", \"\\n );\\n opacity: 0;\\n\\n }\\n 100% {\\n visibility: visible;\\n transform: translate(-50%, 0);\\n opacity: 1;\\n }\\n \"])), verticalExitPosition);\n var fadeOut = keyframes(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral([\"\\n 0% {\\n visibility: visible;\\n transform: translate(-50%, 0);\\n opacity: 1;\\n }\\n 100% {\\n visibility: hidden;\\n transform: translate(\\n -50%,\\n \", \"\\n );\\n opacity: 0;\\n } \\n \"])), verticalExitPosition);\n var show = css(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral([\"\\n label: show;\\n animation: \", \" \", \" \", \";\\n \"])), fadeIn, sysMotionDurationEnterSmall, ppuiEaseEnterSmall);\n var hide = css(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral([\"\\n label: hide;\\n animation: \", \" \", \" \", \";\\n \"])), fadeOut, sysMotionDurationExitSmall, ppuiEaseExitSmall);\n var success = css(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral([\"\\n label: success;\\n background-color: \", \";\\n color: \", \";\\n \"])), sysColorSuccessMain, sysColorSuccessContrast);\n var successIcon = css(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral([\"\\n label: success_icon;\\n margin-right: \", \";\\n height: \", \";\\n\\n [dir='rtl'] & {\\n margin-left: \", \";\\n margin-right: 0;\\n }\\n \"])), sysSpaceSm, sysSizeIconSm, sysSpaceSm);\n return {\n base: base,\n container: container,\n show: show,\n hide: hide,\n success: success,\n successIcon: successIcon\n };\n}\n\nvar _excluded = [\"id\", \"message\", \"isSuccess\", \"duration\", \"onClose\", \"direction\", \"className\", \"containerClassName\", \"containerRef\"];\nvar defaultDuration = 7000;\n\nvar Toast = function (_ref) {\n var _ref$id = _ref.id,\n id = _ref$id === void 0 ? 'Toast' : _ref$id,\n _ref$message = _ref.message,\n message = _ref$message === void 0 ? 'message' : _ref$message,\n _ref$isSuccess = _ref.isSuccess,\n isSuccess = _ref$isSuccess === void 0 ? false : _ref$isSuccess,\n _ref$duration = _ref.duration,\n duration = _ref$duration === void 0 ? defaultDuration : _ref$duration,\n onClose = _ref.onClose,\n direction = _ref.direction,\n className = _ref.className,\n containerClassName = _ref.containerClassName,\n containerRef = _ref.containerRef,\n rest = _objectWithoutProperties(_ref, _excluded);\n\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n var _useState = useState(-1),\n _useState2 = _slicedToArray(_useState, 2),\n showState = _useState2[0],\n setShowState = _useState2[1];\n\n var startY = null;\n var startX = null;\n var toastRef = useRef();\n\n var getWrapperCurrent = function (w) {\n return (\n /* istanbul ignore next */\n w && w.current ? w.current : null\n );\n };\n\n var autoHideTimer = getWrapperCurrent(useRef());\n\n var handleClose = function () {\n setShowState(0);\n clearTimeout(autoHideTimer);\n startX = null;\n startY = null;\n };\n\n var handleKey = function (evt) {\n if (new KeyboardCode(evt.key || evt.keyCode).IS_ESC) {\n handleClose();\n }\n };\n /* istanbul ignore next */\n\n\n var handleTouchStart = function (evt) {\n //prevent from scrolling\n evt.preventDefault();\n /* istanbul ignore next */\n\n if (!startY && !startX) {\n var firstTouch = evt.changedTouches[0];\n startY = firstTouch.pageY;\n startX = firstTouch.pageX;\n }\n };\n /* istanbul ignore next */\n\n\n var handleTouchEnd = function (evt) {\n var endTouch = evt.changedTouches[0];\n var endX = endTouch.pageX;\n var endY = endTouch.pageY;\n var xDiff = startX - endX;\n var yDiff = startY - endY;\n\n if (Math.abs(yDiff) > Math.abs(xDiff)) {\n // means up/down is most significant\n if (yDiff > 0) {\n // swipe up\n handleClose();\n }\n }\n\n startX = null;\n startY = null;\n };\n\n useEffect(function () {\n if (showState < 0) {\n setShowState(1);\n }\n\n document.addEventListener('keydown', handleKey);\n var toast = getWrapperCurrent(toastRef); // Adding native event since evt.preventDefault (for preventing from scrolling\n // while swiping on toast up) is not possible using synthetic event\n //eslint-disable-next-line no-unused-expressions\n\n toast === null || toast === void 0 ? void 0 : toast.addEventListener('touchstart', handleTouchStart);\n return function () {\n document.removeEventListener('keydown', handleKey); //eslint-disable-next-line no-unused-expressions\n\n toast === null || toast === void 0 ? void 0 : toast.removeEventListener('touchstart', handleTouchStart);\n clearTimeout(autoHideTimer);\n };\n }, [showState]);\n /* istanbul ignore next */\n\n var containerStyles = [_styles.container, showState && _styles.show, !showState && _styles.hide];\n var toastCSSVal = [_styles.base, isSuccess && _styles.success];\n var successIcon = isSuccess && jsx(CheckmarkBackgroundIcon, {\n css: _styles.successIcon,\n size: \"sm\",\n \"data-ppui\": \"true\"\n });\n var colorFamily = getColorFamily(isSuccess ? 'Success' : 'Info', tokens);\n /* istanbul ignore next */\n\n return hasDocument() ? ReactDOM.createPortal(jsx(ColorProvider, {\n colorFamily: colorFamily,\n \"data-ppui\": \"true\"\n }, jsx(\"div\", _extends({\n id: id,\n dir: direction,\n css: containerStyles,\n className: containerClassName,\n \"aria-hidden\": showState <= 0,\n role: \"alert\",\n onAnimationEnd: function onAnimatonEnd() {\n if (showState === 1) {\n var timeOut = duration > defaultDuration ? duration : defaultDuration;\n autoHideTimer = setTimeout(handleClose, timeOut);\n } else if (typeof onClose === 'function') {\n onClose();\n }\n },\n \"data-ppui-info\": \"toast_3.5.6\"\n }, rest), jsx(\"div\", {\n ref: toastRef,\n css: toastCSSVal,\n className: className,\n onTouchEnd: handleTouchEnd,\n \"data-ppui\": \"true\"\n }, successIcon, message))), getWrapperCurrent(containerRef) || document.body) : null;\n};\n\nexport { Toast, styles as toastStyles };\n","import _extends from '@babel/runtime/helpers/esm/extends';\nimport _slicedToArray from '@babel/runtime/helpers/esm/slicedToArray';\nimport React, { useRef, useMemo, useState, useLayoutEffect } from 'react';\nimport { iconStyles, VerifiedIcon, QuestionIcon } from '@paypalcorp/pp-react-icons';\nimport ReactDOM from 'react-dom';\nimport { devWarning, utilStyles, ZINDEX_TOOLTIP, hasWindow, isTouchDevice, isActiveElementIn, KeyboardCode } from '@paypalcorp/pp-react-utils';\nimport { css, useTheme, jsx } from '@emotion/react';\nimport _taggedTemplateLiteral from '@babel/runtime/helpers/esm/taggedTemplateLiteral';\nimport { math } from 'polished';\nimport { textStyles } from '@paypalcorp/pp-react-text';\n\nvar _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9;\nfunction styles(tokens) {\n /* istanbul ignore next */\n if (!Object.keys(tokens).length) {\n devWarning('Missing Emotion theme. Use ThemeProvider from @emotion/react to pass a valid theme from pp-react.');\n return {};\n }\n\n var sysBorderRadiusInteractive = tokens.sysBorderRadiusInteractive,\n sysBorderRadiusSm = tokens.sysBorderRadiusSm,\n sysColorBackgroundHighContrast = tokens.sysColorBackgroundHighContrast,\n sysColorBackgroundSurface = tokens.sysColorBackgroundSurface,\n sysColorPrimaryMainActive = tokens.sysColorPrimaryMainActive,\n sysColorPrimaryMain = tokens.sysColorPrimaryMain,\n sysSizePointerWidthLg = tokens.sysSizePointerWidthLg,\n sysSizeTapTargetSm = tokens.sysSizeTapTargetSm,\n sysSpaceLg = tokens.sysSpaceLg,\n sysSpaceSm = tokens.sysSpaceSm;\n\n var _textStyles = textStyles(tokens),\n body = _textStyles.body;\n\n var _utilStyles = utilStyles(tokens),\n elevationStyles = _utilStyles.elevationStyles,\n caretStyles = _utilStyles.caretStyles,\n focusStyles = _utilStyles.focusStyles,\n screenReader = _utilStyles.screenReader;\n\n var _iconStyles = iconStyles(tokens),\n iconBase = _iconStyles.base,\n iconSizeXs = _iconStyles.sizeXs;\n\n var maxWidth = '18rem';\n var pointerHeight = math(\"\".concat(sysSizePointerWidthLg, \"/2\"));\n var base = css(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n label: tooltip_base;\\n \", \";\\n visibility: hidden;\\n opacity: 0;\\n max-width: \", \";\\n word-wrap: break-word;\\n padding: \", \";\\n position: absolute;\\n border-radius: \", \";\\n background-color: \", \";\\n z-index: \", \";\\n\\n \", \"\\n \", \"\\n \", \"\\n \", \"\\n\\n\\n &[aria-hidden='false'] {\\n visibility: visible;\\n opacity: 1;\\n }\\n\\n &.pp_react_tooltip--position_left {\\n label: position_left;\\n \", \"\\n }\\n\\n &.pp_react_tooltip--position_right {\\n label: position_right;\\n \", \"\\n }\\n\\n &.pp_react_tooltip--position_bottom {\\n label: position_bottom;\\n \", \"\\n }\\n\\n &.pp_react_tooltip--tip_left {\\n label: tip_position_left;\\n \", \"\\n }\\n\\n &.pp_react_tooltip--tip_right {\\n label: tip_position_right;\\n \", \"\\n }\\n \"])), body({\n color: sysColorBackgroundHighContrast\n }), maxWidth, sysSpaceLg, sysBorderRadiusSm, sysColorBackgroundSurface, ZINDEX_TOOLTIP, elevationStyles.level3, caretStyles.base(sysSizePointerWidthLg), caretStyles.positionBottom(pointerHeight), caretStyles.positionCenter(sysSizePointerWidthLg), caretStyles.positionRight(pointerHeight), caretStyles.positionLeft(pointerHeight), caretStyles.positionTop(pointerHeight), caretStyles.positionShiftLeft(sysSizePointerWidthLg), caretStyles.positionShiftRight(sysSizePointerWidthLg)); // Styles for Icon\n\n var icon = css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n label: tooltip-icon;\\n \", \";\\n \", \";\\n width: \", \";\\n height: \", \";\\n padding: 0;\\n display: inline-flex;\\n justify-content: center;\\n align-items: center;\\n color: \", \";\\n cursor: pointer;\\n border: 0;\\n background-color: transparent;\\n position: relative;\\n\\n &:hover,\\n &:active {\\n color: \", \";\\n outline: none;\\n }\\n\\n &:focus {\\n outline: none;\\n > span:first-of-type {\\n border-radius: \", \";\\n \", \";\\n }\\n }\\n \"])), iconBase, iconSizeXs, sysSizeTapTargetSm, sysSizeTapTargetSm, sysColorPrimaryMain, sysColorPrimaryMainActive, sysBorderRadiusInteractive, focusStyles.focusOffsetElement); // Image Positions\n\n var image = css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral([\"\\n label: image;\\n display: flex;\\n img {\\n max-width: \", \";\\n }\\n \"])), math(\"\".concat(maxWidth, \" - 2 * \").concat(sysSpaceLg)));\n\n var imageAlignBottom = function (justifyImage) {\n return css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral([\"\\n justify-content: \", \";\\n padding-top: \", \";\\n \"])), justifyImage, sysSpaceSm);\n };\n\n var imageAlignTop = function (justifyImage) {\n return css(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral([\"\\n justify-content: \", \";\\n padding-bottom: \", \";\\n \"])), justifyImage, sysSpaceSm);\n };\n\n var imageTopLeft = css(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral([\"\\n label: image_top_left;\\n \", \"\\n \"])), imageAlignTop('flex-start'));\n var imageTopCenter = css(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral([\"\\n label: image_top_center;\\n \", \"\\n \"])), imageAlignTop('center'));\n var imageBottomLeft = css(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral([\"\\n label: image_bottom_left;\\n \", \"\\n \"])), imageAlignBottom('flex-start'));\n var imageBottomCenter = css(_templateObject9 || (_templateObject9 = _taggedTemplateLiteral([\"\\n label: image_bottom_center;\\n \", \"\\n \"])), imageAlignBottom('center'));\n return {\n base: base,\n icon: icon,\n screenReader: screenReader,\n image: image,\n imageTopLeft: imageTopLeft,\n imageTopCenter: imageTopCenter,\n imageBottomLeft: imageBottomLeft,\n imageBottomCenter: imageBottomCenter\n };\n}\n\nvar tooltip;\nvar tooltipOrigin;\n/* eslint-disable complexity */\n\nvar Tooltip = function (_ref) {\n var _ref$name = _ref.name,\n name = _ref$name === void 0 ? 'Tooltip' : _ref$name,\n _ref$description = _ref.description,\n description = _ref$description === void 0 ? 'tooltip' : _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 windowRef = _ref.windowRef,\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 var wrapperRef = useRef();\n var tooltipOriginRef = useRef();\n var tooltipRef = useRef(); // If theme is not directly provided, get from themeContext\n\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n var noop = function () {};\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 (w) {\n return (\n /* istanbul ignore next */\n w && w.current ? w.current : null\n );\n };\n /* istanbul ignore next */\n\n\n var setTooltipPosition = function (top, left) {\n var _containerPos, _containerPos2;\n\n var containerElm = getWrapperCurrent(containerRef);\n\n var _ref2 = containerElm ? [top - ((_containerPos = containerPos) === null || _containerPos === void 0 ? void 0 : _containerPos.top) - scrollY + containerElm.scrollTop, left - ((_containerPos2 = containerPos) === null || _containerPos2 === void 0 ? void 0 : _containerPos2.left) - scrollX + containerElm.scrollLeft] : [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 /* istanbul ignore next */\n\n\n var getTooltipBoundary = function () {\n var providedWindow = windowRef ? getWrapperCurrent(windowRef) : 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: hasWindow() ? window : null,\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 () {\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 /* istanbul ignore next */\n\n\n var positionBottom = function (top, left) {\n var offsetY = top + scrollY + height + originHeight + spacingOffset * 2 - iconSpacing * 2;\n setTooltipPosition(offsetY, left);\n };\n\n var positionLeft = function () {\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('pp_react_tooltip--position_left');\n setTooltipPosition(leftPosY, leftPosX);\n };\n\n var positionRight = function () {\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('pp_react_tooltip--position_right');\n setTooltipPosition(rightPosY, rightPosX);\n };\n\n var selfPosition =\n /* istanbul ignore next */\n function () {\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('pp_react_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('pp_react_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('pp_react_tooltip--tip_right');\n }\n\n setTooltipPosition(offsetY, offsetX);\n }\n }; // for keyboard focus and mouseover\n\n\n var setOpen = function (evt) {\n evt.stopPropagation();\n setState({\n isOpen: true,\n currentEvent: evt.type\n });\n // eslint-disable-next-line\n onOpen && onOpen(evt, name);\n };\n\n var clearOpen = function (evt) {\n // istanbul ignore next\n if (evt.type === 'resize' && isTouchDevice() && isActiveElementIn(['INPUT', 'TEXTAREA'])) {\n return;\n }\n\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('mousewheel', clearOpen);\n }\n };\n\n var setWidth = function () {\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 () {\n tooltip = getWrapperCurrent(tooltipRef);\n tooltipOrigin = getWrapperCurrent(tooltipOriginRef);\n originPos = tooltipOrigin.getBoundingClientRect();\n var containerElm = getWrapperCurrent(containerRef);\n /* istanbul ignore next */\n\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 = hasWindow() && window.getComputedStyle(document.body).getPropertyValue('font-size') || '16px';\n var rootFontSize = parseInt(rootFontSizePx.split('px')[0], 10);\n caretWidth = 1.125 * rootFontSize;\n caretHeight = 0.75 * rootFontSize;\n caretSpaceHorizontal = 1 * rootFontSize; //16px spacing between caret and tooltip corner\n\n // 4px separation between caret and tooltip icon\n spacingOffset = caretHeight + 0.25 * rootFontSize;\n var targetSize = originWidth;\n tooltipIconSize = 1.5 * rootFontSize; // 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('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 (evt) {\n var current = getWrapperCurrent(wrapperRef);\n /* istanbul ignore next */\n\n if (isOpen && current && !current.contains(evt.target)) {\n evt.stopPropagation();\n clearOpen(evt);\n }\n };\n\n var handleKey = function (evt) {\n /* istanbul ignore next */\n var KeyCode = new KeyboardCode(evt.key || evt.keyCode);\n\n if (KeyCode.IS_TAB || KeyCode.IS_ESC) {\n clearOpen(evt);\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 /* istanbul ignore next */\n\n var handleMouseLeave = function (evt) {\n if (tooltip && evt.relatedTarget !== tooltip) {\n evt.stopPropagation();\n clearOpen(evt);\n }\n };\n\n var imagePositionStyleName = 'image' + function camelCase(str) {\n return str.replace(new RegExp(/[-_]+/, 'g'), ' ').replace(new RegExp(/[^\\w\\s]/, 'g'), '').replace(new RegExp(/\\s+(.)(\\w*)/, 'g'), function (_first, second, third) {\n return \"\".concat(second.toUpperCase() + third.toLowerCase());\n }).replace(new RegExp(/\\w/), function (s) {\n return s.toUpperCase();\n });\n }(imagePosition);\n\n var imagePositionCSSVal = [_styles.image, //@ts-ignore\n _styles[imagePositionStyleName]];\n var displayImage = jsx(\"span\", {\n css: imagePositionCSSVal,\n \"data-ppui\": \"true\"\n }, imageElement);\n //@ts-ignore\n\n /* istanbul ignore next */\n var tooltipNode = isOpen && ReactDOM.createPortal(jsx(\"div\", {\n ref: tooltipRef,\n css: _styles.base,\n className: tooltipClassName,\n id: name,\n role: \"tooltip\",\n \"aria-hidden\": !isOpen,\n onMouseLeave: currentEvent === 'focus' ? noop : clearOpen,\n \"data-ppui\": \"true\"\n }, imageElement && (imagePosition === 'top-center' || imagePosition === 'top-left') && displayImage, description, imageElement && (imagePosition === 'bottom-center' || imagePosition === 'bottom-left') && displayImage), getWrapperCurrent(containerRef) || (hasWindow() ? document.body : null));\n /* istanbul ignore next */\n\n var TooltipIcon = verifiedIcon ? VerifiedIcon : QuestionIcon;\n /* istanbul ignore next */\n\n var handleTouchStart = function (evt) {\n var current = getWrapperCurrent(wrapperRef);\n if (!current.contains(evt.target)) clearOpen(evt);\n };\n\n return jsx(\"span\", {\n ref: wrapperRef,\n className: className,\n \"data-ppui-info\": \"tooltip_4.8.6\"\n }, jsx(React.Fragment, null, jsx(\"button\", _extends({\n type: \"button\",\n ref: tooltipOriginRef,\n css: _styles.icon\n }, isOpen ? {\n 'aria-describedby': name\n } : {}, {\n onMouseEnter: currentEvent === 'focus' ? noop : setOpen,\n onMouseLeave: currentEvent === 'focus' ? noop : handleMouseLeave,\n onTouchEnd: function handleTouchEnd(evt) {\n evt.preventDefault(); // Toggle the state\n\n if (isOpen) {\n clearOpen(evt);\n document.removeEventListener('touchstart', handleTouchStart);\n } else {\n setOpen(evt);\n document.addEventListener('touchstart', handleTouchStart);\n }\n },\n onMouseDown: function handleMouseDown(evt) {\n return evt.preventDefault();\n },\n onFocus: isTouchDevice() ? noop : setOpen,\n className: triggerClassName,\n \"data-ppui\": \"true\"\n }), jsx(TooltipIcon, {\n size: \"sm\",\n \"aria-hidden\": \"true\",\n \"data-ppui\": \"true\"\n }), jsx(\"span\", {\n css: _styles.screenReader,\n \"data-ppui\": \"true\"\n }, screenReaderText)), tooltipNode));\n};\n\nexport { Tooltip, styles as tooltipStyles };\n","import _taggedTemplateLiteral from '@babel/runtime/helpers/esm/taggedTemplateLiteral';\nimport { css, keyframes, useTheme, jsx, Global } from '@emotion/react';\nimport { math, rgba, rem } from 'polished';\nimport _extends from '@babel/runtime/helpers/esm/extends';\nimport _objectWithoutProperties from '@babel/runtime/helpers/esm/objectWithoutProperties';\nimport React, { useMemo } from 'react';\nimport _slicedToArray from '@babel/runtime/helpers/esm/slicedToArray';\nimport _classCallCheck from '@babel/runtime/helpers/esm/classCallCheck';\nimport _createClass from '@babel/runtime/helpers/esm/createClass';\nimport _defineProperty from '@babel/runtime/helpers/esm/defineProperty';\nimport _typeof from '@babel/runtime/helpers/esm/typeof';\n\nvar _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6;\nfunction focusStyles(tokens) {\n /* istanbul ignore next */\n if (!Object.keys(tokens).length) {\n devWarning('Missing Emotion theme. Use ThemeProvider from @emotion/react to pass a valid theme from pp-react.');\n return {};\n }\n\n var sysColorBackgroundSurface = tokens.sysColorBackgroundSurface,\n sysColorStructureFocus = tokens.sysColorStructureFocus,\n sysBorderThicknessEmphasis = tokens.sysBorderThicknessEmphasis,\n sysColorStructureFocusOutline = tokens.sysColorStructureFocusOutline,\n sysColorErrorMain = tokens.sysColorErrorMain,\n sysColorStructureErrorOutline = tokens.sysColorStructureErrorOutline,\n sysBorderThicknessNormal = tokens.sysBorderThicknessNormal;\n /* START old focus indicator */\n\n var stateFocusBorderColorInner = sysColorStructureFocus;\n var stateFocusBorderWidthInner = math(\"\".concat(sysBorderThicknessNormal, \" + \").concat(sysBorderThicknessEmphasis));\n var stateFocusBorderColorOuter = sysColorStructureFocusOutline;\n var stateFocusBorderWidthOuter = math(\"2 * \".concat(stateFocusBorderWidthInner));\n\n function focusAfter() {\n var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var _args$radius = args.radius,\n radius = _args$radius === void 0 ? 'inherit' : _args$radius,\n _args$width = args.width,\n width = _args$width === void 0 ? '100%' : _args$width,\n _args$height = args.height,\n height = _args$height === void 0 ? '100%' : _args$height,\n _args$border = args.border,\n border = _args$border === void 0 ? 'none' : _args$border,\n _args$top = args.top,\n top = _args$top === void 0 ? '0' : _args$top,\n _args$left = args.left,\n left = _args$left === void 0 ? '0' : _args$left,\n _args$right = args.right,\n right = _args$right === void 0 ? '0' : _args$right,\n _args$boxShadowColor = args.boxShadowColor,\n boxShadowColor = _args$boxShadowColor === void 0 ? stateFocusBorderColorOuter : _args$boxShadowColor;\n return css(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n content: '';\\n position: absolute;\\n top: \", \";\\n left: \", \";\\n right: \", \";\\n border: \", \";\\n box-shadow: 0 0 0 \", \" \", \";\\n border-radius: \", \";\\n width: \", \";\\n height: \", \";\\n pointer-events: none;\\n \"])), top, left, right, border, stateFocusBorderWidthOuter, boxShadowColor, radius, width, height);\n }\n\n function offsetFocusAfter() {\n var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var _args$radius2 = args.radius,\n radius = _args$radius2 === void 0 ? 'inherit' : _args$radius2,\n _args$width2 = args.width,\n width = _args$width2 === void 0 ? '100%' : _args$width2,\n _args$height2 = args.height,\n height = _args$height2 === void 0 ? '100%' : _args$height2,\n _args$horizontalOffse = args.horizontalOffset,\n horizontalOffset = _args$horizontalOffse === void 0 ? sysBorderThicknessNormal : _args$horizontalOffse,\n _args$verticalOffset = args.verticalOffset,\n verticalOffset = _args$verticalOffset === void 0 ? sysBorderThicknessNormal : _args$verticalOffset,\n _args$borderColor = args.borderColor,\n borderColor = _args$borderColor === void 0 ? stateFocusBorderColorInner : _args$borderColor,\n _args$boxShadowColor2 = args.boxShadowColor,\n boxShadowColor = _args$boxShadowColor2 === void 0 ? stateFocusBorderColorOuter : _args$boxShadowColor2;\n var widthOffset = math(\"\".concat(horizontalOffset, \" * 2\"));\n var heightOffset = math(\"\".concat(verticalOffset, \" * 2\"));\n return css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n content: '';\\n position: absolute;\\n top: \", \";\\n left: \", \";\\n border: \", \" solid \", \";\\n box-shadow: 0 0 0 \", \" \", \";\\n border-radius: \", \";\\n text-indent: \", \";\\n width: calc(\", \" - \", \");\\n height: calc(\", \" - \", \");\\n pointer-events: none;\\n \"])), verticalOffset, horizontalOffset, stateFocusBorderWidthInner, borderColor, stateFocusBorderWidthOuter, boxShadowColor, radius, horizontalOffset, width, widthOffset, height, heightOffset);\n }\n\n function focusInline() {\n var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var _args$radius3 = args.radius,\n radius = _args$radius3 === void 0 ? 'inherit' : _args$radius3,\n _args$colorInner = args.colorInner,\n colorInner = _args$colorInner === void 0 ? stateFocusBorderColorInner : _args$colorInner,\n _args$colorOuter = args.colorOuter,\n colorOuter = _args$colorOuter === void 0 ? stateFocusBorderColorOuter : _args$colorOuter;\n var borderWidth = math(\"\".concat(stateFocusBorderWidthInner, \" + \").concat(stateFocusBorderWidthOuter));\n return css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral([\"\\n box-shadow: 0 0 0 \", \" \", \",\\n 0 0 0 \", \" \", \";\\n outline: \", \" solid transparent;\\n border-radius: \", \";\\n \"])), stateFocusBorderWidthInner, colorInner, borderWidth, colorOuter, stateFocusBorderWidthInner, radius);\n }\n /* END old focus indicator */\n\n\n var focusInlineBorderThickness = \"calc(\".concat(sysBorderThicknessEmphasis, \" + \").concat(sysBorderThicknessEmphasis, \")\");\n var focusElement = css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral([\"\\n outline: \", \" solid \", \";\\n \"])), sysBorderThicknessEmphasis, sysColorStructureFocus);\n var focusOffsetElement = css(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral([\"\\n box-shadow: 0 0 0 \", \" \", \";\\n outline-offset: \", \";\\n \", \";\\n \"])), sysBorderThicknessEmphasis, sysColorBackgroundSurface, sysBorderThicknessEmphasis, focusElement);\n var focusInlineElement = css(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral([\"\\n box-shadow: 0 0 0 \", \" inset\\n \", \";\\n outline-offset: -\", \";\\n \", \";\\n \"])), focusInlineBorderThickness, sysColorBackgroundSurface, sysBorderThicknessEmphasis, focusElement);\n return {\n stateFocusBorderColorOuter: stateFocusBorderColorOuter,\n stateFocusBorderWidthOuter: stateFocusBorderWidthOuter,\n stateFocusBorderColorInner: stateFocusBorderColorInner,\n stateFocusBorderWidthInner: stateFocusBorderWidthInner,\n stateErrorFocusBorderColorInner: sysColorErrorMain,\n stateErrorFocusBorderColorOuter: sysColorStructureErrorOutline,\n focusAfter: focusAfter,\n offsetFocusAfter: offsetFocusAfter,\n focusInline: focusInline,\n focusElement: focusElement,\n focusOffsetElement: focusOffsetElement,\n focusInlineElement: focusInlineElement\n };\n}\n\nvar _templateObject$1, _templateObject2$1, _templateObject3$1, _templateObject4$1;\nfunction styles(tokens) {\n /* istanbul ignore next */\n if (!Object.keys(tokens).length) {\n devWarning('Missing Emotion theme. Use ThemeProvider from @emotion/react to pass a valid theme from pp-react.');\n return {};\n }\n\n var sysBorderThicknessNormal = tokens.sysBorderThicknessNormal,\n sysBorderRadiusLg = tokens.sysBorderRadiusLg,\n sysColorStructureShimmer = tokens.sysColorStructureShimmer,\n sysColorStructureShimmerInverse = tokens.sysColorStructureShimmerInverse,\n sysColorStructureSheen = tokens.sysColorStructureSheen,\n sysMotionDurationLoopStandard = tokens.sysMotionDurationLoopStandard,\n sysMotionEasingLoopStandard = tokens.sysMotionEasingLoopStandard;\n var ppuiEaseLoopStandard = \"cubic-bezier(\".concat(sysMotionEasingLoopStandard, \")\");\n var animation = keyframes(_templateObject$1 || (_templateObject$1 = _taggedTemplateLiteral([\"\\n from {\\n background-position: 100% 0;\\n }\\n to {\\n background-position: -100% 0;\\n }\\n \"])));\n var base = css(_templateObject2$1 || (_templateObject2$1 = _taggedTemplateLiteral([\"\\n label: shimmer_base;\\n background-color: \", \";\\n border: \", \" solid transparent;\\n background-image: linear-gradient(\\n to right,\\n \", \" 0%,\\n \", \" 50%,\\n \", \" 100%\\n );\\n background-position: 100% 0;\\n background-size: 200%;\\n animation: \", \" \", \"\\n \", \" infinite;\\n \"])), sysColorStructureShimmer, sysBorderThicknessNormal, sysColorStructureShimmer, sysColorStructureSheen, sysColorStructureShimmer, animation, sysMotionDurationLoopStandard, ppuiEaseLoopStandard);\n var inverse = css(_templateObject3$1 || (_templateObject3$1 = _taggedTemplateLiteral([\"\\n label: inverse;\\n background-color: \", \";\\n background-image: linear-gradient(\\n to right,\\n \", \" 0%,\\n \", \" 50%,\\n \", \" 100%\\n );\\n \"])), sysColorStructureShimmerInverse, sysColorStructureShimmerInverse, sysColorStructureSheen, sysColorStructureShimmerInverse);\n\n function defaults() {\n var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var _args$borderRadius = args.borderRadius,\n borderRadius = _args$borderRadius === void 0 ? sysBorderRadiusLg : _args$borderRadius,\n _args$width = args.width,\n width = _args$width === void 0 ? '100%' : _args$width,\n _args$height = args.height,\n height = _args$height === void 0 ? '100%' : _args$height;\n return css(_templateObject4$1 || (_templateObject4$1 = _taggedTemplateLiteral([\"\\n label: default;\\n border-radius: \", \";\\n width: \", \";\\n height: \", \";\\n \"])), borderRadius, width, height);\n }\n\n return {\n base: base,\n inverse: inverse,\n defaults: defaults\n };\n}\n\nvar _templateObject$2, _templateObject2$2, _templateObject3$2, _templateObject4$2, _templateObject5$1, _templateObject6$1, _templateObject7, _templateObject8, _templateObject9;\nfunction elevationStyles(tokens) {\n /* istanbul ignore next */\n if (!Object.keys(tokens).length) {\n devWarning('Missing Emotion theme. Use ThemeProvider from @emotion/react to pass a valid theme from pp-react.');\n return {};\n }\n\n var sysColorStructureShadow = tokens.sysColorStructureShadow,\n sysColorBackgroundSurface = tokens.sysColorBackgroundSurface,\n sysElevationHorizontalOffsetRatio = tokens.sysElevationHorizontalOffsetRatio,\n sysElevationOpacity = tokens.sysElevationOpacity,\n sysElevationVerticalOffsetRatio = tokens.sysElevationVerticalOffsetRatio,\n sysElevationBlurCurve = tokens.sysElevationBlurCurve,\n sysElevationBlurSlope = tokens.sysElevationBlurSlope,\n sysElevationBlurBase = tokens.sysElevationBlurBase,\n sysElevationBrightenFactor = tokens.sysElevationBrightenFactor;\n\n function getOffsetX(level) {\n return rem(sysElevationHorizontalOffsetRatio * level);\n }\n\n function getOffsetY(level) {\n return rem(sysElevationVerticalOffsetRatio * level - 1);\n }\n\n function getBlur(level) {\n var curveAndSlopValue = rem(level * level * sysElevationBlurCurve + level * sysElevationBlurSlope);\n return math(\"\".concat(curveAndSlopValue, \" + \").concat(sysElevationBlurBase));\n }\n\n var color = rgba(sysColorStructureShadow, sysElevationOpacity);\n\n var backgroundImage = function (level) {\n return \"background-image: linear-gradient(\".concat(rgba(sysColorBackgroundSurface, level * sysElevationBrightenFactor), \", \").concat(rgba(sysColorBackgroundSurface, level * sysElevationBrightenFactor), \")\");\n };\n\n var shadowProps = function (level) {\n return \"\".concat(getOffsetX(level), \" \").concat(getOffsetY(level), \" \").concat(getBlur(level), \" \").concat(color);\n };\n\n var elevation = function (level) {\n return css(_templateObject$2 || (_templateObject$2 = _taggedTemplateLiteral([\"\\n box-shadow: \", \";\\n \", \";\\n \"])), shadowProps(level), backgroundImage(level));\n };\n\n var level1 = css(_templateObject2$2 || (_templateObject2$2 = _taggedTemplateLiteral([\"\\n label: elevation_level1;\\n \", \"\\n \"])), elevation(1));\n var level2 = css(_templateObject3$2 || (_templateObject3$2 = _taggedTemplateLiteral([\"\\n label: elevation_level2;\\n \", \"\\n \"])), elevation(2));\n var level3 = css(_templateObject4$2 || (_templateObject4$2 = _taggedTemplateLiteral([\"\\n label: elevation_level3;\\n \", \"\\n \"])), elevation(3));\n var filterLevel1 = css(_templateObject5$1 || (_templateObject5$1 = _taggedTemplateLiteral([\"\\n label: drop_shadow1;\\n filter: drop-shadow(\", \");\\n \"])), shadowProps(1));\n var filterLevel2 = css(_templateObject6$1 || (_templateObject6$1 = _taggedTemplateLiteral([\"\\n label: drop_shadow2;\\n filter: drop-shadow(\", \");\\n \"])), shadowProps(2));\n var filterLevel3 = css(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral([\"\\n label: drop_shadow3;\\n filter: drop-shadow(\", \");\\n \"])), shadowProps(3)); // NOTE: Used for fixed columns in Tables\n\n var level1Horizontal = css(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral([\"\\n label: fixed_elevation;\\n box-shadow: 0 0 \", \" \", \";\\n \"])), getBlur(0.33), color); // NOTE: Elevation used in Modal\n\n var level3Above = css(_templateObject9 || (_templateObject9 = _taggedTemplateLiteral([\"\\n label: elevation_level3_above;\\n box-shadow: \", \" -\", \" \", \" \", \";\\n \", \";\\n transform: translateZ(0);\\n \"])), getOffsetX(3), getOffsetY(3), getBlur(3), color, backgroundImage(3));\n return {\n level1: level1,\n level2: level2,\n level3: level3,\n level1Horizontal: level1Horizontal,\n level3Above: level3Above,\n filterLevel1: filterLevel1,\n filterLevel2: filterLevel2,\n filterLevel3: filterLevel3\n };\n}\n\nvar _templateObject$3, _templateObject2$3, _templateObject3$3, _templateObject4$3, _templateObject5$2, _templateObject6$2, _templateObject7$1, _templateObject8$1;\nfunction caretStyles(tokens) {\n /* istanbul ignore next */\n if (!Object.keys(tokens).length) {\n devWarning('Missing Emotion theme. Use ThemeProvider from @emotion/react to pass a valid theme from pp-react.');\n return {};\n }\n\n var sysSpaceSm = tokens.sysSpaceSm,\n sysSpaceMd = tokens.sysSpaceMd,\n sysSpaceLg = tokens.sysSpaceLg;\n\n var base = function (caretSideLength) {\n return css(_templateObject$3 || (_templateObject$3 = _taggedTemplateLiteral([\"\\n &:before {\\n content: '';\\n position: absolute;\\n background-color: inherit;\\n width: \", \";\\n height: \", \";\\n transform: scale(0.72) rotate(45deg);\\n box-shadow: inherit;\\n z-index: 0;\\n }\\n\\n //hack to cover top part of rotated skewed square and get triangle shape:\\n &:after {\\n content: '';\\n position: absolute;\\n background-color: inherit;\\n width: 2.5rem;\\n height: \", \";\\n }\\n \"])), caretSideLength, caretSideLength, sysSpaceLg);\n };\n\n var positionBottom = function (caretVerticalOffset) {\n return css(_templateObject2$3 || (_templateObject2$3 = _taggedTemplateLiteral([\"\\n &:before {\\n top: auto;\\n bottom: -\", \";\\n }\\n &:after {\\n top: auto;\\n bottom: 0;\\n }\\n \"])), caretVerticalOffset);\n };\n\n var positionTop = function (caretVerticalOffset) {\n return css(_templateObject3$3 || (_templateObject3$3 = _taggedTemplateLiteral([\"\\n &:before {\\n top: -\", \";\\n bottom: auto;\\n }\\n &:after {\\n top: 0;\\n bottom: auto;\\n }\\n \"])), caretVerticalOffset);\n };\n\n var positionCenter = function (caretWidth) {\n return css(_templateObject4$3 || (_templateObject4$3 = _taggedTemplateLiteral([\"\\n &:before {\\n left: calc(50% - \", \" / 2);\\n right: auto;\\n }\\n &:after {\\n left: calc(50% - 1.25rem);\\n right: auto;\\n }\\n \"])), caretWidth);\n };\n\n var positionShiftLeft = function (caretSpaceHorizontal) {\n return css(_templateObject5$2 || (_templateObject5$2 = _taggedTemplateLiteral([\"\\n &:before {\\n left: \", \";\\n right: auto;\\n }\\n &:after {\\n left: \", \";\\n right: auto;\\n }\\n \"])), caretSpaceHorizontal, sysSpaceSm);\n };\n\n var positionShiftRight = function (caretSpaceHorizontal) {\n return css(_templateObject6$2 || (_templateObject6$2 = _taggedTemplateLiteral([\"\\n &:before {\\n left: auto;\\n right: \", \";\\n }\\n &:after {\\n left: auto;\\n right: \", \";\\n }\\n \"])), caretSpaceHorizontal, sysSpaceSm);\n };\n\n var positionLeft = function (caretVerticalOffset) {\n return css(_templateObject7$1 || (_templateObject7$1 = _taggedTemplateLiteral([\"\\n &:before {\\n top: calc(50% - \", \");\\n bottom: auto;\\n left: -\", \";\\n right: auto;\\n }\\n &:after {\\n transform: rotate(90deg);\\n top: calc(50% - \", \");\\n bottom: auto;\\n left: -\", \";\\n right: auto;\\n }\\n \"])), caretVerticalOffset, caretVerticalOffset, caretVerticalOffset, sysSpaceMd);\n };\n\n var positionRight = function (caretVerticalOffset) {\n return css(_templateObject8$1 || (_templateObject8$1 = _taggedTemplateLiteral([\"\\n &:before {\\n top: calc(50% - \", \");\\n bottom: auto;\\n left: auto;\\n right: -\", \";\\n }\\n &:after {\\n transform: rotate(90deg);\\n top: calc(50% - \", \");\\n bottom: auto;\\n left: auto;\\n right: -\", \";\\n }\\n \"])), caretVerticalOffset, caretVerticalOffset, caretVerticalOffset, sysSpaceMd);\n };\n\n return {\n base: base,\n positionBottom: positionBottom,\n positionTop: positionTop,\n positionCenter: positionCenter,\n positionShiftLeft: positionShiftLeft,\n positionShiftRight: positionShiftRight,\n positionLeft: positionLeft,\n positionRight: positionRight\n };\n}\n\nvar AnimateDirection;\n\n(function (AnimateDirection) {\n AnimateDirection[\"LEFT\"] = \"left\";\n AnimateDirection[\"RIGHT\"] = \"right\";\n})(AnimateDirection || (AnimateDirection = {}));\n\nvar ZINDEX_DROPDOWN = 1060;\nvar ZINDEX_TOOLTIP = 1070;\nvar ZINDEX_COACHTIP = 1080;\nvar ZINDEX_MODAL = 1090; // cookiebanner z-index is 1051\n\nvar ZINDEX_TOAST = 1100; // can be on top of modal\n\nvar DEFAULT_CDNPATH = 'www.paypalobjects.com';\nvar DEFAULT_ASSETPATH = 'icons/v3'; // tomorrow it will be illustrations, ...\n\nvar svgBasePath = function () {\n var cdnHost = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : DEFAULT_CDNPATH;\n var assetPath = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : DEFAULT_ASSETPATH;\n return \"https://\".concat(cdnHost, \"/paypal-ui/\").concat(assetPath, \"/svg\");\n};\n\nvar capitalize = function (word) {\n return word && word !== '' ? word[0].toUpperCase() + word.slice(1) : word;\n};\nvar curry = function (func, firstParam) {\n return function () {\n for (var _len = arguments.length, params = new Array(_len), _key = 0; _key < _len; _key++) {\n params[_key] = arguments[_key];\n }\n\n return func.apply(void 0, [firstParam].concat(params));\n };\n};\nvar getPrefixedAttribute = function (prefix, name, object, fallback) {\n var _ref, _object$name;\n\n return (_ref = (_object$name = object[name]) !== null && _object$name !== void 0 ? _object$name : object[\"\".concat(prefix).concat(name)]) !== null && _ref !== void 0 ? _ref : typeof fallback === 'function' ? fallback(prefix, name, object) : fallback;\n};\nvar VARIABLE_PATTERN = /\\${(\\w+)}/g;\nvar tokenTemplate = function (template, tokenMap) {\n return template.replace(VARIABLE_PATTERN, function (_match, name) {\n var _tokenMap$name;\n\n return (_tokenMap$name = tokenMap[name]) !== null && _tokenMap$name !== void 0 ? _tokenMap$name : \"${\".concat(name, \"}\");\n });\n};\n\nvar _templateObject$4, _templateObject2$4, _templateObject3$4, _templateObject4$4, _templateObject5$3, _templateObject6$3;\n\nfunction variables(tokens) {\n /* istanbul ignore next */\n if (!Object.keys(tokens).length) {\n devWarning('Missing Emotion theme. Use ThemeProvider from @emotion/react to pass a valid theme from pp-react.');\n return {};\n }\n\n var sysMotionTimingX1 = tokens.sysMotionTimingX1,\n sysMotionTimingY1 = tokens.sysMotionTimingY1,\n sysMotionTimingX2 = tokens.sysMotionTimingX2,\n sysMotionTimingY2 = tokens.sysMotionTimingY2,\n sysMotionEasingLoopStandard = tokens.sysMotionEasingLoopStandard,\n sysMotionEasingEnterSmall = tokens.sysMotionEasingEnterSmall,\n sysMotionEasingExitSmall = tokens.sysMotionEasingExitSmall,\n sysMotionEasingMoveSmall = tokens.sysMotionEasingMoveSmall;\n return {\n ppuiEaseInOut: \"cubic-bezier(\\n \".concat(sysMotionTimingX1, \",\\n \").concat(sysMotionTimingY1, \",\\n \").concat(sysMotionTimingX2, \",\\n \").concat(sysMotionTimingY2, \"\\n )\"),\n ppuiEaseLoopStandard: \"cubic-bezier(\\n \".concat(sysMotionEasingLoopStandard, \"\\n )\"),\n ppuiEaseEnterSmall: \"cubic-bezier(\".concat(sysMotionEasingEnterSmall, \")\"),\n ppuiEaseExitSmall: \"cubic-bezier(\".concat(sysMotionEasingExitSmall, \")\"),\n ppuiEaseMoveSmall: \"cubic-bezier(\\n \".concat(sysMotionEasingMoveSmall, \"\\n )\")\n };\n}\n\nfunction motionTimings(tokens) {\n /* istanbul ignore next */\n if (!Object.keys(tokens).length) {\n devWarning('Missing Emotion theme. Use ThemeProvider from @emotion/react to pass a valid theme from pp-react.');\n return {};\n }\n\n var _variables2 = variables(tokens),\n ppuiEaseInOut = _variables2.ppuiEaseInOut;\n\n var animationTiming = css(_templateObject$4 || (_templateObject$4 = _taggedTemplateLiteral([\"\\n label: motion_animation;\\n animation-timing-function: \", \";\\n \"])), ppuiEaseInOut);\n var transitionTiming = css(_templateObject2$4 || (_templateObject2$4 = _taggedTemplateLiteral([\"\\n label: motion_transition;\\n transition-timing-function: \", \";\\n \"])), ppuiEaseInOut);\n return {\n animationTiming: animationTiming,\n transitionTiming: transitionTiming\n };\n}\n\nfunction styles$1(tokens) {\n /* istanbul ignore next */\n if (!Object.keys(tokens).length) {\n devWarning('Missing Emotion theme. Use ThemeProvider from @emotion/react to pass a valid theme from pp-react.');\n return {};\n }\n\n var _variables = variables(tokens);\n\n var _focusStyles = focusStyles(tokens);\n\n var _shimmerStyles = styles(tokens);\n\n var _motionTimings = motionTimings(tokens);\n\n var _elevationStyles = elevationStyles(tokens);\n\n var _caretStyles = caretStyles(tokens);\n\n var screenReader = css(_templateObject3$4 || (_templateObject3$4 = _taggedTemplateLiteral([\"\\n label: screenReader;\\n position: absolute;\\n clip: rect(1px, 1px, 1px, 1px);\\n padding: 0;\\n border: 0;\\n width: 1px;\\n height: 1px;\\n overflow: hidden;\\n \"])));\n var ellipsis = css(_templateObject4$4 || (_templateObject4$4 = _taggedTemplateLiteral([\"\\n white-space: nowrap;\\n text-overflow: ellipsis;\\n overflow: hidden;\\n \"])));\n\n var mediaQuery = function (queriedCss) {\n var size = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : tokens.sysSizeMediaMd;\n var styleStr = typeof queriedCss === 'string' ? queriedCss : queriedCss.styles;\n return css(_templateObject5$3 || (_templateObject5$3 = _taggedTemplateLiteral([\"\\n @media screen and (max-width: \", \") {\\n \", \"\\n }\\n \"])), size, tokenTemplate(styleStr, tokens));\n };\n /**\n * Use direction to generate keyframes\n * @param direction AnimateDirection\n * @returns SerializedStyles\n */\n // This is tested, but coverage not registering it\n\n /* istanbul ignore next */\n\n\n var slideTo = function () {\n var direction = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : AnimateDirection.RIGHT;\n var startPosition = direction === AnimateDirection.RIGHT ? '-100%' : '100%';\n return keyframes(_templateObject6$3 || (_templateObject6$3 = _taggedTemplateLiteral([\"\\n 0% {\\n transform: translateX(\", \");\\n }\\n\\n 100% {\\n transform: translateX(0);\\n }\\n \"])), startPosition);\n };\n\n return {\n variables: _variables,\n focusStyles: _focusStyles,\n shimmerStyles: _shimmerStyles,\n motionTimings: _motionTimings,\n elevationStyles: _elevationStyles,\n caretStyles: _caretStyles,\n mediaQuery: mediaQuery,\n screenReader: screenReader,\n ellipsis: ellipsis,\n slideTo: slideTo\n };\n}\n\nvar _excluded = [\"as\", \"className\", \"children\"];\n\nvar ScreenReaderContent = function (_ref) {\n var _ref$as = _ref.as,\n as = _ref$as === void 0 ? 'div' : _ref$as,\n className = _ref.className,\n children = _ref.children,\n rest = _objectWithoutProperties(_ref, _excluded);\n\n var tokens = useTheme();\n\n var _useMemo = useMemo(function () {\n return styles$1(tokens);\n }, [tokens]),\n screenReader = _useMemo.screenReader;\n\n return jsx(as, _extends({\n css: screenReader,\n className: className\n }, rest), children);\n};\n\nvar _excluded$1 = [\"as\", \"isInverse\", \"className\", \"hasStyleDefaults\", \"children\"];\n\nvar Shimmer = function (_ref) {\n var _styles$defaults;\n\n var _ref$as = _ref.as,\n as = _ref$as === void 0 ? 'div' : _ref$as,\n isInverse = _ref.isInverse,\n className = _ref.className,\n _ref$hasStyleDefaults = _ref.hasStyleDefaults,\n hasStyleDefaults = _ref$hasStyleDefaults === void 0 ? true : _ref$hasStyleDefaults,\n children = _ref.children,\n rest = _objectWithoutProperties(_ref, _excluded$1);\n\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n var cssVal = [_styles.base, isInverse && _styles.inverse, hasStyleDefaults && ((_styles$defaults = _styles.defaults) === null || _styles$defaults === void 0 ? void 0 : _styles$defaults.call(_styles))];\n return jsx(as, _extends({\n css: cssVal,\n className: className\n }, rest), jsx(ScreenReaderContent, {\n as: \"span\"\n }, children));\n};\n\nvar COLOR_PREFIX = 'sysColor';\nvar getColor = curry(getPrefixedAttribute, COLOR_PREFIX);\nvar mainSuffixes = {\n Main: 1,\n Surface: 1,\n Alt: 1,\n Hover: 2,\n Active: 2\n};\nvar PARSER = /(sysColor)?([A-Z][a-z]+[0-9]?)(Main|Surface|Alt|Hover|Active|Contrast|HighContrast|MediumContrast)?/;\nvar getColorFamily = function (name, tokens) {\n var _name$;\n\n var parsed = name.match(PARSER);\n\n if (parsed === null && ((_name$ = name[0]) === null || _name$ === void 0 ? void 0 : _name$.toUpperCase()) !== name[0]) {\n return getColorFamily(capitalize(name), tokens);\n }\n\n var _parsed = _slicedToArray(parsed, 4),\n original = _parsed[0],\n _parsed$ = _parsed[1],\n prefix = _parsed$ === void 0 ? 'sysColor' : _parsed$,\n base = _parsed[2],\n _parsed$2 = _parsed[3],\n suffix = _parsed$2 === void 0 ? 'Main' : _parsed$2;\n\n var contrastName = base === 'Background' ? 'MediumContrast' : 'Contrast';\n var complement = mainSuffixes.hasOwnProperty(suffix) ? contrastName : 'Main'; // provide support for token sysColorRangeMainActive\n\n if (base === 'Range') {\n base = \"Selected\".concat(base);\n }\n\n var backgroundName = \"\".concat(prefix).concat(base).concat(suffix);\n var foregroundName = \"\".concat(prefix).concat(base).concat(complement);\n var altName = \"\".concat(prefix).concat(base, \"Alt\");\n var contrastHover = \"\".concat(foregroundName, \"Hover\");\n var contrastActive = \"\".concat(foregroundName, \"Active\");\n var hoverName = \"\".concat(prefix).concat(base).concat(suffix, \"Hover\");\n var activeName = \"\".concat(prefix).concat(base).concat(suffix, \"Active\");\n return {\n contrast: tokens[foregroundName],\n main: tokens[backgroundName],\n alt: tokens[altName],\n hover: tokens[hoverName],\n active: tokens[activeName],\n contrastHover: tokens[contrastHover],\n contrastActive: tokens[contrastActive],\n parsed: {\n original: original,\n base: base,\n suffix: suffix,\n prefix: prefix,\n complement: complement,\n hoverName: hoverName,\n activeName: activeName\n }\n };\n};\nvar ColorContext = React.createContext(null);\n/* istanbul ignore next */\n\nvar ColorProvider = function (props) {\n return /*#__PURE__*/React.createElement(ColorContext.Provider, {\n value: props.colorFamily\n }, props.children);\n};\n/* istanbul ignore next */\n\nvar getColorValue = function (containerTokens, componentColor, colorType) {\n var _containerTokens$acti, _containerTokens$hove, _containerTokens$main;\n\n switch (colorType) {\n case 'contrast':\n return (containerTokens === null || containerTokens === void 0 ? void 0 : containerTokens.contrast) ? containerTokens.contrast : componentColor;\n\n case 'active':\n return (_containerTokens$acti = containerTokens === null || containerTokens === void 0 ? void 0 : containerTokens.active) !== null && _containerTokens$acti !== void 0 ? _containerTokens$acti : componentColor;\n\n case 'hover':\n return (_containerTokens$hove = containerTokens === null || containerTokens === void 0 ? void 0 : containerTokens.hover) !== null && _containerTokens$hove !== void 0 ? _containerTokens$hove : componentColor;\n\n case 'main':\n return (_containerTokens$main = containerTokens === null || containerTokens === void 0 ? void 0 : containerTokens.main) !== null && _containerTokens$main !== void 0 ? _containerTokens$main : componentColor;\n\n default:\n return componentColor;\n }\n};\n\nvar _excluded$2 = [\"level\", \"className\", \"children\", \"theme\", \"isFilter\"];\n\nvar Elevation = function (_ref) {\n var level = _ref.level,\n className = _ref.className,\n children = _ref.children,\n theme = _ref.theme,\n _ref$isFilter = _ref.isFilter,\n isFilter = _ref$isFilter === void 0 ? false : _ref$isFilter,\n rest = _objectWithoutProperties(_ref, _excluded$2);\n\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return elevationStyles(tokens);\n }, [tokens]);\n\n var levelStylesMap = {\n 1: _styles.level1,\n 2: _styles.level2,\n 3: _styles.level3\n };\n var filterStylesMap = {\n 1: _styles.filterLevel1,\n 2: _styles.filterLevel2,\n 3: _styles.filterLevel3\n };\n return jsx(\"div\", _extends({\n css: (isFilter ? filterStylesMap : levelStylesMap)[level],\n className: className\n }, rest), children);\n};\n\nvar _templateObject$5;\nfunction normalizeStyles(tokens) {\n /* istanbul ignore next */\n if (!Object.keys(tokens).length) {\n devWarning('Missing Emotion theme. Use ThemeProvider from @emotion/react to pass a valid theme from pp-react.');\n return {};\n }\n\n var sysColorBackgroundHighContrast = tokens.sysColorBackgroundHighContrast,\n sysTypographyBodyFamily = tokens.sysTypographyBodyFamily,\n sysTypographyBodyStrongFamily = tokens.sysTypographyBodyStrongFamily;\n return css(_templateObject$5 || (_templateObject$5 = _taggedTemplateLiteral([\"\\n @font-face {\\n font-family: \", \";\\n font-style: normal;\\n font-display: swap;\\n src: url('https://www.paypalobjects.com/paypal-ui/fonts/\", \".woff2')\\n format('woff2'),\\n url('https://www.paypalobjects.com/paypal-ui/fonts/\", \".woff')\\n format('woff');\\n }\\n\\n @font-face {\\n font-family: \", \";\\n font-style: normal;\\n font-display: swap;\\n src: url('https://www.paypalobjects.com/paypal-ui/fonts/\", \".woff2')\\n format('woff2'),\\n url('https://www.paypalobjects.com/paypal-ui/fonts/\", \".woff')\\n format('woff');\\n }\\n\\n html {\\n box-sizing: border-box;\\n }\\n\\n /* stylelint-disable selector-max-universal */\\n *,\\n *:before,\\n *:after {\\n box-sizing: inherit;\\n }\\n /* stylelint-enable selector-max-universal */\\n\\n /* Setting these elements to height of 100% ensures that\\n * .pp_react_foreground-container fully covers the whole viewport\\n */\\n html,\\n body {\\n height: 100%;\\n font-family: \", \", 'Helvetica Neue', Arial,\\n sans-serif;\\n color: \", \";\\n }\\n\\n /* End of core global style */\\n\\n /* normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */\\n\\n /* Document\\n ========================================================================== */\\n\\n /**\\n * 1. Correct the line height in all browsers.\\n * 2. Prevent adjustments of font size after orientation changes in iOS.\\n */\\n\\n /* stylelint-disable no-duplicate-selectors */\\n html {\\n line-height: 1.15; /* 1 */\\n -webkit-text-size-adjust: 100%; /* 2 */\\n }\\n /* stylelint-enable no-duplicate-selectors */\\n\\n /* Sections\\n ========================================================================== */\\n\\n /**\\n * Remove the margin in all browsers.\\n */\\n\\n body {\\n margin: 0;\\n -webkit-font-smoothing: antialiased;\\n -moz-osx-font-smoothing: grayscale;\\n }\\n\\n /**\\n * Render the 'main' element consistently in IE.\\n */\\n\\n main {\\n display: block;\\n }\\n\\n /**\\n * Correct the font size and margin on 'h1' elements within 'section' and\\n * 'article' contexts in Chrome, Firefox, and Safari.\\n */\\n\\n h1 {\\n font-size: 2em;\\n margin: 0.67em 0;\\n }\\n\\n /* Grouping content\\n ========================================================================== */\\n\\n /**\\n * 1. Add the correct box sizing in Firefox.\\n * 2. Show the overflow in Edge and IE.\\n */\\n\\n hr {\\n box-sizing: content-box; /* 1 */\\n height: 0; /* 1 */\\n overflow: visible; /* 2 */\\n }\\n\\n /**\\n * 1. Correct the inheritance and scaling of font size in all browsers.\\n * 2. Correct the odd 'em' font sizing in all browsers.\\n */\\n\\n pre {\\n font-family: monospace; /* 1 */\\n font-size: 1em; /* 2 */\\n }\\n\\n /* Text-level semantics\\n ========================================================================== */\\n\\n /**\\n * Remove the gray background on active links in IE 10.\\n */\\n\\n a {\\n background-color: transparent;\\n }\\n\\n /**\\n * 1. Remove the bottom border in Chrome 57-\\n * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.\\n */\\n\\n /* stylelint-disable selector-no-qualifying-type */\\n abbr[title] {\\n border-bottom: none; /* 1 */\\n text-decoration: underline; /* 2 */\\n text-decoration: underline dotted; /* 2 */\\n }\\n /* stylelint-enable selector-no-qualifying-type */\\n\\n /**\\n * Add the correct font weight in Chrome, Edge, and Safari.\\n */\\n\\n /* stylelint-disable font-weight-notation */\\n b,\\n strong {\\n font-weight: bolder;\\n }\\n /* stylelint-enable font-weight-notation */\\n\\n /**\\n * 1. Correct the inheritance and scaling of font size in all browsers.\\n * 2. Correct the odd 'em' font sizing in all browsers.\\n */\\n\\n code,\\n kbd,\\n samp {\\n font-family: monospace; /* 1 */\\n font-size: 1em; /* 2 */\\n }\\n\\n /**\\n * Add the correct font size in all browsers.\\n */\\n\\n small {\\n font-size: 80%;\\n }\\n\\n /**\\n * Prevent 'sub' and 'sup' elements from affecting the line height in\\n * all browsers.\\n */\\n\\n sub,\\n sup {\\n font-size: 75%;\\n line-height: 0;\\n position: relative;\\n vertical-align: baseline;\\n }\\n\\n sub {\\n bottom: -0.25em;\\n }\\n\\n sup {\\n top: -0.5em;\\n }\\n\\n /* Embedded content\\n ========================================================================== */\\n\\n /**\\n * Remove the border on images inside links in IE 10.\\n */\\n\\n img {\\n border-style: none;\\n }\\n\\n /* Forms\\n ========================================================================== */\\n\\n /**\\n * 1. Change the font styles in all browsers.\\n * 2. Remove the margin in Firefox and Safari.\\n */\\n\\n button,\\n input,\\n optgroup,\\n select,\\n textarea {\\n font-family: inherit; /* 1 */\\n font-size: 100%; /* 1 */\\n line-height: 1.15; /* 1 */\\n margin: 0; /* 2 */\\n }\\n\\n /**\\n * Show the overflow in IE.\\n * 1. Show the overflow in Edge.\\n */\\n\\n button,\\n input {\\n /* 1 */\\n overflow: visible;\\n }\\n\\n /**\\n * Remove the inheritance of text transform in Edge, Firefox, and IE.\\n * 1. Remove the inheritance of text transform in Firefox.\\n */\\n\\n button,\\n select {\\n /* 1 */\\n text-transform: none;\\n }\\n\\n /**\\n * Correct the inability to style clickable types in iOS and Safari.\\n */\\n\\n button,\\n [type='button'],\\n [type='reset'],\\n [type='submit'] {\\n -webkit-appearance: button;\\n }\\n\\n /**\\n * Remove the inner border and padding in Firefox.\\n */\\n\\n button::-moz-focus-inner,\\n [type='button']::-moz-focus-inner,\\n [type='reset']::-moz-focus-inner,\\n [type='submit']::-moz-focus-inner {\\n border-style: none;\\n padding: 0;\\n }\\n\\n /**\\n * Restore the focus styles unset by the previous rule.\\n */\\n\\n button:-moz-focusring,\\n [type='button']:-moz-focusring,\\n [type='reset']:-moz-focusring,\\n [type='submit']:-moz-focusring {\\n outline: 1px dotted ButtonText;\\n }\\n\\n /**\\n * Correct the padding in Firefox.\\n */\\n\\n fieldset {\\n padding: 0.35em 0.75em 0.625em;\\n }\\n\\n /**\\n * 1. Correct the text wrapping in Edge and IE.\\n * 2. Correct the color inheritance from 'fieldset' elements in IE.\\n * 3. Remove the padding so developers are not caught out when they zero out\\n * 'fieldset' elements in all browsers.\\n */\\n\\n legend {\\n box-sizing: border-box; /* 1 */\\n color: inherit; /* 2 */\\n display: table; /* 1 */\\n max-width: 100%; /* 1 */\\n padding: 0; /* 3 */\\n white-space: normal; /* 1 */\\n }\\n\\n /**\\n * Add the correct vertical alignment in Chrome, Firefox, and Opera.\\n */\\n\\n progress {\\n vertical-align: baseline;\\n }\\n\\n /**\\n * Remove the default vertical scrollbar in IE 10+.\\n */\\n\\n textarea {\\n overflow: auto;\\n }\\n\\n /**\\n * 1. Add the correct box sizing in IE 10.\\n * 2. Remove the padding in IE 10.\\n */\\n\\n [type='checkbox'],\\n [type='radio'] {\\n box-sizing: border-box; /* 1 */\\n padding: 0; /* 2 */\\n }\\n\\n /**\\n * Correct the cursor style of increment and decrement buttons in Chrome.\\n */\\n\\n [type='number']::-webkit-inner-spin-button,\\n [type='number']::-webkit-outer-spin-button {\\n height: auto;\\n }\\n\\n /**\\n * 1. Correct the odd appearance in Chrome and Safari.\\n * 2. Correct the outline style in Safari.\\n */\\n\\n [type='search'] {\\n -webkit-appearance: textfield; /* 1 */\\n outline-offset: -2px; /* 2 */\\n }\\n\\n /**\\n * Remove the inner padding in Chrome and Safari on macOS.\\n */\\n\\n [type='search']::-webkit-search-decoration {\\n -webkit-appearance: none;\\n }\\n\\n /**\\n * 1. Correct the inability to style clickable types in iOS and Safari.\\n * 2. Change font properties to 'inherit' in Safari.\\n */\\n\\n ::-webkit-file-upload-button {\\n -webkit-appearance: button; /* 1 */\\n font: inherit; /* 2 */\\n }\\n\\n /* Interactive\\n ========================================================================== */\\n\\n /*\\n * Add the correct display in Edge, IE 10+, and Firefox.\\n */\\n\\n details {\\n display: block;\\n }\\n\\n /*\\n * Add the correct display in all browsers.\\n */\\n\\n summary {\\n display: list-item;\\n }\\n\\n /* Misc\\n ========================================================================== */\\n\\n /**\\n * Add the correct display in IE 10+.\\n */\\n\\n template {\\n display: none;\\n }\\n\\n /**\\n * Add the correct display in IE 10.\\n */\\n\\n [hidden] {\\n display: none;\\n }\\n\\n /* stylelint-enable property-no-vendor-prefix */\\n \"])), sysTypographyBodyFamily, sysTypographyBodyFamily, sysTypographyBodyFamily, sysTypographyBodyStrongFamily, sysTypographyBodyStrongFamily, sysTypographyBodyStrongFamily, sysTypographyBodyFamily, sysColorBackgroundHighContrast);\n}\n\nvar _excluded$3 = [\"as\", \"children\"];\n\nvar FontsAndNormalize = function (_ref) {\n var _ref$as = _ref.as,\n as = _ref$as === void 0 ? 'div' : _ref$as,\n children = _ref.children,\n rest = _objectWithoutProperties(_ref, _excluded$3);\n\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return normalizeStyles(tokens);\n }, [tokens]);\n\n return jsx(as, rest, jsx(Global, {\n styles: _styles\n }), children);\n};\n\nvar UNIT_PARSER = /([+-]?\\d*\\.?\\d*)([a-z%]*)?/;\nvar splitValue = function (str, defaultUnit) {\n var _ref;\n\n if (typeof str === 'number') {\n return {\n unit: defaultUnit,\n value: str\n };\n }\n\n var parts = str.match(UNIT_PARSER);\n var value = parseFloat(str);\n return {\n value: value,\n unit: (_ref = parts && parts[2]) !== null && _ref !== void 0 ? _ref : defaultUnit\n };\n};\nvar getMs = function (str) {\n var _splitValue = splitValue(str, 'ms'),\n unit = _splitValue.unit,\n value = _splitValue.value;\n\n return unit === 's' ? value * 1000 : value;\n};\nvar getPx = function (str) {\n var remBase = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 16;\n\n var _splitValue2 = splitValue(str, 'px'),\n unit = _splitValue2.unit,\n value = _splitValue2.value;\n\n return unit === 'rem' ? value * remBase : value;\n};\nvar getRem = function (str) {\n var remBase = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 16;\n\n var _splitValue3 = splitValue(str, 'rem'),\n unit = _splitValue3.unit,\n value = _splitValue3.value;\n\n return unit === 'px' ? value / remBase : value;\n};\n\n/**\n * Check whether window object is present or not.\n * @returns boolean\n */\nvar hasWindow = function () {\n return typeof window !== 'undefined';\n};\n/**\n * Check whether navigator object is present or not.\n * @returns boolean\n */\n\n/* istanbul ignore next */\n\nvar hasNavigator = function () {\n return typeof navigator !== 'undefined';\n};\n/**\n * Check whether document object is present or not.\n * @returns boolean\n */\n\n/* istanbul ignore next */\n\nvar hasDocument = function () {\n return typeof document !== 'undefined';\n};\n/**\n * Check whether the browser is running in a touch device or not.\n * @returns boolean\n */\n\n/* istanbul ignore next */\n\nvar isTouchDevice = function () {\n var _navigator$maxTouchPo;\n\n if (hasWindow() && 'ontouchstart' in window) {\n return true;\n }\n\n return !!(hasNavigator() && ((_navigator$maxTouchPo = navigator.maxTouchPoints) !== null && _navigator$maxTouchPo !== void 0 ? _navigator$maxTouchPo : navigator.msMaxTouchPoints));\n};\n/**\n * Check whether the names passed as param is the active element or not.\n * @param elementName Names of the active element. For example `INPUT`, `TEXTAREA`, etc.\n * @returns boolean\n */\n\n/* istanbul ignore next */\n\nvar isActiveElementIn = function (elementNames) {\n if (!hasDocument()) {\n return false;\n }\n\n var activeElement = document.activeElement;\n return activeElement && elementNames.includes(activeElement.tagName);\n};\n/**\n * Check whether the browser document's direction attribute is `rtl` or not.\n * @returns boolean\n */\n\n/* istanbul ignore next */\n\nvar isDocumentRTL = function () {\n return hasWindow() ? getComputedStyle(document.body).direction === 'rtl' : false;\n};\n\nvar _excluded$4 = [\"className\"],\n _excluded2 = [\"className\"];\n\nfunction useMotionCSS() {\n var tokens = useTheme();\n\n var _useMemo = useMemo(function () {\n return styles$1(tokens);\n }, [tokens]),\n _useMemo$motionTiming = _useMemo.motionTimings,\n animationTiming = _useMemo$motionTiming.animationTiming,\n transitionTiming = _useMemo$motionTiming.transitionTiming;\n\n return {\n animationTiming: animationTiming,\n transitionTiming: transitionTiming\n };\n}\n\nvar withAnimation = function (WrappedComponent) {\n var WCAnimation = function (_ref) {\n var className = _ref.className,\n rest = _objectWithoutProperties(_ref, _excluded$4);\n\n return jsx(WrappedComponent, _extends({\n css: useMotionCSS().animationTiming,\n className: className\n }, rest));\n };\n\n WCAnimation.displayName = 'withAnimation';\n return WCAnimation;\n};\n\nvar withTransition = function (WrappedComponent) {\n var WCTransition = function (_ref2) {\n var className = _ref2.className,\n rest = _objectWithoutProperties(_ref2, _excluded2);\n\n return jsx(WrappedComponent, _extends({\n css: useMotionCSS().transitionTiming,\n className: className\n }, rest));\n };\n\n WCTransition.displayName = 'withTransition';\n return WCTransition;\n};\n\nvar PREFIX_DEFAULT = 'ppui';\nvar ppuiUniqueIdCounter = {};\n/**\n * Generates an unique ID.\n * If prefix is passed, the function prepends the prefix with the ID.\n *\n * @param {string} prefix The value to prefix with the ID.\n * @returns {string} The unique ID.\n */\n\nfunction uniqueId() {\n var prefix = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : PREFIX_DEFAULT;\n\n if (!ppuiUniqueIdCounter[prefix]) {\n ppuiUniqueIdCounter[prefix] = 0;\n }\n\n var id = ++ppuiUniqueIdCounter[prefix];\n return prefix === PREFIX_DEFAULT ? \"\".concat(id) : \"\".concat(prefix).concat(id);\n}\n\nvar KeyboardCode = /*#__PURE__*/function () {\n function KeyboardCode(code) {\n _classCallCheck(this, KeyboardCode);\n\n _defineProperty(this, \"key\", void 0);\n\n this.key = code;\n }\n\n _createClass(KeyboardCode, [{\n key: \"IS_ARROW_LEFT\",\n get: function get() {\n return ['ArrowLeft', KeyboardCode.NAME_ARROW_LEFT, KeyboardCode.CODE_ARROW_LEFT].includes(this.key);\n }\n }, {\n key: \"IS_ARROW_RIGHT\",\n get: function get() {\n return ['ArrowRight', KeyboardCode.NAME_ARROW_RIGHT, KeyboardCode.CODE_ARROW_RIGHT].includes(this.key);\n }\n }, {\n key: \"IS_ARROW_UP\",\n get: function get() {\n return ['ArrowUp', KeyboardCode.NAME_ARROW_UP, KeyboardCode.CODE_ARROW_UP].includes(this.key);\n }\n }, {\n key: \"IS_ARROW_DOWN\",\n get: function get() {\n return ['ArrowDown', KeyboardCode.NAME_ARROW_DOWN, KeyboardCode.CODE_ARROW_DOWN].includes(this.key);\n }\n }, {\n key: \"IS_ENTER\",\n get: function get() {\n return [KeyboardCode.NAME_ENTER, KeyboardCode.CODE_ENTER].includes(this.key);\n }\n }, {\n key: \"IS_SPACEBAR\",\n get: function get() {\n return [KeyboardCode.NAME_SPACE, KeyboardCode.CODE_SPACE].includes(this.key);\n }\n }, {\n key: \"IS_TAB\",\n get: function get() {\n return [KeyboardCode.NAME_TAB, KeyboardCode.CODE_TAB].includes(this.key);\n }\n }, {\n key: \"IS_ESC\",\n get: function get() {\n return ['Escape', KeyboardCode.NAME_ESC, KeyboardCode.CODE_ESC].includes(this.key);\n }\n }, {\n key: \"IS_HOME\",\n get: function get() {\n return [KeyboardCode.NAME_HOME, KeyboardCode.CODE_HOME].includes(this.key);\n }\n }, {\n key: \"IS_END\",\n get: function get() {\n return [KeyboardCode.NAME_END, KeyboardCode.CODE_END].includes(this.key);\n }\n }, {\n key: \"IS_BACKSPACE\",\n get: function get() {\n return [KeyboardCode.NAME_BACKSPACE, KeyboardCode.CODE_BACKSPACE].includes(this.key);\n }\n }, {\n key: \"IS_DELETE\",\n get: function get() {\n return [KeyboardCode.NAME_DELETE, KeyboardCode.CODE_DELETE].includes(this.key);\n }\n }, {\n key: \"IS_SIDE_NAVIGATION\",\n get: function get() {\n return this.IS_ARROW_LEFT || this.IS_ARROW_RIGHT || this.IS_END || this.IS_HOME;\n }\n }, {\n key: \"IS_ARROW_KEY\",\n get: function get() {\n return this.IS_ARROW_LEFT || this.IS_ARROW_RIGHT || this.IS_ARROW_UP || this.IS_ARROW_DOWN;\n }\n }]);\n\n return KeyboardCode;\n}();\n\n_defineProperty(KeyboardCode, \"CODE_ARROW_UP\", 38);\n\n_defineProperty(KeyboardCode, \"CODE_ARROW_DOWN\", 40);\n\n_defineProperty(KeyboardCode, \"CODE_ARROW_LEFT\", 37);\n\n_defineProperty(KeyboardCode, \"CODE_ARROW_RIGHT\", 39);\n\n_defineProperty(KeyboardCode, \"CODE_ENTER\", 13);\n\n_defineProperty(KeyboardCode, \"CODE_SPACE\", 32);\n\n_defineProperty(KeyboardCode, \"CODE_ESC\", 27);\n\n_defineProperty(KeyboardCode, \"CODE_TAB\", 9);\n\n_defineProperty(KeyboardCode, \"CODE_CAPS_LOCK\", 20);\n\n_defineProperty(KeyboardCode, \"CODE_HOME\", 36);\n\n_defineProperty(KeyboardCode, \"CODE_END\", 35);\n\n_defineProperty(KeyboardCode, \"CODE_BACKSPACE\", 8);\n\n_defineProperty(KeyboardCode, \"CODE_DELETE\", 46);\n\n_defineProperty(KeyboardCode, \"NAME_ARROW_UP\", 'Up');\n\n_defineProperty(KeyboardCode, \"NAME_ARROW_DOWN\", 'Down');\n\n_defineProperty(KeyboardCode, \"NAME_ARROW_LEFT\", 'Left');\n\n_defineProperty(KeyboardCode, \"NAME_ARROW_RIGHT\", 'Right');\n\n_defineProperty(KeyboardCode, \"NAME_ENTER\", 'Enter');\n\n_defineProperty(KeyboardCode, \"NAME_SPACE\", ' ');\n\n_defineProperty(KeyboardCode, \"NAME_ESC\", 'Esc');\n\n_defineProperty(KeyboardCode, \"NAME_TAB\", 'Tab');\n\n_defineProperty(KeyboardCode, \"NAME_HOME\", 'Home');\n\n_defineProperty(KeyboardCode, \"NAME_END\", 'End');\n\n_defineProperty(KeyboardCode, \"NAME_BACKSPACE\", 'Backspace');\n\n_defineProperty(KeyboardCode, \"NAME_DELETE\", 'Delete');\n\nvar deepClone = function (obj) {\n if (obj === null || _typeof(obj) !== 'object') {\n return obj;\n }\n\n var temp = new obj.constructor();\n\n for (var key in obj) {\n // istanbul ignore next\n if (obj.hasOwnProperty(key)) {\n temp[key] = deepClone(obj[key]);\n }\n }\n\n return temp;\n};\n/**\n * Returns JSX to render suggestion with highlighted match\n * @param src\n * @param match\n */\n\nvar highlightMatch = function (src, match) {\n if (match) {\n var escapedMatch = match.replace(/[-\\/\\\\^$*+?.()|[\\]{}]/g, '\\\\$&');\n var regex = new RegExp(escapedMatch, 'ig');\n return src.replace(regex, '$&');\n }\n\n return src;\n};\n/**\n * throttle function - limiting the number of times\n * a function gets called in a certain time period.\n * @param callback (Function)\n * @param delay (milliseconds)\n */\n\n/* istanbul ignore next */\n\nvar throttle = function (callback, delay) {\n var timer = 0;\n return function () {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n clearTimeout(timer);\n timer = setTimeout(function () {\n return callback.apply(null, args);\n }, delay);\n };\n};\n\nvar devWarning = function (warningText) {\n if (process.env.NODE_ENV !== 'production') {\n // eslint-disable-next-line no-console\n console.warn(warningText);\n }\n};\n\nexport { AnimateDirection, COLOR_PREFIX, ColorContext, ColorProvider, DEFAULT_ASSETPATH, DEFAULT_CDNPATH, Elevation, FontsAndNormalize, KeyboardCode, ScreenReaderContent, Shimmer, ZINDEX_COACHTIP, ZINDEX_DROPDOWN, ZINDEX_MODAL, ZINDEX_TOAST, ZINDEX_TOOLTIP, capitalize, curry, deepClone, devWarning, getColor, getColorFamily, getColorValue, getMs, getPrefixedAttribute, getPx, getRem, hasDocument, hasNavigator, hasWindow, highlightMatch, isActiveElementIn, isDocumentRTL, isTouchDevice, splitValue, svgBasePath, throttle, tokenTemplate, uniqueId, styles$1 as utilStyles, withAnimation, withTransition };\n","import 'core-js/modules/es.array.concat';\nimport 'core-js/modules/es.array.filter';\nimport 'core-js/modules/es.array.includes';\nimport 'core-js/modules/es.array.map';\nimport 'core-js/modules/es.object.assign';\nimport 'core-js/modules/es.object.entries';\nimport 'core-js/modules/es.object.keys';\nimport 'core-js/modules/es.object.values';\nimport 'core-js/modules/es.regexp.exec';\nimport 'core-js/modules/es.string.includes';\nimport 'core-js/modules/es.string.replace';\nimport 'core-js/modules/es.string.split';\nimport 'core-js/modules/web.dom-collections.for-each';\nimport 'regenerator-runtime/runtime';\nimport { isWorldReadyInstance, Region } from '@paypalcorp/worldready-core';\nimport { assertType, assert, assertRange } from 'yaassertion';\nimport Cldr from 'cldrjs/dist/cldr';\n\nfunction _regeneratorRuntime() {\n _regeneratorRuntime = function () {\n return e;\n };\n var t,\n e = {},\n r = Object.prototype,\n n = r.hasOwnProperty,\n o = Object.defineProperty || function (t, e, r) {\n t[e] = r.value;\n },\n i = \"function\" == typeof Symbol ? Symbol : {},\n a = i.iterator || \"@@iterator\",\n c = i.asyncIterator || \"@@asyncIterator\",\n u = i.toStringTag || \"@@toStringTag\";\n function define(t, e, r) {\n return Object.defineProperty(t, e, {\n value: r,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }), t[e];\n }\n try {\n define({}, \"\");\n } catch (t) {\n define = function (t, e, r) {\n return t[e] = r;\n };\n }\n function wrap(t, e, r, n) {\n var i = e && e.prototype instanceof Generator ? e : Generator,\n a = Object.create(i.prototype),\n c = new Context(n || []);\n return o(a, \"_invoke\", {\n value: makeInvokeMethod(t, r, c)\n }), a;\n }\n function tryCatch(t, e, r) {\n try {\n return {\n type: \"normal\",\n arg: t.call(e, r)\n };\n } catch (t) {\n return {\n type: \"throw\",\n arg: t\n };\n }\n }\n e.wrap = wrap;\n var h = \"suspendedStart\",\n l = \"suspendedYield\",\n f = \"executing\",\n s = \"completed\",\n y = {};\n function Generator() {}\n function GeneratorFunction() {}\n function GeneratorFunctionPrototype() {}\n var p = {};\n define(p, a, function () {\n return this;\n });\n var d = Object.getPrototypeOf,\n v = d && d(d(values([])));\n v && v !== r && n.call(v, a) && (p = v);\n var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p);\n function defineIteratorMethods(t) {\n [\"next\", \"throw\", \"return\"].forEach(function (e) {\n define(t, e, function (t) {\n return this._invoke(e, t);\n });\n });\n }\n function AsyncIterator(t, e) {\n function invoke(r, o, i, a) {\n var c = tryCatch(t[r], t, o);\n if (\"throw\" !== c.type) {\n var u = c.arg,\n h = u.value;\n return h && \"object\" == typeof h && n.call(h, \"__await\") ? e.resolve(h.__await).then(function (t) {\n invoke(\"next\", t, i, a);\n }, function (t) {\n invoke(\"throw\", t, i, a);\n }) : e.resolve(h).then(function (t) {\n u.value = t, i(u);\n }, function (t) {\n return invoke(\"throw\", t, i, a);\n });\n }\n a(c.arg);\n }\n var r;\n o(this, \"_invoke\", {\n value: function (t, n) {\n function callInvokeWithMethodAndArg() {\n return new e(function (e, r) {\n invoke(t, n, e, r);\n });\n }\n return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg();\n }\n });\n }\n function makeInvokeMethod(e, r, n) {\n var o = h;\n return function (i, a) {\n if (o === f) throw Error(\"Generator is already running\");\n if (o === s) {\n if (\"throw\" === i) throw a;\n return {\n value: t,\n done: !0\n };\n }\n for (n.method = i, n.arg = a;;) {\n var c = n.delegate;\n if (c) {\n var u = maybeInvokeDelegate(c, n);\n if (u) {\n if (u === y) continue;\n return u;\n }\n }\n if (\"next\" === n.method) n.sent = n._sent = n.arg;else if (\"throw\" === n.method) {\n if (o === h) throw o = s, n.arg;\n n.dispatchException(n.arg);\n } else \"return\" === n.method && n.abrupt(\"return\", n.arg);\n o = f;\n var p = tryCatch(e, r, n);\n if (\"normal\" === p.type) {\n if (o = n.done ? s : l, p.arg === y) continue;\n return {\n value: p.arg,\n done: n.done\n };\n }\n \"throw\" === p.type && (o = s, n.method = \"throw\", n.arg = p.arg);\n }\n };\n }\n function maybeInvokeDelegate(e, r) {\n var n = r.method,\n o = e.iterator[n];\n if (o === t) return r.delegate = null, \"throw\" === n && e.iterator.return && (r.method = \"return\", r.arg = t, maybeInvokeDelegate(e, r), \"throw\" === r.method) || \"return\" !== n && (r.method = \"throw\", r.arg = new TypeError(\"The iterator does not provide a '\" + n + \"' method\")), y;\n var i = tryCatch(o, e.iterator, r.arg);\n if (\"throw\" === i.type) return r.method = \"throw\", r.arg = i.arg, r.delegate = null, y;\n var a = i.arg;\n return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, \"return\" !== r.method && (r.method = \"next\", r.arg = t), r.delegate = null, y) : a : (r.method = \"throw\", r.arg = new TypeError(\"iterator result is not an object\"), r.delegate = null, y);\n }\n function pushTryEntry(t) {\n var e = {\n tryLoc: t[0]\n };\n 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e);\n }\n function resetTryEntry(t) {\n var e = t.completion || {};\n e.type = \"normal\", delete e.arg, t.completion = e;\n }\n function Context(t) {\n this.tryEntries = [{\n tryLoc: \"root\"\n }], t.forEach(pushTryEntry, this), this.reset(!0);\n }\n function values(e) {\n if (e || \"\" === e) {\n var r = e[a];\n if (r) return r.call(e);\n if (\"function\" == typeof e.next) return e;\n if (!isNaN(e.length)) {\n var o = -1,\n i = function next() {\n for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next;\n return next.value = t, next.done = !0, next;\n };\n return i.next = i;\n }\n }\n throw new TypeError(typeof e + \" is not iterable\");\n }\n return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, \"constructor\", {\n value: GeneratorFunctionPrototype,\n configurable: !0\n }), o(GeneratorFunctionPrototype, \"constructor\", {\n value: GeneratorFunction,\n configurable: !0\n }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, \"GeneratorFunction\"), e.isGeneratorFunction = function (t) {\n var e = \"function\" == typeof t && t.constructor;\n return !!e && (e === GeneratorFunction || \"GeneratorFunction\" === (e.displayName || e.name));\n }, e.mark = function (t) {\n return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, \"GeneratorFunction\")), t.prototype = Object.create(g), t;\n }, e.awrap = function (t) {\n return {\n __await: t\n };\n }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () {\n return this;\n }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) {\n void 0 === i && (i = Promise);\n var a = new AsyncIterator(wrap(t, r, n, o), i);\n return e.isGeneratorFunction(r) ? a : a.next().then(function (t) {\n return t.done ? t.value : a.next();\n });\n }, defineIteratorMethods(g), define(g, u, \"Generator\"), define(g, a, function () {\n return this;\n }), define(g, \"toString\", function () {\n return \"[object Generator]\";\n }), e.keys = function (t) {\n var e = Object(t),\n r = [];\n for (var n in e) r.push(n);\n return r.reverse(), function next() {\n for (; r.length;) {\n var t = r.pop();\n if (t in e) return next.value = t, next.done = !1, next;\n }\n return next.done = !0, next;\n };\n }, e.values = values, Context.prototype = {\n constructor: Context,\n reset: function (e) {\n if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = \"next\", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) \"t\" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t);\n },\n stop: function () {\n this.done = !0;\n var t = this.tryEntries[0].completion;\n if (\"throw\" === t.type) throw t.arg;\n return this.rval;\n },\n dispatchException: function (e) {\n if (this.done) throw e;\n var r = this;\n function handle(n, o) {\n return a.type = \"throw\", a.arg = e, r.next = n, o && (r.method = \"next\", r.arg = t), !!o;\n }\n for (var o = this.tryEntries.length - 1; o >= 0; --o) {\n var i = this.tryEntries[o],\n a = i.completion;\n if (\"root\" === i.tryLoc) return handle(\"end\");\n if (i.tryLoc <= this.prev) {\n var c = n.call(i, \"catchLoc\"),\n u = n.call(i, \"finallyLoc\");\n if (c && u) {\n if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);\n if (this.prev < i.finallyLoc) return handle(i.finallyLoc);\n } else if (c) {\n if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);\n } else {\n if (!u) throw Error(\"try statement without catch or finally\");\n if (this.prev < i.finallyLoc) return handle(i.finallyLoc);\n }\n }\n }\n },\n abrupt: function (t, e) {\n for (var r = this.tryEntries.length - 1; r >= 0; --r) {\n var o = this.tryEntries[r];\n if (o.tryLoc <= this.prev && n.call(o, \"finallyLoc\") && this.prev < o.finallyLoc) {\n var i = o;\n break;\n }\n }\n i && (\"break\" === t || \"continue\" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null);\n var a = i ? i.completion : {};\n return a.type = t, a.arg = e, i ? (this.method = \"next\", this.next = i.finallyLoc, y) : this.complete(a);\n },\n complete: function (t, e) {\n if (\"throw\" === t.type) throw t.arg;\n return \"break\" === t.type || \"continue\" === t.type ? this.next = t.arg : \"return\" === t.type ? (this.rval = this.arg = t.arg, this.method = \"return\", this.next = \"end\") : \"normal\" === t.type && e && (this.next = e), y;\n },\n finish: function (t) {\n for (var e = this.tryEntries.length - 1; e >= 0; --e) {\n var r = this.tryEntries[e];\n if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y;\n }\n },\n catch: function (t) {\n for (var e = this.tryEntries.length - 1; e >= 0; --e) {\n var r = this.tryEntries[e];\n if (r.tryLoc === t) {\n var n = r.completion;\n if (\"throw\" === n.type) {\n var o = n.arg;\n resetTryEntry(r);\n }\n return o;\n }\n }\n throw Error(\"illegal catch attempt\");\n },\n delegateYield: function (e, r, n) {\n return this.delegate = {\n iterator: values(e),\n resultName: r,\n nextLoc: n\n }, \"next\" === this.method && (this.arg = t), y;\n }\n }, e;\n}\nfunction _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n}\nfunction _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n return arr2;\n}\nfunction _createForOfIteratorHelperLoose(o, allowArrayLike) {\n var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"];\n if (it) return (it = it.call(o)).next.bind(it);\n if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") {\n if (it) o = it;\n var i = 0;\n return function () {\n if (i >= o.length) return {\n done: true\n };\n return {\n done: false,\n value: o[i++]\n };\n };\n }\n throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\nvar getMissingMetadataError = function getMissingMetadataError(path) {\n var message = \"Missing WorldReady metadata, please refer to https://github.paypal.com/pages/Globalization-R/worldready-js/docs/about-load-worldready-data.html\";\n if (path) {\n message += \"\\nPath: \" + path;\n }\n return new Error(message);\n};\nfunction validateCldr(path, value, options) {\n if (options === void 0) {\n options = {\n skip: []\n };\n }\n var skipBoolean = options.skip.some(function (regex) {\n return regex.test(path);\n });\n if (skipBoolean) {\n return;\n }\n if (value === undefined) {\n throw getMissingMetadataError(path);\n }\n}\nvar ADDRESS_LABEL_DISPLAY_NAME_TYPES = {\n COARSE_ADDRESS: \"coarseAddress\",\n PORTABLE_ADDRESS: \"portableAddress\",\n PORTABLE_ADDRESS_VALUES: \"portableAddressValues\",\n COARSE_ADDRESS_VALUES: \"coarseAddressValues\"\n};\nvar DISPLAY_NAME_TYPES = Object.assign({}, ADDRESS_LABEL_DISPLAY_NAME_TYPES, {\n PERSON_NAME: \"personName\",\n REGION: \"region\",\n LANGUAGE: \"language\",\n DATE_TIME_FIELD: \"dateTimeField\",\n CURRENCY: \"currency\",\n MONTH: \"month\",\n DAY: \"day\",\n TERRITORY_NAME_SORT_KEY: \"territoryNameSortKey\",\n CURRENCY_NAME_SORT_KEY: \"currencyNameSortKey\"\n});\nvar ENVIRONMENT = {\n PRODUCTION: \"production\"\n};\nvar MESSAGE_MISSING = \"\\uE007\\uE007\";\nvar countryAliasMapping = {\n C2: \"CN\",\n UK: \"GB\"\n};\nfunction getResolvedRegion(region) {\n return countryAliasMapping[region] || region;\n}\n\n// Code borrowed from Cldrjs and adapted.\n// TODO Improve Cldrjs API and make export() available.\n// Note: Cldrjs unresolved module should resolve data when exporting.\nvar cldrParentLookup = function cldrParentLookup(cldr, locale) {\n if (locale === \"root\") {\n return;\n }\n\n // First, try to find parent on supplemental data.\n var parent = cldr.get([\"supplemental/parentLocales/parentLocale\", locale]);\n if (parent) {\n return parent;\n }\n\n // Or truncate locale.\n parent = locale.substr(0, locale.lastIndexOf(\"-\"));\n if (!parent) {\n return \"root\";\n }\n return parent;\n};\nvar _inheritanceChain = /*#__PURE__*/_regeneratorRuntime().mark(function _inheritanceChain(cldr, locale) {\n return _regeneratorRuntime().wrap(function _inheritanceChain$(_context) {\n while (1) switch (_context.prev = _context.next) {\n case 0:\n _context.next = 2;\n return locale;\n case 2:\n if (locale = cldrParentLookup(cldr, locale)) {\n _context.next = 0;\n break;\n }\n case 3:\n case \"end\":\n return _context.stop();\n }\n }, _inheritanceChain);\n});\nfunction inheritanceChain(cldr, locale) {\n return _inheritanceChain(cldr, locale);\n}\nvar DisplayNames = /*#__PURE__*/function () {\n /**\n * @param {Object} worldReady\n * @param {Object} options\n * @param {String} options.type\n */\n function DisplayNames(worldReady, options) {\n var _this = this;\n if (options === void 0) {\n options = {};\n }\n // Error Checks\n if (process.env.NODE_ENV !== ENVIRONMENT.PRODUCTION) {\n assert(isWorldReadyInstance(worldReady), \"WorldReady object missing.\");\n assertType(options.type, \"options.type\", [\"string\"]);\n assertRange(options.type, Object.values(DISPLAY_NAME_TYPES), \"options.type must be one of the value from \" + Object.values(DISPLAY_NAME_TYPES));\n if (options.fallback) {\n assertRange(options.fallback, [\"code\", \"none\"], \"options.fallback must be 'none', or 'code'\");\n }\n var _options = options,\n type = _options.type;\n if (type === DISPLAY_NAME_TYPES.PERSON_NAME) {\n Region.assertType(options.nameRegion, \"options.nameRegion\");\n }\n if (Object.values(ADDRESS_LABEL_DISPLAY_NAME_TYPES).includes(type)) {\n Region.assertType(options.addressRegion, \"options.addressRegion\");\n }\n if (type === DISPLAY_NAME_TYPES.PORTABLE_ADDRESS_VALUES) {\n assertRange(options.element, [\"adminArea1\", \"adminArea2\"], \"options.element must be 'adminArea1' or 'adminArea2'\");\n }\n if (type === DISPLAY_NAME_TYPES.COARSE_ADDRESS_VALUES) {\n assertRange(options.element, [\"state\", \"city\"], \"options.element must be 'state' or 'city'\");\n }\n if (type === DISPLAY_NAME_TYPES.DATE_TIME_FIELD) {\n assertRange(options.style, [\"long\", \"short\", \"narrow\", \"abbreviated\"], \"options.style must be 'long', 'short', 'narrow' or 'abbreviated'\");\n }\n if (type === DISPLAY_NAME_TYPES.MONTH) {\n assertRange(options.style, [\"wide\", \"narrow\", \"abbreviated\"], \"options.style must be 'wide', 'narrow' or 'abbreviated'\");\n }\n if (type === DISPLAY_NAME_TYPES.DAY) {\n assertRange(options.style, [\"wide\", \"narrow\", \"short\", \"abbreviated\"], \"options.style must be 'wide', 'narrow', 'short' or 'abbreviated'\");\n }\n }\n var region = options.nameRegion || options.addressRegion;\n if (region) {\n region = Region.getRegionString(region);\n }\n var _options2 = options,\n element = _options2.element,\n style = _options2.style;\n var cldr = worldReady.globalize.cldr;\n this.fallback = options.fallback || \"code\";\n this.type = options.type;\n if (this.type === DISPLAY_NAME_TYPES.COARSE_ADDRESS_VALUES) {\n element = element === \"state\" ? \"adminArea1\" : \"adminArea2\";\n }\n var cldrDataMarketOverride, aux;\n // ../metadata/metadata-v2.js ==> injects WorldReady's name & address metadata into CLDR metadata\n switch (options.type) {\n case DISPLAY_NAME_TYPES.PERSON_NAME:\n this.cldrData = Object.assign({}, cldr.main(\"peopleNames/00\"), {}, cldr.main([\"peopleNames\", region]));\n break;\n case DISPLAY_NAME_TYPES.REGION:\n this.cldrData = Object.assign({}, cldr.main(\"localeDisplayNames/territories\"));\n cldrDataMarketOverride = Object.assign({}, cldr.main([\"marketOverrides\", worldReady.region, \"localeDisplayNames/territories\"]));\n Object.assign(this.cldrData, cldrDataMarketOverride);\n break;\n case DISPLAY_NAME_TYPES.LANGUAGE:\n this.cldrData = Object.assign({}, cldr.main(\"localeDisplayNames/languages\"));\n break;\n case DISPLAY_NAME_TYPES.MONTH:\n this.cldrData = Object.assign({}, cldr.main([\"dates/calendars/gregorian/months\", \"stand-alone\", style]));\n break;\n case DISPLAY_NAME_TYPES.DAY:\n {\n this.cldrData = Object.assign({}, cldr.main([\"dates/calendars/gregorian/days\", \"stand-alone\", style]));\n break;\n }\n case DISPLAY_NAME_TYPES.CURRENCY:\n {\n this.cldrData = {};\n Object.entries(cldr.main(\"numbers/currencies\")).forEach(function (_ref) {\n var field = _ref[0],\n value = _ref[1];\n _this.cldrData[field] = value.displayName;\n });\n }\n break;\n case DISPLAY_NAME_TYPES.DATE_TIME_FIELD:\n aux = style === \"long\" ? \"\" : \"-\" + style;\n {\n this.cldrData = {};\n Object.entries(cldr.main(\"dates/fields\")).filter(function (_ref2) {\n var field = _ref2[0];\n return field === \"\" + field.split(\"-\")[0] + aux;\n }).forEach(function (_ref3) {\n var field = _ref3[0],\n value = _ref3[1];\n _this.cldrData[field.split(\"-\")[0]] = value.displayName;\n });\n }\n break;\n case DISPLAY_NAME_TYPES.COARSE_ADDRESS:\n this.cldrData = Object.assign({}, cldr.main(\"addresses/coarse/00\"), {}, cldr.main([\"addresses/coarse\", region]));\n break;\n case DISPLAY_NAME_TYPES.PORTABLE_ADDRESS:\n this.cldrData = Object.assign({}, cldr.main(\"addresses/portable/00\"), {}, cldr.main([\"addresses/portable\", region]));\n break;\n // for coarse and portable value we need to get either adminArea1 or adminArea2\n case DISPLAY_NAME_TYPES.COARSE_ADDRESS_VALUES:\n case DISPLAY_NAME_TYPES.PORTABLE_ADDRESS_VALUES:\n // Sanitize path by escaping slashes \"/\", e.g.: \"bar/baz\" becomes \"bar_baz\"\n element.replace(/[/]/g, \"_\");\n this.cldrData = Object.assign({}, cldr.main(\"addresses/\" + element + \"/00\"), {}, cldr.main([\"addresses/\" + element, region]));\n break;\n case DISPLAY_NAME_TYPES.TERRITORY_NAME_SORT_KEY:\n this.cldrData = Object.assign({}, cldr.main(\"localeDisplayNames/territoryNameSortKey\"));\n cldrDataMarketOverride = Object.assign({}, cldr.main([\"marketOverrides\", region, \"localeDisplayNames/territoryNameSortKey\"]));\n Object.assign(this.cldrData, cldrDataMarketOverride);\n break;\n case DISPLAY_NAME_TYPES.CURRENCY_NAME_SORT_KEY:\n this.cldrData = Object.assign({}, cldr.main(\"numbers/currencyNameSortKey\"));\n break;\n }\n if (!Object.keys(this.cldrData).length) {\n validateCldr();\n }\n }\n\n /**\n * Check if 'properties' are valid based on the DisplayNames object's type.\n * If they are, return translated array. If they are not, return error.\n * @param {Array} properties\n * @returns {Array}\n */\n var _proto = DisplayNames.prototype;\n _proto.select = function select(properties) {\n var _this2 = this;\n // Error check\n if (process.env.NODE_ENV !== ENVIRONMENT.PRODUCTION) {\n assertType(properties, \"properties\", [\"array\", \"string\"]);\n }\n if (Array.isArray(properties)) {\n return properties.map(function (prop) {\n return _this2.select(prop);\n });\n }\n var prop = getResolvedRegion(properties);\n var value = this.cldrData[prop] === null || this.cldrData[prop] === MESSAGE_MISSING ? null : this.cldrData[prop];\n // Fallback logic to support CLDR v43 language names\n if (this.type === DISPLAY_NAME_TYPES.LANGUAGE && !value) {\n for (var _iterator = _createForOfIteratorHelperLoose([].concat(inheritanceChain(new Cldr(prop), prop)).reverse()), _step; !(_step = _iterator()).done;) {\n var lang = _step.value;\n value = this.cldrData[lang] === null || this.cldrData[lang] === MESSAGE_MISSING ? null : this.cldrData[lang];\n if (value) {\n break;\n }\n }\n }\n // special case for territory/currency name sort key to retrun 0\n if (value === 0) {\n return 0;\n }\n return value || (this.fallback === \"code\" ? prop : undefined);\n };\n return DisplayNames;\n}();\n\nexport { DisplayNames };\n","import 'core-js/modules/es.array.concat';\nimport 'core-js/modules/es.array.filter';\nimport 'core-js/modules/es.array.includes';\nimport 'core-js/modules/es.array.join';\nimport 'core-js/modules/es.array.map';\nimport 'core-js/modules/es.number.constructor';\nimport 'core-js/modules/es.object.assign';\nimport 'core-js/modules/es.object.keys';\nimport 'core-js/modules/es.regexp.exec';\nimport 'core-js/modules/es.string.match';\nimport 'core-js/modules/es.string.replace';\nimport 'core-js/modules/es.string.split';\nimport 'core-js/modules/es.string.trim';\nimport 'core-js/modules/web.dom-collections.for-each';\nimport { assertType, assertRange } from 'yaassertion';\nimport { isWorldReadyInstance } from '@paypalcorp/worldready-core';\nimport { createPhoneHandler } from 'fullstack-phone/client';\nimport Cldr from 'cldrjs/dist/cldr';\n\nvar getMissingMetadataError = function getMissingMetadataError(path) {\n var message = \"Missing WorldReady metadata, please refer to https://github.paypal.com/pages/Globalization-R/worldready-js/docs/about-load-worldready-data.html\";\n if (path) {\n message += \"\\nPath: \" + path;\n }\n return new Error(message);\n};\nfunction globalizeToWorldReadyError(error) {\n if (error.code === \"E_MISSING_CLDR\") {\n return getMissingMetadataError(error.stack);\n }\n return new Error([\"Oops, internal error\", error.message, error.stack].join(\"\\n\"));\n}\nfunction validateCldr(path, value, options) {\n if (options === void 0) {\n options = {\n skip: []\n };\n }\n var skipBoolean = options.skip.some(function (regex) {\n return regex.test(path);\n });\n if (skipBoolean) {\n return;\n }\n if (value === undefined) {\n throw getMissingMetadataError(path);\n }\n}\n\n/**\n * This list is not comprehensive list of errors that worldready sdk throws\n * for PhoneNumberFormat.parse API. Most of the errors come from fullstack-phone\n * library that worldready sdk directly forwards to client applications.\n * The errors defined here are for the checks that worldready-sdk does on top\n * of the validations performed by fullstack phone.\n */\nvar PHONE_ERRORS = {\n ALPHA_CHARACTERS: \"PHONE_ALPHA_CHARACTERS\"\n};\nfunction adjustPhoneNumberITU(phone, regionCode) {\n if (phone === undefined || phone === null || regionCode !== \"DE\") {\n return phone;\n }\n var trimmedPhone = phone.trim();\n if (trimmedPhone && trimmedPhone.length > 11 && trimmedPhone.substring(0, 2) === \"49\") {\n phone = trimmedPhone.substring(2);\n }\n return phone;\n}\nfunction hasAlphaCharacters(phoneString) {\n var phoneStringWithoutInitialTEL = phoneString.replace(/^\\s*tel:/i, \"\"); // strip off initial \"tel:\" (if it exists)\n var parsedPhoneString = phoneStringWithoutInitialTEL.replace(/\\s*ext[.=]?/i, \"\"); // strip off \"ext.\" or \"ext=\" (if it exists)\n return Boolean(parsedPhoneString.match(/[a-zA-Z]/)); // return true if remaining string has alpha characters\n}\nfunction parseAndValidate(handler, phoneNumberToParse, regionCode) {\n // check for alpha characters other than initial \"tel:\" and return error if found\n // cf. https://github.paypal.com/Globalization-R/WorldReady-Design/wiki/normalizePhoneNumber-leniency-issue\n if (hasAlphaCharacters(phoneNumberToParse)) {\n var errors = [{\n code: PHONE_ERRORS.ALPHA_CHARACTERS\n }];\n return {\n errors: errors\n };\n }\n // > phoneObj or Error\n var parseResult = handler.parsePhoneNumber(phoneNumberToParse, regionCode);\n if (parseResult instanceof Error) {\n var _errors = [{\n code: parseResult.message\n }];\n return {\n errors: _errors\n };\n }\n var validationResult = handler.validatePhoneNumber(parseResult, regionCode);\n if (validationResult instanceof Error) {\n var _errors2 = [{\n code: validationResult.message\n }];\n return {\n errors: _errors2\n };\n }\n return parseResult;\n}\nfunction parsePhone(phoneNumber, phoneRegion, handler, regionGroups) {\n var phone = adjustPhoneNumberITU(phoneNumber, phoneRegion);\n var parseValidateResult = parseAndValidate(handler, phone, phoneRegion);\n if (!parseValidateResult.errors) {\n return parseValidateResult;\n }\n if (regionGroups) {\n for (var i = 0; i < regionGroups.length; i++) {\n var subRegionResult = parseAndValidate(handler, phone, regionGroups[i]);\n if (!subRegionResult.errors) {\n return subRegionResult;\n }\n }\n }\n return parseValidateResult;\n}\nfunction formatPhone(phoneObj, handler, style, obscure) {\n if (obscure === true && [\"national\", \"international\"].includes(style)) {\n var regex = /\\d/g;\n var formattedPhoneNumber = handler.formatPhoneNumber(phoneObj, {\n style: style\n });\n var digits = formattedPhoneNumber.match(regex) || [];\n var invisibleDigitsLength = style === \"national\" ? digits.length / 2 : (digits.length - phoneObj.countryCode.length) / 2; // number of characters to hide, which is number of (digits excluding countryCodePrefix digits)/2, e.g. for (415) 815-9546 is 5\n var firstVisibleDigitsLength = 1 + digits.length - phoneObj.nationalNumber.length;\n return formatObscured(Math.floor(invisibleDigitsLength), firstVisibleDigitsLength, formattedPhoneNumber);\n }\n return handler.formatPhoneNumber(phoneObj, {\n style: style\n });\n}\nfunction formatObscured(invisibleDigitsLength, firstVisibleDigitsLength, formattedPhoneNumber) {\n var regex = /\\d/g;\n var digitsCount = 0;\n var start, end, result;\n while (result = regex.exec(formattedPhoneNumber)) {\n digitsCount++;\n if (digitsCount === firstVisibleDigitsLength + 1) {\n start = result[\"index\"];\n }\n if (digitsCount === firstVisibleDigitsLength + invisibleDigitsLength + 1) {\n end = result[\"index\"];\n }\n }\n formattedPhoneNumber = formattedPhoneNumber.substring(0, start) + formattedPhoneNumber.replace(regex, \"*\").substring(start, end) + formattedPhoneNumber.substring(end);\n return \"\\u202A\" + formattedPhoneNumber + \"\\u202C\";\n}\n\n/**\n *\n * @param {Array} phoneRegions\n * @returns {Object} an object contains calling code and relevant phone regions\n * // For an input ['GP', 'RE', 'FR', 'GF', 'MQ', 'YT', 'BL', 'MF'], output object will be\n * {\n * '33': [ 'FR' ],\n * '262': [ 'RE', 'YT' ],\n * '590': [ 'GP', 'BL', 'MF' ],\n * '594': [ 'GF' ],\n * '596': [ 'MQ' ]\n * }\n */\nfunction getCallingCodeToPhoneRegionsMapping(phoneRegions) {\n var cldr = new Cldr(\"und\");\n return phoneRegions.reduce(function (callingCodeToCountryCodeMapping, phoneRegion) {\n var callingCode = cldr.get([\"supplemental/phoneData/callingCode\", phoneRegion]);\n if (!callingCodeToCountryCodeMapping[callingCode]) {\n callingCodeToCountryCodeMapping[callingCode] = [];\n }\n callingCodeToCountryCodeMapping[callingCode].push(phoneRegion);\n return callingCodeToCountryCodeMapping;\n }, {});\n}\n\n/**\n *\n * @param {Array} phoneRegionGroup\n * @returns {Array}\n * // For an input ['a', 'a', 'b', 'b', 'b', 'c'], the output will be\n * // ['a', 'b', 'c']\n */\n// remove duplicate calling code in case parentRegion exist in resolution-table.json\nfunction removeDuplicateCallingCode(phoneRegionGroup) {\n return phoneRegionGroup.filter(function (phoneRegion, index) {\n return phoneRegionGroup.indexOf(phoneRegion) === index;\n });\n}\nfunction getMetadata(phoneRegion) {\n var cldr = new Cldr(\"und\");\n var regionGroups = cldr.get([\"supplemental/phoneData/regionGroups\", phoneRegion]);\n var callingCode = cldr.get([\"supplemental/phoneData/callingCode\", phoneRegion]);\n var parentRegion = cldr.get([\"supplemental/phoneData/parentRegion\", callingCode]);\n var phoneRegions, callingCodePhoneRegionMapping;\n if (regionGroups) {\n phoneRegions = [phoneRegion].concat(regionGroups);\n // for every phoneRegion, add parentRegion if has;\n phoneRegions.forEach(function (phoneRegion) {\n var _callingCode = cldr.get([\"supplemental/phoneData/callingCode\", phoneRegion]);\n var _parentRegion = cldr.get([\"supplemental/phoneData/parentRegion\", _callingCode]);\n phoneRegions = _parentRegion ? [_parentRegion].concat(phoneRegions) : phoneRegions;\n phoneRegions = removeDuplicateCallingCode(phoneRegions);\n callingCodePhoneRegionMapping = getCallingCodeToPhoneRegionsMapping(phoneRegions);\n });\n } else {\n phoneRegions = parentRegion ? [parentRegion, phoneRegion] : [phoneRegion];\n callingCodePhoneRegionMapping = getCallingCodeToPhoneRegionsMapping(phoneRegions);\n }\n var countryToMetadata;\n cldr.on(\"get\", validateCldr);\n try {\n countryToMetadata = Object.assign.apply(Object, [{}].concat(phoneRegions.map(function (phoneRegion) {\n var _ref;\n return _ref = {}, _ref[phoneRegion] = cldr.get([\"supplemental/phoneData/libphonenumber\", phoneRegion]), _ref;\n })));\n } finally {\n cldr.off(\"get\", validateCldr);\n }\n var metadata = {\n regionCodes: phoneRegions,\n countryCodeToRegionCodeMap: callingCodePhoneRegionMapping,\n countryToMetadata: countryToMetadata\n };\n return {\n metadata: metadata,\n regionGroups: regionGroups\n };\n}\nfunction getAllMetadata() {\n var cldr = new Cldr(\"und\");\n var countryCodeToRegionCodeMap = cldr.get([\"supplemental/phoneData/countryCodeToRegionCodeMapping\"]);\n var countryToMetadata = cldr.get([\"supplemental/phoneData/libphonenumber\"]);\n var metadata = {\n regionCodes: Object.keys(countryToMetadata),\n countryCodeToRegionCodeMap: countryCodeToRegionCodeMap,\n countryToMetadata: countryToMetadata\n };\n return metadata;\n}\nfunction checkPhoneRegionError(phoneRegion) {\n if (!phoneRegion) {\n throw new Error(\"`phoneRegion` is missing in `new PhoneNumberFormat()` constructor\");\n }\n}\n\n/**\n *\n * @param {String} phoneNumber\n * @returns Boolean\n */\nfunction isInternationalPhoneNumber(phoneNumber) {\n var trimedPhoneNumber = phoneNumber.trim();\n if (trimedPhoneNumber[0] === \"+\") {\n return true;\n }\n return false;\n}\nvar countryAliasMapping = {\n C2: \"CN\",\n UK: \"GB\"\n};\nfunction getResolvedRegion(region) {\n return countryAliasMapping[region] || region;\n}\nvar styleValues = [\"national\", \"international\", \"e164\", \"rfc3966\"];\nvar PhoneNumberFormat = /*#__PURE__*/function () {\n function PhoneNumberFormat(options) {\n if (process.env.NODE_ENV !== \"production\") {\n assertType(options, \"options\", [\"undefined\", \"plain object\"]);\n options = options || {};\n if (isWorldReadyInstance(options) || options.region) {\n var _phoneRegion = options.region;\n delete options.region;\n throw new Error(\"DEPRECATED: PhoneNumberFormat API has changed for consistency with other formatters, see our updated docs for more information.\\nFix your code by using:\\n\" + (\"new PhoneNumberFormat(\" + JSON.stringify(Object.assign({\n phoneRegion: _phoneRegion\n }, options || {})) + \");\"));\n }\n if (options.phoneRegion !== undefined) {\n assertTwoLetterString(options.phoneRegion, \"options.phoneRegion\");\n }\n if (options.style) {\n if ([\"nationalObscured\", \"internationalObscured\"].includes(options.style)) {\n var newOptions = Object.assign({}, options, {\n style: options.style.substring(0, options.style.indexOf(\"Obscured\"))\n });\n throw new Error(\"DEPRECATED: PhoneNumberFormat API has changed for consistency with other formatters, see our updated docs for more information.\\nFix your code by using:\\n\" + (\"new PhoneNumberFormat(\" + JSON.stringify(Object.assign({\n obscure: true\n }, newOptions || {})) + \");\"));\n }\n assertRange(options.style, styleValues, \"Invalid value for options.style: {style}\", {\n style: options.style\n });\n }\n if (options.obscure) {\n assertType(options.obscure, \"options.obscure\", [\"undefined\", \"boolean\"]);\n }\n }\n var _ref2 = options || {},\n _ref2$style = _ref2.style,\n style = _ref2$style === void 0 ? \"national\" : _ref2$style,\n _ref2$obscure = _ref2.obscure,\n obscure = _ref2$obscure === void 0 ? false : _ref2$obscure;\n var phoneRegion = getResolvedRegion(options.phoneRegion);\n var metadata, regionGroups;\n if (phoneRegion) {\n var phoneRegionMetadata = getMetadata(phoneRegion);\n metadata = phoneRegionMetadata.metadata;\n regionGroups = phoneRegionMetadata.regionGroups;\n } else {\n metadata = getAllMetadata();\n }\n var fullStackPhoneHandler = createPhoneHandler(metadata);\n this.phoneFormatter = function (phoneObj) {\n return formatPhone(phoneObj, fullStackPhoneHandler, style, obscure);\n };\n this.phoneParser = function (phoneNumber) {\n if (!isInternationalPhoneNumber(phoneNumber)) {\n checkPhoneRegionError(phoneRegion);\n }\n return parsePhone(phoneNumber, phoneRegion, fullStackPhoneHandler, regionGroups);\n };\n this.phoneFormatterAsTyped = function (phoneNumber) {\n checkPhoneRegionError(phoneRegion);\n var formatter = fullStackPhoneHandler.getAsYouTypeFormatter(phoneRegion);\n var output = \"\";\n phoneNumber.split(\"\").forEach(function (char) {\n output = formatter.inputDigit(char);\n });\n return output;\n };\n }\n var _proto = PhoneNumberFormat.prototype;\n _proto.format = function format(phoneObj) {\n if (process.env.NODE_ENV !== \"production\") {\n assertType(phoneObj, \"phoneObj\", [\"plain object\"]);\n assertPhoneObjType(phoneObj);\n }\n return this.phoneFormatter(phoneObj);\n };\n _proto.parse = function parse(localizedPhoneString) {\n if (process.env.NODE_ENV !== \"production\") {\n assertType(localizedPhoneString, \"localizedPhoneString\", [\"string\"]);\n }\n localizedPhoneString = localizedPhoneString.trim();\n return this.phoneParser(localizedPhoneString);\n };\n _proto.formatAsTyped = function formatAsTyped(localizedPhoneString) {\n if (process.env.NODE_ENV !== \"production\") {\n assertType(localizedPhoneString, \"localizedPhoneString\", [\"string\"]);\n }\n return this.phoneFormatterAsTyped(localizedPhoneString);\n };\n PhoneNumberFormat.inferPhoneNumberRegion = function inferPhoneNumberRegion(phoneObj) {\n if (process.env.NODE_ENV !== \"production\") {\n assertType(phoneObj, \"phoneObj\", [\"plain object\"]);\n assertPhoneObjType(phoneObj);\n }\n var fullStackPhoneHandler = createPhoneHandler(getAllMetadata());\n try {\n return fullStackPhoneHandler.inferPhoneNumberRegion(phoneObj);\n } catch (error) {\n throw globalizeToWorldReadyError(error);\n }\n };\n PhoneNumberFormat.inferPhoneNumberType = function inferPhoneNumberType(phoneObj) {\n if (process.env.NODE_ENV !== \"production\") {\n assertType(phoneObj, \"phoneObj\", [\"plain object\"]);\n assertPhoneObjType(phoneObj);\n }\n var fullStackPhoneHandler = createPhoneHandler(getAllMetadata());\n try {\n return fullStackPhoneHandler.inferPhoneNumberType(phoneObj);\n } catch (error) {\n throw globalizeToWorldReadyError(error);\n }\n };\n PhoneNumberFormat.getCallingCodeForRegions = function getCallingCodeForRegions(regions) {\n if (regions === void 0) {\n regions = [];\n }\n if (process.env.NODE_ENV !== \"production\") {\n assertType(regions, \"regions\", [\"array\"]);\n }\n try {\n var regionToCallingCodesMapping = {};\n regions.map(function (region) {\n var _getMetadata = getMetadata(getResolvedRegion(region)),\n metadata = _getMetadata.metadata;\n var allSupportCallingCodeForRegion = Object.keys(metadata.countryCodeToRegionCodeMap);\n regionToCallingCodesMapping[region] = allSupportCallingCodeForRegion;\n });\n return regionToCallingCodesMapping;\n } catch (error) {\n throw globalizeToWorldReadyError(error);\n }\n };\n return PhoneNumberFormat;\n}();\nfunction assertPhoneObjType(_ref3) {\n var countryCode = _ref3.countryCode,\n nationalNumber = _ref3.nationalNumber,\n extension = _ref3.extension;\n // Check well-formedness of countryCode (should be integer or string representation thereof)\n assertCanonicalInteger(countryCode, \"phoneObj.countryCode\");\n\n // Check well-formedness of nationalNumber (should be integer or string representation thereof)\n assertCanonicalInteger(nationalNumber, \"phoneObj.nationalNumber\");\n\n // Check well-formedness of extension (if provided, should be string or number)\n if (extension !== undefined) {\n // extension is optional\n assertType(extension, \"phoneObj.extension\", [\"string\", \"number\"]);\n }\n}\nfunction assertCanonicalInteger(parameter, parameterName) {\n // ensure that parameter is an integer or a string representation of an integer\n // and disallow empty strings\n assertType(parameter, parameterName, [], {\n condition: parameter !== \"\" && (typeof parameter === \"string\" || typeof parameter === \"number\") && isInteger(Number(parameter)),\n errorMessage: 'Parameter `{parameterName}` must be an integer or a string representation of an integer (e.g, `\"12345\"`), not {parameterType} `{{parameterValue}}`'\n });\n}\nfunction assertTwoLetterString(parameter, parameterName) {\n assertType(parameter, parameterName, [], {\n condition: typeof parameter === \"string\" && parameter.length === 2,\n errorMessage: \"Parameter `{parameterName}` must be a two-letter string, not {parameterType} `{{parameterValue}}`\"\n });\n}\nfunction isInteger(x) {\n return Math.round(x) === x;\n}\n\nexport { PhoneNumberFormat };\n","import 'core-js/modules/es.array.concat';\nimport 'core-js/modules/es.array.filter';\nimport 'core-js/modules/es.array.find';\nimport 'core-js/modules/es.array.from';\nimport 'core-js/modules/es.array.includes';\nimport 'core-js/modules/es.array.iterator';\nimport 'core-js/modules/es.array.join';\nimport 'core-js/modules/es.array.map';\nimport 'core-js/modules/es.array.slice';\nimport 'core-js/modules/es.function.name';\nimport 'core-js/modules/es.object.assign';\nimport 'core-js/modules/es.object.entries';\nimport 'core-js/modules/es.object.keys';\nimport 'core-js/modules/es.object.to-string';\nimport 'core-js/modules/es.object.values';\nimport 'core-js/modules/es.regexp.constructor';\nimport 'core-js/modules/es.regexp.exec';\nimport 'core-js/modules/es.regexp.flags';\nimport 'core-js/modules/es.regexp.to-string';\nimport 'core-js/modules/es.set';\nimport 'core-js/modules/es.string.includes';\nimport 'core-js/modules/es.string.iterator';\nimport 'core-js/modules/es.string.match';\nimport 'core-js/modules/es.string.replace';\nimport 'core-js/modules/es.string.split';\nimport 'core-js/modules/es.string.trim';\nimport 'core-js/modules/web.dom-collections.for-each';\nimport 'core-js/modules/web.dom-collections.iterator';\nimport Cldr from 'cldrjs/dist/cldr';\nimport { isWorldReadyInstance } from '@paypalcorp/worldready-core';\nimport { assertType, assertRange, assert } from 'yaassertion';\n\nfunction _inheritsLoose(subClass, superClass) {\n subClass.prototype = Object.create(superClass.prototype);\n subClass.prototype.constructor = subClass;\n _setPrototypeOf(subClass, superClass);\n}\nfunction _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n return _setPrototypeOf(o, p);\n}\nfunction _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n}\nfunction _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n return arr2;\n}\nfunction _createForOfIteratorHelperLoose(o, allowArrayLike) {\n var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"];\n if (it) return (it = it.call(o)).next.bind(it);\n if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") {\n if (it) o = it;\n var i = 0;\n return function () {\n if (i >= o.length) return {\n done: true\n };\n return {\n done: false,\n value: o[i++]\n };\n };\n }\n throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\n/**\n * Utility function to remove literals that are not required.\n * We only want to add a literal if we've previously encountered a non-literal field\n * and it's value is not an empty string. Hence we don't add a literal field to the\n * response immediately as we encounter it, but we wait until we see the next non-literal\n * field before adding the literal to our response.\n * @param {Array} parts an array with details about each part. Required props for each part are:\n * type: a string specifying whether the part is literal or not\n * value: value for that part\n * @returns {Array} modified array where unnecessary literals are removed\n */\nfunction removeExtraLiterals(parts) {\n if (parts === void 0) {\n parts = [];\n }\n if (!parts || !parts.length) {\n return;\n }\n var addedFirstNonLiteralField = false,\n literalField = null,\n result = [];\n parts.forEach(function (part) {\n if (part.type !== \"literal\") {\n if (literalField && addedFirstNonLiteralField && part.value.length) {\n result.push(literalField);\n }\n literalField = null;\n result.push(part);\n if (part.value.length) {\n addedFirstNonLiteralField = true;\n }\n } else {\n literalField = Object.assign({}, part);\n }\n });\n return result;\n}\n\n/* Gets value in object path\n * @param {object} obj\n * @param {string|array} path\n * @examples\n * get({foo: 1, bar: {baz: 2}}, 'bar.baz');\n * > 2\n * get({foo: 1, bar: {baz: 2}}, 'foo.bar.baz.quax');\n * > undefined\n * NOTE: Asterisk support for Node.js only (reduced bytes)\n */\nvar objectGet;\n{\n // Client-side\n objectGet = function objectGet(obj, path) {\n if (typeof path === \"string\") {\n path = path.split(\".\");\n }\n if (!path.length) {\n return obj;\n }\n if (process.env.NODE_ENV !== \"production\") {\n if (path.some(function (part) {\n return part === \"*\";\n })) {\n throw new Error(\"Internal error: objectGet asterisk support NOT available\");\n }\n }\n var prop = path.slice(-1);\n var node = path.slice(0, -1).reduce(function (node, item) {\n return node[item] || {};\n }, obj);\n return node[prop];\n };\n}\n\n/**\n * Actual PersonNameFormat implementation. The idea is the this whole file\n * becomes open source.\n */\n\n/**\n * Given:\n * - stringLayout: \"{foo} {bar}\"\n * - stringLayouts:\n * {\n * \"bar\": \"{a} {b.c}\"\n * }\n * Returns:\n * [\n * {\n * \"type\": \"foo\"\n * },\n * {\n * \"type\": \"literal\",\n * \"value\": \" \"\n * },\n * {\n * \"type\": \"bar\",\n * \"parts\": [\n * {\n * \"type\": \"a\"\n * },\n * {\n * \"type\": \"literal\",\n * \"value\": \" \"\n * },\n * {\n * \"type\": \"b.c\"\n * }\n * ]\n * }\n * ]\n */\n// TODO: Find a better place for common functions between address and name\nfunction stringLayoutToPartsLayout(stringLayout, stringLayouts, checkStringLayouts) {\n if (stringLayouts === void 0) {\n stringLayouts = {};\n }\n if (checkStringLayouts === void 0) {\n checkStringLayouts = true;\n }\n var partsLayout = [];\n var lastMatchPos = 0;\n\n // For every matching variable (e.g., \"{foo}\"), add two parts: the literal\n // that precedes it and the matching type variable (e.g., { type: \"foo\" }).\n stringLayout.replace(/{[^}]+}/g, function (match, pos) {\n partsLayout.push({\n type: \"literal\",\n value: stringLayout.slice(lastMatchPos, pos)\n });\n var type = match.slice(1, -1);\n var part = {\n type: type\n };\n if (checkStringLayouts && stringLayouts[type]) {\n part.parts = stringLayoutToPartsLayout(stringLayouts[type], stringLayouts, false);\n }\n partsLayout.push(part);\n lastMatchPos = pos + match.length;\n });\n partsLayout.push({\n type: \"literal\",\n value: stringLayout.slice(lastMatchPos)\n });\n\n // Remove empty literals.\n return partsLayout.filter(function (_ref) {\n var type = _ref.type,\n value = _ref.value;\n return type !== \"literal\" || value;\n });\n}\nvar DEFAULT_SCRIPT_FALLBACK = \"Latn\";\n/**\n * Returns the object script, which is:\n * - `undefined` if the string is empty,\n * - `\"Latin\"` if the whole string is Latin, or\n * - The regionDefaultScript if string contains any non-Latin (because it's easier to do this than to\n * identify which script it really is AND it's assertive in our case).\n */\nfunction getStringScript(string, regionDefaultScript) {\n if (!string.length) {\n return;\n }\n for (var _iterator = _createForOfIteratorHelperLoose(string), _step; !(_step = _iterator()).done;) {\n var ch = _step.value;\n if (ch.charCodeAt(0) > 0x24f) {\n return regionDefaultScript;\n }\n }\n return \"Latn\";\n}\n\n/**\n * Helper function that determines what script should be used to format the address and name.\n * Determination rules and fallbacks are as follows:\n * 1. For address region with region default script as non Latn script and if address/name object contain non Latn script characters, then use non Latn script if supported by address region.\n * 2. If address object scipt is not supported for addressRegion or we don't have the metadata for that script,\n * then fallback to the primary_script for addressRegion identified in G11nMetadata\n * 3. if for some reason we don't have address layout metadata for the primary_script identified in G11nMetadata for primary_script,\n * then fallback to 'Latn' as we always have address layout for Latn script\n * @param {Object} stringLayouts an object containing layouts for all the scripts for addressRegion\n * @param {Object} options object with additional properties for identifying the final script that should be used\n * @returns {Object} an object with the address layout based on script identified by above rules\n */\nvar getLayoutFromScript = function getLayoutFromScript(stringLayouts, options) {\n if (stringLayouts === void 0) {\n stringLayouts = {};\n }\n if (options === void 0) {\n options = {};\n }\n if (!Object.keys(stringLayouts).length || !options.primaryScript) {\n return null;\n }\n var _options = options,\n finalScript = _options.finalScript,\n primaryScript = _options.primaryScript;\n return stringLayouts[finalScript] || stringLayouts[primaryScript] || stringLayouts[DEFAULT_SCRIPT_FALLBACK];\n};\n\n/**\n * Actual PersonNameFormat implementation. The idea is the this whole file\n * becomes open source.\n */\n\nvar properties = [\"namePrefix\", \"givenName\", \"middleName\", \"surname\", \"secondSurname\", \"nameSuffix\", \"altName\"];\n\n/**\n * isProperty is a hash of the form: { : true }, which makes easier to\n * check if a string is one of the properties listed above.\n */\nvar isProperty = Object.assign.apply(Object, properties.map(function (field) {\n var _ref2;\n return _ref2 = {}, _ref2[field] = true, _ref2;\n}));\n\n/**\n * Actual formatToParts function.\n *\n * @param {String} name Person name\n * @param {Object} options.layout Metadata for the chosen style, e.g.:\n * {\n * \"Latn\": [\n * {\n * \"type\": \"givenName\"\n * },\n * {\n * \"type\": \"literal\",\n * \"value\": \" \"\n * },\n * {\n * \"type\": \"surname\"\n * }\n * ]\n * }\n * @param {String} options.regionDefaultScript Region default script\n * @param {String} options.script Locale script\n * @param {Object} options.supportedScripts Supported scripts array.\n *\n * @return {Array} Formatted person name parts.\n */\nfunction formatToParts(name, _ref3) {\n var layouts = _ref3.layouts,\n regionDefaultScript = _ref3.regionDefaultScript,\n localeScript = _ref3.localeScript,\n supportedScripts = _ref3.supportedScripts,\n requiredPropsArray = _ref3.requiredPropsArray,\n formatAs = _ref3.formatAs,\n nameFormatData = _ref3.nameFormatData;\n var nameScript;\n\n // Optimization:\n // If the region default script is different than \"Latn\", check address.\n // Otherwise, not needed, it's always going to be \"Latn\".\n if (regionDefaultScript === \"Latn\") {\n nameScript = \"Latn\";\n } else {\n nameScript = getStringScript(Object.entries(name).filter(function (_ref4) {\n var type = _ref4[0];\n return isProperty[type];\n }).map(function (_ref5) {\n var value = _ref5[1];\n return value;\n }).join(\"\"), regionDefaultScript);\n }\n\n // The nameScript has precedence. In case address is empty (and therefore nameScript is\n // undefined), use locale script if it's supported\n // by the region OR Latin.\n var finalScript = nameScript || (supportedScripts.includes(localeScript) ? localeScript || regionDefaultScript : \"Latn\");\n\n // The name script determines the layout (e.g., latin vs Japanese), but the\n // user region determines the supported scripts (e.g., on US only latin names\n // are supported, on JP both latin and Japanese are supported).\n // TODO Transform at constructor-time.\n var stringLayout = getLayoutFromScript(layouts, {\n primaryScript: regionDefaultScript,\n finalScript: finalScript\n });\n var layout = stringLayoutToPartsLayout(stringLayout);\n var parts = getPartsFromLayout(layout, {\n name: name,\n requiredPropsArray: requiredPropsArray\n });\n\n // remove unwanted literals\n parts = removeExtraLiterals(parts);\n\n // apply required formatting (e.g., title case)\n parts.forEach(function (part) {\n if (part.type !== \"literal\") {\n if (formatAs) {\n part.value = applyFormatting(part.value, formatAs, {\n nameFormatData: nameFormatData\n });\n }\n }\n });\n return parts;\n}\n\n/**\n * This version might be used in for loops and the like when\n * it is unknown whether non-BMP characters exist before the specified index position.\n * Reference: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/charCodeAt\n * @param {string} string to get the character\n * @peram {number} the index position\n **/\nfunction fixedCharCodeAt(str, idx) {\n // ex. fixedCharCodeAt('\\uD800\\uDC00', 0); // 65536\n // ex. fixedCharCodeAt('\\uD800\\uDC00', 1); // false\n idx = idx || 0;\n var code = str.charCodeAt(idx);\n var hi, low;\n\n // High surrogate (could change last hex to 0xDB7F\n // to treat high private surrogates\n // as single characters)\n if (0xd800 <= code && code <= 0xdbff) {\n hi = code;\n low = str.charCodeAt(idx + 1);\n if (isNaN(low)) {\n return hi;\n }\n return (hi - 0xd800) * 0x400 + (low - 0xdc00) + 0x10000;\n }\n if (0xdc00 <= code && code <= 0xdfff) {\n // Low surrogate\n // We return false to allow loops to skip\n // this iteration since should have already handled\n // high surrogate above in the previous iteration\n return false;\n // hi = str.charCodeAt(idx - 1);\n // low = code;\n // return ((hi - 0xD800) * 0x400) +\n // (low - 0xDC00) + 0x10000;\n }\n return code;\n}\nfunction convertToHex(charCode) {\n var result = \"\";\n var hex = charCode.toString(16);\n if (hex.length > 4) {\n result += \"U+\" + hex;\n } else {\n result += \"U+\" + (\"00\" + hex).slice(-4);\n }\n result = result.toUpperCase();\n return result;\n}\nfunction invalidCodePointFromString(string, regex) {\n var codePoint;\n for (var i = 0, chr; i < string.length; i++) {\n if (string[i].match(regex) === null) {\n if ((chr = fixedCharCodeAt(string, i)) === false) {\n continue;\n }\n codePoint = chr;\n /* we care only on the first one */\n break;\n }\n }\n return codePoint ? convertToHex(codePoint) : undefined;\n}\nfunction getPartsFromLayout(layout, options) {\n if (options === void 0) {\n options = {};\n }\n if (!layout) {\n return;\n }\n var _options2 = options,\n name = _options2.name,\n requiredPropsArray = _options2.requiredPropsArray;\n return layout.map(function (_ref6) {\n var type = _ref6.type,\n value = _ref6.value;\n if (type !== \"literal\") {\n value = name[type] || \"\";\n }\n return Object.assign({\n type: type,\n value: value\n }, type !== \"literal\" && {\n required: requiredPropsArray.includes(type) ? true : false\n });\n });\n}\n\n/**\n * Helper function to apply different kind of formatting to name field.\n * Following are the types of formatters are currently applied:\n * - titleCase\n * @param {String} nameField name field on which formatting needs to be applied\n * @param {Object} formatAs object indicating what kind of formatting should be applied\n * @param {Object} options param to pass in additional metadata needed for formatting\n * @returns {String}\n */\nfunction applyFormatting(nameField, formatAs, options) {\n if (formatAs === void 0) {\n formatAs = {};\n }\n if (options === void 0) {\n options = {};\n }\n if (!nameField || !formatAs) {\n return nameField;\n }\n var formattedValue = nameField;\n if (formatAs.titleCase) {\n formattedValue = transformNameFieldToTitleCase(formattedValue, options);\n }\n return formattedValue;\n}\n\n/**\n * Helper function to convert name field to title case. E.g,\n * joHN --> John\n * doe --> Doe\n * @param {String} nameField Value that needs to be converted to title case\n * @returns {String}\n */\nfunction transformNameFieldToTitleCase(nameField, options) {\n if (options === void 0) {\n options = {};\n }\n if (!nameField) {\n return nameField;\n }\n var result = nameField;\n var _options3 = options,\n _options3$nameFormatD = _options3.nameFormatData.titleCase,\n PUNCTUATIONS = _options3$nameFormatD.PUNCTUATIONS,\n ALL_LOWER_CASE = _options3$nameFormatD.ALL_LOWER_CASE,\n GAELIC_TERMS = _options3$nameFormatD.GAELIC_TERMS;\n if (!PUNCTUATIONS || !PUNCTUATIONS.pattern || !ALL_LOWER_CASE || !ALL_LOWER_CASE.pattern || !GAELIC_TERMS || !GAELIC_TERMS.pattern) {\n return nameField;\n }\n\n // the unicode range of characters check to find punctuations in all locales\n result = result.replace(new RegExp(PUNCTUATIONS.pattern, PUNCTUATIONS.flags), function (txt) {\n return txt.charAt(0).toUpperCase() + txt.substring(1).toLowerCase();\n });\n\n // for names like Mc, Mac\n result = result.replace(new RegExp(GAELIC_TERMS.pattern, GAELIC_TERMS.flags), function ($1, $2, $3, $4, $5) {\n return $2 ? $3.toUpperCase() + $4 + $5.toUpperCase() : $1;\n });\n\n // for names like Picaso de Casa Seville Guiterrez\n result = result.replace(new RegExp(ALL_LOWER_CASE.pattern, ALL_LOWER_CASE.flags), function (_, match) {\n return match.toLowerCase();\n });\n return result;\n}\nvar NAME_TYPES = {\n PERSON: \"person\",\n BUSINESS: \"business\"\n};\nvar NAME_STYLES = {\n FULL: \"full\",\n INFORMAL: \"informal\",\n BUSINESS_INFORMAL: \"businessInformal\"\n};\nvar DEFAULT_FORMATAS = {\n titleCase: false\n};\nvar REGISTERED_BUSINESS_TYPE_KEY_MAP = {\n \"NON-REGISTERED-BUSINESS\": \"nonRegistered\",\n \"REGISTERED-BUSINESS\": \"registered\"\n};\nvar NAME_ERROR_CODE = {\n MISSING_REQUIRED: \"MISSING_REQUIRED\",\n INVALID_SCRIPT: \"INVALID_SCRIPT\",\n INVALID_ALL_PUNCTUATION: \"INVALID_ALL_PUNCTUATION\",\n INVALID_ALL_NUMBER: \"INVALID_ALL_NUMBER\",\n INVALID_ALL_RESTRICTED: \"INVALID_ALL_RESTRICTED\",\n INVALID_ALL_REGISTERED_ACCOUNT: \"INVALID_ALL_REGISTERED_ACCOUNT\",\n INVALID_MAX_LENGTH_EXCEEDED: \"INVALID_MAX_LENGTH_EXCEEDED\",\n INVALID_ALL_OFFENSIVE: \"INVALID_ALL_OFFENSIVE\",\n INVALID_ALL_MIXED_SCRIPT: \"INVALID_ALL_MIXED_SCRIPT\",\n INVALID_NATIONALITY_SCRIPT: \"INVALID_NATIONALITY_SCRIPT\",\n INVALID_CHARACTER_REPETITION: \"INVALID_CHARACTER_REPETITION\",\n INVALID_ALL_HONORIFICS: \"INVALID_ALL_HONORIFICS\",\n INVALID_BOUNDARY_PATTERN: \"INVALID_BOUNDARY_PATTERN\",\n INVALID_KEYBOARD_BANGING: \"INVALID_KEYBOARD_BANGING\",\n INVALID_SINGLE_CHARACTER: \"INVALID_SINGLE_CHARACTER\",\n INVALID_ALL_NON_VOWEL: \"INVALID_ALL_NON_VOWEL\",\n SPAM_DETECTED: \"SPAM_DETECTED\"\n};\n\n/**\n * Identifies most likely script used in name.\n * If all the name's field don't match to a single script\n * then default script would be returned.\n * For example:\n * - for name object as {givenName: \"John\", surname: \"Walter\"},\n * then function will return scripts as [\"Latn\"]\n * - for name object as {givenName: \"John赫洛\", surname: \"Walter\"} and country is CN,\n * then function will return scripts as [\"Latn\", \"Hans\"].\n * Latn and Hans are the default scripts for CN country\n *\n * @param {*} scriptValidations - script validation object\n * @param {*} name - personal name\n * @returns list of possible scripts for a given name\n */\nfunction getNameScript(scriptValidations, name) {\n var characterRangeRegex;\n var nameConcat = properties.reduce(function (nameConcat, item) {\n return nameConcat + (name[item] || \"\");\n }, \"\");\n var scripts = [];\n Object.keys(scriptValidations).forEach(function (currentScript) {\n var currScriptValidations = scriptValidations[currentScript];\n characterRangeRegex = currScriptValidations.characterRange;\n if (characterRangeRegex) {\n characterRangeRegex = new RegExp(\"^(\" + characterRangeRegex + \")$\");\n if (isCharacterRangeMatch(characterRangeRegex, nameConcat)) {\n scripts.push(currentScript);\n }\n }\n });\n return scripts;\n}\n/**\n * Returns true if name field is in character range regex\n * @param {*} characterRange - character range regex\n * @param {*} name - name field\n * @returns trues if name field is in character range regex\n */\nfunction isCharacterRangeMatch(characterRange, name) {\n var isMatch = true;\n var uniqueCharArr = new Set(name);\n for (var _iterator2 = _createForOfIteratorHelperLoose(uniqueCharArr), _step2; !(_step2 = _iterator2()).done;) {\n var uniqueChar = _step2.value;\n if (!characterRange.test(uniqueChar)) {\n isMatch = false;\n break;\n }\n }\n return isMatch;\n}\n\n/**\n * Returns list of scripts supported for a given business type\n * @param {*} businessType - business type\n * @param {*} supportedScriptsByCountry - mapping between supported scripts and country\n * @returns Returns list of scripts supported for a given business type\n */\nfunction getBusinessNameSupportedScripts(businessType, supportedScriptsByCountry) {\n var supportedScripts = objectGet(supportedScriptsByCountry, [\"business\", \"type\"]);\n var businessTypeScripts = businessType ? supportedScripts[businessType] || supportedScripts.DEFAULT : supportedScripts.DEFAULT;\n return businessTypeScripts;\n}\n\n/**\n * Identifies most likely script used in business name.\n * @param {*} bName - business name\n * @param {*} nameValidations - name validation metadata\n * @param {*} businessType - business type\n * @returns Set of most of script used in business name.\n */\nfunction getBusinessNameScripts(bName, nameValidations, businessType) {\n var scripts = getBusinessNameSupportedScripts(businessType, nameValidations.supportedScripts);\n var bScripts = new Set();\n var _loop = function _loop(index) {\n var characterRangeRegex = objectGet(nameValidations, [\"businessScriptValidations\", scripts[index], \"characterRange\"]);\n if (characterRangeRegex) {\n characterRangeRegex = new RegExp(\"^(\" + characterRangeRegex + \")*?$\");\n var bNameStringArr = bName.trim().split(\"\");\n bNameStringArr.map(function (element) {\n if (characterRangeRegex.test(element)) {\n bScripts.add(scripts[index]);\n return;\n }\n });\n }\n };\n for (var index = 0; index < scripts.length; index = index + 1) {\n _loop(index);\n }\n return bScripts;\n}\n\n/**\n * Asserts name if it is a valid name or not.\n * @param {*} name\n */\nfunction assertName(name) {\n assertType(name, \"name\", [\"plain object\"]);\n properties.forEach(function (property) {\n assertType(name[property], \"name.\" + property, [\"string\", \"undefined\"]);\n });\n}\n\n/**\n * Assert nationality value when name is business name.\n * @param {*} nationality\n * @param {*} type\n */\nfunction assertNationalityWithBusinessType(nationality, type) {\n if (nationality && type === \"business\") {\n console.log(\"WARNING: When type is business, options.nationality should be unabled. See our updated docs for more details.\\n Fix your code by deleting options.nationality.\");\n }\n}\n\n/**\n * Assert businessType when name is person name\n * @param {*} businessType\n * @param {*} type\n */\nfunction assertBusinessTypeWithPerson(businessType, type) {\n if (businessType && type === \"person\") {\n console.log(\"WARNING: When options.businessType is declared in constructor, options.type should be business only. See our updated docs for more details.\\n Fix your code by using business only for your options.type.\");\n }\n}\n\n/**\n * Assert registeredBusinessType when name is person name\n * @param {*} registeredBusinessType\n * @param {*} type\n */\nfunction assertregisteredBusinessTypeWithPerson(registeredBusinessType, type) {\n if (registeredBusinessType && type === \"person\") {\n console.log(\"WARNING: When options.registeredBusinessType is declared in constructor, options.type should be business only. See our updated docs for more details.\\n Fix your code by using business only for your options.type.\");\n }\n}\nfunction validateName(name, _ref7) {\n var requiredProperties = _ref7.requiredPropsArray,\n nameValidations = _ref7.validationsMeta,\n nationality = _ref7.nationality;\n var fields = properties;\n var retErrors = [];\n Object.defineProperty(retErrors, \"errors\", {\n get: function get() {\n if (process.env.NODE_ENV !== \"production\") {\n var errorMsg = \"Please note that errors are no longer returned as an object, instead they are returned as an array. \" + \"From now on, please access the array directly rather than through the errors property. For more information, please read here: \" + \"https://github.paypal.com/pages/Globalization-R/worldready-js/docs/name-api.html#nameformatprototypevalidatenameobj\";\n console.warn(errorMsg);\n }\n return this;\n }\n });\n\n // Required name level field\n var requiredFieldErrors = validateRequiredField(name, requiredProperties);\n var nonEmptyNamefields = [];\n properties.forEach(function (field) {\n if (name[field] && name[field] !== \"\") {\n nonEmptyNamefields.push(field);\n }\n });\n\n // Script level check - It consist of INVALID_SCRIPT,\n // INVALID_ALL_MIXED_SCRIPT and INVALID_NATIONALITY_SCRIPT checks\n // checking INVALID_SCRIPT\n var scriptErrors = validateScript(name, nonEmptyNamefields, nameValidations.validRegExString);\n if (scriptErrors.length) {\n retErrors.push.apply(retErrors, scriptErrors.concat(requiredFieldErrors));\n return retErrors;\n }\n var scripts = getNameScript(nameValidations.scriptValidations, name);\n // checking INVALID_ALL_MIXED_SCRIPT\n var mixedScriptError = validateMixedScript(scripts, nonEmptyNamefields);\n if (mixedScriptError.length) {\n retErrors.push.apply(retErrors, mixedScriptError.concat(requiredFieldErrors));\n return retErrors;\n }\n // checking INVALID_NATIONALITY_SCRIPT\n var nationalityError = validateNationalityScript(scripts, nationality, nameValidations.supportedScripts, nonEmptyNamefields);\n if (nationalityError.length) {\n retErrors.push.apply(retErrors, nationalityError.concat(requiredFieldErrors));\n return retErrors;\n }\n\n // element level check\n var errors = fields.reduce(function (errors, field) {\n return errors.concat(validateField(name, field, nameValidations, scripts));\n }, []);\n retErrors.push.apply(retErrors, errors.concat(requiredFieldErrors));\n return retErrors;\n}\nfunction validateBusinessName(businessName, _ref8) {\n var nameValidations = _ref8.validationsMeta,\n businessType = _ref8.businessType,\n registeredBusinessType = _ref8.registeredBusinessType;\n var errors = [];\n if (!businessName || !businessName.businessName) {\n errors.push({\n code: NAME_ERROR_CODE.MISSING_REQUIRED,\n element: \"businessName\"\n });\n return errors;\n }\n var businessNameValidations = nameValidations.businessScriptValidations;\n var bName = businessName.businessName;\n var businessNameKey = getBusinessKey(businessType);\n var registeredBusinessTypeKey = getregisteredBusinessTypeKey(registeredBusinessType);\n var characterRangeRegex = getBusinessNameCharacterRangeForScripts(nameValidations, getBusinessNameSupportedScripts(businessType, nameValidations.supportedScripts));\n // Script Character Range Validation\n if (characterRangeRegex) {\n characterRangeRegex = new RegExp(\"^(\" + characterRangeRegex + \")*?$\");\n if (!characterRangeRegex.test(bName)) {\n var codePoint = invalidCodePointFromString(bName, characterRangeRegex);\n if (codePoint !== undefined) {\n errors.push({\n code: NAME_ERROR_CODE.INVALID_SCRIPT,\n element: \"businessName\",\n invalidCodePoint: codePoint\n });\n }\n return errors;\n }\n }\n var errorMap = {};\n var scriptsSet = getBusinessNameScripts(bName, nameValidations, businessType);\n var scripts = Array.from(scriptsSet);\n for (var index = 0; index < scripts.length; index = index + 1) {\n var scriptBasedRegexes = businessNameValidations[scripts[index]];\n // INVALID_ALL_PUNCTUATION\n errorMap = getPunctuationNameError(objectGet(scriptBasedRegexes, [\"punctuation\", \"pattern\", businessNameKey]), bName, \"businessName\", errorMap);\n // INVALID_ALL_OFFENSIVE\n errorMap = getOffensiveNameError(objectGet(scriptBasedRegexes, [\"offensive\", \"pattern\", businessNameKey]), bName, \"businessName\", errorMap);\n // INVALID_ALL_NUMBER\n var numberRegex = objectGet(scriptBasedRegexes, [\"numberRange\", \"pattern\", businessNameKey]);\n if (numberRegex) {\n numberRegex = new RegExp(\"^(\" + numberRegex + \")*?$\", \"i\");\n if (numberRegex.test(bName)) {\n errorMap.INVALID_ALL_PUNCTUATION = {\n code: NAME_ERROR_CODE.INVALID_ALL_PUNCTUATION,\n element: \"businessName\"\n };\n }\n }\n // INVALID_ALL_RESTRICTED\n var restrictedNameRegex = objectGet(scriptBasedRegexes, [\"restrictedBusinessNameRange\", \"pattern\", businessNameKey]);\n if (restrictedNameRegex) {\n restrictedNameRegex = new RegExp(\"^(\" + restrictedNameRegex + \")$\", \"i\");\n if (restrictedNameRegex.test(bName)) {\n errorMap.INVALID_ALL_RESTRICTED = {\n code: NAME_ERROR_CODE.INVALID_ALL_RESTRICTED,\n element: \"businessName\"\n };\n }\n }\n // INVALID_ALL_REGISTERED_ACCOUNT\n var registeredNameValidation = objectGet(scriptBasedRegexes, [\"registeredBusinessNameRange\", \"pattern\", registeredBusinessTypeKey]);\n if (registeredNameValidation) {\n registeredNameValidation = new RegExp(registeredNameValidation, \"i\");\n if (registeredNameValidation.test(bName)) {\n errorMap.INVALID_ALL_REGISTERED_ACCOUNT = {\n code: NAME_ERROR_CODE.INVALID_ALL_REGISTERED_ACCOUNT,\n element: \"businessName\"\n };\n }\n }\n }\n Object.keys(errorMap).forEach(function (key) {\n errors.push(errorMap[key]);\n });\n return errors;\n}\nfunction getregisteredBusinessTypeKey(registeredBusinessType) {\n return registeredBusinessType && REGISTERED_BUSINESS_TYPE_KEY_MAP[registeredBusinessType] ? REGISTERED_BUSINESS_TYPE_KEY_MAP[registeredBusinessType] : REGISTERED_BUSINESS_TYPE_KEY_MAP[\"REGISTERED-BUSINESS\"];\n}\nfunction getBusinessKey(businessType) {\n if (businessType === \"LEGAL\") {\n return \"legal\";\n }\n if (businessType === \"DOING_BUSINESS_AS\") {\n return \"doingBusinessAs\";\n }\n return \"default\";\n}\nfunction getBusinessNameCharacterRangeForScripts(nameValidations, scripts) {\n var consolidatedCharacterRange = null;\n for (var index = 0; index < scripts.length; index = index + 1) {\n var characterRange = objectGet(nameValidations, [\"businessScriptValidations\", scripts[index], \"characterRange\"]);\n consolidatedCharacterRange = consolidatedCharacterRange ? consolidatedCharacterRange + \"|\" + characterRange : characterRange;\n }\n return consolidatedCharacterRange;\n}\nfunction validateField(name, nameField, nameValidations, scripts) {\n // errorMap is of following structure:\n // {\n // code : { error obj}\n // }\n // values of errorMap object will be return if name is not in validList\n var errorMap = {};\n var isNameInValidListFlag = false;\n if (name[nameField]) {\n // Currently, punctuation and keyboard banging are same in all the\n // scripts and that is why we can take any script to fetch regex.\n // Once we have script specific regex then we need to execute punctuation\n // and keyboard banging over all the scripts.\n scripts.forEach(function (script) {\n var scriptBasedRegexes = nameValidations.scriptValidations[script];\n var nameMaxLength = null;\n if (nameValidations.maxLength && nameValidations.maxLength[script] && nameValidations.maxLength[script][nameField]) {\n nameMaxLength = nameValidations.maxLength[script][nameField];\n }\n var repetition = nameValidations.repetition,\n honorificsVariation = nameValidations.honorificsVariation,\n singleCharacterValidation = nameValidations.singleCharacterValidation,\n boundaryValidation = nameValidations.boundaryValidation;\n if (isNameInValidList(name, nameField, scriptBasedRegexes)) {\n isNameInValidListFlag = true;\n return;\n }\n // Run all the validations on the name[nameField]\n validatePunctuation(name, nameField, scriptBasedRegexes, errorMap);\n validateRepetition(name, nameField, repetition, errorMap);\n validateHonorifics(name, nameField, honorificsVariation, errorMap);\n validateBoundaryValidation(name, nameField, boundaryValidation, errorMap);\n validateKeyboardBanging(name, nameField, scriptBasedRegexes, errorMap);\n validateSingleCharacter(name, nameField, singleCharacterValidation, errorMap);\n validateNonVowel(name, nameField, scriptBasedRegexes, nameValidations, errorMap);\n validateOffensiveName(name, nameField, scriptBasedRegexes, errorMap);\n validateMaxLength(name, nameField, nameMaxLength, errorMap);\n });\n }\n return isNameInValidListFlag ? [] : Object.values(errorMap);\n}\n\n/**\n * check each field whether length of name segment is exceeded maximum length value.\n *\n * @param {Obj} name\n * @param {String} nameField\n * @param {Number} nameMaxLength\n * @param {Obj} errorMap\n * @return {Obj} errorMap\n */\nfunction validateMaxLength(name, nameField, nameMaxLength, errorMap) {\n if (!name[nameField] || !nameMaxLength) {\n return errorMap;\n }\n if (name[nameField].length > nameMaxLength) {\n errorMap.INVALID_MAX_LENGTH_EXCEEDED = {\n code: NAME_ERROR_CODE.INVALID_MAX_LENGTH_EXCEEDED,\n element: nameField\n };\n }\n return errorMap;\n}\nfunction validateOffensiveName(name, nameField, scriptBasedRegexes, errorMap) {\n if (!Object.keys(scriptBasedRegexes.offensive.pattern).includes(nameField) || !name[nameField]) {\n return errorMap;\n }\n return getOffensiveNameError(scriptBasedRegexes.offensive.pattern[nameField], name[nameField], nameField, errorMap);\n}\nfunction getOffensiveNameError(offensiveNameRegex, value, element, errorMap) {\n if (offensiveNameRegex) {\n offensiveNameRegex = new RegExp(\".*?\" + offensiveNameRegex + \".*?\", \"i\");\n if (offensiveNameRegex.test(value)) {\n errorMap.INVALID_ALL_OFFENSIVE = {\n code: NAME_ERROR_CODE.INVALID_ALL_OFFENSIVE,\n element: element\n };\n }\n }\n return errorMap;\n}\nfunction isNameInValidList(name, nameField, scriptBasedRegexes) {\n if (!Object.keys(scriptBasedRegexes.validList.pattern).includes(nameField) || !name[nameField]) {\n return false;\n }\n var validListRegex = scriptBasedRegexes.validList.pattern[nameField];\n if (validListRegex) {\n validListRegex = new RegExp(\"^(\" + validListRegex + \")$\", \"i\");\n if (validListRegex.test(name[nameField].toLowerCase())) {\n return true;\n }\n }\n return false;\n}\nfunction isInitialName(name, nameField, scriptBasedRegexes) {\n if (!Object.keys(scriptBasedRegexes.initialsRange.pattern).includes(nameField) || !name[nameField]) {\n return false;\n }\n var initialsRangeRegex = scriptBasedRegexes.initialsRange.pattern[nameField];\n if (initialsRangeRegex) {\n initialsRangeRegex = new RegExp(\"^(\" + initialsRangeRegex + \")$\", \"i\");\n if (initialsRangeRegex.test(name[nameField])) {\n return true;\n }\n }\n return false;\n}\nfunction validateRequiredField(name, requiredProperties) {\n var errors = [];\n requiredProperties.forEach(function (property) {\n if (!name[property] || name[property] === \"\") {\n errors.push({\n code: NAME_ERROR_CODE.MISSING_REQUIRED,\n element: property\n });\n }\n });\n return errors;\n}\nfunction validateMixedScript(scripts, nonEmptyNamefields) {\n var errors = [];\n if (scripts.length === 0) {\n nonEmptyNamefields.forEach(function (field) {\n errors.push({\n code: NAME_ERROR_CODE.INVALID_ALL_MIXED_SCRIPT,\n element: field\n });\n });\n }\n return errors;\n}\nfunction validateNationalityScript(scripts, nationality, supportedScripts, nonEmptyNamefields) {\n var errors = [];\n var supportedScriptsByNationality = supportedScripts.personal.nationality;\n var nationalityScripts = nationality != null ? supportedScriptsByNationality[nationality] || supportedScriptsByNationality.INTERNATIONAL || supportedScriptsByNationality.DEFAULT : supportedScriptsByNationality.DEFAULT;\n var isNationalityValid = false;\n for (var index = 0; index < scripts.length; index++) {\n if (nationalityScripts.indexOf(scripts[index]) !== -1) {\n isNationalityValid = true;\n break;\n }\n }\n if (!isNationalityValid) {\n nonEmptyNamefields.forEach(function (field) {\n errors.push({\n code: NAME_ERROR_CODE.INVALID_NATIONALITY_SCRIPT,\n element: field\n });\n });\n }\n return errors;\n}\nfunction validateScript(name, nonEmptyNamefields, validRegExString) {\n var nameConcat = properties.reduce(function (nameConcat, item) {\n return nameConcat + (name[item] || \"\");\n }, \"\");\n var validRangeForCountryRegex = validRegExString;\n if (validRangeForCountryRegex) {\n validRangeForCountryRegex = new RegExp(\"^(\" + validRangeForCountryRegex + \")$\");\n // Checking INVALID_SCRIPT\n if (!isCharacterRangeMatch(validRangeForCountryRegex, nameConcat)) {\n var errors = [];\n nonEmptyNamefields.forEach(function (field) {\n var codePoint = invalidCodePointFromString(name[field], validRangeForCountryRegex);\n if (codePoint !== undefined) {\n errors.push({\n code: NAME_ERROR_CODE.INVALID_SCRIPT,\n element: field,\n invalidCodePoint: codePoint\n });\n }\n });\n return errors;\n }\n }\n return [];\n}\nfunction validatePunctuation(name, nameField, scriptBasedRegexes, errorMap) {\n if (!Object.keys(scriptBasedRegexes.punctuation.pattern).includes(nameField) || !name[nameField]) {\n return errorMap;\n }\n return getPunctuationNameError(scriptBasedRegexes.punctuation.pattern[nameField], name[nameField], nameField, errorMap);\n}\nfunction getPunctuationNameError(punctuationRegex, value, element, errorMap) {\n if (punctuationRegex) {\n punctuationRegex = new RegExp(\"^(\" + punctuationRegex + \")*?$\", \"i\");\n if (punctuationRegex.test(value)) {\n errorMap.INVALID_ALL_PUNCTUATION = {\n code: NAME_ERROR_CODE.INVALID_ALL_PUNCTUATION,\n element: element\n };\n }\n }\n return errorMap;\n}\nfunction validateRepetition(name, nameField, repetitionRegexObj, errorMap) {\n if (!Object.keys(repetitionRegexObj.pattern).includes(nameField) || !name[nameField]) {\n return errorMap;\n }\n var repetitionRegex = repetitionRegexObj.pattern[nameField];\n if (repetitionRegex) {\n var repetitionResult;\n repetitionRegex = new RegExp(\"^\" + repetitionRegex + \"*?$\", \"i\");\n if ((repetitionResult = repetitionRegex.exec(name[nameField])) !== null) {\n errorMap.INVALID_CHARACTER_REPETITION = {\n code: NAME_ERROR_CODE.INVALID_CHARACTER_REPETITION,\n element: nameField,\n repeatedCharacter: repetitionResult.find(function (_) {\n return ![undefined, null].includes(_) && _ !== repetitionResult[0];\n })\n };\n }\n }\n return errorMap;\n}\nfunction validateHonorifics(name, nameField, honorificsVariation, errorMap) {\n if (!Object.keys(honorificsVariation.pattern).includes(nameField) || !name[nameField]) {\n return errorMap;\n }\n var honorificsRegex = honorificsVariation.pattern[nameField].join(\"|\");\n if (honorificsRegex) {\n honorificsRegex = new RegExp(\"^(\" + honorificsRegex + \")$\", \"i\");\n if (honorificsRegex.test(name[nameField])) {\n errorMap.INVALID_ALL_HONORIFICS = {\n code: NAME_ERROR_CODE.INVALID_ALL_HONORIFICS,\n element: nameField\n };\n }\n }\n return errorMap;\n}\nfunction validateBoundaryValidation(name, nameField, boundaryValidation, errorMap) {\n if (!Object.keys(boundaryValidation.pattern).includes(nameField) || !name[nameField]) {\n return errorMap;\n }\n var boundaryValidationRegex = boundaryValidation.pattern[nameField];\n if (boundaryValidationRegex) {\n // We don't add ^( and )$ because the regex already has position based tokens\n boundaryValidationRegex = new RegExp(boundaryValidationRegex, \"i\");\n if (boundaryValidationRegex.test(name[nameField])) {\n var bvResult = boundaryValidationRegex.exec(name[nameField]);\n errorMap.INVALID_BOUNDARY_PATTERN = {\n code: NAME_ERROR_CODE.INVALID_BOUNDARY_PATTERN,\n element: nameField,\n invalidSequence: bvResult[0]\n };\n }\n }\n return errorMap;\n}\nfunction validateKeyboardBanging(name, nameField, scriptBasedRegexes, errorMap) {\n if (!Object.keys(scriptBasedRegexes.keyboardBanging.pattern).includes(nameField) || !name[nameField]) {\n return errorMap;\n }\n var keyboardBangingRegex = scriptBasedRegexes.keyboardBanging.pattern[nameField];\n var kbResult;\n if (keyboardBangingRegex) {\n keyboardBangingRegex = new RegExp(\".*?(\" + keyboardBangingRegex + \").*?\", \"i\");\n if (keyboardBangingRegex.test(name[nameField])) {\n kbResult = keyboardBangingRegex.exec(name[nameField]);\n errorMap.INVALID_KEYBOARD_BANGING = {\n code: NAME_ERROR_CODE.INVALID_KEYBOARD_BANGING,\n element: nameField,\n invalidSequence: kbResult[1]\n };\n }\n }\n return errorMap;\n}\nfunction validateSingleCharacter(name, nameField, singleCharacterValidation, errorMap) {\n if (!singleCharacterValidation.pattern || !Object.keys(singleCharacterValidation.pattern).includes(nameField) || !name[nameField]) {\n return errorMap;\n }\n var singleCharacterRegexPat = singleCharacterValidation.pattern[nameField].join(\"|\");\n if (singleCharacterRegexPat) {\n var singleCharacterRegex = new RegExp(\"^(\" + singleCharacterRegexPat + \")$\", \"i\");\n if (singleCharacterRegex.test(name[nameField])) {\n errorMap.INVALID_SINGLE_CHARACTER = {\n code: NAME_ERROR_CODE.INVALID_SINGLE_CHARACTER,\n element: nameField\n };\n }\n }\n return errorMap;\n}\nfunction validateNonVowel(name, nameField, scriptBasedRegexes, nameValidations, errorMap) {\n if (!Object.keys(scriptBasedRegexes.nonVowel.pattern).includes(nameField) || !name[nameField]) {\n return errorMap;\n }\n var nonVowelRegex = scriptBasedRegexes.nonVowel.pattern[nameField];\n var singleCharacterRegex = nameValidations.singleCharacterRegex.join(\"|\");\n var honorificsRegex = nameValidations.honorificsRegex.join(\"|\");\n var boundaryRegex = nameValidations.boundaryRegex;\n var punctuationRegex = scriptBasedRegexes.punctuationRegex;\n if (singleCharacterRegex && nonVowelRegex && honorificsRegex && punctuationRegex && boundaryRegex) {\n singleCharacterRegex = new RegExp(\"^(\" + singleCharacterRegex + \")$\", \"i\");\n nonVowelRegex = new RegExp(\"^(\" + nonVowelRegex + \")$\", \"i\");\n honorificsRegex = new RegExp(\"^(\" + honorificsRegex + \")$\", \"i\");\n boundaryRegex = new RegExp(boundaryRegex, \"i\");\n punctuationRegex = new RegExp(\"^(\" + punctuationRegex + \")*?$\", \"i\");\n if (!singleCharacterRegex.test(name[nameField]) && !honorificsRegex.test(name[nameField]) && !boundaryRegex.test(name[nameField]) && !punctuationRegex.test(name[nameField]) && !isInitialName(name, nameField, scriptBasedRegexes) && nonVowelRegex.test(name[nameField])) {\n errorMap.INVALID_ALL_NON_VOWEL = {\n code: NAME_ERROR_CODE.INVALID_ALL_NON_VOWEL,\n element: nameField\n };\n }\n }\n return errorMap;\n}\nfunction nameFormatToParts(name, props) {\n return formatToParts(name, props);\n}\nvar getMissingMetadataError = function getMissingMetadataError(path) {\n var message = \"Missing WorldReady metadata, please refer to https://github.paypal.com/pages/Globalization-R/worldready-js/docs/about-load-worldready-data.html\";\n if (path) {\n message += \"\\nPath: \" + path;\n }\n return new Error(message);\n};\nfunction validateCldr(path, value, options) {\n if (options === void 0) {\n options = {\n skip: []\n };\n }\n var skipBoolean = options.skip.some(function (regex) {\n return regex.test(path);\n });\n if (skipBoolean) {\n return;\n }\n if (value === undefined) {\n throw getMissingMetadataError(path);\n }\n}\nvar countryAliasMapping = {\n C2: \"CN\",\n UK: \"GB\"\n};\nfunction getResolvedRegion(region) {\n return countryAliasMapping[region] || region;\n}\nvar ENVIRONMENT = {\n PRODUCTION: \"production\"\n};\nvar assertName$1, assertNationalityWithBusinessType$1, assertBusinessTypeWithPerson$1, assertregisteredBusinessTypeWithPerson$1;\nif (process.env.NODE_ENV !== ENVIRONMENT.PRODUCTION) {\n assertName$1 = assertName;\n assertNationalityWithBusinessType$1 = assertNationalityWithBusinessType;\n assertBusinessTypeWithPerson$1 = assertBusinessTypeWithPerson;\n assertregisteredBusinessTypeWithPerson$1 = assertregisteredBusinessTypeWithPerson;\n}\n\n/**\n *\n * @param {*} nameProperties object in form of\n * {\n * regionDefaultScript: \"\",\n * validationMatadata: {},\n * requiredProperties: [],\n * layouts: {},\n * regionalData: {},\n * defaultData: {}\n * }\n * @returns true if nameProperties is valid.\n */\nfunction isNamePropertiesValid(nameProperties) {\n // validate properties\n if (!nameProperties || !nameProperties.regionalData || !nameProperties.defaultData || !nameProperties.regionDefaultScript || !nameProperties.layouts || !nameProperties.requiredProperties || !nameProperties.formatData || !nameProperties.validationMatadata) {\n return false;\n }\n return true;\n}\n\n/**\n * Returns nameProperties object in form of\n * {\n * regionDefaultScript: \"\",\n * validationMatadata: {},\n * requiredProperties: [],\n * layouts: {},\n * regionalData: {},\n * defaultData: {}\n * }\n * by getting data from Cldr\n * @param {*} cldr - Cldr instance\n * @param {*} type - type of name, i.e. person or business name\n * @param {*} nameRegion - region option for NameFormatter\n * @param {*} style - style option for NameFormatter\n * @param {*} formatAs - formatAs option for NameFormatter\n * @returns nameProperties object\n */\nfunction getNameProprties(cldr, type, nameRegion, style, formatAs) {\n return {\n regionDefaultScript: cldr.get([\"supplemental/personNameData\", nameRegion, \"primaryScript\"]) || cldr.get([\"supplemental/personNameData\", \"DEFAULT\", \"primaryScript\"]),\n validationMatadata: cldr.get([\"supplemental/personNameData\", nameRegion, \"validations\"]) || cldr.get([\"supplemental/personNameData\", \"DEFAULT\", \"validations\"]),\n formatData: formatAs.titleCase ? cldr.get([\"supplemental/commonNameData/region/default/script/default/formatAs\"]) : {},\n requiredProperties: type === NAME_TYPES.PERSON ? cldr.get([\"supplemental/personNameData\", nameRegion, \"requiredProperties\"]) || cldr.get([\"supplemental/personNameData\", \"DEFAULT\", \"requiredProperties\"]) : cldr.get([\"supplemental/businessNameData/default/requiredProperties\"]),\n layouts: type === NAME_TYPES.PERSON ? cldr.get([\"supplemental/personNameData\", nameRegion, \"layouts\", style]) || cldr.get([\"supplemental/personNameData\", \"DEFAULT\", \"layouts\", style]) : cldr.get([\"supplemental/businessNameData/default/layouts\"]),\n regionalData: cldr.get([\"supplemental/personNameData\", nameRegion]),\n defaultData: cldr.get([\"supplemental/personNameData\", \"DEFAULT\"])\n };\n}\nvar NameFormat = /*#__PURE__*/function () {\n function NameFormat(worldReady, options) {\n if (process.env.NODE_ENV !== ENVIRONMENT.PRODUCTION) {\n assertType(worldReady, \"worldReady\", [\"object\", \"plain object\"]);\n if (!isWorldReadyInstance(worldReady)) {\n var _Cldr$attributes = new Cldr(\"und-\" + worldReady.region).attributes,\n language = _Cldr$attributes.language,\n region = _Cldr$attributes.region;\n throw new Error(\"DEPRECATED WARNING: NameFormat API has changed for consistency with other formatters, see our updated docs for more information.\\nFix your code by using:\\n\" + (\"new NameFormat(new WorldReady(\\\"\" + language + \"-\" + region + \"\\\"), \" + JSON.stringify(Object.assign({\n nameRegion: region\n }, options || {})) + \")\"));\n }\n assertType(options, \"options\", [\"undefined\", \"plain object\"]);\n assertType(options.nameRegion, \"options.nameRegion\", [\"string\"]);\n assertNationalityWithBusinessType$1(options.nationality, options.type);\n assertBusinessTypeWithPerson$1(options.businessType, options.type);\n assertregisteredBusinessTypeWithPerson$1(options.registeredBusinessType, options.type);\n assertType(options.nationality, \"options.nationality\", [\"null\", \"undefined\", \"string\"]);\n assertType(options.businessType, \"options.businessType\", [\"null\", \"undefined\", \"string\"]);\n assertType(options.registeredBusinessType, \"options.businessType\", [\"null\", \"undefined\", \"string\"]);\n }\n options = options || {};\n var cldr = worldReady.globalize.cldr;\n // used for determining layout for a given locale.\n var localeScript = cldr.attributes.script;\n var nameRegion = getResolvedRegion(options.nameRegion);\n var _options4 = options,\n _options4$style = _options4.style,\n style = _options4$style === void 0 ? NAME_STYLES.FULL : _options4$style,\n _options4$type = _options4.type,\n type = _options4$type === void 0 ? NAME_TYPES.PERSON : _options4$type,\n nationality = _options4.nationality,\n businessType = _options4.businessType,\n registeredBusinessType = _options4.registeredBusinessType,\n _options4$formatAs = _options4.formatAs,\n formatAs = _options4$formatAs === void 0 ? DEFAULT_FORMATAS : _options4$formatAs;\n if (process.env.NODE_ENV !== ENVIRONMENT.PRODUCTION) {\n assertType(style, \"options.style\", [\"string\"]);\n assertRange(style, Object.values(NAME_STYLES), \"Invalid value for options.style: {value}, needs to be one of {{available}}\", {\n value: style,\n available: Object.values(NAME_STYLES)\n });\n assertType(type, \"options.type\", [\"string\"]);\n assertRange(type, Object.values(NAME_TYPES), \"Invalid value for options.type: {value}, needs to be one of {{available}}\", {\n value: type,\n available: Object.values(NAME_TYPES)\n });\n assertType(formatAs.titleCase, \"formatAs.titleCase\", [\"boolean\"]);\n }\n this.type = type;\n this.nationality = nationality;\n var nameProperties = getNameProprties(cldr, type, nameRegion, style, formatAs);\n if (!isNamePropertiesValid(nameProperties)) {\n validateCldr();\n }\n var regionDefaultScript = nameProperties.regionDefaultScript,\n layouts = nameProperties.layouts,\n requiredPropsArray = nameProperties.requiredProperties,\n nameFormatData = nameProperties.formatData,\n validationsMeta = nameProperties.validationMatadata;\n this._validate = function (name) {\n return type === NAME_TYPES.PERSON ? validateName(name, {\n requiredPropsArray: requiredPropsArray,\n validationsMeta: validationsMeta,\n nationality: nationality\n }) : validateBusinessName(name, {\n validationsMeta: validationsMeta,\n businessType: businessType,\n registeredBusinessType: registeredBusinessType\n });\n };\n var supportedScripts = Object.keys(layouts);\n this._formatToParts = function (name) {\n return nameFormatToParts(name, {\n layouts: layouts,\n regionDefaultScript: regionDefaultScript,\n localeScript: localeScript,\n supportedScripts: supportedScripts,\n requiredPropsArray: requiredPropsArray,\n formatAs: formatAs,\n nameFormatData: nameFormatData\n });\n };\n }\n var _proto = NameFormat.prototype;\n _proto.format = function format(name) {\n return this.formatToParts(name).reduce(function (memo, _ref9) {\n var value = _ref9.value;\n return memo + value;\n }, \"\");\n };\n _proto.formatToParts = function formatToParts(name) {\n if (process.env.NODE_ENV !== ENVIRONMENT.PRODUCTION) {\n assertName$1(name);\n if (this.type === NAME_TYPES.PERSON) {\n assert(!name.businessName, 'You are trying to format a business name using `new NameFormat(worldReady, { type: \"person\" })`. Please, use `new NameFormat(worldReady, { type: \"business\" })` instead');\n }\n if (this.type === NAME_TYPES.BUSINESS) {\n assert(!name.givenName, 'You are trying to format a person name using `new NameFormat(worldReady, { type: \"business\" })`. Please, use `new NameFormat(worldReady, { type: \"person\" })` instead');\n }\n }\n return this._formatToParts(name);\n };\n _proto.validate = function validate(name) {\n return this._validate(name);\n };\n return NameFormat;\n}();\n/**\n * NameFormatClient contains name format browser/client\n * side code.\n */\nvar NameFormatClient = /*#__PURE__*/function (_NameFormat) {\n function NameFormatClient() {\n return _NameFormat.apply(this, arguments) || this;\n }\n _inheritsLoose(NameFormatClient, _NameFormat);\n return NameFormatClient;\n}(NameFormat);\nfunction transformName(name, options) {\n var transformedName = Object.assign({}, name); //clone object\n if (options.fromType === options.toType) {\n // No need to perform tranformation\n return transformedName;\n }\n if (options.fromType === \"oneSurname\") {\n if (transformedName.surname) {\n var surnames = transformedName.surname.trim().split(/\\u0020{2}(.+)/g); //splitting by first occurrence of double space\n transformedName.surname = surnames[0] ? surnames[0].trim() : \"\";\n transformedName.secondSurname = surnames[1] ? replaceDoubleSpaces(surnames[1]) : \"\";\n } else if (transformedName.secondSurname) {\n //only secondSurname is present in one2two transform\n transformedName.surname = \"\";\n transformedName.secondSurname = replaceDoubleSpaces(transformedName.secondSurname);\n }\n } else if (options.fromType === \"twoSurnames\") {\n if (transformedName.surname) {\n transformedName.surname = replaceDoubleSpaces(transformedName.surname);\n if (transformedName.secondSurname) {\n transformedName.secondSurname = replaceDoubleSpaces(transformedName.secondSurname);\n transformedName.surname = transformedName.surname + \" \" + transformedName.secondSurname.trim();\n delete transformedName.secondSurname;\n }\n } else if (transformedName.secondSurname) {\n //only secondSurname is present in two2one transform\n transformedName.surname = replaceDoubleSpaces(transformedName.secondSurname); //populate ouptput.surname with input.secondSurname\n delete transformedName.secondSurname;\n }\n }\n return transformedName;\n}\nfunction replaceDoubleSpaces(namePart) {\n return namePart.trim().replace(/\\u0020{2,}/g, \" \");\n}\n\n/**\n * This class transform names either from one to two surname or\n * from two to one surname.\n */\nvar NameConverter = /*#__PURE__*/function () {\n function NameConverter(options) {\n if (process.env.NODE_ENV !== ENVIRONMENT.PRODUCTION) {\n assertType(options, \"options\", [\"plain object\"]);\n assertType(options.fromType, \"options.fromType\", [\"string\"]);\n assertType(options.toType, \"options.toType\", [\"string\"]);\n var availableTypes = [\"oneSurname\", \"twoSurnames\"];\n assertRange(options.fromType, availableTypes, \"Invalid options.fromType {{value}}, expected one of {{availableTypes}}.\", {\n value: options.fromType,\n availableTypes: availableTypes\n });\n assertRange(options.toType, availableTypes, \"Invalid options.toType {{value}}, expected one of {{availableTypes}}.\", {\n value: options.toType,\n availableTypes: availableTypes\n });\n }\n this._transform = function (name) {\n return transformName(name, options);\n };\n }\n var _proto2 = NameConverter.prototype;\n _proto2.transform = function transform(name) {\n if (process.env.NODE_ENV !== ENVIRONMENT.PRODUCTION) {\n assertType(name, \"name\", [\"plain object\"]);\n }\n name = name || {};\n return this._transform(name);\n };\n return NameConverter;\n}();\n\nexport { NameConverter, NameFormatClient as NameFormat };\n","import 'core-js/modules/es.array.concat';\nimport 'core-js/modules/es.array.filter';\nimport 'core-js/modules/es.array.includes';\nimport 'core-js/modules/es.array.join';\nimport 'core-js/modules/es.array.map';\nimport 'core-js/modules/es.array.slice';\nimport 'core-js/modules/es.object.assign';\nimport 'core-js/modules/es.object.entries';\nimport 'core-js/modules/es.object.keys';\nimport 'core-js/modules/es.object.values';\nimport 'core-js/modules/es.regexp.constructor';\nimport 'core-js/modules/es.regexp.exec';\nimport 'core-js/modules/es.regexp.flags';\nimport 'core-js/modules/es.regexp.to-string';\nimport 'core-js/modules/es.string.includes';\nimport 'core-js/modules/es.string.match';\nimport 'core-js/modules/es.string.replace';\nimport 'core-js/modules/es.string.split';\nimport 'core-js/modules/es.string.trim';\nimport 'core-js/modules/web.dom-collections.for-each';\nimport Cldr from 'cldrjs/dist/cldr';\nimport { NameFormat } from '@paypalcorp/worldready-name';\nimport { isWorldReadyInstance } from '@paypalcorp/worldready-core';\nimport { assertType, assertRange, assert } from 'yaassertion';\n\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n }\n return target;\n}\nfunction _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n}\nfunction _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n return arr2;\n}\nfunction _createForOfIteratorHelperLoose(o, allowArrayLike) {\n var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"];\n if (it) return (it = it.call(o)).next.bind(it);\n if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") {\n if (it) o = it;\n var i = 0;\n return function () {\n if (i >= o.length) return {\n done: true\n };\n return {\n done: false,\n value: o[i++]\n };\n };\n }\n throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\nvar _excluded = [\"type\", \"parts\", \"value\"];\n\n/**\n * Camelizes strings\n */\nfunction camelize(text) {\n return text.replace(/^([A-Z])|[\\s-_]+(\\w)/g, function (match, p1, p2) {\n if (p2) return p2.toUpperCase();\n return p1.toLowerCase();\n });\n}\nfunction snakeCase(text) {\n return text.replace(/(?:^|\\.?)([A-Z0-9])/g, function (x, y) {\n return \"_\" + y.toLowerCase();\n }).replace(/^_/, \"\");\n}\nfunction camelizeObject(object) {\n return Object.assign.apply(Object, Object.keys(object).map(function (key) {\n var _ref;\n return _ref = {}, _ref[camelize(key)] = object[key], _ref;\n }));\n}\nfunction snakeCaseObject(object, specialTransforms) {\n if (specialTransforms === void 0) {\n specialTransforms = {};\n }\n return Object.assign.apply(Object, Object.keys(object).map(function (key) {\n var _ref2;\n return _ref2 = {}, _ref2[specialTransforms[key] || snakeCase(key)] = object[key], _ref2;\n }));\n}\n\n/**\n * Utility function to remove literals that are not required.\n * We only want to add a literal if we've previously encountered a non-literal field\n * and it's value is not an empty string. Hence we don't add a literal field to the\n * response immediately as we encounter it, but we wait until we see the next non-literal\n * field before adding the literal to our response.\n * @param {Array} parts an array with details about each part. Required props for each part are:\n * type: a string specifying whether the part is literal or not\n * value: value for that part\n * @returns {Array} modified array where unnecessary literals are removed\n */\nfunction removeExtraLiterals(parts) {\n if (parts === void 0) {\n parts = [];\n }\n if (!parts || !parts.length) {\n return;\n }\n var addedFirstNonLiteralField = false,\n literalField = null,\n result = [];\n parts.forEach(function (part) {\n if (part.type !== \"literal\") {\n if (literalField && addedFirstNonLiteralField && part.value.length) {\n result.push(literalField);\n }\n literalField = null;\n result.push(part);\n if (part.value.length) {\n addedFirstNonLiteralField = true;\n }\n } else {\n literalField = Object.assign({}, part);\n }\n });\n return result;\n}\nfunction cloneArray(array) {\n return array.slice(0);\n}\nfunction cloneDate(date) {\n return new Date(date.getTime());\n}\n\n/**\n * Deeply merges plain objects.\n *\n * Eg.\n * objectDeepAssign( { a: { b: 1, c: 2 } }, { a: { b: 3, d: 4 } }, ... )\n * -> { a: { b: 3, c: 2, d: 4 } }\n *\n * Code from https://github.com/rxaviers/cldrjs/blob/master/src/util/json/merge.js\n */\nfunction objectDeepAssign(destination) {\n for (var _len = arguments.length, sources = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n sources[_key - 1] = arguments[_key];\n }\n sources.forEach(function (source) {\n var prop;\n for (prop in source) {\n if (Array.isArray(source[prop])) {\n // Clone and set arrays.\n destination[prop] = cloneArray(source[prop]);\n } else if (source[prop] instanceof Date) {\n // Clone and set dates.\n destination[prop] = cloneDate(source[prop]);\n } else if (typeof source[prop] === \"object\") {\n // Merge objects.\n destination[prop] = objectDeepAssign({}, destination[prop], source[prop]);\n } else {\n // Set new values.\n destination[prop] = source[prop];\n }\n }\n });\n return destination;\n}\n\n/* Gets value in object path\n * @param {object} obj\n * @param {string|array} path\n * @examples\n * get({foo: 1, bar: {baz: 2}}, 'bar.baz');\n * > 2\n * get({foo: 1, bar: {baz: 2}}, 'foo.bar.baz.quax');\n * > undefined\n * NOTE: Asterisk support for Node.js only (reduced bytes)\n */\nvar objectGet;\n{\n // Client-side\n objectGet = function objectGet(obj, path) {\n if (typeof path === \"string\") {\n path = path.split(\".\");\n }\n if (!path.length) {\n return obj;\n }\n if (process.env.NODE_ENV !== \"production\") {\n if (path.some(function (part) {\n return part === \"*\";\n })) {\n throw new Error(\"Internal error: objectGet asterisk support NOT available\");\n }\n }\n var prop = path.slice(-1);\n var node = path.slice(0, -1).reduce(function (node, item) {\n return node[item] || {};\n }, obj);\n return node[prop];\n };\n}\n\n/**\n * Shallow merges an arary of objects.\n * shallowMerge([{ a: { i: 1 }}, { b: 2}, { a: { x: 99 }}])\n * > { a: { x: 99 }, b: 2 }\n */\nfunction shallowMerge(arrayOfObjects) {\n return Object.assign.apply(Object, [{}].concat(arrayOfObjects));\n}\nvar COMMON_ADDRESS_DATA = \"common\";\nvar ADDRESS_TYPES = {\n COARSE: \"coarse\",\n PORTABLE: \"portable\"\n};\nvar ADDRESS_STYLES = {\n MULTILINE: \"multiline\",\n SINGLELINE: \"singleline\",\n INTERNATIONAL_MULTILINE: \"international-multiline\",\n INTERNALTIONAL_SINGLELINE: \"international-singleline\"\n};\nvar ADDRESS_ERROR_CODES = {\n MISSING_ONE_OF: \"MISSING_ONE_OF\",\n MISSING_REQUIRED: \"MISSING_REQUIRED\",\n INVALID_PATTERN: \"INVALID_PATTERN\",\n INVALID_ALL_OFFENSIVE: \"INVALID_ALL_OFFENSIVE\",\n ADDRESS_CONTAINS_PO_BOX: \"ADDRESS_CONTAINS_PO_BOX\",\n ADDRESS_CONTAINS_RURAL_ROUTE: \"ADDRESS_CONTAINS_RURAL_ROUTE\"\n};\nvar COARSE_ADDRESS_FIELDS = [\"line1\", \"line2\", \"state\", \"city\", \"postalCode\", \"countryCode\"];\nvar PORTABLE_ADDRESS_FIELDS = [\"addressLine1\", \"addressLine2\", \"addressLine3\", \"adminArea4\", \"adminArea3\", \"adminArea2\", \"adminArea1\", \"postalCode\", \"countryCode\"];\nvar PORTABLE_ADDRESS_WITH_DETAILS_FIELDS = PORTABLE_ADDRESS_FIELDS.concat([\"addressDetails.buildingName\", \"addressDetails.deliveryService\", \"addressDetails.streetName\", \"addressDetails.streetNumber\", \"addressDetails.streetType\", \"addressDetails.subBuilding\"]);\nvar ADDRESS_TRANSFORM_TYPES = {\n COARSE: \"coarse\",\n PORTABLE: \"portable\",\n ADDRESS_PORTABLE_WITH_DETAILS: \"address-portable-with-details\"\n};\nvar ADDRESS_TYPES_FOR_PO_BOX_RURAL_ROUTE_VALIDATION = {\n SHIPPING: \"shipping\",\n MAILING: \"mailing\",\n PRIMARY: \"primary\"\n};\n\n/**\n * TODO: Remove this country specific logic to ignore po box error for US\n * after metrics are gathered from OAS since country specific logic\n * should not be present in sdk.\n */\nvar COUNTRIES_TO_IGNORE_FOR_PO_BOX_VALIDATION = [\"US\"];\n\n/**\n * Given a parameter, assert it's a valid address.\n * @param {Object} address the address object\n * @throws TypeError\n */\nfunction assertAddress(address) {\n var props = Object.keys(address);\n if (address.addressDetails) {\n props = props.concat(Object.keys(address.addressDetails).map(function (addressDetailsField) {\n return \"addressDetails.\" + addressDetailsField;\n }));\n }\n props.forEach(function (propName) {\n if (propName === \"addressDetails\") {\n return;\n }\n });\n}\nfunction oldGriffinCoarseSupport(address) {\n var fixes = {};\n if (address.postcode !== undefined && address.postalCode === undefined) {\n fixes.postalCode = address.postcode;\n }\n if (address.country !== undefined && address.countryCode === undefined) {\n fixes.countryCode = address.country;\n }\n // Clone and set coarse address \"fixes\".\n if (Object.keys(fixes).length) {\n address = objectDeepAssign(address, fixes);\n }\n return address;\n}\n\n/**\n * The core transformAddress function\n * @param {Object} address See README for details.\n * @param {Object} options See README for details.\n * @returns See README for details.\n * @example See README for details.\n */\nfunction transformAddress(address, options, metadata) {\n if (options === void 0) {\n options = {};\n }\n assertAddress(address);\n var _options = options,\n from = _options.from,\n to = _options.to;\n if (from === ADDRESS_TRANSFORM_TYPES.COARSE) {\n address = oldGriffinCoarseSupport(address);\n }\n if (from === ADDRESS_TRANSFORM_TYPES.PORTABLE && to === ADDRESS_TRANSFORM_TYPES.COARSE || from === ADDRESS_TRANSFORM_TYPES.COARSE && to === ADDRESS_TRANSFORM_TYPES.PORTABLE) {\n return convertAddress(address, {\n metadata: metadata,\n from: from,\n to: to\n });\n } else if (from === ADDRESS_TRANSFORM_TYPES.ADDRESS_PORTABLE_WITH_DETAILS && to === ADDRESS_TRANSFORM_TYPES.PORTABLE) {\n return convertPortableAddressWithDetailsToPortable(address, {\n metadata: metadata\n });\n } else if (from === ADDRESS_TRANSFORM_TYPES.ADDRESS_PORTABLE_WITH_DETAILS && to === ADDRESS_TRANSFORM_TYPES.COARSE) {\n return convertPortableAddressWithDetailsToCoarse(address, {\n metadata: metadata\n });\n }\n return null;\n}\n\n/**\n * Function that converts portable address to coarse and vice versa\n * @param {Object} address - object that needs to be converted to either portable or coarse\n * @param {Object} options - object with following details\n * metadata: object that has all the details for the countryCode territory\n * from: string value describing what is the type of input address object (portable | coarse)\n * to: string value describing what the address object needs to be converted to (portable | coarse)\n * @returns {Object} updated address object\n */\nfunction convertAddress(address, options) {\n if (address === void 0) {\n address = {};\n }\n if (options === void 0) {\n options = {};\n }\n if (!Object.keys(address).length || !options.metadata) {\n return null;\n }\n var transformMapping = metadataTransformMapping(options.metadata, address.countryCode, options.from, options.to);\n var fromAddressFields = options.from === ADDRESS_TRANSFORM_TYPES.PORTABLE ? PORTABLE_ADDRESS_FIELDS : COARSE_ADDRESS_FIELDS;\n var patternsData = objectGet(options.metadata, [address.countryCode, \"transform_mapping\", \"transform_properties\", \"patterns\"]);\n return _transformAddress({\n fromAddress: address,\n fromAddressFields: fromAddressFields,\n patternsData: patternsData,\n transformMapping: transformMapping\n });\n}\n\n/**\n * Function that converts high resolution address to portable (low resolution)\n * @param {Object} address - address object that needs to be converted to portable\n * @param {Object} options - object with following details:\n * metadata: object that has all the details for the countryCode territory\n * @returns {Object}\n */\nfunction convertPortableAddressWithDetailsToPortable(address, options) {\n if (address === void 0) {\n address = {};\n }\n if (options === void 0) {\n options = {};\n }\n if (!Object.keys(address).length || !options.metadata) {\n return null;\n }\n var transformMapping = metadataTransformMapping(options.metadata, address.countryCode, \"detailed\", ADDRESS_TRANSFORM_TYPES.PORTABLE);\n return portableAddressDetailedToRegular(address, transformMapping);\n}\n\n/**\n * Function that converts high resolution address to coarse\n * @param {Object} address - address object that needs to be converted to coarse\n * @param {Object} options - object with following details:\n * metadata: object that has all the details for the countryCode territory\n * @returns {Object}\n */\nfunction convertPortableAddressWithDetailsToCoarse(address, options) {\n if (address === void 0) {\n address = {};\n }\n if (options === void 0) {\n options = {};\n }\n if (!Object.keys(address).length || !options.metadata) {\n return null;\n }\n var portableAddress = convertPortableAddressWithDetailsToPortable(address, options);\n var coarseAddress = convertAddress(portableAddress, {\n metadata: options.metadata,\n from: ADDRESS_TRANSFORM_TYPES.PORTABLE,\n to: ADDRESS_TRANSFORM_TYPES.COARSE\n });\n return coarseAddress;\n}\nfunction metadataTransformMapping(metadata, territory, fromType, toType) {\n return objectGet(metadata, [territory, \"transform_mapping\", fromType + \"_to_\" + toType]);\n}\nfunction portableAddressDetailedToRegular(address, detailedToPortableTransformMapping) {\n var addressLines = convertDetailedAddressInfoToLines(address, detailedToPortableTransformMapping);\n var transformMappingCopy = Object.assign({}, detailedToPortableTransformMapping);\n delete transformMappingCopy.addressLines;\n var transformedAddress = detailedToPortableTransformMapping ? _transformAddress({\n fromAddress: address,\n fromAddressFields: PORTABLE_ADDRESS_WITH_DETAILS_FIELDS,\n patternsData: {},\n transformMapping: transformMappingCopy\n }) : {};\n // Merge transformed and original: transformed fields take precedence over original fields.\n var merged = PORTABLE_ADDRESS_FIELDS.reduce(function (merged, field) {\n var value = transformedAddress[field] || address[field];\n if (value) {\n merged[field] = value;\n }\n return merged;\n }, {});\n return Object.assign({}, merged, addressLines);\n}\nfunction _transformAddress(props) {\n var fromAddress = props.fromAddress;\n var fromAddressFields = props.fromAddressFields;\n var patternsData = props.patternsData;\n var transformMapping = props.transformMapping;\n var patternsRe = {};\n var patternsMatchElement = {};\n var processPatternTransforms = function processPatternTransforms(toField, lineItem) {\n return lineItem.replace(/^patterns\\.(.*?)\\.\\$([0-9])$/, function (garbage, fromField, matchElement) {\n patternsRe[toField] = new RegExp(\"^\" + patternsData[fromField] + \"$\");\n patternsMatchElement[toField] = +matchElement;\n return fromField;\n });\n };\n return Object.keys(transformMapping).map(function (toField) {\n var line = transformMapping[toField];\n line = line.map(processPatternTransforms.bind(null, toField));\n var parts = toParts(fromAddress, fromAddressFields, line);\n return {\n toField: toField,\n value: collapseParts(parts)\n };\n }).filter(function (pair) {\n return pair.value !== \"\";\n }).reduce(function (toAddress, pair) {\n var match;\n var toField = pair.toField;\n var value = pair.value;\n\n // Patterns processing.\n if (patternsRe[toField]) {\n match = value.match(patternsRe[toField]);\n value = match[patternsMatchElement[toField]];\n }\n if (value) {\n toAddress[toField] = value;\n }\n return toAddress;\n }, {});\n}\n\n/**\n * Return an address line \"parts\".\n * @param {Object} address the address object.\n * @param {array} addressFields list of fields of the address (according to its type).\n * @param {array} line metadata layout line\n * @return {array} the line parts populated with values from the address object.\n * [\n * { type: 'address_line_1', value: '123 Smith Dr.' }\n * ]\n */\nfunction toParts(address, addressFields, line) {\n // loop over fields in this line\n return line.map(function (field) {\n // if the field name from the metadata doesn't match one of the display fields,\n // then it's just a literal separator\n if (addressFields.indexOf(field) === -1) {\n return {\n type: \"separator\",\n value: field\n };\n }\n return {\n // Note: using `objectGet` due to portable address detailed fields like addressDetails.street_name.\n type: field,\n value: objectGet(address, field.split(\".\"))\n };\n });\n}\n\n/**\n * Given a line parts array like this:\n * [\n * { type: 'admin_area_2', value: 'San Jose' },\n * { type: 'separator', value: ', ' },\n * { type: 'admin_area_1', value: 'CA' },\n * ...\n * ]\n * Collapse it into a string but without any consecutive, initial, or trailing separators\n *\n * @param {array} parts\n * @return {string} the line parts array collapsed into a string\n */\nfunction collapseParts(parts) {\n return parts.filter(function (part) {\n // filter any blank values\n return part.value;\n }).filter(function (part, index, array) {\n // filter any consecutive separators\n // skip non-separators\n if (part.type !== \"separator\") {\n return true;\n }\n // filter a separator if the next part is going to be a separator\n if (array[index + 1] && array[index + 1].type === \"separator\") {\n return false;\n }\n return true;\n }).filter(function (part, index, array) {\n // filter any initial or final separator\n // skip non-separators\n if (part.type !== \"separator\") {\n return true;\n }\n\n // filter any line-initial or line-final separators\n if (index === 0 || index === array.length - 1) {\n return false;\n }\n return true;\n }).reduce(function (lineString, part) {\n // combine all 'value' properties into a single string\n return lineString += part.value;\n }, \"\");\n}\n\n/**\n * Helper function to convert addressDetails part of the address object to an object\n * with addressLines properties.\n * @param {Object} addressData - object containing address data\n * @param {Object} addressMapping - object containing which fields of address details maps to which address lines\n * @returns {Object}\n */\nfunction convertDetailedAddressInfoToLines(addressData, transformMapping) {\n if (addressData === void 0) {\n addressData = {};\n }\n if (transformMapping === void 0) {\n transformMapping = {};\n }\n if (!addressData.addressDetails || !transformMapping.addressLines) {\n return null;\n }\n var addressLines = transformMapping[\"addressLines\"].map(function (addressLine) {\n var parts = toParts(addressData, PORTABLE_ADDRESS_WITH_DETAILS_FIELDS, addressLine);\n return collapseParts(parts);\n }).filter(function (value) {\n return value !== \"\";\n });\n\n /**\n * When we are converting from high resolution to low resolution address and address line array is [\"\", \"sample address line 2\", \"\"],\n * then AddressConvert api will return addressLine1 as sample address line 2. But when we call AddressFormat.formatToParts(),\n * then addressLine1 will still be \"\" (empty) and addressLine2 will be sample address line 2.\n */\n\n return addressLines.reduce(function (object, item, index) {\n object[\"addressLine\" + (index + 1)] = item;\n return object;\n }, {});\n}\n\n/**\n * Actual PersonNameFormat implementation. The idea is the this whole file\n * becomes open source.\n */\nvar ADDRESS_LINES = [\"addressLine1\", \"addressLine2\", \"addressLine3\"];\nvar elements = {\n portable: ADDRESS_LINES.concat([\"adminArea4\", \"adminArea3\", \"adminArea2\", \"adminArea1\", \"postalCode\", \"countryCode\", \"addressDetails.buildingName\", \"addressDetails.deliveryService\", \"addressDetails.streetName\", \"addressDetails.streetNumber\", \"addressDetails.streetType\", \"addressDetails.subBuilding\"]),\n coarse: [\"line1\", \"line2\", \"state\", \"city\", \"postalCode\", \"postcode\", \"countryCode\", \"country\"]\n};\nfunction joinPartsValues(parts) {\n return parts.map(function (_ref3) {\n var value = _ref3.value;\n return value;\n }).join(\"\");\n}\nvar unsupportedCountryCodeRe = /Unsupported value for address.country_code/;\nfunction transformAddress$1(address, options, addressMetadata) {\n try {\n return transformAddress(address, options, addressMetadata);\n } catch (error) {\n if (unsupportedCountryCodeRe.test(error.message)) {\n throw new Error(\"You have not loaded metadata for \" + error.attributes.countryCode + \" country\");\n }\n throw error;\n }\n}\n\n/**\n * Given:\n * - stringLayout: \"{foo} {bar}\"\n * - stringLayouts:\n * {\n * \"bar\": \"{a} {b.c}\"\n * }\n * Returns:\n * [\n * {\n * \"type\": \"foo\"\n * },\n * {\n * \"type\": \"literal\",\n * \"value\": \" \"\n * },\n * {\n * \"type\": \"bar\",\n * \"parts\": [\n * {\n * \"type\": \"a\"\n * },\n * {\n * \"type\": \"literal\",\n * \"value\": \" \"\n * },\n * {\n * \"type\": \"b.c\"\n * }\n * ]\n * }\n * ]\n */\n// TODO: Find a better place for common functions between address and name\nfunction stringLayoutToPartsLayout(stringLayout, stringLayouts, checkStringLayouts) {\n if (stringLayouts === void 0) {\n stringLayouts = {};\n }\n if (checkStringLayouts === void 0) {\n checkStringLayouts = true;\n }\n var partsLayout = [];\n var lastMatchPos = 0;\n\n // For every matching variable (e.g., \"{foo}\"), add two parts: the literal\n // that precedes it and the matching type variable (e.g., { type: \"foo\" }).\n stringLayout.replace(/{[^}]+}/g, function (match, pos) {\n partsLayout.push({\n type: \"literal\",\n value: stringLayout.slice(lastMatchPos, pos)\n });\n var type = match.slice(1, -1);\n var part = {\n type: type\n };\n if (checkStringLayouts && stringLayouts[type]) {\n part.parts = stringLayoutToPartsLayout(stringLayouts[type], stringLayouts, false);\n }\n partsLayout.push(part);\n lastMatchPos = pos + match.length;\n });\n partsLayout.push({\n type: \"literal\",\n value: stringLayout.slice(lastMatchPos)\n });\n\n // Remove empty literals.\n return partsLayout.filter(function (_ref4) {\n var type = _ref4.type,\n value = _ref4.value;\n return type !== \"literal\" || value;\n });\n}\nvar DEFAULT_SCRIPT_FALLBACK = \"Latn\";\n/**\n * Returns the object script, which is:\n * - `undefined` if the string is empty,\n * - `\"Latin\"` if the whole string is Latin, or\n * - The regionDefaultScript if string contains any non-Latin (because it's easier to do this than to\n * identify which script it really is AND it's assertive in our case).\n */\nfunction getStringScript(string, regionDefaultScript) {\n if (!string.length) {\n return;\n }\n for (var _iterator = _createForOfIteratorHelperLoose(string), _step; !(_step = _iterator()).done;) {\n var ch = _step.value;\n if (ch.charCodeAt(0) > 0x24f) {\n return regionDefaultScript;\n }\n }\n return \"Latn\";\n}\n\n/**\n * Helper function that determines what script should be used to format the address and name.\n * Determination rules and fallbacks are as follows:\n * 1. For address region with region default script as non Latn script and if address/name object contain non Latn script characters, then use non Latn script if supported by address region.\n * 2. If address object scipt is not supported for addressRegion or we don't have the metadata for that script,\n * then fallback to the primary_script for addressRegion identified in G11nMetadata\n * 3. if for some reason we don't have address layout metadata for the primary_script identified in G11nMetadata for primary_script,\n * then fallback to 'Latn' as we always have address layout for Latn script\n * @param {Object} stringLayouts an object containing layouts for all the scripts for addressRegion\n * @param {Object} options object with additional properties for identifying the final script that should be used\n * @returns {Object} an object with the address layout based on script identified by above rules\n */\nvar getLayoutFromScript = function getLayoutFromScript(stringLayouts, options) {\n if (stringLayouts === void 0) {\n stringLayouts = {};\n }\n if (options === void 0) {\n options = {};\n }\n if (!Object.keys(stringLayouts).length || !options.primaryScript) {\n return null;\n }\n var _options2 = options,\n finalScript = _options2.finalScript,\n primaryScript = _options2.primaryScript;\n return stringLayouts[finalScript] || stringLayouts[primaryScript] || stringLayouts[DEFAULT_SCRIPT_FALLBACK];\n};\n\n/**\n * Actual formatToParts function.\n *\n * @param {String} address A portable or coarse address.\n * @param {String} options.allowedValues Object of address elements and their allowed values array key-value pairs\n * @param {String} options.regionDefaultScript Region default script\n * @param {String} options.localeScript Locale script\n * @param {Object} options.stringLayouts Metadata for the chosen style, e.g.:\n * {\n * \"addressLine1\": \"{addressDetails.streetType} {addressDetails.streetName}, {addressDetails.streetNumber}\",\n * \"addressLine2\": \"{addressDetails.subBuilding}\",\n * \"Latn\": \"{addressLine1}\\n{addressLine2}\\n{addressLine3}\\n{adminArea2} {adminArea1}\\n{countryCode}\"\n * }\n * TODO Should we process stringLayouts at constructor level and pass partsLayout here instead?\n * @param {Object} options.supportedScripts Supported scripts array.\n * @param {Object} options.transforms Transform functions, e.g.:\n * {\n * \"adminArea1\": \"uppercase\"\n * }\n * TODO Should we process transformations at constructor level and pass the below here instead?\n * {\n * \"adminArea1\": value => value.toUpperCase()\n * }\n * @param {String} options.type Address type (portable or coarse)\n * @param {Object} requiredValues Object of address elements and their required values array key-value pairs\n * @param {Object} hiddenValues Object of address elements and their hidden values array key-value pairs\n *\n * @return {Array} Formatted address parts.\n */\nfunction addressFormatToParts(address, _ref5, nameParts, _ref6) {\n var _this = this;\n var recipient = _ref5.recipient,\n businessName = _ref5.businessName;\n var _ref6$allowedValues = _ref6.allowedValues,\n allowedValues = _ref6$allowedValues === void 0 ? {} : _ref6$allowedValues,\n internationalRegionName = _ref6.internationalRegionName,\n regionDefaultScript = _ref6.regionDefaultScript,\n localeScript = _ref6.localeScript,\n stringLayouts = _ref6.stringLayouts,\n supportedScripts = _ref6.supportedScripts,\n transforms = _ref6.transforms,\n type = _ref6.type,\n _ref6$requiredValues = _ref6.requiredValues,\n requiredValues = _ref6$requiredValues === void 0 ? {} : _ref6$requiredValues,\n _ref6$hiddenValues = _ref6.hiddenValues,\n hiddenValues = _ref6$hiddenValues === void 0 ? {} : _ref6$hiddenValues,\n _ref6$disabledValues = _ref6.disabledValues,\n disabledValues = _ref6$disabledValues === void 0 ? {} : _ref6$disabledValues,\n _ref6$presetValue = _ref6.presetValue,\n presetValue = _ref6$presetValue === void 0 ? {} : _ref6$presetValue,\n language = _ref6.language;\n var addressCopy = Object.assign({}, address);\n if (type === \"coarse\") {\n addressCopy = oldGriffinCoarseSupport$1(addressCopy);\n }\n var addressScript;\n\n // Optimization:\n // If the region default script is different than \"Latn\", check address.\n // Otherwise, not needed, it's always going to be \"Latn\".\n if (regionDefaultScript === \"Latn\") {\n addressScript = \"Latn\";\n } else {\n addressScript = getStringScript(Object.entries(addressCopy).filter(function (_ref7) {\n var elementType = _ref7[0];\n return isProperty[type][elementType];\n }).map(function (_ref8) {\n var value = _ref8[1];\n return value;\n }).join(\"\"), regionDefaultScript);\n }\n\n /**\n * finalScript is determined in following preference order:\n * 1. address script : if address object is not empty then use address script\n * 2. locale script : if address is empty then fallback to locale script\n * 3. region default script: if locale script is not supported then fallback to region's default script\n * 4. Latn : if region default script is unavailable then fallback to Latn\n * For example:\n * 1. in ja-JP locale script is JPAN and address object is empty then state value should be in JPAN\n * 2. in en-JP locale script is LATN and address object is empty then state value should be in LATN\n * 3. in ar-EG locale script is ARAB and for GR ARAB is not supported script so it will fallback to LATN (region's default script)\n */\n var finalScript = addressScript || (supportedScripts.includes(localeScript) ? localeScript : regionDefaultScript || \"Latn\");\n if (businessName) {\n addressCopy.businessName = businessName;\n }\n if (transforms) {\n Object.entries(transforms).filter(function (_ref9) {\n var element = _ref9[0];\n return addressCopy[element];\n }).forEach(function (_ref10) {\n var element = _ref10[0],\n transformList = _ref10[1];\n return transformList.forEach(function (transform) {\n addressCopy[element] = transformFns[transform](addressCopy[element]);\n });\n });\n }\n\n // The address script determines the layout (e.g., latin vs Japanese), but the\n // user region determines the supported scripts (e.g., on US only latin\n // addresses are supported, on JP both latin and Japanese are supported).\n var stringLayout = getLayoutFromScript(stringLayouts, {\n primaryScript: regionDefaultScript,\n finalScript: finalScript\n });\n\n // For some regions for example \"CA\", \"CH\", \"ID\"\n // It is possible to have localized state list in different language where the script is Latn only.\n // e.g. stateList in en-ID and id-ID are in two language, but the script is Latn only.\n // So, we need to check if a particular language entry is existed or not, if not fall back to `default`.\n allowedValues = allowedValues[finalScript] ? allowedValues[finalScript][language] || allowedValues[finalScript][\"default\"] || {} : {};\n\n // Override string presetValue\n Object.keys(presetValue).forEach(function (property) {\n if (typeof presetValue[property] == \"string\" && property !== \"countryCode\") {\n addressCopy[property] = presetValue[property];\n }\n });\n if (internationalRegionName) {\n addressCopy.countryCode = internationalRegionName;\n }\n var partsLayout = stringLayout.split(\"\\n\").map(function (stringLayout) {\n var parts = stringLayoutToPartsLayout(stringLayout, stringLayouts);\n if (!internationalRegionName) {\n parts = parts.filter(function (_ref11) {\n var type = _ref11.type;\n return type !== \"countryCode\";\n });\n }\n fillParts(parts, allowedValues, requiredValues, hiddenValues, disabledValues);\n parts = filterDisabledParts(parts);\n return {\n type: \"line\",\n parts: parts\n };\n }).filter(function (_ref12) {\n var parts = _ref12.parts;\n return parts.length;\n });\n\n // TODO Transform (at constructor-time) partsLayout to include recipient\n // localized layout. Then we don't need this extra block and everything\n // happens naturally in fill() above.\n if (recipient) {\n partsLayout.forEach(function (parentPart) {\n var _parentPart$parts = parentPart.parts,\n parts = _parentPart$parts === void 0 ? [] : _parentPart$parts;\n parts.forEach(function (part) {\n if (part.type === \"recipient\") {\n var _parts = _this.personNameFormatterSingleton().formatToParts(recipient);\n part.parts = _parts;\n part.value = joinPartsValues(_parts);\n }\n return part;\n });\n });\n }\n return fill(partsLayout, addressCopy);\n}\nfunction filterDisabledParts(parts) {\n if (parts) {\n parts = parts.filter(function (_ref13) {\n var disabled = _ref13.disabled;\n return !disabled;\n });\n parts.forEach(function (part) {\n if (part && part.parts) {\n part.parts = filterDisabledParts(part.parts);\n }\n });\n }\n return parts;\n}\nfunction fillParts(parts, allowedValues, requiredValues, hiddenValues, disabledValues) {\n if (allowedValues === void 0) {\n allowedValues = {};\n }\n if (requiredValues === void 0) {\n requiredValues = {};\n }\n if (hiddenValues === void 0) {\n hiddenValues = {};\n }\n if (disabledValues === void 0) {\n disabledValues = {};\n }\n if (parts) {\n parts.filter(function (_ref14) {\n var type = _ref14.type;\n return type in allowedValues;\n }).forEach(function (part) {\n return part.allowedValues = allowedValues[part.type];\n });\n // setting `required` property only when it is set to true\n parts.filter(function (_ref15) {\n var type = _ref15.type;\n return type in requiredValues && requiredValues[type];\n }).forEach(function (part) {\n return part.required = true;\n });\n // setting `hidden` property\n parts.filter(function (_ref16) {\n var type = _ref16.type;\n return type in hiddenValues && hiddenValues[type];\n }).forEach(function (part) {\n return part.hidden = true;\n });\n parts.filter(function (_ref17) {\n var parts = _ref17.parts;\n return parts;\n }).forEach(function (part) {\n return fillParts(part.parts, allowedValues, requiredValues, hiddenValues, disabledValues);\n });\n // setting `disabled` property\n parts.filter(function (_ref18) {\n var type = _ref18.type;\n return type in disabledValues && disabledValues[type];\n }).forEach(function (part) {\n return part.disabled = true;\n });\n parts.filter(function (_ref19) {\n var parts = _ref19.parts;\n return parts;\n }).forEach(function (part) {\n return fillParts(part.parts, allowedValues, requiredValues, hiddenValues, disabledValues);\n });\n }\n return parts;\n}\n\n/**\n * Returns a coarse address (using postalCode and countryCode) when given an\n * old (actually griffin-node) coarse address (using postcode and country).\n * Note: modifies passed address (not a problem since we pass a clone).\n */\nfunction oldGriffinCoarseSupport$1(address) {\n var postcode = address.postcode,\n country = address.country;\n return Object.assign(address, postcode && {\n postalCode: postcode\n }, country && {\n countryCode: country\n });\n}\n\n/**\n * Given:\n * - partsLayout:\n * [\n * {\n * \"type\": \"foo\"\n * },\n * {\n * \"type\": \"literal\",\n * \"value\": \" \"\n * },\n * {\n * \"type\": \"bar\",\n * \"parts\": [\n * {\n * \"type\": \"a\"\n * },\n * {\n * \"type\": \"literal\",\n * \"value\": \" \"\n * },\n * {\n * \"type\": \"b.c\"\n * }\n * ]\n * }\n * ]\n * - object:\n * {\n * \"foo\": \"Foo\",\n * \"a\": \"Aaa\",\n * \"b\": {\n * \"c\": \"Bbb\"\n * }\n * }\n * Returns:\n * [\n * {\n * \"type\": \"foo\",\n * \"value\": \"Foo\"\n * },\n * {\n * \"type\": \"literal\",\n * \"value\": \" \"\n * },\n * {\n * \"type\": \"bar\",\n * \"value\": \"Aaa Bbb\",\n * \"parts\": [\n * {\n * \"type\": \"a\",\n * \"value\": \"Aaa\"\n * },\n * {\n * \"type\": \"literal\",\n * \"value\": \" \"\n * },\n * {\n * \"type\": \"b.c\",\n * \"value\": \"Bbb\"\n * }\n * ]\n * }\n * ]\n */\nfunction fill(partsLayout, object) {\n var result = partsLayout.map(function (_ref20) {\n var type = _ref20.type,\n parts = _ref20.parts,\n value = _ref20.value,\n etc = _objectWithoutPropertiesLoose(_ref20, _excluded);\n if (type !== \"literal\") {\n if (parts) {\n parts = fill(parts, object);\n value = joinPartsValues(parts);\n }\n if (!value) {\n value = objectGet(object, type) || \"\";\n }\n }\n return Object.assign(Object.assign({\n type: type,\n value: value\n }, etc), parts && {\n parts: parts\n });\n });\n result = removeExtraLiterals(result);\n return result;\n}\n\n/**\n * isProperty is a hash of the form: { : true }, which makes easier to\n * check if a string is one of the elements listed above.\n */\nvar isProperty = shallowMerge(Object.entries(elements).map(function (_ref21) {\n var _ref23;\n var type = _ref21[0],\n elements = _ref21[1];\n return _ref23 = {}, _ref23[type] = shallowMerge(elements.map(function (field) {\n var _ref22;\n return _ref22 = {}, _ref22[field] = true, _ref22;\n })), _ref23;\n}));\nvar transformFns = {\n uppercase: function uppercase(value) {\n return value.toUpperCase();\n }\n};\n\n/**\n * Given an object with properties and an array of valid string property names,\n * Clone the object and:\n * 1) Remove invalid properties,\n * 2) Remove non-string properties,\n * 3) Remove properties with only whitespace,\n * 4) Trim remaining string properties\n *\n * @param {Object} object the object to trim\n * @param {array} properties array of properties to preserve\n *\n * @return {Object} the cloned & trimmed object\n */\nfunction trimObject(object, properties) {\n var clonedObject = {};\n properties.forEach(function (property) {\n var value = object[property];\n if (value === undefined) {\n return;\n }\n if (typeof value === \"string\") {\n value = value.trim();\n }\n clonedObject[property] = value;\n });\n return clonedObject;\n}\nvar ENVIRONMENT = {\n PRODUCTION: \"production\"\n};\n\n/**\n * The core validateAddress function\n * @param {Object} address See README for details.\n * @param {Object} type See README for details.\n * @returns See README for details.\n * @example See README for details.\n */\nfunction validateAddress(address, type, properties, options) {\n var _retErrors;\n // address\n assertAddress(address);\n var retErrors = [];\n Object.defineProperty(retErrors, \"errors\", {\n get: function get() {\n if (process.env.NODE_ENV !== ENVIRONMENT.PRODUCTION) {\n var errorMsg = \"Please note that errors are no longer returned as an object, instead they are returned as an array. \" + \"From now on, please access the array directly rather than through the errors property. For more information, please read here: \" + \"https://github.paypal.com/pages/Globalization-R/worldready-js/docs/address-api.html#addressformatprototypevalidateaddressobj\";\n console.warn(errorMsg);\n }\n return this;\n }\n });\n var fields = type === ADDRESS_TYPES.PORTABLE ? PORTABLE_ADDRESS_WITH_DETAILS_FIELDS : COARSE_ADDRESS_FIELDS;\n if (type === ADDRESS_TYPES.COARSE) {\n address = oldGriffinCoarseSupport(address);\n }\n address = trimAddress(address, type);\n\n // Get errors from _validateAddress and push them\n (_retErrors = retErrors).push.apply(_retErrors, _validateAddress(address, fields, properties, Object.assign({}, options, {\n type: type\n })));\n if (type === ADDRESS_TYPES.PORTABLE) {\n // If non address lines error exist then return errors.\n var nonAddressLineError = retErrors.filter(function (error) {\n return !error.element.includes(\"addressLine\") && !error.element.includes(\"Details\");\n });\n if (nonAddressLineError.length) {\n return retErrors;\n }\n var addressLineErrors = retErrors.filter(function (error) {\n return error.element.includes(\"addressLine\");\n });\n\n // If there are any errors that are identified for non-required fields (non-field level checks),\n // then we want to return those errors directly.\n var errors = retErrors.filter(function (error) {\n return error.code !== ADDRESS_ERROR_CODES.MISSING_ONE_OF && error.code !== ADDRESS_ERROR_CODES.MISSING_REQUIRED;\n });\n if (errors && errors.length) {\n return retErrors;\n }\n var highResProperties = Object.keys(properties.required).filter(function (field) {\n return field.includes(\"addressDetails\");\n });\n // if addressLine (low res) error exist and high resolution properties\n // are not in required properties then return error.\n if (highResProperties.length === 0 && addressLineErrors.length !== 0) {\n return retErrors;\n }\n var detailErrors = retErrors.filter(function (error) {\n return error.element.includes(\"Details\");\n });\n // if detailErrors or addressLineErrors length is zero, this means\n // either address is valid high or low resolution address.\n if (detailErrors.length === 0 || addressLineErrors.length === 0) {\n retErrors = [];\n }\n }\n return retErrors;\n}\nfunction _validateAddress(address, fields, properties, options) {\n if (options === void 0) {\n options = {};\n }\n var isRequiredAlgebraValidResult = isRequiredAlgebraValid(address, getRequiredAlgebra(properties));\n return fields.reduce(function (errors, field) {\n return errors.concat(validateField(address, field, properties, Object.assign({}, options, {\n isRequiredAlgebraValidResult: isRequiredAlgebraValidResult\n })));\n }, []);\n}\nfunction getRequiredAlgebra(properties) {\n return typeof properties.requiredAlgebra === \"string\" ? properties.requiredAlgebra : null;\n}\nfunction trimAddress(address, type) {\n // pare down to only relevant fields and trim string fields themselves\n // remove full_name and business_name because those values are passed in via options.name and options.organization\n var addressEntryFields = type === ADDRESS_TYPES.PORTABLE ? PORTABLE_ADDRESS_FIELDS.concat(\"addressDetails\") : COARSE_ADDRESS_FIELDS;\n return trimObject(address, addressEntryFields);\n}\nfunction isRequiredAlgebraValid(address, requiredAlgebra) {\n if (!requiredAlgebra) {\n return false;\n }\n return requiredAlgebra.split(\"||\").some(function (group) {\n return group.split(\"&&\").every(function (field) {\n return objectGet(address, field.trim());\n });\n });\n}\n/**\n * Validates a specific field (`field` parameter, e.g. 'address_line_1') of the passed `address` object\n * based on the metadata `properties`.\n */\nfunction validateField(address, field, properties, options) {\n if (options === void 0) {\n options = {};\n }\n var _options3 = options,\n type = _options3.type,\n isRequiredAlgebraValidResult = _options3.isRequiredAlgebraValidResult;\n var requiredAlgebra = getRequiredAlgebra(properties);\n var required = properties.required ? properties.required[field] : null;\n var validationRegex = properties.validationRegex ? properties.validationRegex[field] : null;\n var offensiveWordRegex = getOffensiveWordRegex(properties, {\n field: field,\n type: type\n });\n var validListRegex = getValidListRegex(properties, {\n field: field,\n type: type\n });\n var applyRequiredAlgebra = requiredAlgebra && requiredAlgebra.includes(field) ? true : false;\n var errors = [];\n var fieldValue = objectGet(address, field.split(\".\"));\n\n // Check for offensive word pattern, po box & rural route in an address field\n // NOTE: This check should be performed on non-required fields as well\n if (field && fieldValue) {\n if (!isAddressFieldInValidList(fieldValue, validListRegex)) {\n var offensiveWordError = validateAddressFieldForOffensiveTerms(field, fieldValue, offensiveWordRegex);\n if (offensiveWordError && offensiveWordError.length) {\n errors.push.apply(errors, offensiveWordError);\n }\n if (!COUNTRIES_TO_IGNORE_FOR_PO_BOX_VALIDATION.includes(address.countryCode)) {\n var poBoxErrors = performPoBoxValidation(field, fieldValue, Object.assign({}, options, {\n type: type,\n addressValidations: properties.addressValidations\n }));\n if (poBoxErrors && poBoxErrors.length) {\n errors.push.apply(errors, poBoxErrors);\n }\n }\n var ruralRouteErrors = performRuralRouteValidation(field, fieldValue, Object.assign({}, options, {\n addressValidations: properties.addressValidations\n }));\n if (ruralRouteErrors && ruralRouteErrors.length) {\n errors.push.apply(errors, ruralRouteErrors);\n }\n }\n }\n if (!required && !validationRegex && !applyRequiredAlgebra) {\n return errors;\n }\n if (applyRequiredAlgebra && !isRequiredAlgebraValidResult) {\n errors.push({\n code: ADDRESS_ERROR_CODES.MISSING_ONE_OF,\n element: field,\n requiredAlgebra: requiredAlgebra\n });\n }\n // Check for missing required address properties.\n if (!applyRequiredAlgebra && required && !fieldValue) {\n errors.push({\n code: ADDRESS_ERROR_CODES.MISSING_REQUIRED,\n element: field\n });\n }\n\n // Check for invalid postal code.\n if (field === \"postalCode\" && validationRegex) {\n // TODO Create the regular expression instance once elsewhere, not in here everytime.\n var re = new RegExp(\"^\" + validationRegex + \"$\");\n if (fieldValue && !re.test(fieldValue)) {\n errors.push({\n code: ADDRESS_ERROR_CODES.INVALID_PATTERN,\n element: field\n });\n }\n }\n return errors;\n}\n\n/**\n * Utility function to perform po box validation\n * @param {String} field address field (addressLine1, addressLine2, etc.)\n * @param {String} value value of the address field\n * @param {Object} options an object which contains following props\n * - type: coarseAddressData | portableAddressData\n * - addressType: shipping | mailing | primary\n * - addressValidations: an object that contains regex pattern to be used for validation\n * - addressRegion: two letter address region code (US, GB, etc.)\n * @returns {Array} returns an array with error code if the address field value contains po box\n */\nfunction performPoBoxValidation(field, value, options) {\n var type = options.type,\n addressType = options.addressType,\n addressValidations = options.addressValidations,\n addressRegion = options.addressRegion;\n var poBoxValidations = addressValidations.default.poBox.territory[addressRegion];\n if (!poBoxValidations) {\n return [];\n }\n var addressTypesForPoBoxValidation = poBoxValidations.address_type;\n var regexInfo = getPoBoxRegex(poBoxValidations, field, type);\n if (regexInfo && regexInfo.pattern && regexInfo.flags) {\n var regex = new RegExp(regexInfo.pattern, regexInfo.flags);\n if (addressTypesForPoBoxValidation.includes(addressType) && regex.test(value)) {\n return [{\n code: ADDRESS_ERROR_CODES.ADDRESS_CONTAINS_PO_BOX,\n element: field\n }];\n }\n }\n return [];\n}\nfunction getPoBoxRegex(source, field, type) {\n if (!source || !type || !field) {\n return null;\n }\n var result = source.layout_type[type] || source.layout_type.default;\n result = result.properties[field] || result.properties.default;\n return result;\n}\n\n/**\n * Utility function to perform rural route validations\n * @param {String} field address field (addressLine1, addressLine2, etc.)\n * @param {String} value value of the address field\n * @param {Object} options an object which contains following props\n * - addressType: shipping | mailing | primary\n * - addressValidations: an object that contains regex pattern to be used for validation\n * - addressRegion: two letter address region code (US, GB, etc.)\n * - addressData: portableAddressData | coarseAddressData\n * @returns {Array} returns an array with error code if the address field value contains rural route\n */\nfunction performRuralRouteValidation(field, fieldValue, options) {\n var addressType = options.addressType,\n addressValidations = options.addressValidations,\n addressRegion = options.addressRegion,\n addressData = options.addressData,\n ruralRouteValidations = addressValidations[addressData].ruralRoute[addressRegion];\n if (!ruralRouteValidations || !Object.keys(ruralRouteValidations).length) {\n return [];\n }\n var addressTypesForRuralRouteValidation = ruralRouteValidations.address_type,\n regexInfo = getRuralRouteRegex(ruralRouteValidations, field);\n if (regexInfo && regexInfo.pattern && regexInfo.flags) {\n var regex = new RegExp(regexInfo.pattern, regexInfo.flags);\n if (addressTypesForRuralRouteValidation.includes(addressType) && regex.test(fieldValue)) {\n return [{\n code: ADDRESS_ERROR_CODES.ADDRESS_CONTAINS_RURAL_ROUTE,\n element: field\n }];\n }\n }\n return [];\n}\nfunction getRuralRouteRegex(source, field) {\n if (!source || !field) {\n return;\n }\n return source.properties[field] || source.properties.default;\n}\nfunction getOffensiveWordRegex(properties, options) {\n if (options === void 0) {\n options = {};\n }\n if (!properties || !options.field) {\n return null;\n }\n var _options4 = options,\n field = _options4.field,\n type = _options4.type;\n var result = properties.addressValidations[type] || properties.addressValidations.default;\n result = result.offensive.pattern[field] || result.offensive.pattern.default || null;\n return result;\n}\nfunction getValidListRegex(properties, options) {\n if (options === void 0) {\n options = {};\n }\n if (!properties || !options.field) {\n return null;\n }\n var _options5 = options,\n field = _options5.field,\n type = _options5.type;\n var result = properties.addressValidations[type] || properties.addressValidations.default;\n result = result.validList[field] || result.validList.default || null;\n return result;\n}\nfunction isAddressFieldInValidList(fieldValue, validListRegex) {\n if (fieldValue === void 0) {\n fieldValue = \"\";\n }\n if (validListRegex === void 0) {\n validListRegex = \"\";\n }\n if (fieldValue === \"\" || validListRegex === \"\") {\n return false;\n }\n validListRegex = new RegExp(\"^(\" + validListRegex + \")$\", \"i\");\n if (validListRegex.test(fieldValue.toLowerCase())) {\n return true;\n }\n return false;\n}\nfunction validateAddressFieldForOffensiveTerms(field, fieldValue, offensiveWordRegex) {\n if (field === void 0) {\n field = \"\";\n }\n if (fieldValue === void 0) {\n fieldValue = \"\";\n }\n if (field === \"\" || fieldValue === \"\" || !offensiveWordRegex || offensiveWordRegex === \"\") {\n return null;\n }\n var regex = new RegExp(\"\\\\b\" + offensiveWordRegex + \"+\\\\b\", \"i\");\n if (fieldValue && regex.test(fieldValue)) {\n return [{\n code: ADDRESS_ERROR_CODES.INVALID_ALL_OFFENSIVE,\n element: field\n }];\n }\n return null;\n}\nvar getMissingMetadataError = function getMissingMetadataError(path) {\n var message = \"Missing WorldReady metadata, please refer to https://github.paypal.com/pages/Globalization-R/worldready-js/docs/about-load-worldready-data.html\";\n if (path) {\n message += \"\\nPath: \" + path;\n }\n return new Error(message);\n};\nfunction validateCldr(path, value, options) {\n if (options === void 0) {\n options = {\n skip: []\n };\n }\n var skipBoolean = options.skip.some(function (regex) {\n return regex.test(path);\n });\n if (skipBoolean) {\n return;\n }\n if (value === undefined) {\n throw getMissingMetadataError(path);\n }\n}\nvar countryAliasMapping = {\n C2: \"CN\",\n UK: \"GB\"\n};\nfunction getResolvedRegion(region) {\n return countryAliasMapping[region] || region;\n}\nvar assertAddress$1, addressFormatToPartsAsserts;\nfunction validateRequiredCldr(path, value) {\n validateCldr(path, value, {\n skip: [/supplemental\\/[A-Za-z]*\\/[A-Z]{2}\\/maxLength/, /supplemental\\/[A-Za-z]*\\/[A-Z]{2}\\/validationRegex/, /supplemental\\/[A-Za-z]*\\/[A-Z]{2}\\/requiredAlgebra/]\n });\n}\nvar AddressFormat = /*#__PURE__*/function () {\n function AddressFormat(worldReady, options) {\n var _this2 = this;\n if (process.env.NODE_ENV !== ENVIRONMENT.PRODUCTION) {\n assertType(worldReady, \"worldReady\", [\"object\", \"plain object\"]);\n if (!isWorldReadyInstance(worldReady)) {\n throw new Error(\"DEPRECATED WARNING: AddressFormat API has changed for consistency with other formatters, see our updated docs for more information.\\nFix your code by using:\\n\" + (\"new AddressFormat(new WorldReady(\\\"\" + worldReady.language + \"-\" + worldReady.region + \"\\\"), \" + JSON.stringify(Object.assign({\n addressRegion: worldReady.region\n }, options || {})) + \")\"));\n }\n assertType(options, \"options\", [\"undefined\", \"plain object\"]);\n }\n options = options || {};\n var cldr = worldReady.globalize.cldr;\n if (process.env.NODE_ENV !== ENVIRONMENT.PRODUCTION) {\n assertType(options.addressRegion, \"options.addressRegion\", [\"string\"]);\n this._debug_options = options;\n }\n\n // used to return localized state and city name and select address layout\n var localeScript = cldr.attributes.script;\n var addressRegion = getResolvedRegion(options.addressRegion);\n var _options6 = options,\n _options6$type = _options6.type,\n type = _options6$type === void 0 ? ADDRESS_TYPES.PORTABLE : _options6$type,\n _options6$style = _options6.style,\n style = _options6$style === void 0 ? ADDRESS_STYLES.MULTILINE : _options6$style;\n\n // Error Checks: properties\n if (process.env.NODE_ENV !== ENVIRONMENT.PRODUCTION) {\n // Check options.type\n var availableTypes = Object.values(ADDRESS_TYPES);\n assertType(type, \"options.type\", [\"string\"]);\n assertRange(type, availableTypes, \"Invalid options.type {{value}}, expected one of {{availableTypes}}.\", {\n value: type,\n availableTypes: availableTypes\n });\n // Check options.style\n var availableStyles = Object.values(ADDRESS_STYLES);\n assertType(style, \"options.style\", [\"string\"]);\n assertRange(style, availableStyles, \"Invalid options.style {{value}}, expected one of {{availableStyles}}.\", {\n value: style,\n availableStyles: availableStyles\n });\n }\n this.type = type;\n this.addressRegion = addressRegion;\n var addressData = type + \"AddressData\";\n cldr.on(\"get\", validateRequiredCldr);\n var properties, regionDefaultScript;\n try {\n regionDefaultScript = cldr.get([\"supplemental\", COMMON_ADDRESS_DATA + \"AddressData\", addressRegion, \"primaryScript\"]);\n properties = {\n maxLength: cldr.get([\"supplemental\", addressData, addressRegion, \"maxLength\"]),\n required: cldr.get([\"supplemental\", addressData, addressRegion, \"required\"]),\n validationRegex: cldr.get([\"supplemental\", addressData, addressRegion, \"validationRegex\"]),\n requiredAlgebra: cldr.get([\"supplemental\", addressData, addressRegion, \"requiredAlgebra\"]),\n addressValidations: cldr.get([\"supplemental\", \"addressValidations\"])\n };\n } finally {\n cldr.off(\"get\", validateRequiredCldr);\n }\n var internationalRegionName;\n if (style.slice(0, 14) === \"international-\") {\n style = style.split(\"-\")[1];\n internationalRegionName = cldr.get([\"supplemental\", addressData, addressRegion, \"presetValue\", \"countryCode\"]);\n }\n var allowedValues = cldr.get([\"supplemental\", addressData, addressRegion, \"allowedValues\"]);\n var hiddenValues = cldr.get([\"supplemental\", addressData, addressRegion, \"hidden\"]);\n var disabledValues = cldr.get([\"supplemental\", addressData, addressRegion, \"disabled\"]);\n var presetValue = cldr.get([\"supplemental\", addressData, addressRegion, \"presetValue\"]);\n\n // Transforms \"multiline\" into \"multi\" and \"singleline\" into \"single\".\n style = style.slice(0, -4);\n var stringLayouts = shallowMerge([cldr.get([\"supplemental\", addressData, addressRegion, \"layouts/default\"]), cldr.get([\"supplemental\", addressData, addressRegion, \"layouts\", style])]);\n var transforms = cldr.get([\"supplemental\", addressData, addressRegion, \"transforms\"]);\n var supportedScripts = Object.keys(stringLayouts);\n this._validate = function (address, options) {\n options.addressRegion = addressRegion;\n options.addressData = addressData;\n return validateAddress(address, type, properties, options);\n };\n var instance;\n this.personNameFormatterSingleton = function () {\n if (instance) {\n return instance;\n } else {\n instance = new NameFormat(worldReady, {\n nameRegion: addressRegion\n });\n return instance;\n }\n };\n this._formatToParts = function (address, options) {\n return addressFormatToParts.call(_this2, address, options, {}, {\n allowedValues: allowedValues,\n internationalRegionName: internationalRegionName,\n regionDefaultScript: regionDefaultScript,\n localeScript: localeScript,\n stringLayouts: stringLayouts,\n supportedScripts: supportedScripts,\n transforms: transforms,\n type: type,\n requiredValues: properties.required,\n hiddenValues: hiddenValues,\n disabledValues: disabledValues,\n presetValue: presetValue,\n language: worldReady.language\n });\n };\n options.addressData = addressData;\n }\n var _proto = AddressFormat.prototype;\n _proto.format = function format(address, options) {\n return this.formatToParts(address, options).filter(function (_ref24) {\n var value = _ref24.value;\n return value;\n }).map(function (_ref25) {\n var value = _ref25.value;\n return value;\n }).join(\"\\n\");\n };\n _proto.formatToParts = function formatToParts(address, options) {\n if (process.env.NODE_ENV !== ENVIRONMENT.PRODUCTION) {\n addressFormatToPartsAsserts.call(this, address);\n }\n return this._formatToParts(address, options || {});\n };\n _proto.validate = function validate(address, options) {\n if (options === void 0) {\n options = {};\n }\n options.addressType = options.addressType || ADDRESS_TYPES_FOR_PO_BOX_RURAL_ROUTE_VALIDATION.SHIPPING;\n if (process.env.NODE_ENV !== ENVIRONMENT.PRODUCTION) {\n assertAddress$1(address, this.type, this.addressRegion);\n assertType(options, \"options\", [\"plain object\"]);\n assertType(options.addressType, \"options.addressType\", [\"string\"]);\n assertRange(options.addressType, Object.values(ADDRESS_TYPES_FOR_PO_BOX_RURAL_ROUTE_VALIDATION), \"Invalid options.addressType {{value}}, expected one of {{addressTypes}}\", {\n value: options.addressType,\n addressTypes: Object.values(ADDRESS_TYPES_FOR_PO_BOX_RURAL_ROUTE_VALIDATION)\n });\n }\n return this._validate(address, Object.assign({}, options));\n };\n return AddressFormat;\n}();\nvar AddressConverter = /*#__PURE__*/function () {\n function AddressConverter(options) {\n options.from = options.from || options.fromType;\n options.to = options.to || options.toType;\n if (process.env.NODE_ENV !== ENVIRONMENT.PRODUCTION) {\n assertType(options, \"options\", [\"undefined\", \"plain object\"]);\n assertType(options.from, \"options.from\", [\"string\"]);\n assertType(options.to, \"options.to\", [\"string\"]);\n var validFromTypes = Object.values(ADDRESS_TRANSFORM_TYPES);\n var validToTypes = [ADDRESS_TRANSFORM_TYPES.COARSE, ADDRESS_TRANSFORM_TYPES.PORTABLE];\n assertRange(options.from, validFromTypes, \"Invalid options.from {{value}}, expected one of {{validFromTypes}}.\", {\n value: options.from,\n validFromTypes: validFromTypes\n });\n assertRange(options.to, validToTypes, \"Invalid options.to {{value}}, expected one of {{validToTypes}}.\", {\n value: options.to,\n validToTypes: validToTypes\n });\n }\n var cldr = new Cldr(\"und\");\n this.options = options;\n\n // Not taking too much care about using minimal data here with the\n // assumption this is used in server-side.\n cldr.on(\"get\", validateRequiredCldr);\n var addressData = null;\n try {\n addressData = cldr.get(\"supplemental/portableAddressData\");\n } finally {\n cldr.off(\"get\", validateRequiredCldr);\n }\n this._transform = Object.assign.apply(Object, Object.keys(addressData).map(function (addressRegion) {\n var _addressMetadata, _ref26;\n var addressMetadata = (_addressMetadata = {}, _addressMetadata[addressRegion] = addressData[addressRegion], _addressMetadata.addressRegion = addressRegion, _addressMetadata);\n return _ref26 = {}, _ref26[addressRegion] = function (address) {\n return transformAddress$1(address, options, addressMetadata);\n }, _ref26;\n }));\n }\n var _proto2 = AddressConverter.prototype;\n _proto2.transform = function transform(address) {\n if (process.env.NODE_ENV !== ENVIRONMENT.PRODUCTION) {\n assertType(address, \"address\", [\"plain object\"]);\n }\n address = address || {};\n var originalCountryCode = address.countryCode || address.country;\n address.countryCode = getResolvedRegion(originalCountryCode);\n if (process.env.NODE_ENV !== ENVIRONMENT.PRODUCTION) {\n assertType(address.countryCode, \"address.countryCode\", [\"string\"]);\n }\n if (process.env.NODE_ENV !== ENVIRONMENT.PRODUCTION) {\n var availableRegions = Object.keys(this._transform);\n assertRange(address.countryCode, availableRegions, \"Invalid address.countryCode value {{value}}, expected one of {{availableRegions}}}\", {\n value: address.countryCode,\n availableRegions: availableRegions\n });\n } else {\n // TODO standardize error handling in production\n if (!this._transform[address.countryCode]) {\n console.error(new Error(\"Invalid address.countryCode range\").stack);\n return address;\n }\n }\n var transformedAddress = this._transform[address.countryCode](address);\n if (transformedAddress.countryCode) {\n transformedAddress.countryCode = originalCountryCode;\n }\n return transformedAddress;\n };\n return AddressConverter;\n}();\nvar AddressUtility = {\n /**\n * Utility function to convert keys of an object that are in snake case to camel case.\n * NOTE: This function doesn't update the values of an object.\n * @param {Object} address an object whose keys needs to be converted to camel case\n * @returns {Object} an object whose keys have been converted to camel case\n */\n camelizeAddress: function camelizeAddress(address) {\n return camelizeObject(address);\n },\n /**\n * Utility function to convert keys of an object from camel case to snake case\n * NOTE: This function doesn't update the values of an object.\n * @param {Object} address an object whose keys needs to be converted to snake case\n * @returns {Object} an object whose keys have been converted to snake case\n */\n snakeCaseAddress: function snakeCaseAddress(address) {\n return snakeCaseObject(address, {\n line1: \"line1\",\n line2: \"line2\"\n });\n }\n};\nif (process.env.NODE_ENV !== ENVIRONMENT.PRODUCTION) {\n assertAddress$1 = function assertAddress$1(address, type, addressRegion) {\n assertType(address, \"address\", [\"plain object\"]);\n if (address.country_code || address.address_line_1) {\n throw new Error(\"DEPRECATED WARNING: AddressFormat API has changed for consistency with other formatters. Now, we expect address obejct using camelCase keys. Sorry for the inconvenience, but we decided to do this change sooner than later since WorldReady is all about consistency.\\nFix your address object by using:\\n\" + JSON.stringify(camelizeObject(address), null, 2) + \"\\nWe also provide a utility you can use to transform your models:\\nAddressUtility.camelizeAddress(address);\");\n }\n elements[type].forEach(function (element) {\n assertType(objectGet(address, element), \"address.\" + element, [\"string\", \"undefined\"]);\n });\n address.countryCode = getResolvedRegion(address.countryCode);\n if (address.countryCode) {\n assertRange(address.countryCode, [addressRegion], \"You created this AddressFormat using {{addressRegionObj}}, but passed an address with {{countryCodeObj}}. Please use `new AddressFormat({{expectedAddressRegionObj}})` instead.\", {\n addressRegion: addressRegion,\n addressRegionObj: {\n addressRegion: addressRegion\n },\n countryCode: address.countryCode,\n countryCodeObj: {\n countryCode: address.countryCode\n },\n expectedAddressRegionObj: {\n addressRegion: address.countryCode\n }\n });\n }\n };\n addressFormatToPartsAsserts = function addressFormatToPartsAsserts(address) {\n assertAddress$1(address, this.type, this.addressRegion);\n var currUsage = \"new AddressFormat(worldReady, \" + JSON.stringify(this._debug_options) + \")\";\n if (this.type === ADDRESS_TYPES.PORTABLE) {\n assert(!address.line1, \"You are trying to format a coarse address {{address}} using `{currUsage}`. Please, use `{newUsage}` instead\", {\n address: address,\n currUsage: currUsage,\n newUsage: \"new AddressFormat(worldReady, \" + JSON.stringify(Object.assign({}, this._debug_options, {\n type: ADDRESS_TYPES.COARSE\n })) + \")\"\n });\n }\n if (this.type === ADDRESS_TYPES.COARSE) {\n assert(!address.addressLine1, \"You are trying to format a portable address {{address}} using `{currUsage}`. Please, use `{newUsage}` instead\", {\n address: address,\n currUsage: currUsage,\n newUsage: \"new AddressFormat(worldReady, \" + JSON.stringify(Object.assign({}, this._debug_options, {\n type: ADDRESS_TYPES.PORTABLE\n })) + \")\"\n });\n }\n var addressRegion = this.type === ADDRESS_TYPES.PORTABLE ? address.countryCode : address.countryCode || address.country;\n if (addressRegion) {\n assert(addressRegion === this.addressRegion, \"You are trying to format a {{addressRegion}} address (see {{value}}) using `{currUsage}`. Please, use `{newUsage}` instead\", {\n addressRegion: addressRegion,\n value: {\n countryCode: addressRegion\n },\n currUsage: currUsage,\n newUsage: \"new AddressFormat(worldReady, \" + JSON.stringify(Object.assign({}, this._debug_options, {\n addressRegion: addressRegion\n })) + \")\"\n });\n }\n };\n}\n\nexport { AddressConverter, AddressFormat, AddressUtility };\n","import 'core-js/modules/es.object.keys';\nimport Cldr from 'cldrjs/dist/cldr';\nimport { assertType, assertRange } from 'yaassertion';\n\nvar countryAliasMapping = {\n C2: \"CN\",\n UK: \"GB\"\n};\nfunction getResolvedRegion(region) {\n return countryAliasMapping[region] || region;\n}\nvar getMissingMetadataError = function getMissingMetadataError(path) {\n var message = \"Missing WorldReady metadata, please refer to https://github.paypal.com/pages/Globalization-R/worldready-js/docs/about-load-worldready-data.html\";\n if (path) {\n message += \"\\nPath: \" + path;\n }\n return new Error(message);\n};\nfunction validateCldr(path, value, options) {\n if (options === void 0) {\n options = {\n skip: []\n };\n }\n var skipBoolean = options.skip.some(function (regex) {\n return regex.test(path);\n });\n if (skipBoolean) {\n return;\n }\n if (value === undefined) {\n throw getMissingMetadataError(path);\n }\n}\n\n/**\n * ExampleGenerator(options)\n */\nvar ExampleGenerator = /*#__PURE__*/function () {\n function ExampleGenerator(options) {\n if (options === void 0) {\n options = {};\n }\n if (process.env.NODE_ENV !== \"production\") {\n assertType(options, \"options\", [\"undefined\", \"plain object\"]);\n assertType(options.feature, \"options.feature\", [\"string\"]);\n assertRange(options.feature, [\"phone\"], \"options.feature must be 'phone'\");\n if (options.feature === \"phone\") {\n var cldr = new Cldr(\"und\");\n cldr.on(\"get\", validateCldr);\n var phoneTypes;\n try {\n phoneTypes = cldr.get([\"supplemental/example/phoneData/phoneTypes\"]);\n } finally {\n cldr.off(\"get\", validateCldr);\n }\n assertRange(options.type, Object.keys(phoneTypes), \"Invalid value for phone number type: {type}\", {\n type: options.type\n });\n }\n }\n var region = options.region;\n if (region) {\n region = getResolvedRegion(region);\n }\n switch (options.feature) {\n case \"phone\":\n this.get = function () {\n var cldr = new Cldr(\"und\");\n cldr.on(\"get\", validateCldr);\n var nationalNumbers, phoneTypes, countryCodes;\n try {\n nationalNumbers = cldr.get([\"supplemental/example/phoneData/nationalNumbers/\" + region]);\n phoneTypes = cldr.get([\"supplemental/example/phoneData/phoneTypes\"]);\n countryCodes = cldr.get(\"supplemental/phoneData/callingCode\");\n } finally {\n cldr.off(\"get\", validateCldr);\n }\n var nationalNumber = nationalNumbers[phoneTypes[options.type]];\n if (!nationalNumber)\n // return same data type that fullstackphone does\n return null;\n return {\n nationalNumber: nationalNumber,\n countryCode: countryCodes[region]\n };\n };\n break;\n }\n }\n var _proto = ExampleGenerator.prototype;\n _proto.generate = function generate() {\n return this.get();\n };\n return ExampleGenerator;\n}();\n\nexport { ExampleGenerator };\n","import React, { useContext } from 'react';\nimport { MessageFormat, CurrencyFormat, DisplayNames, PhoneNumberFormat, AddressFormat, ExampleGenerator, DateTimeFormat } from '@paypalcorp/worldready';\nimport { Context } from '@paypalcorp/worldready-react';\nimport { IntlProvider } from '@paypalcorp/pp-react-intl';\n\nvar WorldReadyProvider = function (_ref) {\n var worldReady = _ref.worldReady,\n children = _ref.children;\n var worldReadObjFromContext = useContext(Context);\n var worldReadyObj = worldReady || worldReadObjFromContext;\n var intlProviderProps = {\n locale: worldReadyObj.locale,\n messageFormatter: function messageFormatter() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n return new MessageFormat(worldReadyObj, options);\n },\n currencyFormatter: function currencyFormatter() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n return new CurrencyFormat(worldReadyObj, options);\n },\n getDisplayNamesObject: function getDisplayNamesObject() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n return new DisplayNames(worldReadyObj, options);\n },\n phoneFormatter: function phoneFormatter() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n return new PhoneNumberFormat(options);\n },\n addressFormatter: function addressFormatter() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n return new AddressFormat(worldReadyObj, options);\n },\n exampleGenerator: function exampleGenerator() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n return new ExampleGenerator(options);\n },\n dateTimeFormatter: function dateTimeFormatter() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n return new DateTimeFormat(worldReadyObj, options);\n },\n worldReadyObj: worldReadyObj\n };\n return /*#__PURE__*/React.createElement(IntlProvider, intlProviderProps, children);\n};\n\nexport { WorldReadyProvider };\n","import _extends from '@babel/runtime/helpers/esm/extends';\nimport _regeneratorRuntime from '@babel/runtime/regenerator';\nimport _asyncToGenerator from '@babel/runtime/helpers/esm/asyncToGenerator';\nimport _toConsumableArray from '@babel/runtime/helpers/esm/toConsumableArray';\nimport _objectWithoutProperties from '@babel/runtime/helpers/esm/objectWithoutProperties';\nimport _slicedToArray from '@babel/runtime/helpers/esm/slicedToArray';\nimport _defineProperty from '@babel/runtime/helpers/esm/defineProperty';\nimport { forwardRef, useState, useRef, useMemo, useEffect } from 'react';\nimport { css, useTheme, jsx, ClassNames } from '@emotion/react';\nimport { ChevronUpIcon, ChevronDownIcon } from '@paypalcorp/pp-react-icons';\nimport { TextInput } from '@paypalcorp/pp-react-text-input';\nimport { SelectionMenu } from '@paypalcorp/pp-react-menu';\nimport _taggedTemplateLiteral from '@babel/runtime/helpers/esm/taggedTemplateLiteral';\nimport { devWarning, uniqueId, deepClone, KeyboardCode } from '@paypalcorp/pp-react-utils';\n\nvar _templateObject, _templateObject2, _templateObject3, _templateObject4;\nfunction styles(tokens) {\n /* istanbul ignore next */\n if (!Object.keys(tokens).length) {\n devWarning('Missing Emotion theme. Use ThemeProvider from @emotion/react to pass a valid theme from pp-react.');\n return {};\n }\n\n var sysSizeFieldLg = tokens.sysSizeFieldLg;\n var base = css(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n position: relative;\\n \"])));\n var menu = css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n top: \", \";\\n width: 100%;\\n \"])), sysSizeFieldLg);\n var affordanceTrigger = css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral([\"\\n label: affordance_trigger;\\n cursor: pointer;\\n \"])));\n var hiddenSelect = css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral([\"\\n label: hidden_select;\\n opacity: 0;\\n position: absolute;\\n pointer-events: none;\\n width: 0;\\n height: 0;\\n \"])));\n return {\n base: base,\n menu: menu,\n affordanceTrigger: affordanceTrigger,\n hiddenSelect: hiddenSelect\n };\n}\n\nvar _excluded = [\"name\", \"options\", \"value\", \"text\", \"id\", \"dir\", \"label\", \"onOpen\", \"onChange\", \"onBlur\", \"onTextChange\", \"onFocus\", \"getMenuOptions\", \"placeholder\", \"isLoadingOptions\", \"emptyMessage\", \"mobileTitle\", \"sheetWrapperClassName\", \"autoComplete\", \"hasSections\", \"isTextHightlighted\", \"sheetInputRef\"];\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\n// By default, matching is case-insensitive prefix match\nvar defaultGetMenuOptions = function (optionList, userText, hasSections) {\n if (!userText) {\n // No filter means you get it all, no questions asked!\n return optionList;\n }\n\n return optionList.filter(function (option) {\n var prefix = userText.toLowerCase();\n\n var filteredOption = function (srchString) {\n // istanbul ignore next\n var comparand = (srchString.label || '').toLowerCase();\n return comparand.substring(0, prefix.length) === prefix;\n };\n\n if (hasSections) {\n option.suggestions = option.suggestions.filter(function (suggestion) {\n return filteredOption(suggestion);\n });\n return option;\n }\n\n return filteredOption(option);\n });\n};\n\nvar getOptionValue = function (option) {\n var _option$value;\n\n return (_option$value = option.value) !== null && _option$value !== void 0 ? _option$value : option.label;\n}; // Make sure all items have an id we can use for aria tags\n\n\nvar ideate = function (optionList, name) {\n // istanbul ignore next (this function is called, but converage doesn't see it\n return optionList.reduce(function (result, option) {\n var mappedOption = _objectSpread({}, option);\n\n if (mappedOption.hasOwnProperty('suggestions')) {\n mappedOption.suggestions.map(function (sectionOption) {\n if (!sectionOption.hasOwnProperty('id')) {\n sectionOption.id = \"\".concat(name, \"__\").concat(getOptionValue(sectionOption));\n }\n });\n } else if (!mappedOption.hasOwnProperty('id')) {\n mappedOption.id = \"\".concat(name, \"__\").concat(getOptionValue(option));\n }\n\n result.push(mappedOption);\n return result;\n }, []);\n};\n\nvar defaultEmptyMessage = 'No results. Try something else or check for errors.';\nvar optionLegend = {\n label: 'primaryText'\n};\n\nvar mapObj = function (src, legend) {\n return Object.entries(src).reduce(function (dest, _ref) {\n var _ref2 = _slicedToArray(_ref, 2),\n key = _ref2[0],\n value = _ref2[1];\n\n var newKey = legend.hasOwnProperty(key) ? legend[key] : key;\n dest[newKey] = value;\n return dest;\n }, {});\n}; // istanbul ignore next\n\n\nvar mapOptions = function (srcList, hasSections) {\n return srcList ? srcList.map(function (option) {\n // add onMouseDown to prevent onBlur being called when selecting an option\n if (hasSections) {\n option.suggestions.map(function (suggestion) {\n return suggestion.onMouseDown = function (evt) {\n return evt.preventDefault();\n };\n });\n return option;\n }\n\n option.onMouseDown = function (evt) {\n return evt.preventDefault();\n };\n\n return mapObj(option, optionLegend);\n }) : [];\n};\n\nvar Combobox = forwardRef( // eslint-disable-next-line max-statements\nfunction (_ref3, ref) {\n var _ref3$name = _ref3.name,\n name = _ref3$name === void 0 ? 'NO_NAME' : _ref3$name,\n options = _ref3.options,\n _ref3$value = _ref3.value,\n value = _ref3$value === void 0 ? '' : _ref3$value,\n text = _ref3.text,\n id = _ref3.id,\n dir = _ref3.dir,\n label = _ref3.label,\n onOpen = _ref3.onOpen,\n onChange = _ref3.onChange,\n onBlur = _ref3.onBlur,\n onTextChange = _ref3.onTextChange,\n _ref3$onFocus = _ref3.onFocus,\n onFocus = _ref3$onFocus === void 0 ? null : _ref3$onFocus,\n _ref3$getMenuOptions = _ref3.getMenuOptions,\n getMenuOptions = _ref3$getMenuOptions === void 0 ? defaultGetMenuOptions : _ref3$getMenuOptions,\n placeholder = _ref3.placeholder,\n isLoadingOptions = _ref3.isLoadingOptions,\n _ref3$emptyMessage = _ref3.emptyMessage,\n emptyMessage = _ref3$emptyMessage === void 0 ? defaultEmptyMessage : _ref3$emptyMessage,\n _ref3$mobileTitle = _ref3.mobileTitle,\n mobileTitle = _ref3$mobileTitle === void 0 ? label : _ref3$mobileTitle,\n sheetWrapperClassName = _ref3.sheetWrapperClassName,\n autoComplete = _ref3.autoComplete,\n _ref3$hasSections = _ref3.hasSections,\n hasSections = _ref3$hasSections === void 0 ? false : _ref3$hasSections,\n _ref3$isTextHightligh = _ref3.isTextHightlighted,\n isTextHightlighted = _ref3$isTextHightligh === void 0 ? false : _ref3$isTextHightligh,\n sheetInputRef = _ref3.sheetInputRef,\n rest = _objectWithoutProperties(_ref3, _excluded);\n\n var _useState = useState(false),\n _useState2 = _slicedToArray(_useState, 2),\n showMenu = _useState2[0],\n setShowMenu = _useState2[1];\n\n var _useState3 = useState(-1),\n _useState4 = _slicedToArray(_useState3, 2),\n activeIndex = _useState4[0],\n setActiveIndex = _useState4[1];\n\n var _useState5 = useState(''),\n _useState6 = _slicedToArray(_useState5, 2),\n placemat = _useState6[0],\n setPlacemat = _useState6[1];\n\n var _useState7 = useState(options),\n _useState8 = _slicedToArray(_useState7, 2),\n filteredList = _useState8[0],\n setFilteredList = _useState8[1];\n\n var _useState9 = useState(value),\n _useState10 = _slicedToArray(_useState9, 2),\n activeItem = _useState10[0],\n setActiveItem = _useState10[1];\n\n var _useState11 = useState(false),\n _useState12 = _slicedToArray(_useState11, 2),\n textFocus = _useState12[0],\n setTextFocus = _useState12[1];\n\n var _useState13 = useState(false),\n _useState14 = _slicedToArray(_useState13, 2),\n showEmptyMsg = _useState14[0],\n setShowEmptyMsg = _useState14[1];\n\n var _useState15 = useState(isLoadingOptions),\n _useState16 = _slicedToArray(_useState15, 2),\n isLoading = _useState16[0],\n setIsLoading = _useState16[1];\n\n var createSheetInputRef = useRef();\n var sheetInputTextRef = sheetInputRef || createSheetInputRef;\n var textInputRef = useRef();\n var selectedIndex;\n /* Create a flat list of suggestions for highlight and selection by index */\n\n var normalizeSuggestions = function (suggestions) {\n return suggestions.reduce(function (acc, section) {\n /* istanbul ignore next */\n if (section.suggestions) {\n acc.push.apply(acc, _toConsumableArray(section.suggestions));\n }\n\n return acc;\n }, []);\n };\n\n var getInitialText = function (selectedValue, currentText) {\n if (currentText !== '' && (!selectedValue || !options)) {\n return currentText;\n }\n\n var tempList = hasSections ? normalizeSuggestions(options) : options;\n var selectedOption = tempList === null || tempList === void 0 ? void 0 : tempList.find(function (option) {\n return selectedValue === getOptionValue(option);\n });\n return selectedOption ? selectedOption.label : selectedValue;\n };\n\n var initialText = getInitialText(value, text);\n\n var _useState17 = useState(initialText || ''),\n _useState18 = _slicedToArray(_useState17, 2),\n textValue = _useState18[0],\n setTextValue = _useState18[1];\n\n var _useState19 = useState(initialText || ''),\n _useState20 = _slicedToArray(_useState19, 2),\n hiddenSelectValue = _useState20[0],\n setHiddenSelectValue = _useState20[1];\n\n var _useState21 = useState(''),\n _useState22 = _slicedToArray(_useState21, 2),\n sheetTextValue = _useState22[0],\n setSheetTextValue = _useState22[1];\n\n var comboId = id !== null && id !== void 0 ? id : uniqueId('Combobox_');\n var textInputId = \"combo_txt_\".concat(comboId);\n var menuId = \"combo_menu_\".concat(comboId);\n\n var clearActiveItem = function () {\n setActiveIndex(-1);\n setPlacemat('');\n };\n\n var updateFilteredList = /*#__PURE__*/function () {\n var _ref4 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(filterText) {\n var isDefaultGetMenuOptions, tempOptions, newOptions, updatedList, isListEmpty, _newOptions, _updatedList;\n\n return _regeneratorRuntime.wrap(function (_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n isDefaultGetMenuOptions = getMenuOptions === defaultGetMenuOptions;\n\n if (!isDefaultGetMenuOptions) {\n setIsLoading(true);\n }\n\n setShowEmptyMsg(false);\n\n if (!hasSections) {\n _context.next = 15;\n break;\n }\n\n tempOptions = deepClone(options);\n _context.next = 7;\n return getMenuOptions(tempOptions, filterText, hasSections);\n\n case 7:\n newOptions = _context.sent;\n updatedList = ideate(newOptions, name);\n isListEmpty = true;\n updatedList.map(function (sectionList) {\n var _sectionList$suggesti;\n\n if ((sectionList === null || sectionList === void 0 ? void 0 : (_sectionList$suggesti = sectionList.suggestions) === null || _sectionList$suggesti === void 0 ? void 0 : _sectionList$suggesti.length) > 0) {\n isListEmpty = false;\n }\n });\n\n if (isListEmpty) {\n tempOptions.push({\n suggestions: [{\n label: emptyMessage,\n unselectable: true\n }]\n });\n setShowEmptyMsg(true);\n setHiddenSelectValue('');\n }\n\n setFilteredList(tempOptions);\n _context.next = 21;\n break;\n\n case 15:\n _context.next = 17;\n return getMenuOptions(options, filterText, hasSections);\n\n case 17:\n _newOptions = _context.sent;\n _updatedList = ideate(_newOptions, name);\n\n if (!_updatedList || _updatedList.length === 0) {\n _updatedList = [{\n label: emptyMessage,\n unselectable: true\n }];\n setShowEmptyMsg(true);\n }\n\n setFilteredList(_updatedList);\n\n case 21:\n clearActiveItem();\n\n if (!isDefaultGetMenuOptions) {\n setIsLoading(false);\n }\n\n case 23:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n\n return function () {\n return _ref4.apply(this, arguments);\n };\n }(); // Spoof an event so the caller thinks a change happened in this component\n\n\n var changeCallback = function (newValue) {\n // istanbul ignore next (sanity check)\n if (typeof onChange === 'function') {\n onChange({\n target: {\n name: name,\n value: newValue\n }\n });\n }\n };\n\n var doSetShowMenu = function (isShown) {\n setShowMenu(isShown);\n setTextFocus(isShown);\n };\n\n var openMenu = function () {\n if (!isLoadingOptions) {\n updateFilteredList('');\n setSheetTextValue('');\n }\n\n doSetShowMenu(true); // istanbul ignore next\n\n if (textInputRef.current) {\n textInputRef.current.select();\n }\n };\n\n var handleSheetTyping = function (evt) {\n // istanbul ignore next\n if (typeof onTextChange === 'function') {\n onTextChange(evt);\n }\n\n setSheetTextValue(evt.target.value);\n setTextValue(evt.target.value);\n updateFilteredList(evt.target.value);\n setHiddenSelectValue('');\n setActiveItem('');\n };\n\n var handleClose = function () {\n doSetShowMenu(false);\n setPlacemat('');\n }; // Clicks inside the text input are NOT outside clicks!\n\n\n var outsideClickCheck = function (evt) {\n var target = evt.target;\n return target.id !== textInputId;\n };\n\n var handleItemSelection = function (index) {\n selectedIndex = index;\n var tempList = hasSections ? normalizeSuggestions(filteredList) : filteredList;\n var selectedOption = tempList[index]; // istanbul ignore next\n\n if (selectedOption && !selectedOption.unselectable) {\n setHiddenSelectValue(selectedOption.value || selectedOption.label);\n setTextValue(selectedOption.label);\n setActiveItem(getOptionValue(selectedOption));\n setSheetTextValue(selectedOption.label);\n changeCallback(getOptionValue(selectedOption));\n doSetShowMenu(false);\n }\n };\n\n // This is a simplistic way of telling. We may need to use a state... --BCC\n // istanbul ignore next\n var isFiltered = function () {\n return textValue === '' || filteredList.length < options.length;\n };\n\n var getActiveId = function () {\n if (activeIndex < 0) {\n return '';\n }\n\n var tempList = hasSections ? normalizeSuggestions(filteredList) : filteredList;\n return tempList[activeIndex].id;\n };\n\n var updateActiveItem = function (offset) {\n var tempList = hasSections ? normalizeSuggestions(filteredList) : filteredList;\n var nextIndex = Math.min(Math.max(activeIndex + offset, 0), tempList.length - 1);\n\n if (nextIndex !== activeIndex) {\n var selectedOption = tempList[nextIndex];\n\n if (!selectedOption.unselectable) {\n setActiveIndex(nextIndex); // We can have text in the text input that's not actually filtering the list yet.\n // (if we reopen after a selection has been made) This can lead to mismatches\n // between the text and placemat. So if we're not filtering, no placemat for you!\n // --BCC\n // istanbul ignore next\n\n if (selectedOption && isFiltered()) {\n setPlacemat(selectedOption.label);\n }\n }\n }\n }; // eslint-disable-next-line complexity\n\n\n var handleKey = function (evt) {\n /* istanbul ignore next */\n var key = evt.key || evt.keyCode;\n /* istanbul ignore next */\n\n var KeyCode = new KeyboardCode(key);\n\n if (KeyCode.IS_ARROW_UP) {\n updateActiveItem(-1);\n } else if (KeyCode.IS_ARROW_DOWN) {\n if (!showMenu) {\n openMenu();\n } else {\n updateActiveItem(1);\n }\n } else if (KeyCode.IS_ENTER || key === 'Unidentified') {\n // HACK ALERT! In test environment `jest` sends `enter` key as `Unidentified`\n evt.preventDefault();\n\n if (!showMenu) {\n openMenu();\n } else {\n handleItemSelection(activeIndex);\n }\n } else if (KeyCode.IS_TAB || KeyCode.IS_ESC) {\n handleClose();\n }\n };\n\n var sheetTextPlaceholder = placemat ? null : placeholder;\n var sheetTextInputName = \"sheet_t_\".concat(name);\n\n var getSheetTextInput = function () {\n var inputDir = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'ltr';\n return jsx(\"div\", {\n dir: inputDir,\n \"data-ppui\": \"true\"\n }, jsx(TextInput, {\n name: sheetTextInputName,\n ref: sheetInputTextRef,\n label: label,\n value: sheetTextValue,\n placeholder: sheetTextPlaceholder,\n placemat: placemat,\n onChange: handleSheetTyping,\n onKeyDown: function onKeyDown(evt) {\n return handleKey(evt);\n },\n autoComplete: \"off\",\n role: \"combobox\",\n \"aria-controls\": menuId,\n \"aria-activedescendant\": getActiveId(),\n \"data-ppui\": \"true\"\n }));\n };\n\n var tokens = useTheme();\n var comboStyles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n var AffordanceIcon = showMenu ? ChevronUpIcon : ChevronDownIcon;\n var affordance = jsx(AffordanceIcon, {\n onClick: function toggleMenu(evt) {\n evt.stopPropagation();\n\n if (showMenu) {\n doSetShowMenu(false);\n } else {\n setTextFocus(true);\n openMenu();\n }\n },\n size: \"sm\",\n \"aria-hidden\": \"true\",\n \"data-testid\": \"combo-affordance\",\n color: \"BackgroundMediumContrast\",\n css: comboStyles.affordanceTrigger,\n \"data-ppui\": \"true\"\n });\n useEffect(function () {\n setActiveItem(value);\n setTextValue(getInitialText(value, ''));\n var tempList = hasSections ? normalizeSuggestions(filteredList) : filteredList;\n var tempSelectedValue = tempList === null || tempList === void 0 ? void 0 : tempList.find(function (option) {\n return value === getOptionValue(option);\n });\n\n if (tempSelectedValue) {\n if (tempSelectedValue.hasOwnProperty('value')) {\n setHiddenSelectValue(tempSelectedValue.value);\n } else {\n setHiddenSelectValue(tempSelectedValue.label);\n }\n }\n }, [value]);\n useEffect(function () {\n setIsLoading(isLoadingOptions);\n }, [isLoadingOptions]);\n useEffect(function () {\n // Set the text only if it was explicitly passed in\n if (text !== undefined && text !== null) {\n setTextValue(text);\n }\n }, [text]);\n\n var getRefCurrent = function (passedRef) {\n return (\n /* istanbul ignore next */\n passedRef && passedRef.current ? passedRef.current : null\n );\n };\n\n useEffect(function () {\n if (!isLoadingOptions && showMenu) {\n var sheetInput = getRefCurrent(sheetInputTextRef);\n /* istanbul ignore next */\n\n if (sheetInput) {\n sheetInput.focus();\n }\n }\n\n if (options && options.length) {\n setFilteredList(options);\n setTextValue(getInitialText(value, textValue));\n }\n }, [isLoadingOptions, options]);\n var inputProps = {\n role: 'combobox',\n autoComplete: autoComplete !== null && autoComplete !== void 0 ? autoComplete : 'new-password',\n 'aria-expanded': showMenu,\n 'aria-haspopup': true,\n 'aria-controls': menuId,\n 'aria-activedescendant': getActiveId(),\n value: textValue,\n placeholder: placemat ? ' ' : placeholder,\n placemat: placemat,\n inputRef: textInputRef\n };\n var textHighlightedHandle = showEmptyMsg ? false : isTextHightlighted;\n var tempFilteredList = hasSections ? normalizeSuggestions(filteredList) : filteredList; // Checking for blank option for hidden select if not present\n\n var hasEmptyOption = true;\n\n if (tempFilteredList === null || tempFilteredList === void 0 ? void 0 : tempFilteredList.length) {\n tempFilteredList.map(function (opts) {\n if ((opts === null || opts === void 0 ? void 0 : opts.value) === '') {\n hasEmptyOption = false;\n }\n });\n } // aria-owns={menuId} This will be needed if SelectionMenu goes into a portal\n\n\n return jsx(\"div\", {\n dir: dir,\n css: comboStyles.base,\n \"data-ppui-info\": \"combobox_3.9.1\"\n }, jsx(\"select\", {\n css: comboStyles.hiddenSelect,\n name: name,\n \"aria-hidden\": \"true\",\n id: \"hiddenSelect_\".concat(name),\n tabIndex: -1,\n role: \"hiddenSelect_\".concat(name),\n onChange: function (evt) {\n return handleItemSelection(evt.target.selectedIndex - 1);\n },\n value: hiddenSelectValue,\n \"data-ppui\": \"true\"\n }, hasEmptyOption && jsx(\"option\", {\n role: \"hiddenSelect_option\",\n value: \"\",\n \"data-ppui\": \"true\"\n }, label), (tempFilteredList === null || tempFilteredList === void 0 ? void 0 : tempFilteredList.length) && tempFilteredList.map(function (opt, index) {\n return jsx(\"option\", {\n key: index,\n value: opt.value,\n role: \"hiddenSelect_option\",\n \"data-ppui\": \"true\"\n }, opt.label);\n })), jsx(TextInput, _extends({\n name: \"combo_t_\".concat(name),\n label: label,\n id: textInputId,\n rightIcon: affordance,\n setFocus: textFocus\n }, rest, inputProps, {\n onChange: function handleChange(evt) {\n if (typeof onTextChange === 'function') {\n onTextChange(evt);\n }\n\n setTextValue(evt.target.value);\n updateFilteredList(evt.target.value);\n\n if (evt.target.value === '') {\n setHiddenSelectValue('');\n }\n\n setActiveItem('');\n\n if (!showMenu) {\n doSetShowMenu(true);\n }\n },\n onClick: function handleFocus() {\n if (!showMenu) {\n openMenu();\n }\n },\n onKeyDown: handleKey,\n onFocus: function openOnFocus(evt) {\n var sheetInput = getRefCurrent(sheetInputTextRef);\n\n if (onFocus && !sheetInput) {\n onFocus(evt);\n }\n },\n onBlur: function handleBlur() {\n // Are we transferring focus to a newly opened sheet in mweb?\n if (sheetInputTextRef.current) {\n return; // Don't call onBlur(). This is a \"false\" blur!\n }\n\n if (onBlur) {\n onBlur({\n target: {\n name: name,\n textValue: textValue,\n value: activeItem\n }\n });\n }\n },\n \"data-reactcombo\": true,\n ref: ref,\n \"data-ppui\": \"true\"\n })), jsx(ClassNames, {\n \"data-ppui\": \"true\"\n }, function (_ref5) {\n var css = _ref5.css;\n return jsx(SelectionMenu, {\n name: \"combo_m_\".concat(name),\n value: activeItem,\n id: menuId,\n isLoadingOptions: isLoading,\n initialItemFocus: false,\n ignoreKeyboard: true,\n isOpen: showMenu,\n mobileTitle: mobileTitle,\n mobileHeaderContents: getSheetTextInput(dir),\n outsideClickCheck: outsideClickCheck,\n onOpen: onOpen,\n selectedIndex: selectedIndex,\n onClose: handleClose,\n onSelection: handleItemSelection,\n activeItem: activeIndex,\n triggerElementRef: textInputRef,\n options: mapOptions(filteredList, hasSections),\n containerClassName: css(comboStyles.menu),\n sheetWrapperClassName: sheetWrapperClassName,\n hasSections: hasSections,\n highlightText: textValue,\n isTextHightlighted: textHighlightedHandle,\n \"data-ppui\": \"true\"\n });\n }));\n});\n\nexport { Combobox, styles as comboboxStyles };\n","import _taggedTemplateLiteral from '@babel/runtime/helpers/esm/taggedTemplateLiteral';\nimport { css, useTheme, jsx } from '@emotion/react';\nimport { math } from 'polished';\nimport { devWarning, utilStyles, ZINDEX_DROPDOWN, highlightMatch, KeyboardCode, ScreenReaderContent } from '@paypalcorp/pp-react-utils';\nimport _extends from '@babel/runtime/helpers/esm/extends';\nimport _slicedToArray from '@babel/runtime/helpers/esm/slicedToArray';\nimport _objectWithoutProperties from '@babel/runtime/helpers/esm/objectWithoutProperties';\nimport React, { useMemo, useState, useRef, useEffect, forwardRef } from 'react';\nimport { TextInput } from '@paypalcorp/pp-react-text-input';\nimport { CaptionText, BodyText } from '@paypalcorp/pp-react-text';\nimport { LoadingSpinner } from '@paypalcorp/pp-react-loading-spinner';\nimport { ContextualAlert } from '@paypalcorp/pp-react-contextual-alert';\n\nvar _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11;\nfunction styles(tokens) {\n /* istanbul ignore next */\n if (!Object.keys(tokens).length) {\n devWarning('Missing Emotion theme. Use ThemeProvider from @emotion/react to pass a valid theme from pp-react.');\n return {};\n }\n\n var sysBorderRadiusLg = tokens.sysBorderRadiusLg,\n sysBorderThicknessNormal = tokens.sysBorderThicknessNormal,\n sysColorBackgroundSurface = tokens.sysColorBackgroundSurface,\n sysColorBackgroundSurfaceHover = tokens.sysColorBackgroundSurfaceHover,\n sysSizeMediaSm = tokens.sysSizeMediaSm,\n sysSizeMediaMd = tokens.sysSizeMediaMd,\n sysSizeMediaLg = tokens.sysSizeMediaLg,\n sysSpaceLg = tokens.sysSpaceLg,\n sysSpaceMd = tokens.sysSpaceMd,\n sysSpaceSm = tokens.sysSpaceSm,\n sysSizeFieldLg = tokens.sysSizeFieldLg,\n sysSpaceTiny = tokens.sysSpaceTiny,\n sysSpaceXs = tokens.sysSpaceXs;\n\n var _utilStyles = utilStyles(tokens),\n elevationStyles = _utilStyles.elevationStyles;\n\n var base = css(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n label: auto-suggest_base;\\n position: relative;\\n \"])));\n var suggestionListContainer = css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n label: suggestion_list_container;\\n min-width: \", \";\\n max-width: \", \";\\n margin-top: \", \";\\n padding: \", \" 0;\\n overflow-x: hidden;\\n width: 100%;\\n \"])), math(\"2 * \".concat(sysSizeFieldLg)), sysSizeMediaLg, math(\"\".concat(sysSpaceXs, \" + \").concat(sysSpaceTiny)), sysSpaceSm);\n var elevatedSuggestionListContainer = css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral([\"\\n label: elevated_suggestion_list_container;\\n \", \"\\n \", \"\\n\\n border-radius: \", \";\\n background-color: \", \";\\n z-index: \", \";\\n outline: \", \" solid transparent;\\n top: \", \";\\n position: absolute;\\n \"])), suggestionListContainer, elevationStyles.level3, sysBorderRadiusLg, sysColorBackgroundSurface, ZINDEX_DROPDOWN, sysBorderThicknessNormal, sysSizeFieldLg);\n var content = css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral([\"\\n label: content;\\n padding: \", \" \", \";\\n \"])), sysSpaceMd, sysSpaceLg);\n var centeredContent = css(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral([\"\\n label: centered_content;\\n display: flex;\\n justify-content: center;\\n \"])));\n var suggestionSublist = css(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral([\"\\n label: suggestion_sublist;\\n list-style-type: none;\\n margin: 0;\\n padding: 0;\\n \"])));\n var suggestionList = css(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral([\"\\n label: suggestion_list;\\n \", \"\\n overflow-y: auto;\\n max-height: \", \";\\n\\n @media (max-width: \", \") {\\n max-height: \", \";\\n }\\n \"])), suggestionSublist, sysSizeMediaSm, sysSizeMediaMd, math(\"\".concat(sysSizeMediaSm, \" / 2\")));\n var highlightedSuggesiton = css(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral([\"\\n label: highlighted_suggestion;\\n background-color: \", \";\\n \"])), sysColorBackgroundSurfaceHover);\n var suggestion = css(_templateObject9 || (_templateObject9 = _taggedTemplateLiteral([\"\\n label: suggestion;\\n \", \"\\n cursor: pointer;\\n display: flex;\\n align-items: center;\\n \"])), content);\n var errorMessage = css(_templateObject10 || (_templateObject10 = _taggedTemplateLiteral([\"\\n label: error_message;\\n margin: 0 \", \";\\n \"])), sysSpaceLg);\n var suggestionDecoration = css(_templateObject11 || (_templateObject11 = _taggedTemplateLiteral([\"\\n label: suggestion_decoration;\\n margin-right: \", \";\\n\\n [dir='rtl'] & {\\n margin-right: 0;\\n margin-left: \", \";\\n }\\n \"])), sysSpaceMd, sysSpaceMd);\n return {\n base: base,\n suggestionListContainer: suggestionListContainer,\n elevatedSuggestionListContainer: elevatedSuggestionListContainer,\n content: content,\n centeredContent: centeredContent,\n suggestionSublist: suggestionSublist,\n suggestionList: suggestionList,\n highlightedSuggesiton: highlightedSuggesiton,\n suggestion: suggestion,\n errorMessage: errorMessage,\n suggestionDecoration: suggestionDecoration\n };\n}\n\nvar _excluded = [\"suggestions\", \"renderSuggestion\", \"onHighlight\", \"onSelect\", \"className\", \"listItemClassName\", \"query\", \"enableKeyboardInteraction\", \"hasSections\"];\n\nvar defaultRenderSuggestion = function (_ref, query, _styles) {\n var value = _ref.value,\n primaryText = _ref.primaryText,\n secondaryText = _ref.secondaryText,\n decoration = _ref.decoration;\n var highlightedValue = highlightMatch(primaryText || value, query);\n var secondaryElm = secondaryText ? jsx(CaptionText, {\n \"data-ppui\": \"true\"\n }, secondaryText) : null;\n var decorationElm = decoration ? jsx(\"div\", {\n css: _styles.suggestionDecoration,\n \"data-ppui\": \"true\"\n }, decoration) : null;\n return jsx(React.Fragment, null, decorationElm, jsx(\"div\", {\n \"data-ppui\": \"true\"\n }, jsx(BodyText, {\n dangerouslySetInnerHTML: {\n __html: highlightedValue\n },\n \"data-ppui\": \"true\"\n }), secondaryElm));\n};\n/* Create a flat list of suggestions for highlight and selection by index */\n\n\nvar normalizeSuggestions = function (suggestions, hasSections) {\n if (!hasSections) {\n return suggestions.reduce(function (acc, suggestion, index) {\n acc.push({\n value: suggestion,\n suggestionIndex: index\n });\n return acc;\n }, []);\n }\n\n return suggestions.reduce(function (acc, section, sectionIndex) {\n if (section.suggestions) {\n section.suggestions.forEach(function (suggestion, suggestionIndex) {\n acc.push({\n value: suggestion,\n section: section,\n suggestionIndex: suggestionIndex,\n sectionIndex: sectionIndex\n });\n });\n }\n\n return acc;\n }, []);\n};\n\nvar SuggestionList = function (_ref2) {\n var _ref2$suggestions = _ref2.suggestions,\n suggestions = _ref2$suggestions === void 0 ? [] : _ref2$suggestions,\n renderSuggestion = _ref2.renderSuggestion,\n onHighlight = _ref2.onHighlight,\n onSelect = _ref2.onSelect,\n className = _ref2.className,\n listItemClassName = _ref2.listItemClassName,\n query = _ref2.query,\n _ref2$enableKeyboardI = _ref2.enableKeyboardInteraction,\n enableKeyboardInteraction = _ref2$enableKeyboardI === void 0 ? true : _ref2$enableKeyboardI,\n hasSections = _ref2.hasSections,\n rest = _objectWithoutProperties(_ref2, _excluded);\n\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n var _useState = useState(-1),\n _useState2 = _slicedToArray(_useState, 2),\n highlightedIndex = _useState2[0],\n setHighlightedIndex = _useState2[1];\n\n var highlightedIndexRef = useRef(-1);\n var listRef = useRef([]);\n\n var _suggestions = normalizeSuggestions(suggestions, hasSections);\n\n var handleHighlight = function (evt, index) {\n setHighlightedIndex(index);\n highlightedIndexRef.current = index;\n /* istanbul ignore next */\n\n if (index !== -1) {\n var id = _suggestions[index].section ? \"\".concat(_suggestions[index].section.id, \"_\").concat(_suggestions[index].value.id) : _suggestions[index].value.id;\n var highlightedElm = listRef.current[id];\n\n if (highlightedElm && highlightedElm.scrollIntoView) {\n highlightedElm.scrollIntoView({\n behavior: 'smooth',\n block: 'nearest'\n });\n }\n }\n /* istanbul ignore next */\n\n\n if (onHighlight) {\n onHighlight(evt, _suggestions[index].value, _suggestions[index].section);\n }\n };\n\n var handleSelect = function (evt, index) {\n /* istanbul ignore next */\n if (onSelect) {\n onSelect(evt, _suggestions[index].value, _suggestions[index].section);\n }\n };\n /* istanbul ignore next */\n\n\n var handleKeyDown = function (evt) {\n if (!_suggestions.length) {\n return;\n }\n\n var currentHighlightedIndex = highlightedIndexRef.current;\n /* istanbul ignore next */\n\n var KeyCode = new KeyboardCode(evt.key || evt.keyCode);\n\n if (KeyCode.IS_ARROW_UP) {\n evt.preventDefault();\n\n if (currentHighlightedIndex > 0) {\n handleHighlight(evt, currentHighlightedIndex - 1);\n } else if (currentHighlightedIndex === 0) {\n handleHighlight(evt, _suggestions.length - 1);\n }\n } else if (KeyCode.IS_ARROW_DOWN) {\n evt.preventDefault();\n\n if (currentHighlightedIndex < _suggestions.length - 1) {\n handleHighlight(evt, currentHighlightedIndex + 1);\n } else if (currentHighlightedIndex === _suggestions.length - 1) {\n handleHighlight(evt, 0);\n }\n } else if (KeyCode.IS_ENTER) {\n evt.preventDefault();\n\n if (currentHighlightedIndex >= 0) {\n handleSelect(evt, currentHighlightedIndex);\n }\n }\n };\n\n useEffect(function () {\n setHighlightedIndex(-1);\n highlightedIndexRef.current = -1;\n\n if (suggestions.length && enableKeyboardInteraction) {\n document.addEventListener('keydown', handleKeyDown);\n }\n\n return function () {\n document.removeEventListener('keydown', handleKeyDown);\n };\n }, [suggestions, enableKeyboardInteraction]);\n\n var renderSuggestionList = function (items, section) {\n var normalizedIndex = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0;\n return items.map(function (suggestion, index) {\n var cssVal = [_styles.suggestion, highlightedIndex >= 0 && suggestion === _suggestions[highlightedIndex].value && _styles.highlightedSuggesiton];\n var id = section ? \"\".concat(section.id, \"_\").concat(suggestion.id) : suggestion.id;\n var suggestionContent = renderSuggestion ? renderSuggestion(suggestion, query, section) : defaultRenderSuggestion(suggestion, query, _styles);\n\n var handleInteraction = function (evt) {\n var interactionIndex = normalizedIndex + index;\n if (evt.type === 'click') handleSelect(evt, interactionIndex);\n if (evt.type === 'mousemove') handleHighlight(evt, interactionIndex);\n };\n\n return jsx(\"li\", _extends({\n role: \"option\"\n }, section ? {\n 'aria-describedby': section.id\n } : null, {\n key: id,\n id: id,\n ref: function ref(el) {\n return listRef.current[id] = el;\n },\n css: cssVal,\n className: listItemClassName,\n onMouseDown: function onMouseDown(evt) {\n return evt.preventDefault();\n },\n onMouseMove: handleInteraction,\n onClick: handleInteraction,\n \"data-ppui\": \"true\"\n }), suggestionContent);\n });\n };\n\n var listItems = hasSections ? function renderSections() {\n var currentNormalizedIndex = 0;\n return suggestions.reduce(function (acc, section) {\n if (section.suggestions && section.suggestions.length) {\n acc.push(jsx(\"li\", {\n role: \"presentation\",\n key: section.id,\n \"data-ppui\": \"true\"\n }, jsx(\"div\", {\n css: _styles.content,\n id: section.id,\n \"aria-hidden\": \"true\",\n \"data-ppui\": \"true\"\n }, jsx(CaptionText, {\n \"data-ppui\": \"true\"\n }, section.title)), jsx(\"ul\", {\n role: \"listbox\",\n css: _styles.suggestionSublist,\n \"aria-labelledby\": section.id,\n \"data-ppui\": \"true\"\n }, renderSuggestionList(section.suggestions, section, currentNormalizedIndex))));\n currentNormalizedIndex += section.suggestions.length;\n }\n\n return acc;\n }, []);\n }() : renderSuggestionList(suggestions);\n\n if (_suggestions.length) {\n return jsx(\"ul\", _extends({\n role: \"listbox\",\n css: _styles.suggestionList,\n className: className\n }, rest, {\n \"data-ppui\": \"true\"\n }), listItems);\n }\n\n return null;\n};\n\nvar _excluded$1 = [\"id\", \"value\", \"debounceTimeout\", \"fetchSuggestions\", \"suggestionList\", \"isSuggestionListInline\", \"isLoadingSuggestions\", \"onChange\", \"onFocus\", \"onKeyDown\", \"onBlur\", \"onClear\", \"className\", \"triggerComponent\", \"suggestions\", \"defaultSuggestionList\", \"suggestionListFooter\", \"suggestionListContainerClassName\", \"suggestionListFooterClassName\", \"suggestionListChangeMessage\", \"suggestionListLoadingMessage\", \"suggestionListErrorMessage\", \"onSuggestionListClose\"];\nvar DEBOUNCE_TIMEOUT = 500;\n/* Get total number of suggestions */\n\nvar getNormalizedSuggestionLength = function (suggestions, hasSections) {\n if (!hasSections) {\n return suggestions.length;\n }\n\n return suggestions.reduce(function (acc, section) {\n if (section.suggestions) {\n acc += section.suggestions.length;\n }\n\n return acc;\n }, 0);\n};\n/* eslint-disable complexity */\n\n\nvar AutoSuggest = forwardRef(function (props, ref) {\n var _props$id = props.id,\n id = _props$id === void 0 ? 'default' : _props$id,\n value = props.value,\n _props$debounceTimeou = props.debounceTimeout,\n debounceTimeout = _props$debounceTimeou === void 0 ? DEBOUNCE_TIMEOUT : _props$debounceTimeou,\n _props$fetchSuggestio = props.fetchSuggestions,\n fetchSuggestions = _props$fetchSuggestio === void 0 ? function () {\n return devWarning('Required prop `fetchSuggestions` is missing');\n } : _props$fetchSuggestio,\n _props$suggestionList = props.suggestionList,\n suggestionList = _props$suggestionList === void 0 ? jsx(SuggestionList, {\n suggestions: [],\n \"data-ppui\": \"true\"\n }) : _props$suggestionList,\n isSuggestionListInline = props.isSuggestionListInline,\n isLoadingSuggestions = props.isLoadingSuggestions,\n onChange = props.onChange,\n onFocus = props.onFocus,\n onKeyDown = props.onKeyDown,\n onBlur = props.onBlur,\n onClear = props.onClear,\n className = props.className,\n _props$triggerCompone = props.triggerComponent,\n triggerComponent = _props$triggerCompone === void 0 ? TextInput : _props$triggerCompone,\n _props$suggestions = props.suggestions,\n _props$defaultSuggest = props.defaultSuggestionList,\n defaultSuggestionList = _props$defaultSuggest === void 0 ? jsx(SuggestionList, {\n suggestions: [],\n \"data-ppui\": \"true\"\n }) : _props$defaultSuggest,\n suggestionListFooter = props.suggestionListFooter,\n suggestionListContainerClassName = props.suggestionListContainerClassName,\n suggestionListFooterClassName = props.suggestionListFooterClassName,\n suggestionListChangeMessage = props.suggestionListChangeMessage,\n _props$suggestionList2 = props.suggestionListLoadingMessage,\n suggestionListLoadingMessage = _props$suggestionList2 === void 0 ? 'Loading suggestions' : _props$suggestionList2,\n suggestionListErrorMessage = props.suggestionListErrorMessage,\n onSuggestionListClose = props.onSuggestionListClose,\n rest = _objectWithoutProperties(props, _excluded$1);\n\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n var timerRef = useRef();\n var internalRef = useRef();\n var suggestionListContainerRef = useRef();\n\n var _useState = useState(false),\n _useState2 = _slicedToArray(_useState, 2),\n areSuggestionsVisible = _useState2[0],\n setSuggestionsVisible = _useState2[1];\n\n var _useState3 = useState(''),\n _useState4 = _slicedToArray(_useState3, 2),\n highlightedSuggestionId = _useState4[0],\n setHighlightedSuggestionId = _useState4[1];\n\n var _useState5 = useState(false),\n _useState6 = _slicedToArray(_useState5, 2),\n isTriggerFocused = _useState6[0],\n setTriggerFocus = _useState6[1];\n\n var inputRef = ref || internalRef;\n var suggestionsLength = getNormalizedSuggestionLength(suggestionList.props.suggestions || [], suggestionList.props.hasSections);\n /* istanbul ignore next */\n\n var focusSuggestionLength = getNormalizedSuggestionLength(defaultSuggestionList.props.suggestions || [], defaultSuggestionList.props.hasSections);\n\n var handleOutsideClick = function (evt) {\n var inputElm = inputRef.current;\n var suggestionListContainer = suggestionListContainerRef.current;\n /* istanbul ignore next */\n\n if (evt.target === inputElm || suggestionListContainer && suggestionListContainer.contains(evt.target)) {\n return;\n }\n /* istanbul ignore next */\n\n\n setSuggestionsVisible(false);\n };\n\n useEffect(function () {\n return function () {\n if (timerRef.current) {\n clearTimeout(timerRef.current);\n }\n };\n }, []);\n useEffect(function () {\n if (areSuggestionsVisible && !isSuggestionListInline) {\n document.addEventListener('click', handleOutsideClick);\n }\n\n return function () {\n document.removeEventListener('click', handleOutsideClick);\n };\n }, [areSuggestionsVisible, isSuggestionListInline]);\n\n var callSuggestionListClose = function (evt) {\n if (onSuggestionListClose && suggestionsLength) {\n onSuggestionListClose(evt);\n }\n };\n\n var handleHighlight = function (evt, suggestion, section) {\n setHighlightedSuggestionId(section ? \"\".concat(section.id, \"_\").concat(suggestion.id) : suggestion.id);\n /* istanbul ignore next */\n\n if (suggestionList.props.onHighlight) {\n suggestionList.props.onHighlight(evt, suggestion, section);\n }\n };\n\n var handleSelect = function (evt, suggestion, section) {\n /* istanbul ignore next */\n if (suggestionList.props.onSelect) {\n suggestionList.props.onSelect(evt, suggestion, section);\n }\n\n if (!isSuggestionListInline) {\n setSuggestionsVisible(false);\n }\n };\n\n var suggestionListId = \"\".concat(id, \"-suggestionList\");\n var footer = suggestionListFooter ? jsx(\"div\", {\n css: _styles.content,\n className: suggestionListFooterClassName,\n \"data-ppui\": \"true\"\n }, suggestionListFooter) : null;\n var suggestionsElm = !isLoadingSuggestions && suggestionsLength > 0 && jsx(React.Fragment, null, React.cloneElement(suggestionList, {\n id: suggestionListId,\n 'aria-labelledby': \"\".concat(id, \"-label\"),\n onHighlight: handleHighlight,\n onSelect: handleSelect,\n enableKeyboardInteraction: isTriggerFocused\n }), footer);\n var focusSuggestionElm = focusSuggestionLength > 0 && jsx(React.Fragment, null, React.cloneElement(defaultSuggestionList, {\n id: suggestionListId,\n 'aria-labelledby': \"\".concat(id, \"-label\"),\n onHighlight: handleHighlight,\n onSelect: handleSelect,\n enableKeyboardInteraction: isTriggerFocused\n }), footer);\n var loadingElm = isLoadingSuggestions ? jsx(\"div\", {\n css: _styles.centeredContent,\n \"data-ppui\": \"true\"\n }, jsx(LoadingSpinner, {\n screenReaderText: suggestionListLoadingMessage,\n size: \"md\",\n \"data-ppui\": \"true\"\n })) : null;\n var errorElm = suggestionListErrorMessage && !suggestionsLength && !isLoadingSuggestions ? jsx(ContextualAlert, {\n css: _styles.errorMessage,\n type: \"warning\",\n \"data-ppui\": \"true\"\n }, suggestionListErrorMessage) : null;\n var suggestionListContainerCssVal = isSuggestionListInline ? _styles.suggestionListContainer : _styles.elevatedSuggestionListContainer;\n var suggestionContainerElm = null;\n\n if (value && areSuggestionsVisible && (suggestionsElm || loadingElm || errorElm)) {\n suggestionContainerElm = jsx(\"div\", {\n css: suggestionListContainerCssVal,\n className: suggestionListContainerClassName,\n ref: suggestionListContainerRef,\n \"data-ppui\": \"true\"\n }, suggestionsElm, loadingElm, errorElm);\n } else if (!value && areSuggestionsVisible && focusSuggestionLength > 0) {\n suggestionContainerElm = jsx(\"div\", {\n css: suggestionListContainerCssVal,\n className: suggestionListContainerClassName,\n ref: suggestionListContainerRef,\n \"data-ppui\": \"true\"\n }, focusSuggestionElm);\n }\n\n var _suggestListChangeMessage = suggestionListChangeMessage || \"\".concat(suggestionsLength, \" suggestions available\");\n\n var otherProps = triggerComponent !== TextInput ? {\n onClear: function handleClear(evt) {\n callSuggestionListClose(evt);\n\n if (onClear) {\n onClear(evt);\n }\n }\n } : {};\n return jsx(\"div\", {\n css: _styles.base,\n className: className,\n \"data-ppui-info\": \"auto-suggest_2.9.6\"\n }, jsx(triggerComponent, _extends({}, rest, {\n id: id,\n value: value,\n ref: inputRef,\n onChange: function handleChange(evt) {\n var newValue = evt.target.value;\n\n if (timerRef.current) {\n clearTimeout(timerRef.current);\n }\n /* istanbul ignore next */\n\n\n timerRef.current = setTimeout(function () {\n fetchSuggestions(newValue);\n }, debounceTimeout);\n setSuggestionsVisible(true);\n onChange(evt);\n },\n onFocus: function handleFocus(evt) {\n if (suggestionsLength || focusSuggestionLength) {\n setSuggestionsVisible(true);\n }\n\n fetchSuggestions(value);\n setTriggerFocus(true);\n /* istanbul ignore next */\n\n if (onFocus) {\n onFocus(evt);\n }\n },\n onKeyDown: function handleKey(evt) {\n /* istanbul ignore next */\n var KeyCode = new KeyboardCode(evt.key || evt.keyCode);\n\n if (KeyCode.IS_ESC || KeyCode.IS_TAB) {\n if (!isSuggestionListInline) {\n setSuggestionsVisible(false);\n }\n /* istanbul ignore next */\n\n\n if (KeyCode.IS_ESC && onClear) {\n onClear(evt);\n }\n }\n /* istanbul ignore next */\n\n\n if (onKeyDown) {\n onKeyDown(evt);\n }\n },\n onBlur: function handleBlur(evt) {\n // onSuggestionListClose callback\n // this callback is triggered ONLY when suggestionList is visible\n callSuggestionListClose(evt);\n setTriggerFocus(false);\n /* istanbul ignore next */\n\n if (onBlur) {\n onBlur(evt);\n }\n },\n \"aria-activedescendant\": highlightedSuggestionId,\n \"aria-autocomplete\": \"list\",\n role: \"combobox\",\n \"aria-expanded\": suggestionsLength > 0 && areSuggestionsVisible,\n \"aria-owns\": suggestionListId,\n \"aria-haspopup\": \"listbox\"\n }, otherProps, {\n \"data-ppui\": \"true\"\n })), suggestionContainerElm, jsx(ScreenReaderContent, {\n role: \"status\",\n \"data-ppui\": \"true\"\n }, _suggestListChangeMessage));\n});\n\nexport { AutoSuggest, SuggestionList, styles as autoSuggestStyles };\n","import _extends from '@babel/runtime/helpers/esm/extends';\nimport _defineProperty from '@babel/runtime/helpers/esm/defineProperty';\nimport React, { useMemo, useContext, useEffect, useState } from 'react';\nimport { IntlContext } from '@paypalcorp/pp-react-intl';\nimport { TextInput } from '@paypalcorp/pp-react-text-input';\nimport { Combobox } from '@paypalcorp/pp-react-combobox';\nimport { Col, Row } from '@paypalcorp/pp-react-grid';\nimport _slicedToArray from '@babel/runtime/helpers/esm/slicedToArray';\nimport { SuggestionList, AutoSuggest } from '@paypalcorp/pp-react-auto-suggest';\nimport { BodyText, CaptionText } from '@paypalcorp/pp-react-text';\nimport { highlightMatch, devWarning } from '@paypalcorp/pp-react-utils';\nimport { css, useTheme, jsx, ClassNames } from '@emotion/react';\nimport _taggedTemplateLiteral from '@babel/runtime/helpers/esm/taggedTemplateLiteral';\nimport _objectWithoutProperties from '@babel/runtime/helpers/esm/objectWithoutProperties';\n\nvar _templateObject, _templateObject2, _templateObject3;\nfunction styles() {\n var tokens = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var sysColorBackgroundMediumContrast = tokens.sysColorBackgroundMediumContrast,\n sysSpaceXs = tokens.sysSpaceXs;\n var suggestionListFooter = css(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n label: suggestion_list_footer;\\n text-align: center;\\n \"])));\n var googleLogo = css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n height: \", \";\\n \"])), '0.75rem');\n var googleAddressSecondaryText = css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral([\"\\n label: google_address_secondary_styles;\\n color: \", \";\\n margin-top: \", \";\\n \"])), sysColorBackgroundMediumContrast, sysSpaceXs);\n return {\n suggestionListFooter: suggestionListFooter,\n googleLogo: googleLogo,\n googleAddressSecondaryText: googleAddressSecondaryText\n };\n}\n\nvar GoogleAddressSuggestion = function (_ref) {\n var _ref$mainText = _ref.mainText,\n mainText = _ref$mainText === void 0 ? 'Main Text' : _ref$mainText,\n _ref$secondaryText = _ref.secondaryText,\n secondaryText = _ref$secondaryText === void 0 ? 'Secondary Text' : _ref$secondaryText,\n query = _ref.query,\n className = _ref.className;\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n var highlightedMainText = highlightMatch(mainText, query);\n return jsx(\"div\", {\n className: className,\n \"data-ppui\": \"true\"\n }, jsx(BodyText, {\n dangerouslySetInnerHTML: {\n __html: highlightedMainText\n },\n \"data-ppui\": \"true\"\n }), jsx(ClassNames, {\n \"data-ppui\": \"true\"\n }, function (_ref2) {\n var css = _ref2.css;\n return jsx(CaptionText, {\n className: css(_styles.googleAddressSecondaryText),\n \"data-ppui\": \"true\"\n }, secondaryText);\n }));\n};\n\nvar GoogleFooter = function (_ref) {\n var _ref$domain = _ref.domain,\n domain = _ref$domain === void 0 ? 'www.paypalobjects.com' : _ref$domain,\n className = _ref.className;\n\n var _styles = styles();\n\n return jsx(\"div\", {\n css: _styles.suggestionListFooter,\n className: className,\n \"data-ppui\": \"true\"\n }, jsx(\"img\", {\n css: _styles.googleLogo,\n src: \"https://\".concat(domain, \"/paypal-ui/web/components/address-input/powered_by_google_on_white.png\"),\n alt: \"Powered by Google\",\n \"data-ppui\": \"true\"\n }));\n};\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n/**\n * Renders suggestion from Google Places Autocomplete service https://developers.google.com/maps/documentation/javascript/reference/places-autocomplete-service#AutocompletePrediction\n * suggestion: {mainText, secondaryText, description, placeId, matchedSubstrings}\n * @param suggestion\n * @returns\n */\n\n/* istanbul ignore next */\n\nfunction renderGoogleAddressSuggestion(suggestion, query) {\n var mainText = suggestion.mainText,\n secondaryText = suggestion.secondaryText;\n return /*#__PURE__*/React.createElement(GoogleAddressSuggestion, {\n mainText: mainText,\n secondaryText: secondaryText,\n query: query,\n \"data-ppui\": \"true\"\n });\n}\n/**\n * Validation hook to validate using AddressFormatter from IntlContext\n */\n\n\nfunction useValidate(_ref) {\n var getAddress = _ref.getAddress,\n onValidate = _ref.onValidate,\n validate = _ref.validate,\n region = _ref.region,\n requiredFieldErrorText = _ref.requiredFieldErrorText,\n invalidFieldErrorText = _ref.invalidFieldErrorText;\n var intlContext = useContext(IntlContext);\n var validator = region && intlContext && intlContext.addressFormatter && intlContext.addressFormatter({\n addressRegion: region\n });\n\n var validateAddress = function () {\n var validations = [];\n var errors = {};\n var address = getAddress();\n address.countryCode = region;\n validations = validator.validate(address);\n validations.forEach(function (_ref2) {\n var code = _ref2.code,\n element = _ref2.element;\n\n /* istanbul ignore next */\n errors[element] = code === 'MISSING_REQUIRED' ? requiredFieldErrorText : invalidFieldErrorText;\n });\n onValidate(errors, validations);\n };\n\n useEffect(function () {\n if (validate && validator) {\n validateAddress();\n }\n }, [validate]);\n}\n/**\n * Address state hook\n */\n\n\nfunction useAddress() {\n var _ref3 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},\n _ref3$initialAddress = _ref3.initialAddress,\n initialAddress = _ref3$initialAddress === void 0 ? {\n addressLine1: '',\n addressLine2: '',\n addressLine3: '',\n adminArea1: '',\n adminArea2: '',\n adminArea3: '',\n adminArea4: '',\n postalCode: ''\n } : _ref3$initialAddress,\n _ref3$initialAddressE = _ref3.initialAddressErrors,\n initialAddressErrors = _ref3$initialAddressE === void 0 ? {} : _ref3$initialAddressE,\n _ref3$autoSuggestFiel = _ref3.autoSuggestField,\n autoSuggestField = _ref3$autoSuggestFiel === void 0 ? 'addressLine1' : _ref3$autoSuggestFiel,\n suggestions = _ref3.suggestions,\n fetchSuggestions = _ref3.fetchSuggestions,\n onSuggestionSelect = _ref3.onSuggestionSelect,\n _ref3$renderSuggestio = _ref3.renderSuggestion,\n renderSuggestion = _ref3$renderSuggestio === void 0 ? renderGoogleAddressSuggestion : _ref3$renderSuggestio,\n _ref3$suggestionListF = _ref3.suggestionListFooter,\n suggestionListFooter = _ref3$suggestionListF === void 0 ? /*#__PURE__*/React.createElement(GoogleFooter, {\n \"data-ppui\": \"true\"\n }) : _ref3$suggestionListF;\n\n var _useState = useState(initialAddress.addressLine1),\n _useState2 = _slicedToArray(_useState, 2),\n addressLine1 = _useState2[0],\n setAddressLine1 = _useState2[1];\n\n var _useState3 = useState(initialAddress.addressLine2),\n _useState4 = _slicedToArray(_useState3, 2),\n addressLine2 = _useState4[0],\n setAddressLine2 = _useState4[1];\n\n var _useState5 = useState(initialAddress.addressLine3),\n _useState6 = _slicedToArray(_useState5, 2),\n addressLine3 = _useState6[0],\n setAddressLine3 = _useState6[1];\n\n var _useState7 = useState(initialAddress.adminArea1),\n _useState8 = _slicedToArray(_useState7, 2),\n adminArea1 = _useState8[0],\n setAdminArea1 = _useState8[1];\n\n var _useState9 = useState(initialAddress.adminArea2),\n _useState10 = _slicedToArray(_useState9, 2),\n adminArea2 = _useState10[0],\n setAdminArea2 = _useState10[1];\n\n var _useState11 = useState(initialAddress.adminArea3),\n _useState12 = _slicedToArray(_useState11, 2),\n adminArea3 = _useState12[0],\n setAdminArea3 = _useState12[1];\n\n var _useState13 = useState(initialAddress.adminArea4),\n _useState14 = _slicedToArray(_useState13, 2),\n adminArea4 = _useState14[0],\n setAdminArea4 = _useState14[1];\n\n var _useState15 = useState(initialAddress.postalCode),\n _useState16 = _slicedToArray(_useState15, 2),\n postalCode = _useState16[0],\n setPostalCode = _useState16[1];\n\n var _useState17 = useState(initialAddressErrors.addressLine1),\n _useState18 = _slicedToArray(_useState17, 2),\n addressLine1Error = _useState18[0],\n setAddressLine1Error = _useState18[1];\n\n var _useState19 = useState(initialAddressErrors.addressLine2),\n _useState20 = _slicedToArray(_useState19, 2),\n addressLine2Error = _useState20[0],\n setAddressLine2Error = _useState20[1];\n\n var _useState21 = useState(initialAddressErrors.addressLine3),\n _useState22 = _slicedToArray(_useState21, 2),\n addressLine3Error = _useState22[0],\n setAddressLine3Error = _useState22[1];\n\n var _useState23 = useState(initialAddressErrors.adminArea1),\n _useState24 = _slicedToArray(_useState23, 2),\n adminArea1Error = _useState24[0],\n setAdminArea1Error = _useState24[1];\n\n var _useState25 = useState(initialAddressErrors.adminArea2),\n _useState26 = _slicedToArray(_useState25, 2),\n adminArea2Error = _useState26[0],\n setAdminArea2Error = _useState26[1];\n\n var _useState27 = useState(initialAddressErrors.adminArea3),\n _useState28 = _slicedToArray(_useState27, 2),\n adminArea3Error = _useState28[0],\n setAdminArea3Error = _useState28[1];\n\n var _useState29 = useState(initialAddressErrors.adminArea4),\n _useState30 = _slicedToArray(_useState29, 2),\n adminArea4Error = _useState30[0],\n setAdminArea4Error = _useState30[1];\n\n var _useState31 = useState(initialAddressErrors.postalCode),\n _useState32 = _slicedToArray(_useState31, 2),\n postalCodeError = _useState32[0],\n setPostalCodeError = _useState32[1];\n /* istanbul ignore next */\n\n\n var setError = function (field, error) {\n switch (field) {\n case 'addressLine1':\n setAddressLine1Error(error);\n break;\n\n case 'addressLine2':\n setAddressLine2Error(error);\n break;\n\n case 'addressLine3':\n setAddressLine3Error(error);\n break;\n\n case 'adminArea1':\n setAdminArea1Error(error);\n break;\n\n case 'adminArea2':\n setAdminArea2Error(error);\n break;\n\n case 'adminArea3':\n setAdminArea3Error(error);\n break;\n\n case 'adminArea4':\n setAdminArea4Error(error);\n break;\n\n case 'postalCode':\n setPostalCodeError(error);\n break;\n }\n };\n /* istanbul ignore next */\n\n\n var handleChange = function (evt, field) {\n var value = evt.target.value;\n setError(field, ''); // reset any error\n\n switch (field) {\n case 'addressLine1':\n setAddressLine1(value);\n break;\n\n case 'addressLine2':\n setAddressLine2(value);\n break;\n\n case 'adminArea1':\n setAdminArea1(value);\n break;\n\n case 'adminArea2':\n setAdminArea2(value);\n break;\n\n case 'adminArea3':\n setAdminArea3(value);\n break;\n\n case 'adminArea4':\n setAdminArea4(value);\n break;\n\n case 'postalCode':\n setPostalCode(value);\n break;\n }\n };\n\n var getAddress = function () {\n return {\n addressLine1: addressLine1,\n addressLine2: addressLine2,\n addressLine3: addressLine3,\n adminArea1: adminArea1,\n adminArea2: adminArea2,\n adminArea3: adminArea3,\n adminArea4: adminArea4,\n postalCode: postalCode\n };\n };\n /* istanbul ignore next */\n\n\n var setAddress = function (address) {\n setAddressLine1(address.addressLine1 || '');\n setAddressLine2(address.addressLine2 || '');\n setAddressLine3(address.addressLine3 || '');\n setAdminArea1(address.adminArea1 || '');\n setAdminArea2(address.adminArea2 || '');\n setAdminArea3(address.adminArea3 || '');\n setAdminArea4(address.adminArea4 || '');\n setPostalCode(address.postalCode || '');\n };\n /* istanbul ignore next */\n\n\n var addressParts = {\n addressLine1: {\n props: {\n value: addressLine1,\n errorText: addressLine1Error,\n onChange: function onChange(evt) {\n handleChange(evt, 'addressLine1');\n }\n }\n },\n addressLine2: {\n props: {\n value: addressLine2,\n errorText: addressLine2Error,\n onChange: function onChange(evt) {\n return handleChange(evt, 'addressLine2');\n }\n }\n },\n addressLine3: {\n props: {\n value: addressLine3,\n errorText: addressLine3Error,\n onChange: function onChange(evt) {\n return handleChange(evt, 'addressLine3');\n }\n }\n },\n adminArea1: {\n props: {\n value: adminArea1,\n errorText: adminArea1Error,\n onChange: function onChange(evt) {\n return handleChange(evt, 'adminArea1');\n }\n }\n },\n adminArea2: {\n props: {\n value: adminArea2,\n errorText: adminArea2Error,\n onChange: function onChange(evt) {\n return handleChange(evt, 'adminArea2');\n }\n }\n },\n adminArea3: {\n props: {\n value: adminArea3,\n errorText: adminArea3Error,\n onChange: function onChange(evt) {\n return handleChange(evt, 'adminArea3');\n }\n }\n },\n adminArea4: {\n props: {\n value: adminArea4,\n errorText: adminArea4Error,\n onChange: function onChange(evt) {\n return handleChange(evt, 'adminArea4');\n }\n }\n },\n postalCode: {\n props: {\n value: postalCode,\n errorText: postalCodeError,\n onChange: function onChange(evt) {\n return handleChange(evt, 'postalCode');\n }\n }\n }\n };\n\n if (fetchSuggestions) {\n var suggestionList = /*#__PURE__*/React.createElement(SuggestionList, {\n suggestions: suggestions,\n query: addressParts[autoSuggestField].props.value,\n renderSuggestion: renderSuggestion,\n onSelect: onSuggestionSelect,\n \"data-ppui\": \"true\"\n });\n addressParts[autoSuggestField].as = AutoSuggest;\n addressParts[autoSuggestField].props = _objectSpread(_objectSpread({}, addressParts[autoSuggestField].props), {}, {\n onClear: function onClear() {\n var currentAddress = getAddress();\n currentAddress[autoSuggestField] = '';\n setAddress(currentAddress);\n },\n fetchSuggestions: fetchSuggestions,\n suggestionList: suggestionList,\n suggestions: suggestions,\n suggestionListFooter: suggestionListFooter\n });\n }\n\n return {\n addressLine1: addressLine1,\n addressLine2: addressLine2,\n addressLine3: addressLine3,\n adminArea1: adminArea1,\n adminArea2: adminArea2,\n adminArea3: adminArea3,\n adminArea4: adminArea4,\n postalCode: postalCode,\n addressLine1Error: addressLine1Error,\n addressLine2Error: addressLine2Error,\n addressLine3Error: addressLine3Error,\n adminArea1Error: adminArea1Error,\n adminArea2Error: adminArea2Error,\n adminArea3Error: adminArea3Error,\n adminArea4Error: adminArea4Error,\n postalCodeError: postalCodeError,\n addressParts: addressParts,\n handleChange: handleChange,\n setError: setError,\n getAddress: getAddress,\n setAddress: setAddress\n };\n}\n\nvar AddressInputUtils = {\n useValidate: useValidate,\n useAddress: useAddress\n};\n\nfunction ownKeys$1(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread$1(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$1(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$1(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nvar REQ_FIELD_ERROR = 'Please enter a value';\nvar INVALID_FIELD_ERROR = 'Please enter a valid value';\n\nfunction getAddressFromParts(parts) {\n return Object.keys(parts).reduce(function (acc, key) {\n /* istanbul ignore next */\n acc[key] = parts[key].props.value || '';\n return acc;\n }, {});\n}\n\n// Get address parts to display for the current locale and address region from IntlProvider\nfunction getAddressParts(intlContext, region) {\n var partsToDisplay = {};\n var partsDisplayOrder = [];\n\n if (region && intlContext && intlContext.addressFormatter) {\n var addressParts = intlContext.addressFormatter({\n addressRegion: region\n }).formatToParts({});\n addressParts.forEach(function (_ref) {\n var parts = _ref.parts;\n var types = [];\n parts.forEach(function (_ref2) {\n var allowedValues = _ref2.allowedValues,\n type = _ref2.type;\n partsToDisplay[type] = {};\n partsToDisplay[type].props = {};\n types.push(type);\n /* istanbul ignore else */\n\n if (intlContext.getDisplayNamesObject) {\n if (allowedValues) {\n var translations = intlContext.getDisplayNamesObject({\n type: 'portableAddressValues',\n element: type,\n addressRegion: region\n });\n var options = allowedValues.map(function (allowedValue) {\n return {\n label: translations.select(allowedValue),\n value: allowedValue\n };\n });\n partsToDisplay[type].props.options = options;\n partsToDisplay[type].as = Combobox;\n }\n\n var labelTranslations = intlContext.getDisplayNamesObject({\n type: 'portableAddress',\n addressRegion: region\n });\n partsToDisplay[type].props.label = labelTranslations.select(type);\n }\n });\n\n if (types.length > 1) {\n partsDisplayOrder.push(types);\n } else {\n partsDisplayOrder.push(types[0]);\n }\n });\n }\n\n return {\n partsToDisplay: partsToDisplay,\n partsDisplayOrder: partsDisplayOrder\n };\n}\n\nvar AddressInput = function (_ref3) {\n var region = _ref3.region,\n _ref3$parts = _ref3.parts,\n parts = _ref3$parts === void 0 ? {} : _ref3$parts,\n partsOrder = _ref3.partsOrder,\n _ref3$excludedParts = _ref3.excludedParts,\n excludedParts = _ref3$excludedParts === void 0 ? [] : _ref3$excludedParts,\n className = _ref3.className,\n fieldClassName = _ref3.fieldClassName,\n fieldNamePrefix = _ref3.fieldNamePrefix,\n validate = _ref3.validate,\n _ref3$requiredFieldEr = _ref3.requiredFieldErrorText,\n requiredFieldErrorText = _ref3$requiredFieldEr === void 0 ? REQ_FIELD_ERROR : _ref3$requiredFieldEr,\n _ref3$invalidFieldErr = _ref3.invalidFieldErrorText,\n invalidFieldErrorText = _ref3$invalidFieldErr === void 0 ? INVALID_FIELD_ERROR : _ref3$invalidFieldErr,\n onValidate = _ref3.onValidate;\n AddressInputUtils.useValidate({\n getAddress: function getAddress() {\n return getAddressFromParts(parts);\n },\n onValidate: onValidate,\n validate: validate,\n region: region,\n requiredFieldErrorText: requiredFieldErrorText,\n invalidFieldErrorText: invalidFieldErrorText\n });\n var intlContext = useContext(IntlContext);\n var _partsOrder = partsOrder;\n\n var _useMemo = useMemo(function () {\n return getAddressParts(intlContext, region);\n }, [region, intlContext]),\n partsToDisplay = _useMemo.partsToDisplay,\n partsDisplayOrder = _useMemo.partsDisplayOrder;\n\n if (region && !(_partsOrder && _partsOrder.length)) {\n _partsOrder = partsDisplayOrder;\n }\n\n if (!(_partsOrder && _partsOrder.length)) {\n _partsOrder = Object.keys(parts);\n }\n\n var tempPartsOrder = [];\n\n _partsOrder.forEach(function (part) {\n if (part.length > 6 && typeof part !== 'string') {\n for (var i = 0; i < part.length; i += 4) {\n tempPartsOrder.push(part.slice(i, i + 4));\n }\n } else {\n tempPartsOrder.push(part);\n }\n });\n\n _partsOrder = tempPartsOrder;\n\n var renderPart = function (part) {\n var partObj = _objectSpread$1(_objectSpread$1({\n props: {}\n }, partsToDisplay[part]), parts[part]); //Merge props\n\n\n if (partsToDisplay[part] && parts[part]) {\n partObj.props = _objectSpread$1(_objectSpread$1({}, partsToDisplay[part].props), parts[part].props);\n }\n\n if (!partObj.as) {\n if (partObj.props.options) {\n partObj.as = Combobox;\n } else {\n partObj.as = TextInput;\n }\n }\n\n var Component = partObj.as;\n return /*#__PURE__*/React.createElement(Component, _extends({\n name: \"\".concat(fieldNamePrefix, \"_\").concat(part)\n }, partObj.props, {\n \"data-ppui\": \"true\"\n }));\n };\n\n var rows = [];\n\n _partsOrder.forEach(function (part, index) {\n var columns = [];\n\n if (typeof part !== 'string') {\n var cols = Math.floor(12 / part.length);\n part.forEach(function (subPart, colIndex) {\n if (!excludedParts.includes(subPart)) {\n columns.push( /*#__PURE__*/React.createElement(Col, {\n sm: cols,\n xs: 12,\n className: fieldClassName,\n key: colIndex,\n form: \"vspace\",\n \"data-ppui\": \"true\"\n }, renderPart(subPart)));\n }\n });\n } else if (!excludedParts.includes(part)) {\n columns.push( /*#__PURE__*/React.createElement(Col, {\n xs: 12,\n className: fieldClassName,\n key: index,\n form: \"vspace\",\n \"data-ppui\": \"true\"\n }, renderPart(part)));\n }\n\n if (columns.length) {\n rows.push( /*#__PURE__*/React.createElement(Row, {\n key: index,\n \"data-ppui\": \"true\"\n }, columns));\n }\n });\n\n return /*#__PURE__*/React.createElement(\"div\", {\n className: className,\n \"data-ppui-info\": \"address-input_2.4.13\"\n }, rows);\n};\n\nvar _excluded = [\"region\", \"validate\", \"parts\", \"requiredFieldErrorText\", \"invalidFieldErrorText\", \"address\", \"addressErrors\", \"onChange\", \"onValidate\"];\n\nfunction ownKeys$2(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread$2(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$2(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$2(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nvar ADDRESS_PARTS = ['recipient', 'businessName', 'addressLine1', 'addressLine2', 'addressLine3', 'adminArea1', 'adminArea2', 'adminArea3', 'adminArea4', 'postalCode'];\n\nvar AddressInputWithValidation = function (_ref) {\n var region = _ref.region,\n validate = _ref.validate,\n _ref$parts = _ref.parts,\n parts = _ref$parts === void 0 ? {} : _ref$parts,\n _ref$requiredFieldErr = _ref.requiredFieldErrorText,\n requiredFieldErrorText = _ref$requiredFieldErr === void 0 ? 'Please enter a value' : _ref$requiredFieldErr,\n _ref$invalidFieldErro = _ref.invalidFieldErrorText,\n invalidFieldErrorText = _ref$invalidFieldErro === void 0 ? 'Please enter a valid value' : _ref$invalidFieldErro,\n _ref$address = _ref.address,\n address = _ref$address === void 0 ? {\n addressLine1: ''\n } : _ref$address,\n _ref$addressErrors = _ref.addressErrors,\n addressErrors = _ref$addressErrors === void 0 ? {} : _ref$addressErrors,\n _ref$onChange = _ref.onChange,\n onChange = _ref$onChange === void 0 ? function () {\n return devWarning('onChange prop is missing');\n } : _ref$onChange,\n onValidate = _ref.onValidate,\n rest = _objectWithoutProperties(_ref, _excluded);\n\n AddressInputUtils.useValidate({\n getAddress: function getAddress() {\n return address;\n },\n onValidate: onValidate,\n validate: validate,\n region: region,\n requiredFieldErrorText: requiredFieldErrorText,\n invalidFieldErrorText: invalidFieldErrorText\n });\n\n var handleChange = function (evt, part) {\n onChange(_objectSpread$2(_objectSpread$2({}, address), {}, _defineProperty({}, part, evt.target.value)));\n };\n\n var _parts = useMemo(function () {\n return ADDRESS_PARTS.reduce(function (acc, part) {\n acc[part] = _objectSpread$2({\n props: {}\n }, parts[part]); // adminArea1 uses Combobox -- we need to handle both text and click changes\n\n /* istanbul ignore next */\n\n if (part === 'adminArea1') {\n acc[part].props.onTextChange = function (evt) {\n return handleChange(evt, part);\n };\n }\n\n acc[part].props.onChange = function (evt) {\n return handleChange(evt, part);\n };\n\n acc[part].props.value = address[part] || '';\n acc[part].props.errorText = addressErrors[part];\n return acc;\n }, {});\n }, [parts]);\n\n return /*#__PURE__*/React.createElement(AddressInput, _extends({\n parts: _parts,\n region: region,\n \"data-ppui-info\": \"address-input_2.4.13\"\n }, rest));\n};\n\nexport { AddressInput, AddressInputUtils, AddressInputWithValidation, GoogleAddressSuggestion, GoogleFooter, styles as addressInputStyles };\n","import _extends from '@babel/runtime/helpers/esm/extends';\nimport _objectWithoutProperties from '@babel/runtime/helpers/esm/objectWithoutProperties';\nimport { useMemo } from 'react';\nimport { css, useTheme, jsx } from '@emotion/react';\nimport _taggedTemplateLiteral from '@babel/runtime/helpers/esm/taggedTemplateLiteral';\nimport { devWarning, utilStyles } from '@paypalcorp/pp-react-utils';\n\nvar _templateObject, _templateObject2, _templateObject3;\nfunction styles(tokens) {\n /* istanbul ignore next */\n if (!Object.keys(tokens).length) {\n devWarning('Missing Emotion theme. Use ThemeProvider from @emotion/react to pass a valid theme from pp-react.');\n return {};\n }\n\n var _utilStyles = utilStyles(tokens),\n screenReader = _utilStyles.screenReader;\n\n var appbadgeHeight = '2.5rem';\n var base = css(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n label: appbadge_base;\\n line-height: 0;\\n \"])));\n var ios = css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n label: ios;\\n height: \", \";\\n width: \", \";\\n vertical-align: bottom;\\n \"])), appbadgeHeight, '7.5rem');\n var android = css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral([\"\\n label: android;\\n height: \", \";\\n width: \", \";\\n vertical-align: bottom;\\n \"])), appbadgeHeight, '8.4375rem');\n return {\n base: base,\n ios: ios,\n android: android,\n screenReader: screenReader\n };\n}\n\nvar _excluded = [\"url\", \"platform\", \"locale\", \"className\", \"imageClassName\", \"cdnHost\", \"children\"];\nvar DEFAULT_LOCALE = 'en-US'; //@ts-ignore\n\nvar getImageSources = function (currentLocale, cdnHost) {\n var localeFormat = currentLocale.toString().replace('-', '_');\n return {\n locale: localeFormat,\n ios: \"https://\".concat(cdnHost, \"/appbadges/badges/\").concat(localeFormat, \"/ios.svg\"),\n ios_white: \"https://\".concat(cdnHost, \"/appbadges/badges/\").concat(localeFormat, \"/ios_white.svg\"),\n android: \"https://\".concat(cdnHost, \"/appbadges/badges/\").concat(localeFormat, \"/android-no-padding.svg\")\n };\n};\n\nvar Appbadge = function (_ref) {\n var url = _ref.url,\n platform = _ref.platform,\n _ref$locale = _ref.locale,\n locale = _ref$locale === void 0 ? DEFAULT_LOCALE : _ref$locale,\n className = _ref.className,\n imageClassName = _ref.imageClassName,\n _ref$cdnHost = _ref.cdnHost,\n cdnHost = _ref$cdnHost === void 0 ? 'www.paypalobjects.com' : _ref$cdnHost,\n children = _ref.children,\n rest = _objectWithoutProperties(_ref, _excluded);\n\n /* istanbul ignore next */\n if (!url) {\n devWarning('Required prop `url` is missing.');\n }\n\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n var imageCssVal = platform === \"android\" ? _styles.android : _styles.ios;\n var image = useMemo(function () {\n return getImageSources(locale, cdnHost);\n }, [locale]); //@ts-ignore\n\n var imgsource = image[platform];\n return jsx(\"a\", _extends({\n href: url,\n css: _styles.base,\n className: className,\n \"data-ppui-info\": \"appbadge_2.3.2\"\n }, rest), jsx(\"span\", {\n css: _styles.screenReader,\n \"data-ppui\": \"true\"\n }, children), jsx(\"img\", {\n alt: platform,\n css: imageCssVal,\n className: imageClassName,\n src: imgsource,\n \"aria-hidden\": \"true\",\n \"data-ppui\": \"true\"\n }));\n};\n\nexport { Appbadge, styles as appBadgeStyles, getImageSources };\n","import _extends from '@babel/runtime/helpers/esm/extends';\nimport _objectWithoutProperties from '@babel/runtime/helpers/esm/objectWithoutProperties';\nimport React, { useMemo, forwardRef } from 'react';\nimport { BankIcon, CausesIcon, MerchantIcon, UserProfileIcon, BillPaymentIcon, RecurrentIcon } from '@paypalcorp/pp-react-icons';\nimport { css, useTheme, jsx, ClassNames } from '@emotion/react';\nimport _taggedTemplateLiteral from '@babel/runtime/helpers/esm/taggedTemplateLiteral';\nimport { textStyles } from '@paypalcorp/pp-react-text';\nimport { devWarning, utilStyles, getColor, getColorFamily, Shimmer } from '@paypalcorp/pp-react-utils';\n\nvar _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13;\nfunction styles(tokens) {\n /* istanbul ignore next */\n if (!Object.keys(tokens).length) {\n devWarning('Missing Emotion theme. Use ThemeProvider from @emotion/react to pass a valid theme from pp-react.');\n return {};\n }\n\n var _textStyles = textStyles(tokens),\n caption = _textStyles.caption,\n body = _textStyles.body,\n headingSm = _textStyles.headingSm,\n headingLg = _textStyles.headingLg;\n\n var _utilStyles = utilStyles(tokens),\n shimmerStyles = _utilStyles.shimmerStyles;\n\n var sysBorderRadiusInteractive = tokens.sysBorderRadiusInteractive,\n sysSizeCircleSm = tokens.sysSizeCircleSm,\n sysSizeCircleMd = tokens.sysSizeCircleMd,\n sysSizeCircleLg = tokens.sysSizeCircleLg,\n sysSizeCircleXl = tokens.sysSizeCircleXl,\n sysColorAccent1Contrast = tokens.sysColorAccent1Contrast,\n sysColorAccent2Contrast = tokens.sysColorAccent2Contrast,\n sysColorAccent3Contrast = tokens.sysColorAccent3Contrast,\n sysColorAccent4Contrast = tokens.sysColorAccent4Contrast,\n sysColorBackgroundMain = tokens.sysColorBackgroundMain,\n sysColorAccent1Main = tokens.sysColorAccent1Main,\n sysColorAccent2Main = tokens.sysColorAccent2Main,\n sysColorAccent3Main = tokens.sysColorAccent3Main,\n sysColorAccent4Main = tokens.sysColorAccent4Main,\n sysBorderThicknessNormal = tokens.sysBorderThicknessNormal; // Accepted colors, keep this order to match the sequence for the initials\n\n var acceptedColors = {\n sysColorAccent4Main: sysColorAccent4Main,\n sysColorAccent2Main: sysColorAccent2Main,\n sysColorAccent1Main: sysColorAccent1Main,\n sysColorAccent3Main: sysColorAccent3Main\n }; // legal colors for getting getColorFamily\n\n var legalColors = {\n sysColorAccent1Main: sysColorAccent1Main,\n sysColorAccent2Main: sysColorAccent2Main,\n sysColorAccent3Main: sysColorAccent3Main,\n sysColorAccent4Main: sysColorAccent4Main,\n sysColorAccent1Contrast: sysColorAccent1Contrast,\n sysColorAccent2Contrast: sysColorAccent2Contrast,\n sysColorAccent3Contrast: sysColorAccent3Contrast,\n sysColorAccent4Contrast: sysColorAccent4Contrast\n };\n var sizeXs = css(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n label: size_xs;\\n width: \", \";\\n height: \", \";\\n \", \";\\n \"])), sysSizeCircleSm, sysSizeCircleSm, caption({\n lineHeight: sysSizeCircleSm\n }));\n var sizeSm = css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n label: size_sm;\\n width: \", \";\\n height: \", \";\\n \", \";\\n \"])), sysSizeCircleMd, sysSizeCircleMd, body({\n lineHeight: sysSizeCircleMd\n }));\n var sizeMd = css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral([\"\\n label: size_md;\\n width: \", \";\\n height: \", \";\\n \", \"\\n \"])), sysSizeCircleLg, sysSizeCircleLg, headingSm({\n lineHeight: sysSizeCircleLg\n }));\n var sizeLg = css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral([\"\\n label: size_lg;\\n \", \"\\n width: \", \";\\n height: \", \";\\n \"])), headingLg({\n lineHeight: sysSizeCircleXl\n }), sysSizeCircleXl, sysSizeCircleXl);\n\n var getColorCss = function (colorName) {\n var _getColorFamily;\n\n var backgroundColor = getColor(colorName, acceptedColors, sysColorAccent1Main);\n var color = acceptedColors[colorName] ? (_getColorFamily = getColorFamily(colorName, legalColors)) === null || _getColorFamily === void 0 ? void 0 : _getColorFamily.contrast : sysColorAccent1Contrast;\n return css(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral([\"\\n label: \", \";\\n background-color: \", \";\\n color: \", \";\\n \"])), colorName, backgroundColor, color);\n };\n\n var getGenericColorCss = function (generic) {\n var genericCategory = {\n bank: {\n backgroundColor: sysColorAccent3Main,\n color: sysColorAccent3Contrast\n },\n causes: {\n backgroundColor: sysColorAccent4Main,\n color: sysColorAccent4Contrast\n },\n biller: {\n backgroundColor: sysColorAccent4Main,\n color: sysColorAccent4Contrast\n },\n merchant: {\n backgroundColor: sysColorAccent1Main,\n color: sysColorAccent1Contrast\n },\n profile: {\n backgroundColor: sysColorAccent1Contrast,\n color: sysColorAccent1Main\n },\n subscription: {\n backgroundColor: sysColorAccent2Main,\n color: sysColorAccent2Contrast\n }\n };\n return css(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral([\"\\n label: \", \";\\n background-color: \", \";\\n color: \", \";\\n \"])), generic, genericCategory[generic].backgroundColor, genericCategory[generic].color);\n };\n\n var base = css(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral([\"\\n label: avatar_base;\\n border-radius: \", \";\\n color: \", \";\\n text-align: center;\\n text-transform: uppercase;\\n display: flex;\\n justify-content: center;\\n align-items: center;\\n border: \", \" solid \", \";\\n background-color: \", \";\\n position: relative;\\n \", \";\\n \"])), sysBorderRadiusInteractive, sysColorAccent1Contrast, sysBorderThicknessNormal, sysColorBackgroundMain, sysColorAccent1Main, sizeLg);\n var image = css(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral([\"\\n label: image;\\n border-radius: inherit;\\n width: inherit;\\n height: inherit;\\n background: \", \";\\n object-fit: cover;\\n \"])), sysColorAccent1Contrast);\n var avatarBadge = css(_templateObject9 || (_templateObject9 = _taggedTemplateLiteral([\"\\n label: avatar_badge;\\n box-sizing: border-box;\\n position: absolute;\\n bottom: 0;\\n right: -\", \"; // Avatar has its own border of 1px, so shift the badge by 1px\\n \"])), sysBorderThicknessNormal);\n var shimmer = css(_templateObject10 || (_templateObject10 = _taggedTemplateLiteral([\"\\n label: shimmer;\\n \", \"\\n \"])), shimmerStyles.defaults({\n borderRadius: sysBorderRadiusInteractive,\n width: sysSizeCircleXl,\n height: sysSizeCircleXl\n }));\n var shimmerSizeXs = css(_templateObject11 || (_templateObject11 = _taggedTemplateLiteral([\"\\n label: shimmer_size_xs;\\n width: \", \";\\n height: \", \";\\n \"])), sysSizeCircleSm, sysSizeCircleSm);\n var shimmerSizeSm = css(_templateObject12 || (_templateObject12 = _taggedTemplateLiteral([\"\\n label: shimmer_size_sm;\\n width: \", \";\\n height: \", \";\\n \"])), sysSizeCircleMd, sysSizeCircleMd);\n var shimmerSizeMd = css(_templateObject13 || (_templateObject13 = _taggedTemplateLiteral([\"\\n label: shimmer_size_md;\\n width: \", \";\\n height: \", \";\\n \"])), sysSizeCircleLg, sysSizeCircleLg);\n return {\n base: base,\n image: image,\n sizeXs: sizeXs,\n sizeSm: sizeSm,\n sizeMd: sizeMd,\n sizeLg: sizeLg,\n getColorCss: getColorCss,\n getGenericColorCss: getGenericColorCss,\n avatarBadge: avatarBadge,\n shimmer: shimmer,\n shimmerSizeXs: shimmerSizeXs,\n shimmerSizeSm: shimmerSizeSm,\n shimmerSizeMd: shimmerSizeMd,\n acceptedColors: acceptedColors\n };\n}\n\nvar _excluded = [\"className\", \"color\", \"size\", \"src\", \"alt\", \"initials\", \"loading\", \"svgIconComponent\", \"badge\", \"generic\", \"isLoading\", \"isInverse\", \"children\"];\nvar iconSizeMap = {\n lg: 'xl',\n md: 'lg',\n sm: 'md',\n xs: 'sm'\n};\n\nvar Avatar = function (_ref) {\n var _styles$getColorCss, _styles$getGenericCol;\n\n var className = _ref.className,\n color = _ref.color,\n size = _ref.size,\n src = _ref.src,\n alt = _ref.alt,\n initials = _ref.initials,\n loading = _ref.loading,\n svgIconComponent = _ref.svgIconComponent,\n badge = _ref.badge,\n generic = _ref.generic,\n isLoading = _ref.isLoading,\n isInverse = _ref.isInverse,\n children = _ref.children,\n rest = _objectWithoutProperties(_ref, _excluded);\n\n var tokens = useTheme(); // Fetch tokens from Emotion context\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]); // colorMap for backward compatiablity\n\n\n var sizes = ['lg', 'md', 'sm', 'xs'];\n // Compute sizeVariable - sizeLg, sizeMd etc.\n var computedSizeVar = sizes.includes(size) && \"size\".concat(size.charAt(0).toUpperCase()).concat(size.charAt(1));\n\n if (isLoading) {\n var shimmerCSS = [_styles.shimmer, //@ts-ignore\n sizes.includes(size) && _styles[computedSizeVar]];\n return jsx(Shimmer, _extends({\n css: shimmerCSS,\n className: className,\n isInverse: isInverse,\n hasStyleDefaults: false\n }, rest, {\n \"data-ppui\": \"true\"\n }), children);\n }\n\n var computedColor = function getColor(colour) {\n if (generic || src) return null;else if (initials) {\n var sum = initials.charCodeAt(0) + (initials[1] ? initials === null || initials === void 0 ? void 0 : initials.charCodeAt(1) : 0); // istanbul ignore next\n\n var acceptedColors = _styles.acceptedColors ? Object.keys(_styles.acceptedColors) : '';\n var index = sum % acceptedColors.length;\n return acceptedColors[index];\n } else if (colour) {\n return colour;\n }\n return null;\n }({\n blue: 'sysColorAccent1Main',\n pink: 'sysColorAccent2Main',\n green: 'sysColorAccent3Main',\n purple: 'sysColorAccent4Main'\n }[color]) || color;\n\n var avatarCSS = [_styles.base, //@ts-ignore\n computedSizeVar && _styles[computedSizeVar], //@ts-ignore\n computedColor && ((_styles$getColorCss = _styles.getColorCss) === null || _styles$getColorCss === void 0 ? void 0 : _styles$getColorCss.call(_styles, computedColor)), ['profile', 'merchant', 'causes', 'bank', 'subscription', 'biller'].includes(generic) && ((_styles$getGenericCol = _styles.getGenericColorCss) === null || _styles$getGenericCol === void 0 ? void 0 : _styles$getGenericCol.call(_styles, generic))];\n var avatarBadge = badge && size !== 'xs' ? jsx(ClassNames, {\n \"data-ppui\": \"true\"\n }, function (_ref2) {\n var css = _ref2.css;\n return React.cloneElement(badge, {\n className: css(_styles.avatarBadge)\n });\n }) : null;\n return jsx(\"div\", _extends({\n className: className,\n css: avatarCSS,\n \"data-ppui-info\": \"avatar_4.5.6\"\n }, rest), function avatarContent() {\n if (src) {\n return jsx(\"img\", {\n css: _styles.image,\n src: src,\n alt: alt,\n loading: loading,\n \"data-ppui\": \"true\"\n });\n }\n\n if (svgIconComponent) {\n return jsx(svgIconComponent, {\n size: iconSizeMap[size],\n \"data-ppui\": \"true\"\n });\n }\n\n if (generic) {\n var GenericIcon = {\n bank: BankIcon,\n causes: CausesIcon,\n merchant: MerchantIcon,\n profile: UserProfileIcon,\n biller: BillPaymentIcon,\n subscription: RecurrentIcon\n }[generic];\n /* istanbul ignore next */\n\n if (GenericIcon) {\n return (// @ts-ignore\n jsx(GenericIcon, {\n name: generic,\n size: iconSizeMap[size],\n \"data-ppui\": \"true\"\n })\n );\n }\n }\n\n return initials;\n }(), avatarBadge);\n};\n\nvar _templateObject$1, _templateObject2$1, _templateObject3$1;\nfunction styles$1(tokens) {\n /* istanbul ignore next */\n if (!Object.keys(tokens).length) {\n devWarning('Missing Emotion theme. Use ThemeProvider from @emotion/react to pass a valid theme from pp-react.');\n return {};\n }\n\n var sysColorBackgroundMain = tokens.sysColorBackgroundMain,\n sysBorderRadiusInteractive = tokens.sysBorderRadiusInteractive,\n sysColorBackgroundMediumContrast = tokens.sysColorBackgroundMediumContrast,\n sysSpaceSm = tokens.sysSpaceSm;\n var ppuiAvatarStackSpacing = sysSpaceSm;\n\n var _utilStyles = utilStyles(tokens),\n ellipsis = _utilStyles.ellipsis,\n screenReader = _utilStyles.screenReader;\n\n var _textStyles = textStyles(tokens),\n caption = _textStyles.caption;\n\n var base = css(_templateObject$1 || (_templateObject$1 = _taggedTemplateLiteral([\"\\n label: avatar_stack_base;\\n display: flex;\\n align-items: center;\\n \"])));\n var avatar = css(_templateObject2$1 || (_templateObject2$1 = _taggedTemplateLiteral([\"\\n label: avatar;\\n border-radius: \", \";\\n flex-shrink: 0;\\n background-color: \", \";\\n z-index: 1;\\n &:not(:first-of-type) {\\n margin-left: -\", \";\\n }\\n [dir='rtl'] & {\\n margin-left: 0;\\n &:not(:first-of-type) {\\n margin-right: -\", \";\\n }\\n }\\n & div {\\n overflow: hidden;\\n }\\n \"])), sysBorderRadiusInteractive, sysColorBackgroundMain, ppuiAvatarStackSpacing, ppuiAvatarStackSpacing);\n var label = css(_templateObject3$1 || (_templateObject3$1 = _taggedTemplateLiteral([\"\\n label: label;\\n \", \";\\n margin-left: \", \";\\n margin-right: 0;\\n \", \";\\n [dir='rtl'] & {\\n margin-left: 0;\\n margin-right: \", \";\\n }\\n \"])), caption({\n color: sysColorBackgroundMediumContrast\n }), sysSpaceSm, ellipsis, sysSpaceSm);\n return {\n base: base,\n avatar: avatar,\n screenReader: screenReader,\n label: label\n };\n}\n\nvar PREFIX_COMPONENT = 'avatarStacked';\nvar DISPLAY_LIMIT_STACK = 3;\n\nvar _excluded$1 = [\"className\", \"size\", \"label\", \"isLabelHidden\", \"remainingCount\", \"children\"];\n\nvar renderChildren = function (children, size, _styles) {\n var avatarComponents = []; // Only take specified items for displaying\n\n children = Array.isArray(children) && children.length > DISPLAY_LIMIT_STACK ? children.slice(0, DISPLAY_LIMIT_STACK) : children;\n React.Children.forEach(children, function (child, index) {\n var avatar = jsx(ClassNames, {\n key: \"\".concat(PREFIX_COMPONENT, \"__\").concat(index),\n \"data-ppui\": \"true\"\n }, function (_ref) {\n var css = _ref.css;\n return jsx(\"div\", {\n className: css(_styles.avatar),\n \"data-ppui\": \"true\"\n }, React.cloneElement(child, {\n size: size\n }));\n });\n avatarComponents.push(avatar);\n });\n return avatarComponents;\n};\n\nvar AvatarStack = function (_ref2) {\n var className = _ref2.className,\n size = _ref2.size,\n _ref2$label = _ref2.label,\n label = _ref2$label === void 0 ? 'default' : _ref2$label,\n isLabelHidden = _ref2.isLabelHidden,\n remainingCount = _ref2.remainingCount,\n children = _ref2.children,\n rest = _objectWithoutProperties(_ref2, _excluded$1);\n\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles$1(tokens);\n }, [tokens]);\n\n var labelStyles = [_styles.label, isLabelHidden && _styles.screenReader];\n size = 'xs'; // only `xs` size is allowed\n\n return jsx(\"div\", _extends({\n className: className,\n css: _styles.base,\n \"data-ppui-info\": \"avatar-stack_4.5.6\"\n }, rest), renderChildren(children, size, _styles), jsx(\"span\", {\n css: labelStyles,\n \"data-ppui\": \"true\"\n }, label));\n};\n\nvar _templateObject$2, _templateObject2$2;\nfunction styles$2(tokens) {\n /* istanbul ignore next */\n if (!Object.keys(tokens).length) {\n // eslint-disable-next-line no-console\n devWarning('Missing Emotion theme. Use ThemeProvider from @emotion/react to pass a valid theme from pp-react.');\n return {};\n }\n\n var sysSpaceMd = tokens.sysSpaceMd,\n sysSpaceSm = tokens.sysSpaceSm,\n sysColorBackgroundHighContrast = tokens.sysColorBackgroundHighContrast;\n\n var _textStyles = textStyles(tokens),\n caption = _textStyles.caption;\n\n var _utilStyles = utilStyles(tokens),\n focusStyles = _utilStyles.focusStyles;\n\n var base = css(_templateObject$2 || (_templateObject$2 = _taggedTemplateLiteral([\"\\n label: avatar_button_base;\\n position: relative;\\n display: flex;\\n flex-direction: column;\\n align-items: center;\\n padding: \", \" 0;\\n min-height: \", \";\\n width: \", \";\\n word-wrap: break-word;\\n background: none;\\n border: none;\\n \", \"\\n\\n &:focus, &:hover {\\n cursor: pointer;\\n }\\n\\n &:focus > span:first-of-type,\\n &:hover > span:first-of-type {\\n -webkit-text-stroke-width: \", \";\\n }\\n\\n &:hover {\\n span:last-of-type {\\n text-decoration: underline;\\n }\\n }\\n\\n &:focus {\\n outline: none;\\n & > div:first-of-type {\\n \", \"\\n }\\n span:last-of-type {\\n text-decoration: underline;\\n }\\n }\\n \"])), sysSpaceMd, '7.25rem', '6rem', caption({\n color: sysColorBackgroundHighContrast\n }), '0.0421875rem', focusStyles.focusElement);\n var label = css(_templateObject2$2 || (_templateObject2$2 = _taggedTemplateLiteral([\"\\n label: avatar_button_label;\\n text-align: center;\\n padding: \", \" \", \" 0 \", \";\\n width: inherit;\\n display: -webkit-box;\\n -webkit-line-clamp: 2;\\n -webkit-box-orient: vertical;\\n overflow: hidden;\\n \"])), sysSpaceSm, sysSpaceSm, sysSpaceSm);\n return {\n base: base,\n label: label\n };\n}\n\nvar _excluded$2 = [\"className\", \"label\", \"children\", \"as\"];\nvar AvatarButton = forwardRef(function (_ref, ref) {\n var className = _ref.className,\n _ref$label = _ref.label,\n label = _ref$label === void 0 ? 'default' : _ref$label,\n children = _ref.children,\n as = _ref.as,\n rest = _objectWithoutProperties(_ref, _excluded$2);\n\n var tokens = useTheme(); // Fetch tokens from Emotion context\n\n var _styles = useMemo(function () {\n return styles$2(tokens);\n }, [tokens]); // Avatar size fixed to 'md' for Avatar Button\n\n\n var avatar = React.cloneElement(children, {\n size: 'md',\n 'aria-hidden': 'true'\n });\n return jsx(as || 'button', _extends({\n role: \"button\",\n css: _styles.base,\n className: className,\n tabIndex: 0,\n ref: ref\n }, rest, {\n \"data-ppui\": \"true\"\n }), avatar, jsx(\"span\", {\n css: _styles.label,\n \"data-ppui\": \"true\"\n }, label));\n});\n\nexport { Avatar, AvatarButton, AvatarStack, styles$2 as avatarButtonStyles, styles$1 as avatarStackStyles, styles as avatarStyles };\n","import _extends from '@babel/runtime/helpers/esm/extends';\nimport _slicedToArray from '@babel/runtime/helpers/esm/slicedToArray';\nimport _objectWithoutProperties from '@babel/runtime/helpers/esm/objectWithoutProperties';\nimport { useRef, useState, useLayoutEffect, useMemo } from 'react';\nimport { Button } from '@paypalcorp/pp-react-buttons';\nimport { IconButton } from '@paypalcorp/pp-react-icon-button';\nimport { CloseIcon } from '@paypalcorp/pp-react-icons';\nimport ReactDOM from 'react-dom';\nimport { css, useTheme, jsx } from '@emotion/react';\nimport _taggedTemplateLiteral from '@babel/runtime/helpers/esm/taggedTemplateLiteral';\nimport { math } from 'polished';\nimport { textStyles } from '@paypalcorp/pp-react-text';\nimport { utilStyles, devWarning, ZINDEX_COACHTIP, uniqueId } from '@paypalcorp/pp-react-utils';\n\nvar _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8;\nfunction styles(tokens) {\n var sysSpaceXl = tokens.sysSpaceXl,\n sysSizePointerWidthLg = tokens.sysSizePointerWidthLg;\n\n var _utilStyles = utilStyles(tokens),\n caretStyles = _utilStyles.caretStyles;\n\n var coachtipCaretVerticalOffset = math(\"\".concat(sysSizePointerWidthLg, \"/2\"));\n var positionTopLeft = css(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n label: position_top_left;\\n \", \";\\n \", \";\\n \"])), caretStyles.positionTop(coachtipCaretVerticalOffset), caretStyles.positionShiftLeft(sysSpaceXl));\n var positionTopCenter = css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n label: position_top_center;\\n \", \";\\n \", \";\\n \"])), caretStyles.positionTop(coachtipCaretVerticalOffset), caretStyles.positionCenter(sysSizePointerWidthLg));\n var positionTopRight = css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral([\"\\n label: position_top_right;\\n \", \";\\n \", \";\\n \"])), caretStyles.positionTop(coachtipCaretVerticalOffset), caretStyles.positionShiftRight(sysSpaceXl));\n var positionLeft = css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral([\"\\n label: position_left;\\n \", \";\\n \"])), caretStyles.positionLeft(coachtipCaretVerticalOffset));\n var positionRight = css(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral([\"\\n label: position_right;\\n \", \";\\n \"])), caretStyles.positionRight(coachtipCaretVerticalOffset));\n var positionBottomLeft = css(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral([\"\\n label: position_bottom_left;\\n \", \";\\n \", \";\\n \"])), caretStyles.positionBottom(coachtipCaretVerticalOffset), caretStyles.positionShiftLeft(sysSpaceXl));\n var positionBottomCenter = css(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral([\"\\n label: position_bottom_center;\\n \", \";\\n \", \";\\n \"])), caretStyles.positionBottom(coachtipCaretVerticalOffset), caretStyles.positionCenter(sysSizePointerWidthLg));\n var positionBottomRight = css(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral([\"\\n label: position_bottom_right;\\n \", \";\\n \", \";\\n \"])), caretStyles.positionBottom(coachtipCaretVerticalOffset), caretStyles.positionShiftRight(sysSpaceXl));\n return {\n positionCoachTip: function positionCoachTip(position) {\n return {\n 'top-left': positionTopLeft,\n 'top-center': positionTopCenter,\n 'top-right': positionTopRight,\n left: positionLeft,\n right: positionRight,\n 'bottom-left': positionBottomLeft,\n 'bottom-center': positionBottomCenter,\n 'bottom-right': positionBottomRight\n }[position];\n }\n };\n}\n\nvar _templateObject$1, _templateObject2$1, _templateObject3$1, _templateObject4$1, _templateObject5$1, _templateObject6$1, _templateObject7$1, _templateObject8$1, _templateObject9, _templateObject10;\nfunction styles$1(tokens) {\n /* istanbul ignore next */\n if (!Object.keys(tokens).length) {\n devWarning('Missing Emotion theme. Use ThemeProvider from @emotion/react to pass a valid theme from pp-react.');\n return {};\n }\n\n var sysBorderRadiusSm = tokens.sysBorderRadiusSm,\n sysColorBackgroundSurface = tokens.sysColorBackgroundSurface,\n sysSpaceMd = tokens.sysSpaceMd,\n sysSpaceXl = tokens.sysSpaceXl,\n sysSpaceXs = tokens.sysSpaceXs,\n sysSizeIconXs = tokens.sysSizeIconXs,\n sysSizePointerWidthLg = tokens.sysSizePointerWidthLg,\n sysSizeTapTargetSm = tokens.sysSizeTapTargetSm;\n\n var _utilStyles = utilStyles(tokens),\n caretStyles = _utilStyles.caretStyles,\n elevationStyles = _utilStyles.elevationStyles;\n\n var _textStyles = textStyles(tokens),\n textBody = _textStyles.body,\n textCaption = _textStyles.caption,\n title = _textStyles.title;\n\n var _caretPosStyles = styles(tokens),\n positionCoachTip = _caretPosStyles.positionCoachTip; // Calc variables:\n\n\n var coachtipHeaderCloseBtnMarginCalc = math(\"(\".concat(sysSizeTapTargetSm, \" - \").concat(sysSizeIconXs, \")/2\"));\n var coachtipHeaderCloseBtnSpacingCalc = math(\"(\".concat(coachtipHeaderCloseBtnMarginCalc, \" + \").concat(sysSizeIconXs, \")/2\"));\n var base = css(_templateObject$1 || (_templateObject$1 = _taggedTemplateLiteral([\"\\n label: coach-tip_base;\\n display: none;\\n position: absolute;\\n background-color: \", \";\\n max-width: \", \";\\n padding: \", \";\\n border-radius: \", \";\\n z-index: \", \";\\n \", \";\\n \", \"\\n &:focus {\\n outline: none;\\n }\\n \"])), sysColorBackgroundSurface, '20rem', sysSpaceXl, sysBorderRadiusSm, ZINDEX_COACHTIP, caretStyles.base(sysSizePointerWidthLg), elevationStyles.level3);\n var header = css(_templateObject2$1 || (_templateObject2$1 = _taggedTemplateLiteral([\"\\n label: header;\\n display: flex;\\n width: 100%;\\n justify-content: space-between;\\n \"])));\n var headerText = css(_templateObject3$1 || (_templateObject3$1 = _taggedTemplateLiteral([\"\\n label: header_text;\\n \", \";\\n display: inline-block;\\n margin-bottom: \", \";\\n max-width: calc(100% - \", \");\\n \"])), title(), sysSpaceMd, coachtipHeaderCloseBtnSpacingCalc);\n var noHeaderContentText = css(_templateObject4$1 || (_templateObject4$1 = _taggedTemplateLiteral([\"\\n label: no_header;\\n display: inline-block;\\n max-width: calc(100% - \", \");\\n \"])), coachtipHeaderCloseBtnSpacingCalc);\n var footer = css(_templateObject5$1 || (_templateObject5$1 = _taggedTemplateLiteral([\"\\n label: footer;\\n display: flex;\\n align-items: center;\\n margin-top: \", \";\\n \"])), sysSpaceMd);\n var footerLabel = css(_templateObject6$1 || (_templateObject6$1 = _taggedTemplateLiteral([\"\\n label: footer_label;\\n \", \";\\n display: inline-block;\\n flex: 1 1 auto;\\n \"])), textCaption());\n var footerButtonContainer = css(_templateObject7$1 || (_templateObject7$1 = _taggedTemplateLiteral([\"\\n label: footer_button_container;\\n display: inline-block;\\n \"])));\n var footerButton = css(_templateObject8$1 || (_templateObject8$1 = _taggedTemplateLiteral([\"\\n label: footer_button;\\n margin-left: \", \";\\n [dir='rtl'] & {\\n margin-left: 0;\\n margin-right: \", \";\\n }\\n \"])), sysSpaceXl, sysSpaceXl);\n var contentText = css(_templateObject9 || (_templateObject9 = _taggedTemplateLiteral([\"\\n label: text;\\n \", \";\\n \"])), textBody());\n var closeButton = css(_templateObject10 || (_templateObject10 = _taggedTemplateLiteral([\"\\n label: close_button;\\n margin-top: -\", \";\\n margin-right: -\", \";\\n padding: \", \";\\n z-index: 1;\\n [dir='rtl'] & {\\n margin-right: 0;\\n margin-left: -\", \";\\n }\\n \"])), sysSpaceMd, sysSpaceMd, sysSpaceXs, sysSpaceMd);\n return {\n base: base,\n header: header,\n headerText: headerText,\n contentText: contentText,\n noHeaderContentText: noHeaderContentText,\n footer: footer,\n footerLabel: footerLabel,\n footerButtonContainer: footerButtonContainer,\n footerButton: footerButton,\n closeButton: closeButton,\n positionCoachTip: positionCoachTip\n };\n}\n\nvar _excluded = [\"id\", \"headerText\", \"text\", \"caretPos\", \"prevButtonText\", \"nextButtonText\", \"onPrevButtonClick\", \"onNextButtonClick\", \"paginationText\", \"targetElementId\", \"targetElementRef\", \"containerRef\", \"isOpen\", \"onClose\", \"className\", \"closeButtonLabel\", \"headerTextClassName\", \"contentTextClassName\", \"paginationTextClassName\", \"prevButtonClassName\", \"nextButtonClassName\"];\n\nvar getRefCurrent = function (myref) {\n return (\n /* istanbul ignore next */\n myref && myref.current ? myref.current : null\n );\n};\n\nvar CoachTip = function (_ref) {\n var _styles$positionCoach;\n\n var _ref$id = _ref.id,\n id = _ref$id === void 0 ? uniqueId('CoachTip_') : _ref$id,\n headerText = _ref.headerText,\n _ref$text = _ref.text,\n text = _ref$text === void 0 ? 'default' : _ref$text,\n _ref$caretPos = _ref.caretPos,\n caretPos = _ref$caretPos === void 0 ? 'bottom-left' : _ref$caretPos,\n prevButtonText = _ref.prevButtonText,\n nextButtonText = _ref.nextButtonText,\n onPrevButtonClick = _ref.onPrevButtonClick,\n onNextButtonClick = _ref.onNextButtonClick,\n paginationText = _ref.paginationText,\n targetElementId = _ref.targetElementId,\n targetElementRef = _ref.targetElementRef,\n containerRef = _ref.containerRef,\n _ref$isOpen = _ref.isOpen,\n isOpen = _ref$isOpen === void 0 ? true : _ref$isOpen,\n onClose = _ref.onClose,\n className = _ref.className,\n _ref$closeButtonLabel = _ref.closeButtonLabel,\n closeButtonLabel = _ref$closeButtonLabel === void 0 ? 'close coach tip' : _ref$closeButtonLabel,\n headerTextClassName = _ref.headerTextClassName,\n contentTextClassName = _ref.contentTextClassName,\n paginationTextClassName = _ref.paginationTextClassName,\n prevButtonClassName = _ref.prevButtonClassName,\n nextButtonClassName = _ref.nextButtonClassName,\n rest = _objectWithoutProperties(_ref, _excluded);\n\n /* istanbul ignore next */\n if (!targetElementId) {\n devWarning('Required prop targetElementId missing.');\n }\n\n var coachTipRef = useRef();\n var focusableEls = document.querySelectorAll('a, button, textarea, input, select');\n var initialWidth = useRef();\n var caretWidth;\n var caretHeight;\n var rootFontSize;\n var caretOffset;\n var caretSpaceHorizontal;\n\n var _useState = useState(isOpen),\n _useState2 = _slicedToArray(_useState, 2),\n show = _useState2[0],\n setShow = _useState2[1];\n /* istanbul ignore next */\n\n\n var getCaretDimensions = function () {\n var coachTip = getRefCurrent(coachTipRef);\n\n if (coachTip) {\n var rootFontSizePx = window && window.getComputedStyle(document.body).getPropertyValue('font-size') || '16px';\n rootFontSize = parseInt(rootFontSizePx.split('px')[0], 10);\n caretWidth = 0.9375 * rootFontSize; // 15\n\n caretHeight = 0.5625 * rootFontSize; // 9\n\n caretOffset = 0.25 * rootFontSize; // 4 between caret and tooltip icon\n\n caretSpaceHorizontal = 1.5 * rootFontSize; // 24 from caret to tooltip edge\n }\n };\n /* istanbul ignore next */\n\n\n var getWindowBoundary = function () {\n var coachTipWindow = getRefCurrent(containerRef);\n\n if (coachTipWindow) {\n var pos = coachTipWindow.getBoundingClientRect();\n return {\n windowEl: coachTipWindow,\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,\n bottom: window.innerHeight,\n left: 0\n };\n };\n\n var\n /* istanbul ignore next */\n positionSelf = function (coachTip, targetEl, width, height) {\n if (coachTip && targetEl) {\n var targetElWidth = targetEl.offsetWidth;\n var targetElHeight = targetEl.offsetHeight; // start from targetEl position then move accordingly\n\n var scrollX = window.scrollX || window.pageXOffset;\n var scrollY = window.scrollY || window.pageYOffset;\n var offsetLeft = targetEl.getBoundingClientRect().left + scrollX;\n var offsetTop = targetEl.getBoundingClientRect().top + scrollY;\n var spacingOffset = caretSpaceHorizontal + caretWidth / 2;\n var moveDown = offsetTop + targetElHeight + caretHeight + caretOffset;\n var moveUp = offsetTop - height - caretHeight - caretOffset;\n var shiftLeft = offsetLeft - spacingOffset + targetElWidth / 2;\n var shiftRight = offsetLeft - width + spacingOffset + targetElWidth / 2;\n var shiftCenter = offsetLeft - width / 2 + targetElWidth / 2;\n /* istanbul ignore next */\n\n switch (caretPos) {\n case 'top-left':\n offsetLeft = shiftLeft;\n offsetTop = moveDown;\n break;\n\n case 'top-center':\n offsetLeft = shiftCenter;\n offsetTop = moveDown;\n break;\n\n case 'top-right':\n offsetLeft = shiftRight;\n offsetTop = moveDown;\n break;\n\n case 'left':\n offsetLeft = offsetLeft + targetElWidth + caretWidth + caretOffset;\n offsetTop = offsetTop - height / 2 + targetElHeight / 2;\n break;\n\n case 'right':\n offsetLeft = offsetLeft - width - caretWidth - caretOffset;\n offsetTop = offsetTop - height / 2 + targetElHeight / 2;\n break;\n\n case 'bottom-right':\n offsetLeft = shiftRight;\n offsetTop = moveUp;\n break;\n\n case 'bottom-center':\n offsetLeft = shiftCenter;\n offsetTop = moveUp;\n break;\n\n default:\n // 'bottom-left':\n offsetLeft = shiftLeft;\n offsetTop = moveUp;\n }\n\n var _containerElm = getRefCurrent(containerRef);\n\n if (_containerElm) {\n var containerPos = _containerElm.getBoundingClientRect();\n\n var scrollTop = _containerElm.scrollTop;\n var scrollLeft = _containerElm.scrollLeft;\n offsetTop = offsetTop - containerPos.top + scrollTop - scrollY;\n offsetLeft = offsetLeft - containerPos.left + scrollLeft - scrollX;\n }\n\n coachTip.style.top = \"\".concat(offsetTop, \"px\");\n coachTip.style.left = \"\".concat(offsetLeft, \"px\");\n }\n };\n\n var initializeCoachTip = function () {\n var coachTip = getRefCurrent(coachTipRef);\n /* istanbul ignore next */\n\n if (coachTip) {\n initialWidth.current = coachTip.getBoundingClientRect().width || 320;\n getCaretDimensions();\n coachTip.focus();\n }\n }; // Coach Tip can be narrower than the max width depending on where it is positioned,\n // (e.g. if position close to right of window it will be narrow and tall, therefore,\n // its width must determined before positioning since Coach Tip's width is used in\n // positioning calcs.\n\n /* istanbul ignore next */\n\n\n var refreshCoachtip = function () {\n var coachTip = getRefCurrent(coachTipRef);\n var targetEl = targetElementRef ? getRefCurrent(targetElementRef) : document.getElementById(targetElementId);\n\n if (coachTip && targetEl) {\n var coachTipMaxWidthPx = getComputedStyle(coachTip, 'style').maxWidth;\n var coachTipMaxWidth = parseInt(coachTipMaxWidthPx.split('px')[0], 10) || 320;\n var coachTipWindowPos = getWindowBoundary();\n var targetLeft = targetEl.getBoundingClientRect().left;\n var targetWidth = targetEl.offsetWidth;\n var caretCenterToCorner = caretSpaceHorizontal + caretWidth / 2; // Update display property here instead of css to\n // get coach tip height/width to avoid page scroll\n\n coachTip.style.display = 'inline-block';\n var availableSpace;\n var maxWidth;\n initializeCoachTip();\n /* istanbul ignore next */\n\n switch (caretPos) {\n case 'top-left':\n case 'bottom-left':\n availableSpace = coachTipWindowPos.right - targetLeft - targetWidth / 2;\n maxWidth = availableSpace + caretCenterToCorner;\n break;\n\n case 'top-right':\n case 'bottom-right':\n availableSpace = targetLeft + targetWidth / 2;\n maxWidth = availableSpace + caretCenterToCorner;\n break;\n\n case 'top-center':\n case 'bottom-center':\n // find shorter side\n var availableLeftSpace = targetLeft + targetWidth / 2;\n var availableRightSpace = coachTipWindowPos.right - targetLeft - targetWidth / 2;\n availableSpace = availableLeftSpace > availableRightSpace ? availableRightSpace : availableLeftSpace;\n maxWidth = availableSpace * 2;\n break;\n\n case 'right':\n availableSpace = targetLeft;\n maxWidth = availableSpace - caretOffset - caretWidth;\n break;\n\n case 'left':\n availableSpace = coachTipWindowPos.right - targetLeft - targetWidth;\n maxWidth = availableSpace - caretOffset - caretWidth;\n break;\n\n default:\n maxWidth = coachTipMaxWidth;\n }\n\n var width = maxWidth < initialWidth.current ? maxWidth : initialWidth.current;\n var height = coachTip.offsetHeight;\n positionSelf(coachTip, targetEl, width, height);\n }\n };\n\n useLayoutEffect(function () {\n initializeCoachTip();\n window.addEventListener('resize', refreshCoachtip);\n return function () {\n window.removeEventListener('resize', refreshCoachtip);\n\n if (focusableEls.length > 0) {\n var initFocus = focusableEls[0];\n initFocus.focus();\n }\n };\n }, []);\n useLayoutEffect(function () {\n setShow(isOpen);\n\n if (isOpen) {\n refreshCoachtip();\n }\n\n return function () {};\n }, [isOpen, headerText, text, nextButtonText, prevButtonText, paginationText]);\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles$1(tokens);\n }, [tokens]);\n\n var coachTipCssVal = [_styles.base, (_styles$positionCoach = _styles.positionCoachTip) === null || _styles$positionCoach === void 0 ? void 0 : _styles$positionCoach.call(_styles, caretPos)];\n var closeButton = jsx(\"span\", {\n css: _styles.closeButton,\n \"data-ppui\": \"true\"\n }, jsx(IconButton, _extends({}, {\n buttonType: 'tertiary',\n size: 'sm',\n svgIconComponent: CloseIcon\n }, {\n onClick: function handleClose(e) {\n if (onClose) {\n onClose(e);\n } else {\n setShow(false);\n }\n /* istanbul ignore next */\n\n\n if (focusableEls.length > 0) {\n var nextFocus = focusableEls[0];\n nextFocus.focus();\n }\n },\n \"data-ppui\": \"true\"\n }), closeButtonLabel));\n var footerButtons = jsx(\"div\", {\n css: _styles.footerButtonContainer,\n \"data-ppui\": \"true\"\n }, prevButtonText && jsx(Button, {\n tertiary: true,\n css: _styles.footerButton,\n className: prevButtonClassName,\n onClick: onPrevButtonClick,\n \"data-ppui\": \"true\"\n }, prevButtonText), nextButtonText && jsx(Button, {\n tertiary: true,\n css: _styles.footerButton,\n className: nextButtonClassName,\n onClick: onNextButtonClick,\n \"data-ppui\": \"true\"\n }, nextButtonText));\n var label = jsx(\"div\", {\n css: _styles.footerLabel,\n className: paginationTextClassName,\n \"data-ppui\": \"true\"\n }, paginationText);\n var coachTipElement = jsx(\"div\", _extends({\n css: coachTipCssVal,\n className: className,\n id: id,\n ref: coachTipRef,\n role: \"dialog\",\n \"aria-hidden\": !show,\n \"data-ppui-info\": \"coach-tip_2.7.12\"\n }, rest), function header() {\n if (headerText) {\n return jsx(\"div\", {\n css: _styles.header,\n \"data-ppui\": \"true\"\n }, jsx(\"div\", {\n css: _styles.headerText,\n className: headerTextClassName,\n \"data-ppui\": \"true\"\n }, headerText), closeButton);\n }\n\n return jsx(\"div\", {\n css: _styles.header,\n \"data-ppui\": \"true\"\n }, jsx(\"div\", {\n css: [_styles.contentText, _styles.noHeaderContentText],\n className: contentTextClassName,\n \"data-ppui\": \"true\"\n }, text), closeButton);\n }(), headerText && jsx(\"div\", {\n css: _styles.contentText,\n className: contentTextClassName,\n \"data-ppui\": \"true\"\n }, text), (paginationText || prevButtonText || nextButtonText) && jsx(\"div\", {\n css: _styles.footer,\n \"data-ppui\": \"true\"\n }, paginationText && label, footerButtons));\n var containerElm = containerRef && containerRef.current;\n return show && ReactDOM.createPortal(coachTipElement, containerElm || document.body);\n};\n\nexport { CoachTip, styles$1 as coachTipStyles };\n","import _extends from '@babel/runtime/helpers/esm/extends';\nimport _toConsumableArray from '@babel/runtime/helpers/esm/toConsumableArray';\nimport _slicedToArray from '@babel/runtime/helpers/esm/slicedToArray';\nimport _objectWithoutProperties from '@babel/runtime/helpers/esm/objectWithoutProperties';\nimport React, { useRef, useEffect, useMemo } from 'react';\nimport { TextInput } from '@paypalcorp/pp-react-text-input';\nimport { CriticalIcon } from '@paypalcorp/pp-react-icons';\nimport { css, useTheme, jsx, ClassNames } from '@emotion/react';\nimport { devWarning, KeyboardCode } from '@paypalcorp/pp-react-utils';\nimport _taggedTemplateLiteral from '@babel/runtime/helpers/esm/taggedTemplateLiteral';\nimport { textStyles } from '@paypalcorp/pp-react-text';\n\nvar _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9;\nfunction styles(tokens) {\n /* istanbul ignore next */\n if (!Object.keys(tokens).length) {\n devWarning('Missing Emotion theme. Use ThemeProvider from @emotion/react to pass a valid theme from pp-react.');\n return {};\n }\n\n // 40px\n var sysColorBackgroundMediumContrast = tokens.sysColorBackgroundMediumContrast,\n sysSpaceSm = tokens.sysSpaceSm,\n sysTypographyFieldValueLgLineHeight = tokens.sysTypographyFieldValueLgLineHeight,\n sysSpaceXs = tokens.sysSpaceXs,\n sysSizeMediaSm = tokens.sysSizeMediaSm,\n sysSizeFieldSm = tokens.sysSizeFieldSm,\n sysColorErrorMain = tokens.sysColorErrorMain;\n\n var _textStyles = textStyles(tokens),\n headingSm = _textStyles.headingSm,\n caption = _textStyles.caption;\n\n var base = css(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n label: code_input_base;\\n display: inline-block;\\n \"])));\n var codeInputTextInput = css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n label: code_input_text_input;\\n width: \", \";\\n margin-right: \", \"; // 8px, gap property doesn't work\\n margin-bottom: \", \"; // 8px, gap property doesn't work\\n \", \";\\n @media (max-width: \", \") {\\n width: \", \";\\n }\\n \"])), sysSizeFieldSm, sysSpaceSm, sysSpaceSm, headingSm(), sysSizeMediaSm, '2.5rem');\n var codeInputTextInputWithError = css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral([\"\\n label: code_input_text_input_with_error;\\n padding: 0;\\n \"])));\n var codeInputTextInputControl = css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral([\"\\n label: code_input_text_input_control;\\n \", \";\\n text-align: center;\\n padding: 0;\\n caret-color: transparent; // change the blinking caret color in text input\\n -webkit-touch-callout: none; // iOS Safari disable text selection highlight\\n\\n // hide counter buttons for type:number (safari/chrome)\\n &::-webkit-outer-spin-button,\\n &::-webkit-inner-spin-button {\\n -webkit-appearance: none;\\n margin: 0;\\n }\\n // hide counter buttons for type:number (firefox)\\n &[type='number'] {\\n -moz-appearance: textfield;\\n }\\n\\n // remove text highlight\\n &::selection {\\n background: transparent;\\n }\\n &::-moz-selection {\\n background: transparent;\\n }\\n\\n // overwrite to fix the issue with bottom text getting cropped on chrome\\n &:first-line {\\n line-height: \", \";\\n }\\n \"])), headingSm(), sysTypographyFieldValueLgLineHeight);\n var inputWrapper = css(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral([\"\\n label: input_wrapper;\\n display: flex;\\n margin-right: -\", \"; // -8px to compensate spacing on input wrapper\\n margin-bottom: -\", \"; // -8px to compensate spacing on input wrapper\\n flex-wrap: wrap;\\n [dir='rtl'] & {\\n direction: ltr; // use ltr direction for input fields\\n }\\n \"])), sysSpaceSm, sysSpaceSm);\n var error = css(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral([\"\\n label: error;\\n margin-top: \", \";\\n display: flex;\\n align-items: center;\\n \"])), sysSpaceXs);\n var errorText = css(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral([\"\\n label: error_text;\\n \", \";\\n color: \", \";\\n flex-grow: 1;\\n width: 0;\\n \"])), caption(), sysColorBackgroundMediumContrast);\n var errorIcon = css(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral([\"\\n label: error_icon;\\n color: \", \";\\n margin-right: \", \";\\n [dir='rtl'] & {\\n margin-right: 0;\\n margin-left: \", \";\\n }\\n \"])), sysColorErrorMain, sysSpaceXs, sysSpaceXs);\n var errorTextList = css(_templateObject9 || (_templateObject9 = _taggedTemplateLiteral([\"\\n label: error_text_list;\\n list-style: none;\\n padding: 0;\\n margin: 0;\\n \"])));\n return {\n base: base,\n codeInputTextInput: codeInputTextInput,\n codeInputTextInputWithError: codeInputTextInputWithError,\n codeInputTextInputControl: codeInputTextInputControl,\n inputWrapper: inputWrapper,\n error: error,\n errorText: errorText,\n errorIcon: errorIcon,\n errorTextList: errorTextList\n };\n}\n\nvar _excluded = [\"alphaCharCapitalize\", \"className\", \"errorText\", \"error\", \"name\", \"id\", \"inputClassName\", \"inputWrapperClassName\", \"onChange\", \"pinLength\", \"value\", \"autoFocus\", \"onBlur\", \"onFocus\", \"numberOnly\", \"wrapperAriaLabel\"];\nvar CodeInput = React.forwardRef(function (_ref, ref) {\n var _ref$alphaCharCapital = _ref.alphaCharCapitalize,\n alphaCharCapitalize = _ref$alphaCharCapital === void 0 ? false : _ref$alphaCharCapital,\n className = _ref.className,\n errorText = _ref.errorText,\n _ref$error = _ref.error,\n error = _ref$error === void 0 ? !!errorText : _ref$error,\n _ref$name = _ref.name,\n name = _ref$name === void 0 ? 'default' : _ref$name,\n _ref$id = _ref.id,\n id = _ref$id === void 0 ? name : _ref$id,\n inputClassName = _ref.inputClassName,\n inputWrapperClassName = _ref.inputWrapperClassName,\n _ref$onChange = _ref.onChange,\n onChange = _ref$onChange === void 0 ? devWarning('Required prop `onChange` is missing') : _ref$onChange,\n _ref$pinLength = _ref.pinLength,\n pinLength = _ref$pinLength === void 0 ? 6 : _ref$pinLength,\n _ref$value = _ref.value,\n value = _ref$value === void 0 ? '' : _ref$value,\n autoFocus = _ref.autoFocus,\n _ref$onBlur = _ref.onBlur,\n onBlur = _ref$onBlur === void 0 ? null : _ref$onBlur,\n _ref$onFocus = _ref.onFocus,\n onFocus = _ref$onFocus === void 0 ? null : _ref$onFocus,\n _ref$numberOnly = _ref.numberOnly,\n numberOnly = _ref$numberOnly === void 0 ? false : _ref$numberOnly,\n _ref$wrapperAriaLabel = _ref.wrapperAriaLabel,\n wrapperAriaLabel = _ref$wrapperAriaLabel === void 0 ? 'group' : _ref$wrapperAriaLabel,\n rest = _objectWithoutProperties(_ref, _excluded);\n\n var internalRef = useRef([]);\n var inputFieldRef = ref || internalRef; // pin length 3-6\n\n var MAX_PIN = 6;\n var NUM_REGEX = /^[0-9]+$/;\n var keyEventsArry = [KeyboardCode.NAME_BACKSPACE, KeyboardCode.NAME_DELETE, KeyboardCode.NAME_TAB];\n\n var _React$useState = React.useState(false),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n focused = _React$useState2[0],\n setFocused = _React$useState2[1]; // check pin length and convert into array\n\n\n var pinArray = pinLength < 3 || pinLength >= MAX_PIN ? _toConsumableArray(Array(MAX_PIN).keys()) : _toConsumableArray(Array(pinLength).keys()); // convert it into an array and remove empty value\n\n var valueArr = value && value.split('').map(function (val) {\n return val === ' ' ? '' : val;\n }); // generate the final code\n\n var generateCode = function () {\n // generate the final code and add spaces for empty value\n var pinArr = inputFieldRef.current.map(function (input) {\n return input.value === '' ? ' ' : input.value;\n }).join(''); // onChange is called on each key\n\n if (onChange) {\n onChange(pinArr);\n }\n }; // focus on field provided an index valid\n\n\n var focusOnField = function (idx) {\n // check if idx is in the range\n\n /* istanbul ignore next */\n if (inputFieldRef && inputFieldRef.current[idx]) {\n inputFieldRef.current[idx].focus();\n }\n };\n /**\n * Process each input characters based on the `alphaCharCapitalize` prop and assign it into the input elements.\n * @param pastedArr string[]\n * @param idx number\n * @returns void\n */\n\n\n var processInputCharacters = function (characterList, idx) {\n var fieldLength = inputFieldRef.current.length;\n var allowedCharactersLength = Math.min(characterList === null || characterList === void 0 ? void 0 : characterList.length, fieldLength);\n var index = idx;\n\n for (var i = 0; i < allowedCharactersLength; i++) {\n inputFieldRef.current[index].value = alphaCharCapitalize ? characterList[i].toUpperCase() : characterList[i];\n index++; // break the loop if index is equal to length of the field\n\n if (index === fieldLength) {\n break;\n }\n } // focus on next field or focus on the last field\n\n\n focusOnField(index === fieldLength ? index - 1 : index);\n };\n\n var handleInput = function (evt, idx) {\n // move focus fwd if there is a value\n if (evt.target.value !== '') {\n focusOnField(idx + 1);\n } // capitalize the characters\n\n\n if (alphaCharCapitalize) {\n evt.target.value = evt.target.value.toUpperCase();\n } // if more than 1 characters split the values\n // iterate each character into single field.\n\n\n if (evt.target.value.length > 1) {\n var pastedArr = evt.target.value.replace(/\\s/g, '').split('');\n processInputCharacters(pastedArr, idx);\n }\n\n generateCode();\n };\n\n useEffect(function () {\n if (autoFocus) {\n focusOnField(0);\n }\n }, []);\n /* eslint-disable complexity */\n\n var handleKeyDown = function (evt, idx) {\n /* istanbul ignore next */\n var keyCode = evt.key || evt.keyCode;\n var KeyCode = new KeyboardCode(keyCode);\n\n if (KeyCode.IS_SPACEBAR || KeyCode.IS_HOME || KeyCode.IS_END || KeyCode.IS_ARROW_KEY) {\n evt.preventDefault();\n }\n\n if (KeyCode.IS_BACKSPACE || KeyCode.IS_DELETE) {\n /* istanbul ignore next */\n if (evt.target.value === '' || evt.target.value === ' ') {\n focusOnField(idx - 1);\n } else {\n /* istanbul ignore next */\n evt.target.value = ' ';\n /* istanbul ignore next */\n\n generateCode();\n }\n } else if (KeyCode.IS_ARROW_LEFT) {\n focusOnField(idx - 1); // move focus back\n } else if (KeyCode.IS_ARROW_RIGHT) {\n focusOnField(idx + 1); // move focus forward\n } else if (KeyCode.IS_HOME) {\n focusOnField(0); // move focus back\n } else if (KeyCode.IS_END) {\n focusOnField(pinLength - 1); // move focus to last\n } else {\n evt.target.select(); // select the value so it can be replaced\n } // to allow paste command ctrl + v / cmd + v\n\n\n if ((evt.ctrlKey || evt.metaKey) && keyCode === 'v') {\n return;\n } // limit users to allow only numeric value\n\n\n if (!keyCode.match(NUM_REGEX) && !keyEventsArry.includes(keyCode) && numberOnly) {\n evt.preventDefault();\n }\n };\n /* eslint-enable complexity */\n // set ref of each input field and manually add the value\n // to make it a controlled component\n\n\n var setRef = function (el, idx) {\n if (el) {\n inputFieldRef.current[idx] = el;\n inputFieldRef.current[idx].value = valueArr ? valueArr[idx] : '';\n }\n };\n\n var handleBlur = function (event) {\n /* istanbul ignore else */\n if (onBlur && !inputFieldRef.current.includes(event.relatedTarget)) {\n onBlur(event);\n setFocused(false);\n }\n };\n\n var handleFocus = function (event) {\n /* istanbul ignore else */\n event.target.select();\n\n if (onFocus && !focused) {\n setFocused(true);\n onFocus(event);\n }\n }; // handle paste\n\n\n var handlePaste = function (evt) {\n var clipboardValue = evt.clipboardData && evt.clipboardData.getData('text'); // ignore the default behavior, onPaste calls onChange\n\n evt.preventDefault();\n\n if (clipboardValue && !clipboardValue.match(NUM_REGEX) && numberOnly) {\n return;\n }\n\n var pastedArr = clipboardValue && clipboardValue.replace(/\\s/g, '').split('');\n /* istanbul ignore next */\n\n if ((evt.target.type === 'number' || numberOnly) && pastedArr.some(isNaN)) {\n return;\n }\n\n processInputCharacters(pastedArr, 0);\n generateCode();\n };\n\n var tokens = useTheme(); // Fetch tokens from Emotion context\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n var containerCSS = _styles.base;\n var loadInputField = pinArray.map(function (idx) {\n return jsx(ClassNames, {\n key: idx,\n \"data-ppui\": \"true\"\n }, function (_ref3) {\n var css = _ref3.css,\n cx = _ref3.cx;\n return jsx(TextInput, _extends({\n key: idx,\n className: cx(css([_styles.codeInputTextInput, errorText && _styles.error]), inputWrapperClassName),\n inputClassName: cx(css([_styles.codeInputTextInputControl, errorText && _styles.codeInputTextInputWithError]), inputClassName),\n \"aria-label\": \"\".concat(idx + 1, \"-\").concat(pinArray.length),\n name: \"\".concat(name, \"-\").concat(idx),\n id: \"ci-\".concat(id, \"-\").concat(idx),\n ref: function (el) {\n return setRef(el, idx);\n },\n onInput: function onInput(evt) {\n return handleInput(evt, idx);\n },\n onKeyDown: function onKeyDown(evt) {\n return handleKeyDown(evt, idx);\n },\n onPaste: function onPaste(evt) {\n return handlePaste(evt);\n },\n onFocus: handleFocus,\n onBlur: handleBlur,\n \"aria-describedby\": error ? \"message_\".concat(name) : null,\n error: error && !!errorText,\n pattern: numberOnly ? '[0-9]*' : ''\n }, rest, {\n \"data-ppui\": \"true\"\n }));\n });\n });\n return jsx(\"div\", {\n css: containerCSS,\n className: className,\n id: id,\n \"data-ppui-info\": \"code-input_2.3.9\"\n }, jsx(\"div\", {\n css: _styles.inputWrapper,\n role: \"group\",\n \"aria-label\": wrapperAriaLabel,\n \"data-ppui\": \"true\"\n }, loadInputField), errorText && function loadError() {\n var processText = Array.isArray(errorText) ? jsx(\"ul\", {\n css: _styles.errorTextList,\n \"data-ppui\": \"true\"\n }, errorText.map(function (text, index) {\n return jsx(\"li\", {\n key: \"text$-\".concat(index),\n \"data-ppui\": \"true\"\n }, text);\n })) : errorText;\n return jsx(ClassNames, {\n \"data-ppui\": \"true\"\n }, function (_ref2) {\n var css = _ref2.css;\n return jsx(\"div\", {\n css: _styles.error,\n id: \"message_\".concat(name),\n role: \"alert\",\n \"data-ppui\": \"true\"\n }, jsx(CriticalIcon // Refactor this with ClassName\n , {\n className: css(_styles.errorIcon),\n size: \"sm\",\n \"aria-hidden\": \"true\",\n \"data-ppui\": \"true\"\n }), jsx(\"span\", {\n css: _styles.errorText,\n \"data-ppui\": \"true\"\n }, processText));\n });\n }());\n});\n\nexport { CodeInput, styles as codeInputStyles };\n","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, { useContext } from 'react';\nimport { Combobox } from '@paypalcorp/pp-react-combobox';\nimport { IntlContext } from '@paypalcorp/pp-react-intl';\nimport { Flag } from '@paypalcorp/pp-react-flag';\nimport { devWarning } from '@paypalcorp/pp-react-utils';\n\nvar _excluded = [\"name\", \"value\", \"label\", \"countryList\", \"onOpen\", \"onChange\", \"onFocus\", \"sheetWrapperClassName\"],\n _excluded2 = [\"countryCode\", \"label\"];\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nvar CountryInput = function (_ref) {\n var _ref$name = _ref.name,\n name = _ref$name === void 0 ? 'default' : _ref$name,\n value = _ref.value,\n _ref$label = _ref.label,\n label = _ref$label === void 0 ? 'Country or region' : _ref$label,\n _ref$countryList = _ref.countryList,\n countryList = _ref$countryList === void 0 ? [] : _ref$countryList,\n onOpen = _ref.onOpen,\n onChange = _ref.onChange,\n _ref$onFocus = _ref.onFocus,\n onFocus = _ref$onFocus === void 0 ? null : _ref$onFocus,\n sheetWrapperClassName = _ref.sheetWrapperClassName,\n rest = _objectWithoutProperties(_ref, _excluded);\n\n /* istanbul ignore next */\n if (!countryList || !(countryList === null || countryList === void 0 ? void 0 : countryList.length)) {\n devWarning('Required prop `countryList` is missing.');\n }\n\n var intlContext = useContext(IntlContext);\n var options;\n\n var filterProps = function (country, displayNamesObj) {\n var countryCode = country.countryCode,\n optionLabel = country.label,\n optionRest = _objectWithoutProperties(country, _excluded2); // istanbul ignore next\n\n\n return _objectSpread({\n label: optionLabel || displayNamesObj && displayNamesObj.select(countryCode),\n value: countryCode,\n decoration: /*#__PURE__*/React.createElement(Flag, {\n countryCode: countryCode,\n size: \"md\",\n \"data-ppui\": \"true\"\n })\n }, optionRest);\n };\n /* istanbul ignore else */\n\n\n if (!intlContext || !intlContext.getDisplayNamesObject) {\n options = countryList.map(function (country) {\n return filterProps(country, null);\n });\n } else {\n var displayNamesObj = intlContext.getDisplayNamesObject({\n type: 'region'\n });\n options = countryList.map(function (country) {\n return filterProps(country, displayNamesObj);\n });\n }\n\n return /*#__PURE__*/React.createElement(Combobox, _extends({\n name: name,\n value: value,\n options: options,\n label: label,\n onOpen: onOpen,\n onChange: onChange,\n onFocus: onFocus,\n sheetWrapperClassName: sheetWrapperClassName,\n \"data-ppui-info\": \"country-input_2.5.12\"\n }, rest));\n};\n\nexport { CountryInput };\n","import _extends from '@babel/runtime/helpers/esm/extends';\nimport React, { useState, useMemo } from 'react';\nimport { MaskType, MaskedTextInput } from '@paypalcorp/pp-react-masked-text-input';\nimport { Tooltip } from '@paypalcorp/pp-react-tooltip';\nimport { Row, Col } from '@paypalcorp/pp-react-grid';\nimport { CreditCardIcon } from '@paypalcorp/pp-react-icons';\nimport _slicedToArray from '@babel/runtime/helpers/esm/slicedToArray';\nimport { css, useTheme, jsx, ClassNames } from '@emotion/react';\nimport _taggedTemplateLiteral from '@babel/runtime/helpers/esm/taggedTemplateLiteral';\nimport { devWarning } from '@paypalcorp/pp-react-utils';\n\nvar dateMaskOptions = {\n mask: 'm/y',\n blocks: {\n y: {\n mask: MaskType.Range,\n from: 1,\n to: 99,\n maxLength: 2\n },\n m: {\n mask: MaskType.Range,\n from: 1,\n to: 99,\n maxLength: 2\n }\n },\n lazy: true\n};\n/**\n * Card Hook\n */\n\nfunction useCreditCardInput(_ref) {\n var _ref$initialCardNumbe = _ref.initialCardNumberDetails,\n initialCardNumberDetails = _ref$initialCardNumbe === void 0 ? {} : _ref$initialCardNumbe,\n _ref$initialCvvDetail = _ref.initialCvvDetails,\n initialCvvDetails = _ref$initialCvvDetail === void 0 ? {} : _ref$initialCvvDetail,\n _ref$initialExpiratio = _ref.initialExpirationDetails,\n initialExpirationDetails = _ref$initialExpiratio === void 0 ? {} : _ref$initialExpiratio,\n onCardNumberChange = _ref.onCardNumberChange,\n onCvvChange = _ref.onCvvChange,\n onExpirationChange = _ref.onExpirationChange;\n\n var _useState = useState(initialCvvDetails.value),\n _useState2 = _slicedToArray(_useState, 2),\n cvvNumber = _useState2[0],\n setCvvNumber = _useState2[1];\n\n var _useState3 = useState(initialCvvDetails.errorText),\n _useState4 = _slicedToArray(_useState3, 2),\n cvvNumberError = _useState4[0],\n _setCvvNumberError = _useState4[1];\n\n var _useState5 = useState(initialCvvDetails.helperText),\n _useState6 = _slicedToArray(_useState5, 2),\n cvvNumberHelper = _useState6[0],\n _setCvvNumberHelper = _useState6[1];\n\n var _useState7 = useState(initialExpirationDetails.value),\n _useState8 = _slicedToArray(_useState7, 2),\n cardDate = _useState8[0],\n setCardDate = _useState8[1];\n\n var _useState9 = useState(initialExpirationDetails.errorText),\n _useState10 = _slicedToArray(_useState9, 2),\n cardDateError = _useState10[0],\n _setCardDateError = _useState10[1];\n\n var _useState11 = useState(initialExpirationDetails.helperText),\n _useState12 = _slicedToArray(_useState11, 2),\n cardDateHelper = _useState12[0],\n _setCardDateHelper = _useState12[1];\n\n var _useState13 = useState(initialCardNumberDetails.value),\n _useState14 = _slicedToArray(_useState13, 2),\n cardNumber = _useState14[0],\n setCardNumber = _useState14[1];\n\n var _useState15 = useState(initialCardNumberDetails.errorText),\n _useState16 = _slicedToArray(_useState15, 2),\n cardNumberError = _useState16[0],\n _setCardNumberError = _useState16[1];\n\n var _useState17 = useState(initialCardNumberDetails.helperText),\n _useState18 = _slicedToArray(_useState17, 2),\n cardNumberHelper = _useState18[0],\n _setCardNumberHelper = _useState18[1];\n\n var _useState19 = useState(initialCardNumberDetails.rightIcon),\n _useState20 = _slicedToArray(_useState19, 2),\n cardIcon = _useState20[0],\n _setCardIcon = _useState20[1];\n\n var _useState21 = useState(initialCvvDetails.tooltipOptions ? initialCvvDetails.tooltipOptions.imageElement : null),\n _useState22 = _slicedToArray(_useState21, 2),\n tooltipIcon = _useState22[0],\n _setTooltipIcon = _useState22[1];\n\n var _useState23 = useState(initialCvvDetails.tooltipOptions ? initialCvvDetails.tooltipOptions.description : null),\n _useState24 = _slicedToArray(_useState23, 2),\n tooltipText = _useState24[0],\n _setTooltipText = _useState24[1];\n\n var _useState25 = useState(initialCardNumberDetails.maskValue),\n _useState26 = _slicedToArray(_useState25, 2),\n cardNumberMask = _useState26[0],\n _setCardNumberMask = _useState26[1];\n\n var _useState27 = useState(initialCvvDetails.maskValue),\n _useState28 = _slicedToArray(_useState27, 2),\n cvvNumberMask = _useState28[0],\n _setCvvNumberMask = _useState28[1];\n\n var handleChange = function (val, unmaskedVal, typedValue, field) {\n /* istanbul ignore next */\n switch (field) {\n case 'CARD_NUMBER':\n setCardNumber(val);\n if (onCardNumberChange) onCardNumberChange(val, unmaskedVal, typedValue);\n break;\n\n case 'CARD_CVV':\n setCvvNumber(val);\n if (onCvvChange) onCvvChange(val, unmaskedVal, typedValue);\n break;\n\n case 'CARD_EXPIRATION':\n setCardDate(val);\n if (onExpirationChange) onExpirationChange(val, unmaskedVal, typedValue);\n break;\n }\n };\n\n var cardNumberDetails = {\n name: initialCardNumberDetails.name || 'card_number',\n label: initialCardNumberDetails.label || 'Card Number',\n value: cardNumber,\n maskOptions: {\n mask: cardNumberMask || '0000 0000 0000 0000',\n lazy: true\n },\n rightIcon: cardIcon,\n errorText: cardNumberError,\n helperText: cardNumberHelper,\n onAccept: function onAccept(val, unmaskedVal, typedValue) {\n return handleChange(val, unmaskedVal, typedValue, 'CARD_NUMBER');\n }\n };\n var cvvDetails = {\n name: initialCvvDetails.name || 'cvv_number',\n label: initialCvvDetails.label || 'CVV',\n value: cvvNumber,\n maskOptions: {\n mask: cvvNumberMask || '000',\n lazy: true\n },\n errorText: cvvNumberError,\n helperText: cvvNumberHelper,\n tooltipOptions: {\n name: initialCvvDetails.tooltipOptions && initialCvvDetails.tooltipOptions.name ? initialCvvDetails.tooltipOptions.name : 'credit_input-tooltip',\n description: tooltipText,\n imageElement: tooltipIcon\n },\n onAccept: function onAccept(val, unmaskedVal, typedValue) {\n return handleChange(val, unmaskedVal, typedValue, 'CARD_CVV');\n }\n };\n var expirationDetails = {\n name: initialExpirationDetails.name || 'card_expiration',\n label: initialExpirationDetails.label || 'Expiration',\n value: cardDate,\n errorText: cardDateError,\n helperText: cardDateHelper,\n maskOptions: dateMaskOptions,\n onAccept: function onAccept(val, unmaskedVal, typedValue) {\n return handleChange(val, unmaskedVal, typedValue, 'CARD_EXPIRATION');\n }\n };\n return {\n setCardNumberMask: function setCardNumberMask(value) {\n _setCardNumberMask(value);\n },\n setCvvNumberMask: function setCvvNumberMask(value) {\n _setCvvNumberMask(value);\n },\n setTooltipIcon: function setTooltipIcon(icon) {\n _setTooltipIcon(icon);\n },\n setCardIcon: function setCardIcon(icon) {\n _setCardIcon(icon);\n },\n setTooltipText: function setTooltipText(value) {\n _setTooltipText(value);\n },\n setCardNumberError: function setCardNumberError(value) {\n _setCardNumberError(value);\n },\n setCvvNumberError: function setCvvNumberError(value) {\n _setCvvNumberError(value);\n },\n setCardDateError: function setCardDateError(value) {\n _setCardDateError(value);\n },\n setCvvNumberHelper: function setCvvNumberHelper(value) {\n _setCvvNumberHelper(value);\n },\n setCardDateHelper: function setCardDateHelper(value) {\n _setCardDateHelper(value);\n },\n setCardNumberHelper: function setCardNumberHelper(value) {\n _setCardNumberHelper(value);\n },\n cardNumberDetails: cardNumberDetails,\n cvvDetails: cvvDetails,\n expirationDetails: expirationDetails\n };\n}\n\nvar CreditCardInputUtils = {\n useCreditCardInput: useCreditCardInput\n};\n\nvar _templateObject, _templateObject2;\nfunction styles(tokens) {\n /* istanbul ignore next */\n if (!Object.keys(tokens).length) {\n devWarning('Missing Emotion theme. Use ThemeProvider from @emotion/react to pass a valid theme from pp-react.');\n return {};\n }\n\n var sysSizeIconMd = tokens.sysSizeIconMd;\n var cvvImg = css(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n label: cvv_image;\\n height: \", \";\\n \"])), sysSizeIconMd);\n var numberInputRTL = css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n label: number_input_rtl;\\n [dir='rtl'] & {\\n direction: ltr;\\n text-align: right;\\n }\\n \"])));\n return {\n cvvImg: cvvImg,\n numberInputRTL: numberInputRTL\n };\n}\n\nvar CreditCardInput = function (_ref) {\n var cardNumberDetails = _ref.cardNumberDetails,\n expirationDetails = _ref.expirationDetails,\n cvvDetails = _ref.cvvDetails,\n _ref$cdnDomain = _ref.cdnDomain,\n cdnDomain = _ref$cdnDomain === void 0 ? 'https://www.paypalobjects.com' : _ref$cdnDomain;\n // If theme is not directly provided, get from themeContext\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n var tooltipOptions = cvvDetails.tooltipOptions;\n /* istanbul ignore next */\n\n if (cvvDetails.tooltipOptions) delete cvvDetails.tooltipOptions; // Add default tooltipOptions if tooltipOptions not passed\n\n /* istanbul ignore next */\n\n if (!tooltipOptions) {\n tooltipOptions = {\n name: 'credit_input-tooltip',\n description: 'The CVV is the 3-digit number on the back of your card',\n imageElement: jsx(\"img\", {\n src: \"\".concat(cdnDomain, \"/paypal-ui/components/csc-card/csc-card-back.svg\"),\n alt: \"cvv\",\n css: _styles.cvvImg,\n \"data-ppui\": \"true\"\n })\n };\n } // Add default tooltip desciption if tooltip description is not present\n\n\n if (tooltipOptions && !tooltipOptions.description) tooltipOptions.description = 'The CVV is the 3-digit number on the back of your card'; // Add default tooltip image if tooltip image is not present\n\n if (tooltipOptions && !tooltipOptions.imageElement) {\n tooltipOptions.imageElement = jsx(\"img\", {\n src: \"\".concat(cdnDomain, \"/paypal-ui/components/csc-card/csc-card-back.svg\"),\n alt: \"cvv\",\n css: _styles.cvvImg,\n \"data-ppui\": \"true\"\n });\n } // Fallback to `CreditCardIcon` if no cardIcon passed after 5 digits are entered\n\n\n if (cardNumberDetails.value && cardNumberDetails.value.length > 4 && !cardNumberDetails.rightIcon) {\n cardNumberDetails.rightIcon = jsx(CreditCardIcon, {\n \"data-ppui\": \"true\"\n });\n }\n\n var cardNumberField = jsx(ClassNames, {\n \"data-ppui\": \"true\"\n }, function (_ref2) {\n var css = _ref2.css;\n return jsx(MaskedTextInput, _extends({\n inputMode: \"numeric\"\n }, cardNumberDetails, {\n inputClassName: css(_styles.numberInputRTL),\n \"data-ppui\": \"true\"\n }));\n });\n return jsx(React.Fragment, null, jsx(Row, {\n \"data-ppui-info\": \"credit-card-input_2.1.8\"\n }, jsx(Col, {\n form: \"full\",\n \"data-ppui\": \"true\"\n }, cardNumberField)), jsx(Row, {\n \"data-ppui-info\": \"credit-card-input_2.1.8\"\n }, jsx(Col, {\n form: \"half\",\n xs: true,\n \"data-ppui\": \"true\"\n }, jsx(MaskedTextInput, _extends({\n inputMode: \"numeric\"\n }, expirationDetails, {\n \"data-ppui\": \"true\"\n }))), jsx(Col, {\n form: \"half\",\n xs: true,\n \"data-ppui\": \"true\"\n }, jsx(MaskedTextInput, _extends({\n inputMode: \"numeric\",\n rightIcon: jsx(Tooltip, _extends({\n imagePosition: \"top-left\"\n }, tooltipOptions, {\n \"data-ppui\": \"true\"\n }))\n }, cvvDetails, {\n \"data-ppui\": \"true\"\n })))));\n};\n\nexport { CreditCardInput, CreditCardInputUtils, styles as creditCardInputStyles };\n","import _extends from '@babel/runtime/helpers/esm/extends';\nimport _slicedToArray from '@babel/runtime/helpers/esm/slicedToArray';\nimport _objectWithoutProperties from '@babel/runtime/helpers/esm/objectWithoutProperties';\nimport { useState, useRef, useMemo, useEffect } from 'react';\nimport { IconButton } from '@paypalcorp/pp-react-icon-button';\nimport { CloseIcon } from '@paypalcorp/pp-react-icons';\nimport { devWarning, utilStyles, ZINDEX_MODAL, uniqueId } from '@paypalcorp/pp-react-utils';\nimport { css, useTheme, jsx } from '@emotion/react';\nimport _taggedTemplateLiteral from '@babel/runtime/helpers/esm/taggedTemplateLiteral';\nimport { math } from 'polished';\nimport { textStyles } from '@paypalcorp/pp-react-text';\n\nvar _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11;\nfunction styles(tokens) {\n /* istanbul ignore next */\n if (!Object.keys(tokens).length) {\n devWarning('Missing Emotion theme. Use ThemeProvider from @emotion/react to pass a valid theme from pp-react.');\n return {};\n }\n\n var sysColorBackgroundSurface = tokens.sysColorBackgroundSurface,\n sysSizeIconLg = tokens.sysSizeIconLg,\n sysSizeIconMd = tokens.sysSizeIconMd,\n sysSpaceLg = tokens.sysSpaceLg,\n sysSpaceSm = tokens.sysSpaceSm,\n sysSpaceXl = tokens.sysSpaceXl;\n\n var _utilStyles = utilStyles(tokens),\n elevationStyles = _utilStyles.elevationStyles;\n\n var _textStyles = textStyles(tokens),\n textBody = _textStyles.body;\n\n var headerWidth = '44rem';\n var headerFlexBasis = math(\"2 * \".concat(sysSpaceXl));\n var base = css(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n label: focus_flow_base;\\n position: fixed;\\n inset: 0 0 0 0;\\n background-color: \", \";\\n z-index: \", \";\\n \"])), sysColorBackgroundSurface, ZINDEX_MODAL);\n var wrapper = css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n label: focus_flow_wrapper;\\n display: flex;\\n flex-direction: column;\\n align-items: center;\\n position: absolute;\\n width: 100%;\\n \"])));\n var container = css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral([\"\\n label: focus_flow_container;\\n height: 100%;\\n margin: 0 auto;\\n \"])));\n var content = css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral([\"\\n label: focus_flow_content;\\n overflow: auto;\\n height: 90vh;\\n position: relative;\\n border-radius: inherit;\\n \", \";\\n padding: \", \" 0;\\n margin: 0 auto;\\n width: \", \";\\n\\n @media screen and (max-width: \", \") {\\n width: 100%;\\n padding: \", \";\\n height: 84vh;\\n }\\n \"])), textBody(), sysSpaceLg, '36rem', headerWidth, sysSpaceLg);\n var header = css(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral([\"\\n label: focus_flow_header;\\n width: 100%;\\n \"])));\n var headerContent = css(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral([\"\\n label: focus_flow_header_content;\\n display: flex;\\n justify-content: space-between;\\n align-items: center;\\n flex-wrap: wrap;\\n gap: \", \";\\n position: relative;\\n flex: 0 0 auto;\\n z-index: 1;\\n width: \", \";\\n margin: 0 auto;\\n padding: \", \" 0;\\n\\n @media screen and (max-width: \", \") {\\n width: 100%;\\n padding: \", \" \", \";\\n }\\n \"])), sysSpaceLg, headerWidth, sysSpaceSm, headerWidth, sysSpaceSm, sysSpaceLg);\n var headerAction = css(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral([\"\\n label: focus_flow_header_action;\\n flex: 0 0 \", \";\\n \"])), sysSizeIconLg);\n var headerTitle = css(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral([\"\\n label: focus_flow_header_title;\\n flex: 1 1 \", \";\\n margin: \", \" 0;\\n text-align: center;\\n \", \";\\n \"])), headerFlexBasis, sysSpaceSm, textBody());\n var headerClose = css(_templateObject9 || (_templateObject9 = _taggedTemplateLiteral([\"\\n label: focus_flow_header_close;\\n flex: 0 0 \", \";\\n \"])), sysSizeIconLg);\n var headerLogo = css(_templateObject10 || (_templateObject10 = _taggedTemplateLiteral([\"\\n label: focus_flow_header_logo;\\n display: flex;\\n flex: 1 1 \", \";\\n justify-content: center;\\n margin-top: \", \";\\n width: \", \";\\n height: \", \";\\n \"])), headerFlexBasis, sysSpaceSm, sysSizeIconMd, sysSizeIconMd);\n var headerScrolled = css(_templateObject11 || (_templateObject11 = _taggedTemplateLiteral([\"\\n label: header_scrolled;\\n \", \"\\n \"])), elevationStyles.level3);\n return {\n base: base,\n content: content,\n container: container,\n header: header,\n headerContent: headerContent,\n headerAction: headerAction,\n headerClose: headerClose,\n headerLogo: headerLogo,\n headerTitle: headerTitle,\n headerScrolled: headerScrolled,\n wrapper: wrapper\n };\n}\n\nvar _excluded = [\"action\", \"children\", \"className\", \"closeButtonLabel\", \"closeButtonProps\", \"containerClassName\", \"mainClassName\", \"contentContainerRef\", \"headerClassName\", \"id\", \"onClose\", \"showLogo\", \"title\"];\n\nvar FocusFlow = function (_ref) {\n var action = _ref.action,\n children = _ref.children,\n className = _ref.className,\n _ref$closeButtonLabel = _ref.closeButtonLabel,\n closeButtonLabel = _ref$closeButtonLabel === void 0 ? 'close' : _ref$closeButtonLabel,\n _ref$closeButtonProps = _ref.closeButtonProps,\n closeButtonProps = _ref$closeButtonProps === void 0 ? {} : _ref$closeButtonProps,\n containerClassName = _ref.containerClassName,\n mainClassName = _ref.mainClassName,\n contentContainerRef = _ref.contentContainerRef,\n headerClassName = _ref.headerClassName,\n id = _ref.id,\n onClose = _ref.onClose,\n showLogo = _ref.showLogo,\n title = _ref.title,\n rest = _objectWithoutProperties(_ref, _excluded);\n\n var _useState = useState(false),\n _useState2 = _slicedToArray(_useState, 2),\n headerScroll = _useState2[0],\n setHeaderScroll = _useState2[1];\n\n var closeButtonRef = useRef();\n var refContent = useRef();\n var contentRef = contentContainerRef || refContent;\n var actionZoneRef = useRef();\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n var idBase = id !== null && id !== void 0 ? id : uniqueId();\n var titleId = \"header_\".concat(idBase);\n\n var handleClick = function (evt) {\n if (onClose) {\n onClose(evt);\n }\n };\n /* istanbul ignore next */\n\n\n var handleScroll = function () {\n if (contentRef && contentRef.current) {\n var contents = contentRef.current;\n var newHeaderScroll = contents.scrollTop !== 0;\n\n if (newHeaderScroll !== headerScroll) {\n setHeaderScroll(newHeaderScroll);\n }\n }\n }; // Put focus on fist focusable item\n // istanbul ignore next\n\n\n var handleFocus = function () {\n var focused = false; // For Forms\n\n if (!focused && contentRef && contentRef.current) {\n //@ts-ignore\n var focusableEls = contentRef.current.querySelectorAll('a, button, textarea, input, select');\n\n if (focusableEls.length > 0) {\n focusableEls[0].focus();\n focused = true;\n }\n } // Otherwise focus on action item or close button\n\n\n if (!focused) {\n if (action && actionZoneRef && actionZoneRef.current) {\n //@ts-ignore\n var focusableActionEl = actionZoneRef.current.querySelectorAll('a, button, select');\n\n if (focusableActionEl.length > 0) {\n focusableActionEl[0].focus();\n }\n } else {\n var closeButton = closeButtonRef.current;\n\n if (closeButton) {\n //@ts-ignore\n closeButton.focus();\n }\n }\n }\n }; // check scroll and put focus\n\n\n useEffect(function () {\n handleScroll();\n handleFocus();\n }, []);\n var titleContentCss = [showLogo ? _styles.headerLogo : _styles.headerTitle];\n var closeButtonTag = jsx(IconButton, _extends({\n svgIconComponent: CloseIcon,\n onClick: function onClick(e) {\n return handleClick(e);\n },\n buttonType: \"tertiary\"\n }, closeButtonProps, {\n ref: closeButtonRef,\n \"data-ppui\": \"true\"\n }), closeButtonLabel);\n var titleContentZone = jsx(\"div\", {\n css: titleContentCss,\n id: titleId,\n \"data-ppui\": \"true\"\n }, function titleContents() {\n if (showLogo) {\n return jsx(\"img\", {\n src: \"https://www.paypalobjects.com/paypal-ui/logos/svg/paypal-mark-color.svg\",\n alt: \"paypal-logo\",\n \"data-ppui\": \"true\"\n });\n }\n\n return title;\n }());\n var closeButtonZone = jsx(\"div\", {\n css: [_styles.headerClose],\n \"data-ppui\": \"true\"\n }, closeButtonTag);\n var actionZone = action ? jsx(\"div\", {\n css: [_styles.headerAction],\n ref: actionZoneRef,\n \"data-ppui\": \"true\"\n }, action) : jsx(\"div\", {\n css: [_styles.headerAction],\n \"data-ppui\": \"true\"\n });\n var header = jsx(\"header\", {\n className: headerClassName,\n css: [_styles.header,\n /* istanbul ignore next */\n headerScroll && _styles.headerScrolled],\n \"data-ppui\": \"true\"\n }, jsx(\"div\", {\n css: [_styles.headerContent],\n \"data-ppui\": \"true\"\n }, actionZone, titleContentZone, closeButtonZone));\n return jsx(\"main\", {\n css: _styles.base,\n className: mainClassName,\n id: id,\n \"data-testid\": \"focusflow\",\n \"data-ppui-info\": \"focus-flow_2.3.6\",\n \"aria-live\": \"polite\",\n \"aria-label\": showLogo ? title : ''\n }, jsx(\"article\", _extends({\n css: [_styles.container],\n className: containerClassName\n }, rest, {\n \"aria-hidden\": \"false\",\n \"data-ppui\": \"true\"\n }), header, jsx(\"section\", {\n css: _styles.content,\n className: className,\n onScroll: handleScroll,\n ref: contentRef,\n \"data-ppui\": \"true\"\n }, children)));\n};\n\nexport { FocusFlow, styles as focusFlowStyles };\n","import _extends from '@babel/runtime/helpers/esm/extends';\nimport _defineProperty from '@babel/runtime/helpers/esm/defineProperty';\nimport _slicedToArray from '@babel/runtime/helpers/esm/slicedToArray';\nimport _objectWithoutProperties from '@babel/runtime/helpers/esm/objectWithoutProperties';\nimport { forwardRef, useMemo, useRef, useState, useContext, useEffect } from 'react';\nimport { CurrencyInput } from '@paypalcorp/pp-react-currency-input';\nimport { IntlContext, getCurrencyMaskOptions } from '@paypalcorp/pp-react-intl';\nimport { IconButton } from '@paypalcorp/pp-react-icon-button';\nimport { EditIcon } from '@paypalcorp/pp-react-icons';\nimport { devWarning, KeyboardCode } from '@paypalcorp/pp-react-utils';\nimport { css, keyframes, useTheme, jsx } from '@emotion/react';\nimport _taggedTemplateLiteral from '@babel/runtime/helpers/esm/taggedTemplateLiteral';\nimport { math } from 'polished';\n\nvar _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14, _templateObject15, _templateObject16, _templateObject17, _templateObject18;\nfunction styles(tokens) {\n /* istanbul ignore next */\n if (!Object.keys(tokens).length) {\n devWarning('Missing Emotion theme. Use ThemeProvider from @emotion/react to pass a valid theme from pp-react.');\n return {};\n }\n\n var sysBorderThicknessEmphasis = tokens.sysBorderThicknessEmphasis,\n sysBorderThicknessNormal = tokens.sysBorderThicknessNormal,\n sysColorBackgroundHighContrast = tokens.sysColorBackgroundHighContrast,\n sysColorBackgroundMediumContrast = tokens.sysColorBackgroundMediumContrast,\n sysSpaceXs = tokens.sysSpaceXs,\n sysSpaceSm = tokens.sysSpaceSm,\n sysSizeIndicatorMd = tokens.sysSizeIndicatorMd,\n sysSizeFieldLg = tokens.sysSizeFieldLg,\n sysTypographyFieldLabelSmLineHeight = tokens.sysTypographyFieldLabelSmLineHeight;\n var scaleNormal = 44 / 64;\n var cursorPosition = css(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n position: absolute;\\n content: '';\\n top: \", \"; // (68-60)/2\\n bottom: \", \"; // (68-60)/2\\n border-right: \", \" solid;\\n border-right-color: transparent;\\n \"])), sysSpaceXs, sysSpaceXs, sysBorderThicknessEmphasis);\n var blinker = keyframes(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n 50% {\\n border-right-color: transparent;\\n }\\n \"])));\n var animateCursor = css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral([\"\\n border-right-color: \", \";\\n animation: \", \" 1s step-start infinite;\\n \"])), sysColorBackgroundHighContrast, blinker);\n var base = css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral([\"\\n label: base;\\n border-bottom: \", \" solid transparent;\\n \"])), sysBorderThicknessNormal);\n var centerAlign = css(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral([\"\\n label: center_aligned;\\n text-align: center;\\n \"])));\n var baseNoFocus = css(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral([\"\\n &:hover [data-component='hero_currency--view'] {\\n scale: \", \";\\n }\\n \"])), 48 / 64);\n var errorTextSpacing = css(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral([\"\\n label: error_text_spacing;\\n margin-bottom: \", \";\\n \"])), math(\"\".concat(sysTypographyFieldLabelSmLineHeight, \" + \").concat(sysSizeIndicatorMd)));\n var view = css(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral([\"\\n label: view;\\n display: inline-flex; // scale doesn't work properly in rtl without inline-flex/inline-block. flex is needed for setting order.\\n font-size: \", \";\\n line-height: \", \"; // 4px more than font-size\\n transform-origin: left;\\n scale: \", \";\\n pointer-events: none;\\n transition: scale 200ms ease-in-out;\\n > span {\\n display: inline-block;\\n }\\n [dir='rtl'] & {\\n transform-origin: right;\\n }\\n \"])), sysSizeFieldLg, math(\"\".concat(sysSizeFieldLg, \" + \").concat(sysSpaceXs)), scaleNormal);\n var viewCenter = css(_templateObject9 || (_templateObject9 = _taggedTemplateLiteral([\"\\n label: center_view;\\n transform-origin: center;\\n [dir='rtl'] & {\\n transform-origin: center;\\n }\\n \"])));\n var textInput = css(_templateObject10 || (_templateObject10 = _taggedTemplateLiteral([\"\\n label: text_input;\\n height: 0;\\n & > div:first-of-type {\\n opacity: 0;\\n }\\n \"])));\n var focusedView = css(_templateObject11 || (_templateObject11 = _taggedTemplateLiteral([\"\\n label: focused_view;\\n scale: \", \";\\n \"])), 64 / 64);\n var focusEntered = css(_templateObject12 || (_templateObject12 = _taggedTemplateLiteral([\"\\n &:after {\\n \", \";\\n }\\n [dir='rtl'] & {\\n &:before {\\n \", \";\\n }\\n }\\n \"])), animateCursor, animateCursor);\n var focusImplied = css(_templateObject13 || (_templateObject13 = _taggedTemplateLiteral([\"\\n label: focus_implied;\\n color: \", \";\\n font-weight: normal;\\n \"])), sysColorBackgroundMediumContrast);\n var focusImpliedDefault = css(_templateObject14 || (_templateObject14 = _taggedTemplateLiteral([\"\\n label: focus_implied_default;\\n color: \", \";\\n \"])), sysColorBackgroundHighContrast);\n var symbol = css(_templateObject15 || (_templateObject15 = _taggedTemplateLiteral([\"\\n label: symbol;\\n color: \", \";\\n [dir='rtl'] & {\\n order: 1;\\n }\\n \"])), sysColorBackgroundHighContrast);\n var entered = css(_templateObject16 || (_templateObject16 = _taggedTemplateLiteral([\"\\n label: entered;\\n color: \", \";\\n font-weight: normal;\\n position: relative;\\n &:after {\\n \", \";\\n }\\n [dir='rtl'] & {\\n order: 3;\\n direction: ltr;\\n &:after {\\n content: none;\\n }\\n &:before {\\n \", \";\\n }\\n }\\n \"])), sysColorBackgroundHighContrast, cursorPosition, cursorPosition);\n var impliedDefault = css(_templateObject17 || (_templateObject17 = _taggedTemplateLiteral([\"\\n label: implied_default;\\n color: \", \";\\n [dir='rtl'] & {\\n order: 2;\\n }\\n \"])), sysColorBackgroundHighContrast);\n var editIcon = css(_templateObject18 || (_templateObject18 = _taggedTemplateLiteral([\"\\n label: edit_icon;\\n margin-inline-start: \", \";\\n align-self: center;\\n pointer-events: auto;\\n scale: \", \";\\n transform-origin: left;\\n &:focus {\\n &:after {\\n box-shadow: none;\\n border: none;\\n }\\n }\\n [dir='rtl'] & {\\n transform-origin: right;\\n order: 4;\\n }\\n \"])), sysSpaceSm, 1 / scaleNormal);\n return {\n base: base,\n centerAlign: centerAlign,\n baseNoFocus: baseNoFocus,\n errorTextSpacing: errorTextSpacing,\n textInput: textInput,\n view: view,\n viewCenter: viewCenter,\n focusedView: focusedView,\n focusEntered: focusEntered,\n focusImplied: focusImplied,\n focusImpliedDefault: focusImpliedDefault,\n symbol: symbol,\n entered: entered,\n impliedDefault: impliedDefault,\n editIcon: editIcon\n };\n}\n\nvar _excluded = [\"name\", \"id\", \"maskOptions\", \"currencyType\", \"prefix\", \"onAccept\", \"onFocus\", \"onBlur\", \"onKeyDown\", \"value\", \"className\", \"inputClassName\", \"label\", \"showEditIcon\", \"align\"];\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nvar HeroCurrency = forwardRef(function (_ref, ref) {\n var _ref$name = _ref.name,\n name = _ref$name === void 0 ? 'heroCurrency' : _ref$name,\n _ref$id = _ref.id,\n id = _ref$id === void 0 ? name : _ref$id,\n maskOptions = _ref.maskOptions,\n currencyType = _ref.currencyType,\n prefix = _ref.prefix,\n onAccept = _ref.onAccept,\n _ref$onFocus = _ref.onFocus,\n onFocus = _ref$onFocus === void 0 ? null : _ref$onFocus,\n _ref$onBlur = _ref.onBlur,\n onBlur = _ref$onBlur === void 0 ? null : _ref$onBlur,\n _ref$onKeyDown = _ref.onKeyDown,\n onKeyDown = _ref$onKeyDown === void 0 ? null : _ref$onKeyDown,\n _ref$value = _ref.value,\n value = _ref$value === void 0 ? '' : _ref$value,\n className = _ref.className,\n inputClassName = _ref.inputClassName,\n _ref$label = _ref.label,\n label = _ref$label === void 0 ? 'Enter amount' : _ref$label,\n showEditIcon = _ref.showEditIcon,\n _ref$align = _ref.align,\n align = _ref$align === void 0 ? 'left' : _ref$align,\n rest = _objectWithoutProperties(_ref, _excluded);\n\n /* istanbul ignore next */\n if (!onAccept) {\n onAccept = function () {\n return devWarning('Required prop `onAccept` is missing');\n };\n } // If theme is not directly provided, get from themeContext\n\n\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n var internalRef = useRef();\n\n var _useState = useState(''),\n _useState2 = _slicedToArray(_useState, 2),\n entered = _useState2[0],\n setEntered = _useState2[1];\n\n var _useState3 = useState(''),\n _useState4 = _slicedToArray(_useState3, 2),\n implied = _useState4[0],\n setImplied = _useState4[1];\n\n var computedRef = ref || internalRef;\n var intlContext = useContext(IntlContext);\n var currencyParts = useMemo(function () {\n return getCurrencyMaskOptions(intlContext, maskOptions, currencyType);\n }, [intlContext, maskOptions, currencyType]);\n var currencyMaskOptions = currencyParts.currencyMaskOptions,\n intlCurrencyPrefix = currencyParts.intlCurrencyPrefix,\n intlCurrencySuffix = currencyParts.intlCurrencySuffix;\n\n function handleChange() {\n setTimeout(function () {\n if (computedRef === null || computedRef === void 0 ? void 0 : computedRef.current) {\n var result = parseDisplay(computedRef.current.value, currencyMaskOptions.radix, currencyMaskOptions.scale);\n setEntered(result.entered);\n setImplied(result.implied);\n }\n }, 0);\n }\n\n useEffect(function () {\n handleChange();\n }, [value]);\n var currencySymbol = prefix || intlCurrencyPrefix || intlCurrencySuffix || '$';\n\n var _useState5 = useState(false),\n _useState6 = _slicedToArray(_useState5, 2),\n inputFocused = _useState6[0],\n setInputFocus = _useState6[1];\n\n var containerCss = [_styles.base, align === 'center' && _styles.centerAlign, !inputFocused && _styles.baseNoFocus, (rest.errorText || rest.helperText || rest.successText) && _styles.errorTextSpacing];\n var viewCss = [_styles.view, inputFocused && _styles.focusedView, align === 'center' && _styles.viewCenter];\n var enteredCss = [_styles.entered, inputFocused && _styles.focusEntered];\n var impliedCss = [_styles.impliedDefault, inputFocused && _styles.focusImplied, inputFocused && value === '' && _styles.focusImpliedDefault];\n /* istanbul ignore next */\n\n function parseDisplay(str) {\n var decimal = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '.';\n var scale = arguments.length > 2 ? arguments[2] : undefined;\n\n if (!str || str === '') {\n return {\n entered: '',\n implied: inputFocused ? '' : '0'\n };\n } else if (str && str[0] === decimal) {\n // If first char is decimal then prepend '0'\n str = '0' + str;\n }\n\n var parts = str.split(decimal);\n return {\n entered: str,\n implied: parts.length > 1 ? new Array(scale + 1).join('0').substring(parts[1].length, scale) : ''\n };\n }\n\n var handleBlur = function (event) {\n setInputFocus(false);\n /* istanbul ignore if */\n\n if (entered !== '') {\n var computedUnmaskedValue = entered.replaceAll(currencyMaskOptions.thousandsSeparator, '').replace(currencyMaskOptions.radix, '.');\n onAccept(entered + implied, computedUnmaskedValue + implied, +(computedUnmaskedValue + implied));\n }\n\n if (onBlur) {\n onBlur(event);\n }\n };\n\n var options = _objectSpread(_objectSpread({}, currencyMaskOptions), {}, {\n normalizeZeros: false,\n padFractionalZeros: false\n });\n /* istanbul ignore next */\n\n\n var inputMode = (currencyMaskOptions === null || currencyMaskOptions === void 0 ? void 0 : currencyMaskOptions.scale) === 0 ? 'numeric' : 'decimal';\n var inputCss = [_styles.textInput];\n return jsx(\"div\", {\n className: className,\n css: containerCss,\n id: id,\n \"data-ppui-info\": \"hero-currency_2.5.8\"\n }, jsx(CurrencyInput, _extends({\n name: name,\n label: label,\n inputMode: inputMode,\n value: value,\n maskOptions: options,\n inputClassName: inputClassName,\n css: inputCss,\n onFocus: function handleFocus(event) {\n setInputFocus(true);\n var target = event.target;\n var val = target.value;\n /* istanbul ignore next */\n\n if (val) {\n // move the cursor to end for cases when user clicks on the middle of hidden input\n // setTimeout is necessary unfortunately\n setTimeout(function () {\n return target.setSelectionRange(val.length, val.length);\n }, 100);\n }\n\n if (onFocus) {\n onFocus(event);\n }\n },\n onBlur: handleBlur,\n onAccept: onAccept,\n onKeyDown: function handleKeys(event) {\n /* istanbul ignore next */\n var KeyCode = new KeyboardCode(event.key || event.keyCode);\n\n if (KeyCode.IS_SIDE_NAVIGATION) {\n event.preventDefault();\n event.stopPropagation();\n }\n\n if (onKeyDown) {\n onKeyDown(event);\n }\n },\n onInput: handleChange,\n prefix: currencySymbol,\n autoComplete: \"off\",\n ref: computedRef\n }, rest, {\n \"data-ppui\": \"true\"\n })), jsx(\"div\", {\n \"data-component\": \"hero_currency--view\",\n css: viewCss,\n \"aria-hidden\": \"true\",\n \"data-ppui\": \"true\"\n }, jsx(\"span\", {\n css: [_styles.symbol],\n \"data-ppui\": \"true\"\n }, currencySymbol), jsx(\"span\", {\n css: enteredCss,\n \"data-ppui\": \"true\"\n }, entered), jsx(\"span\", {\n css: impliedCss,\n \"data-ppui\": \"true\"\n }, implied), !inputFocused && showEditIcon && value && jsx(IconButton, {\n buttonType: \"tertiary\",\n svgIconComponent: EditIcon,\n css: _styles.editIcon,\n onClick: function focusViaButton() {\n /* istanbul ignore next */\n if (computedRef === null || computedRef === void 0 ? void 0 : computedRef.current) {\n computedRef.current.focus();\n }\n },\n tabIndex: \"-1\",\n \"data-ppui\": \"true\"\n })));\n});\n\nexport { HeroCurrency, styles as heroCurrencyStyles };\n","import _extends from '@babel/runtime/helpers/esm/extends';\nimport _objectWithoutProperties from '@babel/runtime/helpers/esm/objectWithoutProperties';\nimport { useMemo, useRef } from 'react';\nimport { css, useTheme, jsx } from '@emotion/react';\nimport _taggedTemplateLiteral from '@babel/runtime/helpers/esm/taggedTemplateLiteral';\nimport { devWarning, utilStyles, getMs } from '@paypalcorp/pp-react-utils';\nimport { TransitionGroup, Transition } from 'react-transition-group';\n\nvar _templateObject, _templateObject2;\nfunction styles(tokens) {\n /* istanbul ignore next */\n if (!Object.keys(tokens).length) {\n devWarning('Missing Emotion theme. Use ThemeProvider from @emotion/react to pass a valid theme from pp-react.');\n return {};\n }\n\n var sysMotionDurationArrive = tokens.sysMotionDurationArrive,\n sysSpaceMd = tokens.sysSpaceMd,\n sysSpaceLg = tokens.sysSpaceLg;\n\n var _utilStyles = utilStyles(tokens),\n variables = _utilStyles.variables;\n\n var ppuiEaseInOut = variables.ppuiEaseInOut;\n var container = css(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n position: relative;\\n height: 100%;\\n white-space: nowrap;\\n padding: 0 \", \";\\n overflow: hidden;\\n \"])), sysSpaceMd);\n var panel = css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n display: inline-block;\\n width: 100%;\\n padding: \", \" \", \"\\n height: 100%;\\n white-space: normal;\\n \"])), sysSpaceLg, sysSpaceMd);\n return {\n container: container,\n panel: panel,\n defaultEasing: ppuiEaseInOut,\n defaultDurationMs: getMs(sysMotionDurationArrive)\n };\n}\n\nvar styles$1 = /*#__PURE__*/Object.freeze({\n __proto__: null,\n 'default': styles\n});\n\nvar _excluded = [\"as\", \"className\", \"children\"];\nvar Panel = function (_ref) {\n var _ref$as = _ref.as,\n Tag = _ref$as === void 0 ? 'section' : _ref$as,\n className = _ref.className,\n children = _ref.children,\n rest = _objectWithoutProperties(_ref, _excluded);\n\n var tokens = useTheme();\n var PanelStyles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n return jsx(Tag, _extends({\n css: PanelStyles.panel,\n className: className\n }, rest, {\n \"data-ppui\": \"true\"\n }), children);\n};\n\n/*\n NOTE, the default values of duration and easing are\n failsafes. The code below should never allow these\n values to be used --BCC\n */\n\n/* istanbul ignore next */\n\nfunction doAnimation(offset, elem) {\n var duration = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 1000;\n var easing = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 'linear';\n var player = elem.animate([{\n translate: offset\n }, {\n translate: 0\n }], {\n duration: duration,\n easing: easing\n });\n player.addEventListener('finish', function () {\n elem.style.translate = '0';\n });\n}\n/* istanbul ignore next */\n\n\nvar getSign = function (n) {\n return n / Math.abs(n);\n};\n/* istanbul ignore next */\n\n\nvar getDirection = function (oldId, newId) {\n return oldId < 0 ? 0 : getSign(newId - oldId);\n};\n/* istanbul ignore next */\n\n\nvar getComputedDirection = function (elem) {\n var cStyle = getComputedStyle(elem);\n return cStyle.direction === 'rtl' ? -1 : 1;\n};\n\nvar PanelSlider = function (_ref) {\n var child = _ref.children,\n panelId = _ref.panelId,\n durationProp = _ref.duration,\n easingProp = _ref.easing,\n onComplete = _ref.onComplete;\n var tokens = useTheme();\n var PanelStyles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n var duration = durationProp !== null && durationProp !== void 0 ? durationProp : PanelStyles.defaultDurationMs;\n var easing = easingProp !== null && easingProp !== void 0 ? easingProp : PanelStyles.defaultEasing;\n var activeScreenId = useRef(-1);\n var direction = getDirection(activeScreenId.current, panelId);\n activeScreenId.current = panelId;\n /* istanbul ignore next */\n // @ts-ignore\n\n return jsx(\"div\", {\n css: PanelStyles.container,\n \"data-ppui-info\": \"panel-slider_1.2.11\"\n }, jsx(TransitionGroup, {\n \"data-ppui\": \"true\"\n }, jsx(Transition, {\n key: panelId,\n timeout: duration,\n onEnter: function onEnter(elem) {\n elem.style.translate = \"\".concat(direction * getComputedDirection(elem) * 100, \"%\");\n elem.style.left = '0';\n },\n onEntering: function onEntering(elem) {\n var offset = \"\".concat(direction * getComputedDirection(elem) * 100, \"%\");\n doAnimation(offset, elem, duration, easing);\n },\n onExit: function onExit(elem) {\n var _activeScreenId$curre;\n\n var dir = getDirection((_activeScreenId$curre = activeScreenId === null || activeScreenId === void 0 ? void 0 : activeScreenId.current) !== null && _activeScreenId$curre !== void 0 ? _activeScreenId$curre : -1, panelId) * getComputedDirection(elem);\n elem.style.left = \"\".concat(dir * 100, \"%\");\n elem.style.translate = \"\".concat(-dir * 100, \"%\");\n elem.style.position = 'absolute';\n },\n onExiting: function onExiting(elem) {\n var _activeScreenId$curre2;\n\n var dir = getDirection((_activeScreenId$curre2 = activeScreenId === null || activeScreenId === void 0 ? void 0 : activeScreenId.current) !== null && _activeScreenId$curre2 !== void 0 ? _activeScreenId$curre2 : -1, panelId) * getComputedDirection(elem);\n var offset = \"\".concat(-dir * 100, \"%\");\n doAnimation(offset, elem, duration, easing);\n },\n onEntered: function announceArrival(elem) {\n if (typeof onComplete === 'function') {\n onComplete(elem);\n }\n },\n \"data-ppui\": \"true\"\n }, child)));\n};\n\nexport { Panel, PanelSlider, styles$1 as panelStyles };\n","import _taggedTemplateLiteral from '@babel/runtime/helpers/esm/taggedTemplateLiteral';\nimport { css, useTheme, jsx, ClassNames } from '@emotion/react';\nimport { devWarning, uniqueId } from '@paypalcorp/pp-react-utils';\nimport { math } from 'polished';\nimport _extends from '@babel/runtime/helpers/esm/extends';\nimport _slicedToArray from '@babel/runtime/helpers/esm/slicedToArray';\nimport _objectWithoutProperties from '@babel/runtime/helpers/esm/objectWithoutProperties';\nimport React, { useMemo, forwardRef, useState, useContext, useCallback } from 'react';\nimport { IntlContext } from '@paypalcorp/pp-react-intl';\nimport { Flag } from '@paypalcorp/pp-react-flag';\nimport { MaskedTextInput } from '@paypalcorp/pp-react-masked-text-input';\nimport { DropdownMenu } from '@paypalcorp/pp-react-dropdown-menu';\n\nvar _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11;\nfunction styles(tokens) {\n /* istanbul ignore next */\n if (!Object.keys(tokens).length) {\n devWarning('Missing Emotion theme. Use ThemeProvider from @emotion/react to pass a valid theme from pp-react.');\n return {};\n }\n\n var sysBorderRadiusSm = tokens.sysBorderRadiusSm,\n sysBorderThicknessNormal = tokens.sysBorderThicknessNormal,\n sysSizeTapTargetDefault = tokens.sysSizeTapTargetDefault,\n sysSpaceMd = tokens.sysSpaceMd,\n sysSpaceSm = tokens.sysSpaceSm,\n sysSpaceXs = tokens.sysSpaceXs,\n sysSizeMediaXs = tokens.sysSizeMediaXs;\n var phoneInputMenuMaxWidth = '8.813rem';\n var base = css(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n label: phone_input_base;\\n flex-grow: 1;\\n \"])));\n var telephoneInputRtlStyles = css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n input[type='tel'] {\\n label: tel_input_rtl;\\n direction: ltr;\\n text-align: right;\\n }\\n \"])));\n var combined = css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral([\"\\n label: combined;\\n display: flex;\\n gap: \", \";\\n [dir='rtl'] & {\\n direction: ltr;\\n }\\n @media screen and (max-width: \", \") {\\n display: block;\\n }\\n \"])), sysSpaceSm, sysSizeMediaXs);\n var menuWidth = css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral([\"\\n label: width;\\n min-width: \", \";\\n @media screen and (max-width: \", \") {\\n margin-bottom: \", \";\\n }\\n @media screen and (min-width: \", \") {\\n max-width: \", \";\\n }\\n \"])), phoneInputMenuMaxWidth, sysSizeMediaXs, sysSpaceSm, math(\"\".concat(sysSizeMediaXs, \" + \").concat('0.0625rem')), phoneInputMenuMaxWidth);\n var menu = css(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral([\"\\n label: menu;\\n flex-grow: 1;\\n [dir='rtl'] & {\\n direction: rtl;\\n }\\n \"])));\n var thumbnail = css(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral([\"\\n label: thumbnail;\\n margin-right: \", \";\\n [dir='rtl'] & {\\n margin-right: 0;\\n margin-left: \", \";\\n }\\n \"])), sysSpaceSm, sysSpaceSm);\n var menuList = css(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral([\"\\n label: menu_list;\\n white-space: nowrap;\\n \"])));\n var menuButton = css(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral([\"\\n label: menu_button;\\n flex-grow: 1;\\n &:not(:empty) {\\n padding-bottom: \", \";\\n padding-right: \", \";\\n }\\n & > span {\\n pointer-events: none;\\n }\\n [dir='rtl'] & {\\n border-radius: \", \";\\n margin-left: 0;\\n margin-right: 0;\\n &:not(:empty) {\\n padding-left: \", \";\\n padding-right: \", \";\\n }\\n }\\n \"])), sysSpaceSm, math(\"\".concat(sysSizeTapTargetDefault, \" + \").concat(sysSpaceXs)), sysBorderRadiusSm, math(\"\".concat(sysSizeTapTargetDefault, \" + \").concat(sysSpaceXs)), math(\"\".concat(sysSpaceMd, \" - \").concat(sysBorderThicknessNormal)));\n var menuButtonContent = css(_templateObject9 || (_templateObject9 = _taggedTemplateLiteral([\"\\n label: menu_button_content;\\n display: flex;\\n \"])));\n var affordance = css(_templateObject10 || (_templateObject10 = _taggedTemplateLiteral([\"\\n label: affordance;\\n margin-left: 0;\\n [dir='rtl'] & {\\n margin-right: 0;\\n }\\n \"])));\n var menuContainer = css(_templateObject11 || (_templateObject11 = _taggedTemplateLiteral([\"\\n label: container;\\n [dir='rtl'] & {\\n left: 0;\\n }\\n \"])));\n return {\n base: base,\n combined: combined,\n menu: menu,\n thumbnail: thumbnail,\n menuList: menuList,\n menuButton: menuButton,\n menuButtonContent: menuButtonContent,\n affordance: affordance,\n telephoneInputRtlStyles: telephoneInputRtlStyles,\n menuWidth: menuWidth,\n menuContainer: menuContainer\n };\n}\n\n// 55 fixed line Countries with variable length\n// 38 mobile line Countries with variable length\n// 21 of those instersect\nvar VAR_LENGTH_COUNTRIES_FIXED_LINE = ['AT', 'AX', 'BD', 'BG', 'CD', 'CN', 'CU', 'CW', 'DE', 'DZ', 'EG', 'FI', 'GB', 'HR', 'ID', 'IE', 'IL', 'IQ', 'IR', 'IT', 'KE', 'KH', 'KI', 'KP', 'KR', 'LB', 'LR', 'LU', 'MM', 'MN', 'MU', 'MW', 'MY', 'NA', 'NG', 'PG', 'PH', 'PK', 'PL', 'PY', 'RO', 'RS', 'RW', 'SE', 'SH', 'SK', 'SO', 'SR', 'SY', 'TK', 'TW', 'VA', 'WS', 'YE', 'ZW'];\nvar VAR_LENGTH_COUNTRIES_MOBILE = ['AD', 'AR', 'AT', 'AX', 'BA', 'BG', 'BR', 'CD', 'CW', 'DE', 'EE', 'FI', 'GA', 'HR', 'ID', 'IS', 'IT', 'KH', 'KR', 'LB', 'LI', 'LR', 'MC', 'MM', 'MX', 'MY', 'NZ', 'PA', 'PN', 'RS', 'SB', 'SO', 'TK', 'TV', 'VA', 'WS', 'XK', 'ZA'];\nvar DEFAULT_PATTERN = '00000000000000000000';\n// Get phone format from IntlProvider\nfunction getPhoneFormat(intlContext, phoneRegion, formatType, isMobile) {\n var providedCountryCode = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : null;\n var providedPhoneFormat = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : '';\n var isPhoneMetaDataLoaded = arguments.length > 6 && arguments[6] !== undefined ? arguments[6] : true;\n\n if (providedCountryCode && providedPhoneFormat) {\n return {\n countryCode: providedCountryCode,\n pattern: providedPhoneFormat\n };\n } else if (phoneRegion && intlContext && intlContext.phoneFormatter) {\n var phoneType = isMobile ? 'MOBILE' : 'FIXED_LINE';\n var phoneExampleGenerator = intlContext.exampleGenerator({\n feature: 'phone',\n region: phoneRegion,\n type: phoneType\n });\n var exampleNumberObj = phoneExampleGenerator.generate();\n var countryCode = exampleNumberObj.countryCode,\n nationalNumber = exampleNumberObj.nationalNumber;\n var pattern = DEFAULT_PATTERN;\n\n if (isPhoneMetaDataLoaded) {\n var phoneNumberFormat = intlContext.phoneFormatter({\n phoneRegion: phoneRegion,\n style: formatType\n });\n var formattedNumber = phoneNumberFormat.format({\n countryCode: countryCode,\n nationalNumber: nationalNumber\n });\n var phoneNumber = formattedNumber;\n\n if (formattedNumber.includes('+')) {\n phoneNumber = formattedNumber.split(\"+\".concat(countryCode))[1].trim();\n }\n\n pattern = phoneNumber.replace(/\\d/g, '0');\n var varLengthCountries = isMobile ? VAR_LENGTH_COUNTRIES_MOBILE : VAR_LENGTH_COUNTRIES_FIXED_LINE;\n\n if (varLengthCountries.includes(phoneRegion)) {\n var patternLength = pattern.match(/0/g).length;\n var optionalDigits = '0'.repeat(20 - patternLength);\n pattern = pattern + \"[\".concat(optionalDigits, \"]\");\n }\n }\n\n return {\n countryCode: countryCode,\n pattern: pattern\n };\n }\n\n return {\n countryCode: providedCountryCode || '',\n pattern: providedPhoneFormat || DEFAULT_PATTERN\n };\n}\n\nvar _excluded = [\"rtl\", \"countryOptions\", \"options\", \"flagId\", \"codeId\", \"value\"];\n\nvar PhoneCodeDropdown = function (_ref) {\n var rtl = _ref.rtl,\n countryOptions = _ref.countryOptions,\n options = _ref.options,\n flagId = _ref.flagId,\n codeId = _ref.codeId,\n value = _ref.value,\n rest = _objectWithoutProperties(_ref, _excluded);\n\n var tokens = useTheme(); // Fetch tokens from Emotion context\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n return jsx(DropdownMenu, _extends({\n renderButtonContent: function renderButtonContent() {\n var selectedOption; //istanbul ignore next\n\n if (value && !!options) {\n var selectedIndex = options.findIndex(function (opt) {\n return opt.value === value;\n });\n selectedOption = countryOptions[selectedIndex];\n }\n\n var countryPhoneCode = '';\n\n if (selectedOption && selectedOption.countryPhoneCode) {\n //istanbul ignore next\n if (rtl) {\n countryPhoneCode = \"\".concat(selectedOption.countryPhoneCode, \"+\");\n } else {\n countryPhoneCode = \"+\".concat(selectedOption.countryPhoneCode);\n }\n }\n\n if (selectedOption && selectedOption.phoneRegion) {\n return jsx(\"span\", {\n css: _styles.menuButtonContent,\n \"data-ppui\": \"true\"\n }, jsx(\"span\", {\n css: _styles.thumbnail,\n \"data-ppui\": \"true\"\n }, jsx(Flag, {\n id: flagId,\n countryCode: selectedOption.phoneRegion,\n size: 'md',\n \"aria-label\": selectedOption.countryName,\n role: \"img\",\n \"data-ppui\": \"true\"\n })), jsx(\"span\", {\n id: codeId,\n \"data-ppui\": \"true\"\n }, countryPhoneCode));\n }\n\n return jsx(React.Fragment, null, countryPhoneCode);\n },\n options: options,\n value: value\n }, rest, {\n \"data-ppui\": \"true\"\n }));\n};\n\nvar _excluded$1 = [\"name\", \"countryOptions\", \"inputLabel\", \"menuLabel\", \"menuId\", \"className\", \"inputClassName\", \"menuClassName\", \"mobile\", \"onPhoneCodeChange\", \"phoneCode\", \"showUnselect\", \"unselectLabel\", \"formatType\"];\nvar PhoneInputWithMenu = forwardRef(function (_ref, ref) {\n var _ref$name = _ref.name,\n name = _ref$name === void 0 ? 'phoneInputMenu' : _ref$name,\n _ref$countryOptions = _ref.countryOptions,\n countryOptions = _ref$countryOptions === void 0 ? [] : _ref$countryOptions,\n _ref$inputLabel = _ref.inputLabel,\n inputLabel = _ref$inputLabel === void 0 ? 'Phone Number' : _ref$inputLabel,\n _ref$menuLabel = _ref.menuLabel,\n menuLabel = _ref$menuLabel === void 0 ? 'Code' : _ref$menuLabel,\n menuId = _ref.menuId,\n className = _ref.className,\n inputClassName = _ref.inputClassName,\n menuClassName = _ref.menuClassName,\n _ref$mobile = _ref.mobile,\n mobile = _ref$mobile === void 0 ? false : _ref$mobile,\n onPhoneCodeChange = _ref.onPhoneCodeChange,\n phoneCode = _ref.phoneCode,\n _ref$showUnselect = _ref.showUnselect,\n showUnselect = _ref$showUnselect === void 0 ? false : _ref$showUnselect,\n _ref$unselectLabel = _ref.unselectLabel,\n unselectLabel = _ref$unselectLabel === void 0 ? 'None' : _ref$unselectLabel,\n _ref$formatType = _ref.formatType,\n formatType = _ref$formatType === void 0 ? 'international' : _ref$formatType,\n rest = _objectWithoutProperties(_ref, _excluded$1);\n\n /* istanbul ignore next */\n if (!countryOptions.length) {\n devWarning('Required prop `countryOptions` is missing.');\n }\n\n var tokens = useTheme(); // Fetch tokens from Emotion context\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n var _useState = useState(false),\n _useState2 = _slicedToArray(_useState, 2),\n isRtl = _useState2[0],\n setRtl = _useState2[1];\n\n var intlContext = useContext(IntlContext);\n var containerRef = useCallback(function (node) {\n if (node !== null && window && window.getComputedStyle(node)) {\n var computedStyle = window.getComputedStyle(node);\n setRtl(computedStyle && computedStyle.direction === 'rtl');\n }\n }, [intlContext === null || intlContext === void 0 ? void 0 : intlContext.locale]);\n var optionText;\n var optionCode;\n var optionPattern;\n var optionCountryRegion;\n var optionCountryName;\n var menuOptions;\n\n var _useState3 = useState(false),\n _useState4 = _slicedToArray(_useState3, 2),\n hasFocus = _useState4[0],\n setFocus = _useState4[1];\n\n var constructOptionProps = function (countryName, countryPhoneCode, countryRegion, rtl) {\n optionText = countryName; // for none option don't need to show +\n\n /* istanbul ignore next */\n\n if (countryPhoneCode) {\n optionText += rtl ? \" \".concat(countryPhoneCode, \"+\") : \" +\".concat(countryPhoneCode);\n }\n\n var optionValue = countryRegion && countryPhoneCode ? \"\".concat(countryRegion, \"_\").concat(countryPhoneCode) : '';\n return {\n primaryText: optionText,\n value: optionValue,\n decoration: countryRegion && jsx(Flag, {\n countryCode: countryRegion,\n size: \"md\",\n \"data-ppui\": \"true\"\n })\n };\n }; // Removing 'None' option if exists\n\n\n if (countryOptions[0] && countryOptions[0].phoneRegion === '') {\n countryOptions.splice(0, 1);\n }\n\n if (showUnselect) {\n // Adding 'None' option to list\n countryOptions.unshift({\n phoneRegion: '',\n countryName: unselectLabel,\n phoneFormat: DEFAULT_PATTERN\n });\n }\n\n menuOptions = useMemo(function () {\n return countryOptions.map(function (country, i) {\n var phoneParts = getPhoneFormat(intlContext, country.phoneRegion, formatType, mobile, country.countryPhoneCode, country.phoneFormat, country.isPhoneMetaDataLoaded);\n /* istanbul ignore next */\n\n var displayNamesObj = intlContext && intlContext.getDisplayNamesObject && intlContext.getDisplayNamesObject({\n type: 'region'\n });\n var countryCode = phoneParts.countryCode,\n pattern = phoneParts.pattern;\n optionCountryRegion = country.phoneRegion; //this one must be provided\n\n optionCode = country.countryPhoneCode || countryCode; //if provided use that\n\n optionPattern = country.phoneFormat || pattern; //if provided use that\n\n /* istanbul ignore next */\n\n optionCountryName = country.countryName || displayNamesObj && displayNamesObj.select(country.phoneRegion); //if provided use that\n\n countryOptions[i].countryPhoneCode = optionCode;\n countryOptions[i].phoneFormat = optionPattern;\n countryOptions[i].countryName = optionCountryName;\n return constructOptionProps(optionCountryName, optionCode, optionCountryRegion, isRtl);\n });\n }, [countryOptions, formatType, mobile]);\n var currentMask = DEFAULT_PATTERN;\n var selectedCountry = countryOptions.filter(function (country) {\n var selectedPhoneCode = country.phoneRegion && country.countryPhoneCode ? \"\".concat(country.phoneRegion, \"_\").concat(country.countryPhoneCode) : '';\n return phoneCode === selectedPhoneCode;\n });\n\n if (selectedCountry.length) {\n currentMask = selectedCountry[0].phoneFormat;\n }\n\n var handleChange = function (evt) {\n //istanbul ignore next\n if (onPhoneCodeChange) {\n var _evt$target, _evt$target$value;\n\n onPhoneCodeChange(evt); // determine if selected option is none/unselect\n // if it is don't move the focus to the next element\n\n if (!(((_evt$target = evt.target) === null || _evt$target === void 0 ? void 0 : (_evt$target$value = _evt$target.value) === null || _evt$target$value === void 0 ? void 0 : _evt$target$value.length) === 0 && showUnselect)) {\n setFocus(true);\n }\n }\n };\n\n var flagIdPrefix = 'phone-input-country-flag_';\n var codeIdPrefix = 'phone-input-country-code_';\n var generatedFlagId = menuId ? \"\".concat(flagIdPrefix).concat(menuId) : uniqueId(flagIdPrefix);\n var generatedCodeId = menuId ? \"\".concat(codeIdPrefix).concat(menuId) : uniqueId(codeIdPrefix);\n var phoneDropdownMenuCSS = [_styles.menu, _styles.menuWidth];\n var dropdownEl = jsx(ClassNames, {\n \"data-ppui\": \"true\"\n }, function (_ref2) {\n var css = _ref2.css;\n return jsx(PhoneCodeDropdown, {\n id: menuId,\n label: menuLabel,\n options: menuOptions,\n countryOptions: countryOptions,\n value: phoneCode,\n onChange: handleChange,\n css: phoneDropdownMenuCSS,\n className: menuClassName,\n menuContainerClassName: css(_styles.menuContainer),\n menuListClassName: css(_styles.menuList),\n menuButtonClassName: css(_styles.menuButton),\n sheetClassName: css(_styles.menuList),\n rtl: isRtl,\n showUnselect: true,\n flagId: generatedFlagId,\n codeId: generatedCodeId,\n \"data-ppui\": \"true\"\n });\n });\n var inputEl = jsx(ClassNames, {\n \"data-ppui\": \"true\"\n }, function (_ref3) {\n var cx = _ref3.cx;\n return jsx(MaskedTextInput, _extends({\n type: \"tel\",\n name: name,\n label: inputLabel,\n maskOptions: {\n mask: currentMask\n },\n css: _styles.menu,\n inputClassName: cx(inputClassName),\n setFocus: hasFocus,\n ref: ref,\n onBlur: function onBlur() {\n return setFocus(false);\n },\n \"aria-describedby\": \"\".concat(generatedFlagId, \" \").concat(generatedCodeId)\n }, rest, {\n \"data-ppui\": \"true\"\n }));\n });\n var combinedInputCSS = [_styles.combined, //istanbul ignore next\n isRtl && _styles.telephoneInputRtlStyles];\n return jsx(\"div\", {\n ref: containerRef,\n css: _styles.base,\n className: className,\n \"data-ppui-info\": \"phone-input_2.7.9\"\n }, jsx(\"div\", {\n css: combinedInputCSS,\n \"data-ppui\": \"true\"\n }, dropdownEl, inputEl));\n});\n\nvar _excluded$2 = [\"name\", \"label\", \"countryOptions\", \"className\", \"inputClassName\", \"formatType\", \"mobile\"];\nvar PhoneInput = forwardRef(function (_ref, ref) {\n var _ref$name = _ref.name,\n name = _ref$name === void 0 ? '' : _ref$name,\n _ref$label = _ref.label,\n label = _ref$label === void 0 ? 'Phone Number' : _ref$label,\n countryOptions = _ref.countryOptions,\n className = _ref.className,\n inputClassName = _ref.inputClassName,\n _ref$formatType = _ref.formatType,\n formatType = _ref$formatType === void 0 ? (countryOptions === null || countryOptions === void 0 ? void 0 : countryOptions.countryPhoneCode) ? 'international' : 'national' : _ref$formatType,\n _ref$mobile = _ref.mobile,\n mobile = _ref$mobile === void 0 ? false : _ref$mobile,\n rest = _objectWithoutProperties(_ref, _excluded$2);\n\n /* istanbul ignore next */\n if (!countryOptions) {\n devWarning('Required prop `countryOptions` is missing.');\n }\n\n var tokens = useTheme(); // Fetch tokens from Emotion context\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n var _useState = useState(false),\n _useState2 = _slicedToArray(_useState, 2),\n isRtl = _useState2[0],\n setRtl = _useState2[1];\n\n var intlContext = useContext(IntlContext);\n var containerRef = useCallback(function (node) {\n if (node !== null && window && window.getComputedStyle(node)) {\n var computedStyle = window.getComputedStyle(node);\n setRtl(computedStyle && computedStyle.direction === 'rtl');\n }\n }, [intlContext === null || intlContext === void 0 ? void 0 : intlContext.locale]);\n var phoneParts = useMemo(function () {\n return getPhoneFormat(intlContext, countryOptions === null || countryOptions === void 0 ? void 0 : countryOptions.phoneRegion, formatType, mobile, countryOptions === null || countryOptions === void 0 ? void 0 : countryOptions.countryPhoneCode, countryOptions === null || countryOptions === void 0 ? void 0 : countryOptions.phoneFormat, countryOptions === null || countryOptions === void 0 ? void 0 : countryOptions.isPhoneMetaDataLoaded);\n }, [countryOptions === null || countryOptions === void 0 ? void 0 : countryOptions.phoneRegion, formatType, mobile]);\n var countryCode = phoneParts.countryCode,\n pattern = phoneParts.pattern;\n var codePrefix = formatType === 'international' ? countryCode : '';\n var codeSuffix = codePrefix;\n\n if (formatType === 'international') {\n //istanbul ignore next\n codePrefix = isRtl ? '' : \"+\".concat(codePrefix); //istanbul ignore next\n\n codeSuffix = isRtl ? \"\".concat(codeSuffix, \"+\") : '';\n }\n\n return jsx(\"div\", {\n ref: containerRef,\n css: [_styles.base, isRtl && _styles.telephoneInputRtlStyles],\n className: className,\n \"data-ppui-info\": \"phone-input_2.7.9\"\n }, jsx(ClassNames, {\n \"data-ppui\": \"true\"\n }, function (_ref2) {\n var cx = _ref2.cx;\n return jsx(MaskedTextInput, _extends({\n type: \"tel\",\n name: \"phoneInput-\".concat(name),\n label: label,\n prefix: codePrefix,\n suffix: codeSuffix,\n ref: ref,\n maskOptions: {\n mask: pattern\n },\n inputClassName: cx(inputClassName)\n }, rest, {\n \"data-ppui\": \"true\"\n }));\n }));\n});\n\nexport { PhoneInput, PhoneInputWithMenu, styles as phoneInputStyles };\n","import _extends from '@babel/runtime/helpers/esm/extends';\nimport _objectWithoutProperties from '@babel/runtime/helpers/esm/objectWithoutProperties';\nimport React, { forwardRef, useRef, useEffect } from 'react';\nimport { TextInput } from '@paypalcorp/pp-react-text-input';\nimport { IconButton } from '@paypalcorp/pp-react-icon-button';\nimport { ViewIcon, HideIcon } from '@paypalcorp/pp-react-icons';\n\nvar _excluded = [\"as\", \"isHidden\", \"hideToggleLabel\", \"onToggleHide\", \"value\"];\n\nvar PasswordInput = forwardRef(function (props, ref) {\n var as = props.as,\n _props$isHidden = props.isHidden,\n isHidden = _props$isHidden === void 0 ? true : _props$isHidden,\n hideToggleLabel = props.hideToggleLabel,\n onToggleHide = props.onToggleHide,\n value = props.value,\n rest = _objectWithoutProperties(props, _excluded);\n\n var internalRef = useRef();\n var inputRef = ref || internalRef;\n useEffect(function () {\n var inputElm = inputRef.current;\n\n if (inputElm && (value === null || value === void 0 ? void 0 : value.length)) {\n /* istanbul ignore next */\n // without timeout setSelectionRange run first then component re-render hence cursor position is not restored\n requestAnimationFrame(function () {\n inputElm.setSelectionRange(value.length, value.length); //restore cursor to the last char\n });\n }\n }, [isHidden]);\n var typeProp = isHidden ? {\n type: 'password'\n } : {};\n var iconButtonLabel = hideToggleLabel || (isHidden ? 'show' : 'hide');\n return /*#__PURE__*/React.createElement(as || TextInput, _extends({\n ref: inputRef,\n rightIcon: /*#__PURE__*/React.createElement(IconButton, {\n buttonType: \"tertiary\",\n svgIconComponent: isHidden ? ViewIcon : HideIcon,\n onClick: function handleHideToggleClick() {\n /* istanbul ignore next */\n if (onToggleHide) {\n onToggleHide(!isHidden);\n }\n },\n onMouseDown: function onMouseDown(evt) {\n return evt.preventDefault();\n },\n \"data-ppui\": \"true\"\n }, iconButtonLabel),\n value: value,\n \"data-ppui-info\": \"password-input_2.1.25\"\n }, typeProp, rest));\n});\n\nexport { PasswordInput };\n","import _extends from '@babel/runtime/helpers/esm/extends';\nimport _objectWithoutProperties from '@babel/runtime/helpers/esm/objectWithoutProperties';\nimport 'react';\nimport { IconButton } from '@paypalcorp/pp-react-icon-button';\nimport { CloseIcon } from '@paypalcorp/pp-react-icons';\nimport { devWarning } from '@paypalcorp/pp-react-utils';\nimport { css, useTheme, jsx } from '@emotion/react';\nimport _taggedTemplateLiteral from '@babel/runtime/helpers/esm/taggedTemplateLiteral';\nimport { textStyles } from '@paypalcorp/pp-react-text';\n\nvar _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5;\nfunction pillStyles(tokens) {\n /* istanbul ignore next */\n if (!Object.keys(tokens).length) {\n // eslint-disable-next-line no-console\n devWarning('Missing Emotion theme. Use ThemeProvider from @emotion/react to pass a valid theme from pp-react.');\n return {};\n }\n\n var sysColorBackgroundSurface = tokens.sysColorBackgroundSurface,\n sysColorSelectedRangeMain = tokens.sysColorSelectedRangeMain,\n sysColorSelectedRangeContrast = tokens.sysColorSelectedRangeContrast,\n sysSpaceTiny = tokens.sysSpaceTiny,\n sysSpaceXs = tokens.sysSpaceXs,\n sysSpaceSm = tokens.sysSpaceSm,\n sysSpaceLg = tokens.sysSpaceLg;\n var pill = css(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n label: pill;\\n background-color: \", \";\\n padding-block: 0 0;\\n padding-inline: \", \" 0;\\n white-space: nowrap;\\n border-radius: 100px;\\n position: relative;\\n display: inline-grid;\\n grid-gap: \", \";\\n grid-template-columns: 1fr auto;\\n place-items: center;\\n \"])), sysColorSelectedRangeMain, sysSpaceLg, sysSpaceXs);\n\n var _textStyles = textStyles(tokens),\n captionStrong = _textStyles.captionStrong;\n\n var pillLabel = css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n label: pill_label;\\n \", \"\\n text-overflow: ellipsis;\\n white-space: nowrap;\\n \"])), captionStrong({\n color: sysColorSelectedRangeContrast\n }));\n var buttonSpace = css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral([\"\\n label: btn_space;\\n margin: \", \";\\n \"])), sysSpaceTiny);\n var pillTray = css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral([\"\\n label: pill_tray;\\n background-color: \", \";\\n \"])), sysColorBackgroundSurface);\n var pillTrayScroller = css(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral([\"\\n label: pill_scroll;\\n overflow-x: scroll;\\n margin: 0;\\n padding: \", \" \", \" \", \";\\n display: flex;\\n column-gap: \", \";\\n \"])), sysSpaceSm, sysSpaceSm, sysSpaceLg, sysSpaceSm);\n return {\n pill: pill,\n pillLabel: pillLabel,\n buttonSpace: buttonSpace,\n pillTray: pillTray,\n pillTrayScroller: pillTrayScroller\n };\n}\n\nvar _excluded = [\"as\", \"value\", \"className\", \"dismissButtonLabel\", \"onDismiss\", \"children\"];\n\nvar Pill = function (_ref) {\n var _ref$as = _ref.as,\n Component = _ref$as === void 0 ? 'div' : _ref$as,\n _ref$value = _ref.value,\n value = _ref$value === void 0 ? 'value' : _ref$value,\n className = _ref.className,\n _ref$dismissButtonLab = _ref.dismissButtonLabel,\n dismissButtonLabel = _ref$dismissButtonLab === void 0 ? 'dismiss' : _ref$dismissButtonLab,\n onDismiss = _ref.onDismiss,\n children = _ref.children,\n rest = _objectWithoutProperties(_ref, _excluded);\n\n /* istanbul ignore next */\n if (!onDismiss) {\n onDismiss = function () {\n return devWarning('Required prop `onDismiss` is missing');\n };\n }\n\n var tokens = useTheme();\n var styles = pillStyles(tokens);\n\n var handleClick = function (evt) {\n var target = evt.target;\n onDismiss(target.dataset.value);\n };\n\n return jsx(Component, _extends({\n css: styles.pill,\n role: \"listitem\",\n className: className\n }, rest, {\n \"data-ppui\": \"true\"\n }), jsx(\"label\", {\n css: styles.pillLabel,\n \"data-ppui\": \"true\"\n }, children), jsx(IconButton, {\n buttonType: \"tertiary\",\n size: \"sm\",\n css: styles.buttonSpace,\n \"data-value\": value,\n svgIconComponent: CloseIcon,\n onClick: handleClick,\n \"data-ppui\": \"true\"\n }, dismissButtonLabel));\n};\n\nvar PillTray = function (_ref) {\n var children = _ref.children;\n var tokens = useTheme();\n\n var _pillStyles = pillStyles(tokens),\n pillTray = _pillStyles.pillTray,\n pillTrayScroller = _pillStyles.pillTrayScroller;\n\n return jsx(\"div\", {\n css: pillTray,\n \"data-ppui-info\": \"pill_2.3.6\"\n }, jsx(\"div\", {\n css: pillTrayScroller,\n role: \"list\",\n \"data-ppui\": \"true\"\n }, children));\n};\n\nexport { Pill, PillTray, pillStyles };\n","import _toConsumableArray from '@babel/runtime/helpers/esm/toConsumableArray';\nimport React, { createContext, Children, useContext } from 'react';\nimport { jsx } from '@emotion/react';\n\n/** @jsxFrag React.Fragment */\n\nvar PPTemplateContext = createContext({\n partMap: {}\n});\n\nvar addChild = function (map, key, child) {\n if (!map.hasOwnProperty(key)) {\n map[key] = [];\n } else if (!Array.isArray(map[key])) {\n map[key] = [map[key]];\n } // istanbul ignore next\n\n\n if (Array.isArray(child)) {\n var _map$key;\n\n (_map$key = map[key]).push.apply(_map$key, _toConsumableArray(child));\n } else {\n map[key].push(child);\n }\n\n return map;\n};\n\n// istanbul ignore next\nvar NamePart = function (_ref) {\n var children = _ref.children;\n return jsx(React.Fragment, null, children);\n};\nvar collateChildren = function (children) {\n var partMap = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var anonymousName = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '$anonymous';\n return Children.toArray(children).reduce(function (childMap, child) {\n var childElem = child;\n\n if (typeof childElem.type === 'function') {\n var displayName = childElem.type.name;\n\n if (displayName === 'NamePart') {\n var _childElem$props$name;\n\n return addChild(childMap, (_childElem$props$name = childElem.props.name) !== null && _childElem$props$name !== void 0 ? _childElem$props$name : anonymousName, childElem);\n }\n }\n\n return addChild(childMap, anonymousName, child);\n }, partMap);\n};\nvar PartProvider = function (_ref2) {\n var parts = _ref2.parts,\n partMap = _ref2.partMap,\n children = _ref2.children,\n anonymousName = _ref2.anonymousName;\n var collatedParts = collateChildren(parts, partMap, anonymousName);\n return jsx(PPTemplateContext.Provider, {\n value: {\n partMap: collatedParts\n },\n \"data-ppui\": \"true\"\n }, children);\n};\nvar IncludePart = function (_ref3) {\n var name = _ref3.name;\n var templateContext = useContext(PPTemplateContext);\n var partMap = templateContext.partMap;\n return partMap[name];\n};\n\nexport { IncludePart, NamePart, PPTemplateContext, PartProvider, collateChildren };\n","import { useMemo } from 'react';\nimport { IncludePart, PartProvider } from '@paypalcorp/pp-react-template';\nimport { css, useTheme, jsx } from '@emotion/react';\nimport _taggedTemplateLiteral from '@babel/runtime/helpers/esm/taggedTemplateLiteral';\nimport { devWarning, utilStyles } from '@paypalcorp/pp-react-utils';\n\nvar _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5;\nfunction styles(tokens) {\n /* istanbul ignore next */\n if (!Object.keys(tokens).length) {\n devWarning('Missing Emotion theme. Use ThemeProvider from @emotion/react to pass a valid theme from pp-react.');\n return {};\n }\n\n var sysColorBackgroundSurface = tokens.sysColorBackgroundSurface,\n sysSpaceSm = tokens.sysSpaceSm,\n sysSpaceMd = tokens.sysSpaceMd,\n sysSpaceJumbo = tokens.sysSpaceJumbo;\n\n var _utilStyles = utilStyles(tokens),\n elevationStyles = _utilStyles.elevationStyles;\n\n var base = css(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n display: grid;\\n grid-template-rows: auto 1fr auto;\\n height: 100%;\\n \"])));\n var header = css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n padding: \", \" \", \";\\n \"])), sysSpaceSm, sysSpaceMd);\n var footer = css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral([\"\\n padding: \", \" \", \";\\n \"])), sysSpaceSm, sysSpaceMd);\n var content = css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral([\"\\n position: relative;\\n overflow: hidden;\\n z-index: 0;\\n\\n &:before {\\n content: '';\\n position: absolute;\\n top: -1rem;\\n left: 0;\\n right: 0;\\n display: block;\\n height: 1rem;\\n box-shadow: \", \";\\n z-index: -1;\\n }\\n\\n &:after {\\n content: '';\\n position: absolute;\\n bottom: -1rem;\\n left: 0;\\n right: 0;\\n display: block;\\n height: 1rem;\\n box-shadow: \", \";\\n z-index: -1;\\n }\\n \"])), elevationStyles.level3, elevationStyles.level3Above);\n var scroller = css(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral([\"\\n padding: 0 \", \";\\n height: 100%;\\n overflow: scroll;\\n background: linear-gradient(\\n to bottom,\\n \", \",\\n transparent \", \",\\n transparent calc(100% - \", \"),\\n \", \" 100%\\n );\\n background-attachment: local;\\n \"])), sysSpaceMd, sysColorBackgroundSurface, sysSpaceJumbo, sysSpaceJumbo, sysColorBackgroundSurface);\n return {\n base: base,\n header: header,\n footer: footer,\n content: content,\n scroller: scroller\n };\n}\n\nvar ScrollBox = function (_ref) {\n var children = _ref.children,\n partMap = _ref.partMap;\n var tokens = useTheme();\n var scrollBoxStyles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n var headerSection = jsx(\"header\", {\n css: scrollBoxStyles.header,\n \"data-ppui\": \"true\"\n }, jsx(IncludePart, {\n name: \"header\",\n \"data-ppui\": \"true\"\n }));\n var footerSection = jsx(\"footer\", {\n css: scrollBoxStyles.footer,\n \"data-ppui\": \"true\"\n }, jsx(IncludePart, {\n name: \"footer\",\n \"data-ppui\": \"true\"\n }));\n return jsx(PartProvider, {\n parts: children,\n partMap: partMap,\n anonymousName: \"contents\",\n \"data-ppui\": \"true\"\n }, jsx(\"section\", {\n css: scrollBoxStyles.base,\n \"data-ppui\": \"true\"\n }, headerSection, jsx(\"div\", {\n css: scrollBoxStyles.content,\n \"data-ppui\": \"true\"\n }, jsx(\"div\", {\n css: scrollBoxStyles.scroller,\n \"data-ppui\": \"true\"\n }, jsx(IncludePart, {\n name: \"contents\",\n \"data-ppui\": \"true\"\n }))), footerSection));\n};\n\nexport { ScrollBox };\n","import _extends from '@babel/runtime/helpers/esm/extends';\nimport _slicedToArray from '@babel/runtime/helpers/esm/slicedToArray';\nimport _objectWithoutProperties from '@babel/runtime/helpers/esm/objectWithoutProperties';\nimport { forwardRef, useMemo, useState } from 'react';\nimport { TextInput } from '@paypalcorp/pp-react-text-input';\nimport { IconButton } from '@paypalcorp/pp-react-icon-button';\nimport { DeclineIcon, SearchIcon } from '@paypalcorp/pp-react-icons';\nimport { css, useTheme, jsx, ClassNames } from '@emotion/react';\nimport _taggedTemplateLiteral from '@babel/runtime/helpers/esm/taggedTemplateLiteral';\nimport { math } from 'polished';\nimport { devWarning } from '@paypalcorp/pp-react-utils';\n\nvar _templateObject, _templateObject2, _templateObject3, _templateObject4;\nfunction styles(tokens) {\n /* istanbul ignore next */\n if (!Object.keys(tokens).length) {\n devWarning('Missing Emotion theme. Use ThemeProvider from @emotion/react to pass a valid theme from pp-react.');\n return {};\n }\n\n var sysBorderThicknessEmphasis = tokens.sysBorderThicknessEmphasis,\n sysBorderThicknessNormal = tokens.sysBorderThicknessNormal,\n sysColorBackgroundMediumContrast = tokens.sysColorBackgroundMediumContrast,\n sysColorErrorMain = tokens.sysColorErrorMain,\n sysSizeIconSm = tokens.sysSizeIconSm,\n sysSizeIconXl = tokens.sysSizeIconXl,\n sysSpaceMd = tokens.sysSpaceMd,\n sysSpaceLg = tokens.sysSpaceLg;\n var base = css(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n label: search_input;\\n border-radius: \", \";\\n padding-left: \", \";\\n\\n &:not(:focus) {\\n border-color: \", \";\\n box-shadow: none;\\n }\\n\\n [dir='rtl'] & {\\n padding-right: \", \";\\n }\\n \"])), sysSizeIconXl, math(\"3 * \".concat(sysSpaceMd, \" + \").concat(sysSizeIconSm, \" - \").concat(sysBorderThicknessNormal)), sysColorBackgroundMediumContrast, math(\"3 * \".concat(sysSpaceMd, \" + \").concat(sysSizeIconSm, \" - \").concat(sysBorderThicknessNormal)));\n var label = css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n label: label;\\n left: \", \";\\n\\n [dir='rtl'] & {\\n right: \", \";\\n }\\n \"])), math(\"3 * \".concat(sysSpaceMd, \" + \").concat(sysSizeIconSm)), math(\"3 * \".concat(sysSpaceMd, \" + \").concat(sysSizeIconSm)));\n var leftIcon = css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral([\"\\n label: left_icon;\\n left: \", \";\\n\\n [dir='rtl'] & {\\n right: \", \";\\n }\\n \"])), math(\"2 * \".concat(sysSpaceMd)), math(\"2 * \".concat(sysSpaceMd)));\n var error = css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral([\"\\n label: error;\\n padding: \", \"\\n \", \"\\n \", \"\\n \", \";\\n\\n &:not(:focus) {\\n border-color: \", \";\\n box-shadow: none;\\n }\\n \"])), math(\"\".concat(sysSpaceLg, \" + \").concat(sysBorderThicknessEmphasis)), math(\"3 * \".concat(sysSpaceMd, \" + \").concat(sysSizeIconSm, \" - \").concat(sysBorderThicknessEmphasis)), math(\"\".concat(sysSpaceLg, \" + \").concat(sysBorderThicknessEmphasis)), math(\"3 * \".concat(sysSpaceMd, \" + \").concat(sysSizeIconSm, \" - \").concat(sysBorderThicknessEmphasis)), sysColorErrorMain);\n return {\n base: base,\n label: label,\n leftIcon: leftIcon,\n error: error\n };\n}\n\nvar _excluded = [\"keepClearButton\", \"onClear\", \"className\", \"clearButtonLabel\", \"clearButtonAriaLabel\", \"inputClassName\", \"labelClassName\", \"errorText\", \"label\", \"value\", \"onKeyDown\"];\nvar SearchInput = forwardRef(function (props, ref) {\n var keepClearButton = props.keepClearButton,\n onClear = props.onClear,\n className = props.className,\n _props$clearButtonLab = props.clearButtonLabel,\n clearButtonLabel = _props$clearButtonLab === void 0 ? 'Clear input' : _props$clearButtonLab,\n _props$clearButtonAri = props.clearButtonAriaLabel,\n clearButtonAriaLabel = _props$clearButtonAri === void 0 ? 'The info has been cleared' : _props$clearButtonAri,\n inputClassName = props.inputClassName,\n labelClassName = props.labelClassName,\n errorText = props.errorText,\n label = props.label,\n value = props.value,\n onKeyDown = props.onKeyDown,\n rest = _objectWithoutProperties(props, _excluded);\n\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n var _useState = useState(false),\n _useState2 = _slicedToArray(_useState, 2),\n cleared = _useState2[0],\n setCleared = _useState2[1];\n\n /* istanbul ignore next */\n var handleKey = function (evt) {\n if (cleared) {\n setCleared(false);\n }\n\n if (evt.key === 'Escape' && onClear) {\n onClear(evt);\n }\n\n if (onKeyDown) {\n onKeyDown(evt);\n }\n };\n\n var clearButtonProps = cleared ? {\n 'aria-label': clearButtonAriaLabel,\n 'aria-atomic': 'true',\n 'aria-live': 'polite',\n role: 'button'\n } : null;\n var clearButton = value || keepClearButton ? {\n rightIcon: jsx(IconButton, _extends({\n buttonType: \"tertiary\",\n svgIconComponent: DeclineIcon,\n onClick: function handleClearClick(evt) {\n /* istanbul ignore next */\n if (onClear) {\n onClear(evt);\n setCleared(true);\n }\n },\n onMouseDown: function onMouseDown(evt) {\n return evt.preventDefault();\n } // remove focus on click\n\n }, clearButtonProps, {\n \"data-ppui\": \"true\"\n }), clearButtonLabel)\n } : null;\n return jsx(ClassNames, {\n \"data-ppui\": \"true\"\n }, function (_ref) {\n var css = _ref.css,\n cx = _ref.cx;\n return jsx(TextInput, _extends({\n className: className,\n ref: ref,\n leftIcon: jsx(SearchIcon, {\n size: \"sm\",\n \"aria-hidden\": \"true\",\n \"data-ppui\": \"true\"\n }),\n leftIconCSS: _styles.leftIcon\n }, clearButton, {\n inputClassName: cx(css([_styles.base, errorText && _styles.error]), inputClassName),\n labelClassName: cx(css([_styles.label]), labelClassName),\n errorText: errorText,\n isLabelHidden: true,\n placeholder: label,\n label: label,\n value: value,\n \"data-ppui-info\": \"search-input_2.3.8\"\n }, rest, {\n onKeyDown: handleKey\n }));\n });\n});\n\nexport { SearchInput, styles as searchInputStyles };\n","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, { useMemo } from 'react';\nimport { CriticalIcon } from '@paypalcorp/pp-react-icons';\nimport { css, useTheme, jsx } from '@emotion/react';\nimport _taggedTemplateLiteral from '@babel/runtime/helpers/esm/taggedTemplateLiteral';\nimport { math } from 'polished';\nimport { textStyles, CaptionText } from '@paypalcorp/pp-react-text';\nimport { devWarning, utilStyles, uniqueId } from '@paypalcorp/pp-react-utils';\n\nvar _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14, _templateObject15, _templateObject16, _templateObject17, _templateObject18, _templateObject19, _templateObject20, _templateObject21, _templateObject22, _templateObject23, _templateObject24, _templateObject25, _templateObject26;\nfunction styles(tokens) {\n /* istanbul ignore next */\n if (!Object.keys(tokens).length) {\n devWarning('Missing Emotion theme. Use ThemeProvider from @emotion/react to pass a valid theme from pp-react.');\n return {};\n }\n\n var sysSpaceMd = tokens.sysSpaceMd,\n sysSpaceSm = tokens.sysSpaceSm,\n sysBorderThicknessNormal = tokens.sysBorderThicknessNormal,\n sysSpaceXs = tokens.sysSpaceXs,\n sysMotionDurationAction = tokens.sysMotionDurationAction,\n sysBorderThicknessEmphasis = tokens.sysBorderThicknessEmphasis,\n sysBorderThicknessFocus = tokens.sysBorderThicknessFocus,\n sysSizeMediaSm = tokens.sysSizeMediaSm,\n sysSizeMediaMd = tokens.sysSizeMediaMd,\n sysColorBackgroundHighContrast = tokens.sysColorBackgroundHighContrast,\n sysColorPrimaryMain = tokens.sysColorPrimaryMain,\n sysColorBackgroundSurface = tokens.sysColorBackgroundSurface,\n sysColorSecondaryMain = tokens.sysColorSecondaryMain,\n sysColorBackgroundMediumContrast = tokens.sysColorBackgroundMediumContrast,\n sysColorErrorMain = tokens.sysColorErrorMain;\n // 60px\n var selectionGroupBorderRadius = '0.375rem';\n var selectionGroupLabelPadding = math(\"\".concat(sysSpaceMd, \" - \").concat(sysBorderThicknessNormal)); // 11px\n\n var selectionGroupErrorLabelPadding = math(\"\".concat(sysSpaceMd, \" - \").concat(sysBorderThicknessEmphasis)); // 10px\n\n var selectionGroupErrorSelectedLabelPadding = math(\"\".concat(sysSpaceMd, \" - \").concat(sysBorderThicknessFocus)); // 9px\n\n var selectionGroupFocusBorderWidthInner = math(\"\".concat(sysBorderThicknessNormal, \" + \").concat(sysBorderThicknessEmphasis)); // 3px\n\n var selectionGroupFocusBorderHeightWidth = '0.125rem';\n\n var _textStyles = textStyles(tokens),\n caption = _textStyles.caption,\n body = _textStyles.body;\n\n var _utilStyles = utilStyles(tokens),\n elevationStyles = _utilStyles.elevationStyles,\n focusStyles = _utilStyles.focusStyles;\n\n var borderAfterStyles = css(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n content: '';\\n position: absolute;\\n top: -\", \";\\n left: -\", \";\\n right: 0;\\n border-radius: \", \";\\n width: \", \";\\n height: \", \";\\n pointer-events: none;\\n \"])), sysBorderThicknessNormal, sysBorderThicknessNormal, selectionGroupBorderRadius, \"calc(100% + \".concat(selectionGroupFocusBorderHeightWidth, \")\"), \"calc(100% + \".concat(selectionGroupFocusBorderHeightWidth, \")\"));\n\n function secondaryStyle() {\n return css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n background-color: \", \";\\n color: \", \";\\n border-color: \", \";\\n border-width: \", \";\\n padding: \", \";\\n z-index: 1;\\n -webkit-text-stroke-width: \", \"; // Hack to stop selection group from jumping since having a bold font-family will increase the width of the text and ultimately the width of the button\\n \"])), sysColorBackgroundSurface, sysColorSecondaryMain, sysColorSecondaryMain, sysBorderThicknessNormal, selectionGroupLabelPadding, '0.0421875rem');\n }\n\n function verticalOrientation() {\n return css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral([\"\\n flex-direction: column;\\n min-width: auto;\\n \"])));\n }\n\n var base = css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral([\"\\n label: selection_group_base;\\n box-sizing: border-box;\\n border-style: none;\\n padding: 0;\\n text-align: left;\\n [dir='rtl'] & {\\n text-align: right;\\n }\\n \"])));\n var buttons = css(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral([\"\\n label: buttons;\\n display: flex;\\n flex-wrap: wrap;\\n position: relative;\\n min-width: \", \";\\n margin-top: -\", \";\\n margin-right: -\", \";\\n [dir='rtl'] & {\\n margin-right: 0;\\n margin-left: -\", \";\\n }\\n \"])), '18rem', sysSpaceMd, sysSpaceMd, sysSpaceMd);\n var buttonsResponsiveXs = css(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral([\"\\n label: buttons_responsive_xs;\\n @media (max-width: \", \") {\\n \", \";\\n }\\n \"])), '25rem', verticalOrientation());\n var buttonsResponsiveSm = css(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral([\"\\n label: buttons_responsive_sm;\\n @media (max-width: \", \") {\\n \", \";\\n }\\n \"])), sysSizeMediaSm, verticalOrientation());\n var buttonsResponsiveMd = css(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral([\"\\n label: buttons_responsive_md;\\n @media (max-width: \", \") {\\n \", \";\\n }\\n \"])), sysSizeMediaMd, verticalOrientation());\n var verticalButtons = css(_templateObject9 || (_templateObject9 = _taggedTemplateLiteral([\"\\n label: buttons_vertical;\\n margin-top: 0;\\n display: grid;\\n grid-auto-rows: 1fr;\\n gap: \", \";\\n \", \";\\n \"])), sysSpaceMd, verticalOrientation());\n var groupLabel = css(_templateObject10 || (_templateObject10 = _taggedTemplateLiteral([\"\\n label: group_label;\\n \", \";\\n display: block;\\n color: \", \";\\n margin-bottom: \", \";\\n \"])), body(), sysColorBackgroundHighContrast, sysSpaceMd);\n var helperText = css(_templateObject11 || (_templateObject11 = _taggedTemplateLiteral([\"\\n label: helper_text;\\n \", \";\\n display: block;\\n list-style: none; // In case it's a list of helper texts\\n padding-left: 0;\\n margin: \", \" 0 0 0;\\n \"])), caption({\n color: sysColorBackgroundMediumContrast\n }), sysSpaceSm);\n var errorText = css(_templateObject12 || (_templateObject12 = _taggedTemplateLiteral([\"\\n label: error_text;\\n \", \";\\n display: flex;\\n align-items: center;\\n margin-top: \", \";\\n margin-bottom: 0;\\n \"])), caption({\n color: sysColorBackgroundMediumContrast\n }), sysSpaceXs);\n var errorIcon = css(_templateObject13 || (_templateObject13 = _taggedTemplateLiteral([\"\\n label: error_icon;\\n color: \", \";\\n margin-right: \", \";\\n margin-left: initial;\\n [dir='rtl'] & {\\n margin-left: \", \";\\n margin-right: initial;\\n }\\n \"])), sysColorErrorMain, sysSpaceXs, sysSpaceXs);\n var centerButtons = css(_templateObject14 || (_templateObject14 = _taggedTemplateLiteral([\"\\n label: center;\\n justify-content: center;\\n \"])));\n var justifyButtons = css(_templateObject15 || (_templateObject15 = _taggedTemplateLiteral([\"\\n label: justify;\\n justify-content: stretch;\\n \"])));\n var control = css(_templateObject16 || (_templateObject16 = _taggedTemplateLiteral([\"\\n label: control;\\n position: absolute;\\n clip: rect(0, 0, 0, 0);\\n pointer-events: none;\\n /* We're hiding these so no need to use rems */\\n width: 1px;\\n height: 1px;\\n &:focus + label {\\n outline: none;\\n border-width: \", \";\\n padding: \", \";\\n &:hover {\\n border: \", \" solid \", \";\\n }\\n &:after {\\n \", \";\\n }\\n \", \";\\n }\\n &:checked + label {\\n background-color: \", \";\\n color: \", \";\\n -webkit-text-stroke-width: inherit;\\n z-index: 1;\\n span {\\n color: \", \";\\n }\\n div {\\n color: \", \";\\n }\\n &:hover {\\n border-color: \", \";\\n }\\n }\\n \"])), sysBorderThicknessNormal, selectionGroupLabelPadding, sysBorderThicknessNormal, sysColorSecondaryMain, borderAfterStyles, focusStyles.focusOffsetElement, sysColorPrimaryMain, sysColorBackgroundSurface, sysColorBackgroundSurface, sysColorBackgroundSurface, sysColorBackgroundSurface);\n var primaryLabelWhenFocusedAndChecked = css(_templateObject17 || (_templateObject17 = _taggedTemplateLiteral([\"\\n label: primary_label_when_focused_and_checked;\\n input:checked:focus + label:after {\\n border: \", \" solid\\n \", \";\\n }\\n \"])), selectionGroupFocusBorderWidthInner, sysColorPrimaryMain);\n var label = css(_templateObject18 || (_templateObject18 = _taggedTemplateLiteral([\"\\n label: label;\\n \", \";\\n \", \";\\n display: flex;\\n flex-direction: column;\\n justify-content: center;\\n background-color: \", \";\\n padding: \", \";\\n margin-top: \", \";\\n margin-right: \", \";\\n text-align: center;\\n cursor: pointer;\\n user-select: none;\\n border: \", \" solid \", \";\\n border-radius: \", \";\\n position: relative;\\n transition: color \", \" ease,\\n background-color \", \" ease,\\n border-color \", \" ease;\\n min-height: \", \";\\n min-width: \", \";\\n &:hover {\\n background: \", \";\\n border-color: \", \";\\n }\\n [dir='rtl'] & {\\n margin-right: 0;\\n margin-left: \", \";\\n }\\n \"])), body(), elevationStyles.level1, sysColorBackgroundSurface, selectionGroupLabelPadding, sysSpaceMd, sysSpaceMd, sysBorderThicknessNormal, sysColorBackgroundSurface, selectionGroupBorderRadius, sysMotionDurationAction, sysMotionDurationAction, sysMotionDurationAction, '3.75rem', '5.125rem', sysColorBackgroundSurface, sysColorSecondaryMain, sysSpaceMd);\n var secondaryLabelVertical = css(_templateObject19 || (_templateObject19 = _taggedTemplateLiteral([\"\\n label: secondary_label_vertical;\\n text-align: left;\\n [dir='rtl'] & {\\n text-align: right;\\n }\\n \"])));\n var verticalLabel = css(_templateObject20 || (_templateObject20 = _taggedTemplateLiteral([\"\\n label: label_vertical;\\n margin-right: 0;\\n margin-top: 0;\\n \"])));\n var justifyLabel = css(_templateObject21 || (_templateObject21 = _taggedTemplateLiteral([\"\\n label: label_justify;\\n flex: 1 0 auto;\\n \"])));\n var secondary = css(_templateObject22 || (_templateObject22 = _taggedTemplateLiteral([\"\\n label: secondary;\\n input:checked + label {\\n \", \";\\n &:after {\\n \", \";\\n border: \", \" solid \", \";\\n }\\n &:hover {\\n border: \", \" solid \", \";\\n }\\n span {\\n color: \", \";\\n }\\n }\\n input:focus + label:after {\\n border-color: \", \";\\n }\\n \"])), secondaryStyle(), borderAfterStyles, sysBorderThicknessFocus, sysColorSecondaryMain, sysBorderThicknessNormal, sysColorSecondaryMain, sysColorSecondaryMain, sysColorSecondaryMain);\n var secondaryLabelTwo = css(_templateObject23 || (_templateObject23 = _taggedTemplateLiteral([\"\\n label: secondary_label_two;\\n \", \";\\n \"])), caption({\n color: sysColorBackgroundMediumContrast\n }));\n var errorLabel = css(_templateObject24 || (_templateObject24 = _taggedTemplateLiteral([\"\\n label: error_label;\\n border-width: \", \";\\n background-color: \", \";\\n border-color: \", \";\\n padding: \", \";\\n \"])), sysBorderThicknessEmphasis, sysColorBackgroundSurface, sysColorErrorMain, selectionGroupErrorLabelPadding);\n var errorLabelWhenChecked = css(_templateObject25 || (_templateObject25 = _taggedTemplateLiteral([\"\\n label: error_label_when_checked;\\n input:checked + label {\\n label: label_error_when_checked;\\n padding: \", \";\\n border: \", \" solid \", \";\\n z-index: 1;\\n &:hover {\\n border: \", \" solid \", \";\\n }\\n &:after {\\n border: none;\\n }\\n }\\n \"])), selectionGroupErrorSelectedLabelPadding, sysBorderThicknessFocus, sysColorErrorMain, sysBorderThicknessFocus, sysColorErrorMain);\n var errorLabelWhenFocus = css(_templateObject26 || (_templateObject26 = _taggedTemplateLiteral([\"\\n label: error_label_when_focus;\\n input:focus + label {\\n padding: \", \";\\n border: \", \" solid \", \";\\n &:hover {\\n border-color: \", \";\\n border-width: \", \";\\n }\\n &:after {\\n border: none;\\n }\\n }\\n \"])), selectionGroupErrorLabelPadding, sysBorderThicknessEmphasis, sysColorErrorMain, sysColorErrorMain, sysBorderThicknessEmphasis);\n return {\n base: base,\n buttons: buttons,\n buttonsResponsiveXs: buttonsResponsiveXs,\n buttonsResponsiveSm: buttonsResponsiveSm,\n buttonsResponsiveMd: buttonsResponsiveMd,\n verticalButtons: verticalButtons,\n centerButtons: centerButtons,\n justifyButtons: justifyButtons,\n groupLabel: groupLabel,\n helperText: helperText,\n errorText: errorText,\n errorIcon: errorIcon,\n control: control,\n label: label,\n verticalLabel: verticalLabel,\n justifyLabel: justifyLabel,\n primaryLabelWhenFocusedAndChecked: primaryLabelWhenFocusedAndChecked,\n secondary: secondary,\n secondaryLabelTwo: secondaryLabelTwo,\n errorLabel: errorLabel,\n errorLabelWhenChecked: errorLabelWhenChecked,\n errorLabelWhenFocus: errorLabelWhenFocus,\n secondaryLabelVertical: secondaryLabelVertical\n };\n}\n\nvar FieldGroupMessage = function (_ref) {\n var errorText = _ref.errorText,\n errorIconAriaLabel = _ref.errorIconAriaLabel,\n helperText = _ref.helperText,\n msgId = _ref.msgId;\n var tokens = useTheme(); // Fetch tokens from Emotion context\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]); // Get either the error message or helper text or... nothing\n\n\n return errorText && jsx(\"p\", {\n css: _styles.errorText,\n id: msgId,\n \"data-ppui\": \"true\"\n }, jsx(CriticalIcon, {\n css: _styles.errorIcon,\n size: \"sm\",\n role: \"img\",\n \"aria-label\": errorIconAriaLabel,\n \"data-ppui\": \"true\"\n }), errorText) || helperText && jsx(\"p\", {\n css: _styles.helperText,\n id: msgId,\n \"data-ppui\": \"true\"\n }, helperText) || null;\n};\n\nvar _excluded = [\"value\", \"label\", \"secondaryLabel\", \"id\", \"className\", \"onMouseOver\"],\n _excluded2 = [\"className\", \"errorText\", \"errorIconAriaLabel\", \"helperText\", \"id\", \"label\", \"hideLabel\", \"name\", \"value\", \"align\", \"responsive\", \"secondary\", \"options\", \"onChange\", \"alignContent\"];\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nvar renderSingleButtons = function (options, name, inputValue, onChange, error, msgId, align, _styles, alignContent, rest) {\n if (!options.length) {\n return jsx(\"em\", {\n \"data-ppui\": \"true\"\n }, \"No options to choose from\");\n }\n\n return options.map(function (_ref, index) {\n var value = _ref.value,\n label = _ref.label,\n secondaryLabel = _ref.secondaryLabel,\n _ref$id = _ref.id,\n id = _ref$id === void 0 ? \"selection_\".concat(name, \"_\").concat(value) : _ref$id,\n className = _ref.className,\n onMouseOver = _ref.onMouseOver,\n optionRest = _objectWithoutProperties(_ref, _excluded);\n\n var checked = value === inputValue;\n var valueProps = onChange ? {\n onChange: onChange,\n value: value,\n checked: checked\n } : {\n value: value,\n defaultChecked: checked\n };\n\n var otherInputAttr = _objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread({}, msgId && index === 0 && {\n 'aria-describedby': msgId\n }), error && {\n 'aria-invalid': true\n }), valueProps), rest), optionRest);\n\n var labelCSS = [_styles.label, align === 'vertical' && alignContent === 'left' && _styles.secondaryLabelVertical, error && _styles.errorLabel, align && _styles[align + 'Label']];\n return jsx(React.Fragment, {\n key: index\n }, jsx(\"input\", _extends({\n type: \"radio\",\n name: name,\n id: id,\n css: _styles.control\n }, otherInputAttr, {\n \"data-ppui\": \"true\"\n })), jsx(\"label\", _extends({\n className: className,\n css: labelCSS\n }, {\n htmlFor: id,\n onMouseOver: onMouseOver\n }, {\n \"data-ppui\": \"true\"\n }), label, secondaryLabel && jsx(CaptionText, _extends({\n css: _styles.secondaryLabelTwo\n }, typeof secondaryLabel === 'string' ? {\n as: 'span'\n } : null, align === 'vertical' ? {\n clampAtLine: 3\n } : null, {\n \"data-ppui\": \"true\"\n }), secondaryLabel)));\n });\n};\n\nvar SingleSelectionGroup = function (_ref2) {\n var className = _ref2.className,\n errorText = _ref2.errorText,\n _ref2$errorIconAriaLa = _ref2.errorIconAriaLabel,\n errorIconAriaLabel = _ref2$errorIconAriaLa === void 0 ? 'Error' : _ref2$errorIconAriaLa,\n helperText = _ref2.helperText,\n _ref2$id = _ref2.id,\n id = _ref2$id === void 0 ? uniqueId('SelectionGroup_') : _ref2$id,\n label = _ref2.label,\n hideLabel = _ref2.hideLabel,\n _ref2$name = _ref2.name,\n name = _ref2$name === void 0 ? 'singleSelect' : _ref2$name,\n _ref2$value = _ref2.value,\n value = _ref2$value === void 0 ? '' : _ref2$value,\n align = _ref2.align,\n responsive = _ref2.responsive,\n secondary = _ref2.secondary,\n _ref2$options = _ref2.options,\n options = _ref2$options === void 0 ? [] : _ref2$options,\n onChange = _ref2.onChange,\n _ref2$alignContent = _ref2.alignContent,\n alignContent = _ref2$alignContent === void 0 ? 'center' : _ref2$alignContent,\n rest = _objectWithoutProperties(_ref2, _excluded2);\n\n var tokens = useTheme(); // Fetch tokens from Emotion context\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n var error = !!errorText;\n var msgId = errorText && \"errorMessage_\".concat(id) || helperText && \"helperMessage_\".concat(id);\n var containerCSS = [_styles.base, secondary && _styles.secondary];\n var buttonBarCSS = [_styles.buttons, //@ts-ignore\n align && _styles[align + 'Buttons'], !error && !secondary && _styles.primaryLabelWhenFocusedAndChecked, error && _styles.errorLabelWhenFocus, error && _styles.errorLabelWhenChecked, responsive && // @ts-ignore\n _styles['buttonsResponsive' + responsive.charAt(0).toUpperCase() + responsive.charAt(1)]];\n return (//@ts-ignore\n jsx(\"fieldset\", _extends({\n className: className,\n css: containerCSS,\n \"aria-label\": hideLabel ? label : null,\n \"data-ppui-info\": \"selection-group_4.6.6\"\n }, rest), !hideLabel && jsx(\"legend\", {\n css: _styles.groupLabel,\n \"data-ppui\": \"true\"\n }, label), jsx(\"div\", {\n css: buttonBarCSS,\n \"data-ppui\": \"true\"\n }, renderSingleButtons(options, name, value, onChange, error, msgId, align, _styles, alignContent, rest)), jsx(FieldGroupMessage, {\n errorText: errorText,\n errorIconAriaLabel: errorIconAriaLabel,\n helperText: helperText,\n msgId: msgId,\n \"data-ppui\": \"true\"\n }))\n );\n};\n\nvar _excluded$1 = [\"value\", \"label\", \"secondaryLabel\", \"name\", \"className\", \"checked\", \"onChange\", \"id\", \"onMouseOver\"],\n _excluded2$1 = [\"className\", \"errorText\", \"errorIconAriaLabel\", \"helperText\", \"id\", \"label\", \"hideLabel\", \"align\", \"responsive\", \"secondary\", \"options\", \"onChange\", \"alignContent\"];\n\nfunction ownKeys$1(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread$1(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$1(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$1(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nvar renderMultiButtons = function (options, masterOnChange, error, msgId, align, _styles, alignContent, rest) {\n if (!options.length) {\n return jsx(\"em\", {\n \"data-ppui\": \"true\"\n }, \"No options to choose from\");\n }\n\n return options.map(function (_ref, index) {\n var value = _ref.value,\n label = _ref.label,\n secondaryLabel = _ref.secondaryLabel,\n name = _ref.name,\n className = _ref.className,\n checked = _ref.checked,\n _ref$onChange = _ref.onChange,\n onChange = _ref$onChange === void 0 ? masterOnChange : _ref$onChange,\n _ref$id = _ref.id,\n id = _ref$id === void 0 ? \"selection_\".concat(name) : _ref$id,\n onMouseOver = _ref.onMouseOver,\n optionRest = _objectWithoutProperties(_ref, _excluded$1);\n\n var valueProps = onChange ? {\n onChange: onChange,\n value: value,\n checked: checked\n } : {\n value: value,\n defaultChecked: checked\n };\n\n var otherInputAttr = _objectSpread$1(_objectSpread$1(_objectSpread$1(_objectSpread$1(_objectSpread$1({}, msgId && index === 0 && {\n 'aria-describedby': msgId\n }), error && {\n 'aria-invalid': true\n }), valueProps), rest), optionRest);\n\n var labelCSS = [_styles.label, align === 'vertical' && alignContent === 'left' && _styles.secondaryLabelVertical, error && _styles.errorLabel, align && _styles[align + 'Label']];\n return jsx(React.Fragment, {\n key: index\n }, jsx(\"input\", _extends({\n type: \"checkbox\",\n name: name,\n id: id,\n css: _styles.control\n }, otherInputAttr, {\n \"data-ppui\": \"true\"\n })), jsx(\"label\", _extends({\n className: className,\n css: labelCSS\n }, {\n htmlFor: id,\n onMouseOver: onMouseOver\n }, {\n \"data-ppui\": \"true\"\n }), label, secondaryLabel && jsx(CaptionText, _extends({\n css: _styles.secondaryLabelTwo\n }, typeof secondaryLabel === 'string' ? {\n as: 'span'\n } : null, align === 'vertical' ? {\n clampAtLine: 3\n } : null, {\n \"data-ppui\": \"true\"\n }), secondaryLabel)));\n });\n};\n\nvar MultiSelectionGroup = function (_ref2) {\n var className = _ref2.className,\n errorText = _ref2.errorText,\n _ref2$errorIconAriaLa = _ref2.errorIconAriaLabel,\n errorIconAriaLabel = _ref2$errorIconAriaLa === void 0 ? 'Error' : _ref2$errorIconAriaLa,\n helperText = _ref2.helperText,\n _ref2$id = _ref2.id,\n id = _ref2$id === void 0 ? uniqueId('SelectionGroup_') : _ref2$id,\n _ref2$label = _ref2.label,\n label = _ref2$label === void 0 ? 'label' : _ref2$label,\n hideLabel = _ref2.hideLabel,\n align = _ref2.align,\n responsive = _ref2.responsive,\n secondary = _ref2.secondary,\n _ref2$options = _ref2.options,\n options = _ref2$options === void 0 ? [] : _ref2$options,\n onChange = _ref2.onChange,\n _ref2$alignContent = _ref2.alignContent,\n alignContent = _ref2$alignContent === void 0 ? 'center' : _ref2$alignContent,\n rest = _objectWithoutProperties(_ref2, _excluded2$1);\n\n var tokens = useTheme(); // Fetch tokens from Emotion context\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n var error = !!errorText;\n var msgId = errorText && \"errorMessage_\".concat(id) || helperText && \"helperMessage_\".concat(id);\n var containerCSS = [_styles.base, secondary && _styles.secondary];\n var buttonBarCSS = [_styles.buttons, //@ts-ignore\n align && _styles[align + 'Buttons'], !error && !secondary && _styles.primaryLabelWhenFocusedAndChecked, error && _styles.errorLabelWhenFocus, error && _styles.errorLabelWhenChecked, responsive && // @ts-ignore\n _styles['buttonsResponsive' + responsive.charAt(0).toUpperCase() + responsive.charAt(1)]];\n return (//@ts-ignore\n jsx(\"fieldset\", _extends({\n className: className,\n css: containerCSS,\n \"aria-label\": hideLabel ? label : null,\n \"data-ppui-info\": \"selection-group_4.6.6\"\n }, rest), !hideLabel && jsx(\"legend\", {\n css: _styles.groupLabel,\n \"data-ppui\": \"true\"\n }, label), jsx(\"div\", {\n css: buttonBarCSS,\n \"data-ppui\": \"true\"\n }, renderMultiButtons(options, onChange, error, msgId, align, _styles, alignContent, rest)), jsx(FieldGroupMessage, {\n errorText: errorText,\n errorIconAriaLabel: errorIconAriaLabel,\n helperText: helperText,\n msgId: msgId,\n \"data-ppui\": \"true\"\n }))\n );\n};\n\nexport { MultiSelectionGroup, SingleSelectionGroup, styles as selectionGroupStyles };\n","import _extends from '@babel/runtime/helpers/esm/extends';\nimport _objectWithoutProperties from '@babel/runtime/helpers/esm/objectWithoutProperties';\nimport React, { useMemo, useRef, useState, useLayoutEffect } from 'react';\nimport { css, useTheme, jsx } from '@emotion/react';\nimport _taggedTemplateLiteral from '@babel/runtime/helpers/esm/taggedTemplateLiteral';\nimport { math, rgba } from 'polished';\nimport { textStyles } from '@paypalcorp/pp-react-text';\nimport { devWarning, utilStyles, throttle, hasNavigator, KeyboardCode } from '@paypalcorp/pp-react-utils';\nimport _slicedToArray from '@babel/runtime/helpers/esm/slicedToArray';\nimport { IconButton } from '@paypalcorp/pp-react-icon-button';\nimport { ArrowLeftIcon, ArrowRightIcon } from '@paypalcorp/pp-react-icons';\n\nvar _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14, _templateObject15, _templateObject16, _templateObject17, _templateObject18, _templateObject19, _templateObject20;\nfunction styles(tokens) {\n /* istanbul ignore next */\n if (!Object.keys(tokens).length) {\n devWarning('Missing Emotion theme. Use ThemeProvider from @emotion/react to pass a valid theme from pp-react.');\n return {};\n }\n\n var sysColorBackgroundSurface = tokens.sysColorBackgroundSurface,\n sysBorderThicknessEmphasis = tokens.sysBorderThicknessEmphasis,\n sysSpaceXl = tokens.sysSpaceXl,\n sysColorStructureFocus = tokens.sysColorStructureFocus,\n sysMotionDurationMoveSmall = tokens.sysMotionDurationMoveSmall,\n sysColorPrimaryMain = tokens.sysColorPrimaryMain,\n sysSizeFieldSm = tokens.sysSizeFieldSm,\n sysSpaceLg = tokens.sysSpaceLg,\n sysSpaceMd = tokens.sysSpaceMd,\n sysSpaceJumbo = tokens.sysSpaceJumbo,\n sysBorderRadiusLg = tokens.sysBorderRadiusLg,\n sysColorPrimaryMainHover = tokens.sysColorPrimaryMainHover,\n sysColorPrimaryMainActive = tokens.sysColorPrimaryMainActive,\n sysSizeMediaSm = tokens.sysSizeMediaSm,\n sysSizeTapTargetDefault = tokens.sysSizeTapTargetDefault;\n\n var _utilStyles = utilStyles(tokens),\n elevationStyles = _utilStyles.elevationStyles,\n focusStyles = _utilStyles.focusStyles,\n variables = _utilStyles.variables;\n\n var _textStyles = textStyles(tokens),\n textBody = _textStyles.body;\n\n var tabPaddingLeft = math(\"\".concat(sysSpaceJumbo, \" + \").concat(sysSpaceXl));\n var noDisplay = css(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n display: none;\\n \"])));\n var blockDisplay = css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n display: block;\\n \"])));\n var tabWrapperBase = css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral([\"\\n label: tabs_wrapper_base;\\n position: relative;\\n \"])));\n var base = css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral([\"\\n label: tabs_base;\\n overflow-y: hidden;\\n white-space: nowrap;\\n position: relative;\\n scrollbar-width: none;\\n padding: \", \" \", \" \", \" \", \";\\n &::-webkit-scrollbar {\\n \", \"\\n }\\n \"])), sysSpaceXl, sysSpaceXl, sysSpaceXl, tabPaddingLeft, noDisplay);\n var tabsWrapper = css(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral([\"\\n label: tabs_wrapper;\\n display: flex;\\n float: left;\\n min-height: \", \";\\n align-items: center;\\n width: max-content;\\n position: relative;\\n [dir='rtl'] & {\\n float: right;\\n }\\n \"])), sysSizeFieldSm);\n var tabsCenter = css(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral([\"\\n label: tabs_center;\\n min-width: 100%;\\n width: auto;\\n min-height: \", \";\\n justify-content: center;\\n @media (max-width: \", \") {\\n width: auto;\\n justify-content: flex-start;\\n }\\n \"])), sysSizeFieldSm, sysSizeMediaSm);\n var tabsBtn = css(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral([\"\\n label: tabs_btn;\\n \", \"\\n padding: \", \" \", \";\\n min-height: \", \";\\n min-width: \", \";\\n max-width: \", \";\\n margin-inline-end: \", \";\\n outline: none;\\n position: relative;\\n border: none;\\n background-color: transparent;\\n white-space: normal;\\n word-wrap: break-word;\\n text-decoration: none;\\n flex-shrink: 0;\\n \", \"\\n align-items: center;\\n cursor: pointer;\\n border-radius: \", \";\\n z-index: 1;\\n &:last-of-type {\\n margin-inline-end: 0;\\n }\\n &:before {\\n left: 0;\\n bottom: 0;\\n right: 0;\\n position: relative;\\n \", \"\\n content: attr(data-button-text);\\n height: 0;\\n overflow: hidden;\\n visibility: hidden;\\n pointer-events: none;\\n }\\n &:after {\\n content: '';\\n position: absolute;\\n inset: 0;\\n border: none;\\n border-radius: \", \";\\n pointer-events: none;\\n }\\n &:hover {\\n text-decoration: none;\\n\\n &:after {\\n border: \", \" solid \", \";\\n }\\n }\\n &:active {\\n border-radius: \", \";\\n background: \", \";\\n text-decoration: none;\\n &:after {\\n border: \", \" solid \", \";\\n }\\n }\\n &:focus {\\n outline: none;\\n text-decoration: none;\\n \", \"\\n transform: none;\\n transition: none;\\n }\\n &:visited {\\n text-decoration: none;\\n }\\n \"])), textBody(), sysSpaceMd, sysSpaceLg, sysSizeFieldSm, '5.25rem', '11.5rem', sysSpaceLg, blockDisplay, math(\"\".concat(sysBorderRadiusLg, \" * 2\")), blockDisplay, math(\"\".concat(sysBorderRadiusLg, \" * 2\")), sysBorderThicknessEmphasis, sysColorPrimaryMainHover, math(\"\".concat(sysBorderRadiusLg, \" * 2\")), sysColorBackgroundSurface, sysBorderThicknessEmphasis, sysColorPrimaryMainActive, focusStyles.focusOffsetElement);\n var tabSlider = css(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral([\"\\n label: slider;\\n position: absolute;\\n top: 0;\\n left: 0;\\n width: 0;\\n height: 100%;\\n \", \"\\n -webkit-text-stroke-width: 0.0421875rem;\\n border-radius: \", \";\\n transition: all \", \" \", \";\\n \"])), elevationStyles.level1, math(\"\".concat(sysBorderRadiusLg, \" * 2\")), sysMotionDurationMoveSmall, variables.ppuiEaseMoveSmall);\n var tabsSelectedBtn = css(_templateObject9 || (_templateObject9 = _taggedTemplateLiteral([\"\\n label: tab_selected;\\n -webkit-text-stroke-width: 0.0421875rem;\\n color: \", \";\\n &:hover {\\n text-decoration: none;\\n &:after {\\n border: \", \" solid \", \";\\n }\\n }\\n \"])), sysColorPrimaryMain, sysBorderThicknessEmphasis, sysColorPrimaryMainHover);\n var tabsScrollBtn = css(_templateObject10 || (_templateObject10 = _taggedTemplateLiteral([\"\\n label: tabs_scroll_btn;\\n background-color: \", \";\\n position: absolute;\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n opacity: 0;\\n visibility: hidden;\\n width: \", \";\\n height: \", \";\\n top: 0;\\n \"])), sysColorBackgroundSurface, sysSizeTapTargetDefault, math(\"\".concat(sysSizeTapTargetDefault, \" * 2\")));\n var tabsScrollBtnLeft = css(_templateObject11 || (_templateObject11 = _taggedTemplateLiteral([\"\\n label: tabs_scroll_btn_left;\\n left: 0;\\n background: linear-gradient(\\n 90deg,\\n \", \" 47.45%,\\n \", \" 100%\\n );\\n z-index: 1;\\n \"])), sysColorBackgroundSurface, rgba(255, 255, 255, 0));\n var tabsScrollBtnRight = css(_templateObject12 || (_templateObject12 = _taggedTemplateLiteral([\"\\n label: tabs_scroll_btn_right;\\n right: 0;\\n background: linear-gradient(\\n 270deg,\\n \", \" 47.45%,\\n \", \" 100%\\n );\\n z-index: 1;\\n \"])), sysColorBackgroundSurface, rgba(255, 255, 255, 0));\n var tabsScrollBtnVisible = css(_templateObject13 || (_templateObject13 = _taggedTemplateLiteral([\"\\n label: btn_visible;\\n visibility: visible;\\n opacity: 1;\\n transition: visibility \", \",\\n opacity \", \";\\n \"])), sysMotionDurationMoveSmall, sysMotionDurationMoveSmall);\n var tabsArrowIcon = css(_templateObject14 || (_templateObject14 = _taggedTemplateLiteral([\"\\n label: tabs_arrow_icon;\\n color: \", \";\\n background: \", \";\\n \", \"\\n \"])), sysColorPrimaryMain, sysColorBackgroundSurface, elevationStyles.level1);\n var tabContent = css(_templateObject15 || (_templateObject15 = _taggedTemplateLiteral([\"\\n label: tabs_content;\\n margin: 0 \", \" 0 \", \";\\n\\n &:focus {\\n outline: none;\\n }\\n &[aria-hidden='true'] {\\n \", \"\\n }\\n \"])), sysSpaceXl, math(\"\".concat(sysSpaceXl, \" * 3\")), noDisplay);\n var tabContentFocus = css(_templateObject16 || (_templateObject16 = _taggedTemplateLiteral([\"\\n label: tabs_content_focus;\\n &:focus {\\n box-shadow: 0 0 \", \"\\n \", \" \", \";\\n }\\n \"])), sysBorderThicknessEmphasis, sysBorderThicknessEmphasis, sysColorStructureFocus);\n var hideBtn = css(_templateObject17 || (_templateObject17 = _taggedTemplateLiteral([\"\\n label: no_scroll_buttons;\\n \", \"\\n \"])), noDisplay);\n var tabContentVisible = css(_templateObject18 || (_templateObject18 = _taggedTemplateLiteral([\"\\n label: tab_content_visible;\\n \", \"\\n \"])), blockDisplay);\n var tabContentHidden = css(_templateObject19 || (_templateObject19 = _taggedTemplateLiteral([\"\\n label: tab_content_hidden;\\n \", \"\\n \"])), noDisplay);\n var navBackground = css(_templateObject20 || (_templateObject20 = _taggedTemplateLiteral([\"\\n label: tab_background;\\n \", \"\\n background: \", \";\\n \"])), elevationStyles.level3, sysColorBackgroundSurface);\n return {\n tabWrapperBase: tabWrapperBase,\n base: base,\n tabsWrapper: tabsWrapper,\n tabsCenter: tabsCenter,\n tabsBtn: tabsBtn,\n tabSlider: tabSlider,\n tabsSelectedBtn: tabsSelectedBtn,\n tabsScrollBtn: tabsScrollBtn,\n tabsScrollBtnLeft: tabsScrollBtnLeft,\n tabsScrollBtnRight: tabsScrollBtnRight,\n tabsScrollBtnVisible: tabsScrollBtnVisible,\n tabsArrowIcon: tabsArrowIcon,\n tabContent: tabContent,\n tabContentFocus: tabContentFocus,\n hideBtn: hideBtn,\n tabContentVisible: tabContentVisible,\n tabContentHidden: tabContentHidden,\n navBackground: navBackground\n };\n}\n\nvar _excluded = [\"id\", \"tabIdx\", \"label\", \"tabGroupId\", \"panelId\", \"selected\", \"onClick\", \"className\"];\nvar Tab = React.forwardRef(function (_ref, ref) {\n var id = _ref.id,\n tabIdx = _ref.tabIdx,\n label = _ref.label,\n tabGroupId = _ref.tabGroupId,\n panelId = _ref.panelId,\n selected = _ref.selected,\n onClick = _ref.onClick,\n className = _ref.className,\n rest = _objectWithoutProperties(_ref, _excluded);\n\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n var tabStyles = [_styles.tabsBtn, selected && _styles.tabsSelectedBtn];\n var focusable = selected ? 0 : -1;\n var tabId = id || \"\".concat(tabGroupId, \"-tab\").concat(parseInt(tabIdx, 10) + 1);\n return jsx(\"button\", _extends({\n ref: ref,\n \"data-tab-index\": tabIdx,\n id: tabId,\n css: tabStyles,\n className: className,\n \"aria-controls\": panelId,\n \"aria-selected\": selected,\n tabIndex: focusable,\n type: \"button\",\n role: \"tab\"\n }, rest, {\n onClick: onClick,\n \"data-button-text\": label,\n \"data-ppui\": \"true\"\n }), label);\n});\n\nvar _excluded$1 = [\"id\", \"panelId\", \"label\"];\n\nvar isRunningOnIEorEdge = function () {\n if (hasNavigator() && (/MSIE 9/i.test(navigator.userAgent) || /MSIE 10/i.test(navigator.userAgent) || /rv:11.0/i.test(navigator.userAgent) || /Edge\\/\\d./i.test(navigator.userAgent))) {\n return true;\n }\n\n return false;\n};\n\nvar getRefCurrent = function (myRef) {\n return (\n /* istanbul ignore next */\n myRef && myRef.current ? myRef.current : null\n );\n}; // for scrolling with transition\n\n\nvar SPEED = 25;\nvar DISTANCE = 120;\nvar STEP = 20; // eslint-disable-next-line max-statements\n\nvar Tabs = function (_ref) {\n var _ref$name = _ref.name,\n name = _ref$name === void 0 ? 'TabsGroup' : _ref$name,\n selectedTabIdx = _ref.selectedTabIdx,\n center = _ref.center,\n _ref$tabs = _ref.tabs,\n tabs = _ref$tabs === void 0 ? [] : _ref$tabs,\n onClick = _ref.onClick,\n className = _ref.className,\n tabClassName = _ref.tabClassName,\n tabsWrapperClassName = _ref.tabsWrapperClassName,\n children = _ref.children,\n _ref$scrollLeftLabel = _ref.scrollLeftLabel,\n scrollLeftLabel = _ref$scrollLeftLabel === void 0 ? 'scroll left' : _ref$scrollLeftLabel,\n _ref$scrollRightLabel = _ref.scrollRightLabel,\n scrollRightLabel = _ref$scrollRightLabel === void 0 ? 'scroll right' : _ref$scrollRightLabel,\n keepAlive = _ref.keepAlive,\n lazyLoad = _ref.lazyLoad,\n addBackgroundColor = _ref.addBackgroundColor;\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]);\n\n var navEleRef = useRef();\n var containerEleRef = useRef();\n var prevSelectedTabIdxRef = useRef(0);\n var sliderRef = useRef();\n var tabRef = useRef([]);\n var isTabsFocusedRef = useRef(false);\n var focusedIdxRef = useRef();\n\n var _useState = useState('none'),\n _useState2 = _slicedToArray(_useState, 2),\n overflowDir = _useState2[0],\n setOverflowDir = _useState2[1];\n\n var getSelectedTabIdx = function () {\n var index = typeof selectedTabIdx === 'string' ? parseInt(selectedTabIdx, 10) : Math.floor(selectedTabIdx);\n\n if (!selectedTabIdx || !index || index >= tabs.length || index < 0) {\n return 0;\n }\n\n return index;\n };\n /* istanbul ignore next */\n\n\n var determineOverflow = function () {\n var nav = getRefCurrent(navEleRef);\n\n if (nav) {\n var tabsWrapper = nav.children[0];\n var _scroll = nav.scrollLeft;\n var navRight = Math.floor(nav.getBoundingClientRect().right);\n var tabsRight = Math.floor(tabsWrapper.getBoundingClientRect().right);\n var navLeft = Math.floor(nav.getBoundingClientRect().left);\n var tabsLeft = Math.floor(tabsWrapper.getBoundingClientRect().left);\n\n if (_scroll === 0 && navRight > tabsRight && tabsLeft > navLeft) {\n setOverflowDir('none');\n return;\n }\n\n if (tabsLeft < navLeft && navRight < tabsRight) {\n setOverflowDir('both');\n return;\n }\n\n if (tabsRight > navRight) {\n setOverflowDir('right');\n return;\n }\n\n if (tabsLeft < navLeft) {\n setOverflowDir('left');\n return;\n }\n } // record that the function was called\n\n\n var evt = new Event('checkOverflow');\n window.dispatchEvent(evt);\n };\n\n var getWrapperCurrent = function (w) {\n return (\n /* istanbul ignore next */\n w && w.current ? w.current : null\n );\n }; // apply styles to the slider element based on the\n // dimention of the tab\n\n\n var applySliderStyles = function (element) {\n var _element$offsetParent;\n\n var slider = getWrapperCurrent(sliderRef);\n slider.style.left = \"\".concat((element === null || element === void 0 ? void 0 : element.getBoundingClientRect().left) - (element === null || element === void 0 ? void 0 : (_element$offsetParent = element.offsetParent) === null || _element$offsetParent === void 0 ? void 0 : _element$offsetParent.getBoundingClientRect().left), \"px\");\n slider.style.width = \"\".concat(element === null || element === void 0 ? void 0 : element.getBoundingClientRect().width, \"px\");\n slider.style.top = \"\".concat(element === null || element === void 0 ? void 0 : element.offsetTop, \"px\");\n slider.style.height = \"\".concat(element === null || element === void 0 ? void 0 : element.offsetHeight, \"px\");\n };\n\n var offsetFocus = function (offset) {\n var nav = getRefCurrent(navEleRef);\n var tabDomItems = nav.querySelectorAll('[role=\"tab\"]');\n var nextIndex = focusedIdxRef.current + offset;\n var index;\n /* istanbul ignore next */\n\n if (nextIndex === tabs.length) {\n index = 0;\n } else if (nextIndex === -1) {\n index = tabs.length - 1;\n } else {\n index = nextIndex;\n }\n\n tabDomItems[index].focus();\n tabDomItems[index].scrollIntoView({\n block: 'nearest'\n });\n focusedIdxRef.current = index;\n };\n\n var keyHandler = function (event) {\n /* istanbul ignore next */\n var KeyCode = new KeyboardCode(event.key || event.keyCode);\n var selectedIndex = getSelectedTabIdx();\n\n if (KeyCode.IS_ARROW_LEFT) {\n event.preventDefault();\n offsetFocus(-1);\n } else if (KeyCode.IS_ARROW_RIGHT) {\n event.preventDefault();\n offsetFocus(1);\n } else if (KeyCode.IS_ENTER || KeyCode.IS_SPACEBAR) {\n event.preventDefault();\n /* istanbul ignore next */\n\n if (selectedIndex !== focusedIdxRef.current) {\n onClick(event, focusedIdxRef.current);\n }\n }\n };\n\n var handleFocusOut = function (event) {\n isTabsFocusedRef.current = false;\n var newFocusedItem = event.relatedTarget;\n /* istanbul ignore next */\n\n if (!newFocusedItem || newFocusedItem.parentElement !== event.currentTarget) {\n // @ts-ignore\n document.removeEventListener('keydown', keyHandler, false); // reset focusedIdx to current selected tab\n\n focusedIdxRef.current = getSelectedTabIdx(); // add scroll arrows back when focus is out:\n\n determineOverflow();\n }\n };\n\n useLayoutEffect(function () {\n var nav = getRefCurrent(navEleRef);\n prevSelectedTabIdxRef.current = getSelectedTabIdx();\n /* istanbul ignore next */\n\n if (isTabsFocusedRef.current) {\n // @ts-ignore\n document.addEventListener('keydown', keyHandler, false);\n }\n\n nav.firstChild.addEventListener('focusout', // @ts-ignore\n handleFocusOut, false);\n return function () {\n // @ts-ignore\n document.removeEventListener('keydown', keyHandler, false);\n nav.firstChild.removeEventListener('focusout', // @ts-ignore\n handleFocusOut, false);\n };\n }, [tabs, selectedTabIdx, onClick]);\n useLayoutEffect(function () {\n var container = getRefCurrent(containerEleRef);\n var nav = getRefCurrent(navEleRef);\n var resizeObserver;\n focusedIdxRef.current = getSelectedTabIdx();\n var scrollButtons = container.querySelectorAll(\"[data-id=\\\"scroll-btn\\\"]\");\n\n if (!isRunningOnIEorEdge()) {\n determineOverflow(); // Check for overflow after window resize:\n\n /* istanbul ignore next */\n\n if (window.ResizeObserver) {\n resizeObserver = new ResizeObserver(function () {\n determineOverflow();\n });\n resizeObserver.observe(nav);\n } // adjust left/right arrow buttons height tof the tabs wrapper.\n\n\n var tabsWrapper = nav.children[0];\n /* istanbul ignore next */\n\n var btnHeight = (tabsWrapper.offsetHeight + tabsWrapper.offsetTop * 2).toString();\n /* istanbul ignore next */\n\n if (scrollButtons && tabsWrapper.offsetHeight !== scrollButtons[0].offsetHeight) {\n scrollButtons[0].style.height = \"\".concat(btnHeight, \"px\");\n scrollButtons[1].style.height = \"\".concat(btnHeight, \"px\");\n }\n }\n\n return function () {\n /* istanbul ignore next */\n if (resizeObserver) {\n resizeObserver.disconnect();\n }\n };\n }, []);\n useLayoutEffect(function () {\n // For the first time during initialisation\n focusedIdxRef.current = getSelectedTabIdx();\n /* istanbul ignore next */\n\n var resizeObserver = window.ResizeObserver ? new ResizeObserver(throttle(function () {\n applySliderStyles(tabRef.current[focusedIdxRef.current]);\n }, 100)) : null;\n /* istanbul ignore next */\n\n if (window.ResizeObserver) {\n resizeObserver.observe(containerEleRef.current);\n }\n\n return function () {\n /* istanbul ignore next */\n if (resizeObserver) {\n resizeObserver.disconnect();\n }\n };\n }, [selectedTabIdx]);\n\n var handleClick = function (event) {\n var nav = getRefCurrent(navEleRef);\n var tabDomItems = nav.querySelectorAll('[role=\"tab\"]');\n applySliderStyles(event.target);\n isTabsFocusedRef.current = false;\n /* istanbul ignore next */\n\n if (tabDomItems[focusedIdxRef.current]) {\n tabDomItems[focusedIdxRef.current].blur();\n }\n\n var tabIdxClicked = parseInt(event.currentTarget.getAttribute('data-tab-index'), 10); // This is tested, but coverage not registering it\n\n /* istanbul ignore next */\n\n if (tabIdxClicked) {\n focusedIdxRef.current = tabIdxClicked;\n }\n\n onClick(event, tabIdxClicked);\n };\n\n var handleFocus = function (event) {\n isTabsFocusedRef.current = true;\n var prevFocusedItem = event.relatedTarget;\n\n if (!prevFocusedItem || prevFocusedItem.parentElement !== event.currentTarget) {\n // @ts-ignore\n document.addEventListener('keydown', keyHandler, false); // remove arrows when navigating with keyboard:\n\n setOverflowDir('none');\n }\n };\n\n var handleTouchScroll = function () {\n var isScrolling;\n window.clearTimeout(isScrolling);\n /* istanbul ignore next */\n\n isScrolling = setTimeout(function () {\n determineOverflow();\n }, 15);\n };\n /* istanbul ignore next */\n\n\n var scroll = function (direction) {\n var nav = getRefCurrent(navEleRef); // scroll with transition\n\n var scrollAmount = 0;\n var slideTimer = window.setInterval(function () {\n if (direction === 'right') {\n nav.scrollLeft += STEP;\n } else {\n nav.scrollLeft -= STEP;\n }\n\n scrollAmount += STEP;\n\n if (scrollAmount >= DISTANCE) {\n window.clearInterval(slideTimer);\n }\n }, SPEED);\n setTimeout(function () {\n determineOverflow();\n }, 150); // record that scroll event was called\n\n var evt = new Event('tabsScrolled');\n window.dispatchEvent(evt);\n };\n\n var selectedIndex = getSelectedTabIdx();\n var leftScrollCssVal = [_styles.tabsScrollBtn, _styles.tabsScrollBtnLeft,\n /* istanbul ignore next */\n (overflowDir === 'left' || overflowDir === 'both') && _styles.tabsScrollBtnVisible, isRunningOnIEorEdge() && _styles.hideBtn];\n var rightScrollCssVal = [_styles.tabsScrollBtn, _styles.tabsScrollBtnRight,\n /* istanbul ignore next */\n (overflowDir === 'right' || overflowDir === 'both') && _styles.tabsScrollBtnVisible, isRunningOnIEorEdge() && _styles.hideBtn];\n var scrollButtonFocus = -1;\n var selectedId;\n var tabItems = tabs.map(function (tab, index) {\n var id = tab.id,\n panelId = tab.panelId,\n label = tab.label,\n otherTabProps = _objectWithoutProperties(tab, _excluded$1); // update animation (only on the selected tab)\n\n\n if (index === selectedIndex) {\n selectedId = tab.id || \"\".concat(name, \"-tab\").concat(index + 1);\n }\n\n return jsx(Tab, _extends({\n key: \"\".concat(name, \"-tab\").concat(index + 1),\n id: id,\n ref: function ref(el) {\n return tabRef.current[index] = el;\n },\n tabIdx: index.toString(),\n label: label,\n tabGroupId: name,\n panelId: panelId,\n selected: index === selectedIndex,\n onClick: handleClick,\n className: tabClassName\n }, otherTabProps, {\n \"data-ppui\": \"true\"\n }));\n }); // Get selected tab panel and update selected tab panel props\n\n var tabContentItem;\n\n if (keepAlive || lazyLoad) {\n tabContentItem = React.Children.toArray(children).map(function (_panel, idx) {\n var isSelected = selectedIndex === idx;\n /* istanbul ignore next */\n\n return React.cloneElement(_panel, {\n hidden: !isSelected,\n tabId: isSelected ? selectedId : undefined,\n visible: keepAlive ? true : isSelected\n });\n });\n } else {\n var tabPanel = React.Children.toArray(children).filter(function (_panel, idx) {\n return selectedIndex === idx;\n })[0];\n tabContentItem = React.cloneElement(tabPanel, {\n tabId: selectedId,\n hidden: false\n });\n }\n\n var otherIconButtonAttr = {\n buttonType: 'secondary',\n css: _styles.tabsArrowIcon\n };\n return jsx(\"div\", {\n ref: containerEleRef,\n id: name,\n css: _styles.tabWrapperBase,\n className: className,\n \"data-ppui-info\": \"tabs_3.10.6\"\n }, jsx(\"nav\", {\n css: [_styles.base, addBackgroundColor && _styles.navBackground],\n id: \"\".concat(name, \"-nav\"),\n ref: navEleRef,\n onScroll: function onScroll() {\n return handleTouchScroll();\n },\n \"data-ppui\": \"true\"\n }, jsx(\"div\", {\n id: \"\".concat(name, \"-tabs\"),\n className: tabsWrapperClassName,\n css: [_styles.tabsWrapper, center && _styles.tabsCenter],\n role: \"tablist\",\n onFocus: function onFocus(e) {\n return handleFocus(e);\n },\n onMouseDown: function onMouseDown(e) {\n return e.preventDefault();\n } // remove focus on click\n ,\n \"data-ppui\": \"true\"\n }, tabItems, jsx(\"div\", {\n ref: sliderRef,\n css: [_styles.tabSlider],\n \"data-ppui\": \"true\"\n }))), jsx(\"span\", {\n \"data-id\": \"scroll-btn\",\n css: leftScrollCssVal,\n \"data-ppui\": \"true\"\n }, jsx(IconButton, _extends({\n inverse: true,\n svgIconComponent: ArrowLeftIcon,\n \"aria-label\": scrollLeftLabel,\n tabIndex: scrollButtonFocus,\n onClick: function () {\n return scroll('left');\n }\n }, otherIconButtonAttr, {\n \"data-ppui\": \"true\"\n }), scrollLeftLabel)), jsx(\"span\", {\n \"data-id\": \"scroll-btn\",\n css: rightScrollCssVal,\n \"data-ppui\": \"true\"\n }, jsx(IconButton, _extends({\n inverse: true,\n svgIconComponent: ArrowRightIcon,\n tabIndex: scrollButtonFocus,\n onClick: function () {\n return scroll('right');\n }\n }, otherIconButtonAttr, {\n \"data-ppui\": \"true\"\n }), scrollRightLabel)), tabContentItem);\n};\n\nvar _excluded$2 = [\"id\", \"tabId\", \"hidden\", \"className\", \"visible\", \"children\"];\n\nvar TabPanel = function (_ref) {\n var id = _ref.id,\n tabId = _ref.tabId,\n hidden = _ref.hidden,\n className = _ref.className,\n _ref$visible = _ref.visible,\n visible = _ref$visible === void 0 ? true : _ref$visible,\n children = _ref.children,\n rest = _objectWithoutProperties(_ref, _excluded$2);\n\n var hasMouseClickFocus = useRef(false);\n\n var _useState = useState(false),\n _useState2 = _slicedToArray(_useState, 2),\n mouseFocus = _useState2[0],\n updateMouseFocus = _useState2[1];\n\n var tokens = useTheme();\n\n var _styles = useMemo(function () {\n return styles(tokens);\n }, [tokens]); // Ref variable to determine whether to render the component or not.\n\n\n var hasRendered = useRef(visible);\n /* istanbul ignore next */\n\n if (visible && !hasRendered.current) {\n hasRendered.current = true;\n }\n /* istanbul ignore next */\n\n\n if (!hasRendered.current) {\n // Do not re-render the TabPanel when its already present in the DOM.\n return null;\n } // to prevent tab panel from getting focus on mouse-click\n\n\n var tabContentStyles = [_styles.tabContent, !mouseFocus && _styles.tabContentFocus,\n /* istanbul ignore next */\n visible ? _styles.tabContentVisible : _styles.tabContentHidden];\n return jsx(\"div\", _extends({\n id: id,\n css: tabContentStyles,\n className: className,\n \"aria-labelledby\": tabId,\n \"aria-hidden\": hidden,\n tabIndex: 0,\n role: \"tabpanel\",\n onFocus: function handleFocus() {\n var hasClickFocus = hasMouseClickFocus.current ? true : false;\n updateMouseFocus(hasClickFocus);\n hasMouseClickFocus.current = false;\n },\n onMouseDown: function handleMouseDown() {\n hasMouseClickFocus.current = true;\n }\n }, rest, {\n \"data-ppui\": \"true\"\n }), children);\n};\n\nexport { Tab, TabPanel, Tabs, styles as tabsStyles };\n","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _globalize = require(\"@paypalcorp/globalize\");\n\nvar _globalize2 = _interopRequireDefault(_globalize);\n\nvar _zonedDateTime = require(\"zoned-date-time\");\n\nvar _zonedDateTime2 = _interopRequireDefault(_zonedDateTime);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar second = 1e3;\nvar minute = 6e4;\nvar hour = 36e5;\nvar day = 864e5;\n// const week = 6048e5;\n// const month = 2592e6;\n\nfunction defineCachedGetter(obj, prop, get) {\n defineGetter(obj, prop, function () {\n if (!this._[prop]) {\n this._[prop] = get.call(this);\n }\n return this._[prop];\n });\n}\n\nfunction defineGetter(obj, prop, get) {\n Object.defineProperty(obj, prop, { get: get });\n}\n\nfunction startOf(date, unit) {\n date = date instanceof _zonedDateTime2.default ? date.clone() : new Date(date.getTime());\n switch (unit) {\n case \"year\":\n date.setMonth(0);\n // falls through\n case \"month\":\n date.setDate(1);\n // falls through\n case \"day\":\n date.setHours(0);\n // falls through\n case \"hour\":\n date.setMinutes(0);\n // falls through\n case \"minute\":\n date.setSeconds(0);\n // falls through\n case \"second\":\n date.setMilliseconds(0);\n }\n return date;\n}\n\nvar RelativeTime = function () {\n function RelativeTime() {\n _classCallCheck(this, RelativeTime);\n\n this.formatters = RelativeTime.initializeFormatters.apply(RelativeTime, arguments);\n }\n\n _createClass(RelativeTime, [{\n key: \"format\",\n value: function format(date) {\n var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},\n _ref$timeZoneData = _ref.timeZoneData,\n timeZoneData = _ref$timeZoneData === undefined ? null : _ref$timeZoneData,\n _ref$unit = _ref.unit,\n unit = _ref$unit === undefined ? \"best-fit\" : _ref$unit;\n\n var formatters = this.formatters;\n var now = new Date();\n\n if (timeZoneData) {\n date = new _zonedDateTime2.default(date, timeZoneData);\n now = new _zonedDateTime2.default(now, timeZoneData);\n }\n\n var diff = {\n _: {},\n ms: date.getTime() - now.getTime(),\n years: date.getFullYear() - now.getFullYear()\n };\n var round = Math[diff.ms > 0 ? \"floor\" : \"ceil\"];\n\n defineCachedGetter(diff, \"months\", function () {\n return this.years * 12 + date.getMonth() - now.getMonth();\n });\n defineCachedGetter(diff, \"days\", function () {\n return round((startOf(date, \"day\") - startOf(now, \"day\")) / day);\n });\n defineCachedGetter(diff, \"hours\", function () {\n return round((startOf(date, \"hour\") - startOf(now, \"hour\")) / hour);\n });\n defineCachedGetter(diff, \"minutes\", function () {\n return round((startOf(date, \"minute\") - startOf(now, \"minute\")) / minute);\n });\n defineCachedGetter(diff, \"seconds\", function () {\n return round((startOf(date, \"second\") - startOf(now, \"second\")) / second);\n });\n\n var absDiff = {\n _: {}\n };\n\n defineGetter(absDiff, \"years\", function () {\n return Math.abs(diff.years);\n });\n defineGetter(absDiff, \"months\", function () {\n return Math.abs(diff.months);\n });\n defineGetter(absDiff, \"days\", function () {\n return Math.abs(diff.days);\n });\n defineGetter(absDiff, \"hours\", function () {\n return Math.abs(diff.hours);\n });\n defineGetter(absDiff, \"minutes\", function () {\n return Math.abs(diff.minutes);\n });\n defineGetter(absDiff, \"seconds\", function () {\n return Math.abs(diff.seconds);\n });\n\n if (unit === \"best-fit\") {\n unit = RelativeTime.bestFit(absDiff);\n }\n\n switch (unit) {\n case \"year\":\n return formatters.year(diff.years);\n case \"month\":\n return formatters.month(diff.months);\n // case \"week\": return formatters.week(diff.weeks);\n case \"day\":\n return formatters.day(diff.days);\n case \"hour\":\n return formatters.hour(diff.hours);\n case \"minute\":\n return formatters.minute(diff.minutes);\n default:\n return formatters.second(diff.seconds);\n }\n }\n }]);\n\n return RelativeTime;\n}();\n\nexports.default = RelativeTime;\n\n\nRelativeTime.bestFit = function (absDiff) {\n var threshold = this.threshold;\n switch (true) {\n case absDiff.years > 0 && absDiff.months > threshold.month:\n return \"year\";\n case absDiff.months > 0 && absDiff.days > threshold.day:\n return \"month\";\n // case absDiff.months > 0 && absDiff.weeks > threshold.week: return \"month\";\n // case absDiff.weeks > 0 && absDiff.days > threshold.day: return \"week\";\n case absDiff.days > 0 && absDiff.hours > threshold.hour:\n return \"day\";\n case absDiff.hours > 0 && absDiff.minutes > threshold.minute:\n return \"hour\";\n case absDiff.minutes > 0 && absDiff.seconds > threshold.second:\n return \"minute\";\n default:\n return \"second\";\n }\n};\n\nRelativeTime.threshold = {\n month: 2, // at least 2 months before using year.\n // week: 4, // at least 4 weeks before using month.\n day: 6, // at least 6 days before using month.\n hour: 6, // at least 6 hours before using day.\n minute: 59, // at least 59 minutes before using hour.\n second: 59 // at least 59 seconds before using minute.\n};\n\n// TODO: Remove redundancy. The only reason this code is that ugly is to get\n// supported by globalize-compiler (which reads the static formatters).\nRelativeTime.initializeFormatters = function (globalize) {\n if (globalize) {\n return {\n second: globalize.relativeTimeFormatter(\"second\"),\n minute: globalize.relativeTimeFormatter(\"minute\"),\n hour: globalize.relativeTimeFormatter(\"hour\"),\n day: globalize.relativeTimeFormatter(\"day\"),\n month: globalize.relativeTimeFormatter(\"month\"),\n year: globalize.relativeTimeFormatter(\"year\")\n };\n }\n return {\n second: _globalize2.default.relativeTimeFormatter(\"second\"),\n minute: _globalize2.default.relativeTimeFormatter(\"minute\"),\n hour: _globalize2.default.relativeTimeFormatter(\"hour\"),\n day: _globalize2.default.relativeTimeFormatter(\"day\"),\n month: _globalize2.default.relativeTimeFormatter(\"month\"),\n year: _globalize2.default.relativeTimeFormatter(\"year\")\n };\n};\n","import 'core-js/modules/es.array.map';\nimport 'core-js/modules/es.regexp.exec';\nimport 'core-js/modules/es.string.replace';\nimport 'core-js/modules/es.string.split';\nimport Globalize from '@paypalcorp/globalize/dist/globalize';\nimport { isPlainObject } from 'is-plain-object';\nimport { assertType, assert } from 'yaassertion';\n\n/**\n * Given a locale, it will return certain old locales to new form\n * @param {locale} locale to replace\n * @return {new_locale}\n */\nfunction normalizeLocale(locale) {\n // prettier-ignore\n return locale.replace(/\\bno\\b/, \"nb\").replace(/\\btl\\b/, \"fil\");\n}\n\n/**\n * Function that normalizes locale according to paypal standards. It performs the following operations on locale:\n * 1) replaces '_' with '-' in locale string. E.g., 'en_US' will be replaced with 'en-US'\n * 2) replaces 'C2' with 'CN-xbord'. E.g., 'en-C2' will be 'en-CN-xbord'\n * 3) replaces no with nb\n * 4) replaces tl with fil. E.g., 'tl-PH' will be replaced to 'fil-PH'\n * @param {String} locale bcp-47 locale value (en-US, fr-FR, etc)\n * @param {Object} options an object that can take prop named langSubtag\n * @returns {String} normalized locale value\n */\nfunction _normalizeLocale(locale, _temp) {\n var _ref = _temp === void 0 ? {} : _temp,\n _ref$langSubtag = _ref.langSubtag,\n langSubtag = _ref$langSubtag === void 0 ? true : _ref$langSubtag;\n if (locale.payPalLocaleCode) {\n // A payPalLocaleCode to existing limited locale support.\n var _locale$payPalLocaleC = locale.payPalLocaleCode,\n _locale = _locale$payPalLocaleC.locale,\n _country = _locale$payPalLocaleC.country;\n var _locale$split = _locale.split(/[-_]/),\n _localeLanguage = _locale$split[0];\n locale = _localeLanguage + \"-\" + _country;\n\n // A payPalLocaleCode to standard locale normalization: (when PayPal supports all locales anywhere)\n // const { locale: _locale } = locale.payPalLocaleCode;\n // const [_localeLanguage, _localeCountry] = _locale.split(/[-_]/);\n // if (_localeCountry === \"XC\") {\n // if (_localeLanguage === \"es\") {\n // // es_XC -> es-MX\n // locale = \"es-MX\";\n // } else {\n // // fr_XC -> fr\n // // zh_XC -> zh\n // locale = _localeLanguage;\n // }\n // } else {\n // locale = _locale;\n // }\n }\n if (process.env.NODE_ENV !== \"production\") {\n assert(typeof locale === \"string\", typeof locale === \"object\" ? \"Invalid locale {{locale}}. Did you mean {{didYouMean}}?\" : \"Invalid locale {{locale}}\", {\n locale: locale,\n didYouMean: {\n payPalLocaleCode: locale\n }\n });\n }\n locale = locale\n // Support both _ & - as locale separator.\n // Note: This must precede other replaces using `\\b`.\n .replace(/_/, \"-\")\n // If locale includes C2, replace it with CN-xbord\n .replace(/\\bC2\\b/, \"CN-xbord\");\n if (langSubtag) {\n locale = normalizeLocale(locale);\n }\n return locale;\n}\nvar countryAliasMapping = {\n C2: \"CN\",\n UK: \"GB\"\n};\nfunction getResolvedRegion(region) {\n return countryAliasMapping[region] || region;\n}\nvar DOCUMENTATION_HOMEPAGE = \"https://github.paypal.com/pages/Globalization-R/worldready-js/docs\";\n\n// Internationalization and localization data providers array:\nvar isWorldReadyLoadCalled;\nvar isWorldReadyInstance = function isWorldReadyInstance(object) {\n return object && object.globalize;\n};\n\n/**\n * Region\n */\nvar Region = /*#__PURE__*/function () {\n function Region() {}\n Region.getRegionString = function getRegionString(worldReadyOrRegionOrString) {\n if (worldReadyOrRegionOrString && worldReadyOrRegionOrString.region) {\n return getResolvedRegion(worldReadyOrRegionOrString.region);\n }\n return getResolvedRegion(worldReadyOrRegionOrString);\n };\n return Region;\n}();\nif (process.env.NODE_ENV !== \"production\") {\n Region.assertType = function (parameterValue, parameterName) {\n assertType(parameterValue, parameterName, [\"string\", \"object\"]);\n };\n}\n\n/**\n * WorldReady\n */\nvar WorldReady = function WorldReady(locale) {\n var _main;\n if (process.env.NODE_ENV !== \"production\") {\n assert(isWorldReadyLoadCalled, \"Load WorldReady metadata first. Please read \" + DOCUMENTATION_HOMEPAGE + \"/about-load-worldready-data.html\");\n }\n if (!(this instanceof WorldReady)) {\n return new WorldReady(locale);\n }\n\n // TODO assert locale\n locale = _normalizeLocale(locale);\n\n // Hack: set any locale as available locale.\n Globalize.load({\n main: (_main = {}, _main[locale] = {}, _main)\n });\n this.globalize = new Globalize(locale);\n var cldr = this.globalize.cldr;\n this.bundle = cldr.attributes.bundle;\n this.locale = cldr.locale;\n this.language = cldr.attributes.language;\n this.region = cldr.attributes.region;\n this.market = this.region;\n this.weekInfo = {\n minDays: cldr.get([\"supplemental/weekData/minDays\", this.region]) || cldr.get(\"supplemental/weekData/minDays/001\"),\n firstDay: cldr.get([\"supplemental/weekData/firstDay\", this.region]) || cldr.get(\"supplemental/weekData/firstDay/001\"),\n weekendStart: cldr.get([\"supplemental/weekData/weekendStart\", this.region]) || cldr.get(\"supplemental/weekData/weekendStart/001\"),\n weekendEnd: cldr.get([\"supplemental/weekData/weekendEnd\", this.region]) || cldr.get(\"supplemental/weekData/weekendEnd/001\")\n };\n this.metadata = cldr.get([\"metadata\"]) || {};\n};\n\n/**\n * async WorldReady.load()\n */\n{\n // Client-side\n WorldReady.load = function () {\n // TODO assert params\n isWorldReadyLoadCalled = true;\n for (var _len = arguments.length, providers = new Array(_len), _key = 0; _key < _len; _key++) {\n providers[_key] = arguments[_key];\n }\n providers.map(function (provider) {\n if (isPlainObject(provider)) {\n Globalize.load(provider);\n return;\n }\n throw new Error(\"Oops: Async provider not supported in browsers at the moment\");\n });\n };\n}\nWorldReady._Globalize = Globalize;\n\n/**\n * WorldReady features skeleton\n */\nif (process.env.NODE_ENV !== \"production\") {\n var loadError = function loadError(feature) {\n return function () {\n throw new Error(\"Missing feature, you may want to `import @paypalcorp/worldready-\" + feature + \"`\");\n };\n };\n WorldReady.prototype.Address = loadError(\"address\");\n WorldReady.prototype.RelativeTimeFormat = loadError(\"relative-time\");\n WorldReady.prototype.MessageFormat = loadError(\"message\");\n WorldReady.prototype.NumberFormat = loadError(\"number\");\n WorldReady.prototype.CurrencyFormat = loadError(\"currency\");\n}\nvar Griffin = WorldReady;\n\nexport { Griffin, Region, WorldReady, isWorldReadyInstance };\n","import 'core-js/modules/es.array.concat';\nimport 'core-js/modules/es.array.join';\nimport 'core-js/modules/es.array.map';\nimport 'core-js/modules/es.array.slice';\nimport 'core-js/modules/es.array.splice';\nimport 'core-js/modules/es.object.assign';\nimport 'core-js/modules/es.object.values';\nimport 'core-js/modules/es.regexp.exec';\nimport 'core-js/modules/es.string.replace';\nimport 'core-js/modules/es.string.split';\nimport { isWorldReadyInstance } from '@paypalcorp/worldready-core';\nimport { assert, assertType, assertRange } from 'yaassertion';\nimport { NumberFormat } from '@paypalcorp/worldready-number';\nimport '@paypalcorp/globalize/dist/globalize/number';\nimport '@paypalcorp/globalize/dist/globalize/currency';\nimport '@paypalcorp/globalize/dist/globalize/plural';\n\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n }\n return target;\n}\n\nvar _excluded = [\"style\", \"currency\"];\nvar getMissingMetadataError = function getMissingMetadataError(path) {\n var message = \"Missing WorldReady metadata, please refer to https://github.paypal.com/pages/Globalization-R/worldready-js/docs/about-load-worldready-data.html\";\n if (path) {\n message += \"\\nPath: \" + path;\n }\n return new Error(message);\n};\nfunction globalizeToWorldReadyError(error) {\n if (error.code === \"E_MISSING_CLDR\") {\n return getMissingMetadataError(error.stack);\n }\n return new Error([\"Oops, internal error\", error.message, error.stack].join(\"\\n\"));\n}\nfunction validateCldr(path, value, options) {\n if (options === void 0) {\n options = {\n skip: []\n };\n }\n var skipBoolean = options.skip.some(function (regex) {\n return regex.test(path);\n });\n if (skipBoolean) {\n return;\n }\n if (value === undefined) {\n throw getMissingMetadataError(path);\n }\n}\n\n/**\n * Note:\n * - Below, we \"borrow code\" from globalize since it doesn't export the resolved properties.\n * https://github.com/globalizejs/globalize/blob/8f4f2bffed00231aa2f7f4f46c3a4687ace46ab6/src/number.js\n * https://github.com/globalizejs/globalize/blob/8f4f2bffed00231aa2f7f4f46c3a4687ace46ab6/src/number/pattern-properties.js\n * https://github.com/globalizejs/globalize/blob/8f4f2bffed00231aa2f7f4f46c3a4687ace46ab6/src/number/format-properties.js\n * - NOT using numberFormatter.runtimeArgs because it's NOT available when code is minified.\n *\n * TODO: Expose resolvedOptions() in globalize and reuse it here.\n */\n\nfunction numberNumberingSystem(cldr) {\n var nu = cldr.attributes[\"u-nu\"];\n if (nu) {\n if (nu === \"traditio\") {\n nu = \"traditional\";\n }\n if ([\"native\", \"traditional\", \"finance\"].indexOf(nu) !== -1) {\n // Unicode locale extension `u-nu` is set using either (native, traditional or\n // finance). So, lookup the respective locale's numberingSystem and return it.\n return cldr.main([\"numbers/otherNumberingSystems\", nu]);\n }\n\n // Unicode locale extension `u-nu` is set with an explicit numberingSystem. Return it.\n return nu;\n }\n\n // Return the default numberingSystem.\n return cldr.main(\"numbers/defaultNumberingSystem\");\n}\nfunction numberPattern(style, cldr) {\n if (style !== \"decimal\" && style !== \"percent\") {\n throw new Error(\"Invalid style\");\n }\n return cldr.main([\"numbers\", style + \"Formats-numberSystem-\" + numberNumberingSystem(cldr), \"standard\"]);\n}\n\n/**\n * Note:\n * - Below, we \"borrow code\" from globalize since it doesn't export the resolved properties.\n * https://github.com/globalizejs/globalize/blob/8f4f2bffed00231aa2f7f4f46c3a4687ace46ab6/src/currency.js\n * https://github.com/globalizejs/globalize/blob/8f4f2bffed00231aa2f7f4f46c3a4687ace46ab6/src/number/pattern-properties.js\n * https://github.com/globalizejs/globalize/blob/8f4f2bffed00231aa2f7f4f46c3a4687ace46ab6/src/number/format-properties.js\n * - NOT using numberFormatter.runtimeArgs because it's NOT available when code is minified.\n *\n * TODO: Expose resolvedOptions() in globalize and reuse it here.\n */\n\n// eslint-disable-next-line\nvar regexpNotS = /[\\0-#%-\\*,-;\\?-\\]_a-\\{\\}\\x7F-\\xA1\\xA7\\xAA\\xAB\\xAD\\xB2\\xB3\\xB5-\\xB7\\xB9-\\xD6\\xD8-\\xF6\\xF8-\\u02C1\\u02C6-\\u02D1\\u02E0-\\u02E4\\u02EC\\u02EE\\u0300-\\u0374\\u0376-\\u0383\\u0386-\\u03F5\\u03F7-\\u0481\\u0483-\\u058C\\u0590-\\u0605\\u0609\\u060A\\u060C\\u060D\\u0610-\\u06DD\\u06DF-\\u06E8\\u06EA-\\u06FC\\u06FF-\\u07F5\\u07F7-\\u09F1\\u09F4-\\u09F9\\u09FC-\\u0AF0\\u0AF2-\\u0B6F\\u0B71-\\u0BF2\\u0BFB-\\u0C7E\\u0C80-\\u0D78\\u0D7A-\\u0E3E\\u0E40-\\u0F00\\u0F04-\\u0F12\\u0F14\\u0F18\\u0F19\\u0F20-\\u0F33\\u0F35\\u0F37\\u0F39-\\u0FBD\\u0FC6\\u0FCD\\u0FD0-\\u0FD4\\u0FD9-\\u109D\\u10A0-\\u138F\\u139A-\\u17DA\\u17DC-\\u193F\\u1941-\\u19DD\\u1A00-\\u1B60\\u1B6B-\\u1B73\\u1B7D-\\u1FBC\\u1FBE\\u1FC2-\\u1FCC\\u1FD0-\\u1FDC\\u1FE0-\\u1FEC\\u1FF0-\\u1FFC\\u1FFF-\\u2043\\u2045-\\u2051\\u2053-\\u2079\\u207D-\\u2089\\u208D-\\u209F\\u20BE-\\u20FF\\u2102\\u2107\\u210A-\\u2113\\u2115\\u2119-\\u211D\\u2124\\u2126\\u2128\\u212A-\\u212D\\u212F-\\u2139\\u213C-\\u213F\\u2145-\\u2149\\u214E\\u2150-\\u218F\\u2308-\\u230B\\u2329\\u232A\\u23FB-\\u23FF\\u2427-\\u243F\\u244B-\\u249B\\u24EA-\\u24FF\\u2768-\\u2793\\u27C5\\u27C6\\u27E6-\\u27EF\\u2983-\\u2998\\u29D8-\\u29DB\\u29FC\\u29FD\\u2B74\\u2B75\\u2B96\\u2B97\\u2BBA-\\u2BBC\\u2BC9\\u2BD2-\\u2CE4\\u2CEB-\\u2E7F\\u2E9A\\u2EF4-\\u2EFF\\u2FD6-\\u2FEF\\u2FFC-\\u3003\\u3005-\\u3011\\u3014-\\u301F\\u3021-\\u3035\\u3038-\\u303D\\u3040-\\u309A\\u309D-\\u318F\\u3192-\\u3195\\u31A0-\\u31BF\\u31E4-\\u31FF\\u321F-\\u3229\\u3248-\\u324F\\u3251-\\u325F\\u3280-\\u3289\\u32B1-\\u32BF\\u32FF\\u3400-\\u4DBF\\u4E00-\\uA48F\\uA4C7-\\uA6FF\\uA717-\\uA71F\\uA722-\\uA788\\uA78B-\\uA827\\uA82C-\\uA835\\uA83A-\\uAA76\\uAA7A-\\uAB5A\\uAB5C-\\uD7FF\\uDC00-\\uFB28\\uFB2A-\\uFBB1\\uFBC2-\\uFDFB\\uFDFE-\\uFE61\\uFE63\\uFE67\\uFE68\\uFE6A-\\uFF03\\uFF05-\\uFF0A\\uFF0C-\\uFF1B\\uFF1F-\\uFF3D\\uFF3F\\uFF41-\\uFF5B\\uFF5D\\uFF5F-\\uFFDF\\uFFE7\\uFFEF-\\uFFFB\\uFFFE\\uFFFF]|\\uD800[\\uDC00-\\uDD36\\uDD40-\\uDD78\\uDD8A\\uDD8B\\uDD8D-\\uDD8F\\uDD9C-\\uDD9F\\uDDA1-\\uDDCF\\uDDFD-\\uDFFF]|[\\uD801\\uD803-\\uD819\\uD81B-\\uD82E\\uD830-\\uD833\\uD836-\\uD83A\\uD83F-\\uDBFF][\\uDC00-\\uDFFF]|\\uD802[\\uDC00-\\uDC76\\uDC79-\\uDEC7\\uDEC9-\\uDFFF]|\\uD81A[\\uDC00-\\uDF3B\\uDF40-\\uDF44\\uDF46-\\uDFFF]|\\uD82F[\\uDC00-\\uDC9B\\uDC9D-\\uDFFF]|\\uD834[\\uDCF6-\\uDCFF\\uDD27\\uDD28\\uDD65-\\uDD69\\uDD6D-\\uDD82\\uDD85-\\uDD8B\\uDDAA-\\uDDAD\\uDDDE-\\uDDFF\\uDE42-\\uDE44\\uDE46-\\uDEFF\\uDF57-\\uDFFF]|\\uD835[\\uDC00-\\uDEC0\\uDEC2-\\uDEDA\\uDEDC-\\uDEFA\\uDEFC-\\uDF14\\uDF16-\\uDF34\\uDF36-\\uDF4E\\uDF50-\\uDF6E\\uDF70-\\uDF88\\uDF8A-\\uDFA8\\uDFAA-\\uDFC2\\uDFC4-\\uDFFF]|\\uD83B[\\uDC00-\\uDEEF\\uDEF2-\\uDFFF]|\\uD83C[\\uDC2C-\\uDC2F\\uDC94-\\uDC9F\\uDCAF\\uDCB0\\uDCC0\\uDCD0\\uDCF6-\\uDD0F\\uDD2F\\uDD6C-\\uDD6F\\uDD9B-\\uDDE5\\uDE03-\\uDE0F\\uDE3B-\\uDE3F\\uDE49-\\uDE4F\\uDE52-\\uDEFF\\uDF2D-\\uDF2F\\uDF7E\\uDF7F\\uDFCF-\\uDFD3\\uDFF8-\\uDFFF]|\\uD83D[\\uDCFF\\uDD4B-\\uDD4F\\uDD7A\\uDDA4\\uDE43\\uDE44\\uDED0-\\uDEDF\\uDEED-\\uDEEF\\uDEF4-\\uDEFF\\uDF74-\\uDF7F\\uDFD5-\\uDFFF]|\\uD83E[\\uDC0C-\\uDC0F\\uDC48-\\uDC4F\\uDC5A-\\uDC5F\\uDC88-\\uDC8F\\uDCAE-\\uDFFF]|[\\uD800-\\uDBFF]/;\n// eslint-disable-next-line\nvar regexpNotSNotZ = /[\\0-\\x1F!-#%-\\*,-;\\?-\\]_a-\\{\\}\\x7F-\\x9F\\xA1\\xA7\\xAA\\xAB\\xAD\\xB2\\xB3\\xB5-\\xB7\\xB9-\\xD6\\xD8-\\xF6\\xF8-\\u02C1\\u02C6-\\u02D1\\u02E0-\\u02E4\\u02EC\\u02EE\\u0300-\\u0374\\u0376-\\u0383\\u0386-\\u03F5\\u03F7-\\u0481\\u0483-\\u058C\\u0590-\\u0605\\u0609\\u060A\\u060C\\u060D\\u0610-\\u06DD\\u06DF-\\u06E8\\u06EA-\\u06FC\\u06FF-\\u07F5\\u07F7-\\u07FD\\u0800-\\u09F1\\u09F4-\\u09F9\\u09FC-\\u0AF0\\u0AF2-\\u0B6F\\u0B71-\\u0BF2\\u0BFB-\\u0C7E\\u0C80-\\u0D4E\\u0D50-\\u0D78\\u0D7A-\\u0E3E\\u0E40-\\u0F00\\u0F04-\\u0F12\\u0F14\\u0F18\\u0F19\\u0F20-\\u0F33\\u0F35\\u0F37\\u0F39-\\u0FBD\\u0FC6\\u0FCD\\u0FD0-\\u0FD4\\u0FD9-\\u109D\\u10A0-\\u138F\\u139A-\\u166C\\u166E-\\u167F\\u1681-\\u17DA\\u17DC-\\u193F\\u1941-\\u19DD\\u1A00-\\u1B60\\u1B6B-\\u1B73\\u1B7D-\\u1FBC\\u1FBE\\u1FC2-\\u1FCC\\u1FD0-\\u1FDC\\u1FE0-\\u1FEC\\u1FF0-\\u1FFC\\u1FFF\\u200B-\\u2027\\u202A-\\u202E\\u2030-\\u2043\\u2045-\\u2051\\u2053-\\u205E\\u2060-\\u2079\\u207D-\\u2089\\u208D-\\u209F\\u20C0-\\u20FF\\u2102\\u2107\\u210A-\\u2113\\u2115\\u2119-\\u211D\\u2124\\u2126\\u2128\\u212A-\\u212D\\u212F-\\u2139\\u213C-\\u213F\\u2145-\\u2149\\u214E\\u2150-\\u2189\\u218C-\\u218F\\u2308-\\u230B\\u2329\\u232A\\u2427-\\u243F\\u244B-\\u249B\\u24EA-\\u24FF\\u2768-\\u2793\\u27C5\\u27C6\\u27E6-\\u27EF\\u2983-\\u2998\\u29D8-\\u29DB\\u29FC\\u29FD\\u2B74\\u2B75\\u2B96\\u2C00-\\u2CE4\\u2CEB-\\u2E4F\\u2E52-\\u2E7F\\u2E9A\\u2EF4-\\u2EFF\\u2FD6-\\u2FEF\\u2FFC-\\u2FFF\\u3001-\\u3003\\u3005-\\u3011\\u3014-\\u301F\\u3021-\\u3035\\u3038-\\u303D\\u3040-\\u309A\\u309D-\\u318F\\u3192-\\u3195\\u31A0-\\u31BF\\u31E4-\\u31FF\\u321F-\\u3229\\u3248-\\u324F\\u3251-\\u325F\\u3280-\\u3289\\u32B1-\\u32BF\\u3400-\\u4DBF\\u4E00-\\uA48F\\uA4C7-\\uA6FF\\uA717-\\uA71F\\uA722-\\uA788\\uA78B-\\uA827\\uA82C-\\uA835\\uA83A-\\uAA76\\uAA7A-\\uAB5A\\uAB5C-\\uAB69\\uAB6C-\\uD7FF\\uE000-\\uFB28\\uFB2A-\\uFBB1\\uFBC2-\\uFDFB\\uFDFE-\\uFE61\\uFE63\\uFE67\\uFE68\\uFE6A-\\uFF03\\uFF05-\\uFF0A\\uFF0C-\\uFF1B\\uFF1F-\\uFF3D\\uFF3F\\uFF41-\\uFF5B\\uFF5D\\uFF5F-\\uFFDF\\uFFE7\\uFFEF-\\uFFFB\\uFFFE\\uFFFF]|\\uD800[\\uDC00-\\uDD36\\uDD40-\\uDD78\\uDD8A\\uDD8B\\uDD8F\\uDD9D-\\uDD9F\\uDDA1-\\uDDCF\\uDDFD-\\uDFFF]|[\\uD801\\uD803\\uD804\\uD806\\uD808-\\uD819\\uD81B-\\uD82E\\uD830-\\uD833\\uD837\\uD839\\uD83A\\uD83F-\\uDBFF][\\uDC00-\\uDFFF]|\\uD802[\\uDC00-\\uDC76\\uDC79-\\uDEC7\\uDEC9-\\uDFFF]|\\uD805[\\uDC00-\\uDF3E\\uDF40-\\uDFFF]|\\uD807[\\uDC00-\\uDFD4\\uDFF2-\\uDFFF]|\\uD81A[\\uDC00-\\uDF3B\\uDF40-\\uDF44\\uDF46-\\uDFFF]|\\uD82F[\\uDC00-\\uDC9B\\uDC9D-\\uDFFF]|\\uD834[\\uDCF6-\\uDCFF\\uDD27\\uDD28\\uDD65-\\uDD69\\uDD6D-\\uDD82\\uDD85-\\uDD8B\\uDDAA-\\uDDAD\\uDDE9-\\uDDFF\\uDE42-\\uDE44\\uDE46-\\uDEFF\\uDF57-\\uDFFF]|\\uD835[\\uDC00-\\uDEC0\\uDEC2-\\uDEDA\\uDEDC-\\uDEFA\\uDEFC-\\uDF14\\uDF16-\\uDF34\\uDF36-\\uDF4E\\uDF50-\\uDF6E\\uDF70-\\uDF88\\uDF8A-\\uDFA8\\uDFAA-\\uDFC2\\uDFC4-\\uDFFF]|\\uD836[\\uDE00-\\uDE36\\uDE3B-\\uDE6C\\uDE75\\uDE84\\uDE87-\\uDFFF]|\\uD838[\\uDC00-\\uDD4E\\uDD50-\\uDEFE\\uDF00-\\uDFFF]|\\uD83B[\\uDC00-\\uDCAB\\uDCAD-\\uDCAF\\uDCB1-\\uDD2D\\uDD2F-\\uDEEF\\uDEF2-\\uDFFF]|\\uD83C[\\uDC2C-\\uDC2F\\uDC94-\\uDC9F\\uDCAF\\uDCB0\\uDCC0\\uDCD0\\uDCF6-\\uDD0C\\uDDAE-\\uDDE5\\uDE03-\\uDE0F\\uDE3C-\\uDE3F\\uDE49-\\uDE4F\\uDE52-\\uDE5F\\uDE66-\\uDEFF]|\\uD83D[\\uDED8-\\uDEDF\\uDEED-\\uDEEF\\uDEFD-\\uDEFF\\uDF74-\\uDF7F\\uDFD9-\\uDFDF\\uDFEC-\\uDFFF]|\\uD83E[\\uDC0C-\\uDC0F\\uDC48-\\uDC4F\\uDC5A-\\uDC5F\\uDC88-\\uDC8F\\uDCAE\\uDCAF\\uDCB2-\\uDCFF\\uDD79\\uDDCC\\uDE54-\\uDE5F\\uDE6E\\uDE6F\\uDE75-\\uDE77\\uDE7B-\\uDE7F\\uDE87-\\uDE8F\\uDEA9-\\uDEAF\\uDEB7-\\uDEBF\\uDEC3-\\uDECF\\uDED7-\\uDEFF\\uDF93\\uDFCB-\\uDFFF]|[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?:[^\\uD800-\\uDBFF]|^)[\\uDC00-\\uDFFF]/;\nfunction stringPad(str, count, right) {\n var length;\n if (typeof str !== \"string\") {\n str = String(str);\n }\n for (length = str.length; length < count; length += 1) {\n str = right ? str + \"0\" : \"0\" + str;\n }\n return str;\n}\nfunction currencySupplementalOverride(currency, pattern, cldr) {\n var digits,\n fraction = \"\",\n fractionData = cldr.supplemental([\"currencyData/fractions\", currency]) || cldr.supplemental(\"currencyData/fractions/DEFAULT\");\n digits = +fractionData._digits;\n if (digits) {\n fraction = \".\" + stringPad(\"0\", digits).slice(0, -1) + fractionData._rounding;\n }\n return pattern.replace(/\\.(#+|0*[0-9]|0+[0-9]?)/g, fraction);\n}\nfunction currencyNameProperties(currency, cldr) {\n var pattern = numberPattern(\"decimal\", cldr);\n\n // The number of decimal places and the rounding for each currency is not locale-specific. Those\n // values overridden by Supplemental Currency Data.\n pattern = currencySupplementalOverride(currency, pattern, cldr);\n return {\n pattern: pattern\n };\n}\nfunction currencySymbolProperties(currency, cldr, options) {\n var currencySpacing,\n pattern,\n symbol,\n symbolEntries,\n regexp = {\n \"[:digit:]\": /\\d/,\n \"[:^S:]\": regexpNotS,\n \"[[:^S:]&[:^Z:]]\": regexpNotSNotZ\n };\n if (options.style === \"code\") {\n symbol = currency;\n } else {\n symbolEntries = [\"symbol\"];\n\n // If options.symbolForm === \"narrow\" was passed, prepend it.\n if (options.symbolForm === \"narrow\") {\n symbolEntries.unshift(\"symbol-alt-narrow\");\n }\n symbolEntries.some(function (symbolEntry) {\n return symbol = cldr.main([\"numbers/currencies\", currency, symbolEntry]);\n });\n }\n currencySpacing = [\"beforeCurrency\", \"afterCurrency\"].map(function (position) {\n return cldr.main([\"numbers\", \"currencyFormats-numberSystem-\" + numberNumberingSystem(cldr), \"currencySpacing\", position]);\n });\n pattern = cldr.main([\"numbers\", \"currencyFormats-numberSystem-\" + numberNumberingSystem(cldr), options.style === \"accounting\" ? \"accounting\" : \"standard\"]);\n pattern =\n // The number of decimal places and the rounding for each currency is not locale-specific.\n // Those values are overridden by Supplemental Currency Data.\n currencySupplementalOverride(currency, pattern, cldr)\n // Replace \"¤\" (\\u00A4) with the appropriate symbol literal.\n .split(\";\").map(function (pattern) {\n return pattern.split(\"\\xA4\").map(function (part, i) {\n var currencyMatch = regexp[currencySpacing[i].currencyMatch],\n surroundingMatch = regexp[currencySpacing[i].surroundingMatch],\n insertBetween = \"\";\n\n // For currencyMatch and surroundingMatch definitions, read [1].\n // When i === 0, beforeCurrency is being handled. Otherwise, afterCurrency.\n // 1: http://www.unicode.org/reports/tr35/tr35-numbers.html#Currencies\n currencyMatch = currencyMatch.test(symbol.charAt(i ? symbol.length - 1 : 0));\n surroundingMatch = surroundingMatch.test(part.charAt(i ? 0 : part.length - 1).replace(/[#@,.]/g, \"0\"));\n if (currencyMatch && part && surroundingMatch) {\n insertBetween = currencySpacing[i].insertBetween;\n }\n return (i ? insertBetween : \"\") + part + (i ? \"\" : insertBetween);\n }).join(\"\\xA4\");\n }).join(\";\");\n return {\n pattern: pattern\n };\n}\nfunction resolvedOptions(globalize, currency, options) {\n if (options === void 0) {\n options = {};\n }\n var _options = options,\n style = _options.style;\n var _accounting$code$name = {\n accounting: currencySymbolProperties,\n code: currencySymbolProperties,\n name: currencyNameProperties,\n symbol: currencySymbolProperties,\n international: currencySymbolProperties\n }[style](currency, globalize.cldr, options),\n raw = _accounting$code$name.pattern;\n return NumberFormat._resolvedOptions(globalize, {\n raw: raw\n });\n}\nvar ENVIRONMENT = {\n PRODUCTION: \"production\"\n};\nvar CURRENCY_STYLES = {\n SYMBOL: \"symbol\",\n CODE: \"code\",\n INTERNATIONAL: \"international\"\n};\n\n/***\n * Code imported from Griffin v2 to deal with PayPal-cystom-international pattern.\n * @input it takes 2 strings valueA and valueB\n * @returns {number} the percentage of how similar are both\n */\nfunction fuzzyMatch(svalueA, svalueB) {\n if (svalueA === svalueB) {\n return 100;\n } else {\n var valueA = svalueA.split(\"\"),\n valueB = svalueB.split(\"\"),\n equivalency = 0;\n for (var i = 0; i < valueA.length; i++) {\n if (valueB.indexOf(valueA[i]) !== -1) {\n var position = valueB.indexOf(valueA[i]);\n valueB.splice(position, 1);\n equivalency++;\n }\n }\n var weight = equivalency / valueA.length;\n return weight * 100;\n }\n}\nvar CurrencyFormat = /*#__PURE__*/function () {\n function CurrencyFormat(worldReady, options) {\n // Error Check: WorldReady Object\n if (process.env.NODE_ENV !== ENVIRONMENT.PRODUCTION) {\n assert(isWorldReadyInstance(worldReady), \"WorldReady object missing.\");\n assertType(options, \"options\", [\"undefined\", \"plain object\"]);\n }\n var _ref = options || {},\n _ref$style = _ref.style,\n style = _ref$style === void 0 ? CURRENCY_STYLES.SYMBOL : _ref$style,\n currency = _ref.currency,\n otherOptions = _objectWithoutPropertiesLoose(_ref, _excluded);\n if (process.env.NODE_ENV !== ENVIRONMENT.PRODUCTION) {\n assertType(currency, \"options.currency\", [\"string\"]);\n assertType(style, \"options.style\", [\"string\"]);\n assertRange(style, [\"symbol\", \"code\", \"name\", \"international\"], \"options.style must be one of \" + Object.values(CURRENCY_STYLES).join(\", \"));\n }\n currency = currency.toUpperCase();\n this.currencyMetadata = null;\n var cldr = worldReady.globalize.cldr;\n cldr.on(\"main\", validateCldr);\n try {\n this.currencyMetadata = cldr.main(\"numbers/currencies/\" + currency);\n } catch (error) {\n globalizeToWorldReadyError(error);\n }\n\n // Support PayPal custom international format by hacking Globalize and overwrite the symbol --- START\n // pattern with the PayPal-custom-international pattern.\n // This hack is possible because JavaScript is single threaded and there's no race condition.\n // The below synchronous code will finish execution before any other async queued event run.\n var aux;\n if (style === CURRENCY_STYLES.INTERNATIONAL) {\n var _cldr = worldReady.globalize.cldr;\n var data = _cldr.main(\"numbers/currencyFormats-numberSystem-latn\");\n aux = [data, CURRENCY_STYLES.INTERNATIONAL, data.standard];\n\n // Use PayPal-international currency override (e.g., TRY) or default PayPal-international.\n var pattern = _cldr.main([\"numbers/currencyFormats-numberSystem-latn/currency_override\", currency, CURRENCY_STYLES.INTERNATIONAL]) || _cldr.main(\"numbers/currencyFormats-numberSystem-latn/international\");\n\n // Avoid showing ISO code when it's too similar to symbol,\n // e.g., MXN and $MX.\n // PS: Also ignore spaces when checking similarity to avoid cases like: fr-BW: \"1 234,50 $ US USD\"\n if (/¤/.test(pattern)) {\n var symbolWithoutSpaces = (_cldr.main([\"numbers/currencies\", currency, \"symbol-alt-narrow\"]) || _cldr.main([\"numbers/currencies\", currency, \"symbol\"]) || \"\").replace(/\\s/g, \"\");\n if (fuzzyMatch(currency, symbolWithoutSpaces) >= 66) {\n pattern = pattern.replace(/\\s*C/g, \"\");\n }\n }\n data.standard = pattern;\n style = CURRENCY_STYLES.SYMBOL;\n\n // use symbolForm narrow in order to show es-MX: $1,234.50 USD instead of USD 1,234.50 USD\n //symbolForm = \"narrow\";\n otherOptions.symbolForm = \"narrow\";\n }\n try {\n this.currencyToPartsFormatter = worldReady.globalize.currencyToPartsFormatter(currency, Object.assign({\n style: style\n }, otherOptions));\n } catch (error) {\n throw globalizeToWorldReadyError(error);\n }\n\n // Support PayPal custom international format --- END\n if (aux) {\n var _aux = aux,\n _data = _aux[0];\n var _aux2 = aux;\n style = _aux2[1];\n _data.standard = _aux2[2];\n }\n this.currency = currency;\n this.style = style;\n var resolvedOptionsCache;\n this._resolvedOptions = function () {\n if (!resolvedOptionsCache) {\n resolvedOptionsCache = resolvedOptions(worldReady.globalize, currency, Object.assign({\n style: style\n }, otherOptions));\n }\n return resolvedOptionsCache;\n };\n }\n var _proto = CurrencyFormat.prototype;\n _proto.format = function format(value) {\n return this.formatToParts(value).map(function (part) {\n return part.value;\n }).join(\"\");\n };\n _proto.formatToParts = function formatToParts(value) {\n var parts = this.currencyToPartsFormatter(value);\n\n // Support PayPal custom formats that may include the currency ISO code regardless of the chosen\n // style. The following code hacks globalize currency formatter internals by replacing\n // \"C\"-PayPal-custom-pattern from the PayPal-overriden-metadata with the currency ISO code.\n for (var i = 0; i < parts.length; i++) {\n var part = parts[i];\n if (part.type === \"literal\" && part.value.indexOf(\"C\") !== -1) {\n var _part$value$split = part.value.split(/C/),\n preLiteral = _part$value$split[0],\n postLiteral = _part$value$split[1];\n parts.splice.apply(parts, [i, 1].concat([].concat(preLiteral ? [{\n type: \"literal\",\n value: preLiteral\n }] : [], [{\n type: this.style === CURRENCY_STYLES.SYMBOL ? \"currencySymbol\" : \"currencyCode\",\n value: this.currency\n }], postLiteral ? [{\n type: \"literal\",\n value: postLiteral\n }] : [])));\n }\n // Rename type from \"currency\" to \"currencySymbol\"\n if (part.type === \"currency\") {\n if (this.currencyMetadata[\"symbol-alt-narrow\"] && part.value === this.currencyMetadata[\"symbol-alt-narrow\"] || this.currencyMetadata.symbol && part.value === this.currencyMetadata.symbol) {\n part.type = \"currencySymbol\";\n parts.splice(i, 1, {\n type: \"currencySymbol\",\n value: part.value\n });\n }\n }\n\n // We want the type to be \"currencyCode\" for currencies (\"USD\", \"EUR\", etc.)\n if (part.type === \"currency\" && part.value === this.currency) {\n parts.splice(i, 1, {\n type: \"currencyCode\",\n value: this.currency\n });\n }\n }\n return parts;\n };\n _proto.resolvedOptions = function resolvedOptions() {\n return this._resolvedOptions();\n };\n return CurrencyFormat;\n}();\n\nexport { CurrencyFormat };\n","import 'core-js/modules/es.array.iterator';\nimport 'core-js/modules/es.map';\nimport 'core-js/modules/es.object.to-string';\nimport 'core-js/modules/es.string.iterator';\nimport 'core-js/modules/web.dom-collections.iterator';\nimport { assertType } from 'yaassertion';\n\nfunction _construct(t, e, r) {\n if (_isNativeReflectConstruct()) return Reflect.construct.apply(null, arguments);\n var o = [null];\n o.push.apply(o, e);\n var p = new (t.bind.apply(t, o))();\n return r && _setPrototypeOf(p, r.prototype), p;\n}\nfunction _isNativeReflectConstruct() {\n try {\n var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));\n } catch (t) {}\n return (_isNativeReflectConstruct = function () {\n return !!t;\n })();\n}\nfunction _inheritsLoose(subClass, superClass) {\n subClass.prototype = Object.create(superClass.prototype);\n subClass.prototype.constructor = subClass;\n _setPrototypeOf(subClass, superClass);\n}\nfunction _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}\nfunction _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n return _setPrototypeOf(o, p);\n}\nfunction _isNativeFunction(fn) {\n try {\n return Function.toString.call(fn).indexOf(\"[native code]\") !== -1;\n } catch (e) {\n return typeof fn === \"function\";\n }\n}\nfunction _wrapNativeSuper(Class) {\n var _cache = typeof Map === \"function\" ? new Map() : undefined;\n _wrapNativeSuper = function _wrapNativeSuper(Class) {\n if (Class === null || !_isNativeFunction(Class)) return Class;\n if (typeof Class !== \"function\") {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n if (typeof _cache !== \"undefined\") {\n if (_cache.has(Class)) return _cache.get(Class);\n _cache.set(Class, Wrapper);\n }\n function Wrapper() {\n return _construct(Class, arguments, _getPrototypeOf(this).constructor);\n }\n Wrapper.prototype = Object.create(Class.prototype, {\n constructor: {\n value: Wrapper,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n return _setPrototypeOf(Wrapper, Class);\n };\n return _wrapNativeSuper(Class);\n}\n\n/**\n * This error is returned when key is not found in SmartCache\n */\nvar SmartCacheKeyNotFoundError = /*#__PURE__*/function (_Error) {\n function SmartCacheKeyNotFoundError(message) {\n var _this;\n _this = _Error.call(this, message || \"Smart Cache Key Not Found\") || this;\n _this.code = \"SMART_CACHE_KEY_NOT_FOUND\";\n return _this;\n }\n _inheritsLoose(SmartCacheKeyNotFoundError, _Error);\n return SmartCacheKeyNotFoundError;\n}( /*#__PURE__*/_wrapNativeSuper(Error));\n/**\n * maxSize: maximum number of keys that the cache can have\n */\nvar DEFAULT_CAPACITY = {\n maxSize: 400\n};\n/**\n * Implementation for browser side LRU cache that can be used across worldready sdk.\n */\nvar BrowserCache = /*#__PURE__*/function () {\n /**\n * Creates BrowserCache cache object based on options object\n * @param {*} options - Object that contains parameter size\n */\n function BrowserCache(options) {\n if (options === void 0) {\n options = {};\n }\n assertType(options, \"options\", [\"plain object\"]);\n this.cache = new Map();\n this.maxSize = options.maxSize || DEFAULT_CAPACITY.maxSize;\n }\n /**\n * Utility function to retrieve a value from cache.\n * @param {String} key string value that was used as key while entering the value in cache\n * @returns {Any} value that's stored in cache for the corresponding key. It'll return undefined if key is not found.\n */\n var _proto = BrowserCache.prototype;\n _proto.get = function get(key) {\n if (!this.cache.has(key)) {\n throw new SmartCacheKeyNotFoundError(key + \" not found in WorldReady SmartCache\");\n }\n var val = this.cache.get(key);\n // Adding key to cache to ensure the most recently used key is at end Map\n this.set(key, val);\n return val;\n }\n /**\n * Utility function to set the value in cache.\n * @param {String} key string value that should be used as cache key\n * @param {Any} value value that needs to be stored in cache (can be string, number, object, etc.)\n * @returns {Any} value that's added to the cache\n */;\n _proto.set = function set(key, value) {\n // Remove key if present so that the most recently used key is at end Map\n this.delete(key);\n if (this.size() === this.maxSize) {\n this.delete(this.cache.keys().next().value);\n return this.cache.set(key, value);\n } else {\n return this.cache.set(key, value);\n }\n }\n /**\n * Utility function to delete a key from cache.\n * @param {String} key string value that was used as key while entering the value in cache\n * @returns {Boolean} true if key was found, otherwise false\n */;\n _proto.delete = function _delete(key) {\n return this.cache.delete(key);\n }\n /**\n * Utility function to check if value for a certain key is present in cache or not.\n * @param {*} key string value that could've been used as key while entering the value in cache\n * @returns {Boolean}\n */;\n _proto.has = function has(key) {\n return this.cache.has(key);\n }\n /**\n * Helper function to clear contents of cache.\n */;\n _proto.clear = function clear() {\n this.cache = new Map();\n }\n /**\n * Utility function to get total number of items present in cache.\n */;\n _proto.size = function size() {\n return this.cache.size;\n };\n return BrowserCache;\n}();\n\nexport { BrowserCache as SmartCache };\n","import 'core-js/modules/es.symbol';\nimport 'core-js/modules/es.symbol.description';\nimport 'core-js/modules/es.symbol.to-primitive';\nimport 'core-js/modules/es.array.concat';\nimport 'core-js/modules/es.array.includes';\nimport 'core-js/modules/es.array.join';\nimport 'core-js/modules/es.date.to-primitive';\nimport 'core-js/modules/es.number.constructor';\nimport 'core-js/modules/es.object.assign';\nimport 'core-js/modules/es.object.to-string';\nimport 'core-js/modules/es.regexp.exec';\nimport 'core-js/modules/es.string.includes';\nimport 'core-js/modules/es.string.split';\nimport { isWorldReadyInstance } from '@paypalcorp/worldready-core';\nimport { assertType, assert } from 'yaassertion';\nimport { SmartCache } from '@paypalcorp/worldready-smart-cache';\nimport '@paypalcorp/globalize/dist/globalize/number';\nimport '@paypalcorp/globalize/dist/globalize/date';\n\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n }\n return target;\n}\n\nvar _excluded = [\"style\"];\nfunction _toPrimitive(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nfunction _toPropertyKey(t) {\n var i = _toPrimitive(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\nfunction _defineProperty(obj, key, value) {\n key = _toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}\nvar DATE_STYLES = {\n DATE_SHORT: \"date-short\",\n BANK_CARD_EXPIRY: \"bank-card-expiry\",\n TIMEZONE_SHORT: \"timezone-short\",\n TIMEZONE_MEDIUM: \"timezone-medium\",\n TIMEZONE_LONG: \"timezone-long\"\n};\nvar BANK_CARD_EXPIRY_FORMAT = \"MM/YY\";\nvar TIMEZONE_FORMATS = {\n TIMEZONE_LONG_FORMAT: \"(OOOO) vvvv (VVV)\",\n TIMEZONE_MEDIUM_FORMAT: \"(OOOO) vvvv\",\n TIMEZONE_SHORT_FORMAT: \"(OOOO) v\"\n};\nvar ERROR_CODES = {\n E_MISSING_CLDR: \"E_MISSING_CLDR\",\n E_MISSING_IANA_TZ: \"E_MISSING_IANA_TZ\"\n};\n\n/**\n * Modified globalizeDateOptions based on date styles and formats\n * @param {optionsWithDefaults, globalizeDateOptions, aux}\n * @return {globalizeDateOptions}\n */\nfunction getGlobalizeDateOptions(optionsWithDefaults, globalizeDateOptions, aux) {\n switch (optionsWithDefaults.style) {\n case DATE_STYLES.BANK_CARD_EXPIRY:\n globalizeDateOptions[\"raw\"] = BANK_CARD_EXPIRY_FORMAT;\n globalizeDateOptions.timeZone = optionsWithDefaults.timeZone;\n return globalizeDateOptions;\n case DATE_STYLES.TIMEZONE_LONG:\n globalizeDateOptions[\"raw\"] = TIMEZONE_FORMATS.TIMEZONE_LONG_FORMAT;\n globalizeDateOptions.timeZone = optionsWithDefaults.timeZone;\n return globalizeDateOptions;\n case DATE_STYLES.TIMEZONE_MEDIUM:\n globalizeDateOptions[\"raw\"] = TIMEZONE_FORMATS.TIMEZONE_MEDIUM_FORMAT;\n globalizeDateOptions.timeZone = optionsWithDefaults.timeZone;\n return globalizeDateOptions;\n case DATE_STYLES.TIMEZONE_SHORT:\n globalizeDateOptions[\"raw\"] = TIMEZONE_FORMATS.TIMEZONE_SHORT_FORMAT;\n globalizeDateOptions.timeZone = optionsWithDefaults.timeZone;\n return globalizeDateOptions;\n default:\n if (optionsWithDefaults.style.includes(\"-\")) {\n aux = optionsWithDefaults.style.split(\"-\");\n globalizeDateOptions[aux[0]] = aux[1];\n } else {\n globalizeDateOptions.skeleton = optionsWithDefaults.style;\n }\n globalizeDateOptions.timeZone = optionsWithDefaults.timeZone;\n return globalizeDateOptions;\n }\n}\nvar getMissingMetadataError = function getMissingMetadataError(path) {\n var message = \"Missing WorldReady metadata, please refer to https://github.paypal.com/pages/Globalization-R/worldready-js/docs/about-load-worldready-data.html\";\n if (path) {\n message += \"\\nPath: \" + path;\n }\n return new Error(message);\n};\nfunction globalizeToWorldReadyError(error) {\n if (error.code === \"E_MISSING_CLDR\") {\n return getMissingMetadataError(error.stack);\n }\n return new Error([\"Oops, internal error\", error.message, error.stack].join(\"\\n\"));\n}\nfunction getWorldReadyDateError(error, options) {\n if (options === void 0) {\n options = {};\n }\n var WORLDREADY_DATE_ERROR_CODES = {\n E_INVALID_OPTIONS: \"E_INVALID_OPTIONS\",\n E_MISSING_IANA_TZ: \"E_MISSING_IANA_TZ\"\n };\n if (error.code === WORLDREADY_DATE_ERROR_CODES.E_INVALID_OPTIONS) {\n throw new RangeError(\"Invalid `options.style`: `\" + JSON.stringify(error.value) + \"`.\");\n } else if (error.code === WORLDREADY_DATE_ERROR_CODES.E_MISSING_IANA_TZ) {\n throw new Error(\"Missing required timezone metadata. Make sure that you are exporting metadata for \\\"\" + options.timeZone + \"\\\" using WorldReady.export API.\");\n }\n throw globalizeToWorldReadyError(error);\n}\n\n/**\n * DateTimeFormat(worldReady, options)\n */\nvar DateTimeFormat = /*#__PURE__*/function () {\n function DateTimeFormat(worldReady, options) {\n if (options === void 0) {\n options = {};\n }\n // Error checking\n if (process.env.NODE_ENV !== \"production\") {\n assert(isWorldReadyInstance(worldReady), \"WorldReady object missing.\");\n assertType(options, \"options\", [\"plain object\"]);\n assertType(options.style, \"options.style\", [\"string\", \"undefined\"]);\n assertType(options.timeZone, \"options.timeZone\", [\"string\"]);\n }\n this.dateOptions = globalizeDateOptions(options);\n this.locale = worldReady.locale;\n this.globalize = worldReady.globalize;\n\n // Check if required metadata for locale & timezone is present or not\n var cldr = worldReady.globalize.cldr;\n var datesMetadata = cldr.main(\"dates\");\n if (!datesMetadata) {\n var err = new Error();\n err.code = ERROR_CODES.E_MISSING_CLDR;\n throw getWorldReadyDateError(err);\n }\n var timezones = options.timeZone.split(\"/\");\n var timezoneMetadata = cldr.get([\"globalize-iana/zoneData\"].concat(timezones));\n if (!timezoneMetadata) {\n var _err = new Error();\n _err.code = ERROR_CODES.E_MISSING_IANA_TZ;\n throw getWorldReadyDateError(_err, {\n timeZone: options.timeZone\n });\n }\n }\n var _proto = DateTimeFormat.prototype;\n _proto.format = function format(date) {\n if (!isValidDate(date)) {\n if (process.env.NODE_ENV !== \"production\") {\n throw new TypeError(\"Invalid Date was provided with value: \" + date);\n }\n return NaN;\n }\n try {\n this.dateFormatter = getDateFormatter({\n locale: this.locale,\n options: this.dateOptions,\n globalize: this.globalize\n });\n return this.dateFormatter(date);\n } catch (error) {\n throw getWorldReadyDateError(error);\n }\n };\n _proto.formatToParts = function formatToParts(date) {\n if (!isValidDate(date)) {\n if (process.env.NODE_ENV !== \"production\") {\n throw new TypeError(\"Invalid Date was provided with value: \" + date);\n }\n return NaN;\n }\n try {\n this.dateToPartsFormatter = getDateToPartsFormatter({\n locale: this.locale,\n options: this.dateOptions,\n globalize: this.globalize\n });\n return this.dateToPartsFormatter(date);\n } catch (error) {\n throw getWorldReadyDateError(error);\n }\n };\n _proto.parse = function parse(localizedDate) {\n if (process.env.NODE_ENV !== \"production\") {\n assertType(localizedDate, \"localizedDate\", [\"string\"]);\n }\n try {\n this.dateParser = getDateParser({\n locale: this.locale,\n options: this.dateOptions,\n globalize: this.globalize\n });\n return this.dateParser(localizedDate);\n } catch (error) {\n throw getWorldReadyDateError(error);\n }\n };\n return DateTimeFormat;\n}();\n_defineProperty(DateTimeFormat, \"smartCache\", new SmartCache());\nfunction getDateFormatter(data) {\n if (data === void 0) {\n data = {};\n }\n var _data = data,\n locale = _data.locale,\n options = _data.options,\n globalize = _data.globalize;\n var key = \"dateFormatter\" + JSON.stringify({\n locale: locale,\n options: options\n });\n if (!DateTimeFormat.smartCache.has(key)) {\n DateTimeFormat.smartCache.set(key, globalize.dateFormatter(options));\n }\n return DateTimeFormat.smartCache.get(key);\n}\nfunction getDateToPartsFormatter(data) {\n if (data === void 0) {\n data = {};\n }\n var _data2 = data,\n locale = _data2.locale,\n options = _data2.options,\n globalize = _data2.globalize;\n var key = \"dateToPartsFormatter\" + JSON.stringify({\n locale: locale,\n options: options\n });\n if (!DateTimeFormat.smartCache.has(key)) {\n DateTimeFormat.smartCache.set(key, globalize.dateToPartsFormatter(options));\n }\n return DateTimeFormat.smartCache.get(key);\n}\nfunction getDateParser(data) {\n if (data === void 0) {\n data = {};\n }\n var _data3 = data,\n locale = _data3.locale,\n options = _data3.options,\n globalize = _data3.globalize;\n var key = \"dateParser\" + JSON.stringify({\n locale: locale,\n options: options\n });\n if (!DateTimeFormat.smartCache.has(key)) {\n DateTimeFormat.smartCache.set(key, globalize.dateParser(options));\n }\n return DateTimeFormat.smartCache.get(key);\n}\nfunction globalizeDateOptions(options) {\n var aux;\n var globalizeDateOptions = {};\n\n // Set Defaults\n var _options$style = options.style,\n style = _options$style === void 0 ? DATE_STYLES.DATE_SHORT : _options$style,\n otherProps = _objectWithoutPropertiesLoose(options, _excluded);\n var optionsWithDefaults = Object.assign({\n style: style\n }, otherProps);\n globalizeDateOptions = getGlobalizeDateOptions(optionsWithDefaults, globalizeDateOptions, aux);\n return globalizeDateOptions;\n}\n/**\n * Validates if date is valid Date object.\n * Due that one of the values returned by new Date() function could be `Invalid Date` which is actually a valid Date object\n * We are also validating date parameter is a valid number.\n * @param {Date} date\n * @returns {Boolean}\n */\n\nfunction isValidDate(date) {\n return date instanceof Date && !isNaN(date);\n}\n\nexport { DateTimeFormat };\n","import 'core-js/modules/es.array.concat';\nimport 'core-js/modules/es.array.filter';\nimport 'core-js/modules/es.array.find-index';\nimport 'core-js/modules/es.array.includes';\nimport 'core-js/modules/es.array.join';\nimport 'core-js/modules/es.array.map';\nimport 'core-js/modules/es.array.slice';\nimport 'core-js/modules/es.array.splice';\nimport 'core-js/modules/es.regexp.exec';\nimport 'core-js/modules/es.string.includes';\nimport 'core-js/modules/es.string.replace';\nimport 'core-js/modules/es.string.split';\nimport 'core-js/modules/web.dom-collections.for-each';\nimport { isWorldReadyInstance } from '@paypalcorp/worldready-core';\nimport { assert, assertType, assertRange } from 'yaassertion';\n\n/**\n * Format Message Parts.\n *\n * Given messageParts [1] and variables [2] below, returns [3].\n * 1: [{type: \"literal\", value: \"Hi, \"}, {type: \"variable\", value: \"name\"}]\n * 2: {name: \"John\"}, becomes\n * 3: [{type: \"literal\", value: \"Hi, \"}, {type: \"variable\", variableName: \"name\", value: \"John\"}]\n *\n * Given messageParts [1] and variables [2] below, returns [3].\n * 1:\n * [\n * { type: \"literal\", value: \"Transfer \" },\n * {\n * type: \"variable-block\",\n * value: \"bold\",\n * children: [{ type: \"literal\", value: \"money\" }]\n * }\n * ]\n * 2: {bold: innerParts => ${innerParts.map(part => part.value)}}, becomes\n * 3:\n * [\n * { type: \"literal\", value: \"Transfer \" },\n * {\n * type: \"variable-block\",\n * variableName: \"bold\",\n * value: innerParts => ${innerParts.map(part => part.value)},\n * children: [{ type: \"literal\", value: \"money\" }]\n * }\n * ]\n */\nfunction _formatToParts(messageParts, variables) {\n if (variables === void 0) {\n variables = {};\n }\n return messageParts.map(function (part) {\n var type = part.type,\n value = part.value,\n children = part.children;\n if (type === \"variable\") {\n return {\n type: type,\n value: variables[value],\n variableName: value\n };\n }\n if (type === \"variable-block\") {\n return {\n type: type,\n value: variables[value],\n children: _formatToParts(children, variables),\n variableName: value\n };\n }\n return part;\n });\n}\nfunction isPart(part) {\n var ret = true;\n var type = part.type,\n children = part.children;\n\n // If part has children, it's a part only if all children are also parts.\n if (children) {\n ret &= Array.isArray(children) && children.every(function (part) {\n return isPart(part);\n });\n }\n\n // Part must be an object that includes a string type and a value.\n ret &= typeof part === \"object\" && \"type\" in part && \"value\" in part && typeof type === \"string\";\n return ret;\n}\nfunction isMessage(node) {\n /**\n * If content is of form:\n * step[1]=\"step 1\"\n * step[2]=\"step 2\"\n * then message structure is [null, \"step 1\", \"step 2\"]\n * hence node can be null\n */\n if (!node || typeof node === \"string\" || typeof node === \"symbol\") {\n return true;\n }\n if (typeof node === \"object\" && \"_message\" in node && Array.isArray(node._message) && node._message.every(function (part) {\n return isPart(part);\n })) {\n return true;\n }\n return false;\n}\nvar DEPRECATED_MESSAGE_MISSING = \" \";\nvar MESSAGE_MISSING = \"\\uE007\\uE007\";\nvar WORLDREADY_EXPERIENCE_KEY_PREFIX = \"WORLDREADY\";\nfunction getWorldReadyExperienceId(market, id) {\n return [WORLDREADY_EXPERIENCE_KEY_PREFIX, market].concat(id);\n}\nfunction isMessageValueMissing(val) {\n // TODO: Remove DEPRECATED_MESSAGE_MISSING\n return val && (val === MESSAGE_MISSING || val === DEPRECATED_MESSAGE_MISSING);\n}\n\n// Internal imports.\nfunction flattenToNestedParts(flatenParts) {\n var nestedParts = [].concat(flatenParts);\n var message = flatenParts.map(function (_ref) {\n var type = _ref.type,\n value = _ref.value;\n if (type === \"variable-block-start\") {\n return \"{\" + value + \"}\";\n }\n if (type === \"variable-block-end\") {\n return \"{/\" + value + \"}\";\n }\n return value;\n }).join(\"\");\n var _loop = function _loop() {\n var _nestedParts$i = nestedParts[i],\n type = _nestedParts$i.type,\n value = _nestedParts$i.value;\n if (type === \"variable-block-start\") {\n var variableStartName = \"{\" + value + \"}\";\n var variableEndName = \"{/\" + value + \"}\";\n var endIndex = nestedParts.findIndex(function (_ref2) {\n var type = _ref2.type,\n thisValue = _ref2.value;\n return type === \"variable-block-end\" && value === thisValue;\n });\n if (process.env.NODE_ENV !== \"production\") {\n // TODO: fix assert to NOT replace {} from `message` string.\n assert(endIndex !== -1, 'Missing {variableEndName} variable \"end-tag\" in {{message}}', {\n variableEndName: variableEndName,\n // TODO: assert to support fn callback to get property value.\n // message: () => nestedParts.map(({value}) => value).join(\"\");\n message: message\n });\n }\n var newPart = {\n type: \"variable-block\",\n value: value\n };\n var subParts = nestedParts.splice(i, endIndex - i + 1, newPart).slice(1, -1);\n if (process.env.NODE_ENV !== \"production\") {\n assert(subParts.length, \"Missing content for {variableStartName}{variableEndName} variable pair\", {\n variableStartName: variableStartName,\n variableEndName: variableEndName\n });\n }\n newPart.children = flattenToNestedParts(subParts);\n }\n };\n for (var i = 0; i < nestedParts.length; i++) {\n _loop();\n }\n return nestedParts;\n}\n\n/**\n * Schema converter utility for client-side (browser):\n * - Needed by the inline source message feature;\n * - Only used on development;\n * - The difference between this one and schema-converter.server.js is that this\n * one is simpler and doesn't handle HTML in inline source messages;\n */\nvar variableRe = /{([A-Za-z_/][0-9a-zA-Z-_]*)}/g;\n\n/**\n * Following function breaks messages that contain variables and/or html markup into parts. For example:\n *\n * \"Hi, {name}\" becomes:\n * => [{type: \"literal\", value: \"Hi, \"}, {type: \"variable\", value: \"name\"}]\n *\n * \"Transfer {bold}money{/bold}\" becomes:\n * -> [ # before flattenToNestedParts()\n * [\n * { type: \"literal\", value: \"Transfer \" },\n * { type: \"variable-block-start\", value: \"bold\" },\n * { type: \"literal\", value: \"money\" },\n * { type: \"variable-block-end\", value: \"/bold\" }\n * ]\n * => [ # after flattenToNestedParts()\n * { type: \"literal\", value: \"Transfer \" },\n * {\n * type: \"variable-block\",\n * value: \"bold\",\n * children: [{ type: \"literal\", value: \"money\" }]\n * }\n * ]\n */\nfunction messageStringToWorldReadySchema(value) {\n // If no variables, keep the string itself instead of its parts\n if (!variableRe.test(value)) {\n return value;\n }\n var parts = [];\n var currPos = 0;\n value.replace(variableRe, function (match, variableName, matchPos) {\n // Push leading literal up to the variable match.\n parts.push({\n type: \"literal\",\n value: value.slice(currPos, matchPos)\n });\n\n // Push variable.\n parts.push({\n type: \"variable\",\n value: variableName\n });\n\n // Adjust currPos.\n currPos = matchPos + match.length;\n });\n parts.push({\n type: \"literal\",\n value: value.slice(currPos)\n });\n\n // Filter empty literals.\n parts = parts.filter(function (_ref3) {\n var type = _ref3.type,\n value = _ref3.value;\n return type !== \"literal\" || type === \"literal\" && value;\n });\n\n // Handle variable pairs.\n parts = parts.map(function (_ref4, i) {\n var type = _ref4.type,\n value = _ref4.value;\n if (type === \"variable\" && value[0] !== \"/\") {\n var variableEndName = \"/\" + value;\n var endIndex = parts.findIndex(\n // Renaming is required to prevent bugs in Jest env\n function (_ref5) {\n var thisValue = _ref5.value;\n return thisValue === variableEndName;\n });\n // Yes, it's a pair, adjust it like so.\n if (endIndex > i) {\n type = \"variable-block-start\";\n parts.splice(endIndex, 1, {\n type: \"variable-block-end\",\n value: value\n });\n }\n }\n return {\n type: type,\n value: value\n };\n });\n return {\n _message: flattenToNestedParts(parts)\n };\n}\n\n// Note: This is also used by inline source message\nfunction pseudoLocMessageParts(parts, init) {\n if (init === void 0) {\n init = true;\n }\n parts = parts.map(function (_ref6) {\n var type = _ref6.type,\n value = _ref6.value,\n children = _ref6.children;\n if (children) {\n children = pseudoLocMessageParts(children, false);\n return {\n children: children,\n type: type,\n value: value\n };\n }\n if (type === \"literal\") {\n value = pseudoLocString(value);\n }\n return {\n type: type,\n value: value\n };\n });\n if (init) {\n parts.unshift({\n type: \"literal\",\n value: pseudoLocHead()\n });\n parts.push({\n type: \"literal\",\n value: pseudoLocTail()\n });\n }\n return parts;\n}\nfunction pseudoLocHead() {\n return \"[[\";\n}\nvar pseudoLocVowels = {\n a: \"α\",\n e: \"ḛ\",\n i: \"ḭ\",\n o: \"ṓ\",\n u: \"ṵ\",\n A: \"À\",\n E: \"Ḛ\",\n I: \"Ḭ\",\n O: \"Ṏ\",\n U: \"Ṳ\"\n};\nfunction pseudoLocString(string) {\n return string.split(\"\").map(function (c) {\n return pseudoLocVowels[c] || c;\n }).join(\"\");\n}\nfunction pseudoLocTail() {\n return \"]]\";\n}\n\n/**\n * Returns region for based on locale and region value.\n * It will retun C2 if locale has CN-xbord\n * @param {string} locale\n * @param {string} region\n * @returns string - content region value\n */\nfunction getRegionForContent(locale, region) {\n return locale.includes(\"CN-xbord\") ? \"C2\" : region;\n}\nfunction assertMessageParts(messageParts, variables) {\n if (variables === void 0) {\n variables = {};\n }\n messageParts.forEach(function (_ref7) {\n var type = _ref7.type,\n value = _ref7.value,\n children = _ref7.children;\n if (type === \"variable\" || type === \"variable-block\") {\n assert(value in variables, \"Missing variable {{value}}\", {\n value: value\n });\n }\n if (type === \"variable-block\") {\n var variableName = value;\n var variableValue = variables[variableName];\n assert(typeof variableValue === \"function\" && variableValue.length === 1, \"Variable {{name}} expected to be a function that takes content as first argument, not {{value}}\", {\n name: variableName,\n value: variableValue\n });\n assertMessageParts(children, variables);\n }\n });\n}\nfunction getMessageParts(worldReady, id, source, fallback) {\n var market = getRegionForContent(worldReady.locale, worldReady.market);\n var cldr = worldReady.globalize.cldr;\n var message = cldr.main([\"marketSpecificL10n\", market].concat(getWorldReadyExperienceId(market, id))) || cldr.main([\"l10n\"].concat(getWorldReadyExperienceId(market, id))) || cldr.main([\"marketSpecificL10n\", market].concat(id)) || cldr.main([\"l10n\"].concat(id));\n if (process.env.NODE_ENV !== \"production\") {\n if (message) {\n assert(isMessage(message), \"Invalid `id` for MessageFormat object. Did you mean {{potentialId}}?\", {\n potentialId: [].concat(id, [\"\"])\n });\n }\n }\n if (process.env.NODE_ENV !== \"production\") {\n // Inline Source Message\n if (message === undefined && source !== undefined) {\n message = messageStringToWorldReadySchema(source);\n }\n }\n var messageParts;\n if (isMessageValueMissing(message)) {\n message = undefined;\n }\n if (message === undefined) {\n if (fallback === \"code\") {\n messageParts = [{\n type: \"missingMessage\",\n value: id.join(\".\"),\n id: id\n }];\n }\n } else if (typeof message === \"string\") {\n messageParts = [{\n type: \"literal\",\n value: message\n }];\n } else {\n messageParts = message._message;\n }\n if (process.env.NODE_ENV !== \"production\") {\n // Inline Source Message\n if (source && cldr.attributes.language !== \"en\") {\n messageParts = pseudoLocMessageParts(messageParts);\n }\n }\n return messageParts;\n}\n\n/**\n * MessageFormat(worldReady, options)\n */\nvar MessageFormat = /*#__PURE__*/function () {\n function MessageFormat(worldReady, options) {\n // Error Check: WorldReady Object\n if (process.env.NODE_ENV !== \"production\") {\n assert(isWorldReadyInstance(worldReady), \"WorldReady object missing.\");\n try {\n assertType(options, \"options\", [\"array\", \"plain object\"]);\n } catch (error) {\n var _error$attributes = error.attributes,\n parameterType = _error$attributes.parameterType,\n parameterValue = _error$attributes.parameterValue;\n // If they passed a string, they probably meant `{ id }` instead.\n if (parameterType === \"string\") {\n error.message += \". Did you mean `{ id: \\\"\" + parameterValue + \"\\\" }`? (note the object and the `id` key)\";\n }\n throw error;\n }\n }\n if (Array.isArray(options)) {\n options = {\n id: options\n };\n }\n var _options = options,\n id = _options.id,\n _options$fallback = _options.fallback,\n fallback = _options$fallback === void 0 ? \"code\" : _options$fallback,\n source = _options.source,\n namespace = _options.namespace;\n if (process.env.NODE_ENV !== \"production\") {\n assertType(id, \"id\", [\"array\", \"string\"]);\n assertRange(fallback, [\"code\", \"none\"], \"options.fallback must be 'none', or 'code'\");\n if (namespace) {\n assertType(namespace, \"namespace\", [\"string\", \"array\"]);\n }\n }\n if (typeof id === \"string\") {\n id = id.split(\".\");\n }\n if (namespace) {\n if (typeof namespace === \"string\") {\n namespace = namespace.split(\".\");\n }\n id = [].concat(namespace, id);\n }\n if (process.env.NODE_ENV !== \"production\") {\n id.forEach(function (part, i) {\n return assertType(part, \"id[\" + i + \"]\", [\"string\"]);\n });\n }\n\n // TODO if server side only\n this.messageParts = getMessageParts(worldReady, id, source, fallback);\n }\n var _proto = MessageFormat.prototype;\n _proto.format = function format(variables) {\n if (!this.messageParts) return;\n var parts = this.formatToParts(variables);\n if (process.env.NODE_ENV !== \"production\") {\n parts.forEach(function (_ref8) {\n var type = _ref8.type;\n return assert(type !== \"variable-block\", \"Use .formatToParts() to format messages containing `variable-block` parts\");\n });\n }\n return parts.map(function (_ref9) {\n var value = _ref9.value;\n return value;\n }).join(\"\");\n };\n _proto.formatToParts = function formatToParts(variables) {\n if (!this.messageParts) return;\n if (process.env.NODE_ENV !== \"production\") {\n assertType(variables, \"variables\", [\"plain object\", \"undefined\"]);\n assertMessageParts(this.messageParts, variables);\n }\n return _formatToParts(this.messageParts, variables);\n };\n return MessageFormat;\n}();\n\nexport { MessageFormat, getMessageParts };\n","import 'core-js/modules/es.symbol';\nimport 'core-js/modules/es.symbol.description';\nimport 'core-js/modules/es.symbol.to-primitive';\nimport 'core-js/modules/es.array.join';\nimport 'core-js/modules/es.date.to-primitive';\nimport 'core-js/modules/es.number.constructor';\nimport 'core-js/modules/es.object.to-string';\nimport 'core-js/modules/es.regexp.exec';\nimport 'core-js/modules/es.string.match';\nimport 'core-js/modules/es.string.replace';\nimport 'core-js/modules/es.string.split';\nimport { isWorldReadyInstance } from '@paypalcorp/worldready-core';\nimport { assert } from 'yaassertion';\nimport '@paypalcorp/globalize/dist/globalize/number';\n\nfunction _toPrimitive(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nfunction _toPropertyKey(t) {\n var i = _toPrimitive(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\nfunction _defineProperty(obj, key, value) {\n key = _toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}\nvar getMissingMetadataError = function getMissingMetadataError(path) {\n var message = \"Missing WorldReady metadata, please refer to https://github.paypal.com/pages/Globalization-R/worldready-js/docs/about-load-worldready-data.html\";\n if (path) {\n message += \"\\nPath: \" + path;\n }\n return new Error(message);\n};\nfunction globalizeToWorldReadyError(error) {\n if (error.code === \"E_MISSING_CLDR\") {\n return getMissingMetadataError(error.stack);\n }\n return new Error([\"Oops, internal error\", error.message, error.stack].join(\"\\n\"));\n}\n\n/**\n * Note:\n * - Below, we \"borrow code\" from globalize since it doesn't export the resolved properties.\n * https://github.com/globalizejs/globalize/blob/8f4f2bffed00231aa2f7f4f46c3a4687ace46ab6/src/number.js\n * https://github.com/globalizejs/globalize/blob/8f4f2bffed00231aa2f7f4f46c3a4687ace46ab6/src/number/pattern-properties.js\n * https://github.com/globalizejs/globalize/blob/8f4f2bffed00231aa2f7f4f46c3a4687ace46ab6/src/number/format-properties.js\n * - NOT using numberFormatter.runtimeArgs because it's NOT available when code is minified.\n *\n * TODO: Expose resolvedOptions() in globalize and reuse it here.\n */\n\nfunction numberNumberingSystem(cldr) {\n var nu = cldr.attributes[\"u-nu\"];\n if (nu) {\n if (nu === \"traditio\") {\n nu = \"traditional\";\n }\n if ([\"native\", \"traditional\", \"finance\"].indexOf(nu) !== -1) {\n // Unicode locale extension `u-nu` is set using either (native, traditional or\n // finance). So, lookup the respective locale's numberingSystem and return it.\n return cldr.main([\"numbers/otherNumberingSystems\", nu]);\n }\n\n // Unicode locale extension `u-nu` is set with an explicit numberingSystem. Return it.\n return nu;\n }\n\n // Return the default numberingSystem.\n return cldr.main(\"numbers/defaultNumberingSystem\");\n}\nfunction numberPattern(style, cldr) {\n if (style !== \"decimal\" && style !== \"percent\") {\n throw new Error(\"Invalid style\");\n }\n return cldr.main([\"numbers\", style + \"Formats-numberSystem-\" + numberNumberingSystem(cldr), \"standard\"]);\n}\nvar numberPatternRe = /^(('([^']|'')*'|[^*#@0,.E])*)(\\*.)?((([#,]*[0,]*0+)(\\.0*[0-9]*#*)?)|([#,]*@+#*))(E\\+?0+)?(('[^']+'|''|[^*#@0,.E])*)$/;\nfunction numberPatternProperties(pattern) {\n var fractionPattern, integerPattern, maximumFractionDigits, maximumSignificantDigits, minimumFractionDigits, minimumIntegerDigits, minimumSignificantDigits;\n pattern = pattern.match(numberPatternRe);\n if (!pattern) {\n throw new Error(\"Invalid pattern: \" + pattern);\n }\n\n // Significant digit format\n {\n fractionPattern = pattern[8];\n integerPattern = pattern[7];\n if (fractionPattern) {\n // Minimum fraction digits, and rounding.\n fractionPattern.replace(/[0-9]+/, function (match) {\n minimumFractionDigits = match;\n });\n if (minimumFractionDigits) {\n minimumFractionDigits = minimumFractionDigits.length;\n } else {\n minimumFractionDigits = 0;\n }\n\n // Maximum fraction digits\n // 1: ignore decimal character\n maximumFractionDigits = fractionPattern.length - 1; /* 1 */\n } else {\n minimumFractionDigits = 0;\n maximumFractionDigits = 0;\n }\n\n // Minimum integer digits\n integerPattern.replace(/0+$/, function (match) {\n minimumIntegerDigits = match.length;\n });\n }\n return [0, 0, minimumIntegerDigits, minimumFractionDigits, maximumFractionDigits, minimumSignificantDigits, maximumSignificantDigits];\n}\nfunction numberFormatProperties(pattern, cldr, options) {\n var positivePattern, properties;\n function getOptions(attribute, propertyIndex) {\n if (attribute in options) {\n properties[propertyIndex] = options[attribute];\n }\n }\n options = options || {};\n pattern = pattern.split(\";\");\n positivePattern = pattern[0];\n properties = numberPatternProperties(positivePattern);\n if (options.compact) {\n // The compact digits number pattern is always `0+`, so override the following properties.\n // Note: minimumIntegerDigits would actually range from `0` to `000` based on the scale of\n // the value to be formatted, though we're always using 1 as a simplification, because the\n // number won't be zero-padded since we chose the right format based on the scale, i.e.,\n // we'd never see something like `003M` anyway.\n properties[2] = 1; // minimumIntegerDigits\n properties[3] = 0; // minimumFractionDigits\n properties[4] = 0; // maximumFractionDigits\n properties[5] = properties[6] = undefined; // minimumSignificantDigits & // maximumSignificantDigits\n }\n getOptions(\"minimumIntegerDigits\", 2);\n getOptions(\"minimumFractionDigits\", 3);\n getOptions(\"maximumFractionDigits\", 4);\n getOptions(\"minimumSignificantDigits\", 5);\n getOptions(\"maximumSignificantDigits\", 6);\n\n // Normalize number of digits if only one of either minimumFractionDigits or\n // maximumFractionDigits is passed in as an option\n if (\"minimumFractionDigits\" in options && !(\"maximumFractionDigits\" in options)) {\n // maximumFractionDigits = Math.max( minimumFractionDigits, maximumFractionDigits );\n properties[4] = Math.max(properties[3], properties[4]);\n } else if (!(\"minimumFractionDigits\" in options) && \"maximumFractionDigits\" in options) {\n // minimumFractionDigits = Math.min( minimumFractionDigits, maximumFractionDigits );\n properties[3] = Math.min(properties[3], properties[4]);\n }\n return properties;\n}\nfunction resolvedOptions(globalize, options) {\n if (options === void 0) {\n options = {};\n }\n var pattern;\n var cldr = globalize.cldr;\n if (options.raw) {\n pattern = options.raw;\n } else {\n pattern = numberPattern(options.style || \"decimal\", cldr);\n }\n var properties = numberFormatProperties(pattern, cldr, options);\n var minimumIntegerDigits = properties[2],\n minimumFractionDigits = properties[3],\n maximumFractionDigits = properties[4],\n minimumSignificantDigits = properties[5],\n maximumSignificantDigits = properties[6];\n return {\n minimumIntegerDigits: minimumIntegerDigits,\n minimumFractionDigits: minimumFractionDigits,\n maximumFractionDigits: maximumFractionDigits,\n minimumSignificantDigits: minimumSignificantDigits,\n maximumSignificantDigits: maximumSignificantDigits\n };\n}\n\n/**\n * This class is a wrapper class on top of Griffin 2.0.\n */\nvar NumberFormat = /*#__PURE__*/function () {\n function NumberFormat(worldReady, options) {\n // Error Check: WorldReady Object\n if (process.env.NODE_ENV !== \"production\") {\n assert(isWorldReadyInstance(worldReady), \"WorldReady object missing.\");\n }\n try {\n this.numberFormatter = worldReady.globalize.numberFormatter(options);\n this.numberParser = worldReady.globalize.numberParser(options);\n } catch (error) {\n throw globalizeToWorldReadyError(error);\n }\n var resolvedOptionsCache;\n this._resolvedOptions = function () {\n if (!resolvedOptionsCache) {\n resolvedOptionsCache = resolvedOptions(worldReady.globalize, options);\n }\n return resolvedOptionsCache;\n };\n }\n\n /**\n * Errors handled by Globalize\n */\n var _proto = NumberFormat.prototype;\n _proto.format = function format(number) {\n return this.numberFormatter(number);\n }\n\n /**\n * Errors handled by Globalize\n */;\n _proto.parse = function parse(localizedNumber) {\n return this.numberParser(localizedNumber);\n };\n _proto.resolvedOptions = function resolvedOptions() {\n return this._resolvedOptions();\n };\n return NumberFormat;\n}(); // Exposing number's resolvedOptions for reuse on CurrencyFormat.\n_defineProperty(NumberFormat, \"_resolvedOptions\", resolvedOptions);\n\nexport { NumberFormat };\n","import 'core-js/modules/es.symbol';\nimport 'core-js/modules/es.symbol.description';\nimport 'core-js/modules/es.symbol.to-primitive';\nimport 'core-js/modules/es.array.map';\nimport 'core-js/modules/es.date.to-primitive';\nimport 'core-js/modules/es.function.name';\nimport 'core-js/modules/es.number.constructor';\nimport 'core-js/modules/es.object.assign';\nimport 'core-js/modules/es.object.to-string';\nimport React, { Component } from 'react';\nimport { assert, assertType } from 'yaassertion';\nimport { MessageFormat } from '@paypalcorp/worldready-message';\nimport { WorldReady, isWorldReadyInstance } from '@paypalcorp/worldready-core';\nimport hoistNonReactStatic from 'hoist-non-react-statics';\n\nfunction _inheritsLoose(subClass, superClass) {\n subClass.prototype = Object.create(superClass.prototype);\n subClass.prototype.constructor = subClass;\n _setPrototypeOf(subClass, superClass);\n}\nfunction _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n return _setPrototypeOf(o, p);\n}\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n }\n return target;\n}\n\nvar _excluded = [\"children\", \"worldReady\", \"id\", \"namespace\", \"source\"],\n _excluded2 = [\"children\", \"id\", \"namespace\", \"variables\", \"source\"];\nfunction _toPrimitive(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nfunction _toPropertyKey(t) {\n var i = _toPrimitive(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\nfunction _defineProperty(obj, key, value) {\n key = _toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}\nfunction _extends() {\n _extends = Object.assign ? Object.assign.bind() : function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n return target;\n };\n return _extends.apply(this, arguments);\n}\nvar Context = React.createContext();\nvar ContextProvider = function ContextProvider(_ref) {\n var locale = _ref.locale,\n children = _ref.children;\n var worldReady = new WorldReady(locale);\n return /*#__PURE__*/React.createElement(Context.Provider, {\n value: worldReady\n }, children);\n};\nvar ContextConsumer = Context.Consumer;\nvar DOCUMENTATION_HOMEPAGE = \"https://github.paypal.com/pages/Globalization-R/worldready-js/docs\";\nvar MessageParts = function MessageParts(_ref2) {\n var messageParts = _ref2.messageParts;\n return /*#__PURE__*/React.createElement(React.Fragment, null, messageParts.map(function (_ref3, i) {\n var type = _ref3.type,\n value = _ref3.value,\n children = _ref3.children,\n variableName = _ref3.variableName;\n if (type === \"variable-block\") {\n var ret = value( /*#__PURE__*/React.createElement(MessageParts, {\n messageParts: children\n }));\n if (process.env.NODE_ENV !== \"production\") {\n assert(React.isValidElement(ret), \"Variable {{variableName}} should return a react element, not {{ret}}\", {\n variableName: variableName,\n ret: ret\n });\n }\n return React.cloneElement(ret, Object.assign({\n key: i\n }, value.props));\n }\n if (React.isValidElement(value)) {\n return React.cloneElement(value, Object.assign({\n key: i\n }, value.props));\n }\n return value;\n }));\n};\nvar MessageReactWrapper = function MessageReactWrapper(_ref4) {\n var children = _ref4.children,\n worldReady = _ref4.worldReady,\n id = _ref4.id,\n namespace = _ref4.namespace,\n source = _ref4.source,\n variables = _objectWithoutPropertiesLoose(_ref4, _excluded);\n if (process.env.NODE_ENV !== \"production\") {\n // 1: There are cases where empty elements are coming as empty array []\n // children, so need to check for length as well. At present we did not\n // identify the cause, it could be related to react version or due to preact.\n // Not able to reproduce this in unit tests ¯\\_(ツ)_/¯\n assert(!children || !children.length /* 1 */, \"Message must be an empty element (no children)\");\n assertType(id, \"id\", [\"array\", \"string\"]);\n if (namespace) {\n assertType(namespace, \"namespace\", [\"array\", \"string\"]);\n }\n assert(isWorldReadyInstance(worldReady), \"Missing worldReady object. Please read \" + DOCUMENTATION_HOMEPAGE + \"/about-get-started.html#reactjs\");\n }\n var messageFormatter = new MessageFormat(worldReady, {\n id: id,\n source: source,\n namespace: namespace\n });\n return /*#__PURE__*/React.createElement(MessageParts, {\n messageParts: messageFormatter.formatToParts(variables)\n });\n};\nvar Message = /*#__PURE__*/function (_Component) {\n function Message() {\n return _Component.apply(this, arguments) || this;\n }\n _inheritsLoose(Message, _Component);\n var _proto = Message.prototype;\n _proto.render = function render() {\n if (process.env.NODE_ENV !== \"production\") {\n assert(typeof this.props !== \"string\", \"Message function got a String, but expected an Object. Did you mean { id: \\\"\" + this.props + \"\\\"} instead?\");\n }\n var _this$props = this.props,\n children = _this$props.children,\n id = _this$props.id,\n namespace = _this$props.namespace,\n variables = _this$props.variables,\n source = _this$props.source,\n otherProps = _objectWithoutPropertiesLoose(_this$props, _excluded2);\n if (process.env.NODE_ENV !== \"production\") {\n // 1: There are cases where empty elements are coming as empty array []\n // children, so need to check for length as well. At present we did not\n // identify the cause, it could be related to react version or due to preact.\n // Not able to reproduce this in unit tests ¯\\_(ツ)_/¯\n assert(!children || !children.length /* 1 */, \"Message must be an empty element (no children)\");\n assertType(id, \"id\", [\"array\", \"string\"]);\n if (namespace) {\n assertType(namespace, \"namespace\", [\"array\", \"string\"]);\n }\n }\n var worldReady = this.context;\n if (process.env.NODE_ENV !== \"production\") {\n assert(isWorldReadyInstance(worldReady), \"Missing worldReady object. Please read \" + DOCUMENTATION_HOMEPAGE + \"/about-get-started.html#reactjs\");\n }\n var messageFmt = new MessageFormat(worldReady, {\n id: id,\n source: source,\n namespace: namespace\n });\n\n // If message is instance of ContentMessage:\n var _variables = variables || otherProps;\n\n // TODO cache formatted message, see react-globalize for reference.\n return /*#__PURE__*/React.createElement(MessageParts, {\n messageParts: messageFmt.formatToParts(_variables)\n });\n };\n return Message;\n}(Component);\n_defineProperty(Message, \"contextType\", Context);\nfunction getDisplayName(Component) {\n return Component.displayName || Component.name || \"Component\";\n}\nfunction injectWorldReady(WrappedComponent) {\n var InjectWorldReady = /*#__PURE__*/function (_Component2) {\n function InjectWorldReady() {\n return _Component2.apply(this, arguments) || this;\n }\n _inheritsLoose(InjectWorldReady, _Component2);\n var _proto2 = InjectWorldReady.prototype;\n _proto2.render = function render() {\n var _this = this;\n return /*#__PURE__*/React.createElement(ContextConsumer, null, function (worldReady) {\n return /*#__PURE__*/React.createElement(WrappedComponent, _extends({}, _this.props, {\n worldReady: worldReady,\n griffin: worldReady\n }));\n });\n };\n return InjectWorldReady;\n }(Component); // Why this? https://reactjs.org/docs/higher-order-components.html#static-methods-must-be-copied-over\n // Why this? https://reactjs.org/docs/higher-order-components.html#convention-wrap-the-display-name-for-easy-debugging\n _defineProperty(InjectWorldReady, \"displayName\", \"InjectWorldReady(\" + getDisplayName(WrappedComponent) + \")\");\n _defineProperty(InjectWorldReady, \"WrappedComponent\", WrappedComponent);\n hoistNonReactStatic(InjectWorldReady, WrappedComponent);\n return InjectWorldReady;\n}\nvar injectGriffin = injectWorldReady;\n\nexport { Context, ContextConsumer, ContextProvider, Message, MessageReactWrapper, injectGriffin, injectWorldReady };\n","/** @license React v16.14.0\n * react.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';var l=require(\"object-assign\"),n=\"function\"===typeof Symbol&&Symbol.for,p=n?Symbol.for(\"react.element\"):60103,q=n?Symbol.for(\"react.portal\"):60106,r=n?Symbol.for(\"react.fragment\"):60107,t=n?Symbol.for(\"react.strict_mode\"):60108,u=n?Symbol.for(\"react.profiler\"):60114,v=n?Symbol.for(\"react.provider\"):60109,w=n?Symbol.for(\"react.context\"):60110,x=n?Symbol.for(\"react.forward_ref\"):60112,y=n?Symbol.for(\"react.suspense\"):60113,z=n?Symbol.for(\"react.memo\"):60115,A=n?Symbol.for(\"react.lazy\"):\n60116,B=\"function\"===typeof Symbol&&Symbol.iterator;function C(a){for(var b=\"https://reactjs.org/docs/error-decoder.html?invariant=\"+a,c=1;cQ.length&&Q.push(a)}\nfunction T(a,b,c,e){var d=typeof a;if(\"undefined\"===d||\"boolean\"===d)a=null;var g=!1;if(null===a)g=!0;else switch(d){case \"string\":case \"number\":g=!0;break;case \"object\":switch(a.$$typeof){case p:case q:g=!0}}if(g)return c(e,a,\"\"===b?\".\"+U(a,0):b),1;g=0;b=\"\"===b?\".\":b+\":\";if(Array.isArray(a))for(var k=0;k= 0) continue;\n target[key] = source[key];\n }\n }\n return target;\n}\n\nvar _excluded = [\"unit\"];\nvar getMissingMetadataError = function getMissingMetadataError(path) {\n var message = \"Missing WorldReady metadata, please refer to https://github.paypal.com/pages/Globalization-R/worldready-js/docs/about-load-worldready-data.html\";\n if (path) {\n message += \"\\nPath: \" + path;\n }\n return new Error(message);\n};\nfunction globalizeToWorldReadyError(error) {\n if (error.code === \"E_MISSING_CLDR\") {\n return getMissingMetadataError(error.stack);\n }\n return new Error([\"Oops, internal error\", error.message, error.stack].join(\"\\n\"));\n}\nfunction validateCldr(path, value, options) {\n if (options === void 0) {\n options = {\n skip: []\n };\n }\n var skipBoolean = options.skip.some(function (regex) {\n return regex.test(path);\n });\n if (skipBoolean) {\n return;\n }\n if (value === undefined) {\n throw getMissingMetadataError(path);\n }\n}\nvar ISO8601 = \"iso8601\";\nvar RELATIVE_TIME_UNITS = {\n BEST_FIT: \"bestFit\",\n SECOND: \"second\",\n MINUTE: \"minute\",\n HOUR: \"hour\",\n DAY: \"day\",\n MONTH: \"month\",\n YEAR: \"year\"\n};\nvar RELATIVE_TIME_FORMATTERS_STYLES = {\n LONG: \"long\",\n NARROW: \"narrow\",\n SHORT: \"short\"\n};\nvar RELATIVE_TIME_STYLES = {\n DURATION_NARROW: \"duration-narrow\",\n DURATION_LONG: \"duration-long\",\n DURATION_SHORT: \"duration-short\"\n};\nvar RELATIVE_TIME_ERRORS = {\n INVALID_INPUT: {\n code: \"INVALID_INPUT\",\n message: \"Please provide a valid input for parsing ISO 8601 duration.\"\n }\n};\nvar matchStringWithRegex = function matchStringWithRegex(value, regex) {\n if (value === void 0) {\n value = \"\";\n }\n if (regex === void 0) {\n regex = \"\";\n }\n var regexExp = new RegExp(regex);\n return regexExp.test(value);\n};\nvar DURATION_CODES = {\n PERIOD: \"P\",\n YEARS: \"Y\",\n MONTHS: \"M\",\n WEEKS: \"W\",\n DAYS: \"D\",\n TIME: \"T\",\n HOURS: \"H\",\n MINUTES: \"M\",\n SECONDS: \"S\"\n};\n\n/**\n * Function that will format ISO 8601 duration string into relative time format\n * E.g., for input \"P3D\", output will be \"3 days\" (for locale en-US)\n * @param {String} duration - an iso 8601 duration string\n * @param {Object} options - an object that can contain any properties for additional filtering\n * For now it contains the regex for validating the input duration string as per regex identified by ppaas\n * https://github.paypal.com/ApiSpecifications-R/CommonComponentsSpecification/blob/master/v4/schema/json/openapi-2.0/time_duration.json#L6\n * @returns {String}\n */\nvar formatISO8601Duration = function formatISO8601Duration(duration, options) {\n if (duration === void 0) {\n duration = \"\";\n }\n if (options === void 0) {\n options = {};\n }\n try {\n if (duration === \"\" || typeof options !== \"object\") {\n return RELATIVE_TIME_ERRORS.INVALID_INPUT;\n }\n\n /**\n * 1. Validate the input string using regex\n * 2. Convert duration to a date format object\n * 3. Return the date object\n */\n\n var result = null;\n\n // 1.\n validateISO8601Duration(duration, options.validations.default.iso8601.pattern.default || \"\");\n var parsedDuration = parseISO8601Duration(duration);\n var futureDate = addTimeToDate(new Date(), parsedDuration);\n\n // 2.\n result = futureDate;\n return result;\n } catch (error) {\n throw new Error(\"\" + error.message);\n }\n};\n\n/**\n * Helper function to validate the iso8601 duration string\n * @param {String} duration - an iso 8601 duration string\n * @param {String} validationRegex - regex pattern against which the duration string should be tested\n * @returns {Object} an object containing error code and message. If there are no errors, then an empty object will be returned.\n */\nvar validateISO8601Duration = function validateISO8601Duration(duration, validationRegex) {\n if (duration === void 0) {\n duration = \"\";\n }\n if (validationRegex === void 0) {\n validationRegex = \"\";\n }\n if (duration === \"\" || !matchStringWithRegex(duration, validationRegex)) {\n throw new Error(RELATIVE_TIME_ERRORS.INVALID_INPUT.code + \". \" + RELATIVE_TIME_ERRORS.INVALID_INPUT.message);\n }\n return;\n};\n\n/**\n * Helper function to convert a valid ISO 8601 duration string into an object specifying each element separately\n * NOTE: This function is not used right now but can be used in DateTimeFormat.parse API to parse\n * each element of ISO 8601 duration separately.\n * @param {String} duration - string in the ISO 8601 format\n * @returns {Object} in the following format:\n * // For an input \"P14Y10M3DT18H13M15S\", output will be\n * {\n * years: 14,\n * months: 10,\n * days: 3,\n * hours: 18,\n * minutes: 13,\n * seconds: 15\n * }\n */\nvar parseISO8601Duration = function parseISO8601Duration(duration) {\n if (duration === void 0) {\n duration = \"\";\n }\n duration = duration.toLocaleUpperCase();\n var _duration$split = duration.split(DURATION_CODES.TIME),\n period = _duration$split[0],\n time = _duration$split[1];\n // Remove \"P\" from the start of period string\n period = period.substring(1);\n var parsedPeriod = parseISO8601Period(period);\n var parsedTime = parseISO8601Time(time);\n var result = Object.assign({}, parsedPeriod && Object.assign({}, parsedPeriod), {}, parsedTime && Object.assign({}, parsedTime));\n return result;\n};\n\n/**\n * Helper function to parse the period value from iso 8601 duration\n * @param {String} period\n * @returns {Object} in the following format:\n * For an input \"3Y1D\". output will be:\n * {\n * years: 3,\n * days: 1\n * }\n */\nvar parseISO8601Period = function parseISO8601Period(period) {\n if (period === void 0) {\n period = \"\";\n }\n if (period === \"\") {\n return null;\n }\n var years = null,\n months = null,\n weeks = null,\n days = null,\n rest = period;\n if (rest.includes(DURATION_CODES.YEARS)) {\n // Parse years into number\n var _rest$split = rest.split(DURATION_CODES.YEARS);\n years = _rest$split[0];\n rest = _rest$split[1];\n years = Number.parseInt(years);\n }\n if (rest && rest.includes(DURATION_CODES.MONTHS)) {\n // Parse months into a number\n var _rest$split2 = rest.split(DURATION_CODES.MONTHS);\n months = _rest$split2[0];\n rest = _rest$split2[1];\n months = Number.parseInt(months);\n }\n if (rest && rest.includes(DURATION_CODES.WEEKS)) {\n // Parse weeks into a number\n var _rest$split3 = rest.split(DURATION_CODES.WEEKS);\n weeks = _rest$split3[0];\n rest = _rest$split3[1];\n weeks = Number.parseInt(weeks);\n }\n if (rest && rest.includes(DURATION_CODES.DAYS)) {\n // Parse days into number\n var _rest$split4 = rest.split(DURATION_CODES.DAYS);\n days = _rest$split4[0];\n rest = _rest$split4[1];\n days = Number.parseInt(days);\n }\n return {\n years: years && years >= 0 ? years : undefined,\n months: months && months >= 0 ? months : undefined,\n weeks: weeks && weeks >= 0 ? weeks : undefined,\n days: days && days >= 0 ? days : undefined\n };\n};\n\n/**\n * Helper function to parse the time value from iso 8601 duration\n * @param {String} time\n * @returns {Object} in the following format:\n * For an input \"3H2M\". output will be:\n * {\n * hours: 3,\n * minutes: 1\n * }\n */\nvar parseISO8601Time = function parseISO8601Time(time) {\n if (time === void 0) {\n time = \"\";\n }\n if (time === \"\") {\n return null;\n }\n var hours = null,\n minutes = null,\n seconds = null,\n rest = time;\n if (rest.includes(DURATION_CODES.HOURS)) {\n // Parse hours into number\n var _rest$split5 = rest.split(DURATION_CODES.HOURS);\n hours = _rest$split5[0];\n rest = _rest$split5[1];\n hours = Number.parseInt(hours);\n }\n if (rest && rest.includes(DURATION_CODES.MINUTES)) {\n // Parse minutes into a number\n var _rest$split6 = rest.split(DURATION_CODES.MINUTES);\n minutes = _rest$split6[0];\n rest = _rest$split6[1];\n minutes = Number.parseInt(minutes);\n }\n if (rest && rest.includes(DURATION_CODES.SECONDS)) {\n // Parse seconds into number\n var _rest$split7 = rest.split(DURATION_CODES.SECONDS);\n seconds = _rest$split7[0];\n rest = _rest$split7[1];\n seconds = Number.parseInt(seconds);\n }\n return {\n hours: hours && hours >= 0 ? hours : undefined,\n minutes: minutes && minutes >= 0 ? minutes : undefined,\n seconds: seconds && seconds >= 0 ? seconds : undefined\n };\n};\n\n/**\n * Add time to a date object\n * @param {Date} date - date object to which you want to add time to\n * @param {Object} timeToAdd - object with the following structure\n * {\n * years: n,\n * months: n,\n * weeks: n,\n * hours: n,\n * minutes: n,\n * seconds: n\n * }\n * Here n is the integer value\n * @returns {Date} new Date object after adding the time mentioned in timeToAdd object\n */\nfunction addTimeToDate(date, timeToAdd) {\n if (date === void 0) {\n date = new Date();\n }\n if (timeToAdd === void 0) {\n timeToAdd = {};\n }\n if (!Object.keys(timeToAdd).length) {\n return date;\n }\n var _timeToAdd = timeToAdd,\n years = _timeToAdd.years,\n months = _timeToAdd.months,\n weeks = _timeToAdd.weeks,\n days = _timeToAdd.days,\n hours = _timeToAdd.hours,\n minutes = _timeToAdd.minutes,\n seconds = _timeToAdd.seconds;\n var result = date;\n years && result.setFullYear(result.getFullYear() + years);\n months && result.setMonth(result.getMonth() + months);\n if (weeks) {\n days = weeks * 7 + (days || 0);\n }\n days && result.setDate(result.getDate() + days);\n hours && result.setHours(result.getHours() + hours);\n minutes && result.setMinutes(result.getMinutes() + minutes);\n seconds && result.setSeconds(result.getSeconds() + seconds);\n return result;\n}\nvar ENVIRONMENT = {\n PRODUCTION: \"production\"\n};\nRelativeTime.threshold = {\n month: 11,\n // at least 11 months before using year.\n day: 26,\n // at least 26 days before using month.\n hour: 22,\n // at least 22 hours before using day.\n minute: 45,\n // at least 45 minutes before using hour.\n second: 45 // at least 45 seconds before using minute.\n};\nfunction getTimeInDurationNarrowStyle(formatter, value) {\n return formatter(Math.abs(value));\n}\nfunction _initializeFormattersForStyles(globalize, style) {\n var formatter = {\n second: globalize.unitFormatter(RELATIVE_TIME_UNITS.SECOND, {\n form: style\n }),\n minute: globalize.unitFormatter(RELATIVE_TIME_UNITS.MINUTE, {\n form: style\n }),\n hour: globalize.unitFormatter(RELATIVE_TIME_UNITS.HOUR, {\n form: style\n }),\n day: globalize.unitFormatter(RELATIVE_TIME_UNITS.DAY, {\n form: style\n }),\n month: globalize.unitFormatter(RELATIVE_TIME_UNITS.MONTH, {\n form: style\n }),\n year: globalize.unitFormatter(RELATIVE_TIME_UNITS.YEAR, {\n form: style\n })\n };\n return {\n second: function second(value) {\n return getTimeInDurationNarrowStyle(formatter.second, value);\n },\n minute: function minute(value) {\n return getTimeInDurationNarrowStyle(formatter.minute, value);\n },\n hour: function hour(value) {\n return getTimeInDurationNarrowStyle(formatter.hour, value);\n },\n day: function day(value) {\n return getTimeInDurationNarrowStyle(formatter.day, value);\n },\n month: function month(value) {\n return getTimeInDurationNarrowStyle(formatter.month, value);\n },\n year: function year(value) {\n return getTimeInDurationNarrowStyle(formatter.year, value);\n }\n };\n}\nvar RelativeTimeFormat = /*#__PURE__*/function () {\n function RelativeTimeFormat(worldReady, options) {\n // Error Check\n if (process.env.NODE_ENV !== ENVIRONMENT.PRODUCTION) {\n assert(isWorldReadyInstance(worldReady), \"WorldReady object missing.\");\n assertType(options, \"options\", [\"plain object\"]);\n }\n var _options$unit = options.unit,\n unit = _options$unit === void 0 ? \"bestFit\" : _options$unit,\n otherProps = _objectWithoutPropertiesLoose(options, _excluded);\n\n // Error Checks\n if (process.env.NODE_ENV !== ENVIRONMENT.PRODUCTION) {\n if (otherProps) {\n assertType(otherProps.timeZone, \"options.timeZone\", [\"string\"]);\n }\n assertType(unit, \"options.unit\", [\"string\"]);\n var unitValues = Object.values(RELATIVE_TIME_UNITS);\n assertRange(unit, unitValues, \"Invalid `options.unit`: `{{unit}}`. Please, read https://github.paypal.com/pages/Globalization-R/@paypalcorp/griffin-3/docs/relative-time-api.html#optionsunit\", {\n unit: unit\n });\n }\n var globalize = worldReady.globalize;\n var cldr = globalize.cldr;\n unit = unit === RELATIVE_TIME_UNITS.BEST_FIT ? \"best-fit\" : unit;\n this.options = Object.assign({\n unit: unit\n }, otherProps);\n cldr.on(\"get\", validateCldr);\n try {\n this.timeZoneData = getTimeZoneData(cldr.get(\"globalize-iana/zoneData\"), options.timeZone);\n this.validations = cldr.get([\"supplemental\", \"dateValidations\"]);\n } finally {\n cldr.off(\"get\", validateCldr);\n }\n\n // Throw an error if metadata for options.timeZone was not found\n if (!this.timeZoneData) {\n throw new Error(\"Missing required timezone metadata. Make sure that you are exporting metadata for \\\"\" + options.timeZone + \"\\\" using WorldReady.export API.\");\n }\n this.relativeTimeFormatter = function (date) {\n initializeRelativeTimeFormatters();\n return new RelativeTime(globalize, options).format(date, {\n timeZoneData: this.timeZoneData,\n unit: this.options.unit\n });\n };\n }\n var _proto = RelativeTimeFormat.prototype;\n _proto.format = function format(date, options) {\n if (options === void 0) {\n options = {};\n }\n if (process.env.NODE_ENV !== ENVIRONMENT.PRODUCTION) {\n if (options.type === ISO8601) {\n assertType(date, \"date\", [\"string\"]);\n } else {\n assertType(date, \"date\", [\"date\"]);\n }\n }\n try {\n if (options.type === ISO8601) {\n return getRelativeTimeFormatForISO8601Duration.call(this, date, {\n validations: this.validations\n });\n }\n return this.relativeTimeFormatter(date);\n } catch (error) {\n throw globalizeToWorldReadyError(error);\n }\n };\n return RelativeTimeFormat;\n}();\nfunction initializeRelativeTimeFormatters() {\n RelativeTime.initializeFormatters = function (globalize, _ref) {\n var style = _ref.style;\n if (style === RELATIVE_TIME_STYLES.DURATION_NARROW) {\n return _initializeFormattersForStyles(globalize, RELATIVE_TIME_FORMATTERS_STYLES.NARROW);\n } else if (style === RELATIVE_TIME_STYLES.DURATION_LONG) {\n return _initializeFormattersForStyles(globalize, RELATIVE_TIME_FORMATTERS_STYLES.LONG);\n } else if (style === RELATIVE_TIME_STYLES.DURATION_SHORT) {\n return _initializeFormattersForStyles(globalize, RELATIVE_TIME_FORMATTERS_STYLES.SHORT);\n }\n return {\n second: globalize.relativeTimeFormatter(RELATIVE_TIME_UNITS.SECOND),\n minute: globalize.relativeTimeFormatter(RELATIVE_TIME_UNITS.MINUTE),\n hour: globalize.relativeTimeFormatter(RELATIVE_TIME_UNITS.HOUR),\n day: globalize.relativeTimeFormatter(RELATIVE_TIME_UNITS.DAY),\n month: globalize.relativeTimeFormatter(RELATIVE_TIME_UNITS.MONTH),\n year: globalize.relativeTimeFormatter(RELATIVE_TIME_UNITS.YEAR)\n };\n };\n}\nfunction getTimeZoneData(data, timeZone) {\n // Traverse IANA time zone *data* given a timeZone string.\n // - Break timeZone string into parts like [\"America\", \"Los_Angeles\"]\n // - Iterate until the whole timeZone path is traversed (immediately stop in case any node can't\n // be traversed).\n // - Return the last node in case data was found, or null otherwise.\n return timeZone.split(\"/\").every(function (node) {\n data = data[node];\n return !!data;\n }) ? data : null;\n}\nfunction getRelativeTimeFormatForISO8601Duration(duration, options) {\n if (duration === void 0) {\n duration = \"\";\n }\n if (options === void 0) {\n options = {};\n }\n // Check for invalid inputs\n if (duration === \"\") {\n throw new Error(RELATIVE_TIME_ERRORS.INVALID_INPUT.code + \". \" + RELATIVE_TIME_ERRORS.INVALID_INPUT.message);\n }\n\n // Parse duration string into date object\n var date = formatISO8601Duration(duration, {\n validations: options.validations\n });\n\n // Format date object as relative time and return the result\n return this.relativeTimeFormatter(date);\n}\n\nexport { RelativeTimeFormat };\n","const PAYPAL_THEME = {\n \"name\": \"paypal\",\n \"mode\": \"light\",\n \"sysSizeIconXs\": \"1.125rem\",\n \"sysSizeIconSm\": \"1.5rem\",\n \"sysSizeIconMd\": \"2rem\",\n \"sysSizeIconLg\": \"3rem\",\n \"sysSizeIconXl\": \"4rem\",\n \"sysSizePictogramSm\": \"6rem\",\n \"sysSizePictogramMd\": \"8.5rem\",\n \"sysSizePictogramLg\": \"10rem\",\n \"sysSizeCircleXs\": \"1.5rem\",\n \"sysSizeCircleSm\": \"2rem\",\n \"sysSizeCircleMd\": \"3rem\",\n \"sysSizeCircleLg\": \"4rem\",\n \"sysSizeCircleXl\": \"6rem\",\n \"sysSizeTapTargetXs\": \"2.5rem\",\n \"sysSizeTapTargetSm\": \"2.75rem\",\n \"sysSizeTapTargetDefault\": \"3rem\",\n \"sysSizeTapTargetLg\": \"4rem\",\n \"sysSizePointerWidthSm\": \"0.75rem\",\n \"sysSizePointerWidthLg\": \"1rem\",\n \"sysSizeIndicatorXs\": \"0.1875rem\",\n \"sysSizeIndicatorSm\": \"0.25rem\",\n \"sysSizeIndicatorMd\": \"0.375rem\",\n \"sysSizeIndicatorLg\": \"0.5rem\",\n \"sysSizeFieldSm\": \"3rem\",\n \"sysSizeFieldLg\": \"4rem\",\n \"sysSizeMediaXs\": \"22rem\",\n \"sysSizeMediaSm\": \"36rem\",\n \"sysSizeMediaMd\": \"47rem\",\n \"sysSizeMediaLg\": \"64rem\",\n \"sysSizeMediaXl\": \"72rem\",\n \"sysSizeMediaXxl\": \"90rem\",\n \"sysSpaceTiny\": \"0.125rem\",\n \"sysSpaceXs\": \"0.25rem\",\n \"sysSpaceSm\": \"0.5rem\",\n \"sysSpaceMd\": \"0.75rem\",\n \"sysSpaceLg\": \"1rem\",\n \"sysSpaceXl\": \"1.5rem\",\n \"sysSpaceJumbo\": \"2rem\",\n \"sysElevationLevel1Yoffset\": \"0.0625rem\",\n \"sysElevationLevel1Opacity\": 0.08,\n \"sysElevationLevel1Blur\": \"0.75rem\",\n \"sysElevationLevel2Yoffset\": \"0.125rem\",\n \"sysElevationLevel2Opacity\": 0.1,\n \"sysElevationLevel2Blur\": \"0.875rem\",\n \"sysElevationLevel3Yoffset\": \"0.125rem\",\n \"sysElevationLevel3Opacity\": 0.1,\n \"sysElevationLevel3Blur\": \"1.125rem\",\n \"sysElevationBlurCurve\": 1,\n \"sysElevationBlurSlope\": -1,\n \"sysElevationBlurBase\": \"0.625rem\",\n \"sysElevationOpacity\": 0.15,\n \"sysElevationBrightenFactor\": 0.02,\n \"sysElevationVerticalOffsetRatio\": 1,\n \"sysElevationHorizontalOffsetRatio\": 0,\n \"sysMotionTimingX1\": 0,\n \"sysMotionTimingY1\": 0.9,\n \"sysMotionTimingX2\": 0.3,\n \"sysMotionTimingY2\": 1,\n \"sysMotionDurationHover\": \"0.10s\",\n \"sysMotionDurationAction\": \"0.20s\",\n \"sysMotionDurationArrive\": \"0.50s\",\n \"sysMotionDurationDepart\": \"0.30s\",\n \"sysMotionDurationRepeat\": \"1.30s\",\n \"sysMotionDurationLinger\": \"7.00s\",\n \"sysMotionDurationEnterSmall\": \"0.20s\",\n \"sysMotionDurationEnterMedium\": \"0.30s\",\n \"sysMotionDurationEnterLarge\": \"0.50s\",\n \"sysMotionDurationExitSmall\": \"0.10s\",\n \"sysMotionDurationExitMedium\": \"0.20s\",\n \"sysMotionDurationExitLarge\": \"0.20s\",\n \"sysMotionDurationMoveSmall\": \"0.20s\",\n \"sysMotionDurationMoveMedium\": \"0.50s\",\n \"sysMotionDurationMoveLarge\": \"0.80s\",\n \"sysMotionDurationLoopBackForth\": \"0.50s\",\n \"sysMotionDurationLoopStandard\": \"1.30s\",\n \"sysMotionEasingEnterSmall\": \"0,0,0,1\",\n \"sysMotionEasingEnterMedium\": \"0.05,0.7,0.1,1\",\n \"sysMotionEasingEnterLarge\": \"0.05,0.7,0.1,1\",\n \"sysMotionEasingExitSmall\": \"0.3,0,1,1\",\n \"sysMotionEasingExitMedium\": \"0.3,0,0.8,0.15\",\n \"sysMotionEasingExitLarge\": \"0.3,0,0.8,0.15\",\n \"sysMotionEasingMoveSmall\": \"0.2,0,0,1\",\n \"sysMotionEasingMoveMedium\": \"0.2,0,0,1\",\n \"sysMotionEasingMoveLarge\": \"0.2,0,0,1\",\n \"sysMotionEasingLoopBackForth\": \"0.2,0,0,1\",\n \"sysMotionEasingLoopStandard\": \"0,0,1,1\",\n \"sysBorderThicknessNormal\": \"0.0625rem\",\n \"sysBorderThicknessEmphasis\": \"0.125rem\",\n \"sysBorderThicknessFocus\": \"0.1875rem\",\n \"sysBorderThicknessFocusOutline\": \"0.375rem\",\n \"sysBorderRadiusXs\": \"0.125rem\",\n \"sysBorderRadiusSm\": \"0.25rem\",\n \"sysBorderRadiusMd\": \"0.5rem\",\n \"sysBorderRadiusLg\": \"0.75rem\",\n \"sysBorderRadiusInteractive\": \"50%\",\n \"sysTypographyDisplayFamily\": \"PayPalOpen-Regular\",\n \"sysTypographyDisplaySize\": \"4.5rem\",\n \"sysTypographyDisplayWeight\": 400,\n \"sysTypographyDisplayLineHeight\": \"4.875rem\",\n \"sysTypographyDisplayMaxScaleFactor\": 1.25,\n \"sysTypographyHeadingLgFamily\": \"PayPalOpen-Regular\",\n \"sysTypographyHeadingLgSize\": \"2.75rem\",\n \"sysTypographyHeadingLgWeight\": 400,\n \"sysTypographyHeadingLgLineHeight\": \"3rem\",\n \"sysTypographyHeadingLgMaxScaleFactor\": 1.5,\n \"sysTypographyHeadingSmFamily\": \"PayPalOpen-Regular\",\n \"sysTypographyHeadingSmSize\": \"1.75rem\",\n \"sysTypographyHeadingSmWeight\": 400,\n \"sysTypographyHeadingSmLineHeight\": \"2.25rem\",\n \"sysTypographyHeadingSmMaxScaleFactor\": 1.5,\n \"sysTypographyTitleStrongFamily\": \"PayPalOpen-Bold\",\n \"sysTypographyTitleStrongSize\": \"1.375rem\",\n \"sysTypographyTitleStrongWeight\": 400,\n \"sysTypographyTitleStrongLineHeight\": \"1.75rem\",\n \"sysTypographyTitleStrongMaxScaleFactor\": 2,\n \"sysTypographyTitleFamily\": \"PayPalOpen-Regular\",\n \"sysTypographyTitleSize\": \"1.375rem\",\n \"sysTypographyTitleWeight\": 400,\n \"sysTypographyTitleLineHeight\": \"1.75rem\",\n \"sysTypographyTitleMaxScaleFactor\": 2,\n \"sysTypographyBodyStrongFamily\": \"PayPalOpen-Bold\",\n \"sysTypographyBodyStrongSize\": \"1.125rem\",\n \"sysTypographyBodyStrongWeight\": 400,\n \"sysTypographyBodyStrongLineHeight\": \"1.5rem\",\n \"sysTypographyBodyStrongMaxScaleFactor\": 2,\n \"sysTypographyBodyFamily\": \"PayPalOpen-Regular\",\n \"sysTypographyBodySize\": \"1.125rem\",\n \"sysTypographyBodyWeight\": 400,\n \"sysTypographyBodyLineHeight\": \"1.5rem\",\n \"sysTypographyBodyMaxScaleFactor\": 2,\n \"sysTypographyCaptionStrongFamily\": \"PayPalOpen-Bold\",\n \"sysTypographyCaptionStrongSize\": \"0.875rem\",\n \"sysTypographyCaptionStrongWeight\": 400,\n \"sysTypographyCaptionStrongLineHeight\": \"1.25rem\",\n \"sysTypographyCaptionStrongMaxScaleFactor\": 2,\n \"sysTypographyCaptionFamily\": \"PayPalOpen-Regular\",\n \"sysTypographyCaptionSize\": \"0.875rem\",\n \"sysTypographyCaptionWeight\": 400,\n \"sysTypographyCaptionLineHeight\": \"1.25rem\",\n \"sysTypographyCaptionMaxScaleFactor\": 2,\n \"sysTypographyLinkLgFamily\": \"PayPalOpen-Bold\",\n \"sysTypographyLinkLgSize\": \"1.125rem\",\n \"sysTypographyLinkLgWeight\": 400,\n \"sysTypographyLinkLgLineHeight\": \"1.5rem\",\n \"sysTypographyLinkLgUnderline\": true,\n \"sysTypographyLinkLgMaxScaleFactor\": 2,\n \"sysTypographyLinkSmFamily\": \"PayPalOpen-Bold\",\n \"sysTypographyLinkSmSize\": \"0.875rem\",\n \"sysTypographyLinkSmWeight\": 400,\n \"sysTypographyLinkSmLineHeight\": \"1.25rem\",\n \"sysTypographyLinkSmUnderline\": true,\n \"sysTypographyLinkSmMaxScaleFactor\": 2,\n \"sysTypographyButtonLgFamily\": \"PayPalOpen-Bold\",\n \"sysTypographyButtonLgSize\": \"1.125rem\",\n \"sysTypographyButtonLgWeight\": 400,\n \"sysTypographyButtonLgLineHeight\": \"1.5rem\",\n \"sysTypographyButtonLgMaxScaleFactor\": 2,\n \"sysTypographyButtonSmFamily\": \"PayPalOpen-Bold\",\n \"sysTypographyButtonSmSize\": \"0.875rem\",\n \"sysTypographyButtonSmWeight\": 400,\n \"sysTypographyButtonSmLineHeight\": \"1.25rem\",\n \"sysTypographyButtonSmMaxScaleFactor\": 2,\n \"sysTypographyFieldLabelLgFamily\": \"PayPalOpen-Regular\",\n \"sysTypographyFieldLabelLgSize\": \"1.125rem\",\n \"sysTypographyFieldLabelLgWeight\": 400,\n \"sysTypographyFieldLabelLgLineHeight\": \"1.5rem\",\n \"sysTypographyFieldLabelLgMaxScaleFactor\": 2,\n \"sysTypographyFieldLabelSmFamily\": \"PayPalOpen-Regular\",\n \"sysTypographyFieldLabelSmSize\": \"0.875rem\",\n \"sysTypographyFieldLabelSmWeight\": 400,\n \"sysTypographyFieldLabelSmLineHeight\": \"1.25rem\",\n \"sysTypographyFieldLabelSmMaxScaleFactor\": 2,\n \"sysTypographyFieldValueXlFamily\": \"PayPalOpen-Regular\",\n \"sysTypographyFieldValueXlSize\": \"2.75rem\",\n \"sysTypographyFieldValueXlWeight\": 400,\n \"sysTypographyFieldValueXlLineHeight\": \"3rem\",\n \"sysTypographyFieldValueXlMaxScaleFactor\": 1.5,\n \"sysTypographyFieldValueLgFamily\": \"PayPalOpen-Regular\",\n \"sysTypographyFieldValueLgSize\": \"1.75rem\",\n \"sysTypographyFieldValueLgWeight\": 400,\n \"sysTypographyFieldValueLgLineHeight\": \"2.25rem\",\n \"sysTypographyFieldValueLgMaxScaleFactor\": 2,\n \"sysTypographyFieldValueSmFamily\": \"PayPalOpen-Regular\",\n \"sysTypographyFieldValueSmSize\": \"1.125rem\",\n \"sysTypographyFieldValueSmWeight\": 400,\n \"sysTypographyFieldValueSmLineHeight\": \"1.5rem\",\n \"sysTypographyFieldValueSmMaxScaleFactor\": 2,\n \"sysColorBackgroundMain\": \"#faf8f5\",\n \"sysColorBackgroundAlt\": \"#f1ede8\",\n \"sysColorBackgroundSurface\": \"#ffffff\",\n \"sysColorBackgroundSurfaceHover\": \"#faf8f5\",\n \"sysColorBackgroundSurfaceActive\": \"#f1ede8\",\n \"sysColorBackgroundHighContrast\": \"#001435\",\n \"sysColorBackgroundMediumContrast\": \"#545d68\",\n \"sysColorPrimaryMain\": \"#003087\",\n \"sysColorPrimaryMainHover\": \"#0070e0\",\n \"sysColorPrimaryMainActive\": \"#001c64\",\n \"sysColorPrimaryContrast\": \"#ffffff\",\n \"sysColorPrimaryContrastHover\": \"#b9effc\",\n \"sysColorPrimaryContrastActive\": \"#5bbbfc\",\n \"sysColorSecondaryMain\": \"#0070e0\",\n \"sysColorSecondaryMainHover\": \"#5bbbfc\",\n \"sysColorSecondaryMainActive\": \"#003087\",\n \"sysColorSecondaryContrast\": \"#ffffff\",\n \"sysColorTertiaryMain\": \"#faf8f5\",\n \"sysColorTertiaryMainHover\": \"#f1ede8\",\n \"sysColorTertiaryMainActive\": \"#e6e0d9\",\n \"sysColorTertiaryContrast\": \"#003087\",\n \"sysColorFeaturedMain\": \"#ffd140\",\n \"sysColorFeaturedMainHover\": \"#ffe888\",\n \"sysColorFeaturedMainActive\": \"#ff9100\",\n \"sysColorFeaturedContrast\": \"#003087\",\n \"sysColorUnselectedMain\": \"#e6e0d9\",\n \"sysColorUnselectedMainHover\": \"#faf8f5\",\n \"sysColorUnselectedMainActive\": \"#f1ede8\",\n \"sysColorUnselectedContrast\": \"#545d68\",\n \"sysColorSelectedMain\": \"#0070e0\",\n \"sysColorSelectedMainHover\": \"#5bbbfc\",\n \"sysColorSelectedMainActive\": \"#003087\",\n \"sysColorSelectedContrast\": \"#ffffff\",\n \"sysColorSelectedRangeMain\": \"#b9effc\",\n \"sysColorSelectedRangeMainHover\": \"#5bbbfc\",\n \"sysColorSelectedRangeMainActive\": \"#0070e0\",\n \"sysColorSelectedRangeContrast\": \"#003087\",\n \"sysColorLinkMain\": \"#0070e0\",\n \"sysColorLinkMainHover\": \"#003087\",\n \"sysColorLinkMainActive\": \"#003087\",\n \"sysColorLinkAlt\": \"#001435\",\n \"sysColorLinkAltHover\": \"#001435\",\n \"sysColorLinkAltActive\": \"#001435\",\n \"sysColorLinkContrast\": \"#ffffff\",\n \"sysColorLinkContrastHover\": \"#b9effc\",\n \"sysColorLinkContrastActive\": \"#5bbbfc\",\n \"sysColorOverlayMain\": \"rgba(0, 0, 0, 0.55)\",\n \"sysColorOverlayMainHover\": \"rgba(0, 0, 0, 0.4)\",\n \"sysColorOverlayMainActive\": \"rgba(0, 0, 0, 0.7)\",\n \"sysColorOverlayContrast\": \"#ffffff\",\n \"sysColorAccent1Main\": \"#003087\",\n \"sysColorAccent1Contrast\": \"#ffffff\",\n \"sysColorAccent2Main\": \"#e02d50\",\n \"sysColorAccent2Contrast\": \"#ffffff\",\n \"sysColorAccent3Main\": \"#388c00\",\n \"sysColorAccent3Contrast\": \"#ffffff\",\n \"sysColorAccent4Main\": \"#7252cc\",\n \"sysColorAccent4Contrast\": \"#ffffff\",\n \"sysColorErrorMain\": \"#d50102\",\n \"sysColorErrorMainHover\": \"#ff5a6d\",\n \"sysColorErrorMainActive\": \"#9b0021\",\n \"sysColorErrorContrast\": \"#ffffff\",\n \"sysColorWarningMain\": \"#ffbe4a\",\n \"sysColorWarningMainHover\": \"#ffe888\",\n \"sysColorWarningMainActive\": \"#ff9100\",\n \"sysColorWarningAlt\": \"#e85e00\",\n \"sysColorWarningContrast\": \"#001435\",\n \"sysColorSuccessMain\": \"#0f8514\",\n \"sysColorSuccessMainHover\": \"#6fc400\",\n \"sysColorSuccessMainActive\": \"#388c00\",\n \"sysColorSuccessContrast\": \"#ffffff\",\n \"sysColorSystemMain\": \"#001435\",\n \"sysColorSystemMainHover\": \"#929496\",\n \"sysColorSystemMainActive\": \"#545d68\",\n \"sysColorSystemContrast\": \"#ffffff\",\n \"sysColorInfoMain\": \"#e6e0d9\",\n \"sysColorInfoMainHover\": \"#faf8f5\",\n \"sysColorInfoMainActive\": \"#f1ede8\",\n \"sysColorInfoContrast\": \"#001435\",\n \"sysColorSpecialtyMain\": \"#7252cc\",\n \"sysColorSpecialtyMainHover\": \"#b976ff\",\n \"sysColorSpecialtyMainActive\": \"#24247f\",\n \"sysColorSpecialtyContrast\": \"#ffffff\",\n \"sysColorStructureBorderHighContrast\": \"#929496\",\n \"sysColorStructureBorderLowContrast\": \"rgba(0, 0, 0, 0.1)\",\n \"sysColorStructureDivider\": \"#f1ede8\",\n \"sysColorStructureFocus\": \"#097ff5\",\n \"sysColorStructureFocusOutline\": \"rgba(209, 229, 249, 0.9)\",\n \"sysColorStructureErrorOutline\": \"rgba(224, 45, 80, 0.16)\",\n \"sysColorStructureScrim\": \"rgba(0, 0, 0, 0.4)\",\n \"sysColorStructureShimmer\": \"#e6e0d9\",\n \"sysColorStructureShimmerInverse\": \"#545d68\",\n \"sysColorStructureSheen\": \"rgba(255, 255, 255, 0.7)\",\n \"sysColorStructureShadow\": \"#000000\"\n};\n\nexport { PAYPAL_THEME };\n"],"names":["CAMPAIGN_STATUS","ACTIVE","INACTIVE","DRAFT","getContent","content","key","_extends","Object","assign","bind","n","e","arguments","length","t","r","hasOwnProperty","call","apply","EndDateBadge","_ref","className","type","classObj","AdvancedEndDateBadge","date","value","endTime","campaignStatus","currentTime","formatDate","isValidEndTime","toString","Date","isNaN","valueOf","hasEnded","getTime","showEndDateBadge","displayAttributes","endDateContent","daysBetween","Math","round","abs","timeDifference","hoursBetween","minutesBetween","floor","yearsBetween","getFullYear","duration","unit","monthsBetween","getBadgeDisplayAttributes","replace","propTypes","theme","_defineProperty","i","Symbol","toPrimitive","TypeError","String","Number","_toPrimitive","_toPropertyKey","defineProperty","enumerable","configurable","writable","_extends$1","ownKeys","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","push","_objectSpread2","forEach","getOwnPropertyDescriptors","defineProperties","f","Array","isArray","clsx","styles","css","ref","insertAt","document","head","getElementsByTagName","style","createElement","firstChild","insertBefore","appendChild","styleSheet","cssText","createTextNode","styleInject","_excluded$1","Image","_ref$src","src","_ref$content","holderText","_ref$ariaHidden","ariaHidden","_ref$roundedCorners","roundedCorners","_ref$displayIcon","displayIcon","rest","indexOf","_objectWithoutPropertiesLoose","propertyIsEnumerable","_objectWithoutProperties","size","_excluded","CampaignImage","_objectWithoutPropertiesLoose$1","_objectWithoutProperties$1","containerStyle","height","imageStyles","width","objectFit","maxHeight","Title","title","styles$1","styleInject$1","WidgetBannerImage","image","name","marginLeft","marginRight","WidgetDescription","text","WidgetDonateButton","clickHandler","branded","onClick","CampaignsWidget","bannerImage","_ref$progressMeter","progressMeter","description","max","steps","progressMeterTitle","paddingTop","donateButton","CancelAndReturnUrl","href","DonateCheckbox","props","checkbox_content","tooltip_content","disabled","restProps","concat","checkbox_with_tooltip","pointer_events","label","testid","checked","onChange","DonorAvatar","userName","initials","splitNames","firstName","lastName","_ref$isAnonymousAvata","isAnonymousAvatar","photo","color","_ref$size","generic","anonymous","split","DonorRow","time","note","amount","shareDonorInfo","anonymousLabel","badgeType","firstLabel","topLabel","isPreviewMode","_ref$theme","showAnonymousAvatar","container","avatar","details","detailsRow","leftIcon","leftIconLabel","ShimmerRow","isLoading","shimmerDetails","Shimmer","loadingLabel","role","DonorWall","loading","showMore","ariaLabel","first","top","paginationLimitMessage","contributions","handleShowMore","totalTransactions","currentPage","transactionsPerPage","_ref$isPreviewMode","paginationLimit","featured","donorList","map","txn","_txn$photos$6$url","_txn$photos","id","photos","url","donor_name","formattedDate","memo","formattedAmount","badge","list","_txn$photos$6$url2","_txn$photos2","some","screenReaderText","margin","tertiary","GoalProgressMeter","_arrayLikeToArray","a","_slicedToArray","_arrayWithHoles","l","iterator","u","next","done","return","_iterableToArrayLimit","slice","constructor","from","test","_unsupportedIterableToArray","_nonIterableRest","useHasScrolledToPosition","offset","_useState2","useState","stickToTop","setStickToTop","useLayoutEffect","window","addEventListener","handleScroll","removeEventListener","scrollY","LogoImage","borderStyle","borderColor","borderRadius","display","AmountCondensed","currencyCode","handleAmount","symbol","showValidationError","validationErrorMessage","placeholder","autoComplete","onAccept","unmaskedValue","currencyType","prefix","suffix","errorText","PresetAmounts","presetOptions","selectedOption","handlePresetAmountClick","showOtherAmount","amountFieldValue","isMobilePreview","charityAmountSymbol","charityAmountCode","messages","handleAmountChange","isPreview","longestAmount","_presetOptions$filter","_longestOption$label","longestOption","option","undefined","reduce","b","_a$label","_b$label","determineLongestAmount","boxWidth","smallWidthBoxes","largeWidthBoxes","maxWidthBoxes","selectionGroupWrapperClassnames","single_selection_group_wrapper","normal_desktop_boxes","max_desktop_boxes","mobile_preview_small_boxes","mobile_preview_large_boxes","mobile_preview_max_boxes","selection_disabled","options","event","target","align","hideLabel","placeholderOtherAmount","parseAmount","SingleAmount","currencySymbol","_ref$directionality","directionality","isEditable","_ref$isPreview","handleAmountFocus","getAmountBeforeFee","isOptInCoverFee","isAtLandingPage","handleTrackError","validationErrorCode","maskOptions","caamlErrorStyle","handleAccept","getErrorText","useEffect","amountBeforeFee","dir","tabIndex","strong","rtlCode","currencyAlign","readOnly","mask","onFocus","caamlError","StatusBadge","iconObj","checkIcon","module","exports","Cldr","variable","JSON","stringify","formatMessage","message","data","objectExtend","destination","source","prop","createError","code","attributes","error","Error","partsPush","parts","formatMessageToParts","lastOffset","nameIncludingBrackets","part","partsJoin","join","runtimeStringify","args","_key","runtimeKey","stringHash","str","hash","charCodeAt","fnName","locale","argsStr","functionName","fn","matches","exec","runtimeBind","cldr","runtimeArgs","generatorString","validate","check","alwaysArray","stringOrArray","validateCldr","path","skipBoolean","skip","pathRe","validateDefaultLocale","validateParameterPresence","validateParameterRange","minimum","maximum","validateParameterType","expected","validateParameterTypeLocale","isPlainObject","obj","validateParameterTypePlainObject","alwaysCldr","localeOrCldr","regexpEscape","string","stringPad","count","right","validateLikelySubtags","once","get","Globalize","this","load","_alwaysArray","_createError","_formatMessage","_formatMessageToParts","_isPlainObject","_objectExtend","_partsJoin","_partsPush","_regexpEscape","_runtimeBind","_stringPad","_validate","_validateCldr","_validateDefaultLocale","_validateParameterPresence","_validateParameterRange","_validateParameterTypePlainObject","_validateParameterType","factory","numberNumberingSystem","_numberNumberingSystem","numberPattern","_numberPattern","validateParameterTypeNumber","_validateParameterTypeNumber","createErrorPluralModulePresence","validateParameterTypeCurrency","currencyFormatterFn","currencyToPartsFormatter","currencySupplementalOverride","currency","pattern","digits","fraction","fractionData","supplemental","_digits","_rounding","objectFilter","object","testRe","copy","currencyUnitPatterns","main","currencyNameProperties","displayNames","unitPatterns","regexpNotS","regexpNotSAndZ","currencySymbolProperties","currencySpacing","symbolEntries","regexp","symbolForm","unshift","symbolEntry","position","currencyMatch","surroundingMatch","insertBetween","charAt","currencyNameFormat","formattedNumber","pluralForm","properties","displayName","unitPattern","currencySymbolFormat","currencyToPartsFormatterFn","numberToPartsFormatter","pluralGenerator","objectOmit","validateRequiredCldr","currencyFormatter","prototype","returnFn","on","accounting","off","raw","plural","currencyParser","formatCurrency","formatCurrencyToParts","parseCurrency","createErrorUnsupportedFeature","_createErrorUnsupportedFeature","looseMatching","_looseMatching","numberNumberingSystemDigitsMap","_numberNumberingSystemDigitsMap","numberSymbol","_numberSymbol","removeLiteralQuotes","_removeLiteralQuotes","validateParameterTypeString","_validateParameterTypeString","validateParameterTypeDate","createErrorInvalidParameterValue","validateSkeletonFieldsPosMap","item","validateSkeleton","skeleton","last","fieldsPosMap","field","invalidField","every","objectInvert","newObject","dateExpandPatternSimilarFieldsMap","dateExpandPatternNormalizePatternType","character","datePatternRe","stringRepeat","result","expandBestMatchFormat","skeletonWithoutFractionalSeconds","bestMatchFormat","j","bestMatchFormatParts","matchedType","matchedLength","requestedType","requestedLength","requestedSkeletonParts","normalizePatternType","match","dateExpandPatternAugmentFormat","requestedSkeleton","decimalSeparator","countOfFractionalSeconds","fractionalSecondMatch","lastSecondIdx","lastIndexOf","dateExpandPatternCompareFormats","formatA","formatB","distance","lenA","lenB","typeA","typeB","dateExpandPatternGetBestMatchPattern","askedSkeleton","availableFormats","ratedFormats","augmentFormat","compareFormats","rate","format","sort","dateExpandPattern","dateSkeleton","timeSkeleton","getBestMatchPattern","combineDateTime","datePattern","timePattern","timeData","preferred","datetime","dateWeekDays","dateFirstDayOfWeek","weekData","firstDay","dateGetTimeZoneName","timeZone","metaZone","dateTimezoneHourFormatH","hourFormat","dateTimezoneHourFormatHm","hFormat","splice","runtimeCacheDataBind","dataCacheKey","dateFormatProperties","numberFormatters","timeSeparator","widths","setNumberFormatterPattern","pad","timeZoneData","offsets","untils","isdsts","current","aux","chr","daylightTzName","formatNumber","genericTzName","standardTzName","preferredTime","eras","minDays","feature","quarters","months","days","dayPeriods","am","pm","timeZoneName","exemplarCity","gmtFormat","gmtZeroFormat","dateFormatterFn","dateToPartsFormatter","dateParseProperties","preferredTimeData","ZonedDateTime","definePrivateProperty","property","getUntilsIndex","original","index","originalTime","setWrap","offset1","getTimezoneOffset","ret","setTime","offset2","setMinutes","getMinutes","local","clone","method","utcMethod","substr","isDST","Boolean","inspect","abbrs","toISOString","toDate","dateIsLeapYear","year","getMonth","dateLastDayOfMonth","getDate","dateStartOf","setMonth","setDate","setHours","setSeconds","setMilliseconds","dateSetDate","day","lastDay","dateSetMonth","month","originalDate","outOfRange","low","high","dateParse","_value","tokens","amPm","daysOfYear","era","hour","hour12","timezoneOffset","YEAR","MONTH","DAY","HOUR","MINUTE","SECOND","MILLISECONDS","truncateAt","units","token","setFullYear","pow","getHours","dateTokenizer","numberParser","digitsRe","valid","numeric","tokenRe","hourFormatParse","isPositive","oneDigitIfLengthOne","oneOrTwoDigitsIfLengthOne","RegExp","oneOrTwoDigitsIfLengthOneOrTwo","twoDigitsIfLengthTwo","lookup","array","standardOrDaylightTzName","timeZoneNameRe","hourFormatRe","x","lexeme","dateParserFn","parseProperties","tokenizerProperties","dateTokenizerProperties","digitsReSource","re","populateProperties","regexpSourceSomeTerm","terms","dateDayOfWeek","getDay","dateDistanceInDays","to","inDays","dateDayOfYear","dateFieldsMap","dateMillisecondsInDay","dateTimezoneHourFormat","absOffset","dateFormat","dateField","ceil","getSeconds","getMilliseconds","dateToPartsFormatterFn","optionsHasStyle","validateOptionsPreset","validateOptionsPresetEach","validateOptionsSkeleton","validateRequiredIana","loadTimeZone","json","customData","dateFormatter","ianaListener","numberFormatter","dateParser","formatDateToParts","parseDate","numberFormatterFn","nu","numberCompact","compactType","maxExponent","compactKey","numberExponent","_type","numberPatternRe","numberPatternProperties","aux1","aux2","fractionPattern","integerFractionOrSignificantPattern","integerPattern","maximumFractionDigits","maximumSignificantDigits","minimumFractionDigits","minimumIntegerDigits","minimumSignificantDigits","padding","primaryGroupingSize","roundIncrement","scientificNotation","secondaryGroupingSize","significantPattern","_match","minimumSignificantDigitsMatch","maximumSignificantDigitsMatch","numberSymbolName","numberSymbolMap","symbolMap","numberTruncate","NaN","numberRound","incrementOrExp","exp","increment","exponent","toExponential","numberFormatProperties","negativePattern","negativePrefix","negativeProperties","negativeSuffix","positivePattern","roundFn","getOptions","attribute","propertyIndex","compact","useGrouping","min","regexpCfG","regexpDashG","regexpZsG","numberParse","grammar","invertedNuDigitsMap","invertedSymbolMap","negative","number","prefixNSuffix","tokenizer","parse","Infinity","tokenizeNParse","statement","numberParserFn","numberSymbolInvertedMap","objectMap","pair","numberParseProperties","decimalSymbolRe","groupingSeparatorRe","infinitySymbol","nanSymbol","nuDigitsMap","numberTokenizer","formatProperties","localizedDigit","literal","infinity","nan","numberCompactPatternRe","numberFormatGroupingSeparator","currentGroupingSize","sep","switchToSecondary","numberFormatIntegerFractionDigits","toFixed","numberToPrecision","precision","roundOrder","log","numberFormatSignificantDigits","atMinimum","atMaximum","numberFormat","compactMap","stringToParts","compactPattern","compactProperties","divisor","numberType","digit","etc","isFinite","other","_garbage","space","numberToPartsFormatterFn","validateDigits","fnArgs","formatNumberToParts","parseNumber","cardinals","ordinals","validateParameterTypePluralType","pluralGeneratorFn","isOrdinal","relativeTimeFormat","relativeTimeFormatterFn","relativeTimeProperties","relativeTime","form","formatRelativeTime","relativeTimeFormatter","unitFormat","unitProperties","dividend","dividendProperties","formattedValue","divisorProperties","oneProperty","compoundUnitPattern","unitPlural","trim","unitFormatterFn","unitCategories","stripPluralGarbage","pluralCount","category","unitGet","formatUnit","unitFormatter","_templateObject","_templateObject2","_templateObject3","_templateObject4","_templateObject5","_templateObject6","_templateObject7","_templateObject8","_templateObject9","_templateObject10","sysSpaceXs","sysSpaceLg","sysColorBackgroundMediumContrast","sysColorBackgroundHighContrast","sysMotionDurationMoveSmall","_utilStyles","focusStyles","variables","_textStyles","textBody","body","headingSm","ppuiEaseMoveSmall","headerPaddingRight","base","row","bodyOpen","innerBody","header","getHeaderFont","focusInlineElement","svgIcon","iconRotate","Accordion","_ref$name","children","headerSize","accordionRows","child","accordionName","rowNumber","_styles","useMemo","AccordionRow","_ref$heading","heading","headerClassName","contentClassName","iconClassName","_ref$isOpen","isOpen","_ref$headerSize","_useState","show","setShowState","stylesBody","stylesSvgIcon","rowId","contentId","parseInt","icons","info","success","warning","Alert","_styles$alertType","_styles$alertIcon","closeBtnEl","_ref$type","_ref$typeIconAriaLabe","typeIconAriaLabel","closeButton","_ref$closeButtonLabel","closeButtonLabel","sysSpaceSm","sysSpaceMd","sysSizeFieldSm","sysSizeIconSm","sysTypographyBodySize","sysBorderThicknessNormal","sysBorderRadiusLg","sysColorSystemMain","sysColorSystemMainActive","sysColorInfoMain","sysColorInfoContrast","sysColorSuccessMain","sysColorSuccessContrast","sysColorWarningMain","sysColorWarningContrast","sysColorErrorMain","sysColorErrorContrast","alertPaddingRightSpacing","alertPaddingRight","alertPaddingLeft","alertPaddingTop","alertPaddingBottom","alertPaddingRightWithoutClose","alertIconSpaceLeft","sysAlertCloseBtnSpaceTop","sysAlertCloseBtnSpaceRight","sysAlertIconSvgSpaceTop","closeBtn","alertColor","backgroundColor","iconColor","noCloseBtn","alertType","colorMap","alertIcon","iconMap","classLabel","AlertStatusIcon","alertCSSVal","otherProps","alertCloseBtnCSSVal","buttonType","svgIconComponent","alertSvgCSSVal","alert","colorFamily","enumerableOnly","symbols","sym","Animator","_ref$id","_ref$shouldHide","shouldHide","onOpen","onClose","_ref$onCloseComplete","onCloseComplete","_ref$phaseProps","phaseProps","initial","isHidden","showing","hiding","currentPhase","setCurrentPhase","closeEvent","useRef","closeMethod","animatee","fallbackTimer","finishClose","clearTimeout","_ref2","oldPhase","onAnimationEnd","evt","dataset","stopPropagation","nativeEvent","stopImmediatePropagation","childProps","_objectSpread","requestClose","closedBy","setTimeout","onTransitionEnd","_templateObject11","useStyles","sysSizeIconXs","sysSpaceTiny","sysBorderRadiusMd","sysBorderThicknessEmphasis","sysSizeCircleXs","sysColorSpecialtyMain","sysColorSpecialtyContrast","sysColorBackgroundMain","sysColorBackgroundSurface","sysColorWarningAlt","textCaption","caption","screenReader","badgeColor","iconBadge","paddingLeft","iconVerticalSpacing","critical","neutral","icon","authorized","inProgress","onHold","favorite","Badge","_styles$badgeType","status","badgeCssVal","ariaProps","badgeIcon","Banner","_styles$getBanner","_styles$getTextColor","_styles$getTextColor2","_styles$fullWidth","titleClassName","subTitleClassName","_ref$title","specialtyIcon","subText","fullWidth","sysColorErrorMainActive","sysColorWarningMainActive","sysColorSpecialtyMainActive","sysSpaceJumbo","textTitle","getColorMap","bgColor","activeBgColor","textColor","getBanner","_getColorMap","getTextColor","leftSideIcon","rightSideIcon","bannerCssVal","titleCssVal","subTextCssVal","subTextContent","titleRef","rtl","setRtl","titleElm","computedStyle","getComputedStyle","direction","StatusIcon","specialty","ClickIcon","bannerContent","lg","commonProps","componentTypeProps","onKeyDown","KeyCode","keyCode","IS_ENTER","IS_SPACEBAR","preventDefault","as","containerElm","_templateObject12","_templateObject13","_templateObject14","_templateObject15","_templateObject16","_templateObject17","_templateObject18","_templateObject19","_templateObject20","_templateObject21","colorTokens","sysBorderRadiusSm","sysSizeIndicatorMd","sysMotionDurationAction","sysColorPrimaryMain","sysColorPrimaryContrast","sysColorPrimaryMainHover","sysColorPrimaryMainActive","sysColorPrimaryContrastHover","sysColorPrimaryContrastActive","sysColorFeaturedMain","sysColorFeaturedMainHover","sysColorFeaturedMainActive","sysColorFeaturedContrast","sysColorSecondaryMain","sysMotionDurationHover","sysSizeMediaMd","sysSizeMediaSm","buttonLg","buttonSm","focusOffsetElement","inverse","secondary","secondaryInverse","affordance","menuWrapper","sizeSm","successState","processingState","fadeIn","overlay","successStateOverlay","successStateIcon","successStateIconSm","buttonGroup","buttonGroupSolo","btnFullWidth","btnGroupFullWidth","_excluded2","AffordanceIcon","isMenu","isSmall","Icon","Button","forwardRef","cssVal","_ref2$btnState","btnState","iconComponent","_ref2$fullWidthOnMobi","fullWidthOnMobile","buttonStyles","loadingSpinnerProps","componentProps","srText","successIconSize","successIconCSSVal","buttonCheckmarkIcon","iconMarkup","svgIconSize","overlayCSSVal","stateOverlay","assistiveText","ButtonGroup","_ref$fullWidthOnMobil","childArray","Children","toArray","breakPointValue","innerWidth","computedChildren","reverse","hasButtonCountOne","buttonGroupCSSVal","sysSpaceXl","sysColorStructureBorderLowContrast","elevationStyles","textHeadingSm","clickable","level1","footer","sizeXs","sizeXsLong","sizeMd","sizeLg","_excluded3","_excluded4","Card","_ref$as","isInverse","cardStyles","includes","sizeStyleMap","xs","sm","md","Header","Content","_ref3","Footer","_ref4","_templateObject22","_templateObject23","_templateObject24","_templateObject25","_templateObject26","_templateObject27","_templateObject28","_templateObject29","_templateObject30","_templateObject31","_templateObject32","sysColorSelectedContrast","sysColorStructureBorderHighContrast","sysColorSelectedMain","sysSizeIconLg","sysBorderRadiusXs","checkboxItemTextSpacing","checkboxBase","checkboxGroup","groupBase","checkboxLabel","groupLabel","iconLabel","partialIcon","checkboxInput","checkboxErrorState","errorCheckIconContainer","checkboxMessageText","errorIcon","successIcon","labelError","helper","groupHelper","checkboxItems","itemThumbnail","itemThumbnailDecoration","itemText","itemSecondaryText","groupBaseWithSecText","legalConsentLabel","legalConsentText","legalConsentSupportingTextWrapper","legalConsentSupportingTextWrapperWhenNoLabel","legalConsentLinksWrapper","legalConsentLinksWrapperWhenNoLabel","checkIconContainer","isDecoration","legalConsentGroupSpacing","Checkbox","_checkboxStyles$check","thumbnail","labelIconElm","checkboxCheckIcon","checkboxPartialIcon","helperTextElm","iconContainerCssVal","labelContainerCssVal","checkboxItemsIcon","checkboxItemsElm","decoration","secondaryText","labelIcon","helperText","_ref$errorIconAriaLab","errorIconAriaLabel","successText","_ref$successIconAriaL","successIconAriaLabel","partial","inCheckboxGroup","checkboxStyles","checkboxId","checkboxErrorIcon","checkboxSuccessIcon","cx","htmlFor","componentMarkup","_styles$checkIconCont","_ref$links","links","linkComponents","link","legalConsentSupportingTextWrapperCssVal","legalConsentLinksWrapperCssVal","Tag","_excluded$3","CheckboxGroup","isError","isSuccess","helperCssVal","checkboxList","ContextualAlert","_ref$noPadding","noPadding","statusIcon","iconCssVal","baseCSS","CurrencyInput","_ref$currencyType","intlContext","useContext","_getCurrencyMaskOptio","currencyMaskOptions","intlCurrencyPrefix","intlCurrencySuffix","inputMode","computedValue","scale","_computedValue$split","_computedValue$split2","wholePart","fractionalPart","fractionValue","substring","sysSizePictogramSm","sysSizeCircleLg","sysBorderRadiusInteractive","sysColorStructureScrim","mdBreakpoint","flexContainer","settingsIcon","interactiveCellCheckbox","interactiveCellCheckboxDisabled","emptyTableLabel","infoBlock","infoBlockMessage","infoBlockAction","infoBlockDecoration","iconMessage","seeMoreBlock","headerButton","currentlySortedByIcon","tableLoading","spinnerBlock","spinnerOverlay","TableHeader$1","checkboxElm","columns","columnOrder","isInteractive","_ref$toggleAllLabel","toggleAllLabel","selectedRows","idPrefix","rows","interactiveCellContentClassName","onSelection","onSort","sortInProgress","settings","tableContext","rowIds","acc","isUnselectable","checkboxElmCSSVal","isAnythingChecked","allChecked","renderColumnHeader","isLast","sortButtonLabel","sortDirection","isSortCurrent","claimsRemainingSpace","contents","handleClick","SortIcon","hiddenLabel","_align","hasContent","cellContext","section","isFirst","isSticky","scope","lastIndex","headerElms","sticky","ownKeys$1","_objectSpread$1","TableBody$1","loadingProps","renderCells","columnName","cellAs","Component","renderCellContent","_columns$columnName","mobile","renderInteractiveCellContent","rowElms","updatedSelection","isSelected","cellElms","EmptyBlock","buttonLabel","buttonRef","buttonAction","processing","tableStyles","button","errorMsg","retryButtonLabel","onRetry","retryButtonRef","loadingText","alt","emptyMsg","span","placement","ownKeys$2","_objectSpread$2","isResponsive","cols","entries","findIndex","deprecationCheck","deprecatedItems","propName","DataTable","_ref3$rows","_ref3$columns","_ref3$description","_ref3$isLoading","_ref3$loadingStateLab","loadingStateLabel","_ref3$isInteractive","_ref3$selectedRows","seeMoreProps","order","visibleCols","col","_cols$col","isVisible","wrapperRef","spinnerElm","TableComponent","tableType","isLegacy","Provider","colCount","backToTopLabel","onBackToTopClick","errorRow","seeMoreButton","backToTopButton","elem","table","closest","firstCell","querySelector","offsetWidth","offsetHeight","getClientRects","firstRow","focus","requestAnimationFrame","scrollTop","DataTableUtils","sortCompare","doCompare","sysColorSelectedRangeMain","sysSizePointerWidthLg","sysSizeTapTargetDefault","sysSizeTapTargetSm","sysSizeTapTargetXs","sysSizeFieldLg","sysTypographyCaptionSize","sysColorSelectedRangeContrast","caretStyles","calendarContainerOffset","xsBreakpoint","smBreakpoint","getDateDimensions","dateSize","calendarTrigger","calendarContainerStyle","level2","positionTop","positionCenter","calendarContainer","calendarContainerLeft","calendarContainerRight","calendarNav","calendarNavButtonPrev","calendarNavButtonNext","calendarNavButtonsNotFocusable","calendarNavButtonsHidden","tableFullWidth","calendarTable","calendarCellInRange","calendarCellRangeStart","calendarCellRangeEnd","calendarDate","calendarDateInRange","calendarDateNotCurrent","calendarDateDisabled","calendarDateToday","calendarDateSelected","calendarDueDate","calendarDueDateSelected","calendarDueDateIconContainer","calendarDueDateIcon","legend","legendItem","legendKey","dueDateLegendKey","wrapperContainer","CalendarContainer","isCalendarVisible","calendarTriggerRef","wrapperContainerRef","onShowCalendar","_ref$calendarInSheet","calendarInSheet","isMobile","setMobile","containerRef","_useState3","_useState4","calendarPosition","setCalendarPosition","handleKey","IS_ESC","handleOutsideClick","contains","handleResize","_containerRef$current","_containerRef$current2","_isMobile","myref","calendarTriggerPos","getBoundingClientRect","windowWidth","documentElement","clientWidth","calculatedSpace","parseFloat","fontSize","wrapperContainerPos","left","getCalendarBoundary","scrollIntoView","behavior","block","noCloseButton","skipFormFocus","DEFAULT_MASK_OPTIONS","lazy","blocks","d","Range","maxLength","placeholderChar","m","y","localTimeZone","Intl","DateTimeFormat","resolvedOptions","defaultParseDate","defaultFormatDate","CalendarRange","DateInput","calendar","selectedDate","_ref2$formatterSkelet","formatterSkeleton","sheetContainerRef","onComplete","internalRef","inputRef","prevVal","_maskOptions","dateTimeFormatter","formatToParts","separator","getDateMaskOptions","_useMemo","_formatDate","_parseDate","getFormatters","handleComplete","typedValue","onMouseDown","svgElementRef","rightIcon","MONTH_NAMES","DAY_NAMES","sun","mon","tue","wed","thu","fri","sat","getFormattedDateFromParts","defaultFormatToParts","isDateInRange","range","rangeCompletionDate","START","END","isDateEqual","providedDate","isDateRangeStart","isDateRangeEnd","areMonthsEqual","date1","date2","Calendar","monthNames","dayNames","firstDayOfWeek","_ref2$prevMonthLabel","prevMonthLabel","_ref2$nextMonthLabel","nextMonthLabel","isFocusable","dateAs","calendarFrom","calendarTo","navClassName","tableClassName","dateClassName","dueDate","_ref2$legendSelectedD","legendSelectedDateLabel","_ref2$legendDueDateLa","legendDueDateLabel","_ref2$legendTodayLabe","legendTodayLabel","isDateDisabled","onMonthChange","_currentDate","currentDate","setCurrentDate","isRTL","setRTL","useCallback","node","_firstDayOfWeek","worldReadyObj","weekInfo","getFirstDayOfWeek","getDisplayNamesObject","_monthNames","select","dayDisplayNames","values","_dayNames","getNames","_formatToParts","getFormatter","renderDateButton","dateInfo","isDisabled","isToday","isRangeStart","isRangeEnd","isDue","inCurrentMonth","inRange","shouldApplySelectedStyles","currentMonth","daysOfWeek","firstDOWIndex","getDaysOfWeek","isPrevHidden","isNextHidden","calendarRange","dates","startMonth","startYear","firstday","firstDayIndex","todayDate","today","_dateObj","getDatesForMonth","dateRows","shouldApplyRangeStyles","isDueDateVisible","isSelectedDateDisabled","isRangeCompletionDateDisabled","dateCols","_dates","allowInRange","formattedCurrentDate","prevDate","nextDate","Divider","sysColorStructureDivider","getRefCurrent","DropdownMenu","menuContainerClassName","menuListClassName","menuItemClassName","menuMobileHeaderClassName","menuButtonClassName","menuLabelClassName","_props$skipButtonFocu","skipButtonFocus","sheetClassName","sheetWrapperClassName","_props$label","_props$errorIconAriaL","_props$options","ariaLabelledby","renderButtonContent","isLoadingOptions","showUnselect","sysTypographyFieldLabelLgLineHeight","sysTypographyFieldLabelSmLineHeight","ellipsis","textFieldLabelLg","fieldLabelLg","textFieldValueSm","fieldValueSm","textFieldLabelSm","fieldLabelSm","buttonActive","buttonError","labelActive","affordanceIcon","selectBox","buttonId","selectId","showMenu","setShowMenu","initialItemFocus","setKeyboardActive","_useState5","_useState6","isRtl","_window","btn","openMenu","prevState","detail","handleItemClick","selectedValue","buttonCurrent","blur","hasOptionsIndex","primaryText","selectedIndex","msgId","buttonText","buttonValue","AffordanceIconComponent","labelledBy","otherButtonAttr","buttonCssVal","labelCssVal","opt","IS_ARROW_UP","IS_ARROW_DOWN","altKey","ctrlKey","shiftKey","metaKey","hasNoModifiers","mobileTitle","triggerElementRef","containerClassName","itemClassName","mobileHeaderClassName","returnFocusToTrigger","searchEnabled","errorProps","dropdownErrorIcon","renderMessage","flagData","Flag","_styles$flagSize","_styles$scale","_styles$flag","countryCode","_ref$noRoundCorners","noRoundCorners","sysSizeIconMd","countries","sprites","sprite1x","sprite2x","flagSprite1XUrl","flagSprite2XUrl","flagSprite1XWidth","flagSprite1XHeight","flagSprite2XWidth","flagSprite2XHeight","flagWidth","countryScale","density","calculatedVal","flagSize","sizeLabel","flag","country","toLocaleLowerCase","backgroundPosition","flagLabel","containerCssVal","flagCssVal","_templateObject33","_templateObject34","_templateObject35","_templateObject36","_templateObject37","_templateObject38","_templateObject39","_templateObject40","_templateObject41","_templateObject42","_templateObject43","_templateObject44","_templateObject45","_templateObject46","_templateObject47","_templateObject48","_templateObject49","_templateObject50","_templateObject51","_templateObject52","sysSizeMediaLg","sysSizeMediaXl","sysSizeMediaXxl","vxContainerPaddingMD","sysSpaceXl4","breakpointMap","xl","xxl","commonColumn","commonColumnForm","colGridCalculator","breakpoint","labelStr","num","_display","layoutContainer","containerForm","containerFluid","noGutter","colAuto","colFormVspace","colFormFull","colFormHalf","colForm3qtr","colForm1qtr","colFormAuto","orderFirst","orderLast","colSm","colSmAuto","colMd","colMdAuto","colLg","colLgAuto","colXl","colXlAuto","colXxl","colXxlAuto","orderSmFirst","orderSmLast","orderMdFirst","orderMdLast","orderLgFirst","orderLgLast","orderXlFirst","orderXlLast","orderXxlFirst","orderXxlLast","justifyContentStart","justifyContentEnd","justifyContentCenter","justifyContentBetween","justifyContentAround","firstLtrUprCase","toUpperCase","dynamicCol","colGridBreakpoint","dynamicOrder","orderBreakpoint","dynamicOffset","offsetBreakpoint","dynamicDisplay","displayBreakpoint","getClass","fluid","Container","_ref$fluid","_ref$form","_ref$xxl","sizes","vxColClass","columnClasses","spans","classes","_styles$firstLtrUprCa","formUprCase","propValue","_styles$firstLtrUprCa2","infix","infixLwrCse","spanVal","_styles$dynamicCol","_styles$firstLtrUprCa3","_styles$dynamicOrder","_styles$dynamicOffset","_styles$dynamicDispla","Col","_excluded$2","Row","_ref$noGutters","noGutters","_ref$align","alignUprCase","sysSizeIndicatorLg","sysColorUnselectedMain","peekWidth","mobileItemMargin","itemMargin","ppuiEaseInOut","itemList","buttonNavigation","level3","buttonPrevious","buttonNext","itemListDesktop","pageContainer","page","dots","dot","dotSelected","getFlexBasisItems","items","isMobileBreakpoint","numOfVisibleItems","hasFixedSizeItems","peekOffset","getContainerWidth","pageWidth","_createForOfIteratorHelper","allowArrayLike","it","minLen","F","s","_e","err","normalCompletion","didErr","step","_e2","arr","len","arr2","HorizontalScrollMobile","_ref$items","renderItem","onItemListScroll","onInit","baseRef","itemListRef","visibleItemIdsRef","baseElm","itemWidth","baseElmWidth","resizeObserver","ResizeObserver","observe","disconnect","itemObserver","IntersectionObserver","_step2","_iterator2","_entry","isIntersecting","_id","getAttribute","_step","_iterator","entry","root","threshold","querySelectorAll","ItemList","handleFocus","itemElements","_styles$getFlexBasisI","flexBasisStyles","HorizontalScroll","showMobileHScroll","setShowMobileHScroll","mql","matchMedia","hasHover","prevPageLabel","nextPageLabel","onPageChange","_rest","HorizontalScrollDesktop","autoAdvance","advanceInterval","Dots","numOfPages","dotElements","dotStyles","_styles$getContainerW","_styles$getContainerW2","_ref2$items","_ref2$numOfVisibleIte","prevButtonClassName","nextButtonClassName","_ref2$prevPageLabel","_ref2$nextPageLabel","_ref2$currentPage","_ref2$autoAdvance","_ref2$advanceInterval","callback","delay","savedCallback","scrollPanel","pageContainerRef","setNumOfPages","isAutoAdvance","setIsAutoAdvance","_useState7","_useState8","setPageWidth","viewObserver","hasBeenVisibleRef","autoAdvanceComplete","newNumOfPages","itemListScrollWidth","scrollWidth","pageContainerWidth","_newNumOfPages","stopAutoAdvance","handleIntersection","nextPage","panel","transition","setInterval","clearInterval","hscroll","stopObserving","unobserve","renderPreviousButton","renderNextButton","renderDots","pageOffset","pageStyle","IconButton","iconName","_props$buttonType","_props$btnState","sysColorOverlayMain","sysColorOverlayContrast","sysColorOverlayMainHover","sysColorOverlayMainActive","sysColorTertiaryMain","sysColorTertiaryContrast","sysColorTertiaryMainHover","sysColorTertiaryMainActive","sysColorBackgroundSurfaceActive","sysColorBackgroundSurfaceHover","shimmerStyles","defaults","sysIconbuttonPositionTapTargetOffset","iconButtonSize","processingContainer","successContainer","primary","sizeXl","tertiaryInverse","shimmer","shimmerSizeSm","shimmerSizeXl","loadingSpinner","shimmerSizesStyleMap","shimmerCSSVal","hasStyleDefaults","iconSize","sizesStyleMap","withLabelCssVal","WrapperComponent","renderIconComponent","iconButtonComponent","iconProps","buttonStateComponent","sysSizeIconXl","sysColorBackgroundAlt","sysColorSecondaryMainHover","sysColorSecondaryMainActive","sysColorSecondaryContrast","sysColorUnselectedMainHover","sysColorUnselectedMainActive","sysColorUnselectedContrast","sysColorSelectedMainHover","sysColorSelectedMainActive","sysColorSelectedRangeMainHover","sysColorSelectedRangeMainActive","sysColorLinkMain","sysColorLinkMainHover","sysColorLinkMainActive","sysColorLinkAlt","sysColorLinkAltHover","sysColorLinkAltActive","sysColorLinkContrast","sysColorLinkContrastHover","sysColorLinkContrastActive","sysColorAccent1Main","sysColorAccent1Contrast","sysColorAccent2Main","sysColorAccent2Contrast","sysColorAccent3Main","sysColorAccent3Contrast","sysColorAccent4Main","sysColorAccent4Contrast","sysColorErrorMainHover","sysColorWarningMainHover","sysColorSuccessMainHover","sysColorSuccessMainActive","sysColorSystemMainHover","sysColorSystemContrast","sysColorInfoMainHover","sysColorInfoMainActive","sysColorSpecialtyMainHover","backgroundBase","legalColors","ICON_FALLBACK_COLOR","svg","getIconSizeCss","sizeName","_sizes$sizeName","getMaskImageCss","colorName","cdnHost","iconURL","getColorCss","IconContainer","_iconStyles$getColorC","iconStyles","_excluded6","_excluded7","_excluded12","_excluded14","_excluded15","_excluded16","_excluded28","_excluded31","_excluded43","_excluded49","_excluded50","_excluded53","_excluded56","_excluded57","_excluded58","_excluded59","_excluded60","_excluded61","_excluded65","_excluded67","_excluded70","_excluded72","_excluded78","_excluded81","_excluded82","_excluded97","_excluded98","_excluded109","_excluded110","_excluded113","_excluded120","_excluded121","_excluded142","_excluded155","_excluded168","_excluded170","_excluded173","_excluded174","_excluded186","_excluded187","_excluded192","_excluded203","_excluded213","_excluded231","_excluded234","_excluded239","_excluded241","_excluded242","_excluded247","_excluded249","_excluded251","_excluded261","_excluded262","_excluded269","_excluded274","_excluded277","_excluded282","_excluded284","_excluded286","_excluded287","_excluded322","_excluded323","_excluded325","_excluded327","_excluded330","_excluded331","_excluded332","ActivityIcon","xmlns","fill","viewBox","fillRule","clipRule","AddCameraIcon","AddVideoIcon","AddIcon","ArrowDownSmIcon","ArrowLeftIcon","ArrowRightIcon","ArrowUpSmIcon","BankIcon","BillPaymentIcon","CalendarIcon","CausesIcon","CenterAlignIcon","ChatIcon","CheckmarkBackgroundSmIcon","CheckmarkBackgroundIcon","CheckmarkSmIcon","CheckmarkIcon","ChevronDownSmIcon","ChevronDownIcon","ChevronUpIcon","ClockSmIcon","CloseIcon","CloudStorageIcon","CopyToClipboardIcon","CriticalSmIcon","CriticalIcon","DeclineIcon","DeleteIcon","DownloadIcon","EditIcon","EmailIcon","FavoriteSelectedIcon","FavoriteIcon","HideIcon","InformationIcon","LeftAlignIcon","LightBulbIcon","LinkIcon","ListSimpleIcon","MerchantIcon","MessageCenterIcon","MoveIcon","NumberedListIcon","OverflowIcon","PhoneIcon","PictureIcon","PreferredSelectedIcon","PreviewIcon","PrintIcon","QuestionIcon","RecurrentIcon","RefreshIcon","RewardsIcon","RightAlignIcon","SearchIcon","SettingsIcon","ShareFacebookIcon","ShareMessengerIcon","ShareTwitterIcon","ShareWhatsappIcon","ShareIcon","UploadIcon","UserProfileIcon","VerifiedIcon","ViewIcon","WarningSmIcon","WarningIcon","WebsiteIcon","_iconStyles$getIconSi","_iconStyles$getMaskIm","IntlContext","IntlProvider","messageFormatter","phoneFormatter","addressFormatter","exampleGenerator","getFormattedMessage","defaultMessage","getCurrencyMaskOptions","currencyFormat","_getIntlCurrencyPatte","currencyPartsArr","intlMaskOptions","idx","thousandsSeparator","radix","getIntlCurrencyPattern","padFractionalZeros","internalHosts","Set","NO_REFERRER","NO_OPENER","Link","_styles$getCaptionSty","primaryAlt","bodyStrong","captionStrong","baseIcon","baseSmIcon","getCaptionStyles","useSecondaryStyles","useInverseStyles","variantName","_rel","linkTarget","_rest$rel","rel","_rest$href","urlStr","URL","has","hostname","isInternalUrl","checkForUnsafe","leftIconElement","isSecondaryStyles","linkStyles","listItem","listItemWrapper","hoverAndActiveStyles","highlight","action","trailingContent","labelDescription","alignment","bottom","center","focusActive","sectionList","ListItem","labelLineClamp","labelContext","labelDescriptionLineClamp","navigationOptions","isFocused","isHighlighted","isItemFocusable","isItemNavigational","ariaDescribedby","listRef","listItemWrapperCSS","decorationCSS","trailingContentCSS","navigationProps","clampAtLine","List","listStyles","_ref$activeIndex","activeIndex","_ref$focusedIndex","focusedIndex","onBlur","hasSections","_ref$itemAs","isTextHighlighted","itemAs","computedRef","focusedIndexRef","setFocusedIndex","ItemAs","currentNormalizedIndex","listItems","optList","sectionId","normalizedIndex","_option$value","hasOnClick","isFocusedCurrent","currentTarget","isTargetContained","relatedTarget","tempOptions","sectionItems","_option$sectionItems","uniqueKey","random","LoadingSpinner","sysSizeCircleSm","sysSizeCircleMd","sysSizeCircleXl","sysMotionDurationLoopStandard","borderSpinner","ppuiEaseLoopStandard","_typeof","_classCallCheck","instance","Constructor","_defineProperties","descriptor","_createClass","protoProps","staticProps","_inherits","subClass","superClass","create","_setPrototypeOf","_getPrototypeOf","setPrototypeOf","getPrototypeOf","__proto__","p","excluded","sourceKeys","sourceSymbolKeys","_possibleConstructorReturn","self","ReferenceError","_assertThisInitialized","_createSuper","Derived","hasNativeReflectConstruct","Reflect","construct","sham","Proxy","_isNativeReflectConstruct","Super","NewTarget","_superPropBase","_get","receiver","desc","set","_set","isStrict","_i","_s","_arr","_n","_d","ChangeDetails","inserted","rawInserted","tailShift","isString","DIRECTION","escapeRegExp","normalizePrepare","prep","objectIncludes","arrA","arrB","dateA","dateB","regexpA","regexpB","ActionDetails","cursorPos","oldValue","oldSelection","startChangePos","start","insertedCount","end","removedCount","ContinuousTailDetails","stop","tail","masked","append","aggregate","_appendPlaceholder","state","beforePos","shiftChar","IMask","el","opts","InputMask","Masked","_update","DEFAULTS","isInitialized","withValueRefresh","resolve","reset","input","doCommit","doParse","doFormat","extractInput","isComplete","fromPos","toPos","appendTo","ch","flags","checkTail","consistentState","_normalizePrepare2","doPrepare","_appendCharRaw","consistentTail","appended","doValidate","beforeTailState","overwrite","tailDetails","appendTail","shift","_beforeTailState","ci","_appendChar","eager","_appendEager","_refreshing","rawInput","rawInputValue","_isolated","prepare","parent","commit","deleteCount","removeDirection","oldRawValue","tailPos","extractTail","forceDirection","nearestInputPos","remove","valLength","tval","EMPTY_VALUES","maskedClass","MaskedRegExp","MaskedPattern","MaskedDate","MaskedNumber","MaskedDynamic","Function","MaskedFunction","console","warn","createMask","MaskedClass","v","DEFAULT_INPUT_DEFINITIONS","PatternInputDefinition","blockOpts","isFilled","isOptional","_this$masked","_this$masked2","_this$masked3","maxPos","boundPos","_this$masked4","_this$parent","PatternFixedDefinition","isFixed","isUnmasking","_isRawInput","isResolved","char","ChunksTailDetails","chunks","tailChunk","lastChunk","extendLast","extend","firstTailChunk","blockIndex","chunk","lastBlockIter","_mapPosToBlock","chunkBlock","_stops","_blocks","remainChars","c","cstate","chunkShiftPos","PatternCursor","pos","_log","ok","_blockStartPos","pop","pushState","bindBlock","_this$block","_this","_pushLeft","_this2","_this3","_this4","_pushRight","_this5","_this6","_Masked","_super","search","definitions","_rebuildMask","defs","_maskedBlocks","unmaskingBlock","optionalBlock","bNames","bName","maskedBlock","isInput","STOP_CHAR","ESCAPE_CHAR","def","maskedState","bi","_this$_mapPosToBlock","startBlockIndex","blockIter","_flags$_beforeTailSta","_flags$_beforeTailSta2","_block","blockDetails","chunkTail","_forEachBlocksInRange","bFromPos","bToPos","blockChunk","_findStopBefore","_","stopBefore","si","toBlockIndex","startBlockIter","endBlockIndex","bDetails","accVal","_block2","blockStartPos","fromBlockIter","toBlockIter","isSameBlock","fromBlockStartPos","fromBlockEndPos","removeDetails","cursor","pushRightBeforeInput","popState","pushLeftBeforeInput","pushRightBeforeFilled","pushLeftBeforeRequired","pushLeftBeforeFilled","pushRightBeforeRequired","maskedBlocks","indices","gi","InputDefinition","FixedDefinition","MaskedRange","_MaskedPattern","fromStr","padStart","toStr","sameCharsCount","repeat","minstr","maxstr","padEnd","autofix","nextVal","_this$boundaries2","boundaries","_get2","_matchFrom","_this$boundaries4","_len","GET_DEFAULT_BLOCKS","Y","bk","isDateExist","_str$split2","MaskElement","_unsafeSelectionStart","_unsafeSelectionEnd","selectionStart","selectionEnd","_unsafeSelect","handlers","HTMLMaskElement","_MaskElement","_handlers","_this$input$getRootNo","_this$input$getRootNo2","_this$input","getRootNode","rootElement","activeElement","setSelectionRange","_toggleEventHandler","EVENTS_MAP","handler","selectionChange","drop","click","HTMLContenteditableMaskElement","_HTMLMaskElement","selection","getSelection","anchorOffset","focusOffset","createRange","setStart","setEnd","lastChild","removeAllRanges","addRange","textContent","isContentEditable","tagName","_listeners","_unmaskedValue","_saveSelection","_onInput","_onChange","_onDrop","_onFocus","_onClick","alignCursor","alignCursorFriendly","_bindEvents","updateValue","maskEquals","updateOptions","updateControl","val","typedValueEquals","bindEvents","unbindEvents","ev","listeners","_cursorChanging","_changingCursorPos","isActive","_selection","newUnmaskedValue","newValue","isChanged","_fireChangeEvents","restOpts","updateMask","updateOpts","_delayUpdateCursor","_abortUpdateCursor","_fireEvent","_inputEvent","hIndex","removed","updateCursor","_unbindEvents","_updateRegExps","allowNegative","_numberRegExpInput","_numberRegExp","_mapToRadixRegExp","mapToRadix","_thousandsSeparatorRegExp","noSepCh","_removeThousandsSeparators","prepCh","extendOnSeparators","_separatorsCount","_this$_adjustRangeWit2","_adjustRangeWithSeparators","prevBeforeTailValue","prevBeforeTailSeparatorsCount","_separatorsCountFromSlice","appendDetails","_insertThousandsSeparators","beforeTailValue","beforeTailSeparatorsCount","searchFrom","separatorPos","separatorAroundFromPos","_findSeparatorAround","separatorAroundToPos","_this$_adjustRangeWit4","valueBeforePos","valueAfterPos","separatorAtLeftPos","separatorAtLeftEndPos","separatorAtRightPos","validnum","formatted","normalizeZeros","_normalizeZeros","_padFractionalZeros","sign","zeros","signed","_arrayWithoutHoles","iter","_iterableToArray","_nonIterableSpread","_excluded$4","MaskType","MaskedTextInput","_ref$maskOptions","maskedRef","elm","_masked","destroy","_templateObject$1","_templateObject2$1","_templateObject3$1","_templateObject4$1","_templateObject5$1","_templateObject6$1","_templateObject7$1","menuListStyles","menuListWidthMin","menuContainer","_args$borderRadius","_args$backgroundColor","_args$marginTop","marginTop","_args$maxHeight","_args$minWidth","minWidth","_args$outline","outline","menuList","_args$desktopPaddingB","desktopPaddingBottom","_args$desktopPaddingT","desktopPaddingTop","_args$paddingBottom","paddingBottom","_args$paddingTop","menuListItem","_args$paddingRight","paddingRight","_args$paddingLeft","_args$desktopPaddingB2","_args$desktopPaddingT2","_args$hoverBgColor","hoverBgColor","_args$activeBgColor","_args$paddingTop2","_args$paddingBottom2","menuItemThumbnail","_args$marginRightLeft","marginRightLeft","menuItemText","menuSecondaryText","_args$paddingTop3","menuLoadingContainer","menuKeyboardActive","menuListWidthMax","_menuListStyles","sMenuItemTextSelectedSpacing","selectionMenuItemText","selectedIcon","itemThumbnailImage","itemHilite","unselectable","suggestionSublist","SelectionMenuOption","menuName","primaryTextLineClamp","secondaryTextLineClamp","optionId","isHilite","onItemClick","keyboardActive","highlightText","isTextHightlighted","scrollToSelected","optionRef","itemId","itemCssVal","scrollIntoSelection","_option$parentElement","parentElement","boundingBox","optionBox","optionValue","optionVal","dangerouslySetInnerHTML","__html","SelectionMenu","_styles$menuListStyle","typeToFindTimer","initialValue","_React$useState","_React$useState2","setState","reference","currentValue","defaultValue","_ref2$name","_ref2$id","_ref2$initialItemFocu","ignoreKeyboard","mobileHeaderContents","outsideClickCheck","_ref2$returnFocusToTr","_ref2$selectedIndex","_ref2$activeItem","activeItem","triggerElementId","_ref2$rtl","_ref2$isLoadingOption","_ref2$searchEnabled","mobileFixedHeight","_ref2$hasSections","_ref2$highlightText","_ref2$isTextHightligh","_ref2$scrollToSelecte","menuRef","loaderRef","searchText","hasOptions","_useReferredState","_useReferredState2","MIN_WIDTH","MAX_WIDTH","MEDIUM_BREAKPOINT","TRIGGER_ELEMENT","getElementById","setFocus","newIndex","moveFocus","suggestions","nextIndex","handleClickOutside","wrapperCurrent","isTriggerClicked","handleKeyDown","IS_TAB","NAME_TAB","NAME_ESC","firstMatchedItemIndex","typedText","toLowerCase","startsWith","getFirstPrefixPosition","renderOptionList","menuOptions","renderImg","imgSrc","triggerWidth","menu","menuWidth","calculateWidth","optionList","_option$suggestions","menuListStyleOptions","contentList","isFixedHeight","headerContents","wrapperClassName","ActionMenu","_ref$initialItemFocus","_ref$isLoadingOptions","triggerRef","_ref$overrideMobileVi","overrideMobileView","validateOptions","setSelectedIndex","_listItems","optionIndex","itemLeft","triggerEl","anchor","sysTypographyDisplaySize","sysMotionDurationDepart","sysMotionDurationArrive","sysSizeIndicatorSm","lightboxMinHeight","modalHeaderMinHeight","modalHeaderZoneMinWidth","dialogMaxWidth","mdMarginDelta","smMarginDelta","sheetHeaderHeightMobile","sheetHeaderHeightDesktop","sheetWidthSm","sheetButtonSize","modalBorderRadius","containerCenter","valign","containerMiddle","containerBottom","modalNoContainer","modalDialog","modalTopBorder","modalSheet","modalSheetShow","modalBackdrop","modalBackdropShow","modalBackdropShowDialog","scrim","scrimShow","showGripper","modalContents","modalContentWithHeader","modalContentsSheet","modalContentsDialog","modalContentsNoPadding","modalContentDialogPadding","modalContentsCenter","modalHeader","modalHeaderSheet","modalHeaderSheetAction","modalHeaderScrolled","modalHeaderAction","modalHeaderTitle","modalHeaderClose","modalHeaderWorkArea","modalHeaderLogo","modalHeaderLogoImage","modalContentsClose","modalFooter","modalFooterScrolled","level3Above","modalFooterAlignCenter","modalFooterAlignRight","modalSheetHeight90","modalSheetHeight100","justifyRight","containerRightWidth","commonContainerStyles","containerRight","containerLeft","drawerContainer","modalSheetHeight50","closeSheet","SheetComponent","startX","startY","_ref$onBeforeClose","onBeforeClose","_ref$closeButtonProps","closeButtonProps","hideTitle","showLogo","_ref$showGripper","footerContents","footerAlign","_ref$returnFocusToTri","contentContainerRef","footerClassName","_ref$contentScrollTop","contentScrollTop","onContentScroll","_ref$showDrawer","showDrawer","headerScroll","setHeaderScroll","footerScroll","setFooterScroll","dynamicHeight","setDynamicHeight","sheetRef","closeButtonRef","actionZoneRef","refContent","contentRef","headerContentRef","isDynamicHeight","headerLogo","idBase","showHeader","scrollCheck","newHeaderScroll","newFooterScroll","scrollHeight","setFixedHeight","sheetEl","height90Percent","innerHeight","increaseHeight","_callee","_context","prev","focused","formElement","focusableEls","focusableActionEl","closeButtonCurrent","overflow","wrapperCss","containerCss","contentCss","handleClose","closeButtonTag","mobileTouchEnd","endTouch","changedTouches","endX","pageX","endY","pageY","xDiff","yDiff","handleTouchMove","handleTouchStart","firstTouch","titleId","emptyCloseButtonZone","emptyActionZone","closeButtonZone","actionZone","titleContentCss","titleContentZone","headerContentZone","onTouchStart","onTouchMove","onTouchEnd","enabled","onEscapeKey","onClickOutside","returnFocus","onScroll","Sheet","isMounted","setIsMounted","closeDialog","DialogComponent","isFullView","showInverseCloseButton","_ref$hideTitle","closeOnBackgroundClick","_ref$showTitleInHeade","showTitleInHeader","titleElement","closeButtonContainerCss","A","Dialog","OverflowMenu","_ref$value","_ref$ariaLabel","_ref$options","triggerClassName","overflowMenuBase","btnActive","listItemCss","optValue","_ref2$href","getWrapperCurrent","w","getActiveIndex","menuItems","stopListening","passive","capture","visualViewportFrom","offsetLeft","offsetTop","wrapper","spaceXs","wrapperRect","menuRect","localViewport","_wrapper$offsetParent","_window$visualViewpor","op","offsetParent","offsetTransform","transform","visualViewport","offsetBounds","viewPort","visBottom","smSpace","targetBounds","menuBounds","proposedTop","stayInsideViewport","triggerCss","targetName","targetValue","namedTarget","Color","Size","blue","Accent1","magenta","Accent2","green","Accent3","purple","Accent4","sysSizeIndicatorXs","textCaptionStrong","circleProgressMeterSize","circleProgressMeterBorderSize","circleProgressMeterSmSize","circleProgressMeterSmBorderSize","progressIndicatorCircleStrokeWidth","progressIndicatorCircleSmStrokeWidth","colorMapContrast","Map","colorMapAccent","getProgressMeterHeightStyles","getColorStyles","isSizeSmall","SMALL","getProgressMeterColorStyles","meterColor","getStrokeColorStyles","inverseLabel","inverseLabelSteps","inverseLabelTitle","labelSteps","labelTitle","sizeSmLabel","sizeSmLabelSteps","sizeSmLabelTitle","sizeSmInverseLabelSteps","sizeSmInverseLabelTitle","circleBase","circleInner","circleInnerImage","linear","circle","inner","progressIndicator","progressIndicatorSizeSm","innerImage","circleRadiusSvg","getCircleRadius","getDashOffsetStyles","maxDashOffset","dashOffset","getIconWrapStyles","sizeValue","util","ProgressMeter","_styles$util","_styles$util$isSizeSm","_styles$linear","_styles$linear2","_styles$linear3","_styles$linear4","_styles$linear5","_styles$linear5$getPr","_styles$linear6","_styles$linear7","_styles$linear8","_styles$linear9","_styles$linear10","_styles$linear11","_styles$linear12","_styles$linear13","_styles$linear14","_styles$linear15","_styles$linear16","_ref$max","_ref$inverse","labelStyles","computedColor","progressMeterStyles","stepsStyles","titleStyles","CircleProgressMeter","_styles$circle","_styles$circle$getCir","_styles$circle2","_styles$text","_styles$circle3","_styles$circle4","_styles$circle5","_styles$circle6","_styles$circle7","_styles$circle7$getDa","_styles$circle8","_styles$util2","_styles$util2$getColo","_styles$text2","_styles$circle9","_styles$circle10","_styles$text3","_props$max","_props$value","innerText","radius","PI","baseStyles","circleInnerStyles","renderContent","cy","_styles$util3","_styles$util3$isSizeS","_styles$circle11","_styles$circle11$getI","LARGE","_styles$circle12","imageSrc","radiobuttonItemTextSpacing","radioGroupBase","radioBase","radioGroupLabel","radioGroupLabelWithIcon","radioGroupLabelIcon","radioLabel","inputWithError","centeredLabelCheckIconContainer","groupHelperText","RadioCheckIcon","checkIconCssVals","strokeWidth","Radio","inferValue","_ref$centeredLabel","centeredLabel","labelClassName","_ref$checked","valueProps","helperTextCssVals","inputCssVals","checkIconContainerCssVals","FieldGroupLabel","FieldGroupMessage","radioErrorIcon","RadioButton","optionsList","componentName","changeHandler","radioLabelClassName","radioId","fieldGroupLabelCssVal","listProps","checkedPropName","radioProps","sysColorStructureFocus","webkitSize","segmentedControllerSpace","tabWrapBaseStyles","tabStyles","tabSlider","tabTitleStyles","tabContentStyles","tabContentVisible","tabContentHidden","SegmentedControllerTab","tabIdx","segmentedControllerId","panelId","selected","focusable","tabId","SegmentedControllerTabs","selectedTabIdx","_ref$tabs","tabs","tabClassName","tabsWrapperClassName","keepAlive","lazyLoad","containerEleRef","prevSelectedTabIdxRef","isTabsFocusedRef","focusedIdxRef","sliderRef","tabRef","getSelectedTabIdx","applySliderStyles","element","_element$offsetParent","slider","offsetFocus","myRef","tabDomItems","selectedId","tabIdxClicked","tabItems","tabProps","keyIdentifier","tabContent","_panel","hidden","visible","tabPanel","IS_ARROW_LEFT","IS_ARROW_RIGHT","keyHandler","SegmentedControllerPanel","_ref$visible","hasRendered","panelContentStyles","IfNotEmpty","Switch","help","inline","inputClassName","secondaryLabel","required","switchIndicatorWidth","switchBorderRadius","switchTranslateWidth","inlineLabel","inlineHelperText","control","containerCSSVal","messageId","labelId","defaultChecked","_templateObject53","_templateObject54","_templateObject55","_templateObject56","_templateObject57","_templateObject58","_templateObject59","_templateObject60","_templateObject61","mediaQuery","sysElevationBlurBase","titleStrong","responsiveTableBase","summaryWrapper","fixedFirstColumn","thead","tbody","tfoot","rowBase","rowSelected","rowResponsive","rowHeading","rowFooting","rowSummaryItem","rowSummaryAdjust","rowSummaryTotal","cellBase","cellResponsive","headRowCell","footerRowCell","dataHeaderCell","summaryHeaderCell","summaryFooterCell","stickyRowHeader","stickyRowFooter","stickyColHeading","cellHeading","legacyTh","tableBase","legacyTableBase","scrollContext","scrollContextTable","filterLevel1","level1Horizontal","fixedFirstColumnTable","mobileGridZones","zone_hidden","zone_a1","zone_a2","zone_a3","zone_a12","zone_a23","zone_a123","zone_b1","zone_b2","zone_b3","zone_b12","zone_b23","zone_b123","zone_ab1","zone_ab2","zone_ab3","zone_ab12","zone_ab23","zone_ab123","columnRemaining","columnStart","columnEnd","columnCenter","getAlignment","mobileWidth","widthStr","mobileAlign","customWidth","normalCell","utilityCell","summaryHeadingCell","summaryItemCell","summaryAdjustCell","summaryTotalCell","DEFAULT_TABLE_CONTEXT","PPTableContext","createContext","ResponsiveTable","_ref$fixedFirstColumn","tableCss","TableSection","_props$as","context","newTableContext","TableBody","TableHead","TableFoot","TableRow","rowCss","stickableFooters","TableCell","_context$section","_tableStyles$getAlign","_tableStyles$customWi","_tableStyles$mobileWi","_tableStyles$mobileAl","styleSet","headerContext","_props$span","isHeader","_props$align","sectionCss","cellCss","headerRow","stickyColHeader","footerRow","cellProps","colSpan","TableHeadingCell","ownKeys$3","_objectSpread$3","Table","_ref$scroll","scroll","isFullWidth","_ref$isLegacy","renderTable","sysTypographyBodyLineHeight","sysTypographyCaptionLineHeight","backgroundSpaceTop","backgroundSpaceBottom","backgroundSpaceBottomEntered","ppuiV2CurrencyInputMinHeight","fieldIcon","labelWhenPlaceholderShownAndInputNotFocused","labelWithScreenreader","iconRight","iconLeft","nolabelControl","errorControl","controlErrorWithIconRight","controlErrorWithIconLeft","controlErrorWithIconLeftAndRight","noLabelControlError","controlWithIconRight","controlWithIconLeft","controlWithIconLeftAndRight","labelWithIconRight","labelWithIconLeft","multiLineError","prefixWrapper","prefixWrapperError","prefixSuffix","PrefixWrapperControl","noLabelSuffixOrPrefix","prefixWrapperControlWithPrefix","prefixWrapperControlWithSuffix","prefixWrapperControlWithPrefixSuffix","textAreaControl","textAreaControlLabel","textAreaControlErrorLabel","textAreaWrapper","textAreaCounterText","textAreaErrorCounterWrapper","textAreaErrorCounterText","ppuiTextInputDisplayRightIconSpaceRight","ppuiTextInputDisplayValueSpaceTop","textDisplayNoLabelControl","textDisplayControl","textDisplayLabel","textDisplayIconRight","textDisplaylabelIconRight","textDisplayControlIconRight","placemat","noLabelPlacemat","FormMessage","_errorIcon","processText","msg","successProps","helperTextCssVal","renderIcon","side","customIconCSS","TextInputWrapper","_ref2$successIconAria","_ref2$error","_ref2$errorIconAriaLa","isLabelHidden","_ref2$placeholder","_ref2$leftIcon","_ref2$rightIcon","removeBorderRadiusLeft","removeBorderRadiusRight","removeBorderRadiusBoth","leftIconCSS","rightIconCSS","mainCSS","hasError","inputTag","Placemat","_ref$isLabelHidden","combinedText","vLen","overlayValue","normalizePlaceholder","normalized","TextInputContent","isLabelHiddenFinal","inputTagCSS","labelCSS","TextInputContentWithPrefixSuffix","prefixClassName","suffixClassName","_ref$onBlur","_ref$onFocus","textInputRef","prefixClass","suffixClass","prefixWrapperClass","prefixEleId","suffixEleId","ariaLabelledByIds","TextInput","_excluded2$1","TextArea","minRows","maxRows","_ref$showCharacterCou","showCharacterCounter","maxCharacters","counterStatusText","_ref$onChange","textLineHeight","maxAllowedRows","minAllowedRows","charCount","setCharCount","textAreaRef","bordersOffset","minHeight","textAreaElm","clientHeight","lineHeightValue","getPropertyValue","paddingBottomValue","paddingTopValue","lineHeight","newHeight","computeHeight","handleCounterWrapperClick","textInputContent","wrapperCSS","maxCharsText","counterText","counterStatusMessage","counterTextCSS","_excluded$5","TextDisplay","valueClassName","_ref$label","controlStyles","valueId","sysTypographyDisplayFamily","sysTypographyDisplayWeight","sysTypographyDisplayLineHeight","sysTypographyDisplayMaxScaleFactor","sysTypographyHeadingLgFamily","sysTypographyHeadingLgSize","sysTypographyHeadingLgWeight","sysTypographyHeadingLgLineHeight","sysTypographyHeadingLgMaxScaleFactor","sysTypographyHeadingSmFamily","sysTypographyHeadingSmSize","sysTypographyHeadingSmWeight","sysTypographyHeadingSmLineHeight","sysTypographyHeadingSmMaxScaleFactor","sysTypographyTitleStrongFamily","sysTypographyTitleStrongSize","sysTypographyTitleStrongWeight","sysTypographyTitleStrongLineHeight","sysTypographyTitleStrongMaxScaleFactor","sysTypographyTitleFamily","sysTypographyTitleSize","sysTypographyTitleWeight","sysTypographyTitleLineHeight","sysTypographyTitleMaxScaleFactor","sysTypographyBodyStrongFamily","sysTypographyBodyStrongSize","sysTypographyBodyStrongWeight","sysTypographyBodyStrongLineHeight","sysTypographyBodyStrongMaxScaleFactor","sysTypographyBodyFamily","sysTypographyBodyWeight","sysTypographyBodyMaxScaleFactor","sysTypographyCaptionFamily","sysTypographyCaptionWeight","sysTypographyCaptionMaxScaleFactor","sysTypographyCaptionStrongFamily","sysTypographyCaptionStrongSize","sysTypographyCaptionStrongWeight","sysTypographyCaptionStrongLineHeight","sysTypographyCaptionStrongMaxScaleFactor","sysTypographyButtonLgFamily","sysTypographyButtonLgSize","sysTypographyButtonLgWeight","sysTypographyButtonLgLineHeight","sysTypographyButtonLgMaxScaleFactor","sysTypographyButtonSmFamily","sysTypographyButtonSmSize","sysTypographyButtonSmWeight","sysTypographyButtonSmLineHeight","sysTypographyButtonSmMaxScaleFactor","sysTypographyFieldLabelLgFamily","sysTypographyFieldLabelLgSize","sysTypographyFieldLabelLgWeight","sysTypographyFieldLabelLgMaxScaleFactor","sysTypographyFieldLabelSmFamily","sysTypographyFieldLabelSmSize","sysTypographyFieldLabelSmWeight","sysTypographyFieldLabelSmMaxScaleFactor","sysTypographyFieldValueXlFamily","sysTypographyFieldValueXlSize","sysTypographyFieldValueXlWeight","sysTypographyFieldValueXlLineHeight","sysTypographyFieldValueXlMaxScaleFactor","sysTypographyFieldValueLgFamily","sysTypographyFieldValueLgSize","sysTypographyFieldValueLgWeight","sysTypographyFieldValueLgLineHeight","sysTypographyFieldValueLgMaxScaleFactor","sysTypographyFieldValueSmFamily","sysTypographyFieldValueSmSize","sysTypographyFieldValueSmWeight","sysTypographyFieldValueSmLineHeight","sysTypographyFieldValueSmMaxScaleFactor","remToPxBase","maxSizeInMWeb","scaleFactor","maxSize","maxSizeInPx","font","family","fontWeight","fontFamily","mediaMdInPx","_args$lineHeight","_args$color","_args$lineHeight2","_args$color2","_args$lineHeight3","_args$color3","_args$lineHeight4","_args$color4","_args$lineHeight7","_args$color7","headingLg","_args$lineHeight8","_args$color8","_args$lineHeight9","_args$color9","_args$lineHeight5","_args$color5","_args$lineHeight6","_args$color6","_args$label","_args$lineHeight11","_args$color11","_args$lineHeight10","_args$color10","_args$lineHeight12","_args$color12","_args$lineHeight13","_args$color13","_args$lineHeight14","_args$color14","fieldValueLg","_args$lineHeight15","_args$color15","fieldValueXl","_args$lineHeight16","_args$color16","lineClamping","clampLine","shimmerDisplay","shimmerHeadingLg","shimmerHeadingSm","shimmerBody","shimmerCaption","shimmerTitle","HeadingText","level","headingSize","chooseSize","stylesMap","hero","shimmerStylesMap","BodyText","_styles$lineClamping","CaptionText","PAYPAL_THEME","defaultDuration","Toast","_ref$message","_ref$isSuccess","_ref$duration","sysMotionDurationEnterSmall","sysMotionDurationExitSmall","ppuiEaseEnterSmall","ppuiEaseExitSmall","verticalExitPosition","fadeOut","hide","showState","toastRef","autoHideTimer","toast","containerStyles","toastCSSVal","tooltip","tooltipOrigin","Tooltip","tooltipWindow","containerPos","scrollX","originWidth","originHeight","originPos","maxWidth","iconSpacing","caretWidth","caretSpaceHorizontal","spacingOffset","tooltipIconSize","_ref$description","_ref$screenReaderText","verifiedIcon","windowId","windowRef","tooltipClassName","imageElement","_ref$imagePosition","imagePosition","tooltipOriginRef","tooltipRef","_iconStyles","iconBase","iconSizeXs","pointerHeight","imageAlignBottom","justifyImage","imageAlignTop","positionBottom","positionRight","positionLeft","positionShiftLeft","positionShiftRight","imageTopLeft","imageTopCenter","imageBottomLeft","imageBottomCenter","noop","currentEvent","setTooltipPosition","_containerPos","_containerPos2","scrollLeft","selfPosition","topCenterX","topCenterY","boundary","classList","add","sideShift","offsetY","offsetX","setOpen","clearOpen","windowEl","positionTooltip","providedWindow","getTooltipBoundary","pageXOffset","pageYOffset","buttonWidth","leftPosX","leftPosY","rootFontSizePx","rootFontSize","tooltipMaxWidthPx","tooltipMaxWidth","winLeft","winRight","availableLeftSpace","availableRightSpace","halfMaxWidth","availableSpace","currentWidth","setWidth","rightPosX","rightPosY","imagePositionStyleName","_first","second","third","imagePositionCSSVal","displayImage","tooltipNode","onMouseLeave","TooltipIcon","onMouseEnter","_templateObject$2","_templateObject2$2","_templateObject3$2","_templateObject4$2","_templateObject$3","_templateObject2$3","_templateObject3$3","_templateObject4$3","_templateObject5$2","_templateObject6$2","_templateObject8$1","AnimateDirection","devWarning","sysColorStructureShimmer","sysColorStructureShimmerInverse","sysColorStructureSheen","sysMotionEasingLoopStandard","animation","_args$width","_args$height","sysColorStructureShadow","sysElevationHorizontalOffsetRatio","sysElevationOpacity","sysElevationVerticalOffsetRatio","sysElevationBlurCurve","sysElevationBlurSlope","sysElevationBrightenFactor","getOffsetX","getOffsetY","getBlur","curveAndSlopValue","backgroundImage","shadowProps","elevation","filterLevel2","filterLevel3","_templateObject$4","_templateObject2$4","_templateObject3$4","_templateObject4$4","_templateObject5$3","_templateObject6$3","ZINDEX_DROPDOWN","ZINDEX_TOOLTIP","ZINDEX_MODAL","ZINDEX_TOAST","svgBasePath","assetPath","VARIABLE_PATTERN","tokenTemplate","template","tokenMap","_tokenMap$name","sysMotionTimingX1","sysMotionTimingY1","sysMotionTimingX2","sysMotionTimingY2","sysMotionEasingEnterSmall","sysMotionEasingExitSmall","sysMotionEasingMoveSmall","_variables","_focusStyles","sysColorStructureFocusOutline","sysColorStructureErrorOutline","stateFocusBorderColorInner","stateFocusBorderWidthInner","stateFocusBorderColorOuter","stateFocusBorderWidthOuter","focusInlineBorderThickness","focusElement","stateErrorFocusBorderColorInner","stateErrorFocusBorderColorOuter","focusAfter","_args$radius","_args$border","border","_args$top","_args$left","_args$right","_args$boxShadowColor","boxShadowColor","offsetFocusAfter","_args$radius2","_args$width2","_args$height2","_args$horizontalOffse","horizontalOffset","_args$verticalOffset","verticalOffset","_args$borderColor","_args$boxShadowColor2","widthOffset","heightOffset","focusInline","_args$radius3","_args$colorInner","colorInner","_args$colorOuter","colorOuter","borderWidth","_shimmerStyles","_motionTimings","animationTiming","transitionTiming","motionTimings","_elevationStyles","_caretStyles","caretSideLength","caretVerticalOffset","queriedCss","styleStr","slideTo","startPosition","RIGHT","func","firstParam","ScreenReaderContent","_styles$defaults","_ref$hasStyleDefaults","getColor","fallback","_object$name","params","mainSuffixes","Main","Surface","Alt","Hover","Active","PARSER","getColorFamily","_name$","word","parsed","_parsed","_parsed$","_parsed$2","contrastName","complement","backgroundName","foregroundName","altName","contrastHover","contrastActive","hoverName","activeName","contrast","hover","active","ColorContext","ColorProvider","getColorValue","containerTokens","componentColor","colorType","_containerTokens$acti","_containerTokens$hove","_containerTokens$main","UNIT_PARSER","splitValue","defaultUnit","getMs","_splitValue","getPx","remBase","_splitValue2","hasWindow","hasDocument","isTouchDevice","_navigator$maxTouchPo","navigator","maxTouchPoints","msMaxTouchPoints","isActiveElementIn","elementNames","isDocumentRTL","PREFIX_DEFAULT","ppuiUniqueIdCounter","uniqueId","KeyboardCode","NAME_ARROW_LEFT","CODE_ARROW_LEFT","NAME_ARROW_RIGHT","CODE_ARROW_RIGHT","NAME_ARROW_UP","CODE_ARROW_UP","NAME_ARROW_DOWN","CODE_ARROW_DOWN","NAME_ENTER","CODE_ENTER","NAME_SPACE","CODE_SPACE","CODE_TAB","CODE_ESC","NAME_HOME","CODE_HOME","NAME_END","CODE_END","NAME_BACKSPACE","CODE_BACKSPACE","NAME_DELETE","CODE_DELETE","IS_END","IS_HOME","deepClone","temp","highlightMatch","escapedMatch","regex","throttle","timer","warningText","_regeneratorRuntime","asyncIterator","toStringTag","define","wrap","Generator","Context","makeInvokeMethod","tryCatch","arg","h","GeneratorFunction","GeneratorFunctionPrototype","g","defineIteratorMethods","_invoke","AsyncIterator","invoke","__await","then","callInvokeWithMethodAndArg","delegate","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","resultName","nextLoc","pushTryEntry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","resetTryEntry","completion","isGeneratorFunction","mark","awrap","async","Promise","rval","handle","complete","finish","catch","delegateYield","_createForOfIteratorHelperLoose","getMissingMetadataError","ADDRESS_LABEL_DISPLAY_NAME_TYPES","COARSE_ADDRESS","PORTABLE_ADDRESS","PORTABLE_ADDRESS_VALUES","COARSE_ADDRESS_VALUES","DISPLAY_NAME_TYPES","PERSON_NAME","REGION","LANGUAGE","DATE_TIME_FIELD","CURRENCY","TERRITORY_NAME_SORT_KEY","CURRENCY_NAME_SORT_KEY","ENVIRONMENT","countryAliasMapping","C2","UK","cldrParentLookup","_inheritanceChain","DisplayNames","worldReady","assertType","nameRegion","addressRegion","region","getRegionString","cldrDataMarketOverride","_options2","globalize","cldrData","lang","globalizeToWorldReadyError","stack","PHONE_ERRORS","ALPHA_CHARACTERS","parseAndValidate","phoneNumberToParse","regionCode","parsedPhoneString","errors","parseResult","parsePhoneNumber","validationResult","validatePhoneNumber","getCallingCodeToPhoneRegionsMapping","phoneRegions","callingCodeToCountryCodeMapping","phoneRegion","callingCode","getMetadata","callingCodePhoneRegionMapping","countryToMetadata","regionGroups","parentRegion","phoneRegionGroup","_callingCode","_parentRegion","metadata","regionCodes","countryCodeToRegionCodeMap","getAllMetadata","checkPhoneRegionError","PhoneNumberFormat","_ref2$style","_ref2$obscure","obscure","phoneRegionMetadata","fullStackPhoneHandler","createPhoneHandler","phoneObj","formattedPhoneNumber","formatPhoneNumber","invisibleDigitsLength","firstVisibleDigitsLength","nationalNumber","digitsCount","formatObscured","formatPhone","phoneParser","phoneNumber","isInternationalPhoneNumber","phone","trimmedPhone","adjustPhoneNumberITU","parseValidateResult","subRegionResult","parsePhone","phoneFormatterAsTyped","formatter","getAsYouTypeFormatter","output","inputDigit","_proto","localizedPhoneString","formatAsTyped","inferPhoneNumberRegion","inferPhoneNumberType","getCallingCodeForRegions","regions","regionToCallingCodesMapping","allSupportCallingCodeForRegion","objectGet","stringLayoutToPartsLayout","stringLayout","stringLayouts","checkStringLayouts","partsLayout","lastMatchPos","getLayoutFromScript","primaryScript","_options","finalScript","isProperty","nameScript","layouts","regionDefaultScript","localeScript","supportedScripts","requiredPropsArray","formatAs","nameFormatData","getStringScript","_ref5","layout","_ref6","getPartsFromLayout","addedFirstNonLiteralField","literalField","removeExtraLiterals","nameField","titleCase","_options3","_options3$nameFormatD","PUNCTUATIONS","ALL_LOWER_CASE","GAELIC_TERMS","txt","$1","$2","$3","$4","$5","transformNameFieldToTitleCase","applyFormatting","fixedCharCodeAt","hi","invalidCodePointFromString","codePoint","hex","NAME_TYPES","PERSON","BUSINESS","NAME_STYLES","FULL","INFORMAL","BUSINESS_INFORMAL","DEFAULT_FORMATAS","REGISTERED_BUSINESS_TYPE_KEY_MAP","NAME_ERROR_CODE","MISSING_REQUIRED","INVALID_SCRIPT","INVALID_ALL_PUNCTUATION","INVALID_ALL_NUMBER","INVALID_ALL_RESTRICTED","INVALID_ALL_REGISTERED_ACCOUNT","INVALID_MAX_LENGTH_EXCEEDED","INVALID_ALL_OFFENSIVE","INVALID_ALL_MIXED_SCRIPT","INVALID_NATIONALITY_SCRIPT","INVALID_CHARACTER_REPETITION","INVALID_ALL_HONORIFICS","INVALID_BOUNDARY_PATTERN","INVALID_KEYBOARD_BANGING","INVALID_SINGLE_CHARACTER","INVALID_ALL_NON_VOWEL","SPAM_DETECTED","isCharacterRangeMatch","characterRange","isMatch","uniqueChar","getBusinessNameSupportedScripts","businessType","supportedScriptsByCountry","DEFAULT","validateName","_ref7","requiredProperties","nameValidations","validationsMeta","nationality","fields","retErrors","requiredFieldErrors","validateRequiredField","nonEmptyNamefields","scriptErrors","validRegExString","nameConcat","validRangeForCountryRegex","invalidCodePoint","validateScript","scripts","scriptValidations","characterRangeRegex","currentScript","currScriptValidations","getNameScript","mixedScriptError","validateMixedScript","nationalityError","supportedScriptsByNationality","personal","nationalityScripts","INTERNATIONAL","isNationalityValid","validateNationalityScript","errorMap","isNameInValidListFlag","script","scriptBasedRegexes","nameMaxLength","repetition","honorificsVariation","singleCharacterValidation","boundaryValidation","validList","validListRegex","isNameInValidList","punctuation","getPunctuationNameError","validatePunctuation","repetitionRegexObj","repetitionRegex","repetitionResult","repeatedCharacter","find","validateRepetition","honorificsRegex","validateHonorifics","boundaryValidationRegex","bvResult","invalidSequence","validateBoundaryValidation","keyboardBanging","kbResult","keyboardBangingRegex","validateKeyboardBanging","singleCharacterRegexPat","validateSingleCharacter","nonVowel","nonVowelRegex","singleCharacterRegex","boundaryRegex","punctuationRegex","initialsRange","initialsRangeRegex","isInitialName","validateNonVowel","offensive","getOffensiveNameError","validateOffensiveName","validateMaxLength","validateField","validateBusinessName","businessName","_ref8","registeredBusinessType","businessNameValidations","businessScriptValidations","businessNameKey","getBusinessKey","registeredBusinessTypeKey","getregisteredBusinessTypeKey","consolidatedCharacterRange","getBusinessNameCharacterRangeForScripts","scriptsSet","bScripts","_loop","getBusinessNameScripts","numberRegex","restrictedNameRegex","registeredNameValidation","offensiveNameRegex","assertName$1","assertNationalityWithBusinessType$1","assertBusinessTypeWithPerson$1","assertregisteredBusinessTypeWithPerson$1","NameFormatClient","_NameFormat","NameFormat","_Cldr$attributes","language","_options4","_options4$style","_options4$type","_options4$formatAs","available","nameProperties","validationMatadata","formatData","regionalData","defaultData","getNameProprties","isNamePropertiesValid","nameFormatToParts","_ref9","givenName","camelizeObject","p1","p2","objectDeepAssign","sources","shallowMerge","arrayOfObjects","ADDRESS_TYPES","COARSE","PORTABLE","ADDRESS_STYLES","MULTILINE","SINGLELINE","INTERNATIONAL_MULTILINE","INTERNALTIONAL_SINGLELINE","ADDRESS_ERROR_CODES","MISSING_ONE_OF","INVALID_PATTERN","ADDRESS_CONTAINS_PO_BOX","ADDRESS_CONTAINS_RURAL_ROUTE","COARSE_ADDRESS_FIELDS","PORTABLE_ADDRESS_FIELDS","PORTABLE_ADDRESS_WITH_DETAILS_FIELDS","ADDRESS_TYPES_FOR_PO_BOX_RURAL_ROUTE_VALIDATION","SHIPPING","MAILING","PRIMARY","COUNTRIES_TO_IGNORE_FOR_PO_BOX_VALIDATION","assertAddress","address","addressDetails","addressDetailsField","oldGriffinCoarseSupport","fixes","postcode","postalCode","portable","coarse","joinPartsValues","addressFormatToParts","nameParts","addressScript","recipient","_ref6$allowedValues","allowedValues","internationalRegionName","transforms","_ref6$requiredValues","requiredValues","_ref6$hiddenValues","hiddenValues","_ref6$disabledValues","disabledValues","_ref6$presetValue","presetValue","addressCopy","oldGriffinCoarseSupport$1","elementType","_ref10","transformFns","_ref11","fillParts","filterDisabledParts","_ref12","parentPart","_parentPart$parts","_parts","personNameFormatterSingleton","_ref13","_ref14","_ref15","_ref16","_ref17","_ref18","_ref19","_ref20","_ref21","_ref23","elements","_ref22","uppercase","validateAddress","_retErrors","addressEntryFields","clonedObject","trimObject","trimAddress","isRequiredAlgebraValidResult","requiredAlgebra","group","isRequiredAlgebraValid","getRequiredAlgebra","validationRegex","offensiveWordRegex","addressValidations","default","getOffensiveWordRegex","_options5","getValidListRegex","applyRequiredAlgebra","fieldValue","isAddressFieldInValidList","offensiveWordError","validateAddressFieldForOffensiveTerms","poBoxErrors","addressType","poBoxValidations","poBox","territory","addressTypesForPoBoxValidation","address_type","regexInfo","layout_type","getPoBoxRegex","performPoBoxValidation","ruralRouteErrors","addressData","ruralRouteValidations","ruralRoute","addressTypesForRuralRouteValidation","getRuralRouteRegex","performRuralRouteValidation","_validateAddress","addressLineErrors","assertAddress$1","addressFormatToPartsAsserts","AddressFormat","_debug_options","_options6","_options6$type","_options6$style","availableTypes","availableStyles","COMMON_ADDRESS_DATA","_ref24","_ref25","addressTypes","country_code","address_line_1","addressRegionObj","countryCodeObj","expectedAddressRegionObj","currUsage","line1","newUsage","addressLine1","ExampleGenerator","nationalNumbers","phoneTypes","countryCodes","generate","WorldReadyProvider","worldReadObjFromContext","intlProviderProps","defaultGetMenuOptions","userText","filteredOption","srchString","suggestion","getOptionValue","ideate","mappedOption","sectionOption","optionLegend","mapOptions","srcList","dest","_ref3$name","_ref3$value","onTextChange","_ref3$onFocus","_ref3$getMenuOptions","getMenuOptions","_ref3$emptyMessage","emptyMessage","_ref3$mobileTitle","_ref3$hasSections","_ref3$isTextHightligh","sheetInputRef","setActiveIndex","setPlacemat","filteredList","setFilteredList","_useState9","_useState10","setActiveItem","_useState11","_useState12","textFocus","setTextFocus","_useState13","_useState14","showEmptyMsg","setShowEmptyMsg","_useState15","_useState16","setIsLoading","createSheetInputRef","sheetInputTextRef","normalizeSuggestions","getInitialText","currentText","tempList","initialText","_useState17","_useState18","textValue","setTextValue","_useState19","_useState20","hiddenSelectValue","setHiddenSelectValue","_useState21","_useState22","sheetTextValue","setSheetTextValue","comboId","textInputId","menuId","updateFilteredList","filterText","isDefaultGetMenuOptions","newOptions","updatedList","isListEmpty","_newOptions","_updatedList","_sectionList$suggesti","doSetShowMenu","isShown","handleSheetTyping","handleItemSelection","getActiveId","updateActiveItem","sheetTextPlaceholder","sheetTextInputName","getSheetTextInput","inputDir","comboStyles","affordanceTrigger","hiddenSelect","tempSelectedValue","passedRef","sheetInput","inputProps","textHighlightedHandle","tempFilteredList","hasEmptyOption","suggestionListContainer","elevatedSuggestionListContainer","centeredContent","suggestionList","highlightedSuggesiton","errorMessage","suggestionDecoration","SuggestionList","_ref2$suggestions","renderSuggestion","onHighlight","onSelect","listItemClassName","query","_ref2$enableKeyboardI","enableKeyboardInteraction","highlightedIndex","setHighlightedIndex","highlightedIndexRef","_suggestions","sectionIndex","suggestionIndex","handleHighlight","highlightedElm","handleSelect","currentHighlightedIndex","renderSuggestionList","suggestionContent","highlightedValue","secondaryElm","decorationElm","defaultRenderSuggestion","handleInteraction","interactionIndex","onMouseMove","getNormalizedSuggestionLength","_props$id","_props$debounceTimeou","debounceTimeout","_props$fetchSuggestio","fetchSuggestions","_props$suggestionList","isSuggestionListInline","isLoadingSuggestions","onClear","_props$triggerCompone","triggerComponent","_props$defaultSuggest","defaultSuggestionList","suggestionListFooter","suggestionListContainerClassName","suggestionListFooterClassName","suggestionListChangeMessage","_props$suggestionList2","suggestionListLoadingMessage","suggestionListErrorMessage","onSuggestionListClose","timerRef","suggestionListContainerRef","areSuggestionsVisible","setSuggestionsVisible","highlightedSuggestionId","setHighlightedSuggestionId","isTriggerFocused","setTriggerFocus","suggestionsLength","focusSuggestionLength","inputElm","callSuggestionListClose","suggestionListId","suggestionsElm","focusSuggestionElm","loadingElm","errorElm","suggestionListContainerCssVal","suggestionContainerElm","_suggestListChangeMessage","iconSizeMap","Avatar","_styles$getColorCss","_styles$getGenericCol","acceptedColors","_getColorFamily","getGenericColorCss","genericCategory","bank","causes","biller","merchant","profile","subscription","avatarBadge","shimmerSizeXs","shimmerSizeMd","computedSizeVar","shimmerCSS","colour","sum","pink","avatarCSS","GenericIcon","styles$2","_ref$alphaCharCapital","alphaCharCapitalize","_ref$error","inputWrapperClassName","_ref$pinLength","pinLength","autoFocus","_ref$numberOnly","numberOnly","_ref$wrapperAriaLabel","wrapperAriaLabel","inputFieldRef","NUM_REGEX","keyEventsArry","setFocused","pinArray","valueArr","generateCode","pinArr","focusOnField","processInputCharacters","characterList","fieldLength","allowedCharactersLength","handleBlur","codeInputTextInput","codeInputTextInputWithError","codeInputTextInputControl","inputWrapper","errorTextList","containerCSS","loadInputField","setRef","onInput","pastedArr","handleInput","IS_ARROW_KEY","IS_BACKSPACE","IS_DELETE","onPaste","clipboardValue","clipboardData","getData","handlePaste","HeroCurrency","_ref$onKeyDown","showEditIcon","scaleNormal","cursorPosition","blinker","animateCursor","centerAlign","baseNoFocus","errorTextSpacing","view","viewCenter","textInput","focusedView","focusEntered","focusImplied","focusImpliedDefault","entered","impliedDefault","editIcon","setEntered","implied","setImplied","currencyParts","handleChange","decimal","inputFocused","parseDisplay","setInputFocus","viewCss","enteredCss","impliedCss","inputCss","computedUnmaskedValue","replaceAll","IS_SIDE_NAVIGATION","_props$isHidden","hideToggleLabel","onToggleHide","typeProp","iconButtonLabel","sysSizeMediaXs","phoneInputMenuMaxWidth","telephoneInputRtlStyles","combined","menuButton","menuButtonContent","VAR_LENGTH_COUNTRIES_FIXED_LINE","VAR_LENGTH_COUNTRIES_MOBILE","DEFAULT_PATTERN","getPhoneFormat","formatType","providedCountryCode","providedPhoneFormat","isPhoneMetaDataLoaded","phoneType","exampleNumberObj","patternLength","optionalDigits","PhoneCodeDropdown","countryOptions","flagId","codeId","countryPhoneCode","countryName","_ref$countryOptions","_ref$inputLabel","inputLabel","_ref$menuLabel","menuLabel","menuClassName","_ref$mobile","onPhoneCodeChange","phoneCode","_ref$showUnselect","_ref$unselectLabel","unselectLabel","_ref$formatType","optionText","optionCode","optionPattern","optionCountryRegion","optionCountryName","hasFocus","phoneFormat","phoneParts","displayNamesObj","countryRegion","constructOptionProps","currentMask","selectedCountry","selectedPhoneCode","_evt$target","_evt$target$value","flagIdPrefix","codeIdPrefix","generatedFlagId","generatedCodeId","phoneDropdownMenuCSS","dropdownEl","inputEl","combinedInputCSS","codePrefix","codeSuffix","partMap","keepClearButton","_props$clearButtonLab","clearButtonLabel","_props$clearButtonAri","clearButtonAriaLabel","cleared","setCleared","clearButtonProps","clearButton","sysBorderThicknessFocus","selectionGroupBorderRadius","selectionGroupLabelPadding","selectionGroupErrorLabelPadding","selectionGroupErrorSelectedLabelPadding","selectionGroupFocusBorderWidthInner","selectionGroupFocusBorderHeightWidth","borderAfterStyles","verticalOrientation","buttons","buttonsResponsiveXs","buttonsResponsiveSm","buttonsResponsiveMd","verticalButtons","centerButtons","justifyButtons","primaryLabelWhenFocusedAndChecked","secondaryLabelVertical","verticalLabel","justifyLabel","secondaryLabelTwo","errorLabel","errorLabelWhenChecked","errorLabelWhenFocus","SingleSelectionGroup","_ref2$value","responsive","_ref2$options","_ref2$alignContent","alignContent","buttonBarCSS","inputValue","onMouseOver","optionRest","otherInputAttr","renderSingleButtons","tabPaddingLeft","noDisplay","blockDisplay","tabWrapperBase","tabsWrapper","tabsCenter","tabsBtn","tabsSelectedBtn","tabsScrollBtn","tabsScrollBtnLeft","tabsScrollBtnRight","tabsScrollBtnVisible","tabsArrowIcon","tabContentFocus","hideBtn","navBackground","tabGroupId","_globalize2","_interopRequireDefault","_zonedDateTime2","__esModule","defineCachedGetter","defineGetter","startOf","RelativeTime","formatters","initializeFormatters","_ref$timeZoneData","_ref$unit","now","diff","ms","years","absDiff","hours","minutes","seconds","bestFit","minute","getResolvedRegion","isWorldReadyInstance","Region","worldReadyOrRegionOrString","WorldReady","_main","_temp","_ref$langSubtag","langSubtag","payPalLocaleCode","_locale$payPalLocaleC","_locale","_country","normalizeLocale","_normalizeLocale","bundle","market","weekendStart","weekendEnd","providers","provider","_Globalize","regexpNotSNotZ","CURRENCY_STYLES","SYMBOL","CODE","CurrencyFormat","_ref$style","otherOptions","currencyMetadata","resolvedOptionsCache","_cldr","standard","symbolWithoutSpaces","svalueA","svalueB","valueA","valueB","equivalency","fuzzyMatch","_data","_aux2","_resolvedOptions","international","_part$value$split","preLiteral","postLiteral","_wrapNativeSuper","Class","_cache","_isNativeFunction","Wrapper","_construct","SmartCacheKeyNotFoundError","_Error","DEFAULT_CAPACITY","BrowserCache","cache","delete","clear","DATE_STYLES","DATE_SHORT","BANK_CARD_EXPIRY","TIMEZONE_SHORT","TIMEZONE_MEDIUM","TIMEZONE_LONG","BANK_CARD_EXPIRY_FORMAT","TIMEZONE_FORMATS","TIMEZONE_LONG_FORMAT","TIMEZONE_MEDIUM_FORMAT","TIMEZONE_SHORT_FORMAT","ERROR_CODES","getWorldReadyDateError","WORLDREADY_DATE_ERROR_CODES","RangeError","dateOptions","globalizeDateOptions","_options$style","optionsWithDefaults","getGlobalizeDateOptions","timezones","_err","isValidDate","getDateFormatter","getDateToPartsFormatter","localizedDate","getDateParser","smartCache","_data2","_data3","messageParts","variableName","DEPRECATED_MESSAGE_MISSING","MESSAGE_MISSING","WORLDREADY_EXPERIENCE_KEY_PREFIX","getWorldReadyExperienceId","getMessageParts","_message","MessageFormat","_options$fallback","namespace","NumberFormat","localizedNumber","_inheritsLoose","ContextProvider","MessageParts","Consumer","Message","_Component","render","_this$props","messageFmt","for","q","z","B","C","encodeURIComponent","D","enqueueForceUpdate","enqueueReplaceState","enqueueSetState","E","refs","updater","G","H","isReactComponent","forceUpdate","I","isPureReactComponent","J","K","L","__self","__source","M","k","defaultProps","$$typeof","_owner","O","P","Q","R","keyPrefix","S","T","U","V","escape","W","aa","X","N","Z","ba","ReactCurrentDispatcher","ReactCurrentBatchConfig","suspense","ReactCurrentOwner","IsSomeRendererActing","only","Fragment","Profiler","PureComponent","StrictMode","Suspense","__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED","cloneElement","_calculateChangedBits","_currentValue","_currentValue2","_threadCount","createFactory","createRef","isValidElement","_ctor","_status","_result","compare","useDebugValue","useImperativeHandle","useReducer","version","ISO8601","RELATIVE_TIME_UNITS","BEST_FIT","RELATIVE_TIME_FORMATTERS_STYLES","RELATIVE_TIME_STYLES","RELATIVE_TIME_ERRORS","DURATION_CODES","formatISO8601Duration","validateISO8601Duration","validations","iso8601","parsedDuration","parseISO8601Duration","futureDate","timeToAdd","_timeToAdd","weeks","addTimeToDate","_duration$split","toLocaleUpperCase","period","parsedPeriod","parseISO8601Period","parsedTime","parseISO8601Time","_rest$split","_rest$split2","_rest$split3","_rest$split4","_rest$split5","_rest$split6","_rest$split7","getTimeInDurationNarrowStyle","_initializeFormattersForStyles","RelativeTimeFormat","_options$unit","unitValues","getRelativeTimeFormatForISO8601Duration"],"sourceRoot":""}