{"version":3,"sources":["webpack:///./ClientApp/services/Localizer.tsx","webpack:///./ClientApp/shared/components/svg/DownChevronSVG.tsx","webpack:///./ClientApp/shared/components/svg/UpChevronSVG.tsx","webpack:///./ClientApp/features/commerce/organization/OrganizationUIComponents.ts","webpack:///./ClientApp/shared/polyfills/customEvent.js","webpack:///./ClientApp/styles/node-modules/@reach/dialog/styles.css?d0c1","webpack:///./ClientApp/shared/components/svg/MapPinSVG.tsx","webpack:///./ClientApp/styles/node-modules/@reach/dialog/styles.css","webpack:///./ClientApp/shared/components/Breadcrumbs.tsx","webpack:///./ClientApp/shared/components/svg/commerce/OrganizationSimpleSVG.tsx","webpack:///./ClientApp/shared/components/svg/ClockSVG.tsx","webpack:///./ClientApp/features/commerce/organization/orders lazy ^\\.\\/.*$ namespace object","webpack:///./ClientApp/features/setup/Utils.ts","webpack:///./ClientApp/shared/components/svg/ShoppingCartSVG.tsx","webpack:///./ClientApp/features/header/HeaderUtilNav.tsx","webpack:///./ClientApp/shared/components/Spinner.tsx","webpack:///./ClientApp/shared/components/svg/CreditCardSimpleSVG.tsx","webpack:///./ClientApp/shared/components/svg/commerce/UsersSVG.tsx","webpack:///./ClientApp/shared/components/svg/LockSimpleSVG.tsx","webpack:///./ClientApp/shared/components/svg/UserSVG.tsx","webpack:///./ClientApp/services/AxiosHelper.ts","webpack:///./ClientApp/shared/components/svg/MenuSVG.tsx","webpack:///./ClientApp/shared/components/svg/BookmarkSVG.tsx","webpack:///./ClientApp/shared/assets/lazy.ts","webpack:///./ClientApp/features/commerce/my-account/organization/OrganizationSelector.tsx","webpack:///./ClientApp/shared/components/svg/ShoppingCartPlusSVG.tsx","webpack:///./ClientApp/shared/components/svg/ShoppingListSVG.tsx","webpack:///./ClientApp/shared/components/RocPopover.tsx","webpack:///./ClientApp/shared/components/svg/CartDownArrowSVG.tsx","webpack:///./ClientApp/shared/components/RenderImpersonationHeader.tsx","webpack:///./ClientApp/shared/edit/InlineAlert.tsx","webpack:///./ClientApp/shared/components/svg/XSVG.tsx","webpack:///./ClientApp/features/commerce/organization/OrganizationNav.tsx","webpack:///./ClientApp/features/commerce/organization/OrganizationBreadcrumbs.tsx","webpack:///./ClientApp/features/commerce/organization/Layout.tsx","webpack:///./ClientApp/features/commerce/organization/Organization.tsx","webpack:///./ClientApp/features/commerce/organization/OrganizationRemovalNotification.tsx","webpack:///./ClientApp/features/commerce/organization/index.tsx","webpack:///./ClientApp/features/abrasive-header/AbrasiveHeaderUtils.tsx","webpack:///./ClientApp/features/abrasive-header/index.tsx","webpack:///./ClientApp/services/UserData.ts","webpack:///./ClientApp/shared/util/AccountUrls.ts","webpack:///./ClientApp/shared/hooks/useRocEventHandler.tsx","webpack:///./ClientApp/shared/components/svg/GearSVG.tsx","webpack:///./ClientApp/shared/components/svg/HouseSVG.tsx","webpack:///./ClientApp/shared/util/ErrorBoundary.tsx","webpack:///./ClientApp/shared/polyfills/getAttributeNames.js","webpack:///./ClientApp/shared/util/ApplicationInit.tsx","webpack:///./ClientApp/features/my-account/routes.roc.tsx","webpack:///./ClientApp/shared/hooks/useDelayedDisplay.tsx","webpack:///./ClientApp/features/commerce/organization/routes.tsx","webpack:///./ClientApp/features/setup/recaptcha.ts","webpack:///./ClientApp/styles/node-modules/tiny-slider/dist/tiny-slider.css?bcf8","webpack:///./ClientApp/styles/node-modules/tiny-slider/dist/tiny-slider.css","webpack:///./ClientApp/styles/app.scss?4c37","webpack:///./ClientApp/shared/util/events/rocEventUtils.ts","webpack:///./ClientApp/shared/components/commerce/ProductPricing.tsx","webpack:///./ClientApp/features/setup/tapecase/accessible-navigation-tapecase.ts","webpack:///./ClientApp/features/announcements/Announcements.tsx","webpack:///./ClientApp/features/commerce/organization/OrganizationHeaderMenu.tsx","webpack:///./ClientApp/features/header/HeaderUtils.tsx","webpack:///./ClientApp/features/setup/commerce/ProductBanner.tsx","webpack:///./ClientApp/features/setup/commerce/banners.products.tsx","webpack:///./ClientApp/features/setup/banners.ts","webpack:///./ClientApp/features/setup/tapecase/banners.ts","webpack:///./ClientApp/features/setup/commerce/relatedProducts.ts","webpack:///./ClientApp/features/setup/interactive-offices.ts","webpack:///./ClientApp/features/setup/interactive-industry.ts","webpack:///./ClientApp/features/setup/tapecase/accordian-tapecase.ts","webpack:///./ClientApp/features/setup/tapecase/mobile-search.ts","webpack:///./ClientApp/features/setup/tapecase/mobile-menu.ts","webpack:///./ClientApp/setup.js","webpack:///./ClientApp/features/setup/commerce/setupPDPTabs.ts","webpack:///./ClientApp/features/setup/userType.ts","webpack:///./ClientApp/features/setup/navigation.ts","webpack:///./ClientApp/features/setup/scrollBtn.ts","webpack:///./ClientApp/features/setup/tapecase/back-button-tapecase.ts","webpack:///./ClientApp/features/setup/tapecase/newsletter.ts","webpack:///./ClientApp/features/setup/cookieMessagePrompt.ts","webpack:///./ClientApp/features/header/index.tsx","webpack:///./ClientApp/features/announcements/index.tsx","webpack:///./ClientApp/services/ServerData.ts","webpack:///../Roc.SharedClientApp/types/commerce/display-price.ts","webpack:///./ClientApp/features/my-account/routes.commerce.tsx","webpack:///./ClientApp/util/StringUtil.ts","webpack:///./ClientApp/shared/components/Modal.tsx","webpack:///./ClientApp/shared/components/svg/LeftChevronSVG.tsx"],"names":["LocalizerResources","isAlreadyLogged","initializeLocalizerResources","windowWithResources","window","__ROC_LOCALIZER_RESOURCES__","Array","isArray","forEach","obj","Object","keys","key","Localizer","replaceStrings","length","console","warn","resource","replace","match","index","LocalizedSpan","props","resourceKey","args","localizedString","data-testid","toKebabCase","dangerouslySetInnerHTML","__html","DownChevronSVG","className","rest","viewBox","classnames","focusable","aria-hidden","d","UpChevronSVG","OrganizationUIComponents","CustomEvent","event","params","bubbles","cancelable","detail","undefined","evt","document","createEvent","initCustomEvent","prototype","Event","api","content","__esModule","default","module","i","options","exports","locals","MapPinSVG","___CSS_LOADER_API_IMPORT___","push","Breadcrumbs","breadcrumbPath","backToPage","renderPathLink","item","href","url","label","history","onClick","back","map","entry","Fragment","OrganizationSimpleSVG","width","height","id","fillRule","ClockSVG","webpackAsyncContext","req","__webpack_require__","o","Promise","resolve","then","e","Error","code","ids","all","slice","t","slugify","text","toString","toLowerCase","ShoppingCartSVG","defaultProps","HeaderUtilNav","children","HeaderUtilNavItemLink","path","icon","UserSVG","testId","aria-label","HeaderUtilNavItemCart","userData","cartSummary","items","HeaderUtilNavItemPopover","triggerRef","useRef","popoverWrapperRef","popoverMatchWidthRef","isOpen","openPopover","closePopover","title","size","handleDocumentClick","current","target","contains","useEffect","positionMatchWidth","addEventListener","removeEventListener","parentClass","buttonClass","textClass","Suspense","fallback","Spinner","ref","type","RocPopover","innerRef","targetRef","position","light","waitMs","align","block","parentCentered","useDelayedDisplay","spinner","CreditCardSimpleSVG","UsersSVG","LockSimpleSVG","AxiosHelper","axios","create","defaults","headers","common","interceptors","request","use","config","method","getCsrfToken","csrfToken","RequestVerificationToken","addUnauthorizedAccessInterceptor","response","error","status","location","AccountUrls","Login","encodeURIComponent","pathname","reject","MenuSVG","BookmarkSVG","lazyLoadImages","lazyImages","call","querySelectorAll","lazyImageObserver","IntersectionObserver","entries","isIntersecting","lazyImage","dataset","src","attributeDelay","Number","getAttribute","classList","remove","setTimeout","add","unobserve","observe","lazyElements","elements","callback","delay","stopAfterIntersecting","lazyElementObserver","lazyElement","readyState","updateUserDefaultOrganization","organizationId","requestToken","Axios","CancelToken","source","post","UPDATE_USER_DEFAULT_ORGANIZATION_URL","cancelToken","token","DefaultOrganizationSelector","currentOrganizationId","organizations","selectDefaultOrganization","useState","selectedDefaultOrganization","setSelectedDefaultOrganization","defaultOrganization","find","org","value","organization","OrganizationSelectorOption","setSelectedOrganizationOption","selectedOrganization","htmlFor","name","checked","onChange","withRouter","errorMessage","setErrorMessage","setUserData","useHistory","getUserData","data","summary","userOrganizations","startsWith","OrganizationSelector","BaseUrl","setUserDefaultOrganization","isCancel","axiosError","message","theme","ShoppingCartPlusSVG","ShoppingListSVG","Popover","React","lazy","space","setSpace","innerHeight","getBoundingClientRect","bottom","as","CartDownArrowSVG","LazyPreHeader","RenderImpersonationHeader","initReactApp","InlineAlert","isTitleOnOwnRow","isCollapsed","onCollapse","isAxiosError","XSVG","Nav","sidebarEl","useLocation","isNavOpen","setIsNavOpen","isOrganizationUser","setIsOrganizationUser","OrganizationReview","organizationInvites","pageTitle","ordersActive","usersActive","shiptosActive","ORGANIZATION_ORDERS_URL","ORGANIZATION_USERS_URL","ORGANIZATION_SHIPTOS_URL","ServerData","PageTitleSuffix","handleClickOutside","listen","showUserNavigation","setShowUserNavigation","isSignedIn","canSeeOrganizationUsers","permissions","iconClass","aria-labelledby","active","to","OrganizationBreadcrumbs","orgLabel","ORGANIZATION_USERS_CREATE_URL","organizationItem","Layout","browserHistory","createBrowserHistory","Organization","routes","OrganizationRemovalNotification","organizationRemovalNotification","setOrganizationRemovalNotification","setIsOpen","userOrganizationRemovalNotification","onOrganizationRemovalNotificationClose","INVALIDATE_USER_ORGANIZATION_NOTIFICATION_CACHE_URL","Modal","hideCloseButton","closeModal","renderTitle","renderActions","setupOrganizationRemovalNotification","initReactAppByAttribute","render","AbrasiveHeaderUtils","impersonation","action","Logout","setupAbrasiveHeader","userDataPromise","get","getUserDataNoCache","ACCOUNT_URL_BASE","ACCOUNT_LOGIN_URL","Login2fa","ACCOUNT_LOGIN_WITH_2FA_URL","Register","ACCOUNT_REGISTER_URL","ForgotPassword","ACCOUNT_FORGOT_PASSWORD_URL","LoginWithRecoveryCode","ACCOUNT_LOGIN_WITH_RECOVERY_CODE_URL","ACCOUNT_LOGOUT_URL","ACCOUNT_ORGANIZATION_REVIEW_URL","ACCOUNT_ORGANIZATION_SELECTOR_URL","dispatchRocEvent","eventType","dispatchEvent","useRocEventHandler","eventHandler","deps","removeHandlerCallback","addRocEventHandler","GearSVG","HouseSVG","ErrorBoundary","this","setState","state","renderError","Component","renderProps","Element","getAttributeNames","attributes","result","getDataPropsFromAttributes","element","filter","s","attributeName","toCamelCase","substring","getReactElement","elementId","getElementById","ReactDOM","attribute","MY_ACCOUNT_PATH_PREFIX","MY_ACCOUNT_AUTHENTICATOR_URL","MY_ACCOUNT_GENERATE_RECOVERY_CODES_URL","MY_ACCOUNT_CONFIGURE_AUTHENTICATOR_URL","MY_ACCOUNT_LOGIN_URL","MY_ACCOUNT_WALLET_URL","MY_ACCOUNT_WALLET_CREATE_URL","MY_ACCOUNT_ADDRESS_BOOK_URL","MY_ACCOUNT_ADDRESS_BOOK_CREATE_URL","MY_ACCOUNT_ADDRESS_BOOK_EDIT_URL","MY_ACCOUNT_SETTINGS_URL","SettingsComponent","rocRoutes","exact","component","display","setDisplay","timeout","clearTimeout","ORGANIZATION_PREFIX","UPDATE_ORGANIZATION_USER_URL","UPDATE_USER_ORGANIZATION_STATUS_URL","ORGANIZATION_ORDER_DETAILS","OrganizationOrderDetailsComponent","orderDetailsComponent","OrderDetailsUIComponent","DefaultOrganizationOrderDetails","ShiptosComponent","UsersComponent","OrganizationOrdersComponent","OrganizationUsersCreateComponent","reCaptchaCallbackPromise","setupReCaptcha","windowWithReCaptchaCallbacks","onReCaptchaLoadCallback","handler","ProductPricing","displayPrice","inline","renderResult","css","priceClass","base","normalPrice","crossedOutPrice","highlightedPrice","GetCssClasses","displayRule","PriceDisplayRule","Missing","Normal","price","basePriceClass","salePrice","VariantPriceComponent","basePrice","renderNormalPrice","AmbiguousRange","FormatAmbiguousPriceSpan","unitName","unit","renderAmbiguousPrice","FormatPrice","FormatPriceSpan","priceRange","from","isDescendant","parent","child","node","parentNode","AccessibleNavigation","_executeResizeDebounced","navElement","mobileBreakpoint","HTMLElement","_navElement","toggleButton","subMenuParent","parentElement","_subNavElements","toggleElement","subMenuParentElement","toggleButtonsQueryResult","HTMLButtonElement","_navToggleButton","navListQueryResult","_navListElement","_isNavExpanded","debounce","_resize","_mobileBreakpoint","_init","_setupClickEvents","_setupOutsideclick","_setupEscKeyPress","_setupResizeListener","_setupNavToggleClick","_handleResize","innerWidth","closeAllMenus","collapseNavigationMobile","unCollapseNavigationMobile","subMenu","setAttribute","menu","openMenu","toggleSubMenu","subMenuElement","expand","targetSubMenu","Announcements","announcements","setAnnouncements","isDismissed","setIsDismissed","filteredAnnouncements","a","pages","includes","rocAnnouncement","announcement","OrganizationHeaderMenu","hasSingleOrganization","reload","HeaderUtils","popoverOpen","setPopoverOpen","hideWalletNavigation","setHideWalletNavigation","creditCardAllowed","hasSavedPaymentMethods","firstName","MY_ACCOUNT_ORDERS_URL","MY_ACCOUNT_BUY_AGAIN_URL","MY_ACCOUNT_USER_SHIPPING_ACCOUNT_URL","MY_ACCOUNT_SAVED_FOR_LATER_URL","MY_ACCOUNT_SAVED_CARTS_URL","MY_ACCOUNT_SHOPPING_LISTS_URL","enableStoreLocation","MY_ACCOUNT_STORE_URL","headerUtilsIconClass","ProductBanner","banner","product","mainImageUrl","imageUrl","mainImageAltText","altTag","customUrl","productId","productName","productGroupId","data-src","alt","setupProductBanners","generateKeyForGroupRequest","bannerGroupRequest","groupCode","pageUrl","isRandom","bannerPlaceholders","bannerGroupsPlaceholderDetails","bannerPlaceholder","placeholderData","requestData","groupKey","placeholder","distinctBannerGroups","group","elem","self","findIndex","groupCodes","bannersFromServer","bannersForGroups","bannerIndex","placeholderDetails","hasOwnProperty","bannersGroups","isCarousel","banners","htmlBanner","createElement","customHtml","innerHTML","elementToAppend","img","forwardUrl","link","browserTarget","appendChild","style","reactRoot","setupBannerClick","bannerName","setupSliderForCarousel","onclick","clickedBannerData","currentTarget","bannerPlaceHolder","hasAttribute","showControls","tnsPromise","tns","container","parseInt","slideBy","autoplay","controls","nav","autoplayButtonOutput","lazyload","onInit","childElementCount","events","on","info","bannerData","slideItems","setupBanners","serverBannerTabsContainers","serverBannerContainers","serverBannersContainer","j","setupServerBanners","setupClientBanners","tabButtons","tabBanners","button","tabIndex","tab","setupRelatedProducts","loop","controlsText","navPosition","mouseDrag","gutter","edgePadding","responsive","575","768","1200","Device","createElementFromHTML","htmlString","div","trim","firstChild","createOffice","office","x","appendDiv","device","officeToggleXElement","officeToggleTriangle","officeToggleMessageClose","officeIconRightTriangle","getElementsByClassName","officeText","officeSubtext","subtext","officeLink","officeAccessibilityText","accessibilityText","officeAccessibilityTextElement","officeIcon","officeIconClone","cloneNode","officeButton","officeBody","officeContentIcon","officeBoxContentText","officeBoxContentTitle","officeBoxContentLink","officeBoxContentSubtext","officeBoxContent","officeXCoordinate","officeXOpenCoordinate","officeYCoordinate","officeSize","officeParent","XXL","positionXXxl","positionXXxlOpen","positionYXxl","XL","positionXXl","positionXXlOpen","positionYXl","positionXL","positionXLOpen","positionYL","left","top","closeBox","officeXOpen","openBox","officeX","officeFlipped","flipped","activeClass","setupMobileSearch","headerTop","trigger","triggerTwo","searchInput","open","handleClose","handleToggle","focus","setupMobileMenu","menuItems","setupCommerce","querySelector","toggle","keyCode","setupPDPTabs","htmlEl","isRecentTouchUser","rootElement","scrollButton","backButtonElement","spanNewsletterSuccess","spanNewsletterFailure","btnNewsletterSignup","newsletterForm","cookieAcceptBtn","cookieMessageContainer","documentElement","throttle","removeProperty","offices","xxlOffices","xlOffices","lOffices","L","originalList","setupInteractiveOffices","root","mainImage","imageSrc","imageDiv","backgroundImage","insertBefore","setupInteractiveIndustry","scrollTotal","scrollHeight","clientHeight","scrollTop","scrollTo","btn","opacity","txtEmail","emailValue","Email","catch","handleCookieClick","Date","setTime","getTime","expires","toUTCString","cookie","body","windowWithServerData","__ROC_SERVER_DATA__","initializeServerData","MY_ACCOUNT_ORGANIZATION_REVIEW_URL","MY_ACCOUNT_ORGANIZATION_SELECTOR_URL","MY_ACCOUNT_SHOPPING_LISTS_CREATE_URL","MY_ACCOUNT_USER_SHIPPING_ACCOUNT_CREATE_URL","MY_ACCOUNT_USER_SHIPPING_ACCOUNT_EDIT_URL","OrdersComponent","OrderDetailsComponent","StoreComponent","AddressBookComponent","AddressBookEditComponent","SavedForLaterComponent","SavedCartsComponent","BuyAgainComponent","AccountOverviewComponent","ShoppingListsComponent","ShoppingListsCreateComponent","ShoppingListDetailsComponent","OrganizationReviewComponent","OrganizationSelectorComponent","OrganizationShiptosComponent","OrganizationUsersComponent","UserShippingAccountsComponent","UserShippingAccountsEditComponent","ordersRoute","orderDetailsRoute","storeRoute","addressBookRoute","addressBookCreateRoute","addressBookEditRoute","savedForLaterRoute","savedCartsRoute","exect","buyAgainRoute","shoppingListsRoute","shoppingListsCreateRoute","shoppingListDetailsRoute","defaultRoute","organizationReviewRoute","organizationSelectorRoute","OrganizationUsersRoute","OrganizationShipTosRoute","OrganizationOrdersRoute","OrganizationCreateUserRoute","OrganizationOrderDetailsRoute","commerceRoutes","toLocaleLowerCase","word","toUpperCase","stripHtml","html","tmp","textContent","innerText","trimString","LazyDialog","Dialog","LazyDialogContent","DialogContent","LazyDialogOverlay","DialogOverlay","renderSubtitle","titleIcon","headerDivider","bypassFocusLock","subTitle","innerModal","ariaLabel","onDismiss","dangerouslyBypassFocusLock","LeftChevronSVG"],"mappings":"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","file":"main.js","sourcesContent":["import { AddressResourceKeys } from 'features/address-book/resources';\r\nimport { ContactFormResourceKeys } from 'features/contact-form/resources';\r\nimport { CreatePasswordResourceKeys } from 'features/create-password/resources';\r\nimport { LoginWith2faResourceKeys } from 'features/login-with-2fa/resources';\r\nimport { LoginWithRecoveryCodeResourceKeys } from 'features/login-with-recovery-code/resources';\r\nimport { LoginResourceKeys } from 'features/login/resources';\r\nimport { MyAccountResourceKeys } from 'features/my-account/resources';\r\nimport { ResetPasswordResourceKeys } from 'features/reset-password/resources';\r\nimport { SubmitQuestionResourceKeys } from 'features/submit-question/resources';\r\nimport * as React from 'react';\r\nimport { toKebabCase } from 'util/StringUtil';\r\n\r\n// #region Commerce\r\nimport { CommerceResourceKeys } from 'features/commerce/CommerceResourceKeys';\r\n// #endregion\r\n\r\n// #region TapeCase Customization\r\nimport { SubmitQuoteResourceKeys } from 'features/submit-quote/resources';\r\nimport { TapeCaseRegistrationResourceKeys } from 'features/register-tapecase/resources';\r\nimport { CareersFormResourceKeys } from 'features/careers-form/resources';\r\nimport { FileUploadResourceKeys } from 'features/file-upload/resources';\r\n// #endregion\r\n\r\n/**\r\n * Type that will hold all the global localization keys\r\n */\r\ntype LocalizerGlobalResourceKeys =\r\n\t| 'Success'\r\n\t| 'OfTotalPages'\r\n\t| 'Cancel'\r\n\t| 'Confirm'\r\n\t| 'FirstName'\r\n\t| 'LastName'\r\n\t| 'Email'\r\n\t| 'Username'\r\n\t| 'Amount'\r\n\t| 'NameOnCard'\r\n\t| 'CardNumber'\r\n\t| 'ExpDate'\r\n\t| 'ExpMonth'\r\n\t| 'ExpYear'\r\n\t| 'Expires'\r\n\t| 'Expired'\r\n\t| 'SecurityCode'\r\n\t| 'Submit'\r\n\t| 'Save'\r\n\t| 'ZipCode'\r\n\t| 'Remove'\r\n\t| 'Removed'\r\n\t| 'Update'\r\n\t| 'Undo'\r\n\t| 'Cancel'\r\n\t| 'Enter'\r\n\t| 'Close'\r\n\t| 'SortBy'\r\n\t| 'PleaseWait'\r\n\t| 'Unknown'\r\n\t| 'Yes'\r\n\t| 'No'\r\n\t| 'Delete'\r\n\t| 'Update'\r\n\t| 'SaveAndContinueButtonText'\r\n\t| 'SaveAndContinue'\r\n\t| 'Continue'\r\n\t| 'SaveErrorMessage'\r\n\t| 'Edit'\r\n\t| 'ErrorMessageGenericTitle'\r\n\t| 'CheckEnteredValues'\r\n\t| 'ErrorMessageForbidden'\r\n\t| 'ErrorMessageNetwork'\r\n\t| 'ErrorOccurredSubmittingTheForm'\r\n\t| 'UnexpectedErrorOccurred'\r\n\t| 'Login'\r\n\t| 'ReturnToShipping'\r\n\t| 'BreadcrumbsLabel'\r\n\t| 'Other'\r\n\t| 'RememberMe'\r\n\t| 'ForgotYourPassword'\r\n\t| 'RegisterNewUserLinkText'\r\n\t| 'LoginPageTitleText'\r\n\t| 'ForgotPasswordPageTitle'\r\n\t| 'ForgotPasswordConfirmationPageTitle'\r\n\t| 'ForgotPasswordConfirmation'\r\n\t| 'Optional'\r\n\t| 'SearchBoxPlaceholder'\r\n\t| 'XOutOfYStars'\r\n\t| 'XToYOfZ'\r\n\t| 'ModalLabel'\r\n\t| 'RequiredFields'\r\n\t| 'Status'\r\n\t| 'Version'\r\n\t| 'CreatedOn'\r\n\t| 'CreatedBy'\r\n\t| 'ModifiedOn'\r\n\t| 'ModifiedBy'\r\n\t| 'OpenStatusInformation'\r\n\t| 'CloseStatusInformation'\r\n\t| 'SearchFilter'\r\n\t| 'Pagination'\r\n\t| 'Previous'\r\n\t| 'Next'\r\n\t| 'ClearFilter';\r\n\r\n/**\r\n * Type that will hold all the localization keys\r\n */\r\nexport type LocalizerResourceKey =\r\n\t| LocalizerGlobalResourceKeys\r\n\t| LoginResourceKeys\r\n\t| ContactFormResourceKeys\r\n\t// #region Commerce\r\n\t| CommerceResourceKeys\r\n\t// #endregion\r\n\t| ResetPasswordResourceKeys\r\n\t| CreatePasswordResourceKeys\r\n\t| SubmitQuestionResourceKeys\r\n\t| ResetPasswordResourceKeys\r\n\t| CreatePasswordResourceKeys\r\n\t| MyAccountResourceKeys\r\n\t| LoginWith2faResourceKeys\r\n\t| LoginWithRecoveryCodeResourceKeys\r\n\t| AddressResourceKeys\r\n\t// #region TapeCase Customization\r\n\t| SubmitQuoteResourceKeys\r\n\t| TapeCaseRegistrationResourceKeys\r\n\t| CareersFormResourceKeys\r\n\t| FileUploadResourceKeys;\r\n// #endregion\r\n\r\n/**\r\n * Interface for the resources\r\n *\r\n * @export\r\n * @interface LocalizerResource\r\n */\r\ninterface LocalizerResource {\r\n\t[id: string]: string;\r\n}\r\n\r\n/**\r\n * Extends Window with a property that will hold the localizer resources\r\n *\r\n * @interface WindowWithResources\r\n * @extends {Window}\r\n */\r\nexport interface WindowWithResources extends Window {\r\n\t__ROC_LOCALIZER_RESOURCES__?: LocalizerResource[];\r\n}\r\n\r\n/**\r\n * Main object that will hold all the localized resources\r\n */\r\nconst LocalizerResources: LocalizerResource = {};\r\n\r\n/**\r\n * To prevent redundant logging\r\n */\r\nconst isAlreadyLogged: Record = {};\r\n\r\n/**\r\n * Initializer function that will populate the main localized resources object\r\n */\r\nfunction initializeLocalizerResources() {\r\n\tconst windowWithResources = window as WindowWithResources;\r\n\r\n\tif (\r\n\t\twindowWithResources &&\r\n\t\twindowWithResources.__ROC_LOCALIZER_RESOURCES__ &&\r\n\t\tArray.isArray(windowWithResources.__ROC_LOCALIZER_RESOURCES__)\r\n\t) {\r\n\t\twindowWithResources.__ROC_LOCALIZER_RESOURCES__.forEach((obj) => {\r\n\t\t\tfor (const key of Object.keys(obj)) {\r\n\t\t\t\tLocalizerResources[key] = obj[key];\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n}\r\n\r\n/**\r\n * Function that can be used to load the localized strings with support to parameter replacements\r\n *\r\n * @export\r\n * @param {string} key\r\n * @param {...string[]} replaceStrings\r\n * @returns\r\n */\r\nexport function Localizer(\r\n\tkey: TResourceKey,\r\n\t...replaceStrings: string[]\r\n) {\r\n\tif (Object.keys(LocalizerResources).length === 0) {\r\n\t\tinitializeLocalizerResources();\r\n\t}\r\n\r\n\tif (!LocalizerResources || !LocalizerResources[key]) {\r\n\t\t// if running in a test environment, just skip any warnings.\r\n\t\tif (process.env.NODE_ENV !== 'test') {\r\n\t\t\tif (!isAlreadyLogged[key]) {\r\n\t\t\t\tconsole.warn(key, 'Localizer Resource not found. Key will be used instead.');\r\n\t\t\t\tisAlreadyLogged[key] = true;\r\n\t\t\t}\r\n\t\t}\r\n\t\treturn key;\r\n\t}\r\n\r\n\tconst resource = LocalizerResources[key];\r\n\r\n\tif (!replaceStrings) {\r\n\t\treturn resource;\r\n\t}\r\n\r\n\treturn resource.replace(/{(\\d+)}/g, (match: string, index: number) => {\r\n\t\treturn replaceStrings[index] ? replaceStrings[index] : '';\r\n\t});\r\n}\r\n\r\n/**\r\n * Interface for the LocalizedSpan component\r\n *\r\n * @interface LocalizedSpanProps\r\n */\r\ninterface LocalizedSpanProps {\r\n\tresourceKey: LocalizerResourceKey;\r\n\targs?: string[];\r\n}\r\n\r\n/**\r\n * Component responsible for the initialization of the react app\r\n */\r\nexport function LocalizedSpan(props: LocalizedSpanProps) {\r\n\tconst { resourceKey, args = [] } = props;\r\n\tconst localizedString = Localizer(resourceKey, ...args);\r\n\r\n\treturn (\r\n\t\t\r\n\t);\r\n}\r\n","import React from 'react';\r\nimport { SVGProps } from './SVGProps';\r\nimport classnames from 'classnames';\r\n\r\n/**\r\n * Up chevron SVG\r\n *\r\n * @returns\r\n */\r\nfunction DownChevronSVG({ className, ...rest }: SVGProps) {\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\r\n\t);\r\n}\r\n\r\nexport default DownChevronSVG;\r\n","import React from 'react';\r\nimport { SVGProps } from './SVGProps';\r\nimport classnames from 'classnames';\r\n\r\n/**\r\n * Up chevron SVG\r\n *\r\n * @returns\r\n */\r\nfunction UpChevronSVG({ className, ...rest }: SVGProps) {\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\r\n\t);\r\n}\r\n\r\nexport default UpChevronSVG;\r\n","/**\r\n * Organizations ui components enum\r\n */\r\nexport enum OrganizationUIComponents {\r\n\t//#region orders\r\n\tDefaultOrganizationOrderDetails = 'DefaultOrganizationOrderDetails',\r\n\t//#endregion\r\n}\r\n","// source: https://developer.mozilla.org/en-US/docs/Web/API/CustomEvent/CustomEvent\r\n(function () {\r\n\tif (typeof window.CustomEvent === 'function') {\r\n\t\treturn false;\r\n\t}\r\n\r\n\tfunction CustomEvent(event, params) {\r\n\t\tparams = params || { bubbles: false, cancelable: false, detail: undefined };\r\n\t\t// eslint-disable-next-line\r\n\t\tvar evt = document.createEvent('CustomEvent');\r\n\t\tevt.initCustomEvent(event, params.bubbles, params.cancelable, params.detail);\r\n\t\treturn evt;\r\n\t}\r\n\r\n\tCustomEvent.prototype = window.Event.prototype;\r\n\r\n\twindow.CustomEvent = CustomEvent;\r\n})();\r\n","var api = require(\"!../../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\");\n var content = require(\"!!../../../../../node_modules/css-loader/dist/cjs.js!./styles.css\");\n\n content = content.__esModule ? content.default : content;\n\n if (typeof content === 'string') {\n content = [[module.id, content, '']];\n }\n\nvar options = {};\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = api(content, options);\n\n\n\nmodule.exports = content.locals || {};","import React from 'react';\r\nimport { SVGProps } from './SVGProps';\r\nimport classnames from 'classnames';\r\n\r\n/**\r\n * Map pin SVG\r\n *\r\n * @returns\r\n */\r\nfunction MapPinSVG({ className, ...rest }: SVGProps) {\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\r\n\t);\r\n}\r\n\r\nexport default MapPinSVG;\r\n","// Imports\nvar ___CSS_LOADER_API_IMPORT___ = require(\"../../../../../node_modules/css-loader/dist/runtime/api.js\");\nexports = ___CSS_LOADER_API_IMPORT___(false);\n// Module\nexports.push([module.id, \"/* This code is subject to LICENSE in root of this repository */\\n\\n/* Used to detect in JavaScript if apps have loaded styles or not. */\\n:root {\\n --reach-dialog: 1;\\n}\\n\\n[data-reach-dialog-overlay] {\\n background: hsla(0, 0%, 0%, 0.33);\\n position: fixed;\\n top: 0;\\n right: 0;\\n bottom: 0;\\n left: 0;\\n overflow: auto;\\n}\\n\\n[data-reach-dialog-content] {\\n width: 50vw;\\n margin: 10vh auto;\\n background: white;\\n padding: 2rem;\\n outline: none;\\n}\\n\", \"\"]);\n// Exports\nmodule.exports = exports;\n","import React from 'react';\r\nimport UpChevronSVG from 'shared/components/svg/LeftChevronSVG';\r\nimport { Localizer } from 'services/Localizer';\r\n\r\n/**\r\n * Represents one breadcrumb item in a list of breadcrumb items that defines the breadcrumb trail\r\n */\r\nexport interface BreadcrumbItem {\r\n\tlabel: string;\r\n\turl?: string;\r\n}\r\n\r\ninterface BreadcrumbProps {\r\n\tbreadcrumbPath?: BreadcrumbItem[];\r\n\tbackToPage?: BreadcrumbItem;\r\n\trenderPathLink?: (item: BreadcrumbItem) => React.ReactNode;\r\n}\r\n\r\n/**\r\n * Renders a set of links that represent breadcrumbs for the current location.]\r\n * It can optionally render a \"back to page\" link when this is set in sessionStorage.\r\n */\r\nexport default function Breadcrumbs(props: BreadcrumbProps) {\r\n\tconst {\r\n\t\tbreadcrumbPath,\r\n\t\tbackToPage,\r\n\t\trenderPathLink = (item) => (\r\n\t\t\t\r\n\t\t\t\t{item.label}\r\n\t\t\t\r\n\t\t),\r\n\t} = props;\r\n\r\n\treturn (\r\n\t\t
\r\n\t\t\t{backToPage && backToPage.url && window.history.length > 2 ? (\r\n\t\t\t\t<>\r\n\t\t\t\t\t window.history.back()}\r\n\t\t\t\t\t\tclassName=\"roc-breadcrumbs-bar__back-link roc-btn-link\"\r\n\t\t\t\t\t>\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t{backToPage.label}\r\n\t\t\t\t\t\r\n\t\t\t\t\t|\r\n\t\t\t\t\r\n\t\t\t) : null}\r\n\t\t\t{breadcrumbPath ? (\r\n\t\t\t\t<>\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{Localizer('Home')}\r\n\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t{/* #region Tapecase */}/{/* #region Tapecase */}\r\n\t\t\t\t\t
\r\n\t\t\t\t\t{breadcrumbPath.map((entry, i) => (\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{renderPathLink(entry)}\r\n\t\t\t\t\t\t\t{i + 1 < breadcrumbPath.length ? (\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t{/* #region Tapecase */}/{/* #region Tapecase */}\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t) : null}\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t))}\r\n\t\t\t\t\r\n\t\t\t) : null}\r\n\t\t
\r\n\t);\r\n}\r\n","import classnames from 'classnames';\r\nimport React from 'react';\r\nimport { SVGProps } from '../SVGProps';\r\n\r\n/**\r\n * Organization Simple SVG\r\n *\r\n * @returns\r\n */\r\nfunction OrganizationSimpleSVG({ className, ...rest }: SVGProps) {\r\n\treturn (\r\n\t\t\r\n\t\t\t
\r\n\t\t\r\n\t);\r\n}\r\n\r\nexport default OrganizationSimpleSVG;\r\n","import React from 'react';\r\nimport { SVGProps } from './SVGProps';\r\nimport classnames from 'classnames';\r\n\r\n/**\r\n * Clock SVG\r\n *\r\n * @returns\r\n */\r\nfunction ClockSVG({ className, ...rest }: SVGProps) {\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\r\n\t);\r\n}\r\n\r\nexport default ClockSVG;\r\n","var map = {\n\t\"./DefaultOrganizationOrderDetails\": [\n\t\t211,\n\t\t9,\n\t\t11,\n\t\t19\n\t],\n\t\"./DefaultOrganizationOrderDetails.tsx\": [\n\t\t211,\n\t\t9,\n\t\t11,\n\t\t19\n\t],\n\t\"./OrganizationOrderListing\": [\n\t\t208,\n\t\t9,\n\t\t21\n\t],\n\t\"./OrganizationOrderListing.tsx\": [\n\t\t208,\n\t\t9,\n\t\t21\n\t],\n\t\"./OrganizationOrders\": [\n\t\t143,\n\t\t9,\n\t\t3,\n\t\t4,\n\t\t5,\n\t\t10,\n\t\t15\n\t],\n\t\"./OrganizationOrders.tsx\": [\n\t\t143,\n\t\t9,\n\t\t3,\n\t\t4,\n\t\t5,\n\t\t10,\n\t\t15\n\t],\n\t\"./RocOrganizationOrderDetails\": [\n\t\t210,\n\t\t9,\n\t\t11\n\t],\n\t\"./RocOrganizationOrderDetails.tsx\": [\n\t\t210,\n\t\t9,\n\t\t11\n\t],\n\t\"./types\": [\n\t\t212,\n\t\t7,\n\t\t22\n\t],\n\t\"./types.ts\": [\n\t\t212,\n\t\t7,\n\t\t22\n\t],\n\t\"./useOrganizationOrderDetails\": [\n\t\t209,\n\t\t9,\n\t\t20\n\t],\n\t\"./useOrganizationOrderDetails.ts\": [\n\t\t209,\n\t\t9,\n\t\t20\n\t]\n};\nfunction webpackAsyncContext(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\treturn Promise.resolve().then(function() {\n\t\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\t\te.code = 'MODULE_NOT_FOUND';\n\t\t\tthrow e;\n\t\t});\n\t}\n\n\tvar ids = map[req], id = ids[0];\n\treturn Promise.all(ids.slice(2).map(__webpack_require__.e)).then(function() {\n\t\treturn __webpack_require__.t(id, ids[1])\n\t});\n}\nwebpackAsyncContext.keys = function webpackAsyncContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackAsyncContext.id = 172;\nmodule.exports = webpackAsyncContext;","export const GenerateUniqueID = (uniqueString: string) => {\r\n\treturn uniqueString + '-' + Math.random().toString(36).substr(2, 9);\r\n};\r\n\r\nexport function slugify(text) {\r\n\treturn text\r\n\t\t.toString()\r\n\t\t.toLowerCase()\r\n\t\t.replace(/\\s+/g, '-') // Replace spaces with -\r\n\t\t.replace(/[^\\w\\-]+/g, '') // Remove all non-word chars\r\n\t\t.replace(/\\-\\-+/g, '-') // Replace multiple - with single -\r\n\t\t.replace(/^-+/, '') // Trim - from start of text\r\n\t\t.replace(/-+$/, ''); // Trim - from end of text\r\n}\r\n","import React from 'react';\r\nimport { SVGProps } from './SVGProps';\r\n\r\n/**\r\n * Shopping Cart SVG\r\n *\r\n * @returns\r\n */\r\nfunction ShoppingCartSVG({ className, ...rest }: SVGProps) {\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\r\n\t);\r\n}\r\n\r\nShoppingCartSVG.defaultProps = { className: '' };\r\n\r\nexport default ShoppingCartSVG;\r\n","import React, { useEffect, useRef } from 'react';\r\nimport { WithTestId } from 'shared-client/types/test';\r\nimport RocPopover, { RocPopoverSize } from 'shared/components/RocPopover';\r\nimport DownChevronSVG from 'shared/components/svg/DownChevronSVG';\r\nimport UpChevronSVG from 'shared/components/svg/UpChevronSVG';\r\nimport UserSVG from 'shared/components/svg/UserSVG';\r\nimport { toKebabCase } from 'util/StringUtil';\r\nimport { slugify } from 'features/setup/Utils';\r\nimport classnames from 'classnames';\r\nimport type { Position } from '@reach/popover';\r\nimport Spinner from 'shared/components/Spinner';\r\n\r\n// #region Commerce\r\nimport ShoppingCartSVG from 'shared/components/svg/ShoppingCartSVG';\r\nimport { UserData } from '../../services/UserData';\r\nimport { Localizer } from 'services/Localizer';\r\n// #endregion\r\n\r\ninterface HeaderUtilNavProps {\r\n\tchildren: React.ReactNode;\r\n}\r\n\r\n/**\r\n * Simple component wrapper for header util nav.\r\n *\r\n * @export\r\n * @param {HeaderUtilNavProps} props\r\n * @returns\r\n */\r\nexport default function HeaderUtilNav(props: HeaderUtilNavProps) {\r\n\treturn (\r\n\t\t
    \r\n\t\t\t{props.children}\r\n\t\t
\r\n\t);\r\n}\r\n\r\ninterface HeaderUtilNavButtonProps {\r\n\tonClick: () => void;\r\n\ttext: string;\r\n\ticon?: React.ReactNode;\r\n}\r\n\r\n/**\r\n * Reusable component for buttons inside header util nav.\r\n *\r\n * @export\r\n * @param {HeaderUtilNavButtonProps} props\r\n * @returns\r\n */\r\nexport function HeaderUtilNavItemButton(props: HeaderUtilNavButtonProps) {\r\n\tconst { onClick, text, icon } = props;\r\n\treturn (\r\n\t\t
  • \r\n\t\t\t\r\n\t\t\t\t{icon}\r\n\t\t\t\t{text}\r\n\t\t\t\r\n\t\t
  • \r\n\t);\r\n}\r\n\r\ninterface HeaderUtilNavLinkProps extends WithTestId {\r\n\tpath: string;\r\n\ttext: string;\r\n\ticon?: React.ReactNode;\r\n}\r\n\r\n/**\r\n * Reusable component for links inside header util nav.\r\n *\r\n * @export\r\n * @param {HeaderUtilNavLinkProps} props\r\n * @returns\r\n */\r\nexport function HeaderUtilNavItemLink(props: HeaderUtilNavLinkProps) {\r\n\tconst { path, text, icon = , testId } = props;\r\n\treturn (\r\n\t\t
  • \r\n\t\t\t\r\n\t\t\t\t{icon}\r\n\t\t\t\t{text}\r\n\t\t\t\r\n\t\t
  • \r\n\t);\r\n}\r\n\r\n// #region Commerce\r\ninterface HeaderUtilNavItemCartProps {\r\n\tuserData: UserData | null;\r\n}\r\n\r\n/**\r\n * Component for rendering the header cart icon\r\n *\r\n * @export\r\n * @returns\r\n */\r\nexport function HeaderUtilNavItemCart(props: HeaderUtilNavItemCartProps) {\r\n\tconst { userData } = props;\r\n\r\n\treturn (\r\n\t\t
  • \r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t{Localizer('Cart')}\r\n\t\t\t\t\r\n\t\t\t\t\t{userData && userData.cartSummary ? userData.cartSummary.items.toString() : '0'}\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t
  • \r\n\t);\r\n}\r\n// #endregion\r\n\r\ninterface HeaderUtilNavPopoverProps extends WithTestId {\r\n\ttext: string;\r\n\tisOpen: boolean;\r\n\topenPopover: () => void;\r\n\tclosePopover: () => void;\r\n\ticon?: React.ReactNode;\r\n\ttitle?: string;\r\n\tsize?: RocPopoverSize;\r\n\tchildren: React.ReactNode;\r\n\tclassName?: string;\r\n}\r\n\r\n/**\r\n * Reusable component for links inside header util nav.\r\n *\r\n * @export\r\n * @param {HeaderUtilNavPopoverProps} props\r\n * @returns\r\n */\r\nexport function HeaderUtilNavItemPopover(props: HeaderUtilNavPopoverProps) {\r\n\tconst triggerRef = useRef(null);\r\n\tconst popoverWrapperRef = useRef(null);\r\n\tconst popoverMatchWidthRef = useRef(null);\r\n\r\n\tconst {\r\n\t\tisOpen,\r\n\t\topenPopover,\r\n\t\tclosePopover,\r\n\t\ttext,\r\n\t\ticon = ,\r\n\t\tchildren,\r\n\t\ttitle,\r\n\t\tsize,\r\n\t\tclassName,\r\n\t} = props;\r\n\r\n\tuseEffect(() => {\r\n\t\timport('@reach/popover').then((module) => {\r\n\t\t\tpopoverMatchWidthRef.current = module.positionMatchWidth;\r\n\t\t});\r\n\t}, []);\r\n\r\n\tuseEffect(() => {\r\n\t\tdocument.addEventListener('mousedown', handleDocumentClick, false);\r\n\r\n\t\treturn () => {\r\n\t\t\tdocument.removeEventListener('mousedown', handleDocumentClick, false);\r\n\t\t};\r\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\r\n\t}, []);\r\n\r\n\t/**\r\n\t * If you click outside the popoover when its open, close the popover.\r\n\t *\r\n\t * @param {*} e\r\n\t * @returns\r\n\t */\r\n\tfunction handleDocumentClick(e) {\r\n\t\tif (popoverWrapperRef.current === null || triggerRef.current === null) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\t// If click is inside popover or trigger, return.\r\n\t\tif (\r\n\t\t\ttriggerRef.current === e.target ||\r\n\t\t\ttriggerRef.current.contains(e.target) ||\r\n\t\t\tpopoverWrapperRef.current === e.target ||\r\n\t\t\tpopoverWrapperRef.current.contains(e.target)\r\n\t\t) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tclosePopover();\r\n\t}\r\n\r\n\t/**\r\n\t * Handles button click and either opens or closes the popover.\r\n\t *\r\n\t */\r\n\tfunction handleClick() {\r\n\t\tif (isOpen) {\r\n\t\t\tclosePopover();\r\n\t\t} else {\r\n\t\t\topenPopover();\r\n\t\t}\r\n\t}\r\n\r\n\tconst parentClass = `roc-utility-nav__item--${className}`;\r\n\tconst buttonClass = `roc-utility-nav__item-link--${className}`;\r\n\tconst textClass = `roc-utlity-nav__menu-item-text--${className}`;\r\n\r\n\treturn (\r\n\t\t}>\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t{icon}\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{text}\r\n\t\t\t\t\t\r\n\r\n\t\t\t\t\t{isOpen ? (\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t) : (\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t)}\r\n\t\t\t\t\r\n\r\n\t\t\t\t{isOpen && popoverMatchWidthRef.current && (\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{children}\r\n\t\t\t\t\t\r\n\t\t\t\t)}\r\n\t\t\t\r\n\t\t\r\n\t);\r\n}\r\n","import React from 'react';\r\nimport useDelayedDisplay from 'shared/hooks/useDelayedDisplay';\r\nimport classnames from 'classnames';\r\n\r\ntype SpinnerAlignment = 'left' | 'right' | 'none';\r\n\r\ninterface SpinnerProps {\r\n\tlight?: boolean;\r\n\twaitMs?: number;\r\n\talign?: SpinnerAlignment;\r\n\tblock?: boolean;\r\n\tparentCentered?: boolean;\r\n}\r\n\r\n/**\r\n * Reusable roc-spinner component with color, alignment and wait time props.\r\n *\r\n * @export\r\n * @param {SpinnerProps} { light = false, waitMs = 200, align = 'right', block }\r\n * @returns\r\n */\r\nexport default function Spinner({\r\n\tlight = false,\r\n\twaitMs = 200,\r\n\talign = 'right',\r\n\tblock,\r\n\tparentCentered = false,\r\n}: SpinnerProps) {\r\n\tconst display = useDelayedDisplay(waitMs);\r\n\r\n\tif (!display) {\r\n\t\treturn null;\r\n\t}\r\n\r\n\tconst spinner = (\r\n\t\t\r\n\t\t\t
    \r\n\t\t\t\t
    \r\n\t\t\t\t
    \r\n\t\t\t
    \r\n\t\t
    \r\n\t);\r\n\r\n\tif (parentCentered) {\r\n\t\treturn
    {spinner}
    ;\r\n\t}\r\n\r\n\treturn spinner;\r\n}\r\n","import React from 'react';\r\nimport { SVGProps } from './SVGProps';\r\nimport classnames from 'classnames';\r\n\r\n/**\r\n * Credit Card Simple SVG\r\n *\r\n * @returns\r\n */\r\nfunction CreditCardSimpleSVG({ className, ...rest }: SVGProps) {\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\r\n\t);\r\n}\r\n\r\nexport default CreditCardSimpleSVG;\r\n","import React from 'react';\r\nimport { SVGProps } from '../SVGProps';\r\nimport classnames from 'classnames';\r\n\r\n/**\r\n * Users SVG\r\n *\r\n * @returns\r\n */\r\nfunction UsersSVG({ className, ...rest }: SVGProps) {\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\r\n\t);\r\n}\r\n\r\nexport default UsersSVG;\r\n","import React from 'react';\r\nimport { SVGProps } from './SVGProps';\r\nimport classnames from 'classnames';\r\n\r\n/**\r\n * Lock Simple SVG\r\n *\r\n * @returns\r\n */\r\nfunction LockSimpleSVG({ className, ...rest }: SVGProps) {\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\r\n\t);\r\n}\r\n\r\nexport default LockSimpleSVG;\r\n","import React from 'react';\r\nimport { SVGProps } from './SVGProps';\r\nimport classnames from 'classnames';\r\n\r\n/**\r\n * User SVG\r\n *\r\n * @returns\r\n */\r\nfunction UserSVG({ className, ...rest }: SVGProps) {\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\r\n\t);\r\n}\r\n\r\nexport default UserSVG;\r\n","import axios, { AxiosInstance, AxiosResponse, AxiosError } from 'axios';\r\nimport AccountUrls from 'shared/util/AccountUrls';\r\nimport { getCsrfToken } from './UserData';\r\n\r\n/**\r\n * Helper that creates an instance of Axios to be used throughout the client application\r\n * and adds a default X-Requested-With header to all requests.\r\n *\r\n */\r\nconst AxiosHelper: AxiosInstance = axios.create();\r\nAxiosHelper.defaults.headers.common['X-Requested-With'] = 'XMLHttpRequest';\r\n\r\n// Add CSRF tokens to all commands that are not GET, HEAD, or OPTIONS\r\nAxiosHelper.interceptors.request.use(async (config) => {\r\n\tif (\r\n\t\tconfig.method?.toLowerCase() !== 'get' &&\r\n\t\tconfig.method?.toLowerCase() !== 'head' &&\r\n\t\tconfig.method?.toLowerCase() !== 'options'\r\n\t) {\r\n\t\tconst csrfToken = await getCsrfToken();\r\n\t\tconfig.headers = { RequestVerificationToken: csrfToken, ...config.headers };\r\n\t}\r\n\treturn config;\r\n});\r\n\r\nexport default AxiosHelper;\r\n\r\n// eslint-disable-next-line no-unused-vars\r\nexport const addUnauthorizedAccessInterceptor = (history) => {\r\n\t// this allows us to act when any request going through axios succeeds or fails.\r\n\tAxiosHelper.interceptors.response.use(\r\n\t\t(response: AxiosResponse) => {\r\n\t\t\treturn response;\r\n\t\t},\r\n\t\t(error: AxiosError) => {\r\n\t\t\tif (error.response && error.response.status === 401) {\r\n\t\t\t\twindow.location.replace(\r\n\t\t\t\t\t`${AccountUrls.Login}?ReturnUrl=${encodeURIComponent(window.location.pathname)}`,\r\n\t\t\t\t);\r\n\t\t\t}\r\n\r\n\t\t\treturn Promise.reject(error);\r\n\t\t},\r\n\t);\r\n};\r\n","import React from 'react';\r\nimport { SVGProps } from './SVGProps';\r\nimport classnames from 'classnames';\r\n\r\n/**\r\n * Menu SVG\r\n *\r\n * @returns\r\n */\r\nfunction MenuSVG({ className, ...rest }: SVGProps) {\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\r\n\t);\r\n}\r\n\r\nexport default MenuSVG;\r\n","import React from 'react';\r\nimport { SVGProps } from './SVGProps';\r\nimport classnames from 'classnames';\r\n\r\n/**\r\n * Bookmark SVG\r\n *\r\n * @returns\r\n */\r\nfunction BookmarkSVG({ className, ...rest }: SVGProps) {\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\r\n\t);\r\n}\r\n\r\nexport default BookmarkSVG;\r\n","import 'intersection-observer';\r\n\r\nif (document.readyState !== 'loading') {\r\n\tlazyLoadImages();\r\n} else {\r\n\tdocument.addEventListener('DOMContentLoaded', function () {\r\n\t\tlazyLoadImages();\r\n\t});\r\n}\r\n\r\n/**\r\n * Initializes lazy loading for image assets.\r\n * Example usage:\r\n * \"\"\r\n */\r\nexport function lazyLoadImages() {\r\n\t// Get our lazy-loaded images\r\n\tconst lazyImages = [].slice.call(document.querySelectorAll('.roc-lazy-image'));\r\n\r\n\tconst defaultDelay = 10;\r\n\t// Create new observer object\r\n\tconst lazyImageObserver = new IntersectionObserver(function (entries) {\r\n\t\t// Loop through IntersectionObserverEntry objects\r\n\t\tentries.forEach(function (entry) {\r\n\t\t\t// Do these if the target intersects with the root\r\n\t\t\tif (entry.isIntersecting) {\r\n\t\t\t\tconst lazyImage = entry.target as HTMLImageElement;\r\n\r\n\t\t\t\tif (lazyImage.dataset.src) {\r\n\t\t\t\t\tlazyImage.src = lazyImage.dataset.src;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tconst attributeDelay = Number(lazyImage.getAttribute('data-roc-lazy-delay')) || defaultDelay;\r\n\t\t\t\tlazyImage.classList.remove('roc-lazy-image--inactive');\r\n\r\n\t\t\t\tsetTimeout(() => {\r\n\t\t\t\t\tlazyImage.classList.add('roc-lazy-image--loaded');\r\n\t\t\t\t\tlazyImageObserver.unobserve(lazyImage);\r\n\t\t\t\t}, attributeDelay);\r\n\t\t\t}\r\n\t\t});\r\n\t});\r\n\r\n\t// Loop through and observe each image\r\n\tlazyImages.forEach(function (lazyImage) {\r\n\t\tlazyImageObserver.observe(lazyImage);\r\n\t});\r\n}\r\n\r\ninterface LazyElementsArgs {\r\n\t/**\r\n\t * The elements to observe\r\n\t */\r\n\telements: HTMLElement[];\r\n\r\n\t/**\r\n\t * The callback function called when the intersection observer fires.\r\n\t */\r\n\tcallback: (isIntersecting: boolean) => void;\r\n\r\n\t/**\r\n\t * The amount of time to delay before calling the callback. Defaults to 0.\r\n\t */\r\n\tdelay?: number;\r\n\r\n\t/**\r\n\t * Stop listening to changes once the element has been in the viewport.\r\n\t */\r\n\tstopAfterIntersecting?: boolean;\r\n}\r\n\r\n/**\r\n * Helper to receive a callback when an element becomes visible in a viewport, or when it leaves the viewport.\r\n * This is useful if you need to do a vanilla JS implementation (without React).\r\n */\r\nexport function lazyElements({ elements, callback, delay = 0, stopAfterIntersecting = true }: LazyElementsArgs) {\r\n\tconst lazyElementObserver = new IntersectionObserver(function (entries) {\r\n\t\tentries.forEach((entry) => {\r\n\t\t\tsetTimeout(() => {\r\n\t\t\t\tcallback(entry.isIntersecting);\r\n\t\t\t}, delay);\r\n\r\n\t\t\tif (stopAfterIntersecting && entry.isIntersecting) {\r\n\t\t\t\tlazyElementObserver.unobserve(entry.target);\r\n\t\t\t}\r\n\t\t});\r\n\t});\r\n\r\n\telements.forEach((lazyElement) => {\r\n\t\tlazyElementObserver.observe(lazyElement);\r\n\t});\r\n}\r\n","import Axios, { AxiosError, CancelTokenSource } from 'axios';\r\nimport { UPDATE_USER_DEFAULT_ORGANIZATION_URL } from 'features/commerce/organization/routes';\r\nimport React, { useEffect, useState } from 'react';\r\nimport { useHistory, withRouter } from 'react-router';\r\nimport AxiosHelper from 'services/AxiosHelper';\r\nimport { Localizer } from 'services/Localizer';\r\nimport { getUserData, OrganizationDto, UserData } from 'services/UserData';\r\nimport OrganizationSimpleSVG from 'shared/components/svg/commerce/OrganizationSimpleSVG';\r\nimport InlineAlert from 'shared/edit/InlineAlert';\r\nimport AccountUrls from 'shared/util/AccountUrls';\r\nimport { toKebabCase } from 'util/StringUtil';\r\n\r\n/**\r\n * Function to update current user default organization.\r\n */\r\nexport async function updateUserDefaultOrganization(organizationId?: string) {\r\n\tconst requestToken: CancelTokenSource = Axios.CancelToken.source();\r\n\tawait AxiosHelper.post(\r\n\t\t`/ajax${UPDATE_USER_DEFAULT_ORGANIZATION_URL}`,\r\n\t\t{\r\n\t\t\torganizationId: organizationId,\r\n\t\t},\r\n\t\t{\r\n\t\t\tcancelToken: requestToken.token,\r\n\t\t},\r\n\t);\r\n}\r\n\r\n/**\r\n * Component displayed to user to select the organization that he will be shopping for.\r\n */\r\nfunction OrganizationSelector() {\r\n\tconst [errorMessage, setErrorMessage] = useState();\r\n\tconst [userData, setUserData] = useState();\r\n\tconst history = useHistory();\r\n\r\n\tuseEffect(() => {\r\n\t\t(async () => {\r\n\t\t\ttry {\r\n\t\t\t\tconst data = (await getUserData()).data;\r\n\t\t\t\tsetUserData(data);\r\n\t\t\t} catch (error) {\r\n\t\t\t\tconsole.error('Unable to load user data.', error);\r\n\t\t\t}\r\n\t\t})();\r\n\t}, []);\r\n\r\n\t// if a user tries accessing the organization selector and the server middeleware\r\n\t// has not been triggered and the user has not multiple organizations\r\n\t// we need to redirect him to my-account page\r\n\tuseEffect(() => {\r\n\t\tif (\r\n\t\t\tuserData &&\r\n\t\t\tuserData.summary &&\r\n\t\t\t(userData.summary?.userOrganizations == null ||\r\n\t\t\t\tuserData.summary?.organization ||\r\n\t\t\t\tuserData.summary?.userOrganizations.length == 1) &&\r\n\t\t\thistory.location.pathname.startsWith(AccountUrls.OrganizationSelector)\r\n\t\t) {\r\n\t\t\twindow.location.href = AccountUrls.BaseUrl;\r\n\t\t}\r\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\r\n\t}, [userData]);\r\n\r\n\t/**\r\n\t * set the current user default organization\r\n\t */\r\n\tconst setUserDefaultOrganization = async (organizationId?: string): Promise => {\r\n\t\ttry {\r\n\t\t\tawait updateUserDefaultOrganization(organizationId);\r\n\t\t\twindow.location.href = AccountUrls.BaseUrl;\r\n\t\t} catch (error) {\r\n\t\t\tif (Axios.isCancel(error)) {\r\n\t\t\t\t// if the component was unmounted, there's nothing to do\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t\tconst axiosError = error as AxiosError;\r\n\r\n\t\t\tif (axiosError && axiosError.response && axiosError.response.data && axiosError.response.data.message) {\r\n\t\t\t\tsetErrorMessage(axiosError.response.data.message);\r\n\t\t\t}\r\n\t\t}\r\n\t};\r\n\r\n\tif (!userData?.summary?.userOrganizations) {\r\n\t\treturn null;\r\n\t}\r\n\r\n\treturn (\r\n\t\t<>\r\n\t\t\t

    \r\n\t\t\t\t{' '}\r\n\t\t\t\t{Localizer('OrganizationSelectorTitle')}\r\n\t\t\t

    \r\n\r\n\t\t\t
    \r\n\t\t\t\t
    \r\n\t\t\t\t\t{errorMessage ? : null}\r\n\r\n\t\t\t\t\t\r\n\t\t\t\t
    \r\n\t\t\t
    \r\n\t\t\r\n\t);\r\n}\r\n\r\n/**\r\n * Default organization selector component props.\r\n */\r\ninterface DefaultOrganizationSelectorProps {\r\n\t/**\r\n\t * Current user organizations list.\r\n\t */\r\n\torganizations: OrganizationDto[];\r\n\r\n\t/**\r\n\t * Current selected organization.\r\n\t */\r\n\tcurrentOrganizationId?: string;\r\n\r\n\t/**\r\n\t * Sets the user default organization.\r\n\t */\r\n\tselectDefaultOrganization: (defaultOrganization: string) => Promise;\r\n}\r\n\r\n/**\r\n * Component displayed to user to select default organization.\r\n */\r\nfunction DefaultOrganizationSelector(props: DefaultOrganizationSelectorProps) {\r\n\tconst { currentOrganizationId, organizations, selectDefaultOrganization } = props;\r\n\tconst [selectedDefaultOrganization, setSelectedDefaultOrganization] = useState();\r\n\r\n\tuseEffect(() => {\r\n\t\tconst defaultOrganization = organizations?.find((org) => org.value === currentOrganizationId);\r\n\t\tsetSelectedDefaultOrganization(defaultOrganization ?? organizations[0]);\r\n\t}, [organizations, currentOrganizationId]);\r\n\r\n\treturn (\r\n\t\t<>\r\n\t\t\t
    \r\n\t\t\t\t{Localizer('OrganizationSelectorText')}\r\n\t\t\t
    \r\n\t\t\t
    \r\n\t\t\t\t
    \r\n\t\t\t\t\t{organizations.map((organization, index) => (\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t))}\r\n\t\t\t\t
    \r\n\t\t\t
    \r\n\t\t\t
    \r\n\t\t\t\t
    \r\n\t\t\t\t\t {\r\n\t\t\t\t\t\t\tselectDefaultOrganization(selectedDefaultOrganization?.value ?? organizations[0].value);\r\n\t\t\t\t\t\t}}\r\n\t\t\t\t\t\tclassName=\"roc-btn roc-manage-layout__actions-item\"\r\n\t\t\t\t\t>\r\n\t\t\t\t\t\t{Localizer('Submit')}\r\n\t\t\t\t\t\r\n\t\t\t\t
    \r\n\t\t\t
    \r\n\t\t\r\n\t);\r\n}\r\n\r\n/**\r\n * Single organization selector option props.\r\n */\r\ninterface OrganizationSelectorOptionProps {\r\n\t/**\r\n\t * The organization that we will show an option for.\r\n\t */\r\n\torganization: OrganizationDto;\r\n\r\n\t/**\r\n\t * The function to updated the selected organization.\r\n\t */\r\n\tsetSelectedOrganizationOption: (organization: OrganizationDto) => void;\r\n\r\n\t/**\r\n\t * The currently seleted organization.\r\n\t */\r\n\tselectedOrganization?: OrganizationDto;\r\n\r\n\t/**\r\n\t * The user current default organization id.\r\n\t */\r\n\tcurrentOrganizationId?: string;\r\n\r\n\t/**\r\n\t * unique key for each option.\r\n\t */\r\n\tindex?: number;\r\n}\r\n\r\n/**\r\n * Markup for individual organization selector option.\r\n */\r\nfunction OrganizationSelectorOption(props: OrganizationSelectorOptionProps) {\r\n\tconst { organization, setSelectedOrganizationOption, selectedOrganization, currentOrganizationId, index } = props;\r\n\r\n\tconst onRadioButtonChanged = () => {\r\n\t\tsetSelectedOrganizationOption(organization);\r\n\t};\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t{organization.label}{' '}\r\n\t\t\t\t\t{organization.value == currentOrganizationId ? '( ' + Localizer('CurrentText') + ' )' : null}\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t);\r\n}\r\n\r\nexport default withRouter(OrganizationSelector);\r\n","import React from 'react';\r\nimport { SVGProps } from './SVGProps';\r\n\r\n/**\r\n * Shopping Cart Plus SVG\r\n *\r\n * @returns\r\n */\r\nfunction ShoppingCartPlusSVG({ className, ...rest }: SVGProps) {\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\r\n\t);\r\n}\r\n\r\nShoppingCartPlusSVG.defaultProps = { className: '' };\r\n\r\nexport default ShoppingCartPlusSVG;\r\n","import React from 'react';\r\nimport { SVGProps } from './SVGProps';\r\n\r\n/**\r\n * Shopping List SVG\r\n *\r\n * @returns\r\n */\r\nfunction ShoppingListSVG({ className, ...rest }: SVGProps) {\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t);\r\n}\r\n\r\nShoppingListSVG.defaultProps = { className: '' };\r\n\r\nexport default ShoppingListSVG;\r\n","import React, { useState, useEffect } from 'react';\r\nimport type PopoverType from '@reach/popover';\r\nimport classnames from 'classnames';\r\nimport type { Position } from '@reach/popover';\r\nimport Spinner from './Spinner';\r\n\r\nconst Popover = React.lazy(() => import('@reach/popover'));\r\n\r\nexport type RocPopoverSize = 'xs' | 'sm' | 'md' | 'lg';\r\n\r\ninterface RocPopoverProps {\r\n\tinnerRef: React.MutableRefObject;\r\n\ttargetRef: React.MutableRefObject;\r\n\tposition: Position;\r\n\ttitle?: string;\r\n\tsize?: RocPopoverSize;\r\n\tchildren: React.ReactNode;\r\n\tclassName?: string;\r\n}\r\n\r\n/**\r\n * Reusable popover component for displaying a ReachUI popover with sizing options.\r\n *\r\n * @export\r\n * @param {RocPopoverProps} props\r\n * @returns\r\n */\r\nexport default function RocPopover(props: RocPopoverProps) {\r\n\tconst { innerRef, targetRef, position, title, size = 'sm', children, className = '' } = props;\r\n\tconst [space, setSpace] = useState(0);\r\n\r\n\tuseEffect(() => {\r\n\t\tif (!targetRef || !targetRef.current) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tsetSpace(window.innerHeight - targetRef.current.getBoundingClientRect().bottom);\r\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\r\n\t}, []);\r\n\r\n\treturn (\r\n\t\t}>\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t{title ?

    {title}

    : null}\r\n\t\t\t\t\t
    {children}
    \r\n\t\t\t\t
    \r\n\t\t\t\r\n\t\t\r\n\t);\r\n}\r\n","import React from 'react';\r\nimport { SVGProps } from './SVGProps';\r\nimport classnames from 'classnames';\r\n\r\n/**\r\n * Cart Down Arrow SVG Icon\r\n *\r\n * @returns\r\n */\r\nfunction CartDownArrowSVG({ className, ...rest }: SVGProps) {\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\r\n\t);\r\n}\r\n\r\nexport default CartDownArrowSVG;\r\n","import type PreHeader from 'features/pre-header/PreHeader';\r\nimport React, { Suspense } from 'react';\r\nimport { initReactApp } from 'shared/util/ApplicationInit';\r\nconst LazyPreHeader = React.lazy(\r\n\t() => import(/* webpackChunkName: \"pre-header\" */ 'features/pre-header/PreHeader'),\r\n);\r\n\r\n/**\r\n * Renders impersonation header in the roc-pre-header div\r\n */\r\nexport default function RenderImpersonationHeader() {\r\n\treturn initReactApp(\r\n\t\t() => (\r\n\t\t\tLoading Impersonation Controls...}>\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t),\r\n\t\t'roc-pre-header',\r\n\t)();\r\n}\r\n","import React from 'react';\r\nimport classnames from 'classnames';\r\nimport { Localizer } from 'services/Localizer';\r\nimport { AxiosError } from 'axios';\r\nimport XSVG from 'shared/components/svg/XSVG';\r\n\r\ntype Theme = 'danger' | 'warning' | 'info' | 'success';\r\n\r\nexport interface ErrorAlertProps {\r\n\t/**\r\n\t * The title of the error message such as \"Uh Oh!\" or \"An Unexpected Error has Occurred!\"\r\n\t */\r\n\ttitle: string;\r\n\r\n\t/**\r\n\t * The error message to display if an error object doesn't have a more appropriate message.\r\n\t */\r\n\tmessage: React.ReactNode | string;\r\n\r\n\tchildren?: any;\r\n\r\n\ttheme?: Theme;\r\n\r\n\tisTitleOnOwnRow?: boolean;\r\n\r\n\t/** The error responsible for this message. */\r\n\terror: AxiosError | Error | null;\r\n\r\n\t/**\r\n\t * Method from parent that handles collapse state.\r\n\t */\r\n\tonCollapse?: (collased: boolean) => void;\r\n\r\n\t/**\r\n\t * Controlled collapse state from parent.\r\n\t */\r\n\tisCollapsed?: boolean;\r\n}\r\n\r\n/**\r\n * Reusable Error Alert Component.\r\n */\r\nexport default function InlineAlert(props: ErrorAlertProps) {\r\n\tconst {\r\n\t\ttitle = InlineAlert.defaultProps.title,\r\n\t\tchildren,\r\n\t\ttheme = 'danger',\r\n\t\tisTitleOnOwnRow = false,\r\n\t\terror = InlineAlert.defaultProps.error,\r\n\t\tisCollapsed = false,\r\n\t\tonCollapse,\r\n\t} = props;\r\n\r\n\tlet { message = InlineAlert.defaultProps.message } = props;\r\n\r\n\tconst axiosError = error as AxiosError | null;\r\n\tif (axiosError?.isAxiosError && axiosError != null && axiosError.response == null && axiosError.request != null) {\r\n\t\tmessage = Localizer('ErrorMessageNetwork');\r\n\t}\r\n\r\n\tif (axiosError?.isAxiosError && (axiosError?.response?.status === 401 || axiosError?.response?.status === 403)) {\r\n\t\tmessage = Localizer('ErrorMessageForbidden');\r\n\t}\r\n\r\n\tif (axiosError?.response?.data?.message) {\r\n\t\tmessage = axiosError.response.data.message;\r\n\t}\r\n\r\n\tif (isCollapsed) {\r\n\t\treturn null;\r\n\t}\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t{onCollapse ? (\r\n\t\t\t\t\r\n\t\t\t) : null}\r\n\r\n\t\t\t{title ? (\r\n\t\t\t\t\r\n\t\t\t\t\t{title}\r\n\t\t\t\t\r\n\t\t\t) : null}\r\n\r\n\t\t\t{message ? {message} : null}\r\n\r\n\t\t\t{children ? <> {children} : null}\r\n\t\t\r\n\t);\r\n}\r\n\r\n/**\r\n * Error Alert Default Props\r\n */\r\nInlineAlert.defaultProps = {\r\n\ttitle: Localizer('ErrorMessageGenericTitle'),\r\n\tmessage: Localizer('UnexpectedErrorOccurred'),\r\n\terror: null,\r\n};\r\n","import React from 'react';\r\nimport { SVGProps } from './SVGProps';\r\nimport classnames from 'classnames';\r\n\r\n/**\r\n * X SVG\r\n *\r\n * @returns\r\n */\r\nfunction XSVG({ className, ...rest }: SVGProps) {\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\r\n\t);\r\n}\r\n\r\nexport default XSVG;\r\n","import React, { useState, useEffect, useRef } from 'react';\r\nimport { Localizer } from 'services/Localizer';\r\nimport { NavLink } from 'react-router-dom';\r\nimport classnames from 'classnames';\r\nimport { useLocation, useHistory } from 'react-router';\r\nimport { ServerData } from 'services/ServerData';\r\nimport MenuSVG from 'shared/components/svg/MenuSVG';\r\nimport { ORGANIZATION_USERS_URL, ORGANIZATION_SHIPTOS_URL, ORGANIZATION_ORDERS_URL } from './routes';\r\nimport ClockSVG from 'shared/components/svg/ClockSVG';\r\nimport UsersSVG from 'shared/components/svg/commerce/UsersSVG';\r\nimport MapPinSVG from 'shared/components/svg/MapPinSVG';\r\nimport { getUserData, UserData } from 'services/UserData';\r\nimport AccountUrls from 'shared/util/AccountUrls';\r\n\r\n/**\r\n * Navigation component for the Organization SPA\r\n */\r\nexport default function Nav() {\r\n\tconst sidebarEl = useRef(null);\r\n\tconst location = useLocation();\r\n\tconst history = useHistory();\r\n\r\n\tconst [isNavOpen, setIsNavOpen] = useState(false);\r\n\tconst [isOrganizationUser, setIsOrganizationUser] = useState(false);\r\n\tconst [userData, setUserData] = useState();\r\n\r\n\t/**\r\n\t * Handle when the user clicks the toggle nav button.\r\n\t */\r\n\tconst handleToggleNavClick = () => {\r\n\t\tsetIsNavOpen(!isNavOpen);\r\n\t};\r\n\r\n\tif (\r\n\t\t!history.location.pathname.startsWith(AccountUrls.OrganizationReview) &&\r\n\t\tuserData &&\r\n\t\tuserData.summary &&\r\n\t\tuserData.summary.organizationInvites &&\r\n\t\tuserData.summary.organizationInvites.length > 0\r\n\t) {\r\n\t\thistory.push(AccountUrls.OrganizationReview);\r\n\t} else if (\r\n\t\t!history.location.pathname.startsWith(AccountUrls.OrganizationSelector) &&\r\n\t\tuserData &&\r\n\t\tuserData.summary &&\r\n\t\tuserData.summary.userOrganizations &&\r\n\t\tuserData.summary.userOrganizations.length > 1 &&\r\n\t\tuserData.summary.organization == null\r\n\t) {\r\n\t\thistory.push(AccountUrls.OrganizationSelector);\r\n\t}\r\n\r\n\tlet pageTitle = '';\r\n\tlet ordersActive = false;\r\n\tlet usersActive = false;\r\n\tlet shiptosActive = false;\r\n\r\n\tif (location.pathname.startsWith(ORGANIZATION_ORDERS_URL)) {\r\n\t\tpageTitle = Localizer('Orders');\r\n\t\tordersActive = true;\r\n\t} else if (location.pathname.startsWith(ORGANIZATION_USERS_URL)) {\r\n\t\tpageTitle = Localizer('OrgUsers');\r\n\t\tusersActive = true;\r\n\t} else if (location.pathname.startsWith(ORGANIZATION_SHIPTOS_URL)) {\r\n\t\tpageTitle = Localizer('ShipTosText');\r\n\t\tshiptosActive = true;\r\n\t} else {\r\n\t\t// default page\r\n\t\tpageTitle = Localizer('OrganizationOverviewText');\r\n\t}\r\n\r\n\tdocument.title = pageTitle + ServerData.PageTitleSuffix;\r\n\r\n\tconst handleClickOutside = (e) => {\r\n\t\tif (sidebarEl && sidebarEl.current && !sidebarEl.current.contains(e.target)) {\r\n\t\t\tsetIsNavOpen(false);\r\n\t\t}\r\n\t};\r\n\r\n\tuseEffect(() => {\r\n\t\tdocument.addEventListener('mousedown', handleClickOutside);\r\n\r\n\t\thistory.listen(() => {\r\n\t\t\tsetIsNavOpen(false);\r\n\t\t});\r\n\r\n\t\treturn () => {\r\n\t\t\tdocument.removeEventListener('mousedown', handleClickOutside);\r\n\t\t};\r\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\r\n\t}, []);\r\n\r\n\tconst [showUserNavigation, setShowUserNavigation] = useState(true);\r\n\tuseEffect(() => {\r\n\t\t(async () => {\r\n\t\t\ttry {\r\n\t\t\t\tconst data = (await getUserData()).data;\r\n\r\n\t\t\t\tconst isOrganizationUser =\r\n\t\t\t\t\t(data && data.summary && data.summary.isSignedIn && data.summary.organization != null) ?? false;\r\n\t\t\t\tsetIsOrganizationUser(isOrganizationUser);\r\n\r\n\t\t\t\tconst canSeeOrganizationUsers =\r\n\t\t\t\t\t(isOrganizationUser && data?.summary?.permissions?.canSeeOrganizationUsers) ?? false;\r\n\t\t\t\tsetShowUserNavigation(canSeeOrganizationUsers);\r\n\t\t\t\tsetUserData(data);\r\n\t\t\t} catch (error) {\r\n\t\t\t\tconsole.error('Unable to load user data.', error);\r\n\t\t\t}\r\n\t\t})();\r\n\t}, []);\r\n\r\n\tif (!isOrganizationUser) {\r\n\t\treturn null;\r\n\t}\r\n\r\n\tconst iconClass = 'roc-manage-menu__icon';\r\n\r\n\treturn (\r\n\t\t
    \r\n\t\t\t\r\n\t\t\t\t

    \r\n\t\t\t\t\t{Localizer('ManagePageNavigation')}\r\n\t\t\t\t

    \r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t{isNavOpen ? (\r\n\t\t\t\t\t\t{Localizer('CloseNavigation')}\r\n\t\t\t\t\t) : (\r\n\t\t\t\t\t\t{Localizer('OpenNavigation')}\r\n\t\t\t\t\t)}\r\n\t\t\t\t\r\n\t\t\t\t
      \r\n\t\t\t\t\t{/* ROC-3667 temporary hidden\r\n\t\t\t\t\t
    • \r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{Localizer('OrganizationOverviewText')}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
    • \r\n\t\t\t\t\t */}\r\n\t\t\t\t\t
    • \r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{Localizer('Orders')}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
    • \r\n\t\t\t\t\t
    • \r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{Localizer('ShipTosText')}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
    • \r\n\t\t\t\t\t{showUserNavigation ? (\r\n\t\t\t\t\t\t
    • \r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{Localizer('OrgUsers')}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
    • \r\n\t\t\t\t\t) : null}\r\n\t\t\t\t
    \r\n\t\t\t\r\n\t\t
    \r\n\t);\r\n}\r\n","import React from 'react';\r\nimport { useLocation } from 'react-router';\r\nimport { NavLink } from 'react-router-dom';\r\nimport { Localizer } from 'services/Localizer';\r\nimport Breadcrumbs, { BreadcrumbItem } from 'shared/components/Breadcrumbs';\r\nimport { toKebabCase } from 'util/StringUtil';\r\nimport {\r\n\tORGANIZATION_ORDERS_URL,\r\n\tORGANIZATION_SHIPTOS_URL,\r\n\tORGANIZATION_USERS_CREATE_URL,\r\n\tORGANIZATION_USERS_URL,\r\n} from './routes';\r\n\r\n/**\r\n * Breadcrumbs component for the organization SPA\r\n */\r\nexport default function OrganizationBreadcrumbs() {\r\n\tconst location = useLocation();\r\n\r\n\tlet label = '';\r\n\tlet url = '';\r\n\tconst orgLabel = Localizer('OrganizationHeaderText');\r\n\tlet breadcrumbPath: BreadcrumbItem[] | null = null;\r\n\tif (location.pathname.startsWith(ORGANIZATION_ORDERS_URL)) {\r\n\t\tlabel = Localizer('Orders');\r\n\t\turl = ORGANIZATION_ORDERS_URL;\r\n\t} else if (location.pathname.startsWith(ORGANIZATION_USERS_CREATE_URL)) {\r\n\t\tlabel = Localizer('AddNewUser');\r\n\t\turl = ORGANIZATION_USERS_CREATE_URL;\r\n\t\tbreadcrumbPath = [\r\n\t\t\t{\r\n\t\t\t\tlabel: Localizer('OrgUsers'),\r\n\t\t\t\turl: ORGANIZATION_USERS_URL,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tlabel: label,\r\n\t\t\t\turl: url,\r\n\t\t\t},\r\n\t\t];\r\n\t} else if (location.pathname.startsWith(ORGANIZATION_USERS_URL)) {\r\n\t\tlabel = Localizer('OrgUsers');\r\n\t\turl = ORGANIZATION_USERS_URL;\r\n\t} else if (location.pathname.startsWith(ORGANIZATION_SHIPTOS_URL)) {\r\n\t\tlabel = Localizer('ShipTosText');\r\n\t\turl = ORGANIZATION_SHIPTOS_URL;\r\n\t} else {\r\n\t\t// ROC-3667 temporary default page\r\n\t\tlabel = Localizer('Orders');\r\n\t\turl = ORGANIZATION_ORDERS_URL;\r\n\t\t// default page\r\n\t\t// label = Localizer('OrganizationOverviewText');\r\n\t\t// url = ORGANIZATION_OVERVIEW_URL;\r\n\t}\r\n\r\n\t// ROC-3667 temporary not used\r\n\tconst organizationItem: BreadcrumbItem = {\r\n\t\tlabel: orgLabel,\r\n\t};\r\n\r\n\tconst item: BreadcrumbItem = {\r\n\t\tlabel,\r\n\t\turl,\r\n\t};\r\n\r\n\tbreadcrumbPath = breadcrumbPath ? breadcrumbPath : [item];\r\n\r\n\treturn (\r\n\t\t {\r\n\t\t\t\treturn item.url ? (\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{item.label}\r\n\t\t\t\t\t\r\n\t\t\t\t) : (\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{item.label}\r\n\t\t\t\t\t\r\n\t\t\t\t);\r\n\t\t\t}}\r\n\t\t/>\r\n\t);\r\n}\r\n","import React from 'react';\r\nimport OrganizationNav from './OrganizationNav';\r\nimport OrganizationBreadcrumbs from './OrganizationBreadcrumbs';\r\n\r\nexport interface LayoutProps {\r\n\tchildren: React.ReactNode;\r\n}\r\n\r\n/**\r\n * Layout component for the Organization SPA\r\n */\r\nexport default function Layout(props: LayoutProps) {\r\n\treturn (\r\n\t\t<>\r\n\t\t\t\r\n\t\t\t
    \r\n\t\t\t\t
    \r\n\t\t\t\t\t\r\n\t\t\t\t\t
    {props.children}
    \r\n\t\t\t\t
    \r\n\t\t\t
    \r\n\t\t\r\n\t);\r\n}\r\n","import React from 'react';\r\nimport { Router, Switch } from 'react-router';\r\nimport Layout from './Layout';\r\nimport { createBrowserHistory } from 'history';\r\nimport { addUnauthorizedAccessInterceptor } from 'services/AxiosHelper';\r\nimport routes from './routes';\r\n\r\nconst browserHistory = (window as any).browserHistory || createBrowserHistory();\r\n\r\naddUnauthorizedAccessInterceptor(browserHistory);\r\n\r\n/**\r\n * Organization component with router (SPA)\r\n */\r\nexport default function Organization() {\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t{/* The Layout needs to be re-rendered on routing because of the dynamic header title and svg */}\r\n\t\t\t\t{routes}\r\n\t\t\t\r\n\t\t\r\n\t);\r\n}\r\n","import Axios, { AxiosError, CancelTokenSource } from 'axios';\r\nimport React, { useEffect, useState } from 'react';\r\nimport AxiosHelper from 'services/AxiosHelper';\r\nimport { Localizer } from 'services/Localizer';\r\nimport { getUserData } from 'services/UserData';\r\nimport Modal from 'shared/components/Modal';\r\nimport InlineAlert from 'shared/edit/InlineAlert';\r\nimport { INVALIDATE_USER_ORGANIZATION_NOTIFICATION_CACHE_URL } from './routes';\r\n\r\n/**\r\n * Component to notify the current user whenever he got unassigned\r\n * from his current default organization.\r\n */\r\nexport default function OrganizationRemovalNotification(): JSX.Element | null {\r\n\tconst [organizationRemovalNotification, setOrganizationRemovalNotification] = useState();\r\n\tconst [isOpen, setIsOpen] = useState(true);\r\n\tconst [errorMessage, setErrorMessage] = useState();\r\n\r\n\tuseEffect(() => {\r\n\t\t(async () => {\r\n\t\t\ttry {\r\n\t\t\t\tconst userData = (await getUserData()).data;\r\n\t\t\t\tif (userData && userData.summary && userData.summary.userOrganizationRemovalNotification) {\r\n\t\t\t\t\tsetOrganizationRemovalNotification(userData.summary.userOrganizationRemovalNotification);\r\n\t\t\t\t}\r\n\t\t\t} catch (error) {\r\n\t\t\t\tconsole.error('Unable to load user data.', error);\r\n\t\t\t}\r\n\t\t})();\r\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\r\n\t}, []);\r\n\r\n\t/**\r\n\t * Function to invalidate user organization notification cache\r\n\t * when closing or clicking ok button of the notification modal.\r\n\t */\r\n\tconst onOrganizationRemovalNotificationClose = async (): Promise => {\r\n\t\tconst requestToken: CancelTokenSource = Axios.CancelToken.source();\r\n\r\n\t\ttry {\r\n\t\t\tawait AxiosHelper.post(`/ajax${INVALIDATE_USER_ORGANIZATION_NOTIFICATION_CACHE_URL}`, {\r\n\t\t\t\tcancelToken: requestToken.token,\r\n\t\t\t});\r\n\t\t\tsetIsOpen(false);\r\n\t\t} catch (error) {\r\n\t\t\tif (Axios.isCancel(error)) {\r\n\t\t\t\t// if the component was unmounted, there's nothing to do\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t\tconst axiosError = error as AxiosError;\r\n\t\t\tif (axiosError && axiosError.response && axiosError.response.data && axiosError.response.data.message) {\r\n\t\t\t\tsetErrorMessage(axiosError.response.data.message);\r\n\t\t\t}\r\n\t\t}\r\n\t};\r\n\r\n\tif (!organizationRemovalNotification) {\r\n\t\treturn null;\r\n\t}\r\n\r\n\treturn (\r\n\t\t ''}\r\n\t\t\trenderActions={() => (\r\n\t\t\t\t<>\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{Localizer('Ok')}\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t)}\r\n\t\t>\r\n\t\t\t{errorMessage ? : null}\r\n\t\t\t
    \r\n\t\t\t\t
    \r\n\t\t\t\t\t
    \r\n\t\t\t\t
    \r\n\t\t\t\r\n\t\t\r\n\t);\r\n}\r\n","import React from 'react';\r\nimport { initReactApp, initReactAppByAttribute } from 'shared/util/ApplicationInit';\r\nimport Organization from './Organization';\r\nimport OrganizationRemovalNotification from './OrganizationRemovalNotification';\r\n\r\nconst render = initReactApp(() => , 'organization');\r\n\r\nrender();\r\n\r\n// optional, use this to enable hot reloading\r\nif ((module as any).hot) {\r\n\t(module as any).hot.accept('./Organization', () => {\r\n\t\trender();\r\n\t});\r\n}\r\n\r\n/**\r\n * Perform module setup for user organization removal notification\r\n */\r\nexport function setupOrganizationRemovalNotification() {\r\n\tconst render = initReactAppByAttribute(\r\n\t\t() => ,\r\n\t\t'data-roc-organization-user-removal-notification',\r\n\t);\r\n\r\n\trender();\r\n\r\n\t// optional, use this to enable hot reloading\r\n\tif ((module as any).hot) {\r\n\t\t(module as any).hot.accept('./OrganizationRemovalNotification', () => {\r\n\t\t\trender();\r\n\t\t});\r\n\t}\r\n}\r\n","import React, { useEffect, useState, Suspense } from 'react';\r\nimport { Localizer } from 'services/Localizer';\r\nimport { getUserData, UserData } from 'services/UserData';\r\nimport LockSimpleSVG from 'shared/components/svg/LockSimpleSVG';\r\nimport AccountUrls from 'shared/util/AccountUrls';\r\nimport { initReactApp } from 'shared/util/ApplicationInit';\r\nimport type PreHeader from 'features/pre-header/PreHeader';\r\nimport HeaderUtilNav from 'features/header/HeaderUtilNav';\r\nconst LazyPreHeader = React.lazy(\r\n\t() => import(/* webpackChunkName: \"pre-header\" */ 'features/pre-header/PreHeader'),\r\n);\r\n\r\nexport const headerUtilsIconClass = 'roc-utlity-nav__menu-item-icon';\r\n\r\n/**\r\n * Component that manages the logout in abrasive header utilities.\r\n *\r\n * @export\r\n * @returns\r\n */\r\nexport default function AbrasiveHeaderUtils() {\r\n\tconst [userData, setUserData] = useState(null);\r\n\r\n\tuseEffect(() => {\r\n\t\t(async () => {\r\n\t\t\ttry {\r\n\t\t\t\tconst data = (await getUserData()).data;\r\n\r\n\t\t\t\tsetUserData(data);\r\n\r\n\t\t\t\tif (data.impersonation != null) {\r\n\t\t\t\t\tinitReactApp(\r\n\t\t\t\t\t\t() => (\r\n\t\t\t\t\t\t\tLoading Impersonation Controls...}>\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t),\r\n\t\t\t\t\t\t'roc-pre-header',\r\n\t\t\t\t\t)();\r\n\t\t\t\t}\r\n\t\t\t\t// #endregion\r\n\t\t\t} catch (error) {\r\n\t\t\t\tconsole.error('Unable to load user data.', error);\r\n\t\t\t}\r\n\t\t})();\r\n\t}, []);\r\n\r\n\tif (!userData) {\r\n\t\treturn null;\r\n\t}\r\n\r\n\tconst iconClass = 'roc-utlity-nav__menu-item-link-icon';\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t{userData && userData.summary && userData.summary.isSignedIn ? (\r\n\t\t\t\t<>\r\n\t\t\t\t\t
  • \r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{Localizer('HeaderUtilNavLogout')}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
  • \r\n\t\t\t\t\r\n\t\t\t) : null}\r\n\t\t
    \r\n\t);\r\n}\r\n","import React from 'react';\r\nimport AbrasiveHeaderUtils from './AbrasiveHeaderUtils';\r\nimport { initReactApp } from 'shared/util/ApplicationInit';\r\n\r\nexport default function setupAbrasiveHeader() {\r\n\tconst render = initReactApp(() => , 'abrasive-header-utils');\r\n\r\n\trender();\r\n\r\n\t// optional, use this to enable hot reloading\r\n\tif ((module as any).hot) {\r\n\t\t(module as any).hot.accept('./AbrasiveHeaderUtils', () => {\r\n\t\t\trender();\r\n\t\t});\r\n\t}\r\n}\r\n","import AxiosHelper from 'services/AxiosHelper';\r\nimport { AxiosResponse } from 'axios';\r\n\r\nexport interface UserSummary {\r\n\tisSignedIn: boolean;\r\n\tuserName: string | null;\r\n\tfirstName: string | null;\r\n\tlastName: string | null;\r\n\temail: string | null;\r\n\tphoneNumber: string | null;\r\n\ttwoFactorEnabled: boolean;\r\n\thasRecoveryCodes: boolean;\r\n\tisMachineRemembered: boolean;\r\n\tannouncements: UserAnnouncement[];\r\n\tisExternalLoginUser: boolean;\r\n\r\n\t// #region TapeCase\r\n\tisOptedInForMarketingEmails: boolean;\r\n\t// #endregion\r\n}\r\n\r\n/** Represents the details about an admin impersonation session of the logged in user. */\r\nexport interface Impersonation {\r\n\t/** The id of the admin impersonating the front end user. */\r\n\timpersonatorId: string;\r\n\r\n\t/** The name of the admin impersonating the front end user. */\r\n\timpersonatorName: string;\r\n\r\n\t/** The id of the active user impersonation session. */\r\n\tsessionId: string;\r\n}\r\n\r\nexport interface UserData {\r\n\t/**\r\n\t * Summary of user-specific details\r\n\t */\r\n\tsummary?: UserSummary;\r\n\r\n\t/**\r\n\t * CSRF validation token generated by the server\r\n\t */\r\n\trequestToken?: string;\r\n\r\n\t/**\r\n\t * The information on an impersonation session if one is active.\r\n\t * If an impersonation session isn't active this field will be undefined.\r\n\t */\r\n\timpersonation?: Impersonation;\r\n}\r\n\r\nexport interface UserAnnouncement {\r\n\t/** The id used as the primary key for the announcement in the database */\r\n\tid: string;\r\n\r\n\t/** An announcement to be displayed to the user */\r\n\tmessage: string;\r\n\r\n\t/** A list of pages where the announcement will be displayed. This will be an empty array if it is to be displayed on all pages. */\r\n\tpages: string[];\r\n}\r\n\r\nlet userDataPromise: Promise> | null = null;\r\n\r\n/**\r\n * Returns details related to the current user. By default, this is primarily their first/last name\r\n * and whether they are logged in or not. This can customized to include more details if necessary.\r\n */\r\nexport const getUserData = () => {\r\n\tif (userDataPromise === null) {\r\n\t\tuserDataPromise = AxiosHelper.get('/ajax/user');\r\n\t}\r\n\r\n\treturn userDataPromise;\r\n};\r\n\r\n/**\r\n * Returns non-cached details related to the current user. By default, this is primarily their first/last name\r\n * and whether they are logged in or not. This can customized to include more details if necessary.\r\n */\r\nexport const getUserDataNoCache = () => {\r\n\treturn AxiosHelper.get('/ajax/user');\r\n};\r\n\r\n/**\r\n * Returns a promise that will contain the CSRF token generated on the server to be used to validate\r\n * forms being posted via AJAX.\r\n */\r\nexport async function getCsrfToken() {\r\n\ttry {\r\n\t\tconst userData = await getUserData();\r\n\t\treturn userData.data.requestToken;\r\n\t} catch (error) {\r\n\t\tconsole.warn('Unable to load CSRF token.');\r\n\t\treturn '';\r\n\t}\r\n}\r\n\r\n// #region Commerce\r\nimport { CartSummary } from './UserData.Commerce';\r\nimport { LocationDto } from 'features/commerce/store-locator/types';\r\nimport { OrganizationInvite, OrganizationShipTo } from 'shared-client/types/commerce/organization';\r\nimport { AutoSuggestOption } from '../../../Roc.SharedClientApp/types/fields';\r\n\r\n// Commerce extensions to the UserData interface\r\nexport interface UserData {\r\n\tcartSummary?: CartSummary;\r\n\r\n\t/***\r\n\t * The customer's default store location or null if not set\r\n\t */\r\n\tdefaultStoreLocation?: LocationDto | null;\r\n\r\n\t/**\r\n\t * If store is enabled for this site\r\n\t */\r\n\tenableStoreLocation?: boolean;\r\n}\r\n\r\n/***\r\n * Organization data and permissions\r\n */\r\nexport interface Organization {\r\n\tid: string;\r\n\tpurchaseOrderNumberRequired: boolean;\r\n\tcreditCardAllowed: boolean;\r\n\tgiftCardAllowed: boolean;\r\n\torganizationName: string;\r\n\tcorpAccountAllowed: boolean;\r\n\t//#region TapeCase Customization\r\n\tisApprovedDistributor: boolean;\r\n\tpurchaseOrderAllowed: boolean;\r\n\t//#endregion\r\n}\r\n\r\n/***\r\n * Organization dto data\r\n */\r\nexport interface OrganizationDto extends AutoSuggestOption {}\r\n\r\n/***\r\n * User's organization and permissions data\r\n */\r\nexport interface UserSummary {\r\n\t/***\r\n\t * User's current default organization\r\n\t */\r\n\torganization: Organization | null;\r\n\r\n\t/***\r\n\t * The list of organizations the user is part of\r\n\t */\r\n\tuserOrganizations?: OrganizationDto[] | null;\r\n\r\n\t/***\r\n\t * The selected organization ship to\r\n\t */\r\n\tselectedShipTo: OrganizationShipTo | null;\r\n\r\n\t/***\r\n\t * Defines if the user has multiple shiptos to select from\r\n\t */\r\n\thasMultipleShipTos: boolean | null;\r\n\r\n\t/***\r\n\t * Defines if the user has saved payment methods\r\n\t */\r\n\thasSavedPaymentMethods: boolean | null;\r\n\r\n\t/***\r\n\t * The list of user permissions\r\n\t */\r\n\tpermissions?: UserPermissions;\r\n\r\n\t/***\r\n\t * The list of organizations the user is invited to join\r\n\t */\r\n\torganizationInvites?: OrganizationInvite[];\r\n\r\n\t/***\r\n\t * The user organization removal notification\r\n\t * Used to notify the user if he is no more part of his default organization\r\n\t */\r\n\tuserOrganizationRemovalNotification?: string;\r\n}\r\n\r\n/***\r\n * User's permissions\r\n */\r\nexport interface UserPermissions {\r\n\t/***\r\n\t * Defines if the current user can see organization users\r\n\t */\r\n\tcanSeeOrganizationUsers?: boolean;\r\n\r\n\t/***\r\n\t * Defines if the current user can assign roles to organization users\r\n\t */\r\n\tcanAssignRolesToOrganizationUsers?: boolean;\r\n\r\n\t/***\r\n\t * Defines if the current user can remove users from an organization\r\n\t */\r\n\tremoveUserFromOrganization?: boolean;\r\n\r\n\t/***\r\n\t * Defines if the current user can create organization users\r\n\t */\r\n\tcreateOrganizationUser?: boolean;\r\n\r\n\t/***\r\n\t * Defines if the current user can enable/disable ShipTos for organization users\r\n\t */\r\n\tmanageShipTosAssociation?: boolean;\r\n\r\n\t/***\r\n\t * Defines if the current user can see status of the organization users\r\n\t */\r\n\tcanSeePendingOrganizationUsers?: boolean;\r\n}\r\n// #endregion\r\n","import { ServerData } from 'services/ServerData';\r\n\r\nexport default {\r\n\tBaseUrl: ServerData.ACCOUNT_URL_BASE ?? '/my-account',\r\n\tLogin: ServerData.ACCOUNT_LOGIN_URL ?? '/my-account/login',\r\n\tLogin2fa: ServerData.ACCOUNT_LOGIN_WITH_2FA_URL ?? '/my-account/login-with-2fa',\r\n\tRegister: ServerData.ACCOUNT_REGISTER_URL ?? '/my-account/register',\r\n\tForgotPassword: ServerData.ACCOUNT_FORGOT_PASSWORD_URL ?? '/my-account/forgot-password',\r\n\tLoginWithRecoveryCode: ServerData.ACCOUNT_LOGIN_WITH_RECOVERY_CODE_URL ?? '/my-account/login-with-recovery-code',\r\n\tLogout: ServerData.ACCOUNT_LOGOUT_URL ?? '/my-account/logout',\r\n\t// #region Commerce\r\n\tOrganizationReview: ServerData.ACCOUNT_ORGANIZATION_REVIEW_URL ?? '/my-account/organization-review',\r\n\tOrganizationSelector: ServerData.ACCOUNT_ORGANIZATION_SELECTOR_URL ?? '/my-account/organization-selector',\r\n\t// #endregion\r\n};\r\n","import { useEffect } from 'react';\r\nimport 'shared/polyfills/customEvent';\r\nimport { RocEventType, ExtractEventParameters, RocEvent } from 'shared/events';\r\nimport addRocEventHandler from 'shared/util/events/rocEventUtils';\r\n\r\n/**\r\n * Helper function for dispatching ROC events.\r\n *\r\n * @param eventType The event type for the dispatcher\r\n */\r\nexport function dispatchRocEvent(eventType: T, data: ExtractEventParameters) {\r\n\tconst event = new CustomEvent(eventType, {\r\n\t\tdetail: data,\r\n\t});\r\n\tdocument.dispatchEvent(event);\r\n}\r\n\r\n/**\r\n * Reusable hook for handling ROC events\r\n *\r\n * @param eventType The type of event to handle\r\n * @param eventHandler The event handler\r\n * @param deps List of dependencies\r\n */\r\nexport default function useRocEventHandler(\r\n\teventType: T,\r\n\teventHandler: (data: ExtractEventParameters) => void,\r\n\tdeps?: any[],\r\n) {\r\n\tuseEffect(() => {\r\n\t\tconst removeHandlerCallback = addRocEventHandler(eventType, eventHandler);\r\n\r\n\t\treturn () => {\r\n\t\t\tremoveHandlerCallback();\r\n\t\t};\r\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\r\n\t}, deps);\r\n}\r\n","import React from 'react';\r\nimport { SVGProps } from './SVGProps';\r\nimport classnames from 'classnames';\r\n\r\n/**\r\n * Gear SVG\r\n *\r\n * @returns\r\n */\r\nfunction GearSVG({ className, ...rest }: SVGProps) {\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\r\n\t);\r\n}\r\n\r\nexport default GearSVG;\r\n","import React from 'react';\r\nimport { SVGProps } from './SVGProps';\r\nimport classnames from 'classnames';\r\n\r\n/**\r\n * House SVG\r\n *\r\n * @returns\r\n */\r\nfunction HouseSVG({ className, ...rest }: SVGProps) {\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\r\n\t);\r\n}\r\n\r\nexport default HouseSVG;\r\n","import React from 'react';\r\nimport InlineAlert from 'shared/edit/InlineAlert';\r\n\r\n// eslint-disable-next-line\r\n// tslint:disable-next-line\r\nexport interface ErrorBoundaryRenderProps extends ErrorBoundaryState {}\r\n\r\nexport interface ErrorBoundaryProps {\r\n\tchildren: React.ReactNode;\r\n\trenderError?: (renderProps: ErrorBoundaryRenderProps) => React.ReactNode;\r\n}\r\n\r\nexport interface ErrorBoundaryState {\r\n\terror?: Error;\r\n}\r\n\r\n/**\r\n * Default Error Boundary component for frontend components, so that in case a JS error occurs, we show\r\n * something instead of nothing.\r\n */\r\nexport default class ErrorBoundary extends React.Component {\r\n\tpublic static defaultProps = {\r\n\t\trenderError: (renderProps: ErrorBoundaryRenderProps) => ,\r\n\t};\r\n\r\n\tpublic state: ErrorBoundaryState = {};\r\n\r\n\tpublic componentDidCatch(error: Error) {\r\n\t\tthis.setState({\r\n\t\t\terror,\r\n\t\t});\r\n\t}\r\n\r\n\tpublic render() {\r\n\t\tif (this.state.error) {\r\n\t\t\treturn this.props.renderError!(this.state);\r\n\t\t}\r\n\r\n\t\treturn this.props.children;\r\n\t}\r\n}\r\n","// source: https://developer.mozilla.org/en-US/docs/Web/API/Element/getAttributeNames\r\n/* eslint-disable no-var */\r\n(function () {\r\n\tif (Element.prototype.getAttributeNames == undefined) {\r\n\t\tElement.prototype.getAttributeNames = function () {\r\n\t\t\tvar attributes = this.attributes;\r\n\t\t\tvar length = attributes.length;\r\n\t\t\tvar result = new Array(length);\r\n\t\t\tfor (var i = 0; i < length; i++) {\r\n\t\t\t\tresult[i] = attributes[i].name;\r\n\t\t\t}\r\n\t\t\treturn result;\r\n\t\t};\r\n\t}\r\n})();\r\n","import React from 'react';\r\nimport ReactDOM from 'react-dom';\r\nimport ErrorBoundary from './ErrorBoundary';\r\nimport { toCamelCase } from 'util/StringUtil';\r\nimport 'shared/polyfills/getAttributeNames';\r\nimport Spinner from 'shared/components/Spinner';\r\n\r\ninterface AttributeProps {\r\n\t[index: string]: string;\r\n}\r\n\r\nfunction getDataPropsFromAttributes(element: Element): AttributeProps {\r\n\tconst props: AttributeProps = {};\r\n\r\n\tconst dataAttributePrefix = 'data-';\r\n\r\n\tconst attributeNames = element.getAttributeNames().filter((s) => s.startsWith(dataAttributePrefix));\r\n\tfor (const attributeName of attributeNames) {\r\n\t\tconst strippedName = toCamelCase(attributeName.substring(dataAttributePrefix.length));\r\n\t\tprops[strippedName] = element.getAttribute(attributeName) ?? '';\r\n\t}\r\n\r\n\treturn props;\r\n}\r\n\r\n/**\r\n * A helper function to facilitate initializing react applications on top of server-side rendered elements.\r\n * @param getReactElement Function that returns the react component to render.\r\n * @param elementId The ID of the DOM element being targeted.\r\n */\r\nexport const initReactApp = (getReactElement: (props: unknown) => React.ReactElement, elementId: string) => {\r\n\tif (typeof getReactElement !== 'function' || !elementId) {\r\n\t\treturn () => {\r\n\t\t\tconsole.warn('A react element generator function and element ID are required.');\r\n\t\t};\r\n\t}\r\n\r\n\tconst element = document.getElementById(elementId);\r\n\r\n\tif (!element) {\r\n\t\treturn () => {\r\n\t\t\tconsole.warn(\r\n\t\t\t\t`Element with ID '${elementId}' was not found. Did you forget to render it on the server or is this entry point not supposed to run?`,\r\n\t\t\t);\r\n\t\t};\r\n\t}\r\n\r\n\treturn () => {\r\n\t\tconst props = getDataPropsFromAttributes(element);\r\n\t\tconsole.debug(`Rendering application inside element with ID ${elementId}.`);\r\n\t\tReactDOM.render(\r\n\t\t\t}>\r\n\t\t\t\t{getReactElement(props)}\r\n\t\t\t,\r\n\t\t\telement,\r\n\t\t);\r\n\t};\r\n};\r\n\r\nexport const initReactAppByAttribute = (\r\n\tgetReactElement: (props: unknown, domElement: Element) => React.ReactElement,\r\n\tattribute: string,\r\n) => {\r\n\tif (typeof getReactElement !== 'function' || !attribute) {\r\n\t\treturn () => {\r\n\t\t\tconsole.warn('A react element generator function and element ID are required.');\r\n\t\t};\r\n\t}\r\n\r\n\tconst elements = document.querySelectorAll(`[${attribute}]`);\r\n\r\n\tif (!elements || elements.length == 0) {\r\n\t\treturn () => {\r\n\t\t\tconsole.warn(\r\n\t\t\t\t`No elements with data attribute '${attribute}' were found. Did you forget to render it on the server or is this entry point not supposed to run?`,\r\n\t\t\t);\r\n\t\t};\r\n\t}\r\n\r\n\treturn () => {\r\n\t\tfor (let i = 0; i < elements.length; ++i) {\r\n\t\t\tconst element = elements[i];\r\n\t\t\tconst props = getDataPropsFromAttributes(element);\r\n\t\t\tconsole.debug(`Rendering application inside element with attribute ${attribute}.`);\r\n\t\t\tReactDOM.render(\r\n\t\t\t\t}>\r\n\t\t\t\t\t{getReactElement(props, element)}\r\n\t\t\t\t,\r\n\t\t\t\telement,\r\n\t\t\t);\r\n\t\t}\r\n\t};\r\n};\r\n","import React from 'react';\r\nimport { RouteProps } from 'react-router';\r\n\r\n//#region URLs\r\nexport const MY_ACCOUNT_PATH_PREFIX = '/my-account';\r\nexport const MY_ACCOUNT_PERSONAL_DATA_URL = `${MY_ACCOUNT_PATH_PREFIX}/personal-data`;\r\nexport const MY_ACCOUNT_AUTHENTICATOR_URL = `${MY_ACCOUNT_PATH_PREFIX}/settings/authenticator`;\r\nexport const MY_ACCOUNT_GENERATE_RECOVERY_CODES_URL = `${MY_ACCOUNT_AUTHENTICATOR_URL}/generate-recovery-codes`;\r\nexport const MY_ACCOUNT_CONFIGURE_AUTHENTICATOR_URL = `${MY_ACCOUNT_AUTHENTICATOR_URL}/configure`;\r\nexport const MY_ACCOUNT_LOGIN_URL = `${MY_ACCOUNT_PATH_PREFIX}/login`;\r\nexport const MY_ACCOUNT_LOGOUT_URL = `${MY_ACCOUNT_PATH_PREFIX}/logout`;\r\nexport const MY_ACCOUNT_WALLET_URL = `${MY_ACCOUNT_PATH_PREFIX}/wallet`;\r\nexport const MY_ACCOUNT_WALLET_CREATE_URL = `${MY_ACCOUNT_WALLET_URL}/create`;\r\nexport const MY_ACCOUNT_ADDRESS_BOOK_URL = `${MY_ACCOUNT_PATH_PREFIX}/address-book`;\r\nexport const MY_ACCOUNT_ADDRESS_BOOK_CREATE_URL = `${MY_ACCOUNT_ADDRESS_BOOK_URL}/create`;\r\nexport const MY_ACCOUNT_ADDRESS_BOOK_EDIT_URL = `${MY_ACCOUNT_ADDRESS_BOOK_URL}/edit`;\r\n//#region Commerce\r\nexport const MY_ACCOUNT_SETTINGS_URL = `${MY_ACCOUNT_PATH_PREFIX}/settings`;\r\n//#endregion Commerce\r\n//#endregion URLs\r\n\r\n//#region Components\r\nconst SettingsComponent = React.lazy(() => import(/* webpackChunkName: \"my-account-settings\" */ './settings/Settings'));\r\n\r\nconst GenerateRecoveryCodesComponent = React.lazy(\r\n\t() =>\r\n\t\timport(\r\n\t\t\t/* webpackChunkName: \"my-account-generate-recovery-codes\" */ './generate-recovery-codes/GenerateRecoveryCodesContainer'\r\n\t\t),\r\n);\r\nconst ConfigureAuthenticatorComponent = React.lazy(\r\n\t() =>\r\n\t\timport(\r\n\t\t\t/* webpackChunkName: \"my-account-configure-authenticator\" */ './configure-authenticator/ConfigureAuthenticator'\r\n\t\t),\r\n);\r\n\r\nconst WalletComponent = React.lazy(() => import(/* webpackChunkName: \"my-account-wallet\" */ './wallet/Wallet'));\r\nconst WalletEditComponent = React.lazy(() => import(/* webpackChunkName: \"my-account-wallet\" */ './wallet/WalletEdit'));\r\n\r\n//#endregion Components\r\n\r\n//#region Routes\r\nconst generateRecoverCodesRoute = {\r\n\texact: true,\r\n\tpath: MY_ACCOUNT_GENERATE_RECOVERY_CODES_URL,\r\n\tcomponent: GenerateRecoveryCodesComponent,\r\n};\r\n\r\nconst configureAuthenticatorRoute = {\r\n\texact: true,\r\n\tpath: MY_ACCOUNT_CONFIGURE_AUTHENTICATOR_URL,\r\n\tcomponent: ConfigureAuthenticatorComponent,\r\n};\r\n\r\nconst walletRoute = {\r\n\texact: true,\r\n\tpath: MY_ACCOUNT_WALLET_URL,\r\n\tcomponent: WalletComponent,\r\n};\r\n\r\nconst walletCreateRoute = {\r\n\texact: true,\r\n\tpath: MY_ACCOUNT_WALLET_CREATE_URL,\r\n\tcomponent: WalletEditComponent,\r\n};\r\n\r\n//#region Commerce\r\n// Note: in Framework we want MY_ACCOUNT_PATH_PREFIX to point to SettingsComponent,\r\n// but in Commerce we want it to point to AccountOverviewComponent\r\nconst settingsRoute = {\r\n\texact: true,\r\n\tpath: MY_ACCOUNT_SETTINGS_URL,\r\n\tcomponent: SettingsComponent,\r\n};\r\n//#endregion Commerce\r\n//#endregion Routes\r\n\r\nexport const rocRoutes: RouteProps[] = [\r\n\tgenerateRecoverCodesRoute,\r\n\tconfigureAuthenticatorRoute,\r\n\twalletRoute,\r\n\twalletCreateRoute,\r\n\tsettingsRoute,\r\n];\r\n","import { useState, useEffect } from 'react';\r\n\r\n/**\r\n * Reusable hook that returns true after a certain amount of time has passed. Useful to delay\r\n * displaying components in render functions.\r\n *\r\n * @export\r\n * @param {number} [waitMs=200]\r\n * @returns\r\n */\r\nexport default function useDelayedDisplay(waitMs: number = 200) {\r\n\tconst [display, setDisplay] = useState(false);\r\n\r\n\tuseEffect(() => {\r\n\t\t// after a set amount of time, show the spinner\r\n\t\tconst timeout = setTimeout(() => {\r\n\t\t\tsetDisplay(true);\r\n\t\t}, waitMs);\r\n\r\n\t\treturn () => {\r\n\t\t\tclearTimeout(timeout);\r\n\t\t};\r\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\r\n\t}, []);\r\n\r\n\treturn display;\r\n}\r\n","//#region TapeCase\r\nimport { MY_ACCOUNT_PATH_PREFIX } from 'features/my-account/routes.roc';\r\n//#endregion TapeCase\r\nimport React from 'react';\r\nimport { Route } from 'react-router';\r\nimport { ServerData } from 'services/ServerData';\r\nimport Spinner from 'shared/components/Spinner';\r\nimport { OrganizationUIComponents } from './OrganizationUIComponents';\r\n\r\n//#region TapeCase\r\nexport const ORGANIZATION_PREFIX = `${MY_ACCOUNT_PATH_PREFIX}/organization`;\r\n//#endregio TapeCase\r\nexport const ORGANIZATION_OVERVIEW_URL = `${ORGANIZATION_PREFIX}`;\r\nexport const ORGANIZATION_USERS_URL = `${ORGANIZATION_PREFIX}/users`;\r\nexport const ORGANIZATION_USERS_CREATE_URL = `${ORGANIZATION_USERS_URL}/create`;\r\nexport const UPDATE_ORGANIZATION_USER_URL = `${ORGANIZATION_PREFIX}/user`;\r\nexport const UPDATE_USER_ORGANIZATION_STATUS_URL = `${UPDATE_ORGANIZATION_USER_URL}/organization-status`;\r\nexport const UPDATE_USER_DEFAULT_ORGANIZATION_URL = `/user/organization`;\r\nexport const INVALIDATE_USER_ORGANIZATION_NOTIFICATION_CACHE_URL = `${UPDATE_USER_DEFAULT_ORGANIZATION_URL}/cache`;\r\nexport const ORGANIZATION_ORDERS_URL = `${ORGANIZATION_PREFIX}/orders`;\r\nexport const ORGANIZATION_SHIPTOS_URL = `${ORGANIZATION_PREFIX}/ship-to`;\r\nexport const ORGANIZATION_ORDER_DETAILS = `${ORGANIZATION_ORDERS_URL}/:orderNo`;\r\nexport const ORGANIZATION_MANAGE_SHIPTOS_URL = ''; // TBD\r\n\r\nconst OrganizationOrderDetailsComponent = React.lazy(() => {\r\n\tconst orderDetailsComponent =\r\n\t\tServerData?.OrderDetailsUIComponent && ServerData?.OrderDetailsUIComponent in OrganizationUIComponents\r\n\t\t\t? ServerData.OrderDetailsUIComponent\r\n\t\t\t: OrganizationUIComponents.DefaultOrganizationOrderDetails;\r\n\treturn import(/* webpackChunkName: \"organization-order-details\" */ `./orders/${orderDetailsComponent}`);\r\n});\r\n\r\nconst ShiptosComponent = React.lazy(() => import(/* webpackChunkName: \"ship-to\" */ './ship-to/OrganizationShipTos'));\r\n\r\nconst UsersComponent = React.lazy(() => import(/* webpackChunkName: \"org-users\" */ './users/OrganizationUsers'));\r\n\r\nconst OrganizationOrdersComponent = React.lazy(\r\n\t() => import(/* webpackChunkName: \"org-orders\" */ './orders/OrganizationOrders'),\r\n);\r\n\r\nconst OrganizationUsersCreateComponent = React.lazy(\r\n\t() => import(/* webpackChunkName: \"org-users-create\" */ './users/OrganizationUsersCreate'),\r\n);\r\n\r\nexport default (\r\n\t}>\r\n\t\t{/* ROC-3667 temporary hidden\r\n\t\t */}\r\n\t\t\r\n\t\t\r\n\t\t\r\n\t\t\r\n\t\t\r\n\t\r\n);\r\n","/**\r\n * Extends Window with recaptcha callback fields\r\n */\r\ninterface WindowWithReCaptchaCallbacks extends Window {\r\n\t/**\r\n\t * Executes the methods in the rocReCaptchaCallbacks array\r\n\t */\r\n\tonReCaptchaLoadCallback: () => void;\r\n\t/**\r\n\t * List of recaptcha callbacks\r\n\t */\r\n\trocReCaptchaCallbacks: Array<() => void>;\r\n}\r\n\r\nexport let reCaptchaCallbackPromise: Promise | null = null;\r\n\r\n/**\r\n * Setup function for recaptcha.\r\n * The window.onReCaptchaLoadCallback() gets called when the recaptcha script is loaded.\r\n * Then this method calls the recaptcha instances init functions, stored in window.rocReCaptchaCallbacks\r\n *\r\n * @export\r\n */\r\nexport default function setupReCaptcha() {\r\n\tconst windowWithReCaptchaCallbacks = (window as unknown) as WindowWithReCaptchaCallbacks;\r\n\r\n\treCaptchaCallbackPromise = new Promise((resolve) => {\r\n\t\twindowWithReCaptchaCallbacks.onReCaptchaLoadCallback = resolve;\r\n\t});\r\n}\r\n","var api = require(\"!../../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\");\n var content = require(\"!!../../../../../node_modules/css-loader/dist/cjs.js!./tiny-slider.css\");\n\n content = content.__esModule ? content.default : content;\n\n if (typeof content === 'string') {\n content = [[module.id, content, '']];\n }\n\nvar options = {};\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = api(content, options);\n\n\n\nmodule.exports = content.locals || {};","// Imports\nvar ___CSS_LOADER_API_IMPORT___ = require(\"../../../../../node_modules/css-loader/dist/runtime/api.js\");\nexports = ___CSS_LOADER_API_IMPORT___(false);\n// Module\nexports.push([module.id, \".tns-outer{padding:0 !important}.tns-outer [hidden]{display:none !important}.tns-outer [aria-controls],.tns-outer [data-action]{cursor:pointer}.tns-slider{-webkit-transition:all 0s;-moz-transition:all 0s;transition:all 0s}.tns-slider>.tns-item{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.tns-horizontal.tns-subpixel{white-space:nowrap}.tns-horizontal.tns-subpixel>.tns-item{display:inline-block;vertical-align:top;white-space:normal}.tns-horizontal.tns-no-subpixel:after{content:'';display:table;clear:both}.tns-horizontal.tns-no-subpixel>.tns-item{float:left}.tns-horizontal.tns-carousel.tns-no-subpixel>.tns-item{margin-right:-100%}.tns-no-calc{position:relative;left:0}.tns-gallery{position:relative;left:0;min-height:1px}.tns-gallery>.tns-item{position:absolute;left:-100%;-webkit-transition:transform 0s, opacity 0s;-moz-transition:transform 0s, opacity 0s;transition:transform 0s, opacity 0s}.tns-gallery>.tns-slide-active{position:relative;left:auto !important}.tns-gallery>.tns-moving{-webkit-transition:all 0.25s;-moz-transition:all 0.25s;transition:all 0.25s}.tns-autowidth{display:inline-block}.tns-lazy-img{-webkit-transition:opacity 0.6s;-moz-transition:opacity 0.6s;transition:opacity 0.6s;opacity:0.6}.tns-lazy-img.tns-complete{opacity:1}.tns-ah{-webkit-transition:height 0s;-moz-transition:height 0s;transition:height 0s}.tns-ovh{overflow:hidden}.tns-visually-hidden{position:absolute;left:-10000em}.tns-transparent{opacity:0;visibility:hidden}.tns-fadeIn{opacity:1;filter:alpha(opacity=100);z-index:0}.tns-normal,.tns-fadeOut{opacity:0;filter:alpha(opacity=0);z-index:-1}.tns-vpfix{white-space:nowrap}.tns-vpfix>div,.tns-vpfix>li{display:inline-block}.tns-t-subp2{margin:0 auto;width:310px;position:relative;height:10px;overflow:hidden}.tns-t-ct{width:2333.3333333%;width:-webkit-calc(100% * 70 / 3);width:-moz-calc(100% * 70 / 3);width:calc(100% * 70 / 3);position:absolute;right:0}.tns-t-ct:after{content:'';display:table;clear:both}.tns-t-ct>div{width:1.4285714%;width:-webkit-calc(100% / 70);width:-moz-calc(100% / 70);width:calc(100% / 70);height:10px;float:left}\\n\", \"\"]);\n// Exports\nmodule.exports = exports;\n","var api = require(\"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\");\n var content = require(\"!!../../node_modules/mini-css-extract-plugin/dist/loader.js!../../node_modules/css-loader/dist/cjs.js!../../node_modules/postcss-loader/src/index.js!../../node_modules/sass-loader/dist/cjs.js!./app.scss\");\n\n content = content.__esModule ? content.default : content;\n\n if (typeof content === 'string') {\n content = [[module.id, content, '']];\n }\n\nvar options = {};\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = api(content, options);\n\n\n\nmodule.exports = content.locals || {};","import { RocEventType, RocEvent, ExtractEventParameters } from 'shared/events';\r\n\r\n/**\r\n * Helper function for handling ROC events from non React functions.\r\n * @param eventType The type of event to handle\r\n * @param eventHandler The event handler\r\n * @returns The callback function to remove this handler\r\n */\r\nexport default function addRocEventHandler(\r\n\teventType: T,\r\n\teventHandler: (data: ExtractEventParameters) => void,\r\n): () => void {\r\n\tconst handler = (evt: CustomEvent): void => {\r\n\t\teventHandler(evt.detail);\r\n\t};\r\n\r\n\tdocument.addEventListener(eventType, handler);\r\n\r\n\treturn () => document.removeEventListener(eventType, handler);\r\n}\r\n","/**\r\n * THIS HAS A COPY ON ROC.WEB. DO NOT MAKE CHANGES HERE WITHOUT ALSO MAKING THEM IN THE OTHER FILE.\r\n *\r\n * THIS MUST ALSO BE KEPT IN SYNC WITH THE \"RazorDisplayPrice\" VIEW COMPONENT.\r\n *\r\n * DIVERGENCES:\r\n * - The style \"visually-hidden\" DOES NOT EXIST ON ROC.WEB. Change this to \"roc-visually-hidden\"\r\n */\r\n\r\nimport classnames from 'classnames';\r\nimport React from 'react';\r\nimport { Localizer } from 'services/Localizer';\r\nimport { CssClasses, ProductPricingProps } from 'shared-client/types/commerce/product-details';\r\nimport {\r\n\tAmbiguousDisplayPrice,\r\n\tMissingDisplayPrice,\r\n\tPartialDisplayPrice,\r\n\tPrice,\r\n\tPriceDisplayRule,\r\n\tPriceSpan,\r\n\tSimpleDisplayPrice,\r\n} from 'shared-client/types/commerce/display-price';\r\n\r\nimport { PricingResourceKeys } from 'features/commerce/pricing/resources';\r\n\r\nconst GetCssClasses = (className: string | undefined, inline: boolean) => {\r\n\tconst priceClass = ['roc-pricing__price', className ? className + '__price' : null];\r\n\r\n\treturn {\r\n\t\tbase: ['roc-pricing', { 'roc-pricing--inline': inline }, className ? className : null],\r\n\t\tnormalPrice: ['roc-pricing__price', className ? className + '__price' : null],\r\n\t\tcrossedOutPrice: [\r\n\t\t\tpriceClass,\r\n\t\t\t'roc-pricing__price--original',\r\n\t\t\tclassName ? className + '__price--original' : null,\r\n\t\t],\r\n\t\thighlightedPrice: [priceClass, 'roc-pricing__price--sale', className ? className + '__price--sale' : null],\r\n\t};\r\n};\r\n\r\n/**\r\n * Renders a product price. This could be a simple price \"$4.99\", a price that's on sale \"~~$4.99~~ $3.99\",\r\n * a range of prices, an ambiguous price or potentially others.\r\n *\r\n * The pricing information is expected to have come from the server where it has already been validated.\r\n * It is the responsibility of the caller to verify pricing objects passed to ProductPricing are valid.\r\n */\r\nexport default function ProductPricing(props: ProductPricingProps) {\r\n\tconst { displayPrice, className, inline = false, testId = 'product-price' } = props;\r\n\r\n\t// The server/caller is trusted to have provided valid props.\r\n\t// Do no validation here.\r\n\r\n\tif (displayPrice == null) {\r\n\t\t// Missing price. Remove this if MissingPrice functionality is ever needed beyond \"don't render\"\r\n\t\treturn null;\r\n\t}\r\n\r\n\tconst css = GetCssClasses(className, inline);\r\n\r\n\tlet renderResult: JSX.Element | null;\r\n\tswitch (displayPrice.displayRule) {\r\n\t\tcase PriceDisplayRule.Missing:\r\n\t\t\trenderResult = renderMissingPrice(css, displayPrice);\r\n\t\t\tbreak;\r\n\r\n\t\tcase PriceDisplayRule.Normal:\r\n\t\t\trenderResult = renderNormalPrice(css, displayPrice, testId);\r\n\t\t\tbreak;\r\n\r\n\t\tcase PriceDisplayRule.AmbiguousRange:\r\n\t\t\trenderResult = renderAmbiguousPrice(css, displayPrice, testId);\r\n\t\t\tbreak;\r\n\r\n\t\tdefault:\r\n\t\t\tthrow new Error('Erroneous price display rule');\r\n\t}\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t{renderResult}\r\n\t\t\r\n\t);\r\n}\r\n\r\n/**\r\n * Renders a missing price, eg nothing. This currently renders nothing but could be updated to render \"Not For Sale\" for example.\r\n * @param css The set of css rules that can be applied.\r\n * @param price The price object\r\n */\r\n// eslint-disable-next-line no-unused-vars\r\nfunction renderMissingPrice(css: CssClasses, price: MissingDisplayPrice) {\r\n\treturn null;\r\n}\r\n\r\n/**\r\n * Renders a normal price. This is a price that might be on sale and may either be a unit price (eg $4.99) or a\r\n * range (eg $3.99 - $7.99).\r\n * @param css The set of css rules that can be applied.\r\n * @param price The price object\r\n */\r\nfunction renderNormalPrice(css: CssClasses, price: SimpleDisplayPrice, testId: string) {\r\n\t// conditionally cross out the base price\r\n\tconst basePriceClass = price.salePrice != null ? css.crossedOutPrice : css.normalPrice;\r\n\r\n\treturn (\r\n\t\t<>\r\n\t\t\t\r\n\t\t\t\t{Localizer('OriginalPrice')}\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\t{price.salePrice != null ? (\r\n\t\t\t\t\r\n\t\t\t\t\t{Localizer('SalePrice')}\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t) : null}\r\n\t\t\r\n\t);\r\n}\r\n\r\n/**\r\n * Renders an ambiguous price. This is a compound price representing multiple different products where the upperbound of the price\r\n * can't be reported in a useful way. The units of measure between the base and sale price may be different.\r\n * @param css The set of css rules that can be applied.\r\n * @param price The price object\r\n */\r\nfunction renderAmbiguousPrice(css: CssClasses, price: AmbiguousDisplayPrice, testId: string) {\r\n\t// conditionally cross out the base price\r\n\tconst basePriceClass = price.salePrice != null ? css.crossedOutPrice : css.normalPrice;\r\n\r\n\treturn (\r\n\t\t<>\r\n\t\t\t\r\n\t\t\t\t{Localizer('OriginalPrice')}\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\t{price.salePrice != null ? (\r\n\t\t\t\t\r\n\t\t\t\t\t{Localizer('SalePrice')}\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t) : null}\r\n\t\t\r\n\t);\r\n}\r\n\r\n/**\r\n * Renders a partial display price (eg it may be either a simple price or a range price)\r\n */\r\nfunction VariantPriceComponent({ price }: { price: PartialDisplayPrice }) {\r\n\tconst label = price.unit?.label;\r\n\r\n\tswitch (typeof price.value) {\r\n\t\tcase 'string':\r\n\t\t\treturn ;\r\n\r\n\t\tcase 'object':\r\n\t\t\treturn ;\r\n\t}\r\n}\r\n\r\nfunction FormatAmbiguousPriceSpan(props: { price: Price; unitName: string }) {\r\n\t// Ambiguous prices always have a unit of measure. It is never optional.\r\n\treturn <>{Localizer('AmbiguousPriceRangeWithUnit', props.price, props.unitName)};\r\n}\r\n\r\n/**\r\n * Renders a price range (eg $14.99 - $19.99) with an optional unit of measure\r\n */\r\nfunction FormatPriceSpan(props: { priceRange: PriceSpan; unitName: string | undefined }) {\r\n\treturn props.unitName != null ? (\r\n\t\t<>\r\n\t\t\t{Localizer(\r\n\t\t\t\t'PriceRangeWithUnit',\r\n\t\t\t\tprops.priceRange.from,\r\n\t\t\t\tprops.priceRange.to,\r\n\t\t\t\tprops.unitName,\r\n\t\t\t)}\r\n\t\t\r\n\t) : (\r\n\t\t<>{Localizer('PriceRangeWithoutUnit', props.priceRange.from, props.priceRange.to)}\r\n\t);\r\n}\r\n\r\n/** Formats the price with the unit of measure (if present) appended. */\r\nfunction FormatPrice(props: { price: Price; unitName?: string }) {\r\n\treturn props.unitName != null ? (\r\n\t\t<>{Localizer('PriceWithUnit', props.price, props.unitName)}\r\n\t) : (\r\n\t\t<>{Localizer('PriceWithoutUnit', props.price)}\r\n\t);\r\n}\r\n","import debounce from 'lodash-es/debounce';\r\n\r\n// String class definitions\r\nconst navToggleButtonClassQuery: string = '.roc-main-nav__toggle-btn';\r\nconst navListClassQuery: string = '.roc-main-nav__list';\r\nconst navListExpandedClass: string = 'roc-main-nav__list--expanded';\r\nconst subNavToggleButtonClassQuery: string = '.roc-main-nav__sub-menu-toggle';\r\nconst subNavToggleButtonExpandedClass: string = 'roc-main-nav__sub-menu-toggle--expanded';\r\nconst subNavExpandedClass: string = 'roc-main-nav__item--expanded';\r\n\r\n/**\r\n * Check if input parent element contains input child element.\r\n *\r\n * @param {*} parent\r\n * @param {*} child\r\n * @returns\r\n */\r\nfunction isDescendant(parent: HTMLElement, child: HTMLElement) {\r\n\tlet node = child.parentNode;\r\n\twhile (node !== null) {\r\n\t\tif (node === parent) {\r\n\t\t\treturn true;\r\n\t\t}\r\n\t\tnode = node.parentNode;\r\n\t}\r\n\treturn false;\r\n}\r\n\r\n/**\r\n * The type for each submenu. Each object contains the toggle button, submenu element, and the open state.\r\n *\r\n * @interface SubMenu\r\n */\r\ninterface SubMenu {\r\n\t/**\r\n\t * The toggle element that triggers the visibility of the [subMenuElement].\r\n\t *\r\n\t * @type {HTMLElement}\r\n\t * @memberof SubMenu\r\n\t */\r\n\ttoggleElement: HTMLElement;\r\n\r\n\t/**\r\n\t * The menu element that is toggled by the [toggleElement].\r\n\t *\r\n\t * @type {HTMLElement}\r\n\t * @memberof SubMenu\r\n\t */\r\n\tsubMenuParentElement: HTMLElement;\r\n\r\n\t/**\r\n\t * The open state of the [subMenuElement].\r\n\t *\r\n\t * @type {boolean}\r\n\t * @memberof SubMenu\r\n\t */\r\n\tisOpen: boolean;\r\n}\r\n\r\n/**\r\n * The type for the class props.\r\n *\r\n * @interface AccessibleNavigationProps\r\n */\r\ninterface AccessibleNavigationProps {\r\n\t/**\r\n\t * The HTML element of the parent