{"version":3,"file":"static/js/index.88ed22ed.js","sources":["webpack://@jotforminc/headerapp/../../configs/tracking-config/src/index.js","webpack://@jotforminc/headerapp/../../../../src/icons/general/bars.svg","webpack://@jotforminc/headerapp/../../libs/header-body/src/assets/svg/arrow.svg","webpack://@jotforminc/headerapp/../../../../src/icons/arrows/arrow-right.svg","webpack://@jotforminc/headerapp/../../libs/header-body/src/assets/svg/government.svg","webpack://@jotforminc/headerapp/../../libs/header-body/src/assets/svg/hipaa.svg","webpack://@jotforminc/headerapp/../../libs/header-body/src/assets/svg/logoJotformDark.svg","webpack://@jotforminc/headerapp/../../libs/header-body/src/assets/svg/logoJotformLight.svg","webpack://@jotforminc/headerapp/../../libs/header-body/src/assets/svg/logoJotformFullLight.svg","webpack://@jotforminc/headerapp/../../libs/header-body/src/assets/svg/logoJotformKoreanDark.svg","webpack://@jotforminc/headerapp/../../libs/header-body/src/assets/svg/logoJotformKoreanLight.svg","webpack://@jotforminc/headerapp/../../libs/header-body/src/assets/svg/logoJotformKoreanFullLight.svg","webpack://@jotforminc/headerapp/../../../../src/icons/general/location-pin-filled.svg","webpack://@jotforminc/headerapp/../../libs/header/src/components/Providers/HeaderProvider.js","webpack://@jotforminc/headerapp/../../libs/router-bridge/src/init.js","webpack://@jotforminc/headerapp/../../libs/header-body/src/components/PreLoaders/LoginGroupPreLoader.js","webpack://@jotforminc/headerapp/../../libs/header-body/src/components/PreLoaders/PreLoaders.js","webpack://@jotforminc/headerapp/../../libs/header-body/src/components/Navigation/HamburgerButton.js","webpack://@jotforminc/headerapp/../../libs/header-body/src/components/Sc/ScHeaderNavigation.js","webpack://@jotforminc/headerapp/../../libs/header-body/src/components/Navigation/Navigation.js","webpack://@jotforminc/headerapp/../../libs/header-body/src/components/MenuTypes/DefaultMenuType.js","webpack://@jotforminc/headerapp/../../libs/header-body/src/components/MenuTypes/TemplatesMenuType.js","webpack://@jotforminc/headerapp/../../libs/header-body/src/components/MenuTypes/IntegrationsMenuType.js","webpack://@jotforminc/headerapp/../../libs/header-body/src/components/MenuTypes/ProductsMenuType.js","webpack://@jotforminc/headerapp/../../libs/enterprise-promotions/src/components/Banners/Product/DedicatedSupportSection.js","webpack://@jotforminc/headerapp/../../libs/enterprise-promotions/src/components/Banners/Product/ProfessionalServicesBanner.js","webpack://@jotforminc/headerapp/../../libs/header-body/src/components/MenuTypes/SupportMenuType.js","webpack://@jotforminc/headerapp/../../libs/header-body/src/components/MenuTypes/SignMenuType.js","webpack://@jotforminc/headerapp/../../libs/header-body/src/components/MenuTypes/PdfEditorMenuType.js","webpack://@jotforminc/headerapp/../../libs/header-body/src/components/NavLink/NavLink.js","webpack://@jotforminc/headerapp/../../libs/header-body/src/menuOptions/myforms.js","webpack://@jotforminc/headerapp/../../libs/header-body/src/menuOptions/templates.js","webpack://@jotforminc/headerapp/../../libs/header-body/src/menuOptions/integrations/integrations.js","webpack://@jotforminc/headerapp/../../libs/header-body/src/menuOptions/integrations/subLinks/featuredIntegrations.js","webpack://@jotforminc/headerapp/../../libs/header-body/src/menuOptions/integrations/subLinks/crm.js","webpack://@jotforminc/headerapp/../../libs/header-body/src/menuOptions/integrations/subLinks/storage.js","webpack://@jotforminc/headerapp/../../libs/header-body/src/menuOptions/integrations/subLinks/payment.js","webpack://@jotforminc/headerapp/../../libs/header-body/src/menuOptions/integrations/subLinks/email.js","webpack://@jotforminc/headerapp/../../libs/header-body/src/menuOptions/products.js","webpack://@jotforminc/headerapp/../../libs/header-body/src/menuOptions/support.js","webpack://@jotforminc/headerapp/../../libs/header-body/src/menuOptions/enterprise.js","webpack://@jotforminc/headerapp/../../libs/header-body/src/menuOptions/pricing.js","webpack://@jotforminc/headerapp/../../libs/header-body/src/menuOptions/pdf-editor.js","webpack://@jotforminc/headerapp/../../libs/header-body/src/menuOptions/sign.js","webpack://@jotforminc/headerapp/../../libs/header-body/src/components/Navigation/NavItems.js","webpack://@jotforminc/headerapp/../../libs/header-body/src/components/Navigation/SignupButtonMobile.js","webpack://@jotforminc/headerapp/../../libs/header-body/src/components/Badges/BadgeGovernment.js","webpack://@jotforminc/headerapp/../../libs/header-body/src/components/Badges/BadgeHipaa.js","webpack://@jotforminc/headerapp/../../libs/header-body/src/components/LogoGroup/SideLink.js","webpack://@jotforminc/headerapp/../../libs/header-body/src/components/LogoGroup/LogoVisual.js","webpack://@jotforminc/headerapp/../../libs/header-body/src/components/LogoGroup/Logo.js","webpack://@jotforminc/headerapp/../../libs/header-body/src/components/LogoGroup/LogoGroup.js","webpack://@jotforminc/headerapp/../../libs/header-body/src/components/Sc/ScHeaderWrapper.js","webpack://@jotforminc/headerapp/../../libs/header-body/src/components/Sc/ScHeaderContainer.js","webpack://@jotforminc/headerapp/../../libs/header-body/src/components/Sc/ScHeader.js","webpack://@jotforminc/headerapp/../../libs/header-body/src/components/Sc/ScLogoWrapper.js","webpack://@jotforminc/headerapp/../../libs/header-body/src/components/Navigation/ContactSalesMobile.js","webpack://@jotforminc/headerapp/../../libs/header-body/src/components/HeaderBody/HeaderBody.js","webpack://@jotforminc/headerapp/../../libs/header/src/utils/abTests/languageSwitcherTest.js","webpack://@jotforminc/headerapp/../../libs/header/src/components/Providers/ModeProvider.js","webpack://@jotforminc/headerapp/../../libs/magnet/src/components/Dropdown/dropdown.types.ts","webpack://@jotforminc/headerapp/../../libs/magnet/src/components/Dropdown/dropdown.cva.ts","webpack://@jotforminc/headerapp/../../libs/magnet/src/components/Tag/tag.cva.ts","webpack://@jotforminc/headerapp/../../libs/magnet/src/components/Tag/tag.types.ts","webpack://@jotforminc/headerapp/../../libs/magnet/src/components/Tag/Tag.tsx","webpack://@jotforminc/headerapp/../../libs/magnet/src/components/Dropdown/Dropdown.tsx","webpack://@jotforminc/headerapp/../../libs/magnet/src/components/Dropdown/DropdownOption.tsx","webpack://@jotforminc/headerapp/../../libs/header/src/components/LanguageSwitcher.js","webpack://@jotforminc/headerapp/../../libs/header/src/assets/svg/notifications/close.svg","webpack://@jotforminc/headerapp/../../libs/header/src/components/DeletedFormNotification.js","webpack://@jotforminc/headerapp/../../libs/header/src/components/Header.js","webpack://@jotforminc/headerapp/./src/index.js","webpack://@jotforminc/headerapp/../../libs/abtest-manager/src/utils/utils.js","webpack://@jotforminc/headerapp/../../libs/abtest-manager/src/utils/ABTestVariantCache.js","webpack://@jotforminc/headerapp/../../libs/abtest-manager/src/utils/layer.js","webpack://@jotforminc/headerapp/../../libs/abtest-manager/src/utils/ABTestManager.js","webpack://@jotforminc/headerapp/../../libs/abtest-manager/src/utils/ActionManager.js","webpack://@jotforminc/headerapp/../../libs/uikit/src/components/Tooltip/index.js","webpack://@jotforminc/headerapp/../../libs/common-button/src/components/Button.js","webpack://@jotforminc/headerapp/../../libs/enterprise-promotions-utils/src/api/index.js","webpack://@jotforminc/headerapp/../../../../src/icons/communication/message-ellipsis-pencil-filled.svg","webpack://@jotforminc/headerapp/../../libs/enterprise-promotions-utils/src/hooks/useHubspotTracker.js","webpack://@jotforminc/headerapp/../../libs/enterprise-promotions-utils/src/components/FeedbackForm.js","webpack://@jotforminc/headerapp/../../libs/enterprise-promotions-utils/src/components/PrefilledLeadFormAside.js","webpack://@jotforminc/headerapp/../../libs/enterprise-promotions-utils/src/constants/assetIdentifier/index.js","webpack://@jotforminc/headerapp/../../libs/enterprise-promotions-utils/src/constants/assetIdentifier/abTest.js","webpack://@jotforminc/headerapp/../../libs/enterprise-promotions-utils/src/constants/assetIdentifier/campaign.js","webpack://@jotforminc/headerapp/../../libs/enterprise-promotions-utils/src/constants/assetIdentifier/product.js","webpack://@jotforminc/headerapp/../../libs/enterprise-promotions-utils/src/constants/assetIdentifier/automation.js","webpack://@jotforminc/headerapp/../../libs/enterprise-promotions-utils/src/constants/assetIdentifier/webinar.js","webpack://@jotforminc/headerapp/../../libs/enterprise-promotions-utils/src/constants/constants.js","webpack://@jotforminc/headerapp/../../libs/enterprise-promotions-utils/src/constants/gaAdFormTrackingItems .js","webpack://@jotforminc/headerapp/../../libs/enterprise-promotions-utils/src/constants/gaFormTrackingItems.js","webpack://@jotforminc/headerapp/../../libs/enterprise-promotions-utils/src/constants/leadFormMap.js","webpack://@jotforminc/headerapp/../../libs/enterprise-promotions-utils/src/constants/leadFormModifiers.js","webpack://@jotforminc/headerapp/../../libs/enterprise-promotions-utils/src/constants/propTypes.js","webpack://@jotforminc/headerapp/../../libs/enterprise-promotions-utils/src/constants/sdrSources.js","webpack://@jotforminc/headerapp/../../libs/enterprise-promotions-utils/src/constants/texts.js","webpack://@jotforminc/headerapp/../../libs/enterprise-promotions-utils/src/constants/urls.js","webpack://@jotforminc/headerapp/../../libs/enterprise-promotions-utils/src/utils/googleAnalyticsTracking.js","webpack://@jotforminc/headerapp/../../libs/enterprise-promotions-utils/src/utils/prefilledFormUtils.js","webpack://@jotforminc/headerapp/../../libs/enterprise-promotions-utils/src/utils/utils.js","webpack://@jotforminc/headerapp/../../libs/enterprise-utils/src/helpers.js","webpack://@jotforminc/headerapp/../../../src/utils/namings.js","webpack://@jotforminc/headerapp/../../../../../src/components/assets/assetList/_46__46__47__46__46__47_assets_47_campaigns_47__42__42__47__42__46_js","webpack://@jotforminc/headerapp/../../../../../src/components/assets/assetList/_46__46__47__46__46__47_assets_47_promotions_47__42__42__47__42__46_js","webpack://@jotforminc/headerapp/../../../../../src/components/assets/assetList/_46__46__47__46__46__47_assets_47_launches_47__42__42__47__42__46_js","webpack://@jotforminc/headerapp/../../../../../src/components/assets/assetList/_46__46__47__46__46__47_assets_47_announcements_47__42__42__47__42__46_js","webpack://@jotforminc/headerapp/../../../src/utils/campaign.js","webpack://@jotforminc/headerapp/../../../src/components/GrowthAssetRenderer.js","webpack://@jotforminc/headerapp/../../../src/components/GrowthAssetManager.js","webpack://@jotforminc/headerapp/../../../src/context/AssetManagerContext.js","webpack://@jotforminc/headerapp/../../libs/header-body/src/components/AccountBoxAvatar/AccountBoxAvatar.js","webpack://@jotforminc/headerapp/../../libs/header-body/src/constants/constants.js","webpack://@jotforminc/headerapp/../../libs/header-body/src/propTypes/propTypes.js","webpack://@jotforminc/headerapp/../../libs/header-body/src/utils/utils.js","webpack://@jotforminc/headerapp/../../libs/header/src/components/Providers/JotformActionsProvider.js","webpack://@jotforminc/headerapp/../../libs/header/src/components/Providers/MobileMenuProvider.js","webpack://@jotforminc/headerapp/../../libs/header/src/components/Providers/UserProvider.js","webpack://@jotforminc/headerapp/../../libs/header/src/constants/constants.js","webpack://@jotforminc/headerapp/../../libs/enterprise-promotions/src/assets/svg/close_revised.svg","webpack://@jotforminc/headerapp/../../libs/enterprise-promotions/src/assets/svg/generalFaqProfessionalServicesBanner/rocket.svg","webpack://@jotforminc/headerapp/../../libs/enterprise-promotions/src/assets/svg/userGuideProfessionalServices/rocket.svg","webpack://@jotforminc/headerapp/../../../../src/icons/general/rocket-square-filled.svg","webpack://@jotforminc/headerapp/../../libs/enterprise-promotions/src/assets/svg/enterpriseRocketMini.svg","webpack://@jotforminc/headerapp/../../../../src/logos/brand/jotform-color.svg","webpack://@jotforminc/headerapp/../../libs/enterprise-promotions/src/assets/svg/blogDownloadBanner/visual.svg","webpack://@jotforminc/headerapp/../../libs/enterprise-promotions/src/assets/svg/advertisementLeadFlowModal/close.svg","webpack://@jotforminc/headerapp/../../libs/enterprise-promotions/src/assets/svg/advertisementLeadFlowModal/visual.svg","webpack://@jotforminc/headerapp/../../libs/enterprise-promotions/src/assets/svg/advertisementLeadFlowBanner/rocket.svg","webpack://@jotforminc/headerapp/../../libs/enterprise-promotions/src/assets/svg/advertisementLeadFlowBanner/visual.svg","webpack://@jotforminc/headerapp/../../libs/header/src/hooks/useUser.js","webpack://@jotforminc/headerapp/../../libs/header/src/hooks/useStickyHeader.js","webpack://@jotforminc/headerapp/../../libs/header/src/hooks/useLazyLoginGroup.js","webpack://@jotforminc/headerapp/../../libs/header/src/hooks/useIsMobileScreen.js","webpack://@jotforminc/headerapp/../../libs/enterprise-promotions-utils/src/utils/renderModal.js","webpack://@jotforminc/headerapp/../../libs/enterprise-promotions/src/components/Modals/Campaign/EttEducationReportModal/Renderers.js","webpack://@jotforminc/headerapp/../../libs/enterprise-promotions/src/components/Modals/Campaign/EttEducationReportModal/EducationReportModal.js","webpack://@jotforminc/headerapp/../../libs/enterprise-promotions/src/components/Modals/Campaign/EttEducationReportModal/EttEducationGatedContentModal.js","webpack://@jotforminc/headerapp/../../libs/enterprise-promotions/src/helpers/renderEttEducationGatedContentModal.js","webpack://@jotforminc/headerapp/../../libs/header/src/enterprisePromotions/epEttGatedContentModal/initEpEttGatedContentModal.js","webpack://@jotforminc/headerapp/../../libs/enterprise-promotions-utils/src/utils/renderAsset.js","webpack://@jotforminc/headerapp/../../libs/enterprise-promotions/src/components/Modals/Campaign/HealthcareReportModal/Renderers.js","webpack://@jotforminc/headerapp/../../libs/enterprise-promotions/src/components/Modals/Campaign/HealthcareReportModal/HealthcareReportModal.js","webpack://@jotforminc/headerapp/../../libs/enterprise-promotions/src/helpers/renderHealthcareReportModal.js","webpack://@jotforminc/headerapp/../../libs/header/src/enterprisePromotions/epHealthcareReportModal/enabledPages.js","webpack://@jotforminc/headerapp/../../libs/header/src/enterprisePromotions/epHealthcareReportModal/initEpHealthcareReportModal.js","webpack://@jotforminc/headerapp/../../libs/enterprise-promotions/src/components/Banners/Product/GeneralFaqProfessionalServicesBanner.js","webpack://@jotforminc/headerapp/../../libs/enterprise-promotions/src/components/Banners/Product/UserGuideProfessionalServicesBanner.js","webpack://@jotforminc/headerapp/../../libs/enterprise-promotions/src/helpers/renderProfServicesAsset.js","webpack://@jotforminc/headerapp/../../libs/header/src/enterprisePromotions/epProfessionalServices/initEpProfessionalServices.js","webpack://@jotforminc/headerapp/../../libs/enterprise-promotions/src/components/Modals/AbTest/EducationDiscountModal/Renderers.js","webpack://@jotforminc/headerapp/../../libs/enterprise-promotions/src/components/Modals/AbTest/EducationDiscountModal/EducationDiscountModal.js","webpack://@jotforminc/headerapp/../../libs/enterprise-promotions/src/components/Banners/Product/BlogEducationSideBanner.js","webpack://@jotforminc/headerapp/../../libs/enterprise-promotions/src/helpers/renderFerpaBanner.js","webpack://@jotforminc/headerapp/../../libs/header/src/enterprisePromotions/epFerpaBanner/initEpFerpaBanner.js","webpack://@jotforminc/headerapp/../../libs/enterprise-promotions/src/components/Modals/Product/PdfDownloadModal/Renderers.js","webpack://@jotforminc/headerapp/../../libs/enterprise-promotions/src/components/Modals/Product/PdfDownloadModal/PdfDownloadModal.js","webpack://@jotforminc/headerapp/../../libs/enterprise-promotions/src/components/Banners/Product/BlogDownloadBanner.js","webpack://@jotforminc/headerapp/../../libs/enterprise-promotions/src/helpers/renderBlogCaseStudies.js","webpack://@jotforminc/headerapp/../../libs/header/src/enterprisePromotions/epCaseStudyAssets/caseStudies.js","webpack://@jotforminc/headerapp/../../libs/header/src/enterprisePromotions/epCaseStudyAssets/index.js","webpack://@jotforminc/headerapp/../../libs/enterprise-promotions/src/components/Modals/AbTest/AdvertisementLeadFlowModal/Renderers.js","webpack://@jotforminc/headerapp/../../libs/enterprise-promotions/src/components/Modals/AbTest/AdvertisementLeadFlowModal/AdvertisementLeadFlowModal.js","webpack://@jotforminc/headerapp/../../libs/enterprise-promotions/src/components/Modals/AbTest/AdvertisementLeadFlowModal/AdSecondExitIntentModal.js","webpack://@jotforminc/headerapp/../../libs/enterprise-promotions/src/components/Modals/AbTest/AdvertisementLeadFlowModal/AdFirstExitIntentModal.js","webpack://@jotforminc/headerapp/../../libs/enterprise-promotions/src/components/Modals/AbTest/AdvertisementLeadFlowModal/AdBannerModal.js","webpack://@jotforminc/headerapp/../../libs/enterprise-promotions/src/components/Banners/AbTest/AdvertisementLeadFlowBanner.js","webpack://@jotforminc/headerapp/../../libs/enterprise-promotions/src/hooks/useActionManager.js","webpack://@jotforminc/headerapp/../../libs/enterprise-promotions/src/components/Flows/AbTest/AdvertisementLeadFlow/AdvertisementLeadFlow.js","webpack://@jotforminc/headerapp/../../libs/enterprise-promotions/src/helpers/renderAdvertisementLeadFlow.js","webpack://@jotforminc/headerapp/../../libs/header/src/enterprisePromotions/epAdLeadFlowBlogPosts/blogPosts.js","webpack://@jotforminc/headerapp/../../libs/header/src/enterprisePromotions/epAdLeadFlowBlogPosts/index.js","webpack://@jotforminc/headerapp/../../libs/header/src/hooks/useEnterprisePromotions.js","webpack://@jotforminc/headerapp/../../libs/header/src/hooks/useLazyIntegrationImages.js","webpack://@jotforminc/headerapp/../../libs/header/src/utils/dom.js","webpack://@jotforminc/headerapp/../../../../src/icons/general/link-diagonal-broken.svg","webpack://@jotforminc/headerapp/../../../../src/icons/general/trash-exclamation-filled.svg","webpack://@jotforminc/headerapp/../../libs/dialog/src/assets/svg/iconHipaaWarning.svg","webpack://@jotforminc/headerapp/../../../../src/icons/communication/envelope-closed-filled.svg","webpack://@jotforminc/headerapp/../../../../src/icons/general/exclamation-circle.svg","webpack://@jotforminc/headerapp/../../libs/login-flow/src/assets/close.svg","webpack://@jotforminc/headerapp/../../../../src/logos/integration/salesforce-logomark-color.svg","webpack://@jotforminc/headerapp/../../libs/login-flow/src/temporary-duplicate/assets/svg/icon_fb.svg","webpack://@jotforminc/headerapp/../../libs/login-flow/src/temporary-duplicate/assets/svg/icon_gl.svg","webpack://@jotforminc/headerapp/../../../../src/icons/general/eye-slash-filled.svg","webpack://@jotforminc/headerapp/../../../../src/icons/general/eye-filled.svg","webpack://@jotforminc/headerapp/../../../../src/icons/general/check-sm.svg","webpack://@jotforminc/headerapp/../../../../src/icons/general/info-circle-filled.svg","webpack://@jotforminc/headerapp/../../libs/login-flow/src/assets/icon_ms.svg","webpack://@jotforminc/headerapp/../../libs/login-flow/src/temporary-duplicate/assets/svg/icon_em.svg","webpack://@jotforminc/headerapp/../../libs/login-flow/src/assets/icon_gl_36.svg","webpack://@jotforminc/headerapp/../../libs/login-flow/src/assets/icon_fb_36.svg","webpack://@jotforminc/headerapp/../../../../src/icons/brand/salesforce-filled.svg","webpack://@jotforminc/headerapp/../../libs/login-flow/src/temporary-duplicate/assets/svg/icon_apple_white.svg","webpack://@jotforminc/headerapp/../../libs/login-flow/src/assets/icon_ms_36.svg","webpack://@jotforminc/headerapp/../../libs/login-flow/src/assets/icon_ap_36.svg","webpack://@jotforminc/headerapp/../../libs/login-flow/src/temporary-duplicate/assets/svg/icon_back3.svg","webpack://@jotforminc/headerapp/../../libs/login-flow/src/temporary-duplicate/assets/svg/icon_back.svg","webpack://@jotforminc/headerapp/../../libs/login-flow/src/assets/idp-icons/auth0-logo-icon.svg","webpack://@jotforminc/headerapp/../../libs/login-flow/src/assets/idp-icons/azure-logo-icon.svg","webpack://@jotforminc/headerapp/../../libs/login-flow/src/assets/idp-icons/google-logo-icon.svg","webpack://@jotforminc/headerapp/../../libs/login-flow/src/assets/idp-icons/microsoft-logo-icon.svg","webpack://@jotforminc/headerapp/../../libs/login-flow/src/assets/idp-icons/okta-logo-icon.svg","webpack://@jotforminc/headerapp/../../../../src/icons/communication/message-filled.svg","webpack://@jotforminc/headerapp/../../../../src/icons/security/scan-filled.svg","webpack://@jotforminc/headerapp/../../libs/two-factor-settings/src/assets/svg/icon_gl.svg","webpack://@jotforminc/headerapp/../../libs/two-factor-settings/src/assets/svg/icon_fb.svg","webpack://@jotforminc/headerapp/../../libs/two-factor-settings/src/assets/svg/icon_apple_white.svg","webpack://@jotforminc/headerapp/../../../../src/icons/security/key-filled.svg","webpack://@jotforminc/headerapp/../../libs/login-flow/src/assets/icon_sf_36.svg","webpack://@jotforminc/headerapp/../../libs/login-flow/src/temporary-duplicate/assets/svg/closeWithCircle.svg","webpack://@jotforminc/headerapp/../../../../src/icons/general/check-circle.svg","webpack://@jotforminc/headerapp/../../../../src/icons/general/flag-filled.svg","webpack://@jotforminc/headerapp/../../libs/header/src/utils/api.js","webpack://@jotforminc/headerapp/../../libs/header/src/utils/date.js","webpack://@jotforminc/headerapp/../../libs/header/src/utils/browser.js","webpack://@jotforminc/headerapp/../../libs/header/src/utils/jotform.js","webpack://@jotforminc/headerapp/../../libs/header/src/utils/fullstory.js","webpack://@jotforminc/headerapp/../../libs/header/src/utils/loginFlow/customRedirects.js","webpack://@jotforminc/headerapp/../../libs/utils/src/requestUtils.js","webpack://@jotforminc/headerapp/../../libs/utils/src/api.js","webpack://@jotforminc/headerapp/../../libs/utils/src/loginSignup.js","webpack://@jotforminc/headerapp/../../libs/constants/src/texts/index.js","webpack://@jotforminc/headerapp/../../libs/dialog/src/components/Dialog.js","webpack://@jotforminc/headerapp/../../libs/login-flow/src/utils/layer.js","webpack://@jotforminc/headerapp/../../libs/login-flow/src/utils/helper.js","webpack://@jotforminc/headerapp/../../libs/login-flow/src/components/OFACModal/OFACModal.js","webpack://@jotforminc/headerapp/../../libs/login-flow/src/components/OFACModal/index.js","webpack://@jotforminc/headerapp/../../libs/login-flow/src/utils/loginSignup.js","webpack://@jotforminc/headerapp/../../libs/login-flow/src/components/SalesforceButton.js","webpack://@jotforminc/headerapp/../../libs/login-flow/src/components/FacebookButton.js","webpack://@jotforminc/headerapp/../../libs/login-flow/src/components/GoogleButton.js","webpack://@jotforminc/headerapp/../../libs/login-flow/src/components/Password/scPassword.js","webpack://@jotforminc/headerapp/../../libs/login-flow/src/components/Password/RequirementsList.js","webpack://@jotforminc/headerapp/../../libs/login-flow/src/components/Password/constants.js","webpack://@jotforminc/headerapp/../../libs/login-flow/src/components/ErrorAlert.js","webpack://@jotforminc/headerapp/../../libs/login-flow/src/components/Password/index.js","webpack://@jotforminc/headerapp/../../libs/login-flow/src/components/TermsAndConditionsUrls.js","webpack://@jotforminc/headerapp/../../libs/login-flow/src/components/MicrosoftButton.js","webpack://@jotforminc/headerapp/../../libs/login-flow/src/components/AppleButton.js","webpack://@jotforminc/headerapp/../../libs/login-flow/src/components/SocialButtons.js","webpack://@jotforminc/headerapp/../../libs/login-flow/src/api/manager.js","webpack://@jotforminc/headerapp/../../libs/login-flow/src/api/index.js","webpack://@jotforminc/headerapp/../../libs/login-flow/src/components/SignupOptions.js","webpack://@jotforminc/headerapp/../../libs/login-flow/src/constants/index.js","webpack://@jotforminc/headerapp/../../libs/login-flow/src/components/SignupWithEmail.js","webpack://@jotforminc/headerapp/../../libs/login-flow/src/assets/idp-icons/onelogin-logo-icon.svg","webpack://@jotforminc/headerapp/../../libs/login-flow/src/assets/idp-icons/private-logo-icon.svg","webpack://@jotforminc/headerapp/../../libs/login-flow/src/assets/idp-icons/icons.js","webpack://@jotforminc/headerapp/../../libs/login-flow/src/components/SSOLoginOptions.js","webpack://@jotforminc/headerapp/../../libs/login-flow/src/components/LoginOptions.js","webpack://@jotforminc/headerapp/../../libs/login-flow/src/components/ForgotPassword.js","webpack://@jotforminc/headerapp/../../libs/pie-timer/src/sc/scPieTimer.js","webpack://@jotforminc/headerapp/../../libs/pie-timer/src/index.js","webpack://@jotforminc/headerapp/../../libs/verification-input/src/index.js","webpack://@jotforminc/headerapp/../../libs/toggle/src/index.js","webpack://@jotforminc/headerapp/../../libs/option-group/src/components/StyledComponents.js","webpack://@jotforminc/headerapp/../../libs/option-group/src/components/OptionGroup.js","webpack://@jotforminc/headerapp/../../libs/two-factor-settings/src/helpers/constants.js","webpack://@jotforminc/headerapp/../../libs/two-factor-settings/src/components/styled.js","webpack://@jotforminc/headerapp/../../libs/two-factor-settings/src/sc/scTwoFactorSettings.js","webpack://@jotforminc/headerapp/../../libs/two-factor-settings/src/components/InfoBox.js","webpack://@jotforminc/headerapp/../../libs/login-flow/src/components/Checkbox.js","webpack://@jotforminc/headerapp/../../libs/login-flow/src/components/TwoFactorLogin.js","webpack://@jotforminc/headerapp/../../libs/login-flow/src/components/EmailAuthLogin.js","webpack://@jotforminc/headerapp/../../libs/login-flow/src/components/TwoFactorMethods.js","webpack://@jotforminc/headerapp/../../libs/login-flow/src/components/SocialInit.js","webpack://@jotforminc/headerapp/../../libs/login-flow/src/components/LoginError.js","webpack://@jotforminc/headerapp/../../libs/login-flow/src/components/DeleteAccountModal/DeleteAccountModalStep1.js","webpack://@jotforminc/headerapp/../../libs/login-flow/src/components/DeleteAccountModal/SocialsContainer.js","webpack://@jotforminc/headerapp/../../libs/login-flow/src/components/DeleteAccountModal/ModalHeader.js","webpack://@jotforminc/headerapp/../../libs/login-flow/src/components/DeleteAccountModal/ErrorMessage.js","webpack://@jotforminc/headerapp/../../libs/login-flow/src/components/DeleteAccountModal/DeleteAccountModalStep2.js","webpack://@jotforminc/headerapp/../../libs/login-flow/src/components/DeleteAccountModal/DeleteAccountModalStep3.js","webpack://@jotforminc/headerapp/../../libs/login-flow/src/components/DeleteAccountModal/DeleteAccountModal.js","webpack://@jotforminc/headerapp/../../libs/login-flow/src/components/ResetSuccess.js","webpack://@jotforminc/headerapp/../../libs/login-flow/src/components/SocialTermsStep.js","webpack://@jotforminc/headerapp/../../libs/login-flow/src/components/SocialTermsModal.js","webpack://@jotforminc/headerapp/../../libs/login-flow/src/utils/renderStandaloneSocialTermsModal.js","webpack://@jotforminc/headerapp/../../libs/login-flow/src/components/EmailAuthLoginModal.js","webpack://@jotforminc/headerapp/../../libs/login-flow/src/utils/renderStandaloneEmailAuthModal.js","webpack://@jotforminc/headerapp/../../libs/login-flow/src/components/VerifyAccountModal/Verification.js","webpack://@jotforminc/headerapp/../../libs/login-flow/src/components/VerifyAccountModal/index.js","webpack://@jotforminc/headerapp/../../libs/login-flow/src/components/UnusualSignup/index.js","webpack://@jotforminc/headerapp/../../libs/login-flow/src/components/SignupWithSocialOpts.js","webpack://@jotforminc/headerapp/../../libs/login-flow/src/components/RecoverAccountPage.js","webpack://@jotforminc/headerapp/../../libs/login-flow/src/components/RecoverAccountNotification.js","webpack://@jotforminc/headerapp/../../libs/login-flow/src/components/AccountRecoveryViewTicket.js","webpack://@jotforminc/headerapp/../../libs/login-flow/src/components/LoginFlow.js","webpack://@jotforminc/headerapp/../../libs/login-flow/src/utils/loginFlowHelper.js","webpack://@jotforminc/headerapp/../../libs/header/src/utils/scriptLoaders/loadByApplyingLazyIgnoredElements.js","webpack://@jotforminc/headerapp/../../libs/header/src/utils/scriptLoaders/loadAfter.js","webpack://@jotforminc/headerapp/../../libs/header/src/utils/scriptLoaders/loadAndInsertAsFirstScript.js","webpack://@jotforminc/headerapp/../../libs/header/src/utils/loginFlow/loadLoginFlow.js","webpack://@jotforminc/headerapp/../../libs/header/src/utils/ActionManager.js","webpack://@jotforminc/headerapp/../../libs/header/src/utils/loginFlow/openLoginFlow.js","webpack://@jotforminc/headerapp/../../libs/header/src/utils/loginFlow/attachLoginFlowOpenerToWindow.js","webpack://@jotforminc/headerapp/../../libs/header/src/utils/loginFlow/toggleSignupLoaders.js","webpack://@jotforminc/headerapp/../../libs/header/src/utils/loginFlow/createSocialTermsFlow.js","webpack://@jotforminc/headerapp/../../libs/header/src/utils/loginFlow/initGoogleOneTap.js","webpack://@jotforminc/headerapp/../../libs/header/src/utils/loginFlow/listenAppSignInOnFailure.js","webpack://@jotforminc/headerapp/../../libs/header/src/utils/loginFlow/openSocialLoginFlow.js","webpack://@jotforminc/headerapp/../../libs/header/src/utils/loginFlow/attachLoginFlowToTrioButtons.js","webpack://@jotforminc/headerapp/../../libs/header/src/utils/loginFlow/initLoginFlowTrioButtons.js","webpack://@jotforminc/headerapp/../../libs/header/src/utils/loginFlow/attachObsoleteSignupLoadingFunctionToWindow.js","webpack://@jotforminc/headerapp/../../libs/header/src/utils/yieldToMain.js","webpack://@jotforminc/headerapp/../../libs/header/src/utils/jotCookie.js","webpack://@jotforminc/headerapp/../../libs/hooks/src/index.js","webpack://@jotforminc/headerapp/../../libs/loading/src/components/Loading.js","webpack://@jotforminc/headerapp/../../libs/router-bridge/src/jfrouter.js","webpack://@jotforminc/headerapp/../../libs/storage-helper/src/constants.js","webpack://@jotforminc/headerapp/../../libs/storage-helper/src/index.js","webpack://@jotforminc/headerapp/../../libs/styled-modal/src/components/StyledModal/styled.js","webpack://@jotforminc/headerapp/../../libs/styled-modal/src/components/StyledModal/index.js","webpack://@jotforminc/headerapp/../../../../src/icons/arrows/angle-down.svg","webpack://@jotforminc/headerapp/../../../../src/icons/arrows/chevron-left.svg","webpack://@jotforminc/headerapp/../../../../src/icons/arrows/chevron-right.svg","webpack://@jotforminc/headerapp/../../../../src/icons/general/check-circle-filled.svg","webpack://@jotforminc/headerapp/../../../../src/icons/general/check.svg","webpack://@jotforminc/headerapp/../../../../src/icons/general/exclamation-circle-filled.svg","webpack://@jotforminc/headerapp/../../../../src/icons/general/exclamation-triangle-filled.svg","webpack://@jotforminc/headerapp/../../../../src/icons/general/magnifying-glass.svg","webpack://@jotforminc/headerapp/../../../../src/icons/general/xmark-sm.svg","webpack://@jotforminc/headerapp/../../../../src/icons/general/xmark.svg","webpack://@jotforminc/headerapp/../../../../src/icons/security/lock-filled.svg","webpack://@jotforminc/headerapp/../../libs/tooltip/src/components/index.js","webpack://@jotforminc/headerapp/../../libs/translation/src/hof.js","webpack://@jotforminc/headerapp/../../libs/translation/src/domHelper.js","webpack://@jotforminc/headerapp/../../libs/translation/src/Translation.js","webpack://@jotforminc/headerapp/../../libs/translation/src/constants/index.js","webpack://@jotforminc/headerapp/../../libs/translation/src/utils.js","webpack://@jotforminc/headerapp/../../libs/translation/src/index.js","webpack://@jotforminc/headerapp/../../libs/translation/src/global.js","webpack://@jotforminc/headerapp/../../libs/uikit/src/components/Button/index.js","webpack://@jotforminc/headerapp/../../libs/uikit/src/components/Modal/index.js","webpack://@jotforminc/headerapp/../../libs/uikit/src/components/Option/index.js","webpack://@jotforminc/headerapp/../../libs/uikit/src/components/OptionGroup/index.js","webpack://@jotforminc/headerapp/../../libs/uikit/src/components/Popover/index.js","webpack://@jotforminc/headerapp/../../libs/uikit/src/components/Portal/index.js","webpack://@jotforminc/headerapp/../../libs/uikit/src/components/SelectionGroup/index.js","webpack://@jotforminc/headerapp/../../libs/uikit/src/utils/constants.js","webpack://@jotforminc/headerapp/../../libs/uikit/src/utils/hooks.js","webpack://@jotforminc/headerapp/../../libs/uikit/src/utils/index.js","webpack://@jotforminc/headerapp/../../libs/utils/src/cookies.js","webpack://@jotforminc/headerapp/../../libs/utils/src/data.js","webpack://@jotforminc/headerapp/../../libs/utils/src/dom.js","webpack://@jotforminc/headerapp/../../libs/utils/src/misc.js","webpack://@jotforminc/headerapp/../../libs/constants/src/platforms/index.js","webpack://@jotforminc/headerapp/../../libs/feature-flag/src/components/FeatureFlag/FeatureFlag.js","webpack://@jotforminc/headerapp/../../libs/utils/src/platform/platform.js","webpack://@jotforminc/headerapp/../../libs/utils/src/validation.js","webpack://@jotforminc/headerapp/../../libs/magnet/src/components/Button/button.cva.ts","webpack://@jotforminc/headerapp/../../libs/magnet/src/components/Button/button.types.ts","webpack://@jotforminc/headerapp/../../libs/magnet/src/components/Button/ButtonContent.tsx","webpack://@jotforminc/headerapp/../../libs/magnet/src/components/Loader/loader.cva.ts","webpack://@jotforminc/headerapp/../../libs/magnet/src/components/Loader/loader.types.ts","webpack://@jotforminc/headerapp/../../libs/magnet/src/components/Loader/Loader.tsx","webpack://@jotforminc/headerapp/../../libs/magnet/src/components/Button/Button.tsx","webpack://@jotforminc/headerapp/../../../../src/icons/general/minus.svg","webpack://@jotforminc/headerapp/../../libs/magnet/src/components/Checkbox/checkbox.cva.ts","webpack://@jotforminc/headerapp/../../libs/magnet/src/components/Checkbox/checkbox.types.ts","webpack://@jotforminc/headerapp/../../libs/magnet/src/shared/ChoiceLabel/choice-label.cva.ts","webpack://@jotforminc/headerapp/../../libs/magnet/src/shared/ChoiceLabel/ChoiceLabel.tsx","webpack://@jotforminc/headerapp/../../libs/magnet/src/shared/ChoiceLabel/choice-label.types.ts","webpack://@jotforminc/headerapp/../../libs/magnet/src/components/Checkbox/Checkbox.tsx","webpack://@jotforminc/headerapp/../../libs/magnet/src/components/Indicator/indicator.cva.ts","webpack://@jotforminc/headerapp/../../libs/magnet/src/components/Indicator/Indicator.tsx","webpack://@jotforminc/headerapp/../../libs/magnet/src/components/Indicator/indicator.types.ts","webpack://@jotforminc/headerapp/../../libs/magnet/src/components/Input/input.cva.ts","webpack://@jotforminc/headerapp/../../libs/magnet/src/components/Input/BaseInput.tsx","webpack://@jotforminc/headerapp/../../libs/magnet/src/components/Input/InputText.tsx","webpack://@jotforminc/headerapp/../../libs/magnet/src/components/Input/input.types.ts","webpack://@jotforminc/headerapp/../../libs/magnet/src/components/ColorPicker/color-picker.types.ts","webpack://@jotforminc/headerapp/../../libs/magnet/src/constants/common.cva.ts","webpack://@jotforminc/headerapp/../../libs/magnet/src/constants/common.values.ts","webpack://@jotforminc/headerapp/../../libs/magnet/src/contexts/index.tsx","webpack://@jotforminc/headerapp/../../libs/magnet/src/tokens/colors/primary.ts","webpack://@jotforminc/headerapp/../../libs/magnet/src/tokens/colors/secondary.ts","webpack://@jotforminc/headerapp/../../libs/magnet/src/utils/index.ts","webpack://@jotforminc/headerapp/../../libs/request-layer/src/request-cache/constants.ts","webpack://@jotforminc/headerapp/../../libs/request-layer/src/request-cache/utils.ts","webpack://@jotforminc/headerapp/../../libs/request-layer/src/request-cache/index.ts","webpack://@jotforminc/headerapp/../../libs/request-layer/src/utils/argumentParser.ts","webpack://@jotforminc/headerapp/../../libs/request-layer/src/utils/constructInterceptorConfig.ts","webpack://@jotforminc/headerapp/../../libs/request-layer/src/layer/interceptors/index.ts","webpack://@jotforminc/headerapp/../../libs/request-layer/src/layer/interceptors/defaultInterceptors/index.ts","webpack://@jotforminc/headerapp/../../libs/request-layer/src/layer/interceptors/defaultInterceptors/utils.ts","webpack://@jotforminc/headerapp/../../libs/request-layer/src/layer/interceptors/defaultInterceptors/platform/salesforceInterceptors.ts","webpack://@jotforminc/headerapp/../../libs/request-layer/src/layer/interceptors/defaultInterceptors/defaultInterceptors.ts","webpack://@jotforminc/headerapp/../../libs/request-layer/src/utils/setInterceptors.ts","webpack://@jotforminc/headerapp/../../libs/request-layer/src/layer/engines/utils.ts","webpack://@jotforminc/headerapp/../../libs/request-layer/src/layer/engines/constants.ts","webpack://@jotforminc/headerapp/../../libs/request-layer/src/layer/engines/AxiosEngine.ts","webpack://@jotforminc/headerapp/../../libs/request-layer/src/layer/utils.ts","webpack://@jotforminc/headerapp/../../libs/request-layer/src/layer/index.ts","webpack://@jotforminc/headerapp/../../libs/request-layer/src/layer/interceptors/customInterceptors/index.ts","webpack://@jotforminc/headerapp/../../libs/request-layer/src/utils/managerUtils.ts","webpack://@jotforminc/headerapp/../../libs/tracking/src/utils/types.ts","webpack://@jotforminc/headerapp/../../libs/tracking/src/utils/FullStoryManager.ts","webpack://@jotforminc/headerapp/../../libs/tracking/src/constants/index.ts","webpack://@jotforminc/headerapp/../../libs/tracking/src/utils/SentryManager.ts","webpack://@jotforminc/headerapp/../../libs/tracking/src/utils/TrackingManager.ts","webpack://@jotforminc/headerapp/../../libs/tracking/src/index.ts"],"sourcesContent":["const { window } = global;\n\nconst getSheetsDSN = () => {\n if (window?.isReport) {\n return 'https://d69c7dc71f6243c19aa8f1466c32ab5c@o61806.ingest.sentry.io/5352078';\n }\n\n if (window?.isBoards) {\n return 'https://983ae60052ddc6cf8a60dca2bfaa3b8c@o61806.ingest.us.sentry.io/4507571577749504';\n }\n\n // Sheets\n return 'https://23de99eacf6c4a068ba11e1a39556e6a@o61806.ingest.sentry.io/1211430';\n};\n\nconst getFSEnabledForSignFiller = () => {\n try {\n return window?.parent?.fsEnabled;\n } catch (e) {\n return false;\n }\n};\n\nmodule.exports = {\n academy: {\n sentry: {\n enable: true,\n dsn: 'https://e21856d505644c643840103d8dbd250c@o61806.ingest.sentry.io/4506626385641472'\n // name: 'academy',\n }\n },\n checkout: {\n sentry: {\n enable: true,\n dsn: 'https://ca58c76e1157458f941020590eab787c@o61806.ingest.sentry.io/4505396476641280'\n },\n fullStory: {\n enable: true\n }\n },\n 'data-dashboards': {\n sentry: {\n enable: true,\n dsn: 'https://64a93c3dc440e48a9118dc2c169351ef@o61806.ingest.us.sentry.io/4507407451160576'\n }\n },\n 'email-builder': {\n sentry: {\n enable: true,\n dsn: 'https://6625f7b197c65a4d8e49bc8e7641c8c2@o61806.ingest.us.sentry.io/4507407576465408'\n }\n },\n 'email-details': {\n sentry: {\n enable: true,\n dsn: 'https://e0a74287bf15c46b981ddad77de5d7d7@o61806.ingest.sentry.io/4505822059823104'\n },\n fullStory: {\n enable: false\n }\n },\n 'form-builder': {\n sentry: {\n enable: true,\n dsn: 'https://7b39e767f39941dd89d9361cf50382dd@o61806.ingest.sentry.io/132624',\n name: 'jotform-40'\n }\n },\n inbox: {\n sentry: {\n enable: true,\n dsn: 'https://f5fc3cd88f0744df9e3c8a263cd00db1@o61806.ingest.sentry.io/1353659'\n // name: 'inbox'\n },\n fullStory: {\n enable: window?.isFullStoryEnabled\n }\n },\n 'interview-management': {\n sentry: {\n enable: true,\n dsn: 'https://f875f9d7646f4149a6bfff821534e23b@o61806.ingest.sentry.io/4504971807162368'\n }\n },\n listings: {\n sentry: {\n enable: true,\n dsn: 'https://2c715cb8ed4745c383ff6830ca885807@o61806.ingest.sentry.io/5975209',\n name: 'listings'\n },\n fullStory: {\n enable: window?.isFullStoryEnabled\n }\n },\n myaccount: {\n sentry: {\n enable: true,\n dsn: 'https://4048665e726d45eba296f250ad4d09bb@o61806.ingest.sentry.io/6396369'\n // name: 'myaccountv4'\n },\n fullStory: {\n enable: window?.fullstoryEnabled\n }\n },\n 'page-builder': {\n sentry: {\n enable: true,\n dsn: 'https://727c1f481e28485a97e8a4ddae1bdaab@o61806.ingest.sentry.io/6179928'\n // name: 'landing-builder'\n }\n },\n 'pdf-editor': {\n sentry: {\n enable: window?.location.href.indexOf('download') < 0,\n dsn: 'https://10dcd48960b74f9e84c93bee96ee2c9e@o61806.ingest.sentry.io/1234288'\n // name: 'pdf-designer'\n },\n fullStory: {\n enable: window?.isFullStoryEnabled\n }\n },\n portal: {\n sentry: {\n enable: true,\n dsn: 'https://36d29a013f8a4bd7adfe310f5fe4d75a@o61806.ingest.sentry.io/5223511',\n name: 'app-builder'\n },\n fullStory: {\n enable: window?.fullStoryActiveForPortal\n }\n },\n 'refund-request': {\n sentry: {\n enable: true,\n dsn: 'https://c2bf244d1db8d74e25fafaf1b8f70747@o61806.ingest.sentry.io/4505786346110976'\n },\n fullStory: {\n enable: true\n }\n },\n sheets: {\n sentry: {\n enable: true,\n dsn: getSheetsDSN()\n // name: ['reports', 'spreadsheets']\n }\n },\n sign: {\n sentry: {\n enable: true,\n dsn: 'https://9b0abbc9280c47c683b8a9067f61e88e@o61806.ingest.sentry.io/5680940'\n // name: 'sign'\n },\n fullStory: {\n enable: window?.fsEnabled\n }\n },\n 'sign-filler': {\n sentry: {\n enable: true,\n dsn: 'https://1e23807c9020c755e635a09392e97b22@o61806.ingest.us.sentry.io/4507339316985856'\n },\n fullStory: {\n enable: getFSEnabledForSignFiller()\n }\n },\n 'subscription-dashboard': {\n sentry: {\n enable: true,\n dsn: 'https://75f5c88aeffd4f54964275c0fba96d59@o61806.ingest.sentry.io/6190171'\n // name: 'subscription-dashboard'\n }\n },\n workflow: {\n sentry: {\n enable: true,\n dsn: 'https://15571fc5437e4368b4e2ed0e32c6d93f@o61806.ingest.sentry.io/5261296'\n // name: 'workflow'\n },\n fullStory: {\n enable: !window?.isTemplateMode\n }\n },\n 'ai-agent-builder': {\n sentry: {\n enable: true,\n dsn: 'https://59098a0cef7524a00cbc88db5b10e2f5@o61806.ingest.us.sentry.io/4507883422875648'\n },\n fullStory: {\n enable: window?.fsEnabled\n }\n }\n};\n","\n \n\n","var _path;\nfunction _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nimport * as React from \"react\";\nconst SvgArrow = props => /*#__PURE__*/React.createElement(\"svg\", _extends({\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 8 4\"\n}, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M0.861934 0.195262C1.12228 -0.0650874 1.54439 -0.0650874 1.80474 0.195262L4 2.39052L6.19527 0.195262C6.45562 -0.0650874 6.87773 -0.0650874 7.13808 0.195262C7.39843 0.455612 7.39843 0.877722 7.13808 1.13807L4.47141 3.80474C4.21106 4.06509 3.78895 4.06509 3.5286 3.80474L0.861934 1.13807C0.601584 0.877722 0.601584 0.455612 0.861934 0.195262Z\",\n fill: \"currentColor\"\n})));\nexport default SvgArrow;","\n \n\n","var _path;\nfunction _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nimport * as React from \"react\";\nconst SvgGovernment = props => /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 20\"\n}, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M8.054 11.522a2.498 2.498 0 0 0-2.515-2.506 2.538 2.538 0 0 0-2.521 2.53L3 19.49a2.498 2.498 0 0 0 2.514 2.506 2.538 2.538 0 0 0 2.522-2.531l.018-7.943Zm6.474 0a2.498 2.498 0 0 0-2.515-2.506 2.538 2.538 0 0 0-2.522 2.53l-.017 7.944a2.498 2.498 0 0 0 2.514 2.506 2.538 2.538 0 0 0 2.522-2.531l.018-7.943Zm3.959-2.506a2.498 2.498 0 0 1 2.514 2.506l-.017 7.943a2.538 2.538 0 0 1-2.522 2.53 2.498 2.498 0 0 1-2.514-2.505l.017-7.943a2.538 2.538 0 0 1 2.522-2.53Zm2.55-1.931L12.57 1.202a1 1 0 0 0-1.14 0L2.963 7.085c-.445.31-.145 1.033.39.945 2.34-.387 5.957-.902 8.646-.902 2.69 0 6.307.515 8.646.902.534.088.835-.636.39-.945Z\",\n clipRule: \"evenodd\"\n})));\nexport default SvgGovernment;","var _g;\nfunction _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nimport * as React from \"react\";\nconst SvgHipaa = props => /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 110 133\"\n}, props), _g || (_g = /*#__PURE__*/React.createElement(\"g\", {\n fill: \"none\",\n fillRule: \"nonzero\"\n}, /*#__PURE__*/React.createElement(\"path\", {\n fill: \"#0C8FF2\",\n d: \"m104.8 15.2-43-13.6C57.4.2 52.6.2 48.2 1.6l-43 13.6c-2.6.8-4.4 3.3-4.4 6v16.2c0 37.1 18.1 71.9 48.5 93.2 1.6 1.2 3.7 1.8 5.6 1.8 1.9 0 4-.5 5.6-1.8C75.8 120 87.9 106 96.2 89.9c8.4-15.9 12.9-34 12.9-52.5V21.2c.3-2.7-1.5-5.2-4.3-6Z\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n fill: \"#FFF\",\n d: \"M72.8 26.1c-2.9-2.4-5-1.8-7.9 3.4-1.9 3.5-5 3.9-6.9 3.8v-.7c2.2-1.1 3.8-3.3 3.8-5.9a6.7 6.7 0 0 0-13.4 0c0 2.6 1.6 4.8 3.8 5.9v.7c-1.9.1-5-.3-6.9-3.8-2.9-5.3-5-5.8-7.9-3.4-3 2.4-14.6 16.3-28.8 15 0 0 2.8 6.4 10.5 5 0 0 4.1 4.3 10.7 1.3 0 0 3.5 3.1 9 .3 0 0 4.1 3.1 8.4.4 0 0 2.5 1.8 5.2 1.3l.2 16.1c-.3-.1-.6-.1-.9-.2 0 0-4.8-1-9.8-2.4-4.8-1.3-10.1-3.3-10.9-4.4.1-.1.2-.1.3-.2.4-.2 1.2-.5 2-.6 1.8-.4 4.2-.5 6.6-.6 4.8-.2 5.7 0 5.8.1 0-.2 2.8.3 3.5-2.5 0 0 .1-.1 0-.2-.2-1.9-1.7-2-2.9-2.3-2-.3-1-.2-3.6-.1-4.4.3-18-.8-19.7 6.4v.5c.6 6.2 13.4 8.9 22.8 10.8-3.2 2.2-4.9 5-5.5 8.6-.3 3.9 2.8 7.6 9.9 11.7-5.4 3.9-9 7.5-8.7 11.8.5 3.6 3.7 8.3 9.8 11.3 0 0-4.3-6.6-4.6-10.2-.3-2.1.9-5.2 6.2-9l.2 13.2c0 1.1.9 2 2 2s2-.9 2-2l.2-12.9c4.8 3.6 5.9 6.6 5.7 8.6-.3 3.6-4.6 10.2-4.6 10.2 6.2-3 9.3-7.8 9.8-11.3.3-4.4-3.3-8-8.7-11.8 7.2-4.1 10.2-7.8 9.9-11.7-.7-3.6-2.4-6.5-5.5-8.6 9.3-1.9 22.2-4.6 22.8-10.8v-.5C85 51.3 71.4 52.4 67 52c-2.7 0-1.6-.1-3.6.1-1.2.2-2.7.3-2.9 2.3v.2c.8 2.8 3.5 2.3 3.5 2.5.1 0 .9-.2 5.8-.1 2.4.1 4.8.3 6.6.6.9.2 1.6.4 2 .6.1.1.3.1.3.2-.8 1.1-6.1 3.1-10.9 4.4-5 1.4-9.8 2.4-9.8 2.4-.1 0-.2 0-.3.1l.2-15.9c2.8.5 5.2-1.3 5.2-1.3 4.3 2.7 8.4-.4 8.4-.4 5.5 2.8 8.9-.3 8.9-.3 6.6 3 10.7-1.3 10.7-1.3 7.7 1.4 10.5-5 10.5-5-14.3 1.3-25.9-12.6-28.8-15ZM48.7 83c-1.8-1.1-2.6-2.6-2.4-3.6.1-1.4-.4-4.7 6.2-7.2l.2 13.3c-1.3-.8-2.6-1.7-4-2.5Zm14.4-3.6c.2 1-.7 2.5-2.4 3.6-1.2.7-2.3 1.5-3.4 2.2l.2-12.7c5.9 2.3 5.5 5.5 5.6 6.9Z\"\n}))));\nexport default SvgHipaa;","var _path, _path2, _path3, _path4, _path5, _path6, _path7, _path8, _path9, _path10, _path11;\nfunction _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nimport * as React from \"react\";\nconst SvgLogoJotformDark = props => /*#__PURE__*/React.createElement(\"svg\", _extends({\n style: {\n transform: \"translateY(-2px)\"\n },\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 167 30\"\n}, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M106.818 6.37702L107.109 6.46019V2.40392L106.975 2.34307C106.77 2.24989 106.44 2.16554 106.06 2.10414C105.674 2.04193 105.219 2.0006 104.755 2.0006C102.949 2.0006 100.918 2.59842 99.8661 3.67542C98.8149 4.75184 98.2353 6.28607 98.2353 8.12166V8.97865H95.5949V13.635H98.2353V27.7904H103.535V13.635H107.109V8.97865H103.535V8.18607C103.535 7.36123 103.823 6.8864 104.192 6.60981C104.572 6.32452 105.072 6.22481 105.528 6.22481C106.214 6.22481 106.611 6.31799 106.818 6.37702Z\",\n fill: \"#0A1551\"\n})), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M49.1243 19.174L44.0006 19.174L44.0038 19.3774C44.044 21.9596 44.9509 24.0849 46.4694 25.5739C48.0238 27.0981 50.2403 27.9765 52.8837 27.9765C58.1751 27.9765 61.8811 23.9254 61.8811 19.0812V3.94955H56.3415V18.9263C56.3415 20.0073 56.0255 20.9611 55.4188 21.6487C54.8085 22.3404 53.9252 22.7382 52.845 22.7382C51.9598 22.7382 51.1104 22.4771 50.4539 21.9162C49.7942 21.3524 49.3534 20.5062 49.254 19.3841C49.2486 19.3235 49.2216 19.2691 49.1825 19.2309L49.1243 19.174Z\",\n fill: \"#0A1551\"\n})), _path3 || (_path3 = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M116.819 9.33463C111.552 9.33463 107.563 13.2099 107.563 18.5909C107.563 23.937 111.551 27.8473 116.819 27.8473C122.087 27.8473 126.075 23.937 126.075 18.5909C126.075 13.2099 122.086 9.33463 116.819 9.33463ZM116.819 23.026C115.782 23.026 114.794 22.648 114.066 21.9163C113.34 21.1869 112.85 20.0832 112.85 18.5909C112.85 17.0808 113.34 15.9778 114.065 15.2534C114.792 14.5267 115.78 14.1559 116.819 14.1559C117.858 14.1559 118.846 14.5267 119.573 15.2534C120.297 15.9778 120.788 17.0808 120.788 18.5909C120.788 20.1011 120.297 21.2041 119.573 21.9285C118.846 22.6552 117.858 23.026 116.819 23.026Z\",\n fill: \"#0A1551\"\n})), _path4 || (_path4 = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M73.0204 9.46392C67.7533 9.46392 63.7641 13.3392 63.7641 18.7202C63.7641 24.0663 67.7524 27.9765 73.0204 27.9765C78.2884 27.9765 82.2767 24.0663 82.2767 18.7202C82.2767 13.3392 78.2875 9.46392 73.0204 9.46392ZM73.0204 23.1553C71.9832 23.1553 70.9954 22.7773 70.2672 22.0456C69.5413 21.3162 69.051 20.2125 69.051 18.7202C69.051 17.2101 69.5418 16.1071 70.2666 15.3827C70.9937 14.656 71.9812 14.2852 73.0204 14.2852C74.0595 14.2852 75.0471 14.656 75.7742 15.3827C76.499 16.1071 76.9898 17.2101 76.9898 18.7202C76.9898 20.2304 76.499 21.3334 75.7742 22.0578C75.0471 22.7845 74.0595 23.1553 73.0204 23.1553Z\",\n fill: \"#0A1551\"\n})), _path5 || (_path5 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M145.727 27.7904H140.471V9.90995H145.521V11.3476C146.684 10.1172 148.531 9.48442 150.126 9.48442C152.315 9.48442 154.166 10.3566 155.18 12.006C155.806 11.1713 156.524 10.567 157.335 10.1596C158.287 9.68097 159.348 9.48442 160.504 9.48442C162.133 9.48442 163.752 9.97937 164.966 11.0937C166.186 12.2135 166.963 13.9253 166.963 16.2835V27.7904H161.845V17.2157C161.845 16.3511 161.633 15.6374 161.217 15.1452C160.809 14.6624 160.166 14.3473 159.198 14.3473C158.314 14.3473 157.627 14.687 157.157 15.2197C156.683 15.757 156.413 16.51 156.413 17.3538V27.7904H151.193V17.2157C151.193 16.3539 150.974 15.6397 150.553 15.1463C150.139 14.6615 149.494 14.3473 148.546 14.3473C147.64 14.3473 146.945 14.6816 146.473 15.2086C145.997 15.7402 145.727 16.4917 145.727 17.3538V27.7904Z\",\n fill: \"#0A1551\"\n})), _path6 || (_path6 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M138.496 9.92466V15.2802L138.086 15.1975C137.596 15.0988 137.174 15.0662 136.783 15.0662C135.669 15.0662 134.679 15.3389 133.968 16.0015C133.262 16.6597 132.775 17.7555 132.775 19.5236V27.7899H127.534V9.90938H132.638V11.6351C133.901 10.1176 135.861 9.8228 137.091 9.8228C137.486 9.8228 137.842 9.85878 138.181 9.89296L138.496 9.92466Z\",\n fill: \"#0A1551\"\n})), _path7 || (_path7 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M93.9746 23.5231L93.701 23.6066C93.5069 23.6659 93.1333 23.7594 92.489 23.7594C92.0605 23.7594 91.5908 23.6593 91.2333 23.3729C90.8868 23.0952 90.6156 22.6185 90.6156 21.7905V13.6369L93.9746 13.6369V9.00224L90.6156 9.00225V3.97336H85.6457L85.6457 9.00225L83.1643 9.00225L83.1643 13.6369H85.6457V21.8551C85.6457 23.6979 86.1904 25.2382 87.1782 26.3189C88.1665 27.4001 90.065 28.0003 91.7627 28.0003C92.1985 28.0003 92.626 27.9588 92.9884 27.8963C93.3462 27.8347 93.6561 27.75 93.8488 27.6564L93.9746 27.5954V23.5231Z\",\n fill: \"#0A1551\"\n})), _path8 || (_path8 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M7.47266 28.5098C8.03906 29.0589 7.6388 29.9996 6.83452 29.9996H1.80114C0.808059 29.9996 0 29.2163 0 28.2536V23.3741C0 22.5944 0.970426 22.2064 1.53682 22.7555L7.47266 28.5098Z\",\n fill: \"#0A1551\"\n})), _path9 || (_path9 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M15.3409 28.8897C13.851 27.4096 13.851 25.0097 15.3409 23.5295L20.718 18.1875C22.2079 16.7073 24.6235 16.7073 26.1134 18.1875C27.6033 19.6677 27.6033 22.0676 26.1134 23.5478L20.7363 28.8897C19.2464 30.3699 16.8308 30.3699 15.3409 28.8897Z\",\n fill: \"#FFB629\"\n})), _path10 || (_path10 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M1.135 15.4667C-0.354897 13.9865 -0.354896 11.5867 1.135 10.1065L10.184 1.11014C11.6739 -0.370046 14.0895 -0.370048 15.5794 1.11014C17.0693 2.59033 17.0693 4.99019 15.5794 6.47038L6.5304 15.4667C5.0405 16.9469 2.6249 16.9469 1.135 15.4667Z\",\n fill: \"#0099FF\"\n})), _path11 || (_path11 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M8.5324 21.8782C7.0425 20.398 7.0425 17.9982 8.5324 16.518L20.7592 4.37085C22.2491 2.89067 24.6647 2.89066 26.1546 4.37085C27.6445 5.85104 27.6445 8.2509 26.1546 9.73109L13.9278 21.8782C12.4379 23.3584 10.0223 23.3584 8.5324 21.8782Z\",\n fill: \"#FF6100\"\n})));\nexport default SvgLogoJotformDark;","var _path, _path2, _path3, _path4, _path5, _path6, _path7, _path8, _path9, _path10, _path11;\nfunction _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nimport * as React from \"react\";\nconst SvgLogoJotformLight = props => /*#__PURE__*/React.createElement(\"svg\", _extends({\n style: {\n transform: \"translateY(-2px)\"\n },\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 167 30\"\n}, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M106.818 6.37702L107.109 6.46019V2.40392L106.975 2.34307C106.77 2.24989 106.44 2.16554 106.06 2.10414C105.674 2.04193 105.219 2.0006 104.755 2.0006C102.949 2.0006 100.918 2.59842 99.8661 3.67542C98.8149 4.75184 98.2353 6.28607 98.2353 8.12166V8.97865H95.5949V13.635H98.2353V27.7904H103.535V13.635H107.109V8.97865H103.535V8.18607C103.535 7.36123 103.823 6.8864 104.192 6.60981C104.572 6.32452 105.072 6.22481 105.528 6.22481C106.214 6.22481 106.611 6.31799 106.818 6.37702Z\",\n fill: \"#FFFFFF\"\n})), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M49.1243 19.174L44.0006 19.174L44.0038 19.3774C44.044 21.9596 44.9509 24.0849 46.4694 25.5739C48.0238 27.0981 50.2403 27.9765 52.8837 27.9765C58.1751 27.9765 61.8811 23.9254 61.8811 19.0812V3.94955H56.3415V18.9263C56.3415 20.0073 56.0255 20.9611 55.4188 21.6487C54.8085 22.3404 53.9252 22.7382 52.845 22.7382C51.9598 22.7382 51.1104 22.4771 50.4539 21.9162C49.7942 21.3524 49.3534 20.5062 49.254 19.3841C49.2486 19.3235 49.2216 19.2691 49.1825 19.2309L49.1243 19.174Z\",\n fill: \"#FFFFFF\"\n})), _path3 || (_path3 = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M116.819 9.33463C111.552 9.33463 107.563 13.2099 107.563 18.5909C107.563 23.937 111.551 27.8473 116.819 27.8473C122.087 27.8473 126.075 23.937 126.075 18.5909C126.075 13.2099 122.086 9.33463 116.819 9.33463ZM116.819 23.026C115.782 23.026 114.794 22.648 114.066 21.9163C113.34 21.1869 112.85 20.0832 112.85 18.5909C112.85 17.0808 113.34 15.9778 114.065 15.2534C114.792 14.5267 115.78 14.1559 116.819 14.1559C117.858 14.1559 118.846 14.5267 119.573 15.2534C120.297 15.9778 120.788 17.0808 120.788 18.5909C120.788 20.1011 120.297 21.2041 119.573 21.9285C118.846 22.6552 117.858 23.026 116.819 23.026Z\",\n fill: \"#FFFFFF\"\n})), _path4 || (_path4 = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M73.0204 9.46392C67.7533 9.46392 63.7641 13.3392 63.7641 18.7202C63.7641 24.0663 67.7524 27.9765 73.0204 27.9765C78.2884 27.9765 82.2767 24.0663 82.2767 18.7202C82.2767 13.3392 78.2875 9.46392 73.0204 9.46392ZM73.0204 23.1553C71.9832 23.1553 70.9954 22.7773 70.2672 22.0456C69.5413 21.3162 69.051 20.2125 69.051 18.7202C69.051 17.2101 69.5418 16.1071 70.2666 15.3827C70.9937 14.656 71.9812 14.2852 73.0204 14.2852C74.0595 14.2852 75.0471 14.656 75.7742 15.3827C76.499 16.1071 76.9898 17.2101 76.9898 18.7202C76.9898 20.2304 76.499 21.3334 75.7742 22.0578C75.0471 22.7845 74.0595 23.1553 73.0204 23.1553Z\",\n fill: \"#FFFFFF\"\n})), _path5 || (_path5 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M145.727 27.7904H140.471V9.90995H145.521V11.3476C146.684 10.1172 148.531 9.48442 150.126 9.48442C152.315 9.48442 154.166 10.3566 155.18 12.006C155.806 11.1713 156.524 10.567 157.335 10.1596C158.287 9.68097 159.348 9.48442 160.504 9.48442C162.133 9.48442 163.752 9.97937 164.966 11.0937C166.186 12.2135 166.963 13.9253 166.963 16.2835V27.7904H161.845V17.2157C161.845 16.3511 161.633 15.6374 161.217 15.1452C160.809 14.6624 160.166 14.3473 159.198 14.3473C158.314 14.3473 157.627 14.687 157.157 15.2197C156.683 15.757 156.413 16.51 156.413 17.3538V27.7904H151.193V17.2157C151.193 16.3539 150.974 15.6397 150.553 15.1463C150.139 14.6615 149.494 14.3473 148.546 14.3473C147.64 14.3473 146.945 14.6816 146.473 15.2086C145.997 15.7402 145.727 16.4917 145.727 17.3538V27.7904Z\",\n fill: \"#FFFFFF\"\n})), _path6 || (_path6 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M138.496 9.92466V15.2802L138.086 15.1975C137.596 15.0988 137.174 15.0662 136.783 15.0662C135.669 15.0662 134.679 15.3389 133.968 16.0015C133.262 16.6597 132.775 17.7555 132.775 19.5236V27.7899H127.534V9.90938H132.638V11.6351C133.901 10.1176 135.861 9.8228 137.091 9.8228C137.486 9.8228 137.842 9.85878 138.181 9.89296L138.496 9.92466Z\",\n fill: \"#FFFFFF\"\n})), _path7 || (_path7 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M93.9746 23.5231L93.701 23.6066C93.5069 23.6659 93.1333 23.7594 92.489 23.7594C92.0605 23.7594 91.5908 23.6593 91.2333 23.3729C90.8868 23.0952 90.6156 22.6185 90.6156 21.7905V13.6369L93.9746 13.6369V9.00224L90.6156 9.00225V3.97336H85.6457L85.6457 9.00225L83.1643 9.00225L83.1643 13.6369H85.6457V21.8551C85.6457 23.6979 86.1904 25.2382 87.1782 26.3189C88.1665 27.4001 90.065 28.0003 91.7627 28.0003C92.1985 28.0003 92.626 27.9588 92.9884 27.8963C93.3462 27.8347 93.6561 27.75 93.8488 27.6564L93.9746 27.5954V23.5231Z\",\n fill: \"#FFFFFF\"\n})), _path8 || (_path8 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M7.47266 28.5098C8.03906 29.0589 7.6388 29.9996 6.83452 29.9996H1.80114C0.808059 29.9996 0 29.2163 0 28.2536V23.3741C0 22.5944 0.970426 22.2064 1.53682 22.7555L7.47266 28.5098Z\",\n fill: \"#FFFFFF\"\n})), _path9 || (_path9 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M15.3409 28.8897C13.851 27.4096 13.851 25.0097 15.3409 23.5295L20.718 18.1875C22.2079 16.7073 24.6235 16.7073 26.1134 18.1875C27.6033 19.6677 27.6033 22.0676 26.1134 23.5478L20.7363 28.8897C19.2464 30.3699 16.8308 30.3699 15.3409 28.8897Z\",\n fill: \"#FFB629\"\n})), _path10 || (_path10 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M1.135 15.4667C-0.354897 13.9865 -0.354896 11.5867 1.135 10.1065L10.184 1.11014C11.6739 -0.370046 14.0895 -0.370048 15.5794 1.11014C17.0693 2.59033 17.0693 4.99019 15.5794 6.47038L6.5304 15.4667C5.0405 16.9469 2.6249 16.9469 1.135 15.4667Z\",\n fill: \"#0099FF\"\n})), _path11 || (_path11 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M8.5324 21.8782C7.0425 20.398 7.0425 17.9982 8.5324 16.518L20.7592 4.37085C22.2491 2.89067 24.6647 2.89066 26.1546 4.37085C27.6445 5.85104 27.6445 8.2509 26.1546 9.73109L13.9278 21.8782C12.4379 23.3584 10.0223 23.3584 8.5324 21.8782Z\",\n fill: \"#FF6100\"\n})));\nexport default SvgLogoJotformLight;","var _path, _path2, _path3, _path4, _path5, _path6, _path7, _path8, _path9, _path10, _path11;\nfunction _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nimport * as React from \"react\";\nconst SvgLogoJotformFullLight = props => /*#__PURE__*/React.createElement(\"svg\", _extends({\n style: {\n transform: \"translateY(-2px)\"\n },\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 167 30\"\n}, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M106.818 6.37702L107.109 6.46019V2.40392L106.975 2.34307C106.77 2.24989 106.44 2.16554 106.06 2.10414C105.674 2.04193 105.219 2.0006 104.755 2.0006C102.949 2.0006 100.918 2.59842 99.8661 3.67542C98.8149 4.75184 98.2353 6.28607 98.2353 8.12166V8.97865H95.5949V13.635H98.2353V27.7904H103.535V13.635H107.109V8.97865H103.535V8.18607C103.535 7.36123 103.823 6.8864 104.192 6.60981C104.572 6.32452 105.072 6.22481 105.528 6.22481C106.214 6.22481 106.611 6.31799 106.818 6.37702Z\",\n fill: \"#FFFFFF\"\n})), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M49.1243 19.174L44.0006 19.174L44.0038 19.3774C44.044 21.9596 44.9509 24.0849 46.4694 25.5739C48.0238 27.0981 50.2403 27.9765 52.8837 27.9765C58.1751 27.9765 61.8811 23.9254 61.8811 19.0812V3.94955H56.3415V18.9263C56.3415 20.0073 56.0255 20.9611 55.4188 21.6487C54.8085 22.3404 53.9252 22.7382 52.845 22.7382C51.9598 22.7382 51.1104 22.4771 50.4539 21.9162C49.7942 21.3524 49.3534 20.5062 49.254 19.3841C49.2486 19.3235 49.2216 19.2691 49.1825 19.2309L49.1243 19.174Z\",\n fill: \"#FFFFFF\"\n})), _path3 || (_path3 = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M116.819 9.33463C111.552 9.33463 107.563 13.2099 107.563 18.5909C107.563 23.937 111.551 27.8473 116.819 27.8473C122.087 27.8473 126.075 23.937 126.075 18.5909C126.075 13.2099 122.086 9.33463 116.819 9.33463ZM116.819 23.026C115.782 23.026 114.794 22.648 114.066 21.9163C113.34 21.1869 112.85 20.0832 112.85 18.5909C112.85 17.0808 113.34 15.9778 114.065 15.2534C114.792 14.5267 115.78 14.1559 116.819 14.1559C117.858 14.1559 118.846 14.5267 119.573 15.2534C120.297 15.9778 120.788 17.0808 120.788 18.5909C120.788 20.1011 120.297 21.2041 119.573 21.9285C118.846 22.6552 117.858 23.026 116.819 23.026Z\",\n fill: \"#FFFFFF\"\n})), _path4 || (_path4 = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M73.0204 9.46392C67.7533 9.46392 63.7641 13.3392 63.7641 18.7202C63.7641 24.0663 67.7524 27.9765 73.0204 27.9765C78.2884 27.9765 82.2767 24.0663 82.2767 18.7202C82.2767 13.3392 78.2875 9.46392 73.0204 9.46392ZM73.0204 23.1553C71.9832 23.1553 70.9954 22.7773 70.2672 22.0456C69.5413 21.3162 69.051 20.2125 69.051 18.7202C69.051 17.2101 69.5418 16.1071 70.2666 15.3827C70.9937 14.656 71.9812 14.2852 73.0204 14.2852C74.0595 14.2852 75.0471 14.656 75.7742 15.3827C76.499 16.1071 76.9898 17.2101 76.9898 18.7202C76.9898 20.2304 76.499 21.3334 75.7742 22.0578C75.0471 22.7845 74.0595 23.1553 73.0204 23.1553Z\",\n fill: \"#FFFFFF\"\n})), _path5 || (_path5 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M145.727 27.7904H140.471V9.90995H145.521V11.3476C146.684 10.1172 148.531 9.48442 150.126 9.48442C152.315 9.48442 154.166 10.3566 155.18 12.006C155.806 11.1713 156.524 10.567 157.335 10.1596C158.287 9.68097 159.348 9.48442 160.504 9.48442C162.133 9.48442 163.752 9.97937 164.966 11.0937C166.186 12.2135 166.963 13.9253 166.963 16.2835V27.7904H161.845V17.2157C161.845 16.3511 161.633 15.6374 161.217 15.1452C160.809 14.6624 160.166 14.3473 159.198 14.3473C158.314 14.3473 157.627 14.687 157.157 15.2197C156.683 15.757 156.413 16.51 156.413 17.3538V27.7904H151.193V17.2157C151.193 16.3539 150.974 15.6397 150.553 15.1463C150.139 14.6615 149.494 14.3473 148.546 14.3473C147.64 14.3473 146.945 14.6816 146.473 15.2086C145.997 15.7402 145.727 16.4917 145.727 17.3538V27.7904Z\",\n fill: \"#FFFFFF\"\n})), _path6 || (_path6 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M138.496 9.92466V15.2802L138.086 15.1975C137.596 15.0988 137.174 15.0662 136.783 15.0662C135.669 15.0662 134.679 15.3389 133.968 16.0015C133.262 16.6597 132.775 17.7555 132.775 19.5236V27.7899H127.534V9.90938H132.638V11.6351C133.901 10.1176 135.861 9.8228 137.091 9.8228C137.486 9.8228 137.842 9.85878 138.181 9.89296L138.496 9.92466Z\",\n fill: \"#FFFFFF\"\n})), _path7 || (_path7 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M93.9746 23.5231L93.701 23.6066C93.5069 23.6659 93.1333 23.7594 92.489 23.7594C92.0605 23.7594 91.5908 23.6593 91.2333 23.3729C90.8868 23.0952 90.6156 22.6185 90.6156 21.7905V13.6369L93.9746 13.6369V9.00224L90.6156 9.00225V3.97336H85.6457L85.6457 9.00225L83.1643 9.00225L83.1643 13.6369H85.6457V21.8551C85.6457 23.6979 86.1904 25.2382 87.1782 26.3189C88.1665 27.4001 90.065 28.0003 91.7627 28.0003C92.1985 28.0003 92.626 27.9588 92.9884 27.8963C93.3462 27.8347 93.6561 27.75 93.8488 27.6564L93.9746 27.5954V23.5231Z\",\n fill: \"#FFFFFF\"\n})), _path8 || (_path8 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M7.47266 28.5098C8.03906 29.0589 7.6388 29.9996 6.83452 29.9996H1.80114C0.808059 29.9996 0 29.2163 0 28.2536V23.3741C0 22.5944 0.970426 22.2064 1.53682 22.7555L7.47266 28.5098Z\",\n fill: \"#FFFFFF\"\n})), _path9 || (_path9 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M15.3409 28.8897C13.851 27.4096 13.851 25.0097 15.3409 23.5295L20.718 18.1875C22.2079 16.7073 24.6235 16.7073 26.1134 18.1875C27.6033 19.6677 27.6033 22.0676 26.1134 23.5478L20.7363 28.8897C19.2464 30.3699 16.8308 30.3699 15.3409 28.8897Z\",\n fill: \"#FFFFFF\"\n})), _path10 || (_path10 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M1.135 15.4667C-0.354897 13.9865 -0.354896 11.5867 1.135 10.1065L10.184 1.11014C11.6739 -0.370046 14.0895 -0.370048 15.5794 1.11014C17.0693 2.59033 17.0693 4.99019 15.5794 6.47038L6.5304 15.4667C5.0405 16.9469 2.6249 16.9469 1.135 15.4667Z\",\n fill: \"#FFFFFF\"\n})), _path11 || (_path11 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M8.5324 21.8782C7.0425 20.398 7.0425 17.9982 8.5324 16.518L20.7592 4.37085C22.2491 2.89067 24.6647 2.89066 26.1546 4.37085C27.6445 5.85104 27.6445 8.2509 26.1546 9.73109L13.9278 21.8782C12.4379 23.3584 10.0223 23.3584 8.5324 21.8782Z\",\n fill: \"#FFFFFF\"\n})));\nexport default SvgLogoJotformFullLight;","var _path, _path2, _path3, _path4, _path5;\nfunction _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nimport * as React from \"react\";\nconst SvgLogoJotformKoreanDark = props => /*#__PURE__*/React.createElement(\"svg\", _extends({\n style: {\n transform: \"translateY(-2px)\"\n },\n viewBox: \"0 0 299 66\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\",\n className: \"jl-main jfLogo-white\"\n}, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M188.28 50.6124C187.16 50.6264 186.049 50.4179 185.01 49.999C183.972 49.5802 183.027 48.9593 182.23 48.1724C180.63 46.5724 179.55 44.1424 179.55 40.8624C179.55 37.5424 180.63 35.1224 182.23 33.5224C183.03 32.7432 183.977 32.13 185.015 31.7181C186.054 31.3062 187.163 31.1038 188.28 31.1224C190.56 31.1224 192.73 31.9224 194.33 33.5224C195.93 35.1224 197 37.5424 197 40.8624C197 44.1824 195.93 46.6024 194.33 48.2024C193.53 48.9816 192.583 49.5948 191.545 50.0067C190.506 50.4186 189.397 50.6211 188.28 50.6024V50.6124ZM188.28 20.5124C176.7 20.5124 167.93 29.0324 167.93 40.8624C167.93 52.6124 176.7 61.2124 188.28 61.2124C199.86 61.2124 208.63 52.6124 208.63 40.8624C208.63 29.0324 199.86 20.5124 188.28 20.5124ZM240.27 61.0824H251.82V38.1424C251.82 36.2424 252.42 34.5924 253.46 33.4324C254.038 32.805 254.744 32.3102 255.532 31.9822C256.319 31.6542 257.168 31.5007 258.02 31.5324C260.1 31.5324 261.52 32.2324 262.43 33.2924C263.36 34.3724 263.83 35.9424 263.83 37.8424V61.0824H275.31V38.1424C275.31 36.2924 275.91 34.6424 276.95 33.4524C277.512 32.8254 278.204 32.3287 278.978 31.9971C279.752 31.6655 280.588 31.5069 281.43 31.5324C283.56 31.5324 284.97 32.2324 285.87 33.2924C286.79 34.3724 287.25 35.9424 287.25 37.8424V61.0824H298.5V35.7824C298.5 30.6124 296.8 26.8424 294.11 24.3824C291.44 21.9324 287.88 20.8424 284.31 20.8424C281.76 20.8424 279.43 21.2824 277.34 22.3324C275.55 23.2324 273.98 24.5524 272.6 26.3924C270.37 22.7624 266.3 20.8424 261.5 20.8424C257.98 20.8424 253.93 22.2424 251.37 24.9424V21.7824H240.27V61.0824ZM235.92 21.8124V33.5824L235.02 33.4024C233.95 33.1924 233.02 33.1124 232.16 33.1124C229.71 33.1124 227.53 33.7124 225.97 35.1724C224.42 36.6224 223.35 39.0324 223.35 42.9124V61.0824H211.83V21.7824H223.05V25.5824C225.82 22.2424 230.13 21.5824 232.84 21.5824C233.7 21.5824 234.49 21.6724 235.24 21.7424L235.92 21.8124ZM96.72 42.1424H107.98L108.11 42.2724C108.19 42.3524 108.25 42.4724 108.26 42.6024C108.309 43.6595 108.567 44.6964 109.02 45.6526C109.474 46.6089 110.113 47.4654 110.9 48.1724C112.382 49.3819 114.248 50.0205 116.16 49.9724C117.219 50.0079 118.273 49.8124 119.248 49.3997C120.224 48.987 121.098 48.3669 121.81 47.5824C123.194 45.9038 123.916 43.7767 123.84 41.6024V8.68242H136.02V41.9424C136.02 52.5924 127.87 61.4924 116.24 61.4924C110.44 61.4924 105.56 59.5624 102.14 56.2124C98.8 52.9424 96.81 48.2724 96.72 42.5924V42.1424ZM166.3 14.0124L166.94 14.2024V5.28242L166.64 5.15242C165.994 4.89541 165.319 4.71745 164.63 4.62242C163.78 4.48242 162.78 4.39242 161.76 4.39242C157.79 4.39242 153.33 5.71242 151.02 8.08242C148.71 10.4424 147.43 13.8124 147.43 17.8524V19.7324H141.63V29.9724H147.43V61.0824H159.08V29.9724H166.94V19.7324H159.08V17.9924C159.08 16.1824 159.71 15.1324 160.52 14.5324C161.385 13.9437 162.415 13.646 163.46 13.6824C164.96 13.6824 165.84 13.8824 166.3 14.0124Z\",\n className: \"jl-main-color jl-main-text jl-main-text-all\",\n fill: \"#0A1551\"\n})), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M16.43 62.6724C17.67 63.8724 16.79 65.9424 15.03 65.9424H3.95C2.91734 65.9558 1.92154 65.559 1.18104 64.8391C0.440538 64.1192 0.015802 63.135 0 62.1024V51.3824C0 49.6624 2.13 48.8124 3.38 50.0224L16.43 62.6724Z\",\n className: \"jl-main-color\",\n fill: \"#0A1551\"\n})), _path3 || (_path3 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M33.72 63.5024C32.943 62.7309 32.3263 61.8133 31.9054 60.8024C31.4846 59.7916 31.2679 58.7074 31.2679 57.6124C31.2679 56.5174 31.4846 55.4333 31.9054 54.4224C32.3263 53.4115 32.943 52.4939 33.72 51.7224L45.54 39.9824C47.1171 38.4179 49.2485 37.54 51.47 37.54C53.6915 37.54 55.8229 38.4179 57.4 39.9824C58.177 40.7539 58.7938 41.6715 59.2146 42.6824C59.6354 43.6933 59.8521 44.7774 59.8521 45.8724C59.8521 46.9674 59.6354 48.0516 59.2146 49.0624C58.7938 50.0733 58.177 50.9909 57.4 51.7624L45.58 63.5024C44.0029 65.0669 41.8715 65.9448 39.65 65.9448C37.4285 65.9448 35.2971 65.0669 33.72 63.5024V63.5024Z\",\n className: \"jl-pen-bottom\",\n fill: \"#FFB629\"\n})), _path4 || (_path4 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M2.5 33.9924C1.72296 33.2209 1.10625 32.3033 0.685406 31.2924C0.264561 30.2816 0.0478973 29.1974 0.0478973 28.1024C0.0478973 27.0074 0.264561 25.9233 0.685406 24.9124C1.10625 23.9015 1.72296 22.9839 2.5 22.2124L22.39 2.44242C23.9671 0.877893 26.0985 0 28.32 0C30.5415 0 32.6729 0.877893 34.25 2.44242C35.027 3.2139 35.6437 4.13152 36.0646 5.1424C36.4854 6.15328 36.7021 7.23744 36.7021 8.33242C36.7021 9.4274 36.4854 10.5116 36.0646 11.5224C35.6437 12.5333 35.027 13.4509 34.25 14.2224L14.35 33.9924C12.7733 35.5539 10.644 36.4299 8.425 36.4299C6.20597 36.4299 4.07665 35.5539 2.5 33.9924V33.9924Z\",\n className: \"jl-pen-top\",\n fill: \"#09F\"\n})), _path5 || (_path5 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M18.76 48.0924C17.983 47.3209 17.3662 46.4033 16.9454 45.3924C16.5246 44.3816 16.3079 43.2974 16.3079 42.2024C16.3079 41.1074 16.5246 40.0233 16.9454 39.0124C17.3662 38.0015 17.983 37.0839 18.76 36.3124L45.63 9.61242C47.2071 8.04789 49.3385 7.17 51.56 7.17C53.7815 7.17 55.9129 8.04789 57.49 9.61242C58.267 10.3839 58.8837 11.3015 59.3046 12.3124C59.7254 13.3233 59.9421 14.4074 59.9421 15.5024C59.9421 16.5974 59.7254 17.6816 59.3046 18.6924C58.8837 19.7033 58.267 20.6209 57.49 21.3924L30.62 48.0924C29.0429 49.6569 26.9115 50.5348 24.69 50.5348C22.4685 50.5348 20.3371 49.6569 18.76 48.0924V48.0924Z\",\n className: \"jl-pen-middle\",\n fill: \"#FF6100\"\n})));\nexport default SvgLogoJotformKoreanDark;","var _path, _path2, _path3, _path4, _path5;\nfunction _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nimport * as React from \"react\";\nconst SvgLogoJotformKoreanLight = props => /*#__PURE__*/React.createElement(\"svg\", _extends({\n style: {\n transform: \"translateY(-2px)\"\n },\n viewBox: \"0 0 299 66\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\",\n className: \"jl-main jfLogo-white\"\n}, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M188.28 50.6124C187.16 50.6264 186.049 50.4179 185.01 49.999C183.972 49.5802 183.027 48.9593 182.23 48.1724C180.63 46.5724 179.55 44.1424 179.55 40.8624C179.55 37.5424 180.63 35.1224 182.23 33.5224C183.03 32.7432 183.977 32.13 185.015 31.7181C186.054 31.3062 187.163 31.1038 188.28 31.1224C190.56 31.1224 192.73 31.9224 194.33 33.5224C195.93 35.1224 197 37.5424 197 40.8624C197 44.1824 195.93 46.6024 194.33 48.2024C193.53 48.9816 192.583 49.5948 191.545 50.0067C190.506 50.4186 189.397 50.6211 188.28 50.6024V50.6124ZM188.28 20.5124C176.7 20.5124 167.93 29.0324 167.93 40.8624C167.93 52.6124 176.7 61.2124 188.28 61.2124C199.86 61.2124 208.63 52.6124 208.63 40.8624C208.63 29.0324 199.86 20.5124 188.28 20.5124ZM240.27 61.0824H251.82V38.1424C251.82 36.2424 252.42 34.5924 253.46 33.4324C254.038 32.805 254.744 32.3102 255.532 31.9822C256.319 31.6542 257.168 31.5007 258.02 31.5324C260.1 31.5324 261.52 32.2324 262.43 33.2924C263.36 34.3724 263.83 35.9424 263.83 37.8424V61.0824H275.31V38.1424C275.31 36.2924 275.91 34.6424 276.95 33.4524C277.512 32.8254 278.204 32.3287 278.978 31.9971C279.752 31.6655 280.588 31.5069 281.43 31.5324C283.56 31.5324 284.97 32.2324 285.87 33.2924C286.79 34.3724 287.25 35.9424 287.25 37.8424V61.0824H298.5V35.7824C298.5 30.6124 296.8 26.8424 294.11 24.3824C291.44 21.9324 287.88 20.8424 284.31 20.8424C281.76 20.8424 279.43 21.2824 277.34 22.3324C275.55 23.2324 273.98 24.5524 272.6 26.3924C270.37 22.7624 266.3 20.8424 261.5 20.8424C257.98 20.8424 253.93 22.2424 251.37 24.9424V21.7824H240.27V61.0824ZM235.92 21.8124V33.5824L235.02 33.4024C233.95 33.1924 233.02 33.1124 232.16 33.1124C229.71 33.1124 227.53 33.7124 225.97 35.1724C224.42 36.6224 223.35 39.0324 223.35 42.9124V61.0824H211.83V21.7824H223.05V25.5824C225.82 22.2424 230.13 21.5824 232.84 21.5824C233.7 21.5824 234.49 21.6724 235.24 21.7424L235.92 21.8124ZM96.72 42.1424H107.98L108.11 42.2724C108.19 42.3524 108.25 42.4724 108.26 42.6024C108.309 43.6595 108.567 44.6964 109.02 45.6526C109.474 46.6089 110.113 47.4654 110.9 48.1724C112.382 49.3819 114.248 50.0205 116.16 49.9724C117.219 50.0079 118.273 49.8124 119.248 49.3997C120.224 48.987 121.098 48.3669 121.81 47.5824C123.194 45.9038 123.916 43.7767 123.84 41.6024V8.68242H136.02V41.9424C136.02 52.5924 127.87 61.4924 116.24 61.4924C110.44 61.4924 105.56 59.5624 102.14 56.2124C98.8 52.9424 96.81 48.2724 96.72 42.5924V42.1424ZM166.3 14.0124L166.94 14.2024V5.28242L166.64 5.15242C165.994 4.89541 165.319 4.71745 164.63 4.62242C163.78 4.48242 162.78 4.39242 161.76 4.39242C157.79 4.39242 153.33 5.71242 151.02 8.08242C148.71 10.4424 147.43 13.8124 147.43 17.8524V19.7324H141.63V29.9724H147.43V61.0824H159.08V29.9724H166.94V19.7324H159.08V17.9924C159.08 16.1824 159.71 15.1324 160.52 14.5324C161.385 13.9437 162.415 13.646 163.46 13.6824C164.96 13.6824 165.84 13.8824 166.3 14.0124Z\",\n className: \"jl-main-color jl-main-text jl-main-text-all\",\n fill: \"#FFFFFF\"\n})), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M16.43 62.6724C17.67 63.8724 16.79 65.9424 15.03 65.9424H3.95C2.91734 65.9558 1.92154 65.559 1.18104 64.8391C0.440538 64.1192 0.015802 63.135 0 62.1024V51.3824C0 49.6624 2.13 48.8124 3.38 50.0224L16.43 62.6724Z\",\n className: \"jl-main-color\",\n fill: \"#FFFFFF\"\n})), _path3 || (_path3 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M33.72 63.5024C32.943 62.7309 32.3263 61.8133 31.9054 60.8024C31.4846 59.7916 31.2679 58.7074 31.2679 57.6124C31.2679 56.5174 31.4846 55.4333 31.9054 54.4224C32.3263 53.4115 32.943 52.4939 33.72 51.7224L45.54 39.9824C47.1171 38.4179 49.2485 37.54 51.47 37.54C53.6915 37.54 55.8229 38.4179 57.4 39.9824C58.177 40.7539 58.7938 41.6715 59.2146 42.6824C59.6354 43.6933 59.8521 44.7774 59.8521 45.8724C59.8521 46.9674 59.6354 48.0516 59.2146 49.0624C58.7938 50.0733 58.177 50.9909 57.4 51.7624L45.58 63.5024C44.0029 65.0669 41.8715 65.9448 39.65 65.9448C37.4285 65.9448 35.2971 65.0669 33.72 63.5024V63.5024Z\",\n className: \"jl-pen-bottom\",\n fill: \"#FFB629\"\n})), _path4 || (_path4 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M2.5 33.9924C1.72296 33.2209 1.10625 32.3033 0.685406 31.2924C0.264561 30.2816 0.0478973 29.1974 0.0478973 28.1024C0.0478973 27.0074 0.264561 25.9233 0.685406 24.9124C1.10625 23.9015 1.72296 22.9839 2.5 22.2124L22.39 2.44242C23.9671 0.877893 26.0985 0 28.32 0C30.5415 0 32.6729 0.877893 34.25 2.44242C35.027 3.2139 35.6437 4.13152 36.0646 5.1424C36.4854 6.15328 36.7021 7.23744 36.7021 8.33242C36.7021 9.4274 36.4854 10.5116 36.0646 11.5224C35.6437 12.5333 35.027 13.4509 34.25 14.2224L14.35 33.9924C12.7733 35.5539 10.644 36.4299 8.425 36.4299C6.20597 36.4299 4.07665 35.5539 2.5 33.9924V33.9924Z\",\n className: \"jl-pen-top\",\n fill: \"#09F\"\n})), _path5 || (_path5 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M18.76 48.0924C17.983 47.3209 17.3662 46.4033 16.9454 45.3924C16.5246 44.3816 16.3079 43.2974 16.3079 42.2024C16.3079 41.1074 16.5246 40.0233 16.9454 39.0124C17.3662 38.0015 17.983 37.0839 18.76 36.3124L45.63 9.61242C47.2071 8.04789 49.3385 7.17 51.56 7.17C53.7815 7.17 55.9129 8.04789 57.49 9.61242C58.267 10.3839 58.8837 11.3015 59.3046 12.3124C59.7254 13.3233 59.9421 14.4074 59.9421 15.5024C59.9421 16.5974 59.7254 17.6816 59.3046 18.6924C58.8837 19.7033 58.267 20.6209 57.49 21.3924L30.62 48.0924C29.0429 49.6569 26.9115 50.5348 24.69 50.5348C22.4685 50.5348 20.3371 49.6569 18.76 48.0924V48.0924Z\",\n className: \"jl-pen-middle\",\n fill: \"#FF6100\"\n})));\nexport default SvgLogoJotformKoreanLight;","var _path, _path2, _path3, _path4, _path5;\nfunction _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nimport * as React from \"react\";\nconst SvgLogoJotformKoreanFullLight = props => /*#__PURE__*/React.createElement(\"svg\", _extends({\n style: {\n transform: \"translateY(-2px)\"\n },\n viewBox: \"0 0 299 66\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\",\n className: \"jl-main jfLogo-white\"\n}, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M188.28 50.6124C187.16 50.6264 186.049 50.4179 185.01 49.999C183.972 49.5802 183.027 48.9593 182.23 48.1724C180.63 46.5724 179.55 44.1424 179.55 40.8624C179.55 37.5424 180.63 35.1224 182.23 33.5224C183.03 32.7432 183.977 32.13 185.015 31.7181C186.054 31.3062 187.163 31.1038 188.28 31.1224C190.56 31.1224 192.73 31.9224 194.33 33.5224C195.93 35.1224 197 37.5424 197 40.8624C197 44.1824 195.93 46.6024 194.33 48.2024C193.53 48.9816 192.583 49.5948 191.545 50.0067C190.506 50.4186 189.397 50.6211 188.28 50.6024V50.6124ZM188.28 20.5124C176.7 20.5124 167.93 29.0324 167.93 40.8624C167.93 52.6124 176.7 61.2124 188.28 61.2124C199.86 61.2124 208.63 52.6124 208.63 40.8624C208.63 29.0324 199.86 20.5124 188.28 20.5124ZM240.27 61.0824H251.82V38.1424C251.82 36.2424 252.42 34.5924 253.46 33.4324C254.038 32.805 254.744 32.3102 255.532 31.9822C256.319 31.6542 257.168 31.5007 258.02 31.5324C260.1 31.5324 261.52 32.2324 262.43 33.2924C263.36 34.3724 263.83 35.9424 263.83 37.8424V61.0824H275.31V38.1424C275.31 36.2924 275.91 34.6424 276.95 33.4524C277.512 32.8254 278.204 32.3287 278.978 31.9971C279.752 31.6655 280.588 31.5069 281.43 31.5324C283.56 31.5324 284.97 32.2324 285.87 33.2924C286.79 34.3724 287.25 35.9424 287.25 37.8424V61.0824H298.5V35.7824C298.5 30.6124 296.8 26.8424 294.11 24.3824C291.44 21.9324 287.88 20.8424 284.31 20.8424C281.76 20.8424 279.43 21.2824 277.34 22.3324C275.55 23.2324 273.98 24.5524 272.6 26.3924C270.37 22.7624 266.3 20.8424 261.5 20.8424C257.98 20.8424 253.93 22.2424 251.37 24.9424V21.7824H240.27V61.0824ZM235.92 21.8124V33.5824L235.02 33.4024C233.95 33.1924 233.02 33.1124 232.16 33.1124C229.71 33.1124 227.53 33.7124 225.97 35.1724C224.42 36.6224 223.35 39.0324 223.35 42.9124V61.0824H211.83V21.7824H223.05V25.5824C225.82 22.2424 230.13 21.5824 232.84 21.5824C233.7 21.5824 234.49 21.6724 235.24 21.7424L235.92 21.8124ZM96.72 42.1424H107.98L108.11 42.2724C108.19 42.3524 108.25 42.4724 108.26 42.6024C108.309 43.6595 108.567 44.6964 109.02 45.6526C109.474 46.6089 110.113 47.4654 110.9 48.1724C112.382 49.3819 114.248 50.0205 116.16 49.9724C117.219 50.0079 118.273 49.8124 119.248 49.3997C120.224 48.987 121.098 48.3669 121.81 47.5824C123.194 45.9038 123.916 43.7767 123.84 41.6024V8.68242H136.02V41.9424C136.02 52.5924 127.87 61.4924 116.24 61.4924C110.44 61.4924 105.56 59.5624 102.14 56.2124C98.8 52.9424 96.81 48.2724 96.72 42.5924V42.1424ZM166.3 14.0124L166.94 14.2024V5.28242L166.64 5.15242C165.994 4.89541 165.319 4.71745 164.63 4.62242C163.78 4.48242 162.78 4.39242 161.76 4.39242C157.79 4.39242 153.33 5.71242 151.02 8.08242C148.71 10.4424 147.43 13.8124 147.43 17.8524V19.7324H141.63V29.9724H147.43V61.0824H159.08V29.9724H166.94V19.7324H159.08V17.9924C159.08 16.1824 159.71 15.1324 160.52 14.5324C161.385 13.9437 162.415 13.646 163.46 13.6824C164.96 13.6824 165.84 13.8824 166.3 14.0124Z\",\n className: \"jl-main-color jl-main-text jl-main-text-all\",\n fill: \"#FFFFFF\"\n})), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M16.43 62.6724C17.67 63.8724 16.79 65.9424 15.03 65.9424H3.95C2.91734 65.9558 1.92154 65.559 1.18104 64.8391C0.440538 64.1192 0.015802 63.135 0 62.1024V51.3824C0 49.6624 2.13 48.8124 3.38 50.0224L16.43 62.6724Z\",\n className: \"jl-main-color\",\n fill: \"#FFFFFF\"\n})), _path3 || (_path3 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M33.72 63.5024C32.943 62.7309 32.3263 61.8133 31.9054 60.8024C31.4846 59.7916 31.2679 58.7074 31.2679 57.6124C31.2679 56.5174 31.4846 55.4333 31.9054 54.4224C32.3263 53.4115 32.943 52.4939 33.72 51.7224L45.54 39.9824C47.1171 38.4179 49.2485 37.54 51.47 37.54C53.6915 37.54 55.8229 38.4179 57.4 39.9824C58.177 40.7539 58.7938 41.6715 59.2146 42.6824C59.6354 43.6933 59.8521 44.7774 59.8521 45.8724C59.8521 46.9674 59.6354 48.0516 59.2146 49.0624C58.7938 50.0733 58.177 50.9909 57.4 51.7624L45.58 63.5024C44.0029 65.0669 41.8715 65.9448 39.65 65.9448C37.4285 65.9448 35.2971 65.0669 33.72 63.5024V63.5024Z\",\n className: \"jl-pen-bottom\",\n fill: \"#FFFFFF\"\n})), _path4 || (_path4 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M2.5 33.9924C1.72296 33.2209 1.10625 32.3033 0.685406 31.2924C0.264561 30.2816 0.0478973 29.1974 0.0478973 28.1024C0.0478973 27.0074 0.264561 25.9233 0.685406 24.9124C1.10625 23.9015 1.72296 22.9839 2.5 22.2124L22.39 2.44242C23.9671 0.877893 26.0985 0 28.32 0C30.5415 0 32.6729 0.877893 34.25 2.44242C35.027 3.2139 35.6437 4.13152 36.0646 5.1424C36.4854 6.15328 36.7021 7.23744 36.7021 8.33242C36.7021 9.4274 36.4854 10.5116 36.0646 11.5224C35.6437 12.5333 35.027 13.4509 34.25 14.2224L14.35 33.9924C12.7733 35.5539 10.644 36.4299 8.425 36.4299C6.20597 36.4299 4.07665 35.5539 2.5 33.9924V33.9924Z\",\n className: \"jl-pen-top\",\n fill: \"#FFFFFF\"\n})), _path5 || (_path5 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M18.76 48.0924C17.983 47.3209 17.3662 46.4033 16.9454 45.3924C16.5246 44.3816 16.3079 43.2974 16.3079 42.2024C16.3079 41.1074 16.5246 40.0233 16.9454 39.0124C17.3662 38.0015 17.983 37.0839 18.76 36.3124L45.63 9.61242C47.2071 8.04789 49.3385 7.17 51.56 7.17C53.7815 7.17 55.9129 8.04789 57.49 9.61242C58.267 10.3839 58.8837 11.3015 59.3046 12.3124C59.7254 13.3233 59.9421 14.4074 59.9421 15.5024C59.9421 16.5974 59.7254 17.6816 59.3046 18.6924C58.8837 19.7033 58.267 20.6209 57.49 21.3924L30.62 48.0924C29.0429 49.6569 26.9115 50.5348 24.69 50.5348C22.4685 50.5348 20.3371 49.6569 18.76 48.0924V48.0924Z\",\n className: \"jl-pen-middle\",\n fill: \"#FFFFFF\"\n})));\nexport default SvgLogoJotformKoreanFullLight;","\n \n\n","import React from 'react';\nimport {\n shape, bool, string, array\n} from 'prop-types';\nimport {\n THEME_MAP, userTypePropType, logoPropsPropTypes, themePropType,\n logoPropsDefaultProps, logoSideLinkPropsDefaultProps, logoSideLinkPropsPropTypes\n} from '@jotforminc/header-body';\n\nimport Header from '../Header';\nimport ModeProvider from './ModeProvider';\nimport UserProvider from './UserProvider';\nimport MobileMenuProvider from './MobileMenuProvider';\nimport JotformActionsProvider from './JotformActionsProvider';\n\nconst HeaderProvider = ({\n user,\n userType,\n isLoggedIn,\n theme,\n bgColor,\n language,\n forceRTL,\n logoProps,\n fullWidth,\n stickyMode,\n customNavItems,\n hideAccountBox,\n appPickerProps,\n disableLoginFlow,\n hideLoginButton,\n hideSignupButton,\n logoSideLinkProps,\n replaceAuthButtons,\n showOneTapLoginArea,\n defaultNavItems,\n currentPath,\n menuStyles,\n isEnterprise,\n languageSwitcher,\n contactSalesAbTestVariation,\n contactSalesAbTestVariationURL,\n hostname\n}) => {\n return (\n \n \n \n \n \n \n \n \n \n );\n};\n\nHeaderProvider.propTypes = {\n user: shape({}),\n userType: userTypePropType,\n isLoggedIn: bool,\n theme: themePropType,\n bgColor: string,\n language: string,\n forceRTL: bool,\n logoProps: logoPropsPropTypes,\n fullWidth: bool,\n stickyMode: bool,\n customNavItems: array,\n hideAccountBox: bool,\n appPickerProps: shape({}),\n disableLoginFlow: bool,\n hideLoginButton: bool,\n hideSignupButton: bool,\n logoSideLinkProps: logoSideLinkPropsPropTypes,\n replaceAuthButtons: string,\n showOneTapLoginArea: bool,\n defaultNavItems: array,\n currentPath: string,\n hostname: string,\n menuStyles: shape({}),\n isEnterprise: bool,\n languageSwitcher: bool,\n contactSalesAbTestVariation: string,\n contactSalesAbTestVariationURL: string\n};\n\nHeaderProvider.defaultProps = {\n user: global.window?.__jfCommonHeaderProps?.user || global.window?.user,\n userType: global.window?.userType || global.window?.__jfCommonHeaderProps?.userType,\n isLoggedIn: global.window?.__jfCommonHeaderProps?.isLoggedIn,\n theme: global.window?.__jfCommonHeaderProps?.theme || THEME_MAP.DARK,\n bgColor: global.window?.__jfCommonHeaderProps?.bgColor || null,\n language: global.window?.__jfCommonHeaderProps?.language || 'en-US',\n forceRTL: false,\n logoProps: global.window?.__jfCommonHeaderProps?.logoProps || logoPropsDefaultProps,\n fullWidth: false,\n stickyMode: global.window?.__jfCommonHeaderProps?.stickyMode || false,\n customNavItems: global.window?.__jfCommonHeaderProps?.customNavItems,\n hideAccountBox: global.window?.__jfCommonHeaderProps?.hideAccountBox || false,\n appPickerProps: global.window?.__jfCommonHeaderProps?.appPickerProps || {},\n disableLoginFlow: global.window?.__jfCommonHeaderProps?.disableLoginFlow || false,\n hideLoginButton: global.window?.__jfCommonHeaderProps?.hideLoginButton || false,\n hideSignupButton: global.window?.__jfCommonHeaderProps?.hideSignupButton || false,\n logoSideLinkProps: global.window?.__jfCommonHeaderProps?.logoSideLinkProps || logoSideLinkPropsDefaultProps,\n replaceAuthButtons: global.window?.__jfCommonHeaderProps?.replaceAuthButtons || '',\n showOneTapLoginArea: false,\n defaultNavItems: global.window?.__jfCommonHeaderProps?.defaultNavItems || [],\n currentPath: global.window?.__jfCommonHeaderProps?.currentPath || (global.window?.location || global.location)?.pathname,\n hostname: global.window?.__jfCommonHeaderProps?.hostname || (global.window?.location || global.location)?.hostname,\n menuStyles: global.window?.__jfCommonHeaderProps?.menuStyles || {},\n isEnterprise: global.window?.__jfCommonHeaderProps?.isEnterprise || false,\n languageSwitcher: global.window?.__jfCommonHeaderProps?.languageSwitcher || { visible: false },\n contactSalesAbTestVariation: global.window?.__jfCommonHeaderProps?.contactSalesAbTestVariation || '',\n contactSalesAbTestVariationURL: global.window?.__jfCommonHeaderProps?.contactSalesAbTestVariationURL || ''\n};\n\nexport default HeaderProvider;\n","import { getAssetPath } from './index';\n\n// eslint-disable-next-line no-undef, camelcase\n__webpack_public_path__ = `${getAssetPath()}/`;\n","import React from 'react';\nimport { bool, string } from 'prop-types';\nimport { t } from '@jotforminc/translation';\nimport { CONTACT_SALES_AB_TEST_VARIATIONS } from '../../constants';\nimport { shouldRenderSignupButton } from '../../utils';\n\nconst LoginGroupPreLoader = ({\n hideLoginButton,\n hideSignupButton,\n contactSalesAbTestVariation,\n contactSalesAbTestVariationURL\n}) => {\n const { CONTACT_SALES_AS_CTA, CONTACT_SALES_AS_ITEM } = CONTACT_SALES_AB_TEST_VARIATIONS;\n\n return (\n \n );\n};\n\nLoginGroupPreLoader.propTypes = {\n hideLoginButton: bool.isRequired,\n hideSignupButton: bool.isRequired,\n contactSalesAbTestVariation: string.isRequired,\n contactSalesAbTestVariationURL: string.isRequired\n};\n\nexport default LoginGroupPreLoader;\n","import React from 'react';\nimport { bool, string } from 'prop-types';\nimport { AccountBoxAvatar } from '../AccountBoxAvatar';\nimport LoginGroupPreLoader from './LoginGroupPreLoader';\n\nconst PreLoaders = ({\n isLoggedIn,\n username,\n avatarUrl,\n hideLoginButton,\n hideSignupButton,\n contactSalesAbTestVariation,\n contactSalesAbTestVariationURL\n}) => {\n return (\n <>\n {isLoggedIn ? (\n \n ) : (\n \n )}\n \n );\n};\n\nPreLoaders.propTypes = {\n isLoggedIn: bool.isRequired,\n username: string,\n avatarUrl: string,\n hideLoginButton: bool.isRequired,\n hideSignupButton: bool.isRequired,\n contactSalesAbTestVariation: string.isRequired,\n contactSalesAbTestVariationURL: string.isRequired\n};\n\nexport default PreLoaders;\n","import React from 'react';\nimport { bool, func } from 'prop-types';\nimport cx from 'classnames';\nimport { t } from '@jotforminc/translation';\nimport { IconBars, IconXmark } from '@jotforminc/svg-icons';\n\nconst HamburgerButton = ({ onClick, isActive }) => {\n return (\n \n {isActive ? : }\n \n );\n};\n\nHamburgerButton.propTypes = {\n onClick: func,\n isActive: bool\n};\n\nHamburgerButton.defaultProps = {\n onClick: f => f,\n isActive: false\n};\n\nexport default HamburgerButton;\n","import styled from 'styled-components';\n\nconst ScHeaderNavigation = styled.nav`\n display: flex;\n flex: 1;\n @media screen and (max-width: 1024px) {\n display: none;\n }\n a {\n text-decoration: none;\n }\n &.isMobile {\n top: var(--jf-header-size);\n left: 0;\n right: 0;\n bottom: 0;\n display: flex;\n flex-direction: column;\n position: fixed;\n background-color: #fff;\n overflow: auto;\n }\n .jfRHeader--nav-menu {\n display: flex;\n align-items: center;\n margin-left: auto;\n margin-top: 0;\n margin-bottom: 0;\n padding: 0;\n list-style: none;\n html[dir=\"rtl\"] & {\n margin-left: 0;\n margin-right: auto;\n }\n &.isMobile {\n overflow-x: auto;\n }\n &-item {\n position: relative;\n list-style: none;\n & > a {\n color: var(--jf-header-nav-menu);\n padding: 0 8px;\n white-space: nowrap;\n position: relative;\n display: inline-block;\n font-size: 14px;\n letter-spacing: -0.084px;\n line-height: var(--jf-header-size);\n @media screen and (min-width: 1280px) {\n font-size: 14px;\n letter-spacing: -0.176px;\n }\n &:focus {\n outline: thin dotted #d5daff;\n }\n }\n @media screen and (min-width: 1025px) {\n & + li {\n margin-left: 6px;\n list-style: none;\n html[dir=\"rtl\"] & {\n margin-left: 0;\n margin-right: 6px;\n }\n }\n }\n &.isBadge {\n & > a {\n display: inline-flex;\n align-items: center;\n }\n }\n &-badge {\n background-color: #64b200;\n color: #fff;\n padding: 0 4px;\n border-radius: 4px;\n font-size: 10px;\n letter-spacing: 0.1px;\n line-height: 16px;\n margin-left: 4px;\n html[dir=\"rtl\"] & {\n margin-left: 0;\n margin-right: 4px;\n }\n }\n &-icon {\n width: 18px;\n height: 18px;\n margin-right: 6px;\n html[dir=\"rtl\"] & {\n margin-right: 0;\n margin-left: 6px;\n }\n }\n &-dot {\n width: 8px;\n height: 8px;\n border-radius: 50%;\n margin-bottom: 4px;\n background-color: #EB4145;\n margin-left: 2px;\n html[dir=\"rtl\"] & {\n margin-left: 0;\n margin-right: 2px;\n }\n }\n &.hasSubMenu {\n & > a {\n display: inline-flex;\n align-items: center;\n svg {\n margin-left: 8px;\n width: 8px;\n min-width: 8px;\n height: 4px;\n html[dir=\"rtl\"] & {\n margin-left: 0;\n margin-right: 8px;\n }\n }\n @media screen and (max-width: 1024px) {\n font-size: 16px;\n font-weight: 500;\n &.isOpen {\n color: var(--jf-header-nav-menu-active);\n }\n svg {\n margin-left: auto;\n width: 16px;\n height: 8px;\n html[dir=\"rtl\"] & {\n margin-left: 0;\n margin-right: auto;\n }\n }\n }\n }\n &:has(.jfRHeader--nav-sub-menu-item > a.isCurrent) {\n > a {\n color: var(--jf-header-nav-menu-active);\n &:after,\n &:before {\n width: 18%;\n }\n }\n }\n }\n &:not(.hasSubMenu) {\n & > a {\n .jfRHeader--nav.jfRHeader--nav-efc & {\n &:after,\n &:before {\n content: \"\";\n width: 0;\n height: 2px;\n position: absolute;\n bottom: 10px;\n z-index: -1;\n transition: width 0.2s ease;\n }\n &:before {\n border-radius: 1px 0 0 1px;\n right: 50%;\n }\n &:after {\n border-radius: 0 1px 1px 0;\n left: 50%;\n }\n @media screen and (min-width: 1025px) {\n &:hover {\n color: var(--jf-header-nav-menu-hover);\n &:after,\n &:before {\n background-color: var(--jf-header-nav-menu-hover);\n width: 18%;\n }\n }\n }\n }\n &.isCurrent {\n color: var(--jf-header-nav-menu-active);\n font-weight: 500;\n @media screen and (min-width: 1025px) {\n &:after,\n &:before {\n background-color: var(--jf-header-nav-menu-active);\n width: 18%;\n }\n }\n }\n }\n }\n &-button {\n a:not(.jfRHeader--custom-cta) {\n border-radius: 4px;\n font-size: 16px;\n padding: 8px 10px;\n color: #fff;\n display: inline-flex;\n white-space: nowrap;\n color: #fff;\n background-color: #ff6100;\n transition: all 0.2s ease;\n &:hover {\n background-color: #E55300;\n }\n @media screen and (max-width: 1024px) {\n margin-left: 16px;\n margin-right: 16px;\n }\n }\n }\n @media screen and (min-width: 1025px) {\n &:hover {\n & > a {\n color: var(--jf-header-nav-menu-hover);\n }\n a:not(.jfRHeader--custom-cta) + .jfRHeader--nav-sub-menu {\n &:not(.isOpen){\n display: flex;\n }\n }\n }\n }\n }\n @media screen and (max-width: 1024px) {\n margin-left: 0;\n html[dir=\"rtl\"] & {\n margin-right: 0;\n }\n flex-direction: column;\n align-items: flex-start;\n &-item {\n width: 100%;\n & + .jfRHeader--nav-menu-item {\n border-top: 1px solid #e3e5f5;\n }\n & > a {\n width: 100%;\n font-size: 16px;\n font-weight: 500;\n --jf-header-nav-menu: #0a1551;\n }\n }\n }\n }\n .jfRHeader--nav-action {\n display: flex;\n align-items: center;\n list-style: none;\n margin: 0;\n padding: 0;\n &-item {\n position: relative;\n width: 100%;\n list-style: none;\n button, a {\n position: relative;\n padding: 0 16px;\n white-space: nowrap;\n font-weight: 400;\n display: block;\n border-radius: 4px;\n font-size: 14px;\n letter-spacing: -0.072px;\n line-height: 16px;\n padding: 8px 12px;\n border: 0;\n outline: none;\n background-color: transparent;\n @media screen and (min-width: 1280px) {\n padding: 12px 20px;\n letter-spacing: -0.084px;\n }\n &.jfRHeader--nav-action-list-login {\n line-height: calc(var(--jf-header-size) - 16px);\n color: var(--jf-header-nav-menu);\n @media screen and (min-width: 1280px) {\n line-height: calc(var(--jf-header-size) - 24px);\n }\n @media (hover: hover) {\n &:hover {\n color: var(--jf-header-nav-menu-hover);\n }\n }\n }\n &.jfRHeader--nav-action-list-signup {\n background-color: #ff6100;\n color: #fff;\n transition: all 0.2s ease;\n @media (hover: hover) {\n &:hover {\n background-color: #e15600;\n }\n }\n }\n // A/B Test: contactSalesButtonOnHeader\n &.jfRHeader--contact-sales {\n background-color: #0075E3;\n font-weight: 500;\n color: #fff;\n transition: all 0.2s ease;\n @media screen and (max-width: 1024px) {\n background-color: #0a1551;\n width: 100%;\n margin: 16px 16px 16px 8px;\n text-align: center;\n }\n @media (hover: hover) {\n &:hover {\n background-color: #0066c3;\n }\n }\n }\n }\n @media screen and (max-width: 1024px) {\n width: 50%;\n display: flex;\n button, a {\n padding: 16px 0px;\n font-size: 16px;\n font-weight: 500;\n &.jfRHeader--nav-action-list-login {\n width: 100%;\n line-height: 1;\n margin: 16px 8px 16px 16px;\n border: 1px solid #0a1551;\n color: #0a1551;\n // A/B Test: contactSalesButtonOnHeader\n border: none;\n text-align: center;\n }\n &.jfRHeader--nav-action-list-signup {\n width: 100%;\n margin: 16px 16px 16px 8px;\n background-color: #0a1551;\n border: 1px solid #0a1551;\n }\n }\n }\n }\n &.isNotLoggedIn {\n &:before {\n content: \"\";\n background: #e3e5f5;\n width: 1px;\n height: 40px;\n margin: 0 8px;\n flex-shrink: 0;\n @media screen and (max-width: 1024px) {\n display: none;\n }\n }\n }\n &.isMobile {\n width: 100%;\n box-shadow: 0 0 16px rgba(41, 42, 61, 0.25);\n border-top: 1px solid #e3e5f5;\n margin-top: auto;\n .jfRHeader--nav-action-list {\n width: 100%;\n position: relative;\n }\n }\n &.isMobileOpen {\n position: fixed;\n bottom: 0;\n left: 0;\n right: 0;\n background-color: #ffffff;\n justify-content: center;\n align-items: flex-start;\n border-radius: 40px 40px 0 0;\n overflow: hidden;\n }\n // A/B Test: contactSalesButtonOnHeader\n @media screen and (max-width: 520px) {\n &.is-trio-button {\n flex-direction: column;\n gap: 6px;\n padding: 12px;\n .jfRHeader--nav-action-item {\n width: 100%;\n a.jfRHeader--nav-action-list-login {\n margin: 0;\n }\n button {\n margin: 0;\n }\n }\n } \n }\n\n }\n\n .jfRHeader--nav-account-box {\n position: relative;\n &-avatar {\n button {\n width: var(--jf-header-size);\n height: var(--jf-header-size);\n position: relative;\n display: flex;\n align-items: center;\n justify-content: center;\n border: 0;\n background-color: transparent;\n outline: none;\n }\n img {\n width: 48px;\n height: 48px;\n border-radius: 50%;\n border: 2px solid #ff6100;\n object-fit: cover;\n object-position: center;\n &.dummy {\n background-color: #ff6100;\n }\n &[src=\"\"] {\n text-indent: -9999px;\n &:before {\n content: \"\";\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n width: 48px;\n height: 48px;\n border-radius: 50%;\n background-color: #0a1551;\n border: 2px solid #ff6100;\n box-sizing: border-box;\n }\n }\n }\n @media screen and (max-width: 1024px) {\n display: none;\n }\n }\n &-menu {\n position: absolute;\n right: 10px;\n top: 100%;\n width: 320px;\n border-radius: 10px;\n border: 1px solid #c8ceed;\n background-color: #fff;\n display: none;\n z-index: 1;\n html[dir=\"rtl\"] & {\n right: auto;\n left: 10px;\n }\n .jNewHeader-subMenu {\n border-radius: 10px;\n overflow: hidden;\n }\n &.isVisible {\n display: block;\n }\n &:before {\n content: \"\";\n position: absolute;\n top: -7px;\n right: 17px;\n width: 12px;\n height: 12px;\n background-color: #fff;\n background-image: linear-gradient(135deg, #fff 50%, transparent 50%);\n border-top: 1px solid #c8ceed;\n border-right: 1px solid transparent;\n border-bottom: 1px solid transparent;\n border-left: 1px solid #c8ceed;\n transform: rotateZ(45deg);\n border-radius: 2px 0 0 0;\n animation: 0.25s arrowSlideIn ease-out forwards;\n html[dir=\"rtl\"] & {\n right: auto;\n left: 17px;\n }\n }\n @media screen and (max-width: 1024px) {\n position: relative;\n right: auto;\n top: auto;\n width: 100%;\n border-radius: 0;\n border: 0;\n display: block;\n html[dir=\"rtl\"] & {\n left: auto;\n }\n &:before {\n display: none;\n }\n }\n }\n &-mobile-btn {\n display: none;\n position: absolute;\n left: 0;\n top: 0;\n right: 0;\n height: 80px;\n z-index: 2;\n width: 100%;\n border: 0;\n outline: none;\n &:before {\n content: \"\";\n position: absolute;\n top: 12px;\n left: 50%;\n border: 2px solid #8b92ad;\n width: 10px;\n height: 10px;\n transform: translateY(-50%) rotate(45deg);\n border-radius: 4px 0 0 0;\n border-bottom: 0;\n border-right: 0;\n }\n &.isMobileOpen {\n &:before {\n transform: translateY(-50%) rotate(225deg);\n }\n }\n @media screen and (max-width: 1024px) {\n display: block;\n }\n }\n }\n`;\n\nexport default ScHeaderNavigation;\n","import React from 'react';\nimport {\n elementType, bool, node, string\n} from 'prop-types';\nimport cx from 'classnames';\nimport { CONTACT_SALES_AB_TEST_VARIATIONS } from '@jotforminc/header-body';\nimport { PreLoaders } from '../PreLoaders';\nimport { ScHeaderNavigation } from '../Sc';\n\nconst Navigation = ({\n LoginGroupRenderer,\n children = null,\n isMobileScreen = false,\n isMobile = false,\n isLoggedIn = false,\n avatarUrl = undefined,\n username = undefined,\n disableLoginFlow = false,\n hideLoginButton,\n hideSignupButton,\n replaceAuthButtons,\n contactSalesAbTestVariation,\n contactSalesAbTestVariationURL\n}) => {\n const showLoginGroup = !disableLoginFlow && !replaceAuthButtons;\n const { CONTACT_SALES_AS_ITEM } = CONTACT_SALES_AB_TEST_VARIATIONS;\n\n // TODO: will this to props and remove hardcoded value\n const navEffectHover = true;\n\n return (\n \n
    \n {children}\n
\n {showLoginGroup && LoginGroupRenderer && }\n {showLoginGroup && !LoginGroupRenderer && (\n \n )}\n
\n );\n};\n\nNavigation.propTypes = {\n LoginGroupRenderer: elementType.isRequired,\n children: node,\n isMobileScreen: bool,\n isMobile: bool,\n isLoggedIn: bool,\n avatarUrl: string,\n username: string,\n disableLoginFlow: bool,\n hideLoginButton: bool.isRequired,\n hideSignupButton: bool.isRequired,\n replaceAuthButtons: string.isRequired,\n contactSalesAbTestVariation: string.isRequired,\n contactSalesAbTestVariationURL: string.isRequired\n};\n\nexport default Navigation;\n","import React, { useState, useEffect } from 'react';\nimport cx from 'classnames';\nimport { array, bool, string } from 'prop-types';\n\nimport { t } from '@jotforminc/translation';\n\nimport { isSamePath } from '../../utils';\n\nconst DefaultMenuType = ({\n menuItems,\n isOpen,\n currentPath,\n isMobileMenuActive\n}) => {\n const [isCurrent, setIsCurrent] = useState(false);\n\n useEffect(() => {\n const isPathCurrent = menuItems.some(({ url }) => isSamePath(url, currentPath));\n setIsCurrent(isPathCurrent);\n }, [currentPath, menuItems]);\n\n const defaultMenuTypeClasses = cx('jfRHeader--nav-sub-menu jfSubMenu', {\n isOpen: isOpen || (isCurrent && isMobileMenuActive)\n });\n\n return (\n <>\n {menuItems.length > 0 && (\n
    \n {menuItems.map(({\n name, title, url, target\n }) => (\n
  • \n \n {t(title)}\n \n
  • \n ))}\n
\n )}\n \n );\n};\n\nDefaultMenuType.propTypes = {\n menuItems: array.isRequired,\n isOpen: bool.isRequired,\n currentPath: string.isRequired,\n isMobileMenuActive: bool\n};\n\nDefaultMenuType.defaultProps = {\n isMobileMenuActive: false\n};\n\nexport default DefaultMenuType;\n","/* eslint-disable max-len */\nimport React from 'react';\nimport cx from 'classnames';\nimport { array, bool, string } from 'prop-types';\nimport { t } from '@jotforminc/translation';\n\nconst TemplatesMenuType = ({\n menuItems,\n isOpen,\n menuTitle,\n showAiAgentBanner\n}) => {\n const TemplatesMenuTypeClasses = cx('jfRHeader--nav-sub-menu jfTemplates', {\n isOpen\n });\n\n return (\n <>\n {menuItems.length > 0 && (\n
    \n
  • {t(menuTitle)}
  • \n {menuItems.map(({\n name, title, url, icon\n }) => (\n
  • \n \n {icon && {t(title)}}\n {t(title)}\n \n
  • \n ))}\n {showAiAgentBanner && (\n
  • \n \n \n {t('Meet your AI Agents')}\n {t('Discover Now')}\n \n
  • \n )}\n
\n )}\n \n );\n};\n\nTemplatesMenuType.propTypes = {\n menuItems: array.isRequired,\n isOpen: bool.isRequired,\n menuTitle: string.isRequired,\n showAiAgentBanner: bool.isRequired\n};\n\nexport default TemplatesMenuType;\n","/* eslint-disable array-callback-return */\nimport React from 'react';\nimport { array, bool } from 'prop-types';\nimport cx from 'classnames';\nimport { t } from '@jotforminc/translation';\nimport { IconChevronRight } from '@jotforminc/svg-icons';\nimport { TEXTS } from '../../constants';\n\nconst IntegrationsMenuType = ({ menuItems, isOpen }) => {\n const IntegrationsMenuTypeClasses = cx('jfRHeader--nav-sub-menu jfIntegrations', {\n isOpen\n });\n\n return (\n <>\n {menuItems.length > 0 && (\n
\n \n
\n )}\n\n \n );\n};\n\nIntegrationsMenuType.propTypes = {\n menuItems: array.isRequired,\n isOpen: bool.isRequired\n};\n\nexport default IntegrationsMenuType;\n","import React from 'react';\nimport cx from 'classnames';\nimport { t } from '@jotforminc/translation';\nimport { array, bool, string } from 'prop-types';\nimport { IconChevronRight } from '@jotforminc/svg-icons';\n\nconst ProductsMenuType = ({\n menuItems, sideMenuItems, menuTitle, sideMenuTitle, sideMenuSeeMoreTitle, sideMenuSeeMoreUrl, isOpen, isLoggedIn\n}) => {\n const ProductsMenuTypeClasses = cx('jfRHeader--nav-sub-menu jfProducts', {\n isOpen\n });\n return (\n \n );\n};\n\nProductsMenuType.propTypes = {\n menuItems: array.isRequired,\n sideMenuItems: array.isRequired,\n menuTitle: string.isRequired,\n sideMenuTitle: string.isRequired,\n sideMenuSeeMoreTitle: string.isRequired,\n sideMenuSeeMoreUrl: string.isRequired,\n isOpen: bool.isRequired,\n isLoggedIn: bool.isRequired\n};\n\nexport default ProductsMenuType;\n","import React, { useEffect } from 'react';\nimport { handleCustomNavigation } from '@jotforminc/utils';\nimport { func } from 'prop-types';\nimport { t, translationRenderer } from '@jotforminc/translation';\nimport {\n ASSET_IDENTIFIER, ALL_TEXTS, CTA_URLS, SDR_SOURCES,\n GA_SUFFIXES, createGaAttributes, saveCustomerAsHubspotFormByUsername, setEPActions\n} from '@jotforminc/enterprise-promotions-utils';\nimport '../../../styles/dedicatedSupportSection.scss';\n\nconst DedicatedSupportSection = ({ logAbTestAction }) => {\n const { PRODUCT: { DEDICATED_SUPPORT_SECTION: target } } = ASSET_IDENTIFIER;\n const {\n DEDICATED_SUPPORT_SECTION: { CONTACT_SALES_URL }\n } = CTA_URLS;\n\n const gaAttributes = createGaAttributes(target);\n const gaAttributesCs = createGaAttributes(target, GA_SUFFIXES.CONTACT_SALES);\n\n useEffect(() => {\n setEPActions({ asset: target, target, action: 'seen' });\n }, [logAbTestAction]);\n\n const handleContactSalesClick = async e => {\n e.preventDefault();\n\n try {\n await setEPActions({ asset: target, target: 'contactSalesButton', action: 'click' });\n await saveCustomerAsHubspotFormByUsername({ lastProductAssetInteraction: SDR_SOURCES.SUPPORT_MENU });\n } catch (error) {\n console.log('Something went wrong with setting ep actions or saving to hubspot.');\n } finally {\n handleCustomNavigation(CONTACT_SALES_URL, '_self', true);\n }\n };\n\n return (\n \n
\n \n {translationRenderer('[1[Dedicated]] Support')({\n renderer1: text => {text}\n })}\n \n
\n
\n

{t(ALL_TEXTS.DEDICATED_SUPPORT_SECTION_DESCRIPTION)}

\n \n {t(ALL_TEXTS.CONTACT_SALES)}\n \n
\n \n );\n};\n\nDedicatedSupportSection.propTypes = {\n logAbTestAction: func\n};\n\nDedicatedSupportSection.defaultProps = {\n logAbTestAction: f => f\n};\n\nexport default DedicatedSupportSection;\n","import React from 'react';\nimport { IconArrowRight } from '@jotforminc/svg-icons';\nimport { t } from '@jotforminc/translation';\nimport '../../../styles/professionalServicesBanner.scss';\n\nconst ProfessionalServicesBanner = () => {\n return (\n \n {t('Professional Services')}\n
\n {t('Explore')}\n \n
\n \n );\n};\n\nexport default ProfessionalServicesBanner;\n","import React from 'react';\nimport cx from 'classnames';\nimport {\n array, bool, number, string\n} from 'prop-types';\nimport { t } from '@jotforminc/translation';\nimport { isEnterprise } from '@jotforminc/enterprise-utils';\nimport { DedicatedSupportSection, ProfessionalServicesBanner } from '@jotforminc/enterprise-promotions';\n\nconst SupportMenuType = ({\n menuItems, sideMenuItems, isLoggedIn, menuTitle, sideMenuTitle, isOpen, unreadSupportAnswerCount\n}) => {\n const SupportMenuTypeClasses = cx('jfRHeader--nav-sub-menu jfSupport', {\n isOpen\n });\n const filteredMenuItems = menuItems.filter(({ loginRequired }) => (loginRequired ? isLoggedIn : true));\n\n const shouldShowSupportAnswersCount = ({ name, count }) => name === 'mySupportRequests' && count > 0 && !isEnterprise();\n\n return (\n \n );\n};\n\nSupportMenuType.propTypes = {\n menuItems: array.isRequired,\n sideMenuItems: array.isRequired,\n isLoggedIn: bool.isRequired,\n menuTitle: string.isRequired,\n sideMenuTitle: string.isRequired,\n isOpen: bool.isRequired,\n unreadSupportAnswerCount: number.isRequired\n};\n\nexport default SupportMenuType;\n","import React from 'react';\nimport cx from 'classnames';\nimport { array, bool } from 'prop-types';\nimport { t } from '@jotforminc/translation';\nimport { IconChevronRight } from '@jotforminc/svg-icons';\n\nconst SignMenuType = ({ menuItems, isOpen }) => {\n const SignMenuTypeClasses = cx('jfRHeader--nav-sub-menu jfSign', {\n isOpen\n });\n\n return (\n <>\n {menuItems.length > 0 && (\n \n )}\n \n );\n};\n\nSignMenuType.propTypes = {\n menuItems: array.isRequired,\n isOpen: bool.isRequired\n};\n\nexport default SignMenuType;\n","import React from 'react';\nimport cx from 'classnames';\nimport { array, bool } from 'prop-types';\nimport { t } from '@jotforminc/translation';\nimport { splitArray } from '../../utils';\n\nconst PdfEditorMenuType = ({ menuItems, isOpen }) => {\n const PdfEditorMenuTypeClasses = cx('jfRHeader--nav-sub-menu jfPDFEditor', {\n isOpen\n });\n\n return (\n <>\n {menuItems.length > 0 && (\n \n )}\n \n );\n};\n\nPdfEditorMenuType.propTypes = {\n menuItems: array.isRequired,\n isOpen: bool.isRequired\n};\n\nexport default PdfEditorMenuType;\n","import React from 'react';\nimport cx from 'classnames';\nimport {\n array,\n bool,\n string,\n func,\n oneOf,\n object,\n number\n} from 'prop-types';\n\nimport { t } from '@jotforminc/translation';\nimport { GrowthAssetManager } from '@jotforminc/growth-asset-manager';\nimport { isEnterprise } from '@jotforminc/enterprise-utils';\n\nimport ArrowIcon from '../../assets/svg/arrow.svg';\n\nimport DefaultMenuType from '../MenuTypes/DefaultMenuType';\nimport TemplatesMenuType from '../MenuTypes/TemplatesMenuType';\nimport IntegrationsMenuType from '../MenuTypes/IntegrationsMenuType';\nimport ProductsMenuType from '../MenuTypes/ProductsMenuType';\nimport SupportMenuType from '../MenuTypes/SupportMenuType';\nimport SignMenuType from '../MenuTypes/SignMenuType';\nimport PdfEditorMenuType from '../MenuTypes/PdfEditorMenuType';\n\nimport { a11yClickHandler, isSamePath } from '../../utils';\n\nimport { MENU_TYPES } from '../../constants';\n\nconst menuTypes = {\n submenu: DefaultMenuType,\n templates: TemplatesMenuType,\n integrations: IntegrationsMenuType,\n products: ProductsMenuType,\n support: SupportMenuType,\n sign: SignMenuType,\n pdfEditor: PdfEditorMenuType\n};\n\nconst WrapperComponent = ({\n // eslint-disable-next-line react/prop-types\n children, onClick, classNames, menuType, renderAs, target, newUrl, showRedDot\n}) => (\n a11yClickHandler(event, onClick)}\n className={classNames}\n tabIndex={0}\n {...(menuType && { 'aria-haspopup': 'listbox', role: 'button' })}\n {...(renderAs === 'link' && { href: newUrl(), target: target })}\n >\n {children}\n {showRedDot && }\n {menuType && }\n \n);\n\nconst NavLink = ({\n user,\n url,\n openedMenu,\n setOpenedMenu,\n target,\n title,\n linkClassName,\n menuType,\n renderAs,\n badge,\n icon,\n logHeaderAction,\n className,\n currentPath,\n isLoggedIn,\n isPricing,\n isMobileMenuActive,\n unreadSupportAnswerCount,\n showAiAgentBanner,\n ...menuProps\n}) => {\n const MenuComponent = menuTypes[menuType];\n\n const showRedDot = isLoggedIn && unreadSupportAnswerCount > 0 && menuType === MENU_TYPES.SUPPORT && !isEnterprise();\n const isOpen = openedMenu === title;\n\n const defaultClassname = 'jfRHeader--nav-menu-item';\n const combinedClassname = cx(defaultClassname, {\n hasSubMenu: menuType,\n isBadge: badge,\n isPricing\n });\n const linkClassname = cx({\n isOpen,\n isCurrent: isSamePath(url, currentPath),\n [className]: className\n });\n\n const handleClick = () => {\n setTimeout(() => logHeaderAction({ action: 'headerMenu-click', target: title, project: 'jfHeaderCTA' }), 0);\n setOpenedMenu(prev => (prev === title ? '' : title));\n };\n\n const handleMenuClose = () => {\n setOpenedMenu('');\n };\n\n const newUrl = () => {\n if (isPricing && user?.campaign?.utm_campaign && user.campaign.utm_campaign !== 'NONE') {\n const utmCampaign = user.campaign.utm_campaign;\n const utmSource = `${user.campaign.utm_campaign}-pricing-nav`;\n const utmMedium = 'website';\n const utmContent = currentPath !== '/' ? currentPath.replace(/\\//g, '') : 'homepage';\n return `${url}?utm_source=${utmSource}&utm_medium=${utmMedium}&utm_content=${utmContent}&utm_campaign=${utmCampaign}`;\n }\n return url;\n };\n\n return (\n \n \n {isPricing && (\n \n )}\n {icon && (\n \n )}\n {t(title)}\n {badge && (\n \n {badge}\n \n )}\n \n {menuType && (\n \n )}\n \n );\n};\n\nNavLink.propTypes = {\n user: object.isRequired,\n url: string,\n target: string,\n title: string,\n linkClassName: string,\n menuType: oneOf([\n MENU_TYPES.INTEGRATIONS,\n MENU_TYPES.PRODUCTS,\n MENU_TYPES.SUPPORT,\n MENU_TYPES.TEMPLATES,\n MENU_TYPES.SUBMENU,\n ''\n ]),\n menuItems: array,\n renderAs: oneOf(['link', 'button']),\n badge: string,\n icon: string,\n logHeaderAction: func,\n currentPath: string.isRequired,\n className: string,\n isLoggedIn: bool,\n isPricing: bool,\n isMobileMenuActive: bool,\n unreadSupportAnswerCount: number,\n openedMenu: string.isRequired,\n setOpenedMenu: func.isRequired,\n showAiAgentBanner: bool.isRequired\n};\n\nNavLink.defaultProps = {\n url: '',\n target: '_top',\n title: '',\n linkClassName: '',\n menuType: '',\n menuItems: [],\n renderAs: 'link',\n badge: '',\n icon: '',\n logHeaderAction: () => { },\n className: '',\n isLoggedIn: undefined,\n isPricing: false,\n isMobileMenuActive: false,\n unreadSupportAnswerCount: 0\n};\n\nexport default NavLink;\n","import { t } from '@jotforminc/translation';\nimport { TEXTS } from '../constants';\n\nexport const myFormsNavItem = {\n name: 'myForms',\n linkProps: {\n url: '/myforms',\n title: t(TEXTS.MY_FORMS)\n }\n};\n","import { MENU_TYPES } from '../constants';\n\nexport const templatesMenu = {\n name: 'templates',\n menuTitle: 'TEMPLATES',\n menuItems: [\n {\n name: 'formTemplates',\n title: 'Form Templates',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/templates/form.svg',\n url: '/form-templates/?classic'\n },\n {\n name: 'cardFormTemplates',\n title: 'Card Form Templates',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/templates/card-form.svg',\n url: '/form-templates/?cards'\n },\n {\n name: 'appTemplates',\n title: 'App Templates',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/templates/app.svg',\n url: '/app-templates/'\n },\n {\n name: 'storeBuilderTemplates',\n title: 'Store Builder Templates',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/templates/store-builder.svg?v=1.0',\n url: '/app-templates/category/online-store-templates'\n },\n {\n name: 'tableTemplates',\n title: 'Table Templates',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/templates/table.svg',\n url: '/table-templates/'\n },\n {\n name: 'approvalTemplates',\n title: 'Approval Templates',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/templates/approval.svg',\n url: '/approval-templates/'\n },\n {\n name: 'pdfTemplates',\n title: 'PDF Templates',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/templates/pdf.svg',\n url: '/pdf-templates/'\n },\n {\n name: 'signTemplates',\n title: 'Sign Templates',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/templates/sign.svg',\n url: '/pdf-templates/e-sign'\n }\n ]\n};\n\nexport const templatesNavItem = {\n name: 'templates',\n menuProps: templatesMenu,\n linkProps: {\n renderAs: 'button',\n title: 'Templates',\n menuType: MENU_TYPES.TEMPLATES\n }\n};\n","import featuredIntegrationsLinks from './subLinks/featuredIntegrations';\nimport paymentLinks from './subLinks/payment';\nimport storageLinks from './subLinks/storage';\nimport emailLinks from './subLinks/email';\nimport crmLinks from './subLinks/crm';\nimport { MENU_TYPES } from '../../constants';\n\nconst INTEGRATIONS = {\n FEATURED_INTEGRATIONS: 'featuredIntegrations',\n CRM: 'crm',\n STORAGE: 'storage',\n PAYMENT: 'payment',\n EMAIL: 'email'\n};\n\nconst integrationsMenu = {\n name: 'integrations',\n menuTitle: 'INTEGRATIONS',\n seeAll: {\n title: 'See all integrations',\n url: '/integrations/'\n },\n menuItems: [\n // featured\n {\n name: INTEGRATIONS.FEATURED_INTEGRATIONS,\n title: 'INTEGRATIONS',\n subTitle: 'FEATURED INTEGRATIONS',\n seeMore: {\n title: 'See more',\n url: '/integrations/'\n },\n subLinks: featuredIntegrationsLinks\n },\n // crm\n {\n name: INTEGRATIONS.CRM,\n title: 'CRM',\n subTitle: 'CRM',\n seeMore: {\n title: 'See more',\n url: '/integrations/category/crm'\n },\n subLinks: crmLinks\n },\n // storage\n {\n name: INTEGRATIONS.STORAGE,\n title: 'Storage',\n subTitle: 'STORAGE',\n seeMore: {\n title: 'See more',\n url: '/integrations/category/file-sharing-and-storage'\n },\n subLinks: storageLinks\n },\n // payment\n {\n name: INTEGRATIONS.PAYMENT,\n title: 'Payment',\n subTitle: 'PAYMENT',\n seeMore: {\n title: 'See more',\n url: '/integrations/category/payment-processing'\n },\n subLinks: paymentLinks\n },\n // email\n {\n name: INTEGRATIONS.EMAIL,\n title: 'Email',\n subTitle: 'EMAIL',\n seeMore: {\n title: 'See more',\n url: '/integrations/category/emailing'\n },\n subLinks: emailLinks\n }\n ]\n};\n\nconst integrationsNavItem = {\n name: 'integrations',\n menuProps: integrationsMenu,\n linkProps: {\n renderAs: 'button',\n title: 'Integrations',\n menuType: MENU_TYPES.INTEGRATIONS\n }\n};\n\nexport {\n INTEGRATIONS,\n integrationsNavItem\n};\n","const featuredIntegrationsLinks = [\n {\n name: 'featuredMicrosoftTeams',\n title: 'Microsoft Teams',\n url: '/integrations/microsoft-teams',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/integrations/microsoft-teams.svg'\n },\n {\n name: 'featuredPaypal',\n title: 'PayPal',\n url: '/integrations/paypal-business',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/integrations/paypal.svg'\n },\n {\n name: 'featuredSlack',\n title: 'Slack',\n url: '/integrations/slack',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/integrations/slack.svg'\n },\n {\n name: 'featuredGoogleSheets',\n title: 'Google Sheets',\n url: '/integrations/google-sheets',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/integrations/google-sheets.svg'\n },\n {\n name: 'featuredMailchimp',\n title: 'Mailchimp',\n url: '/integrations/mailchimp',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/integrations/mailchimp.svg'\n },\n {\n name: 'featuredZoom',\n title: 'Zoom',\n url: '/integrations/zoom',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/integrations/zoom.svg'\n },\n {\n name: 'featuredDropbox',\n title: 'Dropbox',\n url: '/integrations/dropbox',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/integrations/dropbox.svg'\n },\n {\n name: 'featuredGoogleCalendar',\n title: 'Google Calendar',\n url: '/integrations/google-calendar',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/integrations/google-calendar.svg'\n },\n {\n name: 'featuredSalesforce',\n title: 'Salesforce',\n url: '/integrations/salesforce',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/integrations/salesforce.svg'\n }\n];\n\nexport default featuredIntegrationsLinks;\n","const crmLinks = [\n {\n name: 'salesforce',\n title: 'Salesforce',\n url: '/integrations/salesforce',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/integrations/salesforce.svg'\n },\n {\n name: 'hubspot',\n title: 'Hubspot',\n url: '/integrations/hubspot',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/integrations/hubspot.svg'\n },\n {\n name: 'zohoCrm',\n title: 'Zoho CRM',\n url: '/integrations/zoho-crm',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/integrations/zoho.svg'\n },\n {\n name: 'activeCampaign',\n title: 'Active Campaign',\n url: '/integrations/activeCampaign',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/integrations/active-campaign.svg'\n },\n {\n name: 'pipedrive',\n title: 'Pipedrive',\n url: '/integrations/pipedrive',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/integrations/pipedrive.svg'\n },\n {\n name: 'zendek',\n title: 'Zendesk',\n url: '/integrations/zendesk',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/integrations/zendesk.svg'\n },\n {\n name: 'insightly',\n title: 'Insightly',\n url: '/integrations/insightly',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/integrations/insightly.svg'\n },\n {\n name: 'keap',\n title: 'Keap',\n url: '/integrations/keap',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/integrations/keap.svg'\n },\n {\n name: 'engageBay',\n title: 'EngageBay',\n url: '/integrations/engageBay',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/integrations/engagebay.svg'\n }\n];\n\nexport default crmLinks;\n","const storageLinks = [\n {\n name: 'googleDrive',\n title: 'Google Drive',\n url: '/integrations/google-drive',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/integrations/google-drive.svg'\n },\n {\n name: 'dropbox',\n title: 'Dropbox',\n url: '/integrations/dropbox',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/integrations/dropbox.svg'\n },\n {\n name: 'oneDrive',\n title: 'OneDrive',\n url: '/integrations/onedrive',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/integrations/onedrive.svg'\n },\n {\n name: 'box',\n title: 'Box',\n url: '/integrations/box',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/integrations/box.svg'\n },\n {\n name: 'egnyte',\n title: 'Egnyte',\n url: '/integrations/egnyte',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/integrations/egnyte.svg'\n },\n {\n name: 'ftp',\n title: 'FTP',\n url: '/integrations/ftp',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/integrations/ftp.png'\n },\n {\n name: 'galleria',\n title: 'Galleria',\n url: '/integrations/galleria',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/integrations/galleria.png'\n }\n];\n\nexport default storageLinks;\n","const paymentLinks = [\n {\n name: 'paypalPersonal',\n title: 'Paypal Personal',\n url: '/integrations/paypal-personal',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/integrations/paypal.svg'\n },\n {\n name: 'square',\n title: 'Square',\n url: '/integrations/square',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/integrations/square.svg'\n },\n {\n name: 'paypalBusiness',\n title: 'Paypal Business',\n url: '/integrations/paypal-business',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/integrations/paypal.svg'\n },\n {\n name: 'stripe',\n title: 'Stripe',\n url: '/integrations/stripe',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/integrations/stripe.svg'\n },\n {\n name: 'authorizeNet',\n title: 'Authorize.Net',\n alt: 'Blue and Yellow Circle for AuthorizeNet',\n url: '/integrations/authorize-net',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/integrations/authorize-net-v2.svg'\n },\n {\n name: 'applePayandGooglePay',\n title: 'Apple Pay & Google Pay',\n url: '/integrations/apple-pay-google-pay',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/integrations/apple-pay-google-pay.svg'\n },\n {\n name: 'paysafe',\n title: 'Paysafe',\n url: '/integrations/paysafe',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/integrations/paysafe.svg'\n },\n {\n name: 'mollie',\n title: 'Mollie',\n url: '/integrations/mollie',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/integrations/mollie.svg'\n },\n {\n name: 'venmo',\n title: 'Venmo',\n url: '/integrations/venmo',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/integrations/venmo.svg'\n }\n];\n\nexport default paymentLinks;\n","const emailLinks = [\n {\n name: 'constantContact',\n title: 'Constant Contact',\n url: '/integrations/constant-contact',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/integrations/constant-contact.svg'\n },\n {\n name: 'mailchimp',\n title: 'Mailchimp',\n url: '/integrations/mailchimp',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/integrations/mailchimp.svg'\n },\n {\n name: 'activeCampaign',\n title: 'ActiveCampaign',\n url: '/integrations/activecampaign',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/integrations/active-campaign.svg'\n },\n {\n name: 'aweber',\n title: 'AWeber',\n url: '/integrations/aweber',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/integrations/aweber.svg'\n },\n {\n name: 'campaignMonitor',\n title: 'Campaign Monitor',\n url: '/integrations/campaign-monitor',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/integrations/campaign-monitor.svg'\n },\n {\n name: 'getResponse',\n title: 'GetResponse',\n url: '/integrations/getresponse',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/integrations/get-response.svg'\n },\n {\n name: 'googleContacts',\n title: 'Google Contacts',\n url: '/integrations/google-contacts',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/integrations/google-contacts.svg'\n },\n {\n name: 'iContact',\n title: 'iContact',\n alt: 'Blue and Big I Image for iContact',\n url: '/integrations/icontact',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/integrations/icontact.svg'\n }\n];\n\nexport default emailLinks;\n","/* eslint-disable max-len */\nimport { MENU_BADGE_TYPES, MENU_TYPES, TEXTS } from '../constants';\n\nconst productsMenu = {\n name: 'products',\n menuTitle: 'PRODUCTS',\n sideMenuTitle: 'FEATURES',\n sideMenuSeeMoreTitle: TEXTS.SEE_MORE_FEATURES,\n sideMenuSeeMoreUrl: '/features/',\n menuItems: [\n {\n name: 'formBuilder',\n title: 'Form Builder',\n urlGuest: '/',\n url: '/build',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/products/form-builder.svg'\n },\n {\n name: 'jotformEnterprise',\n title: 'Jotform Enterprise',\n url: '/enterprise/',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/products/enterprise.svg'\n },\n {\n name: 'jotformApps',\n title: 'Jotform Apps',\n url: '/products/apps/',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/products/apps.svg'\n },\n {\n name: 'storeBuilder',\n title: 'Store Builder',\n url: '/products/store-builder/',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/products/store-builder.svg?v=1.0'\n },\n {\n name: 'jotformTables',\n title: 'Jotform Tables',\n url: '/products/tables/',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/products/tables.svg'\n },\n {\n name: 'jotformInbox',\n title: 'Jotform Inbox',\n url: '/features/inbox/',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/products/inbox.svg'\n },\n {\n name: 'jotformMobileApp',\n title: 'Jotform Mobile App',\n url: '/products/mobile-forms/',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/products/mobile-app.svg'\n },\n {\n name: 'jotformApprovals',\n title: 'Jotform Approvals',\n url: '/products/approvals/',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/products/approvals.svg'\n },\n {\n name: 'reportBuilder',\n title: 'Report Builder',\n url: '/products/report-builder/',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/products/report-builder.svg'\n },\n {\n name: 'smartPDFforms',\n title: 'Smart PDF Forms',\n url: '/products/smart-pdf-forms/',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/products/smart-pdf-forms.svg'\n },\n {\n name: 'pdfEditor',\n title: 'PDF Editor',\n url: '/products/pdf-editor/',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/products/pdf-editor.svg'\n },\n {\n name: 'jotformSign',\n title: 'Jotform Sign',\n url: '/products/sign/',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/products/sign.svg'\n },\n {\n name: 'jotformSalesforce',\n title: 'Jotform for Salesforce',\n url: 'https://link.jotform.com/pQYiDWJG55?utm_source=jotform.com&utm_campaign=salesforce2023&utm_medium=header&utm_content=cta_salesforce&campaign=header&adgroup=jotform.com&creative=cta_salesforce',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/products/salesforce.svg'\n }\n ],\n sideMenuItems: [\n {\n name: 'jotformTeams',\n title: 'Jotform Teams',\n url: '/teams'\n },\n {\n name: 'enterpriseMobile',\n title: 'Enterprise Mobile',\n url: '/enterprise/mobile-app/',\n badge: {\n text: 'NEW',\n type: MENU_BADGE_TYPES.success\n }\n },\n {\n name: 'prefillForms',\n title: 'Prefill Forms',\n url: '/prefill-forms/whats-new/'\n },\n {\n name: 'hipaaForms',\n title: 'HIPAA Forms',\n url: '/hipaa/'\n },\n {\n name: 'secureForms',\n title: 'Secure Forms',\n url: '/security/'\n },\n {\n name: 'assignForm',\n title: 'Assign Forms',\n url: '/features/assign-forms/'\n },\n {\n name: 'onlinePayments',\n title: 'Online Payments',\n url: '/online-payments/'\n },\n {\n name: 'widgets',\n title: 'Widgets',\n url: '/widgets/'\n }\n ]\n};\n\nexport const productsNavItem = {\n name: 'products',\n menuProps: productsMenu,\n linkProps: {\n renderAs: 'button',\n title: 'Products',\n menuType: MENU_TYPES.PRODUCTS\n }\n};\n","import { MENU_TYPES } from '../constants';\n\nexport const supportMenu = {\n name: 'support',\n menuTitle: 'GET HELP',\n columnCount: 1,\n menuItems: [\n {\n name: 'contactSupport',\n title: 'Contact Support',\n url: '/contact/'\n },\n {\n name: 'mySupportRequests',\n title: 'My Support Requests',\n url: '/answers/asked',\n loginRequired: true\n },\n {\n name: 'helpCenter',\n title: 'Help Center',\n url: '/answers/'\n },\n {\n name: 'faq',\n title: 'FAQ',\n url: '/faq/'\n }\n ],\n sideMenuTitle: 'LEARN',\n sideMenuItems: [\n {\n name: 'userGuide',\n title: 'User Guide',\n url: '/help/'\n },\n {\n name: 'jotformBooks',\n title: 'Jotform Books',\n url: '/books/'\n },\n {\n name: 'blog',\n title: 'Blog',\n url: '/blog/'\n },\n {\n name: 'videos',\n title: 'Videos',\n url: 'https://www.youtube.com/user/TheJotform'\n }, {\n name: 'academy',\n title: 'Jotform Academy',\n url: '/academy/'\n }\n ]\n};\n\nexport const supportNavItem = {\n name: 'support',\n menuProps: supportMenu,\n linkProps: {\n renderAs: 'button',\n title: 'Support',\n menuType: MENU_TYPES.SUPPORT\n }\n};\n","import { t } from '@jotforminc/translation';\nimport { TEXTS } from '../constants';\n\nexport const enterpriseNavItem = {\n name: 'enterprise',\n linkProps: {\n url: '/enterprise/?utm_medium=referral&utm_source=jotform.com&utm_content=Jotform_Enterprise_Header&utm_campaign=enterprise_common_header',\n title: t(TEXTS.ENTERPRISE)\n }\n};\n","import { t } from '@jotforminc/translation';\nimport { TEXTS } from '../constants';\n\nexport const pricingsNavItem = {\n name: 'pricing',\n linkProps: {\n url: '/pricing',\n title: t(TEXTS.PRICING),\n isPricingLink: true\n }\n};\n","import { MENU_TYPES } from '../constants';\n\nexport const pdfEditorMenu = {\n name: 'pdf-editor',\n menuTitle: '',\n menuItems: [\n {\n name: 'pdfFeatures',\n title: 'Features',\n url: '/products/pdf-editor/features/'\n },\n {\n name: 'pdfTemplates',\n title: 'PDF Templates',\n url: '/pdf-templates/'\n },\n {\n name: 'fillablePDFForms',\n title: 'Fillable PDF Forms',\n url: '/fillable-pdf-form-creator/'\n },\n {\n name: 'pdfFaq',\n title: 'FAQ',\n url: '/products/pdf-editor/#FAQ'\n },\n {\n name: 'pdfWebinar',\n title: 'Webinar',\n url: '/products/pdf-editor/jotform-pdf-features-you-need-to-know-webinar/'\n }\n ]\n};\n\nexport const pdfEditorNavItem = {\n name: 'pdf-editor',\n menuProps: pdfEditorMenu,\n linkProps: {\n renderAs: 'button',\n title: 'PDF Editor',\n menuType: MENU_TYPES.PDF_EDITOR\n }\n};\n","import { MENU_TYPES } from '../constants';\n\nexport const signMenu = {\n name: 'sign',\n menuTitle: '',\n menuItems: [\n {\n id: 0,\n name: 'other',\n title: '',\n subMenuItems: [\n {\n name: 'signBenefits',\n title: 'Benefits',\n url: '/products/sign/'\n },\n {\n name: 'signFeatures',\n title: 'Features',\n url: '/products/sign/features/'\n },\n {\n name: 'signTemplates',\n title: 'Templates',\n url: '/pdf-templates/e-sign/'\n },\n {\n name: 'signIntegrations',\n title: 'Integrations',\n url: '/integrations/e-sign/'\n },\n {\n name: 'signPricing',\n title: 'Pricing',\n url: '/products/sign/pricing/'\n }\n ]\n },\n {\n id: 1,\n name: 'explore',\n title: 'Explore',\n subMenuItems: [\n {\n name: 'signStory',\n title: 'Story',\n url: '/products/sign/introducing-jotform-sign/'\n },\n {\n name: 'signHelpGuide',\n title: 'Help Guide',\n url: '/help/guide-jotform-sign/'\n },\n {\n name: 'legalityGuide',\n title: 'Legality Guide',\n url: '/products/sign/e-signature-legality/'\n },\n {\n name: 'signFaq',\n title: 'FAQ',\n url: '/products/sign/faq/'\n },\n {\n name: 'signatureGenerator',\n title: 'Signature Creator',\n url: '/products/sign/signature-generator/'\n }\n ]\n },\n {\n id: 2,\n name: 'solutions',\n title: 'Solutions',\n seeMore: {\n title: 'See all solutions',\n url: '/products/sign/solutions/'\n },\n subMenuItems: [\n {\n name: 'healthcare',\n title: 'Healthcare',\n url:\n '/products/sign/solutions/electronic-signature-for-healthcare/'\n },\n {\n name: 'education',\n title: 'Education',\n url:\n '/products/sign/solutions/electronic-signature-for-higher-education/'\n },\n {\n name: 'realEstate',\n title: 'Real Estate',\n url:\n '/products/sign/solutions/electronic-signature-for-real-estate/'\n },\n {\n name: 'nonprofit',\n title: 'Nonprofit',\n url:\n '/products/sign/solutions/electronic-signature-for-nonprofit/'\n },\n {\n name: 'government',\n title: 'Government',\n url:\n '/products/sign/solutions/electronic-signature-for-government/'\n }\n ]\n }\n ]\n};\n\nexport const signNavItem = {\n name: 'sign',\n menuProps: signMenu,\n linkProps: {\n renderAs: 'button',\n title: 'Jotform Sign',\n icon: 'https://cdn01.jotfor.ms/assets/img/jfHeader/v2/sign-icon.svg',\n menuType: MENU_TYPES.SIGN\n }\n};\n","import React, { useState } from 'react';\nimport {\n array, bool, func, number, object, string\n} from 'prop-types';\n\nimport { getUrlParameter } from '@jotforminc/utils';\n\nimport NavLink from '../NavLink/NavLink';\n\nimport productsJson from '../../menuOptions/products.json';\n\nimport {\n myFormsNavItem,\n enterpriseNavItem,\n templatesNavItem,\n integrationsNavItem,\n productsNavItem,\n supportNavItem,\n pricingsNavItem,\n signNavItem,\n pdfEditorNavItem\n} from '../../menuOptions';\nimport { CONTACT_SALES_AB_TEST_VARIATIONS } from '../../constants';\n\nconst _defaultNavItems = [\n myFormsNavItem,\n templatesNavItem,\n integrationsNavItem,\n getUrlParameter('debug-json-menu') ? productsJson : productsNavItem,\n supportNavItem,\n enterpriseNavItem,\n pricingsNavItem\n];\n\nconst NavItems = ({\n user,\n navItems,\n logHeaderAction,\n currentPath,\n isLoggedIn,\n defaultNavItems, // todo: ??\n isMobileMenuActive,\n unreadSupportAnswerCount,\n showAiAgentBanner,\n contactSalesAbTestVariation\n}) => {\n const { CONTACT_SALES_AS_ITEM, NO_INTEGRATIONS_MENU } = CONTACT_SALES_AB_TEST_VARIATIONS;\n const [openedMenu, setOpenedMenu] = useState('');\n const selectNavItems = () => {\n if (navItems === false) return [];\n if (typeof navItems === 'undefined' || navItems?.length === 0) return _defaultNavItems;\n return navItems;\n };\n\n let items = [...selectNavItems()];\n\n // this is a temporary solution to add pdfEditor and sign to the navItems\n if (defaultNavItems.includes('pdfEditor')) {\n items.unshift(pdfEditorNavItem);\n }\n\n if (defaultNavItems.includes('sign')) {\n items.unshift(signNavItem);\n }\n\n // A/B Test: contactSalesButtonOnHeader\n if ([CONTACT_SALES_AS_ITEM, NO_INTEGRATIONS_MENU].includes(contactSalesAbTestVariation)) {\n items = items.filter(item => item.name !== 'integrations');\n }\n\n return (\n <>\n {items.map(({ name, linkProps, menuProps }) => (\n \n ))}\n \n );\n};\n\nNavItems.propTypes = {\n user: object.isRequired,\n navItems: array,\n logHeaderAction: func,\n currentPath: string.isRequired,\n isLoggedIn: bool,\n defaultNavItems: array,\n isMobileMenuActive: bool,\n unreadSupportAnswerCount: number,\n showAiAgentBanner: bool.isRequired,\n contactSalesAbTestVariation: string.isRequired\n};\n\nNavItems.defaultProps = {\n navItems: _defaultNavItems,\n logHeaderAction: () => {},\n isLoggedIn: undefined,\n defaultNavItems: [],\n isMobileMenuActive: false,\n unreadSupportAnswerCount: 0\n};\n\nexport default NavItems;\n","import React from 'react';\nimport { func } from 'prop-types';\n\nimport { t } from '@jotforminc/translation';\n\nconst SignupButtonMobile = ({ onClick }) => (\n \n {t('Sign Up')}\n \n);\n\nSignupButtonMobile.propTypes = {\n onClick: func\n};\n\nSignupButtonMobile.defaultProps = {\n onClick: f => f\n};\n\nexport default SignupButtonMobile;\n","import React from 'react';\nimport cx from 'classnames';\nimport { bool } from 'prop-types';\nimport { t } from '@jotforminc/translation';\n\nimport { TEXTS } from '../../constants';\nimport GovernmentSvg from '../../assets/svg/government.svg';\nimport { isDarkTheme } from '../../utils';\nimport { themePropType } from '../../propTypes';\n\nconst BadgeGovernment = ({\n theme,\n isMobileMenuActive\n}) => {\n return (\n
\n \n \n \n \n {t(TEXTS.GOVERNMENT)}\n \n
\n );\n};\n\nBadgeGovernment.propTypes = {\n theme: themePropType.isRequired,\n isMobileMenuActive: bool\n};\n\nBadgeGovernment.defaultProps = {\n isMobileMenuActive: false\n};\n\nexport default BadgeGovernment;\n","import React from 'react';\nimport cx from 'classnames';\nimport { bool } from 'prop-types';\nimport { t } from '@jotforminc/translation';\nimport { TEXTS } from '../../constants';\nimport HipaaSvg from '../../assets/svg/hipaa.svg';\nimport { isDarkTheme } from '../../utils';\nimport { themePropType } from '../../propTypes';\n\nconst BadgeHipaa = ({ theme, isMobileMenuActive }) => {\n return (\n \n \n \n {t(TEXTS.HIPAA_COMPLIANCE)}\n \n \n );\n};\n\nBadgeHipaa.propTypes = {\n theme: themePropType.isRequired,\n isMobileMenuActive: bool\n};\n\nBadgeHipaa.defaultProps = {\n isMobileMenuActive: false\n};\n\nexport default BadgeHipaa;\n","import React from 'react';\nimport { bool, object, string } from 'prop-types';\nimport cx from 'classnames';\nimport { t } from '@jotforminc/translation';\nimport { isEnterprise } from '@jotforminc/enterprise-utils';\n\nimport { BadgeHipaa, BadgeGovernment } from '../Badges';\nimport { logoSideLinkPropsDefaultProps, logoSideLinkPropsPropTypes, themePropType } from '../../propTypes';\n\nconst SideLink = ({\n user,\n theme,\n isMobileMenuActive,\n logoSideLinkProps,\n currentPath\n}) => {\n const {\n sideLinkText, dividerColor, sideLinkUrl, sideLinkClassName,\n sideLinkTextColor, sideLinkLogoAsHtmlString\n } = logoSideLinkProps;\n\n const linkClasses = cx('locale jfRHeader--logo-text', sideLinkClassName);\n const sideLinkClasses = cx('jfRHeader--logo-custom', sideLinkClassName);\n\n const selectBadge = () => {\n const { isGovernment: showGovernmentBadge, isHIPAA } = user || {};\n const showHipaaBadge = isHIPAA === '1';\n const pathname = currentPath?.replace(/\\/platform\\/(.*?)\\//, '/')?.replace(/\\/$/, '');\n const isOnPage = ['/pricing', '/myaccount', '/myforms', '/mytables', '/myreports', '/myapprovals', '/myapps', '/mysigndocuments', '/f/headerapp'].some(page => pathname?.includes(page));\n\n if (!isOnPage) return () => null;\n\n if (isEnterprise() && showGovernmentBadge) {\n return BadgeGovernment;\n }\n\n if (showHipaaBadge) {\n return BadgeHipaa;\n }\n\n return () => null;\n };\n\n const Badge = selectBadge();\n\n return (\n <>\n {sideLinkText && (\n <>\n
\n \n {t(sideLinkText)}\n \n \n )}\n {sideLinkLogoAsHtmlString && (\n <>\n
\n \n \n )}\n {(!sideLinkText && !sideLinkLogoAsHtmlString) && (\n \n )}\n \n );\n};\n\nSideLink.propTypes = {\n user: object.isRequired,\n theme: themePropType.isRequired,\n isMobileMenuActive: bool,\n logoSideLinkProps: logoSideLinkPropsPropTypes,\n currentPath: string.isRequired\n};\n\nSideLink.defaultProps = {\n isMobileMenuActive: false,\n logoSideLinkProps: logoSideLinkPropsDefaultProps\n};\n\nexport default SideLink;\n","import React from 'react';\nimport { bool, string } from 'prop-types';\nimport { isDarkTheme, isGrayTheme, isLightTheme } from '../../utils';\nimport { logoPropsDefaultProps, logoPropsPropTypes, themePropType } from '../../propTypes';\n\n// jotform logos\nimport LogoJotformDark from '../../assets/svg/logoJotformDark.svg';\nimport LogoJotformLight from '../../assets/svg/logoJotformLight.svg';\nimport LogoJotformFullLight from '../../assets/svg/logoJotformFullLight.svg';\n\n// korean jotform logos\nimport LogoJotformKoreanDark from '../../assets/svg/logoJotformKoreanDark.svg';\nimport LogoJotformKoreanLight from '../../assets/svg/logoJotformKoreanLight.svg';\nimport LogoJotformKoreanFullLight from '../../assets/svg/logoJotformKoreanFullLight.svg';\n\nconst LogoVisual = ({\n theme,\n isKorean,\n className,\n logoProps: { logoFullLight }\n}) => {\n const selectLogo = () => {\n if (logoFullLight) {\n return isKorean ? LogoJotformKoreanFullLight : LogoJotformFullLight;\n }\n\n if (isDarkTheme(theme)) {\n return isKorean ? LogoJotformKoreanLight : LogoJotformLight;\n }\n\n if (isLightTheme(theme) || isGrayTheme(theme)) {\n return isKorean ? LogoJotformKoreanDark : LogoJotformDark;\n }\n\n return null;\n };\n\n const SelectedLogo = selectLogo();\n\n return ;\n};\n\nLogoVisual.propTypes = {\n theme: themePropType.isRequired,\n className: string,\n isKorean: bool,\n logoProps: logoPropsPropTypes\n};\n\nLogoVisual.defaultProps = {\n className: '',\n isKorean: false,\n logoProps: logoPropsDefaultProps\n};\n\nexport default LogoVisual;\n","import React from 'react';\nimport cx from 'classnames';\nimport { bool, func, string } from 'prop-types';\nimport { handleCustomNavigation } from '@jotforminc/utils';\n\nimport LogoVisual from './LogoVisual';\nimport { logoPropsDefaultProps, logoPropsPropTypes, themePropType } from '../../propTypes';\nimport { THEME_MAP } from '../../constants';\n\nconst Logo = ({\n theme,\n isSticky,\n language,\n logHeaderAction,\n isMobileMenuActive,\n isEnterprise,\n logoProps: {\n logoUrl,\n logoFullLight,\n customLogoAsReactElement,\n customLogoAsHtmlString: customLogoAsHtmlStringProp,\n customDarkLogoAsHtmlString,\n enterpriseLogoSrc\n }\n}) => {\n const customLogoAsHtmlString = theme === THEME_MAP.DARK && customDarkLogoAsHtmlString ? customDarkLogoAsHtmlString : customLogoAsHtmlStringProp;\n const isCustomLogo = customLogoAsReactElement || customLogoAsHtmlString;\n const isKorean = language === 'ko-KR';\n const logoSvgClasses = cx({ isSticky });\n const url = logoUrl || '/';\n\n const handleClick = e => {\n e.preventDefault();\n\n if (isEnterprise) {\n logHeaderAction({ action: 'click', target: 'topLeftMainLogo' });\n }\n\n handleCustomNavigation(url, '_self', true);\n };\n\n if (!isCustomLogo || (isCustomLogo && isKorean)) {\n return (\n \n {!isEnterprise && (\n \n )}\n {isEnterprise && enterpriseLogoSrc && company logo}\n \n );\n }\n\n return (\n <>\n {customLogoAsReactElement && (\n \n {customLogoAsReactElement}\n \n )}\n {customLogoAsHtmlString && (\n \n )}\n \n );\n};\n\nLogo.propTypes = {\n theme: themePropType.isRequired,\n isSticky: bool,\n language: string,\n logoProps: logoPropsPropTypes,\n logHeaderAction: func,\n isMobileMenuActive: bool,\n isEnterprise: bool.isRequired\n};\n\nLogo.defaultProps = {\n isSticky: false,\n language: undefined,\n logoProps: logoPropsDefaultProps,\n logHeaderAction: f => f,\n isMobileMenuActive: false\n};\n\nexport default Logo;\n\n// make sure you test your changings on these Pages\n// https://www.jotform.com/myforms/\n// https://www.jotform.com/form-templates/\n// https://www.jotform.com/blog/\n// https://www.jotform.com/terms/\n// https://www.jotform.com/return-to-office-guidelines/\n// https://www.jotform.com/data-filtering/\n// https://www.jotform.com/photography/\n// https://www.jotform.com/enterprise/\n// https://www.jotform.com/online-payments/\n// https://www.jotform.com/2checkout/\n// https://www.jotform.com/products/sign/\n// https://www.jotform.com/blog/announcing-jotform-group-approvals/\n// https://www.jotform.com/wufoo-alternative/\n","/* eslint-disable complexity */\nimport React from 'react';\nimport {\n bool, string, object, func\n} from 'prop-types';\nimport SideLink from './SideLink';\nimport Logo from './Logo';\nimport {\n logoPropsPropTypes, logoPropsDefaultProps, logoSideLinkPropsPropTypes, logoSideLinkPropsDefaultProps, themePropType\n} from '../../propTypes';\n\nconst LogoGroup = ({\n user,\n theme,\n isSticky,\n language,\n logoProps,\n logoSideLinkProps,\n isMobileMenuActive,\n logHeaderAction,\n isEnterprise,\n currentPath\n}) => {\n return (\n <>\n \n \n \n );\n};\n\nLogoGroup.propTypes = {\n isMobileMenuActive: bool,\n isSticky: bool,\n user: object.isRequired,\n theme: themePropType.isRequired,\n language: string,\n logoProps: logoPropsPropTypes,\n logoSideLinkProps: logoSideLinkPropsPropTypes,\n logHeaderAction: func,\n isEnterprise: bool.isRequired,\n currentPath: string.isRequired\n};\n\nLogoGroup.defaultProps = {\n isMobileMenuActive: false,\n isSticky: false,\n language: undefined,\n logoProps: logoPropsDefaultProps,\n logoSideLinkProps: logoSideLinkPropsDefaultProps,\n logHeaderAction: f => f\n};\n\nexport default LogoGroup;\n\n// make sure you test your changings on these pages\n// https://www.jotform.com/myforms/\n// https://www.jotform.com/form-templates/\n// https://www.jotform.com/blog/\n// https://www.jotform.com/terms/\n// https://www.jotform.com/return-to-office-guidelines/\n// https://www.jotform.com/data-filtering/\n// https://www.jotform.com/photography/\n// https://www.jotform.com/enterprise/\n// https://www.jotform.com/online-payments/\n// https://www.jotform.com/2checkout/\n// https://www.jotform.com/products/sign/\n// https://www.jotform.com/blog/announcing-jotform-group-approvals/\n// https://www.jotform.com/wufoo-alternative/\n","import styled from 'styled-components';\n\nexport const ScHeaderWrapper = styled.div`\n --jf-header-bg: ${props => props.menuStyles.headerBackground || 'transparent'};\n --jf-header-bg-sticky: ${props => props.menuStyles.headerBackgroundSticky || 'rgba(255, 255, 255, 0.9)'};\n --jf-header-logo-text: ${props => props.menuStyles.logoTextColor || '#0a224c'};\n --jf-header-nav-menu: ${props => props.menuStyles.navMenuColor || '#0a1551'};\n --jf-header-nav-menu-active: ${props => props.menuStyles.navMenuActiveColor || '#0075E3'};\n --jf-header-nav-menu-hover: ${props => props.menuStyles.navMenuHoverColor || '#0075E3'};\n --jf-hamburger-menu: ${props => props.menuStyles.hamburgerMenuColor || '#343C6A'};\n --jf-app-picker-border: ${props => props.menuStyles.appPickerBorderColor || '#E3E5F5'};\n --jf-header-size: ${props => props.menuStyles.headerHeight || '64px'};\n --bg-blue-500: #0075e3;\n --bg-blue-600: #0066c3;\n @media screen and (max-width: 1024px) {\n --jf-header-size: 45px;\n }\n`;\n\nexport default ScHeaderWrapper;\n","import styled from 'styled-components';\n\nconst ScHeaderContainer = styled.div`\n width: 100%;\n margin: 0 auto;\n display: flex;\n align-items: center;\n justify-content: center;\n min-height: var(--jf-header-size);\n padding: 0 12px;\n @media screen and (min-width: 480px) {\n max-width: 608px;\n padding: 0 16px;\n }\n @media screen and (min-width: 640px) {\n max-width: 736px;\n }\n @media screen and (min-width: 768px) {\n max-width: 984px;\n }\n @media screen and (min-width: 1024px) {\n max-width: 1200px;\n }\n @media screen and (min-width: 1280px) {\n max-width: 1296px;\n }\n &.mobileScreen {\n position: relative;\n z-index: 1;\n }\n &.isMobileMenuActive {\n position: fixed;\n left: 0;\n top: 0;\n right: 0;\n width: 100%;\n background-color: #fff;\n .jfRHeader--mobile-nav-signup-btn {\n display: none;\n }\n }\n`;\n\nexport default ScHeaderContainer;\n","import styled from 'styled-components';\nimport ScHeaderContainer from './ScHeaderContainer';\n\nconst ScHeader = styled.div`\n position: ${props => props.menuStyles.headerPosition || 'relative'};\n font-family: Circular, -apple-system, BlinkMacSystemFont, \"Segoe UI\", roboto, oxygen-sans, ubuntu, cantarell, \"Helvetica Neue\", sans-serif;\n width: 100%;\n z-index: 100;\n background: var(--jf-header-bg);\n transition: background-color 0.2s ease;\n &.jfRHeader--dark-mode {\n --jf-header-bg: ${props => props.menuStyles.headerBackground || '#0a1551'};\n --jf-header-bg-sticky: ${props => props.menuStyles.headerBackgroundSticky || 'rgba(10, 21, 81, 0.9)'};\n --jf-header-logo-text: ${props => props.menuStyles.logoTextColor || '#fff'};\n --jf-header-nav-menu: ${props => props.menuStyles.navMenuColor || '#fff'};\n --jf-header-nav-menu-active: ${props => props.menuStyles.navMenuActiveColor || '#0075E3'};\n --jf-header-nav-menu-hover: ${props => props.menuStyles.navMenuHoverColor || '#0075E3'};\n --jf-hamburger-menu: ${props => props.menuStyles.hamburgerMenuColor || '#fff'};\n --jf-app-picker-border: ${props => props.menuStyles.appPickerBorderColor || '#252d5b'};\n --jf-header-size: ${props => props.menuStyles.headerHeight || '64px'};\n ${ScHeaderContainer} {\n &.isMobileMenuActive {\n background: var(--jf-header-bg);\n }\n }\n @media screen and (max-width: 1024px) {\n --jf-header-nav-menu: #0a1551;\n }\n }\n &.jfRHeader--gray-mode {\n --jf-header-bg: ${props => props.menuStyles.headerBackground || '#F3F3FE'};\n --jf-header-bg-sticky: ${props => props.menuStyles.headerBackgroundSticky || 'rgba(244, 244, 244, 0.9)'};\n --jf-header-logo-text: ${props => props.menuStyles.logoTextColor || '#0a1551'};\n --jf-header-nav-menu: ${props => props.menuStyles.navMenuColor || '#0a1551'};\n --jf-header-nav-menu-active: ${props => props.menuStyles.navMenuActiveColor || '#0075E3'};\n --jf-header-nav-menu-hover: ${props => props.menuStyles.navMenuHoverColor || '#0075E3'};\n --jf-hamburger-menu: ${props => props.menuStyles.hamburgerMenuColor || '#333'};\n --jf-app-picker-border: ${props => props.menuStyles.appPickerBorderColor || '#e0e0e0'};\n --jf-header-size: ${props => props.menuStyles.headerHeight || '64px'};\n ${ScHeaderContainer} {\n &.isMobileMenuActive {\n background: var(--jf-header-bg);\n }\n }\n @media screen and (max-width: 1024px) {\n --jf-header-nav-menu: #0a1551;\n }\n }\n &.isSticky {\n backdrop-filter: saturate(180%) blur(20px);\n background: var(--jf-header-bg-sticky) !important; // stylelint-disable-line\n position: fixed;\n top: 0;\n right: 0;\n left: 0;\n z-index: 8000;\n }\n &.jfRHeader--full-width {\n ${ScHeaderContainer} {\n @media screen and (min-width: 480px) {\n max-width: 100%;\n }\n }\n }\n`;\n\nexport default ScHeader;\n","import styled from 'styled-components';\n\nconst ScLogoWrapper = styled.div`\n display: flex;\n align-items: center;\n @media screen and (max-width: 1024px) {\n width: 100%;\n }\n @media screen and (min-width: 1024px) {\n padding-inline-end: 16px;\n transform: translateY(-.09rem);\n }\n // Mobile Nav\n .jfRHeader--mobile-nav {\n margin-left: 0;\n display: none;\n &-signup-btn {\n padding: 0 8px;\n border-radius: 4px;\n font-weight: 700;\n letter-spacing: -0.5px;\n cursor: pointer;\n background-color: #17255b;\n color: #fff;\n margin-left: 4px;\n margin-right: 4px;\n text-align: center;\n line-height: 24px;\n font-size: 12px;\n outline: none;\n border: 0;\n white-space: nowrap;\n }\n @media screen and (max-width: 1024px) {\n display: flex;\n flex: 1;\n justify-content: flex-end;\n align-items: center;\n }\n }\n // Hamburger Menu\n .jfRHeader--hamburger {\n width: 32px;\n height: 32px;\n display: flex;\n align-items: center;\n justify-content: center;\n color: var(--jf-hamburger-menu);\n border: 0;\n outline: none;\n padding: 0;\n svg {\n width: 16px;\n }\n &.isActive {\n svg {\n width: 24px;\n }\n }\n }\n .jfRHeader--logo-link {\n width: 120px;\n height: auto;\n display: flex;\n svg {\n max-width: 100%;\n max-height: 100%;\n height: 30px;\n width: auto;\n }\n img {\n max-width: 100%;\n height: auto;\n max-height: 30px;\n }\n @media screen and (min-width: 1280px) {\n width: 148px;\n height: auto;\n }\n &:focus {\n outline: thin dotted #d5daff;\n }\n }\n .jfRHeader--logo-divider {\n background-color: #d3d6ec;\n width: 1px;\n height: 24px;\n margin-left: 16px;\n margin-right: 16px;\n @media screen and (max-width: 1280px) {\n height: 18px;\n margin-left: 10px;\n margin-right: 10px;\n }\n }\n .jfRHeader--logo-text {\n font-size: 20px;\n font-weight: 500;\n color: var(--jf-header-logo-text);\n text-decoration: none;\n margin-inline-start: -2px;\n @media screen and (max-width: 1280px) {\n font-size: 16px;\n }\n @media screen and (max-width: 480px) {\n font-size: 12px;\n max-width: 100px;\n }\n }\n .jfRHeader--logo-custom {\n svg {\n width: auto;\n height: 20px;\n display: block;\n }\n @media screen and (max-width: 1024px) {\n svg {\n height: 16px;\n }\n }\n }\n .jfRHeader--hipaa {\n display: flex; \n align-items: center;\n &:before {\n content: \"\";\n background-color: #d3d6ec;\n width: 1px;\n height: 24px;\n margin-left: 16px;\n margin-right: 16px;\n @media screen and (max-width: 1024px) {\n height: 18px;\n margin-left: 10px;\n margin-right: 10px;\n }\n }\n &-logo {\n width: 26px;\n height: auto;\n @media screen and (max-width: 1024px) {\n width: 20px;\n }\n }\n &-text {\n margin-left: 8px;\n width: 96px;\n font-size: 14px;\n line-height: 18px;\n font-weight: 700;\n color: var(--jf-header-logo-text);\n html[dir='rtl'] & {\n margin-left: 0;\n margin-right: 8px;\n }\n @media screen and (max-width: 1024px) {\n display: none;\n }\n }\n }\n`;\n\nexport default ScLogoWrapper;\n","import React from 'react';\nimport { string } from 'prop-types';\n\nimport { t } from '@jotforminc/translation';\n\n// A/B Test: contactSalesButtonOnHeader\nconst ContactSalesMobile = ({ contactSalesAbTestVariationURL }) => {\n return (\n \n {t('Contact Sales')}\n \n );\n};\n\nContactSalesMobile.propTypes = {\n contactSalesAbTestVariationURL: string.isRequired\n};\n\nexport default ContactSalesMobile;\n","/* eslint-disable max-len */\n/* eslint-disable no-nested-ternary */\n/* eslint-disable complexity */\nimport React, { Fragment, useEffect, useState } from 'react';\nimport { StyleSheetManager } from 'styled-components';\nimport cx from 'classnames';\nimport {\n string, bool, array, elementType, func, node, object\n} from 'prop-types';\nimport {\n logoPropsDefaultProps, logoPropsPropTypes, logoSideLinkPropsDefaultProps, logoSideLinkPropsPropTypes,\n themePropType\n} from '../../propTypes';\nimport { CONTACT_SALES_AB_TEST_VARIATIONS, THEME_CLASSNAME_MAP } from '../../constants';\nimport { isDarkTheme, isGrayTheme } from '../../utils';\nimport HamburgerButton from '../Navigation/HamburgerButton';\nimport Navigation from '../Navigation/Navigation';\nimport NavItems from '../Navigation/NavItems';\nimport SignupButtonMobile from '../Navigation/SignupButtonMobile';\nimport { LogoGroup } from '../LogoGroup';\nimport {\n ScHeaderWrapper, ScHeader, ScHeaderContainer, ScLogoWrapper\n} from '../Sc';\nimport ContactSalesMobile from '../Navigation/ContactSalesMobile';\n\nconst HeaderBody = ({\n AppPickerRenderer,\n LoginGroupRenderer,\n children,\n customNavItems,\n logoProps,\n logoSideLinkProps,\n disableLoginFlow,\n hideLoginButton,\n hideSignupButton,\n forceRTL,\n bgColor,\n fullWidth,\n isMobileScreen,\n isMobileMenuActive,\n isSticky,\n onMobileMenuButtonClick,\n onMobileSignupButtonClick,\n user,\n theme,\n logHeaderAction,\n currentPath,\n isLoggedIn,\n replaceAuthButtons,\n language,\n defaultNavItems,\n menuStyles,\n isEnterprise,\n showAiAgentBanner,\n contactSalesAbTestVariation,\n contactSalesAbTestVariationURL\n}) => {\n const [bgStyles, setBgStyles] = useState({});\n const outlineWrapper = cx('jfRHeader', {\n 'jfRHeader--dark-mode': (isDarkTheme(theme) && !isMobileScreen) || (isDarkTheme(theme) && isMobileScreen && !isMobileMenuActive),\n 'jfRHeader--gray-mode': (isGrayTheme(theme) && !isMobileScreen) || (isGrayTheme(theme) && isMobileScreen && !isMobileMenuActive),\n isSticky: isSticky && !isMobileMenuActive,\n 'jfRHeader--full-width': fullWidth,\n [THEME_CLASSNAME_MAP[theme]]: !!THEME_CLASSNAME_MAP[theme], // hasOwn would be better but im not sure if that works on ie11\n isMobileMenuActive\n });\n\n const { CONTACT_SALES_AS_CTA } = CONTACT_SALES_AB_TEST_VARIATIONS;\n\n const outlineClasses = cx('jfRHeader--container', {\n fullWidth,\n mobileScreen: isMobileScreen && isMobileMenuActive,\n isMobileMenuActive,\n isEnterprise\n });\n\n // TODO: It'll remove bgColor prop.\n useEffect(() => {\n if (!(menuStyles?.headerBackground || menuStyles?.headerBackgroundSticky)) {\n if (bgColor && isSticky) {\n setBgStyles({ '--jf-header-bg-sticky': bgColor });\n } else if (bgColor) {\n setBgStyles({ '--jf-header-bg': bgColor });\n }\n }\n }, [bgColor, isSticky, menuStyles]);\n\n const unreadSupportAnswerCount = parseInt(user?.unreadSupportAnswerCount || 0, 10);\n\n return (\n \n \n {children}\n \n \n \n {/* logo */}\n \n {/* app picker */}\n \n {/* mobile only */}\n
\n {(!disableLoginFlow && !hideSignupButton && !isLoggedIn && !replaceAuthButtons && contactSalesAbTestVariation !== CONTACT_SALES_AS_CTA) && (\n \n )}\n {/* A/B Test: contactSalesButtonOnHeader */}\n {(!disableLoginFlow && !hideSignupButton && !isLoggedIn && !replaceAuthButtons && contactSalesAbTestVariation === CONTACT_SALES_AS_CTA) && (\n \n )}\n {((customNavItems !== false) || !disableLoginFlow) && (\n \n )}\n
\n
\n \n \n {(replaceAuthButtons && !disableLoginFlow) && (\n \n )}\n \n
\n \n
\n
\n );\n};\n\nHeaderBody.propTypes = {\n AppPickerRenderer: elementType,\n LoginGroupRenderer: elementType,\n logoProps: logoPropsPropTypes,\n logoSideLinkProps: logoSideLinkPropsPropTypes,\n customNavItems: array,\n disableLoginFlow: bool,\n hideLoginButton: bool,\n hideSignupButton: bool,\n forceRTL: bool,\n children: node,\n bgColor: string,\n fullWidth: bool,\n isMobileScreen: bool,\n isMobileMenuActive: bool,\n isSticky: bool,\n onMobileMenuButtonClick: func,\n onMobileSignupButtonClick: func,\n user: object.isRequired,\n theme: themePropType.isRequired,\n logHeaderAction: func,\n currentPath: string.isRequired,\n isLoggedIn: bool.isRequired,\n replaceAuthButtons: string,\n language: string.isRequired,\n defaultNavItems: array,\n menuStyles: object,\n isEnterprise: bool.isRequired,\n showAiAgentBanner: bool.isRequired,\n contactSalesAbTestVariation: string.isRequired,\n contactSalesAbTestVariationURL: string.isRequired\n};\n\nHeaderBody.defaultProps = {\n AppPickerRenderer: Fragment,\n LoginGroupRenderer: undefined,\n logoProps: logoPropsDefaultProps,\n logoSideLinkProps: logoSideLinkPropsDefaultProps,\n customNavItems: undefined,\n disableLoginFlow: false,\n hideLoginButton: false,\n hideSignupButton: false,\n forceRTL: false,\n children: null,\n bgColor: '',\n fullWidth: false,\n isMobileScreen: false,\n isMobileMenuActive: false,\n isSticky: false,\n onMobileMenuButtonClick: () => {},\n onMobileSignupButtonClick: () => {},\n logHeaderAction: () => {},\n replaceAuthButtons: '',\n defaultNavItems: [],\n menuStyles: {}\n};\n\nexport default HeaderBody;\n","import { ABTestManager } from '@jotforminc/abtest-manager';\nimport { readCookie } from '../jotCookie';\n\nexport const initLanguageSwitcherTest = async (user, languageSwitcher, setLanguageSwitcherVisible) => {\n if (!languageSwitcher || !languageSwitcher.browserLanguage || !languageSwitcher.domainLanguage) return;\n\n const { pathname = '' } = global?.window?.location || {};\n if (!pathname.includes('/form-templates')) return;\n if (!document) return;\n\n const languagesSwitcherDiscarded = readCookie('LANGUAGE_SWITCHER:Flyin') === 'true';\n if (languagesSwitcherDiscarded) return;\n\n const languageList = Array.from(document.querySelectorAll('link'))\n .filter(link => link.getAttribute('hreflang') && link.getAttribute('hreflang') !== 'x-default')\n .map(lang => lang.getAttribute('hreflang'));\n\n const {\n browserLanguage, domainLanguage\n } = languageSwitcher;\n\n const isSwitchLanguageAvailable = languageList.find(lang => lang === browserLanguage.split('-')[0]);\n if (browserLanguage !== domainLanguage && isSwitchLanguageAvailable) {\n const abTestManager = new ABTestManager({\n user,\n isTestEnabled: true,\n testVariantCode: '28502',\n controlVariantCode: '28492',\n urlParam: 'languageSwitcherAB',\n testName: 'languageSwitcherFormTemplates'\n });\n try {\n const isTestVariantNewUser = await abTestManager.isTestVariant();\n if (isTestVariantNewUser) {\n const logAbTestActionLangSwitcher = abTestManager.registerABTestAction;\n global.window.logAbTestActionLangSwitcher = logAbTestActionLangSwitcher;\n setLanguageSwitcherVisible(true);\n }\n } catch (error) {\n //\n }\n }\n};\n","import React, { createContext } from 'react';\nimport { bool, node } from 'prop-types';\n\nexport const ModeContext = createContext();\n\nconst ModeProvider = ({ stickyMode, children }) => {\n return (\n \n {children}\n \n );\n};\n\nModeProvider.propTypes = {\n stickyMode: bool,\n children: node\n};\n\nModeProvider.defaultProps = {\n stickyMode: false,\n children: null\n};\n\nexport default ModeProvider;\n","import {\n ComponentPropsWithoutRef,\n PropsWithChildren\n} from 'react';\n\nimport { Icon } from '../../constants/common.types';\n\nimport {\n commonInputDefaults,\n DropdownGroupContextType,\n DropdownOptionType,\n FormControlContextType\n} from '../../contexts';\n\ntype DropdownOptionNativeProps = Omit & ComponentPropsWithoutRef<'button'>, 'size'>\ntype DropdownNativeProps = FormControlContextType & PropsWithChildren, 'onChange'>>;\ntype DropdownGroupNativeProps = Pick & PropsWithChildren>;\n\nexport type DropdownOptionProps = DropdownOptionType & DropdownOptionNativeProps\n\nexport type DropdownProps = {\n onChange?: ((options: string | string[]) => void)\n value?: string | string[],\n placeholderIcon?: Icon,\n searchable?: boolean | string,\n noResultFoundText?: string,\n multiple?: boolean\n expand?: boolean,\n ghost?: boolean,\n showCountOnly?: ((count: number) => string) | boolean\n} & DropdownNativeProps;\n\nexport type DropdownGroupProps = {\n icon?: Icon\n id: string,\n title: string\n} & DropdownGroupNativeProps & DropdownGroupContextType;\n\nexport const dropdownDefaultProps:Partial = commonInputDefaults;\n","import { cva } from 'class-variance-authority';\nimport { CVAType } from '../../types';\nimport { DropdownProps } from './dropdown.types';\nimport { primary } from '../../tokens/colors';\nimport { DropdownGroupContextType } from '../../contexts';\n\ntype DropdownOptionHelperTypes = {\n isSelected: boolean,\n isActive: boolean,\n as: 'title' | 'option'\n};\n\ntype DropdownOptionCVAType = CVAType & DropdownOptionHelperTypes & Pick>\ntype DropdownSizeCVAType = CVAType>\ntype DropdownThemeCVAType = CVAType>\n\nexport const dropdownOptionCVA = cva('flex items-center w-full', {\n variants: {\n size: {\n small: 'h-8',\n medium: 'h-10',\n large: 'h-12'\n },\n isSelected: {},\n disabled: {},\n isActive: {},\n theme: {},\n as: {\n title: 'font-bold'\n },\n indent: {}\n },\n compoundVariants: [\n {\n indent: false,\n size: 'small',\n className: 'px-2'\n },\n {\n indent: false,\n size: ['medium', 'large'],\n className: 'px-3'\n },\n {\n indent: true,\n as: 'option',\n size: 'small',\n className: 'pl-6 pr-2'\n },\n {\n indent: true,\n as: 'option',\n size: 'medium',\n className: 'pl-8 pr-3'\n },\n {\n indent: true,\n as: 'option',\n size: 'large',\n className: 'pl-10 pr-3'\n },\n {\n theme: 'light',\n as: 'option',\n className: 'color-navy-700'\n },\n {\n theme: 'dark',\n as: 'option',\n className: 'color-white'\n },\n {\n size: ['small', 'medium'],\n className: 'text-sm'\n },\n {\n size: 'large',\n className: 'text-md'\n },\n {\n disabled: true,\n className: 'opacity-40 cursor-not-allowed'\n },\n {\n disabled: false,\n isSelected: false,\n isActive: true,\n theme: 'light',\n className: 'bg-navy-25'\n },\n {\n disabled: false,\n isSelected: true,\n theme: 'light',\n className: 'bg-blue-100'\n },\n {\n disabled: false,\n isSelected: false,\n isActive: true,\n theme: 'dark',\n className: 'bg-gray-600'\n },\n {\n disabled: false,\n isSelected: true,\n theme: 'dark',\n className: 'bg-gray-700'\n },\n {\n as: 'title',\n theme: 'light',\n className: primary.text.medium.base\n },\n {\n as: 'title',\n theme: 'dark',\n className: 'color-gray-100'\n }\n ]\n});\n\nexport const dropdownOptionIconCVA = cva('shrink-0', {\n variants: {\n size: {\n small: 'w-4 h-4 mr-2',\n medium: 'w-5 h-5 mr-3',\n large: 'w-6 h-6 mr-3'\n }\n }\n});\n\nexport const dropdownListCVA = cva('radius flex flex-col', {\n variants: {\n theme: {\n light: 'bg-white shadow-md border border-navy-50',\n dark: 'bg-gray-500 shadow-dark-md'\n }\n }\n});\n\nexport const dropdownSearchInputCVA = cva('shrink-0 border-b', {\n variants: {\n theme: {\n light: 'border-b-navy-50',\n dark: 'border-b-gray-400'\n }\n }\n});\n\nexport const dropdownResultNotFoundCVA = cva('text-center',\n {\n variants: {\n size: {\n small: 'p-2 text-sm',\n medium: 'p-3 text-sm',\n large: 'p-3.5 text-md'\n },\n theme: {\n light: [primary.text.medium.base, primary.background.lightest.base],\n dark: 'color-white'\n }\n }\n }\n);\n","import { cva } from 'class-variance-authority';\nimport { CVAType } from '../../types/system.types';\nimport { TagProps } from './tag.types';\n\n// CVA Types\ntype TagCVAType = CVAType>;\ntype TagSizeCVAType = CVAType>\n\n// Classes\nexport const tagCVA = cva(\n 'magnet-tag inline-flex items-center color-navy-700 radius max-w-full overflow-hidden', {\n variants: {\n size: {\n small: 'h-5 text-xs px-1',\n medium: 'h-7 text-sm px-1.5',\n large: 'h-8 text-md px-2'\n },\n colorStyle: {\n blue: 'bg-blue-100',\n gray: 'bg-gray-50',\n green: 'bg-green-100',\n orange: 'bg-orange-100',\n purple: 'bg-purple-100',\n red: 'bg-red-100',\n yellow: 'bg-yellow-100'\n },\n disabled: {\n true: 'opacity-70',\n false: ''\n }\n }\n }\n);\n\nexport const tagTextCVA = cva('whitespace-nowrap truncate overflow-hidden', {\n variants: {\n size: {\n small: 'px-1',\n medium: 'px-1.5',\n large: 'px-2'\n }\n }\n});\n\nexport const tagIconCVA = cva('color-current shrink-0', {\n variants: {\n size: {\n small: 'w-3 h-3',\n medium: 'w-4 h-4',\n large: 'w-4 h-4'\n }\n }\n});\n","import { ComponentPropsWithoutRef } from 'react';\nimport { Icon, Size } from '../../constants/common.types';\n\nexport type TagProps = ComponentPropsWithoutRef<'span'> & {\n size?: Size,\n colorStyle?: 'orange' | 'red' | 'purple' | 'blue' | 'yellow' | 'green' | 'gray',\n icon?: Icon,\n disabled?: boolean\n}\n\nexport const tagDefaultProps:Partial = {\n colorStyle: 'orange',\n size: 'medium'\n};\n","import React from 'react';\nimport { cx } from 'class-variance-authority';\n\nimport '@jotforminc/jotform.css';\n\nimport { IconXmark } from '@jotforminc/svg-icons';\nimport { tagCVA, tagTextCVA, tagIconCVA } from './tag.cva';\nimport { TagProps, tagDefaultProps } from './tag.types';\n\nexport const Tag = (props: TagProps):JSX.Element => {\n const {\n className,\n children,\n colorStyle = tagDefaultProps.colorStyle,\n size = tagDefaultProps.size,\n icon: BadgeIcon,\n onClick,\n disabled,\n ...rest\n } = props;\n\n const hasChildren = !!children;\n const hasIcon = !!BadgeIcon;\n\n const tagClassName = cx(className, tagCVA({\n colorStyle,\n size,\n disabled: !!disabled\n }));\n\n const tagButtonClassName = cx('shrink-0 inline-flex items-center focus:outline radius-full', {\n 'cursor-not-allowed': !!disabled\n });\n\n return (\n \n {hasIcon && }\n {hasChildren && {children}}\n \n \n \n \n );\n};\n","import React, {\n ChangeEvent,\n KeyboardEvent,\n MouseEvent,\n ReactChild,\n ReactElement,\n ReactNode,\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState\n} from 'react';\n\nimport { cx } from 'class-variance-authority';\n\nimport {\n autoUpdate,\n flip,\n useFloating,\n useInteractions,\n useListNavigation,\n useClick,\n useDismiss,\n useRole,\n FloatingFocusManager,\n FloatingList,\n size as floatingSize,\n offset\n} from '@floating-ui/react';\n\nimport {\n IconAngleDown,\n IconLockFilled,\n IconMagnifyingGlass,\n IconXmarkSm\n} from '@jotforminc/svg-icons';\n\nimport {\n DropdownProps,\n dropdownDefaultProps\n} from './dropdown.types';\n\nimport { BaseInput, BaseInputAddon } from '../Input/BaseInput';\n\nimport {\n DropdownContext, DropdownOptionType, HandleGroupSelectParams, HandleSelectParams, useFormControl\n} from '../../contexts';\n\nimport { dropdownListCVA, dropdownResultNotFoundCVA, dropdownSearchInputCVA } from './dropdown.cva';\nimport { arraysEqualsCheck, flattenChildren } from '../../utils';\nimport { InputText } from '../Input';\nimport { Tag } from '../Tag';\n\nconst allowedKeys = ['ArrowDown', 'ArrowUp', 'Enter'];\n\nexport const Dropdown = (props: DropdownProps):JSX.Element => {\n const {\n colorStyle,\n disabled,\n readOnly,\n theme,\n size,\n required,\n placeholder = 'Select an option',\n noResultFoundText = 'No results found.',\n searchable,\n placeholderIcon,\n ghost,\n value: defaultValue,\n onChange,\n id,\n children,\n className,\n multiple = false,\n expand = false,\n showCountOnly,\n style\n } = useFormControl(props);\n\n const [isOpen, setIsOpen] = useState(false);\n const [activeIndex, setActiveIndex] = useState(null);\n const [selectedIndex, setSelectedIndex] = useState(null);\n const [selectedOptionArray, setSelectedOptionArray] = useState(null);\n const [selectedOption, setSelectedOption] = useState();\n const [searchTerm, setSearchTerm] = useState('');\n const [resultNotFound, setResultNotFound] = useState(false);\n\n useEffect(() => {\n const defaultValueArr = (typeof defaultValue === 'string' ? [defaultValue] : defaultValue) || [];\n let childrenArray:ReactChild[] = [];\n\n if (children) {\n childrenArray = flattenChildren({\n children,\n depth: 3,\n filter: 'DropdownOption',\n group: 'DropdownGroup'\n });\n\n if (!childrenArray) {\n return;\n }\n }\n\n if (!defaultValue) { return; }\n\n const defaultValueIndex = childrenArray.findIndex(child => (child as ReactElement)?.props?.value === defaultValueArr[0]);\n if (!multiple && defaultValueIndex >= 0) { setSelectedIndex(defaultValueIndex); }\n\n if (arraysEqualsCheck(defaultValueArr, selectedOptionArray?.map(o => o.value)) || arraysEqualsCheck(defaultValueArr, selectedOption ? [selectedOption?.value] : [])) {\n const updatedOptions = defaultValueArr?.map(defValue => {\n const child = childrenArray.find(component => (component as ReactElement)?.props?.value === defValue) as ReactElement;\n return child?.props;\n });\n\n setSelectedOption(updatedOptions[0]);\n setSelectedOptionArray(updatedOptions);\n } else {\n const defaultValues = childrenArray?.filter(component => (defaultValueArr?.includes((component as ReactElement)?.props?.value))).map(component => (component as ReactElement).props);\n setSelectedOptionArray(defaultValues);\n setSelectedOption(defaultValues[0]);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [children, defaultValue]);\n\n const { refs, floatingStyles, context } = useFloating({\n placement: 'bottom-start',\n open: isOpen,\n onOpenChange: setIsOpen,\n whileElementsMounted: autoUpdate,\n strategy: 'fixed',\n middleware: [\n flip(),\n offset(6),\n floatingSize({\n apply({ rects, elements, availableHeight }) {\n Object.assign(elements.floating.style, {\n maxHeight: `${availableHeight - 16}px`,\n minWidth: `${rects.reference.width}px`,\n marginTop: 0\n });\n }\n })\n ]\n });\n\n const elementsRef = useRef>([]);\n const labelsRef = useRef>([]);\n const searchInputRef = useRef(null);\n\n const handleSelect = useCallback(({\n index, children: singleChildren, icon: singleIcon, value\n }: HandleSelectParams) => {\n setSelectedIndex(index);\n setIsOpen(false);\n if (index !== null) {\n setSelectedOption({ children: singleChildren, icon: singleIcon, value });\n if (onChange) onChange(value);\n }\n }, [onChange, setIsOpen]);\n\n const handleMultiSelect = useCallback(({\n checked, value, tagStyles, tagColorStyle, children: tagText, icon: OptionIcon\n }) => {\n const newSelectedOptionArray = checked ? [...selectedOptionArray || [], {\n value,\n tagStyles,\n tagColorStyle,\n children: tagText as string,\n icon: OptionIcon\n }] : (selectedOptionArray?.filter(option => option.value !== value) || []);\n\n setSelectedOptionArray(newSelectedOptionArray);\n if (onChange) onChange(newSelectedOptionArray.map(o => o.value));\n }, [onChange, selectedOptionArray]);\n\n const handleGroupSelect = useCallback(({\n checked, allOptions, childrenArray\n }: HandleGroupSelectParams) => {\n const group:DropdownOptionType[] = (checked ? allOptions?.filter(\n (obj: DropdownOptionType, index: number, self: DropdownOptionType[]) => index === self.findIndex((opt: DropdownOptionType) => (opt?.value === obj?.value))\n ) : selectedOptionArray?.filter(val => !childrenArray?.find((ch: DropdownOptionType) => ch?.value === val?.value))) || [];\n\n setSelectedOptionArray(group);\n if (onChange) onChange(group.map(g => g.value));\n }, [onChange, selectedOptionArray]);\n\n const listNav = useListNavigation(context, {\n listRef: elementsRef,\n activeIndex,\n selectedIndex,\n onNavigate: setActiveIndex\n });\n\n const click = useClick(context);\n const dismiss = useDismiss(context);\n const role = useRole(context, { role: 'listbox' });\n\n const {\n getReferenceProps,\n getFloatingProps,\n getItemProps\n } = useInteractions([listNav, click, dismiss, role]);\n\n const dropdownContext = useMemo(\n () => ({\n activeIndex,\n selectedIndex,\n getItemProps,\n handleSelect,\n size,\n theme,\n multiple,\n selectedOptionArray,\n setSelectedOptionArray,\n handleMultiSelect,\n handleGroupSelect\n }),\n [activeIndex, selectedIndex, getItemProps, handleSelect, size, theme, multiple, selectedOptionArray, setSelectedOptionArray, handleMultiSelect, handleGroupSelect]\n );\n\n const handleChange = (e: ChangeEvent | KeyboardEvent) => {\n if (allowedKeys.includes((e as KeyboardEvent).key)) {\n return;\n }\n\n const term = (e?.target as HTMLInputElement)?.value;\n e.stopPropagation();\n setSearchTerm(term);\n };\n\n const hideGroup = (e?: HTMLElement | null) => {\n if (!e) return;\n const group = e?.closest('.magnet-dropdown-group') as HTMLElement;\n\n if (group) {\n const hasNotDisabled = group.querySelector('[role=\"option\"]:not([disabled])');\n\n if (!hasNotDisabled) {\n group.style.setProperty('display', 'none');\n } else {\n group.style.removeProperty('display');\n }\n }\n };\n\n useEffect(() => {\n if (!isOpen) {\n setSearchTerm('');\n }\n\n elementsRef.current.forEach(element => {\n // search in checkbox labels or option texts\n const searchIn = multiple ? element?.closest('label') : element;\n if (!searchIn) return;\n if (!searchIn?.textContent?.toLowerCase().includes(searchTerm.toLowerCase())) {\n searchIn?.style.setProperty('display', 'none');\n element?.setAttribute('disabled', 'true');\n } else {\n searchIn?.style.removeProperty('display');\n element?.removeAttribute('disabled');\n }\n hideGroup(searchIn);\n });\n\n if (searchTerm.length > 0) {\n setResultNotFound(!elementsRef.current.find(element => !element?.hasAttribute('disabled') && !element?.hasAttribute('data-dropdown-group-checkbox')));\n } else {\n setResultNotFound(false);\n }\n }, [searchTerm, isOpen, multiple]);\n\n const clearSearch = () => {\n setSearchTerm('');\n if (searchInputRef.current) (searchInputRef.current as HTMLInputElement).focus();\n };\n\n const isDisabled = readOnly || disabled;\n const selectedOptionForMultiple = multiple && selectedOptionArray ? selectedOptionArray.length > 0 : false;\n const startIcon = selectedOption && !multiple ? selectedOption?.icon : placeholderIcon;\n\n const handleTagClick = (e: MouseEvent, option: DropdownOptionType) => {\n e.stopPropagation();\n if (selectedOptionArray) {\n const filteredOptionArray = selectedOptionArray?.filter(filteredOption => filteredOption.value !== option.value);\n if (onChange) onChange(filteredOptionArray.map(f => f.value));\n setSelectedOptionArray(filteredOptionArray);\n }\n if (refs?.reference?.current) {\n (refs?.reference?.current as HTMLElement).focus();\n }\n };\n\n const countMarkup = () => {\n const countText = `${selectedOptionArray?.length} option${selectedOptionArray && selectedOptionArray.length > 1 ? 's' : ''} selected`;\n return (typeof showCountOnly === 'function' ? showCountOnly(selectedOptionArray?.length || 0) : countText);\n };\n\n const selectedOptionMarkup = ():ReactNode | undefined => {\n if (!multiple) {\n return selectedOption?.children;\n }\n if (multiple && selectedOptionForMultiple) {\n return !showCountOnly ? (\n \n {selectedOptionArray?.map(option => (\n handleTagClick(e, option)}\n style={option?.tagStyles}\n disabled={isDisabled}\n >\n {option?.children}\n \n ))}\n \n ) : countMarkup();\n }\n return undefined;\n };\n\n return (\n <>\n \n )}\n addonEnd={(\n \n )}\n {... !isDisabled ? getReferenceProps() : {}}\n >\n {selectedOptionMarkup()}\n \n \n {isOpen && !isDisabled && (\n \n \n {!!searchable\n && (\n 0 ? {\n as: 'button',\n icon: IconXmarkSm,\n onClick: clearSearch\n } : undefined\n }\n value={searchTerm}\n theme={theme}\n onChange={handleChange}\n ref={searchInputRef}\n />\n )}\n
\n \n {children}\n \n
\n
{noResultFoundText}
\n
\n \n )}\n \n \n );\n};\n\nDropdown.defaultProps = dropdownDefaultProps;\n","import React, { ChangeEvent, MouseEvent } from 'react';\nimport { useListItem } from '@floating-ui/react';\nimport { cx } from 'class-variance-authority';\nimport { useDropdownContext, useDropdownGroupContext } from '../../contexts';\nimport { DropdownOptionProps } from './dropdown.types';\nimport { dropdownOptionCVA, dropdownOptionIconCVA } from './dropdown.cva';\nimport { Checkbox } from '../Checkbox';\n\nexport const DropdownOption = (props: DropdownOptionProps):JSX.Element => {\n const {\n value,\n children,\n icon: OptionIcon,\n disabled,\n tagStyles,\n tagColorStyle,\n onClick,\n onChange,\n className,\n id,\n ...rest\n } = props;\n\n const {\n activeIndex,\n selectedIndex,\n getItemProps,\n handleSelect,\n handleMultiSelect,\n size,\n theme,\n multiple,\n selectedOptionArray\n } = useDropdownContext();\n\n const {\n indent\n } = useDropdownGroupContext();\n\n const { ref, index } = useListItem({ label: value });\n const isActive = activeIndex === index;\n const isSelected = selectedIndex === index;\n const isChecked = !!selectedOptionArray?.find(option => option.value === value);\n\n const handleCheckboxChange = (e: ChangeEvent) => {\n const { checked, value: chValue } = e.target;\n\n handleMultiSelect({\n checked, value: chValue, tagStyles, tagColorStyle, children, icon: OptionIcon\n });\n\n if (onChange) onChange(e);\n };\n\n const handleClick = (e: MouseEvent) => {\n handleSelect({\n index, children, icon: OptionIcon, value\n });\n if (onClick) onClick(e);\n };\n\n const iconMargin = cx({\n 'mr-2': size === 'small',\n 'mr-3': size !== 'small'\n });\n\n const dropdownOptionClassName = cx(\n dropdownOptionCVA({\n size,\n isSelected: multiple ? isChecked : isSelected,\n isActive,\n theme,\n disabled: !!disabled,\n as: 'option',\n indent: !!indent\n }),\n className\n );\n\n if (multiple) {\n return (\n \n \n {children}\n \n );\n }\n\n return (\n \n {OptionIcon && }\n {children}\n \n );\n};\n\nDropdownOption.displayName = 'DropdownOption';\n","import React, { useEffect, useState } from 'react';\nimport { setCookie } from '@jotforminc/utils';\nimport { bool, string, func } from 'prop-types';\nimport { t } from '@jotforminc/translation';\nimport {\n Button,\n Dropdown,\n DropdownOption\n} from '@jotforminc/magnet';\nimport {\n IconLocationPinFilled,\n IconXmark\n} from '@jotforminc/svg-icons';\n\nconst LanguageSwitcher = ({\n isSticky, languageSwitcher, setLanguageSwitcherVisible\n}) => {\n const target = 'LanguageSwitcher';\n const [visible, setVisible] = useState(true);\n const {\n browserLanguage, switchText, languageCodeURLPaths, languagesAvailable\n } = languageSwitcher;\n\n const languageList = Array.from(document.querySelectorAll('link'))\n .filter(link => link.getAttribute('hreflang') && link.getAttribute('hreflang') !== 'x-default')\n .map(lang => lang.getAttribute('hreflang'));\n\n const languages = languageList.map(langCode => {\n // eslint-disable-next-line no-param-reassign\n langCode = langCode === 'pt-br' ? 'pt' : langCode;\n let [longLangKey] = Object.entries(languageCodeURLPaths).find(path => path[1] === langCode);\n\n longLangKey = longLangKey === 'pt-BR' ? 'pt-PT' : longLangKey;\n const [langPrettyName] = Object.entries(languagesAvailable).find(lang => lang[1] === longLangKey);\n\n return { label: langPrettyName, value: longLangKey, order: Object.keys(languagesAvailable).findIndex(lang => lang === langPrettyName) };\n }).sort((a, b) => {\n if (a.order < b.order) return -1;\n if (a.order > b.order) return 1;\n return 0;\n });\n\n const [selectedLang] = useState(browserLanguage);\n const prettyBrowserLang = languages.find(lang => lang.value === selectedLang)?.label || '';\n\n const handleClose = () => {\n setCookie('LANGUAGE_SWITCHER:Flyin', 'true', 365);\n global.window.logAbTestActionLangSwitcher({ action: 'close', target });\n document.querySelector('body').classList.remove('jf-languageSwitcher');\n setLanguageSwitcherVisible(false);\n };\n\n useEffect(() => {\n global.window.logAbTestActionLangSwitcher({ action: 'seen', target });\n }, []);\n\n useEffect(() => {\n if (!isSticky) {\n document.querySelector('body').classList.add('jf-languageSwitcher--isSticky');\n setVisible(true);\n } else {\n document.querySelector('body').classList.remove('jf-languageSwitcher--isSticky');\n setVisible(false);\n }\n }, [isSticky]);\n\n useEffect(() => {\n if (visible) {\n document.querySelector('body').classList.add('jf-languageSwitcher');\n } else {\n document.querySelector('body').classList.remove('jf-languageSwitcher');\n }\n }, [visible]);\n\n if (!visible) {\n return null;\n }\n\n const splitedSwithText = switchText.split('{languageSwitcher}');\n return (\n \n
\n
\n \n \n {\n splitedSwithText.map((text, index) => {\n if (index === 1) {\n return (\n
\n {\n if (typeof window.changeLanguage === 'function') {\n const hreflang = languageList.find(lang => lang.includes(newLang.split('-')[0]));\n global.window.logAbTestActionLangSwitcher({ action: 'switch-lang', target: newLang });\n window.changeLanguage(newLang, hreflang);\n }\n }}\n >\n {\n languages.map(language => (\n \n {language.label}\n \n ))\n }\n \n ?\n
\n );\n }\n return text;\n })\n }\n
\n
\n {\n if (typeof window.changeLanguage === 'function') {\n const hreflang = languageList.find(lang => lang.includes(selectedLang.split('-')[0]));\n global.window.logAbTestActionLangSwitcher({ action: 'switch-lang', target: selectedLang });\n window.changeLanguage(selectedLang, hreflang);\n }\n }}\n >\n {t('Switch to {language}'.replace('{language}', prettyBrowserLang))}\n {t('Switch')}\n \n \n
\n \n );\n};\n\nLanguageSwitcher.propTypes = {\n isSticky: bool,\n languageSwitcher: string,\n setLanguageSwitcherVisible: func\n};\n\nLanguageSwitcher.defaultProps = {\n isSticky: false,\n languageSwitcher: { show: false },\n setLanguageSwitcherVisible: f => f\n};\n\nexport default LanguageSwitcher;\n","function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nimport * as React from \"react\";\nconst SvgClose = props => /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n xmlnsXlink: \"http://www.w3.org/1999/xlink\",\n x: \"0px\",\n y: \"0px\",\n viewBox: \"0 0 30 30\",\n style: {\n enableBackground: \"new 0 0 30 30\",\n pointerEvents: \"none\"\n },\n xmlSpace: \"preserve\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n style: {\n fill: \"#FFFFFF\"\n },\n d: \"M2.8,27.2c0.7,0.7,1.9,0.7,2.6,0c0,0,0,0,0,0l9.6-9.6l9.6,9.6c0.7,0.7,1.9,0.7,2.6,0c0.7-0.7,0.7-1.9,0-2.6l0,0L17.6,15l9.6-9.6c0.7-0.7,0.7-1.9,0-2.6c-0.7-0.7-1.9-0.7-2.6,0L15,12.4L5.4,2.8c-0.7-0.7-1.9-0.7-2.6,0s-0.7,1.9,0,2.6l9.6,9.6l-9.6,9.6C2.1,25.3,2.1,26.5,2.8,27.2z\"\n}));\nexport default SvgClose;","import React, { useContext, useEffect, useState } from 'react';\nimport { bool, func } from 'prop-types';\nimport { t } from '@jotforminc/translation';\nimport cx from 'classnames';\nimport CloseSvg from '../assets/svg/notifications/close.svg';\nimport { JotformActionsContext } from './Providers/JotformActionsProvider';\nimport { isEnterprise } from '../utils';\n\nconst DeletedFormNotification = ({\n defaultVisible, onClose, isSticky\n}) => {\n const [isVisible, setIsVisible] = useState(defaultVisible);\n const [isAnimationVisible, setIsAnimationVisible] = useState(false);\n const { logHeaderAction } = useContext(JotformActionsContext);\n\n useEffect(() => {\n if (isVisible) {\n logHeaderAction?.({ action: 'seen', target: 'notification' });\n setIsVisible(true);\n setTimeout(() => {\n document.body.classList.add('jf-deleted-form-notification');\n setIsAnimationVisible(true);\n }, 500);\n }\n }, [isVisible]);\n\n const handleCloseClick = () => {\n logHeaderAction?.({ action: 'click', target: 'close-notification' });\n setIsAnimationVisible(false);\n document.body.classList.remove('jf-deleted-form-notification');\n setTimeout(() => {\n setIsVisible(false);\n }, 500);\n onClose();\n };\n\n const handleClick = () => {\n logHeaderAction?.({ action: 'click', target: 'click-on-notification' });\n if (isEnterprise()) {\n global.window.open('/myforms/?action=createWizard', '_blank').focus();\n return;\n }\n global.window.open('/signup/', '_blank').focus();\n };\n\n const deletedFormClass = cx('jfHeader--deleted-form-notification', {\n isSticky\n });\n\n const deletedFormInnerClass = cx('jfHeader--deleted-form-notification-inner', {\n isAnimationVisible\n });\n\n const deletedFormContentClass = cx('jfHeader--deleted-form-notification-content', {\n '': isAnimationVisible\n });\n\n if (!isVisible) return null;\n\n return (\n
\n
\n
\n

{t('Oops! The form you would like to see is deleted. What about creating your own?')}

\n \n {t('Create a New Form')}\n \n
\n \n \n \n
\n
\n );\n};\n\nDeletedFormNotification.propTypes = {\n defaultVisible: bool,\n onClose: func,\n isSticky: bool\n};\n\nDeletedFormNotification.defaultProps = {\n defaultVisible: false,\n onClose: f => f,\n isSticky: false\n};\n\nexport default DeletedFormNotification;\n","import React, {\n useContext, useEffect, useCallback, Suspense, lazy, useState, useMemo\n} from 'react';\nimport {\n string, bool, shape, array\n} from 'prop-types';\nimport isEmpty from 'lodash/isEmpty';\nimport {\n HeaderBody, themePropType, USER_TYPES, PreLoaders\n} from '@jotforminc/header-body';\nimport { getUrlParameter } from '@jotforminc/utils';\nimport { GrowthAssetManager } from '@jotforminc/growth-asset-manager';\nimport { initLanguageSwitcherTest } from '../utils/abTests/index';\nimport {\n runFooterCustomFunction,\n toggleDocumentOverflowProperty,\n attachObsoleteSignupLoadingFunctionToWindow,\n initLoginFlowTrioButtons,\n initGoogleOneTap,\n listenAppSignInOnFailure,\n addBrowserClassNames,\n exceptionallyOverwriteUserDataForFormUser,\n identifyUserForFullstory,\n FS_PROJECT_NAME,\n isFsEnabledOnPage,\n isAiAgentBannerAvailable,\n showLoginFlowModal,\n yieldToMain\n} from '../utils';\n\nimport {\n useStickyHeader, useEnterprisePromotions, useLazyIntegrationImages, useLazyLoginGroup\n} from '../hooks';\n\nimport { ModeContext } from './Providers/ModeProvider';\nimport { UserContext } from './Providers/UserProvider';\nimport { MobileMenuContext } from './Providers/MobileMenuProvider';\nimport { JotformActionsContext } from './Providers/JotformActionsProvider';\n\nimport LanguageSwitcher from './LanguageSwitcher';\nimport DeletedFormNotification from './DeletedFormNotification';\n\nimport '../styles/header.scss';\n\nconst AppPickerBox = lazy(() => import(/* webpackChunkName: \"AppPickerBoxComponent\" */ './AppPickerBox'));\nconst LoginGroup = lazy(() => import(/* webpackChunkName: \"LoginGroupComponent\" */ './LoginGroup/LoginGroup'));\n\nconst Header = ({\n fullWidth,\n logoProps,\n logoSideLinkProps,\n customNavItems,\n appPickerProps,\n disableLoginFlow,\n hideLoginButton,\n hideSignupButton,\n forceRTL,\n theme,\n bgColor,\n hideAccountBox,\n replaceAuthButtons,\n language,\n defaultNavItems,\n currentPath,\n menuStyles,\n isEnterprise,\n languageSwitcher,\n contactSalesAbTestVariation,\n contactSalesAbTestVariationURL,\n hostname,\n ...props\n}) => {\n const [loadLoginGroup] = useLazyLoginGroup();\n const [isSticky] = useStickyHeader(useContext(ModeContext));\n const [languageSwitcherVisible, setLanguageSwitcherVisible] = useState(false);\n\n const { logHeaderAction } = useContext(JotformActionsContext);\n const { user, userType, isLoggedIn } = useContext(UserContext);\n const { isMobileMenuActive, isMobileScreen, onMobileMenuButtonClick } = useContext(MobileMenuContext);\n\n const disableAccountBox = hideAccountBox || !isLoggedIn;\n const { isAppPickerEnabled = false, appPickerItems = [] } = appPickerProps;\n\n attachObsoleteSignupLoadingFunctionToWindow();\n useEnterprisePromotions(user);\n useLazyIntegrationImages();\n useEffect(() => {\n addBrowserClassNames();\n }, []);\n\n useEffect(() => {\n toggleDocumentOverflowProperty(isMobileMenuActive);\n }, [isMobileMenuActive]);\n\n useEffect(() => {\n if (!user) return;\n if (!disableLoginFlow) {\n initLoginFlowTrioButtons();\n initGoogleOneTap(user);\n listenAppSignInOnFailure();\n }\n runFooterCustomFunction(user);\n exceptionallyOverwriteUserDataForFormUser(user, userType === USER_TYPES.FORM_USER);\n initLanguageSwitcherTest(user, languageSwitcher, setLanguageSwitcherVisible);\n }, [user]);\n\n // A/B Test: landingReactCommonHeader fullstory\n useEffect(() => {\n if (!isFsEnabledOnPage()) return;\n identifyUserForFullstory({\n projectName: FS_PROJECT_NAME,\n username: user?.username,\n isEnabled: true\n });\n }, [user]);\n\n const AppPickerRenderer = useCallback(() => {\n if (isAppPickerEnabled && !isEmpty(user) && appPickerItems.length > 0) {\n return (\n \n \n \n );\n }\n return <>;\n }, [user]);\n\n const handleSignupButtonMobileClick = async () => {\n await yieldToMain();\n logHeaderAction?.({ action: 'click', target: 'header-signup' });\n showLoginFlowModal('s1');\n };\n\n const preLoaders = useMemo(() => {\n return (\n \n );\n }, [isLoggedIn, user]);\n\n const LoginGroupRenderer = useCallback(() => {\n if (disableLoginFlow || replaceAuthButtons) return <>;\n if (!loadLoginGroup) return preLoaders;\n return (\n \n \n \n );\n }, [loadLoginGroup, preLoaders]);\n\n const updateFavicon = dark => {\n const icon = `favicon-2021-${dark ? 'dark' : 'light'}.png`;\n const link = document.querySelector('[rel=\"shortcut icon\"]');\n if (link) link.href = `https://cdn.jotfor.ms/assets/img/favicons/${icon}`;\n };\n\n useEffect(() => {\n if (isEnterprise) return;\n const mediaQuery = global.window.matchMedia('(prefers-color-scheme: dark)');\n const handleChange = e => updateFavicon(e.matches);\n\n if (mediaQuery) {\n updateFavicon(mediaQuery.matches);\n mediaQuery.addListener(handleChange);\n }\n\n return () => mediaQuery.addListener(handleChange);\n }, []);\n\n const showDeletedFormNotificationVisible = getUrlParameter('utm_campaign') === 'form-deleted';\n\n const FlyInn = () => {\n return (\n \n );\n };\n\n const ExitModal = () => {\n return (\n \n );\n };\n\n return (\n \n <>\n {!showDeletedFormNotificationVisible && !isMobileMenuActive && (\n <>\n {languageSwitcherVisible ? (\n \n ) : (\n \n )}\n \n \n )}\n {!isMobileMenuActive && showDeletedFormNotificationVisible && (\n \n )}\n \n \n );\n};\n\nHeader.propTypes = {\n logoProps: shape({}),\n logoSideLinkProps: shape({}),\n customNavItems: array,\n fullWidth: bool,\n appPickerProps: shape({}),\n disableLoginFlow: bool,\n hideLoginButton: bool.isRequired,\n hideSignupButton: bool.isRequired,\n showDeletedFormNotification: bool,\n forceRTL: bool,\n theme: themePropType.isRequired,\n bgColor: string,\n hideAccountBox: bool,\n replaceAuthButtons: string,\n language: string.isRequired,\n defaultNavItems: array,\n currentPath: string.isRequired,\n menuStyles: shape({}),\n isEnterprise: bool.isRequired,\n languageSwitcher: string,\n contactSalesAbTestVariation: string.isRequired,\n contactSalesAbTestVariationURL: string.isRequired,\n hostname: string.isRequired\n};\n\nHeader.defaultProps = {\n logoProps: {},\n logoSideLinkProps: {},\n customNavItems: undefined,\n fullWidth: false,\n appPickerProps: {},\n disableLoginFlow: false,\n showDeletedFormNotification: false,\n forceRTL: false,\n bgColor: '',\n hideAccountBox: false,\n replaceAuthButtons: '',\n defaultNavItems: [],\n menuStyles: {},\n languageSwitcher: {\n show: false\n }\n};\n\nexport default Header;\n","// eslint-disable-next-line import/no-unresolved\nimport '@jotforminc/router-bridge/init';\nimport { Header } from '@jotforminc/header';\n\nimport React from 'react';\nimport { render, hydrate } from 'react-dom';\n\nconst jfRHeaderShadowHost = document.querySelector('#jf-common-header-host');\nconst jfRHeaderDocument = jfRHeaderShadowHost?.shadowRoot || document;\nconst jfRHeaderEl = jfRHeaderDocument ? jfRHeaderDocument.querySelector('#jfHeaderBodyWrapper') : undefined;\nconst rootEl = document.getElementById('root');\n\nconst renderer = jfRHeaderEl ? hydrate : render;\n\nrenderer(\n
,\n jfRHeaderEl || rootEl\n);\n","import layer from './layer';\n\nexport const isJotformer = user => ['ADMIN', 'SUPPORT', 'INTERN'].indexOf(user?.account_type?.name) > -1;\n\nexport const isMobileApp = () => window.navigator.userAgent.indexOf('JotForm Mobile') > -1 || window.navigator.userAgent.indexOf('JFCEMobile') > -1;\n\nexport const isEnvProd = () => window.__jfrouter?.JOTFORM_ENV === 'PRODUCTION' || window.JOTFORM_ENV === 'PRODUCTION';\n\nexport const getTestStartDate = ({ testName }) => layer.get(`abtest/test/${testName}/start-date`);\n","class ABTestVariantCacheClass {}\n\nexport const ABTestVariantCache = new ABTestVariantCacheClass();\n","import { RequestLayer, Interceptors } from '@jotforminc/request-layer';\n\nexport default new RequestLayer('/API', {\n interceptorConfig: {\n teamID: global.teamID,\n customResponseInterceptors: [Interceptors.requestManagerResponseNormalizer]\n }\n});\n","import { isSalesforceEnv } from '@jotforminc/utils';\nimport { StorageHelper } from '@jotforminc/storage-helper';\nimport { isEnvProd, isJotformer, isMobileApp } from './utils';\nimport { ActionManager } from './ActionManager';\nimport { ABTestVariantCache } from './ABTestVariantCache';\nimport layer from './layer';\n\nexport class ABTestManager {\n constructor({\n user,\n testName,\n urlParam,\n debugMode,\n isTestEnabled,\n testVariantCode,\n controlVariantCode,\n cacheVariantCodeAtLocalStorage,\n customUserChecks,\n setUserSetting,\n forceSingleEpTest\n }) {\n this.user = user || {};\n this.testName = testName;\n this.urlParam = urlParam || '';\n this.isTestEnabled = isTestEnabled || false;\n this.customUserChecks = customUserChecks || {};\n this.cacheVariantCodeAtLocalStorage = cacheVariantCodeAtLocalStorage || false;\n this.isSingleTestVariant = (typeof testVariantCode === 'string') && testVariantCode;\n this.isMultipleTestVariant = (typeof testVariantCode === 'object') && Array.isArray(testVariantCode);\n this.setUserSetting = setUserSetting || null;\n this.forceSingleEpTest = forceSingleEpTest || null;\n this.testConfig = {\n testName, controlVariantCode, testVariantCode, urlParam\n };\n\n this.searchParams = new URLSearchParams(document?.location?.search || '');\n this.localStorageVariantKey = `${this.testName}VariantCode`;\n\n // debug mode\n const debugModeDefaults = {\n forceUserEligible: false, forceTestVariant: false, forceControlVariant: false, logTestState: false\n };\n this.debugMode = { ...debugModeDefaults, ...debugMode };\n if (this.isDebugModeOn) {\n this.showDebugModeWarnings();\n }\n\n // jotform actions\n this.actionManager = new ActionManager({\n user: this.user,\n projectName: this.testName,\n ...(this.isDebugModeOn ? { enableDebugMode: true } : {})\n });\n\n // should register actions\n const shouldRegisterActions = (this.isTestEnabled && this.isUserEligible)\n || this.isDebugModeOn\n || this.hasTestVariantUrlParam\n || this.hasControlVariantUrlParam\n || this.hasTestVariantUrlParamAmongMultiple();\n\n // register ab test action\n this.registerABTestAction = shouldRegisterActions ? this.actionManager.registerJotformAction : f => f;\n }\n\n // is variant code singleton cached\n get isVariantCodeSingletonCached() {\n return !!this.getVariantFromSingletonCache() || false;\n }\n\n // is variant code local storage cached\n get isVariantCodeLocalStorageCached() {\n return !!this.getVariantFromLocalStorage() || false;\n }\n\n // are base checks valid\n get areBaseChecksValid() {\n return isEnvProd() && !isJotformer(this.user) && !isMobileApp() && !isSalesforceEnv();\n }\n\n // are custom user checks valid\n get areCustomUserChecksValid() {\n return Object.values(this.customUserChecks).length > 0\n ? Object.values(this.customUserChecks).every(customCheck => customCheck)\n : true;\n }\n\n // is user eligible\n get isUserEligible() {\n const { forceUserEligible } = this.debugMode;\n if (forceUserEligible) return true;\n const isValid = this.areBaseChecksValid && this.areCustomUserChecksValid;\n if (isValid) {\n return true;\n }\n if (!isValid && this.isDebugModeOn) {\n console.warn(`Warning: ${this.testName} A/B test user is not eligible.`);\n }\n return false;\n }\n\n // has test variant url param\n get hasTestVariantUrlParam() {\n return this.searchParams.get(`${this.urlParam}`) === 'true';\n }\n\n // has control variant url param\n get hasControlVariantUrlParam() {\n return this.searchParams.get(`${this.urlParam}`) === 'false';\n }\n\n get cachedVariantCode() {\n return this.getVariantFromSingletonCache() || this.getVariantFromLocalStorage();\n }\n\n // get/set variant cache\n getVariantFromSingletonCache() {\n return ABTestVariantCache[this.testName] || '';\n }\n\n setVariantToSingletonCache(variation) {\n if (!this.getVariantFromSingletonCache()) {\n ABTestVariantCache[this.testName] = variation;\n }\n if (this.isDebugModeOn) {\n console.warn(`Warning: ${this.testName} A/B test singleton cached variation code: ${variation}`);\n }\n }\n\n // get/set variant local storage\n getVariantFromLocalStorage() {\n return StorageHelper.getLocalStorageItem({ key: this.localStorageVariantKey }) || '';\n }\n\n setVariantToLocalStorage(variation) {\n if (this.getVariantFromLocalStorage()) return;\n StorageHelper.setLocalStorageItem({\n key: this.localStorageVariantKey, value: variation\n });\n if (this.isDebugModeOn) {\n console.warn(`Warning: ${this.testName} A/B test localStorage cached variation code: ${variation}`);\n }\n }\n\n // check current variant matches any of the multiple variants\n includesAnyTestVariant(currentVariant, multipleVariants) {\n return multipleVariants.map(variant => variant.code).includes(currentVariant);\n }\n\n // is variant code equal to test variant\n get isVariantCodeEqualTestVariant() {\n const { testVariantCode } = this.testConfig;\n if (this.isSingleTestVariant) {\n return this.cachedVariantCode === testVariantCode;\n }\n if (this.isMultipleTestVariant) {\n return this.includesAnyTestVariant(this.cachedVariantCode, testVariantCode);\n }\n return false;\n }\n\n // variant resolver\n variantResolver(cb) {\n if (typeof cb !== 'function') return;\n if (this.isSingleTestVariant && this.isVariantCodeEqualTestVariant) {\n cb(true);\n } else if (this.isMultipleTestVariant) {\n const isTestVariant = this.isVariantCodeEqualTestVariant;\n cb([isTestVariant, this.cachedVariantCode]);\n } else {\n cb(false);\n }\n }\n\n // get test variant\n getTestVariant() {\n return new Promise((resolve, reject) => {\n const params = { setUserSetting: this.setUserSetting, forceSingleEpTest: this.forceSingleEpTest };\n layer.get(`user/abtest/${this.testName}/variation`, { params }).then(res => {\n let { variation } = res;\n variation = variation ? variation.toString() : variation;\n resolve(variation);\n if (this.isDebugModeOn) {\n console.warn(`Warning: ${this.testName} A/B test variant request success.`);\n }\n }).catch(reject);\n });\n }\n\n hasTestVariantUrlParamAmongMultiple() {\n if (!this.isMultipleTestVariant) return false;\n const { testVariantCode: multipleVariants } = this.testConfig;\n let result = false;\n multipleVariants.forEach(variant => {\n if (this.searchParams.get(`${variant.urlParam}`) === 'true') {\n result = [true, variant.code];\n }\n });\n return result;\n }\n\n // is test variant\n isTestVariant() {\n return new Promise((resolve, reject) => {\n const { forceTestVariant, forceControlVariant } = this.debugMode;\n\n // checks for enabling\n if (this.isSingleTestVariant && (forceTestVariant || this.hasTestVariantUrlParam)) {\n resolve(true);\n return;\n }\n\n // checks for multiple variant enabling\n const multipleEnablerResult = this.hasTestVariantUrlParamAmongMultiple();\n if (this.isMultipleTestVariant && multipleEnablerResult) {\n resolve(multipleEnablerResult);\n return;\n }\n\n // check for settings cache\n // feature: do not allow user settings variant code for multiple variants for now...\n if (!this.isMultipleTestVariant && this.setUserSetting && this.user[this.testName]) {\n const { testVariantCode } = this.testConfig;\n resolve(this.user[this.testName] === testVariantCode);\n return;\n }\n\n // checks for disabling\n if ((!this.isTestEnabled\n || forceControlVariant\n || this.hasControlVariantUrlParam\n || !this.isUserEligible)) {\n const { controlVariantCode } = this.testConfig;\n const result = this.isSingleTestVariant ? false : [false, controlVariantCode];\n resolve(result);\n return;\n }\n\n // is variant code singleton cached or local storage cached\n if (this.isVariantCodeSingletonCached || this.isVariantCodeLocalStorageCached) {\n this.variantResolver(result => resolve(result));\n return;\n }\n\n // get variant code from api\n this.getTestVariant().then(variation => {\n // between component mount and unmount ABTestHelper instance is created from scratch\n // so caching can be useful to prevent repeating network requests\n\n // cache level 1: singleton cache\n this.setVariantToSingletonCache(variation);\n\n // optional cache level 2: local storage cache\n if (variation && this.cacheVariantCodeAtLocalStorage) {\n this.setVariantToLocalStorage(variation);\n }\n\n if (this.isDebugModeOn) {\n this.showDebugModeWarnings();\n }\n\n this.variantResolver(result => resolve(result));\n }).catch(reject);\n });\n }\n\n // is debug mode on\n get isDebugModeOn() {\n return Object.values(this.debugMode).includes(true);\n }\n\n // show debugMode warnings\n showDebugModeWarnings() {\n const {\n forceUserEligible, forceTestVariant, forceControlVariant, logTestState\n } = this.debugMode;\n const forceFlags = [forceUserEligible, forceTestVariant, forceControlVariant, logTestState];\n\n if (forceFlags.includes(true)) {\n console.warn(`Warning: ${this.testName} A/B test is running on debug mode!`);\n\n // log debug mode flags\n Object.keys(this.debugMode).forEach(forceFlagKey => {\n if (!this.debugMode[forceFlagKey]) return;\n console.warn(`${forceFlagKey} property is ${this.debugMode[forceFlagKey]}`);\n });\n\n const warnData = {\n isTestEnabled: this.isTestEnabled,\n testConfig: this.testConfig,\n variantCaches: {\n singletonCachedVariantCode: this.getVariantFromSingletonCache(),\n localStorageCachedVariantCode: this.getVariantFromLocalStorage()\n },\n baseChecks: {\n isJotFormer: isJotformer(this.user),\n isEnvProd: isEnvProd(),\n isMobileApp: isMobileApp()\n },\n customUserChecks: this.customUserChecks\n };\n\n console.warn(`Warning: ${this.testName} test state:`, warnData);\n }\n }\n}\n","export class ActionManager {\n constructor({\n user,\n projectName,\n trackOnce,\n enableDebugMode\n }) {\n this.user = user || {};\n this.projectName = projectName;\n this.trackOnce = trackOnce || false;\n this.JotFormActions = null;\n this.registerJotformAction = this.registerJotformAction.bind(this);\n this.sentEvents = {};\n this.enableDebugMode = enableDebugMode || false;\n }\n\n setupJotFormActions() {\n const { JotFormActions } = global;\n if (typeof JotFormActions !== 'function') return;\n this.JotFormActions = JotFormActions(this.projectName);\n }\n\n tick({ actor = '', action = '', target = '' } = {}) {\n this.JotFormActions?.tick({ actor, action, target });\n\n if (this.trackOnce) {\n this.sentEvents[`${action}${target}`] = true;\n }\n }\n\n logDebugAction({ actor, action, target }) {\n console.log({ actor, action, target });\n const hasMissingParameter = [actor, action, target].some(param => !param);\n if (hasMissingParameter) {\n console.warn('Missing parameter in actor, action or target');\n }\n this.tick({ actor, action, target });\n }\n\n registerJotformAction({ action, target }) {\n if (!this.JotFormActions) {\n this.setupJotFormActions();\n }\n\n if (this.trackOnce && this.sentEvents[`${action}${target}`]) {\n return;\n }\n\n const { username: actor = null, account_type: accountType } = this.user;\n const isEnterprise = global.JOTFORM_ENV === 'ENTERPRISE';\n const isEnvProd = global.JOTFORM_ENV === 'PRODUCTION' && !isEnterprise;\n const isJotFormer = ['ADMIN', 'SUPPORT', 'INTERN'].indexOf(accountType?.name) > -1 && !isEnterprise;\n\n if (this.enableDebugMode) {\n this.logDebugAction({ actor, action, target });\n return;\n }\n\n if (!this.JotFormActions || !actor || !isEnvProd || isJotFormer) return;\n\n this.tick({ actor, action, target });\n }\n}\n","import React, { useState, useEffect } from 'react';\nimport {\n node, shape, bool, string, func, oneOf\n} from 'prop-types';\n\nimport Popover from '../Popover';\n\nconst Tooltip = ({\n targetRef, useCustomHandlers, onDeactivate, onActivate, activationEvent, deactivationEvent, ...props\n}) => {\n const [isTooltipVisible, setTooltipVisibility] = useState(useCustomHandlers);\n\n const handleHoverEvent = event => {\n if (useCustomHandlers) {\n onActivate(event);\n } else {\n setTooltipVisibility(true);\n }\n };\n const handleLeaverEvent = event => {\n if (useCustomHandlers) {\n onDeactivate(event);\n } else {\n setTooltipVisibility(false);\n }\n };\n\n useEffect(() => {\n if (targetRef.current) {\n targetRef.current.addEventListener(activationEvent, handleHoverEvent);\n targetRef.current.addEventListener(deactivationEvent, handleLeaverEvent);\n }\n\n return () => {\n if (targetRef.current) {\n targetRef.current.removeEventListener(activationEvent, handleHoverEvent);\n targetRef.current.removeEventListener(deactivationEvent, handleLeaverEvent);\n }\n };\n }, [targetRef.current]);\n\n return (\n \n );\n};\n\nTooltip.propTypes = {\n usePortal: bool,\n children: node,\n targetRef: shape({}),\n popoverOptions: shape({}),\n style: shape({}),\n portalContainerSelector: string,\n onActivate: func,\n onDeactivate: func,\n useCustomHandlers: bool,\n activationEvent: oneOf(['mouseover', 'mousemove']),\n deactivationEvent: oneOf(['mouseleave', 'mouseout'])\n};\n\nTooltip.defaultProps = {\n usePortal: false,\n targetRef: { current: null },\n popoverOptions: {},\n style: {},\n children: null,\n portalContainerSelector: undefined,\n onActivate: null,\n onDeactivate: null,\n useCustomHandlers: false,\n activationEvent: 'mouseover',\n deactivationEvent: 'mouseleave'\n};\n\nexport default Tooltip;\n","import React, { useRef } from 'react';\nimport { string } from 'prop-types';\nimport Styled from 'styled-components';\nimport { Button as UIKitButton, Tooltip as UIKitTooltip, Hooks } from '@jotforminc/uikit';\n\n/* eslint-disable max-len */\nconst ScUIKitButton = Styled(UIKitButton)`\n &.bare {\n font-size: .875em;\n color: #4170e2;\n text-decoration: none;\n background: transparent;\n cursor: pointer;\n box-shadow: none;\n padding: 0;\n border: 0;\n\n &.forSettings {\n svg {\n vertical-align: text-bottom;\n margin-right: 2px;\n width: 18px;\n height: 18px;\n\n html[dir=\"rtl\"] & {\n margin-right: 0;\n margin-left: 2px;\n }\n }\n\n span {\n font-size: 16px;\n margin-left: 4px;\n }\n\n }\n }\n\n &.taste {\n display: inline-block;\n padding: 12px 1em;\n border-radius: 4px;\n cursor: pointer;\n text-transform: uppercase;\n border: 0;\n font-weight: 500;\n font-size: 15px;\n line-height: 14px;\n\n &[disabled] { opacity: .6; cursor: initial; }\n }\n\n &.taste.isBold {\n font-weight: bold;\n }\n\n &.taste.isGhost {\n background-color: #FAFAFC;\n border: 1px solid #ADB4D2;\n color: #ADB4D2;\n transition: all .3s;\n\n &:hover {\n color: #6F76A7;\n border: 1px solid #ADB4D2;\n background-color: #F3F3FE;\n }\n }\n\n &.taste.isGreen {\n background-color: #78BB07;\n color: #fff;\n transition: background-color .3s;\n\n &:hover {\n background-color: #4EB100;\n }\n }\n\n &.taste.isRed {\n background-color: #DC2626;\n color: #fff;\n }\n\n &.taste.isGray {\n background-color: #dddfe9;\n color: #2c3345;\n }\n\n &.taste.isBlue {\n background-color: #4170e2;\n color: #fff;\n }\n\n &.taste.forCopy {\n padding: 0;\n white-space: nowrap;\n\n svg {\n margin-right: .5em;\n vertical-align: -3px;\n width: 17px;\n height: 17px;\n }\n > div { padding: .5em 1em; }\n }\n\n &.outline {\n display: inline-block;\n padding: .5em 1em;\n border-radius: 2px;\n cursor: pointer;\n background: transparent;\n border: 1px solid currentColor;\n font-size: .875em;\n line-height: 1rem;\n font-weight: 500;\n }\n &.forRevoke {\n font-size: .875em;\n color: #f9535c;\n margin: 0 .5rem 0 auto;\n padding: 0.5em 0.7em;\n border-radius: 4px;\n display: inline-flex;\n align-items: center;\n\n &:hover { background-color: #FEF2F2; }\n\n svg {\n width: 14px;\n height: 14px;\n margin-right: 4px;\n }\n }\n\n @media screen and (max-width: 480px) {\n .hom { display: none; }\n }\n`;\n\n/* eslint-enable max-len */\n\nexport const ScUIKitTooltip = Styled(props => )`\n font-size: .75rem;\n line-height: 1;\n padding: .5rem .5rem;\n text-transform: lowercase;\n border-radius: 2px;\n color: #fff;\n font-weight: 400;\n background-color: #2c3345;\n\n &:first-letter { text-transform: uppercase; }\n\n &:before {\n content: \"\";\n display: block;\n position: absolute;\n width: 10px; height: 10px;\n background-color: #2c3345;\n border-radius: 1px;\n transform: rotate(45deg);\n }\n\n @keyframes c { to { opacity: 1; margin-top: 2px; }}\n @keyframes d { to { opacity: 1; margin-bottom: 2px; }}\n\n &[data-popper-placement] {\n z-index: 1;\n }\n\n &[data-popper-placement=\"bottom\"] {\n opacity: 0; margin-top: 0px!important;\n\n &:before { top: -4px; left: 50%; margin-left: -4px; margin-top: 6px; }\n\n &, &:before { animation: c .1s cubic-bezier(.3,.71,.67,.58) 1 forwards; }\n }\n\n &[data-popper-placement=\"top\"] {\n opacity: 0; margin-bottom: 0px!important;\n\n &:before { bottom: -4px; left: 50%; margin-left: -4px; margin-bottom: 6px; }\n\n &, &:before { animation: d .1s cubic-bezier(.3,.71,.67,.58) 1 forwards; }\n }\n`;\n\nconst Button = React.forwardRef(({ name, ...props }, ref) => {\n const innerRef = useRef();\n const combinedRef = Hooks.useCombinedRefs(innerRef, ref);\n\n return (\n <>\n \n {true && name && {name}}\n \n );\n});\n\nButton.propTypes = {\n name: string\n};\n\nButton.defaultProps = {\n name: ''\n};\n\nexport default Button;\n","import { RequestLayer, Interceptors } from '@jotforminc/request-layer';\nimport { isEnterprise } from '@jotforminc/enterprise-utils';\nimport { ACTION_PROJECT_NAMES } from '../constants';\nimport { isProd } from '../utils';\n\nconst layer = new RequestLayer('/API', {\n interceptorConfig: {\n teamID: global.teamID,\n customResponseInterceptors: [Interceptors.requestManagerResponseNormalizer]\n }\n});\n\n// set enterprise promotions user settings by key\nexport const setEpUserSettings = (key, value = 1) => {\n return layer.post('ep/user/settings',\n new URLSearchParams({ key, value }));\n};\n\n// get enterprise promotions user settings by key\nexport const getEpUserSettings = key => {\n return layer.get(`ep/user/settings/${key}`);\n};\n\n// get enterprise promotions user settings by key\nexport const getEpUserDetails = () => {\n return layer.get('ep/user-details');\n};\n\n// enterprise promotion assets\nexport const getFirstAvailableEnterprisePromotion = () => {\n const searchParams = new URLSearchParams(window.location.search);\n return layer.get(`ep/user/promotion?${searchParams}`);\n};\n\n// enterprise promotion assets\nexport const getEnterprisePromotionByAssetName = asset => {\n const searchParams = new URLSearchParams(window.location.search);\n return layer.get(`ep/user/promotion/${asset}?${searchParams}`);\n};\n\n// save customer to hubspot as form submission\nexport const saveCustomerAsHubspotFormByUsername = params => {\n if (isEnterprise()) return;\n\n const searchParams = new URLSearchParams();\n\n const { lastProductAssetInteraction } = params;\n\n if (lastProductAssetInteraction) {\n searchParams.append('last_product_asset_interaction', lastProductAssetInteraction);\n }\n\n return layer.post('ep/user/hubspot-contact-form', searchParams);\n};\n\nexport const setEPActions = ({\n asset, target, action, intent\n}) => {\n if (isProd()) {\n const paramsObj = {\n project: ACTION_PROJECT_NAMES.ENTERPRISE_PROMOTIONS,\n asset,\n target,\n action\n };\n\n if (intent) {\n paramsObj.intent = intent;\n }\n\n const params = new URLSearchParams(paramsObj);\n\n return layer.post('ep/user/actions', params);\n }\n};\n","\n \n \n\n","import { useEffect, useState } from 'react';\nimport { isProd } from '../utils';\n\n// demo purpose\nconst useHubspotTracker = ({ isEnabled = false, user = null } = {}) => {\n const [isTrackerLoaded, setIsTrackerLoaded] = useState(false);\n\n useEffect(() => {\n if (!isEnabled || !isProd() || !user || isTrackerLoaded) return;\n\n const handleScript = e => {\n if (e.type === 'load') {\n setIsTrackerLoaded(true);\n }\n };\n\n const scriptEl = document.createElement('script');\n scriptEl.id = 'hs-script-loader';\n scriptEl.type = 'application/javascript';\n scriptEl.src = '//js.hs-scripts.com/4773329.js';\n scriptEl.async = true;\n scriptEl.defer = true;\n document.body.appendChild(scriptEl);\n scriptEl.addEventListener('load', handleScript);\n scriptEl.addEventListener('error', handleScript);\n\n return () => {\n scriptEl.removeEventListener('load', handleScript);\n scriptEl.removeEventListener('error', handleScript);\n scriptEl.remove();\n };\n }, [user]);\n\n return [isTrackerLoaded];\n};\n\nexport default useHubspotTracker;\n","import React, {\n useEffect, useMemo, useState\n} from 'react';\nimport { IconMessageEllipsisPencilFilled, IconXmarkSm } from '@jotforminc/svg-icons';\nimport { checkUserType } from '@jotforminc/utils';\nimport cx from 'classnames';\nimport { Loading } from '@jotforminc/loading';\nimport { string } from 'prop-types';\nimport { userPropType } from '../constants';\nimport './feedbackSection.scss';\nimport {\n getUserPrefillValues\n} from '../utils';\n\nconst FeedbackForm = ({ user, formUiModifier }) => {\n const isUserAdmin = checkUserType('ADMIN', user);\n if (!isUserAdmin) return null;\n\n const [isFeedbackFormOpen, setIsFeedbackFormOpen] = useState(false);\n const [iframeSrc, setIframeSrc] = useState('');\n const [isIframeLoaded, setIsIframeLoaded] = useState(false);\n\n const feedbackFormClasses = cx('feedback-form-wrapper', {\n show: isFeedbackFormOpen\n });\n\n const memoizedIframeSrc = useMemo(() => {\n const { email, nameFirst, nameLast } = getUserPrefillValues(user);\n const pathName = window.location.pathname;\n return `https://form.jotform.com/242121390294955?feedbackEmbedButton&pathName=${pathName}&formUiModifier=${formUiModifier}&yourName[0]=${nameFirst}&yourName[1]=${nameLast}&email=${email}`;\n }, [user]);\n\n useEffect(() => {\n if (isFeedbackFormOpen) {\n setIsIframeLoaded(false);\n setIframeSrc(memoizedIframeSrc);\n } else {\n setIframeSrc('');\n }\n }, [isFeedbackFormOpen, memoizedIframeSrc]);\n\n return (\n
\n
\n Admin Actions\n setIsFeedbackFormOpen(o => !o)}\n hover-tooltip=\"Give feedback to the enterprise asset\"\n >\n \n \n
\n\n \n \n setIsFeedbackFormOpen(false)}\n >\n \n \n setIsIframeLoaded(true)}\n />\n
\n
\n );\n};\n\nFeedbackForm.propTypes = {\n user: userPropType.isRequired,\n formUiModifier: string.isRequired\n};\n\nexport default FeedbackForm;\n","import React, {\n useEffect, useMemo, useRef, useState\n} from 'react';\nimport { bool, func, string } from 'prop-types';\nimport { t } from '@jotforminc/translation';\nimport { getDomainURL } from '@jotforminc/request-layer';\nimport { Loading } from '@jotforminc/loading';\nimport {\n ALL_TEXTS, SHORT_LEAD_FORM_IFRAME_ID,\n gaAttributesPropType, gaFormTrackingItemsPropType, userPropType, LEAD_FORM_MAP, SHOULD_SHOW_AD_FORM\n} from '../constants';\nimport {\n getMandatoryPrefillValues,\n getUserPrefillValues, isDevelopment, prepareFormParams\n} from '../utils';\nimport { useHubspotTracker } from '../hooks';\nimport FeedbackForm from './FeedbackForm';\n\nconst PrefilledLeadFormAside = ({\n user,\n title,\n formID: formIdProp,\n devFormID,\n classNames,\n formUiModifier,\n isIframeEmbed,\n gaAttributes,\n gaFormTrackingItems,\n customFormParamsPreparer,\n onFormSubmit,\n pageUrl,\n automatedNurturingSource,\n fullFormPath,\n isPrefillEnabled,\n isAdForm,\n isDynamicHeightEnabled,\n ...props\n}) => {\n const [isFrameLoaded, setIsIframeLoaded] = useState(false);\n const isSubmissionLoggedRef = useRef(false);\n const isFormFillingLoggedRef = useRef(false);\n const isHubspotLoggedRef = useRef(false);\n const formRef = useRef(null);\n const userMandatoryData = useMemo(() => getMandatoryPrefillValues(user), [user]);\n const userData = useMemo(() => getUserPrefillValues(user), [user]);\n const formParamPreparer = customFormParamsPreparer || prepareFormParams;\n let formParams = '';\n if (isPrefillEnabled) {\n formParams = formParamPreparer({\n ...userData, formUiModifier, isIframeEmbed, pageUrl, automatedNurturingSource, ...props\n });\n } else {\n formParams = formParamPreparer({\n ...userMandatoryData, formUiModifier, isIframeEmbed, pageUrl, automatedNurturingSource, ...props\n });\n }\n\n const inferDevFormIdBasedOnAdwordsMode = () => {\n if (!SHOULD_SHOW_AD_FORM) {\n return devFormID;\n }\n\n return !isAdForm ? devFormID : LEAD_FORM_MAP.COMMON.AD_FORM_DEV;\n };\n\n const inferFormIdBasedOnAdwordsMode = () => {\n if (!SHOULD_SHOW_AD_FORM) {\n return formIdProp;\n }\n\n return !isAdForm ? formIdProp : LEAD_FORM_MAP.COMMON.AD_FORM_LIVE;\n };\n\n const formId = isDevelopment() ? inferDevFormIdBasedOnAdwordsMode() : inferFormIdBasedOnAdwordsMode();\n const iframeSrc = fullFormPath ? `${fullFormPath}${formParams}` : `${getDomainURL()}/${formId}${formParams}`;\n\n // hubspot tracking\n const _hsq = window._hsq || [];\n const [isHubspotTrackerLoaded] = useHubspotTracker({ isEnabled: true, user });\n const [iframeHeight, setIframeHeight] = useState('');\n\n // identify user in hubspot\n useEffect(() => {\n if (!isHubspotTrackerLoaded || isHubspotLoggedRef.current) return;\n _hsq.push(['identify', {\n email: user?.email\n }]);\n _hsq.push(['setPath', window.location.href]);\n _hsq.push(['trackPageView']);\n isHubspotLoggedRef.current = true;\n }, [isHubspotTrackerLoaded]);\n\n // listen submission events\n useEffect(() => {\n const handleMessage = event => {\n if (isDynamicHeightEnabled) {\n const [name, height] = event.data?.split(':');\n if (name.includes('setHeight')) {\n setIframeHeight(`${height}px`);\n }\n }\n if (\n // event.origin !== 'https://submit.jotform.com'\n event.data.action !== 'submission-completed'\n || isSubmissionLoggedRef.current) {\n return;\n }\n\n const jobTitle = formRef.current?.querySelector('input[name*=\"jobTitle\"]')?.value || '';\n const country = formRef.current?.querySelector('select[name*=\"country\"]')?.value || '';\n\n window.dataLayer?.push({\n event: 'form_submit_enterprise',\n 'data-id': gaAttributes['data-id'],\n jobTitle,\n country,\n formId\n });\n onFormSubmit();\n isSubmissionLoggedRef.current = true;\n };\n window.addEventListener('message', handleMessage);\n return () => {\n window.removeEventListener('message', handleMessage);\n };\n }, [isFrameLoaded]);\n\n // listen form interactions\n const handleLoad = ({ target }) => {\n try {\n const iframeWindow = target?.contentWindow;\n const iframeDocument = iframeWindow?.document;\n const formElement = iframeDocument?.querySelector('.jotform-form');\n formRef.current = formElement;\n\n // form input\n formElement?.addEventListener('input', () => {\n if (isFormFillingLoggedRef.current) return;\n window.dataLayer?.push({\n event: 'form_start_filling_enterprise',\n 'data-id': gaAttributes['data-id'],\n formId\n });\n isFormFillingLoggedRef.current = true;\n });\n\n // button clicks\n gaFormTrackingItems?.forEach((trackingItem = {}) => {\n const { selector = '', payload = '' } = trackingItem;\n if (!selector || !payload) return;\n const element = iframeDocument?.querySelector(selector);\n\n element?.addEventListener('click', () => {\n window.dataLayer?.push(payload); // ga log\n if (typeof trackingItem.callback === 'function') {\n trackingItem.callback(); // jotform actions log\n }\n });\n });\n } finally {\n setIsIframeLoaded(true);\n }\n };\n\n return (\n <>\n \n \n \n \n );\n};\n\nPrefilledLeadFormAside.propTypes = {\n user: userPropType.isRequired,\n customFormParamsPreparer: func,\n formID: string,\n devFormID: string,\n title: string,\n classNames: string,\n formUiModifier: string,\n isIframeEmbed: bool,\n gaAttributes: gaAttributesPropType.isRequired,\n gaFormTrackingItems: gaFormTrackingItemsPropType.isRequired,\n onFormSubmit: func,\n pageUrl: string,\n automatedNurturingSource: string,\n fullFormPath: string,\n isPrefillEnabled: bool,\n isAdForm: bool,\n isDynamicHeightEnabled: bool\n};\n\nPrefilledLeadFormAside.defaultProps = {\n formID: LEAD_FORM_MAP.COMMON.LIVE,\n devFormID: LEAD_FORM_MAP.COMMON.DEV,\n customFormParamsPreparer: undefined,\n title: t(ALL_TEXTS.SHORT_LEAD_FORM_TITLE),\n classNames: 'form',\n formUiModifier: '',\n isIframeEmbed: false,\n onFormSubmit: f => f,\n pageUrl: '',\n automatedNurturingSource: '',\n fullFormPath: '',\n isPrefillEnabled: true,\n isAdForm: false,\n isDynamicHeightEnabled: false\n};\n\nexport default PrefilledLeadFormAside;\n","import { AB_TEST } from './abTest';\nimport { CAMPAIGN } from './campaign';\nimport { PRODUCT } from './product';\nimport { AUTOMATION } from './automation';\nimport { WEBINAR } from './webinar';\n\nexport const ASSET_IDENTIFIER = {\n AB_TEST, CAMPAIGN, PRODUCT, AUTOMATION, WEBINAR\n};\n","export const AB_TEST = {\n // modals\n ADD_COLLABORATOR_MODAL: 'addCollaboratorModal',\n ADD_COLLABORATOR_BANNER: 'addColabBanner',\n ADMIN_CONSOLE_SINGLE_MODAL: 'adminConsoleSingleModal',\n ADMIN_CONSOLE_SLIDER_MODAL: 'adminConsoleSliderModal',\n ADVERTISEMENT_LEAD_FLOW_MODAL: 'adLeadFlowModal',\n AD_BANNER_MODAL: 'adBannerModal',\n AD_FIRST_EXIT_INTENT_MODAL: 'adFirstExitIntentModal',\n AD_SECOND_EXIT_INTENT_MODAL: 'adSecondExitIntentModal',\n APPLY_REAL_TIME_SUPPORT_MODAL: 'applyRealTimeSupportModal',\n ASSIGN_FORM_MODAL: 'assignFormModal',\n BLOG_CONTENT_BANNER_MODAL: 'blogContentBannerModal',\n BSG_EDUCATION_DISCOUNT_MODAL: 'bsgEducationDiscountModal',\n BSG_NONPROFIT_DISCOUNT_MODAL: 'bsgNonprofitDiscountModal',\n CONTACT_SUPPORT_MODAL: 'contactSupportModal',\n DEDICATED_SUPPORT_MODAL: 'dedicatedSupportModal',\n SINGLE_COLUMN_DEDICATED_SUPPORT_MODAL: 'singleColumnDedicatedSupportModal',\n EDUCATION_BDM_FLOW_MODAL: 'educationBdmFlowModal',\n EDUCATION_DISCOUNT_MODAL: 'educationDiscountModal',\n EDUCATION_DISCOUNT_MODAL_FERPA_VIOLATION_EXAMPLES: 'educationDiscountModalFerpaViolationExamples',\n ENHANCE_COLLAB_MODAL: 'enhanceCollaborationModal',\n FASTER_SUPPORT_RESPONSE_MODAL: 'fasterSupportResponseModal',\n FEATURE_SLIDER_MODAL: 'featureSliderModal',\n LOCAL_DATA_RESIDENCY_MODAL: 'localDataResidencyModal',\n PRICING_TABLE_MODAL: 'pricingTableModal',\n PRICING_TABLE_ISOLATED_MODAL: 'pricingTableIsolatedModal',\n SHARE_FOLDER_MODAL: 'shareFolderModal',\n SSO_PREFILL_MODAL: 'ssoPrefillModal',\n SSO_PREFILL_DETAILED_MODAL: 'ssoPrefillDetailedModal',\n PROFESSIONAL_SERVICES_MODAL: 'professionalServicesModal',\n REQUIRE_SSO_MODAL: 'requireSsoModal',\n SECURITY_PROPERTIES_MODAL: 'securityPropertiesModal',\n SYSTEM_LOGS_MODAL: 'systemLogsModal',\n ZOOM_SUPPORT_MODAL: 'zoomSupportModal',\n APPEXCHANGE_MODAL: 'appExchangeModal',\n TEAMS_WHITE_LABELING_MODAL: 'teamsWhiteLabelingModal',\n SCHEDULE_ZOOM_MODAL: 'scheduleZoomModal',\n // bsge plan discount modals\n BRONZE_PLAN_DISCOUNT_MODAL: 'bronzePlanDiscountModal',\n SILVER_PLAN_DISCOUNT_MODAL: 'silverPlanDiscountModal',\n GOLD_PLAN_DISCOUNT_MODAL: 'goldPlanDiscountModal',\n ENTERPRISE_PLAN_DISCOUNT_MODAL: 'enterprisePlanDiscountModal',\n // banners\n ACTIVE_SUBMISSON_BANNER: 'activeSubmissionBanner',\n ADMIN_CONSOLE_BANNER: 'adminConsoleBanner',\n ADD_AND_MANAGE_USERS_BANNER_ALT: 'addAndManageUsersBannerAlt',\n ADVERTISEMENT_LEAD_FLOW_BANNER: 'advertisementLeadFlowBanner',\n APPLY_REAL_TIME_SUPPORT_BANNER: 'applyRealTimeSupportBanner',\n ASSIGN_FORM_BANNER: 'assignFormBanner',\n BLOG_CONTENT_BOOST_BANNER: 'blogContentBoostBanner',\n BLOG_CONTENT_SPEED_UP_BANNER: 'blogContentSpeedUpBanner',\n BLOG_EDUCATION_CONTENT_BANNER: 'blogEducationContentBanner',\n BLOG_CONTENT_SIDE_BANNER: 'blogContentSideBanner',\n CUSTOM_DOMAIN_TOOLTIP_BANNER: 'customDomainTooltip',\n EDUCATION_BDM_FLOW_BANNER: 'educationBdmFlowBanner',\n ENTERPRISE_BILLING_BANNER: 'enterpriseBillingBanner',\n ENTERPRISE_SECURITY_ITEMS_SECTION: 'enterpriseSecurityItemsSection',\n ENTERPRISE_WHITE_LABELING_BANNER: 'enterpriseWhiteLabelingBanner',\n ENTERPRISE_EDUCATION_DISCOUNT_MODAL: 'enterpriseEducationDiscountModal',\n ENTERPRISE_NONPROFIT_DISCOUNT_MODAL: 'enterpriseNonprofitDiscountModal',\n FASTER_SUPPORT_RESPONSE_BANNER: 'fasterSupportResponseBanner',\n FASTER_SUPPORT_RESPONSE_TOGGLE_BANNER: 'fasterSupportResponseToggleBanner',\n FULLY_CUSTOMIZE_BANNER: 'fullyCustomizeBanner',\n IP_RESTRICTION_BANNER: 'ipRestrictionBanner',\n LOCAL_DATA_RESIDENCY_ALT_BANNER: 'localDataResidencyAltBanner',\n MYFORMS_WHITE_LABELING_TOOLTIP_BANNER: 'whiteLabelingTooltipBanner',\n MY_ACCOUNT_STORE_DATA_IN_AU_BANNER: 'storeDataInAuBanner',\n MOBILE_FOOTER_CONTACT_BANNER: 'mobileFooterContactBanner',\n PUSH_DAY_BANNER: 'profSolutionsBanner',\n PROFESSIONAL_SERVICES_TOOLTIP: 'professionalServicesTooltip',\n PROFESSIONAL_SERVICES_CONTACT_BANNER: 'professionalServicesContactBanner',\n SHARE_PANEL_COLLAB_BANNER: 'sharePanelCollabBanner',\n SSO_ACCESS_BANNER: 'ssoAccessBanner',\n SSO_PREFILL_BANNER: 'ssoPrefillBanner', // live\n SYSTEM_LOGS_BANNER: 'systemLogsBanner',\n SYSTEM_LOGS_TINY_BANNER: 'systemLogsTinyBanner',\n DEDICATED_SUPPORT_BANNER_V2: 'dedicatedSupportBannerV2',\n SCHEDULE_ZOOM_BANNER: 'scheduleZoomBanner',\n // sections\n ACCESS_CONTROL_SECTION: 'accessControlSection',\n ASSIGN_TO_EVERYONE_PROMOTION: 'assignToEveryonePromotionSection',\n ASSIGN_TO_EVERYONE_PROMOTION_ALT: 'assignToEveryonePromotionSectionAlt',\n ENTERPRISE_CHECKOUT_LIKE_SECTION: 'enterpriseCheckoutLikeSection', // live\n USERS_SECTION: 'usersSection',\n USERS_SECTION_ALT: 'usersSectionAlt',\n WHITE_LABELING_SECTION: 'whiteLabelingSection',\n // buttons\n EXPANDABLE_ADMIN_CONSOLE_BUTTON: 'expandableAdminConsoleButton',\n FASTER_SUPPORT_RESPONSE_TOGGLE_BUTTON: 'fasterSupportResponseToggleButton',\n ZOOM_MEETING_BUTTON: 'zoomMeetingButton',\n ASSIGN_TO_ORGANIZATION_BUTTON: 'assignToOrganizationButton',\n // badges\n ENTERPRISE_FEATURE_BADGE: 'enterpriseFeatureBadge'\n};\n","export const CAMPAIGN = {\n EARNED_BADGES_MODAL: 'earnedBadgesModal',\n ETT_EDUCATION_GATED_CONTENT_MODAL: 'ettEducationGatedCotentModal',\n ETT_EDUCATION_EXIT_INTENT_MODAL: 'ettEducationExitIntentModal',\n FOMO_MODAL: 'fomoModal',\n FQHC_MODAL: 'fqhcModal',\n HEALTHCARE_REPORT_BANNER: 'healthcareReportBanner',\n HEALTHCARE_REPORT_MODAL: 'healthcareReportModal',\n NHS_MODAL: 'nhsModal'\n};\n","export const PRODUCT = {\n // modals\n ADMIN_CONSOLE_DARK_MODAL: 'adminConsoleDarkModal',\n ASSIGN_TO_ORGANIZATON_MODAL: 'assignToOrganizationModal',\n CONTACT_DEDICATED_SUPPORT_MODAL: 'contactDedicatedSupportModal',\n ENTERPRISE_PROPERTY_MODAL: 'enterprisePropertyModal',\n ENTERPRISE_TEAMS_MODAL: 'enterpriseTeamsModal',\n TEAMS_MODAL: 'teamsModal',\n FOLDER_LIMIT_MODAL: 'folderLimitModal',\n HELP_DEDICATED_SUPPORT_MODAL: 'helpDedicatedSupportModal',\n TEAM_CREATION_LIMIT_MODAL: 'teamCreationLimitModal',\n WHITE_LABELING_MODAL: 'whiteLabelingModal',\n APPEXCHANGE_MODAL: 'appexchangeModal',\n ENTERPRISE_BEGINNERS_BOOK_MODAL: 'enterpriseBeginnersBookModal',\n ENTERPRISE_DATA_CENTERS_MODAL: 'enterpriseDataCentersModal',\n PDF_DOWNLOAD_MODAL: 'pdfDownloadModal',\n // banners\n ADD_AND_MANAGE_USERS_BANNER: 'addAndManageUsersBanner',\n CUSTOM_DOMAIN_API_BANNER: 'customDomainApiBanner',\n FORM_CUSTOM_DOMAIN_TOOLTIP: 'formCustomDomainTooltip',\n CUSTOM_DOMAIN_TOOLTIP_LEGACY: 'customDomainTooltipLegacy',\n TEAMS_CUSTOM_DOMAIN_LEGACY_TOOLTIP: 'teamsCustomDomainLegacyTooltip',\n DEDICATED_SUPPORT_BANNER: 'dedicatedSupportBanner',\n GENERAL_FAQ_PROF_SERVICES_BANNER: 'generalFaqProfessionalServicesBanner',\n LIMIT_BANNER: 'limitBanner',\n LOCAL_DATA_RESIDENCY_BANNER: 'localDataResidencyBanner',\n SESSIONS_ACCOUNT_SHARING_BANNER: 'sessionsAccountSharingBanner',\n SSO_ACCESS_LEGACY_BANNER: 'ssoAccessLegacyBanner',\n SSO_LEGACY_TOOLTIP: 'ssoLegacyTooltip',\n SSO_PREFILL_LEGACY_BANNER: 'ssoPrefillLegacyBanner',\n USER_GUIDE_PROF_SERVICES_BANNER: 'userGuideProfessionalServicesBanner',\n WHITE_LABELING_BANNER: 'whiteLabelingBanner',\n APPROVAL_WHITE_LABELING_BANNER: 'approvalWhiteLabelingBanner',\n WORKFLOW_GROUP_APPROVAL_BANNER: 'workflowGroupApprovalBanner',\n BLOG_EDUCATION_SIDE_BANNER: 'blogEducationSideBanner',\n PDF_DOWNLOAD_BANNER: 'pdfDownloadBanner',\n // sections\n MY_ACCOUNT_USERS_SECTION_WITH_FORM: 'myAccountUsersSection', // old: myAccountUsersSectionWithForm\n ENTERPRISE_DATA_CENTERS_SECTION: 'enterpriseDataCentersSection',\n DEDICATED_SUPPORT_SECTION: 'dedicatedSupportSection',\n // buttons\n ADMIN_CONSOLE_PROMOTION_BUTTON: 'adminConsolePromotionButton'\n};\n","export const AUTOMATION = {\n // segmented modals\n EDUCATION_MODAL: 'segmentedEducationModal', // old: educationModal\n EDUCATION_MODAL_ALT: 'segmentedEducationModalAlt', // old: educationModalAlt\n FIELD_SERVICE_MANAGEMENT_MODAL: 'segmentedFieldServiceManagementModal', // old: fieldServiceManagementModal\n GOVERNMENT_MODAL: 'segmentedGovernmentModal', // old: governmentModal\n HEALTHCARE_MODAL: 'segmentedHealthcareModal', // old: healthcareModal\n NONPROFIT_MODAL: 'segmentedNonprofitModal', // old: nonprofitModal\n // other modals\n AU_DATA_RESIDENCY_MODAL: 'australianDataResidencyModal',\n HK_DATA_RESIDENCY_MODAL: 'hongKongDataResidencyModal',\n SG_DATA_RESIDENCY_MODAL: 'singaporeDataResidencyModal',\n ENTERPRISE_DISCOUNT_MODAL: 'enterpriseDiscountModal',\n HUBSPOT_MODAL: 'milestoneHubspotModal',\n BLOG_GATED_CONTENT_MODAL: 'blogGatedContentModal'\n};\n","export const WEBINAR = {\n COST_CUTTING_WEBINAR_BANNER: 'costCuttingWebinarBanner',\n COST_CUTTING_WEBINAR_MODAL: 'costCuttingWebinarModal',\n ED_TECH_WEBINAR_MODAL: 'edTechWebinarModal',\n FIELD_SERVICE_WEBINAR_MODAL: 'fieldServiceWebinarModal',\n HR_WEBINAR_MODAL: 'hrWebinarModal',\n HEALTHCARE_TECHNOLOGY_MODAL: 'healthcareTechnologyModal',\n HEALTHCARE_AUTOMATION_STRATEGIES_WEBINAR_MODAL: 'hasWebinarModal',\n LUNCH_AND_LEARN_MODAL: 'lunchAndLearnModal',\n LUNCH_AND_LEARN_BANNER: 'lunchAndLearnBanner',\n NONPROFIT_WEBINAR_BANNER: 'nonProfitWebinarBanner',\n MAXIMUM_IMPACT_WEBINAR_MODAL: 'maximumImpactWebinarModal',\n HEALTHCARE_FUTURE_WEBINAR_MODAL: 'healthcareFutureWebinarModal',\n NONPROFIT_WEBINAR_MODAL: 'nonProfitWebinarModal',\n PRIVACY_CONCERN_WEBINAR_MODAL: 'privacyConcernWebinarModal'\n};\n","import { ALL_TEXTS } from './texts';\n\nexport const ENTERPRSE_PROMOTIONS_ROOT_EL_ID = 'enterprise-promotions-root';\n\nexport const ACTION_PROJECT_NAMES = {\n TEAMS: 'teams',\n AU_DATA_RESIDENCY_MODAL: 'auDataResidencyModalCampaign',\n ENTERPRISE_PROMOTIONS: 'enterprisePromotions' // always use this\n // dont use new project name for enterprise promotions assets\n};\n\nexport const SHORT_LEAD_FORM_IFRAME_ID = 'enterprise-short-lead-form';\n\nexport const VARIANTS = {\n CONTROL_CODE: '8521',\n TEST_CODE: '8531'\n};\n\nexport const govModalSeenAtUserSettingsKey = 'enterpriseGovernmentModalSeenAt';\nexport const nonProfitModalSeenAtUserSettingsKey = 'enterpriseNonProfitWebinarModalSeenAt';\nexport const nonProfitBannerSeenAtUserSettingsKey = 'enterpriseNonProfitWebinarBannerSeenAt';\nexport const healthcareReportModalSeenAtUserSettingsKey = 'enterprise2024HealthcareReportModalSeenAt';\nexport const healthcareReportBannerSeenAtUserSettingsKey = 'enterprise2024HealthcareReportBannerSeenAt';\nexport const professionalSolutionsBannerSeenAtKey = 'professionalSolutionsBannerSeenAt';\nexport const costCuttingWebinarModalSeenAtKey = 'costCuttingWebinarModalSeenAt';\nexport const costCuttingWebinarBannerSeenAtKey = 'costCuttingWebinarBannerSeenAt';\nexport const australianDataResidencyModalSeenAtKey = 'australianDataResidencyModalSeenAt';\nexport const fieldServiceWebinarModalSeenAtKey = 'fieldServiceWebinarModalSeenAt';\nexport const privacyConcernWebinarModalSeenAtKey = 'privacyConcernWebinarModalSeenAt';\nexport const milestoneHubspotModalKey = 'milestoneHubspotModalSeenAt';\nexport const earnedBadgesModalSeenAtKey = 'earnedBadgesModalSeenAt';\nexport const hasWebinarModalSeenAtKey = 'hasWebinarModalSeenAt';\nexport const ettEducationReportModalSeenAtKey = 'ettEducationReportModalSeenAt';\nexport const maximumImpactWebinarModalSeenAtKey = 'maximumImpactWebinarModalSeenAt';\nexport const healthcareFutureWebinarModalSeenAtKey = 'healthcareFutureWebinarModalSeenAt';\n\nexport const lunchAndLearnNotificationSeenAtKey = 'lunchAndLearnNotificationSession2SeenAt';\nexport const enterprisePriceAdjustmentNotificationSeenAtKey = 'fomoNotificationSeenAt';\nexport const enterprisePriceAdjustmentNotificationA1FirstSeenAtKey = 'fomoA1ThirdNotificationSeenAt';\nexport const fomoB1FirstModalSeenAtKey = 'fomoB1FirstModalSeenAt';\nexport const adTechWebinarModalSeenAtKey = 'edtechWebinarSept2023SeenAt';\n\nexport const COUNTDOWN_UNIT = {\n DAYS: 'DAYS',\n HOURS: 'HOURS',\n MINUTES: 'MINUTES',\n LIVE: 'LIVE'\n};\n\n// lunch and learn banner\n// update these constants for the next session\nexport const lalbSession = 5;\nexport const lalbSessionName = `session${lalbSession}`;\nexport const lalbNeverShowKey = 'lunchAndLearnBannerSeenAt';\nexport const lalbSessionKey = `lunchAndLearnBannerSession${lalbSession}SeenAt`;\n\nexport const TEST_EVENT_DATE = {\n ANNOUNCEMENT_DATE_TIME: '2023-03-09T10:00:00.000+03:00',\n EVENT_DATE_TIME: '2023-03-10T14:00:00.000-05:00',\n EVENT_DURATION: '03:00'\n};\n\nexport const LUNCH_AND_LEARN_SESSIONS = [{\n ANNOUNCEMENT_DATE_TIME: '2023-02-28T10:00:00.000+03:00', // UTC+3\n EVENT_DATE_TIME: '2023-03-02T12:00:00.000-05:00', // UTC-5\n EVENT_DURATION: '00:30',\n CONTENT: ALL_TEXTS.LUNCH_LEARN_CONTENT_SESSION_1\n}, {\n ANNOUNCEMENT_DATE_TIME: '2023-03-13T10:00:00.000+03:00', // UTC+3\n EVENT_DATE_TIME: '2023-03-16T12:00:00.000-05:00', // UTC-5\n EVENT_DURATION: '00:30',\n CONTENT: ALL_TEXTS.LUNCH_LEARN_CONTENT_SESSION_2\n}, {\n ANNOUNCEMENT_DATE_TIME: '2023-03-27T10:00:00.000+03:00', // UTC+3\n EVENT_DATE_TIME: '2023-03-30T12:00:00.000-05:00', // UTC-5\n EVENT_DURATION: '00:30',\n CONTENT: ALL_TEXTS.LUNCH_LEARN_CONTENT_SESSION_3\n},\n{\n ANNOUNCEMENT_DATE_TIME: '2023-04-10T10:00:00.000+03:00', // UTC+3\n EVENT_DATE_TIME: '2023-04-13T12:00:00.000-05:00', // UTC-5\n EVENT_DURATION: '00:30',\n CONTENT: ALL_TEXTS.LUNCH_LEARN_CONTENT_SESSION_4\n},\n{\n ANNOUNCEMENT_DATE_TIME: '2023-04-24T10:00:00.000+03:00', // UTC+3\n EVENT_DATE_TIME: '2023-04-27T12:00:00.000-05:00', // UTC-5\n EVENT_DURATION: '00:30',\n CONTENT: ALL_TEXTS.LUNCH_LEARN_CONTENT_SESSION_5\n},\n{\n ANNOUNCEMENT_DATE_TIME: '2023-05-08T10:00:00.000+03:00', // UTC+3\n EVENT_DATE_TIME: '2023-05-11T12:00:00.000-05:00', // UTC-5\n EVENT_DURATION: '00:30',\n CONTENT: ALL_TEXTS.LUNCH_LEARN_CONTENT_SESSION_6\n}];\n\nexport const COST_CUTTING_WEBINAR_ASSET_TYPE = {\n MODAL: 'modal',\n BANNER: 'banner'\n};\n\nexport const SEGMENTED_MODAL_TYPES = {\n GOVERNMENT: 'government',\n HEALTHCARE: 'healthcare',\n EDUCATION: 'education',\n FIELD_SERVICES_MANAGEMENT: 'fieldServicesManagement',\n NONPROFIT: 'nonprofit'\n};\n\nexport const PRICING_TABLE_AB_TEST_VARIANTS = {\n CONTROL_A: '8701',\n TEST_B: '8711',\n TEST_C: '8721'\n};\n\nexport const PRICING_TABLE_SOURCE_PAGES = {\n EDUCATION: 'education',\n NONPROFIT: 'nonprofit'\n};\n\nconst { EDUCATION, NONPROFIT } = PRICING_TABLE_SOURCE_PAGES;\n\nexport const BRONZE_DM_DESCRIPTION = {\n [EDUCATION]: ALL_TEXTS.APPLY_BRONZE_EDUCATION_DISCOUNT,\n [NONPROFIT]: ALL_TEXTS.APPLY_BRONZE_NONPROFIT_DISCOUNT\n};\n\nexport const SILVER_DM_DESCRIPTION = {\n [EDUCATION]: ALL_TEXTS.APPLY_SILVER_EDUCATION_DISCOUNT,\n [NONPROFIT]: ALL_TEXTS.APPLY_SILVER_NONPROFIT_DISCOUNT\n};\n\nexport const GOLD_DM_DESCRIPTION = {\n [EDUCATION]: ALL_TEXTS.APPLY_GOLD_EDUCATION_DISCOUNT,\n [NONPROFIT]: ALL_TEXTS.APPLY_GOLD_NONPROFIT_DISCOUNT\n};\n\nexport const ENTERPRISE_DM_DESCRIPTION = {\n [EDUCATION]: ALL_TEXTS.ENTERPRISE_DISCOUNT_EDUCATION_DESCRIPTION,\n [NONPROFIT]: ALL_TEXTS.ENTERPRISE_DISCOUNT_NONPROFIT_DESCRIPTION\n};\n\nexport const leadFlowBannerUrlParam = 'epalf';\nexport const leadFlowBannerAutoVisibleLcStKey = 'leadFlowBannerAutoVisible';\n\nexport const eduBdmFlowInterctedLcStKey = 'eduBdmFlowBannerInteracted';\nexport const eduBdmFlowVisitCountLcStKey = 'eduBdmFlowBannerVisitCount';\nexport const eduBdmFlowAutoVisibleLcStKey = 'eduBdmFlowBannerAutoVisible';\n\nexport const CHECKOUT_LIKE_SECTION_STEPS = {\n FORM_STEP: 'FORM_STEP',\n THANK_YOU_STEP: 'THANK_YOU_STEP'\n};\n\nexport const SHOULD_SHOW_AD_FORM = false;\n","import { ASSET_IDENTIFIER } from './assetIdentifier';\n\nconst {\n FOLDER_LIMIT_MODAL, HELP_DEDICATED_SUPPORT_MODAL, WHITE_LABELING_MODAL, ASSIGN_TO_ORGANIZATON_MODAL, TEAMS_MODAL, TEAM_CREATION_LIMIT_MODAL, ADMIN_CONSOLE_DARK_MODAL, ENTERPRISE_DATA_CENTERS_MODAL,\n MY_ACCOUNT_USERS_SECTION_WITH_FORM, CONTACT_DEDICATED_SUPPORT_MODAL\n} = ASSET_IDENTIFIER.PRODUCT;\n\n// For webinars\n\n// For campaigns\n\n// For AB tests\nconst {\n EDUCATION_DISCOUNT_MODAL, EDUCATION_DISCOUNT_MODAL_FERPA_VIOLATION_EXAMPLES, SYSTEM_LOGS_MODAL,\n ADD_COLLABORATOR_MODAL, ENTERPRISE_CHECKOUT_LIKE_SECTION, SINGLE_COLUMN_DEDICATED_SUPPORT_MODAL, SCHEDULE_ZOOM_MODAL\n} = ASSET_IDENTIFIER.AB_TEST;\n\n// For automation\nconst { GOVERNMENT_MODAL } = ASSET_IDENTIFIER.AUTOMATION;\n\nexport const GA_AD_FORM_TRACKING_ITEMS = {\n // segmented modals\n // todo: update segmented modals selectors\n [GOVERNMENT_MODAL]: [\n { selector: '#input_129', payload: { event: 'contact-sales-click' } },\n { selector: '#text_130 a', payload: { event: 'learn-more-click' } }\n ],\n [EDUCATION_DISCOUNT_MODAL]: [\n { selector: '#input_104', payload: { event: 'contact-sales-click' } }\n ],\n [EDUCATION_DISCOUNT_MODAL_FERPA_VIOLATION_EXAMPLES]: [\n { seletor: '#input_106', payload: { event: 'contact-sales-click' } }\n ],\n [SYSTEM_LOGS_MODAL]: [\n { selector: '#input_107', payload: { event: 'contact-now-click' } }\n ],\n [FOLDER_LIMIT_MODAL]: [\n { selector: '#input_108', payload: { event: 'contact-sales-click' } }, // It has been updated. The old one was \"contact-sales-click\"\n { selector: '#text_109 a', payload: { event: 'learn-more-click' } }\n ],\n [HELP_DEDICATED_SUPPORT_MODAL]: [\n { selector: '#input_110', payload: { event: 'contact-now-click' } }\n ],\n [WHITE_LABELING_MODAL]: [\n { selector: '#input_111', payload: { event: 'contact-sales-click' } }\n ],\n [ADD_COLLABORATOR_MODAL]: [\n { selector: '#input_112', payload: { event: 'contact-sales-click' } }\n ],\n [ASSIGN_TO_ORGANIZATON_MODAL]: [\n { selector: '#input_113', payload: { event: 'contact-sales-click' } },\n { selector: '#text_114 a', payload: { event: 'learn-more-click' } }\n ],\n [TEAMS_MODAL]: [\n { selector: '#input_115', payload: { event: 'contact-sales-click' } }\n ],\n [TEAM_CREATION_LIMIT_MODAL]: [\n { selector: '#input_116', payload: { event: 'contact-sales-click' } }, // It has been updated. The old one was \"contact-sales-click\"\n { selector: '#text_117 a', payload: { event: 'learn-more-click' } }\n ],\n [ADMIN_CONSOLE_DARK_MODAL]: [\n { selector: '#input_118', payload: { event: 'contact-sales-click' } },\n { selector: '#text_119 a', payload: { event: 'learn-more-click' } }\n ],\n [ENTERPRISE_DATA_CENTERS_MODAL]: [\n { selector: '#input_121', payload: { event: 'contact-sales-click' } },\n { selector: '#text_120 a', payload: { event: 'learn-more-click' } }\n ],\n [MY_ACCOUNT_USERS_SECTION_WITH_FORM]: [\n { selector: '#input_122', payload: { event: 'contact-sales-click' } }\n ],\n [ENTERPRISE_CHECKOUT_LIKE_SECTION]: [\n { selector: '#input_131', payload: { event: 'send-request-click' } }\n ],\n [CONTACT_DEDICATED_SUPPORT_MODAL]: [\n { selector: '#input_133', payload: { event: 'contact-now-click' } }\n ],\n [SINGLE_COLUMN_DEDICATED_SUPPORT_MODAL]: [\n { selector: '#input_73', payload: { event: 'send-request-click' } }\n ],\n [SCHEDULE_ZOOM_MODAL]: [\n { selector: '#input_196', payload: { event: 'contact-sales-click' } }\n ]\n};\n","import { ASSET_IDENTIFIER } from './assetIdentifier';\n\nconst {\n ADMIN_CONSOLE_DARK_MODAL, ASSIGN_TO_ORGANIZATON_MODAL,\n CONTACT_DEDICATED_SUPPORT_MODAL, WHITE_LABELING_MODAL,\n ENTERPRISE_TEAMS_MODAL, TEAMS_MODAL, TEAM_CREATION_LIMIT_MODAL, HELP_DEDICATED_SUPPORT_MODAL,\n MY_ACCOUNT_USERS_SECTION_WITH_FORM, FOLDER_LIMIT_MODAL, APPEXCHANGE_MODAL, ENTERPRISE_DATA_CENTERS_MODAL, ENTERPRISE_BEGINNERS_BOOK_MODAL, PDF_DOWNLOAD_MODAL\n} = ASSET_IDENTIFIER.PRODUCT;\n\n// For webinars\nconst {\n ED_TECH_WEBINAR_MODAL, HEALTHCARE_AUTOMATION_STRATEGIES_WEBINAR_MODAL,\n LUNCH_AND_LEARN_MODAL, MAXIMUM_IMPACT_WEBINAR_MODAL, HEALTHCARE_TECHNOLOGY_MODAL,\n HEALTHCARE_FUTURE_WEBINAR_MODAL\n} = ASSET_IDENTIFIER.WEBINAR;\n\n// For campaigns\nconst {\n ETT_EDUCATION_GATED_CONTENT_MODAL, ETT_EDUCATION_EXIT_INTENT_MODAL,\n FOMO_MODAL, FQHC_MODAL, HEALTHCARE_REPORT_MODAL\n} = ASSET_IDENTIFIER.CAMPAIGN;\n\n// For AB tests\nconst {\n ADD_COLLABORATOR_MODAL, AD_BANNER_MODAL, AD_FIRST_EXIT_INTENT_MODAL, AD_SECOND_EXIT_INTENT_MODAL,\n BLOG_BANNER_MODAL, DEDICATED_SUPPORT_MODAL, FASTER_SUPPORT_RESPONSE_MODAL, PRICING_TABLE_MODAL,\n PRICING_TABLE_ISOLATED_MODAL, SHARE_FOLDER_MODAL, SSO_PREFILL_MODAL, PROFESSIONAL_SERVICES_MODAL,\n ZOOM_SUPPORT_MODAL, ASSIGN_FORM_MODAL, BRONZE_PLAN_DISCOUNT_MODAL, SILVER_PLAN_DISCOUNT_MODAL,\n GOLD_PLAN_DISCOUNT_MODAL, ENTERPRISE_PLAN_DISCOUNT_MODAL, BLOG_CONTENT_SIDE_BANNER,\n ENTERPRISE_CHECKOUT_LIKE_SECTION, LOCAL_DATA_RESIDENCY_MODAL, MOBILE_FOOTER_CONTACT_BANNER,\n APPLY_REAL_TIME_SUPPORT_MODAL, EDUCATION_DISCOUNT_MODAL, TEAMS_WHITE_LABELING_MODAL,\n REQUIRE_SSO_MODAL, SYSTEM_LOGS_MODAL, SSO_PREFILL_DETAILED_MODAL, EDUCATION_DISCOUNT_MODAL_FERPA_VIOLATION_EXAMPLES,\n SINGLE_COLUMN_DEDICATED_SUPPORT_MODAL, SCHEDULE_ZOOM_MODAL\n} = ASSET_IDENTIFIER.AB_TEST;\n\n// For automation\nconst {\n EDUCATION_MODAL, EDUCATION_MODAL_ALT, FIELD_SERVICE_MANAGEMENT_MODAL, GOVERNMENT_MODAL,\n HEALTHCARE_MODAL, NONPROFIT_MODAL, ENTERPRISE_DISCOUNT_MODAL, AU_DATA_RESIDENCY_MODAL,\n HK_DATA_RESIDENCY_MODAL, SG_DATA_RESIDENCY_MODAL, BLOG_GATED_CONTENT_MODAL\n} = ASSET_IDENTIFIER.AUTOMATION;\n\nexport const GA_FORM_TRACKING_ITEMS = {\n // segmented modals\n // todo: update segmented modals selectors\n [GOVERNMENT_MODAL]: [\n { selector: '#input_99', payload: { event: 'contact-sales-click' } },\n { selector: '#id_100 a', payload: { event: 'learn-more-click' } }\n ],\n [HEALTHCARE_MODAL]: [\n { selector: '#input_99', payload: { event: 'apply-now-click' } },\n { selector: '#id_100 a', payload: { event: 'learn-more-click' } }\n ],\n [EDUCATION_MODAL]: [\n { selector: '#input_99', payload: { event: 'apply-now-click' } },\n { selector: '#id_100 a', payload: { event: 'learn-more-click' } }\n ],\n [FIELD_SERVICE_MANAGEMENT_MODAL]: [\n { selector: '#input_99', payload: { event: 'apply-now-click' } },\n { selector: '#id_100 a', payload: { event: 'learn-more-click' } }\n ],\n [NONPROFIT_MODAL]: [\n { selector: '#input_99', payload: { event: 'apply-now-click' } },\n { selector: '#id_100 a', payload: { event: 'learn-more-click' } }\n ],\n // segmented modals end\n [ADMIN_CONSOLE_DARK_MODAL]: [\n { selector: '#input_74', payload: { event: 'contact-sales-click' } },\n { selector: '#text_76 a', payload: { event: 'learn-more-click' } }\n ],\n [AU_DATA_RESIDENCY_MODAL]: [\n { selector: '#input_81', payload: { event: 'send-request-click' } },\n { selector: '#text_80 a', payload: { event: 'learn-more-click' } }\n ],\n [HK_DATA_RESIDENCY_MODAL]: [\n { selector: '#input_201', payload: { event: 'send-request-click' } },\n { selector: '#text_200 a', payload: { event: 'explore-more-click' } }\n ],\n [SG_DATA_RESIDENCY_MODAL]: [\n { selector: '#input_203', payload: { event: 'send-request-click' } },\n { selector: '#text_202 a', payload: { event: 'explore-more-click' } }\n ],\n [ASSIGN_TO_ORGANIZATON_MODAL]: [\n { selector: '#input_99', payload: { event: 'contact-sales-click' } },\n { selector: '#text_111 a', payload: { event: 'learn-more-click' } }\n ],\n [ENTERPRISE_TEAMS_MODAL]: [\n { selector: '#input_151', payload: { event: 'join-now-click' } },\n { selector: '#text_173 a', payload: { event: 'learn-more-click' } }\n ],\n [TEAM_CREATION_LIMIT_MODAL]: [\n { selector: '#input_173', payload: { event: 'contact-sales-click' } }, // It has been updated. The old one was \"contact-sales-click\"\n { selector: '#text_108 a', payload: { event: 'learn-more-click' } }\n ],\n [FOLDER_LIMIT_MODAL]: [\n { selector: '#input_174', payload: { event: 'contact-sales-click' } }, // It has been updated. The old one was \"contact-sales-click\"\n { selector: '#text_175 a', payload: { event: 'learn-more-click' } }\n ],\n [EDUCATION_MODAL_ALT]: [\n { selector: '#input_145', payload: { event: 'apply-now-click' } }\n ],\n [ENTERPRISE_DISCOUNT_MODAL]: [\n { selector: '#input_77', payload: { event: 'apply-now-click' } }\n ],\n [HEALTHCARE_REPORT_MODAL]: [\n { selector: '#input_33', payload: { event: 'get-insights-now-click' } }\n ],\n [PRICING_TABLE_ISOLATED_MODAL]: [\n { selector: '#input_115', payload: { event: 'contact-now-click' } }\n ],\n [PRICING_TABLE_MODAL]: [\n { selector: '#input_117', payload: { event: 'contact-now-click' } }\n ],\n [MY_ACCOUNT_USERS_SECTION_WITH_FORM]: [\n { selector: '#input_83', payload: { event: 'contact-sales-click' } }\n ],\n [BRONZE_PLAN_DISCOUNT_MODAL]: [\n { selector: '#input_77', payload: { event: 'apply-now-click' } }\n ],\n [SILVER_PLAN_DISCOUNT_MODAL]: [\n { selector: '#input_77', payload: { event: 'apply-now-click' } }\n ],\n [GOLD_PLAN_DISCOUNT_MODAL]: [\n { selector: '#input_77', payload: { event: 'apply-now-click' } }\n ],\n [ENTERPRISE_PLAN_DISCOUNT_MODAL]: [\n { selector: '#input_77', payload: { event: 'apply-now-click' } }\n ],\n [ADD_COLLABORATOR_MODAL]: [\n { selector: '#input_122', payload: { event: 'contact-sales-click' } },\n { selector: '#text_225 a', payload: { event: 'learn-more-click' } }\n ],\n [HEALTHCARE_AUTOMATION_STRATEGIES_WEBINAR_MODAL]: [\n { selector: '#input_2', payload: { event: 'submit-click' } }\n ],\n [LUNCH_AND_LEARN_MODAL]: [\n { selector: '#input_2', payload: { event: 'submit-click' } }\n ],\n [MAXIMUM_IMPACT_WEBINAR_MODAL]: [\n { selector: '#input_2', payload: { event: 'submit-click' } }\n ],\n [HEALTHCARE_FUTURE_WEBINAR_MODAL]: [\n { selector: '#input_15', payload: { event: 'register-click' } },\n { selector: '#text_16', payload: { event: 'learn-more-click' } }\n ],\n [AD_FIRST_EXIT_INTENT_MODAL]: [\n { selector: '#input_129', payload: { event: 'send-request-click' } }\n ],\n [AD_SECOND_EXIT_INTENT_MODAL]: [\n { selector: '#input_129', payload: { event: 'send-request-click' } }\n ],\n [AD_BANNER_MODAL]: [\n { selector: '#input_129', payload: { event: 'send-request-click' } }\n ],\n [DEDICATED_SUPPORT_MODAL]: [\n { selector: '#input_122', payload: { event: 'contact-sales-click' } }\n ],\n [FOMO_MODAL]: [\n { selector: '#input_127', payload: { event: 'send-request-click' } }\n ],\n [BLOG_CONTENT_SIDE_BANNER]: [\n { selector: '#input_128', payload: { event: 'contact-now-click' } }\n ],\n [FASTER_SUPPORT_RESPONSE_MODAL]: [\n { selector: '#input_122', payload: { event: 'contact-sales-click' } }\n ],\n [ED_TECH_WEBINAR_MODAL]: [\n { selector: '#input_41', payload: { event: 'register-click' } },\n { selector: '#id_42 a', payload: { event: 'learn-more-click' } }\n ],\n [SSO_PREFILL_MODAL]: [\n { selector: '#input_99', payload: { event: 'contact-sales-click' } },\n { selector: '#text_144 a', payload: { event: 'learn-more-click' } }\n ],\n [ENTERPRISE_CHECKOUT_LIKE_SECTION]: [\n { selector: '#input_138', payload: { event: 'send-request-click' } }\n ],\n [BLOG_BANNER_MODAL]: [\n { selector: '#input_141', payload: { event: 'contact-now-click' } }\n ],\n [SHARE_FOLDER_MODAL]: [\n { selector: '#input_122', payload: { event: 'contact-sales-click' } }\n ],\n [CONTACT_DEDICATED_SUPPORT_MODAL]: [\n { selector: '#input_115', payload: { event: 'contact-now-click' } }\n ],\n [ETT_EDUCATION_GATED_CONTENT_MODAL]: [\n { selector: '#input_2', payload: { event: 'get-insights-now-click' } }\n ],\n [ETT_EDUCATION_EXIT_INTENT_MODAL]: [\n { selector: '#input_2', payload: { event: 'get-insights-now-click' } }\n ],\n [HELP_DEDICATED_SUPPORT_MODAL]: [\n { selector: '#input_115', payload: { event: 'contact-now-click' } }\n ],\n [WHITE_LABELING_MODAL]: [\n { selector: '#input_122', payload: { event: 'contact-sales-click' } }\n ],\n [TEAMS_WHITE_LABELING_MODAL]: [\n { selector: '#input_122', payload: { event: 'contact-sales-click' } }\n ],\n [PROFESSIONAL_SERVICES_MODAL]: [\n { selector: '#input_154', payload: { event: 'apply-now-click' } },\n { selector: '#id_155 a', payload: { event: 'learn-more-click' } }\n ],\n [ZOOM_SUPPORT_MODAL]: [\n { selector: '#input_145', payload: { event: 'apply-now-click' } }\n ],\n [ASSIGN_FORM_MODAL]: [\n { selector: '#input_172', payload: { event: 'apply-now-click' } }\n ],\n [LOCAL_DATA_RESIDENCY_MODAL]: [\n { selector: '#input_176', payload: { event: 'apply-now-click' } }\n ],\n [MOBILE_FOOTER_CONTACT_BANNER]: [\n { selector: '#input_151', payload: { event: 'send-request-click' } }\n ],\n [APPLY_REAL_TIME_SUPPORT_MODAL]: [\n { selector: '#input_177', payload: { event: 'contact-now-click' } }\n ],\n [FQHC_MODAL]: [\n { selector: '#input_2', payload: { event: 'request-now-click' } }\n ],\n [EDUCATION_DISCOUNT_MODAL]: [\n { selector: '#input_122', payload: { event: 'contact-sales-click' } }\n ],\n [EDUCATION_DISCOUNT_MODAL_FERPA_VIOLATION_EXAMPLES]: [\n { seletor: '#input_206', payload: { event: 'contact-sales-click' } }\n ],\n [ENTERPRISE_DATA_CENTERS_MODAL]: [\n { selector: '#input_181', payload: { event: 'contact-sales-click' } },\n { selector: '#text_182', payload: { event: 'learn-more-click' } }\n ],\n [REQUIRE_SSO_MODAL]: [\n { selector: '#input_189', payload: { event: 'apply-now-click' } },\n { selector: '#input_190', payload: { event: 'learn-more-click' } }\n ],\n [SYSTEM_LOGS_MODAL]: [\n { selector: '#input_191', payload: { event: 'contact-now-click' } }\n ],\n [SSO_PREFILL_DETAILED_MODAL]: [\n { selector: '#input_192', payload: { event: 'contact-sales-click' } },\n { selector: '#text_193 a', payload: { event: 'learn-more-click' } }\n ],\n [APPEXCHANGE_MODAL]: [\n { selector: '#input_194', payload: { event: 'contact-now-click' } }\n ],\n [TEAMS_MODAL]: [\n { selector: '#input_196', payload: { event: 'contact-sales-click' } }\n ],\n [HEALTHCARE_TECHNOLOGY_MODAL]: [\n { selector: '#text_16', payload: { event: 'learn-more-click' } },\n { selector: '#input_15', payload: { event: 'register-click' } },\n { selector: '#input_196', payload: { event: 'submit-application-click' } }\n ],\n [BLOG_GATED_CONTENT_MODAL]: [\n { selector: '#input_2', payload: { event: 'submit-click' } }\n ],\n [ENTERPRISE_BEGINNERS_BOOK_MODAL]: [\n { selector: '#input_33', payload: { event: 'download-now-click' } }\n ],\n [SINGLE_COLUMN_DEDICATED_SUPPORT_MODAL]: [\n { selector: '#text_215 a', payload: { event: 'learn-more-click' } },\n { selector: '#input_216', payload: { event: 'apply-now-click' } }\n ],\n [SCHEDULE_ZOOM_MODAL]: [\n { selector: '#input_230', payload: { event: 'contact-now-click' } }\n ],\n [SCHEDULE_ZOOM_MODAL]: [\n { selector: '#input_230', payload: { event: 'contact-now-click' } }\n ],\n [PDF_DOWNLOAD_MODAL]: [\n { selector: '#input_98', payload: { event: 'get-pdf-now-click' } }\n ]\n};\n","import { ASSET_IDENTIFIER } from './assetIdentifier';\n\nconst { ADMIN_CONSOLE_DARK_MODAL, ENTERPRISE_TEAMS_MODAL } = ASSET_IDENTIFIER.PRODUCT;\n\nexport const LEAD_FORM_MAP = {\n COMMON: { // with labels and the rest of it will have no label\n LIVE: '230813613795964',\n DEV: '242061587960966',\n AD_FORM_LIVE: '203132649531955',\n AD_FORM_DEV: '242062244074953'\n },\n [ENTERPRISE_TEAMS_MODAL]: {\n LIVE: '233313413335950',\n DEV: '240032774763961'\n },\n [ADMIN_CONSOLE_DARK_MODAL]: {\n LIVE: '240023409519955',\n DEV: '240032556858964'\n }\n};\n","import { ASSET_IDENTIFIER } from './assetIdentifier';\n\nexport const LEAD_FORM_SOURCE_MODIFIERS = {\n ADWORDS: 'adwords'\n};\n\nexport const AUTOMATED_NURTURING_SOURCES = {\n EDUCATION_REPORT_MODAL: 'Education Toolkit Gated Content',\n EDUCATION_BDM_FLOW_MODAL: 'Education BDM Flow Modal'\n};\n\nconst { PRODUCT: { ENTERPRISE_TEAMS_MODAL } } = ASSET_IDENTIFIER;\n\nexport const AB_TEST_MODIFIER = {\n [ENTERPRISE_TEAMS_MODAL]: 'epTeamsModalWording'\n};\n","import {\n arrayOf, number, object, oneOf, shape, string\n} from 'prop-types';\nimport { PRICING_TABLE_SOURCE_PAGES, SEGMENTED_MODAL_TYPES } from './constants';\n\nconst accountType = shape({\n name: oneOf(['GUEST', 'FREE', 'STORAGE', 'PREMIUM', 'BRONZE', 'ECONOMY', 'SILVER', 'OLDPREMIUM', 'PROFESSIONAL', 'GOLD', 'DIAMOND',\n 'PARTNER', 'ENTERPRISE', 'PLATINUM', 'ADMIN', 'SUPPORT', 'INTERN', 'HELPDESK'])\n});\n\nexport const userPropType = shape({\n username: string.isRequired,\n name: string,\n email: string,\n jobTitle: string,\n industry: string,\n company: string,\n account_type: accountType.isRequired,\n language: string\n});\n\nexport const segmentedModalPropType = oneOf([\n SEGMENTED_MODAL_TYPES.GOVERNMENT,\n SEGMENTED_MODAL_TYPES.HEALTHCARE,\n SEGMENTED_MODAL_TYPES.EDUCATION,\n SEGMENTED_MODAL_TYPES.FIELD_SERVICES_MANAGEMENT,\n SEGMENTED_MODAL_TYPES.NONPROFIT\n]);\n\nexport const gaAttributesPropType = shape({\n 'data-ga': string,\n 'data-id': string\n});\n\nconst gaFormTrackingItem = shape({\n selector: string,\n payload: object\n});\n\nexport const planDetailsProps = shape({\n currency: string.isRequired,\n prices: shape({ monthly: number.isRequired }).isRequired,\n onSale: shape({ nonProfit: shape({ monthly: number.isRequired }) }).isRequired\n});\n\nexport const planListPropType = shape({\n BRONZE: planDetailsProps.isRequired,\n SILVER: planDetailsProps.isRequired,\n GOLD: planDetailsProps.isRequired\n});\n\nconst { EDUCATION, NONPROFIT } = PRICING_TABLE_SOURCE_PAGES;\n\nexport const sourcePagePropType = oneOf([EDUCATION, NONPROFIT]);\nexport const sourcePageDefaultProp = EDUCATION;\n\nexport const gaFormTrackingItemsPropType = arrayOf(gaFormTrackingItem);\n","// What is SDR? Sales Development Representative\n// Information of the users that show intent to Jotform Enterprise Product are being added to Hubspot.\n// Our agents (SDR) get in touch with the users that have record on Hubspot.\nexport const SDR_SOURCES = {\n ACCOUNT_BOX_ADMIN_CONSOLE_BUTTON: 'AdminConsole',\n ACCOUNT_BOX_ENTERPRISE_PROMO: 'AccountBoxEnterprisePromotion',\n CONTACT_PAGE_DEDICATED_SUPPORT: 'ContactPageDedicatedSupport',\n ENTERPRISE_GOVERNMENT_MODAL: 'EnterpriseGovernmentModal',\n ENTERPRISE_HEALTHCARE_REPORT_BANNER: 'EnterpriseHealthcareReportBanner',\n FORM_BUILDER_ADD_COLLABORATORS_BANNER: 'AddCollaborators',\n FORM_BUILDER_HELP_MENU: 'FormBuilderHelpMenu',\n FORM_BUILDER_SSO_PREFILL: 'SsoPrefill',\n FORM_PROPERTIES_EDITOR_SSO: 'SsoToggle',\n GENERAL_FAQ_PROF_SERVICES_BANNER: 'GeneralFaqProfessionalServicesBanner',\n INBOX_PROFESSIONAL_SOLUTIONS_BANNER: 'InboxProfessionalSolutionsBanner',\n MILESTONE_HUBSPOT_MODAL: 'MilestoneHubspotModal',\n MY_ACCOUNT_CUSTOM_DOMAIN_API_BANNER: 'MyAccountCustomDomainApiBanner',\n MY_ACCOUNT_DEDICATED_SERVER: 'DedicatedServer',\n MY_ACCOUNT_TEAMS_SETTINGS_CUSTOM_URL: 'TeamCustomURL',\n MY_ACCOUNT_SESSIONS_ACCOUNT_SHARING_BANNER: 'SessionsAccountSharingBanner',\n MY_ACCOUNT_SESSIONS_ACCOUNT_SHARING_BANNER_CS_CLICK: 'SessionsAccountSharingBannerCsClick',\n MY_ACCOUNT_WHITE_LABEL: 'WhiteLabel',\n APPROVAL_WHITE_LABEL: 'ApprovalWhiteLabel',\n MY_FORMS_AU_DATA_RESIDENCY_MODAL: 'MyFormsAuDataResidencyModal',\n MY_FORMS_HK_DATA_RESIDENCY_MODAL: 'MyFormsHkDataResidencyModal',\n MY_FORMS_SG_DATA_RESIDENCY_MODAL: 'MyFormsSgDataResidencyModal',\n MY_FORMS_SHARE_FOLDER: 'ShareFolder',\n PROFESSIONAL_SERVICES_CONTACT_BANNER: 'ProfessionalServicesContactBanner',\n SHARE_PANEL_ASSIGN_TO_EVERYONE: 'AssignToggle',\n SHARE_PANEL_SETTINGS_SSO_BANNER: 'SsoBanner',\n SHARE_PANEL_SHARE_LINK: 'CustomDomain',\n TEAMS_ADD_NEW_USER: 'TeamInvite',\n USER_GUIDE_PROF_SERVICES_BANNER: 'UserGuideProfessionalServicesBanner',\n WORKFLOW_GROUP_APPROVAL_BANNER: 'WorkflowGroupApprovalBanner',\n ENTERPRISE_BEGINNERS_BOOK_MODAL: 'EnterpriseBookDownload',\n SUPPORT_MENU: 'HeaderSupportMenu',\n PAGE_VIEW_PRICING_ENTERPRISE: 'pageview_pricing/enterprise'\n};\n","/* eslint-disable max-len */\nexport const ALL_TEXTS = {\n DASHBOARD: 'DASHBOARD',\n ADD_AND_MANAGE_USERS: 'ADD & MANAGE USERS',\n ADMIN_CONSOLE_CAPITALIZED: 'ADMIN CONSOLE',\n ENTERPRISE_ADMIN_CONSOLE: 'Enterprise Admin Console',\n ENHANCE_COLLABORATION: 'Enhance Collaboration',\n CLOSE_MODAL: 'Close modal',\n CLOSE: 'Close',\n ENTERPRISE: 'ENTERPRISE',\n COLLABORATOR_AVATARS: 'Collaborator avatars',\n ENTERPRISE_CAPITALIZED: 'Enterprise',\n CREATE_USER_WITH_CUSTOM_PERMISSONS: 'Create User or Admin accounts with custom permission settings to use Jotform with your whole team.',\n CREATE_USER_WITH_CUSTOM_PERMISSONS_ALT: '[1[Upgrade to Jotform Enterprise]] and create User or Admin accounts with custom permission settings to use Jotform with your whole team.',\n MANAGE_YOUR_COMPANY_FROM_ONE_LOC: 'Manage your company from one central location',\n UPGRADE_TO_ENTERPRISE_TO_USE_JOTFORM_WITH_YOUR_TEAM: 'Upgrade to Enterprise to use Jotform with your team',\n CONTROL_WHO_CAN_ACCESS_YOUR_FORMS: 'Control who can access your forms and submissions with Jotform Enterprise’s customizable permission settings. Add members of your team as Users or Admins to work together while you stay in full control of your data.',\n CONTACT_SALES: 'Contact Sales',\n UPGRADE: 'Upgrade',\n LEARN_MORE: 'Learn More',\n APPLY_NOW: 'Apply Now',\n DISMISS: 'Dismiss',\n LOADING: 'Loading...',\n USE_JOTFORM_FOR_YOUR_ENTIRE_ORG: 'Use Jotform for your entire organization',\n ASSIGN_AT_ONCE: 'Upgrade to Jotform Enterprise today to assign forms to your entire organization at once and',\n COLLABORATE_WITH_COWORKERS: 'Collaborate with your coworkers',\n CONTROL_ACCESS_TO: 'Control access to forms and submissions',\n MANAGE_ALL_OF_YOUR_FORMS: 'Manage all of your forms and data from the Admin Console',\n UPGRADE_TO_JOTFORM_ENTERPRISE_TO_MANAGE_USER_DATA: 'Upgrade to Jotform Enterprise to manage user data across your organization',\n QUICKLY_ACCESS_USER_HISTORY_AND_PROFILE: 'Quickly access user history and profile configurations to manage forms and form data overall.',\n MANAGE_USERS_AND_THEIR_ACCESS: 'Manage Users and Their Access',\n REVIEW_ACTIVITY_LOG: 'Review Activity Log',\n KEEP_TRACK_OF_USER_ACTIONS: 'Keep track of user actions with the activity log. See who has logged in and when, as well as who has created an app, form, and more.',\n TAKE_YOUR_BUSINESS_COLLAB_TO_NEXT_STEP: 'Take your business’s collaboration to the next level. Upgrade to Jotform Enterprise today to securely manage data and users from one place. Users can give each other access to forms and form data, while admins manage all forms, data, and responses.',\n NEXT: 'Next',\n PREVIOUS: 'Previous',\n ENTERPRISE_ROCKET: 'Jotform Enterprise rocket',\n // slider items\n VIEW_ALL_FORM_STATS: 'View all form stats from your dashboard. Jotform Enterprise administrators can seamlessly review stats for submissions, forms, and views. You can even filter your data by time range — daily, weekly, and monthly — or choose a specific time frame to pinpoint the exact data you’re searching for.',\n SECURELY_MANAGE_DATA: 'Securely manage data and users from one central account. All your Enterprise users are listed, ensuring quick access to user history and profile configuration. Users can give each other access to their forms and form data, while admins will always have access to shared forms and data.',\n MANAGE_ALL_AVAILABLE_FORMS: 'Manage all available forms on your Enterprise server from a single page. Select individuals or multiple forms to change form ownership or delete forms. You can also easily export a list of your forms into an Excel or CSV file in just one click.',\n KEEP_TRACK_OF_USER: 'Keep track of and search for a specific user’s form responses across your entire organization with Jotform Enterprise. Easily create reports of an individual’s submissions with options to review every submission or delete them all at once.',\n USE_ACTIVITY_LOG: 'Use the Activity Log to track new forms, form modifications and deletions, data purges, logins, and submission edits and deletions. You can also create a consolidated service activity log and export it as an Excel or CSV file.',\n GET_A_PROFFESSIONAL_CUSTOM_APP: 'Get a professional, custom branded app for your team. Submit your request from the Admin Console, and we’ll build an app just for you. From the Mobile App tab, you can also track users and devices logged, as well as invite your users to download your app.',\n NO_MATTER_DEDICATED_SUPPORT: 'No matter what you’re using Jotform Enterprise for, we’ve got your back. Our support team works tirelessly to respond to your concerns quickly. From this tab, you can create support tickets and track all support tickets sent from your account.',\n CUSTOMIZE_LOOK_AND_FEEL: 'Customize the look and feel of your Admin Console and forms without any coding or design knowledge. Upload your company logo, create custom themes, choose a favicon, and add your company’s name and domain address. Additionally, you can integrate your Jotform Enterprise account with an identity provider platform to enable SSO and IP address restrictions.',\n // enterprise billing banner\n ARE_YOU_LOOKING_FOR_ENTERPRISE_FEATURES: 'Are you looking for [1[enterprise level]] features?',\n GET_UNLIMITED_ACCESS_TO_THE_TOOLS_YOU_NEED: 'Get unlimited access to the tools you need to improve your online forms and data collection.',\n CHECKOUT_JOTFORM_ENTERPRISE: 'Check out Jotform Enterprise',\n // enterprise white labeling banner\n FULLY_CUSTOMIZE: 'Fully Customize with Enterprise',\n FULLY_INCORPORATE: 'Fully incorporate your brand into Jotform. Enjoy a personalized look without having to build your own product from scratch.',\n CUSTOMIZE_SSO: 'Customize our platform to match with your brand. Get custom domains and form URLs as well as single sign-on (SSO).',\n // enterprise goverment modal\n GOVERNMENT_SOLUTION_TITLE: 'Government Enterprise Solutions',\n GOVERNMENT_SOLUTION_SUB_TITLE: 'MORE POWER MORE SUPPORT',\n GOVERNMENT_SOC: 'SOC2, FERPA, HIPAA, PCI',\n GOVERNMENT_MULTIUSER: 'Multiuser Environment',\n GOVERNMENT_SSO: 'Single Sign On (SSO)',\n GOVERNMENT_ADMIN_DASHBOARD: 'Admin Dashboard',\n GOVERNMENT_UNLIMITED: 'Unlimited everything',\n // account box enterprise property modal\n GET_RID_OF_LIMITS: 'Get rid off all your limits!',\n CONGRATULATIONS: 'Congratulations!',\n EXCLUSIVE_ENTERPRISE_FEATURES: 'Start using all exclusive Enterprise features with your team.',\n YOU_MAY_CONSIDER_UPGRADING: 'You have received more than [1[{usagePhrase}]] so far! You may consider upgrading to [2[Jotform Enterprise]] and get rid of all your limits.',\n DEDICATED_SUPPORT_SUB_TITLE: 'Jotform Enterprise',\n DEDICATED_SUPPORT: 'Need Dedicated Support?',\n DEDICATED_SUPPORT_CONTENT: 'Get a dedicated support team with Jotform Enterprise.',\n\n JOTFORM_ENTERPRISE: 'Jotform Enterprise',\n JOTFORM_ENTERPRISE_CAPITALIZED: 'JOTFORM ENTERPRISE',\n COMPLETE_CUSTOMIZATION: 'Complete Customization with Enterprise',\n COMPLETE_CUSTOMIZATION_CONTENT: 'Create a seamless customer experience by white labeling your forms to showcase your company. Without coding, you can fully customize forms to match your branding, create custom form URLs, and even use your custom domain via Jotform Enterprise.',\n COMPLETE_CUSTOMIZATION_COMPANY_SETTINGS: 'Jotform Enterprise company settings',\n\n ACCESS_CONTROL: 'Stay in Full Control of Your Data',\n ACCESS_CONTROL_CONTENT: 'With a multiuser Jotform Enterprise plan, you can grant form access to multiple users. You’ll have full control over permission settings — add or delete users, filter your user list, send notifications, and review user activity for easy user management.',\n ACCESS_CONTROL_USERS_DASHBOARD: 'Jotform Enterprise user management dashboard',\n\n // webhook integration\n WEBHOOK_TITLE: 'White label your Jotform experience',\n WEBHOOK_CONTENT: 'Add your branding to all aspects of Jotform with Enterprise',\n\n // non profit lightbox\n FREE_WEBINAR_NONPROFIT_TITLE: 'Free Webinar for Nonprofits',\n FREE_WEBINAR_NONPROFIT_DATE: 'Thursday, February 9, 2023/11am PST',\n FREE_WEBINAR_NONPROFIT_DESCRIPTION: 'Increase Your Nonprofit’s Impact with the Right Technology',\n\n WEBINAR_NONPROFIT_DETAIL_TITLE: 'You’ll find out how to:',\n WEBINAR_NONPROFIT_DETAIL_IMPACT: 'Demonstrate impact',\n WEBINAR_NONPROFIT_DETAIL_COST: 'Control costs',\n WEBINAR_NONPROFIT_DETAIL_TRANSPARENCY: 'Improve transparency',\n WEBINAR_NONPROFIT_DETAIL_EXPLANATION: 'Join us to learn more and get additional valuable resources.',\n WEBINAR_NONPROFIT_FORM_TITLE: 'Please fill the related fields and get registered.',\n\n WEBINAR_NONPROFIT_SAVE_CTA: 'Save your seat!',\n WEBINAR_NONPROFIT_NOT_INTERESTED_CTA: 'Not interested',\n\n GET_CUSTOM_DOMAIN: '[1[Get custom domain with]] [2[Jotform Enterprise]]',\n\n ENTERPRISE_DO_YOU_WANT_DOMAIN_NAME: 'Do you want to use your own domain name?',\n WANT_TO_USE_YOUR_OWN_DOMAIN: 'Want to use your own domain name?',\n ENTERPRISE_TRY_JOTFORM: 'Try Jotform Enterprise!',\n APPLY_FOR_ENTERPRISE: 'Apply for Jotform Enterprise',\n CONTACT_SALES_REPRESENTATIVE: 'Contact Jotform Enterprise sales representative',\n\n APPLY_FOR_DEDICATED_ZOOM_SUPPORT: 'Apply for Enterprise to schedule Zoom calls with a dedicated support team.',\n LEARN_MORE_ABOUT_JOTFORM_ENTERPRISE: 'Learn more about Jotform Enterprise',\n CONTACT_ENTERPRISE_SALES_REPRESENTATIVE: 'Contact Enterprise sales representative',\n\n BOOST_COLLABORATION_WITH_ENTERPRISE: 'Boost collaboration with Enterprise',\n ADD_MULTIPLE_USERS: 'Add multiple users to work together with your team',\n\n HEALTHCARE_REPORT_TITLE: 'Get the latest insights on 2024 healthcare trends',\n HEALTHCARE_REPORT_GET_INSIGHTS: 'Get insights now!',\n HEALTHCARE_REPORT_DISMISS: 'Dismiss this banner',\n\n HEALTHCARE_REPORT_MODAL_MOBILE_TITLE: 'Get the latest insights on [1[2023]] healthcare trends.',\n HEALTHCARE_REPORT_MODAL_TITLE: 'Get the latest insights.',\n HEALTHCARE_REPORT_MODAL_CONTENT: 'Fill the form and get 2024 Healthcare Industry Trends report via email.',\n\n NEED_PROFESSIONAL_SOLUTIONS: 'Need enterprise level solutions?',\n NEED_PROFESSIONAL_SOLUTIONS_CONTENT: 'Try Jotform Enterprise with your team!',\n\n UPGRADE_TO_JOTFORM_ENTERPRISE_AND_START_MANAGING: 'Upgrade to [1[Jotform Enterprise]] and start managing your company from one central location.',\n\n CUSTOM_DOMAIN_API: 'Make your API url [1[your-domain.com/API]] or [2[subdomain.jotform.com/API]] instead of api.jotform.com with [3[Enterprise]].',\n\n ENTERPRISE_LEVEL_ANALYTICS_TITLE: 'Manage your company from one central location',\n ENTERPRISE_LEVEL_ANALYTICS_CONTENT: 'Manage user access, forms, and audit logs from a powerful Admin Console. Analyze data to reveal important insights.',\n ENTERPRISE_LEVEL_ANALYTICS_GRAPH: 'Jotform Enterprise line graph',\n\n WHITE_LABEL_TITLE: 'Want more customization?',\n WHITE_LABEL_CONTENT: 'White label your experience with Jotform Enterprise. Add your branding, create custom URLs, and use your own domain.',\n WHITE_LABEL_LOGO_PLACEMENT_ANIMATION: 'Logo placement animation',\n\n JOTFORM_GOVERNMENT_TITLE: 'JOTFORM GOVERNMENT',\n JOTFORM_ENTERPRISE_TITLE: 'JOTFORM ENTERPRISE',\n AUSTRALIAN_DATA_RESIDENCY_MODAL_TITLE: 'Need to store data in [1[Australia]]? Contact our [1[Enterprise]] team to start complying with regulations.',\n HONG_KONG_DATA_RESIDENCY_MODAL_TITLE: 'Unlock advanced data security in Hong Kong',\n HONG_KONG_DATA_RESIDENCY_MODAL_DESCRIPTION: 'Explore enterprise solutions with enhanced security and compliance features tailored for Hong Kong-based organizations.',\n SINGAPORE_DATA_RESIDENCY_MODAL_TITLE: 'Unlock advanced data security in Singapore',\n SINGAPORE_DATA_RESIDENCY_MODAL_DESCRIPTION: 'Explore enterprise solutions with enhanced security and compliance features tailored for Singapore-based organizations.',\n\n LUNCH_LEARN_TITLE: 'LUNCH & LEARN SERIES',\n\n LUNCH_LEARN_CONTENT_SESSION_1: '[1[Next Session:]] How to white label',\n LUNCH_LEARN_CONTENT_SESSION_2: '[1[Next Session:]] How to manage your server as a server admin',\n LUNCH_LEARN_CONTENT_SESSION_3: '[1[Next Session:]] How to manage Teams',\n LUNCH_LEARN_CONTENT_SESSION_4: '[1[Next Session:]] How to use Jotform Sign',\n LUNCH_LEARN_CONTENT_SESSION_5: '[1[Next Session:]] How to configure single sign-on (SSO) and Prefill',\n LUNCH_LEARN_CONTENT_SESSION_6: '[1[Next Session:]] Intro to app building',\n\n LUNCH_LEARN_CLOSE: 'Close Lunch and Learn Banner',\n LUNCH_LEARN_SAVE_YOUR_SEAT: 'Save your seat!',\n\n STORE_DATA_IN_AUSTRALIA_CONTENT: 'Store your data only in Australia (Sydney) with [1[Jotform Enterprise]].',\n\n LUNCH_LEARN_MODAL_SUP_TITLE: 'COMING SOON',\n LUNCH_LEARN_MODAL_TITLE: 'Join Enterprise Lunch & Learn sessions',\n LUNCH_LEARN_MODAL_CONTENT: 'Join our customer success team to learn about forms, tables, approvals, and report basics; get guidance for server management and SSO configuration; or level up with conditional logic, prefill, payments, and more.',\n LUNCH_LEARN_MODAL_SAVE_SPOT: 'Save Your Spot!',\n LUNCH_LEARN_MODAL_LEARN_DETAILS: 'See details',\n LIVE: 'LIVE',\n JOIN_NOW: 'Join now!',\n NEVER_SHOW_THIS_CONTENT: 'Never show this content again.',\n\n IP_RESTRICTION_TITLE: 'Go pro with Jotform Enterprise',\n IP_RESTRICTION_CONTENT: 'Need to limit access? Switch to Jotform Enterprise for an extra layer of security.',\n IP_RESTRICTION_DISCOVER: 'Discover More',\n IP_WORLD: 'World map with IP pointer',\n\n COST_CUTTING_WEBINAR_BADGE: 'FREE',\n COST_CUTTING_WEBINAR_TITLE: 'Join our webinar',\n COST_CUTTING_WEBINAR_DATE: 'Tuesday, March 21, at 11 a.m. PT',\n COST_CUTTING_WEBINAR_DATE_SHORT: 'March 21, at 11 a.m. PT',\n COST_CUTTING_WEBINAR_EXPLANATION: '3 ways to cut costs from business processes',\n FREE_WEBINAR_BADGE: 'FREE WEBINAR',\n SAVE_SPOT_CTA: 'Save your spot!',\n COST_CUTTING_WEBINAR_FILL_MESSAGE: 'Please fill the related fields and get registered.',\n\n ADMIN_CONSOLE_DARK_MODAL_DESCRIPTION: 'Contact an [1[Enterprise]] sales representative to start managing your company from one central location',\n ADMIN_CONSOLE_DARK_MODAL_DESCRIPTION_V2: 'Get a free consultation for [1[Jotform Enterprise]] and start managing your company from one [2[central location]]',\n SHORT_LEAD_FORM_TITLE: 'JotForm Enterprise Sales Contact Request- Content Team - Short version',\n\n SAVE: 'save',\n DISCOUNT_PERCENTAGE: '[1[30]] [2[%]]',\n APPLY_ENTERPRISE_DISCOUNT: 'Apply for your Enterprise {discount_type} discount',\n\n GROUP_APPROVAL_BANNER_CONTENT: 'Upgrade to Jotform Enterprise to add more approvers',\n\n FIELD_SERVICE_WEBINAR_BADGE: 'FREE WEBINAR',\n FIELD_SERVICE_WEBINAR_EXPLANATION: '3 steps to safer, more sustainable field service operations',\n FIELD_SERVICE_WEBINAR_DATE: 'Tuesday, April 25, at 11 a.m. PT',\n\n HR_WEBINAR_BADGE: 'FREE HR WEBINAR',\n HR_WEBINAR_EXPLANATION: 'Less paperwork. More empowerment. HR automation that works.',\n HR_WEBINAR_DATE: 'Thursday, February 8, at 11 a.m. PT',\n\n HEALTHCARE_TECHNOLOGY_BADGE: 'FREE NON-PROFIT WEBINAR',\n HEALTHCARE_TECHNOLOGY_EXPLANATION: 'Surprising ways to delight donors with forms',\n HEALTHCARE_TECHNOLOGY_DATE: 'Thursday, March 21 at 11 a.m. PT',\n\n BOOK_CONSULTATION: 'Book Consultation',\n YOUR_INFO: 'YOUR INFO',\n CHOOSE_TIME: 'CHOOSE TIME',\n\n USERS_SECTION_TITLE: 'Contact an [1[Enterprise]] sales representative to add multiple users and manage them across your entire organization with powerful administrative features.',\n USERS_HEADER_ALT: 'Jotform Enterprise User Preview',\n USERS_FOOTER_ALT: 'Jotform Enterprise Admin and Regular User Preview',\n\n PRIVACY_CONCERN_WEBINAR_BADGE: 'FREE WEBINAR',\n PRIVACY_CONCERN_WEBINAR_EXPLANATION: 'How to manage customer data in an era of privacy concerns',\n PRIVACY_CONCERN_WEBINAR_DATE: 'Thursday, May 18, at 11 a.m. PT',\n\n GOVERNMENT_SOLUTION_TAILORED_TITLE: 'Get tailored solutions for your government agency',\n GOVERNMENT_LIST1: 'SOC 2, FERPA, HIPAA, PCI',\n GOVERNMENT_LIST1_WITHOUT_SOC2: 'FERPA, HIPAA, PCI',\n GOVERNMENT_LIST2: 'Multiuser environment',\n GOVERNMENT_LIST3: 'Single Sign-On (SSO)',\n GOVERNMENT_LIST4: 'Admin dashboard',\n GOVERNMENT_LIST5: 'Unlimited everything',\n\n GET_30_PERCENT_ED_TECH: 'Get [1[30% off]] powerful EdTech features with Jotform Enterprise',\n MULTIPLE_USERS: 'Multiple users',\n\n EARNED_BADGES_TITLE: 'Jotform received [1[500+]] software review awards',\n READ_THE_REPORT: 'Read the Report',\n\n EXPANDABLE_ADMIN_CONSOLE_CONTENT: 'Apply to [1[Jotform Enterprise]] to start managing your company from one central location',\n\n JOTFORM_TEAMS_MODAL_CONTENT: 'Contact an Enterprise sales representative to start using Jotform with your whole team',\n JOTFORM_TEAMS_MODAL_CONTENT_ALT: 'Get your whole team on board with Jotform Enterprise',\n ENTERPRISE_ONLY: 'ENTERPRISE ONLY',\n JOTFORM_TEAMS_MODAL_CONTENT_ALT_CLEAR: 'Upgrade to Enterprise to get your team on board',\n\n TEAM_LIMITATION_MODAL_PRE_CONTENT: 'You have reached your team creation limits.',\n TEAM_LIMITATION_MODAL_CONTENT: 'Contact an Enterprise sales representative to create unlimited teams for your organization.',\n\n APPLY_FOR_ENTERPRISE_ORGANIZATION: 'Contact an Enterprise sales representative to start using Jotform with your whole organization',\n CONTACT_FOR_TEAM_ON_BOARD: 'Contact an Enterprise sales representative to bring your team on board',\n\n PRICING_TABLE_MODAL_CONTENT: 'Send request to contact with Jotform representative',\n\n UNLIMITED_USAGE: 'Unlimited Usage',\n MULTIUSER_ENVIRONMENT: 'Multiuser Environment',\n SLA: 'Service Level Agreements (SLA)',\n HIPAA_COMPLIANCE_AVAILABLE: 'HIPAA Compliance Features Available',\n CUSTOM_DOMAIN: 'Custom Domain',\n PRIORITY_REAL_TIME_SUPPORT: 'Priority Real-Time Support',\n LOCAL_DATA_RESIDENCY_OPTION: 'Local Data Residency Option',\n SSO_INTEGRATIONS: 'Single Sign-On (SSO) Integrations',\n\n DISCOUNT: 'DISCOUNT',\n GET_DISCOUNT: 'GET DISCOUNT',\n\n APPLY_BRONZE_EDUCATION_DISCOUNT: 'Apply for Bronze plan education discount and save 50%',\n APPLY_SILVER_EDUCATION_DISCOUNT: 'Apply for Silver plan education discount and save 50%',\n APPLY_GOLD_EDUCATION_DISCOUNT: 'Apply for Gold plan education discount and save 50%',\n ENTERPRISE_DISCOUNT_EDUCATION_DESCRIPTION: 'Apply for Jotform Enterprise and get a 30% education discount',\n\n APPLY_BRONZE_NONPROFIT_DISCOUNT: 'Apply for Bronze plan nonprofit discount and save 50%',\n APPLY_SILVER_NONPROFIT_DISCOUNT: 'Apply for Silver plan nonprofit discount and save 50%',\n APPLY_GOLD_NONPROFIT_DISCOUNT: 'Apply for Gold plan nonprofit discount and save 50%',\n ENTERPRISE_DISCOUNT_NONPROFIT_DESCRIPTION: 'Apply for Jotform Enterprise and get a 30% nonprofit discount',\n\n BRONZE_PLAN: 'Bronze',\n SILVER_PLAN: 'Silver',\n GOLD_PLAN: 'Gold',\n\n WEBINAR_BADGE: 'FREE WEBINAR',\n\n AUTOMATE_ORGANIZATION_PROCESS: 'Automate your organization’s processes',\n APPLY_FOR_POWERFUL_AUTOMATION: 'Apply for Jotform Enterprise to get access to powerful automation features and a multiuser environment.',\n GET_YOUR_TEAM_ONBOARD: 'GET YOUR TEAM ON BOARD',\n GET_YOUR_TEAM_EXPLANATION: 'Apply to Jotform Enterprise and maximize your teamwork potential with Enterprise’s multiuser capabilities.',\n GET_YOUR_TEAM_EXPLANATION_V2: 'Maximize your teamwork with Jotform Enterprise’s multiuser features.',\n\n HEALTHCARE_WEBINAR_PROMOTION_MODAL_DESCRIPTION: 'Healthcare automation strategies for streamlined operations',\n HEALTHCARE_WEBINAR_PROMOTION_DATE: 'Thursday, July 20, at 11 a.m. PT',\n\n EDUCATION_REPORT_DOWNLOAD_TITLE: 'Fill out the form and get the educator’s technology toolkit via email',\n EDUCATION_REPORT_TITLE: 'Get the latest insights.',\n EDUCATION_REPORT_EXPLANATION: 'Fill out the form and get the educator’s technology toolkit via email.',\n\n LUNCH_LEARN: 'LUNCH & LEARN',\n LUNCH_LEARN_DESCRIPTION: 'Save your seat for upcoming Lunch & Learn sessions',\n\n ENTERPRISE_SECURITY_ITEM_SSO: 'Enable Single Sign-On.',\n ENTERPRISE_SECURITY_ITEM_SPECIFIED_IP: 'Allow access only to a specified IP.',\n ENTERPRISE_SECURITY_ITEM_AUTOMATIC_LOGOUT: 'Activate automatic logout.',\n\n SEGMENTED_MODAL_VIRGIN_ISLAND_ALT: 'Virgin Island Logo',\n SEGMENTED_MODAL_STAFFORDSHIRE_POLICE_ALT: 'Staffordshire Police Logo',\n SEGMENTED_MODAL_COUNTY_OF_MARIN_ALT: 'County of Marin Logo',\n SEGMENTED_MODAL_SAN_ANTONIO_ALT: 'San Antonio Logo',\n SEGMENTED_MODAL_BRUSSELS_ALT: 'Brussels Logo',\n SEGMENTED_MODAL_BERKELEY_ALT: 'Berkeley Logo',\n\n MAXIMUM_IMPACT_WEBINAR_DESCRIPTION: 'Maximum Impact: 5 ways to automate year-end giving',\n MAXIMUM_IMPACT_WEBINAR_DATE: 'Thursday, August 24, at 11 a.m. PT',\n\n HEALTHCARE_FUTURE_WEBINAR_DESCRIPTION: 'Powering healthcare’s future with form automation',\n HEALTHCARE_FUTURE_WEBINAR_DATE: 'Thursday, April 25, at 11 a.m. PT',\n\n BEFORE_YOU_GO: 'BEFORE YOU GO',\n ADV_TITLE_1: 'Request a free demo to learn more about the advanced features of Jotform Enterprise',\n\n ADV_BANNER_TITLE: 'Don\\'t miss your chance to improve your business operations with Jotform Enterprise!',\n ADV_BANNER_DESCRIPTION: 'Get a free demo in which you will be told the Enterprise solutions that will benefit your business.',\n REQUEST_A_DEMO: 'Request a Demo',\n NOT_NOW: 'Not Now',\n\n FOMO_MODAL_BADGE: 'ACT FAST & SAVE',\n FOMO_TITLE: 'Jotform Enterprise Price Adjustment',\n FOMO_DATE: 'Act before October 1',\n FOMO_GREETING: 'On October 1st, Jotform Enterprise will have a price adjustment.Don’t miss your chance to save and lock in our current pricing.',\n FOMO_CONTENT: 'Contact the Enterprise Sales team today to sign up before October 1.',\n FOMO_THANK_YOU: 'Thank You',\n FOMO_THANK_YOU_SUB_TITLE: 'Our sales representative will get in touch with you shortly.',\n\n FORMS: 'Forms',\n MONTHLY_SUBMISSION: 'Monthly Submissions',\n SIGNED_DOCUMENTS: 'Signed Documents',\n SUBMISSION_STORAGE: 'Submission Storage',\n PAYMENT_SUBMISSIONS: 'Payment Submissions',\n API_AND_MORE: 'API [1[and more...]] ',\n MULTIUSER_PLATFORM: 'Multiuser Platform',\n MULTIPLE_TEAMS_AND_USERS: 'Multiple Teams and Users',\n DEDICATED_SUPPORT_LIST: 'Dedicated Support',\n USER_MANAGEMENT: 'User Management',\n USER_ACCESS_CONTROL: 'User Access Control',\n SINGLE_SIGN_ON: 'Single Sign-On',\n SINGLE_SIGN_ON_EXAMPLE: 'Microsoft, Google, Okta & more...',\n SLA_SHORT: 'SLA',\n SLA_EXPLANATION: 'Service Level Agreements',\n DATA_RESIDENCY: 'Data Residency',\n LOCAL_RESIDENCY: 'Local Residency & Dedicated Server',\n PROFESSIONAL_SERVICES: 'Professional Services',\n FORM_AND_WORKFLOW_SERVICES: 'Form & Workflow Building Services',\n HIPAA_COMPLIANCE_AVAILABLE_SHORT: 'HIPAA Compliance Features Available',\n CUSTOM_BRANDING_DOMAIN: 'Custom Branding & Domain',\n SHOW_ALL: 'Show all',\n\n BLOG_CONTENT_SPEED_UP_BANNER_TITLE: 'Speed up your workflows and improve efficiency with Jotform Enterprise',\n BLOG_CONTENT_SPEED_UP_BANNER_DIVIDER: 'OR FOR ADVANCED SOLUTIONS',\n BLOG_CONTENT_BOOST_BANNER_TITLE: 'Ready to boost your company’s productivity?',\n BLOG_CONTENT_SIDE_BANNER_TITLE: 'Need Jotform for your organization?',\n BLOG_CONTENT_SIDE_BANNER_DESCRIPTION: 'Contact us to book a demo and learn more about Enterprise-level features.',\n\n BLOG_CONTENT_BANNER_SIGN_UP_CTA: 'Sign Up',\n BLOG_CONTENT_BANNER_CUSTOM_QUOTE_CTA: 'Get Custom Quote',\n\n DEDICATED_SUPPORT_DESC: 'Apply to Jotform Enterprise to get access to a dedicated support team',\n DEDICATED_SUPPORT_DESC_ALT: 'Contact an Enteprise sales [1[representative to get access to a]] dedicated support team',\n\n FASTER_SUPPORT_RESP_BANNER_DESC: 'Get faster responses from a dedicated support team with Jotform Enterprise',\n PRIORITIZE_QUESTION: 'Turn On Faster Responses',\n\n FASTER_SUPPORT_RESP_MODAL_DESC: 'Apply for Enterprise to get faster responses from a dedicated support team',\n\n CONTACT_FOR_DEDICATED_SUPPORT_TEAM: 'Contact an Enterprise sales [1[representative to get access to a]] dedicated support team',\n\n CONTACT_ENTERPRISE: 'Contact Enterprise',\n SEE_PLAN_DETAILS: 'See plan details',\n CUSTOM_PRICING: 'Custom Pricing',\n USER_MANAGEMENT_AND_ACCESS_CONTROL: 'User Management & Access Control',\n LOCAL_DATA_RESIDENCY: 'Local Data Residency',\n CUSTOM_BRANDING: 'Custom Branding',\n ENTERPRISE_CONTACT_FORM: 'Enterprise Contact Form',\n EDUCATION_AND_NONPROFIT_DISCOUNT: '30% Off for Educators & Nonprofits',\n EDUCATION_AND_NONPROFIT_DISCOUNT_EXPLANATION: 'Request a quote to apply for a discount',\n TRUSTED_PLUS_TEXT: 'Trusted by 100+',\n LEADING_COMPANIES: 'Leading Companies',\n\n ED_TECH_WEBINAR_DESCRIPTION: 'EdTech tips to speed up administration and slash costs',\n ED_TECH_WEBINAR_DATE: 'Thursday, September 28, at 11 a.m. PT',\n\n SURE_TO_GO_BACK: 'Are you sure you want to go back to the pricing page?',\n GO_TO_PRICING: 'Go to Pricing',\n STAY: 'Stay',\n REQUEST_RECEIVED: 'Request received',\n THANKS_FOR_GETTING_TOUCH: 'Thanks for getting in touch. Our sales team will respond to you shortly.',\n\n BLOG_BANNER_MODAL_TITLE: 'Contact us to book a demo & learn more about Enterprise-level features',\n\n GET_HANDS_ON_PROFESSIONAL_SERVICES: 'Get hands-on help from Jotform Enterprise Professional Services',\n GET_HANDS_ON_PROFESSIONAL_SERVICES_DESCRIPTION: 'Fast-track onboarding, implementation, and more with a team committed to your success.',\n GET_A_QUOTE: 'Get a Quote',\n SESSIONS_BANNER_TEXT: '[1[Add multiple users to your account with Jotform Enterprise!]] You can add or delete users, review user activity.',\n\n SSO_ACCESS_TITLE: 'Access forms using Single Sign-On (SSO)',\n SSO_ACCESS_DESCRIPTION: 'Use a single set of login credentials to access and manage your forms with Jotform Enterprise.',\n\n SSO_PREFILL_TITLE: 'Single Sign-On Prefill',\n SSO_PREFILL_DESCRIPTION: 'Jotform Enterprise offers single sign-on configuration. With this configuration you can pre-populate your form fields with data from SSO provider.',\n\n APPLY_ENTERPRISE_FOR_SSO_PREFILL: 'Apply for Enterprise to start using Single Sign-On (SSO) prefill',\n CONTACT_ENTERPRISE_SALES_SSO_PREFILL: 'Contact an Enterprise sales representative to enable Single Sign-On (SSO) Prefill',\n\n WITHOUT_CODING_FULLY_CUSTOMIZE_JOTFORM: 'Without coding, you can fully customize Jotform to match your branding. Get custom domains and form URLs as well as single sign-on (SSO).',\n WANT_TO_CUSTOMIZE_WORKFLOW: 'Want to customize workflow pages with your company colors and logo?',\n\n NHS_TITLE: 'Elevate Data Security, Elevate Trust',\n NHS_DESCRIPTION: 'Unlock tailored enterprise solutions for your trust, backed by top-tier security compliance, all within UK borders.',\n SCHEDULE_MEETING: 'Schedule a Meeting',\n\n SCHEDULE: 'Schedule',\n HEY_THERE: 'Hi there,',\n EXCLUSIVE_OFFER_FOR_YOU: 'Exclusive offer for you!',\n CHOOSE_MEETING_TIME_EDUCATION: 'Choose a 10-minute time slot to chat with me. I\\'d love to help you get the most out of Jotform Enterprise\\'s EdTech features and share my experience.',\n CONTACT_WITH_ME_UNLOCK_EDUCATION: 'Contact me to unlock a 30% discount on our Enterprise plan tailored for the education industry. Let’s discuss how our EdTech features can supercharge your organization.',\n BEST: 'Best,',\n AUSTIN_FOLEY: 'Austin Foley',\n EDUCATION_VERTICAL_SPECIALIST: 'Education Vertical Specialist',\n CONTACT_NOW: 'Contact Now',\n\n APPLY_FULLY_BRANDED_EXPERIENCE: 'Apply for Jotform Enterprise to build a fully branded experience',\n CONTACT_SALES_REPRESENTATIVE_BRANDED_EXPERIENCE: 'Contact an Enterprise sales representative to use your own domain name',\n\n APPLY_ENTERPRISE_TO_GET_DISCOUNT_ED_TECH: 'Contact Enterprise sales representative to get 30% off powerful EdTech features',\n APPLY_ENTERPRISE_TO_GET_DISCOUNT_ED_TECH_LINED: 'Contact Enterprise sales representative to get 30% off powerful EdTech features',\n FERPA_COMPLIANCE: 'FERPA Compliance Badge',\n HIPAA_COMPLIANCE: 'HIPAA Compliance Badge',\n SOC2_COMPLIANCE: 'SOC2 Compliance Badge',\n GDPR_COMPLIANCE: 'GDPR Compliance Badge',\n PCI_COMPLIANCE: 'PCI Compliance Badge',\n BIT_256_SSL: '256 Bit SSL Encryption Badge',\n\n EDUCATION_DISCOUNT_PERCENT: '30% Education Discount',\n\n GET_HANDS_ON_HELP: 'Get hands-on help with setup, training, and more',\n TAKE_ADVANTAGE_OF_EXPERT_LED_BUILD: 'Take advantage of expert-led builds and training to optimize your workflow and empower your team. Apply for Jotform Enterprise Professional Services today.',\n\n APPLY_ENTERPRISE_TO_GET_PROFESSIONAL_SERVICES: 'Apply for Enterprise to get [1[professional services]]',\n\n PERCENT_30: '30%',\n PERCENT_30_OFF: '30% off',\n JOIN_AND_GET_30_PERCENT_EDU_DISCOUNT: 'Join and get 30% Education Discount',\n\n APPLY_ENTERPRISE_TO_GET_LIVE_ZOOM_SUPPORT: '[1[Apply for Enterprise to get]] live Zoom support',\n ZOOM_MEETING_VISUAL_DESCRIPTION: 'Enterprise user and Jotform Enterprise Representative Zoom Meeting',\n SCHEDULE_ZOOM_MEETING: 'Schedule Zoom Meeting',\n\n MORE_POWER_MORE_SUPPORT: 'More power. More support.',\n JOTFORM_ENTERPRISE_SSO_FEATURE: 'If you would like to use Require SSO feature please check out Jotform Enterprise.',\n\n JOTFORM_ENTERPRISE_OFFERS_SSO: 'Jotform Enterprise offers single sign-on configuration. With this configuration you can pre-populate your form fields with data from SSO provider.',\n FULL_NAME: 'Full Name',\n PHONE_NUMBER: 'Phone Number',\n JOB_TITLE: 'Job Title',\n UPGRADE_TO_ENTERPRISE: 'Upgrade to Enterprise',\n UPGRADE_TO_JOTFORM_ENTERPRISE: 'Upgrade to Jotform Enterprise',\n\n TOP_NOTCH_SECURITY: 'Top-Notch Security',\n HOST_YOUR_DATA_IN_ANY_PART_OF_THE_WORLD: 'Host your data anywhere in the world with local data residency. Your data is protected by 256-bit SSL, PCI DSS Level 1 certification, and the option to enable HIPAA compliance features.',\n LOCAL_DATA_RESIDENCY_BANNER: 'Local data residency banner',\n\n SSO_PREFILL: 'SSO PREFILL',\n SSO_PREFILL_APPLY_TITLE: 'Apply for Jotform Enterprise to enable single sign-on prefill',\n SSO_PREFILL_PROVIDER_DESCRIPTION: 'Jotform Enterprise offers single sign-on configuration which you can pre-populate your form fields with data from SSO provider.',\n\n APPLY_ENTERPRISE_TO_HOST_ANYWHERE: 'Apply for Enterprise to host your data anywhere in the world',\n DATA_PROTECTION_SSL_PCI_DSS: 'Protect your data with 256-bit SSL, PCI DSS Level 1 certification, and the option to enable HIPAA compliance features.',\n\n REACHED_FOLDER_LIMIT: 'You’ve reached your [1[folder limit]]',\n APPLY_FOR_ENTERPRISE_FOLDER: 'Contact an Enterprise sales representative to create unlimited folders and expertly organize your forms [1[and data.]]',\n\n PLEASE_SUBMIT_EMAIL: 'To get access to this content, please submit your email.',\n\n GET_REAL_TIME_SUPPORT: 'Apply for Enterprise to get real-time support',\n APPLY_ENTERPRISE_TO_GET_REAL_TIME_SUPPORT: 'Apply for Enterprise to get real-time support',\n\n FQHC_TITLE: 'Request a meeting with an Enterprise expert with insights into how Jotform Enterprise helps FQHC',\n\n DEDICATED_VIDEO_CHAT: 'Get dedicated video chat support',\n DEDICATED_VIDEO_CHAT_MODAL_DESC: 'Apply for Enterprise to get dedicated video chat support',\n\n APPLY_ENTERPRISE_FOR_SPECIFIC_LOCATION: '[1[Contact an Enterprise sales]] representative to store your data in a specific location',\n\n ENTERPRISE_DATA_CENTERS: 'Enterprise Data Centers',\n STORE_DATA_IN_SPECIFIC_LOCATION: 'Store my data in a specific location',\n SELECT_DATA_CENTER: 'Select data center',\n SEARCH: 'Search',\n\n THIS_FEATURE_AVAILABLE_FOR_ENTERPRISE: 'This feature is available only with [1[Jotform Enterprise]]',\n\n ENTERPRISE_FEATURE: 'Enterprise feature',\n\n APPLY_ENTERPRISE_TO_ENABLE_SSO: 'Apply for Enterprise to enable Single Sign-On (SSO)',\n SSO_MODAL_VISUAL_DESCRIPTION: 'SSO Login Preview',\n\n GET_ACCESS_TO_SYSTEM_LOGS: 'Get access to system logs for powerful Enterprise reporting',\n TRACK_ALL_OUTGOING_MESSAGES: 'Track all outgoing emails and integration actions for your Enterprise team.',\n TRACK_ALL_OUTGOING_EMAILS: '[1[Contact an Enterprise sales representative]] to track all outgoing emails with system logs',\n APPLY_ENTERPRISE_TO_TRACK_ALL_OUTGOING_EMAILS: 'Apply for Enterprise to track all outgoing emails and integration actions',\n\n APPLY_ENTERPRISE_TO_ENABLE_SSO_PREFILL: 'Apply for Enterprise to enable Single Sign-On (SSO) Prefill',\n APPLY_ENTERPRISE_TO_ENABLE_SSO_PREFILL_DESCRIPTION: 'Jotform Enterprise lets you pre-populate fields using data from your SSO provider. You’ll also get unlimited forms, submissions, and more!',\n SSO_PREFILL_VISUAL_EXPLANATION: 'Single Sign-On (SSO) Prefill Preview',\n\n YOUR_DOMAIN: 'https://www.[1[yourdomain]].ext/login',\n YOUR_LOGO: 'Your Logo',\n\n GET_THE_APP: 'Get the App',\n ITS_FREE: 'It\\'s Free!',\n JOTFORM_IS_ON_APP_EXCHANGE: 'Jotform is now on Salesforce AppExchange!',\n USE_JOTFORM_WITHOUT_LEAVING_SALESFORCE: 'Use Jotform without leaving Salesforce',\n CONTACT_SALES_TO_USE_JOTFORM_WITHOUT_LEAVING_SALESFORCE: 'Start using Jotform right from your [1[Salesforce dashboard]]',\n CONTACT_OUR_SALES_TEAM_TO_USE_JOTFORM_IN_SALESFORCE: 'Contact our sales team to use Jotform in Salesforce',\n APPEXCHANGE_MODAL_VISUAL_DESCRIPTION: 'Jotform and Salesforce Icons',\n\n THANK_YOU_FOR_DOWNLOADING: 'Thank you for downloading',\n THANK_YOU_FOR_DOWNLOADING_EXPLANATION: 'Request a free demo to learn more about the advanced features of Jotform Enterprise',\n\n DOWNLOAD_JOTFORM_ENTERPRISE_FOR_BEGINNERS: 'Download Jotform Enterprise for Beginners',\n DOWNLOAD_JOTFORM_ENTERPRISE_FOR_BEGINNERS_EXPLANATION: 'Please fill out the form below to download the book ',\n\n NEED_PROFESSIONAL_SERVICE: 'Need professional services? Upgrade to Jotform Enterprise',\n DISCOVER_NOW: 'Discover Now',\n\n DEDICATED_SUPPORT_SECTION_DESCRIPTION: 'Get a dedicated support team with Jotform Enterprise.',\n DEDICATED_SUPPORT_BANNER_DESCRIPTION: 'Want real-time support? Get dedicated support team with Jotform Enterprise.',\n GET_NOW: 'Get Now',\n APPLY_TO_JOTFORM_ENTERPRISE_PLAN: 'Apply to Jotform Enterprise Plan',\n\n CONTACT_SALES_REPRESENTATIVE_DEDICATED_SUPPORT: 'Contact an Enterprise Sales representative to get access to a dedicated support team',\n\n SCHEDULE_ZOOM_CALL: 'Schedule a Zoom Call',\n\n GET_PDF: 'GET PDF'\n\n};\n","/* eslint-disable max-len */\nexport const CTA_URLS = {\n ADD_AND_MANAGE_USERS: {\n CONTACT_SALES_URL: '/enterprise/contact-sales/?utm_medium=referral&utm_source=jotform.com&utm_content=collaboration_enterprise_accountbox_admin_console_link&utm_campaign=enterprise_cta&utm_enterprise_actions_target=contact_sales_link',\n LEARN_MORE_URL: '/enterprise/multiple-users/?utm_medium=referral&utm_source=jotform.com&utm_content=collaboration_enterprise_accountbox_admin_console_link&utm_campaign=enterprise_cta&utm_enterprise_actions_target=learn_more_link'\n },\n ADMIN_CONSOLE_PROMOTION: {\n CONTACT_SALES_URL: '/enterprise/contact-sales/?utm_medium=referral&utm_source=jotform.com&utm_content=enterprise_accountbox_admin_console_link&utm_campaign=enterprise_cta&utm_enterprise_actions_target=contact_sales_link',\n LEARN_MORE_URL: '/enterprise/multiple-users/?utm_medium=referral&utm_source=jotform.com&utm_content=enterprise_accountbox_admin_console_link&utm_campaign=enterprise_cta&utm_enterprise_actions_target=learn_more_link'\n },\n UPGRADE_TO_ENTERPRISE_FULL_PAGE: {\n CONTACT_SALES_URL: '/enterprise/contact-sales/?utm_medium=referral&utm_source=myaccount_users&utm_content=contact_sales_button&utm_campaign=enterprise_cta&utm_enterprise_actions_target=contact_sales_link',\n LEARN_MORE_URL: '/enterprise/multiple-users/?utm_medium=referral&utm_source=myaccount_users&utm_content=learn_more_button&utm_campaign=enterprise_cta&utm_enterprise_actions_target=learn_more_link'\n },\n ASSIGN_TO_EVERYONE_PROMOTION: {\n CONTACT_SALES_URL: '/enterprise/contact-sales/?utm_medium=referral&utm_source=form_builder&utm_content=assign_everyone_toggle&utm_campaign=enterprise_cta&utm_enterprise_actions_target=contact_sales_link',\n LEARN_MORE_URL: '/enterprise/multiple-users/?utm_medium=referral&utm_source=form_builder&utm_content=assign_everyone_toggle&utm_campaign=enterprise_cta&utm_enterprise_actions_target=learn_more_link'\n },\n ASSIGN_TO_EVERYONE_BUTTON: {\n URL: '/enterprise/multiple-users/?utm_medium=referral&utm_source=assign_everyone_button&utm_content=assign_everyone_button_link&utm_campaign=enterprise_cta'\n },\n ASSIGN_FORM_BANNER: {\n LEARN_MORE_URL: '/teams/?utm_medium=referral&utm_source=form_builder&utm_content=assign_form_banner&utm_campaign=enterprise_cta&utm_enterprise_actions_target=learn_more_link'\n },\n ENTERPRISE_WHITE_LABELING_BANNER: { // a/b test\n CONTACT_SALES_URL: '/enterprise/contact-sales/?utm_medium=referral&utm_source=form_builder&utm_content=mini_designer_white_labeling&utm_campaign=enterprise_cta&utm_enterprise_actions_target=contact_sales_link',\n LEARN_MORE_URL: '/enterprise/white-label/?utm_medium=referral&utm_source=form_builder&utm_content=mini_designer_white_labeling&utm_campaign=enterprise_cta&utm_enterprise_actions_target=learn_more_link'\n },\n WHITE_LABELING_BANNER: {\n CONTACT_SALES_URL: '/enterprise/contact-sales/?utm_medium=referral&utm_source=myaccount_settings&utm_content=white_labeling_banner&utm_campaign=enterprise_cta&utm_enterprise_actions_target=contact_sales_link',\n LEARN_MORE_URL: '/enterprise/white-label/?utm_medium=referral&utm_source=myaccount_settings&utm_content=white_labeling_banner&utm_campaign=enterprise_cta&utm_enterprise_actions_target=learn_more_link'\n },\n APPROVAL_WHITE_LABELING_BANNER: {\n UPGRADE_URL: '/enterprise/contact-sales/?utm_medium=referral&utm_source=approval&utm_content=white_labeling_banner&utm_campaign=enterprise_cta&utm_enterprise_actions_target=upgrade_link',\n LEARN_MORE_URL: '/enterprise/white-label/?utm_medium=referral&utm_source=approval&utm_content=white_labeling_banner&utm_campaign=enterprise_cta&utm_enterprise_actions_target=learn_more_link'\n },\n ENTERPRISE_GOVERNMENT_MODAL: {\n CONTACT_SALES_URL: '/enterprise/contact-sales/?utm_medium=referral&utm_source=my_forms&utm_content=enterprise_government_modal&utm_campaign=enterprise_cta&utm_enterprise_actions_target=contact_sales_link',\n LEARN_MORE_URL: '/enterprise/government-solution/?utm_medium=referral&utm_source=my_forms&utm_content=enterprise_government_modal&utm_campaign=enterprise_cta&utm_enterprise_actions_target=learn_more_link'\n },\n ENTERPRISE_ACCOUNTBOX_PROMOTION: {\n CONTACT_SALES_URL: '/enterprise/contact-sales/?utm_medium=referral&utm_source=account_box&utm_content=inline_alert&utm_campaign=enterprise_cta&utm_enterprise_actions_target=contact_sales_link',\n LEARN_MORE_URL: '/enterprise/?utm_medium=referral&utm_source=account_box&utm_content=inline_alert&utm_campaign=enterprise_cta&utm_enterprise_actions_target=learn_more_link'\n },\n ENTERPRISE_PROMO_IN_BILLING_URL: '/enterprise/?utm_medium=referral&utm_source=myaccount_upgrade&utm_content=check_out_jotform_enterprise&utm_campaign=enterprise_cta&utm_enterprise_actions_target=check_out_jotform_enterprise',\n FULLY_CUSTOMIZE_BANNER: {\n CONTACT_SALES_URL: '/enterprise/contact-sales/?utm_medium=referral&utm_source=form_builder&utm_content=webhook_banner&utm_campaign=enterprise_cta&utm_enterprise_actions_target=contact_sales_link',\n LEARN_MORE_URL: '/enterprise/?utm_medium=referral&utm_source=form_builder&utm_content=webhook_banner&utm_campaign=enterprise_cta&utm_enterprise_actions_target=learn_more_link'\n },\n IP_RESTRICTION_BANNER: {\n CONTACT_SALES_URL: '/enterprise/contact-sales/?utm_medium=referral&utm_source={{app_name}}&utm_content=ip_restriction_banner&utm_campaign=enterprise_cta&utm_enterprise_actions_target=contact_sales_link',\n DISCOVER_MORE_URL: '/enterprise/?utm_medium=referral&utm_source={{app_name}}&utm_content=ip_restriction_banner&utm_campaign=enterprise_cta&utm_enterprise_actions_target=discover_now_link'\n },\n CUSTOM_DOMAIN_API_BANNER: {\n CONTACT_SALES_URL: '/enterprise/contact-sales/?utm_medium=referral&utm_source=myaccount_api&utm_content=myaccount_api_custom_domain_contact_sales&utm_campaign=enterprise_cta&utm_enterprise_actions_target=contact_sales_link',\n ENTERPRISE_URL: '/enterprise/?utm_medium=referral&utm_source=myaccount_api&utm_content=myaccount_api_custom_domain_enterprise&utm_campaign=enterprise_cta&utm_enterprise_actions_target=enterprise_link'\n },\n MY_ACCOUNT_STORE_DATA_IN_AU_BANNER: {\n CONTACT_SALES_URL: '/enterprise/contact-sales/?utm_medium=referral&utm_source=myaccount_data&utm_content=store_data_in_au_banner&utm_campaign=enterprise_cta&utm_enterprise_actions_target=contact_sales_link',\n ENTERPRISE_URL: '/enterprise/?utm_medium=referral&utm_source=myaccount_data&utm_content=store_data_in_au_banner&utm_campaign=enterprise_cta&utm_enterprise_actions_target=enterprise_link'\n },\n DEDICATED_SUPPORT_BANNER: {\n CONTACT_SALES_URL: '/enterprise/contact-sales/?utm_medium=referral&utm_source=form_builder_help_menu&utm_content=dedicated_support&utm_campaign=enterprise_cta&utm_enterprise_actions_target=contact_sales_link'\n },\n DEDICATED_SUPPORT_SECTION: {\n CONTACT_SALES_URL: '/enterprise/contact-sales/?utm_medium=referral&utm_source=jotform.com&utm_content=dedicated_support_contact_sales_cta&utm_campaign=enterprise_common_header'\n },\n WHITE_LABEL_SECTION: {\n CONTACT_SALES_URL: '/enterprise/contact-sales/?utm_medium=referral&utm_source=form_builder&utm_content=white-label-section&utm_campaign=enterprise_cta&utm_enterprise_actions_target=contact_sales_link',\n LEARN_MORE_URL: '/enterprise/?utm_medium=referral&utm_source=form_builder&utm_content=white-label-section&utm_campaign=enterprise_cta&utm_enterprise_actions_target=learn_more_link'\n },\n ACCESS_CONTROL_SECTION: {\n CONTACT_SALES_URL: '/enterprise/contact-sales/?utm_medium=referral&utm_source=form_builder&utm_content=access-control-section&utm_campaign=enterprise_cta&utm_enterprise_actions_target=contact_sales_link',\n LEARN_MORE_URL: '/enterprise/?utm_medium=referral&utm_source=form_builder&utm_content=access-control-section&utm_campaign=enterprise_cta&utm_enterprise_actions_target=learn_more_link'\n },\n CUSTOM_DOMAIN_TOOLTIP: {\n WHITE_LABEL_URL_FORM_BUILDER: '/enterprise/white-label/?utm_medium=referral&utm_source=form_builder&utm_content=publish_quick_share_enterprise_cta&utm_campaign=enterprise_cta&utm_enterprise_actions_target=white_label_link',\n WHITE_LABEL_URL_PORTAL: '/enterprise/white-label/?utm_medium=referral&utm_source=portal&utm_content=publish_quick_share_enterprise_cta&utm_campaign=enterprise_cta&utm_enterprise_actions_target=white_label_link'\n },\n SHARE_PANEL_BOTTOM_BANNER: {\n CONTACT_SALES_URL: '/enterprise/contact-sales/?utm_medium=referral&utm_source=share_panel&utm_content=collab_bottom_banner&utm_campaign=enterprise_cta&utm_enterprise_actions_target=contact_sales_link',\n LEARN_MORE_URL: '/enterprise/?utm_medium=referral&utm_source=share_panel&utm_content=collab_bottom_banner&utm_campaign=enterprise_cta&utm_enterprise_actions_target=learn_more_link'\n },\n PUSH_DAY_BANNER: {\n CONTACT_SALES_URL: '/enterprise/contact-sales/?utm_medium=referral&utm_source=my_forms&utm_content=push_day_banner&utm_campaign=enterprise_cta&utm_enterprise_actions_target=contact_sales_link'\n },\n PROFESSIONAL_SOLUTIONS_BANNER: {\n CONTACT_SALES_URL_INBOX: '/enterprise/contact-sales/?utm_medium=referral&utm_source=inbox&utm_content=professional_solutions_banner&utm_campaign=enterprise_cta&utm_enterprise_actions_target=contact_sales_link',\n CONTACT_SALES_URL_TABLES: '/enterprise/contact-sales/?utm_medium=referral&utm_source=tables&utm_content=professional_solutions_banner&utm_campaign=enterprise_cta&utm_enterprise_actions_target=contact_sales_link'\n },\n ADMIN_CONSOLE_SLIDER_MODAL: {\n CONTACT_SALES_URL: '/enterprise/contact-sales/?utm_medium=referral&utm_source=my_forms_more_menu&utm_content=admin_console_slider_modal&utm_campaign=enterprise_cta&utm_enterprise_actions_target=contact_sales_link',\n LEARN_MORE_URL: '/enterprise/?utm_medium=referral&utm_source=my_forms_more_menu&utm_content=admin_console_slider_modal&utm_campaign=enterprise_cta&utm_enterprise_actions_target=learn_more_link'\n },\n MYACCOUNT_USAGE_INLINE_LIMIT_ALERT: {\n CONTACT_SALES_URL: '?utm_medium=referral&utm_source=myaccount_usage&utm_content=inline_limit_alert_upgrade_button&utm_campaign=enterprise_cta&utm_enterprise_actions_target=contact_sales_link'\n },\n FORM_ANALYTICS_ADMIN_CONSOLE_BANNER: {\n LEARN_MORE_URL: '/enterprise/?utm_medium=referral&utm_source=form_analytics&utm_content=admin_console_banner&utm_campaign=enterprise_cta&utm_enterprise_actions_target=learn_more_link'\n },\n MYFORMS_WHITE_LABELING_TOOLTIP_BANNER: {\n LEARN_MORE_URL: '/enterprise/white-label/?utm_medium=referral&utm_source=my_forms&utm_content=white_labeling_tooltip&utm_campaign=enterprise_cta&utm_enterprise_actions_target=learn_more_link'\n },\n MY_FORMS_AU_DATA_RESIDENCY_MODAL: {\n DISCOVER_URL: '/enterprise/local-data-residency/?utm_medium=referral&utm_source=my_forms?&utm_content=australian_data_residency_modal&utm_campaign=enterprise_cta&utm_enterprise_actions_target=discover_link'\n },\n MY_FORMS_LUNCH_AND_LEARN_BANNER: {\n SEE_DETAILS: 'https://jotform.com/enterprise/lunch-and-learn-sessions/?utm_medium=referral&utm_source=my_forms&utm_content=lunch_and_learn_banner&utm_campaign=enterprise_cta&utm_enterprise_actions_target=see_details_link#sessions',\n SAVE_YOUR_SEAT: 'https://jotform.com/enterprise/lunch-and-learn-sessions/?utm_medium=referral&utm_source=my_forms&utm_content=lunch_and_learn_banner&utm_campaign=enterprise_cta&utm_enterprise_actions_target=save_your_seat_link',\n JOIN_NOW: 'https://us06web.zoom.us/w/82258346077'\n },\n COST_CUTTING_WEBINAR_MODAL: {\n LEARN_MORE_URL: '/blog/webinar-cutting-costs-from-business-processes/?utm_medium=referral&utm_source=my_forms&utm_content=cost_cutting_webinar_modal&utm_campaign=enterprise_cta&utm_enterprise_actions_target=learn_more_link'\n },\n COST_CUTTING_WEBINAR_BANNER: {\n LEARN_MORE_URL: '/blog/webinar-cutting-costs-from-business-processes/?utm_medium=referral&utm_source=my_forms&utm_content=cost_cutting_webinar_banner&utm_campaign=enterprise_cta&utm_enterprise_actions_target=learn_more_link'\n },\n WORKFLOW_GROUP_APPROVAL_BANNER: {\n CONTACT_SALES_URL: '/enterprise/contact-sales/?utm_medium=referral&utm_source=workflow&utm_content=group_approval_banner&utm_campaign=enterprise_cta&utm_enterprise_actions_target=contact_sales_link',\n LEARN_MORE_URL: '/teams/?utm_medium=referral&utm_source=workflow&utm_content=group_approval_banner&utm_campaign=enterprise_cta&utm_enterprise_actions_target=learn_more_link'\n },\n EXPANDABLE_ADMIN_CONSOLE_BUTTON: {\n LEARN_MORE_URL: '/enterprise/admin-console/?utm_medium=referral&utm_source=my_forms&utm_content=expandable_admin_console_button&utm_campaign=enterprise_cta&utm_enterprise_actions_target=learn_more_link'\n },\n ADD_COLLABORATOR_BANNER: {\n CONTACT_SALES_URL: '/enterprise/multiple-users/?utm_medium=referral&utm_source=form_builder&utm_content=add_collaborator_contact_sales_link&utm_campaign=enterprise_cta&utm_enterprise_actions_target=contact_sales_link',\n LEARN_MORE_URL: '/enterprise/multiple-users/?utm_medium=referral&utm_source=form_builder&utm_content=add_collaborator_learn_more_link&utm_campaign=enterprise_cta&utm_enterprise_actions_target=learn_more_link'\n },\n ENTERPRISE_SECURITY_ITEMS_SECTION: {\n LEARN_MORE_URL: '/enterprise/security/?utm_medium=referral&utm_source=my_account&utm_content=enterprise-security-items&utm_campaign=enterprise_cta&utm_enterprise_actions_target=learn_more_link'\n },\n BLOG_CONTENT_BOOST_BANNER: {\n GET_CUSTOM_QUOTE_URL: utmSource => `/enterprise/contact-sales/?utm_medium=referral&utm_source=${utmSource}&utm_content=boost_banner&utm_campaign=enterprise_cta&utm_enterprise_actions_target=get_custom_quote_link`\n },\n BLOG_CONTENT_SPEED_UP_BANNER: {\n GET_CUSTOM_QUOTE_URL: utmSource => `/enterprise/contact-sales/?utm_medium=referral&utm_source=${utmSource}&utm_content=speed_up_banner&utm_campaign=enterprise_cta&utm_enterprise_actions_target=get_custom_quote_link`\n },\n USER_GUIDE_PROFESSIONAL_SERVICES: {\n CONTACT_SALES_URL: '/enterprise/contact-sales/?utm_medium=referral&utm_source=user_guide_home&utm_content=prof_services_banner&utm_campaign=enterprise_cta&utm_enterprise_actions_target=contact_sales_link',\n LEARN_MORE_URL: '/enterprise/professional-services/?utm_medium=referral&utm_source=user_guide_home&utm_content=prof_services_banner&utm_campaign=enterprise_cta&utm_enterprise_actions_target=learn_more_link'\n },\n GENERAL_FAQ_PROFESSIONAL_SERVICES: {\n CONTACT_SALES_URL: '/enterprise/contact-sales/?utm_medium=referral&utm_source=faq_home&utm_content=prof_services_banner&utm_campaign=enterprise_cta&utm_enterprise_actions_target=contact_sales_link',\n LEARN_MORE_URL: '/enterprise/professional-services/?utm_medium=referral&utm_source=faq_home&utm_content=prof_services_banner&utm_campaign=enterprise_cta&utm_enterprise_actions_target=learn_more_link'\n },\n SESSIONS_ACCOUNT_SHARING_BANNER: {\n CONTACT_SALES_URL: '/enterprise/contact-sales/?utm_medium=referral&utm_source=my_account_security&utm_content=sessions_account_sharing&utm_campaign=enterprise_cta&utm_enterprise_actions_target=contact_sales_link'\n },\n SSO_ACCESS_BANNER: {\n CONTACT_SALES_URL: '/enterprise/contact-sales/?utm_medium=referral&utm_source=form_builder&utm_content=publish_sso_banner&utm_campaign=enterprise_cta&utm_enterprise_actions_target=contact_sales_link',\n LEARN_MORE_URL: '/enterprise/single-sign-on/?utm_medium=referral&utm_source=form_builder&utm_content=publish_sso_banner&utm_campaign=enterprise_cta&utm_enterprise_actions_target=learn_more_link'\n },\n SSO_ACCESS_LEGACY_BANNER: {\n JOTFORM_ENTERPRISE: '/enterprise/single-sign-on/?utm_medium=referral&utm_source=form_builder&utm_content=publish_sso_banner&utm_campaign=enterprise_cta&utm_enterprise_actions_target=jotform_enterprise_link'\n },\n CUSTOM_DOMAIN_TOOLTIP_LEAGACY: {\n TRY_JOTFORM_ENTERPRISE_URL: '/enterprise/white-label/?utm_medium=referral&utm_source=form_builder&utm_content=publish_edit_custom_domain&utm_campaign=enterprise_cta&utm_enterprise_actions_target=try_jotform_enterprise_link'\n },\n SSO_PREFILL_LEGACY_BANNER: {\n UPGRADE_TO_ENTERPRISE: '/enterprise/single-sign-on/?utm_medium=referral&utm_source=form_builder&utm_content=enable_sso_prefill&utm_campaign=enterprise_cta&utm_enterprise_actions_target=upgrade_to_enterprise_link'\n },\n LOCAL_DATA_RESIDENCY_BANNER: {\n UPGRADE_TO_ENTERPRISE: '/enterprise/local-data-residency/?utm_medium=referral&utm_source=myaccount_data_section&utm_content=local_data_residency_banner&utm_campaign=enterprise_cta&utm_enterprise_actions_target=upgrade_to_enterprise_link'\n },\n LOCAL_DATA_RESIDENCY_ALT_BANNER: {\n CONTACT_SALES: '/enterprise/contact-sales/?utm_medium=referral&utm_source=myaccount_data_section&utm_content=local_data_residency_banner&utm_campaign=enterprise_cta&utm_enterprise_actions_target=contact_sales_link',\n LEARN_MORE: '/enterprise/local-data-residency/?utm_medium=referral&utm_source=myaccount_data_section&utm_content=local_data_residency_banner&utm_campaign=enterprise_cta&utm_enterprise_actions_target=learn_more_link'\n },\n TEAMS_CUSTOM_DOMAIN_LEGACY_TOOLTIP: {\n TRY_JOTFORM_ENTERPRISE_URL: '/enterprise/white-label/?utm_medium=referral&utm_source=team_url_section&utm_content=edit_custom_domain&utm_campaign=teams&utm_enterprise_actions_target=try_jotform_enterprise_link'\n },\n SSO_LEGACY_TOOLTIP: {\n JOTFORM_ENTERPRISE_URL: '/enterprise/single-sign-on/?utm_medium=referral&utm_source=form_builder&utm_content=require_sso_toggle&utm_campaign=enterprise_cta&utm_enterprise_actions_target=jotform_enterprise_link'\n },\n TEAMS_MODAL: {\n LEARN_MORE_URL: '/enterprise/teams/?utm_medium=referral&utm_source=teams_modal&utm_content=teams_modal_learn_more_link&utm_campaign=enterprise_cta&utm_enterprise_actions_target=learn_more_link'\n },\n PROFESSIONAL_SERVICES_CONTACT_BANNER: {\n DISCOVER_NOW_URL: '/enterprise/professional-services/?utm_medium=referral&utm_source=professional_services_contact_banner&utm_content=pscb_discover_more_link&utm_campaign=enterprise_cta&utm_enterprise_actions_target=discover_now_link'\n },\n SCHEDULE_ZOOM_MODAL: {\n LEARN_MORE_URL: '/enterprise/?utm_medium=referral&utm_source=schedule_zoom_modal&utm_content=schedule_zoom_modal_learn_more_link&utm_campaign=enterprise_cta&utm_enterprise_actions_target=learn_more_link'\n }\n};\n","const GA_PROJECT = 'enterprise-promotions';\n\nconst ASSET_TYPES = {\n MODAL: 'modal',\n BANNER: 'banner',\n SECTION: 'section',\n BUTTON: 'button',\n TOOLTIP: 'tooltip'\n};\n\nconst kebabizeReplacer = (match, offset) => (offset ? '-' : '') + match.toLowerCase();\n\nconst kebabize = str => str.replace(/[A-Z]+(?![a-z])|[A-Z]/g, kebabizeReplacer);\n\nconst findAssetType = assetName => Object.values(ASSET_TYPES).find(type => assetName.toLowerCase().includes(type));\n\nexport const createGaAttributes = (assetName = '', suffix = '') => {\n const assetType = findAssetType(assetName);\n return {\n 'data-ga': `${GA_PROJECT}-${assetType}`,\n 'data-id': suffix ? `${kebabize(assetName)}-${kebabize(suffix)}` : `${kebabize(assetName)}`\n };\n};\n\nexport const mapCallbacksToGaTrackingItems = (trackingItems, callbacks = []) => {\n const trackingItemsWithCb = trackingItems.map((item, i) => {\n const isFunc = typeof callbacks[i] === 'function';\n if (!isFunc) return { ...item };\n return { ...item, callback: callbacks[i] };\n });\n return trackingItemsWithCb;\n};\n\nexport const gaDataLayerPushClose = (gaAttributes = {}) => {\n const dataId = gaAttributes['data-id'];\n const assetType = findAssetType(dataId);\n window.dataLayer?.push({\n event: `${assetType}_close`,\n 'data-id': dataId\n });\n};\n\nexport const GA_SUFFIXES = {\n APPLY_NOW: 'applyNow',\n CHECK_OUT_JOTFORM_ENTERPRISE: 'checkOutJotformEnterprise',\n CLOSE: 'close',\n CONTACT_SALES: 'contactSales',\n UPGRADE: 'upgrade',\n DISCOVER_MORE: 'discoverMore',\n DISMISS: 'dismiss',\n ENTERPRISE_LANDING: 'enterpriseLanding',\n ENTERPRISE_WHITE_LABELING: 'enterpriseWhiteLabeling',\n GET_CUSTOM_QUOTE: 'getCustomQuote',\n GET_INSIGHT_NOW: 'getInsightNow',\n GET_A_QUOTE: 'getAQuote',\n JOIN_NOW: 'joinNow',\n LEARN_MORE: 'learnMore',\n LEARN_DETAILS: 'learnDetails',\n NOT_INTERESTED: 'notInterested',\n NOT_NOW: 'notNow',\n READ_THE_REPORT: 'readTheReport',\n REQUEST_A_DEMO: 'requestADemo',\n SAVE_YOUR_SEAT: 'saveYourSeat',\n SAVE_YOUR_SPOT: 'saveYourSpot',\n SEE_DETAILS: 'seeDetails',\n SIGN_UP: 'signUp',\n UPGRADE_TO_JOTFORM_ENTERPRISE: 'upgradeToJotformEnterprise',\n SCHEDULE: 'schedule',\n JOTFORM_ENTERPRISE: 'jotformEnterprise',\n TRY_JOTFORM_ENTERPRISE: 'tryJotformEnterprise',\n UPGRADE_TO_ENTERPRISE: 'upgradeToEnterprise',\n GET_NOW: 'getNow',\n SCHEDULE_ZOOM_CALL: 'scheduleZoomCall',\n GET_PDF: 'getPdf'\n};\n","import { readCookie, isSalesforceEnv } from '@jotforminc/utils';\nimport { LEAD_FORM_SOURCE_MODIFIERS, SHOULD_SHOW_AD_FORM } from '../constants';\nimport { isGenericEmail } from './utils';\n\nexport const getAdwordsUtmsFromCookie = () => {\n let decodedAdwordsUtms = '';\n let parsedAdwordsUtms = {};\n const adwordsUtms = readCookie('adwords_utms');\n if (!adwordsUtms) return parsedAdwordsUtms;\n try {\n decodedAdwordsUtms = decodeURIComponent(adwordsUtms);\n parsedAdwordsUtms = JSON.parse(decodedAdwordsUtms);\n } catch (e) {\n console.warn(e);\n }\n\n return { ...parsedAdwordsUtms, urlParam: adwordsUtms };\n};\n\nconst createParam = (key = '', value = '') => ((key && ![null, undefined, ''].includes(value)) ? `${key}=${value}` : '');\n\nconst mergeParams = (...params) => params.filter(param => param).join('&');\n\nconst createAdwordsUtmParams = () => {\n const {\n utm_source: utmSource = '',\n utm_campaign: utmCampaign = '',\n utm_medium: utmMedium = '',\n utm_term: utmTerm = '',\n utm_content: utmContent = '',\n utm_scp: utmScope = '',\n urlParam = ''\n } = getAdwordsUtmsFromCookie();\n\n const { ADWORDS } = LEAD_FORM_SOURCE_MODIFIERS;\n\n const urlParams = createParam('url_params', urlParam);\n const utmSourceParam = createParam('utm_source', utmSource);\n const utmCampaignParam = createParam('utm_campaign', utmCampaign);\n const utmMediumParam = createParam('utm_medium', utmMedium);\n const utmTermParam = createParam('utm_term', utmTerm);\n const utmContentParam = createParam('utm_content', utmContent);\n const utmScopeParam = createParam('utm_scp', utmScope);\n const adwordsGclidParam = createParam('gclid', readCookie('adwords_gclid'));\n const formLeadSourceModifierParam = createParam('formLeadSourceModifier', readCookie('adwords_mode') === 'on' ? ADWORDS : '');\n\n return mergeParams(urlParams, utmSourceParam, utmCampaignParam, utmMediumParam, utmTermParam, utmContentParam, utmScopeParam, adwordsGclidParam, formLeadSourceModifierParam);\n};\n\nconst createUserInformationParams = ({\n username, nameFirst, nameLast, email, jobTitle, company, country\n}) => {\n const usernameParam = createParam('userFullName', username);\n const nameParam = createParam('fullName[first]', nameFirst);\n const lastNameParam = createParam('fullName[last]', nameLast);\n const emailParam = createParam('userEmail', email);\n const jobTitleParam = createParam('jobTitle', jobTitle);\n const companyParam = createParam('organizationName', company);\n const countryParam = createParam('country', country);\n\n return mergeParams(usernameParam, nameParam, lastNameParam, emailParam, jobTitleParam, companyParam, countryParam);\n};\n\n// regular params\nexport const prepareFormParams = ({\n username, nameFirst, nameLast, email, bsgEmail, jobTitle, company, country,\n variantCode, formUiModifier, isIframeEmbed, pageUrl, automatedNurturingSource\n}) => {\n const userInforParams = createUserInformationParams({\n username, nameFirst, nameLast, email, jobTitle, company, country\n });\n const adwordsUtmParams = createAdwordsUtmParams();\n const pageUrlParam = createParam('pageUrl', pageUrl);\n const abTestParam = createParam('wordingtestvariantcode', variantCode);\n const iframeEmbedParam = createParam('isIframeEmbed[0]', isIframeEmbed);\n const salesForceParam = createParam('isSalesforce[0]', isSalesforceEnv());\n const professionalServicesParam = createParam('professionalServicesNote', readCookie('professionalServicesIntent') === 'yes' ? 'professionalServices' : '');\n const jotformAiAgentNoteParam = createParam('jotformAiAgentNote', readCookie('jotformAiAgentNote'));\n const jotformGovernmentIntentParam = createParam('jotformGovernmentIntent', readCookie('jotformGovernmentIntent'));\n const formUiModifierParam = createParam('formUiModifier', formUiModifier);\n const automatedNurturingSourceParam = createParam('automated_email_nurturing_source', automatedNurturingSource);\n const abNoteParam = createParam('abNote', readCookie('abNote'));\n const isGenericEmailParam = createParam('isGenericEmail', isGenericEmail(bsgEmail));\n const bsgEmailParam = createParam('bsgEmail', bsgEmail);\n\n const allParams = mergeParams(\n userInforParams, adwordsUtmParams,\n formUiModifierParam, pageUrlParam, iframeEmbedParam,\n salesForceParam, professionalServicesParam, jotformAiAgentNoteParam,\n jotformGovernmentIntentParam, abTestParam, abNoteParam, isGenericEmailParam, bsgEmailParam,\n automatedNurturingSourceParam, 'nojump', 'noToolBar'\n );\n\n return `?${allParams}`;\n};\n\n// non-profit params\nexport const prepareNonprofitFormParams = ({\n username, email\n}) => {\n const userNameParam = createParam('jotformUsername', username);\n const emailParam = createParam('emailAddress15', email);\n return `?${userNameParam}&${emailParam}&nojump&noToolBar`;\n};\n\nexport const hasAdwordsModeOn = () => {\n if (!SHOULD_SHOW_AD_FORM) return false;\n return readCookie('adwords_mode') === 'on';\n};\n","import { ABTestManager } from '@jotforminc/abtest-manager';\n/* global HTMLElement */\n\nimport Moment from 'moment';\nimport utf8 from 'utf8';\nimport {\n COUNTDOWN_UNIT, lalbSession, LEAD_FORM_MAP, LUNCH_AND_LEARN_SESSIONS, PRICING_TABLE_SOURCE_PAGES\n} from '../constants';\n\nexport const decodeUTF8 = text => {\n if (!text) return '';\n\n try {\n return utf8.decode(text);\n } catch (error) {\n console.log(error);\n return text;\n }\n};\n\nexport const getCurrentDateWithoutTimeZone = () => {\n const currentDate = new Date();\n const offset = currentDate.getTimezoneOffset();\n const currentDateWithoutOffset = new Date(currentDate.getTime() - (offset * 60 * 1000));\n const formattedDate = currentDateWithoutOffset.toISOString().split('T')[0];\n return formattedDate;\n};\n\nexport const getRootElement = id => {\n if (document.getElementById(id)) {\n return document.getElementById(id);\n }\n const rootEl = document.createElement('div');\n rootEl.id = id;\n document.body.appendChild(rootEl);\n return rootEl;\n};\n\nexport const isHTMLElement = el => el instanceof HTMLElement;\n\n// decimal seperator 7 70 700 7.000 70.000 etc.\nexport const formatNumber = num => num.toString().replace(/(\\d)(?=(\\d{3})+(?!\\d))/g, '$1.');\n\nexport const getCountdownInfo = () => {\n const EVENT_DATE = LUNCH_AND_LEARN_SESSIONS[lalbSession - 1];\n const { ANNOUNCEMENT_DATE_TIME, EVENT_DATE_TIME, EVENT_DURATION } = EVENT_DATE;\n\n const eventDateTime = new Date(EVENT_DATE_TIME).getTime();\n const announcementDateTime = new Date(ANNOUNCEMENT_DATE_TIME).getTime();\n\n const campaignTimespan = eventDateTime - announcementDateTime;\n\n const currentDate = new Date();\n const currentDateTimeWithoutOffset = currentDate.getTime();\n\n const eventDurHours = EVENT_DURATION.split(':')[0] * 60 * 60 * 1000;\n const eventDurMinutes = EVENT_DURATION.split(':')[1] * 60 * 1000;\n const eventDuration = eventDurHours + eventDurMinutes;\n\n const eventEndsAt = eventDateTime + eventDuration;\n const isEventCompleted = currentDateTimeWithoutOffset > eventEndsAt;\n const remainingTimespan = eventDateTime - currentDateTimeWithoutOffset;\n const remainingPercentage = Math.floor((remainingTimespan / campaignTimespan) * 100);\n\n let unit;\n let remainingTime;\n\n const remainingTimeDays = Math.floor(Moment.duration(remainingTimespan, 'milliseconds').asDays());\n const remainingTimeHours = Math.floor(Moment.duration(remainingTimespan, 'milliseconds').asHours());\n const remainingTimeMinutes = Math.floor(Moment.duration(remainingTimespan, 'milliseconds').asMinutes());\n\n if (remainingTimeDays >= 1) {\n unit = COUNTDOWN_UNIT.DAYS;\n remainingTime = remainingTimeDays;\n } else if (remainingTimeHours >= 1) {\n unit = COUNTDOWN_UNIT.HOURS;\n remainingTime = remainingTimeHours;\n } else if (remainingTimeMinutes >= 1) {\n unit = COUNTDOWN_UNIT.MINUTES;\n remainingTime = remainingTimeMinutes;\n } else {\n unit = COUNTDOWN_UNIT.LIVE;\n remainingTime = 0;\n }\n\n return {\n unit,\n remainingTime,\n isEventCompleted,\n remainingPercentage\n };\n};\n\nexport const getAppName = () => window.__jfrouter?.ACTIVE_APP?.replace('-', '_') || '';\n\nexport const getMandatoryPrefillValues = user => {\n const username = user?.username || '';\n const bsgEmail = user?.email || '';\n\n return {\n username: decodeUTF8(username),\n bsgEmail: decodeUTF8(bsgEmail)\n };\n};\n\nexport const getUserPrefillValues = user => {\n const fullNameItems = user?.name?.split(' ') || [];\n const lastNameIndex = fullNameItems.length - 1;\n const nameFirst = fullNameItems.length === 1 ? fullNameItems[0] : fullNameItems.slice(0, -1).join(' ').trim();\n const nameLast = fullNameItems.length === 1 ? '' : (fullNameItems[lastNameIndex] || '');\n const email = user?.email || '';\n const jobTitle = '';\n const company = user?.company || '';\n const country = user?.location?.country_name || '';\n const username = user?.username || '';\n\n return {\n username: decodeUTF8(username),\n nameFirst: decodeUTF8(nameFirst),\n nameLast: decodeUTF8(nameLast),\n email: decodeUTF8(email),\n bsgEmail: decodeUTF8(email),\n jobTitle: decodeUTF8(jobTitle),\n company: decodeUTF8(company),\n country: decodeUTF8(country)\n };\n};\n\nexport const shouldShowStepInfo = user => {\n const name = user?.name;\n const uemail = user?.email;\n const countryName = user?.location?.country_name;\n const requiredFields = [name, uemail, countryName];\n return requiredFields.some(field => !field);\n};\n\nexport const isProd = () => window.JOTFORM_ENV === 'PRODUCTION';\nexport const isDevelopment = () => window.JOTFORM_ENV === 'DEVELOPMENT';\n\nexport const readMilestoneJotformFieldValues = iframeDocument => ({\n firstName: iframeDocument?.querySelector('#first_4')?.value || '',\n lastName: iframeDocument?.querySelector('#last_4')?.value || '',\n email: iframeDocument?.querySelector('#input_5')?.value || '',\n country: iframeDocument?.querySelector('#input_7')?.value || '',\n state: iframeDocument?.querySelector('#input_8')?.value || iframeDocument?.querySelector('#input_12')?.value || iframeDocument.querySelector('#input_13')?.value || ''\n});\n\nexport const getSourceLandingPage = () => {\n const { EDUCATION, NONPROFIT } = PRICING_TABLE_SOURCE_PAGES;\n if (window.location.pathname.includes(EDUCATION)) return EDUCATION;\n if (window.location.pathname.includes(NONPROFIT)) return NONPROFIT;\n return '';\n};\nexport const snakeizePathname = () => window.location.pathname.replaceAll('/', '_').replaceAll('-', '_').slice(1, -1);\n\nexport const isGuest = user => (user?.accountType || user?.account_type?.name) === 'GUEST';\n\nexport const isScrollCloseToElement = (targetEl, offset = 250) => {\n if (!targetEl) return false;\n return (targetEl.getBoundingClientRect().top + targetEl.offsetHeight) - window.innerHeight - offset <= 0;\n};\n\nexport const getLiveFormID = (isTestVariant, target) => {\n return (isTestVariant\n ? LEAD_FORM_MAP[target].LIVE\n : LEAD_FORM_MAP.COMMON.LIVE);\n};\n\nexport const getDevFormID = (isTestVariant, target) => {\n return isTestVariant\n ? LEAD_FORM_MAP[target].DEV\n : LEAD_FORM_MAP.COMMON.DEV;\n};\n\nexport async function getIsEnterpriseAIAgentChatActive(user) {\n if (user.enterpriseAIAgentMyAccount === '27521') {\n return true;\n }\n\n if (window.JOTFORM_ENV === 'ENTERPRISE' || user.enterpriseAIAgentMyAccount) {\n return false;\n }\n\n const abTestManager = new ABTestManager({\n user: user,\n isTestEnabled: true,\n testName: 'enterpriseAIAgentMyAccount',\n testVariantCode: '27521',\n controlVariantCode: '27511'\n });\n\n return abTestManager.isTestVariant();\n}\n\nexport const isGenericEmail = email => {\n if (!email) return '';\n // eslint-disable-next-line max-len\n const freeDomains = ['aol', 'bellsouth', 'bigpond', 'bright', 'cfl', 'citlink', 'comcast', 'cox', 'earthlink', 'email', 'emailboxi', 'embarqmail', 'free', 'frontiernet', 'gmail', 'googlemail', 'hotmail', 'icloud', 'iinet', 'libero', 'live', 'mac', 'mail', 'me', 'mindspring', 'msn', 'myyahoo', 'naver', 'netscape', 'online', 'optonline', 'orange', 'outlook', 'privaterelay', 'proton', 'protonmail', 'sbcglobal', 'shaw', 'skynet', 'telenet', 'tiscali', 'verizon', 'virginmedia', 'windowslive', 'yahoo', 'yandex', 'ymail'];\n\n return freeDomains.some(domain => email.includes(`@${domain}.`));\n};\n","import { LATEST_ACTIVE_SERVERS_LIST, RANDOM_ACTIVE_200_SERVERS_LIST, RANDOM_ACTIVE_300_SERVERS_LIST } from './constants/latestActiveServers';\n\nconst isActive = (testEnvList = [], parameter) => {\n const { host, search } = window.location;\n return host.indexOf('jotform.biz') > -1 || host.indexOf('jotform.pro') > -1 || testEnvList.indexOf(host) > -1 || (parameter && search.indexOf(parameter) > -1);\n};\n\nexport const isEnterprise = () => {\n if (!window) {\n return false;\n }\n\n if (window.JOTFORM_ENV === 'ENTERPRISE') {\n return true;\n }\n\n if (window.JotForm && window.JotForm.enterprise) {\n return true;\n }\n\n return false;\n};\n\nexport const isTestAndDevelopmentEnvironment = () => isActive([\n 'eeproduct2.jotform.com',\n 'enterpriseqa.jotform.com',\n 'enterpriseqahipaa.jotform.com',\n 'demo.jotform.com',\n 'acmetest.jotform.com',\n 'uxlabs.jotform.com',\n 'soc2-test1.jotform.com',\n 'mobile-test.jotform.com',\n 'enterpriseqamanual.jotform.com',\n 'marketing.jotform.com',\n 'passgp.jotform.com',\n 'mcrcbiobank.jotform.com',\n 'aat.jotform.com',\n 'sso-multi-test.jotform.com'\n]);\n\nexport const isOneOfTheMostActiveEnterpriseServers = () => {\n return isActive(LATEST_ACTIVE_SERVERS_LIST) || isActive(RANDOM_ACTIVE_200_SERVERS_LIST) || isActive(RANDOM_ACTIVE_300_SERVERS_LIST) || isTestAndDevelopmentEnvironment();\n};\n\nexport const isNew2FAEnabled = () => window.location.search.indexOf('new2FA') > -1;\n\nexport const isNewSMTPFlow = (user = {}) => {\n const { isNewSMTPFlowEnabled = false } = user;\n return window?.user?.isNewSMTPFlowEnabled || isNewSMTPFlowEnabled;\n};\n","import startCase from 'lodash/startCase';\n\nexport const getComponentName = ({\n assetType,\n campaignType,\n assetsVersion,\n assetYear\n}) => {\n if (!campaignType || !assetType) {\n return;\n }\n\n const sanitizedAssetsVersion = assetsVersion || 'index';\n return [`y${assetYear}`, campaignType, assetType, sanitizedAssetsVersion].map(name => startCase(name.toLowerCase()).replace(/\\s+/g, '')).join('');\n};\n","import { lazy } from 'react'\nexport const Y2024BacktopaidFlyinV1 = lazy(() => import('../../assets/campaigns/2024/backtopaid/flyin/v1.js'));\nexport const Y2024BacktopaidPricingBadgeV1 = lazy(() => import('../../assets/campaigns/2024/backtopaid/pricing-badge/v1.js'));\nexport const Y2024BlackfridayBannerIndex = lazy(() => import('../../assets/campaigns/2024/blackfriday/banner/index.js'));\nexport const Y2024NewuserBannerV2 = lazy(() => import('../../assets/campaigns/2024/newuser/banner/v2.js'));\nexport const Y2024NewuserDummyExitModalV2 = lazy(() => import('../../assets/campaigns/2024/newuser/dummy-exit-modal/v2.js'));\nexport const Y2024NewuserLimitDialogV2 = lazy(() => import('../../assets/campaigns/2024/newuser/limit-dialog/v2.js'));\nexport const Y2024NewuserMyaccountBadgeV2 = lazy(() => import('../../assets/campaigns/2024/newuser/myaccount-badge/v2.js'));\nexport const Y2024NewuserPricingBadgeV2 = lazy(() => import('../../assets/campaigns/2024/newuser/pricing-badge/v2.js'));\nexport const Y2024OverquotauserBannerIndex = lazy(() => import('../../assets/campaigns/2024/overquotauser/banner/index.js'));\nexport const Y2024RegularfiftydiscountAccountBoxV2 = lazy(() => import('../../assets/campaigns/2024/regularfiftydiscount/account-box/v2.js'));\nexport const Y2024RegularfiftydiscountExitModalV2 = lazy(() => import('../../assets/campaigns/2024/regularfiftydiscount/exit-modal/v2.js'));\nexport const Y2024RegularfiftydiscountFlyinV2 = lazy(() => import('../../assets/campaigns/2024/regularfiftydiscount/flyin/v2.js'));\nexport const Y2024RegularfiftydiscountPricingBadgeV2 = lazy(() => import('../../assets/campaigns/2024/regularfiftydiscount/pricing-badge/v2.js'));\nexport const Y2024SilveroneExitModalV1 = lazy(() => import('../../assets/campaigns/2024/silverone/exit-modal/v1.js'));\nexport const Y2024SilveroneFlyinV1 = lazy(() => import('../../assets/campaigns/2024/silverone/flyin/v1.js'));\nexport const Y2024SilveroneLightboxV1 = lazy(() => import('../../assets/campaigns/2024/silverone/lightbox/v1.js'));\nexport const Y2024SummerBannerIndex = lazy(() => import('../../assets/campaigns/2024/summer/banner/index.js'));\nexport const Y2024SummerLightboxIndex = lazy(() => import('../../assets/campaigns/2024/summer/lightbox/index.js'));\nexport const Y2024TestcampaignBannerIndex = lazy(() => import('../../assets/campaigns/2024/testcampaign/banner/index.js'));\nexport const Y2024TestcampaignBannerV2 = lazy(() => import('../../assets/campaigns/2024/testcampaign/banner/v2.js'));","import { lazy } from 'react'\nexport const Y2024GtwopromotionFlyinV1 = lazy(() => import('../../assets/promotions/2024/gtwopromotion/flyin/v1.js'));\nexport const Y2024GtwopromotionFlyinV2 = lazy(() => import('../../assets/promotions/2024/gtwopromotion/flyin/v2.js'));","import { lazy } from 'react'\nexport const Y2024GovernmentlaunchFlyinV1 = lazy(() => import('../../assets/launches/2024/governmentlaunch/flyin/v1.js'));\nexport const Y2024MicrosoftteamsFlyinV1 = lazy(() => import('../../assets/launches/2024/microsoftteams/flyin/v1.js'));\nexport const Y2024SalesforceFlyinV1 = lazy(() => import('../../assets/launches/2024/salesforce/flyin/v1.js'));","import { lazy } from 'react'\nexport const Y2024AnimalShelterPricingBadgeV2 = lazy(() => import('../../assets/announcements/2024/animal-shelter/pricing-badge/v2.js'));\nexport const Y2024ChurchPricingBadgeV2 = lazy(() => import('../../assets/announcements/2024/church/pricing-badge/v2.js'));\nexport const Y2024EducationPricingBadgeV2 = lazy(() => import('../../assets/announcements/2024/education/pricing-badge/v2.js'));\nexport const Y2024TestannouncementBannerIndex = lazy(() => import('../../assets/announcements/2024/testannouncement/banner/index.js'));","import { getComponentName } from './namings';\n\nimport CampaignAssetList from '../components/assets/assetList/CampaignAssetList';\nimport PromotionAssetList from '../components/assets/assetList/PromotionAssetList';\nimport LaunchAssetList from '../components/assets/assetList/LaunchAssetList';\nimport AnnouncementAssetList from '../components/assets/assetList/AnnouncementAssetList';\n\nconst AssetList = {\n ...CampaignAssetList,\n ...PromotionAssetList,\n ...LaunchAssetList,\n ...AnnouncementAssetList\n};\n\nexport const getAssetComponent = ({ assetInfo, assetType }) => {\n const componentName = getComponentName({ ...assetInfo, assetType });\n return componentName ? AssetList[componentName] : null;\n};\n","import React, { Suspense, Fragment } from 'react';\nimport {\n string, shape, bool, node\n} from 'prop-types';\n\nimport { Loading } from '@jotforminc/loading';\n\nimport { getAssetComponent } from '../utils/campaign';\n\nimport { AssetManagerProvider } from '../context/AssetManagerContext';\n\nconst GrowthAssetRenderer = ({\n assetType,\n assetProps,\n campaignInfo,\n Fallback\n}) => {\n const orderedCampaignInfos = Object.keys(campaignInfo).includes('type')\n ? [campaignInfo]\n : [\n campaignInfo.promotion,\n campaignInfo.campaign,\n campaignInfo.announcement,\n campaignInfo.launch\n ].filter(f => !!f);\n\n const [AssetComponent, assetInfo] = orderedCampaignInfos\n .map(info => {\n const {\n status = true,\n type: campaignType,\n assetsVersion,\n assetsAvailable = true,\n assetYear = '2024'\n } = info;\n\n const Component = getAssetComponent(\n {\n assetInfo: {\n campaignType,\n assetsVersion,\n assetYear\n },\n assetType\n }\n );\n\n return !Component || !assetsAvailable || !status ? [] : [Component, info];\n })\n .filter(f => !!f.length)[0] || [];\n\n if (!AssetComponent) {\n return ;\n }\n\n return (\n }>\n \n \n \n \n );\n};\n\nGrowthAssetRenderer.propTypes = {\n assetType: string,\n assetProps: shape({}),\n campaignInfo: shape({\n status: bool,\n type: string,\n assetsVersion: string,\n assetsAvailable: bool,\n assetYear: string\n }),\n Fallback: node\n};\n\nGrowthAssetRenderer.defaultProps = {\n assetType: '',\n assetProps: {},\n campaignInfo: {},\n Fallback: Fragment\n};\n\nexport default GrowthAssetRenderer;\n","import React, { Fragment } from 'react';\nimport { shape, string, node } from 'prop-types';\n\nimport GrowthAssetRenderer from './GrowthAssetRenderer';\n\nconst GrowthAssetManager = ({\n assetProps,\n assetType,\n Fallback\n}) => {\n return (\n \n );\n};\n\nGrowthAssetManager.propTypes = {\n assetProps: shape({}),\n assetType: string.isRequired,\n Fallback: node\n};\n\nGrowthAssetManager.defaultProps = {\n assetProps: {},\n Fallback: Fragment\n};\n\nexport default GrowthAssetManager;\n","import React, { useState, useContext, createContext } from 'react';\nimport { node, object, string } from 'prop-types';\n\nconst AssetManagerContext = createContext({});\n\nexport const AssetManagerProvider = ({\n children,\n campaignInfo,\n assetInfo,\n assetType\n}) => {\n const [state] = useState({\n campaignInfo,\n assetInfo,\n assetType\n });\n return (\n \n { children }\n \n );\n};\n\nAssetManagerProvider.propTypes = {\n children: node.isRequired,\n campaignInfo: object.isRequired,\n assetInfo: object.isRequired,\n assetType: string.isRequired\n};\n\nexport const useAssetManagerContext = () => {\n const { state } = useContext(AssetManagerContext);\n\n return {\n ...state\n };\n};\n","import React from 'react';\nimport { string, func } from 'prop-types';\n\nimport { t } from '@jotforminc/translation';\n\nconst defaultAvatar = 'https://cdn.jotfor.ms/assets/img/v4/avatar/Podo-Guest.png';\n\nconst AccountBoxAvatar = ({\n avatarUrl, onAccountBoxToggle, username\n}) => {\n return (\n
\n
\n \n \n \n
\n
\n );\n};\n\nAccountBoxAvatar.propTypes = {\n avatarUrl: string,\n onAccountBoxToggle: func,\n username: string\n};\n\nAccountBoxAvatar.defaultProps = {\n avatarUrl: defaultAvatar,\n onAccountBoxToggle: f => f,\n username: undefined\n};\n\nexport default AccountBoxAvatar;\n","export const MENU_BADGE_TYPES = {\n success: 'success',\n warning: 'warning',\n danger: 'danger'\n};\n\nexport const THEME_MAP = {\n LIGHT: 'light',\n DARK: 'dark',\n GRAY: 'gray'\n};\n\nexport const THEME_CLASSNAME_MAP = {\n [THEME_MAP.DARK]: 'isDark',\n [THEME_MAP.LIGHT]: 'isLight',\n [THEME_MAP.GRAY]: 'isGray'\n};\n\nexport const USER_TYPES = {\n USER: 'USER',\n FORM_USER: 'FORM_USER'\n};\n\nexport const MENU_TYPES = {\n TEMPLATES: 'templates',\n INTEGRATIONS: 'integrations',\n PRODUCTS: 'products',\n SUPPORT: 'support',\n SUBMENU: 'submenu',\n SIGN: 'sign',\n PDF_EDITOR: 'pdfEditor'\n};\n\n// A/B Test: contactSalesButtonOnHeader\nexport const CONTACT_SALES_AB_TEST_VARIATIONS = {\n CONTROL_VARIANT: '28511',\n CONTACT_SALES_AS_CTA: '28521',\n CONTACT_SALES_AS_ITEM: '28531',\n NO_INTEGRATIONS_MENU: '28541'\n};\n","import {\n bool, element, oneOf, shape, string\n} from 'prop-types';\nimport { THEME_MAP, USER_TYPES } from '../constants';\n\nexport const themePropType = oneOf([THEME_MAP.DARK, THEME_MAP.LIGHT, THEME_MAP.GRAY]);\n\nexport const userTypePropType = oneOf([USER_TYPES.USER, USER_TYPES.FORM_USER]);\n\nexport const logoPropsPropTypes = shape({\n logoUrl: string,\n logoFullLight: bool,\n enterpriseLogoSrc: string,\n customLogoAsReactElement: element,\n customLogoAsHtmlString: string,\n customDarkLogoAsHtmlString: string\n});\n\nexport const logoPropsDefaultProps = {\n logoUrl: '/',\n logoFullLight: false,\n enterpriseLogoSrc: '',\n customLogoAsReactElement: null,\n customLogoAsHtmlString: '',\n customDarkLogoAsHtmlString: ''\n};\n\nexport const logoSideLinkPropsPropTypes = shape({\n sideLinkUrl: string,\n sideLinkText: string,\n sideLinkTextColor: string,\n sideLinkClassName: string,\n dividerColor: string,\n sideLinkLogoAsHtmlString: string\n});\n\nexport const logoSideLinkPropsDefaultProps = {\n sideLinkUrl: '#',\n sideLinkText: '',\n sideLinkTextColor: '',\n sideLinkClassName: '',\n dividerColor: '',\n sideLinkLogoAsHtmlString: ''\n};\n","import { CONTACT_SALES_AB_TEST_VARIATIONS, THEME_MAP } from '../constants';\n\nexport const isDevelopment = global?.JOTFORM_ENV === 'DEVELOPMENT';\nexport const isTesting = global?.JOTFORM_ENV === 'TESTING';\n\nconst ACTION_KEYS = {\n ENTER: 'Enter',\n SPACE: ' '\n};\n\nconst isActionKeyPressed = e => Object.values(ACTION_KEYS).indexOf(e.key) > -1;\n\nexport const a11yClickHandler = (event, handler = false) => {\n try {\n if (!isActionKeyPressed(event)) {\n return;\n }\n\n if (handler) {\n handler(event);\n }\n } catch (e) {\n console.error(e);\n }\n};\n\nexport const splitArray = arr => {\n const len = arr.length;\n const mid = len % 2 === 0 ? len / 2 : Math.floor(len / 2) + 1;\n return [arr.slice(0, mid), arr.slice(mid)];\n};\n\nexport const isDarkTheme = theme => THEME_MAP.DARK === theme;\n\nexport const isLightTheme = theme => THEME_MAP.LIGHT === theme;\n\nexport const isGrayTheme = theme => THEME_MAP.GRAY === theme;\n\n// TODO: we should add URL polyfill to SSR side and remove this function.\nconst removeHost = url => {\n const url_ = url.split('://');\n return url_[1] ? `/${url_[1].split('/').slice(1).join('/')}` : url;\n};\n\nexport const isSamePath = (url, currentPath) => {\n if (!url || !currentPath) {\n return false;\n }\n\n const urlWithoutSearch = url.split('?')[0];\n const pathname = removeHost(urlWithoutSearch);\n\n return pathname.endsWith('/')\n ? pathname === (currentPath.endsWith('/') ? currentPath : `${currentPath}/`)\n : pathname === (currentPath.endsWith('/') ? currentPath.slice(0, -1) : currentPath);\n};\n\n// A/B Test: contactSalesButtonOnHeader\nexport const shouldRenderSignupButton = ({ hideSignupButton, contactSalesAbTestVariation }) => {\n const { CONTACT_SALES_AS_CTA } = CONTACT_SALES_AB_TEST_VARIATIONS;\n if (hideSignupButton) {\n return false;\n }\n if (CONTACT_SALES_AS_CTA === contactSalesAbTestVariation) {\n return false;\n }\n return true;\n};\n","import React, {\n createContext, useContext,\n useMemo\n} from 'react';\nimport { node } from 'prop-types';\nimport { ActionManager } from '../../utils';\nimport {\n ACTIONS_PROJECT_NAME, LOGIN_FLOW_ACTIONS_PROJECT_NAME\n} from '../../constants';\nimport { UserContext } from './UserProvider';\n\nexport const JotformActionsContext = createContext({\n logHeaderAction: f => f,\n logLoginFlowAction: f => f\n});\n\nconst JotformActionsProvider = ({ children }) => {\n const { user } = useContext(UserContext);\n\n const { registerJotformAction: logHeaderAction = f => f } = useMemo(() => new ActionManager({ user, projectName: ACTIONS_PROJECT_NAME }), [user]);\n const { registerJotformAction: logLoginFlowAction = f => f } = useMemo(() => new ActionManager({ user, projectName: LOGIN_FLOW_ACTIONS_PROJECT_NAME }), [user]);\n\n return (\n \n {children}\n \n );\n};\n\nJotformActionsProvider.propTypes = {\n children: node\n};\n\nJotformActionsProvider.defaultProps = {\n children: null\n};\n\nexport default JotformActionsProvider;\n","import React, { createContext, useEffect, useState } from 'react';\nimport { node } from 'prop-types';\nimport { useIsMobileScreen } from '../../hooks';\nimport { useLockBodyScroll, yieldToMain } from '../../utils';\n\nexport const MobileMenuContext = createContext();\n\nconst MobileMenuProvider = ({ children }) => {\n const [isMobileScreen] = useIsMobileScreen();\n const { lockScroll, unlockScroll } = useLockBodyScroll();\n const [isMobileMenuActive, setIsMobileMenuActive] = useState(false);\n\n useEffect(() => {\n if (!isMobileScreen) {\n setIsMobileMenuActive(false);\n return;\n }\n setIsMobileMenuActive(false);\n }, [isMobileScreen]);\n\n useEffect(() => {\n if (isMobileMenuActive) {\n lockScroll();\n } else {\n unlockScroll();\n }\n }, [isMobileMenuActive]);\n\n const onMobileMenuButtonClick = async () => {\n await yieldToMain();\n setIsMobileMenuActive(active => !active);\n };\n\n return (\n \n {children}\n \n );\n};\n\nMobileMenuProvider.propTypes = {\n children: node\n};\n\nMobileMenuProvider.defaultProps = {\n children: null\n};\n\nexport default MobileMenuProvider;\n","import React, { createContext } from 'react';\nimport { userTypePropType } from '@jotforminc/header-body';\nimport {\n bool, node, shape\n} from 'prop-types';\nimport { useUser } from '../../hooks';\n\nexport const UserContext = createContext();\n\nconst UserProvider = ({\n user: userAsProp,\n userType: userTypeAsProp,\n isLoggedIn: isLoggedinAsProp,\n children\n}) => {\n const [user, isLoggedIn, userType] = useUser(userAsProp, userTypeAsProp, isLoggedinAsProp);\n\n return (\n \n {children}\n \n );\n};\n\nUserProvider.propTypes = {\n user: shape({}),\n userType: userTypePropType,\n children: node,\n isLoggedIn: bool\n};\n\nUserProvider.defaultProps = {\n user: undefined,\n userType: undefined,\n isLoggedIn: undefined,\n children: null\n};\n\nexport default UserProvider;\n","export const LOGIN_FLOW_APP_NAME = 'jfHeaderReact';\n\nexport const ACTIONS_PROJECT_NAME = 'megaMenuHeaderReact';\n\nexport const LOGIN_FLOW_ACTIONS_PROJECT_NAME = 'LoginFlowCommonHeader';\n\nexport const CUSTOMER_SUPPORT_ACTIONS_PROJECT_NAME = 'CustomerSupport';\n\nexport const MENU_BADGE_TYPES = {\n success: 'success',\n warning: 'warning',\n danger: 'danger'\n};\n","var _path;\nfunction _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nimport * as React from \"react\";\nconst SvgCloseRevised = props => /*#__PURE__*/React.createElement(\"svg\", _extends({\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 20 20\"\n}, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M14.7559 6.42259C15.0814 6.09715 15.0814 5.56951 14.7559 5.24408C14.4305 4.91864 13.9028 4.91864 13.5774 5.24408L10 8.82149L6.42259 5.24408C6.09715 4.91864 5.56951 4.91864 5.24408 5.24408C4.91864 5.56951 4.91864 6.09715 5.24408 6.42259L8.82149 10L5.24408 13.5774C4.91864 13.9028 4.91864 14.4305 5.24408 14.7559C5.56951 15.0814 6.09715 15.0814 6.42259 14.7559L10 11.1785L13.5774 14.7559C13.9028 15.0814 14.4305 15.0814 14.7559 14.7559C15.0814 14.4305 15.0814 13.9028 14.7559 13.5774L11.1785 10L14.7559 6.42259Z\",\n fill: \"#343C6A\"\n})));\nexport default SvgCloseRevised;","var _path;\nfunction _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nimport * as React from \"react\";\nconst SvgRocket = props => /*#__PURE__*/React.createElement(\"svg\", _extends({\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 16 16\"\n}, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M4.90929 6.10205C5.907 2.11118 13.4431 0.667786 14.3876 1.61232C15.3321 2.55686 13.8887 10.0929 9.89787 11.0906C10.441 11.9054 10.1929 13.0088 9.35325 13.5126L7.49438 14.6279C7.33102 14.726 7.12024 14.6286 7.08892 14.4407L6.65529 11.8389L4.161 9.34463L1.55922 8.911C1.3713 8.87968 1.27397 8.66891 1.37199 8.50554L2.48731 6.64667C2.99111 5.80699 4.09452 5.55888 4.90929 6.10205ZM10.2727 7.14023C9.8821 7.53086 9.24876 7.53086 8.85814 7.14023C8.46751 6.7496 8.46751 6.11627 8.85814 5.72564C9.24876 5.33501 9.8821 5.33501 10.2727 5.72564C10.6634 6.11627 10.6634 6.7496 10.2727 7.14023ZM2.08438 14.1809C1.92692 14.2364 1.76407 14.0735 1.81953 13.9161L2.61138 11.6679C2.91238 10.8133 4.01904 10.6184 4.70054 11.2999C5.38204 11.9814 5.18711 13.0881 4.33255 13.3891L2.08438 14.1809Z\",\n fill: \"#0066C3\"\n})));\nexport default SvgRocket;","var _path, _path2;\nfunction _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nimport * as React from \"react\";\nconst SvgRocket = props => /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"#596ED7\",\n viewBox: \"0 0 24 24\",\n className: \"w-32 h-32\"\n}, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M13.414 10.627a1 1 0 1 0 1.414-1.414 1 1 0 0 0-1.414 1.414Z\"\n})), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M2 5a3 3 0 0 1 3-3h14a3 3 0 0 1 3 3v14a3 3 0 0 1-3 3H4.99h2.667c-1.877-.421-2.19-2.964-.47-3.827l1.53-.77-2.12-2.12-.731 1.497C5.014 18.526 2.44 18.235 2 16.343V5Zm11.04 10.203c4.263-.728 7.113-9.193 6.031-10.274C17.99 3.847 9.525 6.697 8.797 10.96l-1.592.016a1 1 0 0 0-.804.419L5.1 13.217a.2.2 0 0 0 .114.31l2.543.636 2.122 2.121.636 2.544a.2.2 0 0 0 .31.114l1.812-1.294a1 1 0 0 0 .419-.824l-.016-1.621Z\",\n clipRule: \"evenodd\"\n})));\nexport default SvgRocket;","\n \n \n\n","var _path, _path2;\nfunction _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nimport * as React from \"react\";\nconst SvgEnterpriseRocketMini = props => /*#__PURE__*/React.createElement(\"svg\", _extends({\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 24 24\"\n}, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M13.4142 10.6274C13.8048 11.0179 14.4379 11.0179 14.8284 10.6274C15.219 10.2369 15.219 9.60373 14.8284 9.21321C14.4379 8.82269 13.8048 8.82269 13.4142 9.21321C13.0237 9.60373 13.0237 10.2369 13.4142 10.6274Z\",\n fill: \"#596ED7\"\n})), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M2 5C2 3.34315 3.34315 2 5 2H19C20.6569 2 22 3.34315 22 5V19C22 20.6569 20.6569 22 19 22H5L4.99095 22H7.65685C5.77994 21.5789 5.46721 19.0362 7.18615 18.1729L8.71751 17.4038L6.59619 15.2825L5.86581 16.7796C5.0139 18.5258 2.44117 18.2353 2 16.3431V5ZM13.0399 15.2028C17.3033 14.4749 20.1526 6.01043 19.0711 4.92894C17.9896 3.84745 9.52514 6.69671 8.79722 10.9602L7.20504 10.9759C6.8856 10.9791 6.5869 11.1347 6.40122 11.3947L5.09968 13.2168C5.0177 13.3316 5.07708 13.4929 5.21392 13.5271L7.75737 14.163L9.87869 16.2843L10.5146 18.8277C10.5488 18.9646 10.7101 19.024 10.8248 18.942L12.6369 17.6476C12.9025 17.4579 13.0588 17.1506 13.0556 16.8242L13.0399 15.2028Z\",\n fill: \"#596ED7\"\n})));\nexport default SvgEnterpriseRocketMini;","\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n","var _path, _g, _path2, _defs;\nfunction _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nimport * as React from \"react\";\nconst SvgVisual = props => /*#__PURE__*/React.createElement(\"svg\", _extends({\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 404 529\"\n}, props), /*#__PURE__*/React.createElement(\"mask\", {\n id: \"mask0_3_44\",\n style: {\n maskType: \"alpha\"\n },\n maskUnits: \"userSpaceOnUse\",\n x: 8,\n y: 8,\n width: 401,\n height: 521\n}, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M8.76401 8.67554L306.976 8.67559L408.707 194.488L408.706 528.16L82.5688 528.16L8.76394 391.143L8.76401 8.67554Z\",\n fill: \"black\"\n}))), _g || (_g = /*#__PURE__*/React.createElement(\"g\", {\n mask: \"url(#mask0_3_44)\"\n}, /*#__PURE__*/React.createElement(\"g\", {\n filter: \"url(#filter0_f_3_44)\"\n}, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M16.4959 14.8997C16.4959 13.0961 17.958 11.634 19.7615 11.634L342.634 11.6341L342.633 430.573L19.7615 430.573C17.9579 430.573 16.4958 429.111 16.4958 427.308L16.4959 14.8997Z\",\n fill: \"black\",\n fillOpacity: 0.33\n})))), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n opacity: 0.08,\n d: \"M301.837 397.352L301.837 410.026L20.8598 410.026L12.9069 400.454C11.8825 399.22 12.7594 397.352 14.3625 397.352L301.837 397.352Z\",\n fill: \"url(#paint0_linear_3_44)\"\n})), _defs || (_defs = /*#__PURE__*/React.createElement(\"defs\", null, /*#__PURE__*/React.createElement(\"filter\", {\n id: \"filter0_f_3_44\",\n x: -32.7911,\n y: -37.653,\n width: 424.712,\n height: 517.513,\n filterUnits: \"userSpaceOnUse\",\n colorInterpolationFilters: \"sRGB\"\n}, /*#__PURE__*/React.createElement(\"feFlood\", {\n floodOpacity: 0,\n result: \"BackgroundImageFix\"\n}), /*#__PURE__*/React.createElement(\"feBlend\", {\n mode: \"normal\",\n in: \"SourceGraphic\",\n in2: \"BackgroundImageFix\",\n result: \"shape\"\n}), /*#__PURE__*/React.createElement(\"feGaussianBlur\", {\n stdDeviation: 24.6435,\n result: \"effect1_foregroundBlur_3_44\"\n})), /*#__PURE__*/React.createElement(\"filter\", {\n id: \"filter1_d_3_44\",\n x: 231.317,\n y: 332.22,\n width: 90.9652,\n height: 90.9652,\n filterUnits: \"userSpaceOnUse\",\n colorInterpolationFilters: \"sRGB\"\n}, /*#__PURE__*/React.createElement(\"feFlood\", {\n floodOpacity: 0,\n result: \"BackgroundImageFix\"\n}), /*#__PURE__*/React.createElement(\"feColorMatrix\", {\n in: \"SourceAlpha\",\n type: \"matrix\",\n values: \"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0\",\n result: \"hardAlpha\"\n}), /*#__PURE__*/React.createElement(\"feOffset\", {\n dy: 7.41311\n}), /*#__PURE__*/React.createElement(\"feGaussianBlur\", {\n stdDeviation: 9.26639\n}), /*#__PURE__*/React.createElement(\"feComposite\", {\n in2: \"hardAlpha\",\n operator: \"out\"\n}), /*#__PURE__*/React.createElement(\"feColorMatrix\", {\n type: \"matrix\",\n values: \"0 0 0 0 0.140347 0 0 0 0 0.167595 0 0 0 0 0.358333 0 0 0 0.35 0\"\n}), /*#__PURE__*/React.createElement(\"feBlend\", {\n mode: \"normal\",\n in2: \"BackgroundImageFix\",\n result: \"effect1_dropShadow_3_44\"\n}), /*#__PURE__*/React.createElement(\"feBlend\", {\n mode: \"normal\",\n in: \"SourceGraphic\",\n in2: \"effect1_dropShadow_3_44\",\n result: \"shape\"\n})), /*#__PURE__*/React.createElement(\"filter\", {\n id: \"filter2_d_3_44\",\n x: 231.317,\n y: 332.22,\n width: 90.9652,\n height: 90.9652,\n filterUnits: \"userSpaceOnUse\",\n colorInterpolationFilters: \"sRGB\"\n}, /*#__PURE__*/React.createElement(\"feFlood\", {\n floodOpacity: 0,\n result: \"BackgroundImageFix\"\n}), /*#__PURE__*/React.createElement(\"feColorMatrix\", {\n in: \"SourceAlpha\",\n type: \"matrix\",\n values: \"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0\",\n result: \"hardAlpha\"\n}), /*#__PURE__*/React.createElement(\"feOffset\", {\n dy: 7.41311\n}), /*#__PURE__*/React.createElement(\"feGaussianBlur\", {\n stdDeviation: 9.26639\n}), /*#__PURE__*/React.createElement(\"feComposite\", {\n in2: \"hardAlpha\",\n operator: \"out\"\n}), /*#__PURE__*/React.createElement(\"feColorMatrix\", {\n type: \"matrix\",\n values: \"0 0 0 0 0.140347 0 0 0 0 0.167595 0 0 0 0 0.358333 0 0 0 1 0\"\n}), /*#__PURE__*/React.createElement(\"feBlend\", {\n mode: \"normal\",\n in2: \"BackgroundImageFix\",\n result: \"effect1_dropShadow_3_44\"\n}), /*#__PURE__*/React.createElement(\"feBlend\", {\n mode: \"normal\",\n in: \"SourceGraphic\",\n in2: \"effect1_dropShadow_3_44\",\n result: \"shape\"\n})), /*#__PURE__*/React.createElement(\"linearGradient\", {\n id: \"paint0_linear_3_44\",\n x1: 163.077,\n y1: 398.54,\n x2: 163.077,\n y2: 410.026,\n gradientUnits: \"userSpaceOnUse\"\n}, /*#__PURE__*/React.createElement(\"stop\", null), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 1,\n stopOpacity: 0\n})), /*#__PURE__*/React.createElement(\"radialGradient\", {\n id: \"paint1_radial_3_44\",\n cx: 0,\n cy: 0,\n r: 1,\n gradientUnits: \"userSpaceOnUse\",\n gradientTransform: \"translate(306.734 332.883) rotate(-133.12) scale(439.819 394.624)\"\n}, /*#__PURE__*/React.createElement(\"stop\", {\n stopColor: \"#EDF0FF\"\n}), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 1,\n stopColor: \"white\"\n})), /*#__PURE__*/React.createElement(\"radialGradient\", {\n id: \"paint2_radial_3_44\",\n cx: 0,\n cy: 0,\n r: 1,\n gradientUnits: \"userSpaceOnUse\",\n gradientTransform: \"translate(299.256 8.67564) rotate(127.884) scale(497.211 341.601)\"\n}, /*#__PURE__*/React.createElement(\"stop\", {\n stopColor: \"#5369AB\"\n}), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 1,\n stopColor: \"#050C34\"\n})), /*#__PURE__*/React.createElement(\"linearGradient\", {\n id: \"paint3_linear_3_44\",\n x1: 58.152,\n y1: 185.394,\n x2: 6.1062,\n y2: 185.394,\n gradientUnits: \"userSpaceOnUse\"\n}, /*#__PURE__*/React.createElement(\"stop\", {\n offset: 0.085,\n stopColor: \"white\",\n stopOpacity: 0.42\n}), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 0.8,\n stopColor: \"white\",\n stopOpacity: 0\n})), /*#__PURE__*/React.createElement(\"radialGradient\", {\n id: \"paint4_radial_3_44\",\n cx: 0,\n cy: 0,\n r: 1,\n gradientUnits: \"userSpaceOnUse\",\n gradientTransform: \"translate(245.88 347.663) rotate(48.651) scale(67.918 56.3871)\"\n}, /*#__PURE__*/React.createElement(\"stop\", {\n stopColor: \"#DDDEED\"\n}), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 0.769399,\n stopColor: \"#EBEBEB\"\n})), /*#__PURE__*/React.createElement(\"linearGradient\", {\n id: \"paint5_linear_3_44\",\n x1: 288.642,\n y1: 368.26,\n x2: 278.112,\n y2: 356.087,\n gradientUnits: \"userSpaceOnUse\"\n}, /*#__PURE__*/React.createElement(\"stop\", {\n stopColor: \"#CDD1EC\"\n}), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 1,\n stopColor: \"white\",\n stopOpacity: 0\n})), /*#__PURE__*/React.createElement(\"linearGradient\", {\n id: \"paint6_linear_3_44\",\n x1: 288.642,\n y1: 368.26,\n x2: 278.112,\n y2: 356.087,\n gradientUnits: \"userSpaceOnUse\"\n}, /*#__PURE__*/React.createElement(\"stop\", {\n stopColor: \"#CDD1EC\"\n}), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 1,\n stopColor: \"white\",\n stopOpacity: 0\n})), /*#__PURE__*/React.createElement(\"clipPath\", {\n id: \"clip0_3_44\"\n}, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M6.10623 11.9412C6.10623 10.1376 7.5683 8.67554 9.37185 8.67554L301.947 8.67559C304.591 8.67559 306.735 10.8192 306.735 13.4635L306.734 392.936C306.734 395.58 304.591 397.724 301.947 397.724L9.3718 397.724C7.56825 397.724 6.10616 396.262 6.10616 394.458L6.10623 11.9412Z\",\n fill: \"white\"\n})))));\nexport default SvgVisual;","var _path;\nfunction _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nimport * as React from \"react\";\nconst SvgClose = props => /*#__PURE__*/React.createElement(\"svg\", _extends({\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 16 16\"\n}, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M11.8047 5.13807C12.0651 4.87772 12.0651 4.45561 11.8047 4.19526C11.5444 3.93491 11.1223 3.93491 10.8619 4.19526L8 7.05719L5.13807 4.19526C4.87772 3.93491 4.45561 3.93491 4.19526 4.19526C3.93491 4.45561 3.93491 4.87772 4.19526 5.13807L7.05719 8L4.19526 10.8619C3.93491 11.1223 3.93491 11.5444 4.19526 11.8047C4.45561 12.0651 4.87772 12.0651 5.13807 11.8047L8 8.94281L10.8619 11.8047C11.1223 12.0651 11.5444 12.0651 11.8047 11.8047C12.0651 11.5444 12.0651 11.1223 11.8047 10.8619L8.94281 8L11.8047 5.13807Z\",\n fill: \"#343C6A\"\n})));\nexport default SvgClose;","var _g, _defs;\nfunction _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nimport * as React from \"react\";\nconst SvgVisual = props => /*#__PURE__*/React.createElement(\"svg\", _extends({\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 368 235\"\n}, props), _g || (_g = /*#__PURE__*/React.createElement(\"g\", {\n clipPath: \"url(#clip0_0_918)\"\n}, /*#__PURE__*/React.createElement(\"g\", {\n filter: \"url(#filter0_d_0_918)\"\n}, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M318.878 39.9045C318.76 39.8522 318.665 39.7574 318.613 39.6387L317.188 36.4005C317.006 35.9876 316.42 35.9876 316.238 36.4005L314.814 39.6387C314.761 39.7574 314.667 39.8522 314.548 39.9045L311.31 41.3293C310.897 41.511 310.897 42.0969 311.31 42.2786L314.548 43.7034C314.667 43.7556 314.761 43.8504 314.814 43.9692L316.238 47.2073C316.42 47.6203 317.006 47.6203 317.188 47.2073L318.613 43.9692C318.665 43.8504 318.76 43.7556 318.878 43.7034L322.116 42.2786C322.529 42.0969 322.529 41.511 322.116 41.3293L318.878 39.9045Z\",\n fill: \"#D1D0FF\"\n})), /*#__PURE__*/React.createElement(\"g\", {\n filter: \"url(#filter1_d_0_918)\"\n}, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M229.065 14.5425C228.988 14.5089 228.927 14.4479 228.894 14.3716L227.978 12.2899C227.861 12.0245 227.484 12.0245 227.368 12.2899L226.452 14.3716C226.418 14.4479 226.357 14.5089 226.281 14.5425L224.199 15.4584C223.934 15.5752 223.934 15.9519 224.199 16.0687L226.281 16.9846C226.357 17.0182 226.418 17.0791 226.452 17.1555L227.368 19.2371C227.484 19.5026 227.861 19.5026 227.978 19.2371L228.894 17.1555C228.927 17.0791 228.988 17.0182 229.065 16.9846L231.146 16.0687C231.412 15.9519 231.412 15.5752 231.146 15.4584L229.065 14.5425Z\",\n fill: \"#D1D0FF\"\n})), /*#__PURE__*/React.createElement(\"g\", {\n filter: \"url(#filter2_d_0_918)\"\n}, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M274.065 111.542C273.988 111.509 273.927 111.448 273.894 111.372L272.978 109.29C272.861 109.024 272.484 109.024 272.368 109.29L271.452 111.372C271.418 111.448 271.357 111.509 271.281 111.542L269.199 112.458C268.934 112.575 268.934 112.952 269.199 113.069L271.281 113.985C271.357 114.018 271.418 114.079 271.452 114.155L272.368 116.237C272.484 116.503 272.861 116.503 272.978 116.237L273.894 114.155C273.927 114.079 273.988 114.018 274.065 113.985L276.146 113.069C276.412 112.952 276.412 112.575 276.146 112.458L274.065 111.542Z\",\n fill: \"#D1D0FF\"\n})), /*#__PURE__*/React.createElement(\"g\", {\n filter: \"url(#filter3_d_0_918)\"\n}, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M40.5821 118.309C40.5131 118.279 40.4579 118.223 40.4275 118.154L39.5989 116.271C39.4932 116.031 39.1524 116.031 39.0467 116.271L38.2181 118.154C38.1877 118.223 38.1325 118.279 38.0635 118.309L36.1801 119.138C35.94 119.243 35.94 119.584 36.1801 119.69L38.0635 120.518C38.1325 120.549 38.1877 120.604 38.2181 120.673L39.0467 122.556C39.1524 122.796 39.4932 122.796 39.5989 122.556L40.4275 120.673C40.4579 120.604 40.5131 120.549 40.5821 120.518L42.4655 119.69C42.7056 119.584 42.7056 119.243 42.4655 119.138L40.5821 118.309Z\",\n fill: \"#D1D0FF\"\n})), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M277.312 156.651C393.709 151.068 387.331 31.5 387.331 31.5L446.71 245.407C156.467 428.823 1.58816 158.357 175.975 65.8911C178.36 64.6266 181.543 65.9355 182.346 68.5593C182.582 69.3304 182.584 70.1482 182.38 70.9034C170.023 116.614 217.646 159.513 277.312 156.651Z\",\n fill: \"url(#paint0_linear_0_918)\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M252.879 176.529C383.619 195.388 386.579 77.831 386.646 72.1617L384.994 300.208C50.9348 411.853 -18.5497 114.826 177.004 64.9861C179.638 64.315 182.275 66.3039 182.275 69.0211C182.275 69.8306 182.033 70.6315 181.612 71.3225C156.29 112.805 194.019 168.039 252.879 176.529Z\",\n fill: \"url(#paint1_linear_0_918)\",\n fillOpacity: 0.6\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M252.879 176.529C383.619 195.388 386.579 77.831 386.646 72.1617L384.994 300.208C50.9348 411.853 -18.5497 114.826 177.004 64.9861C179.638 64.315 182.275 66.3039 182.275 69.0211C182.275 69.8306 182.033 70.6315 181.612 71.3225C156.29 112.805 194.019 168.039 252.879 176.529Z\",\n fill: \"url(#paint2_radial_0_918)\",\n fillOpacity: 0.8\n}), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M184.954 53.2073C186.777 46.2453 200.549 43.7274 202.276 45.3751C204.002 47.0228 201.364 60.1692 194.071 61.9097C195.063 63.3311 194.61 65.2559 193.075 66.1348L189.678 68.0804C189.379 68.2514 188.994 68.0816 188.937 67.7538L188.145 63.2151L183.586 58.8639L178.831 58.1074C178.488 58.0528 178.31 57.6851 178.489 57.4001L180.527 54.1574C181.448 52.6926 183.465 52.2597 184.954 53.2073ZM194.756 55.0184C194.042 55.6998 192.884 55.6998 192.17 55.0184C191.456 54.3369 191.456 53.2321 192.17 52.5506C192.884 51.8692 194.042 51.8692 194.756 52.5506C195.469 53.2321 195.469 54.3369 194.756 55.0184Z\",\n fill: \"#A3A0F8\"\n}), /*#__PURE__*/React.createElement(\"g\", {\n filter: \"url(#filter4_d_0_918)\"\n}, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M157.316 175.632C157.205 175.584 157.117 175.496 157.069 175.385L155.746 172.378C155.577 171.995 155.033 171.995 154.864 172.378L153.541 175.385C153.493 175.496 153.405 175.584 153.294 175.632L150.288 176.955C149.904 177.124 149.904 177.668 150.288 177.837L153.294 179.16C153.405 179.208 153.493 179.296 153.541 179.406L154.864 182.413C155.033 182.797 155.577 182.797 155.746 182.413L157.069 179.406C157.117 179.296 157.205 179.208 157.316 179.16L160.322 177.837C160.706 177.668 160.706 177.124 160.322 176.955L157.316 175.632Z\",\n fill: \"#D1D0FF\",\n fillOpacity: 0.5,\n shapeRendering: \"crispEdges\"\n})), /*#__PURE__*/React.createElement(\"g\", {\n filter: \"url(#filter5_d_0_918)\"\n}, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M90.3156 28.6321C90.2054 28.5836 90.1173 28.4955 90.0688 28.3853L88.7458 25.3784C88.5771 24.995 88.033 24.995 87.8643 25.3784L86.5413 28.3853C86.4928 28.4955 86.4047 28.5836 86.2944 28.6321L83.2876 29.9551C82.9041 30.1238 82.9041 30.6679 83.2876 30.8366L86.2944 32.1596C86.4047 32.2081 86.4928 32.2962 86.5413 32.4064L87.8643 35.4133C88.033 35.7967 88.5771 35.7967 88.7458 35.4133L90.0688 32.4064C90.1173 32.2962 90.2054 32.2081 90.3156 32.1596L93.3225 30.8366C93.7059 30.6679 93.7059 30.1238 93.3225 29.9551L90.3156 28.6321Z\",\n fill: \"#D1D0FF\"\n})))), _defs || (_defs = /*#__PURE__*/React.createElement(\"defs\", null, /*#__PURE__*/React.createElement(\"filter\", {\n id: \"filter0_d_0_918\",\n x: 298.595,\n y: 23.6857,\n width: 36.2365,\n height: 36.2365,\n filterUnits: \"userSpaceOnUse\",\n colorInterpolationFilters: \"sRGB\"\n}, /*#__PURE__*/React.createElement(\"feFlood\", {\n floodOpacity: 0,\n result: \"BackgroundImageFix\"\n}), /*#__PURE__*/React.createElement(\"feColorMatrix\", {\n in: \"SourceAlpha\",\n type: \"matrix\",\n values: \"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0\",\n result: \"hardAlpha\"\n}), /*#__PURE__*/React.createElement(\"feOffset\", null), /*#__PURE__*/React.createElement(\"feGaussianBlur\", {\n stdDeviation: 6.20256\n}), /*#__PURE__*/React.createElement(\"feComposite\", {\n in2: \"hardAlpha\",\n operator: \"out\"\n}), /*#__PURE__*/React.createElement(\"feColorMatrix\", {\n type: \"matrix\",\n values: \"0 0 0 0 0.564516 0 0 0 0 0.4375 0 0 0 0 1 0 0 0 1 0\"\n}), /*#__PURE__*/React.createElement(\"feBlend\", {\n mode: \"normal\",\n in2: \"BackgroundImageFix\",\n result: \"effect1_dropShadow_0_918\"\n}), /*#__PURE__*/React.createElement(\"feBlend\", {\n mode: \"normal\",\n in: \"SourceGraphic\",\n in2: \"effect1_dropShadow_0_918\",\n result: \"shape\"\n})), /*#__PURE__*/React.createElement(\"filter\", {\n id: \"filter1_d_0_918\",\n x: 216,\n y: 4.09082,\n width: 23.3454,\n height: 23.3454,\n filterUnits: \"userSpaceOnUse\",\n colorInterpolationFilters: \"sRGB\"\n}, /*#__PURE__*/React.createElement(\"feFlood\", {\n floodOpacity: 0,\n result: \"BackgroundImageFix\"\n}), /*#__PURE__*/React.createElement(\"feColorMatrix\", {\n in: \"SourceAlpha\",\n type: \"matrix\",\n values: \"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0\",\n result: \"hardAlpha\"\n}), /*#__PURE__*/React.createElement(\"feOffset\", null), /*#__PURE__*/React.createElement(\"feGaussianBlur\", {\n stdDeviation: 4\n}), /*#__PURE__*/React.createElement(\"feComposite\", {\n in2: \"hardAlpha\",\n operator: \"out\"\n}), /*#__PURE__*/React.createElement(\"feColorMatrix\", {\n type: \"matrix\",\n values: \"0 0 0 0 0.564516 0 0 0 0 0.4375 0 0 0 0 1 0 0 0 1 0\"\n}), /*#__PURE__*/React.createElement(\"feBlend\", {\n mode: \"normal\",\n in2: \"BackgroundImageFix\",\n result: \"effect1_dropShadow_0_918\"\n}), /*#__PURE__*/React.createElement(\"feBlend\", {\n mode: \"normal\",\n in: \"SourceGraphic\",\n in2: \"effect1_dropShadow_0_918\",\n result: \"shape\"\n})), /*#__PURE__*/React.createElement(\"filter\", {\n id: \"filter2_d_0_918\",\n x: 261,\n y: 101.091,\n width: 23.3454,\n height: 23.3454,\n filterUnits: \"userSpaceOnUse\",\n colorInterpolationFilters: \"sRGB\"\n}, /*#__PURE__*/React.createElement(\"feFlood\", {\n floodOpacity: 0,\n result: \"BackgroundImageFix\"\n}), /*#__PURE__*/React.createElement(\"feColorMatrix\", {\n in: \"SourceAlpha\",\n type: \"matrix\",\n values: \"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0\",\n result: \"hardAlpha\"\n}), /*#__PURE__*/React.createElement(\"feOffset\", null), /*#__PURE__*/React.createElement(\"feGaussianBlur\", {\n stdDeviation: 4\n}), /*#__PURE__*/React.createElement(\"feComposite\", {\n in2: \"hardAlpha\",\n operator: \"out\"\n}), /*#__PURE__*/React.createElement(\"feColorMatrix\", {\n type: \"matrix\",\n values: \"0 0 0 0 0.564516 0 0 0 0 0.4375 0 0 0 0 1 0 0 0 1 0\"\n}), /*#__PURE__*/React.createElement(\"feBlend\", {\n mode: \"normal\",\n in2: \"BackgroundImageFix\",\n result: \"effect1_dropShadow_0_918\"\n}), /*#__PURE__*/React.createElement(\"feBlend\", {\n mode: \"normal\",\n in: \"SourceGraphic\",\n in2: \"effect1_dropShadow_0_918\",\n result: \"shape\"\n})), /*#__PURE__*/React.createElement(\"filter\", {\n id: \"filter3_d_0_918\",\n x: 27.1392,\n y: 107.23,\n width: 24.3672,\n height: 24.3672,\n filterUnits: \"userSpaceOnUse\",\n colorInterpolationFilters: \"sRGB\"\n}, /*#__PURE__*/React.createElement(\"feFlood\", {\n floodOpacity: 0,\n result: \"BackgroundImageFix\"\n}), /*#__PURE__*/React.createElement(\"feColorMatrix\", {\n in: \"SourceAlpha\",\n type: \"matrix\",\n values: \"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0\",\n result: \"hardAlpha\"\n}), /*#__PURE__*/React.createElement(\"feOffset\", null), /*#__PURE__*/React.createElement(\"feGaussianBlur\", {\n stdDeviation: 4.4304\n}), /*#__PURE__*/React.createElement(\"feComposite\", {\n in2: \"hardAlpha\",\n operator: \"out\"\n}), /*#__PURE__*/React.createElement(\"feColorMatrix\", {\n type: \"matrix\",\n values: \"0 0 0 0 0.564516 0 0 0 0 0.4375 0 0 0 0 1 0 0 0 1 0\"\n}), /*#__PURE__*/React.createElement(\"feBlend\", {\n mode: \"normal\",\n in2: \"BackgroundImageFix\",\n result: \"effect1_dropShadow_0_918\"\n}), /*#__PURE__*/React.createElement(\"feBlend\", {\n mode: \"normal\",\n in: \"SourceGraphic\",\n in2: \"effect1_dropShadow_0_918\",\n result: \"shape\"\n})), /*#__PURE__*/React.createElement(\"filter\", {\n id: \"filter4_d_0_918\",\n x: 136.709,\n y: 158.8,\n width: 37.1925,\n height: 37.1925,\n filterUnits: \"userSpaceOnUse\",\n colorInterpolationFilters: \"sRGB\"\n}, /*#__PURE__*/React.createElement(\"feFlood\", {\n floodOpacity: 0,\n result: \"BackgroundImageFix\"\n}), /*#__PURE__*/React.createElement(\"feColorMatrix\", {\n in: \"SourceAlpha\",\n type: \"matrix\",\n values: \"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0\",\n result: \"hardAlpha\"\n}), /*#__PURE__*/React.createElement(\"feOffset\", null), /*#__PURE__*/React.createElement(\"feGaussianBlur\", {\n stdDeviation: 6.6456\n}), /*#__PURE__*/React.createElement(\"feComposite\", {\n in2: \"hardAlpha\",\n operator: \"out\"\n}), /*#__PURE__*/React.createElement(\"feColorMatrix\", {\n type: \"matrix\",\n values: \"0 0 0 0 0.564516 0 0 0 0 0.4375 0 0 0 0 1 0 0 0 1 0\"\n}), /*#__PURE__*/React.createElement(\"feBlend\", {\n mode: \"normal\",\n in2: \"BackgroundImageFix\",\n result: \"effect1_dropShadow_0_918\"\n}), /*#__PURE__*/React.createElement(\"feBlend\", {\n mode: \"normal\",\n in: \"SourceGraphic\",\n in2: \"effect1_dropShadow_0_918\",\n result: \"shape\"\n})), /*#__PURE__*/React.createElement(\"filter\", {\n id: \"filter5_d_0_918\",\n x: 74.1392,\n y: 16.23,\n width: 28.3316,\n height: 28.3317,\n filterUnits: \"userSpaceOnUse\",\n colorInterpolationFilters: \"sRGB\"\n}, /*#__PURE__*/React.createElement(\"feFlood\", {\n floodOpacity: 0,\n result: \"BackgroundImageFix\"\n}), /*#__PURE__*/React.createElement(\"feColorMatrix\", {\n in: \"SourceAlpha\",\n type: \"matrix\",\n values: \"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0\",\n result: \"hardAlpha\"\n}), /*#__PURE__*/React.createElement(\"feOffset\", null), /*#__PURE__*/React.createElement(\"feGaussianBlur\", {\n stdDeviation: 4.4304\n}), /*#__PURE__*/React.createElement(\"feComposite\", {\n in2: \"hardAlpha\",\n operator: \"out\"\n}), /*#__PURE__*/React.createElement(\"feColorMatrix\", {\n type: \"matrix\",\n values: \"0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 1 0\"\n}), /*#__PURE__*/React.createElement(\"feBlend\", {\n mode: \"normal\",\n in2: \"BackgroundImageFix\",\n result: \"effect1_dropShadow_0_918\"\n}), /*#__PURE__*/React.createElement(\"feBlend\", {\n mode: \"normal\",\n in: \"SourceGraphic\",\n in2: \"effect1_dropShadow_0_918\",\n result: \"shape\"\n})), /*#__PURE__*/React.createElement(\"linearGradient\", {\n id: \"paint0_linear_0_918\",\n x1: 191.117,\n y1: 47.8732,\n x2: 382.537,\n y2: 49.2776,\n gradientUnits: \"userSpaceOnUse\"\n}, /*#__PURE__*/React.createElement(\"stop\", {\n stopColor: \"#5322FB\",\n stopOpacity: 0.85\n}), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 1,\n stopColor: \"#5322FB\",\n stopOpacity: 0\n})), /*#__PURE__*/React.createElement(\"linearGradient\", {\n id: \"paint1_linear_0_918\",\n x1: 227.707,\n y1: 63.7176,\n x2: 279.863,\n y2: 287.973,\n gradientUnits: \"userSpaceOnUse\"\n}, /*#__PURE__*/React.createElement(\"stop\", {\n stopColor: \"#2E3EC6\"\n}), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 1,\n stopColor: \"#5322FB\",\n stopOpacity: 0\n})), /*#__PURE__*/React.createElement(\"radialGradient\", {\n id: \"paint2_radial_0_918\",\n cx: 0,\n cy: 0,\n r: 1,\n gradientUnits: \"userSpaceOnUse\",\n gradientTransform: \"translate(180.08 68.148) rotate(31.4443) scale(101.913 101.913)\"\n}, /*#__PURE__*/React.createElement(\"stop\", {\n stopColor: \"white\",\n stopOpacity: 0.62\n}), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 1,\n stopColor: \"white\",\n stopOpacity: 0\n})), /*#__PURE__*/React.createElement(\"clipPath\", {\n id: \"clip0_0_918\"\n}, /*#__PURE__*/React.createElement(\"rect\", {\n width: 368,\n height: 235,\n fill: \"white\"\n})))));\nexport default SvgVisual;","var _path;\nfunction _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nimport * as React from \"react\";\nconst SvgRocket = props => /*#__PURE__*/React.createElement(\"svg\", _extends({\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 24 24\"\n}, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M7.36405 9.15307C8.86063 3.16677 20.1647 1.00167 21.5815 2.41848C22.9983 3.83529 20.8332 15.1394 14.8469 16.6359C15.6617 17.8581 15.2895 19.5132 14.03 20.2689L11.2417 21.9419C10.9966 22.0889 10.6805 21.9429 10.6335 21.661L9.98306 17.7584L6.24162 14.0169L2.33896 13.3665C2.05707 13.3195 1.91107 13.0034 2.0581 12.7583L3.73108 9.97C4.48679 8.71048 6.14191 8.33831 7.36405 9.15307ZM15.4092 10.7103C14.8233 11.2963 13.8733 11.2963 13.2873 10.7103C12.7014 10.1244 12.7014 9.1744 13.2873 8.58845C13.8733 8.00251 14.8233 8.00251 15.4092 8.58845C15.9952 9.1744 15.9952 10.1244 15.4092 10.7103ZM3.12669 21.2714C2.89051 21.3546 2.64623 21.1103 2.72942 20.8741L3.9172 17.5019C4.36869 16.22 6.02868 15.9276 7.05093 16.9499C8.07319 17.9721 7.78079 19.6321 6.49894 20.0836L3.12669 21.2714Z\",\n fill: \"white\"\n})));\nexport default SvgRocket;","var _g, _defs;\nfunction _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nimport * as React from \"react\";\nconst SvgVisual = props => /*#__PURE__*/React.createElement(\"svg\", _extends({\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 344 156\"\n}, props), _g || (_g = /*#__PURE__*/React.createElement(\"g\", {\n clipPath: \"url(#clip0_0_3)\"\n}, /*#__PURE__*/React.createElement(\"rect\", {\n width: 344,\n height: 156,\n fill: \"#FFB629\"\n}), /*#__PURE__*/React.createElement(\"rect\", {\n width: 344,\n height: 156,\n fill: \"url(#paint0_radial_0_3)\"\n}), /*#__PURE__*/React.createElement(\"rect\", {\n width: 344,\n height: 156,\n fill: \"url(#paint1_radial_0_3)\",\n fillOpacity: 0.3\n}), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M344 -32.9082H0V219.74H74.6175C45.5021 201.081 26.2064 168.44 26.2064 131.292C26.2064 73.3151 73.2056 26.3159 131.182 26.3159C189.159 26.3159 236.158 73.3151 236.158 131.292C236.158 168.44 216.862 201.081 187.747 219.74H344V-32.9082Z\",\n fill: \"url(#paint2_linear_0_3)\",\n fillOpacity: 0.6\n}), /*#__PURE__*/React.createElement(\"g\", {\n filter: \"url(#filter0_d_0_3)\"\n}, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M56.601 163.023C56.7026 163.034 56.8046 163.007 56.887 162.947L59.1342 161.299C59.4208 161.089 59.8204 161.319 59.7817 161.673L59.4784 164.443C59.4672 164.544 59.4946 164.646 59.555 164.729L61.2027 166.976C61.4129 167.262 61.1821 167.662 60.8289 167.623L58.0589 167.32C57.9573 167.309 57.8553 167.336 57.7729 167.397L55.5257 169.044C55.2391 169.254 54.8395 169.024 54.8781 168.67L55.1815 165.901C55.1927 165.799 55.1653 165.697 55.1049 165.615L53.4572 163.367C53.247 163.081 53.4778 162.681 53.831 162.72L56.601 163.023Z\",\n fill: \"#D1D0FF\"\n})), /*#__PURE__*/React.createElement(\"g\", {\n filter: \"url(#filter1_d_0_3)\"\n}, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M280.263 88.7594C280.156 88.7122 280.07 88.6266 280.023 88.5194L278.736 85.5959C278.572 85.223 278.043 85.223 277.879 85.5959L276.593 88.5194C276.546 88.6266 276.46 88.7122 276.353 88.7594L273.429 90.0458C273.056 90.2098 273.056 90.7388 273.429 90.9029L276.353 92.1892C276.46 92.2364 276.546 92.322 276.593 92.4292L277.879 95.3528C278.043 95.7256 278.572 95.7256 278.736 95.3528L280.023 92.4292C280.07 92.322 280.156 92.2364 280.263 92.1892L283.186 90.9029C283.559 90.7388 283.559 90.2098 283.186 90.0458L280.263 88.7594Z\",\n fill: \"#D1D0FF\"\n})), /*#__PURE__*/React.createElement(\"g\", {\n filter: \"url(#filter2_d_0_3)\"\n}, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M231.419 29.6872C231.35 29.6568 231.295 29.6018 231.265 29.5329L230.438 27.6535C230.332 27.4138 229.992 27.4138 229.887 27.6535L229.06 29.5329C229.03 29.6018 228.975 29.6568 228.906 29.6872L227.026 30.5141C226.786 30.6196 226.786 30.9596 227.026 31.0651L228.906 31.8921C228.975 31.9224 229.03 31.9774 229.06 32.0463L229.887 33.9258C229.992 34.1655 230.332 34.1655 230.438 33.9258L231.265 32.0463C231.295 31.9774 231.35 31.9224 231.419 31.8921L233.298 31.0651C233.538 30.9596 233.538 30.6196 233.298 30.5141L231.419 29.6872Z\",\n fill: \"#D1D0FF\"\n})), /*#__PURE__*/React.createElement(\"g\", {\n filter: \"url(#filter3_d_0_3)\"\n}, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M303.015 33.0031C302.946 32.9728 302.891 32.9177 302.861 32.8488L302.034 30.9694C301.928 30.7297 301.588 30.7297 301.483 30.9694L300.656 32.8488C300.626 32.9177 300.571 32.9728 300.502 33.0031L298.622 33.83C298.382 33.9355 298.382 34.2756 298.622 34.381L300.502 35.208C300.571 35.2383 300.626 35.2933 300.656 35.3623L301.483 37.2417C301.588 37.4814 301.928 37.4814 302.034 37.2417L302.861 35.3623C302.891 35.2933 302.946 35.2383 303.015 35.208L304.894 34.381C305.134 34.2756 305.134 33.9355 304.894 33.83L303.015 33.0031Z\",\n fill: \"#D1D0FF\"\n})), /*#__PURE__*/React.createElement(\"g\", {\n filter: \"url(#filter4_d_0_3)\"\n}, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M30.0392 84.3188C29.9768 84.2914 29.927 84.2416 29.8996 84.1792L29.1514 82.4789C29.056 82.262 28.7483 82.262 28.6529 82.4789L27.9048 84.1792C27.8773 84.2416 27.8275 84.2914 27.7652 84.3188L26.0648 85.067C25.848 85.1624 25.848 85.4701 26.0648 85.5655L27.7652 86.3136C27.8275 86.3411 27.8773 86.3909 27.9048 86.4532L28.6529 88.1536C28.7483 88.3704 29.056 88.3704 29.1514 88.1536L29.8996 86.4532C29.927 86.3909 29.9768 86.3411 30.0392 86.3136L31.7395 85.5655C31.9564 85.4701 31.9564 85.1624 31.7395 85.067L30.0392 84.3188Z\",\n fill: \"#D1D0FF\"\n})), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M248.286 126.905C353.375 121.865 347.617 13.9123 347.617 13.9123L401.227 207.039C139.181 372.637 -0.652297 128.445 156.794 44.9624C158.947 43.8207 161.82 45.0024 162.546 47.3714C162.759 48.0676 162.761 48.806 162.576 49.4878C151.419 90.7575 194.416 129.489 248.286 126.905Z\",\n fill: \"url(#paint3_linear_0_3)\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M226.226 144.852C344.266 161.879 346.938 55.7423 346.998 50.6238L345.507 256.516C43.9004 357.315 -18.8339 89.1434 157.723 44.1453C160.1 43.5394 162.482 45.335 162.482 47.7883C162.482 48.5191 162.263 49.2423 161.882 49.8661C139.02 87.3191 173.084 137.187 226.226 144.852Z\",\n fill: \"url(#paint4_linear_0_3)\",\n fillOpacity: 0.6\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M226.226 144.852C344.266 161.879 346.938 55.7423 346.998 50.6238L345.507 256.516C43.9004 357.315 -18.8339 89.1434 157.723 44.1453C160.1 43.5394 162.482 45.335 162.482 47.7883C162.482 48.5191 162.263 49.2423 161.882 49.8661C139.02 87.3191 173.084 137.187 226.226 144.852Z\",\n fill: \"url(#paint5_radial_0_3)\",\n fillOpacity: 0.8\n}), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M164.9 33.5107C166.546 27.2251 178.98 24.9518 180.539 26.4394C182.097 27.927 179.716 39.7963 173.131 41.3677C174.027 42.651 173.618 44.3889 172.232 45.1824L169.165 46.939C168.896 47.0934 168.548 46.9401 168.496 46.6441L167.781 42.5463L163.665 38.6178L159.372 37.9348C159.062 37.8855 158.901 37.5535 159.063 37.2962L160.903 34.3685C161.735 33.046 163.555 32.6552 164.9 33.5107ZM173.749 35.1459C173.105 35.7611 172.06 35.7611 171.415 35.1459C170.771 34.5306 170.771 33.5331 171.415 32.9179C172.06 32.3026 173.105 32.3026 173.749 32.9179C174.394 33.5331 174.394 34.5306 173.749 35.1459Z\",\n fill: \"#A3A0F8\"\n}), /*#__PURE__*/React.createElement(\"g\", {\n filter: \"url(#filter5_d_0_3)\"\n}, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M119.322 112.292C119.222 112.248 119.143 112.169 119.099 112.069L117.905 109.354C117.752 109.008 117.261 109.008 117.109 109.354L115.914 112.069C115.87 112.169 115.791 112.248 115.691 112.292L112.977 113.486C112.63 113.639 112.63 114.13 112.977 114.282L115.691 115.477C115.791 115.521 115.87 115.6 115.914 115.7L117.109 118.414C117.261 118.761 117.752 118.761 117.905 118.414L119.099 115.7C119.143 115.6 119.222 115.521 119.322 115.477L122.037 114.282C122.383 114.13 122.383 113.639 122.037 113.486L119.322 112.292Z\",\n fill: \"#D1D0FF\",\n fillOpacity: 0.5,\n shapeRendering: \"crispEdges\"\n})), /*#__PURE__*/React.createElement(\"g\", {\n filter: \"url(#filter6_d_0_3)\"\n}, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M57.7879 25.8813C57.6883 25.8375 57.6088 25.758 57.565 25.6584L56.3705 22.9437C56.2182 22.5975 55.727 22.5975 55.5747 22.9437L54.3802 25.6584C54.3364 25.758 54.2569 25.8375 54.1573 25.8813L51.4426 27.0758C51.0964 27.2281 51.0964 27.7193 51.4426 27.8716L54.1573 29.0661C54.2569 29.1099 54.3364 29.1894 54.3802 29.289L55.5747 32.0037C55.727 32.3499 56.2182 32.3499 56.3705 32.0037L57.565 29.289C57.6088 29.1894 57.6883 29.1099 57.7879 29.0661L60.5026 27.8716C60.8488 27.7193 60.8488 27.2281 60.5026 27.0758L57.7879 25.8813Z\",\n fill: \"#D1D0FF\"\n})))), _defs || (_defs = /*#__PURE__*/React.createElement(\"defs\", null, /*#__PURE__*/React.createElement(\"filter\", {\n id: \"filter0_d_0_3\",\n x: 37.3771,\n y: 145.219,\n width: 39.9058,\n height: 39.9058,\n filterUnits: \"userSpaceOnUse\",\n colorInterpolationFilters: \"sRGB\"\n}, /*#__PURE__*/React.createElement(\"feFlood\", {\n floodOpacity: 0,\n result: \"BackgroundImageFix\"\n}), /*#__PURE__*/React.createElement(\"feColorMatrix\", {\n in: \"SourceAlpha\",\n type: \"matrix\",\n values: \"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0\",\n result: \"hardAlpha\"\n}), /*#__PURE__*/React.createElement(\"feOffset\", null), /*#__PURE__*/React.createElement(\"feGaussianBlur\", {\n stdDeviation: 8\n}), /*#__PURE__*/React.createElement(\"feComposite\", {\n in2: \"hardAlpha\",\n operator: \"out\"\n}), /*#__PURE__*/React.createElement(\"feColorMatrix\", {\n type: \"matrix\",\n values: \"0 0 0 0 0.564516 0 0 0 0 0.4375 0 0 0 0 1 0 0 0 1 0\"\n}), /*#__PURE__*/React.createElement(\"feBlend\", {\n mode: \"normal\",\n in2: \"BackgroundImageFix\",\n result: \"effect1_dropShadow_0_3\"\n}), /*#__PURE__*/React.createElement(\"feBlend\", {\n mode: \"normal\",\n in: \"SourceGraphic\",\n in2: \"effect1_dropShadow_0_3\",\n result: \"shape\"\n})), /*#__PURE__*/React.createElement(\"filter\", {\n id: \"filter1_d_0_3\",\n x: 261.95,\n y: 74.1162,\n width: 32.7162,\n height: 32.7162,\n filterUnits: \"userSpaceOnUse\",\n colorInterpolationFilters: \"sRGB\"\n}, /*#__PURE__*/React.createElement(\"feFlood\", {\n floodOpacity: 0,\n result: \"BackgroundImageFix\"\n}), /*#__PURE__*/React.createElement(\"feColorMatrix\", {\n in: \"SourceAlpha\",\n type: \"matrix\",\n values: \"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0\",\n result: \"hardAlpha\"\n}), /*#__PURE__*/React.createElement(\"feOffset\", null), /*#__PURE__*/React.createElement(\"feGaussianBlur\", {\n stdDeviation: 5.6\n}), /*#__PURE__*/React.createElement(\"feComposite\", {\n in2: \"hardAlpha\",\n operator: \"out\"\n}), /*#__PURE__*/React.createElement(\"feColorMatrix\", {\n type: \"matrix\",\n values: \"0 0 0 0 0.564516 0 0 0 0 0.4375 0 0 0 0 1 0 0 0 1 0\"\n}), /*#__PURE__*/React.createElement(\"feBlend\", {\n mode: \"normal\",\n in2: \"BackgroundImageFix\",\n result: \"effect1_dropShadow_0_3\"\n}), /*#__PURE__*/React.createElement(\"feBlend\", {\n mode: \"normal\",\n in: \"SourceGraphic\",\n in2: \"effect1_dropShadow_0_3\",\n result: \"shape\"\n})), /*#__PURE__*/React.createElement(\"filter\", {\n id: \"filter2_d_0_3\",\n x: 210.846,\n y: 11.4737,\n width: 38.6318,\n height: 38.6318,\n filterUnits: \"userSpaceOnUse\",\n colorInterpolationFilters: \"sRGB\"\n}, /*#__PURE__*/React.createElement(\"feFlood\", {\n floodOpacity: 0,\n result: \"BackgroundImageFix\"\n}), /*#__PURE__*/React.createElement(\"feColorMatrix\", {\n in: \"SourceAlpha\",\n type: \"matrix\",\n values: \"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0\",\n result: \"hardAlpha\"\n}), /*#__PURE__*/React.createElement(\"feOffset\", null), /*#__PURE__*/React.createElement(\"feGaussianBlur\", {\n stdDeviation: 8\n}), /*#__PURE__*/React.createElement(\"feComposite\", {\n in2: \"hardAlpha\",\n operator: \"out\"\n}), /*#__PURE__*/React.createElement(\"feColorMatrix\", {\n type: \"matrix\",\n values: \"0 0 0 0 0.564516 0 0 0 0 0.4375 0 0 0 0 1 0 0 0 1 0\"\n}), /*#__PURE__*/React.createElement(\"feBlend\", {\n mode: \"normal\",\n in2: \"BackgroundImageFix\",\n result: \"effect1_dropShadow_0_3\"\n}), /*#__PURE__*/React.createElement(\"feBlend\", {\n mode: \"normal\",\n in: \"SourceGraphic\",\n in2: \"effect1_dropShadow_0_3\",\n result: \"shape\"\n})), /*#__PURE__*/React.createElement(\"filter\", {\n id: \"filter3_d_0_3\",\n x: 282.442,\n y: 14.7896,\n width: 38.6318,\n height: 38.6318,\n filterUnits: \"userSpaceOnUse\",\n colorInterpolationFilters: \"sRGB\"\n}, /*#__PURE__*/React.createElement(\"feFlood\", {\n floodOpacity: 0,\n result: \"BackgroundImageFix\"\n}), /*#__PURE__*/React.createElement(\"feColorMatrix\", {\n in: \"SourceAlpha\",\n type: \"matrix\",\n values: \"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0\",\n result: \"hardAlpha\"\n}), /*#__PURE__*/React.createElement(\"feOffset\", null), /*#__PURE__*/React.createElement(\"feGaussianBlur\", {\n stdDeviation: 8\n}), /*#__PURE__*/React.createElement(\"feComposite\", {\n in2: \"hardAlpha\",\n operator: \"out\"\n}), /*#__PURE__*/React.createElement(\"feColorMatrix\", {\n type: \"matrix\",\n values: \"0 0 0 0 0.564516 0 0 0 0 0.4375 0 0 0 0 1 0 0 0 1 0\"\n}), /*#__PURE__*/React.createElement(\"feBlend\", {\n mode: \"normal\",\n in2: \"BackgroundImageFix\",\n result: \"effect1_dropShadow_0_3\"\n}), /*#__PURE__*/React.createElement(\"feBlend\", {\n mode: \"normal\",\n in: \"SourceGraphic\",\n in2: \"effect1_dropShadow_0_3\",\n result: \"shape\"\n})), /*#__PURE__*/React.createElement(\"filter\", {\n id: \"filter4_d_0_3\",\n x: 17.9022,\n y: 74.3162,\n width: 22,\n height: 22,\n filterUnits: \"userSpaceOnUse\",\n colorInterpolationFilters: \"sRGB\"\n}, /*#__PURE__*/React.createElement(\"feFlood\", {\n floodOpacity: 0,\n result: \"BackgroundImageFix\"\n}), /*#__PURE__*/React.createElement(\"feColorMatrix\", {\n in: \"SourceAlpha\",\n type: \"matrix\",\n values: \"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0\",\n result: \"hardAlpha\"\n}), /*#__PURE__*/React.createElement(\"feOffset\", null), /*#__PURE__*/React.createElement(\"feGaussianBlur\", {\n stdDeviation: 4\n}), /*#__PURE__*/React.createElement(\"feComposite\", {\n in2: \"hardAlpha\",\n operator: \"out\"\n}), /*#__PURE__*/React.createElement(\"feColorMatrix\", {\n type: \"matrix\",\n values: \"0 0 0 0 0.564516 0 0 0 0 0.4375 0 0 0 0 1 0 0 0 1 0\"\n}), /*#__PURE__*/React.createElement(\"feBlend\", {\n mode: \"normal\",\n in2: \"BackgroundImageFix\",\n result: \"effect1_dropShadow_0_3\"\n}), /*#__PURE__*/React.createElement(\"feBlend\", {\n mode: \"normal\",\n in: \"SourceGraphic\",\n in2: \"effect1_dropShadow_0_3\",\n result: \"shape\"\n})), /*#__PURE__*/React.createElement(\"filter\", {\n id: \"filter5_d_0_3\",\n x: 100.717,\n y: 97.0947,\n width: 33.5793,\n height: 33.5793,\n filterUnits: \"userSpaceOnUse\",\n colorInterpolationFilters: \"sRGB\"\n}, /*#__PURE__*/React.createElement(\"feFlood\", {\n floodOpacity: 0,\n result: \"BackgroundImageFix\"\n}), /*#__PURE__*/React.createElement(\"feColorMatrix\", {\n in: \"SourceAlpha\",\n type: \"matrix\",\n values: \"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0\",\n result: \"hardAlpha\"\n}), /*#__PURE__*/React.createElement(\"feOffset\", null), /*#__PURE__*/React.createElement(\"feGaussianBlur\", {\n stdDeviation: 6\n}), /*#__PURE__*/React.createElement(\"feComposite\", {\n in2: \"hardAlpha\",\n operator: \"out\"\n}), /*#__PURE__*/React.createElement(\"feColorMatrix\", {\n type: \"matrix\",\n values: \"0 0 0 0 0.564516 0 0 0 0 0.4375 0 0 0 0 1 0 0 0 1 0\"\n}), /*#__PURE__*/React.createElement(\"feBlend\", {\n mode: \"normal\",\n in2: \"BackgroundImageFix\",\n result: \"effect1_dropShadow_0_3\"\n}), /*#__PURE__*/React.createElement(\"feBlend\", {\n mode: \"normal\",\n in: \"SourceGraphic\",\n in2: \"effect1_dropShadow_0_3\",\n result: \"shape\"\n})), /*#__PURE__*/React.createElement(\"filter\", {\n id: \"filter6_d_0_3\",\n x: 43.1829,\n y: 14.684,\n width: 25.5793,\n height: 25.5793,\n filterUnits: \"userSpaceOnUse\",\n colorInterpolationFilters: \"sRGB\"\n}, /*#__PURE__*/React.createElement(\"feFlood\", {\n floodOpacity: 0,\n result: \"BackgroundImageFix\"\n}), /*#__PURE__*/React.createElement(\"feColorMatrix\", {\n in: \"SourceAlpha\",\n type: \"matrix\",\n values: \"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0\",\n result: \"hardAlpha\"\n}), /*#__PURE__*/React.createElement(\"feOffset\", null), /*#__PURE__*/React.createElement(\"feGaussianBlur\", {\n stdDeviation: 4\n}), /*#__PURE__*/React.createElement(\"feComposite\", {\n in2: \"hardAlpha\",\n operator: \"out\"\n}), /*#__PURE__*/React.createElement(\"feColorMatrix\", {\n type: \"matrix\",\n values: \"0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 1 0\"\n}), /*#__PURE__*/React.createElement(\"feBlend\", {\n mode: \"normal\",\n in2: \"BackgroundImageFix\",\n result: \"effect1_dropShadow_0_3\"\n}), /*#__PURE__*/React.createElement(\"feBlend\", {\n mode: \"normal\",\n in: \"SourceGraphic\",\n in2: \"effect1_dropShadow_0_3\",\n result: \"shape\"\n})), /*#__PURE__*/React.createElement(\"radialGradient\", {\n id: \"paint0_radial_0_3\",\n cx: 0,\n cy: 0,\n r: 1,\n gradientUnits: \"userSpaceOnUse\",\n gradientTransform: \"translate(344 5.61774e-06) rotate(163.179) scale(325.686 120.29)\"\n}, /*#__PURE__*/React.createElement(\"stop\", {\n stopColor: \"#2F4EAD\"\n}), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 1,\n stopColor: \"#050C34\"\n})), /*#__PURE__*/React.createElement(\"radialGradient\", {\n id: \"paint1_radial_0_3\",\n cx: 0,\n cy: 0,\n r: 1,\n gradientUnits: \"userSpaceOnUse\",\n gradientTransform: \"translate(338.391 -8.09829e-06) rotate(144.789) scale(203.653 265.049)\"\n}, /*#__PURE__*/React.createElement(\"stop\", {\n stopColor: \"#7957FF\"\n}), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 1,\n stopColor: \"#7957FF\",\n stopOpacity: 0\n})), /*#__PURE__*/React.createElement(\"linearGradient\", {\n id: \"paint2_linear_0_3\",\n x1: -13.2527,\n y1: 10.6272,\n x2: 252.905,\n y2: 163.408,\n gradientUnits: \"userSpaceOnUse\"\n}, /*#__PURE__*/React.createElement(\"stop\", {\n stopColor: \"#000318\"\n}), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 1,\n stopColor: \"#000318\",\n stopOpacity: 0\n})), /*#__PURE__*/React.createElement(\"linearGradient\", {\n id: \"paint3_linear_0_3\",\n x1: 170.464,\n y1: 28.6949,\n x2: 343.289,\n y2: 29.9628,\n gradientUnits: \"userSpaceOnUse\"\n}, /*#__PURE__*/React.createElement(\"stop\", {\n stopColor: \"#5322FB\",\n stopOpacity: 0.85\n}), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 1,\n stopColor: \"#5322FB\",\n stopOpacity: 0\n})), /*#__PURE__*/React.createElement(\"linearGradient\", {\n id: \"paint4_linear_0_3\",\n x1: 203.5,\n y1: 43,\n x2: 250.589,\n y2: 245.469,\n gradientUnits: \"userSpaceOnUse\"\n}, /*#__PURE__*/React.createElement(\"stop\", {\n stopColor: \"#2E3EC6\"\n}), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 1,\n stopColor: \"#5322FB\",\n stopOpacity: 0\n})), /*#__PURE__*/React.createElement(\"radialGradient\", {\n id: \"paint5_radial_0_3\",\n cx: 0,\n cy: 0,\n r: 1,\n gradientUnits: \"userSpaceOnUse\",\n gradientTransform: \"translate(160.5 47) rotate(31.4443) scale(92.0122 92.0122)\"\n}, /*#__PURE__*/React.createElement(\"stop\", {\n stopColor: \"white\",\n stopOpacity: 0.62\n}), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 1,\n stopColor: \"white\",\n stopOpacity: 0\n})), /*#__PURE__*/React.createElement(\"clipPath\", {\n id: \"clip0_0_3\"\n}, /*#__PURE__*/React.createElement(\"rect\", {\n width: 344,\n height: 156,\n fill: \"white\"\n})))));\nexport default SvgVisual;","import { useEffect, useRef, useState } from 'react';\nimport { fetchUser } from '../utils';\n\nconst checkIsUserLoggedIn = user => {\n if (!user) return false;\n if (user?.username === 'guest_apiDemo') return false;\n if (user?.account_type?.name !== 'GUEST') {\n return true;\n }\n return false;\n};\n\nconst setUserToWindow = user => {\n if (!window.user) {\n window.user = user;\n }\n const event = new Event('jfheader-user-ready');\n window.dispatchEvent(event);\n};\n\nconst exceptionallyOverwriteUserDataForFormUser = (user, isFormUser) => {\n if (!isFormUser) return;\n const usr = user;\n usr.username = user.email; // Form users don't have a username\n usr.usage = {};\n usr.account_type = { limits: {}, name: 'FORM_USER' };\n};\n\nconst isFormUser = userType => userType === 'FORM_USER';\n\nconst useUser = (userAsProp, userTypeAsProp, isLoggedInAsProp) => {\n const userTypeRef = useRef('USER');\n const [user, setUser] = useState(userAsProp);\n const [userType, setUserType] = useState(userTypeAsProp);\n const [isLoggedIn, setIsLoggedIn] = useState(isLoggedInAsProp || checkIsUserLoggedIn(userAsProp));\n\n useEffect(() => {\n const initUser = async () => {\n if (userAsProp) {\n setUserToWindow(user);\n exceptionallyOverwriteUserDataForFormUser(user, isFormUser(userTypeAsProp));\n return;\n }\n\n try {\n const { type, credentials } = await fetchUser() || {};\n userTypeRef.current = type;\n setUserToWindow(credentials);\n exceptionallyOverwriteUserDataForFormUser(credentials, isFormUser(type));\n setUser(credentials);\n } catch (e) {\n console.log('combinedInfo error', e);\n }\n };\n\n initUser();\n }, []);\n\n useEffect(() => {\n setUserType(userTypeAsProp || userTypeRef.current);\n }, [user]);\n\n useEffect(() => {\n if (!user) return;\n setIsLoggedIn(checkIsUserLoggedIn(user));\n }, [user]);\n\n return [user, isLoggedIn, userType];\n};\n\nexport default useUser;\n","import { useEffect, useState } from 'react';\nimport { getHeaderRootEl } from '../utils';\n\nconst useStickyHeader = (\n activateBehaviour = false,\n scrollTreshold = 0\n) => {\n const [isSticky, setIsSticky] = useState(false);\n\n useEffect(() => {\n const rootEl = document.querySelector('html');\n const bodyEl = document.querySelector('body');\n const headerEl = getHeaderRootEl().querySelector('.jfRHeader');\n const CLASS_NAME = 'jfHeader-sticky-on'; // use this className for backwards compatibility\n\n const handleScroll = () => {\n if (!activateBehaviour) return;\n const isTresholdExceeded = rootEl?.scrollTop > scrollTreshold;\n setIsSticky(isTresholdExceeded);\n\n if (isTresholdExceeded) {\n bodyEl.style.paddingTop = `${headerEl.clientHeight}px`;\n rootEl?.classList.add(CLASS_NAME);\n } else {\n bodyEl.style.paddingTop = '0px';\n rootEl?.classList.remove(CLASS_NAME);\n }\n };\n\n document.addEventListener('scroll', handleScroll);\n return () => {\n document.removeEventListener('scroll', handleScroll);\n };\n }, []);\n\n return [isSticky];\n};\n\nexport default useStickyHeader;\n","import { useEffect, useState } from 'react';\n\nconst useLazyLoginGroup = () => {\n const [load, setLoad] = useState(false);\n\n useEffect(() => {\n const handleMouseMove = () => {\n setLoad(true);\n window.removeEventListener('mousemove', handleMouseMove);\n };\n window.addEventListener('mousemove', handleMouseMove);\n return () => window.removeEventListener('mousemove', handleMouseMove);\n }, []);\n\n return [load];\n};\n\nexport default useLazyLoginGroup;\n","import { useEffect, useState } from 'react';\n\nconst MOBILE_BREAKPOINT = 1024;\n\nconst useIsMobileScreen = () => {\n const isMobileScreen = () => window?.innerWidth <= MOBILE_BREAKPOINT;\n const [isMobile, setIsMobile] = useState(isMobileScreen());\n\n useEffect(() => {\n const handleResize = () => {\n setIsMobile(isMobileScreen());\n };\n handleResize();\n global.window.addEventListener('resize', handleResize);\n return () => {\n global.window.removeEventListener('resize', handleResize);\n };\n }, []);\n\n return [isMobile];\n};\n\nexport default useIsMobileScreen;\n","import React from 'react';\nimport ReactDOM from 'react-dom';\nimport { getRootElement } from './utils';\nimport { ENTERPRSE_PROMOTIONS_ROOT_EL_ID } from '../constants';\n\nconst renderModal = ({ Modal = null, onClose = f => f, ...props }) => {\n if (!Modal) return null;\n const rootEl = getRootElement(ENTERPRSE_PROMOTIONS_ROOT_EL_ID);\n\n const handleClose = () => {\n ReactDOM.unmountComponentAtNode(rootEl);\n onClose();\n };\n\n ReactDOM.render(\n ,\n rootEl\n );\n};\n\nexport default renderModal;\n","import React from 'react';\nimport { func, node } from 'prop-types';\nimport { t } from '@jotforminc/translation';\nimport { ALL_TEXTS } from '@jotforminc/enterprise-promotions-utils';\nimport CloseIcon from '../../../../assets/svg/close_revised.svg';\n\nexport const DialogRenderer = ({ children }) => (
{children}
);\n\nDialogRenderer.propTypes = { children: node };\nDialogRenderer.defaultProps = { children: null };\n\nexport const ContentRenderer = ({ children, ...props }) => (\n
\n
\n {children}\n
\n
\n);\n\nContentRenderer.propTypes = { children: node };\nContentRenderer.defaultProps = { children: null };\n\nexport const HeaderRenderer = ({ onCloseClick, ...props }) => (\n \n \n \n);\n\nHeaderRenderer.propTypes = { onCloseClick: func };\nHeaderRenderer.defaultProps = { onCloseClick: f => f };\n","import React, { useRef } from 'react';\nimport { Modal } from '@jotforminc/uikit';\nimport { func, string } from 'prop-types';\nimport { t } from '@jotforminc/translation';\nimport {\n PrefilledLeadFormAside, ALL_TEXTS, AUTOMATED_NURTURING_SOURCES, gaAttributesPropType, gaFormTrackingItemsPropType, userPropType\n} from '@jotforminc/enterprise-promotions-utils';\nimport { ContentRenderer, DialogRenderer, HeaderRenderer } from './Renderers';\nimport '../../../../styles/educationToolkitModal.scss';\n\nconst EducationReportModal = (({\n user,\n title,\n middleTitle,\n gaAttributes,\n gaAttributesClose,\n gaFormTrackingItems,\n descriptionText,\n onClose,\n onCloseClick,\n onFormSubmit,\n ...props\n}) => {\n const { EDUCATION_REPORT_MODAL: EDUCATION_REPORT_MODAL_NUR } = AUTOMATED_NURTURING_SOURCES;\n\n const uikitModalRef = useRef(null);\n\n const handleCloseClick = () => {\n uikitModalRef.current?.hide();\n };\n\n return (\n }\n HeaderRenderer={() => }\n onModalClose={onClose}\n >\n
\n {/* left col */}\n
\n
\n {title &&

{t(title)}

}\n {middleTitle &&

{t(middleTitle)}

}\n {descriptionText &&

{t(descriptionText)}

}\n
\n \n
\n {/* right col */}\n
\n \n
\n\n
\n
\n );\n});\n\nEducationReportModal.propTypes = {\n title: string,\n middleTitle: string,\n descriptionText: string,\n explanationText: string,\n user: userPropType.isRequired,\n gaAttributes: gaAttributesPropType.isRequired,\n gaAttributesClose: gaAttributesPropType.isRequired,\n gaFormTrackingItems: gaFormTrackingItemsPropType.isRequired,\n formUiModifier: string,\n onClose: func,\n onCloseClick: func,\n onFormSubmit: func\n};\n\nEducationReportModal.defaultProps = {\n title: '',\n middleTitle: '',\n descriptionText: '',\n explanationText: '',\n formUiModifier: '',\n onClose: f => f,\n onCloseClick: f => f,\n onFormSubmit: f => f\n};\n\nexport default EducationReportModal;\n","import React, { useEffect } from 'react';\nimport { func } from 'prop-types';\nimport {\n ASSET_IDENTIFIER, ALL_TEXTS, GA_FORM_TRACKING_ITEMS, userPropType,\n GA_SUFFIXES, createGaAttributes, gaDataLayerPushClose, mapCallbacksToGaTrackingItems, setEPActions\n} from '@jotforminc/enterprise-promotions-utils';\nimport EducationReportModal from './EducationReportModal';\n\n// Educator's Technology Toolkit Report Modal\nconst EttEducationGatedContentModal = (({\n user,\n onClose\n}) => {\n const { CAMPAIGN: { ETT_EDUCATION_GATED_CONTENT_MODAL: target } } = ASSET_IDENTIFIER;\n let { [target]: gaFormTrackingItems } = GA_FORM_TRACKING_ITEMS;\n\n const gaAttributes = createGaAttributes(target);\n const gaAttributesClose = createGaAttributes(target, GA_SUFFIXES.CLOSE);\n\n useEffect(() => {\n setEPActions({ asset: target, target, action: 'seen' });\n }, []);\n\n const handleClose = () => {\n gaDataLayerPushClose(gaAttributes);\n setEPActions({ asset: target, target, action: 'close' });\n onClose();\n };\n\n const handleCloseClick = () => {\n setEPActions({ asset: target, target: 'closeButton', action: 'click' });\n };\n\n const handleGetInsightsNowClick = () => {\n setEPActions({ asset: target, target: 'getInsightsNowButton', action: 'click' });\n };\n\n const handleFormSubmit = () => {\n setEPActions({ asset: target, target, action: 'formSubmit' });\n };\n\n gaFormTrackingItems = mapCallbacksToGaTrackingItems(gaFormTrackingItems, [handleGetInsightsNowClick]);\n\n return (\n \n );\n});\n\nEttEducationGatedContentModal.propTypes = {\n user: userPropType.isRequired,\n onClose: func\n};\n\nEttEducationGatedContentModal.defaultProps = {\n onClose: f => f\n};\n\nexport default EttEducationGatedContentModal;\n","import { renderModal } from '@jotforminc/enterprise-promotions-utils';\nimport { EttEducationGatedContentModal } from '../components';\n\nconst renderEttEducationGatedContentModal = async props => {\n renderModal({\n Modal: EttEducationGatedContentModal,\n ...props\n });\n};\n\nexport default renderEttEducationGatedContentModal;\n","import { renderEttEducationGatedContentModal } from '@jotforminc/enterprise-promotions';\n\n// Educator's Technology Toolkit Report Modal\nexport const initEpEttGatedContentModal = user => {\n const isEnabled = true;\n const urlParam = 'ettgcm';\n const urlParams = new URLSearchParams(window.location.search);\n const hasUrlParam = urlParams.has(urlParam);\n const shouldChangeButtonBehaviour = isEnabled || hasUrlParam;\n const downloadButtonEl = document.querySelector('.education-download[data-jfa=\"pdf-download-navigator-button\"]');\n\n if (!shouldChangeButtonBehaviour || !downloadButtonEl) return;\n\n downloadButtonEl?.setAttribute('href', '#');\n\n downloadButtonEl?.addEventListener('click', e => {\n e.preventDefault();\n renderEttEducationGatedContentModal({ user });\n });\n};\n","import React from 'react';\nimport ReactDOM from 'react-dom';\nimport { getRootElement } from './utils';\n\nconst renderAsset = ({ Asset, rootElementId, ...props }) => {\n const rootEl = getRootElement(rootElementId);\n\n const handleClose = () => {\n ReactDOM.unmountComponentAtNode(rootEl);\n };\n\n ReactDOM.render(\n ,\n rootEl\n );\n};\n\nexport default renderAsset;\n","import React from 'react';\nimport { func, node } from 'prop-types';\nimport { t } from '@jotforminc/translation';\nimport { IconXmark } from '@jotforminc/svg-icons';\nimport { ALL_TEXTS } from '@jotforminc/enterprise-promotions-utils';\n\nexport const DialogRenderer = ({ children }) => (
{children}
);\n\nDialogRenderer.propTypes = { children: node };\nDialogRenderer.defaultProps = { children: null };\n\nexport const ContentRenderer = ({ children, ...props }) => (\n
\n {children}\n
\n);\n\nContentRenderer.propTypes = { children: node };\nContentRenderer.defaultProps = { children: null };\n\nexport const HeaderRenderer = ({ onCloseClick, ...props }) => (\n <>\n \n \n \n \n);\n\nHeaderRenderer.propTypes = { onCloseClick: func };\nHeaderRenderer.defaultProps = { onCloseClick: f => f };\n","import React, { useEffect, useRef } from 'react';\nimport { Modal } from '@jotforminc/uikit';\nimport { func, object } from 'prop-types';\nimport { t } from '@jotforminc/translation';\nimport {\n ALL_TEXTS, healthcareReportModalSeenAtUserSettingsKey, ASSET_IDENTIFIER, userPropType, GA_FORM_TRACKING_ITEMS,\n setEpUserSettings, createGaAttributes, GA_SUFFIXES, gaDataLayerPushClose, setEPActions, mapCallbacksToGaTrackingItems,\n PrefilledLeadFormAside\n} from '@jotforminc/enterprise-promotions-utils';\nimport { ContentRenderer, DialogRenderer, HeaderRenderer } from './Renderers';\nimport '../../../../styles/healthcareReportModal.scss';\nimport '../../../../styles/dialogShared.scss';\n\nconst HealthcareReportModal = ({\n user,\n modalProps,\n onClose\n}) => {\n const uikitModalRef = useRef(null);\n const { CAMPAIGN: { HEALTHCARE_REPORT_MODAL: target } } = ASSET_IDENTIFIER;\n let { [target]: gaFormTrackingItems } = GA_FORM_TRACKING_ITEMS;\n\n const gaAttributes = createGaAttributes(target);\n const gaAttributesClose = createGaAttributes(target, GA_SUFFIXES.CLOSE);\n\n useEffect(() => {\n setEpUserSettings(healthcareReportModalSeenAtUserSettingsKey);\n setEPActions({ asset: target, target, action: 'seen' });\n }, []);\n\n const handleCloseModalClick = () => {\n uikitModalRef.current?.hide();\n setEPActions({ asset: target, target: 'closeButton', action: 'click' });\n };\n\n const handleClose = () => {\n gaDataLayerPushClose(gaAttributes);\n setEPActions({ asset: target, target: 'onClose', action: 'click' });\n onClose();\n };\n\n const handleGetInsightsNowClick = () => {\n setEPActions({ asset: target, target: 'getInsightsNowButton', action: 'click' });\n };\n\n const handleFormSubmit = () => {\n setEPActions({ asset: target, target, action: 'formSubmit' });\n // saveCustomerAsHubspotFormByUsername ({ lastProductAssetInteraction: sdrSource });\n };\n\n gaFormTrackingItems = mapCallbacksToGaTrackingItems(gaFormTrackingItems, [handleGetInsightsNowClick]);\n\n return (\n }\n HeaderRenderer={() => }\n onModalClose={handleClose}\n {...modalProps}\n >\n
\n
\n {t(ALL_TEXTS.HEALTHCARE_REPORT_MODAL_TITLE)}\n
\n

{t(ALL_TEXTS.HEALTHCARE_REPORT_MODAL_TITLE)}

\n

{t(ALL_TEXTS.HEALTHCARE_REPORT_MODAL_CONTENT)}

\n
\n
\n \n
\n
\n
\n {t(ALL_TEXTS.HEALTHCARE_REPORT_MODAL_TITLE)}\n
\n
\n \n );\n};\n\nHealthcareReportModal.propTypes = {\n user: userPropType.isRequired,\n modalProps: object,\n onClose: func\n};\n\nHealthcareReportModal.defaultProps = {\n modalProps: {},\n onClose: f => f\n};\n\nexport default HealthcareReportModal;\n","import { renderAsset } from '@jotforminc/enterprise-promotions-utils';\nimport { HealthcareReportModal } from '../components';\n\nconst renderHealthcareReportModal = ({\n targetSelector,\n ...props\n}) => {\n renderAsset({\n Asset: HealthcareReportModal,\n rootElementId: targetSelector,\n ...props\n });\n};\n\nexport default renderHealthcareReportModal;\n","export const enabledPages = [\n '/blog/healthcare/',\n '/pdf-templates/e-sign/healthcare',\n '/pdf-templates/healthcare',\n '/table-templates/category/healthcare',\n '/hipaa/templates/',\n '/hipaa/webinar/hipaa-webinar-for-healthcare-providers/',\n '/app-templates/category/healthcare-app-templates',\n '/hipaa/webinar/remote-healthcare-webinar/',\n '/hipaa/webinar/hipaa-compliance-mistakes-webinar/',\n '/what-is-hipaa-compliance/',\n '/form-templates/category/health',\n '/blog/how-to-organize-your-vaccine-distribution-with-jotform/',\n '/approval-templates/category/healthcare',\n '/blog/hipaa-violations/',\n '/hipaa/webinar/managing-vaccine-distribution/',\n '/blog/contactless-screening-for-covid-19/',\n '/blog/shared-decision-making-in-healthcare/',\n '/blog/what-is-a-baa/',\n '/blog/announcing-jotform-health-app/',\n '/form-templates/category/health-coach-forms',\n '/products/approvals/healthcare/',\n '/blog/hippa-compliant/',\n '/form-templates/category/physician-forms',\n '/electronic-signature-for-healthcare/',\n '/form-templates/category/psychologist-forms',\n '/blog/hipaa-compliant-survey-tools/',\n '/form-templates/category/dentist-forms',\n '/form-templates/category/nurse-forms',\n '/form-templates/category/dietitian-forms',\n '/form-templates/category/therapist-forms',\n '/blog/employee-health-screening/',\n '/form-templates/category/esthetician-forms',\n '/form-templates/category/pharmacist-forms',\n '/blog/patients-right-to-access-under-hipaa-webinar/',\n '/home-health-care-forms/',\n '/hipaa/',\n '/hipaa/best-hipaa-compliant-cloud-storage-solutions/',\n '/blog/best-hipaa-compliant-software-products/',\n '/hipaa/features/',\n '/newsletters/announcing-our-new-touchless-mobile-kiosk-and-jotform-health-app/',\n '/blog/best-hipaa-compliant-email-providers/',\n '/blog/when-do-you-need-to-use-hipaa-medical-records-release-form/',\n '/blog/case-study-body-brave/',\n '/blog/jotform-enterprise-one-to-one-health-spotlight/',\n '/enterprise/whitepapers/mastering-your-digital-healthcare-toolkit/',\n '/blog/healthcare-automation/',\n '/blog/healthcare-automation-strategies-webinar/',\n '/blog/case-study-orthoillinois/',\n '/blog/case-study-one-to-one-health/'\n];\n","import { renderHealthcareReportModal } from '@jotforminc/enterprise-promotions';\nimport { readCookie } from '@jotforminc/utils';\nimport { isEnterprise } from '@jotforminc/enterprise-utils';\nimport { StorageHelper } from '@jotforminc/storage-helper';\n\nimport { userSeenCampaign, getCurrentDateWithoutTimeZone, isGuest } from '../../utils';\nimport { enabledPages } from './enabledPages';\n\nexport const initEpHealthcareReportModal = async user => {\n const isAvailableInPage = enabledPages.includes(window.location.pathname);\n if (!isAvailableInPage) return;\n\n const isEnabled = true;\n const urlParam = 'hcrm';\n const seenAtKey = 'enterprise2024HealthcareReportModalSeenAt';\n const urlParams = new URLSearchParams(window.location.search);\n const hasUrlParam = urlParams.has(urlParam);\n const isUserHasAdCookie = readCookie('adwords_mode') === 'on';\n const isGuestUser = isGuest(user);\n const shouldRenderForGuest = isGuestUser && isEnabled && !isEnterprise() && !StorageHelper.getLocalStorageItem({ key: seenAtKey }) && !isUserHasAdCookie;\n\n try {\n const regularUserNotSeenYet = !(await userSeenCampaign(seenAtKey));\n const shouldRenderForRegularUser = !isGuestUser && isEnabled && !isEnterprise && !isUserHasAdCookie && regularUserNotSeenYet;\n const shouldRender = shouldRenderForGuest || shouldRenderForRegularUser || hasUrlParam;\n\n if (!shouldRender) return;\n\n // hotfix for guest users, user settings data return undefined from backend\n if (isGuestUser) {\n StorageHelper.setLocalStorageItem({ key: seenAtKey, value: getCurrentDateWithoutTimeZone() });\n }\n\n let isInitiated = false;\n document.documentElement?.addEventListener('mouseleave', () => {\n if (isInitiated) return;\n isInitiated = true;\n renderHealthcareReportModal({\n user,\n targetSelector: '#healthcare-report-modal-root'\n });\n });\n } catch (error) {\n console.log(`Error on initializing epHealthcareReportModal: ${error}`);\n }\n};\n","import { t } from '@jotforminc/translation';\nimport React, { useEffect } from 'react';\nimport {\n GA_SUFFIXES, createGaAttributes, saveCustomerAsHubspotFormByUsername, setEPActions,\n ASSET_IDENTIFIER, ALL_TEXTS, CTA_URLS, SDR_SOURCES\n} from '@jotforminc/enterprise-promotions-utils';\nimport IconEnterprise from '../../../assets/svg/generalFaqProfessionalServicesBanner/rocket.svg';\nimport '../../../styles/generalFaqProfessionalServicesBanner.scss';\n\nconst GeneralFaqProfessionalServicesBanner = () => {\n const { PRODUCT: { GENERAL_FAQ_PROF_SERVICES_BANNER: target } } = ASSET_IDENTIFIER;\n const {\n GENERAL_FAQ_PROFESSIONAL_SERVICES: {\n CONTACT_SALES_URL,\n LEARN_MORE_URL\n }\n } = CTA_URLS;\n\n const gaAttributes = createGaAttributes(target);\n const gaAttributesGaq = createGaAttributes(target, GA_SUFFIXES.GET_A_QUOTE);\n const gaAttributesLm = createGaAttributes(target, GA_SUFFIXES.LEARN_MORE);\n\n useEffect(() => {\n // registerJotformAction({ action: 'seen', target });\n setEPActions({ asset: target, target, action: 'seen' });\n }, []);\n\n const handleGetAQuoteClick = () => {\n // registerJotformAction({ action: 'click', target: `getAQuoteButton-${target}` });\n setEPActions({ asset: target, target: 'getAQuoteButton', action: 'click' });\n saveCustomerAsHubspotFormByUsername({ lastProductAssetInteraction: SDR_SOURCES.GENERAL_FAQ_PROF_SERVICES_BANNER });\n };\n\n const handleLearnMoreClick = () => {\n // registerJotformAction({ action: 'click', target: `learnMoreButton-${target}` });\n setEPActions({ asset: target, target: 'learnMoreButton', action: 'click' });\n saveCustomerAsHubspotFormByUsername({ lastProductAssetInteraction: SDR_SOURCES.GENERAL_FAQ_PROF_SERVICES_BANNER });\n };\n\n return (\n \n
\n \n {t(ALL_TEXTS.PROFESSIONAL_SERVICES)}\n
\n
\n
\n {t(ALL_TEXTS.GET_HANDS_ON_PROFESSIONAL_SERVICES)}\n
\n

{t(ALL_TEXTS.GET_HANDS_ON_PROFESSIONAL_SERVICES_DESCRIPTION)}

\n
\n
\n {/* get a quote */}\n \n {t(ALL_TEXTS.GET_A_QUOTE)}\n \n {/* learn more */}\n \n {t(ALL_TEXTS.LEARN_MORE)}\n \n
\n \n );\n};\n\nexport default GeneralFaqProfessionalServicesBanner;\n","import { t } from '@jotforminc/translation';\nimport React, { useEffect } from 'react';\nimport {\n GA_SUFFIXES, createGaAttributes, saveCustomerAsHubspotFormByUsername, setEPActions,\n ASSET_IDENTIFIER, ALL_TEXTS, CTA_URLS, SDR_SOURCES\n} from '@jotforminc/enterprise-promotions-utils';\nimport IconEnterprise from '../../../assets/svg/userGuideProfessionalServices/rocket.svg';\nimport '../../../styles/userGuideProfessionalServicesBanner.scss';\n\nconst UserGuideProfessionalServicesBanner = () => {\n const { PRODUCT: { USER_GUIDE_PROF_SERVICES_BANNER: target } } = ASSET_IDENTIFIER;\n const {\n USER_GUIDE_PROFESSIONAL_SERVICES: {\n CONTACT_SALES_URL,\n LEARN_MORE_URL\n }\n } = CTA_URLS;\n\n const gaAttributes = createGaAttributes(target);\n const gaAttributesGaq = createGaAttributes(target, GA_SUFFIXES.GET_A_QUOTE);\n const gaAttributesLm = createGaAttributes(target, GA_SUFFIXES.LEARN_MORE);\n\n useEffect(() => {\n // registerJotformAction({ action: 'seen', target });\n setEPActions({ asset: target, target, action: 'seen' });\n }, []);\n\n const handleGetAQuoteClick = () => {\n // registerJotformAction({ action: 'click', target: `getAQuoteButton-${target}` });\n setEPActions({ asset: target, target: 'getAQuoteButton', action: 'click' });\n saveCustomerAsHubspotFormByUsername({ lastProductAssetInteraction: SDR_SOURCES.USER_GUIDE_PROF_SERVICES_BANNER });\n };\n\n const handleLearnMoreClick = () => {\n // registerJotformAction({ action: 'click', target: `learnMoreButton-${target}` });\n setEPActions({ asset: target, target: 'learnMoreButton', action: 'click' });\n saveCustomerAsHubspotFormByUsername({ lastProductAssetInteraction: SDR_SOURCES.USER_GUIDE_PROF_SERVICES_BANNER });\n };\n\n return (\n \n
\n
\n \n {t(ALL_TEXTS.GET_HANDS_ON_PROFESSIONAL_SERVICES)}\n
\n

{t(ALL_TEXTS.GET_HANDS_ON_PROFESSIONAL_SERVICES_DESCRIPTION)}

\n
\n
\n {/* get a quote */}\n \n {t(ALL_TEXTS.GET_A_QUOTE)}\n \n {/* learn more */}\n \n {t(ALL_TEXTS.LEARN_MORE)}\n \n
\n \n );\n};\n\nexport default UserGuideProfessionalServicesBanner;\n","/* global HTMLElement */\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport { getRootElement } from '@jotforminc/enterprise-promotions-utils';\nimport { UserGuideProfessionalServicesBanner, GeneralFaqProfessionalServicesBanner } from '../components';\n\nconst renderProfServicesAsset = ({ assetName, rootElementId, ...props }) => {\n const rootEl = getRootElement(rootElementId);\n\n if (!(rootEl instanceof HTMLElement)) return;\n\n const assetMap = {\n GeneralFaqProfessionalServicesBanner,\n UserGuideProfessionalServicesBanner\n };\n\n const SelectedAsset = assetMap[assetName];\n\n ReactDOM.render(\n ,\n rootEl\n );\n};\n\nexport default renderProfServicesAsset;\n","import { renderProfServicesAsset } from '@jotforminc/enterprise-promotions';\n\nconst renderUserGuideBanner = (helpRoot, helpRootId) => {\n if (!helpRoot) return;\n\n renderProfServicesAsset({\n assetName: 'UserGuideProfessionalServicesBanner',\n rootElementId: helpRootId\n });\n};\n\nconst renderFaqBanner = (faqRoot, faqRootId) => {\n if (!faqRoot) return;\n\n renderProfServicesAsset({\n assetName: 'GeneralFaqProfessionalServicesBanner',\n rootElementId: faqRootId\n });\n};\n\nexport const initEpProfessionalServices = () => {\n const helpRootId = 'help-prof-services-banner'; // https://github.com/jotform/backend/blob/95dc3f04351536a5147c04e7c898fa39ce0ed878/projects/wp-blog/twig_templates/help/help-sidebar.twig.html#L18\n const faqRootId = 'faq-footer-prof-services-banner'; // https://github.com/jotform/backend/blob/95dc3f04351536a5147c04e7c898fa39ce0ed878/projects/wp-blog/twig_templates/faq/faq.twig.html#L19\n\n const helpRoot = document.querySelector(`#${helpRootId}`);\n const faqRoot = document.querySelector(`#${faqRootId}`);\n\n const isEnabled = true;\n const bannerIsAvailable = (helpRoot || faqRoot) && isEnabled;\n\n if (!bannerIsAvailable) return;\n\n renderUserGuideBanner(helpRoot, helpRootId);\n renderFaqBanner(faqRoot, faqRootId);\n};\n","import React from 'react';\nimport { func, node } from 'prop-types';\nimport { t } from '@jotforminc/translation';\nimport { ALL_TEXTS } from '@jotforminc/enterprise-promotions-utils';\nimport CloseIcon from '../../../../assets/svg/close_revised.svg';\n\nexport const DialogRenderer = ({ children }) => (
{children}
);\n\nDialogRenderer.propTypes = { children: node };\nDialogRenderer.defaultProps = { children: null };\n\nexport const ContentRenderer = ({ children, ...props }) => (\n
\n
\n {children}\n
\n
\n);\n\nContentRenderer.propTypes = { children: node };\nContentRenderer.defaultProps = { children: null };\n\nexport const HeaderRenderer = ({ onCloseClick, ...props }) => (\n \n \n \n);\n\nHeaderRenderer.propTypes = { onCloseClick: func };\nHeaderRenderer.defaultProps = { onCloseClick: f => f };\n","import React, { useEffect, useRef } from 'react';\nimport { Modal } from '@jotforminc/uikit';\nimport { bool, func, string } from 'prop-types';\nimport { t, translationRenderer } from '@jotforminc/translation';\nimport {\n ALL_TEXTS, ASSET_IDENTIFIER, GA_FORM_TRACKING_ITEMS, gaFormTrackingItemsPropType, userPropType, GA_AD_FORM_TRACKING_ITEMS,\n PrefilledLeadFormAside,\n GA_SUFFIXES, createGaAttributes, gaDataLayerPushClose, mapCallbacksToGaTrackingItems, hasAdwordsModeOn\n} from '@jotforminc/enterprise-promotions-utils';\nimport { ContentRenderer, DialogRenderer, HeaderRenderer } from './Renderers';\nimport EnterpriseIcon from '../../../../assets/svg/enterpriseRocketMini.svg';\nimport '../../../../styles/educationDiscountModal.scss';\n\nconst EducationDiscountModal = (({\n user,\n onClose,\n logAbTestAction,\n from,\n isTestVariant,\n ...props\n}) => {\n const uikitModalRef = useRef(null);\n const { AB_TEST: { EDUCATION_DISCOUNT_MODAL, EDUCATION_DISCOUNT_MODAL_FERPA_VIOLATION_EXAMPLES } } = ASSET_IDENTIFIER;\n const target = isTestVariant ? EDUCATION_DISCOUNT_MODAL_FERPA_VIOLATION_EXAMPLES : EDUCATION_DISCOUNT_MODAL;\n\n const isAdForm = hasAdwordsModeOn();\n let { [target]: gaFormTrackingItems } = isAdForm ? GA_AD_FORM_TRACKING_ITEMS : GA_FORM_TRACKING_ITEMS;\n\n const gaAttributes = createGaAttributes(target);\n const gaAttributesClose = createGaAttributes(target, GA_SUFFIXES.CLOSE);\n\n useEffect(() => {\n const actionData = { action: 'seen', target: `${from ? `${from}-` : ''}${target}` };\n logAbTestAction(actionData);\n }, []);\n\n const handleCloseClick = () => {\n const actionData = { action: 'click', target: `closeButton-${target}` };\n uikitModalRef.current?.hide();\n logAbTestAction(actionData);\n };\n\n const handleClose = () => {\n const actionData = { action: 'close', target };\n gaDataLayerPushClose(gaAttributes);\n logAbTestAction(actionData);\n onClose();\n };\n\n const handleContactSalesClick = () => {\n const actionData = { action: 'click', target: `contactSalesButton-${target}` };\n logAbTestAction(actionData);\n };\n\n const handleFormSubmit = () => {\n const actionData = { action: 'formSubmit', target };\n logAbTestAction(actionData);\n };\n\n gaFormTrackingItems = mapCallbacksToGaTrackingItems(gaFormTrackingItems, [handleContactSalesClick]);\n\n return (\n }\n HeaderRenderer={() => }\n onModalClose={handleClose}\n >\n
\n
\n \n \n {t(ALL_TEXTS.JOTFORM_ENTERPRISE_CAPITALIZED)}\n \n

\n {translationRenderer(ALL_TEXTS.APPLY_ENTERPRISE_TO_GET_DISCOUNT_ED_TECH_LINED)({\n renderer1: nowrapText => (\n \n {nowrapText}\n \n )\n })}\n

\n {t(ALL_TEXTS.DEDICATED_SUPPORT_DESC)}\n
\n {/* aside */}\n
\n \n
\n
\n \n );\n});\n\nEducationDiscountModal.propTypes = {\n user: userPropType.isRequired,\n gaFormTrackingItems: gaFormTrackingItemsPropType.isRequired,\n onClose: func,\n logAbTestAction: func,\n from: string,\n isTestVariant: bool.isRequired\n};\n\nEducationDiscountModal.defaultProps = {\n onClose: f => f,\n logAbTestAction: f => f,\n from: ''\n};\n\nexport default EducationDiscountModal;\n","import React, { useEffect, useRef } from 'react';\nimport { t } from '@jotforminc/translation';\nimport { bool, func } from 'prop-types';\nimport { IconRocketSquareFilled } from '@jotforminc/svg-icons';\nimport Tracking from '@jotforminc/tracking';\nimport {\n ALL_TEXTS, ASSET_IDENTIFIER, GA_FORM_TRACKING_ITEMS, userPropType,\n createGaAttributes, GA_SUFFIXES, renderModal,\n PrefilledLeadFormAside\n} from '@jotforminc/enterprise-promotions-utils';\nimport '../../../styles/blogEducationSideBanner.scss';\nimport { EducationDiscountModal } from '../../Modals';\n\nconst BlogEducationSideBanner = ({\n user, logAbTestAction, isFormVisible, isTestVariant\n}) => {\n const sectionRef = useRef();\n const { PRODUCT: { BLOG_EDUCATION_SIDE_BANNER } } = ASSET_IDENTIFIER;\n const target = BLOG_EDUCATION_SIDE_BANNER;\n const { [target]: gaFormTrackingItems } = GA_FORM_TRACKING_ITEMS;\n\n const gaAttributes = createGaAttributes(target);\n const gaAttributesAn = createGaAttributes(target, GA_SUFFIXES.APPLY_NOW);\n const pageUrl = window.location.pathname;\n\n useEffect(() => {\n logAbTestAction({ action: 'seen', target });\n Tracking.enableFS({ epBlogBannerSetII_bool: true });\n }, []);\n\n const handleApplyNowClick = () => {\n renderModal({\n user,\n Modal: EducationDiscountModal,\n logAbTestAction,\n from: target,\n isTestVariant\n });\n logAbTestAction({ action: 'click', target: `contactSales-${target}` });\n };\n\n return (\n
\n
\n
\n \n {t(ALL_TEXTS.JOTFORM_ENTERPRISE_TITLE)}\n
\n
{t(ALL_TEXTS.APPLY_ENTERPRISE_TO_GET_DISCOUNT_ED_TECH)}
\n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n\n {!isFormVisible && (\n \n {t(ALL_TEXTS.CONTACT_SALES)}\n \n )}\n\n
\n {isFormVisible && (\n
\n \n
\n )}\n
\n );\n};\n\nBlogEducationSideBanner.propTypes = {\n user: userPropType.isRequired,\n logAbTestAction: func,\n isFormVisible: bool,\n isTestVariant: bool.isRequired\n};\n\nBlogEducationSideBanner.defaultProps = {\n logAbTestAction: f => f,\n isFormVisible: true\n};\n\nexport default BlogEducationSideBanner;\n","import React from 'react';\nimport ReactDOM from 'react-dom';\nimport { BlogEducationSideBanner } from '../components';\n\nconst renderFerpaBanner = ({\n rootEl = null,\n user = null,\n logAbTestAction = f => f,\n isTestVariant = false\n}) => {\n if (!rootEl) return;\n\n ReactDOM.render(\n ,\n rootEl\n );\n};\n\nexport default renderFerpaBanner;\n","import { renderFerpaBanner } from '@jotforminc/enterprise-promotions';\nimport { insertAfter } from '../../utils';\n\n// render BlogEducationSideBanner at /what-is-ferpa?epfp=true\nexport const initEpFerpaBanner = user => {\n if (window.location.pathname !== '/what-is-ferpa/') return;\n\n const createFormButtonEl = document.querySelector('.js-sidefixedmenu .external-link');\n if (!createFormButtonEl) return;\n\n const bannerRootEl = document.createElement('div');\n bannerRootEl.setAttribute('id', 'ferpa-banner-root');\n insertAfter(createFormButtonEl, bannerRootEl);\n\n renderFerpaBanner({\n user,\n rootEl: bannerRootEl\n });\n};\n","import React from 'react';\nimport { func, node } from 'prop-types';\nimport { t } from '@jotforminc/translation';\nimport { ALL_TEXTS } from '@jotforminc/enterprise-promotions-utils';\nimport CloseIcon from '../../../../assets/svg/close_revised.svg';\n\nexport const DialogRenderer = ({ children }) => (
{children}
);\n\nDialogRenderer.propTypes = { children: node };\nDialogRenderer.defaultProps = { children: null };\n\nexport const ContentRenderer = ({ children, ...props }) => (\n
\n
\n {children}\n
\n
\n);\n\nContentRenderer.propTypes = { children: node };\nContentRenderer.defaultProps = { children: null };\n\nexport const HeaderRenderer = ({ onCloseClick, ...props }) => (\n \n \n \n);\n\nHeaderRenderer.propTypes = { onCloseClick: func };\nHeaderRenderer.defaultProps = { onCloseClick: f => f };\n","import React, { useEffect, useRef } from 'react';\nimport { Modal } from '@jotforminc/uikit';\nimport {\n func, bool, object, string\n} from 'prop-types';\nimport { t } from '@jotforminc/translation';\nimport { handleCustomNavigation } from '@jotforminc/utils';\nimport {\n PrefilledLeadFormAside, ASSET_IDENTIFIER, ALL_TEXTS, userPropType, GA_FORM_TRACKING_ITEMS, GA_AD_FORM_TRACKING_ITEMS,\n GA_SUFFIXES, createGaAttributes, gaDataLayerPushClose, setEPActions, mapCallbacksToGaTrackingItems, hasAdwordsModeOn\n} from '@jotforminc/enterprise-promotions-utils';\nimport { ContentRenderer, DialogRenderer, HeaderRenderer } from './Renderers';\nimport '../../../../styles/pdfDownloadModal.scss';\n\nconst PdfDownloadModal = ({\n user,\n onClose,\n pdfUrl,\n modalProps: {\n iconUrl,\n title,\n description\n }\n}) => {\n const uikitModalRef = useRef(null);\n\n const { PRODUCT: { PDF_DOWNLOAD_MODAL: target } } = ASSET_IDENTIFIER;\n\n const gaAttributes = createGaAttributes(target);\n const gaAttributesClose = createGaAttributes(target, GA_SUFFIXES.CLOSE);\n\n const isAdForm = hasAdwordsModeOn();\n let { [target]: gaFormTrackingItems } = isAdForm ? GA_AD_FORM_TRACKING_ITEMS : GA_FORM_TRACKING_ITEMS;\n\n useEffect(() => {\n setEPActions({ asset: target, target, action: 'seen' });\n }, []);\n\n const handleCloseClick = () => {\n uikitModalRef.current?.hide();\n\n setEPActions({ asset: target, target: 'closeButton', action: 'click' });\n };\n\n const handleClose = () => {\n gaDataLayerPushClose(gaAttributes);\n setEPActions({ asset: target, target, action: 'close' });\n\n onClose();\n };\n\n const handleGetPdfNowClick = () => {\n setEPActions({ asset: target, target: 'getPdfNowButton', action: 'click' });\n };\n\n const handleFormSubmit = () => {\n setEPActions({ asset: target, target, action: 'formSubmit' });\n handleCustomNavigation(pdfUrl);\n };\n\n gaFormTrackingItems = mapCallbacksToGaTrackingItems(gaFormTrackingItems, [handleGetPdfNowClick]);\n\n return (\n
\n }\n HeaderRenderer={() => }\n onModalClose={handleClose}\n >\n
\n
\n
\n {title}\n
\n {title}\n {description}\n
\n
\n
\n \n
\n
\n
\n \n
\n );\n};\n\nPdfDownloadModal.propTypes = {\n user: userPropType.isRequired,\n modalProps: object,\n defaultVisible: bool,\n onClose: func,\n logAbTestAction: func,\n iconUrl: string.isRequired,\n title: string.isRequired,\n description: string.isRequired,\n pdfUrl: string.isRequired\n};\n\nPdfDownloadModal.defaultProps = {\n modalProps: {},\n defaultVisible: true,\n onClose: f => f,\n logAbTestAction: f => f\n};\n\nexport default PdfDownloadModal;\n","import React, { useEffect } from 'react';\nimport { t } from '@jotforminc/translation';\nimport { arrayOf, object, string } from 'prop-types';\nimport '../../../styles/blogDownloadBanner.scss';\nimport {\n ASSET_IDENTIFIER, ALL_TEXTS, userPropType, renderModal, setEPActions, createGaAttributes, GA_SUFFIXES\n} from '@jotforminc/enterprise-promotions-utils';\nimport { IconCheck, LogoJotformColor } from '@jotforminc/svg-icons';\nimport { PdfDownloadModal } from '../../Modals';\nimport ReportVisual from '../../../assets/svg/blogDownloadBanner/visual.svg';\n\nconst BlogDownloadBanner = ({\n user, badgeText, bannerTitle, bannerDescription, bannerVisualUrl, bannerItems, modalProps, pdfUrl\n}) => {\n const { PRODUCT: { PDF_DOWNLOAD_BANNER: target } } = ASSET_IDENTIFIER;\n\n const gaAttributes = createGaAttributes(target);\n const gaAttributesGetPdf = createGaAttributes(target, GA_SUFFIXES.GET_PDF);\n\n useEffect(() => {\n setEPActions({ asset: target, target, action: 'seen' });\n }, []);\n\n const handleClick = () => {\n setEPActions({ asset: target, target: 'getPdfButton', action: 'click' });\n\n renderModal({\n user,\n modalProps,\n pdfUrl,\n Modal: PdfDownloadModal\n });\n };\n\n return (\n {\n if (e.key === 'Enter') {\n handleClick();\n }\n }}\n >\n
\n {badgeText}\n \n \n {bannerTitle}\n :\n {' '}\n \n\n \n {bannerDescription}\n \n \n
    \n {bannerItems.map(item => (\n
  • \n \n {item}\n
  • \n )\n )}\n
  • \n \n And more\n
  • \n
\n
\n
\n
\n \n {t(ALL_TEXTS.ENTERPRISE_CAPITALIZED)}\n
\n\n
\n \n \n
\n\n \n {t(ALL_TEXTS.GET_PDF)}\n \n
\n \n\n );\n};\n\nBlogDownloadBanner.propTypes = {\n user: userPropType,\n badgeText: string.isRequired,\n bannerTitle: string.isRequired,\n bannerDescription: string.isRequired,\n bannerVisualUrl: string.isRequired,\n pdfUrl: string.isRequired,\n bannerItems: arrayOf(string).isRequired,\n modalProps: object.isRequired\n};\n\nBlogDownloadBanner.defaultProps = {\n user: {}\n};\n\nexport default BlogDownloadBanner;\n","import React from 'react';\nimport ReactDOM from 'react-dom';\nimport { BlogDownloadBanner } from '../components';\n\nconst renderBlogCaseStudies = (props, rootEl) => {\n if (!rootEl) return;\n\n ReactDOM.render(\n ,\n rootEl\n );\n};\n\nexport default renderBlogCaseStudies;\n","export const CASE_STUDIES = {\n '/blog/case-study-electrical-testing-ltd/': {\n param: 'csetl',\n badgeText: 'FREE GUIDE',\n bannerTitle: 'Mastering your digital healthcare toolkit',\n bannerDescription: 'How to integrate solutions for a better operation',\n bannerVisualUrl: 'https://cdn.jotfor.ms/assets/img/enterprise/blog-download-banner/healthcare.png',\n bannerItems: ['Streamline workflows', 'Improve service delivery', 'Ensure data security'],\n pdfUrl: 'https://cdn.jotfor.ms/assets/pdf/whitepapers/How_field_service_management_solutions_create_safe_sustainable_operations_UTM.pdf',\n modalProps: {\n iconUrl: 'https://cdn.jotfor.ms/assets/img/enterprise/blog-download-banner/healthcare-icon.png',\n title: 'Transform your digital healthcare toolkit with this free guide',\n description: 'Fill the form and get “Mastering your digital healthcare toolkit” via email.'\n }\n },\n '/blog/case-study-university-of-michigan-jotform-enterprise/': {\n param: 'csumje',\n badgeText: 'FREE GUIDE',\n bannerTitle: 'The educator’s technology toolkit',\n bannerDescription: 'Tuning up for efficiency and savings',\n bannerVisualUrl: 'https://cdn.jotfor.ms/assets/img/enterprise/blog-download-banner/education.png',\n bannerItems: ['Streamline workflows', 'Eliminate paper dependency', 'Improve student experience'],\n pdfUrl: 'https://cdn.jotfor.ms/assets/pdf/whitepapers/The_Educators_Technology_Toolkit_Cover.pdf',\n modalProps: {\n iconUrl: 'https://cdn.jotfor.ms/assets/img/enterprise/blog-download-banner/healthcare-icon.png',\n title: \"Build an efficient Educator's Technology Toolkit for your school with this free guide\",\n description: 'Fill the form and get “The educator’s technology toolkit: Tuning up for efficiency and savings” via email'\n }\n },\n '/blog/case-study-honor-health-network/': {\n param: 'cshhn',\n badgeText: 'FREE GUIDE',\n bannerTitle: 'Mastering your digital healthcare toolkit',\n bannerDescription: 'How to integrate solutions for a better operation',\n bannerVisualUrl: 'https://cdn.jotfor.ms/assets/img/enterprise/blog-download-banner/fsm.png',\n bannerItems: ['Automate scheduling ', 'Meet safety standards', 'Improve service delivery '],\n pdfUrl: 'https://cdn.jotfor.ms/assets/pdf/whitepapers/Mastering_Your_Digital_Healthcare_Toolkit.pdf',\n modalProps: {\n iconUrl: 'https://cdn.jotfor.ms/assets/img/enterprise/blog-download-banner/healthcare-icon.png',\n title: 'Transform your digital healthcare toolkit with this free guide',\n description: 'Fill the form and get “Mastering your digital healthcare toolkit” via email'\n }\n }\n};\n","import { renderBlogCaseStudies } from '@jotforminc/enterprise-promotions';\nimport { CASE_STUDIES } from './caseStudies';\n\nexport const initEpCaseStudyAssets = user => {\n const currentPage = window.location.pathname;\n const caseStudy = CASE_STUDIES[currentPage];\n if (!caseStudy) return;\n\n const params = new URLSearchParams(document.location.search);\n const hasParam = params.has(caseStudy.param);\n if (!hasParam) return;\n\n const enterprisePromotionsBannerRoot = document.getElementById('leadCaptureBanner');\n if (!enterprisePromotionsBannerRoot) return;\n\n renderBlogCaseStudies({\n user,\n ...caseStudy\n }, enterprisePromotionsBannerRoot);\n};\n","import React from 'react';\nimport { func, node } from 'prop-types';\nimport { t } from '@jotforminc/translation';\nimport { ALL_TEXTS } from '@jotforminc/enterprise-promotions-utils';\nimport CloseIcon from '../../../../assets/svg/advertisementLeadFlowModal/close.svg';\n\nexport const DialogRenderer = ({ children }) => (
{children}
);\n\nDialogRenderer.propTypes = { children: node };\nDialogRenderer.defaultProps = { children: null };\n\nexport const ContentRenderer = ({ children, ...props }) => (\n
\n
\n {children}\n
\n
\n);\n\nContentRenderer.propTypes = { children: node };\nContentRenderer.defaultProps = { children: null };\n\nexport const HeaderRenderer = ({ onCloseClick, ...props }) => (\n \n \n \n);\n\nHeaderRenderer.propTypes = { onCloseClick: func };\nHeaderRenderer.defaultProps = { onCloseClick: f => f };\n","import React, { useEffect, useRef } from 'react';\nimport { Modal } from '@jotforminc/uikit';\nimport {\n func, object, string\n} from 'prop-types';\nimport { t } from '@jotforminc/translation';\nimport {\n PrefilledLeadFormAside, ALL_TEXTS, ASSET_IDENTIFIER, gaAttributesPropType, gaFormTrackingItemsPropType, userPropType,\n gaDataLayerPushClose\n} from '@jotforminc/enterprise-promotions-utils';\nimport { ContentRenderer, DialogRenderer, HeaderRenderer } from './Renderers';\nimport '../../../../styles/advertisementLeadFlowModal.scss';\nimport Stars from '../../../../assets/svg/advertisementLeadFlowModal/visual.svg';\n\nconst AdvertisementLeadFlowModal = ({\n user,\n badgeText,\n modalProps,\n gaAttributes,\n gaAttributesClose,\n gaFormTrackingItems,\n onSeen,\n onClose,\n onCloseClick,\n onFormSubmit\n}) => {\n const uikitModalRef = useRef(null);\n const { AB_TEST: { ADVERTISEMENT_LEAD_FLOW_MODAL } } = ASSET_IDENTIFIER;\n\n useEffect(() => {\n onSeen();\n }, []);\n\n const handleClose = () => {\n gaDataLayerPushClose(gaAttributes);\n onClose();\n };\n\n const handleCloseClick = () => {\n uikitModalRef.current?.hide();\n onCloseClick();\n };\n\n return (\n }\n HeaderRenderer={() => }\n onModalClose={handleClose}\n {...modalProps}\n >\n
\n
\n \n {t(badgeText)}\n \n

\n {t(ALL_TEXTS.ADV_TITLE_1)}\n

\n \n
\n {/* aside */}\n
\n \n
\n
\n \n );\n};\n\nAdvertisementLeadFlowModal.propTypes = {\n badgeText: string,\n user: userPropType.isRequired,\n modalProps: object,\n onClose: func,\n onCloseClick: func,\n gaAttributes: gaAttributesPropType.isRequired,\n gaAttributesClose: gaAttributesPropType.isRequired,\n gaFormTrackingItems: gaFormTrackingItemsPropType.isRequired,\n onSeen: func,\n onFormSubmit: func\n};\n\nAdvertisementLeadFlowModal.defaultProps = {\n badgeText: ALL_TEXTS.BEFORE_YOU_GO,\n modalProps: {},\n onClose: f => f,\n onCloseClick: f => f,\n onSeen: f => f,\n onFormSubmit: f => f\n};\n\nexport default AdvertisementLeadFlowModal;\n","import React, { useEffect } from 'react';\nimport { func, string } from 'prop-types';\nimport {\n ASSET_IDENTIFIER, GA_FORM_TRACKING_ITEMS, userPropType,\n GA_SUFFIXES, createGaAttributes, gaDataLayerPushClose, mapCallbacksToGaTrackingItems, setEPActions, setEpUserSettings\n} from '@jotforminc/enterprise-promotions-utils';\nimport AdvertisementLeadFlowModal from './AdvertisementLeadFlowModal';\n\nconst AdSecondExitIntentModal = ({\n logAbTestAction, seenAtKey, onClose, ...props\n}) => {\n const { AB_TEST: { AD_SECOND_EXIT_INTENT_MODAL: target } } = ASSET_IDENTIFIER;\n let { [target]: gaFormTrackingItems } = GA_FORM_TRACKING_ITEMS;\n\n const gaAttributes = createGaAttributes(target);\n const gaAttributesClose = createGaAttributes(target, GA_SUFFIXES.CLOSE);\n\n useEffect(() => {\n setEpUserSettings(seenAtKey);\n }, []);\n\n const handleSeen = () => {\n const actionData = { action: 'seen', target };\n\n logAbTestAction(actionData);\n setEPActions({ asset: target, ...actionData });\n };\n\n const handleCloseClick = () => {\n logAbTestAction({ action: 'click', target: `closeButton-${target}` });\n setEPActions({ asset: target, target: 'closeButton', action: 'click' });\n };\n\n const handleClose = () => {\n gaDataLayerPushClose(gaAttributes);\n\n const actionData = { action: 'close', target };\n\n logAbTestAction(actionData);\n setEPActions({ asset: target, ...actionData });\n\n onClose();\n };\n\n const handleSendRequest = () => {\n logAbTestAction({ action: 'click', target: `sendRequestButton-${target}` });\n setEPActions({ asset: target, target: 'sendRequestButton', action: 'click' });\n };\n\n const handleFormSubmit = () => {\n const actionData = { action: 'formSubmit', target };\n\n logAbTestAction(actionData);\n setEPActions({ asset: target, ...actionData });\n };\n\n gaFormTrackingItems = mapCallbacksToGaTrackingItems(gaFormTrackingItems, [handleSendRequest]);\n\n return (\n \n );\n};\n\nAdSecondExitIntentModal.propTypes = {\n user: userPropType.isRequired,\n onSeen: func,\n onClose: func,\n logAbTestAction: func,\n seenAtKey: string.isRequired\n};\n\nAdSecondExitIntentModal.defaultProps = {\n onSeen: f => f,\n onClose: f => f,\n logAbTestAction: f => f\n};\n\nexport default AdSecondExitIntentModal;\n","import React, { useEffect } from 'react';\nimport { func, string } from 'prop-types';\nimport {\n ASSET_IDENTIFIER, GA_FORM_TRACKING_ITEMS, userPropType,\n GA_SUFFIXES, createGaAttributes, gaDataLayerPushClose, mapCallbacksToGaTrackingItems, setEPActions, setEpUserSettings\n} from '@jotforminc/enterprise-promotions-utils';\nimport AdvertisementLeadFlowModal from './AdvertisementLeadFlowModal';\n\nconst AdFirstExitIntentModal = ({\n logAbTestAction, onClose, user, seenAtKey, ...props\n}) => {\n const { AB_TEST: { AD_FIRST_EXIT_INTENT_MODAL: target } } = ASSET_IDENTIFIER;\n let { [target]: gaFormTrackingItems } = GA_FORM_TRACKING_ITEMS;\n\n const gaAttributes = createGaAttributes(target);\n const gaAttributesClose = createGaAttributes(target, GA_SUFFIXES.CLOSE);\n\n useEffect(() => {\n setEpUserSettings(seenAtKey);\n }, []);\n\n const handleSeen = () => {\n const actionData = { action: 'seen', target };\n\n logAbTestAction(actionData);\n setEPActions({ asset: target, ...actionData });\n };\n\n const handleCloseClick = () => {\n logAbTestAction({ action: 'click', target: `closeButton-${target}` });\n setEPActions({ asset: target, target: 'closeButton', action: 'click' });\n };\n\n const handleClose = () => {\n gaDataLayerPushClose(gaAttributes);\n\n const actionData = { action: 'close', target };\n\n logAbTestAction(actionData);\n setEPActions({ asset: target, ...actionData });\n\n onClose();\n };\n\n const handleSendRequest = () => {\n logAbTestAction({ action: 'click', target: `sendRequestButton-${target}` });\n setEPActions({ asset: target, target: 'sendRequestButton', action: 'click' });\n };\n\n const handleFormSubmit = () => {\n const actionData = { action: 'formSubmit', target };\n logAbTestAction(actionData);\n setEPActions({ asset: target, ...actionData });\n };\n\n gaFormTrackingItems = mapCallbacksToGaTrackingItems(gaFormTrackingItems, [handleSendRequest]);\n\n return (\n \n );\n};\n\nAdFirstExitIntentModal.propTypes = {\n user: userPropType.isRequired,\n logAbTestAction: func,\n onClose: func,\n seenAtKey: string.isRequired\n};\n\nAdFirstExitIntentModal.defaultProps = {\n onClose: f => f,\n logAbTestAction: f => f\n};\n\nexport default AdFirstExitIntentModal;\n","import React from 'react';\nimport { func } from 'prop-types';\nimport {\n ASSET_IDENTIFIER, ALL_TEXTS, GA_FORM_TRACKING_ITEMS, userPropType,\n GA_SUFFIXES, createGaAttributes, gaDataLayerPushClose, mapCallbacksToGaTrackingItems, setEPActions\n} from '@jotforminc/enterprise-promotions-utils';\nimport AdvertisementLeadFlowModal from './AdvertisementLeadFlowModal';\n\nconst AdBannerModal = ({\n logAbTestAction,\n onClose,\n ...props\n}) => {\n const { AB_TEST: { AD_BANNER_MODAL: target } } = ASSET_IDENTIFIER;\n let { [target]: gaFormTrackingItems } = GA_FORM_TRACKING_ITEMS;\n\n const gaAttributes = createGaAttributes(target);\n const gaAttributesClose = createGaAttributes(target, GA_SUFFIXES.CLOSE);\n\n const handleSeen = () => {\n const actionData = { action: 'seen', target };\n\n logAbTestAction(actionData);\n setEPActions({ asset: target, ...actionData });\n };\n\n const handleCloseClick = () => {\n logAbTestAction({ action: 'click', target: `closeButton-${target}` });\n setEPActions({ asset: target, target: 'closeButton', action: 'click' });\n };\n\n const handleClose = () => {\n gaDataLayerPushClose(gaAttributes);\n\n const actionData = { action: 'close', target };\n logAbTestAction(actionData);\n setEPActions({ asset: target, ...actionData });\n\n onClose();\n };\n\n const handleSendRequest = () => {\n logAbTestAction({ action: 'click', target: `sendRequestButton-${target}` });\n setEPActions({ asset: target, target: 'sendRequestButton', action: 'click' });\n };\n\n const handleFormSubmit = () => {\n const actionData = { action: 'formSubmit', target };\n\n logAbTestAction(actionData);\n setEPActions({ asset: target, ...actionData });\n };\n\n gaFormTrackingItems = mapCallbacksToGaTrackingItems(gaFormTrackingItems, [handleSendRequest]);\n\n return (\n \n );\n};\n\nAdBannerModal.propTypes = {\n onClose: func,\n logAbTestAction: func,\n user: userPropType.isRequired\n};\n\nAdBannerModal.defaultProps = {\n onClose: f => f,\n logAbTestAction: f => f\n};\n\nexport default AdBannerModal;\n","import { t } from '@jotforminc/translation';\nimport cx from 'classnames';\nimport { bool, func, string } from 'prop-types';\nimport React, { useEffect, useRef } from 'react';\nimport { Hooks } from '@jotforminc/uikit';\nimport { StorageHelper } from '@jotforminc/storage-helper';\nimport {\n ALL_TEXTS, ASSET_IDENTIFIER, leadFlowBannerAutoVisibleLcStKey, leadFlowBannerUrlParam, userPropType,\n GA_SUFFIXES, createGaAttributes, renderModal\n} from '@jotforminc/enterprise-promotions-utils';\nimport { AdBannerModal, AdFirstExitIntentModal, AdSecondExitIntentModal } from '../../Modals';\nimport '../../../styles/advertisementLeadFlowBanner.scss';\nimport RocketIcon from '../../../assets/svg/advertisementLeadFlowBanner/rocket.svg';\nimport MainVisual from '../../../assets/svg/advertisementLeadFlowBanner/visual.svg';\n\nconst AdvertisementLeadFlowBanner = ({\n user, logAbTestAction, isExitIntentModalAvailable, seenAtKey\n}) => {\n const toggleRef = useRef();\n const bannerRef = useRef();\n const TIME_TO_BANNER_VISIBLE = 15_000;\n\n const [isVisible, setIsVisible] = Hooks.useClickOutsideState(false, [toggleRef, bannerRef]);\n\n const onceAutoVisibled = useRef(false);\n const onceBannerOpened = useRef(false);\n const onceModalShown = useRef(false);\n\n const { AB_TEST: { ADVERTISEMENT_LEAD_FLOW_BANNER: target } } = ASSET_IDENTIFIER;\n\n const gaAttributes = createGaAttributes(target);\n const gaAttributesRad = createGaAttributes(target, GA_SUFFIXES.REQUEST_A_DEMO);\n const gaAttributesNn = createGaAttributes(target, GA_SUFFIXES.NOT_NOW);\n\n useEffect(() => {\n logAbTestAction({ action: 'seen', target });\n\n const className = 'ad-lead-flow-banner-visible';\n const bodyEl = document.querySelector('body');\n if (!bodyEl.classList.contains(className)) {\n bodyEl.classList.add(className);\n }\n return () => {\n bodyEl.classList.remove(className);\n };\n }, []);\n\n useEffect(() => {\n const isAutoVisibleSeen = StorageHelper.getLocalStorageItem({ key: leadFlowBannerAutoVisibleLcStKey });\n\n const timer = setTimeout(() => {\n if (isVisible || onceBannerOpened.current || onceModalShown.current || isAutoVisibleSeen) return;\n setIsVisible(true);\n onceAutoVisibled.current = true;\n onceBannerOpened.current = true;\n\n const urlParams = new URLSearchParams(window.location.search);\n if (!urlParams.get(leadFlowBannerUrlParam)) {\n StorageHelper.setLocalStorageItem({\n key: leadFlowBannerAutoVisibleLcStKey, value: '1'\n });\n }\n }, TIME_TO_BANNER_VISIBLE);\n\n return () => {\n clearTimeout(timer);\n };\n }, [isVisible]);\n\n // listen exit intent events\n useEffect(() => {\n const handleMouseLeave = () => {\n if (onceModalShown.current || !isExitIntentModalAvailable) return;\n if (onceAutoVisibled.current) {\n renderModal({\n Modal: AdSecondExitIntentModal, logAbTestAction, user, seenAtKey\n });\n } else {\n renderModal({\n Modal: AdFirstExitIntentModal, logAbTestAction, user, seenAtKey\n });\n }\n onceModalShown.current = true;\n };\n document.body.addEventListener('mouseleave', handleMouseLeave);\n }, []);\n\n const handleToggleClick = () => {\n setIsVisible(visible => !visible);\n onceBannerOpened.current = true;\n logAbTestAction({ action: 'click', target: `toggleButton-${target}` });\n };\n\n const handleRequestADemo = () => {\n renderModal({ Modal: AdBannerModal, logAbTestAction, user });\n onceModalShown.current = true;\n logAbTestAction({ action: 'click', target: `getADemoButton-${target}` });\n };\n\n const handleNotNowClick = () => {\n setIsVisible(false);\n logAbTestAction({ action: 'click', target: `notNowButton-${target}` });\n };\n\n const bannerClasses = cx({\n 'banner-wrapper': true,\n show: isVisible\n });\n\n return (\n
\n {/* toggle */}\n \n \n \n\n {/* banner */}\n
\n \n
\n

{t(ALL_TEXTS.ADV_BANNER_TITLE)}

\n
\n
\n {/* request a demo */}\n \n {t(ALL_TEXTS.REQUEST_A_DEMO)}\n \n {/* not now */}\n \n {t(ALL_TEXTS.NOT_NOW)}\n \n
\n
\n
\n );\n};\n\nAdvertisementLeadFlowBanner.propTypes = {\n isExitIntentModalAvailable: bool,\n user: userPropType.isRequired,\n logAbTestAction: func,\n seenAtKey: string.isRequired\n};\n\nAdvertisementLeadFlowBanner.defaultProps = {\n isExitIntentModalAvailable: false,\n logAbTestAction: f => f\n};\n\nexport default AdvertisementLeadFlowBanner;\n","import { ActionManager } from '@jotforminc/abtest-manager';\nimport { useEffect, useRef, useState } from 'react';\nimport { ACTION_PROJECT_NAMES } from '@jotforminc/enterprise-promotions-utils';\n\nconst useActionManager = (user, projectName = ACTION_PROJECT_NAMES.ENTERPRISE_PROMOTIONS, trackOnce = false) => {\n const [actionsLoaded, setActionsLoaded] = useState(false);\n const actionManagerRef = useRef(f => f);\n\n useEffect(() => {\n const actionManager = new ActionManager({\n user,\n trackOnce,\n projectName\n });\n actionManagerRef.current = actionManager.registerJotformAction;\n setActionsLoaded(loaded => !loaded);\n }, [user]);\n\n return [actionsLoaded, actionManagerRef.current];\n};\n\nexport default useActionManager;\n","import { bool } from 'prop-types';\nimport React, { useEffect, useRef } from 'react';\nimport Tracking from '@jotforminc/tracking';\n\nimport { userPropType } from '@jotforminc/enterprise-promotions-utils';\nimport { AdvertisementLeadFlowBanner } from '../../../Banners';\nimport { useActionManager } from '../../../../hooks';\n\n// A/B Test: epAdLeadFlow\nconst AdvertisementLeadFlow = ({\n user,\n isExitIntentModalAvailable,\n ...props\n}) => {\n const [actionsLoaded, registerJotformAction] = useActionManager(user, 'epAdLeadFlow');\n const logAbTestActionRef = useRef(f => f);\n\n useEffect(() => {\n logAbTestActionRef.current = registerJotformAction;\n Tracking.enableFS({ advertisementLeadFlow_bool: true });\n }, [actionsLoaded]);\n\n return (\n \n );\n};\n\nAdvertisementLeadFlow.propTypes = {\n isExitIntentModalAvailable: bool,\n user: userPropType.isRequired\n};\n\nAdvertisementLeadFlow.defaultProps = {\n isExitIntentModalAvailable: false\n};\n\nexport default AdvertisementLeadFlow;\n","import { renderAsset } from '@jotforminc/enterprise-promotions-utils';\nimport { AdvertisementLeadFlow } from '../components';\n\n// A/B Test: epAdLeadFlow\nconst renderAdvertisementLeadFlow = props => {\n renderAsset({\n Asset: AdvertisementLeadFlow,\n rootElementId: 'advertisement-lead-flow-root',\n ...props\n });\n};\n\nexport default renderAdvertisementLeadFlow;\n","export const BLOG_POSTS = {\n '/blog/case-study-excel-london/': {\n param: 'csel'\n }\n};\n","import { renderAdvertisementLeadFlow } from '@jotforminc/enterprise-promotions';\nimport { getEnterprisePromotionByAssetName } from '@jotforminc/enterprise-promotions-utils';\nimport { BLOG_POSTS } from './blogPosts';\n\nexport const initEpAdLeadFlowBlogPosts = async user => {\n const currentPage = window.location.pathname;\n const blogPost = BLOG_POSTS[currentPage];\n if (!blogPost) return;\n\n const params = new URLSearchParams(document.location.search);\n const hasParam = params.has(blogPost.param);\n if (!hasParam) return;\n\n try {\n const asset = await getEnterprisePromotionByAssetName('advertisementLeadFlow');\n if (!asset.show) return;\n\n renderAdvertisementLeadFlow({\n user,\n isExitIntentModalAvailable: asset.details?.isAdLeadFlowExitIntentModalAvailable,\n seenAtKey: asset.seenAtKey\n });\n } catch (error) {\n console.log(`Error on initializing epAdLeadFlow for blog posts: ${error}`);\n }\n};\n","import { useEffect } from 'react';\nimport {\n initEpEttGatedContentModal, initEpHealthcareReportModal, initEpProfessionalServices, initEpFerpaBanner, initEpCaseStudyAssets, initEpAdLeadFlowBlogPosts\n} from '../enterprisePromotions';\nimport { initEnterpriseJobs } from '../utils';\n\nconst useEnterprisePromotions = user => {\n useEffect(() => {\n if (!user) return;\n\n initEpEttGatedContentModal(user);\n initEpHealthcareReportModal(user);\n initEpProfessionalServices();\n\n initEpFerpaBanner(user);\n initEpCaseStudyAssets(user);\n initEpAdLeadFlowBlogPosts(user);\n }, [user]);\n\n useEffect(() => {\n (async () => {\n try {\n await initEnterpriseJobs();\n } catch (error) {\n console.log(`Error on initializing epJobs: ${error}`);\n }\n })();\n }, []);\n};\n\nexport default useEnterprisePromotions;\n","import { useEffect, useState } from 'react';\n\nconst useLazyIntegrationImages = () => {\n const selector = '.jfRHeader .jfIntegrations img';\n const [isLoaded, setIsLoaded] = useState(false);\n\n useEffect(() => {\n const loadImage = el => el?.setAttribute('src', el?.dataset?.src);\n const loadImages = () => document.querySelectorAll(selector).forEach(loadImage);\n\n const handleLazyLoad = () => {\n if (isLoaded) return;\n setIsLoaded(true);\n loadImages();\n };\n\n document.addEventListener('mousemove', handleLazyLoad);\n document.addEventListener('touchstart', handleLazyLoad);\n\n return () => {\n document.removeEventListener('mousemove', handleLazyLoad);\n document.removeEventListener('touchstart', handleLazyLoad);\n };\n }, [isLoaded, selector]);\n};\n\nexport default useLazyIntegrationImages;\n","export const getBodyEl = () => document.querySelector('body');\n\n// Disable scroll when mobile menu is activated\nexport const toggleDocumentOverflowProperty = isHidden => {\n const overflow = isHidden ? 'hidden' : 'auto';\n if (isHidden) {\n document.documentElement.style.setProperty('overflow', overflow);\n document.documentElement.style.setProperty('height', '100%');\n document.documentElement.style.setProperty('width', '100%');\n }\n};\n\nexport const getHeaderRootEl = () => {\n const headerHostEl = global.window.document.getElementById('jf-common-header-host');\n return headerHostEl?.shadowRoot || global.window.document;\n};\n\nexport const addEventListenerOnce = (node, type, listener) => {\n const listenerWrapper = event => {\n node.removeEventListener(type, listenerWrapper);\n listener(event);\n };\n node.addEventListener(type, listenerWrapper);\n};\n\nexport const createScriptElement = (url, callback, attr) => {\n const script = document.createElement('script');\n script.type = 'text/javascript';\n if (callback) script.onload = callback;\n if (attr) script.setAttribute(attr, attr);\n script.src = url;\n document.head.appendChild(script);\n console.log('Loaded JS:', url);\n};\n\nexport const createLinkElement = (url, attr) => {\n const link = document.createElement('link');\n link.rel = 'stylesheet';\n link.href = url;\n if (attr) link.setAttribute(attr, attr);\n document.head.appendChild(link);\n console.log('Loaded CSS:', url);\n};\n\nexport const addRootElement = (rootId = '', classNames = '') => {\n let rootEl = global.window.document.querySelector(`#${rootId}`);\n if (!rootEl) {\n rootEl = global.window.document.createElement('div');\n rootEl.setAttribute('id', rootId);\n if (classNames) {\n rootEl.setAttribute('class', classNames);\n }\n global.window.document.querySelector('body').appendChild(rootEl);\n }\n return rootEl;\n};\n\nexport const useLockBodyScroll = () => {\n const unlockScroll = () => {\n const bodyEl = global.window.document.body;\n const htmlEl = global.window.document.querySelector('html');\n\n if (bodyEl) {\n bodyEl.style.overflow = '';\n }\n\n if (htmlEl) {\n htmlEl.style.overflow = '';\n htmlEl.style.paddingInlineEnd = '';\n }\n };\n\n const lockScroll = () => {\n const bodyEl = global.window.document.body;\n const htmlEl = global.window.document.querySelector('html');\n\n if (bodyEl) {\n bodyEl.style.overflow = 'hidden';\n }\n\n if (htmlEl) {\n htmlEl.style.overflow = 'hidden';\n htmlEl.style.paddingInlineEnd = '14px';\n }\n };\n\n return {\n lockScroll,\n unlockScroll\n };\n};\n\nexport const insertAfter = (referenceNode, newNode) => {\n referenceNode?.parentNode.insertBefore(newNode, referenceNode.nextSibling);\n};\n","\n \n\n","\n \n\n","var _path, _path2, _path3, _path4, _path5;\nfunction _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nimport * as React from \"react\";\nconst SvgIconHipaaWarning = props => /*#__PURE__*/React.createElement(\"svg\", _extends({\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 64 64\"\n}, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M51.009 11.59L34.623 6.44602C32.7296 5.85157 30.6994 5.85157 28.806 6.44602L12.422 11.59C11.723 11.8079 11.1114 12.2426 10.676 12.8312C10.2405 13.4199 10.0038 14.1318 10 14.864V20.994C10.0078 28.0964 11.7337 35.0915 15.0303 41.3825C18.3269 47.6734 23.0965 53.0735 28.932 57.122C29.7335 57.6934 30.6936 58.0001 31.678 57.999C32.6708 58.0169 33.6415 57.7049 34.438 57.112C40.2731 53.0634 45.0441 47.6656 48.3455 41.3775C51.6468 35.0894 53.3808 28.097 53.4 20.995V14.916C53.4541 14.1693 53.2444 13.4272 52.8075 12.8192C52.3705 12.2112 51.734 11.7758 51.009 11.589V11.59Z\",\n fill: \"#008EF9\",\n stroke: \"#13B4FF\",\n strokeWidth: 2.017\n})), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M38.5 16.719C37.396 15.809 36.594 16.037 35.489 18.005C35.2438 18.48 34.8622 18.8708 34.3932 19.1272C33.9242 19.3837 33.3892 19.494 32.857 19.444V19.178C33.3793 18.9273 33.8009 18.5067 34.0528 17.9849C34.3047 17.4632 34.3718 16.8714 34.2433 16.3066C34.1148 15.7417 33.7981 15.2372 33.3453 14.8758C32.8925 14.5145 32.3303 14.3177 31.751 14.3177C31.1717 14.3177 30.6095 14.5145 30.1567 14.8758C29.7039 15.2372 29.3873 15.7417 29.2587 16.3066C29.1302 16.8714 29.1974 17.4632 29.4492 17.9849C29.7011 18.5067 30.1227 18.9273 30.645 19.178V19.448C30.1127 19.4972 29.5779 19.3861 29.1092 19.129C28.6405 18.8718 28.2595 18.4804 28.015 18.005C26.912 16.007 26.11 15.807 25.005 16.719C23.861 17.626 19.438 22.887 14.015 22.394C14.3725 23.1117 14.9609 23.6884 15.6856 24.0316C16.4103 24.3747 17.2293 24.4643 18.011 24.286C18.5595 24.7748 19.2445 25.0839 19.974 25.1717C20.7034 25.2595 21.4422 25.1218 22.091 24.777C22.5877 25.1336 23.179 25.3348 23.7901 25.3553C24.4011 25.3757 25.0046 25.2145 25.524 24.892C25.9863 25.2212 26.5335 25.4105 27.1003 25.4372C27.6672 25.464 28.2298 25.3272 28.721 25.043C29.301 25.44 30.005 25.615 30.704 25.535L30.783 31.629C30.668 31.591 30.555 31.591 30.44 31.55C30.44 31.55 28.61 31.173 26.704 30.643C25.2318 30.3363 23.8251 29.7731 22.548 28.979C22.588 28.94 22.627 28.94 22.662 28.9C22.903 28.785 23.161 28.708 23.426 28.672C24.2577 28.5301 25.0994 28.4548 25.943 28.447C26.6763 28.3464 27.4207 28.3593 28.15 28.485C28.15 28.405 29.219 28.599 29.484 27.539C29.4891 27.5343 29.4932 27.5286 29.4959 27.5222C29.4987 27.5158 29.5001 27.5089 29.5 27.502C29.5 27.4951 29.4986 27.4882 29.4958 27.4819C29.4931 27.4755 29.4891 27.4698 29.484 27.465C29.406 26.745 28.834 26.707 28.381 26.594C27.929 26.5018 27.4644 26.4889 27.008 26.556C25.329 26.669 20.144 26.254 19.497 28.98V29.167C19.724 31.513 24.607 32.537 28.191 33.254C27.6287 33.6148 27.1504 34.0921 26.7885 34.6536C26.4265 35.2152 26.1894 35.8479 26.093 36.509C25.979 37.985 27.16 39.384 29.867 40.937C27.807 42.413 26.434 43.775 26.549 45.402C26.7935 46.3577 27.2589 47.2427 27.9078 47.9858C28.5566 48.7288 29.3709 49.3091 30.285 49.68C29.484 48.5023 28.8908 47.1961 28.531 45.818C28.417 45.018 28.874 43.847 30.895 42.421L30.975 47.416C30.975 47.6181 31.0553 47.8119 31.1982 47.9548C31.3411 48.0977 31.5349 48.178 31.737 48.178C31.9391 48.178 32.1329 48.0977 32.2758 47.9548C32.4187 47.8119 32.499 47.6181 32.499 47.416L32.578 42.533C34.408 43.896 34.828 45.03 34.751 45.788C34.3916 47.1662 33.7984 48.4725 32.997 49.65C33.912 49.2805 34.727 48.7006 35.3761 47.9573C36.0252 47.2141 36.49 46.3284 36.733 45.372C36.847 43.708 35.473 42.345 33.415 40.907C36.16 39.354 37.305 37.955 37.189 36.479C37.082 35.8213 36.8404 35.1928 36.4794 34.6327C36.1184 34.0727 35.6458 33.5931 35.091 33.224C38.638 32.504 43.557 31.484 43.785 29.138V28.95C43.138 26.262 37.951 26.68 36.274 26.526C35.8162 26.496 35.3565 26.5087 34.901 26.564C34.441 26.642 33.871 26.677 33.798 27.434V27.514C33.89 27.7935 34.0692 28.0362 34.3093 28.2063C34.5494 28.3764 34.8378 28.465 35.132 28.459C35.8677 28.3907 36.6075 28.3784 37.345 28.422C38.1876 28.4489 39.028 28.524 39.862 28.647C40.124 28.695 40.38 28.771 40.626 28.873C40.664 28.913 40.74 28.913 40.74 28.953C39.4632 29.7475 38.0563 30.3108 36.584 30.617C35.3476 30.9562 34.1014 31.2586 32.847 31.524C32.8264 31.5217 32.8055 31.5239 32.7858 31.5305C32.7661 31.537 32.7481 31.5478 32.733 31.562L32.812 25.544C33.5108 25.6308 34.2169 25.4555 34.794 25.052C35.2854 25.3362 35.8483 25.473 36.4154 25.4461C36.9824 25.4191 37.5298 25.2296 37.992 24.9C38.5037 25.2252 39.1017 25.3884 39.7076 25.368C40.3136 25.3477 40.8993 25.1448 41.388 24.786C42.0369 25.1306 42.7758 25.2682 43.5052 25.1803C44.2347 25.0923 44.9196 24.783 45.468 24.294C46.2499 24.4725 47.0691 24.3831 47.794 24.0399C48.5189 23.6968 49.1075 23.1199 49.465 22.402C44.034 22.889 39.61 17.626 38.5 16.719ZM29.31 38.259C28.623 37.843 28.311 37.276 28.395 36.897C28.433 36.367 28.244 35.118 30.76 34.171L30.839 39.204C30.352 38.897 29.847 38.557 29.313 38.259H29.31ZM34.801 36.897C34.881 37.276 34.533 37.843 33.886 38.259C33.429 38.524 33.009 38.826 32.589 39.092L32.669 34.283C34.92 35.151 34.767 36.36 34.805 36.891L34.801 36.897Z\",\n fill: \"white\"\n})), _path3 || (_path3 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M47 60.334C53.6274 60.334 59 54.9471 59 48.302C59 41.6569 53.6274 36.27 47 36.27C40.3726 36.27 35 41.6569 35 48.302C35 54.9471 40.3726 60.334 47 60.334Z\",\n fill: \"#FF4947\"\n})), _path4 || (_path4 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M45 40.28H48.6L48.2 50.829H45.8L45 40.28Z\",\n fill: \"white\"\n})), _path5 || (_path5 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M47 56.285C48.1046 56.285 49 55.4706 49 54.466C49 53.4614 48.1046 52.647 47 52.647C45.8954 52.647 45 53.4614 45 54.466C45 55.4706 45.8954 56.285 47 56.285Z\",\n fill: \"white\"\n})));\nexport default SvgIconHipaaWarning;","\n \n\n","\n \n\n","var _circle, _path;\nfunction _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nimport * as React from \"react\";\nconst SvgClose = props => /*#__PURE__*/React.createElement(\"svg\", _extends({\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 40 40\"\n}, props), _circle || (_circle = /*#__PURE__*/React.createElement(\"circle\", {\n cx: 20,\n cy: 20,\n r: 20,\n fill: \"#E3E5F5\"\n})), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M26.2929 27.7071C26.6834 28.0976 27.3166 28.0976 27.7071 27.7071C28.0976 27.3166 28.0976 26.6834 27.7071 26.2929L21.4142 20L27.7071 13.7071C28.0976 13.3166 28.0976 12.6834 27.7071 12.2929C27.3166 11.9024 26.6834 11.9024 26.2929 12.2929L20 18.5858L13.7071 12.2929C13.3166 11.9024 12.6834 11.9024 12.2929 12.2929C11.9024 12.6834 11.9024 13.3166 12.2929 13.7071L18.5858 20L12.2929 26.2929C11.9024 26.6834 11.9024 27.3166 12.2929 27.7071C12.6834 28.0976 13.3166 28.0976 13.7071 27.7071L20 21.4142L26.2929 27.7071Z\",\n fill: \"#6F76A7\"\n})));\nexport default SvgClose;","\n \n \n\n","var _g;\nfunction _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nimport * as React from \"react\";\nconst SvgIconFb = props => /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"24px\",\n height: \"24px\",\n xmlns: \"http://www.w3.org/2000/svg\",\n xmlnsXlink: \"http://www.w3.org/1999/xlink\"\n}, props), _g || (_g = /*#__PURE__*/React.createElement(\"g\", {\n stroke: \"none\",\n strokeWidth: 1,\n fill: \"none\",\n fillRule: \"evenodd\"\n}, /*#__PURE__*/React.createElement(\"g\", {\n transform: \"translate(-552.000000, -332.000000)\",\n fill: \"#FFFFFF\"\n}, /*#__PURE__*/React.createElement(\"g\", {\n transform: \"translate(448.000000, 108.000000)\"\n}, /*#__PURE__*/React.createElement(\"g\", {\n transform: \"translate(88.000000, 48.000000)\"\n}, /*#__PURE__*/React.createElement(\"g\", {\n transform: \"translate(0.000000, 160.000000)\"\n}, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M28,16 C34.627417,16 40,21.372583 40,28 C40,34.0950735 35.4558524,39.1288044 29.570608,39.8981421 L29.5703125,31.71875 L32.6992422,31.71875 L33.1676641,28.0859375 L29.5703125,28.0859375 L29.5718914,25.6427048 C29.5966115,24.665022 29.9231963,24.0086797 31.3605391,24.0086797 L31.3605391,24.0086797 L33.2734375,24.0078125 L33.2734375,20.7695938 C32.9830674,20.7310186 32.0751609,20.6506869 30.9653941,20.6312067 L30.9653941,20.6312067 L30.4786328,20.6268828 C27.7134297,20.6268828 25.8203125,22.3148516 25.8203125,25.4147422 L25.8203125,25.4147422 L25.8203125,28.0859375 L22.703125,28.0859375 L22.703125,31.71875 L25.8203125,31.71875 L25.820385,39.8025395 C20.2335827,38.777408 16,33.8831071 16,28 C16,21.372583 21.372583,16 28,16 Z\"\n}))))))));\nexport default SvgIconFb;","var _g;\nfunction _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nimport * as React from \"react\";\nconst SvgIconGl = props => /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"24px\",\n height: \"24px\",\n xmlns: \"http://www.w3.org/2000/svg\",\n xmlnsXlink: \"http://www.w3.org/1999/xlink\",\n \"aria-hidden\": \"true\"\n}, props), _g || (_g = /*#__PURE__*/React.createElement(\"g\", {\n stroke: \"none\",\n strokeWidth: 1,\n fill: \"none\",\n fillRule: \"evenodd\"\n}, /*#__PURE__*/React.createElement(\"g\", {\n transform: \"translate(-564.000000, -544.000000)\"\n}, /*#__PURE__*/React.createElement(\"g\", {\n transform: \"translate(292.000000, 328.000000)\"\n}, /*#__PURE__*/React.createElement(\"g\", {\n transform: \"translate(256.000000, 200.000000)\"\n}, /*#__PURE__*/React.createElement(\"g\", {\n transform: \"translate(16.000000, 16.000000)\"\n}, /*#__PURE__*/React.createElement(\"circle\", {\n fill: \"#FFFFFF\",\n cx: 12,\n cy: 12,\n r: 12\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M19.84375,10.4328124 L19.2,10.4328124 L19.2,10.4 L12,10.4 L12,13.6 L16.5218752,13.6 C15.8609376,15.4625 14.0890624,16.8 12,16.8 C9.3484376,16.8 7.2,14.6515624 7.2,12 C7.2,9.3484376 9.3484376,7.2 12,7.2 C13.2234376,7.2 14.3375,7.6609376 15.1843752,8.4156252 L17.4468752,6.1531252 C16.01875,4.8218752 14.1078124,4 12,4 C7.58125,4 4,7.58125 4,12 C4,16.41875 7.58125,20 12,20 C16.41875,20 20,16.41875 20,12 C20,11.4640624 19.9453124,10.9406252 19.84375,10.4328124 Z\",\n fill: \"#FFC107\",\n fillRule: \"nonzero\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M4.9218752,8.2765624 L7.5515624,10.2046876 C8.2625,8.44375 9.9843752,7.2 12,7.2 C13.2234376,7.2 14.3375,7.6609376 15.1843752,8.4156252 L17.4468752,6.1531252 C16.01875,4.8218752 14.1078124,4 12,4 C8.9265624,4 6.2625,5.7343752 4.9218752,8.2765624 Z\",\n fill: \"#FF3D00\",\n fillRule: \"nonzero\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M12,20 C14.0656252,20 15.94375,19.2093752 17.3640624,17.9234376 L14.8875,15.8281252 C14.0843752,16.4359376 13.0859376,16.8 12,16.8 C9.91875,16.8 8.1531252,15.4734376 7.4875,13.6218752 L4.8781252,15.63125 C6.2015624,18.2218752 8.8906252,20 12,20 Z\",\n fill: \"#4CAF50\",\n fillRule: \"nonzero\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M19.84375,10.4 L12,10.4 L12,13.6 L16.5218752,13.6 C16.2046876,14.4953124 15.6281252,15.2656252 14.8859376,15.8281252 C14.8875,15.8281252 14.8875,15.8281252 14.8875,15.8281252 L17.3640624,17.9234376 C17.1890624,18.08125 20,16 20,12 C20,11.4640624 19.9453124,10.9078128 19.84375,10.4 Z\",\n fill: \"#1976D2\",\n fillRule: \"nonzero\"\n}))))))));\nexport default SvgIconGl;","\n \n\n","\n \n\n","\n \n\n","\n \n\n","var _path, _path2, _path3, _path4, _path5;\nfunction _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nimport * as React from \"react\";\nconst SvgIconMs = props => /*#__PURE__*/React.createElement(\"svg\", _extends({\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 24 24\"\n}, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M12 24C18.6274 24 24 18.6274 24 12C24 5.37258 18.6274 0 12 0C5.37258 0 0 5.37258 0 12C0 18.6274 5.37258 24 12 24Z\",\n fill: \"white\"\n})), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M18.4231 12.583H12.5839V18.4222H18.4231V12.583Z\",\n fill: \"#FEBA08\"\n})), _path3 || (_path3 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M11.416 12.583H5.57678V18.4222H11.416V12.583Z\",\n fill: \"#05A6F0\"\n})), _path4 || (_path4 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M18.4231 5.57617H12.5839V11.4154H18.4231V5.57617Z\",\n fill: \"#80BC06\"\n})), _path5 || (_path5 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M11.4163 5.57617H5.57703V11.4154H11.4163V5.57617Z\",\n fill: \"#F25325\"\n})));\nexport default SvgIconMs;","var _g;\nfunction _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nimport * as React from \"react\";\nconst SvgIconEm = props => /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"24px\",\n height: \"16px\",\n xmlns: \"http://www.w3.org/2000/svg\",\n xmlnsXlink: \"http://www.w3.org/1999/xlink\",\n \"aria-hidden\": \"true\"\n}, props), _g || (_g = /*#__PURE__*/React.createElement(\"g\", {\n stroke: \"none\",\n strokeWidth: 1,\n fill: \"none\",\n fillRule: \"evenodd\"\n}, /*#__PURE__*/React.createElement(\"g\", {\n transform: \"translate(-564.000000, -732.000000)\",\n fill: \"#FF8811\",\n fillRule: \"nonzero\"\n}, /*#__PURE__*/React.createElement(\"g\", {\n transform: \"translate(292.000000, 328.000000)\"\n}, /*#__PURE__*/React.createElement(\"g\", {\n id: \"Group-2-Copy-2\",\n transform: \"translate(256.000000, 384.000000)\"\n}, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M38.5180432,20.0677432 L28,30.5857864 L17.4819568,20.0677432 C17.6471834,20.0235573 17.8208407,20 18,20 L38,20 C38.1791593,20 38.3528166,20.0235573 38.5180432,20.0677432 Z M39.9322568,21.4819568 C39.9764427,21.6471834 40,21.8208407 40,22 L40,33 C40,33.4631465 39.8950478,33.9017802 39.707629,34.2934155 L33.4142136,28 L39.9322568,21.4819568 L39.9322568,21.4819568 Z M38.2934155,35.707629 C37.9017802,35.8950478 37.4631465,36 37,36 L19,36 C18.5368535,36 18.0982198,35.8950478 17.7065845,35.707629 L24,29.4142136 L27.2928932,32.7071068 C27.6834175,33.0976311 28.3165825,33.0976311 28.7071068,32.7071068 L32,29.4142136 L38.2934155,35.707629 L38.2934155,35.707629 Z M16.292371,34.2934155 C16.1049522,33.9017802 16,33.4631465 16,33 L16,22 C16,21.8208407 16.0235573,21.6471834 16.0677432,21.4819568 L22.5857864,28 L16.292371,34.2934155 L16.292371,34.2934155 Z\",\n id: \"Shape\"\n})))))));\nexport default SvgIconEm;","var _circle, _path, _path2, _path3, _path4;\nfunction _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nimport * as React from \"react\";\nconst SvgIconGl36 = props => /*#__PURE__*/React.createElement(\"svg\", _extends({\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 36 36\"\n}, props), _circle || (_circle = /*#__PURE__*/React.createElement(\"circle\", {\n cx: 18.5,\n cy: 18,\n r: 18,\n fill: \"white\"\n})), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M30.8759 18.2751C30.8759 17.2576 30.7916 16.5151 30.6093 15.7451H18.7534V20.3376H25.7125C25.5723 21.4789 24.8146 23.1976 23.1309 24.3525L23.1073 24.5063L26.8559 27.3522L27.1156 27.3776C29.5008 25.2188 30.8759 22.0426 30.8759 18.2751Z\",\n fill: \"#4285F4\"\n})), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M18.7518 30.3758C22.1612 30.3758 25.0234 29.2758 27.114 27.3783L23.1293 24.3532C22.063 25.082 20.6318 25.5907 18.7518 25.5907C15.4125 25.5907 12.5784 23.432 11.5681 20.4482L11.42 20.4606L7.52217 23.4169L7.47119 23.5557C9.54769 27.5982 13.813 30.3758 18.7518 30.3758Z\",\n fill: \"#34A853\"\n})), _path3 || (_path3 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M11.5695 20.4475C11.303 19.6775 11.1487 18.8525 11.1487 18C11.1487 17.1475 11.303 16.3225 11.5555 15.5525L11.5485 15.3885L7.60177 12.3848L7.47264 12.445C6.61681 14.1225 6.12573 16.0063 6.12573 18C6.12573 19.9938 6.61681 21.8774 7.47264 23.555L11.5695 20.4475Z\",\n fill: \"#FBBC05\"\n})), _path4 || (_path4 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M18.7519 10.4109C21.123 10.4109 22.7225 11.4147 23.6345 12.2535L27.1983 8.84348C25.0095 6.84973 22.1612 5.62598 18.7519 5.62598C13.813 5.62598 9.5477 8.40346 7.47119 12.4459L11.5541 15.5535C12.5784 12.5697 15.4126 10.4109 18.7519 10.4109Z\",\n fill: \"#EB4335\"\n})));\nexport default SvgIconGl36;","var _circle, _path;\nfunction _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nimport * as React from \"react\";\nconst SvgIconFb36 = props => /*#__PURE__*/React.createElement(\"svg\", _extends({\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 37 36\"\n}, props), _circle || (_circle = /*#__PURE__*/React.createElement(\"circle\", {\n cx: 18.4999,\n cy: 18.0002,\n r: 14.6496,\n fill: \"#1877F2\"\n})), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M23.9554 22.4803L24.6062 18.3455H20.5353V15.6635C20.5353 14.532 21.1029 13.4285 22.9263 13.4285H24.7782V9.90828C24.7782 9.90828 23.0982 9.62891 21.4928 9.62891C18.1387 9.62891 15.9484 11.6097 15.9484 15.1941V18.3455H12.2214V22.4803H15.9484V32.4765C16.6966 32.591 17.462 32.6497 18.2418 32.6497C19.0216 32.6497 19.7871 32.591 20.5353 32.4765V22.4803H23.9554Z\",\n fill: \"white\"\n})));\nexport default SvgIconFb36;","\n \n \n\n","var _path;\nfunction _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nimport * as React from \"react\";\nconst SvgIconAppleWhite = props => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 22 27\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M18.361 14.3443C18.3989 18.4302 21.9454 19.7899 21.9847 19.8073C21.9547 19.9032 21.418 21.745 20.1162 23.6474C18.9909 25.2922 17.8229 26.931 15.983 26.9649C14.1752 26.9982 13.5938 25.8928 11.5269 25.8928C9.46063 25.8928 8.81475 26.931 7.10339 26.9982C5.32743 27.0654 3.97506 25.2196 2.84036 23.5809C0.521733 20.2287 -1.25018 14.1086 1.12905 9.97732C2.311 7.92574 4.42323 6.62659 6.71587 6.59328C8.45982 6.56001 10.1059 7.76655 11.172 7.76655C12.2374 7.76655 14.2377 6.31558 16.3406 6.52868C17.221 6.56532 19.6921 6.88428 21.2789 9.20691C21.151 9.28617 18.3303 10.9282 18.361 14.3443V14.3443ZM14.9633 4.31095C15.9061 3.16965 16.5407 1.58085 16.3676 0C15.0085 0.0546226 13.3651 0.905649 12.3903 2.04633C11.5166 3.05645 10.7515 4.67321 10.958 6.22277C12.4728 6.33998 14.0204 5.45299 14.9633 4.31096\",\n fill: \"white\"\n})));\nexport default SvgIconAppleWhite;","var _rect, _rect2, _rect3, _rect4;\nfunction _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nimport * as React from \"react\";\nconst SvgIconMs36 = props => /*#__PURE__*/React.createElement(\"svg\", _extends({\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 36 36\"\n}, props), _rect || (_rect = /*#__PURE__*/React.createElement(\"rect\", {\n x: 19.8198,\n y: 19.125,\n width: 11.25,\n height: 11.25,\n fill: \"#FEBA08\"\n})), _rect2 || (_rect2 = /*#__PURE__*/React.createElement(\"rect\", {\n x: 6.31982,\n y: 19.125,\n width: 11.25,\n height: 11.25,\n fill: \"#05A6F0\"\n})), _rect3 || (_rect3 = /*#__PURE__*/React.createElement(\"rect\", {\n x: 19.8198,\n y: 5.625,\n width: 11.25,\n height: 11.25,\n fill: \"#80BC06\"\n})), _rect4 || (_rect4 = /*#__PURE__*/React.createElement(\"rect\", {\n x: 6.31982,\n y: 5.625,\n width: 11.25,\n height: 11.25,\n fill: \"#F25325\"\n})));\nexport default SvgIconMs36;","var _path;\nfunction _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nimport * as React from \"react\";\nconst SvgIconAp36 = props => /*#__PURE__*/React.createElement(\"svg\", _extends({\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 36 36\"\n}, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M29.7684 13.7093C29.6395 13.7845 26.5705 15.3717 26.5705 18.8908C26.7152 22.904 30.4434 24.3115 30.5073 24.3115C30.4434 24.3867 29.9445 26.2287 28.4666 28.1597C27.2937 29.823 25.9919 31.5 24.0152 31.5C22.1348 31.5 21.4598 30.3914 19.2901 30.3914C16.9601 30.3914 16.3008 31.5 14.5169 31.5C12.5401 31.5 11.1419 29.7331 9.9051 28.0854C8.2983 25.9289 6.93257 22.5446 6.88436 19.2951C6.85187 17.5732 7.20614 15.8806 8.10544 14.4428C9.37474 12.4357 11.6408 11.0732 14.1155 11.0283C16.0116 10.9687 17.6991 12.2414 18.8562 12.2414C19.9651 12.2414 22.0384 11.0283 24.3841 11.0283C25.3966 11.0293 28.0966 11.3135 29.7684 13.7093ZM18.6958 10.6845C18.3583 9.112 19.2901 7.5395 20.158 6.53643C21.2669 5.32336 23.0184 4.5 24.5287 4.5C24.6252 6.07249 24.0141 7.61471 22.9219 8.73792C21.9419 9.95098 20.2544 10.8642 18.6958 10.6845Z\",\n fill: \"black\"\n})));\nexport default SvgIconAp36;","var _circle, _path;\nfunction _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nimport * as React from \"react\";\nconst SvgIconBack3 = props => /*#__PURE__*/React.createElement(\"svg\", _extends({\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 16 16\"\n}, props), _circle || (_circle = /*#__PURE__*/React.createElement(\"circle\", {\n cx: 8,\n cy: 8,\n r: 8,\n fill: \"#8A94A9\"\n})), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M9 6L7 8.5 9 11\",\n stroke: \"#fff\",\n strokeWidth: 2,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n})));\nexport default SvgIconBack3;","var _g;\nfunction _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nimport * as React from \"react\";\nconst SvgIconBack = props => /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"16px\",\n height: \"16px\",\n xmlns: \"http://www.w3.org/2000/svg\",\n xmlnsXlink: \"http://www.w3.org/1999/xlink\"\n}, props), _g || (_g = /*#__PURE__*/React.createElement(\"g\", {\n id: \"Page-1\",\n stroke: \"none\",\n strokeWidth: 1,\n fill: \"none\",\n fillRule: \"evenodd\"\n}, /*#__PURE__*/React.createElement(\"g\", {\n id: \"Artboard-Copy-9\",\n transform: \"translate(-548.000000, -321.000000)\"\n}, /*#__PURE__*/React.createElement(\"g\", {\n id: \"Group-5\",\n transform: \"translate(292.000000, 269.000000)\"\n}, /*#__PURE__*/React.createElement(\"g\", {\n id: \"Group-2\",\n transform: \"translate(256.000000, 48.000000)\"\n}, /*#__PURE__*/React.createElement(\"g\", {\n id: \"Group\"\n}, /*#__PURE__*/React.createElement(\"g\", {\n id: \"Group-6\",\n transform: \"translate(0.000000, 4.000000)\"\n}, /*#__PURE__*/React.createElement(\"circle\", {\n id: \"Oval\",\n stroke: \"#CFD8DC\",\n cx: 8,\n cy: 8,\n r: 7.5\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M4,8 L12,8\",\n id: \"Path-2\",\n stroke: \"#607D8B\"\n}), /*#__PURE__*/React.createElement(\"polyline\", {\n id: \"Path-3\",\n stroke: \"#607D8B\",\n points: \"7 5 4 8 7 11\"\n})))))))));\nexport default SvgIconBack;","var _path;\nfunction _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nimport * as React from \"react\";\nconst SvgAuth0LogoIcon = props => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 32 32\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"g\", {\n style: {\n mixBlendMode: \"darken\"\n },\n fill: \"#000\"\n}, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M5.95 14.158c4.59-.756 8.186-4.552 8.943-9.14l.253-2.207c.061-.351-.175-.838-.619-.804-3.47.27-6.739 1.414-8.563 2.16A2.402 2.402 0 0 0 4.47 6.39v7.197c0 .428.382.75.804.683l.675-.11v-.002ZM17.106 5.015c.756 4.592 4.352 8.384 8.943 9.14l.675.11a.691.691 0 0 0 .804-.683V6.385c0-.976-.59-1.853-1.493-2.224C24.213 3.416 20.94 2.27 17.47 2c-.444-.033-.674.459-.621.805l.253 2.207.003.002ZM26.046 16.171c-6.273 1.237-9.185 5.406-9.185 13.3 0 .397.393.67.722.45 2.885-1.945 9.233-7.022 9.888-13.376.026-.801-.975-.425-1.425-.374ZM5.952 16.171c6.272 1.237 9.185 5.407 9.185 13.301 0 .396-.394.669-.723.45-2.884-1.946-9.233-7.023-9.888-13.377-.025-.801.976-.425 1.426-.374Z\"\n}))));\nexport default SvgAuth0LogoIcon;","var _path, _path2, _path3, _path4, _defs;\nfunction _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nimport * as React from \"react\";\nconst SvgAzureLogoIcon = props => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 32 32\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M11.049 2h8.792l-9.127 27.045c-.193.57-.727.953-1.329.953H2.543a1.4 1.4 0 0 1-1.327-1.848L9.72 2.954c.193-.57.727-.954 1.329-.954Z\",\n fill: \"url(#a)\"\n})), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M23.827 20.14H9.885a.646.646 0 0 0-.441 1.118l8.96 8.363c.26.243.604.378.96.378h7.896l-3.433-9.858Z\",\n fill: \"#0078D4\"\n})), _path3 || (_path3 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M11.048 2a1.391 1.391 0 0 0-1.331.972L1.226 28.13a1.399 1.399 0 0 0 1.32 1.87h7.02a1.501 1.501 0 0 0 1.152-.979l1.693-4.99 6.048 5.64c.253.21.571.327.9.33h7.866l-3.45-9.86-10.057.003L19.873 2h-8.825Z\",\n fill: \"url(#b)\"\n})), _path4 || (_path4 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M22.28 2.953A1.4 1.4 0 0 0 20.955 2h-9.8a1.4 1.4 0 0 1 1.326.952l8.505 25.198A1.4 1.4 0 0 1 19.66 30h9.8a1.4 1.4 0 0 0 1.326-1.849L22.28 2.953Z\",\n fill: \"url(#c)\"\n})), _defs || (_defs = /*#__PURE__*/React.createElement(\"defs\", null, /*#__PURE__*/React.createElement(\"linearGradient\", {\n id: \"a\",\n x1: 14.254,\n y1: 4.075,\n x2: 5.122,\n y2: 31.051,\n gradientUnits: \"userSpaceOnUse\"\n}, /*#__PURE__*/React.createElement(\"stop\", {\n stopColor: \"#114A8B\"\n}), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 1,\n stopColor: \"#0669BC\"\n})), /*#__PURE__*/React.createElement(\"linearGradient\", {\n id: \"b\",\n x1: 17.105,\n y1: 16.646,\n x2: 14.993,\n y2: 17.36,\n gradientUnits: \"userSpaceOnUse\"\n}, /*#__PURE__*/React.createElement(\"stop\", {\n stopOpacity: 0.3\n}), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 0.071,\n stopOpacity: 0.2\n}), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 0.321,\n stopOpacity: 0.1\n}), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 0.623,\n stopOpacity: 0.05\n}), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 1,\n stopOpacity: 0\n})), /*#__PURE__*/React.createElement(\"linearGradient\", {\n id: \"c\",\n x1: 16.011,\n y1: 3.263,\n x2: 26.034,\n y2: 29.968,\n gradientUnits: \"userSpaceOnUse\"\n}, /*#__PURE__*/React.createElement(\"stop\", {\n stopColor: \"#3CCBF4\"\n}), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 1,\n stopColor: \"#2892DF\"\n})))));\nexport default SvgAzureLogoIcon;","var _path, _path2, _path3, _path4;\nfunction _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nimport * as React from \"react\";\nconst SvgGoogleLogoIcon = props => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 32 32\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M29.728 13.258H28.6V13.2H16v5.6h7.913c-1.155 3.26-4.256 5.6-7.912 5.6a8.4 8.4 0 0 1 0-16.8c2.14 0 4.089.808 5.572 2.127l3.96-3.96C23.033 3.437 19.688 2 16.001 2 8.269 2 2 8.268 2 16c0 7.731 6.268 14 14 14 7.731 0 14-6.269 14-14 0-.939-.097-1.855-.273-2.742Z\",\n fill: \"#FFC107\"\n})), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"m3.615 9.484 4.6 3.373A8.396 8.396 0 0 1 16 7.6c2.141 0 4.09.808 5.572 2.127l3.96-3.96C23.033 3.437 19.688 2 16.001 2 10.623 2 5.96 5.036 3.615 9.484Z\",\n fill: \"#FF3D00\"\n})), _path3 || (_path3 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M16 29.999c3.616 0 6.902-1.384 9.386-3.634l-4.332-3.667A8.337 8.337 0 0 1 16 24.399c-3.641 0-6.733-2.322-7.898-5.562l-4.565 3.517C5.854 26.888 10.56 30 16 30Z\",\n fill: \"#4CAF50\"\n})), _path4 || (_path4 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M29.727 13.258H28.6V13.2H16v5.6h7.912a8.428 8.428 0 0 1-2.86 3.9l.001-.002 4.333 3.667C25.08 26.643 30 23 30 16c0-.938-.097-1.855-.273-2.742Z\",\n fill: \"#1976D2\"\n})));\nexport default SvgGoogleLogoIcon;","var _path, _path2, _path3, _path4;\nfunction _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nimport * as React from \"react\";\nconst SvgMicrosoftLogoIcon = props => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 32 32\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M14.444 14.444H2V1.999h12.445v12.445Z\",\n fill: \"#FF5722\"\n})), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M30.001 14.444H17.556V1.999h12.445v12.445Z\",\n fill: \"#4CAF50\"\n})), _path3 || (_path3 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M30.001 30H17.556V17.555h12.445V30Z\",\n fill: \"#FFC107\"\n})), _path4 || (_path4 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M14.444 30H2V17.555h12.445V30Z\",\n fill: \"#03A9F4\"\n})));\nexport default SvgMicrosoftLogoIcon;","var _path;\nfunction _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nimport * as React from \"react\";\nconst SvgOktaLogoIcon = props => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 32 32\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"m17.405 2.194-.576 7.094a7.23 7.23 0 0 0-.825-.047c-.35 0-.693.023-1.028.078L14.65 5.88a.188.188 0 0 1 .186-.202h.584l-.28-3.477c-.008-.109.078-.202.179-.202h1.907c.109 0 .194.093.179.202v-.008Zm-4.81.35c-.031-.1-.14-.163-.241-.124l-1.79.653c-.102.04-.148.156-.102.25l1.456 3.173-.553.202c-.101.039-.148.155-.101.249l1.487 3.119a6.673 6.673 0 0 1 1.735-.662l-1.883-6.86h-.008ZM8.205 4.52l4.117 5.802a6.744 6.744 0 0 0-1.4 1.214L8.454 9.109a.188.188 0 0 1 .008-.272l.452-.374-2.452-2.48a.182.182 0 0 1 .015-.273l1.456-1.221a.18.18 0 0 1 .264.031h.008ZM4.75 7.88c-.086-.062-.21-.031-.265.062l-.95 1.65a.184.184 0 0 0 .078.256l3.16 1.493-.296.506a.179.179 0 0 0 .086.256l3.144 1.44c.226-.584.53-1.129.903-1.619L4.75 7.88Zm-2.328 4.48c.016-.109.125-.171.226-.148l6.888 1.797a6.808 6.808 0 0 0-.296 1.835l-3.447-.28a.18.18 0 0 1-.164-.217l.101-.576-3.479-.327c-.109-.007-.179-.108-.163-.217l.327-1.875.007.008Zm-.256 4.651c-.11.008-.18.109-.164.218l.335 1.874c.015.11.124.171.226.148l3.377-.879.102.576c.015.109.124.17.225.148l3.331-.918a6.736 6.736 0 0 1-.35-1.82l-7.09.653h.008Zm1.105 4.931a.184.184 0 0 1 .078-.256l6.428-3.05c.242.576.569 1.113.958 1.595l-2.818 2.007a.183.183 0 0 1-.264-.055l-.296-.513-2.872 1.983c-.086.063-.21.031-.265-.062l-.957-1.649h.008Zm7.79-1.338-5.004 5.064a.182.182 0 0 0 .016.272l1.463 1.221a.18.18 0 0 0 .265-.031l2.023-2.847.452.381c.085.07.21.055.272-.038l1.961-2.847a6.99 6.99 0 0 1-1.44-1.175h-.007Zm-.988 8.128a.182.182 0 0 1-.101-.249l2.965-6.47c.545.28 1.137.49 1.752.606l-.872 3.344a.184.184 0 0 1-.241.125l-.553-.202-.926 3.367c-.031.101-.14.164-.242.125l-1.79-.654.008.008Zm5.106-6.028-.576 7.094c-.008.109.078.202.179.202h1.907a.178.178 0 0 0 .179-.202l-.28-3.477h.583a.188.188 0 0 0 .187-.202l-.327-3.438a6.384 6.384 0 0 1-1.027.078c-.28 0-.553-.016-.825-.055Zm6.865-19.203a.18.18 0 0 0-.102-.249l-1.79-.653c-.1-.039-.21.023-.241.124l-.926 3.368-.553-.202c-.101-.039-.21.023-.241.124l-.872 3.345a6.963 6.963 0 0 1 1.751.606l2.974-6.463Zm3.907 2.823-5.005 5.064a6.792 6.792 0 0 0-1.44-1.175l1.962-2.846a.19.19 0 0 1 .272-.04l.451.382 2.024-2.847a.18.18 0 0 1 .265-.03l1.463 1.22c.085.07.085.195.015.272h-.007Zm2.708 3.983a.178.178 0 0 0 .078-.257l-.957-1.649a.192.192 0 0 0-.265-.062l-2.872 1.983-.296-.505c-.054-.094-.179-.125-.264-.055l-2.818 2.007c.39.482.709 1.019.958 1.594l6.428-3.049.008-.007Zm1.012 2.582.327 1.874a.188.188 0 0 1-.164.218l-7.09.661a6.676 6.676 0 0 0-.35-1.82l3.33-.918a.179.179 0 0 1 .227.148l.1.576 3.379-.88c.1-.022.21.04.225.149l.016-.008Zm-.32 6.883c.102.024.211-.039.227-.148l.326-1.874a.188.188 0 0 0-.163-.218l-3.479-.326.101-.576a.188.188 0 0 0-.163-.218l-3.448-.28a6.81 6.81 0 0 1-.296 1.836l6.888 1.796.008.008Zm-1.836 4.278a.191.191 0 0 1-.265.062l-5.86-4.044c.373-.49.677-1.035.903-1.618l3.144 1.439a.18.18 0 0 1 .086.257l-.296.505 3.16 1.493a.184.184 0 0 1 .078.257l-.95 1.649Zm-7.838-2.388 4.118 5.802a.18.18 0 0 0 .264.032l1.456-1.222a.188.188 0 0 0 .015-.272l-2.451-2.48.451-.374a.182.182 0 0 0 .008-.272l-2.467-2.427c-.413.467-.88.879-1.401 1.213h.007Zm-.038 7.902c-.102.04-.21-.023-.242-.124l-1.883-6.86a6.677 6.677 0 0 0 1.735-.661l1.487 3.119c.047.1 0 .218-.101.249l-.553.202 1.456 3.173a.18.18 0 0 1-.102.25l-1.79.652h-.007Z\",\n fill: \"#000\"\n})));\nexport default SvgOktaLogoIcon;","\n \n\n","\n \n\n","var _g;\nfunction _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nimport * as React from \"react\";\nconst SvgIconGl = props => /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"24px\",\n height: \"24px\",\n xmlns: \"http://www.w3.org/2000/svg\",\n xmlnsXlink: \"http://www.w3.org/1999/xlink\",\n \"aria-hidden\": \"true\"\n}, props), _g || (_g = /*#__PURE__*/React.createElement(\"g\", {\n stroke: \"none\",\n strokeWidth: 1,\n fill: \"none\",\n fillRule: \"evenodd\"\n}, /*#__PURE__*/React.createElement(\"g\", {\n transform: \"translate(-564.000000, -544.000000)\"\n}, /*#__PURE__*/React.createElement(\"g\", {\n transform: \"translate(292.000000, 328.000000)\"\n}, /*#__PURE__*/React.createElement(\"g\", {\n transform: \"translate(256.000000, 200.000000)\"\n}, /*#__PURE__*/React.createElement(\"g\", {\n transform: \"translate(16.000000, 16.000000)\"\n}, /*#__PURE__*/React.createElement(\"circle\", {\n fill: \"#FFFFFF\",\n cx: 12,\n cy: 12,\n r: 12\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M19.84375,10.4328124 L19.2,10.4328124 L19.2,10.4 L12,10.4 L12,13.6 L16.5218752,13.6 C15.8609376,15.4625 14.0890624,16.8 12,16.8 C9.3484376,16.8 7.2,14.6515624 7.2,12 C7.2,9.3484376 9.3484376,7.2 12,7.2 C13.2234376,7.2 14.3375,7.6609376 15.1843752,8.4156252 L17.4468752,6.1531252 C16.01875,4.8218752 14.1078124,4 12,4 C7.58125,4 4,7.58125 4,12 C4,16.41875 7.58125,20 12,20 C16.41875,20 20,16.41875 20,12 C20,11.4640624 19.9453124,10.9406252 19.84375,10.4328124 Z\",\n fill: \"#FFC107\",\n fillRule: \"nonzero\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M4.9218752,8.2765624 L7.5515624,10.2046876 C8.2625,8.44375 9.9843752,7.2 12,7.2 C13.2234376,7.2 14.3375,7.6609376 15.1843752,8.4156252 L17.4468752,6.1531252 C16.01875,4.8218752 14.1078124,4 12,4 C8.9265624,4 6.2625,5.7343752 4.9218752,8.2765624 Z\",\n fill: \"#FF3D00\",\n fillRule: \"nonzero\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M12,20 C14.0656252,20 15.94375,19.2093752 17.3640624,17.9234376 L14.8875,15.8281252 C14.0843752,16.4359376 13.0859376,16.8 12,16.8 C9.91875,16.8 8.1531252,15.4734376 7.4875,13.6218752 L4.8781252,15.63125 C6.2015624,18.2218752 8.8906252,20 12,20 Z\",\n fill: \"#4CAF50\",\n fillRule: \"nonzero\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M19.84375,10.4 L12,10.4 L12,13.6 L16.5218752,13.6 C16.2046876,14.4953124 15.6281252,15.2656252 14.8859376,15.8281252 C14.8875,15.8281252 14.8875,15.8281252 14.8875,15.8281252 L17.3640624,17.9234376 C17.1890624,18.08125 20,16 20,12 C20,11.4640624 19.9453124,10.9078128 19.84375,10.4 Z\",\n fill: \"#1976D2\",\n fillRule: \"nonzero\"\n}))))))));\nexport default SvgIconGl;","var _g;\nfunction _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nimport * as React from \"react\";\nconst SvgIconFb = props => /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"24px\",\n height: \"24px\",\n xmlns: \"http://www.w3.org/2000/svg\",\n xmlnsXlink: \"http://www.w3.org/1999/xlink\"\n}, props), _g || (_g = /*#__PURE__*/React.createElement(\"g\", {\n stroke: \"none\",\n strokeWidth: 1,\n fill: \"none\",\n fillRule: \"evenodd\"\n}, /*#__PURE__*/React.createElement(\"g\", {\n transform: \"translate(-552.000000, -332.000000)\",\n fill: \"#FFFFFF\"\n}, /*#__PURE__*/React.createElement(\"g\", {\n transform: \"translate(448.000000, 108.000000)\"\n}, /*#__PURE__*/React.createElement(\"g\", {\n transform: \"translate(88.000000, 48.000000)\"\n}, /*#__PURE__*/React.createElement(\"g\", {\n transform: \"translate(0.000000, 160.000000)\"\n}, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M28,16 C34.627417,16 40,21.372583 40,28 C40,34.0950735 35.4558524,39.1288044 29.570608,39.8981421 L29.5703125,31.71875 L32.6992422,31.71875 L33.1676641,28.0859375 L29.5703125,28.0859375 L29.5718914,25.6427048 C29.5966115,24.665022 29.9231963,24.0086797 31.3605391,24.0086797 L31.3605391,24.0086797 L33.2734375,24.0078125 L33.2734375,20.7695938 C32.9830674,20.7310186 32.0751609,20.6506869 30.9653941,20.6312067 L30.9653941,20.6312067 L30.4786328,20.6268828 C27.7134297,20.6268828 25.8203125,22.3148516 25.8203125,25.4147422 L25.8203125,25.4147422 L25.8203125,28.0859375 L22.703125,28.0859375 L22.703125,31.71875 L25.8203125,31.71875 L25.820385,39.8025395 C20.2335827,38.777408 16,33.8831071 16,28 C16,21.372583 21.372583,16 28,16 Z\"\n}))))))));\nexport default SvgIconFb;","var _path;\nfunction _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nimport * as React from \"react\";\nconst SvgIconAppleWhite = props => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 22 27\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M18.361 14.3443C18.3989 18.4302 21.9454 19.7899 21.9847 19.8073C21.9547 19.9032 21.418 21.745 20.1162 23.6474C18.9909 25.2922 17.8229 26.931 15.983 26.9649C14.1752 26.9982 13.5938 25.8928 11.5269 25.8928C9.46063 25.8928 8.81475 26.931 7.10339 26.9982C5.32743 27.0654 3.97506 25.2196 2.84036 23.5809C0.521733 20.2287 -1.25018 14.1086 1.12905 9.97732C2.311 7.92574 4.42323 6.62659 6.71587 6.59328C8.45982 6.56001 10.1059 7.76655 11.172 7.76655C12.2374 7.76655 14.2377 6.31558 16.3406 6.52868C17.221 6.56532 19.6921 6.88428 21.2789 9.20691C21.151 9.28617 18.3303 10.9282 18.361 14.3443V14.3443ZM14.9633 4.31095C15.9061 3.16965 16.5407 1.58085 16.3676 0C15.0085 0.0546226 13.3651 0.905649 12.3903 2.04633C11.5166 3.05645 10.7515 4.67321 10.958 6.22277C12.4728 6.33998 14.0204 5.45299 14.9633 4.31096\",\n fill: \"white\"\n})));\nexport default SvgIconAppleWhite;","\n \n\n","var _rect, _path, _path2;\nfunction _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nimport * as React from \"react\";\nconst SvgIconSf36 = props => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 36 36\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), _rect || (_rect = /*#__PURE__*/React.createElement(\"rect\", {\n x: 5.625,\n y: 14.625,\n width: 25.875,\n height: 7.875,\n fill: \"white\"\n})), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M22.7745 17.46C22.8945 17.6385 22.9545 17.892 22.9545 18.216C22.9545 18.5385 22.8945 18.795 22.7745 18.975C22.6545 19.1535 22.4745 19.2405 22.224 19.2405C21.972 19.2405 21.7935 19.1535 21.6765 18.975C21.5565 18.795 21.4965 18.54 21.4965 18.216C21.4965 17.892 21.5565 17.6385 21.6765 17.46C21.7935 17.283 21.972 17.1975 22.224 17.1975C22.4745 17.1975 22.6545 17.283 22.7745 17.46ZM30.5145 17.9055H29.1495C29.1678 17.7477 29.22 17.5957 29.3025 17.46C29.3618 17.3701 29.4438 17.2973 29.5402 17.2492C29.6366 17.201 29.7439 17.179 29.8515 17.1855C30.102 17.1855 30.267 17.283 30.387 17.46C30.4662 17.5954 30.5101 17.7487 30.5145 17.9055ZM15.195 17.9055H13.83C13.8487 17.7476 13.9014 17.5956 13.9845 17.46C14.0436 17.3702 14.1253 17.2975 14.2214 17.2493C14.3176 17.2011 14.4247 17.1791 14.532 17.1855C14.7825 17.1855 14.949 17.283 15.0675 17.46C15.1463 17.5956 15.1901 17.7487 15.195 17.9055ZM10.257 19.254C9.867 19.2765 9.6945 19.143 9.696 19.143C9.65195 19.1143 9.6146 19.0764 9.5865 19.032C9.54328 18.957 9.52295 18.8709 9.528 18.7845C9.528 18.6195 9.585 18.4995 9.699 18.42C9.699 18.42 9.864 18.2775 10.254 18.2835C10.5285 18.2865 10.773 18.327 10.773 18.327V19.1865C10.773 19.1865 10.53 19.2375 10.257 19.254Z\",\n fill: \"#138ED8\"\n})), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M19.4175 8.214C17.7795 8.214 16.2975 8.895 15.2325 9.99C14.6325 9.21343 13.8615 8.58566 12.9795 8.1555C12.0943 7.7232 11.1221 7.49899 10.137 7.5C6.597 7.5 3.7275 10.332 3.7275 13.8255C3.7275 14.691 3.906 15.5475 4.254 16.3425C3.41637 16.8272 2.72027 17.5227 2.235 18.36C1.70606 19.2811 1.45489 20.3355 1.51177 21.3962C1.56865 22.4568 1.93116 23.4784 2.55557 24.3376C3.17998 25.1969 4.03964 25.8571 5.03087 26.2388C6.0221 26.6204 7.10258 26.7071 8.142 26.4885C8.56884 27.619 9.33075 28.5923 10.3258 29.278C11.3208 29.9637 12.5016 30.3291 13.71 30.3255C14.8699 30.3287 16.0053 29.992 16.9759 29.357C17.9465 28.722 18.7098 27.8165 19.1715 26.7525C19.8585 27.0855 20.631 27.27 21.447 27.27C23.397 27.27 25.095 26.2095 25.986 24.639C26.439 24.729 26.907 24.7755 27.3885 24.7755C29.2717 24.7779 31.0787 24.0323 32.4123 22.7027C33.7459 21.373 34.4968 19.5682 34.5 17.685C34.4986 16.7523 34.3135 15.829 33.9553 14.9678C33.5971 14.1066 33.0728 13.3244 32.4123 12.6658C31.7518 12.0073 30.968 11.4853 30.1058 11.1296C29.2436 10.774 28.3197 10.5916 27.387 10.593C26.3958 10.591 25.4152 10.797 24.5085 11.1975C24.0002 10.2939 23.261 9.54145 22.3665 9.01724C21.472 8.49303 20.4543 8.21583 19.4175 8.214ZM6.4125 18.972L6.2805 19.338C6.264 19.383 6.2805 19.398 6.2895 19.407L6.294 19.4115C6.3405 19.446 6.387 19.4715 6.435 19.497L6.483 19.524C6.819 19.701 7.137 19.752 7.47 19.752C8.145 19.752 8.5665 19.3965 8.5665 18.8235V18.813C8.5665 18.2835 8.0925 18.09 7.647 17.9505L7.59 17.934C7.254 17.826 6.9645 17.7315 6.9645 17.514V17.502C6.9645 17.316 7.1325 17.178 7.3965 17.178C7.6965 17.184 7.9905 17.259 8.256 17.3955C8.256 17.3955 8.322 17.4375 8.346 17.3745L8.4825 17.0085C8.496 16.974 8.4735 16.9485 8.451 16.9335C8.15573 16.7639 7.82103 16.6749 7.4805 16.6755H7.413C6.7935 16.6755 6.36 17.046 6.36 17.5755V17.5875C6.36 18.147 6.8385 18.3285 7.284 18.453L7.356 18.477C7.6815 18.5745 7.9635 18.66 7.9635 18.8865V18.897C7.9635 19.1055 7.7805 19.2585 7.4865 19.2585C7.3725 19.2585 7.008 19.257 6.615 19.011C6.588 18.996 6.57 18.9825 6.5505 18.9705C6.53473 18.9601 6.51872 18.9501 6.5025 18.9405C6.483 18.93 6.435 18.9105 6.4125 18.972ZM16.323 18.972L16.1895 19.338C16.173 19.383 16.1895 19.398 16.1985 19.407L16.2045 19.4115C16.2495 19.446 16.2975 19.4715 16.344 19.497L16.392 19.524C16.728 19.701 17.046 19.752 17.379 19.752C18.0555 19.752 18.477 19.3965 18.477 18.8235V18.813C18.477 18.2835 18.0015 18.09 17.5575 17.9505L17.499 17.934C17.163 17.826 16.8735 17.7315 16.8735 17.514V17.502C16.8735 17.316 17.043 17.178 17.3055 17.178C17.6055 17.184 17.8995 17.259 18.1665 17.3955C18.1665 17.3955 18.231 17.4375 18.2565 17.3745L18.393 17.0085C18.4065 16.974 18.3825 16.9485 18.3615 16.9335C18.0657 16.7638 17.7305 16.6748 17.3895 16.6755H17.322C16.7025 16.6755 16.2705 17.046 16.2705 17.5755V17.5875C16.2705 18.147 16.7475 18.3285 17.1945 18.453L17.2665 18.477C17.592 18.5745 17.874 18.66 17.874 18.8865V18.897C17.874 19.1055 17.6895 19.2585 17.397 19.2585C17.0592 19.2619 16.7288 19.1596 16.452 18.966L16.4115 18.942C16.3995 18.9345 16.3425 18.912 16.323 18.972ZM23.6025 18.216C23.6025 18.0015 23.5755 17.8005 23.52 17.616C23.4722 17.4383 23.3855 17.2735 23.2661 17.1334C23.1468 16.9933 22.9978 16.8815 22.83 16.806C22.6391 16.7224 22.4323 16.6815 22.224 16.686C22.0157 16.6815 21.8089 16.7224 21.618 16.806C21.4501 16.8814 21.3011 16.9932 21.1817 17.1333C21.0624 17.2734 20.9757 17.4383 20.928 17.616C20.8709 17.8108 20.8426 18.013 20.844 18.216C20.8425 18.4185 20.8695 18.621 20.9265 18.816C20.9732 18.994 21.0596 19.1592 21.179 19.2992C21.2985 19.4392 21.448 19.5504 21.6165 19.6245C21.8083 19.7065 22.0155 19.7464 22.224 19.7415C22.4315 19.7459 22.6376 19.706 22.8285 19.6245C22.9974 19.5504 23.1473 19.439 23.2671 19.2988C23.3868 19.1585 23.4733 18.9929 23.52 18.8145C23.5755 18.6315 23.6025 18.4305 23.6025 18.2145V18.216ZM28.299 19.533L28.161 19.1535C28.1415 19.0995 28.089 19.119 28.089 19.119C28.0044 19.1533 27.9164 19.1785 27.8265 19.194C27.732 19.209 27.627 19.2165 27.516 19.2165C27.3978 19.2226 27.2796 19.2045 27.1687 19.1632C27.0577 19.122 26.9564 19.0584 26.871 18.9765C26.7135 18.8175 26.625 18.561 26.6265 18.2145C26.6265 17.8965 26.706 17.6595 26.844 17.478C26.9805 17.298 27.192 17.2065 27.471 17.2065C27.7035 17.2065 27.882 17.232 28.068 17.2905C28.068 17.2905 28.113 17.3085 28.134 17.2515L28.1835 17.115L28.2735 16.8705C28.2885 16.8255 28.251 16.809 28.2375 16.8045C27.98 16.7161 27.7087 16.6744 27.4365 16.6815C27.1995 16.6815 26.9865 16.722 26.8065 16.8015C26.6338 16.876 26.4792 16.987 26.3534 17.1268C26.2276 17.2666 26.1335 17.4319 26.0775 17.6115C26.0143 17.8062 25.9829 18.0098 25.9845 18.2145C25.9845 18.6765 26.112 19.05 26.3595 19.3245C26.6115 19.6005 26.9865 19.74 27.477 19.74C27.765 19.74 28.062 19.68 28.2765 19.599C28.2765 19.599 28.317 19.5795 28.299 19.533ZM31.1085 18.318C31.1175 18.261 31.1685 17.9115 31.0515 17.511C31.0031 17.3475 30.9197 17.1965 30.807 17.0685C30.7057 16.9529 30.5816 16.8594 30.4425 16.794C30.2696 16.7214 30.084 16.6841 29.8965 16.6845C29.6565 16.6845 29.439 16.725 29.2635 16.806C29.093 16.8825 28.9417 16.9962 28.8208 17.1386C28.6998 17.2811 28.6123 17.4488 28.5645 17.6295C28.5074 17.8254 28.4791 18.0285 28.4805 18.2325C28.4805 18.4365 28.509 18.6405 28.5675 18.8355C28.6239 19.0175 28.7216 19.1839 28.853 19.3219C28.9844 19.4598 29.146 19.5654 29.325 19.6305C29.5185 19.7055 29.7525 19.743 30.0195 19.7415C30.573 19.7415 30.864 19.6185 30.984 19.5525C31.005 19.5405 31.0245 19.521 30.999 19.4625L30.8745 19.1175C30.855 19.065 30.8025 19.083 30.8025 19.083C30.79 19.0879 30.7775 19.0929 30.765 19.098C30.6285 19.149 30.4305 19.224 30.018 19.2225C29.721 19.2225 29.5005 19.1355 29.3625 19.0005C29.2215 18.8625 29.1525 18.66 29.1405 18.372L31.053 18.3735C31.053 18.3735 31.104 18.3735 31.1085 18.324V18.318ZM15.7905 18.318C15.7995 18.261 15.849 17.913 15.732 17.511C15.686 17.3559 15.6082 17.2121 15.5036 17.0886C15.399 16.9652 15.2699 16.8649 15.1245 16.794C14.9512 16.7212 14.765 16.684 14.577 16.6845C14.3602 16.6793 14.1449 16.7208 13.9455 16.806C13.7752 16.8829 13.6242 16.9966 13.5033 17.139C13.3824 17.2815 13.2947 17.449 13.2465 17.6295C13.1896 17.8254 13.1613 18.0285 13.1625 18.2325C13.1595 18.4365 13.1895 18.6405 13.2495 18.8355C13.3035 19.0155 13.3995 19.179 13.5255 19.3155C13.6605 19.4565 13.8255 19.5645 14.007 19.6305C14.199 19.7055 14.433 19.743 14.7015 19.7415C15.2535 19.7415 15.5445 19.6185 15.6645 19.5525C15.6855 19.5405 15.7065 19.521 15.681 19.4625L15.5565 19.1175C15.537 19.065 15.4845 19.083 15.4845 19.083L15.447 19.098C15.312 19.149 15.1125 19.224 14.6985 19.2225C14.4015 19.2225 14.1825 19.1355 14.0445 19.0005C13.9035 18.8625 13.8345 18.66 13.821 18.372L15.735 18.3735C15.735 18.3735 15.7845 18.3735 15.7905 18.324V18.318ZM10.773 17.853C10.608 17.829 10.458 17.8155 10.458 17.8155C10.3581 17.8088 10.2581 17.8058 10.158 17.8065C9.9945 17.8065 9.837 17.8275 9.687 17.8665C9.54422 17.9034 9.40913 17.9654 9.288 18.0495C9.17269 18.1307 9.07771 18.2375 9.0105 18.3615C8.94072 18.4957 8.90565 18.6453 8.9085 18.7965C8.9085 18.9645 8.9385 19.11 8.997 19.2285C9.05406 19.3462 9.13966 19.4478 9.246 19.524C9.36346 19.6052 9.49611 19.6618 9.636 19.6905C9.786 19.725 9.9555 19.7415 10.1415 19.7415C10.3365 19.7415 10.5315 19.7265 10.722 19.695C10.911 19.6635 11.142 19.617 11.205 19.602L11.3385 19.5675C11.3865 19.557 11.3835 19.5075 11.3835 19.5075L11.3805 17.778C11.3805 17.3985 11.2785 17.118 11.0775 16.9425C10.8765 16.77 10.581 16.6815 10.1985 16.6815C10.0265 16.6832 9.85497 16.6987 9.6855 16.728C9.6855 16.728 9.2685 16.809 9.096 16.941C9.096 16.941 9.0585 16.965 9.081 17.016L9.216 17.376C9.231 17.4225 9.2775 17.406 9.2775 17.406C9.2775 17.406 9.2925 17.4015 9.3075 17.391C9.6765 17.193 10.143 17.199 10.143 17.199C10.3096 17.1884 10.4752 17.2315 10.6155 17.322C10.7205 17.4015 10.773 17.52 10.773 17.772V17.8515V17.853ZM25.74 17.238C25.7915 17.0996 25.8415 16.9606 25.89 16.821C25.8898 16.8142 25.8882 16.8075 25.8854 16.8013C25.8825 16.7952 25.8785 16.7896 25.8735 16.785C25.8689 16.7799 25.8633 16.7758 25.857 16.773C25.752 16.7445 25.6445 16.7264 25.536 16.719C25.3669 16.7009 25.196 16.7283 25.041 16.7985C24.9166 16.8508 24.8062 16.9314 24.7185 17.034V16.803C24.7187 16.7956 24.7174 16.7882 24.7147 16.7813C24.712 16.7744 24.708 16.7681 24.7028 16.7628C24.6976 16.7575 24.6914 16.7532 24.6846 16.7504C24.6778 16.7475 24.6704 16.746 24.663 16.746H24.174C24.1666 16.746 24.1592 16.7475 24.1524 16.7504C24.1456 16.7532 24.1394 16.7575 24.1342 16.7628C24.129 16.7681 24.125 16.7744 24.1223 16.7813C24.1196 16.7882 24.1183 16.7956 24.1185 16.803V19.623C24.1185 19.6305 24.1185 19.638 24.123 19.644C24.1278 19.6543 24.1354 19.663 24.145 19.6691C24.1546 19.6752 24.1657 19.6784 24.177 19.6785H24.6795C24.687 19.6785 24.6945 19.6785 24.702 19.6755C24.7125 19.671 24.7214 19.6634 24.7276 19.6538C24.7337 19.6442 24.7368 19.6329 24.7365 19.6215V18.2145C24.7365 18.0255 24.759 17.8365 24.801 17.7195C24.8341 17.6145 24.8917 17.5189 24.969 17.4405C25.035 17.3752 25.1158 17.3268 25.2045 17.2995C25.3561 17.2567 25.5161 17.2531 25.6695 17.289C25.7085 17.2935 25.7295 17.271 25.74 17.238ZM21.2025 15.6C21.2175 15.558 21.1815 15.54 21.168 15.534C21.0221 15.4899 20.8704 15.4681 20.718 15.4695C20.373 15.4695 20.1 15.567 19.908 15.7575C19.7175 15.9465 19.5885 16.236 19.524 16.6155L19.5 16.743H19.0665C19.0665 16.743 19.014 16.74 19.002 16.797L18.9315 17.19C18.9255 17.229 18.9435 17.2515 18.993 17.2515H19.416L18.987 19.6185C18.9616 19.7763 18.9235 19.9318 18.873 20.0835C18.8424 20.18 18.7968 20.2711 18.738 20.3535C18.6957 20.4151 18.6347 20.4614 18.564 20.4855C18.4417 20.5245 18.311 20.5297 18.186 20.5005C18.1504 20.4942 18.1156 20.4836 18.0825 20.469C18.0825 20.469 18.033 20.4495 18.0135 20.499L17.871 20.883C17.8575 20.9205 17.877 20.9505 17.901 20.958C18.0463 21.0142 18.2013 21.0407 18.357 21.036C18.5161 21.0384 18.6743 21.0136 18.825 20.9625C18.9613 20.9121 19.0829 20.8286 19.179 20.7195C19.2891 20.5963 19.3738 20.4526 19.428 20.2965C19.503 20.0895 19.5585 19.8765 19.596 19.662L20.0265 17.2515H20.6565C20.6565 17.2515 20.709 17.2545 20.721 17.196L20.7915 16.8045C20.7975 16.767 20.781 16.743 20.7285 16.743H20.118L20.121 16.722C20.1315 16.662 20.16 16.4835 20.2185 16.317C20.2481 16.2404 20.2941 16.1712 20.3535 16.1145C20.3979 16.0697 20.4524 16.0362 20.5125 16.017C20.579 15.9961 20.6483 15.986 20.718 15.987C20.8045 15.9873 20.8904 16.0004 20.973 16.026C21.036 16.0455 21.0435 16.026 21.0555 15.996L21.2025 15.6ZM12.57 19.68C12.6015 19.68 12.624 19.6545 12.624 19.623V15.588C12.624 15.5565 12.6015 15.531 12.57 15.531H12.06C12.0527 15.5312 12.0455 15.5328 12.0389 15.5358C12.0322 15.5388 12.0262 15.543 12.0212 15.5483C12.0162 15.5536 12.0122 15.5598 12.0096 15.5666C12.007 15.5735 12.0058 15.5807 12.006 15.588V19.623C12.006 19.653 12.0285 19.68 12.06 19.68H12.5685H12.57Z\",\n fill: \"#138ED8\"\n})));\nexport default SvgIconSf36;","var _path;\nfunction _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nimport * as React from \"react\";\nconst SvgCloseWithCircle = props => /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"16px\",\n height: \"16px\"\n}, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fill: \"#B0BEC5\",\n d: \"M8,6.6l6.3-6.3c0.4-0.4,1-0.4,1.4,0c0.4,0.4,0.4,1,0,1.4L9.4,8l6.3,6.3c0.4,0.4,0.4,1,0,1.4c-0.4,0.4-1,0.4-1.4,0L8,9.4l-6.3,6.3c-0.4,0.4-1,0.4-1.4,0c-0.4-0.4-0.4-1,0-1.4L6.6,8L0.3,1.7c-0.4-0.4-0.4-1,0-1.4c0.4-0.4,1-0.4,1.4,0L8,6.6z\"\n})));\nexport default SvgCloseWithCircle;","\n \n\n","\n \n\n","import { RequestLayer, Interceptors } from '@jotforminc/request-layer';\nimport { isEnterprise } from '@jotforminc/enterprise-utils';\nimport { dummyGuestUser, dummyFreeUser } from '../constants';\n\nlet isLoggedInBackend = false;\n\nconst requestLayer = new RequestLayer('/API', {\n interceptorConfig: {\n customResponseInterceptors: [Interceptors.requestManagerResponseNormalizer],\n shouldCache: true,\n logCachePayload: {\n projectName: 'header'\n }\n }\n});\n\nexport const dummyCombinedInfo = () => {\n return new Promise(resolve => {\n setTimeout(() => {\n const user = !isLoggedInBackend ? dummyGuestUser : dummyFreeUser;\n resolve({ data: { content: { type: 'USER', credentials: user } } });\n }, 50);\n });\n};\n\nexport const dummyLogin = () => {\n return new Promise(resolve => {\n setTimeout(() => {\n isLoggedInBackend = true;\n resolve(dummyFreeUser);\n }, 50);\n });\n};\n\nconst createCombinedInfoUrl = () => {\n let combinedInfoUrl = 'user/combinedinfo?loc=1&campaign=1';\n\n const { pathname } = global.window.location;\n const isMyForms = pathname.includes('/myforms/');\n\n if (isEnterprise()) {\n return combinedInfoUrl;\n }\n\n if (isMyForms) {\n const navLang = global.window.navigator.userLanguage || global.window.navigator.language;\n combinedInfoUrl += `&navLang=${navLang}`; // for lang offer notification\n }\n\n return combinedInfoUrl;\n};\n\nexport const fetchUser = async () => requestLayer.get(createCombinedInfoUrl());\n\nexport const getUnpaidInvoices = async () => {\n const { mostOverdueInvoice = {} } = requestLayer.get('enterprise/invoice/getUnpaidInvoices');\n return Array.isArray(mostOverdueInvoice) ? mostOverdueInvoice[0] || {} : mostOverdueInvoice || {};\n};\n\nexport const getEpUserSettings = async key => requestLayer.get(`ep/user/settings/${key}`);\n\n// @ilkeradiguzel\n// In order to check if user has already seen the campaign or not, returns either:\n// => { enterprise2024HealthcareReportModalSeenAt: \"1\" } which indicates the campaign with the related key has been seen, thus \"1\",\n// => { content: false, ...props } which indicated the campaign with the related key has NOT been seen, thus content: false.\n// => we can rely on { content } for this specific purpose.\nexport const userSeenCampaign = async key => {\n const { content } = await getEpUserSettings(key);\n return content !== false;\n};\n\nexport const initEnterpriseJobs = async () => requestLayer.get('ep/init-jobs');\n","export const getCurrentDateWithoutTimeZone = () => {\n const currentDate = new Date();\n const offset = currentDate.getTimezoneOffset() * 60000; // offset in milliseconds\n const currentDateWithoutOffset = new Date(currentDate - offset);\n return currentDateWithoutOffset.toISOString().split('T')[0];\n};\n","const isIE = () => {\n const ua = window.navigator.userAgent;\n const msie = ua.indexOf('MSIE '); // Detects IE 10 or older\n const trident = ua.indexOf('Trident/'); // Detects IE 11\n const edge = ua.indexOf('Edge/'); // Detects old Edge\n\n return msie > -1 || trident > -1 || edge > -1;\n};\n\nconst isWindows = () => window.navigator.userAgent.includes('Windows');\n\nexport const isYandex = () => {\n const ua = window.navigator.userAgent;\n const yandexIndex = ua.search(/YaBrowser/);\n return yandexIndex > 0 ? yandexIndex.toString() : '';\n};\n\nexport const addBrowserClassNames = () => {\n const htmlEl = document.querySelector('html');\n const jfHeader = document.querySelector('.jfHeader');\n const ieClassName = `header-browser-ie-${isIE()}`;\n const yandexClassName = `header-browser-yandex-${isYandex()}`;\n\n if (isIE()) {\n htmlEl.classList.add('header-browser-ie');\n htmlEl.classList.add(ieClassName);\n }\n\n if (isYandex()) {\n htmlEl.classList.add('header-browser-yandex');\n htmlEl.classList.add(yandexClassName);\n }\n\n if (isWindows()) {\n jfHeader?.classList.add('windows');\n }\n};\n","const getJotFormEnv = () => window.__jfrouter?.JOTFORM_ENV || window.JOTFORM_ENV;\nconst getUserAccountType = user => user?.account_type?.name || user?.accountType?.name || user?.account_type || user?.accountType;\n\nexport const isGuest = user => getUserAccountType(user) === 'GUEST';\nexport const isAdmin = user => getUserAccountType(user) === 'ADMIN';\nexport const isSupport = user => getUserAccountType(user) === 'SUPPORT';\nexport const isBSG = user => ['BRONZE', 'SILVER', 'GOLD'].includes(getUserAccountType(user));\n\nexport const isTesting = () => getJotFormEnv() === 'TESTING';\nexport const isEnterprise = () => getJotFormEnv() === 'ENTERPRISE';\nexport const isProduction = () => getJotFormEnv() === 'PRODUCTION';\nexport const isDevelopment = () => getJotFormEnv() === 'DEVELOPMENT';\n\n// modify footer addres, kvkk, ccpa, terms based on user location\nexport const runFooterCustomFunction = user => {\n if (!user) return;\n if (global.window.footerFunction && typeof global.window.footerCustomFunction === 'function') {\n global.window.footerCustomFunction(user);\n }\n};\n\n// keep this for now for backwards compatibility\nexport const exceptionallyOverwriteUserDataForFormUser = (user, isFormUser) => {\n if (!isFormUser) return;\n const usr = user;\n usr.username = user.email; // Form users don't have a username\n usr.usage = {};\n usr.account_type = { limits: {}, name: 'FORM_USER' };\n};\n\nexport const isAiAgentBannerAvailable = user => {\n const isEnabled = true;\n const urlParam = new URLSearchParams(window.location.search).get('aiab') === '1';\n if (urlParam) return true;\n if (!isEnabled || isEnterprise()) return false;\n if (isAdmin(user) || isSupport(user)) return true;\n const isAiAgentExistingUserAB = user?.aiAgentExistingUserAB === '26421';\n const isAiAgentNewUserAB = user?.aiAgentNewUserAB === '26441';\n const isAiAgentBetaUser = user?.aiAgentBetaUser === '1';\n return isAiAgentExistingUserAB || isAiAgentNewUserAB || isAiAgentBetaUser;\n};\n","import Tracking from '@jotforminc/tracking';\n\n// A/B Test: landingReactCommonHeader\nexport const FS_PROJECT_NAME = 'landingReactCommonHeader';\n\n// top 10 landing pages has the most traffic included in the a/b test\nexport const allowedDirectories = [\n '/products/pdf-editor',\n '/fillable-pdf-form-creator',\n '/google-forms-alternative',\n '/surveys',\n '/rsvp-tool',\n '/poll-maker',\n '/microsoft-forms-alternative',\n '/online-waiver-forms',\n '/hipaa',\n '/online-payments'\n];\n\nexport const isFsEnabledOnPage = () => {\n let { pathname } = window.location;\n if (pathname.endsWith('/')) {\n pathname = pathname.slice(0, -1);\n }\n return allowedDirectories.includes(pathname);\n};\n\nconst isInOnePercent = () => Math.floor(Math.random() * 100) + 1 === 1;\n\nexport const identifyUserForFullstory = ({\n projectName,\n username = '',\n callback = f => f,\n isEnabled = false\n}) => {\n if (!isEnabled || !username || !isInOnePercent()) return;\n if (!Tracking.FSisInitialized()) {\n Tracking.enableFS();\n }\n Tracking.identify(username, {\n displayName: username,\n [`${projectName}_bool`]: true\n });\n if (typeof callback === 'function') {\n callback();\n }\n};\n","export const customRedirectionOnSignUp = () => {\n if (window.setCustomFunction_signup) {\n window.customFunction_signup();\n return true;\n }\n return false;\n};\n\nexport const customRedirectionOnLogIn = () => {\n if (window.setCustomFunction_login) {\n window.customFunction_login();\n return true;\n }\n return false;\n};\n","import { isEnterprise } from '@jotforminc/enterprise-utils';\n\nexport const getPublicApiURL = () => {\n const isEUDomain = /(?:eu\\.jotform)|(jotformeu\\.com)/.test(window.location.host);\n const isHipaaDomain = /(?:hipaa\\.jotform)/.test(window.location.host);\n switch (true) {\n case /jotform.pro/.test(window.location.host):\n return '/API';\n case isEUDomain:\n return 'https://eu-api.jotform.com';\n case isHipaaDomain:\n return 'https://hipaa-api.jotform.com';\n case Boolean(window.JotFormAPIEndpoint):\n return window.JotFormAPIEndpoint;\n default:\n return 'https://api.jotform.com';\n }\n};\n\nexport const getAPIURL = () => {\n // !add temporarily production test check\n if (window.location.host === 'hipaa.jotformers.com') {\n return '/API';\n }\n\n if (isEnterprise()) {\n return '/API';\n }\n\n if (/(?:jotform\\.ooo)/.test(window.location.host)) {\n return '/API';\n }\n\n if (/(?:alt\\.jotfor\\.ms)/.test(window.location.host)) {\n return '/API';\n }\n\n return getPublicApiURL();\n};\n\nexport const getCombinedInfoURLByProduct = (resourceID, productType) => {\n const apiURL = getAPIURL();\n let loginURL;\n switch (productType) {\n case 'draft':\n case 'form':\n loginURL = `${apiURL}/formuser/${resourceID}/combinedinfo?master=1`;\n break;\n default:\n loginURL = `${apiURL}/formuser/combinedinfo?master=1`;\n break;\n }\n return window?.JFAppsManager?.isOpenedInPortal() ? `${loginURL}&jotform_pwa=1` : loginURL;\n};\n","import qs from 'querystring';\nimport axios from 'axios';\n\nimport { getCombinedInfoURLByProduct, getAPIURL } from './requestUtils';\n\nexport const getUserInfo = (resourceID, productType = 'form') => {\n const requestURL = getCombinedInfoURLByProduct(resourceID, productType);\n return axios.get(requestURL, { withCredentials: true })\n .then(({\n data: {\n responseCode, location, content: {\n type, credentials, pendingSubmission, permissions, saclSubmission\n } = {}\n }\n }) => {\n let isGuest = false;\n if (typeof credentials === 'object' && credentials.account_type) {\n if (typeof credentials.account_type === 'string') {\n // handling public responses like https://api.jotform.com/system/plan/GUEST\n isGuest = credentials.account_type.indexOf('GUEST') >= 0;\n } else if (credentials.account_type.name === 'GUEST') {\n isGuest = true;\n }\n }\n\n let host = '';\n switch (true) {\n case responseCode === 301 && location.indexOf('eu-api') !== -1:\n host = productType.toLowerCase() === 'form' ? 'form.jotformeu.com' : 'eu.jotform.com';\n window.location.href = window.location.href.replace(window.location.host, host);\n break;\n case responseCode === 301 && location.indexOf('hipaa-api') !== -1:\n host = 'hipaa.jotform.com';\n window.location.href = window.location.href.replace(window.location.host, host);\n break;\n case !type:\n case responseCode !== 200:\n case type === 'USER' && isGuest:\n return {};\n default:\n return {\n user: credentials,\n permissions,\n userType: type,\n draftInfo: pendingSubmission,\n saclSubmission\n };\n }\n });\n};\n\nexport const logoutUserWithAPI = ({ isFormUser = false } = {}) => {\n const apiURL = getAPIURL();\n return axios.get(`${apiURL}/${isFormUser ? 'formuser' : ''}/logout?master=1`, { withCredentials: true });\n};\n\nexport const activateAssignment = formID => new Promise(resolve => {\n const failResponse = {\n success: false,\n message: 'Assignment couldn\\'t be activated'\n };\n const apiURL = getAPIURL();\n axios.get(`${apiURL}/formuser/${formID}/activate-assignment`, { withCredentials: true })\n .then(({ data: { responseCode, message } }) => {\n const response = responseCode === 200 ? {\n success: true,\n message: 'Assignment activated'\n } : {\n ...failResponse,\n error: message\n };\n\n resolve(response);\n })\n .catch(e => {\n console.error('Something wrong happened and assignment couldnt be activated!', e);\n // TODO log to the Sentry!\n resolve({ ...failResponse, error: e });\n });\n});\n\nexport const updateUserSettings = async data => {\n return axios.post('/API/user/settings', qs.stringify(data), {\n headers: {\n 'Content-Type': 'application/x-www-form-urlencoded',\n 'jf-team-id': window.teamID\n }\n }).then(resp => {\n if (resp && resp.data && typeof resp.data.responseCode === 'number'\n && (resp.data.responseCode < 200 || resp.data.responseCode > 299)) {\n return Promise.reject(resp);\n }\n\n if (resp && resp.data) {\n return resp.data?.content || resp.data;\n }\n\n return resp;\n });\n};\n","import Axios from 'axios';\n\nexport const initAppleSignin = nonce => {\n if (!window.AppleID) return;\n\n window.AppleID.auth.init({\n clientId: 'com.jotform.applesignin',\n scope: 'name email',\n redirectURI: `https://${global.location.host}/API/login/apple`,\n response_type: 'code',\n response_mode: 'form_post',\n nonce,\n usePopup: true\n });\n\n return window.AppleID.auth.signIn();\n};\n\nexport const initFBSignin = () => {\n // https://sentry.io/organizations/jotform/issues/1769596448/?project=4142374\n if (!window.FB) return;\n\n window.FB.init({\n appId: window.FACEBOOK_SIGNON_APP_ID,\n cookie: true,\n xfbml: true,\n version: 'v3.2'\n });\n return window.FB.login;\n};\n\nexport const initGoogleSignin = callback => {\n if (!window.google) return;\n\n const client = window.google.accounts.oauth2.initCodeClient({\n client_id: window.GOOGLE_SIGNON,\n scope: 'openid profile email',\n ux_mode: 'popup',\n cookiepolicy: 'single_host_origin',\n callback: async response => {\n await callback(response);\n }\n });\n\n return client;\n};\n\nexport const initMicrosoftSignin = () => {\n const myMSALObj = new window.msal.PublicClientApplication({\n auth: {\n clientId: window.MICROSOFT_SIGNON_CLIENT_ID,\n redirectUri: `https://${global.location.host}/login-redirect.html`\n }\n });\n return myMSALObj.loginPopup({\n scopes: ['user.read']\n });\n};\n\nexport const initSalesforceSignin = async () => {\n var openPopupWindowCentered = function openPopupWindowCentered(url, windowName, w, h) {\n var x = window.outerWidth / 2 + window.screenX - w / 2;\n var y = window.outerHeight / 2 + window.screenY - h / 2;\n var features = 'toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=no, resizable=no, copyhistory=no, width=';\n features = features.concat(w, ', height=').concat(h, ', top=').concat(y, ', left=').concat(x);\n return window.open(url, windowName, features);\n };\n\n var popUpWindow = null;\n\n const handleLogin = async () => {\n const response = await Axios.get(`https://${global.location.host}/API/user/salesforce-auth-provider`);\n popUpWindow = openPopupWindowCentered(response.data.content, 'login-flow-salesforce', 600, 680);\n };\n\n await handleLogin();\n\n const data = await new Promise(resolve => {\n window.addEventListener('message', message => {\n if (!message || !message.data) {\n resolve('error');\n }\n\n if (message.data.source === 'jfsalesforce_login') {\n if (popUpWindow) {\n popUpWindow.close();\n }\n\n const res = {\n code: message.data.code,\n token: message.data.token\n };\n resolve(res);\n }\n });\n });\n\n return data;\n};\n\nexport const randomString = length => {\n const possible = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';\n let text = '';\n for (let i = 0; i < length; i++) {\n text += possible.charAt(Math.floor(Math.random() * possible.length));\n }\n return text;\n};\n\nexport const initGoogleMailSignin = async () => {\n const openPopupWindowCentered = (url, windowName, w, h) => {\n const x = window.outerWidth / 2 + window.screenX - w / 2;\n const y = window.outerHeight / 2 + window.screenY - h / 2;\n const features = `toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=no, resizable=no, copyhistory=no, width=${w}, height=${h}, top=${y}, left=${x}`;\n return window.open(url, windowName, features);\n };\n\n let popUpWindow = null;\n\n const handleLogin = async () => {\n popUpWindow = openPopupWindowCentered('/api/smtp-oauth2/google.php?startFlow=1', 'smtp-oauth2-google', 600, 680);\n if (!popUpWindow) {\n throw new Error('Pop-up window could not be opened. It might be blocked.');\n }\n };\n\n const handlePostMessage = (event, resolve) => {\n if (event.origin !== window.location.origin) {\n return; // Only accept messages from the same origin\n }\n\n const { data: messageData = '' } = event;\n\n if (!messageData) {\n resolve(new Error('No message data received.'));\n return;\n }\n\n if (messageData?.source === 'smtp_oauth2_google') {\n if (popUpWindow) {\n popUpWindow.close();\n popUpWindow = null;\n }\n\n const res = { authToken: messageData?.authToken };\n resolve(res);\n }\n };\n\n await handleLogin();\n\n const data = await new Promise((resolve, reject) => {\n const listener = event => handlePostMessage(event, resolve);\n\n window.addEventListener('message', listener);\n\n const id = setInterval(() => {\n if (!popUpWindow || popUpWindow.closed) {\n window.removeEventListener('message', listener);\n clearInterval(id);\n }\n }, 500);\n\n setTimeout(() => {\n clearInterval(id);\n window.removeEventListener('message', listener);\n if (popUpWindow && !popUpWindow.closed) {\n popUpWindow.close();\n reject(new Error('Authentication timeout.'));\n }\n }, 60000); // 60 seconds timeout\n });\n\n return data;\n};\n\nexport const initOAuth2MailSignin = async provider => {\n const openPopupWindowCentered = (url, windowName, w, h) => {\n const x = window.outerWidth / 2 + window.screenX - w / 2;\n const y = window.outerHeight / 2 + window.screenY - h / 2;\n const features = `toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=no, resizable=no, copyhistory=no, width=${w}, height=${h}, top=${y}, left=${x}`;\n return window.open(url, windowName, features);\n };\n\n let popUpWindow = null;\n\n const handleLogin = async () => {\n const url = `/api/smtp-oauth2/${provider === 'google' ? 'google' : 'microsoft'}.php?startFlow=1`;\n popUpWindow = openPopupWindowCentered(url, `smtp-oauth2-${provider}`, 600, 680);\n if (!popUpWindow) {\n throw new Error('Pop-up window could not be opened. It might be blocked.');\n }\n };\n\n const handlePostMessage = (event, resolve) => {\n if (event.origin !== window.location.origin) {\n return; // Only accept messages from the same origin\n }\n\n const { data: messageData = '' } = event;\n\n if (!messageData) {\n resolve(new Error('No message data received.'));\n return;\n }\n\n if (messageData?.source === `smtp_oauth2_${provider}`) {\n if (popUpWindow) {\n popUpWindow.close();\n popUpWindow = null;\n }\n\n const res = { authToken: messageData?.authToken };\n resolve(res);\n }\n };\n\n await handleLogin();\n\n const data = await new Promise((resolve, reject) => {\n const listener = event => handlePostMessage(event, resolve);\n\n window.addEventListener('message', listener);\n\n const id = setInterval(() => {\n if (!popUpWindow || popUpWindow.closed) {\n window.removeEventListener('message', listener);\n clearInterval(id);\n }\n }, 500);\n\n setTimeout(() => {\n clearInterval(id);\n window.removeEventListener('message', listener);\n if (popUpWindow && !popUpWindow.closed) {\n popUpWindow.close();\n reject(new Error('Authentication timeout.'));\n }\n }, 60000); // 60 seconds timeout\n });\n\n return data;\n};\n","export const twoFactorTypeKeys = {\n sms: 'phone',\n authenticatorApp: 'totp'\n};\n\nexport const Texts = {\n MY_FORMS: 'My Forms',\n PROFILE: 'Profile',\n SKIP_CREATE_ACCOUNT: 'Skip Create an Account',\n CONTINUE_DRAFT: 'Continue With Draft',\n DISCARD_START_BLANK: 'You can continue your draft or discard and start with a blank form',\n SAVED_DRAFT_SUBMISSION: 'You have a draft for this form.',\n HELLO_TEXT: 'Hello,',\n LOG_OUT: 'Log out',\n LOGOUT: 'Logout',\n LOGIN_TEXT: 'Log in',\n GET_SHARE_LINK: 'Get Shareable Link',\n EMAIL: 'Email',\n RE_EMAIL: 'Resend Email',\n COPIED_CLIPBOARD: 'Link copied to clipboard!',\n SENT_TO: 'Email sent to',\n DOESNT_SUPPORT_BROWSER: 'Your browser doesn\\'t support this operation',\n SEND_LINK_COMPLETE: 'We’ve sent you an email with a link to complete your submission.',\n START_OVER: `Discard ${encodeURIComponent('&')} Start Over`,\n SAVE_PROGRESS: 'Save your progress',\n ALREADY_HAVE_ACCOUNT: 'Already have an account?',\n DONT_HAVE_ACCOUNT: 'Don’t have an account?',\n ARE_YOU_JOTFORM_ENTERPRISE_USER: 'Are you a Jotform Enterprise user?',\n LOGIN_TO_JOTFORM_ENTERPRISE: 'Log into Jotform Enterprise',\n LOGIN_CAPITAL: 'LOG IN',\n SIGN_UP: 'Sign up',\n CREATE_ACCOUNT: 'Create an Account',\n OTHER_OPTIONS: 'More sign up options',\n SIGN_UP_EMAIL: 'Sign up with Email',\n SIGN_UP_EMAIL_LOWERCASE: 'Sign up with email',\n FULL_NAME: 'Full Name',\n NAME_TEXT: 'Name',\n EMAIL_TEXT: 'Email',\n PASSWORD_TEXT: 'Password',\n CONF_PASSWORD_TEXT: 'Confirm Password',\n TERMS_SERVICE: 'Terms of Service',\n TERMS_OF_USE: 'Terms of Use',\n PRIVACY_POLICY: 'Privacy Policy',\n AND_KEY: 'and',\n OR_KEY: 'OR',\n SUBMISSIONS_SAVED_DRAFT: 'Your form has been saved as a draft.',\n SEND_DRAFT_CONTINUE: 'We’ve sent you an email with a link to continue your form.',\n ENTER_EMAIL: 'If you want to continue your form later, please enter the email address you would like to send the link to:',\n EMAIL_NOT_BLANK: 'Email cannot be left blank',\n SEND_LINK: 'Send link',\n SEND: 'Send',\n BACK_KEY: 'Back',\n SAVE_SUBMISSION: 'Save Submission',\n SAVE_KEY: 'Save',\n SKIP_KEY: 'Skip',\n USERNAME_EMAIL: 'Username or Email',\n LOGIN_SAVE: 'Login and Save Submission',\n AGREE_SERVICE_POLICY: 'I agree to the [1[Terms of Service]] and [2[Privacy Policy]].',\n AGREE_FOR_TURKISH_USERS: 'I have read the [1[KVKK Clarification Text]] and I accept the processing of my personal data in accordance with the [2[Explicit Consent Text]].',\n MORE_HELP_CONTACT: 'If you need more help, please [1[contact our support team.]]',\n MORE_HELP_CONTACT_ENTERPRISE: 'If you need help, please contact with your administrator.',\n FORGOT_PASSWORD: 'Forgot password?',\n FORGOT_YOUR_PASSWORD: 'Forgot your password?',\n PASSWORD_RESET_SENT: 'Password reset instructions have been sent successfully via email.',\n FIELD_REQUIRED: 'This field is required',\n EMAIL_FIELD_REQUIRED: 'Username or email field is required',\n PASS_FIELD_REQUIRED: 'Password field is required',\n ENTER_A_PASSWORD: 'Please enter a password.',\n PASSWORD_OK: 'Password ok',\n PASSWORD_CONFIRMATION_OK: 'Password confirmation ok',\n PASSWORD_CANNOT_BLANK: 'Password cannot be left blank',\n PASS_MIN_CHAR_COUNT: 'Should have minimum 8 characters',\n PASS_INCL_CHARS: 'Should be a mix of upper case, lower case characters, and numbers or special characters',\n FIELDS_SHOULD_MATCH: 'Passwords don\\'t match.',\n SECURE_PASS_DESC: 'Your password must contain at least',\n SECURE_PASS_REUSE: 'Your password must be different from your last 6 passwords',\n SECURE_PASS_REUSE_CONT: ' and contain at least',\n SECURE_PASS_CHAR_COUNT: '8 characters',\n SECURE_PASS_TEST_DESC: 'Your password must include at least',\n SECURE_PASS_UPPERCASE: '1 uppercase letter',\n SECURE_PASS_LOWERCASE: '1 lowercase letter',\n SECURE_PASS_NUMBER: '1 number',\n SECURE_PASS_SPECIAL_CHAR: '1 special character',\n SECURE_PASS_NO_LEADING_OR_TRAILING_WHITESPACE: 'No blank spaces, either at the beginning or at the end',\n PASS_DIFF_PREV: 'Should be different from your last 6 passwords',\n CONNECT_SALESFORCE: 'Connect with Salesforce',\n CONNECT_APPLE: 'Connect with Apple',\n CONNECT_GOOGLE: 'Connect with Google',\n CONNECT_MICROSOFT: 'Connect with Microsoft',\n CONNECT_FACEBOOK: 'Connect with Facebook',\n SIGN_UP_SALESFORCE: 'Sign up with Salesforce',\n SIGN_UP_SALESFORCE_MOBILE: 'Salesforce',\n SIGN_UP_APPLE: 'Sign up with Apple',\n SIGN_UP_GOOGLE: 'Sign up with Google',\n SIGN_UP_GOOGLE_MOBILE: 'Google',\n SIGN_UP_FACEBOOK: 'Sign up with Facebook',\n SIGN_UP_FACEBOOK_MOBILE: 'Facebook',\n SIGN_UP_MICROSOFT: 'Sign up with Microsoft',\n SIGN_UP_MICROSOFT_MOBILE: 'Microsoft',\n SIGN_UP_NOW: 'Sign Up Now!',\n SIGN_UP_NOW_NO_EXCLAMATION_MARK: 'Sign Up Now',\n LOGIN_WITH: 'Log in with',\n LOGIN_SALESFORCE: 'Login with Salesforce',\n SALESFORCE: 'Salesforce',\n LOGIN_GOOGLE: 'Login with Google',\n GOOGLE: 'Google',\n LOGIN_FACEBOOK: 'Login with Facebook',\n FACEBOOK: 'Facebook',\n LOGIN_APPLE: 'Login with Apple',\n APPLE: 'Apple',\n LOGIN_MICROSOFT: 'Login with Microsoft',\n MICROSOFT: 'Microsoft',\n ENTER_USERNAME_EMAIL: 'Enter your username or email',\n SEND_INSTRUCTIONS: 'Send Reset Instructions',\n GO_BACK_TEXT: 'Go back',\n BACK_TO_PRIMARY_METHOD: 'Back to Primary Method',\n CAN_NOT_ACCESS_MY_DEVICE: \"I can't access my authentication device\",\n // eslint-disable-next-line max-len\n RECOVER_ACCOUNT_TEXT: \"If you can't access your authentication device or recovery codes, you can ask for assistance from Jotform support. You need to answer some security questions to recover your account.\",\n RECOVER_ACCOUNT_MAIL_HAS_BEEN_SENT: 'Your request to have your account recovered has already been sent in. You are unable to submit another request to recover your account until it is finished.',\n RECOVER_YOUR_ACCOUNT: 'Recover Your Account',\n VIEW_SUPPORT_TICKET: 'View Support Ticket',\n VERIFICATION_EMAIL_SENT_TO: 'The verification email has been sent to',\n RECOVER_ACCOUNT_EMAIL_INFO_TEXT: 'Click on the link in the email to answer a few security questions.',\n RECOVER_ACCOUNT_NOTIFICATION_TEXT: 'After you submit, a member of our support staff will examine your responses and get in touch with you to offer assistance within 48 to 72 hours.',\n BACK_TO_LOGIN: 'Back to Login',\n VALID_EMAIL: 'Please type a valid email',\n SENDING: 'Sending...',\n AGREE_TERMS_CONDITIONS: 'Please agree terms and conditions',\n NEED_TO_ACCEPT_TERMS: 'You need to accept our Terms of Service and Privacy Policy to create an account.',\n CHECK_SPAM_FOLDER: 'If you don’t get the email, please check your spam folder.',\n GET_INSTRUCTION_EMAIL: 'You should get the password reset instructions via email soon.',\n OK_TEXT: 'OK',\n CHECK_EMAIL: 'Check your email',\n EMAIL_IS_USE: 'Email is in use:',\n EMAIL_IS_NOTVALID: 'Email is not valid.',\n CURRENT_PASSWORD: 'Current Password',\n SHOW_PASSWORD: 'Show Password',\n HIDE_PASSWORD: 'Hide Password',\n PLEASE_WAIT: 'Please wait',\n WELCOME_BACK: 'Welcome Back!',\n CREATE_MY_ACCOUNT: 'CREATE MY ACCOUNT',\n BY_CLICKING_YOU_AGREE: 'By clicking \"Signup\" you agree our [1[Terms of Service]] and [2[Privacy Policy]]',\n ERROR_TRY_AGAIN: 'There was an error. Please try again later.',\n VERIFY_ITS_YOU: 'Verify it\\'s you!',\n TWO_FACTOR_DESCRIPTION: {\n [twoFactorTypeKeys.sms]: \"We've sent an authentication code to [1[receiver]]. Please check your messages and enter the six-digit code to enable 2FA\",\n [twoFactorTypeKeys.authenticatorApp]: 'Enter the six-digit code from your configured Authenticator App below.'\n },\n EMAIL_AUTHENTICATION_DESCRIPTION: \"We've sent an authentication code to [1[receiver]]. Please check your inbox and enter the six-digit code.\",\n VERIFICATION_CODE: 'Authentication code',\n RECOVERY_CODE: 'Recovery code',\n VERIFY: 'VERIFY',\n VERIFY_BUTTON_TEXT: 'Verify',\n NO_CODE: 'No code?',\n SEND_AGAIN: 'Send again',\n HAVING_PROBLEMS: 'Having problems?',\n SEE_OTHER_AUTHENTICATION_METHODS: 'See Other Methods',\n SEND_CODE_TO: {\n [twoFactorTypeKeys.sms]: 'Send code to [1[receiver]]',\n [twoFactorTypeKeys.authenticatorApp]: 'Use authenticator app'\n },\n USE_YOUR_RECOVERY_CODES: 'Use your recovery codes',\n USE_YOUR_AUTHENTICATOR_APP: 'Use code from Authenticator App',\n TWO_FACTOR_AUTHENTICATION: 'Two-Factor Authentication',\n EMAIL_AUTHENTICATION: 'E-mail Authentication',\n ENTER_RECOVERY_CODES: 'Enter one of your 6-digit recovery codes below.',\n DAILY_LIMIT: 'You\\'ve reached the daily text message limit',\n INVALID_TOKEN: 'Invalid code; please try again',\n BACKUP_CODES_ERROR: 'You entered a wrong or already used recovery code',\n BLANK_VERIFICATION_CODE: 'Code cannot be blank.',\n GREETING_DESCRIPTION: '',\n SHOW_MORE: 'Show More',\n CHOOSE_A_METHOD: 'Choose a method',\n CHOOSE_A_METHOD_DESCRIPTION: 'Select a verification method to login your account',\n REACH_DAILY_LIMIT_FORCE_TO_EMAIL: 'Your verification code has been sent to your email due to you have reached the daily SMS limit.',\n USED_RECOVERY_CODES: 'Used recovery codes will be invalidated.',\n ENTER_YOUR_EMAIL: 'Enter your email',\n THANK_YOU: 'THANK YOU!',\n VIEW_COMPLETED_APPROVALS: 'View your completed approvals',\n COMPLETED_TASK: 'The task has been completed.',\n PLEASE_LOGIN: 'Please [1[Log in]].',\n EMAIL_ERROR: 'This email address is already associated with a Jotform account.',\n EMAIL_ERROR_ENTERPRISE: 'This email address is already associated with an account.',\n // Delete my account flow\n ARE_YOU_SURE_YOU_WANT_TO_DELETE_YOUR_ACCOUNT: 'Are you sure you want to delete your account?',\n YOU_ARE_ABOUT_TO_DELETE_YOUR_ACCOUNT_NAMELY: 'You’re about to delete your account namely:',\n GET_IN_TOUCH_WITH_US: '[1[Get in touch]] with us if you have any questions.',\n YES_DELETE: 'Yes, Delete',\n CANCEL: 'Cancel',\n VERIFY_THAT_ITS_YOU_TO_DELETE_YOUR_ACCOUNT: 'Verify That It’s You to Delete Your Account',\n VERIFY_WITH: 'Verify with',\n PLEASE_ENTER_YOUR_PASSWORD: 'Please enter your password',\n YOU_HAVE_ENTERED_YOUR_CURRENT_PASSWORD_WRONG: 'You have entered your current password wrong',\n YOU_HAVE_VERIFIED_SUCCESSFULLY: 'You have verified successfully',\n DELETE_MY_ACCOUNT: 'Delete My Account',\n YOUR_ACCOUNT_COULD_NOT_BE_DELETED: 'Your account could not be deleted. Please try again.',\n YOU_COULD_NOT_BE_VERIFIED: 'You could not be verified. Try again later',\n VERIFY_DELETE: 'Verify',\n CONTINUE_LATER: 'We’ve emailed you a link you can use to continue it later.',\n DRAFT_SAVED: 'Submission saved as draft',\n INCOMPLETE_SUBMISSION: 'You have an incomplete submission for this form',\n DRAFT_TEXT: 'Discard this submission draft to start over, or continue with your saved draft.',\n DISCARD_DRAFT: 'Discard and start over',\n CONTINUE_WITH_DRAFT: 'Continue with draft',\n SAVE_AS_DRAFT: 'Sign up to save submission as a draft',\n PLEASE_WAIT_SAVE: 'Please wait while we save your submission.',\n SAVE_ERROR: \"Your submission couldn't be saved\",\n PLEASE_TRY_AGAIN: 'Please try again.',\n TRY_AGAIN: 'Try Again',\n GET_DRAFT_LINK: 'Get Draft Link',\n DRAFT_BEING_SAVED: 'Your submission is being saved',\n ENTER_EMAIL_ADDRESS: 'Enter your email address',\n PLEASE_ENTER_VALID_EMAIL: 'Please enter valid email',\n CONTINUE_FORM_LATER: 'If you want to continue your form later, please enter your email address.',\n TO_KEY: 'To',\n DONT_ACCESS_DRAFT: 'You don’t have access to this submission draft',\n FILL_OUT_DRAFT: 'Fill out the form to create a new submission.',\n CHANGE_ACCOUNT: 'Change Account',\n START_OVER_FORM: 'Start Over',\n NOT_FOUND: 'Submission draft not found',\n DELETED_DRAFT: 'This draft was deleted or has already been submitted.',\n USER_IS_SSO_ERROR: 'Email already in use by SSO user.'\n};\n\nexport const AlertLabelTypes = {\n WARNING: 'WARNING',\n SUCCESS: 'SUCCESS',\n INFO: 'INFO'\n};\n\nexport const prepareLoginFlowDefaultGreetings = () => {\n const isPartnershipPages = window.location.href.indexOf('/partnership/') >= 0;\n const isAffiliateSignup = window.location.href.indexOf('/affiliate/') >= 0;\n const isJotformForBeginners = window.location.href.indexOf('/jotform-for-beginners/') >= 0;\n if (isPartnershipPages) {\n return `You will need a free Jotform account\n in order to access your Dashboard. If you already have a Jotform account,\n please log in to your account first to be able to fill out your application.\n If you have more than one Jotform account, please use the registered account to the\n Jotform ${isAffiliateSignup ? 'Affiliate Program' : 'Solutions Program'}.`;\n }\n if (isJotformForBeginners) {\n return 'Create a free Jotform account to download the book, Jotform for Beginners.';\n }\n if (window.JOTFORM_ENV !== 'ENTERPRISE') {\n return 'Collect information, payments, and signatures with custom online forms.';\n }\n return '';\n};\n\nexport const FORM_TEXTS = {\n confirmEmail: 'E-mail does not match',\n pleaseWait: 'Please wait...',\n validateEmail: 'You need to validate this e-mail',\n confirmClearForm: 'Are you sure you want to clear the form',\n lessThan: 'Your score should be less than or equal to',\n incompleteFields: 'There are incomplete required fields. Please complete them.',\n required: 'This field is required.',\n requireOne: 'At least one field required.',\n requireEveryRow: 'Every row is required.',\n requireEveryCell: 'Every cell is required.',\n email: 'Enter a valid e-mail address',\n alphabetic: 'This field can only contain letters',\n numeric: 'This field can only contain numeric values',\n alphanumeric: 'This field can only contain letters and numbers.',\n cyrillic: 'This field can only contain cyrillic characters',\n url: 'This field can only contain a valid URL',\n currency: 'This field can only contain currency values.',\n fillMask: 'Field value must fill mask.',\n uploadExtensions: 'You can only upload following files:',\n noUploadExtensions: 'File has no extension file type (e.g. .txt, .png, .jpeg)',\n uploadFilesize: 'File size cannot be bigger than:',\n uploadFilesizemin: 'File size cannot be smaller than:',\n gradingScoreError: 'Score total should only be less than or equal to',\n inputCarretErrorA: 'Input should not be less than the minimum value:',\n inputCarretErrorB: 'Input should not be greater than the maximum value:',\n maxDigitsError: 'The maximum digits allowed is',\n minCharactersError: 'The number of characters should not be less than the minimum value:',\n maxCharactersError: 'The number of characters should not be more than the maximum value:',\n freeEmailError: 'Free email accounts are not allowed',\n minSelectionsError: 'The minimum required number of selections is ',\n maxSelectionsError: 'The maximum number of selections allowed is ',\n pastDatesDisallowed: 'Date must not be in the past.',\n dateLimited: 'This date is unavailable.',\n dateInvalid: 'This date is not valid. The date format is {format}',\n dateInvalidSeparate: 'This date is not valid. Enter a valid {element}.',\n ageVerificationError: 'You must be older than {minAge} years old to submit this form.',\n multipleFileUploads_typeError: '{file} has invalid extension. Only {extensions} are allowed.',\n multipleFileUploads_sizeError: '{file} is too large, maximum file size is {sizeLimit}.',\n multipleFileUploads_minSizeError: '{file} is too small, minimum file size is {minSizeLimit}.',\n multipleFileUploads_emptyError: '{file} is empty, please select files again without it.',\n multipleFileUploads_uploadFailed: 'File upload failed, please remove it and upload the file again.',\n multipleFileUploads_onLeave: 'The files are being uploaded, if you leave now the upload will be cancelled.',\n multipleFileUploads_fileLimitError: 'Only {fileLimit} file uploads allowed.',\n dragAndDropFilesHere_infoMessage: 'Drag and drop files here',\n chooseAFile_infoMessage: 'Choose a file',\n maxFileSize_infoMessage: 'Max. file size',\n generalError: 'There are errors on the form. Please fix them before continuing.',\n generalPageError: 'There are errors on this page. Please fix them before continuing.',\n wordLimitError: 'Too many words. The limit is',\n wordMinLimitError: 'Too few words. The minimum is',\n characterLimitError: 'Too many Characters. The limit is',\n characterMinLimitError: 'Too few characters. The minimum is',\n ccInvalidNumber: 'Credit Card Number is invalid.',\n ccInvalidCVC: 'CVC number is invalid.',\n ccInvalidExpireDate: 'Expire date is invalid.',\n ccInvalidExpireMonth: 'Expiration month is invalid.',\n ccInvalidExpireYear: 'Expiration year is invalid.',\n ccMissingDetails: 'Please fill up the credit card details.',\n ccMissingProduct: 'Please select at least one product.',\n ccMissingDonation: 'Please enter numeric values for donation amount.',\n disallowDecimals: 'Please enter a whole number.',\n restrictedDomain: 'This domain is not allowed',\n ccDonationMinLimitError: 'Minimum amount is {minAmount} {currency}',\n requiredLegend: 'All fields marked with * are required and must be filled.',\n geoPermissionTitle: 'Permission Denied',\n geoPermissionDesc: 'Check your browser\\'s privacy settings.',\n geoNotAvailableTitle: 'Position Unavailable',\n geoNotAvailableDesc: 'Location provider not available. Please enter the address manually.',\n geoTimeoutTitle: 'Timeout',\n geoTimeoutDesc: 'Please check your internet connection and try again.',\n selectedTime: 'Selected Time',\n formerSelectedTime: 'Former Time',\n cancelAppointment: 'Cancel Appointment',\n cancelSelection: 'Cancel Selection',\n noSlotsAvailable: 'No slots available',\n slotUnavailable: '{time} on {date} has been selected is unavailable. Please select another slot.',\n multipleError: 'There are {count} errors on this page. Please correct them before moving on.',\n oneError: 'There is {count} error on this page. Please correct it before moving on.',\n doneMessage: 'Well done! All errors are fixed.',\n invalidTime: 'Enter a valid time',\n doneButton: 'Done',\n reviewSubmitText: 'Review and Submit',\n nextButtonText: 'Next',\n prevButtonText: 'Previous',\n seeErrorsButton: 'See Errors',\n notEnoughStock: 'Not enough stock for the current selection',\n notEnoughStock_remainedItems: 'Not enough stock for the current selection ({count} items left)',\n soldOut: 'Sold Out',\n justSoldOut: 'Just Sold Out',\n selectionSoldOut: 'Selection Sold Out',\n subProductItemsLeft: '({count} items left)',\n startButtonText: 'START',\n submitButtonText: 'Submit',\n submissionLimit: 'Sorry! Only one entry is allowed.
Multiple submissions are disabled for this form.',\n reviewBackText: 'Back to Form',\n seeAllText: 'See All',\n progressMiddleText: 'of',\n fieldError: 'field has an error.',\n error: 'Error'\n};\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport ReactModal from 'react-modal';\nimport classNames from 'classnames';\n\nimport {\n IconCheck, IconExclamationTriangleFilled, IconLinkDiagonalBroken, IconTrashExclamationFilled, IconXmark\n} from '@jotforminc/svg-icons';\nimport { t } from '@jotforminc/translation';\nimport IconHIPAAWarning from '../assets/svg/iconHipaaWarning.svg';\n\nimport '../styles/_jfDialog.scss';\n\nclass Dialog extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n loadingState: 'default'\n };\n }\n\n onSubmit = e => {\n e.preventDefault();\n\n const { onSubmit } = this.props;\n onSubmit(e.target.doNotShowAgain ? { doNotShowAgain: e.target.doNotShowAgain.checked } : null);\n };\n\n onCancel = e => {\n if (e) {\n e.preventDefault();\n }\n const { onClose, modalID } = this.props;\n\n onClose(modalID);\n };\n\n onOtherButtonClickHandle = async (loadingButtonEnable, onOtherButtonClick) => {\n if (loadingButtonEnable) {\n this.setState({ loadingState: 'loading' });\n await onOtherButtonClick();\n setTimeout(() => {\n this.setState({ loadingState: 'default' });\n }, 2000);\n return;\n }\n onOtherButtonClick();\n };\n\n get headerIcon() {\n const { type } = this.props;\n switch (type) {\n case 'warning':\n return {\n svg: ,\n class: 'warningIcon'\n };\n case 'success':\n return {\n svg: ,\n class: 'successIcon'\n };\n case 'removeConnection':\n return {\n svg: ,\n class: 'removeConnectionIcon'\n };\n case 'trash':\n return {\n svg: ,\n class: 'dialogTrashIcon'\n };\n case 'hipaaWarning':\n return {\n svg: ,\n class: 'dialogHIPAAWarningIcon'\n };\n // case 'error':\n // return {\n // svg: errorSVG,\n // class: 'error'\n // };\n default:\n return null;\n }\n }\n\n render() {\n const {\n closable, isOpen, modalID, submitButtonText, cancelButtonText, oneButtonDialog, isOneButtonColor,\n title, subTitles, hasCheckboxForDisabling, otherButtonText, onOtherButtonClick, dialogClass, renderFields, wrapperClassName, headerImg, isSolidButtonGreen,\n loadingButtonEnable, parentSelector\n } = this.props;\n\n const { loadingState } = this.state;\n return (\n \n
\n
\n {this.headerIcon && {this.headerIcon.svg}}\n {headerImg && {headerImg}}\n {title &&

{title}

}\n {subTitles && subTitles.map(subTitle =>

)}\n {hasCheckboxForDisabling && (\n \n )}\n {closable && (\n \n \n \n )}\n

\n
\n {renderFields !== null ? renderFields().map((item, index) => {\n return (\n \n

{item.fieldTitle}

\n

{item.fieldSubTitle}

\n {item.element}\n
\n );\n }) : null}\n \n
\n {!oneButtonDialog && }\n {otherButtonText && (\n this.onOtherButtonClickHandle(loadingButtonEnable, onOtherButtonClick)}\n >\n {loadingState === 'default' && (otherButtonText)}\n {loadingButtonEnable && loadingState === 'loading' && ('PLEASE WAIT...')}\n {loadingButtonEnable && loadingState === 'completed' && ('REQUEST COMPLETED')}\n \n )}\n {cancelButtonText && (\n \n )}\n
\n
\n \n );\n }\n}\n\nDialog.propTypes = {\n isOpen: PropTypes.bool,\n closable: PropTypes.bool,\n modalID: PropTypes.string,\n type: PropTypes.string,\n onSubmit: PropTypes.func.isRequired,\n onClose: PropTypes.func.isRequired,\n hasCheckboxForDisabling: PropTypes.bool,\n title: PropTypes.string,\n subTitles: PropTypes.oneOfType([\n PropTypes.node,\n PropTypes.arrayOf(PropTypes.string)\n ]),\n onOtherButtonClick: PropTypes.func,\n submitButtonText: PropTypes.string,\n otherButtonText: PropTypes.string,\n cancelButtonText: PropTypes.string,\n dialogClass: PropTypes.string,\n renderFields: PropTypes.func,\n wrapperClassName: PropTypes.string,\n headerImg: PropTypes.node,\n isSolidButtonGreen: PropTypes.bool,\n oneButtonDialog: PropTypes.bool,\n isOneButtonColor: PropTypes.string,\n loadingButtonEnable: PropTypes.bool,\n parentSelector: PropTypes.func\n};\n\nDialog.defaultProps = {\n isOpen: false,\n closable: true,\n modalID: '',\n type: '',\n hasCheckboxForDisabling: false,\n title: '',\n subTitles: '',\n onOtherButtonClick: () => { },\n submitButtonText: '',\n otherButtonText: '',\n cancelButtonText: '',\n dialogClass: 'isDefault',\n renderFields: null,\n wrapperClassName: '',\n headerImg: null,\n isSolidButtonGreen: false,\n oneButtonDialog: false,\n isOneButtonColor: null,\n loadingButtonEnable: false,\n parentSelector: () => document.body\n};\n\nexport default Dialog;\n","import { RequestLayer, Interceptors } from '@jotforminc/request-layer';\n\nconst layer = new RequestLayer('/API', {\n interceptorConfig: {\n teamID: global.teamID,\n customResponseInterceptors: [Interceptors.requestManagerResponseNormalizer]\n }\n});\n\nexport default layer;\n","import Axios from 'axios';\nimport qs from 'querystring';\nimport { loadJS, getPossibleTimeZone } from '@jotforminc/utils';\nimport isNil from 'lodash/isNil';\nimport { Texts } from '@jotforminc/constants';\nimport layer from './layer';\n\nconst trackAction = data => layer.post(\n 't/jfrev',\n data,\n {\n headers: {\n 'Content-Type': 'application/json'\n }\n }\n);\n\nexport const actionTracker = ({\n username = '', action = '', target = ''\n}) => {\n const log = {\n project: 'login-flow',\n oldActions: {\n action: action,\n target: target\n },\n actor: username,\n location: window.location && window.location.href\n };\n\n trackAction(log);\n};\n\nexport const loadAppleClient = nonce => {\n loadJS(\n 'jf-apple-id',\n 'https://appleid.cdn-apple.com/appleauth/static/jsapi/appleid/1/en_US/appleid.auth.js',\n () => {\n if (!window.AppleID) return;\n\n window.AppleID.auth.init({\n clientId: 'com.jotform.applesignin',\n scope: 'name email',\n redirectURI: `https://${window.location.host}/API/login/apple`,\n response_type: 'code',\n response_mode: 'form_post',\n nonce,\n usePopup: true\n });\n }\n );\n};\n\nexport const loadFacebookClient = () => {\n loadJS('facebook-jssdk', 'https://connect.facebook.net/en_US/sdk.js');\n};\n\nexport const loadGoogleClient = () => {\n loadJS('google-jssdk-new', 'https://accounts.google.com/gsi/client');\n};\n\nexport const loadMicrosoftClient = () => {\n loadJS('microsoft-jssdk', 'https://cdn.jotfor.ms/js/msal/msal-browser.js');\n};\n\nexport const handleGoogleAuth = ({ onSuccess = f => f, onError = f => f }) => {\n if (!window.google) return;\n const client = window.google.accounts.oauth2.initCodeClient({\n client_id: window.GOOGLE_SIGNON,\n scope: 'openid profile email',\n ux_mode: 'popup',\n cookiepolicy: 'single_host_origin',\n callback: async response => {\n await onSuccess(response);\n },\n error_callback: async response => {\n await onError(response);\n }\n });\n\n return client;\n};\n\nexport const handleFacebookAuth = ({ onSuccess = f => f, onError = f => f }) => {\n // https://sentry.io/organizations/jotform/issues/1769596448/?project=4142374\n if (!window.FB) return;\n\n window.FB.init({\n appId: window.FACEBOOK_SIGNON_APP_ID,\n cookie: true,\n xfbml: true,\n version: 'v3.2'\n });\n\n window.FB.login(({ status, authResponse }) => {\n if (status === 'connected' && authResponse) {\n onSuccess(authResponse.accessToken);\n return;\n }\n\n onError(status);\n }, { scope: 'public_profile,email' });\n};\n\nexport const handleAppleAuth = async ({\n hasUserLogin,\n nonce,\n onSuccess = f => f,\n onError = f => f\n}) => {\n try {\n // https://sentry.io/organizations/jotform/issues/1769596448/?project=4142374\n if (!window.AppleID) return;\n\n const result = await window.AppleID.auth.signIn();\n\n const response = hasUserLogin ? await Axios.post(\n 'https://www.jotform.com/API/login/apple',\n qs.stringify({\n authorizationCode: result.authorization.code,\n identityToken: result.authorization.id_token,\n nonce\n }),\n {\n headers: {\n 'Content-Type': 'application/x-www-form-urlencoded'\n }\n }\n ) : {};\n\n onSuccess({\n response,\n authorizationCode: result.authorization.code,\n identityToken: result.authorization.id_token,\n nonce\n });\n } catch (err) {\n onError(err);\n }\n};\n\nexport const handleMicrosoftAuth = () => {\n const myMSALObj = new window.msal.PublicClientApplication({\n auth: {\n clientId: window.MICROSOFT_SIGNON_CLIENT_ID,\n redirectUri: `https://${global.location.host}/login-redirect.html`\n }\n });\n return myMSALObj.loginPopup({\n scopes: ['user.read']\n });\n};\n\nexport const handleSalesforceAuth = async () => {\n var openPopupWindowCentered = function openPopupWindowCentered(url, windowName, w, h) {\n var x = window.outerWidth / 2 + window.screenX - w / 2;\n var y = window.outerHeight / 2 + window.screenY - h / 2;\n var features = 'toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=no, resizable=no, copyhistory=no, width=';\n features = features.concat(w, ', height=').concat(h, ', top=').concat(y, ', left=').concat(x);\n return window.open(url, windowName, features);\n };\n\n var popUpWindow = null;\n\n const handleLogin = async () => {\n const response = await Axios.get(`https://${global.location.host}/API/user/salesforce-auth-provider`);\n popUpWindow = openPopupWindowCentered(response.data.content, 'login-flow', 600, 680);\n };\n\n await handleLogin();\n\n const data = await new Promise(resolve => {\n window.addEventListener('message', message => {\n if (!message || !message.data) {\n resolve('error');\n }\n\n if (message.data.source === 'jfsalesforce_login') {\n if (popUpWindow) {\n popUpWindow.close();\n }\n\n const res = {\n code: message.data.code,\n token: message.data.token\n };\n resolve(res);\n }\n });\n });\n\n return data;\n};\n\nexport const handleUserLogin = async ({\n appName, config, token, type\n}) => {\n try {\n const response = await Axios.post(\n '/server.php',\n qs.stringify({\n action: config.action,\n [config.tokenKey]: token,\n // eslint-disable-next-line no-undef\n language: navigator.language,\n timezone: getPossibleTimeZone(),\n ...appName ? {\n button_name: `${type}-${appName}`\n } : {}\n }),\n {\n withCredentials: true,\n headers: {\n 'Content-Type': 'application/x-www-form-urlencoded'\n }\n }\n );\n\n return response;\n } catch (err) {\n return err;\n }\n};\n\nexport const handleUserVerify = async ({\n appName, type, config, token\n}) => {\n const isGoogle = type === 'google';\n return layer.post(\n `user/login/${type}`,\n qs.stringify({\n onlyVerify: '1',\n action: config.action,\n [config.tokenKey]: token,\n // eslint-disable-next-line no-undef\n language: navigator.language,\n timezone: getPossibleTimeZone(),\n ...appName ? {\n button_name: `${type}-${appName}`\n } : {},\n ...(isGoogle && { newGoogleFlow: 1 })\n })\n );\n};\n\nexport const randomString = value => {\n let length = value;\n const charset = '0123456789ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvwxyz-._';\n let result = '';\n\n const makeResult = item => {\n if (length === 0) {\n return;\n }\n\n if (item < charset.length) {\n result += charset[item];\n length--;\n }\n };\n\n while (length > 0) {\n const bytes = new Uint8Array(16);\n const cryptor = window.crypto || window.msCrypto;\n const random = cryptor.getRandomValues(bytes);\n\n Array.from(random).forEach(makeResult);\n }\n\n return result;\n};\n\nexport const fetchUserCredentialRuleSet = isSecure => {\n const params = isSecure ? { hipaa: '1' } : {};\n return layer.get('user/credential-rule-set', null, { params });\n};\n\nexport const checkPasswordReuse = (password, userType) => {\n if (typeof userType === typeof 'string' && userType.toLowerCase() === 'user') {\n return layer.post('user/checkPasswordReuseAttempt', qs.stringify({ password }));\n }\n return layer.post('formuser/checkPasswordReuseAttempt', qs.stringify({ password }));\n};\n\nconst prepareVerificationSettings = (\n type, token, password,\n // for verifyAndDelete:\n isDeleteVerified = false, prepareForDeletionEndpoint = false\n) => {\n const socialLogins = ['google', 'facebook', 'apple', 'microsoft', 'salesforce'];\n\n switch (true) {\n case type === 'email':\n return { type, password };\n case socialLogins.includes(type):\n return { type, token };\n case prepareForDeletionEndpoint === true:\n return { isDeleteVerified };\n default:\n return { };\n }\n};\n\n// verify first by type before deleting it, if you want to delete it just pass isDeleteVerified and user\nexport const verifyAndDelete = ({\n username, type, token, password, isDeleteVerified = false\n}) => {\n const settings = prepareVerificationSettings(type, token, password, isDeleteVerified, true);\n return layer.post(`user/${username}/verify-and-delete`, qs.stringify({ ...settings, newGoogleFlow: 1 }));\n};\n\nexport const verifyUser = ({\n username, type, token, password\n}) => {\n const settings = prepareVerificationSettings(type, token, password);\n return layer.post(`user/${username}/verify`, qs.stringify({ ...settings, newGoogleFlow: 1 }));\n};\n\nexport const getPrefillToken = () => {\n const path = window.location.pathname.split('/').splice(2);\n if (path[0] === 'prefill') return path[1].split('?')[0];\n\n return false;\n};\n\nexport const isYes = val => ((typeof val === 'string') ? ['Yes', '1'].includes(val) : !!val);\n\nexport const getPortalElement = elementId => {\n const { body } = document;\n let targetElement = document.querySelector(`#${elementId}`);\n\n if (targetElement) {\n return targetElement;\n }\n\n targetElement = document.createElement('div');\n targetElement.setAttribute('id', elementId);\n body.appendChild(targetElement);\n return targetElement;\n};\n\nexport const logActions = (project = 'Jotform', actor = 'unknown', action = '', target = '') => {\n if (typeof window.JotFormActions === 'function') {\n const logger = new window.JotFormActions(project);\n logger.tick({ actor, action, target });\n }\n};\n\nexport const isPlatformSalesforce = () => !isNil(document.querySelector('[data-platform=\"salesforce\"]'));\n\nexport const salesforceSocialLoginLogger = ({ username = '', action = '', target = '' }) => {\n if (!isPlatformSalesforce()) return;\n\n actionTracker({\n username,\n action,\n target\n });\n};\n\nexport const preLoginCheck = async () => layer.get('mfa/pre-login-check');\n\nexport const objToQueryString = obj => `${Object.entries(obj).map(([key, value]) => `${key}=${value}`).join('&')}`;\n\n// eslint-disable-next-line max-len\nexport const errorNormalizer = err => err?.response?.data?.error || err?.data?.error || err?.error || err?.response?.data?.content || err?.data?.content || err?.content || err?.response?.data?.message || err?.data?.message || err?.message || Texts.ERROR_TRY_AGAIN;\n","/* eslint-disable no-unused-vars */\nimport React, {\n forwardRef, useRef, useEffect\n} from 'react';\nimport ReactDOM from 'react-dom';\nimport PropTypes from 'prop-types';\nimport { t } from '@jotforminc/translation';\nimport { IconExclamationCircle } from '@jotforminc/svg-icons';\nimport { useOnClickOutside } from '@jotforminc/hooks';\nimport cx from 'classnames';\nimport { getPortalElement } from '../../utils/helper';\n\nimport Close from '../../assets/close.svg';\nimport '../../styles/ofac-modal.scss';\n\nconst OFACModal = forwardRef(({ isModal, email }, ref) => {\n const innerRef = useRef();\n const actor = email || window.user?.username || window.__formInfo?.username || 'unknown';\n const logger = window.JotFormActions ? new window.JotFormActions('ofacModal') : null;\n\n const unmountModal = () => {\n ReactDOM.unmountComponentAtNode(getPortalElement('ofacModal'));\n };\n\n const onClose = () => {\n logger?.tick({ actor, action: 'close', target: 'ofacSignupModal' });\n unmountModal();\n };\n\n useEffect(() => {\n logger?.tick({ actor, action: 'seen', target: 'ofacSignupModal' });\n }, []);\n\n useOnClickOutside(innerRef, () => unmountModal());\n\n return (\n
\n
\n {isModal && (\n \n \n \n )}\n
\n \n
\n
\n {t('Sorry, you can’t signup from this country')}\n
\n
\n

\n {t('We comply with OFAC’s (The Office of Foreign Assets Control) sanctions and under those sanctions, we no longer serve users from your country.')}\n

\n

\n {t('Thank you for your interest in Jotform!')}\n

\n
\n
\n \n {t('Contact Us')}\n \n
\n
\n
\n );\n});\n\nOFACModal.propTypes = {\n isModal: PropTypes.bool,\n email: PropTypes.string\n};\n\nOFACModal.defaultProps = {\n isModal: false,\n email: ''\n};\n\nexport default OFACModal;\n","/* eslint-disable no-param-reassign */\nimport React, { createRef } from 'react';\nimport ReactDOM from 'react-dom';\nimport OFACModal from './OFACModal';\nimport { getPortalElement } from '../../utils/helper';\n\nconst openOFACModal = (ref, email) => {\n if (!ref) {\n ref = createRef();\n }\n\n const portalElement = getPortalElement('ofacModal');\n ReactDOM.render(, portalElement);\n};\n\nexport { OFACModal, openOFACModal };\n","/* global navigator */\nimport Axios from 'axios';\nimport qs from 'querystring';\nimport { getPossibleTimeZone, handleCustomNavigation } from '@jotforminc/utils';\nimport { openOFACModal } from '../components/OFACModal';\n\nexport const getScreenResolution = () => {\n const { screen: { availWidth, availHeight } } = window;\n if (availWidth && availHeight) {\n return `${availWidth}x${availHeight}`;\n }\n return '';\n};\n\nexport const getSocialLoginOptionsByType = type => {\n const options = {\n google: { tokenKey: 'gtoken', action: 'loginWithGoogle' },\n googleOneTap: { tokenKey: 'gtoken', action: 'loginWithGoogle' },\n facebook: { tokenKey: 'ftoken', action: 'loginWithFacebook' },\n microsoft: { tokenKey: 'mtoken', action: 'loginWithMicrosoft' },\n salesforce: { tokenKey: 'stoken', action: 'loginWithSalesforce' }\n };\n\n return options[type];\n};\n\nexport const pushDataLayerEvent = ({ event, eventAction }) => {\n if (window.dataLayer && (typeof window.dataLayer === 'object')) {\n window.dataLayer.push({ event, eventAction });\n }\n};\n\nconst handleSignupVariationTest = username => {\n if (!window.dataLayer || !window.signupEvents) return;\n if (Math.random() < 0.5) {\n pushDataLayerEvent({\n event: 'Signup',\n eventAction: 'Complete-Remarketing'\n });\n if (window.location.href.indexOf('jotform.pro') < 0) {\n window.signupEvents.tick({\n actor: username ? username : 'unknown',\n action: 'Signup',\n target: 'Complete-Remarketing'\n });\n }\n } else if (window.location.href.indexOf('jotform.pro') < 0) {\n window.signupEvents.tick({\n actor: username ? username : 'unknown',\n action: 'Signup',\n target: 'Complete-Remarketing-Passive'\n });\n }\n};\n\nexport const handleSignupCompletedEvents = (username, type) => {\n if (typeof window.signupEvents === 'undefined' && typeof username !== 'undefined' && typeof JotFormActions !== 'undefined') {\n window.signupEvents = window.JotFormActions('jotform-signup-events');\n handleSignupVariationTest(username);\n }\n\n pushDataLayerEvent({\n event: 'Signup',\n eventAction: 'Complete'\n });\n\n if (type) {\n pushDataLayerEvent({\n event: `sign_up_social_${type}`\n });\n }\n\n window.uetq = window.uetq || [];\n window.uetq.push({\n ec: 'Signup',\n ea: 'Complete'\n });\n window.dotq = window.dotq || [];\n window.dotq.push({\n projectId: '10000',\n properties: {\n pixelId: '10027312',\n qstrings: {\n et: 'custom',\n ec: 'Signup',\n ea: 'Completed'\n }\n }\n });\n};\n\nexport const forceUserSocialLogin = (\n type = '',\n token = '',\n onSuccess = f => f,\n onFailure = f => f,\n appName = '',\n tfaResponseCallback = f => f,\n tfaVerificationToken,\n tfaMethod,\n buttonNames = {},\n socialLoginVerificationHash = '',\n onSocialTermsRequired = f => f,\n enableSocialTerms = false,\n eaResponseCallback = f => f,\n eaVerificationToken,\n newGoogleFlow,\n ofacModalRef\n) => {\n const config = getSocialLoginOptionsByType(type);\n if (!config) {\n // eslint-disable-next-line\n console.error('Unsupported social login type', type);\n return;\n }\n\n const actionData = {\n action: config.action,\n [config.tokenKey]: token\n };\n\n const defaultButtonName = appName ? `${type}-${appName}` : '';\n const buttonName = buttonNames[type] ? buttonNames[type] : defaultButtonName;\n\n Axios.post('/server.php', qs.stringify({\n ...(actionData),\n ...(tfaVerificationToken && { token: tfaVerificationToken }),\n ...(eaVerificationToken && { eaToken: eaVerificationToken }),\n ...(socialLoginVerificationHash && { socialLoginHash: socialLoginVerificationHash }),\n ...(enableSocialTerms && { enableSocialTerms }),\n tokenType: tfaMethod,\n language: navigator.language,\n timezone: getPossibleTimeZone(),\n screen_resolution: getScreenResolution(),\n location: global.location.pathname,\n button_name: buttonName,\n ref_app: appName,\n eat: 1,\n return: 1,\n ...(newGoogleFlow && { newGoogleFlow })\n }), {\n withCredentials: true,\n headers: {\n 'Content-Type': 'application/x-www-form-urlencoded'\n }\n })\n .then(async ({ data: responseData }) => {\n const {\n success, message, token: tfaToken, newUser, user, socialLoginHash, emailAuthToken, idToken\n } = responseData;\n if (!success) {\n // eslint-disable-next-line\n console.error('Couldn\\'t login', message);\n }\n\n if (socialLoginHash) {\n const { fullName, email, imageUrl } = responseData;\n onSocialTermsRequired({\n socialLoginHash,\n socialUserProfile: { fullName, email, imageUrl },\n idToken\n });\n return;\n }\n\n if (tfaToken) {\n tfaResponseCallback(responseData);\n return;\n }\n\n if (emailAuthToken) {\n eaResponseCallback(responseData);\n return;\n }\n\n if (newUser) {\n handleSignupCompletedEvents(user.username, type);\n }\n\n onSuccess({ data: responseData });\n })\n .catch(error => {\n // eslint-disable-next-line\n const { response: { data: { error: message = '' } = {} } = {} } = error;\n if (message === \"Sorry, you can't signup from this country.\") {\n openOFACModal(ofacModalRef);\n }\n\n if (message?.toLowerCase()?.includes('suspended')) {\n return handleCustomNavigation('/account-suspended', '_self', true);\n }\n\n if (typeof onFailure === 'function') {\n onFailure(error);\n }\n\n // eslint-disable-next-line no-console\n console.error('--Couldn\\'t login', error);\n });\n};\n\nexport const forceUserLoginRequest = async (username, password, appName, recaptcha, tfaToken, tfaTokenType, buttonNames, eaToken, rememberDevice) => {\n try {\n /**\n * TODO: Base url fix required\n *\n * This method is currently dedicated for applications (reports, sheets, inbox etc.).\n * Therefore we do not use `apiURL` like on other requests and leave the url as relative which may cause problems on\n * forms due to cached urls like 'form.jotform.com'.\n *\n * To sum up, please do not use this method on forms. If you are consider doing it then fix the url issue mentioned at above.\n */\n const response = await Axios.post('/server.php', qs.stringify({\n action: 'login',\n ...(!tfaToken && { password: password }),\n remember: true,\n ...(!tfaToken && { username: username }),\n ref_app: appName,\n recaptcha,\n language: global.navigator.language,\n timezone: getPossibleTimeZone(),\n screen_resolution: getScreenResolution(),\n location: global.location.pathname,\n button_name: buttonNames.emailLogin || `emailLogin-${appName}`,\n ...(tfaToken && { token: tfaToken }),\n ...(eaToken && { eaToken: eaToken }),\n tokenType: tfaTokenType,\n rememberDevice: rememberDevice,\n ...(!tfaToken && { eat: '1' }) // email auth parameter\n }), {\n withCredentials: true,\n headers: {\n 'Content-Type': 'application/x-www-form-urlencoded'\n }\n });\n\n if (response.data.token) return [false, { content: response.data }, true, false]; // 2fa\n if (response?.data?.emailAuthToken) return [false, { content: response.data }, false, true]; // email authentication\n\n return [true, { content: response.data.user, responseCode: response.status }];\n } catch (error) {\n return [false, error.response || error.message];\n }\n};\n\nexport const handleLoginHelper = async ({\n username,\n password,\n tfaToken = '',\n tfaTokenType = '',\n regularLoginRequest,\n forceUser,\n handleLoginSuccess,\n handleNavigationChangeRequest,\n screenToNavigate = 'epilogue',\n shouldCallNavigate = true,\n appName,\n recaptcha,\n handleTFAResponse,\n buttonNames,\n eaToken,\n handleEAResponse,\n rememberDevice,\n isRecovery\n}) => {\n // Added temporary user list for testing purposes, will be deleted later when 2fa is enabled for all BSG users\n const loginFunction = forceUser ? forceUserLoginRequest : regularLoginRequest;\n\n const [loginSuccess, loginResponse, tfaResponse = false, eaResponse = false] = await loginFunction(\n username, password, appName, recaptcha, tfaToken, tfaTokenType, buttonNames, eaToken, rememberDevice\n );\n\n if (tfaResponse) {\n const { content } = loginResponse;\n handleTFAResponse(content, username, password);\n }\n\n if (eaResponse) {\n const { content } = loginResponse;\n handleEAResponse(content, username, password);\n }\n\n if (!loginSuccess && typeof loginResponse?.message === 'string' && loginResponse?.message?.toLowerCase()?.includes('suspended')) {\n return handleCustomNavigation('/account-suspended', '_self', true);\n }\n\n if (!loginSuccess) return [loginSuccess, loginResponse, tfaResponse, eaResponse];\n\n if (isRecovery) return handleCustomNavigation('/myaccount/security', '_self', true);\n\n handleLoginSuccess(loginResponse);\n if (shouldCallNavigate) handleNavigationChangeRequest(screenToNavigate);\n};\n\nexport const getTermsOfUseLinkByLanguage = isTurkish => (\n isTurkish\n ? 'https://www.jotform.com/hizmet-kosullari'\n : 'https://www.jotform.com/terms'\n);\n\nexport const getPrivacyLinkByLanguage = isTurkish => (\n isTurkish\n ? 'https://www.jotform.com/gizlilik-politikasi'\n : 'https://www.jotform.com/privacy'\n);\n\nexport const isTurkishLanguage = (user = {}) => {\n if (!user) return false;\n const { language, location: { country_code: countryCode } = {} } = user;\n return countryCode === 'TR' || language === 'tr-TR';\n};\n\nexport const createGoogleOneTapContainerEl = () => {\n if (!document.querySelector('#oneTapLoginArea')) {\n const container = document.createElement('div');\n container.setAttribute('id', 'oneTapLoginArea');\n document.getElementsByTagName('body')[0].appendChild(container);\n }\n};\n\nexport const hideGoogleOneTapContainerEl = () => {\n const container = document.querySelector('#oneTapLoginArea');\n if (container) {\n container.style.display = 'none';\n }\n};\n","import React from 'react';\nimport { string, func, element } from 'prop-types';\nimport { t } from '@jotforminc/translation';\nimport { Texts } from '@jotforminc/constants';\nimport { LogoSalesforceLogomarkColor } from '@jotforminc/svg-icons';\n\nexport default function SalesforceButton({\n text,\n onClick,\n classNames,\n icon,\n ariaLabel\n}) {\n return (\n \n {icon}\n {text || t(Texts.CONNECT_SALESFORCE)}\n \n );\n}\n\nSalesforceButton.propTypes = {\n text: string,\n onClick: func.isRequired,\n classNames: string,\n icon: element,\n ariaLabel: string\n};\n\nSalesforceButton.defaultProps = {\n text: '',\n classNames: '',\n icon: ,\n ariaLabel: t(Texts.SIGN_UP_SALESFORCE)\n};\n","import React from 'react';\nimport { string, func, element } from 'prop-types';\nimport { t } from '@jotforminc/translation';\nimport { Texts } from '@jotforminc/constants';\n\nimport FBIcon from '../temporary-duplicate/assets/svg/icon_fb.svg';\n\nexport default function FacebookButton({\n text,\n onClick,\n classNames,\n icon,\n ariaLabel\n}) {\n return (\n \n {icon}\n {text || t(Texts.CONNECT_FACEBOOK)}\n \n );\n}\n\nFacebookButton.propTypes = {\n text: string,\n onClick: func.isRequired,\n classNames: string,\n icon: element,\n ariaLabel: string\n};\n\nFacebookButton.defaultProps = {\n text: '',\n classNames: 'xcl-button-fb test_fb_login',\n icon: ,\n ariaLabel: t(Texts.SIGN_UP_FACEBOOK)\n};\n","import React from 'react';\nimport { string, func, element } from 'prop-types';\nimport { t } from '@jotforminc/translation';\nimport { Texts } from '@jotforminc/constants';\n\nimport GoogleIcon from '../temporary-duplicate/assets/svg/icon_gl.svg';\n\nexport default function GoogleButton({\n text,\n onClick,\n classNames,\n icon,\n ariaLabel\n}) {\n return (\n \n {icon}\n {text || t(Texts.CONNECT_GOOGLE)}\n \n );\n}\n\nGoogleButton.propTypes = {\n text: string,\n onClick: func.isRequired,\n classNames: string,\n icon: element,\n ariaLabel: string\n};\n\nGoogleButton.defaultProps = {\n text: '',\n classNames: 'xcl-button-gl test_gl_login',\n icon: ,\n ariaLabel: t(Texts.SIGN_UP_GOOGLE)\n};\n","/* eslint-disable max-len */\nimport Styled from 'styled-components';\n\nconst onSmallMobile = 'screen and (max-height: 600px)';\n\nexport const ScPassword = Styled.div`\n * { box-sizing: border-box; }\n\n font-size: 16px;\n max-width: 340px;\n\n .xcl {\n &-field-wr {\n position: relative;\n\n &.forPassword {\n .xcl-lbl-err {\n span { display: block; margin-bottom: 4px; }\n span:before { display: inline-block; content: '-'; margin-right: 3px; }\n }\n }\n }\n\n &-togglePass-btn {\n position: absolute;\n top: 34px;\n right: 7px;\n background: none;\n border: 0;\n padding: 0;\n z-index: 2;\n border-radius: 0;\n border: 0;\n background-color: transparent;\n color: inherit;\n text-align: center;\n height: 30px;\n width: 32px;\n border-radius: 4px;\n display: flex;\n align-items: center;\n justify-content: center;\n border: 1px solid transparent;\n transition: all .2s;\n\n #signupPage & {\n .tiny-mobile & {\n top: 30px;\n @media ${onSmallMobile}{\n top: 25px;\n right: 1px;\n }\n }\n }\n\n #myaccount & {\n .tiny-mobile & {\n top: 30px;\n @media ${onSmallMobile}{\n top: 25px;\n right: 1px;\n }\n }\n }\n\n .primaryHeader & {\n right: 5px;\n width: 30px;\n height: 26px;\n }\n\n &:focus-visible {\n outline: none;\n border-color: #799AF8;\n box-shadow: 0 0 0 3px #d3ddfd;\n background-color: #eaf0ff;\n .xcl-togglePass-icon {\n svg{\n path{\n fill: #2e69ff;\n }\n }\n }\n }\n\n &:hover{\n background-color: #eaf0ff;\n\n .xcl-togglePass-icon {\n svg{\n path{\n fill: #2e69ff;\n }\n }\n\n .xcl-togglePass-tooltip {\n opacity: 1;\n margin-top: -24px;\n }\n }\n\n }\n\n }\n &-togglePass-icon { display: block; color: rgb(136, 148, 171); }\n &-togglePass-icon svg { width: 20px; height:20px; display: block!important; }\n &-togglePass-tooltip {\n background-color: #2b3245;\n font-size: 12px;\n font-weight: normal;\n font-stretch: normal;\n font-style: normal;\n line-height: 1.33;\n letter-spacing: normal;\n text-align: right;\n color: #c3cad8;\n white-space: nowrap;\n position: absolute;\n right: 3px;\n top: 0;\n min-height: 24px;\n border-radius: 2px;\n padding: 4px;\n opacity: 0;\n pointer-events: none;\n margin-top: -22px;\n transition: all .2s;\n &:after{\n content: \"\";\n display: block;\n width: 12px;\n height: 12px;\n position: absolute;\n right: 6px;\n bottom: -6px;\n z-index: -1;\n background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12px' height='6.1px' viewBox='0 0 12 6.1' style='enable-background:new 0 0 12 6.1;' xml:space='preserve'%3E%3Cpath style='fill:%232B3245' d='M1.6,0.8l3.6,4.8c0.4,0.5,1.2,0.5,1.6,0l3.6-4.8C10.8,0.3,11.4,0,12,0H0C0.6,0,1.2,0.3,1.6,0.8z'/%3E%3C/svg%3E%0A\");\n background-position: bottom center;\n background-repeat: no-repeat;\n }\n }\n &-inp {\n font-size: 16px;\n display: block;\n width: 100%;\n margin-top: 8px;\n position: relative;\n background-color: #fff;\n z-index: 2;\n\n &::-webkit-credentials-auto-fill-button,\n &::-webkit-contacts-auto-fill-button {\n background-color: #8894AB;\n }\n\n &.forPassword{\n padding-right: 44px;\n\n html[dir=\"rtl\"] & {\n padding-left: 44px;\n padding-right: 12px;\n }\n }\n\n &:focus {\n outline: none;\n border-color: #799AF8;\n box-shadow: 0 0 0 3px #d3ddfd;\n }\n &::placeholder { color: #b9c5cb; }\n &.errored { border-color: #D4372C; box-shadow: 0px 0px 0px 3px #F6D7D5; }\n &.successed { border-color: #4caf50; box-shadow: 0 0 0px 3px #c8e6c9; }\n }\n\n &-lbl-err {\n background-color: #D4372C;\n color: #fff;\n display: inline-block;\n margin-top: 0;\n font-size: 12px;\n text-align: left;\n padding: 0 8px;\n border-radius: 2px;\n z-index: 1;\n line-height: 0;\n transition: all .2s;\n overflow: hidden;\n\n &.isVisible { \n padding: 4px 8px;\n margin-top: 8px;\n line-height: 16px;\n }\n &.forTerms { bottom: 5px; border-radius: 0 4px 4px 4px; padding: 4px 8px; }\n }\n }\n\n @keyframes fieldsSmoothEnter {\n to {\n opacity: 1;\n transform: translateY(0);\n }\n }\n\n .hPass-reqs {\n color: #0A1551;\n font-size: .875rem;\n text-align: left;\n line-height: 1.5em;\n margin-bottom: 2em;\n transition: max-height .3s ease-in-out;\n\n p { \n margin: 0.5em 0 1em;\n color: #333;\n }\n ul {\n margin: 0; padding: 0 0 0 1.25em; list-style-type: disc;\n\n &.has-icon {\n padding: 0;\n list-style-type: none;\n }\n }\n li {\n opacity: 0;\n animation: fieldsSmoothEnter .3s ease-in-out forwards;\n display: flex;\n align-items: center;\n }\n li + li { margin-top: .25em; }\n\n .hPass-reqs-info-text {\n display: flex;\n align-items: center;\n color: #6C73A8;\n gap: 0.5rem;\n }\n\n .hPass-reqs-info-icon {\n flex-shrink: 0;\n width: 1rem;\n height: 1rem;\n }\n }\n\n .hPass-req {\n span {\n width: 16px;\n height: 16px;\n border-radius: 50%;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n margin-right: 8px;\n\n html[dir=\"rtl\"] & {\n margin-left: 8px;\n margin-right: 0;\n }\n }\n\n &.isGood, &.isBad {\n svg {\n fill: #fff;\n width: 12px;\n height: 12px;\n }\n }\n\n &.isGood {\n color: #2B3245;\n span {\n background-color: #54B45C;\n }\n }\n\n &.isBad {\n color: #2B3245;\n span {\n background-color: #FB4958;\n }\n }\n\n &.isNeutral {\n span {\n background-color: #C8CEED;\n }\n }\n }\n\n .forgot-password-ui {\n margin-left: auto;\n display: block;\n margin-top: 8px;\n background-color: transparent;\n border: 0;\n padding: 0;\n font-size: 14px;\n color: #4277FF;\n text-decoration: underline;\n cursor: pointer;\n }\n`;\n","import React, { useRef, useEffect, useState } from 'react';\nimport {\n bool, func, shape, string\n} from 'prop-types';\n\nimport {\n IconCheckSm,\n IconXmarkSm,\n IconInfoCircleFilled\n} from '@jotforminc/svg-icons';\n\nconst icons = {\n isGood: ,\n isBad: \n};\n\nconst RequirementsList = ({\n checkReuse,\n getSecureRuleClass,\n hasSecureTextIcon,\n securePassErrors,\n securePassText,\n securePassContText,\n securePassDescText,\n secureRules,\n passwordSecurityRules\n}) => {\n const [totalHeight, setTotalHeight] = useState(0);\n const descTextRef = useRef(null);\n const requirementListRef = useRef(null);\n\n useEffect(() => {\n const validatedSecuresValues = Object.values(securePassErrors);\n if (!validatedSecuresValues.includes(false) && !validatedSecuresValues.includes(null)) {\n setTotalHeight(0);\n } else if (descTextRef.current && requirementListRef.current) {\n setTotalHeight(descTextRef.current.clientHeight + requirementListRef.current.clientHeight);\n }\n }, [securePassErrors]);\n\n return (\n \n

\n {checkReuse ? (\n <>\n \n {securePassText}\n {' '}\n {securePassContText}\n \n ) : (\n <>\n \n {securePassDescText}\n \n )}\n

\n \n {Object.entries(securePassErrors)\n .map(([ruleKey, ruleValue], index) => {\n if (ruleKey === 'reuse') return null;\n const isPasswordSecurityRule = passwordSecurityRules[ruleKey];\n const isVisible = (!isPasswordSecurityRule || (ruleValue === false && isPasswordSecurityRule));\n\n return isVisible && (\n \n {hasSecureTextIcon && (\n \n {icons[getSecureRuleClass(ruleValue)]}\n \n )}\n {secureRules[ruleKey]}\n \n );\n })}\n \n \n );\n};\n\nRequirementsList.propTypes = {\n checkReuse: bool,\n getSecureRuleClass: func,\n hasSecureTextIcon: bool,\n securePassErrors: shape({}),\n securePassText: string,\n securePassContText: string,\n securePassDescText: string,\n secureRules: shape({}),\n passwordSecurityRules: shape({})\n};\n\nRequirementsList.defaultProps = {\n checkReuse: false,\n getSecureRuleClass: f => f,\n hasSecureTextIcon: true,\n securePassErrors: {},\n securePassText: '',\n securePassContText: '',\n securePassDescText: '',\n secureRules: {},\n passwordSecurityRules: {}\n};\n\nexport default RequirementsList;\n","import { t } from '@jotforminc/translation';\nimport { Texts } from '@jotforminc/constants';\n\nexport const REGULAR_VALIDATOR_RULE_DEFAULTS = [{\n rule_name: 'characterCount',\n regex: '.{8,}',\n error_message: t(Texts.SECURE_PASS_CHAR_COUNT)\n}, {\n rule_name: 'noLeadingOrTrailingWhitespace',\n // eslint-disable-next-line no-useless-escape\n regex: '^[^\\s].*[^\\s]$',\n error_message: t(Texts.SECURE_PASS_NO_LEADING_OR_TRAILING_WHITESPACE)\n}];\n\nexport const SECURE_VALIDATOR_RULE_DEFAULTS = [\n ...REGULAR_VALIDATOR_RULE_DEFAULTS, {\n rule_name: 'number',\n regex: '[0-9]+',\n error_message: t(Texts.SECURE_PASS_NUMBER)\n }, {\n rule_name: 'lowercase',\n regex: '[a-z]+',\n error_message: t(Texts.SECURE_PASS_LOWERCASE)\n }, {\n rule_name: 'uppercase',\n regex: '[A-Z]+',\n error_message: t(Texts.SECURE_PASS_UPPERCASE)\n }, {\n rule_name: 'specialChar',\n regex: '[^a-zA-Z0-9]',\n error_message: t(Texts.SECURE_PASS_SPECIAL_CHAR)\n }];\n","import React, { useEffect, useState } from 'react';\nimport { bool, string } from 'prop-types';\nimport { t } from '@jotforminc/translation';\n\nconst ErrorAlert = ({\n message,\n enableScreenReaderAlert\n}) => {\n const [readAlertMessage, setReadAlertMessage] = useState(true);\n\n useEffect(() => {\n if (!enableScreenReaderAlert) return;\n\n const timer = setTimeout(\n () => {\n setReadAlertMessage(false);\n }, 5000\n );\n\n return () => {\n clearTimeout(timer);\n };\n }, []);\n\n return (\n
\n {t(message)}\n
\n );\n};\n\nErrorAlert.propTypes = {\n message: string.isRequired,\n enableScreenReaderAlert: bool\n};\n\nErrorAlert.defaultProps = {\n enableScreenReaderAlert: true\n};\n\nexport default ErrorAlert;\n","/* eslint-disable max-len */\n/* eslint-disable max-statements */\nimport React, {\n forwardRef, useImperativeHandle, useState, useRef, useEffect\n} from 'react';\nimport {\n bool, func, shape, string\n} from 'prop-types';\nimport { Hooks } from '@jotforminc/uikit';\nimport { t } from '@jotforminc/translation';\nimport { Texts } from '@jotforminc/constants';\n\nimport '../../styles/style.scss';\nimport { IconEyeSlashFilled, IconEyeFilled } from '@jotforminc/svg-icons';\nimport { checkPasswordReuse, fetchUserCredentialRuleSet } from '../../utils/helper';\nimport { ScPassword } from './scPassword';\nimport RequirementsList from './RequirementsList';\nimport { REGULAR_VALIDATOR_RULE_DEFAULTS, SECURE_VALIDATOR_RULE_DEFAULTS } from './constants';\nimport ErrorAlert from '../ErrorAlert';\n\n// eslint-disable-next-line complexity\nconst Password = forwardRef(({\n getCurrentPasswordValue,\n hasForgotPassUI,\n forgotPassFunc,\n passwordLabel,\n passwordConfirmationLabel,\n secure,\n secureDisplay,\n toggleSecureDisplay,\n checkReuse,\n includeConfirm,\n onKeyDown,\n passwordErrorServer,\n resetPasswordError,\n setSecurePaswordError,\n callbackConfirmPassError,\n userType,\n requestCurrentPassword,\n allowPasswordShow,\n onChange,\n onPasswordInputBlur,\n sendValueToParent,\n initialValue,\n clearInitialOnFocus,\n hasErrorMessage,\n hasSecureTextIcon,\n className,\n disclaimer,\n autoComplete,\n onPasswordValidate,\n isOnboardingFlow,\n customTexts,\n hideNeutralRules\n}, ref) => {\n const basicRuleMessages = { required: t(Texts.FIELD_REQUIRED) };\n if (includeConfirm) Object.assign(basicRuleMessages, { shouldMatch: t(Texts.FIELDS_SHOULD_MATCH) });\n const allRuleMessagesRef = useRef({ ...basicRuleMessages });\n const inputPassRef = useRef();\n const inputConfirmPassRef = useRef();\n const inputCurrentPassRef = useRef();\n\n const initialState = {\n passwordMode: 'hide',\n securePass: {},\n regularPass: {}\n };\n\n const [currentPassword, setCurrentPassword] = useState('');\n const [currentPasswordError, setCurrentPasswordError] = useState('');\n const [password, setPassword] = useState(initialValue);\n const [isCleared, setCleared] = useState(false); // Only works with clearInitialOnFocus prop\n const [isChanged, setChanged] = useState(false); // Only works with clearInitialOnFocus prop\n const [confirmPassword, setConfirmPassword] = useState('');\n const [requiredPassError, setRequiredPassError] = useState('');\n const [confirmPassError, setConfirmPassError] = useState('');\n const [passwordMode, setPasswordMode] = useState(initialState.passwordMode);\n\n // rules that is visible only if matches\n const [passwordSecurityRules, setPasswordSecurityRules] = useState();\n\n // rules\n const regularValidatorRules = useRef(REGULAR_VALIDATOR_RULE_DEFAULTS);\n const secureValidatorRules = useRef(SECURE_VALIDATOR_RULE_DEFAULTS);\n\n // pass errors\n const [regularPassErrors, setRegularPassErrors] = useState(initialState.regularPass);\n const [securePassErrors, setSecurePassErrors] = useState(initialState.securePass);\n const [passwordError, setPasswordError] = useState();\n\n // rule messages\n const [regularRuleMessages, setRegularRuleMessages] = useState();\n const [secureRuleMessages, setSecureRuleMessages] = useState();\n const [passwordErrorMessage, setPasswordErrorMessage] = useState();\n\n // requirements list\n const [showRegularRequirementsList, setShowRegularRequirementsList] = useState(false);\n const [showSecureRequirementsList, setShowSecureRequirementsList] = useState(!toggleSecureDisplay);\n\n const [requirementDescText, setRequirementDescText] = useState('');\n\n useEffect(() => {\n setPasswordError(passwordErrorServer ? { passwordErrorServer: false } : null);\n setPasswordErrorMessage(passwordErrorServer ? { passwordErrorServer } : null);\n }, [passwordErrorServer]);\n\n useEffect(() => {\n const initPasswordRuleSet = rules => {\n let errorTypes = {};\n let nextMessages = {};\n\n rules.forEach(({ rule_name: ruleName, error_message: errorMessage }) => {\n errorTypes = { ...errorTypes, [ruleName]: null };\n nextMessages = { ...nextMessages, [ruleName]: t(errorMessage) };\n });\n\n Object.assign(allRuleMessagesRef.current, { [secure ? 'secureRules' : 'regularRules']: nextMessages });\n\n if (secure && checkReuse) {\n setSecureRuleMessages({ ...nextMessages, reuse: t(Texts.SECURE_PASS_REUSE) });\n setSecurePassErrors({ ...errorTypes });\n } else if (secure) {\n setSecureRuleMessages({ ...nextMessages });\n setSecurePassErrors({ ...errorTypes });\n } else {\n setRegularRuleMessages({ ...nextMessages });\n setRegularPassErrors({ ...errorTypes });\n }\n };\n\n const constructPasswordRules = credentialRules => {\n const passwordSecurityRuleNames = {};\n const passwordRuleData = credentialRules.find(({ field_name: fieldName }) => fieldName === 'password');\n const passwordSecurityRuleData = credentialRules.find(({ field_name: fieldName }) => fieldName === 'password_security');\n\n passwordSecurityRuleData?.rules.forEach(rule => {\n passwordSecurityRuleNames[rule.rule_name] = true;\n });\n\n setPasswordSecurityRules({ ...passwordSecurityRuleNames });\n\n return [\n passwordRuleData.explanation,\n [\n ...passwordRuleData.rules,\n ...(passwordSecurityRuleData?.rules || [])\n ]\n ];\n };\n\n const getPasswordRuleSet = async () => {\n try {\n const credentialRules = await fetchUserCredentialRuleSet(secure);\n const [explanation, rules] = constructPasswordRules(credentialRules);\n\n if (!secure) {\n regularValidatorRules.current = rules;\n } else {\n secureValidatorRules.current = rules;\n }\n\n setRequirementDescText(t(explanation));\n initPasswordRuleSet(rules);\n } catch (error) {\n setRequirementDescText(t(Texts.SECURE_PASS_TEST_DESC));\n const defaultRules = secure ? SECURE_VALIDATOR_RULE_DEFAULTS : REGULAR_VALIDATOR_RULE_DEFAULTS;\n initPasswordRuleSet(defaultRules);\n }\n };\n\n getPasswordRuleSet();\n }, []);\n\n const validateSomeRules = (value, ruleSet) => {\n return ruleSet.reduce((prevRules, { rule_name: ruleName, regex }) => {\n return {\n ...prevRules,\n [ruleName]: (new RegExp(regex)).test(value)\n };\n }, {});\n };\n\n const handleRequirementsListView = (reuseChecked = false) => {\n if (toggleSecureDisplay && password) {\n // from props\n onPasswordInputBlur();\n\n // add this feature for hipaa wizard\n let hasError = false;\n Object.keys(securePassErrors).forEach(key => {\n if (\n key !== (!reuseChecked ? 'reuse' : '')\n && !securePassErrors[key]\n ) {\n hasError = true;\n }\n });\n\n setShowSecureRequirementsList(hasError);\n }\n };\n\n const backenDefinedRulesHasError = current => {\n // A/B Test: signupOnboardingIV\n const defaultChecker = val => !val; // null, false, undefined etc. will be counted as hasError is true\n const abTestChecker = val => val === false; // we want it to be exactly false, because initially is null and we don't want it to be counted as hasError is true\n let checker = isOnboardingFlow ? abTestChecker : defaultChecker;\n if (hideNeutralRules) checker = val => val === false;\n\n let hasError = false;\n Object.keys(current).forEach(key => {\n if (key && checker(current[key])) {\n hasError = true;\n }\n });\n return hasError;\n };\n\n const validateCurrentPassword = () => {\n if (!currentPassword) {\n setCurrentPasswordError(t(Texts.FIELD_REQUIRED));\n return false;\n }\n setCurrentPasswordError(false);\n return true;\n };\n\n const validatePassword = () => {\n let hasProblem = false;\n Object.entries(allRuleMessagesRef.current)\n .forEach(([rule, errorMessage]) => {\n switch (rule) {\n case 'required':\n if (!password) {\n setRequiredPassError(errorMessage);\n setSecurePaswordError(['passwordReqired']);\n hasProblem = true;\n } else {\n setRequiredPassError('');\n }\n break;\n case 'regularRules': {\n const validatedRegulars = validateSomeRules(password, regularValidatorRules.current);\n setRegularPassErrors({ ...validatedRegulars });\n break;\n }\n case 'secureRules': {\n // 'reuse' is handled later.\n const validatedSecures = validateSomeRules(password, secureValidatorRules.current);\n setSecurePassErrors({ ...validatedSecures });\n break;\n }\n default:\n break;\n }\n });\n return hasProblem;\n };\n\n const validateConfirmPass = () => {\n let hasProblem = false;\n if (!includeConfirm) return hasProblem;\n\n Object.entries(allRuleMessagesRef.current)\n .forEach(([rule, errorMessage]) => {\n switch (rule) {\n case 'required':\n if (!confirmPassword) {\n setConfirmPassError(errorMessage);\n hasProblem = true;\n callbackConfirmPassError('confirmPasswordRequired');\n } else {\n setConfirmPassError('');\n hasProblem = false;\n callbackConfirmPassError('');\n }\n break;\n case 'shouldMatch':\n if (password && confirmPassword) {\n const match = password === confirmPassword;\n setConfirmPassError(!match ? errorMessage : '');\n callbackConfirmPassError(!match ? 'shouldMatch' : '');\n hasProblem = !match;\n }\n break;\n default:\n break;\n }\n });\n return hasProblem;\n };\n\n const makeAllValidations = async () => {\n if (requestCurrentPassword) {\n const currPassValid = validateCurrentPassword();\n if (!currPassValid) {\n return { isValid: currPassValid };\n }\n }\n\n const passHasProblem = validatePassword();\n let isValid = !passHasProblem;\n\n if (!secure) {\n const regularRulesHasProblem = Object.entries(regularPassErrors)\n .filter(([, val]) => !val).length > 0;\n isValid = isValid && !regularRulesHasProblem;\n }\n\n const confPassHasProblem = validateConfirmPass();\n if (includeConfirm) {\n isValid = isValid && !confPassHasProblem;\n }\n\n if (!secure) {\n return {\n isValid,\n password,\n currentPassword\n };\n }\n\n const secureHasProblem = secure ? Object.entries(securePassErrors)\n .filter(([term]) => term !== 'reuse') // Will be checked manually.\n .filter(([, val]) => !val).length > 0\n : false;\n\n isValid = isValid && !secureHasProblem;\n\n if (!isValid || !checkReuse) { // if not valid by now, no need to check reuse.\n return {\n isValid,\n password,\n currentPassword\n };\n }\n\n // Lets make last remaining validation\n let isReuseAttempt = false;\n try {\n const { content } = await checkPasswordReuse(password, userType);\n isReuseAttempt = content;\n } catch (err) {\n isReuseAttempt = err?.data?.message;\n }\n\n setSecurePassErrors({\n ...securePassErrors,\n reuse: !isReuseAttempt\n });\n\n handleRequirementsListView(true);\n\n return {\n isValid: isValid && !isReuseAttempt,\n password,\n currentPassword\n };\n };\n\n const handlePasswordChange = e => {\n const { value } = e.target;\n setPassword(value);\n if (sendValueToParent) {\n onChange(value);\n }\n if (clearInitialOnFocus) {\n setChanged(true);\n }\n };\n\n const handleFocus = () => {\n if (clearInitialOnFocus && !isCleared) {\n setPassword('');\n setCleared(true);\n }\n // getUserVariant();\n };\n\n const handleBlur = () => {\n if (clearInitialOnFocus && isCleared && !isChanged) {\n setPassword(initialValue);\n setCleared(false);\n }\n\n handleRequirementsListView();\n };\n\n const handleCurrentPasswordChange = e => {\n const { value } = e.target;\n setCurrentPassword(value);\n getCurrentPasswordValue(value);\n };\n\n const handleConfirmPasswordChange = e => {\n const { value } = e.target;\n setConfirmPassword(value);\n };\n\n const handlePasswordModeToggle = inputRef => {\n inputRef.current.focus(); // Use here to prevent flickring keyboard on mobile devices\n setPasswordMode(passwordMode === 'hide' ? 'show' : 'hide');\n };\n\n useImperativeHandle(ref, () => ({\n validate: makeAllValidations,\n inputRef: inputPassRef\n }));\n\n const getSecureRuleColor = status => {\n const colors = {\n default: '#8d8fa8',\n defaultWithIcon: '#2B3245',\n item: {\n success: '#01bd6f',\n error: '#f23a3c'\n },\n reuse: {\n success: '#2B3245',\n error: '#f23a3c'\n }\n };\n\n if (hasSecureTextIcon && status.type !== 'reuse') return colors.defaultWithIcon;\n if (status.value === null) return colors.default;\n\n return status.value ? colors[status.type].success : colors[status.type].error;\n };\n\n const getSecureRuleClass = status => {\n if (status === null) return 'isNeutral';\n return status ? 'isGood' : 'isBad';\n };\n\n const renderSecureRequirementsList = () => (\n \n );\n\n Hooks.useEffectIgnoreFirst(() => {\n validatePassword();\n if (password && confirmPassword) {\n validateConfirmPass();\n }\n resetPasswordError();\n }, [password]);\n\n Hooks.useEffectIgnoreFirst(() => {\n validateConfirmPass();\n }, [confirmPassword]);\n\n Hooks.useEffectIgnoreFirst(() => {\n const regularPassHasError = backenDefinedRulesHasError(regularPassErrors);\n const securePassHasError = backenDefinedRulesHasError(securePassErrors);\n\n setShowRegularRequirementsList(passwordError || regularPassHasError);\n setShowSecureRequirementsList(passwordError || securePassHasError);\n onPasswordValidate({ passwordError, regularPassErrors, securePassErrors });\n }, [passwordError, regularPassErrors, securePassErrors]);\n\n return (\n \n {requestCurrentPassword && (\n
\n \n \n {\n hasForgotPassUI\n ? (\n \n {t('Forgot Password?')}\n \n ) : null\n }\n {allowPasswordShow && (\n handlePasswordModeToggle(inputCurrentPassRef)}\n >\n \n {passwordMode === 'hide' ? : }\n \n \n )}\n {currentPasswordError && hasErrorMessage && }\n
\n )}\n
\n \n \n {disclaimer && (\n
\n {disclaimer}\n
\n )}\n {allowPasswordShow && (\n handlePasswordModeToggle(inputPassRef)}\n >\n \n {passwordMode === 'hide'\n ? (\n <>\n \n {t(Texts.SHOW_PASSWORD)}\n \n )\n : (\n <>\n \n {t(Texts.HIDE_PASSWORD)}\n \n )}\n \n \n )}\n {\n (showRegularRequirementsList && (\n \n ))\n }\n \n {requiredPassError}\n
\n \n {\n (secure && secureDisplay === 'top' && showSecureRequirementsList) ? (\n renderSecureRequirementsList()\n ) : null\n }\n {\n includeConfirm ? (\n
\n \n \n handlePasswordModeToggle(inputConfirmPassRef)}\n >\n \n {passwordMode === 'hide'\n ? (\n <>\n \n {t(Texts.SHOW_PASSWORD)}\n \n )\n : (\n <>\n \n {t(Texts.HIDE_PASSWORD)}\n \n )}\n \n \n
\n {confirmPassError && hasErrorMessage ? confirmPassError : null}\n
\n
\n ) : null\n }\n {\n (secure && secureDisplay !== 'top' && showSecureRequirementsList) ? (\n renderSecureRequirementsList()\n ) : null\n }\n
\n );\n});\n\nPassword.propTypes = {\n hasForgotPassUI: bool,\n forgotPassFunc: func,\n getCurrentPasswordValue: func,\n passwordLabel: string,\n passwordConfirmationLabel: string,\n secure: bool,\n secureDisplay: string,\n toggleSecureDisplay: bool,\n includeConfirm: bool,\n checkReuse: bool,\n onKeyDown: func,\n passwordErrorServer: string,\n resetPasswordError: func,\n setSecurePaswordError: func,\n callbackConfirmPassError: func,\n userType: string,\n requestCurrentPassword: bool,\n onChange: func,\n sendValueToParent: bool,\n allowPasswordShow: bool,\n clearInitialOnFocus: bool,\n initialValue: string,\n onPasswordInputBlur: func,\n hasErrorMessage: bool,\n hasSecureTextIcon: bool,\n className: string,\n disclaimer: string,\n autoComplete: string,\n onPasswordValidate: func,\n isOnboardingFlow: bool,\n customTexts: shape({\n regularRequirementDesc: string,\n secureRequirementDesc: string,\n inputPlaceholder: string\n }),\n hideNeutralRules: bool\n};\n\nPassword.defaultProps = {\n hasForgotPassUI: false,\n forgotPassFunc: f => f,\n getCurrentPasswordValue: f => f,\n passwordLabel: Texts.PASSWORD_TEXT,\n passwordConfirmationLabel: Texts.CONF_PASSWORD_TEXT,\n secure: false,\n secureDisplay: '',\n toggleSecureDisplay: false,\n includeConfirm: false,\n checkReuse: false,\n onKeyDown: f => f,\n passwordErrorServer: '',\n resetPasswordError: f => f,\n setSecurePaswordError: f => f,\n callbackConfirmPassError: f => f,\n userType: 'formuser',\n requestCurrentPassword: false,\n onChange: f => f,\n sendValueToParent: false,\n allowPasswordShow: true,\n clearInitialOnFocus: false,\n initialValue: '',\n onPasswordInputBlur: f => f,\n hasErrorMessage: true,\n hasSecureTextIcon: false,\n className: '',\n disclaimer: null,\n autoComplete: null,\n onPasswordValidate: f => f,\n isOnboardingFlow: false,\n customTexts: {\n regularRequirementDesc: '',\n secureRequirementDesc: '',\n inputPlaceholder: ''\n },\n hideNeutralRules: false\n};\n\nexport default Password;\n","import React from 'react';\nimport { bool, element } from 'prop-types';\nimport { translationRenderer } from '@jotforminc/translation';\nimport { Texts } from '@jotforminc/constants';\n\nimport { getTermsOfUseLinkByLanguage, getPrivacyLinkByLanguage } from '../utils/loginSignup';\n\nconst TermsAndConditionsUrls = ({ LabelRenderer, isTurkish }) => {\n return (\n \n {translationRenderer(Texts.AGREE_SERVICE_POLICY)({\n renderer1: str => {str},\n renderer2: str => {str}\n })}\n {' '}\n {/* additional terms only for the turkish users */}\n {isTurkish && (\n translationRenderer(Texts.AGREE_FOR_TURKISH_USERS)({\n renderer1: str => (\n \n {' '}\n {str}\n \n ),\n renderer2: str => {str}\n })\n )}\n \n );\n};\n\nTermsAndConditionsUrls.propTypes = {\n LabelRenderer: element,\n isTurkish: bool\n};\n\nTermsAndConditionsUrls.defaultProps = {\n // eslint-disable-next-line react/prop-types\n LabelRenderer: ({ children }) => <>{children},\n isTurkish: false\n};\n\nexport default TermsAndConditionsUrls;\n","import React from 'react';\nimport { string, func, element } from 'prop-types';\nimport { t } from '@jotforminc/translation';\nimport { Texts } from '@jotforminc/constants';\nimport MicrosoftIcon from '../assets/icon_ms.svg';\n\nexport default function MicrosoftButton({\n text,\n onClick,\n classNames,\n icon,\n ariaLabel\n}) {\n return (\n \n {icon}\n {text || t(Texts.CONNECT_MICROSOFT)}\n \n );\n}\n\nMicrosoftButton.propTypes = {\n text: string,\n onClick: func.isRequired,\n classNames: string,\n icon: element,\n ariaLabel: string\n};\n\nMicrosoftButton.defaultProps = {\n text: '',\n classNames: 'xcl-button-ms test_ms_login',\n icon: ,\n ariaLabel: t(Texts.SIGN_UP_MICROSOFT)\n};\n","import React from 'react';\nimport { string, func, element } from 'prop-types';\nimport { t } from '@jotforminc/translation';\nimport { Texts } from '@jotforminc/constants';\n\nimport AppleIcon from '../temporary-duplicate/assets/svg/icon_apple_white.svg';\n\nexport default function AppleButton({\n text,\n onClick,\n classNames,\n icon,\n ariaLabel\n}) {\n return (\n \n {icon}\n {text || t(Texts.LOGIN_APPLE)}\n \n );\n}\n\nAppleButton.propTypes = {\n text: string,\n onClick: func.isRequired,\n classNames: string,\n icon: element,\n ariaLabel: string\n};\n\nAppleButton.defaultProps = {\n text: '',\n classNames: 'xcl-button-ap test_apple_login',\n icon: ,\n ariaLabel: t(Texts.SIGN_UP_APPLE)\n};\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { t } from '@jotforminc/translation';\nimport { Texts } from '@jotforminc/constants';\nimport { IconSalesforceFilled } from '@jotforminc/svg-icons';\n\nimport { isPlatformSalesforce, salesforceSocialLoginLogger } from '../utils/helper';\nimport GoogleButton from './GoogleButton';\nimport SalesforceButton from './SalesforceButton';\nimport MicrosoftButton from './MicrosoftButton';\nimport FacebookButton from './FacebookButton';\nimport AppleButton from './AppleButton';\n\nimport GoogleIcon36 from '../assets/icon_gl_36.svg';\nimport MicrosoftIcon36 from '../assets/icon_ms_36.svg';\nimport FacebookIcon36 from '../assets/icon_fb_36.svg';\nimport AppleIcon36 from '../assets/icon_ap_36.svg';\n\nconst RenderSocialButtons = ({\n registerMsAbTestAction,\n showSalesforceLogin,\n onGoogleLoginClick,\n onSalesforceLoginClick,\n onMicrosoftLoginClick,\n onFBLoginClick,\n onAppleLoginClick\n}) => {\n const isMicrosoftTeamsFormsLanding = window.location.pathname.includes('/microsoft-teams-forms/');\n const isSalesforceRelatedLanding = window.location.pathname.includes('/formassembly-alternative/');\n\n const getSocialBtnOrder = (socialPlatform = '') => {\n switch (socialPlatform) {\n case 'Google':\n if (isMicrosoftTeamsFormsLanding || isSalesforceRelatedLanding) return 2;\n return 1;\n case 'Microsoft':\n if (isMicrosoftTeamsFormsLanding) return 1;\n if (isSalesforceRelatedLanding) return 3;\n return 2;\n case 'Salesforce':\n if (isSalesforceRelatedLanding) return 1;\n return 5;\n default:\n break;\n }\n };\n\n const jfSocialOpts = [\n {\n order: getSocialBtnOrder('Google'),\n loginType: 'Google',\n renderCondition: true,\n component: }\n classNames=\"test_gl_login xcl-square-button button-gl\"\n onClick={() => {\n onGoogleLoginClick();\n registerMsAbTestAction({ action: 'click', target: 'googleLoginButton' });\n salesforceSocialLoginLogger({ action: 'click', target: 'google-login-button' });\n }}\n />\n },\n {\n order: getSocialBtnOrder('Microsoft'),\n loginType: 'Microsoft',\n renderCondition: true,\n component: }\n classNames=\"xcl-square-button button-ms\"\n onClick={() => {\n onMicrosoftLoginClick();\n registerMsAbTestAction({ action: 'click', target: 'microsoftLoginButton' });\n salesforceSocialLoginLogger({ action: 'click', target: 'microsoft-login-button' });\n }}\n />\n },\n {\n order: 3,\n loginType: 'Facebook',\n renderCondition: true,\n component: }\n classNames=\"test_fb_login xcl-square-button button-fb\"\n onClick={() => {\n onFBLoginClick();\n registerMsAbTestAction({ action: 'click', target: 'facebookLoginButton' });\n salesforceSocialLoginLogger({ action: 'click', target: 'facebook-login-button' });\n }}\n />\n },\n {\n order: 4,\n loginType: 'Apple',\n renderCondition: true,\n component: }\n classNames=\"test_apple_login xcl-square-button button-ap\"\n onClick={() => {\n onAppleLoginClick();\n registerMsAbTestAction({ action: 'click', target: 'appleLoginButton' });\n salesforceSocialLoginLogger({ action: 'click', target: 'apple-login-button' });\n }}\n />\n },\n {\n order: getSocialBtnOrder('Salesforce'),\n loginType: 'Salesforce',\n renderCondition: showSalesforceLogin === true,\n component: }\n classNames=\"test_sf_login xcl-square-button xcl-square-button-salesforce button-sf\"\n onClick={() => {\n onSalesforceLoginClick();\n registerMsAbTestAction({ action: 'click', target: 'salesforceLoginButton' });\n salesforceSocialLoginLogger({ action: 'click', target: 'salesforce-login-button' });\n }}\n />\n }\n ].sort((socialOptA, socialOptB) => (socialOptA.order - socialOptB.order));\n\n return isPlatformSalesforce() ? [\n ...jfSocialOpts.filter(q => q.loginType === 'Salesforce'),\n ...jfSocialOpts.filter(q => q.loginType !== 'Salesforce')\n ].map(q => q.renderCondition && q.component) : jfSocialOpts.map(q => q.renderCondition && q.component);\n};\n\nRenderSocialButtons.propTypes = {\n registerMsAbTestAction: PropTypes.func,\n showSalesforceLogin: PropTypes.bool,\n onGoogleLoginClick: PropTypes.func.isRequired,\n onMicrosoftLoginClick: PropTypes.func.isRequired,\n onFBLoginClick: PropTypes.func.isRequired,\n onAppleLoginClick: PropTypes.func.isRequired,\n onSalesforceLoginClick: PropTypes.func.isRequired\n};\n\nRenderSocialButtons.defaultProps = {\n registerMsAbTestAction: f => f,\n showSalesforceLogin: false\n};\n\nexport default RenderSocialButtons;\n","import { RequestLayer } from '@jotforminc/request-layer';\n\nconst serverRequestInterceptor = ctx => {\n const { resp } = ctx;\n\n if (!resp?.data?.success) {\n ctx.result = Promise.reject(new Error(resp?.data?.error, { cause: resp?.data?.error_type ?? '' }));\n return;\n }\n\n if (resp) {\n ctx.result = resp;\n }\n};\n\nconst apiRequestInterceptor = ctx => {\n const { resp } = ctx;\n\n if (resp && resp.data && typeof resp.data.responseCode === 'number' && (resp.data.responseCode < 200 || resp.data.responseCode > 299)) {\n ctx.result = Promise.reject(new Error(resp?.data?.message, { cause: resp?.data?.errorType ?? '' }));\n return;\n }\n\n if (resp && resp.data) {\n ctx.result = resp.data;\n }\n};\n\nclass LoginFlowRequestManager {\n constructor({ baseURI = '/API', serverRequest = false } = {}) {\n this.layer = new RequestLayer(baseURI, {\n interceptorConfig: {\n customResponseInterceptors: [!serverRequest ? apiRequestInterceptor : serverRequestInterceptor]\n },\n engineConfig: {\n disableEngineThrowOnError: true,\n validateStatus: () => true\n }\n });\n }\n\n rsPost = data => this.layer.post('', data, {\n headers: {\n 'Content-Type': 'application/x-www-form-urlencoded'\n }\n });\n\n post = (url, ...args) => this.layer.post(url, ...args);\n\n get = (url, ...args) => this.layer.get(url, ...args);\n}\n\nexport default LoginFlowRequestManager;\n","import { getPossibleTimeZone } from '@jotforminc/utils';\n\nimport { getScreenResolution } from '../utils/loginSignup';\nimport LoginFlowRequestManager from './manager';\n\nconst ServerManager = new LoginFlowRequestManager({ baseURI: '/server.php', serverRequest: true });\nconst APIManager = new LoginFlowRequestManager();\n\nexport const registerNewUser = ({\n email,\n password,\n name,\n username = '',\n buttonName,\n refApp,\n isAgreedTerms = '0',\n recaptcha = ''\n}) => ServerManager.rsPost({\n action: 'registerNewUser',\n email,\n password,\n name,\n isAgreedTerms,\n timezone: getPossibleTimeZone(),\n screen_resolution: getScreenResolution(),\n location: window.location.pathname,\n username,\n button_name: buttonName,\n ref_app: refApp,\n return: 1,\n recaptcha\n});\n\nexport const isEmailEligibleForRegister = ({ email, verificationHash = '' }) => ServerManager.rsPost({\n action: 'isEmailEligibleForRegister',\n email,\n ...(verificationHash && { form_user_hash: verificationHash })\n});\n\nexport const formUserPretendCreate = ({\n email,\n password,\n name,\n verificationHash,\n isHIPAA = '',\n isAgreedTerms = '0'\n}) => APIManager.post('formuser/pretendCreate?master=1', new URLSearchParams({\n email,\n password,\n name,\n isAgreedTerms,\n hash: verificationHash,\n ...(isHIPAA && { isHIPAA })\n}));\n\nexport const formUserCreate = ({\n email,\n password,\n name,\n sendVerification,\n fromSACL,\n initiator,\n isHIPAA = '',\n appName = '',\n redirectURL = '',\n isAgreedTerms = '0'\n}) => APIManager.post('formuser/register?master=1', new URLSearchParams({\n email,\n password,\n confirm_password: password,\n name,\n sendVerification,\n isAgreedTerms,\n ...(isHIPAA && { isHIPAA }),\n disablePasswordConstraints: '1',\n saclSignup: fromSACL,\n ...(initiator && { initiator }),\n ...(appName === 'portal-apps' && window) && { jotform_pwa: '1', referrerURL: window.location.href },\n ...(redirectURL && window) && { redirectUrl: redirectURL }\n}));\n\nexport const getEnterpriseConfigs = () => APIManager.get('enterprise/customized-configs');\n\n/**\n * Atttempt to fetch current user, if that fails,\n * attempt to fetch a formuser. combinedinfo does not\n * work here, as its return value does not fit the\n * requested parameter of the onLoginSuccess.\n */\nexport const fetchUser = () => APIManager.get('user')\n .catch(() => APIManager.get('formuser'));\n\n/**\n * Check if the user should login to the server via SSO.\n *\n * @param {string} usernameOrEmail Email or username belonging to user.\n * @returns SSO status of the user.\n */\nexport const getUserSSOStatus = usernameOrEmail => APIManager.get(`users/${usernameOrEmail}/ssoStatus`);\n\nexport const send2FAAccountRecoveryEmail = () => APIManager.post('mfa/account-recovery/send-email');\n\nexport const dispatchAction = ({ actor, action, target }) => APIManager.post('t/jfrev', {\n project: 'login-flow',\n actor,\n location: window.location && window.location.href,\n oldActions: {\n action,\n target\n }\n});\n","/* eslint-disable max-len */\n/* eslint-disable jsx-a11y/click-events-have-key-events */\n/* eslint-disable jsx-a11y/anchor-is-valid, react/sort-comp */\nimport React, { createRef } from 'react';\nimport {\n shape, bool, string, func, number, object\n} from 'prop-types';\nimport Axios from 'axios';\nimport qs from 'querystring';\nimport classNames from 'classnames';\nimport ReCAPTCHA from 'react-google-recaptcha';\nimport { t, translationRenderer } from '@jotforminc/translation';\nimport { Loading } from '@jotforminc/loading';\nimport { getEnterpriseLogo } from '@jotforminc/request-layer';\nimport {\n listenEnter,\n validateEmail,\n getPossibleTimeZone\n} from '@jotforminc/utils';\nimport { isEnterprise } from '@jotforminc/enterprise-utils';\nimport { Texts } from '@jotforminc/constants';\nimport { IconEnvelopeClosedFilled } from '@jotforminc/svg-icons';\n\nimport {\n isTurkishLanguage,\n getScreenResolution,\n handleSignupCompletedEvents,\n pushDataLayerEvent\n} from '../utils/loginSignup';\nimport SalesforceButton from './SalesforceButton';\nimport FacebookButton from './FacebookButton';\nimport GoogleButton from './GoogleButton';\nimport Password from './Password';\nimport TermsAndConditionsUrls from './TermsAndConditionsUrls';\nimport MicrosoftButton from './MicrosoftButton';\nimport EmailIcon from '../temporary-duplicate/assets/svg/icon_em.svg';\nimport ErrorAlert from './ErrorAlert';\nimport BonusSignupInfoBox from './BonusSignupInfoBox';\nimport { openOFACModal } from './OFACModal';\nimport { salesforceSocialLoginLogger, errorNormalizer } from '../utils/helper';\n\nimport GoogleIcon36 from '../assets/icon_gl_36.svg';\nimport FacebookIcon36 from '../assets/icon_fb_36.svg';\nimport RenderSocialButtons from './SocialButtons';\nimport { dispatchAction } from '../api';\n\nconst errorMessages = {\n required: Texts.FIELD_REQUIRED,\n validEmail: Texts.VALID_EMAIL,\n termsRequired: Texts.AGREE_TERMS_CONDITIONS,\n hipaaPass: {\n minCharCount: Texts.PASS_MIN_CHAR_COUNT,\n includeChars: Texts.PASS_INCL_CHARS,\n differentThanPrev: Texts.PASS_DIFF_PREV\n }\n};\nconst securePasswordTestEnabled = true;\n\nclass SignupOptions extends React.Component {\n constructor(props) {\n super(props);\n\n this.isTurkish = isTurkishLanguage(props.user);\n this.captchaRef = createRef();\n this.state = {\n name: '',\n email: props.signupPredefinedEmail,\n isAggreedTerms: false,\n isSignupLoading: false,\n screenHeight: window.innerHeight,\n user: props.user,\n showRecaptcha: false,\n recaptcha: null\n };\n this.emailRef = React.createRef();\n this.passwordRef = React.createRef();\n this.termsRef = React.createRef();\n this.isEnterpriseEnv = isEnterprise();\n this.updateWindowDimensions = this.updateWindowDimensions.bind(this);\n\n // Accessibility validation controls\n this.invalidFieldRefs = {};\n this.invalidFieldFocusOrder = ['email', 'password', 'terms'];\n }\n\n componentDidMount() {\n const { shrinkConfirmOnMobile, registerMsAbTestAction } = this.props;\n registerMsAbTestAction({ action: 'seen', target: 'signupOptions' });\n if (shrinkConfirmOnMobile) window.addEventListener('resize', this.updateWindowDimensions);\n if (window.sendMessageToJFMobile) {\n window.sendMessageToJFMobile({ signupOptions: true });\n }\n }\n\n componentWillUnmount() {\n const { shrinkConfirmOnMobile } = this.props;\n if (shrinkConfirmOnMobile) window.removeEventListener('resize', this.updateWindowDimensions);\n }\n\n getMsSignupTestClassName() {\n const { isMsSignupControlVariant, isMsSignupTestBVariant, isMsSignupTestCVariant } = this.props;\n\n switch (true) {\n case isMsSignupControlVariant:\n return 'xcl-button-control';\n case isMsSignupTestBVariant:\n return 'xcl-button-b';\n case isMsSignupTestCVariant:\n return 'xcl-button-c';\n default:\n return 'xcl-button-control';\n }\n }\n\n handleFieldChange = propName => e => {\n const { value } = e.target;\n const erroredName = `${propName}Error`;\n const showRequiredMessage = propName !== 'name' && !value;\n this.setState({\n [propName]: value,\n [erroredName]: showRequiredMessage ? t(errorMessages.required) : ''\n });\n };\n\n handleTermsChange = () => {\n const { isAggreedTerms, termsError } = this.state;\n this.setState({\n isAggreedTerms: !isAggreedTerms,\n termsError: (termsError && !isAggreedTerms) ? '' : termsError\n });\n };\n\n resetPasswordError = () => {\n this.setState({ passwordError: '', securePassErrors: [] });\n };\n\n setSecurePaswordError = errorCodes => {\n this.setState({ securePassErrors: errorCodes });\n };\n\n callbackConfirmPassError = confirmPassErrorCode => {\n this.setState({ confirmPassErrorCode });\n };\n\n focusFirstInvalidField = () => {\n let firstInvalidFieldByOrder = '';\n this.invalidFieldFocusOrder.forEach(fieldName => {\n if (!firstInvalidFieldByOrder && this.invalidFieldRefs[fieldName]) {\n firstInvalidFieldByOrder = fieldName;\n }\n });\n\n if (firstInvalidFieldByOrder && firstInvalidFieldByOrder === 'password') {\n this.invalidFieldRefs.password.current.inputRef.current.focus();\n } else if (firstInvalidFieldByOrder) {\n this.invalidFieldRefs[firstInvalidFieldByOrder]?.current?.focus();\n }\n this.invalidFieldRefs = {};\n };\n\n makeAllValidations = () => {\n return new Promise(resolve => {\n const {\n isAggreedTerms, email\n } = this.state;\n const nextState = {};\n let emailErrCode = '';\n if (!email) {\n nextState.emailError = t(errorMessages.required);\n emailErrCode = 'emailRequired';\n this.invalidFieldRefs.email = this.emailRef;\n } else if (!validateEmail(email)) {\n nextState.emailError = t(errorMessages.validEmail);\n emailErrCode = 'emailInvalid';\n this.invalidFieldRefs.email = this.emailRef;\n }\n nextState.emailErrorCode = emailErrCode;\n\n if (!this.isEnterpriseEnv && !isAggreedTerms) { // Aytekin's Request, hiding terms on enterprise signup flow.\n nextState.termsError = t(errorMessages.termsRequired);\n this.invalidFieldRefs.terms = this.termsRef;\n }\n\n this.passwordRef.current.validate().then(({ isValid }) => {\n if (!isValid) {\n this.invalidFieldRefs.password = this.passwordRef;\n }\n }).then(() => this.focusFirstInvalidField());\n\n this.setState({\n ...nextState\n }, resolve);\n }).then(() => this.passwordRef.current.validate());\n };\n\n handleKeyDown = e => listenEnter(e, this.handleSubmit);\n\n handleCaptchaSubmit = hash => {\n if (!hash) {\n dispatchAction({\n actor: window?.user?.username || window?.__formInfo?.username || 'unknown',\n target: 'so',\n action: 'captcha-expired'\n });\n return this.setState({ isSignupLoading: false });\n }\n\n this.setState({\n recaptcha: hash\n });\n\n dispatchAction({\n actor: window?.user?.username || window?.__formInfo?.username || 'unknown',\n target: 'so',\n action: 'captcha-passed'\n });\n };\n\n forceUserSignup = async (name, email, password, isAggreedTerms, recaptcha) => {\n const {\n onLoginSuccess,\n appName,\n buttonNames,\n ofacModalRef\n } = this.props;\n\n const defaultButtonName = appName ? `emailSignup-${appName}` : '';\n const buttonName = buttonNames.emailSignup ? buttonNames.emailSignup : defaultButtonName;\n const signedFromDocusignApp = new URLSearchParams(global.location.search).has('signedFromDocusignApp');\n try {\n const response = await Axios.post(\n '/server.php',\n qs.stringify({\n action: 'registerNewUser',\n email,\n password,\n name,\n isAgreedTerms: isAggreedTerms ? '1' : '0',\n timezone: getPossibleTimeZone(),\n screen_resolution: getScreenResolution(),\n location: global.location.pathname,\n username: '',\n button_name: buttonName,\n ref_app: appName,\n return: 1,\n recaptcha,\n ...(signedFromDocusignApp && { signedFromDocusignApp: 'Yes' })\n }),\n {\n withCredentials: true,\n headers: {\n 'Content-Type': 'application/x-www-form-urlencoded'\n }\n }\n );\n\n if (response.status === 200) {\n handleSignupCompletedEvents(response.data.user.username);\n response.data.newUser = true;\n onLoginSuccess(response, true);\n } else {\n this.setState({\n emailError: t('Something went wrong'),\n isSignupLoading: false,\n passwordError: ''\n });\n }\n } catch (error) {\n const { response: { data: { error: message, error_type: errorType } = {} } = {} } = error;\n const hasPasswordWarning = message.includes('PasswordWarning::');\n if (message && securePasswordTestEnabled && (hasPasswordWarning || errorType === 'password')) {\n const removedErrorCode = hasPasswordWarning ? message.replace('PasswordWarning::', '') : message;\n this.setState({\n passwordError: t(removedErrorCode),\n isSignupLoading: false\n });\n } else {\n if (this.captchaRef) {\n this.captchaRef.current?.reset();\n }\n\n if (message === \"Sorry, you can't signup from this country.\") {\n openOFACModal(ofacModalRef, email);\n }\n\n if (message === 'REQUIRE_CAPTCHA') {\n dispatchAction({\n actor: window?.user?.username || window?.__formInfo?.username || 'unknown',\n target: 'so',\n action: 'captcha-required'\n });\n return this.setState({\n isSignupLoading: false,\n showRecaptcha: true\n });\n }\n\n this.setState({\n emailError: t(message || 'Something went wrong, please try again.'),\n isSignupLoading: false,\n passwordError: ''\n });\n }\n }\n };\n\n handleSubmit = e => {\n if (e) {\n e.preventDefault();\n }\n\n pushDataLayerEvent({\n event: 'Signup',\n eventAction: 'Click'\n });\n\n const {\n name, email, isAggreedTerms, recaptcha\n } = this.state;\n const {\n apiURL,\n forceUser,\n isHIPAA,\n onLoginSuccess,\n signupPredefinedEmail,\n verificationHash,\n ofacModalRef\n } = this.props;\n\n this.handleFieldChange('name')({ target: { value: name } });\n this.makeAllValidations().then(({ isValid: isPasswordValid, password }) => {\n if (securePasswordTestEnabled) {\n const {\n emailError, emailErrorCode, termsError, confirmPassErrorCode, securePassErrors\n } = this.state;\n const currentErrors = [\n { emailError: emailError !== '' ? emailErrorCode : '' },\n { termsError: (termsError !== '' && termsError) ? 'termsRequired' : '' },\n { confirmPassErrorCode }\n ];\n securePassErrors.forEach(errCode => {\n currentErrors.push({ passwordError: errCode });\n });\n currentErrors.forEach(type => {\n const errObj = Object.entries(type)[0];\n if (errObj[1] && errObj[1] !== '') {\n if (typeof window.JotFormActions === 'function') {\n const actor = window?.user?.username || window?.__formInfo?.username || 'unknown';\n const logger = new window.JotFormActions('strongPasswordonSignupsWithNew');\n logger.tick({ actor, action: 'signUpClick', target: errObj[1] });\n }\n }\n });\n }\n\n if (!isPasswordValid) return;\n\n const errorProps = ['emailError', 'nameError', 'termsError'];\n const firstError = errorProps.find(errorProp => {\n // eslint-disable-next-line react/destructuring-assignment\n const error = this.state[errorProp];\n return !!error;\n });\n if (firstError || !isPasswordValid) {\n this.setState({ isSignupLoading: false });\n return;\n }\n const isHIPAARequestPart = isHIPAA ? '&isHIPAA=1' : '';\n this.setState({ isSignupLoading: true });\n if (forceUser) {\n this.forceUserSignup(name, email, password, isAggreedTerms, recaptcha);\n } else if (signupPredefinedEmail && verificationHash) { // TODO: need another prop\n Axios.post(\n `${apiURL}/formuser/pretendCreate?master=1`,\n qs.stringify({\n email,\n password,\n name,\n isAgreedTerms: isAggreedTerms ? '1' : '0',\n hash: verificationHash,\n isHIPAA: isHIPAA ? '1' : ''\n }),\n {\n withCredentials: true,\n headers: {\n 'Content-Type': 'application/x-www-form-urlencoded'\n }\n }\n ).then(({ data: resp }) => {\n if (resp && resp.responseCode === 200) {\n onLoginSuccess(resp);\n } else if (resp && resp.errorType) {\n if (resp.errorType === 'E_TYPE_EMAIL') {\n this.setState({ emailError: resp.message });\n }\n\n if (resp?.message === \"Sorry, you can't signup from this country.\") {\n openOFACModal(ofacModalRef, email);\n }\n\n this.setState({ isSignupLoading: false });\n } else if (resp && typeof resp.message === 'string') {\n // Shitty error handling\n // we need to change api's error results to human readable format.\n const splitted = resp.message.split('-');\n const lastPart = splitted[splitted.length - 1];\n this.setState({ emailError: lastPart.trim(), isSignupLoading: false });\n }\n });\n } else {\n const { productType, appName } = this.props;\n const sendVerification = productType === 'form' ? '1' : '0';\n const referrerURL = appName === 'portal-apps' && window ? `&jotform_pwa=1&referrerURL=${window.location.href}` : '';\n const encodedEmail = encodeURIComponent(email);\n const encodedPW = encodeURIComponent(password);\n Axios.post(`${apiURL}/formuser/register?master=1`,\n `email=${encodedEmail}&password=${encodedPW}&confirm_password=${encodedPW}&disablePasswordConstraints=1&name=${name}&isAgreedTerms=${isAggreedTerms ? '1' : ' 0'}&sendVerification=${sendVerification}${isHIPAARequestPart}${referrerURL}`,\n {\n withCredentials: true,\n headers: {\n 'Content-Type': 'application/x-www-form-urlencoded'\n }\n }).then(({ data: resp }) => {\n if (resp && resp.responseCode === 200) {\n const { content: user } = resp;\n if (window?.JFAppsManager?.isOpenedInPortal()) {\n window.JFAppsManager.userChanged(user);\n }\n\n onLoginSuccess(resp);\n } else if (resp && resp.errorType) {\n if (resp.errorType === 'E_TYPE_EMAIL') {\n let newRespMessage = (resp.message.split(':'));\n newRespMessage = t(`${newRespMessage[0]}${newRespMessage[1] ? ':' : ''}`).concat(newRespMessage[1] ? newRespMessage[1] : '').toString();\n this.setState({ emailError: newRespMessage });\n }\n\n if (resp?.message === \"Sorry, you can't signup from this country.\") {\n openOFACModal(ofacModalRef, email);\n }\n\n this.setState({ isSignupLoading: false });\n }\n });\n }\n });\n };\n\n updateWindowDimensions() {\n this.setState({ screenHeight: window.innerHeight });\n }\n\n // eslint-disable-next-line complexity\n render() {\n const enterpriseEnv = isEnterprise();\n // const isEmbed = window && window.parent && window.parent !== window;\n const {\n onNavigationChangeRequest, onSalesforceLoginClick, onGoogleLoginClick, onFBLoginClick, onMicrosoftLoginClick, enterpriseLogo,\n skippable, onSkip, greetingMessage, thereSocialError, thereErrorMessage, showLogoOnSignupOptions, greetingDescription, showFormOnSignupOptions,\n isHIPAA, includeConfirm, signupButtonText, shrinkConfirmOnMobile, shrinkConfirmHeight, disableEmail, logoSource,\n registerMsAbTestAction, isMsSignupControlVariant, isMsSignupTestBVariant, onAppleLoginClick, areSocialButtonsLoading, horizontalSocialButtons,\n squareSocialButtonStyle, hideGreetingMessageOnSignupOptions, useSwsoButtons\n } = this.props;\n\n const jfLogoSource = logoSource || 'https://cdn.jotfor.ms/assets/img/v4/logo-branding21.png';\n const jfLogo = enterpriseEnv ? getEnterpriseLogo() : jfLogoSource;\n\n const {\n email, name, emailError, nameError, isAggreedTerms, termsError, isSignupLoading, screenHeight, passwordError, user, showRecaptcha\n } = this.state;\n const userCampaign = user?.campaign || {};\n const isGuestUser = user?.account_type?.name === 'GUEST';\n const isMobileTexts = (((window.innerHeight > shrinkConfirmHeight) || !showFormOnSignupOptions) && !horizontalSocialButtons);\n\n const shouldShowBonusSignupBox = isGuestUser && userCampaign?.type === 'NEWUSER' && userCampaign?.status && userCampaign?.expires;\n return (\n
\n {showLogoOnSignupOptions && \"Logo\"}\n {!enterpriseEnv && !hideGreetingMessageOnSignupOptions && (

{t(greetingMessage)}

)}\n {Boolean(greetingDescription) && (

{t(greetingDescription)}

)}\n { (false && shouldShowBonusSignupBox) && }\n
\n {!enterpriseEnv\n && (\n <>\n
\n {/* TODO: enable areSocialButtonsLoading flag to prevent flick effect */}\n {/* loading */}\n {areSocialButtonsLoading && (\n
\n \n
\n )}\n {/* control variant */}\n {!areSocialButtonsLoading && squareSocialButtonStyle && isMsSignupControlVariant && (\n
\n {\n onSalesforceLoginClick();\n salesforceSocialLoginLogger({ action: 'click', target: 'salesforce-signup-button' });\n // registerMsAbTestAction({ action: 'click', target: 'salesforceSignupButton' });\n }}\n text={isMobileTexts\n ? t(Texts.SIGN_UP_SALESFORCE)\n : t(Texts.SIGN_UP_SALESFORCE_MOBILE)}\n />\n }\n onClick={() => {\n onGoogleLoginClick();\n registerMsAbTestAction({ action: 'click', target: 'googleSignupButton' });\n salesforceSocialLoginLogger({ action: 'click', target: 'google-signup-button' });\n }}\n text={isMobileTexts\n ? t(Texts.SIGN_UP_GOOGLE)\n : t(Texts.SIGN_UP_GOOGLE_MOBILE)}\n />\n }\n onClick={() => {\n onFBLoginClick();\n registerMsAbTestAction({ action: 'click', target: 'facebookSignupButton' });\n salesforceSocialLoginLogger({ action: 'click', target: 'facebook-signup-button' });\n }}\n text={isMobileTexts\n ? t(Texts.SIGN_UP_FACEBOOK)\n : t(Texts.SIGN_UP_FACEBOOK_MOBILE)}\n />\n
\n )}\n {!areSocialButtonsLoading && !squareSocialButtonStyle && isMsSignupControlVariant && (\n <>\n {\n onGoogleLoginClick();\n registerMsAbTestAction({ action: 'click', target: 'googleSignupButton' });\n }}\n text={isMobileTexts\n ? t(Texts.SIGN_UP_GOOGLE)\n : t(Texts.SIGN_UP_GOOGLE_MOBILE)}\n />\n {\n onFBLoginClick();\n registerMsAbTestAction({ action: 'click', target: 'facebookSignupButton' });\n }}\n text={isMobileTexts\n ? t(Texts.SIGN_UP_FACEBOOK)\n : t(Texts.SIGN_UP_FACEBOOK_MOBILE)}\n />\n \n )}\n {/* test variants */}\n {useSwsoButtons && (\n
\n \n
\n )}\n {!areSocialButtonsLoading && !isMsSignupControlVariant && !useSwsoButtons && (\n
\n {\n onGoogleLoginClick();\n registerMsAbTestAction({ action: 'click', target: 'googleSignupButton' });\n }}\n />\n {\n onMicrosoftLoginClick();\n registerMsAbTestAction({ action: 'click', target: 'microsoftSignupButton' });\n }}\n />\n {!isMsSignupTestBVariant\n && (\n {\n onFBLoginClick();\n registerMsAbTestAction({ action: 'click', target: 'facebookSignupButton' });\n }}\n />\n )}\n
\n )}\n
\n {thereSocialError\n && (\n
\n {t(errorNormalizer(thereErrorMessage))}\n
\n )}\n
{t(Texts.OR_KEY)}
\n \n )}\n {!showFormOnSignupOptions ? (\n onNavigationChangeRequest('signupWithEmail')}\n type=\"button\"\n id=\"signup-with-email\"\n >\n { squareSocialButtonStyle ? : }\n { squareSocialButtonStyle ? t(Texts.SIGN_UP_EMAIL_LOWERCASE) : t(Texts.SIGN_UP_EMAIL) }\n \n ) : (\n
\n
\n
\n \n \n {nameError && }\n
\n\n
\n \n \n
\n {emailError ? emailError : null}\n {emailError === Texts.EMAIL_ERROR && (\n <>\n  \n {translationRenderer(Texts.PLEASE_LOGIN)({\n renderer1: text => ( onNavigationChangeRequest('loginOptions')}>{text})\n })}\n \n )}\n
\n
\n\n \n\n {!this.isEnterpriseEnv && (\n
\n
\n \n }\n />\n
\n
\n {termsError ? termsError : null}\n
\n
\n ) }\n {showRecaptcha && (\n
\n this.handleCaptchaSubmit(hash)}\n />\n
\n )}\n \n {isSignupLoading\n ? (\n
\n
\n
\n
\n
\n )\n : t(signupButtonText)}\n \n
\n {t(Texts.ALREADY_HAVE_ACCOUNT)}\n onNavigationChangeRequest('loginOptions')}\n id=\"login-link\"\n >\n {t(Texts.LOGIN_TEXT)}\n \n
\n
\n \n )}\n
\n {!showFormOnSignupOptions ? (\n
\n {t(Texts.ALREADY_HAVE_ACCOUNT)}\n onNavigationChangeRequest('loginOptions')}\n id=\"login-link\"\n >\n {t(Texts.LOGIN_TEXT)}\n \n
\n ) : null}\n {skippable ? (\n {\n onNavigationChangeRequest('withoutSignup');\n if (typeof onSkip === 'function') {\n onSkip();\n }\n }}\n >\n {t(Texts.SKIP_CREATE_ACCOUNT)}\n \n ) : null}\n
\n );\n }\n}\n\nSignupOptions.propTypes = {\n onNavigationChangeRequest: func.isRequired,\n thereSocialError: bool,\n onSalesforceLoginClick: func.isRequired,\n onFBLoginClick: func.isRequired,\n onGoogleLoginClick: func.isRequired,\n onMicrosoftLoginClick: func.isRequired,\n onAppleLoginClick: func.isRequired,\n enterpriseLogo: string,\n skippable: bool,\n onSkip: func,\n greetingMessage: string,\n hideGreetingMessageOnSignupOptions: bool,\n showLogoOnSignupOptions: bool,\n greetingDescription: string,\n horizontalSocialButtons: bool,\n squareSocialButtonStyle: bool,\n showFormOnSignupOptions: bool,\n onLoginSuccess: func.isRequired,\n apiURL: string.isRequired,\n signupPredefinedEmail: string,\n disableEmail: bool,\n verificationHash: string,\n productType: string,\n isHIPAA: bool,\n appName: string,\n forceUser: bool,\n includeConfirm: bool,\n shrinkConfirmOnMobile: bool,\n shrinkConfirmHeight: number,\n user: shape(),\n signupButtonText: string,\n buttonNames: shape({\n google: string,\n facebook: string,\n apple: string,\n microsoft: string,\n emailLogin: string,\n emailSignup: string\n }),\n logoSource: string,\n registerMsAbTestAction: func,\n isMsSignupControlVariant: bool,\n isMsSignupTestBVariant: bool,\n isMsSignupTestCVariant: bool,\n areSocialButtonsLoading: bool,\n useSwsoButtons: bool,\n ofacModalRef: object,\n thereErrorMessage: string\n};\n\nSignupOptions.defaultProps = {\n enterpriseLogo: null,\n skippable: false,\n onSkip: f => f,\n greetingMessage: Texts.SIGN_UP_NOW,\n hideGreetingMessageOnSignupOptions: false,\n thereSocialError: false,\n showLogoOnSignupOptions: true,\n greetingDescription: '',\n horizontalSocialButtons: false,\n squareSocialButtonStyle: false,\n showFormOnSignupOptions: false,\n productType: 'form',\n signupPredefinedEmail: '',\n disableEmail: false,\n verificationHash: '',\n isHIPAA: false,\n appName: '',\n forceUser: false,\n includeConfirm: false,\n user: null,\n signupButtonText: Texts.CREATE_MY_ACCOUNT,\n buttonNames: {},\n shrinkConfirmOnMobile: false,\n shrinkConfirmHeight: 750,\n logoSource: '',\n registerMsAbTestAction: f => f,\n isMsSignupControlVariant: true,\n isMsSignupTestBVariant: false,\n isMsSignupTestCVariant: false,\n areSocialButtonsLoading: true,\n useSwsoButtons: true,\n ofacModalRef: null,\n thereErrorMessage: Texts.ERROR_TRY_AGAIN\n};\n\nexport default SignupOptions;\n","/* eslint-disable max-len */\nimport { Texts } from '@jotforminc/constants';\n\n// Unusual Signup Flow Texts\nexport const REPORT_UNUSUAL_SIGNUP = 'Report Unusual Signup';\nexport const NOT_CREATE_THIS_ACCOUNT = 'If you didn’t create an account using [1[{email}]], please report this so that we can take the necessary action.';\nexport const REPORT_ACCOUNT = 'Report this account';\nexport const KEEP_ACCOUNT = 'This is my account';\nexport const CONTINUE = 'Continue';\nexport const RECEIVED_RESPONSE = 'We’ve received your report';\nexport const THANKS_FOR_REPORTING = 'Thank you for reporting this. We’ve taken the necessary actions for the account associated with [1[{email}]]. If you need help with anything else, please [2[contact us.]]';\nexport const ERROR_MESSAGE = 'An error occured. Please [1[contact us]].';\n\n// Signup With Login Opts Texts\nexport const TITLE_MESSAGE = 'Sign Up Now';\nexport const DESCRIPTION_MESSAGE = 'Collect information, payments, and signatures with custom online forms';\nexport const SIGN_UP_WITH = 'Sign up with';\nexport const OR = 'OR';\nexport const EMAIL = 'Email';\nexport const BACK = 'Back';\nexport const CONTINUE_SIGNUP = 'Continue Signing Up';\nexport const SIGNING_UP_WITH = 'You’re signing up with [1[{email}]]';\nexport const LOGIN_SESSION_EXPIRED_MESSAGE = 'Login timed out. Please refresh the page and try logging in again.';\n\n// A/B Test: signupOnboardingIV\nexport const OR_SIGN_UP_WITH = 'or sign up with';\nexport const OR_LOGIN_WITH = 'or login with';\nexport const EMAIL_ADDRESS = 'Email address';\nexport const CREATE_ACCOUNT = 'Create Account';\nexport const ENTER_EMAIL_ADDRESS = 'Enter your email address';\nexport const ENTER_FULL_NAME = 'Enter your full name';\n\nexport const errorMessages = {\n tryAgain: Texts.ERROR_TRY_AGAIN,\n required: Texts.FIELD_REQUIRED,\n validEmail: Texts.VALID_EMAIL,\n termsRequired: Texts.AGREE_TERMS_CONDITIONS,\n hipaaPass: {\n minCharCount: Texts.PASS_MIN_CHAR_COUNT,\n includeChars: Texts.PASS_INCL_CHARS,\n differentThanPrev: Texts.PASS_DIFF_PREV\n }\n};\n","/* eslint-disable react/jsx-one-expression-per-line, react/sort-comp */\n\nimport React, { createRef } from 'react';\nimport {\n bool,\n func,\n string,\n shape,\n number,\n object\n} from 'prop-types';\nimport Axios from 'axios';\nimport qs from 'querystring';\nimport ReCAPTCHA from 'react-google-recaptcha';\nimport { t, translationRenderer } from '@jotforminc/translation';\nimport { isEnterprise } from '@jotforminc/enterprise-utils';\nimport { Texts } from '@jotforminc/constants';\nimport {\n listenEnter,\n validateEmail,\n getPossibleTimeZone\n} from '@jotforminc/utils';\n\nimport BackIcon from '../temporary-duplicate/assets/svg/icon_back3.svg';\nimport Password from './Password';\nimport {\n isTurkishLanguage,\n getScreenResolution,\n handleSignupCompletedEvents,\n pushDataLayerEvent\n} from '../utils/loginSignup';\nimport TermsAndConditionsUrls from './TermsAndConditionsUrls';\nimport ErrorAlert from './ErrorAlert';\nimport { openOFACModal } from './OFACModal';\nimport { objToQueryString } from '../utils/helper';\nimport { errorMessages } from '../constants';\nimport { dispatchAction } from '../api';\n\nconst securePasswordTestEnabled = true;\n\nclass SignupWithEmail extends React.Component {\n constructor(props) {\n super(props);\n\n if (window.opener) {\n this.signUpDefaultName = window.opener.signUpDefaultName || '';\n this.signUpDefaultEmail = window.opener.signUpDefaultEmail || '';\n }\n\n this.isTurkish = isTurkishLanguage(props.user);\n this.captchaRef = createRef();\n this.state = {\n name: props.signupPredefinedName || this.signUpDefaultName || '',\n email: props.signupPredefinedEmail || this.signUpDefaultEmail || '',\n isAggreedTerms: false,\n isSignupLoading: false,\n screenHeight: window.innerHeight,\n showRecaptcha: false,\n recaptcha: null\n };\n this.emailRef = React.createRef();\n this.passwordRef = React.createRef();\n this.termsRef = React.createRef();\n this.isEnterpriseEnv = isEnterprise();\n this.updateWindowDimensions = this.updateWindowDimensions.bind(this);\n\n // Accessibility validation controls\n this.invalidFieldRefs = {};\n this.invalidFieldFocusOrder = ['email', 'password', 'terms'];\n }\n\n componentDidMount() {\n const { shrinkConfirmOnMobile } = this.props;\n if (shrinkConfirmOnMobile) window.addEventListener('resize', this.updateWindowDimensions);\n }\n\n componentWillUnmount() {\n const { shrinkConfirmOnMobile } = this.props;\n if (shrinkConfirmOnMobile) window.removeEventListener('resize', this.updateWindowDimensions);\n }\n\n handleFieldChange = propName => e => {\n const { value } = e.target;\n const erroredName = `${propName}Error`;\n const showRequiredMessage = propName !== 'name' && !value;\n this.setState({\n [propName]: value,\n [erroredName]: showRequiredMessage ? t(errorMessages.required) : ''\n });\n };\n\n handleTermsChange = () => {\n const { isAggreedTerms, termsError } = this.state;\n this.setState({\n isAggreedTerms: !isAggreedTerms,\n termsError: (termsError && !isAggreedTerms) ? '' : termsError\n });\n };\n\n resetPasswordError = () => {\n this.setState({ passwordError: '', securePassErrors: [] });\n };\n\n setSecurePaswordError = errorCodes => {\n this.setState({ securePassErrors: errorCodes });\n };\n\n callbackConfirmPassError = confirmPassErrorCode => {\n this.setState({ confirmPassErrorCode });\n };\n\n focusFirstInvalidField = () => {\n let firstInvalidFieldByOrder = '';\n this.invalidFieldFocusOrder.forEach(fieldName => {\n if (!firstInvalidFieldByOrder && this.invalidFieldRefs[fieldName]) {\n firstInvalidFieldByOrder = fieldName;\n }\n });\n\n if (firstInvalidFieldByOrder && firstInvalidFieldByOrder === 'password') {\n this.invalidFieldRefs.password.current.inputRef.current.focus();\n } else if (firstInvalidFieldByOrder) {\n this.invalidFieldRefs[firstInvalidFieldByOrder]?.current?.focus();\n }\n this.invalidFieldRefs = {};\n };\n\n makeAllValidations = () => {\n return new Promise(resolve => {\n const {\n isAggreedTerms, email\n } = this.state;\n const nextState = {};\n let emailErrCode = '';\n if (!email) {\n nextState.emailError = t(errorMessages.required);\n emailErrCode = 'emailRequired';\n this.invalidFieldRefs.email = this.emailRef;\n } else if (!validateEmail(email)) {\n nextState.emailError = t(errorMessages.validEmail);\n emailErrCode = 'emailInvalid';\n this.invalidFieldRefs.email = this.emailRef;\n }\n nextState.emailErrorCode = emailErrCode;\n\n if (!this.isEnterpriseEnv && !isAggreedTerms) { // Aytekin's Request, hiding terms on enterprise signup flow.\n nextState.termsError = t(errorMessages.termsRequired);\n this.invalidFieldRefs.terms = this.termsRef;\n }\n\n this.passwordRef.current.validate().then(({ isValid }) => {\n if (!isValid) {\n this.invalidFieldRefs.password = this.passwordRef;\n }\n }).then(() => this.focusFirstInvalidField());\n\n this.setState({\n ...nextState\n }, resolve);\n }).then(() => this.passwordRef.current.validate());\n };\n\n handleKeyDown = e => listenEnter(e, this.handleSubmit);\n\n handleCaptchaSubmit = hash => {\n if (!hash) {\n dispatchAction({\n actor: window?.user?.username || window?.__formInfo?.username || 'unknown',\n target: 'swe',\n action: 'captcha-expired'\n });\n return this.setState({ isSignupLoading: false });\n }\n\n this.setState({\n recaptcha: hash\n });\n\n dispatchAction({\n actor: window?.user?.username || window?.__formInfo?.username || 'unknown',\n target: 'swe',\n action: 'captcha-passed'\n });\n };\n\n forceUserSignup = async (name, email, password, isAggreedTerms, recaptcha) => {\n const {\n onLoginSuccess,\n appName,\n buttonNames,\n changeActiveScreen,\n builderShowSlides\n } = this.props;\n\n const defaultButtonName = appName ? `emailSignup-${appName}` : '';\n const buttonName = buttonNames.emailSignup ? buttonNames.emailSignup : defaultButtonName;\n\n try {\n const response = await Axios.post(\n '/server.php',\n qs.stringify({\n action: 'registerNewUser',\n email,\n password,\n name,\n timezone: getPossibleTimeZone(),\n screen_resolution: getScreenResolution(),\n location: global.location.pathname,\n username: '',\n button_name: buttonName,\n ref_app: appName,\n return: 1,\n isAgreedTerms: isAggreedTerms ? '1' : '0',\n recaptcha\n }),\n {\n withCredentials: true,\n headers: {\n 'Content-Type': 'application/x-www-form-urlencoded'\n }\n }\n );\n\n if (response.status === 200) {\n handleSignupCompletedEvents(response.data.user.username);\n response.data.newUser = true;\n onLoginSuccess(response, true);\n } else {\n this.setState({\n emailError: t('Something went wrong'),\n isSignupLoading: false,\n passwordError: ''\n });\n }\n } catch (error) {\n const { response: { data: { error: message, error_type: errorType } = {} } = {} } = error;\n const hasPasswordWarning = message.includes('PasswordWarning::');\n if (message && securePasswordTestEnabled && (hasPasswordWarning || errorType === 'password')) {\n const removedErrorCode = hasPasswordWarning ? message.replace('PasswordWarning::', '') : message;\n this.setState({\n passwordError: t(removedErrorCode),\n isSignupLoading: false\n });\n } else {\n if (this.captchaRef) {\n this.captchaRef.current?.reset();\n }\n\n if (message === \"Sorry, you can't signup from this country.\") {\n builderShowSlides(false);\n changeActiveScreen('ofacModal');\n }\n\n if (message === 'REQUIRE_CAPTCHA') {\n dispatchAction({\n actor: window?.user?.username || window?.__formInfo?.username || 'unknown',\n target: 'swe',\n action: 'captcha-required'\n });\n return this.setState({\n isSignupLoading: false,\n showRecaptcha: true\n });\n }\n\n this.setState({\n emailError: t(message || 'Something went wrong, please try again.'),\n isSignupLoading: false,\n passwordError: ''\n });\n }\n }\n };\n\n handleSubmit = e => {\n if (e) {\n e.preventDefault();\n }\n\n pushDataLayerEvent({\n event: 'Signup',\n eventAction: 'Click'\n });\n\n const {\n name, email, isAggreedTerms, recaptcha\n } = this.state;\n const {\n apiURL,\n forceUser,\n isHIPAA,\n onLoginSuccess,\n signupPredefinedEmail,\n verificationHash,\n ofacModalRef\n } = this.props;\n\n this.handleFieldChange('name')({ target: { value: name } });\n // eslint-disable-next-line complexity\n this.makeAllValidations().then(({ isValid: isPasswordValid, password }) => {\n if (securePasswordTestEnabled) {\n const {\n emailError, emailErrorCode, termsError, confirmPassErrorCode, securePassErrors\n } = this.state;\n const currentErrors = [\n { emailError: emailError !== '' ? emailErrorCode : '' },\n { termsError: (termsError !== '' && termsError) ? 'termsRequired' : '' },\n { confirmPassErrorCode }\n ];\n securePassErrors.forEach(errCode => {\n currentErrors.push({ passwordError: errCode });\n });\n currentErrors.forEach(type => {\n const errObj = Object.entries(type)[0];\n if (errObj[1] && errObj[1] !== '') {\n if (typeof window.JotFormActions === 'function') {\n const actor = window?.user?.username || window?.__formInfo?.username || 'unknown';\n const logger = new window.JotFormActions('strongPasswordonSignupsWithNew');\n logger.tick({ actor, action: 'signUpClick', target: errObj[1] });\n }\n }\n });\n }\n\n if (!isPasswordValid) return;\n\n const errorProps = ['emailError', 'nameError', 'termsError'];\n const firstError = errorProps.find(errorProp => {\n // eslint-disable-next-line react/destructuring-assignment\n const error = this.state[errorProp];\n return !!error;\n });\n if (firstError || !isPasswordValid) {\n this.setState({ isSignupLoading: false });\n return;\n }\n this.setState({ isSignupLoading: true });\n if (forceUser) {\n this.forceUserSignup(name, email, password, isAggreedTerms, recaptcha);\n } else if (signupPredefinedEmail && verificationHash) { // TODO: need another prop\n Axios.post(\n `${apiURL}/formuser/pretendCreate?master=1`,\n qs.stringify({\n email,\n password,\n name,\n isAgreedTerms: isAggreedTerms ? '1' : '0',\n hash: verificationHash,\n isHIPAA: isHIPAA ? '1' : ''\n }),\n {\n withCredentials: true,\n headers: {\n 'Content-Type': 'application/x-www-form-urlencoded'\n }\n }\n ).then(({ data: resp }) => {\n if (resp && resp.responseCode === 200) {\n onLoginSuccess(resp);\n } else if (resp && resp.errorType) {\n if (resp.errorType === 'E_TYPE_EMAIL') {\n this.setState({ emailError: resp.message });\n }\n\n if (resp?.message === \"Sorry, you can't signup from this country.\") {\n openOFACModal(ofacModalRef, email);\n }\n\n this.setState({ isSignupLoading: false });\n } else if (resp && typeof resp.message === 'string') {\n if (resp?.message?.includes('Name')) {\n return this.setState({ nameError: resp?.message?.trim(), isSignupLoading: false });\n }\n\n // Shitty error handling\n // we need to change api's error results to human readable format.\n const splitted = resp.message.split('-');\n const lastPart = splitted[splitted.length - 1];\n this.setState({ emailError: lastPart.trim(), isSignupLoading: false });\n }\n });\n } else {\n const {\n productType, appName, redirectURL: redirectUrl, fromSACL, initiator\n } = this.props;\n const isProductForm = productType === 'form' ? '1' : '0';\n const encodedEmail = encodeURIComponent(email);\n const encodedPw = encodeURIComponent(password);\n const queryParamsObj = {\n email: encodedEmail,\n password: encodedPw,\n confirm_password: encodedPw,\n disablePasswordConstraints: '1',\n name,\n sendVerification: isProductForm,\n ...(isHIPAA) && { isHIPAA: '1' },\n ...(appName === 'portal-apps' && window) && { jotform_pwa: '1', referrerURL: window.location.href },\n ...(redirectUrl && window) && { redirectUrl },\n ...(initiator && { initiator }),\n saclSignup: fromSACL,\n isAgreedTerms: isAggreedTerms ? '1' : '0'\n };\n Axios.post(`${apiURL}/formuser/register?master=1`,\n objToQueryString(queryParamsObj),\n {\n withCredentials: true,\n headers: {\n 'Content-Type': 'application/x-www-form-urlencoded'\n }\n }).then(({ data: resp }) => {\n if (resp && resp.responseCode === 200) {\n const { content: user } = resp;\n if (window?.JFAppsManager?.isOpenedInPortal()) {\n window.JFAppsManager.userChanged(user);\n }\n\n onLoginSuccess(resp);\n } else if (resp && resp.errorType) {\n if (resp.errorType === 'E_TYPE_EMAIL') {\n let newRespMessage = (resp.message.split(':'));\n newRespMessage = t(`${newRespMessage[0]}${newRespMessage[1] ? ':' : ''}`).concat(newRespMessage[1] ? newRespMessage[1] : '').toString();\n this.setState({ emailError: newRespMessage });\n }\n\n if (resp?.message === \"Sorry, you can't signup from this country.\") {\n openOFACModal(ofacModalRef, email);\n }\n\n this.setState({ isSignupLoading: false });\n }\n });\n }\n });\n };\n\n updateWindowDimensions() {\n this.setState({ screenHeight: window.innerHeight });\n }\n\n // eslint-disable-next-line complexity\n render() {\n const {\n onNavigationChangeRequest, isHIPAA, enforceHIPAARuleSet, includeConfirm, signupButtonText, greetingMessageOnSignupWithEmail,\n showLogoOnSignupWithEmail, shrinkConfirmOnMobile, shrinkConfirmHeight, disableEmail, isSwsoTestVariant, fromSACL\n } = this.props;\n const {\n email, name, emailError, nameError, isAggreedTerms, termsError, isSignupLoading, screenHeight, passwordError, showRecaptcha\n } = this.state;\n\n const jfLogoSource = 'https://cdn.jotfor.ms/assets/img/v4/logo-branding21.png';\n\n const showLoginWarningOption = (this.isEnterpriseEnv && emailError === Texts.EMAIL_ERROR_ENTERPRISE) || emailError === Texts.EMAIL_ERROR;\n\n return (\n
\n
\n {showLogoOnSignupWithEmail && \"Logo\"}\n

{t(greetingMessageOnSignupWithEmail)}

\n {\n (!isEnterprise() || fromSACL)\n && (\n onNavigationChangeRequest(!isSwsoTestVariant ? 'signupOptions' : 'signupWithSocialOpts')}\n >\n \n {t(Texts.OTHER_OPTIONS)}\n \n )\n }\n
\n
\n
\n
\n \n \n {nameError && }\n
\n\n
\n \n \n
\n {emailError ? t(emailError) : null}\n {showLoginWarningOption && (\n <>\n  \n {translationRenderer(Texts.PLEASE_LOGIN)({\n renderer1: text => ( onNavigationChangeRequest('loginOptions')}>{text})\n })}\n \n )}\n
\n
\n\n \n\n {!this.isEnterpriseEnv && (\n
\n
\n \n }\n />\n
\n
\n {termsError ? termsError : null}\n
\n
\n ) }\n {showRecaptcha && (\n
\n this.handleCaptchaSubmit(hash)}\n />\n
\n )}\n \n {isSignupLoading\n ? (\n
\n
\n
\n
\n
\n )\n : t(signupButtonText)}\n \n
\n {t(Texts.ALREADY_HAVE_ACCOUNT)}\n onNavigationChangeRequest('loginOptions')}\n >\n {t(Texts.LOGIN_TEXT)}\n \n
\n
\n
\n \n );\n }\n}\n\nSignupWithEmail.propTypes = {\n onNavigationChangeRequest: func.isRequired,\n onLoginSuccess: func.isRequired,\n apiURL: string.isRequired,\n signupPredefinedEmail: string,\n signupPredefinedName: string,\n disableEmail: bool,\n verificationHash: string,\n productType: string,\n // resourceID: string,\n isHIPAA: bool,\n enforceHIPAARuleSet: bool,\n appName: string,\n forceUser: bool,\n includeConfirm: bool,\n shrinkConfirmOnMobile: bool,\n shrinkConfirmHeight: number,\n user: shape(),\n signupButtonText: string,\n greetingMessageOnSignupWithEmail: string,\n showLogoOnSignupWithEmail: bool,\n buttonNames: shape({\n google: string,\n facebook: string,\n apple: string,\n emailLogin: string,\n emailSignup: string\n }),\n changeActiveScreen: func,\n ofacModalRef: object,\n builderShowSlides: func,\n redirectURL: string,\n fromSACL: bool,\n initiator: string,\n isSwsoTestVariant: bool\n};\n\nSignupWithEmail.defaultProps = {\n productType: 'form',\n // resourceID: '',\n signupPredefinedEmail: '',\n signupPredefinedName: '',\n disableEmail: false,\n verificationHash: '',\n isHIPAA: false,\n enforceHIPAARuleSet: false,\n appName: '',\n forceUser: false,\n includeConfirm: false,\n user: null,\n signupButtonText: Texts.CREATE_MY_ACCOUNT,\n greetingMessageOnSignupWithEmail: Texts.SIGN_UP_EMAIL,\n showLogoOnSignupWithEmail: false,\n shrinkConfirmOnMobile: false,\n shrinkConfirmHeight: 750,\n buttonNames: {},\n changeActiveScreen: f => f,\n ofacModalRef: null,\n builderShowSlides: f => f,\n redirectURL: '',\n fromSACL: false,\n initiator: '',\n isSwsoTestVariant: false\n};\n\nexport default SignupWithEmail;\n","function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nimport * as React from \"react\";\nconst SvgOneloginLogoIcon = props => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 32 32\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M2 15.993C2 8.267 8.277 2 16 2c7.736 0 14 6.267 14 13.993C30 23.733 23.736 30 16 30S2 23.733 2 15.993Zm15.685 5.361c.265 0 .403-.138.403-.402h-.013v-9.06c0-.19-.063-.328-.327-.328h-4.905c-.264 0-.403.138-.403.403v2.516c0 .265.139.403.403.403h1.924v6.066c0 .264.139.402.403.402h2.515Z\",\n fill: \"#1C1F2A\",\n style: {\n mixBlendMode: \"darken\"\n }\n}));\nexport default SvgOneloginLogoIcon;","function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nimport * as React from \"react\";\nconst SvgPrivateLogoIcon = props => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 32 32\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M7.75 26.5a6.752 6.752 0 0 1-2.24-13.12c-.005-.127-.01-.254-.01-.38 0-4.144 3.356-7.5 7.5-7.5 2.78 0 5.203 1.509 6.502 3.759A4.477 4.477 0 0 1 22 8.499a4.501 4.501 0 0 1 4.2 6.122A6 6 0 0 1 25 26.5H7.75Zm2.25-11a4 4 0 0 0 4.537 3.963c.29-.038.434-.058.526-.045a.568.568 0 0 1 .23.078c.082.045.161.125.32.284l3.407 3.407c.116.115.173.173.24.214.06.037.125.064.193.08.077.018.159.018.322.018h1.158c.373 0 .56 0 .703-.072a.666.666 0 0 0 .29-.291c.074-.143.074-.33.074-.703v-1.158c0-.163 0-.245-.019-.322a.665.665 0 0 0-.08-.192c-.04-.068-.099-.125-.214-.24l-3.407-3.408c-.159-.159-.239-.238-.284-.32a.568.568 0 0 1-.078-.23c-.013-.092.007-.236.046-.526A4 4 0 1 0 10 15.5Zm2.666 0a1.333 1.333 0 1 0 2.667 0 1.333 1.333 0 0 0-2.667 0Z\",\n fill: \"#6C73A8\",\n style: {\n mixBlendMode: \"darken\"\n }\n}));\nexport default SvgPrivateLogoIcon;","import auth0 from './auth0-logo-icon.svg';\nimport azurad from './azure-logo-icon.svg';\nimport google from './google-logo-icon.svg';\nimport windowsad from './microsoft-logo-icon.svg';\nimport okta from './okta-logo-icon.svg';\nimport onelogin from './onelogin-logo-icon.svg';\nimport custom from './private-logo-icon.svg';\n\nexport const idpLogos = {\n auth0,\n azurad,\n google,\n windowsad,\n okta,\n onelogin,\n custom\n};\n","/* eslint-disable @jotforminc/no-native-button */\nimport React from 'react';\nimport '../styles/ssoLoginOptions.scss';\n\nimport { t } from '@jotforminc/translation';\nimport { handleCustomNavigation } from '@jotforminc/utils';\nimport { Texts } from '@jotforminc/constants';\nimport classNames from 'classnames';\nimport {\n arrayOf,\n bool,\n func,\n shape,\n string\n} from 'prop-types';\nimport { fetchUser } from '../api';\nimport { idpLogos } from '../assets/idp-icons/icons';\n\nconst openPopupWindowCentered = (url, windowName, w, h) => {\n const x = window.outerWidth / 2 + window.screenX - w / 2;\n const y = window.outerHeight / 2 + window.screenY - h / 2;\n let features = 'toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=no, resizable=no, copyhistory=no, width=';\n features = features.concat(w, ', height=').concat(h, ', top=').concat(y, ', left=').concat(x);\n return handleCustomNavigation(url, windowName, true, features);\n};\n\n/**\n * Get the logo of the IDP provider.\n */\nconst getIdpLogo = idpName => {\n if (Object.prototype.hasOwnProperty.call(idpLogos, idpName)) {\n return idpLogos[idpName];\n }\n return idpLogos.custom;\n};\n\n/**\n * SSO login success redirection for popup flows\n */\nconst SUCCESS_REDIRECT = encodeURIComponent('/sso/login-success.html');\n\nconst SSOLoginOptions = ({\n fromSACL,\n ssoLoginOptions,\n onSSOLoginSuccess,\n onSSOLoginFail\n}) => {\n const compact = ssoLoginOptions.length > 1;\n\n const onSSOLoginClick = configKey => () => {\n const currentPage = encodeURIComponent(window.location.href);\n const url = `${window.location.origin}/sso?SSOConfigKey=${configKey || ''}`;\n\n if (fromSACL) {\n const loginPopup = openPopupWindowCentered(`${url}&rp=${SUCCESS_REDIRECT}`, 'loginPopup', 400, 500);\n\n const id = setInterval(() => {\n try {\n if (loginPopup.closed) {\n clearInterval(id);\n fetchUser().then(result => {\n if (result?.content?.account_type?.name === 'GUEST') {\n // Fail state, weird check because Form User may not have\n // account_type. If a downstream issue occurs in the SSO\n // service provider the login will fail.\n onSSOLoginFail();\n } else {\n // Success state\n onSSOLoginSuccess(result);\n }\n }).catch(() => {\n onSSOLoginFail();\n });\n }\n } catch (error) {\n // mainly for CORS errors\n }\n }, 500);\n } else {\n handleCustomNavigation(`${url}&rp=${currentPage}`, '_self', true);\n }\n };\n\n return (\n <>\n {/* TODO: add translations */}\n {compact &&

Log in with

}\n
    \n {ssoLoginOptions.map(({ name, configKey, idpName }) => {\n const IDPLogo = getIdpLogo(idpName);\n return (\n
  • \n \n \n {\n compact ? (\n {name}\n ) : (\n \n {/* TODO: add translations */}\n Log in with\n {name}\n \n )\n }\n \n
  • \n );\n })}\n
\n
\n {t(Texts.OR_KEY)}\n
\n \n );\n};\n\nSSOLoginOptions.propTypes = {\n fromSACL: bool.isRequired,\n ssoLoginOptions: arrayOf(shape({\n name: string,\n logoURL: string,\n configKey: string,\n idpName: string\n })).isRequired,\n onSSOLoginSuccess: func.isRequired,\n onSSOLoginFail: func.isRequired\n};\n\nexport default SSOLoginOptions;\n","/* eslint-disable @jotforminc/no-native-button */\n/* eslint-disable complexity,react/sort-comp */\nimport React, { Component } from 'react';\nimport {\n bool,\n string,\n func,\n arrayOf,\n shape\n} from 'prop-types';\nimport ReCAPTCHA from 'react-google-recaptcha';\nimport classNames from 'classnames';\nimport { t } from '@jotforminc/translation';\nimport { RequestLayer, Interceptors, getAPIURL } from '@jotforminc/request-layer';\nimport { isEnterprise } from '@jotforminc/enterprise-utils';\nimport { Texts } from '@jotforminc/constants';\nimport { listenEnter, getUrlParameter, handleCustomNavigation } from '@jotforminc/utils';\n\nimport BackIcon from '../temporary-duplicate/assets/svg/icon_back.svg';\nimport ErrorAlert from './ErrorAlert';\nimport SocialButtons from './SocialButtons';\nimport FacebookButton from './FacebookButton';\nimport GoogleButton from './GoogleButton';\nimport MicrosoftButton from './MicrosoftButton';\nimport { errorNormalizer } from '../utils/helper';\nimport SSOLoginOptions from './SSOLoginOptions';\nimport { EMAIL_ADDRESS, ENTER_EMAIL_ADDRESS, OR_LOGIN_WITH } from '../constants';\n\nconst invalidInputText = Texts.FIELD_REQUIRED;\nconst invalidEmailInputText = Texts.EMAIL_FIELD_REQUIRED;\nconst invalidPassInputText = Texts.PASS_FIELD_REQUIRED;\nconst userIsSSOError = Texts.USER_IS_SSO_ERROR;\nconst unexpectedErrorText = Texts.ERROR_TRY_AGAIN;\n\nexport default class LoginOptions extends Component {\n constructor(props) {\n super(props);\n this.isEnterprise = isEnterprise();\n const emailParam = getUrlParameter('username');\n const skipEmailVerification = getUrlParameter('skipEmailVerification');\n const { ssoLoginOptions } = props;\n this.state = {\n email: (!emailParam || emailParam === '') ? props.loginPredefinedEmail : emailParam,\n pass: '',\n emailValid: true,\n ssoErrorMessage: '',\n passValid: true,\n loginErrorMsg: '',\n recaptcha: false,\n isLoginLoading: false,\n showSalesforceLogin: false,\n isSSOControlStep: this.isEnterprise && ssoLoginOptions.length > 0 && !skipEmailVerification,\n isSSOControlLoading: false\n };\n this.layer = new RequestLayer(getAPIURL(), {\n interceptorConfig: {\n teamID: global.teamID,\n customResponseInterceptors: [Interceptors.requestManagerResponseNormalizer]\n }\n });\n\n this.socialLoginParams = {\n facebook: getUrlParameter('facebook') === '1',\n google: getUrlParameter('google') === '1',\n microsoft: getUrlParameter('microsoft') === '1'\n };\n\n this.emailInputRef = React.createRef();\n this.passInputRef = React.createRef();\n }\n\n componentDidMount() {\n const { registerMsAbTestAction, isOnboardingFlow } = this.props;\n if (!isOnboardingFlow && window.innerWidth > 480) {\n this.emailInputRef.current?.focus();\n }\n registerMsAbTestAction({ action: 'seen', target: 'loginOptions' });\n\n this.setState({\n showSalesforceLogin: !this.isEnterprise\n });\n }\n\n componentDidUpdate(prevProps) {\n const { externalErrorMessage } = this.props;\n\n if (externalErrorMessage !== prevProps.externalErrorMessage && this.isEnterprise) {\n // eslint-disable-next-line react/no-did-update-set-state\n this.setState({\n loginErrorMsg: externalErrorMessage\n });\n }\n }\n\n /**\n * TODO: This is temp solution.\n * For more information please contact the commit owner.\n */\n get showForgotPassword() {\n const {\n isSSOControlStep\n } = this.state;\n\n return !isSSOControlStep;\n }\n\n validate = input => {\n const { [input]: value } = this.state;\n this.setState({\n [`${input}Valid`]: !!value // inputs shouldn't be empty\n });\n };\n\n handleInputChange = input => e => {\n const { value } = e.target;\n const { setExternalErrorMessage } = this.props;\n this.setState({ [input]: value }, () => {\n this.validate(input);\n });\n setExternalErrorMessage('');\n this.setState({\n loginErrorMsg: ''\n });\n };\n\n validateAll = async (fields = ['email', 'pass']) => {\n await Promise.all(fields.map(input => {\n return Promise.resolve(this.validate(input));\n }));\n const { emailValid, passValid } = this.state;\n if (!emailValid) {\n this.emailInputRef.current.focus();\n } else if (!passValid) {\n this.passInputRef.current.focus();\n }\n return Promise.resolve(emailValid && passValid);\n };\n\n handleLogin = async (event, recaptcha) => {\n const validationResult = await this.validateAll();\n this.setState({ isLoginLoading: true });\n if (!validationResult) {\n this.setState({ isLoginLoading: false });\n return;\n }\n const { onLoginClick } = this.props;\n const { email, pass } = this.state;\n const [success = true, { message = 'An error occured.', data: { error } = {} } = {}, tfaResponse = false] = await onLoginClick(email, pass, recaptcha) || [];\n\n if (!success && !tfaResponse) {\n this.setState({ isLoginLoading: false });\n const errorMessage = error ? error : message;\n\n if (errorMessage === 'REQUIRE_CAPTCHA') {\n return this.setState({ recaptcha: true });\n }\n\n if (error?.toLowerCase()?.includes('suspended')) {\n return handleCustomNavigation('/account-suspended', '_self', true);\n }\n\n this.setState({\n loginErrorMsg: errorMessage,\n recaptcha: false\n });\n }\n };\n\n /**\n * Check if the user with username/email is an SSO user,\n * if so do not allow them to the password view, if not\n * show the password field.\n */\n handleSSOControl = async () => {\n const validationResult = await this.validateAll(['email']);\n this.setState({\n ssoErrorMessage: '',\n isSSOControlLoading: true\n });\n if (!validationResult) {\n this.setState({ isSSOControlLoading: false });\n return;\n }\n const { email } = this.state;\n const { getUserSSOStatus } = this.props;\n try {\n const { content: { isSSOUser } } = await getUserSSOStatus(email);\n if (isSSOUser) {\n this.setState({\n ssoErrorMessage: userIsSSOError\n });\n } else {\n // Ask the user for a password.\n this.setState({\n isSSOControlStep: false\n });\n }\n } catch (e) {\n if (e.message === 'Rate limit exceeded') {\n // Gracefully degrade and show password\n // if we hit rate limit.\n this.setState({\n isSSOControlStep: false\n });\n } else {\n // Set to an error state.\n // for actual errors.\n this.setState({\n emailValid: false,\n ssoErrorMessage: unexpectedErrorText\n });\n }\n } finally {\n // By this point whether or not we had an error loading\n // has finished.\n this.setState({ isSSOControlLoading: false });\n }\n };\n\n handleKeyDown = e => {\n const {\n isSSOControlStep,\n isLoginLoading,\n isSSOControlLoading\n } = this.state;\n // To avoid users spamming enter.\n const loading = isLoginLoading || isSSOControlLoading;\n if (!loading) {\n return listenEnter(e, isSSOControlStep\n ? this.handleSSOControl\n : this.handleLogin\n );\n }\n };\n\n /**\n * Get the error message to be shown under\n * email/username input, if there is any.\n */\n get emailInputErrorMessage() {\n const {\n isSSOControlStep,\n loginErrorMsg,\n emailValid,\n ssoErrorMessage\n } = this.state;\n if (isSSOControlStep && loginErrorMsg) {\n // Otherwise this would be displayed under password which isn't\n // visible.\n return loginErrorMsg;\n }\n\n if (!emailValid) {\n return t(invalidEmailInputText);\n }\n\n if (ssoErrorMessage) {\n return t(ssoErrorMessage);\n }\n\n return '';\n }\n\n redirectToEnterpriseLogin() {\n try {\n if (window.opener.isSalesforceAdmin) {\n // https://stackoverflow.com/questions/71154547/window-opener-reference-lost-in-firefox\n // eslint-disable-next-line @jotforminc/no-location-href-assignment\n window.location.href = '/platform/auth?registrationType=oauth&client_id=Salesforce&access_type=full&auth_type=login&popup=1&newEnterpriseStarter=1';\n } else {\n // eslint-disable-next-line @jotforminc/no-location-href-assignment\n window.location.href = '/platform/auth?registrationType=oauth&client_id=Salesforce&access_type=full&auth_type=login&popup=1&contactAdminError=1';\n }\n } catch (e) {\n // eslint-disable-next-line no-console\n console.error(e);\n }\n }\n\n render() {\n const {\n onNavigationChangeRequest,\n onSalesforceLoginClick,\n onGoogleLoginClick,\n onFBLoginClick,\n onMicrosoftLoginClick,\n preventBack,\n thereSocialError,\n thereErrorMessage,\n loginButtonText,\n loginWelcomeText,\n loginDescriptionText,\n onAppleLoginClick,\n hideSignUp,\n greetingDescription,\n registerMsAbTestAction,\n logoSource,\n readonlyEmail,\n showJotformLogo,\n showEnterpriseLogin,\n isSwsoTestVariant,\n forceShowBack,\n fromSACL,\n ssoLoginOptions,\n onSSOLoginSuccess,\n onSSOLoginFail,\n isOnboardingFlow,\n isOnboardingTestVariantReversed\n } = this.props;\n\n const {\n email,\n pass,\n passValid,\n loginErrorMsg,\n recaptcha,\n isLoginLoading,\n showSalesforceLogin,\n isSSOControlStep,\n isSSOControlLoading\n } = this.state;\n\n const emailErrorMessage = this.emailInputErrorMessage;\n const loginLogoSource = this.isEnterprise ? logoSource : 'https://www.jotform.com/resources/assets/logo-nb/jotform-logo-white-400x100.png';\n const showLogo = (this.isEnterprise && loginLogoSource) || (!this.isEnterprise && showJotformLogo);\n\n return (\n
\n {showLogo && \"Logo\"}\n {loginWelcomeText && loginWelcomeText.length > 0 && (

{t(loginWelcomeText)}

)}\n {(greetingDescription || loginDescriptionText) && (

{t(greetingDescription || loginDescriptionText)}

)}\n
\n {!this.isEnterprise\n && (\n <>\n
\n {t(Texts.LOGIN_WITH)}\n
\n {Object.values(this.socialLoginParams).every(q => q === false) && (\n \n )}\n {this.socialLoginParams.facebook && (\n onFBLoginClick()}\n />\n )}\n {this.socialLoginParams.google && (\n onGoogleLoginClick()}\n />\n )}\n {this.socialLoginParams.microsoft && (\n onMicrosoftLoginClick()}\n />\n )}\n
\n
\n {thereSocialError\n && (\n
\n {t(errorNormalizer(thereErrorMessage))}\n
\n )}\n
{!isOnboardingFlow ? t(Texts.OR_KEY) : t(OR_LOGIN_WITH)}
\n \n )}\n
\n {\n ssoLoginOptions.length > 0 && (\n \n )\n }\n
\n \n \n
\n {emailErrorMessage}\n
\n
\n {!isSSOControlStep\n && (\n
\n \n \n
\n {passValid ? null : t(invalidInputText)}\n
\n {!hideSignUp && this.showForgotPassword && (\n onNavigationChangeRequest('forgotPassword')}\n id=\"forgotPasswordButton\"\n >\n {t(Texts.FORGOT_PASSWORD)}\n \n )}\n {loginErrorMsg ? (\n \n ) : null}\n
\n )}\n\n {recaptcha ? (\n
\n this.handleLogin(null, recaptcha_)} />\n
\n ) : null}\n\n {isSSOControlStep ? (\n \n {isSSOControlLoading\n ? (\n
\n
\n
\n
\n
\n )\n : t('Continue')}\n \n ) : (\n \n {isLoginLoading\n ? (\n
\n
\n
\n
\n
\n )\n : t(loginButtonText)}\n \n )}\n {hideSignUp && this.showForgotPassword && (\n
\n onNavigationChangeRequest('forgotPassword')}\n id=\"forgotPasswordButton\"\n >\n {t(Texts.FORGOT_PASSWORD)}\n \n
\n )}\n {!isOnboardingFlow && !showEnterpriseLogin && !hideSignUp && (\n
\n {t(Texts.DONT_HAVE_ACCOUNT)}\n {\n let upcomingScreen = !isSwsoTestVariant ? 'signupOptions' : 'signupWithSocialOpts';\n if (this.isEnterprise && !fromSACL) {\n upcomingScreen = 'signupWithEmail';\n }\n onNavigationChangeRequest(upcomingScreen);\n }}\n >\n {t(Texts.SIGN_UP)}\n \n
\n )}\n {showEnterpriseLogin && (\n
\n {t(Texts.ARE_YOU_JOTFORM_ENTERPRISE_USER)}\n this.redirectToEnterpriseLogin()}\n >\n {t(Texts.LOGIN_TO_JOTFORM_ENTERPRISE)}\n \n
\n )}\n
\n {!preventBack && (\n onNavigationChangeRequest(!isSwsoTestVariant ? 'signupOptions' : 'signupWithSocialOpts')}\n type=\"button\"\n >\n \n {t(Texts.BACK_KEY)}\n \n )}\n
\n
\n );\n }\n}\n\nLoginOptions.propTypes = {\n onNavigationChangeRequest: func.isRequired,\n onSalesforceLoginClick: func.isRequired,\n onGoogleLoginClick: func.isRequired,\n onFBLoginClick: func.isRequired,\n onMicrosoftLoginClick: func.isRequired,\n onAppleLoginClick: func,\n onLoginClick: func.isRequired,\n loginPredefinedEmail: string,\n preventBack: bool,\n thereSocialError: bool,\n externalErrorMessage: string,\n setExternalErrorMessage: func,\n loginButtonText: string,\n loginWelcomeText: string,\n loginDescriptionText: string,\n greetingDescription: string,\n registerMsAbTestAction: func,\n logoSource: string,\n readonlyEmail: bool,\n showJotformLogo: bool,\n showEnterpriseLogin: bool,\n hideSignUp: bool,\n isSwsoTestVariant: bool,\n forceShowBack: bool,\n fromSACL: bool,\n ssoLoginOptions: arrayOf(shape({\n name: string,\n logoURL: string,\n configKey: string,\n idpName: string\n })),\n onSSOLoginSuccess: func,\n onSSOLoginFail: func,\n thereErrorMessage: string,\n isOnboardingFlow: bool,\n getUserSSOStatus: func,\n isOnboardingTestVariantReversed: bool\n};\n\nLoginOptions.defaultProps = {\n loginPredefinedEmail: '',\n preventBack: false,\n thereSocialError: false,\n externalErrorMessage: '',\n setExternalErrorMessage: f => f,\n loginButtonText: Texts.LOGIN_CAPITAL,\n loginWelcomeText: Texts.WELCOME_BACK,\n loginDescriptionText: '',\n onAppleLoginClick: f => f,\n greetingDescription: '',\n registerMsAbTestAction: f => f,\n logoSource: '',\n readonlyEmail: false,\n showJotformLogo: false,\n showEnterpriseLogin: false,\n hideSignUp: false,\n isSwsoTestVariant: false,\n forceShowBack: false,\n fromSACL: false,\n ssoLoginOptions: [],\n onSSOLoginSuccess: f => f,\n onSSOLoginFail: f => f,\n thereErrorMessage: Texts.ERROR_TRY_AGAIN,\n isOnboardingFlow: false,\n getUserSSOStatus: f => f,\n isOnboardingTestVariantReversed: false\n};\n","import React, { Component } from 'react';\nimport { string, func, bool } from 'prop-types';\nimport Axios from 'axios';\nimport { t } from '@jotforminc/translation';\nimport { Texts } from '@jotforminc/constants';\nimport { listenEnter } from '@jotforminc/utils';\nimport cx from 'classnames';\n\nimport { IconChevronLeft } from '@jotforminc/svg-icons';\nimport BackIcon from '../temporary-duplicate/assets/svg/icon_back3.svg';\nimport ErrorAlert from './ErrorAlert';\n\nconst invalidInputText = Texts.FIELD_REQUIRED;\n\nexport default class ForgotPassword extends Component {\n constructor(props) {\n super(props);\n this.state = {\n username: '',\n usernameValid: true,\n resetErrorMessage: ''\n };\n }\n\n handleInputChange = input => e => {\n const { value } = e.target;\n this.setState({ [input]: value }, () => {\n this.validate(input);\n });\n };\n\n handleResetClick = async () => {\n const { onNavigationChangeRequest } = this.props;\n const validationResult = await this.validate('username');\n if (!validationResult) return;\n\n const result = await this.sendEmail()\n .catch(err => {\n // eslint-disable-next-line no-console\n console.error(err);\n this.setState({\n resetErrorMessage: 'An error occurred. Please try again'\n });\n });\n if (result) {\n onNavigationChangeRequest('resetSuccess');\n }\n };\n\n handleKeyDown = e => listenEnter(e, this.handleResetClick);\n\n sendEmail = () => {\n const { apiURL } = this.props;\n const { username } = this.state;\n return Axios.get(`${apiURL}/passwordreset?resetData=${encodeURIComponent(username)}`);\n };\n\n validate = input => {\n const { [input]: value } = this.state;\n this.setState({\n [`${input}Valid`]: !!value // inputs shouldn't be empty\n });\n return Promise.resolve(!!value);\n };\n\n render() {\n const { onNavigationChangeRequest, isOnboardingFlow } = this.props;\n\n const {\n username,\n usernameValid,\n resetErrorMessage\n } = this.state;\n\n const inputValid = usernameValid && !resetErrorMessage;\n return (\n
\n {isOnboardingFlow && (\n
\n onNavigationChangeRequest('loginOptions')} type=\"button\"\n id=\"returnLoginBox\"\n >\n \n {t(Texts.GO_BACK_TEXT)}\n \n
\n )}\n

{t(Texts.FORGOT_PASSWORD)}

\n
\n
\n
\n \n \n
\n {usernameValid ? null : t(invalidInputText)}\n
\n {resetErrorMessage && }\n
\n \n {t(Texts.SEND_INSTRUCTIONS)}\n \n
\n {!isOnboardingFlow && (\n onNavigationChangeRequest('loginOptions')} type=\"button\"\n id=\"returnLoginBox\"\n >\n \n {t(Texts.GO_BACK_TEXT)}\n \n )}\n
\n
\n );\n }\n}\n\nForgotPassword.propTypes = {\n onNavigationChangeRequest: func.isRequired,\n isOnboardingFlow: bool,\n apiURL: string.isRequired\n};\n\nForgotPassword.defaultProps = {\n isOnboardingFlow: false\n};\n","import Styled from 'styled-components';\n\nexport const ScPieTimerWrapper = Styled.div`\n display: flex;\n align-items: center;\n\n div {\n margin-right: 6px;\n html[dir=\"rtl\"] & {\n margin-right: 0;\n margin-left: 6px;\n }\n #loader {\n fill: #fff;\n }\n\n svg {\n width: 20px;\n display: block;\n border-radius: 50%;\n border: 2px solid #cfd8dc;\n }\n }\n`;\n","import React, {\n useState,\n forwardRef,\n useRef,\n useImperativeHandle,\n useEffect\n} from 'react';\nimport { func } from 'prop-types';\nimport { Hooks } from '@jotforminc/uikit';\nimport { ScPieTimerWrapper } from './sc/scPieTimer';\n\nexport const PieTimer = forwardRef(({\n startCallback,\n stopCallback\n}, ref) => {\n const [alpha, setAlpha] = useState(0);\n const [counter, setCounter] = useState(0);\n const interval = useRef(null);\n const counterRef = useRef(null);\n\n const calculateTimeInterval = (totalTime = 60) => {\n return (totalTime / 360) * 1000;\n };\n\n Hooks.useEffectIgnoreFirst(() => {\n if (counter > 0) {\n counterRef.current = setTimeout(() => setCounter(prev => prev - 1), 1000);\n return;\n }\n stopCallback();\n return () => clearInterval(interval.current);\n }, [counter]);\n\n useEffect(() => {\n if (alpha >= 359) clearInterval(interval.current);\n }, [alpha]);\n\n useImperativeHandle(ref, () => ({\n start: (duration, totalTime) => {\n startCallback();\n clearTimeout(counterRef.current);\n const initialAlpha = totalTime ? 360 - (duration / totalTime) * 360 : 0;\n setAlpha(initialAlpha);\n setCounter(Number(duration));\n clearInterval(interval.current);\n interval.current = setInterval(() => {\n setAlpha(prev => prev + 1);\n }, calculateTimeInterval(totalTime));\n },\n stop: () => {\n stopCallback();\n clearInterval(interval.current);\n clearTimeout(counterRef.current);\n }\n }));\n\n return (\n \n
\n \n \n \n {alpha < 359 && (\n <>\n \n 180) ? 1 : 0} 1 ${Math.sin((alpha * Math.PI) / 180) * 10} ${Math.cos((alpha * Math.PI) / 180) * -10} z`}\n id=\"loader\"\n transform=\"translate(10,10)\"\n />\n \n )}\n \n
\n

\n {`${Math.floor(counter / 60)}`.padStart(2, '0')}\n :\n {`${counter % 60}`.padStart(2, '0')}\n

\n
\n );\n});\n\nPieTimer.propTypes = {\n startCallback: func,\n stopCallback: func\n};\n\nPieTimer.defaultProps = {\n startCallback: f => f,\n stopCallback: f => f\n};\n","/* eslint-disable react/prop-types */\nimport React from 'react';\nimport ReactVerificationInput from 'react-verification-input';\nimport { listenEnter } from '@jotforminc/utils';\n\nexport const VerificationInput = ({\n validChars = '0-9',\n onCodeChange,\n onEnterPress,\n characterClassName = 'character',\n inputId = 'verificationInput',\n inputType = '',\n handleKeyDown = () => {},\n inputProps = null,\n ...props\n}) => (\n {\n handleKeyDown(e);\n listenEnter(e, onEnterPress);\n },\n ...(inputType ? { inputMode: inputType } : {}),\n type: 'text',\n autoComplete: 'off',\n id: inputId,\n ...(inputProps ? inputProps : {})\n }}\n placeholder=''\n removeDefaultStyles\n autoFocus\n classNames={{\n container: 'container',\n character: characterClassName,\n characterInactive: 'character--inactive',\n characterSelected: 'character--selected'\n }}\n {...props}\n />\n);\n","/* eslint-disable max-len */\nimport React, { forwardRef } from 'react';\nimport Styled from 'styled-components';\nimport { string, bool, func } from 'prop-types';\nimport { t } from '@jotforminc/translation';\n\nimport { IconLockFilled } from '@jotforminc/svg-icons';\n\nexport const ScToggle = Styled.div`\n ${props => (props.squareMode ? `\n padding: 0 8px;\n border-radius: 4px;\n height: 35px;\n background-color: #56687B;\n display: inline-flex;\n align-items: center;`\n : `\n width: 48px;\n height: 24px;\n border-radius: 12px;\n background-color: #a0a1b2;`)\n}\n position: relative;\n cursor: pointer;\n\n &:after, &:before {\n content: \"\";\n display: block;\n position: absolute;\n border-radius: ${props => (props.squareMode ? '4px' : '50%')};\n box-sizing: border-box;\n }\n\n &:after {\n ${props => (props.squareMode ? `\n width: 22px;\n height: 22px;\n top: 6px;\n left: 8px;\n border: 1px solid #a3aebb;\n background-image: url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='14' height='20' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1.353 1.742v16.91M7 1.742v16.91m5.647-16.91v16.91' stroke='%23C4CED9' stroke-width='2' fill='none' fill-rule='evenodd' stroke-linecap='square'/%3E%3C/svg%3E\");\n background-size: 10px;\n background-repeat: no-repeat;\n background-position: center;\n html[dir=\"rtl\"] & {\n left: 0;\n right: 8px;\n }\n `\n : `\n box-shadow: 0 0 6px 0 rgba(0, 0, 0, 0.11);\n width: 28px;\n height: 28px;\n top: -2px;\n left: -2px;\n border: 1px solid #f4f4f6;\n html[dir=\"rtl\"] & {\n left: 0;\n right: -2px;\n }\n `)\n}\n background-color: #fff;\n z-index: 1;\n }\n\n /* for loading */\n\n @keyframes spinz { to { transform: rotate(360deg); } }\n @keyframes appearz { to { opacity: 1; } }\n\n &.isLoading:before {\n ${props => (props.squareMode ? `\n width: 100%;\n height: 100%;\n top: 0;\n left: 0;\n background-color: rgba(255, 255, 255, .8);\n background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' display='block' preserveAspectRatio='xMidYMid' viewBox='0 0 100 100'%3E%3Ccircle cx='50' cy='50' r='35' fill='none' stroke='%237b7f88' stroke-dasharray='164.93361431346415 56.97787143782138' stroke-width='10'%3E%3CanimateTransform attributeName='transform' dur='1s' keyTimes='0;1' repeatCount='indefinite' type='rotate' values='0 50 50;360 50 50'/%3E%3C/circle%3E%3C/svg%3E\");\n background-size: 10px;\n background-repeat: no-repeat;\n background-position: center;\n background-size: 20px;`\n : `\n opacity: 0;\n width: 26px;\n height: 26px;\n top: -1px;\n left: -1px;\n border-width: 3px;\n border-style: solid;\n border-color: #a0a1b2 #a0a1b2 #a0a1b2 transparent;\n animation: spinz 1s cubic-bezier(0.49, 0.95, 0.46, 0.08) infinite forwards, appearz .15s 1 forwards .15s;`)\n}\n z-index: 2;\n }\n\n &, &:after, &:before { transition: all .25s ease; }\n`;\n\nconst ScToggleText = Styled.div`\n font-size: 15px;\n font-weight: 500;\n color: #fff;\n opacity: 0;\n transition: opacity .25s ease;\n user-select: none;\n line-height: 1rem;\n\n &:fist-child { opacity: 0; }\n &:last-child { opacity: 1; }\n & + & {\n margin-left: 8px;\n html[dir=\"rtl\"] & {\n margin-left: 0;\n margin-right: 8px;\n }\n }\n`;\n\nconst ScDefaultSizeText = Styled.span`\n opacity: 0;\n font-size: 15px;\n font-weight: 500;\n max-width: 27px;\n`;\n\nconst ScToggleIcon = Styled.div`\n display: flex;\n align-items: center;\n position: relative;\n user-select: none;\n\n & + & {\n margin-left: 8px;\n html[dir=\"rtl\"] & {\n margin-left: 0;\n margin-right: 8px;\n }\n }\n\n // somehow storybook requires svg with/height styling\n & > svg {\n opacity: .5;\n color: #fff;\n width: 18px;\n height: 18px;\n position: absolute;\n top: 50%;\n transform: translateY(-50%);\n }\n\n &:first-of-type > svg { left: 4px; }\n &:last-of-type > svg { right: 4px; }\n\n & > span {\n opacity: 0;\n font-size: 15px;\n font-weight: 500;\n }\n`;\n\nconst ScLine = Styled.button`\n border-width: 0;\n display: flex;\n font-size: 1em;\n line-height: 1.5;\n background-color: transparent;\n padding: 0;\n margin: 0;\n\n .t-content { flex: 1 1 0; }\n .t-label { color: #0A1551; font-weight: ${p => (p.multiline === true ? '700' : '400')}; ${p => (p.isTitleUppercase === true ? 'text-transform: uppercase' : '')}; }\n .t-desc { font-size: .875em; font-weight: 400; color: #6C73A8; }\n .t-desc span,\n .t-label span { font-weight: 700; }\n\n\n &[data-disabled=true] {\n opacity: .5;\n }\n\n /* selected */\n &[data-selected=true] > ${ScToggle} {\n background-color: ${({ branding21 }) => (branding21 ? '#0099FF' : '#4277ff')};\n\n ${ScToggleText}:first-child { opacity: 1; }\n ${ScToggleText}:last-child { opacity: 0; }\n\n &:after {\n ${props => (props.squareMode ? `\n left: calc(100% - 30px);`\n : `\n transform: translateX(25px);`)\n}\n html[dir=\"rtl\"] & {\n ${props => (props.squareMode ? `\n left: 0;\n right: calc(100% - 30px);`\n : `\n transform: translateX(-25px);`)\n}\n }\n }\n ${props => !props.squareMode && '&.isLoading:before { margin-left: 25px; }'}\n }\n\n /* mixed-value */\n &[data-mixed=true] > ${ScToggle} {\n background-color: #7b7f88;\n ${ScToggleText}:first-child { opacity: 0;}\n ${ScToggleText}:last-child { opacity: 0;}\n\n &:after {\n ${props => (props.squareMode ? `\n left: 50%;\n transform: translate(-50%);`\n : '')\n}\n }\n }\n\n /* hover */\n &:not([data-selected=true]):not([data-disabled=true]):hover > ${ScToggle} {\n }\n\n /* focus */\n &:focus { outline: 0; }\n &:focus > ${ScToggle} {\n }\n`;\n\nconst Toggle = forwardRef(({\n text, value, desc, isSelected, onClick, isLoading, isMultiLine, isTitleUppercase, onFieldError, squareMode, onText, offText, isMixed, readOnly, ariaLabel, noTextMode, ...props\n}, ref) => {\n const handleOnClick = e => {\n if (readOnly) return;\n onClick(e);\n };\n const branding21 = true;\n return (\n \n {(text || desc) && (\n
\n {text &&
{text}
}\n {desc &&
{desc}
}\n
\n )}\n \n {(squareMode && !readOnly) && (\n <>\n {t(onText)}\n {t(offText)}\n \n )}\n\n {(squareMode && readOnly)\n && (\n <>\n \n {noTextMode ? {t(onText)} : {t(onText)}}\n \n \n \n {noTextMode ? {t(offText)} : {t(offText)}}\n \n \n \n )}\n \n \n );\n});\n\nToggle.propTypes = {\n text: string,\n value: string,\n desc: string,\n isLoading: bool,\n isSelected: bool,\n isMultiLine: bool,\n isTitleUppercase: bool,\n onClick: func,\n onFieldError: func,\n squareMode: bool,\n isMixed: bool,\n readOnly: bool,\n offText: string,\n onText: string,\n ariaLabel: string,\n noTextMode: bool\n};\n\nToggle.defaultProps = {\n text: '',\n value: '',\n desc: '',\n isLoading: false,\n isSelected: false,\n isMultiLine: false,\n isTitleUppercase: true,\n onClick: f => f,\n onFieldError: f => f,\n squareMode: false,\n offText: 'OFF',\n onText: 'ON',\n isMixed: false,\n readOnly: false,\n ariaLabel: 'toggle button',\n noTextMode: false\n};\n\nexport default Toggle;\n","import styled, { css } from 'styled-components';\n\nconst commonForRadioAndCheck = css`\n width: 16px;\n height: 16px;\n display: block;\n border: 1px solid #a8aab5;\n margin-right: 6px;\n cursor: pointer;\n html[dir=\"rtl\"] & {\n margin-right: 0;\n margin-left: 6px;\n }\n`;\n\nexport const ScRadio = styled.div`\n ${commonForRadioAndCheck}\n border-radius: 50%;\n transition: all .4s ease;\n`;\n\nexport const ScCheckbox = styled.div`\n ${commonForRadioAndCheck}\n position: relative;\n border-radius: 2px;\n transition: all .25s ease;\n\n &:before, &:after {\n display: inline-block;\n content: \"\";\n position: absolute;\n border-radius: 2px;\n background-color: #fff;\n width: 2px;\n opacity: 0;\n transition: all .25s ease;\n }\n\n &:before {\n top: 6px; left: 3px; height: 5px;\n transform: rotate(-45deg);\n }\n\n &:after {\n top: 2px; left: 7px; height: 10px;\n transform: rotate(45deg);\n }\n`;\n\nexport const ScOptionList = styled.ul`\n padding: .75em 0 0;\n margin: 0;\n list-style: none;\n\n li + li { margin-top: ${p => {\n if (p.narrowMargins === true) return '8px';\n return (p.multiline === true) ? '1.5em' : '.75em';\n }}; }\n`;\n\nexport const ScOption = styled.div`\n cursor: pointer;\n display: flex;\n font-size: 1em;\n line-height: 1.5;\n align-items: center;\n\n .optionIcon {\n color: transparent;\n width: 28px;\n height: 28px;\n margin: 0 18px;\n margin-left: auto;\n }\n\n ${p => (p.fillColor && `\n background: #FFFFFF;\n border: 1px solid #BCBDD2;\n box-sizing: border-box;\n border-radius: 4px;\n\n .o-label {\n margin-top: 11px;\n font-size: 16px;\n }\n .o-desc {\n margin-bottom: 14px;\n font-size: 15px;\n }\n\n\n &[data-selected=true] {\n .o-label {\n color: ${p.fillColor};\n }\n background: ${p.backgroundColor};\n border-color: ${p.borderColor};\n }\n\n &[data-selected=true] > svg {\n fill: ${p.fillColor};\n }\n\n &[data-selected=true] > svg > circle {\n fill: ${p.fillColor};\n }\n `)}\n\n .o-label { font-weight: ${p => (p.multiline === true ? '700' : '400')}; }\n .o-desc span,\n .o-label span { font-weight: 700; }\n\n ${ScRadio}, ${ScCheckbox} { flex-shrink: 0; }\n\n &[data-disabled=true] {\n opacity: .5;\n\n & > ${ScRadio}, ${ScCheckbox} { cursor: not-allowed; }\n }\n\n &[data-selected=true] > ${ScRadio} {\n background-color: #4573e3;\n border-color: #4573e3;\n box-shadow: inset 0px 0 0px 3px #dfe8fa;\n }\n @media (hover: hover) {\n &:not([data-selected=true]):not([data-disabled=true]):hover {\n & > ${ScRadio} {\n background-color: rgba(68, 115, 227, 0.3);\n box-shadow: inset 0px 0 0px 3px #fff;\n }\n\n & > ${ScCheckbox} {\n background-color: rgba(68,115,227,0.3);\n border-color: rgba(68,115,227,0.3);\n &:before, &:after { opacity: 1; }\n }\n }\n }\n\n &[data-selected=true] > ${ScCheckbox} {\n background-color: #4573e3;\n border-color: #4573e3;\n\n &:before, &:after { opacity: 1; }\n }\n\n &:focus { outline: 0; }\n &:focus > ${ScRadio} {\n border-color: #4573e3;\n box-shadow: 0px 0 0px 5px #dfe8fa;\n }\n &[data-selected=true]:focus > ${ScRadio} {\n box-shadow: inset 0px 0 0px 3px #dfe8fa, 0px 0 0px 5px #dfe8fa;\n }\n\n &:focus > ${ScCheckbox} {\n border-color: #4573e3;\n box-shadow: 0px 0 0px 5px rgba(68,115,227,0.3);\n }\n\n /* With double line, we increase size for radio/text reatio */\n ${ScRadio} {\n ${p => (p.multiline && `\n width: 18px;\n height: 18px;\n margin-inline-end: 12px;\n `)}\n }\n`;\n","/* eslint-disable react/prop-types */\nimport React, { forwardRef } from 'react';\nimport isEqual from 'lodash/isEqual';\nimport { SelectionGroup as UIKitOptionGroup } from '@jotforminc/uikit';\nimport { IconCheckCircleFilled } from '@jotforminc/svg-icons';\nimport {\n ScOption,\n ScOptionList,\n ScCheckbox,\n ScRadio\n} from './StyledComponents';\n\n// eslint-disable-next-line react/prop-types\nexport const Option = ({\n option: {\n text, value, description, desc, icon, fillColor, backgroundColor, borderColor, disabled: optionDisabled, isSelected: optionSelected\n }, isSelected, disabled, isMultiSelect, isMultiLine, children, onClick, className, useMouseDown = false\n}) => {\n const clickProps = { [useMouseDown ? 'onMouseDown' : 'onClick']: onClick };\n return (\n \n {icon || (isMultiSelect ? : )}\n
\n
{text}
\n
{description || desc}
\n {children}\n
\n {icon && }\n \n );\n};\n\nconst OptionGroup = forwardRef((props, ref) => {\n const {\n isMultiSelect, isMultiLine, disabled, narrowMargins, className, containerRendererProps\n } = props;\n\n return (\n (\n \n {children}\n \n )}\n OptionRenderer={optionProps => (\n \n )}\n {...props}\n />\n );\n});\n\nexport default React.memo(OptionGroup, (prev, next) => {\n if (isEqual(prev.options, next.options)) {\n return true;\n }\n return false;\n});\n","import React from 'react';\nimport { t } from '@jotforminc/translation';\nimport {\n loadJS,\n initGoogleSignin,\n initFBSignin,\n initAppleSignin,\n randomString\n} from '@jotforminc/utils';\nimport { twoFactorTypeKeys } from '@jotforminc/constants';\n\nimport { IconMessageFilled, IconScanFilled } from '@jotforminc/svg-icons';\n\n// import SVGEmailMethod from '../assets/svg/emailMethod.svg';\n\nimport GoogleIcon from '../assets/svg/icon_gl.svg';\nimport FBIcon from '../assets/svg/icon_fb.svg';\nimport AppleIcon from '../assets/svg/icon_apple_white.svg';\n\nexport const USER_TYPES = {\n ADMIN: 'ADMIN'\n};\n\n/* eslint-disable max-len */\nexport const TEXTS = {\n ENABLE_2FA_TITLE: 'Enable Two-Factor Authentication (2FA)',\n DISABLE_2FA_TITLE: 'Disable Two-Factor Authentication (2FA)',\n TWO_FACTOR_DESCRIPTION: \"Protect your account with additional security by enabling two-factor authentication for [1[{companyName}]] logins. You'll be required to enter both your password and an authentication code to sign in.\",\n LEARN_MORE: 'Learn More',\n AUTHENTICATION_METHODS: 'Authentication Methods',\n ENABLE_AN_AUTHENTICATOR_APP: 'Enable an Authenticator App',\n PRIMARY_METHOD: 'Primary Method',\n SET_PRIMARY: 'Set as Primary',\n PHONE_NUMBER_AUTHENTICATION: 'Text Authentication',\n EMAIL_AUTHENTICATION: 'Email Authentication',\n RECOVERY_CODES: 'Recovery Codes',\n GENERATE_NEW_CODES: 'Generate new codes',\n GENERATE_RECOVERY_CODES: 'Generated Recovery Codes',\n CANT_DISABLE_PRIMARY: 'This method is primary. You can\\'t disable it.',\n CANT_ENABLE_TEXT_AUTHENTICATION: 'This method is available for paid users. Please upgrade your account to enable it.',\n CANT_DISABLE_MANDATORY: 'This method is mandatory. You can\\'t disable it.',\n SETTING_TITLE: 'Two-Factor Authentication',\n AUTHAPP_SCANQRCODE_INFO: 'This method requires you to install a third-party authenticator app (e.g., Google Authenticator, Authy, Duo).',\n LATEST_RECOVERY_CODES: 'Latest recovery codes generated: From [1[{location}]] on [2[{date}]] at [3[{time}]]',\n WAS_NOT_YOU: 'If this activity wasn\\'t you, generate new codes immediately in order to invalidate the previous ones.',\n USED_ALL: 'You have [1[used all of your recovery codes]], hence they are invalid. Please generate new ones in order to use recovery codes as a 2FA method for your Jotform logins.',\n SELECT_A_VERIFICATION_METHOD: 'Select a method to receive the authentication code',\n // SEND_A_CODE_TO_MY_PHONE_NUMBER: 'Text the authentication code to my [1[phone number]]',\n // SEND_ME_AN_EMAIL: 'Email the authentication code to my [1[email address]]',\n // SEND_ME_AN_AUTHENTICATOR_APP: 'Use an [1[Authentication app]] to receive the authentication code',\n AUTHENTICATOR_APP: 'Authenticator App',\n AUTHENTICATOR_APP_DESCRIPTION: 'Set up an authenticator app to receive verification codes from the authenticator app on your mobile device.',\n YOUR_RECOVERY_CODES: 'Your recovery codes',\n SMS_LABEL: 'Text a code',\n SMS_DESCRIPTON: 'Send the code to my mobile phone',\n EMAIL_LABEL: 'Email',\n EMAIL_DESCRIPTON: 'Send the code to my email address',\n APP_LABEL: 'Use an app',\n APP_DESCRIPTON: 'Use an authenticator app to receive the code',\n NEXT: 'NEXT',\n BACK: 'BACK',\n DOWNLOAD: 'DOWNLOAD',\n COPY: 'COPY',\n COPIED: 'COPIED',\n DONE: 'DONE',\n DISABLE: 'DISABLE',\n CANCEL: 'CANCEL',\n CLOSE: 'CLOSE',\n ENTER_YOUR_PHONE_NUMBER: 'Enter your mobile phone number',\n PLEASE_ENTER_PHONE: 'Please enter your mobile phone number to enable 2FA. [1[companyName]] will send you a six-digit verification code.',\n PHONE_INPUT_PLACEHOLDER: 'Enter phone number',\n ENTER_YOUR_VERIFICATION_CODE: 'Authenticate your [1[method]]',\n PLEASE_ENTER: {\n [twoFactorTypeKeys.sms]: \"We've sent an authentication code to [1[receiver]]. Please check your messages and enter the six-digit code to enable 2FA\"\n },\n NO_CODE: 'No code?',\n SEND_AGAIN: 'Send again',\n JOTFORM_WILL_SEND: 'A new verification code has been sent to your [1[{targetType}]].',\n TEXT_MESSAGE_ENABLED: \"You've successfully enabled 2FA.\",\n TEXT_MESSAGE_ENABLED_DESC: \"From now on, you'll be asked to enter an authentication code after your [1[companyName]] login.\",\n NEW_RECOVERY_CODES_GENERATED: 'Your new recovery codes are now generated.',\n YOUR_RECOVERY_CODES_DESC: 'Please save and secure these codes down below. You can use these codes for [1[companyName]] Logins in the event you cannot reach to your mobile phone or email address. Your previously generated codes are now invalidated.',\n ERROR_BLANK_PHONE: 'Phone number cannot be blank.',\n ERROR_BLANK_VERIFICATION_CODE: 'Code cannot be blank.',\n ERROR_INVALID_PHONE: 'Invalid phone number',\n ERROR_PASSWORD: 'Incorrect password, please try again',\n VERIFY_WITH_GOOGLE: 'Verify with Google',\n ERROR_GENERIC: 'Oops! Something went wrong',\n VERIFY_WITH_FACEBOOK: 'Verify with Facebook',\n VERIFY_WITH_APPLE: 'Verify with Apple',\n VERIFY_TO_CONFIRM: 'Verify it\\'s you to confirm',\n PASSWORD_TO_CONFIRM: 'Enter your password to confirm',\n PASSWORD_PLACEHOLDER: 'Your password',\n CONFIGURE_AUTH_APP: 'Configure the authenticator app',\n AUTH_APP_OPEN_DESCRIPTION: 'Open your authenticator app and add your [1[companyName]] account by scanning the QR code below.',\n MANUAL_KEY_CODE: 'If you can\\'t scan the QR code, manually enter the code below.',\n ENTER_THE_CODE: 'Enter the code',\n DISABLE_WARNING_MESSAGE: 'When you disable 2FA, you\\'ll need to enter only your password to sign into your [1[companyName]] account.',\n VERIFY_EMAIL_ADDRESS: 'Please verify your email address to continue',\n THE_EMAIL_ADDRESS: 'The email for your account is:',\n SENT_TO_VERIFICATION_EMAIL: 'Verification email has been sent to ',\n CHECK_YOUR_EMAIL_ADDRESS: 'Please check your inbox to verify your email address by following the instructions.',\n RESEND_VERIFICATION_EMAIL: 're-send verification email',\n EMAIL_SENT: 'email sent',\n SENDING_EMAIL: 'sending...',\n UNUSED_CODES: 'Unused Codes',\n FORCE_2FA_TOOLTIP: 'You are not allowed to disable 2FA verification. If you need any assistance, kindly get in touch with your admin.',\n\n // Force 2FA\n FORCE_2FA_TITLE: 'Configure Two-Factor Authentication (2FA) Settings',\n FORCE_2FA_DESC: 'Your system administrator has been forced to enable 2FA for you. By following the instructions below, you can configure your settings. If you need assistance, kindly get in touch with your admin.',\n FORCE_2FA_INSTALL_TITLE: 'Install a third-party authenticator app',\n FORCE_2FA_INSTALL_DESC: 'You need to download and install an authenticator app such as Google Authenticator, Authy, or Duo.',\n FORCE_2FA_SCAN_QR_CODE_TITLE: 'Scan QR code or type given code',\n FORCE_2FA_SCAN_QR_CODE_DESC: 'After opening your authenticator app, you need to scan below QR code or type given code to see your verification code.',\n FORCE_2FA_ENTER_TEXT_CODE: 'Enter text code',\n FORCE_2FA_ENTER_TEXT_CODE_DESC: 'Open the authenticator app and enter the text code below.',\n FORCE_2FA_VERIFICATION_INPUT_TITLE: 'Enter the generated code',\n FORCE_2FA_VERIFICATION_INPUT_DESC: 'Enter the generated code by authenticator app to complete your 2FA configuration.',\n SCAN_QR_CODE: 'Scan QR code',\n TYPE_THE_CODE_BELOW: 'Type the Code Below',\n VERIFY: 'Verify'\n};\n\nexport const colors = {\n blue: '#0075E3',\n green: '#007B2A',\n red: '#DD3E3E',\n navy: '#0A1551',\n grey: '#8D8FA8',\n selago: '#DDE1FA',\n blueHover: '#EDF8FF',\n white: '#FFFFFF'\n};\n\nexport const methodOptions = [\n {\n text:\n <>\n \n
\n {t(TEXTS.SMS_LABEL)}\n
\n ,\n description: TEXTS.SMS_DESCRIPTON,\n value: twoFactorTypeKeys.sms\n },\n // {\n // text:\n // <>\n // \n //
\n // {t(TEXTS.EMAIL_LABEL)}\n //
\n // ,\n // description: TEXTS.EMAIL_DESCRIPTON,\n // value: twoFactorTypeKeys.email,\n // },\n {\n text:\n <>\n \n
\n {t(TEXTS.APP_LABEL)}\n
\n ,\n description: TEXTS.APP_DESCRIPTON,\n value: twoFactorTypeKeys.authenticatorApp\n }\n];\n\nexport const flagURL = 'https://cdn.jotfor.ms/assets/img/v4/country-flags/{xx}.svg';\n\nexport const socialButtonConstants = {\n google: {\n color: '#0076FF',\n icon: ,\n text: TEXTS.VERIFY_WITH_GOOGLE,\n handler: ({\n successCallback = f => f,\n errorCallback = f => f\n }) => {\n const googleSignin = initGoogleSignin();\n if (googleSignin) {\n googleSignin\n .then(googleUser => {\n const { id_token: token } = googleUser.getAuthResponse();\n successCallback({ password: token, isSocialLogin: 'google' });\n })\n .catch(errorCallback);\n }\n }\n },\n facebook: {\n color: '#3C5A99',\n icon: ,\n text: TEXTS.VERIFY_WITH_FACEBOOK,\n handler: ({\n successCallback = f => f,\n errorCallback = f => f\n }) => {\n const fbLogin = initFBSignin();\n if (!fbLogin) return;\n fbLogin(({ status, authResponse }) => {\n if (status === 'connected' && authResponse) {\n successCallback({ password: authResponse.accessToken, isSocialLogin: 'facebook' });\n } else {\n // TODO: handle error\n errorCallback();\n }\n }, { scope: 'public_profile,email' });\n }\n },\n apple: {\n color: '#000',\n icon: ,\n text: TEXTS.VERIFY_WITH_APPLE,\n handler: ({\n successCallback = f => f,\n errorCallback = f => f\n }) => {\n const nonce = randomString(32);\n const appleSignin = initAppleSignin(nonce);\n if (appleSignin) {\n appleSignin.then(({\n user: {\n name: {\n firstName = '',\n lastName = ''\n } = {}\n } = {},\n authorization: {\n code,\n id_token: idToken\n }\n }) => {\n successCallback({\n password: {\n authorizationCode: code,\n identityToken: idToken,\n realNonce: nonce,\n name: `${firstName} ${lastName}`\n },\n isSocialLogin: 'apple'\n });\n }).catch(() => {\n // TODO: handle errors if necessary\n errorCallback();\n });\n }\n }\n }\n};\n\nexport const socialLoginScripts = {\n facebook: () => loadJS('facebook-jssdk', 'https://connect.facebook.net/en_US/sdk.js'),\n google: () => loadJS('google-jssdk-new', 'https://accounts.google.com/gsi/client'),\n apple: () => loadJS('apple-jssdk', 'https://appleid.cdn-apple.com/appleauth/static/jsapi/appleid/1/en_US/appleid.auth.js')\n};\n","/* eslint-disable max-len */\n// import React from 'react';\nimport {\n string, bool, number, oneOf\n} from 'prop-types';\nimport styled, { css, keyframes } from 'styled-components';\nimport {\n darken, lighten, rgba\n} from 'polished';\nimport { OptionGroup } from '@jotforminc/option-group';\nimport { colors } from '../helpers/constants';\n\nconst onMobile = '@media (max-width: 480px)';\n\nexport const ButtonUnstyled = styled.button` && {\n border: none;\n background-repeat: no-repeat;\n background-position: center;\n cursor: pointer;\n\n &,\n &:focus,\n &:hover {\n background-color: transparent;\n }\n}`;\n\nexport const MethodList = styled(OptionGroup)`\n padding: 0;\n color: ${colors.navy};\n\n li {\n & + li {\n margin: 0;\n }\n\n > div {\n padding: 14px 12px;\n // margin-left: -8px; // to align radio with text\n border: 1px solid transparent;\n font-size: 14px;\n\n ${onMobile} {\n padding: 14px 6px;\n }\n\n &[data-selected=true] {\n border-color: #4573E3;\n border-radius: 4px;\n background-color: ${rgba('#E9EEFF', 0.4)};\n }\n }\n }\n\n .o-wrapper {\n position: relative;\n padding-left: 102px;\n height: 50px;\n margin-left: -6px;\n display: flex;\n justify-content: center;\n flex-direction: column;\n\n ${onMobile} {\n padding-left: 51px;\n }\n\n html[dir=\"rtl\"] & {\n padding-left: 0;\n padding-right: 102px;\n\n ${onMobile} {\n padding-right: 51px;\n }\n }\n\n .o-label,\n .o-desc {\n line-height: 1.4;\n }\n\n .o-label {\n font-size: 18px;\n font-weight: 700;\n\n ${onMobile} {\n font-size: 15px;\n }\n\n svg {\n position: absolute;\n left: 12px;\n top: 50%;\n transform: translateY(-50%);\n max-height: 40px;\n max-width: 50px;\n width: 100%;\n height: 100%;\n\n ${onMobile} {\n left: 6px;\n max-height: 20px;\n max-width: 20px;\n }\n\n html[dir=\"rtl\"] & {\n left: unset;\n right: 12px;\n\n ${onMobile} {\n right: 6px;\n }\n }\n }\n }\n\n .o-desc {\n font-size: 15px;\n font-weight: 400;\n\n ${onMobile} {\n font-size: 13px;\n }\n }\n }\n`;\n\nconst rotate = initial => keyframes`\n from {\n transform: ${initial} rotate(0deg);\n }\n\n to {\n transform: ${initial} rotate(360deg);\n }\n`;\n\nexport const TextCode = styled.input`\n height: 38px;\n font-size: 15px;\n text-align: center;\n border: 1px solid #C9C8C9;\n border-radius: 4px;\n margin-top: 8px;\n\n ${onMobile} {\n font-size: 13px;\n }\n`;\n\nexport const QRCodeWrapper = styled.div`\n height: 124px;\n width: 124px;\n flex-shrink: 0;\n\n svg {\n display: block;\n height: 100%;\n width: 100%;\n opacity: 1;\n transition: opacity 333ms cubic-bezier(.55,.06,.68,.19);\n }\n\n ${({ color, loading }) => (loading ? css`\n position: relative;\n cursor: wait;\n\n svg {\n opacity: 0;\n pointer-events: none;\n\n &,\n &::before {\n font-size: 0;\n color: transparent;\n }\n }\n\n &::after {\n content: '' !important;\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n width: 16px;\n height: 16px;\n background-image: url(\"data:image/svg+xml,%3Csvg width='16' height='16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='8' cy='8' r='7.25' stroke='${encodeURIComponent(color)}' stroke-opacity='.5' stroke-width='1.5'/%3E%3Cmask id='a' maskUnits='userSpaceOnUse' x='0' y='0' width='16' height='16'%3E%3Cpath d='M8.27429 7.38462V0H0v16h16V8.53333h-2.6667L8.27429 7.38462z' fill='%23C4C4C4'/%3E%3C/mask%3E%3Cg mask='url(%23a)'%3E%3Ccircle cx='8' cy='8' r='7.25' stroke='${encodeURIComponent(color)}' stroke-width='1.5'/%3E%3C/g%3E%3C/svg%3E\");\n background-repeat: no-repeat;\n background-position: center;\n animation: ${rotate(css`translate(-50%,-50%)`)} 1.5s linear infinite;\n pointer-events: none;\n z-index: 1;\n }\n ` : null)}\n`;\n\nQRCodeWrapper.propTypes = {\n color: string,\n loaded: bool\n};\n\nQRCodeWrapper.defaultProps = {\n color: '#4277FF',\n loaded: true\n};\n\nexport const Image = styled.div`\n margin-top: 10px;\n margin-bottom: 12px;\n`;\n\nexport const Text = styled.div`\n text-align: ${({ align }) => align};\n\n &:empty {\n display: none;\n }\n\n a {\n text-decoration: none;\n }\n\n &,\n d { color: ${colors.navy} };\n a,\n hl {\n &:not([color]) { color: ${colors.blue}; }\n &[color='green'] { color: ${colors.green}; }\n &[color='red'] { color: ${colors.red}; }\n }\n b { font-weight: 500; }\n b2 { font-weight: 700; }\n\n section {\n margin-top: 0;\n margin-bottom: 8px;\n display: flex;\n flex-direction: column;\n\n html[dir=\"rtl\"] & {\n text-align: right;\n }\n\n }\n\n p {\n display: inline-block;\n margin-top: 0;\n margin-bottom: 8px;\n }\n\n`;\n\nText.defaultProps = {\n align: 'left'\n};\n\nexport const Heading = styled(Text)`\n font-size: 18px;\n font-weight: 500;\n line-height: 25px;\n color: ${colors.navy};\n margin-bottom: 20px;\n`;\n\nexport const Description = styled(Text)`\n color: #8D8FA8;\n font-size: 14px;\n font-weight: 400;\n line-height: 20px;\n display: flex;\n flex-direction: column;\n align-items: center;\n`;\n\nexport const Button = styled.button` && {\n position: relative;\n height: ${({ height }) => height}px;\n padding: 0 ${({ type }) => (['naked'].includes(type) ? 0 : 24)}px;\n display: inline-flex;\n justify-content: center;\n align-items: center;\n text-transform: ${({ letterCase }) => letterCase};\n user-select: none;\n transition-duration: 300ms;\n transition-property: color, background-color, border-color;\n transition-timing-function: ease-in-out;\n\n border-width: 1px;\n border-radius: 4px;\n border-style: solid;\n\n ${onMobile} {\n padding: 0 12px;\n }\n\n &,\n &:hover {\n border-color: ${({ type, color }) => (['naked'].includes(type) ? 'transparent' : color)};\n background-color: ${({ type, color }) => (['stroke', 'naked'].includes(type) ? 'transparent' : color)};\n background-clip: padding-box;\n }\n\n color: ${({ type, color, foregroundColor }) => (['stroke', 'naked'].includes(type) ? color : foregroundColor)};\n\n font-weight: 500;\n font-size: ${({ fontSize }) => fontSize}px;\n\n svg {\n max-height: 20px;\n width: 16px;\n height: 16px;\n margin-right: 8px;\n margin-left: -${({ type }) => (['naked'].includes(type) ? 0 : 12)}px;\n\n html[dir=\"rtl\"] & {\n margin-right: -${({ type }) => (['naked'].includes(type) ? 0 : 12)}px;\n margin-left: 10px;\n }\n\n ${onMobile} {\n max-height: 16px;\n width: 16px;\n margin-left: -${({ type }) => (['naked'].includes(type) ? 0 : 6)}px;\n margin-right: 5px;\n\n html[dir=\"rtl\"] & {\n margin-left: 5px;\n margin-right: -${({ type }) => (['naked'].includes(type) ? 0 : 6)}px;\n }\n }\n }\n\n ${({ onClick }) => (onClick ? css`\n cursor: pointer;\n\n &:hover {\n color: ${({ type, color, foregroundColor }) => lighten(0.05, (['stroke', 'naked'].includes(type) ? color : foregroundColor))};\n border-color: ${({ type, color }) => (['naked'].includes(type) ? 'transparent' : lighten(0.05, color))};\n background-color: ${({ type, color }) => (['stroke', 'naked'].includes(type) ? 'transparent' : lighten(0.05, color))};\n }\n\n &:focus {\n color: ${({ type, color, foregroundColor }) => darken(0.05, (['stroke', 'naked'].includes(type) ? color : foregroundColor))};\n border-color: ${({ type, color }) => (['naked'].includes(type) ? 'transparent' : darken(0.05, color))};\n background-color: ${({ type, color }) => (['stroke', 'naked'].includes(type) ? 'transparent' : darken(0.05, color))};\n }\n ` : null)}\n\n ${({\n loading, type, color, foregroundColor\n }) => (loading ? css`\n color: transparent !important;\n transition-duration: 0ms !important;\n cursor: wait;\n\n &::before {\n content: '';\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n width: 16px;\n height: 16px;\n background-image: url(\"data:image/svg+xml,%3Csvg width='16' height='16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='8' cy='8' r='7.25' stroke='${encodeURIComponent(['stroke', 'naked'].includes(type) ? color : foregroundColor)}' stroke-opacity='.5' stroke-width='1.5'/%3E%3Cmask id='a' maskUnits='userSpaceOnUse' x='0' y='0' width='16' height='16'%3E%3Cpath d='M8.27429 7.38462V0H0v16h16V8.53333h-2.6667L8.27429 7.38462z' fill='%23C4C4C4'/%3E%3C/mask%3E%3Cg mask='url(%23a)'%3E%3Ccircle cx='8' cy='8' r='7.25' stroke='${encodeURIComponent(['stroke', 'naked'].includes(type) ? color : foregroundColor)}' stroke-width='1.5'/%3E%3C/g%3E%3C/svg%3E\");\n background-repeat: no-repeat;\n background-position: center;\n animation: ${rotate(css`translate(-50%,-50%)`)} 1.5s linear infinite;\n pointer-events: none;\n z-index: 1;\n }\n ` : null)}\n}`;\n\nButton.propTypes = {\n color: string,\n foregroundColor: string,\n height: number,\n fontSize: number,\n letterCase: oneOf(['none', 'lowercase', 'uppercase', 'capitalize']),\n type: oneOf(['stroke', 'naked'])\n};\n\nButton.defaultProps = {\n color: '#0099FF',\n foregroundColor: '#ffffff',\n height: 36,\n fontSize: 14,\n letterCase: 'uppercase',\n type: null\n};\n\nexport const Body = styled.div`\n display: flex;\n flex-direction: column;\n align-items: ${({ align }) => align};\n justify-content: center;\n padding: 16px ${({ wide }) => (wide ? 64 : 32)}px 26px;\n\n ${onMobile} {\n padding-left: 16px;\n padding-right: 16px;\n }\n\n`;\n\nBody.defaultProps = {\n align: 'stretch',\n wide: null\n};\n\nexport const Footer = styled.div`\n display: flex;\n justify-content: ${({ align }) => align};\n flex-direction: ${({ reverse }) => (reverse ? 'row-reverse' : 'row')};\n padding: 12px 32px;\n border-top: 1px solid #EAEBF2;\n align-self: stretch;\n\n ${onMobile} {\n padding-left: 16px;\n padding-right: 16px;\n }\n`;\n\nFooter.propsTypes = {\n align: string,\n reverse: bool\n};\n\nFooter.defaultProps = {\n align: 'space-between',\n reverse: false\n};\n\nexport const Container = styled.div`\n font-family: 'Circular', sans-serif;\n font-size: 15px;\n line-height: 24px;\n display: flex;\n flex-direction: column;\n\n ${({ center }) => (center ? css`\n align-items: center;\n justify-content: center;\n ` : null)}\n\n flex: 1;\n height: 100%;\n width: 100%;\n // max-width: 510px;\n\n ${Body} {\n // margin: auto 0;\n }\n\n ${Footer} {\n margin-top: auto;\n }\n`;\n\nconst MessageContaiener = styled.div`\n font-family: 'Circular', sans-serif;\n font-size: 11px;\n line-height: 1.28;\n display: flex;\n flex-direction: column;\n background-color: ${colors.grey};\n color: #fff;\n border-radius: 4px;\n background-size: 12px;\n background-position: 6px;\n text-align: left;\n background-repeat: no-repeat;\n padding: 5px 5px 5px 24px;\n background-image: url(\"data:image/svg+xml,%3Csvg width='12' height='12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10.1683 1.6843a6.0016 6.0016 0 011.8315 4.2636 6.0002 6.0002 0 01-8.368 5.565 6.0001 6.0001 0 116.5365-9.8286zm-3.642 3.642v-2.4h-1.2v3.6h1.2v-1.2zm0 3.6v-1.2h-1.2v1.2h1.2z' fill='%23fff'/%3E%3C/svg%3E\");\n flex: 1;\n height: 100%;\n width: 100%;\n // max-width: 510px;\n`;\n\nexport const ErrorContainer = styled(MessageContaiener)`\n background-color: ${colors.red};\n`;\n\nexport const InfoContainer = styled(MessageContaiener)`\n background-color: ${colors.blue};\n`;\n","/* eslint-disable max-len */\nimport React from 'react';\nimport { number } from 'prop-types';\nimport styled, { css } from 'styled-components';\nimport { Button } from '@jotforminc/common-button';\nimport { StyledModal as Modal } from '@jotforminc/styled-modal';\nimport Toggle from '@jotforminc/toggle';\nimport { Tooltip } from '@jotforminc/tooltip';\n\nimport { Button as ButtonSC } from '../components/styled';\n\nconst borderColor = '#E3E5F5';\nconst descColor = '#2C3345';\nconst primaryIndicatorColor = '#8A94A9';\nconst black = '#000';\nconst settingsBlue = '#0099FF';\nconst infoBlueTextBg = '#F4F7FF';\nconst infoBlueTextColor = '#001D68';\nconst infoOrange = '#F5A51C';\nconst infoOrangeTextBg = '#FFF5D2';\nconst infoOrangeTextColor = '#0A1551';\n\nexport const ScSettingsWrapper = styled.div`\n display: flex;\n flex-direction: column;\n width: 100%;\n box-sizing: border-box;\n\n *, *::before, *::after {\n font-family: 'Circular', sans-serif;\n box-sizing: inherit;\n\n }\n`;\n\nexport const ScTooltip = styled.div`\n pointer-events: none;\n opacity: 0;\n max-width: 145px;\n background-color: #444;\n color: #fff;\n font-size: 12px;\n border-radius: 2px;\n position: absolute;\n padding: 6px 12px;\n top: 25px;\n left: -4px;\n transform: translateY(5px);\n transition: .4s;\n transition-delay: 250ms;\n z-index: 9;\n\n html[dir=\"rtl\"] & {\n left: unset;\n right: -4px;\n }\n\n :after {\n content: \"\";\n position: absolute;\n top: 0;\n left: 6px;\n transform: translateY(-100%);\n border-width: 8px;\n border-style: solid;\n border-color: transparent transparent #444 transparent;\n\n html[dir=\"rtl\"] & {\n left: unset;\n right: 6px;\n }\n }\n`;\n\nexport const ScToggleWrapper = styled.div`\n display: flex;\n flex-wrap: wrap;\n justify-content: space-between;\n width: 100%;\n align-items: center;\n padding-bottom: 20px;\n gap: 16px;\n\n\n p {\n flex-grow: 1;\n flex-basis: 60%;\n margin: 0 0 2px;\n max-width: 460px;\n color: ${descColor};\n font-size: 14px;\n text-align: left;\n\n html[dir=\"rtl\"] & {\n text-align: right;\n }\n a {\n color: #0075E3;\n text-decoration: underline;\n }\n }\n\n div {\n flex-shrink: 0;\n }\n\n span {\n width: 100%;\n font-size: 14px;\n }\n`;\n\nexport const ScTooltipV2Wrapper = styled.div`\n position: relative;\n`;\n\nexport const ScTooltipV2 = styled(props => )`\n width: 190px;\n text-align: center;\n \n &.jfTooltipNew {\n &.tooltipAttachTop {\n left: unset;\n }\n }\n [dir='rtl'] & {\n right: -210px;\n }\n @media screen and (max-width: 640px) {\n right: -100px;\n }\n`;\n\nexport const ScToggle = styled(props => )`\n &:hover {\n opacity: 1;\n }\n`;\n\nexport const ScMethodsWrapper = styled.div`\n display: flex;\n flex-direction: column;\n\n h4 {\n color: ${black};\n font-size: 14px;\n margin: 12px 0 0 0;\n font-weight: 500;\n border-bottom: 1px solid ${borderColor};\n padding: 0 0 7px 0;\n }\n`;\n\nexport const ScMethodButton = styled(ButtonSC)` && {\n &,\n &:hover {\n display: block;\n padding: 0 8px;\n min-width: 84px;\n \n ${({ isGenerateNewCodesButton }) => (isGenerateNewCodesButton ? css`\n @media screen and (max-width: 500px) { & {\n width: 100%;\n } }\n ` : null)}\n\n ${({ isPrimary, loading }) => (isPrimary && !loading ? css`\n &,\n &[disabled],\n &:disabled {\n cursor: default;\n ` : null)}\n }\n}\n}`;\n\nScMethodButton.propTypes = ButtonSC.propTypes;\nScMethodButton.defaultProps = ButtonSC.defaultProps;\n\nexport const ScMethodItem = styled.div`\n display: flex;\n flex-direction: column;\n justify-content: center;\n border-bottom: 1px solid ${borderColor};\n\n div {\n display: flex;\n justify-content: flex-start;\n flex-direction: row;\n align-items: center;\n margin: 8px 0px 8px 0px;\n width: 100%;\n\n label {\n display: flex;\n flex-direction: column;\n flex-wrap: nowrap;\n align-items: flex-start;\n flex-grow: 1;\n flex-basis: 50%;\n position: relative;\n\n input {\n position: relative;\n margin-left: 4px;\n margin-right: 8px;\n height: 16px;\n width: 16px;\n\n html[dir=\"rtl\"] & {\n margin-right: 4px;\n margin-left: 8px;\n }\n\n &:hover + ${ScTooltip} {\n opacity: 100;\n }\n }\n\n span {\n font-size: 12px;\n font-weight: 500;\n }\n\n & + p {\n font-size: 11px;\n margin: 0;\n color: ${primaryIndicatorColor};\n }\n }\n }\n`;\n\nexport const ScMethodTextWrapper = styled.div`\n display: flex;\n flex-direction: column;\n\n span {\n font-family: 'Circular';\n font-style: normal;\n line-height: 24px;\n }\n`;\n\nexport const ScMethodItemTitle = styled.span`\n font-weight: 700 !important;\n font-size: 16px !important;\n`;\n\nexport const ScMethodItemDesc = styled.span`\n font-weight: 400 !important;\n font-size: 14px !important;\n color: #6C73A8;\n`;\n\nexport const ScRecoveryCodesWrapper = styled.div`\n display: flex;\n justify-content: space-between;\n align-items: baseline;\n padding-top: 6px;\n margin: 10px 0 0 0;\n\n @media screen and (max-width: 500px) { & {\n flex-direction: column;\n } }\n\n div {\n display: flex;\n justify-content: flex-start;\n align-items: center;\n gap: 12px;\n \n @media screen and (max-width: 500px) { & {\n margin-bottom: 8px;\n } }\n }\n\n span {\n border-width: 1px;\n }\n\n h4 {\n color: ${black};\n font-size: 14px;\n margin: 0 12px 0 0;\n font-weight: 500;\n }\n`;\n\nexport const ScInfoBox = styled.div`\n display: flex;\n flex-wrap: nowrap;\n align-items: stretch;\n width: 100%;\n border-radius: 4px;\n\n &:not(:first-child) {\n margin-top: 13px;\n }\n\n overflow: hidden;\n\n > div {\n position: relative;\n background: ${props => (props.mode === 'warning' ? infoOrange : settingsBlue)};\n width: 49px;\n\n svg {\n fill: white;\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n width: 24px;\n height: 24px;\n }\n\n & + div {\n display: flex;\n flex: 1;\n flex-direction: column;\n align-items: flex-start;\n justify-content: center;\n padding: 15px 12px;\n font-size: ${({ fontSize }) => fontSize}px;\n background: ${props => (props.mode === 'warning' ? infoOrangeTextBg : infoBlueTextBg)};\n color: ${props => (props.mode === 'warning' ? infoOrangeTextColor : infoBlueTextColor)};\n\n p {\n margin: 0;\n font-family: 'Circular';\n font-style: normal;\n font-weight: 400;\n font-size: 14px;\n line-height: 24px;\n }\n }\n }\n`;\n\nScInfoBox.defaultProps = {\n fontSize: 12\n};\n\nScInfoBox.propTypes = {\n fontSize: number\n};\n\nexport const ScModal = styled(props => )``;\n\nexport const ScButton = styled(props => \n {showRememberDeviceSection && (\n
\n setRememberDevice(checked)}\n />\n setRememberDevice(currVal => setRememberDevice(!currVal))} onKeyDown={() => {}}>\n {t(\"Don't ask again on this device.\")}\n \n
\n )}\n {!isPassiveTFAMethod && (\n
\n setTimerRunning(true)}\n stopCallback={() => setTimerRunning(false)}\n ref={timerRef}\n />\n

\n {t(Texts.NO_CODE)}\n handleLogin({ isSocialTFA })}\n disabled={timerRunning ? 'disabled' : ''}\n >\n {t(Texts.SEND_AGAIN)}\n \n

\n
\n )}\n
\n
\n \n {t(Texts.HAVING_PROBLEMS)}\n \n onNavigationChangeRequest('twoFactorMethods')}\n >\n {t(Texts.SEE_OTHER_AUTHENTICATION_METHODS)}\n \n
\n
\n
\n
\n );\n};\n\nTwoFactorLogin.propTypes = {\n onNavigationChangeRequest: func.isRequired,\n handleTFALogin: func.isRequired,\n lastTFAResponse: shape({\n token: shape({\n type: string,\n target: string,\n remaining_time: string,\n total_time: number,\n expires_at: number,\n isForced: bool,\n username: string\n }),\n showRememberDevice: bool\n }).isRequired,\n thereSocialError: string,\n thereErrorMessage: string,\n tfaMethod: string.isRequired,\n isSocialTFA: bool.isRequired\n};\n\nTwoFactorLogin.defaultProps = {\n thereSocialError: '',\n thereErrorMessage: ''\n};\n\nexport default TwoFactorLogin;\n","import React, { useState, useRef, useEffect } from 'react';\nimport {\n shape, bool, string, func, number\n} from 'prop-types';\nimport { t, translationRenderer } from '@jotforminc/translation';\nimport { Texts } from '@jotforminc/constants';\nimport { useTimeoutMessage } from '@jotforminc/hooks';\nimport { PieTimer } from '@jotforminc/pie-timer';\nimport { VerificationInput } from '@jotforminc/verification-input';\nimport { ErrorContainer, InfoBox } from '@jotforminc/two-factor-settings';\n\nconst EmailAuthLogin = ({\n handleEALogin,\n lastEAResponse: {\n emailAuthToken: {\n target,\n remaining_time: remainingTime,\n total_time: totalTime,\n expires_at: expiresAt,\n isForced\n }\n },\n thereSocialError,\n thereErrorMessage,\n isSocialEA\n}) => {\n const [verificationCode, setVerificationCode] = useState('');\n const [timerRunning, setTimerRunning] = useState('');\n const [errorMessage, setErrorMessage] = useTimeoutMessage(false, 5000);\n const timerRef = useRef(null);\n\n useEffect(() => {\n if (typeof window.__accountSharingLogger === 'function') {\n window.__accountSharingLogger({ action: 'seen', target: 'emailAuthLogin' });\n }\n }, []);\n\n useEffect(() => {\n const handleTabChange = () => {\n if (document.visibilityState === 'visible') {\n const remainingTimeAfterTabChange = expiresAt - Math.floor(Date.now() / 1000);\n\n if (remainingTimeAfterTabChange > 0) {\n timerRef.current.start(remainingTimeAfterTabChange, totalTime);\n } else {\n timerRef.current.start(0, totalTime);\n timerRef.current.stop();\n }\n\n console.log('tab active');\n console.log('remainingTimeAfterTabChange', remainingTimeAfterTabChange);\n } else {\n timerRef.current.stop();\n console.log('tab inactive');\n }\n };\n\n document.addEventListener('visibilitychange', handleTabChange);\n return () => {\n document.removeEventListener('visibilitychange', handleTabChange);\n };\n }, [expiresAt]);\n\n useEffect(() => {\n timerRef.current.stop();\n timerRef.current.start(remainingTime, totalTime);\n\n return () => timerRef.current && timerRef.current.stop();\n }, [expiresAt]);\n\n const handleLogin = async args => {\n const { verificationCode: code = false } = args;\n\n if (typeof code === 'string' && code.length === 0) {\n setErrorMessage(t(Texts.BLANK_VERIFICATION_CODE));\n return;\n }\n\n if (code.length < 6) {\n setErrorMessage('');\n return;\n }\n\n try {\n const response = await handleEALogin(args);\n const { data: { error } } = response?.[0];\n if (error) {\n setErrorMessage(t(error));\n }\n } catch (e) {\n // TO DO handleError;\n }\n };\n\n return (\n
\n

{t(Texts.EMAIL_AUTHENTICATION)}

\n {isForced && (\n
\n \n

\n {t(Texts.REACH_DAILY_LIMIT_FORCE_TO_EMAIL)}\n

\n
\n
\n )}\n
\n {translationRenderer(Texts.EMAIL_AUTHENTICATION_DESCRIPTION)({\n renderer1: () => {target}\n })}\n
\n
\n
\n
\n \n { errorMessage && (\n {errorMessage}\n )}\n {thereSocialError && (\n {thereErrorMessage.response.data.error}\n )}\n
\n {\n handleLogin({ verificationCode, isSocialEA });\n if (typeof window.__accountSharingLogger === 'function') {\n window.__accountSharingLogger({ action: 'click', target: 'verifyButton' });\n }\n }}\n type=\"button\"\n >\n {t(Texts.VERIFY)}\n \n\n
\n setTimerRunning(true)}\n stopCallback={() => setTimerRunning(false)}\n ref={timerRef}\n />\n

\n {t(Texts.NO_CODE)}\n {\n handleLogin({ isSocialEA });\n if (typeof window.__accountSharingLogger === 'function') {\n window.__accountSharingLogger({ action: 'click', target: 'sendAgainButton' });\n }\n }}\n disabled={timerRunning ? 'disabled' : ''}\n >\n {t(Texts.SEND_AGAIN)}\n \n

\n
\n
\n
\n
\n );\n};\n\nEmailAuthLogin.propTypes = {\n handleEALogin: func.isRequired,\n lastEAResponse: shape({\n emailAuthToken: shape({\n type: string,\n target: string,\n remaining_time: string,\n total_time: number,\n expires_at: number,\n isForced: bool\n })\n }).isRequired,\n thereSocialError: string,\n thereErrorMessage: string,\n isSocialEA: bool.isRequired\n};\n\nEmailAuthLogin.defaultProps = {\n thereSocialError: '',\n thereErrorMessage: ''\n};\n\nexport default EmailAuthLogin;\n","import React from 'react';\nimport {\n shape, bool, string, func\n} from 'prop-types';\nimport { t, translationRenderer } from '@jotforminc/translation';\nimport { Texts, twoFactorTypeKeys } from '@jotforminc/constants';\nimport { useTimeoutMessage } from '@jotforminc/hooks';\nimport { ErrorContainer } from '@jotforminc/two-factor-settings';\nimport {\n IconMessageFilled, IconKeyFilled, IconScanFilled, IconChevronLeft\n} from '@jotforminc/svg-icons';\nimport { isEnterprise } from '@jotforminc/enterprise-utils';\n\nconst TwoFactorMethods = ({\n handleTFALogin,\n lastTFAResponse: {\n token: {\n type\n },\n activeMethods\n },\n isSocialTFA,\n onNavigationChangeRequest\n}) => {\n const hasRecoveryMail = false;\n\n const typeMap = {\n phone: {\n typeCode: twoFactorTypeKeys.sms,\n icon: () => \n },\n totp: {\n typeCode: twoFactorTypeKeys.authenticatorApp,\n icon: () => \n }\n };\n\n const [errorMessage, setErrorMessage] = useTimeoutMessage(false);\n const handleLogin = async args => {\n try {\n const response = await handleTFALogin(args);\n const { error } = response[0]?.data;\n if (error) setErrorMessage(\"Login failed - You've reached the daily token request limit.\");\n } catch (e) {\n // TO DO handleError;\n }\n };\n\n const handleAccountRecoveryButton = () => {\n if (hasRecoveryMail) {\n onNavigationChangeRequest('accountRecoveryViewTicket');\n } else {\n onNavigationChangeRequest('recoverAccountPage');\n }\n };\n\n return (\n
\n

{t(Texts.VERIFY_ITS_YOU)}

\n
\n {t(Texts.CHOOSE_A_METHOD_DESCRIPTION)}\n
\n
\n
\n
\n {t(Texts.CHOOSE_A_METHOD)}\n
\n
\n {Object.entries(activeMethods).filter(([methodType]) => typeMap[methodType]?.typeCode !== type).map(([methodType, { data: target }]) => {\n const {\n typeCode,\n icon: Icon\n } = typeMap[methodType];\n\n return (\n handleLogin({ newType: typeCode, isSocialTFA, shouldNavigate: true })}\n type=\"button\"\n >\n \n \n { translationRenderer(Texts.SEND_CODE_TO[typeCode])({\n renderer1: () => {target}\n })}\n \n \n );\n })}\n handleTFALogin({ newType: 'recovery' })}\n type=\"button\"\n >\n \n \n {t(Texts.USE_YOUR_RECOVERY_CODES)}\n \n \n
\n { errorMessage && (\n {t(errorMessage)}\n )}\n handleTFALogin({ newType: type, isSocialTFA })}\n >\n \n {t(Texts.BACK_TO_PRIMARY_METHOD)}\n \n
\n {!isEnterprise() && (\n \n {t(Texts.CAN_NOT_ACCESS_MY_DEVICE)}\n \n )}\n
\n
\n
\n );\n};\n\nTwoFactorMethods.propTypes = {\n handleTFALogin: func.isRequired,\n lastTFAResponse: shape({\n type: string.isRequired,\n activeMethods: shape({}).isRequired,\n token: shape({\n type: string.isRequired\n }).isRequired\n }).isRequired,\n isSocialTFA: bool.isRequired,\n onNavigationChangeRequest: func\n};\n\nTwoFactorMethods.defaultProps = {\n onNavigationChangeRequest: f => f\n};\n\nexport default TwoFactorMethods;\n","import React, { useEffect } from 'react';\nimport { shape, string, func } from 'prop-types';\nimport { Loading } from '@jotforminc/loading';\n\nconst SocialInit = ({\n socialInitData: {\n type,\n token,\n response = {}\n },\n socialLoginRequest,\n handle2FASocialLoginRequest,\n handleSocialEAResponse\n}) => {\n useEffect(() => {\n const { primaryMethod = '' } = response;\n if (primaryMethod && !response?.emailAuthToken) {\n handle2FASocialLoginRequest(response);\n } else if (response?.emailAuthToken) {\n handleSocialEAResponse(response, type);\n } else {\n socialLoginRequest(type, token);\n }\n }, []);\n\n return (\n
\n \n
\n );\n};\n\nSocialInit.propTypes = {\n socialInitData: shape({\n type: string.isRequired,\n token: string.isRequired,\n response: shape({}).isRequired\n }).isRequired,\n socialLoginRequest: func.isRequired,\n handle2FASocialLoginRequest: func,\n handleSocialEAResponse: func\n};\n\nSocialInit.defaultProps = {\n handle2FASocialLoginRequest: f => f,\n handleSocialEAResponse: f => f\n};\n\nexport default SocialInit;\n","export default class LoginError extends Error {\n constructor(errorType, loginType, message, originalError) {\n super();\n this.type = errorType; // Error errorType: network, jsonParse etc.\n this.loginType = loginType; // user|formUser\n this.message = message;\n this.originalError = originalError;\n }\n}\n","import React from 'react';\nimport { func, string } from 'prop-types';\n\nimport { Texts } from '@jotforminc/constants';\nimport { t, translationRenderer } from '@jotforminc/translation';\n\nimport { IconTrashExclamationFilled } from '@jotforminc/svg-icons';\n\nconst DeleteAccountModalStep1 = ({ handleStep, username }) => {\n return (\n
\n
\n
\n
\n \n
\n
\n

{t(Texts.ARE_YOU_SURE_YOU_WANT_TO_DELETE_YOUR_ACCOUNT)}

\n

\n {' '}\n {t(Texts.YOU_ARE_ABOUT_TO_DELETE_YOUR_ACCOUNT_NAMELY)}\n {' '}\n {username}\n

\n

\n {translationRenderer(Texts.GET_IN_TOUCH_WITH_US)({\n renderer1: text => (\n {text}\n )\n })}\n

\n
\n
\n \n \n
\n
\n );\n};\n\nDeleteAccountModalStep1.propTypes = {\n handleStep: func.isRequired,\n username: string.isRequired\n};\n\nexport default DeleteAccountModalStep1;\n","import React from 'react';\nimport {\n array, func, object\n} from 'prop-types';\n\nimport { t } from '@jotforminc/translation';\n\nimport AppleIcon from '../../assets/icon_ap_36.svg';\nimport FacebookIcon from '../../assets/icon_fb_36.svg';\nimport GoogleIcon from '../../assets/icon_gl_36.svg';\nimport MicrosoftIcon from '../../assets/icon_ms_36.svg';\nimport SalesforceIcon from '../../assets/icon_sf_36.svg';\n\nimport GoogleButton from '../GoogleButton';\nimport FacebookButton from '../FacebookButton';\nimport MicrosoftButton from '../MicrosoftButton';\nimport AppleButton from '../AppleButton';\nimport SalesforceButton from '../SalesforceButton';\n\nconst icons = {\n apple: AppleIcon,\n facebook: FacebookIcon,\n google: GoogleIcon,\n microsoft: MicrosoftIcon,\n salesforce: SalesforceIcon\n};\nconst buttons = {\n apple: AppleButton,\n facebook: FacebookButton,\n google: GoogleButton,\n microsoft: MicrosoftButton,\n salesforce: SalesforceButton\n};\n\nconst SocialsContainer = ({\n socialLogins,\n onAppleLoginClick,\n onFBLoginClick,\n onGoogleLoginClick,\n onMicrosoftLoginClick,\n onSalesforceLoginClick,\n user\n}) => {\n const callbacks = {\n apple: onAppleLoginClick,\n facebook: onFBLoginClick,\n google: onGoogleLoginClick,\n microsoft: onMicrosoftLoginClick,\n salesforce: onSalesforceLoginClick\n };\n\n const connectedAccounts = socialLogins.map(login => (Object.hasOwn(buttons, login) ? {\n Component: buttons[login], Icon: icons[login], callback: callbacks[login], key: login\n } : null));\n\n const { username, email, avatarUrl } = user.credentials;\n\n return (\n
\n {connectedAccounts.map(({\n Component, Icon, callback, key\n }) => (\n
\n
\n \n
\n

{username}

\n

{email}

\n
\n
\n }\n onClick={callback}\n key={key}\n />\n
\n ))}\n
\n );\n};\n\nSocialsContainer.propTypes = {\n socialLogins: array.isRequired,\n onAppleLoginClick: func,\n onFBLoginClick: func,\n onGoogleLoginClick: func,\n onMicrosoftLoginClick: func,\n onSalesforceLoginClick: func,\n user: object.isRequired\n};\n\nSocialsContainer.defaultProps = {\n onAppleLoginClick: () => {},\n onFBLoginClick: () => {},\n onGoogleLoginClick: () => {},\n onMicrosoftLoginClick: () => {},\n onSalesforceLoginClick: () => {}\n};\n\nexport default SocialsContainer;\n","import React from 'react';\n\nimport { t } from '@jotforminc/translation';\nimport { Texts } from '@jotforminc/constants';\n\nconst ModalHeader = () =>

{t(Texts.VERIFY_THAT_ITS_YOU_TO_DELETE_YOUR_ACCOUNT)}

;\n\nexport default ModalHeader;\n","import { string } from 'prop-types';\nimport React from 'react';\n\nimport { t } from '@jotforminc/translation';\n\nimport { IconExclamationCircleFilled } from '@jotforminc/svg-icons';\n\nconst ErrorMessage = ({ text }) => {\n return (\n
\n \n {' '}\n {t(text)}\n
\n );\n};\n\nErrorMessage.propTypes = {\n text: string.isRequired\n};\n\nexport default ErrorMessage;\n","import React, { useState } from 'react';\nimport {\n array, bool, func, object\n} from 'prop-types';\n\nimport { t } from '@jotforminc/translation';\nimport { Texts } from '@jotforminc/constants';\n\nimport SocialsContainer from './SocialsContainer';\nimport ModalHeader from './ModalHeader';\n\nimport { verifyAndDelete } from '../../utils/helper';\nimport ErrorMessage from './ErrorMessage';\n\nconst DeleteAccountModalStep2 = ({\n socialLogins, onAppleLoginClick, onFBLoginClick, onGoogleLoginClick, onMicrosoftLoginClick, onSalesforceLoginClick, thereSocialError, user, handleStep\n}) => {\n const [isPasswordErrored, setIsPasswordErrored] = useState(false);\n const [password, setPassword] = useState('');\n\n const handleChange = e => {\n const { target: { value } } = e;\n setPassword(value);\n setIsPasswordErrored(false);\n };\n\n const handleDeleteAccount = async e => {\n e.preventDefault(); // no refresh after submit\n const { credentials: { username } } = user;\n\n if (password) {\n try {\n const result = await verifyAndDelete({ type: 'email', username, password });\n if (typeof result === 'object' && result.token) {\n setIsPasswordErrored(!result.status);\n } else { // TODO: remove this condition when api is merged\n setIsPasswordErrored(!result);\n }\n handleStep(3);\n } catch {\n setIsPasswordErrored(true);\n }\n }\n };\n\n return (\n
\n \n {socialLogins.length > 0 && (\n <>\n \n {thereSocialError && (\n \n )}\n
\n OR\n
\n \n )}\n
\n {t(Texts.PLEASE_ENTER_YOUR_PASSWORD)}\n
\n \n {isPasswordErrored && (\n \n )}\n \n \n
\n
\n );\n};\n\nDeleteAccountModalStep2.propTypes = {\n socialLogins: array.isRequired,\n user: object.isRequired,\n onAppleLoginClick: func,\n onFBLoginClick: func,\n onGoogleLoginClick: func,\n onMicrosoftLoginClick: func,\n onSalesforceLoginClick: func,\n thereSocialError: bool,\n handleStep: func\n};\n\nDeleteAccountModalStep2.defaultProps = {\n onAppleLoginClick: () => {},\n onFBLoginClick: () => {},\n onGoogleLoginClick: () => {},\n onMicrosoftLoginClick: () => {},\n onSalesforceLoginClick: () => {},\n thereSocialError: false,\n handleStep: () => {}\n};\n\nexport default DeleteAccountModalStep2;\n","import React, { useState } from 'react';\nimport { string } from 'prop-types';\n\nimport { t } from '@jotforminc/translation';\nimport { Texts } from '@jotforminc/constants';\n\nimport { IconCheckCircleFilled } from '@jotforminc/svg-icons';\nimport ModalHeader from './ModalHeader';\n\nimport { verifyAndDelete } from '../../utils/helper';\n\nimport ErrorMessage from './ErrorMessage';\n\nconst DeleteAccountModalStep3 = ({ username }) => {\n const [isDeleteErrored, setIsDeleteErrored] = useState(false);\n\n const handleDelete = async () => {\n const result = await verifyAndDelete({ isDeleteVerified: 1, username });\n // TODO: remove 'result === true' check when api is merged\n if (result === true || (typeof result === 'object' && result.token)) {\n setIsDeleteErrored(false);\n window.location.href = '/login';\n } else {\n setIsDeleteErrored(true);\n }\n };\n\n return (\n
\n \n
\n \n \n {t(Texts.YOU_HAVE_VERIFIED_SUCCESSFULLY)}\n \n {isDeleteErrored && (\n \n )}\n \n
\n
\n );\n};\n\nDeleteAccountModalStep3.propTypes = {\n username: string.isRequired\n};\n\nexport default DeleteAccountModalStep3;\n","import React, { useState, useImperativeHandle } from 'react';\nimport {\n array, bool, func, object\n} from 'prop-types';\n\nimport DeleteAccountModalStep1 from './DeleteAccountModalStep1';\nimport DeleteAccountModalStep2 from './DeleteAccountModalStep2';\nimport DeleteAccountModalStep3 from './DeleteAccountModalStep3';\n\nimport '../../styles/verification-modal.scss';\nimport '../../styles/delete-my-account-modal.scss';\n\nconst DeleteAccountModal = React.forwardRef(({\n socialLogins, onAppleLoginClick, onFBLoginClick, onGoogleLoginClick, onMicrosoftLoginClick, onSalesforceLoginClick, thereSocialError, user, handleClose\n}, ref) => {\n const [step, setStep] = useState(1);\n\n const { credentials: { username } } = user;\n\n const handleStep = nextStep => {\n setStep(nextStep);\n if (nextStep === 0) {\n handleClose();\n }\n };\n\n useImperativeHandle(ref, () => (\n {\n handleStep\n }\n ));\n\n return (\n <>\n {step === 1 && (\n \n )}\n {step === 2 && (\n \n )}\n {step === 3 && (\n \n )}\n \n );\n});\n\nDeleteAccountModal.propTypes = {\n socialLogins: array,\n onAppleLoginClick: func,\n onFBLoginClick: func,\n onGoogleLoginClick: func,\n onMicrosoftLoginClick: func,\n onSalesforceLoginClick: func,\n thereSocialError: bool,\n user: object,\n handleClose: func\n};\n\nDeleteAccountModal.defaultProps = {\n socialLogins: [],\n onAppleLoginClick: () => {},\n onFBLoginClick: () => {},\n onGoogleLoginClick: () => {},\n onMicrosoftLoginClick: () => {},\n onSalesforceLoginClick: () => {},\n thereSocialError: false,\n user: {},\n handleClose: () => {}\n};\n\nexport default DeleteAccountModal;\n","import React, { Component } from 'react';\nimport { func } from 'prop-types';\nimport { t, translationRenderer } from '@jotforminc/translation';\nimport { Texts } from '@jotforminc/constants';\nimport { isEnterprise } from '@jotforminc/enterprise-utils';\n\nexport default class ResetSuccess extends Component {\n render() {\n const { onNavigationChangeRequest } = this.props;\n return (\n
\n
\n

{t(Texts.CHECK_EMAIL)}

\n
\n
\n

{t(Texts.PASSWORD_RESET_SENT)}

\n

{t(Texts.CHECK_SPAM_FOLDER)}

\n

\n {isEnterprise() ? t(Texts.MORE_HELP_CONTACT_ENTERPRISE) : translationRenderer(Texts.MORE_HELP_CONTACT)({\n renderer1: str => {str}\n })}\n

\n
\n onNavigationChangeRequest('loginOptions')}\n type=\"button\"\n >\n {t(Texts.OK_TEXT)}\n \n
\n
\n
\n );\n }\n}\n\nResetSuccess.propTypes = {\n onNavigationChangeRequest: func.isRequired\n};\n","import React, { useState } from 'react';\nimport { func, shape } from 'prop-types';\nimport { t } from '@jotforminc/translation';\n\nimport '../styles/social-terms-step.scss';\nimport { isTurkishLanguage } from '../utils/loginSignup';\nimport TermsAndConditionsUrls from './TermsAndConditionsUrls';\n\nconst SocialTermsStep = ({\n user,\n socialUserProfile,\n onSocialTermsContinue\n}) => {\n const [isTermsAgreed, setIsTermsAgreed] = useState(false);\n const [termsError, setTermsError] = useState(false);\n const { fullName, email, imageUrl } = socialUserProfile;\n const isTurkish = isTurkishLanguage(user);\n\n const handleContinue = async () => {\n if (isTermsAgreed) {\n onSocialTermsContinue(isTermsAgreed);\n } else {\n setTermsError(true);\n }\n };\n\n const handleCheckboxChange = ({ target: { checked = false } }) => {\n setIsTermsAgreed(checked);\n if (checked) {\n setTermsError(false);\n }\n };\n\n return (\n
\n

{t('Terms and Privacy')}

\n
\n
\n
\n {imageUrl && {fullName}}\n
\n
\n \n \n {t('Name')}\n :\n \n {fullName}\n \n \n \n {t('Email')}\n :\n \n {email}\n \n
\n
\n \n {termsError && {t('Please agree to continue.')}}\n
\n
\n \n
\n
\n );\n};\n\nSocialTermsStep.propTypes = {\n user: shape({}),\n socialUserProfile: shape({}),\n onSocialTermsContinue: func\n};\n\nSocialTermsStep.defaultProps = {\n user: {},\n socialUserProfile: {},\n onSocialTermsContinue: func\n};\n\nexport default SocialTermsStep;\n","import React, { useRef } from 'react';\nimport { func } from 'prop-types';\nimport { Modal } from '@jotforminc/uikit';\nimport '../styles/standalone-modal.scss';\nimport SocialTermsStep from './SocialTermsStep';\n\nconst SocialTermsModal = ({\n removeModalFromDOM,\n onSocialTermsContinue,\n onSocialTermsClose,\n ...props\n}) => {\n const uikitModalRef = useRef(null);\n\n // eslint-disable-next-line react/prop-types\n const DialogRenderer = ({ children }) =>
{children}
;\n\n // eslint-disable-next-line react/prop-types\n const ContentRenderer = ({ children }) => (\n
\n {\n onSocialTermsClose();\n removeModalFromDOM();\n }}\n />\n {children}\n
\n );\n\n const handleSocialTermsContinue = isTermsAgreed => {\n onSocialTermsContinue(isTermsAgreed);\n if (isTermsAgreed) {\n removeModalFromDOM();\n }\n };\n\n return (\n \n \n \n );\n};\n\nSocialTermsModal.propTypes = {\n onSocialTermsClose: func,\n removeModalFromDOM: func.isRequired,\n onSocialTermsContinue: func.isRequired\n};\n\nSocialTermsModal.defaultProps = {\n onSocialTermsClose: f => f\n};\n\nexport default SocialTermsModal;\n","import React from 'react';\nimport ReactDOM from 'react-dom';\nimport SocialTermsModal from '../components/SocialTermsModal';\n\nconst ROOT_ID = 'terms-modal-root';\n\nconst createRootEl = () => {\n const rootEl = document.createElement('div');\n rootEl.setAttribute('id', ROOT_ID);\n\n document.body.appendChild(rootEl);\n return rootEl;\n};\n\nconst getRootEl = () => {\n const termsModalRoot = document.querySelector(`#${ROOT_ID}`);\n if (termsModalRoot) {\n return termsModalRoot;\n }\n return createRootEl(ROOT_ID);\n};\n\nconst removeModalFromDOM = () => {\n const termsModalRoot = getRootEl();\n if (termsModalRoot) {\n ReactDOM.unmountComponentAtNode(termsModalRoot);\n }\n};\n\nconst renderStandaloneSocialTermsModal = props => {\n const rootEl = getRootEl();\n ReactDOM.render(\n ,\n rootEl\n );\n};\n\nexport default renderStandaloneSocialTermsModal;\n","import React, { useRef } from 'react';\nimport { func } from 'prop-types';\nimport { Modal } from '@jotforminc/uikit';\nimport '../styles/standalone-modal.scss';\nimport EmailAuthLogin from './EmailAuthLogin';\n\nconst EmailAuthLoginModal = ({\n removeModalFromDOM,\n ...props\n}) => {\n const uikitModalRef = useRef(null);\n\n // eslint-disable-next-line react/prop-types\n const DialogRenderer = ({ children }) =>
{children}
;\n\n // eslint-disable-next-line react/prop-types\n const ContentRenderer = ({ children }) => (\n
\n {\n if (typeof window.__accountSharingLogger === 'function') {\n window.__accountSharingLogger({ action: 'click', target: 'closeButton' });\n }\n removeModalFromDOM();\n }}\n />\n {children}\n
\n );\n\n return (\n \n \n \n );\n};\n\nEmailAuthLoginModal.propTypes = {\n removeModalFromDOM: func.isRequired\n};\n\nexport default EmailAuthLoginModal;\n","import React from 'react';\nimport ReactDOM from 'react-dom';\nimport EmailAuthLoginModal from '../components/EmailAuthLoginModal';\n\nconst ROOT_ID = 'email-auth-root';\n\nconst createRootEl = () => {\n const rootEl = document.createElement('div');\n rootEl.setAttribute('id', ROOT_ID);\n\n document.body.appendChild(rootEl);\n return rootEl;\n};\n\nconst getRootEl = () => {\n const emailAuthRoot = document.querySelector(`#${ROOT_ID}`);\n if (emailAuthRoot) {\n return emailAuthRoot;\n }\n return createRootEl(ROOT_ID);\n};\n\nconst removeModalFromDOM = () => {\n const emailAuthRoot = getRootEl();\n if (emailAuthRoot) {\n ReactDOM.unmountComponentAtNode(emailAuthRoot);\n }\n};\n\nconst renderStandaloneEmailAuthModal = props => {\n const rootEl = getRootEl();\n ReactDOM.render(\n ,\n rootEl\n );\n};\n\nexport default renderStandaloneEmailAuthModal;\n","import React, { useState } from 'react';\nimport {\n array, bool, func, object\n} from 'prop-types';\n\nimport { t } from '@jotforminc/translation';\nimport { Texts } from '@jotforminc/constants';\n\nimport { verifyUser } from '../../utils/helper';\nimport SocialsContainer from '../DeleteAccountModal/SocialsContainer';\nimport ErrorMessage from '../DeleteAccountModal/ErrorMessage';\n\nconst Verification = ({\n socialLogins, onAppleLoginClick, onFBLoginClick, onGoogleLoginClick, onMicrosoftLoginClick, onSalesforceLoginClick, thereSocialError, user, handleVerification\n}) => {\n const [isPasswordErrored, setIsPasswordErrored] = useState(false);\n const [password, setPassword] = useState('');\n const [isPending, setIsPending] = useState(false);\n\n const handleChange = e => {\n const { target: { value } } = e;\n setPassword(value);\n setIsPasswordErrored(false);\n };\n\n const handleVerifyAccount = async e => {\n e.preventDefault(); // no refresh after submit\n if (!password) return;\n const { credentials: { username } } = user;\n\n setIsPending(true);\n try {\n const result = await verifyUser({ type: 'email', username, password });\n const isResultWithToken = (typeof result === 'object') && result.token;\n if (result === true || isResultWithToken) {\n setIsPasswordErrored(false);\n handleVerification();\n // TODO if (isResultWithToken) set token and remove 'result === true' check\n } else {\n setIsPasswordErrored(false);\n }\n } catch {\n setIsPasswordErrored(true);\n } finally {\n setIsPending(false);\n }\n };\n\n const handleVerifyButtonKeyDown = e => {\n if ([' ', 'Enter'].includes(e.key)) {\n handleVerifyAccount(e);\n }\n };\n\n return (\n
\n {socialLogins.length > 0 && (\n <>\n \n {thereSocialError && (\n \n )}\n
\n OR\n
\n \n )}\n
\n \n
\n \n {isPasswordErrored && (\n \n )}\n \n
\n {/* TODO: Move below html inside the form tags and update the common ui file: verification-mnodal.scss */}\n
\n \n {t('VERIFY')}\n \n
\n
\n );\n};\n\nVerification.propTypes = {\n socialLogins: array.isRequired,\n user: object.isRequired,\n onAppleLoginClick: func,\n onFBLoginClick: func,\n onGoogleLoginClick: func,\n onMicrosoftLoginClick: func,\n onSalesforceLoginClick: func,\n thereSocialError: bool,\n handleVerification: func\n};\n\nVerification.defaultProps = {\n onAppleLoginClick: () => {},\n onFBLoginClick: () => {},\n onGoogleLoginClick: () => {},\n onMicrosoftLoginClick: () => {},\n onSalesforceLoginClick: () => {},\n thereSocialError: false,\n handleVerification: () => {}\n};\n\nexport default Verification;\n","import React, { useImperativeHandle } from 'react';\nimport {\n array, bool, func, elementType, object, shape\n} from 'prop-types';\n\nimport '../../styles/verification-modal.scss';\nimport Verification from './Verification';\n\nconst VerifyAccountModal = React.forwardRef(({\n socialLogins, onAppleLoginClick, onFBLoginClick, onGoogleLoginClick, onMicrosoftLoginClick, onSalesforceLoginClick, thereSocialError,\n user, AfterVerificationComponent, BeforeVerificationComponent, VerificationWrapper, isVerified, setIsVerified\n}, ref) => {\n const approveVerification = () => setIsVerified(true);\n\n useImperativeHandle(ref, () => (\n {\n approveVerification\n }\n ));\n\n const VerificationStep = () => (VerificationWrapper\n ? (\n \n \n \n )\n : (\n \n ));\n\n if (BeforeVerificationComponent) return ;\n\n return (\n <>{!isVerified ? : }\n );\n});\n\nVerifyAccountModal.propTypes = {\n socialLogins: array,\n onAppleLoginClick: func,\n onFBLoginClick: func,\n onGoogleLoginClick: func,\n onMicrosoftLoginClick: func,\n onSalesforceLoginClick: func,\n thereSocialError: bool,\n user: object,\n AfterVerificationComponent: elementType.isRequired,\n BeforeVerificationComponent: elementType,\n VerificationWrapper: shape({\n Component: elementType,\n props: shape({})\n }),\n isVerified: bool,\n setIsVerified: func\n};\n\nVerifyAccountModal.defaultProps = {\n socialLogins: [],\n onAppleLoginClick: () => {},\n onFBLoginClick: () => {},\n onGoogleLoginClick: () => {},\n onMicrosoftLoginClick: () => {},\n onSalesforceLoginClick: () => {},\n thereSocialError: false,\n user: {},\n BeforeVerificationComponent: null,\n VerificationWrapper: null,\n isVerified: false,\n setIsVerified: f => f\n};\n\nexport default VerifyAccountModal;\n","import React, { useEffect, useState } from 'react';\nimport PropTypes from 'prop-types';\nimport { IconCheckCircle, IconExclamationCircleFilled, IconFlagFilled } from '@jotforminc/svg-icons';\nimport { t, translationRenderer } from '@jotforminc/translation';\nimport { getUrlParameter } from '@jotforminc/utils';\nimport layer from '../../utils/layer';\n\nimport {\n RECEIVED_RESPONSE,\n CONTINUE,\n KEEP_ACCOUNT,\n NOT_CREATE_THIS_ACCOUNT, REPORT_ACCOUNT, REPORT_UNUSUAL_SIGNUP, THANKS_FOR_REPORTING, ERROR_MESSAGE\n} from '../../constants';\n\nimport '../../styles/unusual-signup.scss';\n\nconst UnusualSignup = ({\n unusualSignupCode, unusualSignupToken, changeActiveMode\n}) => {\n const [option, setOption] = useState('');\n const [isReported, setIsReported] = useState(false);\n const [error, setError] = useState(false);\n\n const handleClick = async () => {\n if (option === 'keep') {\n const isLoggedIn = !!window.user && window.user?.account_type?.name !== 'GUEST';\n return !isLoggedIn ? changeActiveMode('fullScreen') : window.location.replace('/myforms');\n }\n layer.post('user/change-email-unusual-account', new URLSearchParams({\n code: unusualSignupCode,\n token: unusualSignupToken\n }))\n .then(result => {\n if (typeof result === 'object' && result?.responseCode !== 200) {\n throw new Error(result?.content || result?.message);\n }\n\n setIsReported(true);\n }).catch(err => {\n setError(true);\n console.log(err);\n });\n };\n\n const handleChange = e => {\n setOption(e.target.value);\n };\n\n useEffect(() => {\n document.body.classList.add('hide-overflow');\n document.title = 'Report Unusual Signup · Jotform';\n\n return () => {\n document.body.classList.remove('hide-overflow');\n document.title = 'Login · Jotform';\n };\n }, []);\n\n return (\n
\n
\n
\n
\n

{t(REPORT_UNUSUAL_SIGNUP)}

\n
\n
\n
\n {isReported ? (\n
\n \n
\n ) : (\n
\n \n
\n )}\n

\n {t(isReported ? RECEIVED_RESPONSE : REPORT_UNUSUAL_SIGNUP)}\n

\n

\n {isReported ? (\n translationRenderer(THANKS_FOR_REPORTING)({\n renderer1: () => {getUrlParameter('username')},\n renderer2: text => (\n \n {text}\n \n )\n })\n ) : (\n translationRenderer(NOT_CREATE_THIS_ACCOUNT)({\n renderer1: () => {getUrlParameter('username')}\n })\n )}\n

\n
\n {!isReported && (\n <>\n
\n
\n
\n );\n};\n\nUnusualSignup.propTypes = {\n unusualSignupCode: PropTypes.string.isRequired,\n unusualSignupToken: PropTypes.string.isRequired,\n changeActiveMode: PropTypes.func.isRequired\n};\n\nexport default UnusualSignup;\n","/* eslint-disable max-statements */\n/* eslint-disable complexity */\nimport React, {\n useCallback, useEffect, useRef, useState\n} from 'react';\nimport PropTypes from 'prop-types';\nimport cx from 'classnames';\nimport isEmpty from 'lodash/isEmpty';\nimport ReCAPTCHA from 'react-google-recaptcha';\nimport { t, translationRenderer } from '@jotforminc/translation';\nimport { Texts } from '@jotforminc/constants';\nimport { IconChevronLeft, IconExclamationCircleFilled } from '@jotforminc/svg-icons';\nimport { isEnterprise } from '@jotforminc/enterprise-utils';\nimport { listenEnter, validateEmail } from '@jotforminc/utils';\nimport { getEnterpriseLogo } from '@jotforminc/request-layer';\n\nimport '../styles/signup-with-social-opts.scss';\nimport '../styles/style.scss';\n\nimport {\n BACK,\n CONTINUE,\n CONTINUE_SIGNUP,\n CREATE_ACCOUNT,\n DESCRIPTION_MESSAGE,\n EMAIL,\n EMAIL_ADDRESS,\n ENTER_EMAIL_ADDRESS,\n ENTER_FULL_NAME,\n OR,\n OR_SIGN_UP_WITH,\n SIGNING_UP_WITH,\n SIGN_UP_WITH,\n TITLE_MESSAGE,\n errorMessages\n} from '../constants';\nimport RenderSocialButtons from './SocialButtons';\nimport Password from './Password';\nimport TermsAndConditionsUrls from './TermsAndConditionsUrls';\nimport { isTurkishLanguage } from '../utils/loginSignup';\nimport {\n dispatchAction,\n formUserCreate,\n formUserPretendCreate,\n isEmailEligibleForRegister,\n registerNewUser\n} from '../api';\nimport { openOFACModal } from './OFACModal';\nimport { errorNormalizer } from '../utils/helper';\n\nconst SignupWithSocialOpts = ({\n onAppleLoginClick,\n onMicrosoftLoginClick,\n onFBLoginClick,\n onSalesforceLoginClick,\n onGoogleLoginClick,\n onNavigationChangeRequest,\n user,\n isHIPAA,\n enforceHIPAARuleSet,\n includeConfirm,\n appName,\n buttonNames,\n signupPredefinedEmail,\n forceUser,\n verificationHash,\n ofacModalRef,\n onLoginSuccess,\n shrinkConfirmOnMobile,\n shrinkConfirmHeight,\n disableEmail,\n changeActiveScreen,\n builderShowSlides,\n productType,\n redirectURL,\n fromSACL,\n initiator,\n showLogoOnSignupOptions,\n enterpriseLogo,\n hideGreetingMessageOnSignupOptions,\n greetingMessage,\n greetingDescription,\n logoSource,\n thereSocialError,\n thereErrorMessage,\n // A/B Test: signupOnboardingIV\n isOnboardingFlow,\n isOnboardingTestVariantReversed\n}) => {\n const isEnterpriseEnv = isEnterprise();\n const isTurkish = isTurkishLanguage(user);\n const termsRef = useRef();\n const nameRef = useRef();\n const passwordRef = useRef();\n const emailInputRef = useRef();\n const captchaRef = useRef();\n let invalidFieldRefs = {};\n\n const [step, setStep] = useState('initial');\n const [isAgreedTerms, setIsAgreedTerms] = useState(false);\n const [termsError, setTermsError] = useState('');\n const [securePasswordErrors, setSecurePasswordErrors] = useState([]);\n const [passwordError, setPasswordError] = useState('');\n const [confirmPasswordError, setConfirmPasswordError] = useState('');\n const [emailErrorMsg, setEmailErrorMsg] = useState('');\n const [nameErrorMsg, setNameErrorMsg] = useState('');\n const [signupErrorMsg, setSignupErrorMsg] = useState('');\n const [emailIsLoading, setEmailIsLoading] = useState(false);\n const [signupIsLoading, setSignupIsLoading] = useState(false);\n const [email, setEmail] = useState(signupPredefinedEmail || window.opener?.signUpDefaultEmail || '');\n const [name, setName] = useState(window.opener?.signUpDefaultName || '');\n const [screenHeight] = useState(window.innerHeight);\n const [showRecaptcha, setShowRecaptcha] = useState(false);\n const [recaptcha, setRecaptcha] = useState(null);\n const invalidFieldFocusOrder = ['name', 'password', 'terms'];\n\n const enterpriseEnv = isEnterprise();\n\n const jfLogoSource = logoSource || 'https://cdn.jotfor.ms/assets/img/v4/logo-branding21.png';\n const jfLogo = enterpriseEnv ? getEnterpriseLogo() : jfLogoSource;\n\n // A/B Test: signupOnboardingIV\n useEffect(() => {\n if (isOnboardingFlow && window.innerWidth > 480) {\n emailInputRef?.current?.focus?.();\n } else {\n emailInputRef?.current?.blur?.();\n }\n }, [isOnboardingFlow]);\n\n const resetPasswordErrors = () => {\n setSecurePasswordErrors([]);\n setPasswordError('');\n };\n\n const handleChangeTerms = () => {\n setIsAgreedTerms(!isAgreedTerms);\n setTermsError((termsError && !isAgreedTerms) ? '' : termsError);\n };\n\n const focusFirstInvalidField = () => {\n let firstInvalidFieldByOrder = '';\n invalidFieldFocusOrder.forEach(fieldName => {\n if (!firstInvalidFieldByOrder && invalidFieldRefs[fieldName]) {\n firstInvalidFieldByOrder = fieldName;\n }\n });\n\n if (firstInvalidFieldByOrder && firstInvalidFieldByOrder === 'password') {\n invalidFieldRefs.password.current.inputRef.current.focus();\n } else if (firstInvalidFieldByOrder) {\n invalidFieldRefs[firstInvalidFieldByOrder]?.current?.focus();\n }\n\n invalidFieldRefs = {};\n };\n\n const handleSignupFormValidations = useCallback(async () => {\n if (nameErrorMsg) {\n invalidFieldRefs.name = nameRef;\n }\n\n if (!isEnterpriseEnv && !isAgreedTerms) {\n invalidFieldRefs.terms = termsRef;\n setTermsError(errorMessages.termsRequired);\n }\n\n const { isValid, password } = await passwordRef.current.validate();\n if (!isValid) {\n invalidFieldRefs.password = passwordRef;\n }\n\n focusFirstInvalidField();\n\n return { isValid, password };\n });\n\n const handleValidateEmail = async () => {\n if (!email) {\n return setEmailErrorMsg(errorMessages.required);\n }\n\n if (!validateEmail(email)) {\n return setEmailErrorMsg(errorMessages.validEmail);\n }\n\n try {\n setEmailIsLoading(true);\n\n const response = await isEmailEligibleForRegister({ email, verificationHash });\n\n if (response.status === 200) {\n setStep('fields');\n }\n } catch (error) {\n if (error?.message === \"Sorry, you can't signup from this country.\") {\n if (appName === 'formBuilder' && typeof builderShowSlides === 'function') {\n builderShowSlides(false);\n }\n\n return changeActiveScreen('ofacModal');\n }\n\n setEmailErrorMsg(error?.message);\n } finally {\n setEmailIsLoading(false);\n }\n };\n\n const forceUserSignup = async (password, recaptchaHash) => {\n const defaultButtonName = appName ? `emailSignup-${appName}` : '';\n const buttonName = buttonNames.emailSignup ? buttonNames.emailSignup : defaultButtonName;\n\n try {\n const response = await registerNewUser({\n email,\n password,\n name,\n isAgreedTerms: isAgreedTerms ? '1' : '0',\n buttonName,\n refApp: appName,\n recaptcha: recaptchaHash\n });\n\n response.data.newUser = true;\n onLoginSuccess(response, true);\n setSignupIsLoading(false);\n } catch (error) {\n if (captchaRef) {\n captchaRef.current?.reset();\n }\n\n if (error?.message === \"Sorry, you can't signup from this country.\") {\n return openOFACModal(ofacModalRef, email);\n }\n\n const passwordWarning = error?.message?.includes('PasswordWarning::');\n if (passwordWarning || error?.cause === 'password') {\n passwordRef?.current?.focus();\n return setPasswordError(passwordWarning ? error?.message?.replace('PasswordWarning::', '') : error?.message);\n }\n\n if (error?.message === 'REQUIRE_CAPTCHA') {\n dispatchAction({\n actor: window?.user?.username || window?.__formInfo?.username || 'unknown',\n target: 'swso',\n action: 'captcha-required'\n });\n return setShowRecaptcha(true);\n }\n\n setSignupErrorMsg(error?.message);\n } finally {\n setSignupIsLoading(false);\n }\n };\n\n // User is already created, just need to set their password with this.\n const formUserPretendSignup = async password => {\n try {\n const response = await formUserPretendCreate({\n email,\n password,\n name,\n isAgreedTerms: isAgreedTerms ? '1' : '0',\n verificationHash,\n isHIPAA: isHIPAA ? '1' : ''\n });\n\n onLoginSuccess(response);\n } catch (error) {\n if (error?.message === \"Sorry, you can't signup from this country.\") {\n return openOFACModal(ofacModalRef, email);\n }\n\n if (error?.message?.includes('Name')) {\n nameRef?.current?.focus();\n return setNameErrorMsg(error?.message);\n }\n\n setSignupErrorMsg(error?.message);\n } finally {\n setSignupIsLoading(false);\n }\n };\n\n const formUserSignup = async password => {\n try {\n const response = await formUserCreate({\n email,\n password,\n name,\n isAgreedTerms: isAgreedTerms ? '1' : '0',\n fromSACL,\n initiator,\n redirectURL,\n appName,\n sendVerification: productType === 'form' ? '1' : '0'\n });\n\n const { content: createdUser } = response;\n\n if (window?.JFAppsManager?.isOpenedInPortal()) {\n window.JFAppsManager.userChanged(createdUser);\n }\n\n onLoginSuccess(response);\n } catch (error) {\n if (error?.message === \"Sorry, you can't signup from this country.\") {\n return openOFACModal(ofacModalRef, email);\n }\n\n setSignupErrorMsg(error?.message);\n } finally {\n setSignupIsLoading(false);\n }\n };\n\n const handleEmailSignup = async () => {\n setSignupIsLoading(true);\n setSignupErrorMsg('');\n setNameErrorMsg('');\n\n const { isValid: isPasswordValid, password } = await handleSignupFormValidations();\n\n if (!isPasswordValid || !isAgreedTerms || !isEmpty(securePasswordErrors) || confirmPasswordError) {\n return setSignupIsLoading(false);\n }\n\n if (forceUser) {\n return forceUserSignup(password, recaptcha);\n }\n\n if (signupPredefinedEmail && verificationHash) {\n return formUserPretendSignup(password);\n }\n\n return formUserSignup(password);\n };\n\n const handleSubmitCaptcha = hash => {\n if (!hash) {\n dispatchAction({\n actor: window?.user?.username || window?.__formInfo?.username || 'unknown',\n target: 'swso',\n action: 'captcha-expired'\n });\n return setSignupIsLoading(false);\n }\n\n dispatchAction({\n actor: window?.user?.username || window?.__formInfo?.username || 'unknown',\n target: 'swso',\n action: 'captcha-passed'\n });\n\n setRecaptcha(hash);\n };\n\n const handleSignupFormKeypress = event => {\n if (event.key === 'Enter' && step === 'fields') {\n handleEmailSignup();\n }\n\n if (event.key !== 'Enter' && step === 'initial') {\n setEmailErrorMsg();\n }\n };\n\n useEffect(() => {\n if (name && nameErrorMsg) {\n setNameErrorMsg('');\n }\n }, [name, nameErrorMsg]);\n\n useEffect(() => {\n window.addEventListener('keydown', handleSignupFormKeypress);\n\n return () => window.removeEventListener('keydown', handleSignupFormKeypress);\n }, [step, termsError, isAgreedTerms]);\n\n return (\n \n {showLogoOnSignupOptions && step !== 'fields' && \"Logo\"}\n {!enterpriseEnv && !hideGreetingMessageOnSignupOptions && step !== 'fields' && (

{t(greetingMessage)}

)}\n {!!greetingDescription && step !== 'fields' && (

{t(greetingDescription)}

)}\n {step === 'initial' && (\n
\n
\n {!isOnboardingFlow &&

{t(SIGN_UP_WITH)}

}\n
\n \n
\n {thereSocialError && (\n
\n \n {t(errorNormalizer(thereErrorMessage))}\n
\n )}\n
\n
\n {t(!isOnboardingFlow ? OR : OR_SIGN_UP_WITH)}\n
\n
\n
\n \n listenEnter(e, handleValidateEmail)}\n onChange={e => setEmail(e.target.value)}\n className={emailErrorMsg && 'input-error'}\n placeholder={isOnboardingFlow ? t(ENTER_EMAIL_ADDRESS) : ''}\n />\n {emailErrorMsg && (\n
\n \n {t(emailErrorMsg)}\n
\n )}\n
\n handleValidateEmail()}\n >\n {emailIsLoading && (\n \n
\n {t('Loading')}\n ...\n \n )}\n {!emailIsLoading && t(!isOnboardingFlow ? CONTINUE : 'Continue with Email')}\n \n {!isOnboardingFlow && (\n
\n {t(Texts.ALREADY_HAVE_ACCOUNT)}\n {' '}\n onNavigationChangeRequest('loginOptions')}\n id=\"login-link\"\n >\n {t(Texts.LOGIN_TEXT)}\n \n
\n )}\n
\n
\n )}\n {step === 'fields' && (\n <>\n
\n \n
\n
\n

{t(CONTINUE_SIGNUP)}

\n

\n {translationRenderer(SIGNING_UP_WITH)({\n renderer1: () => (\n \n {email}\n \n )\n })}\n

\n
\n
\n \n setName(e.target.value)}\n className={nameErrorMsg && 'input-error'}\n placeholder={isOnboardingFlow ? t(ENTER_FULL_NAME) : ''}\n />\n {nameErrorMsg && (\n
\n {t(nameErrorMsg)}\n
\n )}\n
\n
\n setSecurePasswordErrors(errorCodes)}\n callbackConfirmPassError={confirmPassErrorCode => setConfirmPasswordError(confirmPassErrorCode)}\n checkReuse={false}\n includeConfirm={includeConfirm && !(shrinkConfirmOnMobile && screenHeight < shrinkConfirmHeight)}\n />\n
\n {!isEnterpriseEnv && (\n
\n
\n handleChangeTerms()}\n disabled={signupIsLoading}\n aria-label={isEnterpriseEnv && !isAgreedTerms ? t(Texts.AGREE_TERMS_CONDITIONS) : null}\n />\n }\n />\n
\n
\n {termsError ? t(termsError) : null}\n
\n
\n )}\n {signupErrorMsg && (\n
\n \n {t(signupErrorMsg)}\n
\n )}\n {showRecaptcha && (\n
\n handleSubmitCaptcha(hash)}\n />\n
\n )}\n handleEmailSignup()}\n >\n {signupIsLoading && (\n \n
\n {t('Loading')}\n ...\n \n )}\n {!signupIsLoading && (!isOnboardingFlow ? t(Texts.SIGN_UP) : t(CREATE_ACCOUNT))}\n \n {!isOnboardingFlow && (\n
\n {t(Texts.ALREADY_HAVE_ACCOUNT)}\n {' '}\n onNavigationChangeRequest('loginOptions')}\n id=\"login-link\"\n >\n {t(Texts.LOGIN_TEXT)}\n \n
\n )}\n
\n
\n \n )}\n
\n );\n};\n\nSignupWithSocialOpts.propTypes = {\n onNavigationChangeRequest: PropTypes.func.isRequired,\n user: PropTypes.shape(),\n isHIPAA: PropTypes.bool,\n enforceHIPAARuleSet: PropTypes.bool,\n includeConfirm: PropTypes.bool,\n shrinkConfirmOnMobile: PropTypes.bool,\n shrinkConfirmHeight: PropTypes.number,\n onAppleLoginClick: PropTypes.func.isRequired,\n onMicrosoftLoginClick: PropTypes.func.isRequired,\n onFBLoginClick: PropTypes.func.isRequired,\n onSalesforceLoginClick: PropTypes.func.isRequired,\n onGoogleLoginClick: PropTypes.func.isRequired,\n onLoginSuccess: PropTypes.func.isRequired,\n changeActiveScreen: PropTypes.func.isRequired,\n builderShowSlides: PropTypes.func,\n verificationHash: PropTypes.string,\n signupPredefinedEmail: PropTypes.string,\n ofacModalRef: PropTypes.object,\n buttonNames: PropTypes.shape({\n google: PropTypes.string,\n facebook: PropTypes.string,\n apple: PropTypes.string,\n microsoft: PropTypes.string,\n emailLogin: PropTypes.string,\n emailSignup: PropTypes.string\n }),\n appName: PropTypes.string,\n productType: PropTypes.string,\n redirectURL: PropTypes.string,\n forceUser: PropTypes.bool,\n disableEmail: PropTypes.bool,\n fromSACL: PropTypes.bool,\n showLogoOnSignupOptions: PropTypes.bool,\n enterpriseLogo: PropTypes.string,\n hideGreetingMessageOnSignupOptions: PropTypes.bool,\n greetingMessage: PropTypes.string,\n greetingDescription: PropTypes.string,\n logoSource: PropTypes.string,\n thereSocialError: PropTypes.bool,\n thereErrorMessage: PropTypes.string,\n isOnboardingFlow: PropTypes.bool,\n initiator: PropTypes.string,\n isOnboardingTestVariantReversed: PropTypes.bool\n};\n\nSignupWithSocialOpts.defaultProps = {\n user: null,\n isHIPAA: false,\n enforceHIPAARuleSet: false,\n includeConfirm: false,\n shrinkConfirmOnMobile: false,\n shrinkConfirmHeight: 750,\n verificationHash: '',\n signupPredefinedEmail: '',\n ofacModalRef: {},\n buttonNames: {},\n appName: '',\n productType: '',\n redirectURL: '',\n forceUser: false,\n disableEmail: false,\n fromSACL: false,\n builderShowSlides: f => f,\n showLogoOnSignupOptions: false,\n enterpriseLogo: null,\n hideGreetingMessageOnSignupOptions: false,\n greetingMessage: TITLE_MESSAGE,\n greetingDescription: DESCRIPTION_MESSAGE,\n logoSource: '',\n thereSocialError: false,\n thereErrorMessage: errorMessages.tryAgain,\n isOnboardingFlow: false,\n initiator: '',\n isOnboardingTestVariantReversed: false\n};\n\nexport default SignupWithSocialOpts;\n","import {\n bool, func, shape, string\n} from 'prop-types';\nimport React from 'react';\n\nimport { Texts } from '@jotforminc/constants';\nimport { t } from '@jotforminc/translation';\nimport { IconChevronLeft } from '@jotforminc/svg-icons';\nimport ErrorAlert from './ErrorAlert';\n\nconst RecoverAccountPage = ({\n onNavigationChangeRequest,\n handle2FARecoverAccount,\n tfaAccountRecoveryProps\n}) => {\n const { isLoading, isErrored, errorMessage } = tfaAccountRecoveryProps;\n\n const handleRecoverButtonClick = () => {\n handle2FARecoverAccount();\n };\n\n return (\n
\n
\n
\n

{t(Texts.RECOVER_ACCOUNT_TEXT)}

\n
\n
\n \n {isLoading ? (\n t(Texts.SENDING)\n ) : (\n t(Texts.RECOVER_YOUR_ACCOUNT)\n )}\n \n {(isErrored && errorMessage) && }\n
\n
\n onNavigationChangeRequest('twoFactorLogin')}\n >\n
\n \n \n {t(Texts.BACK_TO_LOGIN)}\n \n
\n \n
\n
\n );\n};\n\nexport default RecoverAccountPage;\n\nRecoverAccountPage.propTypes = {\n onNavigationChangeRequest: func,\n handle2FARecoverAccount: func,\n tfaAccountRecoveryProps: shape({\n isErrored: bool,\n isLoading: bool,\n errorMessage: string\n })\n};\n\nRecoverAccountPage.defaultProps = {\n onNavigationChangeRequest: f => f,\n handle2FARecoverAccount: f => f,\n tfaAccountRecoveryProps: {\n isErrored: false,\n isLoading: false,\n errorMessage: ''\n }\n};\n","import { Texts } from '@jotforminc/constants';\nimport { t } from '@jotforminc/translation';\nimport { shape, string } from 'prop-types';\nimport React from 'react';\n\nconst RecoverAccountNotification = ({\n tfaAccountRecoveryProps\n}) => {\n const { email } = tfaAccountRecoveryProps;\n\n return (\n
\n
\n
\n

{t(Texts.VERIFICATION_EMAIL_SENT_TO)}

\n {email}\n
\n

{t(Texts.RECOVER_ACCOUNT_EMAIL_INFO_TEXT)}

\n

{t(Texts.RECOVER_ACCOUNT_NOTIFICATION_TEXT)}

\n
\n
\n );\n};\n\nexport default RecoverAccountNotification;\n\nRecoverAccountNotification.propTypes = {\n tfaAccountRecoveryProps: shape({\n email: string\n })\n};\n\nRecoverAccountNotification.defaultProps = {\n tfaAccountRecoveryProps: {\n email: ''\n }\n};\n","import { func, shape, string } from 'prop-types';\nimport React from 'react';\n\nimport { t } from '@jotforminc/translation';\nimport { Texts } from '@jotforminc/constants';\nimport { IconChevronLeft } from '@jotforminc/svg-icons';\nimport { handleCustomNavigation } from '@jotforminc/utils';\n\nconst AccountRecoveryViewTicket = ({\n onNavigationChangeRequest, tfaAccountRecoveryProps\n}) => {\n const { ticket } = tfaAccountRecoveryProps;\n const handleViewTicket = () => {\n handleCustomNavigation(ticket, '_blank', true);\n };\n\n return (\n
\n
\n
\n

{t(Texts.RECOVER_ACCOUNT_MAIL_HAS_BEEN_SENT)}

\n
\n \n {t(Texts.VIEW_SUPPORT_TICKET)}\n \n\n
\n onNavigationChangeRequest('twoFactorLogin')}\n >\n
\n \n \n {t(Texts.BACK_TO_LOGIN)}\n \n
\n \n
\n
\n );\n};\n\nexport default AccountRecoveryViewTicket;\n\nAccountRecoveryViewTicket.propTypes = {\n onNavigationChangeRequest: func,\n tfaAccountRecoveryProps: shape({\n ticket: string\n })\n};\n\nAccountRecoveryViewTicket.defaultProps = {\n onNavigationChangeRequest: f => f,\n tfaAccountRecoveryProps: {\n ticket: ''\n }\n};\n","/* eslint-disable max-lines,react/sort-comp */\n/* global HTMLElement */\nimport React from 'react';\nimport {\n shape,\n bool,\n string,\n func,\n oneOf,\n node,\n arrayOf,\n number,\n element,\n elementType,\n oneOfType,\n object\n} from 'prop-types';\nimport ReactDOM from 'react-dom';\nimport Axios from 'axios';\nimport qs from 'querystring';\nimport isEmpty from 'lodash/isEmpty';\nimport omit from 'lodash/omit';\nimport { Dialog } from '@jotforminc/dialog';\nimport { Portal } from '@jotforminc/uikit';\nimport { Texts } from '@jotforminc/constants';\nimport {\n createFormData,\n loadJS,\n getPossibleTimeZone,\n initGoogleSignin,\n initFBSignin,\n initAppleSignin,\n initMicrosoftSignin,\n initSalesforceSignin,\n randomString,\n getUrlParameter,\n classNames,\n handleCustomNavigation\n} from '@jotforminc/utils';\nimport { t } from '@jotforminc/translation';\nimport { isEnterprise } from '@jotforminc/enterprise-utils';\n\nimport SignupOptions from './SignupOptions';\nimport SignupWithEmail from './SignupWithEmail';\nimport LoginOptions from './LoginOptions';\nimport ForgotPassword from './ForgotPassword';\nimport TwoFactorLogin from './TwoFactorLogin';\nimport EmailAuthLogin from './EmailAuthLogin';\nimport TwoFactorMethods from './TwoFactorMethods';\nimport SocialInit from './SocialInit';\nimport LoginError from './LoginError';\nimport DeleteAccountModal from './DeleteAccountModal';\nimport CloseWithCircleSVG from '../temporary-duplicate/assets/svg/closeWithCircle.svg';\nimport ResetSuccess from './ResetSuccess';\nimport '../styles/style.scss';\nimport '../temporary-duplicate/styles/SaveAndContinueLater/style.scss';\nimport {\n forceUserSocialLogin,\n handleLoginHelper,\n getScreenResolution,\n handleSignupCompletedEvents,\n createGoogleOneTapContainerEl,\n hideGoogleOneTapContainerEl\n} from '../utils/loginSignup';\nimport SocialTermsStep from './SocialTermsStep';\nimport renderStandaloneSocialTermsModal from '../utils/renderStandaloneSocialTermsModal';\nimport renderStandaloneEmailAuthModal from '../utils/renderStandaloneEmailAuthModal';\nimport { preLoginCheck, verifyAndDelete, verifyUser } from '../utils/helper';\nimport VerifyAccountModal from './VerifyAccountModal';\nimport { OFACModal, openOFACModal } from './OFACModal';\nimport UnusualSignup from './UnusualSignup';\nimport SignupWithSocialOpts from './SignupWithSocialOpts';\nimport RecoverAccountPage from './RecoverAccountPage';\nimport RecoverAccountNotification from './RecoverAccountNotification';\nimport AccountRecoveryViewTicket from './AccountRecoveryViewTicket';\nimport {\n send2FAAccountRecoveryEmail,\n getUserSSOStatus\n} from '../api';\n\nexport default class LoginFlow extends React.Component {\n constructor(props) {\n super(props);\n\n const {\n user, initialScreen, forceLogin, enableGoogleOneTap, mode\n } = props;\n\n this.isLoggedIn = !!user;\n\n this.state = {\n activeScreenKey: forceLogin ? 'loginOptions' : initialScreen,\n thereSocialError: false,\n lastLoginCredentials: { username: '', password: '' },\n lastTFAResponse: {},\n lastEAResponse: {},\n tfaMethod: '',\n lastSocialLoginToken: '',\n lastSocialLoginType: '',\n isSocialTFA: false,\n isSocialEA: false, // social email authentication\n thereErrorMessage: {},\n showThankyouModal: true,\n socialUserProfile: {},\n socialLoginVerificationHash: '',\n // SignupOptions social buttons\n isMsSignupTestEnabled: false,\n isMsSignupControlVariant: false, // Enables facebook option\n isMsSignupTestBVariant: true, // Enables microsoft option\n isMsSignupTestCVariant: false, // Enables both microsoft & facebook option\n isSwsoTestVariant: false,\n areSocialButtonsLoading: false,\n idToken: '',\n mode: mode,\n externalErrorMessage: '',\n tfaAccountRecoveryProps: {\n errorMessage: '', email: '', isErrored: false, isLoading: false\n }\n };\n\n this.activeComponentRef = React.createRef(null); // either delete modal or verify modal ref\n this.portalRef = React.createRef(null);\n this.ofacModalRef = React.createRef();\n this.handleSocialTFAResponse = this.handleSocialTFAResponse.bind(this);\n this.handleSocialEAResponse = this.handleSocialEAResponse.bind(this);\n this.handleTFAResponse = this.handleTFAResponse.bind(this);\n this.handleTFALogin = this.handleTFALogin.bind(this);\n this.handleEALogin = this.handleEALogin.bind(this);\n this.handleAppleSuccess = this.handleAppleSuccess.bind(this);\n this.handleDeleteAccount = this.handleDeleteAccount.bind(this);\n this.handle2FASocialLoginRequest = this.handle2FASocialLoginRequest.bind(this);\n this.nonce = randomString(32);\n loadJS('facebook-jssdk', 'https://connect.facebook.net/en_US/sdk.js');\n loadJS('google-jssdk-new', 'https://accounts.google.com/gsi/client');\n loadJS('apple-jssdk', 'https://appleid.cdn-apple.com/appleauth/static/jsapi/appleid/1/en_US/appleid.auth.js');\n loadJS('microsoft-jssdk', 'https://cdn.jotfor.ms/js/msal/msal-browser.js');\n\n if (enableGoogleOneTap) loadJS('googleOneTap', 'https://accounts.google.com/gsi/client', this.initializeGoogleOneTap);\n\n this.checkQueryParamsForNavigationChange();\n\n // accountSharing A/B Test\n this.initAccountSharingActions();\n }\n\n initActionRecorder = () => {\n window.actionRecorder = window.JotFormActions('LoginFlow');\n };\n\n loadJotformActions = () => {\n if (window.JotFormActions) {\n this.initActionRecorder();\n return;\n }\n const s = global.document.createElement('script');\n s.onload = () => {\n this.initActionRecorder();\n };\n s.src = '//js.jotform.com/actions.js';\n global.document.head.appendChild(s);\n };\n\n // A/B Test: microsoftSignup\n componentDidMount() {\n this.loadJotformActions();\n const {\n showUnusualSignupFlow, unusualSignupCode, unusualSignupToken, initialScreen, swsoTestVariant\n } = this.props;\n\n if (showUnusualSignupFlow && !isEmpty(unusualSignupCode) && !isEmpty(unusualSignupToken)) {\n this.setState({\n mode: 'unusual-signup'\n });\n }\n\n if (initialScreen === 'signupWithSocialOpts' || swsoTestVariant) {\n this.setState({\n isSwsoTestVariant: true\n });\n }\n\n if (isEnterprise()) {\n this.handlePreLoginCheck();\n }\n }\n\n componentWillUnmount() {\n if (this.clearError) {\n clearTimeout(this.clearError);\n }\n }\n\n // Handle Pre Login Check Function\n handlePreLoginCheck = async () => {\n try {\n const result = await preLoginCheck();\n if (result?.preLogin) {\n const cleanResult = omit(result, ['preLogin']);\n const { primaryMethod = '' } = cleanResult;\n this.setState({\n lastTFAResponse: cleanResult,\n isSocialTFA: false,\n tfaMethod: primaryMethod\n });\n this.handleNavigationChangeRequest('twoFactorLogin');\n }\n } catch (error) {\n this.setState({\n externalErrorMessage: error.message\n });\n }\n };\n\n setExternalErrorMessage = message => {\n this.setState({\n externalErrorMessage: message\n });\n };\n\n // todo: remove the method after the test ends\n initAccountSharingActions = () => {\n if (window.JotFormActions && !window.__accountSharingActions) {\n window.__accountSharingActions = window.JotFormActions('accountSharing');\n }\n window.__accountSharingLogger = ({ action, target }) => {\n if (window.JOTFORM_ENV !== 'PRODUCTION') return;\n const { user: userProp } = this.props;\n const actor = userProp?.username || window.user?.username;\n window.__accountSharingActions?.tick({ actor, action, target });\n };\n };\n\n checkQueryParamsForNavigationChange = () => {\n const queryParams = new URLSearchParams(window.location.search);\n const view = queryParams.get('view');\n\n if (view === 'forgotPassword') {\n this.handleNavigationChangeRequest('forgotPassword');\n }\n };\n\n handleGoogleOnetapResponse = googleUser => {\n const token = googleUser.credential;\n const { socialUserProfile: currentProfile } = this.state;\n this.setState({\n socialUserProfile: {\n token,\n ...currentProfile,\n type: 'googleOneTap'\n },\n socialLoginVerificationHash: ''\n }, () => this.socialLoginRequest('googleOneTap', token, undefined, undefined, true));\n };\n\n initializeGoogleOneTap = () => {\n if (typeof window.GOOGLE_SIGNON === 'undefined') {\n return true;\n }\n\n if (typeof window.JOTFORM_ENV === 'undefined' || window.JOTFORM_ENV === 'ENTERPRISE' || window.JOTFORM_ENV === 'TESTING' || window.JOTFORM_ENV === 'DEVELOPMENT') {\n return true;\n }\n\n if (window.userData && window.userData.account_type && window.userData.account_type.name !== 'GUEST') {\n return true;\n }\n\n if (document.querySelector('.removeAuthButtons')) {\n return true;\n }\n\n createGoogleOneTapContainerEl();\n\n window.google.accounts.id.initialize({\n client_id: window.GOOGLE_SIGNON,\n cancel_on_tap_outside: false,\n prompt_parent_id: 'oneTapLoginArea',\n callback: this.handleGoogleOnetapResponse,\n state_cookie_domain: 'jotform.com'\n });\n window.google.accounts.id.prompt(notification => {\n if (notification.isNotDisplayed() || notification.isSkippedMoment()) {\n console.log('GoogleOnetap Skipped', notification.getNotDisplayedReason());\n }\n });\n };\n\n handleSocialTermsRequired = ({ socialLoginHash, socialUserProfile, idToken }) => {\n const { socialUserProfile: currentProfile } = this.state;\n this.setState({\n socialLoginVerificationHash: socialLoginHash,\n socialUserProfile: { ...currentProfile, ...socialUserProfile },\n idToken\n }, () => this.showTermsStep());\n };\n\n handleSocialTermsModalClose = () => {\n this.setState({\n socialLoginVerificationHash: '',\n socialUserProfile: {}\n });\n };\n\n showTermsStep = () => {\n const { user, showSocialTermsStepAsModal } = this.props;\n const { socialUserProfile, socialUserProfile: { type, isFormUser = false } } = this.state;\n hideGoogleOneTapContainerEl();\n if (showSocialTermsStepAsModal || type === 'googleOneTap' || isFormUser) {\n renderStandaloneSocialTermsModal({\n user,\n socialUserProfile,\n onSocialTermsContinue: this.handleSocialTermsContinue,\n onSocialTermsClose: this.handleSocialTermsModalClose\n });\n } else {\n this.handleNavigationChangeRequest('socialTermsStep');\n }\n };\n\n handleSocialTermsContinue = isTermsAgreed => {\n const { socialUserProfile: { type, token } } = this.state;\n if (isTermsAgreed) {\n this.socialLoginRequest(type, token);\n }\n };\n\n /**\n * Fires when the user suceeds logging in through a single sign on\n * using SAML.\n * @param {object} response response holding user data.\n */\n handleSSOLoginSuccess = response => {\n preLoginCheck().then(preLoginResponse => {\n const { preLogin: hasMFA, primaryMethod = '' } = preLoginResponse;\n if (hasMFA) {\n // If user has multi factor authantication, proceed to that.\n this.setState({\n lastTFAResponse: preLoginResponse,\n isSocialTFA: false,\n tfaMethod: primaryMethod\n });\n this.handleNavigationChangeRequest('twoFactorLogin');\n } else {\n this.handleLoginSuccess(response);\n }\n });\n };\n\n handleSSOLoginFail = message => {\n // TODO: request UI text review and add translation\n const errorMessage = message ?? 'An error occured in single sign on process';\n this.setExternalErrorMessage(errorMessage);\n };\n\n handleAppleSuccess = ({\n user: {\n email,\n name: {\n firstName = '',\n lastName = ''\n } = {}\n } = {},\n authorization: {\n code,\n id_token: idToken\n }\n }) => {\n const {\n actionLogger, apiURL, appName, buttonNames\n } = this.props;\n if (actionLogger) {\n actionLogger({\n target: 'appleLogin'\n });\n }\n\n const defaultButtonName = appName ? `apple-${appName}` : '';\n const buttonName = buttonNames.apple ? buttonNames.apple : defaultButtonName;\n\n const { isSocialLoginForDeleteMyAccountFlow, isSocialLoginForVerification } = this.props;\n\n if (isSocialLoginForDeleteMyAccountFlow || isSocialLoginForVerification) {\n const token = JSON.stringify({ authorizationCode: code, identityToken: idToken, realNonce: this.nonce });\n const verifierFunction = isSocialLoginForDeleteMyAccountFlow ? this.handleDeleteAccount : this.handleVerifyAccount;\n verifierFunction('apple', token);\n return;\n }\n\n Axios.post(`${apiURL}/login/apple`, qs.stringify({\n authorizationCode: code,\n nonce: this.nonce,\n identityToken: idToken,\n name: `${firstName} ${lastName}`,\n email,\n language: global.navigator.language,\n timezone: getPossibleTimeZone(),\n screen_resolution: getScreenResolution(),\n location: global.location.pathname,\n button_name: buttonName,\n ref_app: appName\n }), {\n withCredentials: true,\n headers: {\n 'Content-Type': 'application/x-www-form-urlencoded'\n }\n })\n .then(response => {\n const {\n data: {\n responseCode, success, message, content = {}, duration\n }\n } = response;\n const isLogEnabled = getUrlParameter('logAppleLogin');\n\n if (isLogEnabled === '1') {\n console.log(response);\n }\n\n if (!success || responseCode !== 200) {\n throw new Error(message);\n }\n if (content?.isNewUser) {\n handleSignupCompletedEvents(undefined, 'apple');\n }\n const { primaryMethod = '' } = content;\n\n if (primaryMethod) {\n this.handle2FASocialLoginRequest({ ...content, duration: duration, success: success });\n return;\n }\n this.handleLoginSuccess(response);\n })\n .catch(error => {\n const { response: { data: { error: message = '' } = {} } = {}, message: errorMsg = '' } = error;\n if (message === \"Sorry, you can't signup from this country.\" || errorMsg === \"Sorry, you can't signup from this country.\") {\n openOFACModal(this.ofacModalRef, email);\n }\n\n if (message === 'Your account has been suspended.' || errorMsg === 'Your account has been suspended.') {\n return handleCustomNavigation('/account-suspended', '_self', true);\n }\n\n console.error('--Couldn\\'t login', error);\n this.handleSocialErrorChange(error);\n });\n };\n\n handleGoogleSuccess = googleUser => {\n const { code: token = '' } = googleUser || {};\n const { actionLogger } = this.props;\n const { socialUserProfile: currentProfile } = this.state;\n if (googleUser && token) {\n if (actionLogger) {\n actionLogger({\n target: 'googleLogin'\n });\n }\n this.setState({\n socialUserProfile: {\n token,\n type: 'google',\n ...currentProfile\n },\n socialLoginVerificationHash: ''\n }, () => this.socialLoginRequest('google', token));\n } else {\n this.handleSocialErrorChange(true);\n }\n };\n\n handleFacebookSuccess = ({ status, authResponse }) => {\n const { socialUserProfile: currentProfile } = this.state;\n const { accessToken: token = '' } = authResponse || {};\n if (status === 'connected' && authResponse && token) {\n const { actionLogger } = this.props;\n if (actionLogger) {\n actionLogger({\n target: 'facebookLogin'\n });\n }\n this.setState({\n socialUserProfile: {\n token,\n type: 'facebook',\n ...currentProfile\n },\n socialLoginVerificationHash: ''\n }, () => this.socialLoginRequest('facebook', token));\n } else {\n this.handleSocialErrorChange(true);\n }\n };\n\n handleMicrosoftSuccess = authResponse => {\n const { socialUserProfile: currentProfile } = this.state;\n const { accessToken = '', idToken = '' } = authResponse || {};\n if (authResponse && accessToken && idToken) {\n const multipleTokens = JSON.stringify({ idToken, accessToken });\n const { actionLogger } = this.props;\n if (actionLogger) {\n actionLogger({\n target: 'microsoftLogin'\n });\n }\n this.setState({\n socialUserProfile: {\n token: multipleTokens,\n type: 'microsoft',\n ...currentProfile\n },\n socialLoginVerificationHash: ''\n }, () => this.socialLoginRequest('microsoft', multipleTokens));\n } else {\n this.handleSocialErrorChange(true);\n }\n };\n\n handleSalesforceSuccess = authResponse => {\n const { socialUserProfile: currentProfile } = this.state;\n const { code = '', token = '' } = authResponse || {};\n if (authResponse && code && token) {\n const multipleTokens = JSON.stringify({ code, token });\n const { actionLogger } = this.props;\n if (actionLogger) {\n actionLogger({\n target: 'salesforceLogin'\n });\n }\n this.setState({\n socialUserProfile: {\n token: multipleTokens,\n type: 'salesforce',\n ...currentProfile\n },\n socialLoginVerificationHash: ''\n }, () => this.socialLoginRequest('salesforce', multipleTokens));\n } else {\n this.handleSocialErrorChange(true);\n }\n };\n\n handleGoogleFail = error => {\n this.handleSocialErrorChange(true);\n // eslint-disable-next-line no-console\n console.log('failure', error);\n };\n\n handleDeleteAccount = async (type, token) => {\n const { user } = this.props;\n\n const { credentials: { username } } = user;\n // All providers have their own error state management that's why there are nested control blocks\n try {\n const result = await verifyAndDelete({\n type, token, username\n });\n if (result === true || (typeof result === 'object' && result.token)) {\n this.activeComponentRef.current.handleStep(3);\n } else {\n this.setState({\n thereSocialError: true\n });\n }\n } catch (e) {\n this.setState({\n thereSocialError: true\n });\n }\n };\n\n handleVerifyAccount = async (type, token) => {\n const { user } = this.props;\n\n const { credentials: { username } } = user;\n // All providers have their own error state management that's why there are nested control blocks\n try {\n const result = await verifyUser({\n type, token, username\n });\n const isResultWithToken = (typeof result === 'object') && result.token;\n if (result === true || isResultWithToken) {\n this.activeComponentRef.current.approveVerification();\n // TODO if (isResultWithToken && isSocialLoginForVerification) {\n // set token\n // }\n } else {\n this.setState({\n thereSocialError: true\n });\n }\n } catch (e) {\n this.setState({\n thereSocialError: true\n });\n }\n };\n\n handle2FASocialLoginRequest = response => {\n const { primaryMethod = '' } = response;\n this.setState({\n lastTFAResponse: response,\n isSocialTFA: false,\n tfaMethod: primaryMethod\n });\n this.handleNavigationChangeRequest('twoFactorLogin');\n };\n\n socialLoginRequest = async (type, token, tfaVerificationCode, tfaMethod, eaVerificationCode) => {\n const { idToken } = this.state;\n this.setState({ lastSocialLoginType: type, lastSocialLoginToken: token });\n const {\n apiURL, forceUser, isSocialLoginForDeleteMyAccountFlow, appName, buttonNames, isSocialLoginForVerification, initiator\n } = this.props;\n\n if (isSocialLoginForDeleteMyAccountFlow || isSocialLoginForVerification) {\n const verifierFunction = isSocialLoginForDeleteMyAccountFlow ? this.handleDeleteAccount : this.handleVerifyAccount;\n verifierFunction(type, token);\n return;\n }\n const newGoogleFlow = type === 'google' ? 1 : 0;\n\n const { socialLoginVerificationHash } = this.state;\n const enableSocialTerms = true;\n const authToken = idToken ? idToken : token;\n if (forceUser) {\n // continue via request-server\n // since the api does not have\n // the functionality of claimGuestAccount\n forceUserSocialLogin(\n type,\n authToken,\n this.handleLoginSuccess,\n this.handleSocialErrorChange,\n appName,\n this.handleSocialTFAResponse,\n tfaVerificationCode,\n tfaMethod,\n buttonNames,\n socialLoginVerificationHash,\n this.handleSocialTermsRequired,\n enableSocialTerms,\n this.handleSocialEAResponse,\n eaVerificationCode,\n newGoogleFlow,\n this.ofacModalRef\n );\n return;\n }\n\n const isGoogle = type === 'google';\n\n Axios.post(`${apiURL}/formuser/login/${type === 'googleOneTap' ? 'google' : type}`, qs.stringify({\n token: authToken,\n checkSocialLogin: true,\n ...(initiator && { initiator }),\n ...(isGoogle && { newGoogleFlow }),\n ...(isGoogle && { redirectUri: window.location.host }),\n ...(socialLoginVerificationHash && { socialLoginHash: socialLoginVerificationHash })\n }), {\n withCredentials: true,\n headers: {\n 'Content-Type': 'application/x-www-form-urlencoded'\n }\n })\n .then(({ data: resp }) => {\n const {\n responseCode,\n message,\n content: {\n email, imageUrl, fullName, socialLoginHash, idToken: jwtToken\n }\n } = resp;\n\n if (responseCode !== 200) {\n throw new Error(message);\n }\n\n if (socialLoginHash) {\n this.handleSocialTermsRequired({\n socialLoginHash,\n socialUserProfile: {\n email,\n imageUrl,\n fullName,\n isFormUser: true\n },\n idToken: jwtToken\n });\n return { data: false };\n }\n return { data: resp };\n })\n .then(({ data: resp }) => {\n if (resp) {\n this.handleLoginSuccess(resp);\n }\n })\n .catch(error => {\n const { response: { data: { error: message = '' } = {} } = {}, message: errorMsg = '' } = error;\n if (message === \"Sorry, you can't signup from this country.\" || errorMsg === \"Sorry, you can't signup from this country.\") {\n openOFACModal(this.ofacModalRef);\n }\n\n if (message === 'Your account has been suspended.' || errorMsg === 'Your account has been suspended.') {\n return handleCustomNavigation('/account-suspended', '_self', true);\n }\n\n console.error('--Couldn\\'t login', error);\n this.handleSocialErrorChange(error);\n });\n };\n\n regularLoginRequest = async (username, password, _appName, _recaptcha, tfaToken, tfaTokenType, _buttonNames, eaToken, rememberDevice) => {\n const { apiURL } = this.props;\n const userLoginRequest = () => {\n return Axios.post(`${apiURL}/user/login`,\n createFormData({\n username,\n password,\n rememberDevice,\n ...(tfaToken && { token: tfaToken }),\n ...(eaToken && { eaToken: eaToken }),\n ...(tfaToken && { tokenType: tfaTokenType }),\n ...(!tfaToken && { eat: '1' }) // email auth parameter\n }), {\n withCredentials: true,\n headers: {\n 'Content-Type': 'application/x-www-form-urlencoded'\n }\n });\n };\n\n const formUserLoginRequest = () => {\n const { appName } = this.props;\n return Axios.post(`${apiURL}/formuser/login`, createFormData({\n email: username,\n password,\n ref_app: appName\n }), {\n withCredentials: true,\n headers: {\n 'Content-Type': 'application/x-www-form-urlencoded'\n }\n });\n };\n\n const handleConnectionFailure = error => {\n throw new LoginError('Network', null, 'An error occured: Please check your internet connection', error);\n };\n\n const parseResponse = async response => {\n const requestURL = response?.config?.url || '';\n const loginType = /formuser/.test(requestURL) ? 'formUser' : 'user';\n return { loginType, response: response.data };\n };\n\n let loginResponse;\n let tfaResponse = false;\n let requestError;\n const failedResponses = [];\n\n const loginRequests = tfaToken ? [userLoginRequest(username, password)] : [userLoginRequest(username, password), formUserLoginRequest(username, password)];\n await Promise.all(loginRequests.map(loginPromise => loginPromise.catch(handleConnectionFailure).then(parseResponse)))\n .then(responses => {\n responses.forEach(({ response, loginType }) => {\n const { responseCode = 500, message = '' } = response;\n if (responseCode === 200) {\n tfaResponse = response?.content?.primaryMethod || false;\n loginResponse = response;\n } else {\n failedResponses.push({\n loginType,\n message\n });\n }\n });\n })\n .catch(error => {\n if (!(error instanceof LoginError)) throw error;\n const { type } = error;\n if (['Network', 'jsonParse'].includes(type)) {\n requestError = error;\n }\n });\n\n // if (loginResponse?.emailAuthToken) return [false, loginResponse, false, true]; // email authentication\n\n if (loginResponse) {\n if (tfaResponse) {\n return [false, loginResponse, true, false]; // 2fa\n }\n return [true, loginResponse];\n }\n\n let userRequestError;\n let formUserRequestError;\n failedResponses.forEach(({ loginType, message }) => {\n if (loginType === 'formUser') {\n formUserRequestError = { message };\n } else if (!/You're not authorized to use/.test(message)) {\n userRequestError = { message };\n }\n });\n\n return [false, requestError || userRequestError || formUserRequestError];\n };\n\n handleLogin = (username, password, recaptcha, tfaToken, tfaTokenType, eaToken, rememberDevice, isRecovery) => {\n const {\n forceUser, appName, shouldCallNavigate, buttonNames\n } = this.props;\n const {\n regularLoginRequest, handleNavigationChangeRequest, handleLoginSuccess, handleTFAResponse, handleEAResponse\n } = this;\n return handleLoginHelper({\n username,\n password,\n tfaToken,\n tfaTokenType,\n forceUser,\n regularLoginRequest,\n handleNavigationChangeRequest,\n handleLoginSuccess,\n appName,\n recaptcha,\n shouldCallNavigate,\n handleTFAResponse,\n buttonNames,\n eaToken,\n handleEAResponse,\n rememberDevice,\n isRecovery\n });\n };\n\n handleLoginSuccess = (response = {}) => {\n const {\n content: user,\n data: { user: userData, newUser } = {},\n responseCode\n } = response;\n const {\n forceUser,\n onUserLogin,\n shouldCallNavigate,\n baseApp\n } = this.props;\n const { actionLogger } = this.props;\n if (actionLogger) {\n actionLogger({\n target: 'loginWithEmail'\n });\n }\n\n if (forceUser) {\n // be in mind that social logins dont return user\n onUserLogin(user || userData || false, { newUser });\n if (baseApp === 'form-encryption') {\n this.handleNavigationChangeRequest('verifyAccount');\n }\n } else if (responseCode === 200) {\n this.isLoggedIn = true;\n\n const { primaryMethod = '' } = user;\n if (primaryMethod) {\n this.handle2FASocialLoginRequest(user);\n return;\n }\n\n if (window?.JFAppsManager?.isOpenedInPortal()) {\n window.JFAppsManager.userChanged(user);\n }\n\n if (shouldCallNavigate) {\n this.handleNavigationChangeRequest('epilogue');\n }\n\n if (window.JFFormUserHelper) {\n window.JFFormUserHelper.setUser(user);\n }\n\n onUserLogin(user, { newUser });\n }\n };\n\n handleSalesforceLoginClick = () => {\n const { onSalesforceLoginClick } = this.props;\n\n const salesforceLogin = initSalesforceSignin();\n if (!salesforceLogin) return;\n salesforceLogin.then(this.handleSalesforceSuccess);\n\n onSalesforceLoginClick();\n };\n\n handleGoogleLoginClick = () => {\n const { onGoogleLoginClick } = this.props;\n const client = initGoogleSignin(this.handleGoogleSuccess);\n if (client) {\n client.requestCode();\n }\n\n onGoogleLoginClick();\n };\n\n handleAppleLoginClick = () => {\n const { onAppleLoginClick } = this.props;\n\n const appleSignin = initAppleSignin(this.nonce);\n if (appleSignin) appleSignin.then(this.handleAppleSuccess);\n\n onAppleLoginClick();\n };\n\n handleFBLoginClick = () => {\n const { onFBLoginClick } = this.props;\n\n const fbLogin = initFBSignin();\n if (!fbLogin) return;\n fbLogin(this.handleFacebookSuccess, { scope: 'public_profile,email' });\n\n onFBLoginClick();\n };\n\n handleMicrosoftLoginClick = () => {\n const { onMicrosoftLoginClick } = this.props;\n\n const microsoftLogin = initMicrosoftSignin();\n if (!microsoftLogin) return;\n microsoftLogin.then(this.handleMicrosoftSuccess);\n\n onMicrosoftLoginClick();\n };\n\n handleNavigationChangeRequest = nextRoute => {\n const isScreenExists = this.getActiveScreen(nextRoute);\n if (!isScreenExists) return;\n\n const { onNavigationChange } = this.props;\n\n this.setState({\n activeScreenKey: nextRoute,\n thereSocialError: false\n }, () => {\n onNavigationChange(nextRoute);\n });\n };\n\n handleSocialErrorChange = status => {\n this.setState({\n thereSocialError: !!status,\n thereErrorMessage: status\n }, () => {\n this.clearError = setTimeout(() => {\n this.setState({\n thereSocialError: false,\n thereErrorMessage: false\n });\n }, 3000);\n });\n };\n\n getActiveScreen = screenKey => {\n const loginScreens = {\n signupOptions: SignupOptions,\n signupWithEmail: SignupWithEmail,\n loginOptions: LoginOptions,\n forgotPassword: ForgotPassword,\n resetSuccess: ResetSuccess,\n twoFactorLogin: TwoFactorLogin,\n twoFactorMethods: TwoFactorMethods,\n socialInit: SocialInit,\n socialTermsStep: SocialTermsStep,\n emailAuthLogin: EmailAuthLogin,\n deleteAccount: DeleteAccountModal,\n verifyAccount: VerifyAccountModal,\n ofacModal: OFACModal,\n signupWithSocialOpts: SignupWithSocialOpts,\n recoverAccountPage: RecoverAccountPage,\n accountRecoveryViewTicket: AccountRecoveryViewTicket,\n recoverAccountNotification: RecoverAccountNotification\n };\n const { additionalScreens } = this.props;\n const possibleScreens = {\n ...loginScreens,\n ...additionalScreens\n };\n return possibleScreens[screenKey];\n };\n\n handleClose = () => {\n const { navigationWrapper, onClose, isReact17 } = this.props;\n onClose();\n if (isReact17 && navigationWrapper instanceof HTMLElement) {\n ReactDOM.unmountComponentAtNode(navigationWrapper);\n }\n\n const { activeScreenKey } = this.state;\n if (typeof window.__accountSharingLogger === 'function' && activeScreenKey === 'emailAuthLogin') {\n window.__accountSharingLogger({ action: 'click', target: 'closeButton' });\n }\n };\n\n handleUserLogout = async (...args) => {\n const { onUserLogout } = this.props;\n if (window?.JFAppsManager?.isOpenedInPortal()) {\n window.JFAppsManager.logUserOut();\n }\n onUserLogout(...args);\n };\n\n handle2FARecoverAccount = async () => {\n this.setState({\n tfaAccountRecoveryProps: {\n isErrored: false, errorMessage: '', email: '', isLoading: true, ticket: ''\n }\n });\n try {\n const { responseCode = '', message = '', content: { email = '', hasOpenTicket = false, ticket = '' } } = await send2FAAccountRecoveryEmail();\n if (responseCode === 200) {\n if (!hasOpenTicket && !ticket && email) {\n this.setState({\n tfaAccountRecoveryProps: {\n isErrored: false,\n errorMessage: '',\n email: email,\n isLoading: false,\n ticket: ''\n }\n }, () => this.handleNavigationChangeRequest('recoverAccountNotification'));\n } else if (hasOpenTicket && ticket && !email) {\n this.setState({\n tfaAccountRecoveryProps: {\n isErrored: false,\n errorMessage: '',\n email: '',\n isLoading: false,\n ticket: ticket\n }\n }, () => this.handleNavigationChangeRequest('accountRecoveryViewTicket'));\n } else {\n this.setState({\n tfaAccountRecoveryProps: {\n isErrored: true,\n errorMessage: 'An error occured. Please try again.',\n email: '',\n isLoading: false,\n ticket: ''\n }\n });\n }\n } else {\n this.setState({\n tfaAccountRecoveryProps: {\n isErrored: true,\n errorMessage: /You're not authorized to use/.test(message) ? 'The session has expired. Please login again.' : 'An error occured. Please try again.',\n email: '',\n isLoading: false,\n ticket: ''\n }\n });\n }\n } catch ({ message = '' }) {\n this.setState({\n tfaAccountRecoveryProps: {\n isErrored: true,\n errorMessage: /You're not authorized to use/.test(message) ? 'The session has expired. Please login again.' : 'An error occured. Please try again.',\n email: '',\n isLoading: false,\n ticket: ''\n }\n });\n }\n };\n\n handleEAResponseStateChange = () => {\n const { showEmailAuthStepAsModal } = this.props;\n const {\n lastEAResponse,\n thereSocialError,\n thereErrorMessage,\n isSocialEA\n } = this.state;\n\n if (showEmailAuthStepAsModal) {\n renderStandaloneEmailAuthModal({\n handleEALogin: this.handleEALogin,\n lastEAResponse,\n thereSocialError,\n thereErrorMessage,\n isSocialEA\n });\n } else {\n this.handleNavigationChangeRequest('emailAuthLogin');\n }\n };\n\n handleTFAResponse = (data, username, password) => {\n const { primaryMethod = '' } = data;\n this.setState({\n lastLoginCredentials: { username, password },\n lastTFAResponse: data,\n isSocialTFA: false,\n tfaMethod: primaryMethod\n });\n this.handleNavigationChangeRequest('twoFactorLogin');\n };\n\n handleEAResponse = (data, username, password) => {\n this.setState({\n lastLoginCredentials: { username, password },\n lastEAResponse: data,\n isSocialEA: false\n }, () => this.handleEAResponseStateChange());\n };\n\n handleTFALogin = async ({\n verificationCode, newType, shouldNavigate = false, rememberDevice\n } = {}) => {\n const {\n lastLoginCredentials: {\n username,\n password\n },\n lastTFAResponse: { token: { type } }\n } = this.state;\n const tfaMethod = newType ? newType : type;\n const isRecovery = tfaMethod === 'recovery';\n this.setState({ tfaMethod });\n if (newType === 'recovery' && !verificationCode) {\n this.handleNavigationChangeRequest('twoFactorLogin');\n return;\n }\n\n if (newType && !shouldNavigate && !verificationCode) {\n this.handleNavigationChangeRequest('twoFactorLogin');\n return;\n }\n const [loginSuccess, loginResponse] = await this.handleLogin(username, password, false, verificationCode, tfaMethod, null, rememberDevice, isRecovery);\n return [loginResponse, loginSuccess];\n };\n\n handleEALogin = async ({ verificationCode, isSocialEA = false } = {}) => {\n const {\n lastLoginCredentials: {\n username,\n password\n },\n lastSocialLoginType,\n lastSocialLoginToken\n } = this.state;\n\n if (isSocialEA) {\n this.socialLoginRequest(lastSocialLoginType, lastSocialLoginToken, null, null, verificationCode);\n return;\n }\n\n const [loginSuccess, loginResponse] = await this.handleLogin(username, password, false, null, null, verificationCode);\n return [loginResponse, loginSuccess];\n };\n\n handleSocialTFAResponse = tfaResponse => {\n this.setState({\n lastTFAResponse: tfaResponse,\n isSocialTFA: true\n },\n () => this.handleNavigationChangeRequest('twoFactorLogin'));\n };\n\n handleSocialEAResponse = (eaResponse, type) => {\n const { idToken } = eaResponse;\n if (type) {\n this.setState({ lastSocialLoginType: type });\n }\n this.setState({\n lastEAResponse: eaResponse,\n isSocialEA: true,\n idToken\n },\n () => this.handleEAResponseStateChange());\n };\n\n openLoginFlowModal = () => {\n this.setState({\n showThankyouModal: false\n });\n };\n\n handleLoginFlowDefaultAndThankYouModal = DefaultComponent => {\n const { showThankyouModal } = this.state;\n const { isSSO, onUserLogin } = this.props;\n\n return (\n showThankyouModal ? (\n undefined}\n />\n ) : (\n
\n {DefaultComponent}\n
\n )\n );\n };\n\n handleLoginFlowAndThankYouModal = (ComponentValue, mode) => {\n const { showThankyouModal } = this.state;\n const {\n thankYouModalOnClose, closableDialog, closableComponent, modalOptions, isSSO, onUserLogin\n } = this.props;\n const subTitles = modalOptions.subTitles ? modalOptions.subTitles : [\n Texts.COMPLETED_TASK\n ];\n return (\n showThankyouModal ? (\n \n ) : (\n
\n
\n
\n {closableComponent && (\n \n \n \n )}\n
\n {ComponentValue}\n
\n
\n
\n
\n )\n );\n };\n\n changeActiveScreen = screenName => {\n this.setState({\n activeScreenKey: screenName\n });\n };\n\n changeActiveMode = mode => {\n this.setState({\n mode: mode\n });\n };\n\n render() {\n const {\n activeScreenKey,\n thereSocialError,\n lastTFAResponse,\n lastEAResponse,\n tfaMethod,\n isSocialTFA,\n isSocialEA,\n thereErrorMessage,\n socialUserProfile,\n isMsSignupTestEnabled,\n isMsSignupControlVariant,\n isMsSignupTestBVariant,\n isMsSignupTestCVariant,\n areSocialButtonsLoading,\n mode,\n externalErrorMessage,\n isSwsoTestVariant,\n tfaAccountRecoveryProps\n } = this.state;\n\n const {\n manager,\n skippable,\n onSkip,\n enforceHIPAARuleSet,\n apiURL,\n greetingMessage,\n hideGreetingMessageOnSignupOptions,\n greetingDescription,\n loginButtonText,\n signupButtonText,\n greetingMessageOnSignupWithEmail,\n user,\n signupPredefinedEmail,\n loginPredefinedEmail,\n verificationHash,\n resourceID,\n productType,\n forceLogin,\n forceUser,\n appName,\n isHIPAA,\n includeConfirm,\n showLogoOnSignupOptions,\n showLogoOnSignupWithEmail,\n actionLogger,\n loginWelcomeText,\n OtherColumnComponents,\n appleSigninEnabled,\n loginDescriptionText,\n showFormOnSignupOptions,\n buttonNames,\n socialInitData,\n shrinkConfirmHeight,\n shrinkConfirmOnMobile,\n logoSource,\n firstShowThankyouModal,\n disableEmail,\n socialLogins,\n AfterVerificationComponent,\n BeforeVerificationComponent,\n VerificationWrapper,\n usePortal,\n builderShowSlides,\n horizontalSocialButtons,\n squareSocialButtonStyle,\n readonlyEmail,\n isVerified,\n setIsVerified,\n baseApp,\n showJotformLogo,\n showSalesforceLogin,\n showEnterpriseLogin,\n hideSignUp,\n redirectURL,\n signupPredefinedName,\n unusualSignupCode,\n unusualSignupToken,\n fromSACL,\n initiator,\n forceShowBack,\n ssoLoginOptions,\n ssoNormalLoginEnabled,\n initialScreen,\n useSwsoButtons,\n isOnboardingFlow,\n isOnboardingTestVariantReversed\n } = this.props;\n\n const ActiveComponent = this.getActiveScreen(activeScreenKey);\n const Component = (\n f}\n ref={this.activeComponentRef}\n // delete my account\n socialLogins={socialLogins}\n handleClose={this.handleClose}\n // VerifyAccountModal\n AfterVerificationComponent={AfterVerificationComponent}\n BeforeVerificationComponent={BeforeVerificationComponent}\n VerificationWrapper={VerificationWrapper}\n isVerified={isVerified}\n setIsVerified={setIsVerified}\n baseApp={baseApp}\n ofacModalRef={this.ofacModalRef}\n changeActiveScreen={this.changeActiveScreen}\n builderShowSlides={builderShowSlides}\n readonlyEmail={readonlyEmail}\n showJotformLogo={showJotformLogo}\n showSalesforceLogin={showSalesforceLogin}\n showEnterpriseLogin={showEnterpriseLogin}\n hideSignUp={hideSignUp}\n ssoLoginOptions={ssoLoginOptions}\n redirectURL={redirectURL}\n signupPredefinedName={signupPredefinedName}\n isSwsoTestVariant={isSwsoTestVariant}\n forceShowBack={forceShowBack && !forceLogin && initialScreen !== 'loginOptions'}\n tfaAccountRecoveryProps={tfaAccountRecoveryProps}\n handle2FARecoverAccount={this.handle2FARecoverAccount}\n useSwsoButtons={useSwsoButtons}\n handleSocialEAResponse={this.handleSocialEAResponse}\n isOnboardingFlow={isOnboardingFlow} // A/B Test: signupOnboardingIV\n isOnboardingTestVariantReversed={isOnboardingTestVariantReversed} // A/B Test: signupOnboardingIV\n getUserSSOStatus={getUserSSOStatus}\n />\n );\n\n switch (mode) {\n case 'modal':\n return (\n firstShowThankyouModal ? (\n this.handleLoginFlowAndThankYouModal(Component, mode)\n ) : (\n \n \n
\n
\n \n \n \n \n {Component}\n
\n
\n
\n
\n \n )\n );\n case 'multi-column-modal':\n const allComponents = [Component, ...OtherColumnComponents];\n return (\n
\n
\n
\n \n \n \n
\n {allComponents.map((Column, id) => (\n
\n {Column}\n
\n ))}\n
\n
\n
\n
\n );\n case 'unusual-signup':\n return (\n \n );\n default:\n return (\n firstShowThankyouModal ? (\n this.handleLoginFlowDefaultAndThankYouModal(Component, mode)\n ) : (\n
\n {Component}\n
\n )\n );\n }\n }\n}\n\nLoginFlow.propTypes = {\n user: shape(),\n apiURL: string.isRequired,\n manager: shape(),\n onClose: func,\n onUserLogout: func,\n onNavigationChange: func,\n onGoogleLoginClick: func,\n onFBLoginClick: func,\n onMicrosoftLoginClick: func,\n onAppleLoginClick: func,\n onSalesforceLoginClick: func,\n additionalScreens: shape(),\n navigationWrapper: oneOfType([\n node,\n object\n ]).isRequired,\n onUserLogin: func,\n initialScreen: string,\n skippable: bool,\n onSkip: func,\n enforceHIPAARuleSet: bool,\n mode: oneOf([\n 'modal',\n 'multi-column-modal',\n 'unusual-signup',\n 'fullScreen',\n 'default'\n ]),\n greetingMessage: string,\n hideGreetingMessageOnSignupOptions: bool,\n greetingDescription: string,\n loginButtonText: string,\n loginWelcomeText: string,\n loginDescriptionText: string,\n signupPredefinedEmail: string,\n loginPredefinedEmail: string,\n signupButtonText: string,\n greetingMessageOnSignupWithEmail: string,\n verificationHash: string,\n productType: string,\n resourceID: string,\n forceLogin: bool,\n forceUser: bool,\n isSocialLoginForDeleteMyAccountFlow: bool,\n isSocialLoginForVerification: bool,\n appName: string,\n isHIPAA: bool,\n includeConfirm: bool,\n showLogoOnSignupOptions: bool,\n showLogoOnSignupWithEmail: bool,\n shouldCallNavigate: bool,\n actionLogger: func,\n OtherColumnComponents: arrayOf(element),\n appleSigninEnabled: bool,\n showFormOnSignupOptions: bool,\n enableGoogleOneTap: bool,\n shrinkConfirmOnMobile: bool,\n shrinkConfirmHeight: number,\n buttonNames: shape({\n google: string,\n googleOneTap: string,\n facebook: string,\n microsoft: string,\n apple: string,\n salesforce: string,\n email: string\n }),\n socialInitData: shape({}),\n logoSource: string,\n firstShowThankyouModal: bool,\n thankYouModalOnClose: func,\n showSocialTermsStepAsModal: bool,\n disableEmail: bool,\n horizontalSocialButtons: bool,\n squareSocialButtonStyle: bool,\n showEmailAuthStepAsModal: bool,\n closableDialog: bool,\n closableComponent: bool,\n modalOptions: shape({}),\n socialLogins: arrayOf(string),\n AfterVerificationComponent: elementType,\n BeforeVerificationComponent: elementType,\n VerificationWrapper: shape({\n Component: elementType,\n props: shape({})\n }),\n usePortal: bool,\n builderShowSlides: func,\n readonlyEmail: bool,\n isVerified: bool,\n setIsVerified: func,\n baseApp: string,\n showJotformLogo: bool,\n showSalesforceLogin: bool,\n showEnterpriseLogin: bool,\n hideSignUp: bool,\n redirectURL: string,\n signupPredefinedName: string,\n showUnusualSignupFlow: bool,\n unusualSignupCode: string,\n unusualSignupToken: string,\n fromSACL: bool,\n initiator: string,\n swsoTestVariant: bool,\n forceShowBack: bool,\n ssoLoginOptions: arrayOf(shape({\n name: string,\n logoURL: string,\n configKey: string,\n idpName: string\n })),\n isSSO: bool,\n isReact17: bool,\n ssoNormalLoginEnabled: bool,\n useSwsoButtons: bool,\n isOnboardingFlow: bool,\n isOnboardingTestVariantReversed: bool\n};\n\nLoginFlow.defaultProps = {\n user: null,\n onClose: () => undefined,\n skippable: false,\n onSkip: () => undefined,\n enforceHIPAARuleSet: false,\n onUserLogin: () => undefined,\n onUserLogout: () => undefined,\n onNavigationChange: () => undefined,\n onGoogleLoginClick: () => undefined,\n onFBLoginClick: () => undefined,\n onMicrosoftLoginClick: () => undefined,\n onAppleLoginClick: () => undefined,\n onSalesforceLoginClick: () => undefined,\n thankYouModalOnClose: () => undefined,\n initialScreen: 'signupOptions',\n additionalScreens: {},\n greetingMessage: 'Welcome to Jotform',\n hideGreetingMessageOnSignupOptions: false,\n greetingDescription: '',\n loginButtonText: Texts.LOGIN_TEXT,\n loginWelcomeText: Texts.WELCOME_BACK,\n loginDescriptionText: '',\n signupButtonText: Texts.SIGN_UP,\n greetingMessageOnSignupWithEmail: Texts.SIGN_UP_EMAIL,\n signupPredefinedEmail: '',\n loginPredefinedEmail: '',\n manager: {},\n mode: 'modal',\n verificationHash: '',\n productType: 'form',\n resourceID: '',\n forceLogin: false,\n forceUser: false,\n isSocialLoginForDeleteMyAccountFlow: false,\n isSocialLoginForVerification: false,\n appName: '',\n isHIPAA: false,\n includeConfirm: false,\n showLogoOnSignupOptions: true,\n showLogoOnSignupWithEmail: false,\n shouldCallNavigate: true,\n actionLogger: null,\n OtherColumnComponents: [],\n appleSigninEnabled: false,\n showFormOnSignupOptions: false,\n enableGoogleOneTap: false,\n buttonNames: {\n google: '',\n googleOneTap: 'GoogleOnetap',\n facebook: '',\n microsoft: '',\n apple: '',\n salesforce: '',\n emailLogin: '',\n emailSignup: ''\n },\n horizontalSocialButtons: false,\n squareSocialButtonStyle: false,\n socialInitData: {},\n shrinkConfirmOnMobile: false,\n shrinkConfirmHeight: 750,\n logoSource: '',\n firstShowThankyouModal: false,\n showSocialTermsStepAsModal: false,\n disableEmail: false,\n showEmailAuthStepAsModal: false,\n closableDialog: true,\n closableComponent: true,\n modalOptions: {},\n socialLogins: [],\n AfterVerificationComponent: null,\n BeforeVerificationComponent: null,\n VerificationWrapper: null,\n usePortal: false,\n builderShowSlides: f => f,\n readonlyEmail: false,\n isVerified: false,\n setIsVerified: f => f,\n baseApp: '',\n showJotformLogo: false,\n showSalesforceLogin: false,\n showEnterpriseLogin: false,\n hideSignUp: false,\n redirectURL: '',\n signupPredefinedName: '',\n showUnusualSignupFlow: false,\n unusualSignupCode: '',\n unusualSignupToken: '',\n fromSACL: false,\n initiator: '',\n swsoTestVariant: false,\n forceShowBack: false,\n ssoLoginOptions: [],\n isSSO: false,\n isReact17: false,\n ssoNormalLoginEnabled: false,\n useSwsoButtons: false,\n isOnboardingFlow: false,\n isOnboardingTestVariantReversed: false\n};\n","/* eslint-disable max-statements */\n/* eslint-disable no-console */\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport { getDomainFromAPI, getAPIURL } from '@jotforminc/request-layer';\nimport {\n getUserInfo,\n loadJS,\n initGoogleSignin,\n initFBSignin,\n initMicrosoftSignin,\n initSalesforceSignin\n} from '@jotforminc/utils';\nimport { isEnterprise } from '@jotforminc/enterprise-utils';\nimport { Texts, prepareLoginFlowDefaultGreetings } from '@jotforminc/constants';\n\nimport LoginFlow from '../components/LoginFlow';\nimport {\n forceUserSocialLogin,\n createGoogleOneTapContainerEl\n} from './loginSignup';\nimport '../styles/style.scss';\nimport '../temporary-duplicate/styles/SaveAndContinueLater/style.scss';\nimport renderStandaloneSocialTermsModal from './renderStandaloneSocialTermsModal';\nimport { getPrefillToken } from './helper';\n\nexport default class LoginFlowHelper {\n constructor() {\n this.makeFormAssignment = this.makeFormAssignment.bind(this);\n }\n\n // eslint-disable-next-line complexity\n init({\n user,\n productType,\n resourceID,\n formUser,\n verificationHash,\n resourceTitle,\n isHIPAA,\n forceLogin,\n forceUser,\n welcomeText,\n greetingMessage,\n hideGreetingMessageOnSignupOptions,\n greetingMessageOnSignupWithEmail,\n ignoreFormUser,\n greetingDescription,\n loginDescriptionText,\n wrapperClassName,\n initialScreen,\n showLogoOnSignupOptions,\n showLogoOnSignupWithEmail,\n appleSigninEnabled,\n includeConfirm,\n noDefaultWrapper,\n containerClass,\n noLoading,\n showFormOnSignupOptions,\n enableGoogleOneTap,\n buttonNames,\n socialInitData,\n horizontalSocialButtons,\n squareSocialButtonStyle,\n onUserLogin,\n onNavigationChange,\n onGoogleLoginClick,\n onGoogleOneTapPromptOpened,\n onFBLoginClick,\n onAppleLoginClick,\n shrinkConfirmOnMobile,\n shrinkConfirmHeight,\n signupPredefinedEmail,\n logoSource,\n firstShowThankyouModal,\n showSocialTermsStepAsModal,\n showEmailAuthStepAsModal,\n readonlyEmail,\n showJotformLogo,\n showSalesforceLogin,\n showEnterpriseLogin,\n hideSignUp,\n redirectURL,\n showUnusualSignupFlow,\n unusualSignupToken,\n unusualSignupCode,\n appName,\n swsoTestVariant,\n useSwsoButtons,\n isReact17,\n initiator,\n mode\n }) {\n this.user = user || null;\n this.resourceID = resourceID;\n this.productType = productType;\n this.verificationHash = verificationHash;\n this.forceLogin = forceLogin === 'true';\n this.greetingMessage = greetingMessage || (forceUser ? (Texts.SIGN_UP_NOW_NO_EXCLAMATION_MARK) : (resourceTitle || 'Form'));\n this.hideGreetingMessageOnSignupOptions = hideGreetingMessageOnSignupOptions || false;\n this.greetingMessageOnSignupWithEmail = greetingMessageOnSignupWithEmail || Texts.SIGN_UP_EMAIL;\n this.loginWelcomeText = welcomeText || Texts.WELCOME_BACK;\n this.loginPredefinedEmail = formUser ? formUser.email : '';\n this.signupPredefinedName = (formUser && formUser.name) ? formUser.name : '';\n this.signupPredefinedEmail = signupPredefinedEmail || this.loginPredefinedEmail;\n this.disableEmail = formUser && formUser.email;\n this.isHIPAA = isHIPAA;\n this.forceUser = forceUser || false;\n this.greetingDescription = greetingDescription || prepareLoginFlowDefaultGreetings();\n this.wrapperClassName = wrapperClassName;\n this.initialScreen = initialScreen;\n this.showLogoOnSignupOptions = showLogoOnSignupOptions || false;\n this.showLogoOnSignupWithEmail = showLogoOnSignupWithEmail || false;\n this.appleSigninEnabled = appleSigninEnabled || false;\n this.includeConfirm = includeConfirm || false;\n this.noDefaultWrapper = noDefaultWrapper || false;\n this.noLoading = noLoading || false;\n this.enableGoogleOneTap = enableGoogleOneTap || false;\n this.showFormOnSignupOptions = showFormOnSignupOptions || false;\n this.containerClass = containerClass || 'react-root';\n this.buttonNames = buttonNames || {};\n this.socialInitData = socialInitData || {};\n this.horizontalSocialButtons = horizontalSocialButtons || false;\n this.squareSocialButtonStyle = squareSocialButtonStyle || false;\n this.onUserLogin = onUserLogin || (f => f);\n this.onNavigationChange = onNavigationChange || (f => f);\n this.onGoogleLoginClick = onGoogleLoginClick || (f => f);\n this.onGoogleOneTapPromptOpened = onGoogleOneTapPromptOpened || (f => f);\n this.onFBLoginClick = onFBLoginClick || (f => f);\n this.onAppleLoginClick = onAppleLoginClick || (f => f);\n this.shrinkConfirmOnMobile = shrinkConfirmOnMobile || false;\n this.shrinkConfirmHeight = shrinkConfirmHeight || 750;\n this.logoSource = logoSource;\n this.firstShowThankyouModal = firstShowThankyouModal || false;\n this.showSocialTermsStepAsModal = showSocialTermsStepAsModal || false;\n this.showEmailAuthStepAsModal = showEmailAuthStepAsModal || false;\n this.useSwsoButtons = useSwsoButtons || false;\n this.readonlyEmail = readonlyEmail || false;\n this.showJotformLogo = showJotformLogo || false;\n this.showSalesforceLogin = showSalesforceLogin || false;\n this.showEnterpriseLogin = showEnterpriseLogin || false;\n this.hideSignUp = hideSignUp;\n this.redirectURL = redirectURL;\n this.showUnusualSignupFlow = showUnusualSignupFlow;\n this.unusualSignupToken = unusualSignupToken;\n this.unusualSignupCode = unusualSignupCode;\n this.appName = appName;\n this.swsoTestVariant = swsoTestVariant;\n this.mode = mode || 'fullScreen';\n this.isReact17 = isReact17;\n this.initiator = initiator;\n\n if (isEnterprise() && !loginDescriptionText) {\n this.loginDescriptionText = '';\n } else {\n this.loginDescriptionText = loginDescriptionText || prepareLoginFlowDefaultGreetings();\n }\n\n if (!noLoading) ReactDOM.render(
Loading
, this.reactRoot);\n\n Promise.resolve()\n .then(() => (this.resourceID ? getUserInfo(this.resourceID, this.productType) : {}))\n .then(resp => {\n if (resp.user && (!ignoreFormUser || resp.userType !== 'FORM_USER')) {\n const baseURL = getDomainFromAPI(getAPIURL());\n const generateRedirectURL = path => `${baseURL}/${path}${window.location.search}`;\n switch (productType) {\n case 'draft':\n break;\n case 'form':\n // lets make a fake redirect, because user is already logged in but our server doesn't know it :(\n const prefillToken = getPrefillToken();\n window.location.href = generateRedirectURL(`${resourceID}${prefillToken ? `/prefill/${prefillToken}` : ''}`);\n break;\n default:\n window.location.href = generateRedirectURL(`${productType.toLowerCase()}/${resourceID}`);\n break;\n }\n } else {\n ReactDOM.unmountComponentAtNode(this.reactRoot);\n this.initAssigneeFlow();\n }\n }).catch(() => {\n ReactDOM.unmountComponentAtNode(this.reactRoot);\n this.initAssigneeFlow();\n });\n }\n\n get reactRoot() {\n let rootEl = document.querySelector(`.${this.containerClass}`);\n if (!rootEl) {\n rootEl = document.createElement('div');\n rootEl.className = `${this.containerClass}`;\n document.body.appendChild(rootEl);\n }\n return rootEl;\n }\n\n makeFormAssignment = (user, { newUser, onUserLogin } = {}) => {\n const skipRedirection = ((this && this.onUserLogin) || onUserLogin)(user, { newUser });\n const promise = skipRedirection && skipRedirection.then ? skipRedirection : Promise.resolve(skipRedirection);\n\n const redirect = () => {\n window.location.reload();\n const urlParams = new URLSearchParams(window.location.search);\n if (urlParams.get('jotform_pwa') && urlParams.get('saclEmbed')) {\n window.parent.location.reload();\n }\n };\n\n promise\n .then(skipRedirection_ => (skipRedirection_ !== true) && redirect())\n .catch(error => {\n console.error(error);\n redirect();\n });\n\n // fetch(`${this.apiURL}/form/${this.formID}/publicAssign`, { method: 'POST' });\n };\n\n initAssigneeFlow = () => {\n const wrapperClassName = [\n this.noDefaultWrapper ? '' : 'wwt',\n this.wrapperClassName\n ].filter(val => val).join(' ');\n\n ReactDOM.render(\n
\n
\n \n
\n
, this.reactRoot\n );\n };\n\n createSocialTermsSecretManager = () => {\n let socialTermsSecret = {};\n\n const get = key => socialTermsSecret[key];\n const set = (key, val) => { socialTermsSecret[key] = val; };\n const removeAll = () => { socialTermsSecret = {}; };\n\n return {\n get,\n set,\n removeAll\n };\n };\n\n socialLoginRequest = (\n type,\n token,\n config,\n socialLogin2FAResponseCallback,\n errorCallback,\n socialLoginVerificationHash = '',\n socialLoginEAResponseCallback,\n idToken\n ) => {\n const { onSocialTermsRequired } = config;\n const newGoogleFlow = type === 'google' ? 1 : 0;\n const authToken = idToken ? idToken : token;\n\n forceUserSocialLogin(\n type,\n authToken,\n response => {\n const { data: { newUser, user } } = response;\n this.makeFormAssignment(user, {\n newUser,\n onUserLogin: config.onUserLogin\n });\n },\n errorCallback,\n config.appName,\n response => {\n this.init({\n ...config,\n ...(config.renderValidationStepsAsModal && { mode: 'modal' }), // for new header\n initialScreen: 'socialInit',\n socialInitData: { type, token, response },\n noDefaultWrapper: true\n });\n if (socialLogin2FAResponseCallback) socialLogin2FAResponseCallback();\n },\n undefined,\n undefined,\n config.buttonNames,\n socialLoginVerificationHash,\n onSocialTermsRequired,\n true, // enable social terms\n response => {\n this.init({\n ...config,\n initialScreen: 'socialInit',\n showEmailAuthStepAsModal: true,\n socialInitData: { type, token, response }\n });\n if (socialLoginEAResponseCallback) socialLoginEAResponseCallback();\n },\n undefined,\n newGoogleFlow\n );\n };\n\n initGoogle = (config = {}, socialLogin2FAResponseCallback, errorCallback = f => f, socialLoginEAResponseCallback) => {\n const { onSocialLoginStart = f => f } = config;\n const client = initGoogleSignin(response => {\n const googleLoginThunk = (socialLoginVerificationHash, idToken) => this.socialLoginRequest(\n 'google',\n response.code,\n config,\n socialLogin2FAResponseCallback,\n errorCallback,\n socialLoginVerificationHash,\n socialLoginEAResponseCallback,\n idToken\n );\n onSocialLoginStart({ socialSignupThunk: googleLoginThunk });\n googleLoginThunk();\n });\n if (client) {\n client.requestCode();\n }\n };\n\n handleGoogleClick = (config = {}, socialLogin2FAResponseCallback, errorCallback, socialLoginEAResponseCallback) => {\n if (!window.google) {\n loadJS('google-jssdk-new', 'https://accounts.google.com/gsi/client', () => {\n this.initGoogle(config, socialLogin2FAResponseCallback, errorCallback, socialLoginEAResponseCallback);\n });\n return;\n }\n this.initGoogle(config, socialLogin2FAResponseCallback, errorCallback, socialLoginEAResponseCallback);\n };\n\n initFacebook = (config, socialLogin2FAResponseCallback, errorCallback = f => f, socialLoginEAResponseCallback) => {\n const { onSocialLoginStart = f => f } = config;\n const fbLogin = initFBSignin();\n if (!fbLogin) return;\n fbLogin(({ status, authResponse }) => {\n if (status === 'connected' && authResponse) {\n const facebookLoginThunk = socialLoginVerificationHash => {\n this.socialLoginRequest('facebook', authResponse.accessToken, config, socialLogin2FAResponseCallback, errorCallback, socialLoginVerificationHash, socialLoginEAResponseCallback);\n };\n onSocialLoginStart({ socialSignupThunk: facebookLoginThunk });\n facebookLoginThunk();\n } else {\n errorCallback(status);\n }\n }, { scope: 'public_profile,email' });\n };\n\n handleFBClick = (config, socialLogin2FAResponseCallback, errorCallback, socialLoginEAResponseCallback) => {\n if (!window.FB) {\n loadJS('facebook-jssdk', 'https://connect.facebook.net/en_US/sdk.js', () => {\n this.initFacebook(config, socialLogin2FAResponseCallback, errorCallback, socialLoginEAResponseCallback);\n });\n return;\n }\n this.initFacebook(config, socialLogin2FAResponseCallback, errorCallback, socialLoginEAResponseCallback);\n };\n\n initMicrosoft = (config, socialLogin2FAResponseCallback, errorCallback = f => f, socialLoginEAResponseCallback) => {\n const { onSocialLoginStart = f => f } = config;\n const msLogin = initMicrosoftSignin();\n if (!msLogin) return;\n msLogin.then(({ accessToken, idToken }) => {\n if (accessToken && idToken) {\n const multipleTokens = JSON.stringify({ idToken, accessToken });\n const microsoftLoginThunk = socialLoginVerificationHash => {\n this.socialLoginRequest('microsoft', multipleTokens, config, socialLogin2FAResponseCallback, errorCallback, socialLoginVerificationHash, socialLoginEAResponseCallback);\n };\n onSocialLoginStart({ socialSignupThunk: microsoftLoginThunk });\n microsoftLoginThunk();\n } else {\n errorCallback();\n }\n }).catch(errorCallback);\n };\n\n handleMSClick = (config, socialLogin2FAResponseCallback, errorCallback, socialLoginEAResponseCallback) => {\n if (!window.msal) {\n loadJS('microsoft-jssdk', 'https://cdn.jotfor.ms/js/msal/msal-browser.js', () => {\n this.initMicrosoft(config, socialLogin2FAResponseCallback, errorCallback, socialLoginEAResponseCallback);\n });\n return;\n }\n this.initMicrosoft(config, socialLogin2FAResponseCallback, errorCallback, socialLoginEAResponseCallback);\n };\n\n initSalesforce = (config, socialLogin2FAResponseCallback, errorCallback = f => f, socialLoginEAResponseCallback) => {\n const { onSocialLoginStart = f => f } = config;\n const sLogin = initSalesforceSignin();\n if (!sLogin) return;\n sLogin.then(({ code, token }) => {\n if (code && token) {\n const multipleTokens = JSON.stringify({ code, token });\n const salesforceLoginThunk = socialLoginVerificationHash => {\n this.socialLoginRequest('salesforce', multipleTokens, config, socialLogin2FAResponseCallback, errorCallback, socialLoginVerificationHash, socialLoginEAResponseCallback);\n };\n onSocialLoginStart({ socialSignupThunk: salesforceLoginThunk });\n salesforceLoginThunk();\n } else {\n errorCallback();\n }\n }).catch(errorCallback);\n };\n\n handleSalesforceClick = (config, socialLogin2FAResponseCallback, errorCallback, socialLoginEAResponseCallback) => {\n this.initSalesforce(config, socialLogin2FAResponseCallback, errorCallback, socialLoginEAResponseCallback);\n };\n\n initGoogleOneTap = (config, socialLogin2FAResponseCallback, socialLoginEAResponseCallback) => {\n loadJS('googleOneTap', 'https://accounts.google.com/gsi/client', () => {\n if (window?.preventHeaderGoogleOneTap) {\n return true;\n }\n\n if (typeof window.GOOGLE_SIGNON === 'undefined') {\n return true;\n }\n\n if (typeof window.JOTFORM_ENV === 'undefined' || window.JOTFORM_ENV === 'ENTERPRISE' || window.JOTFORM_ENV === 'TESTING' || window.JOTFORM_ENV === 'DEVELOPMENT') {\n return true;\n }\n\n let accountType;\n\n if (typeof window.app?.user?.get === 'function') {\n accountType = window.app.user.get('account_type');\n } else if (window.user) {\n accountType = window.user.account_type;\n } else if (window.userData) {\n accountType = window.userData.account_type;\n }\n\n if (accountType && accountType.name !== 'GUEST') {\n return true;\n }\n\n if (document.querySelector('.removeAuthButtons')) {\n return true;\n }\n\n createGoogleOneTapContainerEl();\n\n window.google.accounts.id.initialize({\n client_id: window.GOOGLE_SIGNON,\n cancel_on_tap_outside: false,\n prompt_parent_id: 'oneTapLoginArea',\n callback: googleUser => {\n const { onSocialLoginStart = f => f } = config;\n const token = googleUser.credential;\n const googleOneTapLoginThunk = socialLoginVerificationHash => this.socialLoginRequest(\n 'googleOneTap',\n token,\n config,\n socialLogin2FAResponseCallback,\n null,\n socialLoginVerificationHash,\n socialLoginEAResponseCallback\n );\n onSocialLoginStart({ socialSignupThunk: googleOneTapLoginThunk });\n googleOneTapLoginThunk();\n },\n state_cookie_domain: 'jotform.com'\n });\n window.google.accounts.id.prompt(notification => {\n if (notification.isNotDisplayed() || notification.isSkippedMoment()) {\n console.log('GoogleOnetap Skipped', notification.getNotDisplayedReason());\n } else if (notification.isDisplayMoment() && config.onGoogleOneTapPromptOpened) {\n config.onGoogleOneTapPromptOpened();\n }\n });\n });\n };\n\n renderStandaloneSocialTermsModal = (...props) => {\n renderStandaloneSocialTermsModal(...props);\n };\n}\n","export const loadByApplyingLazyIgnoredElements = ({ target }, loadFunction) => {\n const lazyLoadDelayedElements = [\n { selector: 'CookieBanner', type: 'id' },\n { selector: 'close-wp', type: 'class' },\n { selector: 'jfRHeader--hamburger', type: 'class' },\n { selector: 'jfRHeader--logo-link', type: 'class' },\n { selector: 'jfRHeader--mobile-nav-signup-btn', type: 'class' },\n { selector: 'logo-page', type: 'class' }\n ]\n .map(({ type, selector }) => ({\n type,\n selector,\n elements: Array.from(document.querySelectorAll(`${type === 'id' ? '#' : '.'}${selector}`))\n }))\n .filter(({ elements }) => elements.length > 0);\n\n const isTargetDelayed = (elements, selector, type) => {\n const { id, classList } = target;\n return elements.some(currentEl => currentEl === target\n || currentEl.contains(target)\n || (type === 'id' ? id === selector : classList?.contains(selector)));\n };\n\n const shouldDelayLazyLoad = lazyLoadDelayedElements.some(({ elements, selector, type }) => {\n return isTargetDelayed(elements, selector, type);\n });\n\n setTimeout(loadFunction, shouldDelayLazyLoad ? 1000 : 0);\n};\n","import { createLinkElement, createScriptElement } from '../dom';\nimport { loadByApplyingLazyIgnoredElements } from './loadByApplyingLazyIgnoredElements';\n\nexport const loadAfter = (params, forceLoad = false) => {\n if (!Array.isArray(params)) {\n console.error('LoadAfter :: please give array to window.loadAfter function');\n return;\n }\n\n const defaultOptions = {\n type: '',\n url: '',\n callback: '',\n el: '',\n attr: '',\n force: false\n };\n\n params.forEach((param, index) => {\n const options = { ...defaultOptions, ...param };\n\n if (!options.url) {\n console.error('LoadAfter :: url not found');\n return;\n }\n\n const uniqueName = `${options.url.split('/').pop().split('.')[0]}${options.force ? index : ''}`;\n\n const elGeneralFunc = () => {\n if (document.body.classList.contains(uniqueName)) return;\n document.body.classList.add(uniqueName);\n\n if (options.type === 'JS') createScriptElement(options.url, options.callback, options.attr);\n if (options.type === 'CSS') createLinkElement(options.url, options.attr);\n };\n\n if (options.el) {\n const element = document.querySelector(options.el);\n if (!element) return;\n\n const handleEvent = event => {\n if (document.body.classList.contains(uniqueName)) return;\n loadByApplyingLazyIgnoredElements(event, elGeneralFunc);\n };\n\n if ('ontouchstart' in window || window.navigator.maxTouchPoints > 0 || window.navigator.msMaxTouchPoints > 0) {\n element.addEventListener('touchstart', handleEvent);\n }\n element.addEventListener('mousemove', handleEvent);\n window.addEventListener('scroll', elGeneralFunc);\n\n if (forceLoad) elGeneralFunc();\n return;\n }\n\n elGeneralFunc();\n });\n};\n\nwindow.loadAfter = loadAfter;\nwindow.dispatchEvent(new global.window.CustomEvent('jfheader-utils-ready'));\n","export const loadAndInsertAsFirstScript = (id, src, onload) => {\n if (document.getElementById(id)) {\n onload();\n return false;\n }\n\n const js = document.createElement('script');\n\n js.id = id;\n js.onload = onload;\n js.src = src;\n const fjs = document.getElementsByTagName('script')[0];\n if (fjs) {\n fjs.parentNode.insertBefore(js, fjs);\n } else {\n document.getElementsByTagName('head')[0].appendChild(js);\n }\n};\n","import { LoginFlowHelper } from '@jotforminc/login-flow';\nimport { getBodyEl } from '../dom';\nimport { loadAndInsertAsFirstScript } from '../scriptLoaders';\n\nexport const loadLoginFlow = onLoad => {\n if (global.window.loginFlowHelper) {\n if (onLoad) onLoad(global.window.loginFlowHelper);\n return Promise.resolve(global.window.loginFlowHelper);\n }\n\n return Promise.resolve()\n .then(() => {\n const loginFlowHelper = new LoginFlowHelper();\n global.window.loginFlowHelper = loginFlowHelper;\n return loginFlowHelper;\n })\n .then(loginFlowHelper => {\n if (onLoad) onLoad(loginFlowHelper);\n return loginFlowHelper;\n });\n};\n\nconst getSocialMediaScriptInfo = socialMedia => {\n switch (socialMedia) {\n case 'facebook':\n return { id: 'facebook-jssdk', src: 'https://connect.facebook.net/en_US/sdk.js' };\n case 'google':\n return { id: 'google-jssdk-new', src: 'https://accounts.google.com/gsi/client' };\n case 'microsoft':\n return { id: 'microsoft-jssdk', src: 'https://cdn.jotfor.ms/js/msal/msal-browser.js' };\n default:\n throw new Error(`Unknown social media: ${socialMedia}`);\n }\n};\n\nexport const loadSocialMediaClient = socialMedia => {\n return new Promise((resolve, reject) => {\n try {\n const bodyEl = document.querySelector('body');\n\n if (bodyEl.classList.contains(`isloaded-${socialMedia}js`)) {\n return resolve();\n }\n\n const { id, src } = getSocialMediaScriptInfo(socialMedia);\n\n loadAndInsertAsFirstScript(id, src, () => {\n bodyEl.classList.add(`isloaded-${socialMedia}js`);\n resolve();\n });\n } catch (err) {\n reject(err);\n }\n });\n};\n\nexport const loadGoogleJS = () => {\n return getBodyEl().classList.contains('isloaded-googlejs') ? Promise.resolve() : loadSocialMediaClient('google');\n};\n\nexport const loadFacebookJS = () => {\n return getBodyEl().classList.contains('isloaded-facebookjs') ? Promise.resolve() : loadSocialMediaClient('facebook');\n};\n\nexport const loadMicrosotfJS = () => {\n return getBodyEl().classList.contains('isloaded-microsoftjs') ? Promise.resolve() : loadSocialMediaClient('microsoft');\n};\n","import { isDevelopment } from './jotform';\n\nexport class ActionManager {\n constructor({\n user,\n projectName,\n trackOnce\n }) {\n this.user = user || {};\n this.projectName = projectName;\n this.trackOnce = trackOnce || false;\n this.JotFormActions = null;\n this.registerJotformAction = this.registerJotformAction.bind(this);\n this.sentEvents = {};\n this.loadScript();\n }\n\n loadScript() {\n return new Promise((resolve, reject) => {\n if (document.querySelector('#jotform-actions-script')) return;\n\n const headEl = global.window.document.querySelector('head');\n const scriptEl = global.window.document.createElement('script');\n scriptEl.setAttribute('id', 'jotform-actions-script');\n scriptEl.src = 'https://js.jotform.com/actions.js';\n scriptEl.onload = resolve;\n scriptEl.onerror = reject;\n headEl.appendChild(scriptEl);\n });\n }\n\n setupJotFormActions() {\n const { JotFormActions } = global;\n if (typeof JotFormActions !== 'function') return;\n this.JotFormActions = JotFormActions(this.projectName);\n }\n\n registerJotformAction({ action, target } = {}) {\n if (!this.JotFormActions) {\n this.setupJotFormActions();\n }\n\n if (this.trackOnce && this.sentEvents[`${action}${target}`]) {\n return;\n }\n\n const { username: actor = null } = this.user;\n\n if (!this.JotFormActions || !actor) return;\n\n if (isDevelopment()) {\n console.log({ action, target });\n }\n\n this.JotFormActions.tick({ actor, action, target });\n\n if (this.trackOnce) {\n this.sentEvents[`${action}${target}`] = true;\n }\n }\n}\n\nexport default ActionManager;\n","import { customRedirectionOnLogIn, customRedirectionOnSignUp } from './customRedirects';\nimport { loadLoginFlow } from './loadLoginFlow';\nimport { ActionManager } from '../ActionManager';\nimport { LOGIN_FLOW_ACTIONS_PROJECT_NAME } from '../../constants';\n\nexport const openLoginFlow = async ({\n page,\n tracking,\n greetingMessage,\n greetingDescription,\n extraModalProps = {}\n}) => {\n let screen;\n let prevRoute;\n\n const trackLoginFlow = new ActionManager({ user: window.user, projectName: LOGIN_FLOW_ACTIONS_PROJECT_NAME }).registerJotformAction;\n\n const loginFlowProps = {\n mode: 'modal',\n greetingDescription,\n greetingMessage,\n user: window.user,\n showLogoOnSignupOptions: false,\n includeConfirm: true,\n forceUser: true,\n noDefaultWrapper: true,\n appleSigninEnabled: true,\n appName: 'jfHeader',\n shrinkConfirmOnMobile: true,\n isReact17: true,\n onUserLogin: (user, { newUser }) => {\n const action = newUser ? 'signup' : 'login';\n trackLoginFlow(action, tracking ?? screen);\n return newUser ? customRedirectionOnSignUp() : customRedirectionOnLogIn();\n },\n onNavigationChange: nextRoute => {\n if (!prevRoute || ['signupOptions', 'loginOptions', 'signupWithEmail'].includes(prevRoute)) {\n if (nextRoute === 'signupOptions') {\n screen = 'login-modal-signup-link';\n trackLoginFlow('open', tracking ?? screen);\n } else if (nextRoute === 'loginOptions') {\n screen = 'signup-modal-login-link';\n trackLoginFlow('open', tracking ?? screen);\n }\n }\n\n if (nextRoute === 'signupWithEmail') {\n screen = 'signupWithEmail';\n trackLoginFlow('open', tracking ?? screen);\n }\n\n prevRoute = nextRoute;\n },\n onGoogleLoginClick: () => trackLoginFlow('open', 'google'),\n onFBLoginClick: () => trackLoginFlow('open', 'facebook'),\n onAppleLoginClick: () => trackLoginFlow('open', 'apple'),\n ...extraModalProps\n };\n\n const setButtonNames = type => ({\n microsoft: `modal-microsoft-${type}-jfheader`,\n google: `modal-google-${type}-jfheader`,\n facebook: `modal-facebook-${type}-jfheader`,\n apple: `modal-apple-${type}-jfheader`,\n emailLogin: 'modal-standart-login-button',\n emailSignup: 'modal-header-createmyaccount'\n });\n\n switch (page) {\n case 's1':\n screen = 'signup';\n loginFlowProps.initialScreen = 'signupWithSocialOpts';\n loginFlowProps.buttonNames = setButtonNames('signup');\n break;\n case 's2':\n screen = 'login';\n loginFlowProps.forceLogin = 'true';\n loginFlowProps.buttonNames = setButtonNames('login');\n break;\n case 's3':\n screen = 'signupWithEmail';\n loginFlowProps.initialScreen = 'signupWithEmail';\n loginFlowProps.buttonNames = setButtonNames('signup');\n break;\n case 's3b':\n screen = 'signupWithSocialOpts';\n loginFlowProps.showFormOnSignupOptions = true;\n loginFlowProps.initialScreen = screen;\n loginFlowProps.buttonNames = setButtonNames('signup');\n break;\n default:\n loginFlowProps.initialScreen = page;\n }\n\n loginFlowProps.swsoTestVariant = true;\n\n const loginFlowHelper = await loadLoginFlow();\n loginFlowHelper.init(loginFlowProps);\n setTimeout(() => trackLoginFlow({ action: 'open', target: tracking ?? screen }), 0);\n};\n","import { openLoginFlow } from './openLoginFlow';\n\nexport const showLoginFlowModal = (\n page = 's1',\n tracking,\n // eslint-disable-next-line no-unused-vars\n hideClose = false,\n greetingMessage,\n greetingDescription,\n // eslint-disable-next-line no-unused-vars\n callbacks = {},\n extraModalProps = {}\n) => {\n openLoginFlow({\n page,\n tracking,\n greetingDescription,\n greetingMessage,\n extraModalProps\n });\n};\n\nwindow.showModal = showLoginFlowModal;\n","export const toggleSignupLoaders = (act = 'hide') => {\n document.querySelectorAll('.signup-loading').forEach(el => {\n const elRef = el;\n if (act === 'hide') {\n elRef.style.display = 'none';\n elRef.parentElement.classList.remove('socialbtn-loading-wrapper');\n } else if (act === 'show') {\n elRef.style.display = 'block';\n elRef.parentElement.classList.add('socialbtn-loading-wrapper');\n }\n });\n};\n","import { toggleSignupLoaders } from './toggleSignupLoaders';\n\nexport const createSocialTermsFlow = user => {\n const { pathname } = window.location;\n const preveventFlow = ['/login/', '/signup/'].includes(pathname);\n\n // If the pathname indicates that we're on the login or signup page, exit early.\n if (preveventFlow) return {};\n\n const socialTermsSecretManager = window.loginFlowHelper.createSocialTermsSecretManager();\n\n return {\n // When the Google/Facebook token arrives and Jotform API request triggers.\n onSocialLoginStart: ({ socialSignupThunk }) => {\n socialTermsSecretManager.set('socialSignupThunk', socialSignupThunk);\n },\n // When Jotform API returns a hash because it requires the user to accept terms and conditions.\n onSocialTermsRequired: ({\n socialLoginHash,\n socialUserProfile,\n idToken\n } = {}) => {\n socialTermsSecretManager.set('socialLoginHash', socialLoginHash);\n\n // Render terms and conditions modal.\n window.loginFlowHelper.renderStandaloneSocialTermsModal({\n user,\n socialUserProfile,\n onSocialTermsContinue: isTermsChecked => {\n if (isTermsChecked) {\n const hash = socialTermsSecretManager.get('socialLoginHash');\n const continueSocialSignup = socialTermsSecretManager.get('socialSignupThunk');\n if (typeof continueSocialSignup === 'function' && hash) {\n continueSocialSignup(hash, idToken);\n }\n }\n },\n onSocialTermsClose: () => {\n socialTermsSecretManager.removeAll();\n toggleSignupLoaders('hide');\n }\n });\n }\n };\n};\n","import { addEventListenerOnce, getBodyEl } from '../dom';\nimport { isGuest, isProduction } from '../jotform';\nimport { loadByApplyingLazyIgnoredElements } from '../scriptLoaders/loadByApplyingLazyIgnoredElements';\nimport { createSocialTermsFlow } from './createSocialTermsFlow';\nimport { customRedirectionOnLogIn, customRedirectionOnSignUp } from './customRedirects';\nimport { loadLoginFlow } from './loadLoginFlow';\n\nconst isOneTapAvailable = user => {\n const isGoogleOneTapPrevented = window.preventHeaderGoogleOneTap;\n const hasCustomCta = document.querySelector('.jfRHeader--custom-cta');\n return !isGoogleOneTapPrevented && window.GOOGLE_SIGNON && !hasCustomCta && isGuest(user) && isProduction();\n};\n\nexport const initGoogleOneTap = user => {\n const logLoginFlowAction = f => f;\n\n const listener = event => {\n if (!isOneTapAvailable(user)) return;\n\n loadByApplyingLazyIgnoredElements(event, () => {\n loadLoginFlow(() => {\n global.window.loginFlowHelper.initGoogleOneTap(\n {\n showLogoOnSignupOptions: false,\n renderValidationStepsAsModal: true,\n includeConfirm: true,\n forceUser: true,\n buttonNames: {\n googleOneTap: 'GoogleOnetap'\n },\n bypassDefault2faSocialInit: true,\n ...createSocialTermsFlow(user),\n onUserLogin: (loggedInUser, { newUser }) => {\n setTimeout(() => logLoginFlowAction?.({ action: newUser ? 'signup' : 'login', target: 'google-one-tap' }), 0);\n return newUser ? customRedirectionOnSignUp() : customRedirectionOnLogIn();\n },\n onGoogleOneTapPromptOpened: () => {\n setTimeout(() => logLoginFlowAction?.({ action: 'open', target: 'google-one-tap' }), 0);\n }\n },\n // 2fa callback\n f => f,\n // email auth response callback\n f => f\n );\n });\n });\n };\n\n addEventListenerOnce(getBodyEl(), 'mouseover', listener);\n};\n","import { toggleSignupLoaders } from './toggleSignupLoaders';\n\nexport const listenAppSignInOnFailure = () => {\n document.addEventListener('AppleIDSignInOnFailure', error => {\n toggleSignupLoaders();\n console.log(error);\n });\n};\n","import { LOGIN_FLOW_ACTIONS_PROJECT_NAME } from '../../constants';\nimport { ActionManager } from '../ActionManager';\nimport { createSocialTermsFlow } from './createSocialTermsFlow';\nimport { customRedirectionOnLogIn, customRedirectionOnSignUp } from './customRedirects';\nimport { toggleSignupLoaders } from './toggleSignupLoaders';\n// import { trackLoginFlow } from './trackLoginFlow';\n\nexport const openSocialLoginFlow = type => {\n const handlerMap = {\n google: 'handleGoogleClick',\n facebook: 'handleFBClick',\n microsoft: 'handleMSClick'\n };\n\n const trackLoginFlow = new ActionManager({ user: window.user, projectName: LOGIN_FLOW_ACTIONS_PROJECT_NAME }).registerJotformAction;\n\n const activeMethod = handlerMap[type];\n\n if (!activeMethod) {\n console.error(`Unsupported social login type: ${type}`);\n return;\n }\n\n trackLoginFlow('open', type);\n\n window.loginFlowHelper[activeMethod](\n {\n showLogoOnSignupOptions: false,\n includeConfirm: true,\n forceUser: true,\n renderValidationStepsAsModal: true,\n buttonNames: {\n google: 'google-homepage-hero',\n facebook: 'facebook-homepage-hero'\n },\n onUserLogin: (user, { newUser }) => {\n trackLoginFlow(newUser ? 'signup' : 'login', type);\n toggleSignupLoaders('hide');\n return newUser ? customRedirectionOnSignUp() : customRedirectionOnLogIn();\n },\n ...createSocialTermsFlow(window.user)\n },\n // 2fa response callback\n f => f,\n // error callback\n error => {\n console.error(error);\n toggleSignupLoaders('hide');\n },\n // email auth callback\n f => f\n );\n};\n","import {\n loadFacebookJS, loadGoogleJS, loadLoginFlow, loadMicrosotfJS\n} from './loadLoginFlow';\nimport { openSocialLoginFlow } from './openSocialLoginFlow';\nimport { toggleSignupLoaders } from './toggleSignupLoaders';\n\nexport const attachLoginFlowToTrioButtons = () => {\n const socialButtons = document.querySelectorAll('button.google, button.facebook, button.microsoft');\n\n socialButtons.forEach(button => {\n button.addEventListener('click', async event => {\n let socialMedia = '';\n const classNames = event.currentTarget.className;\n\n if (classNames.includes('google')) socialMedia = 'google';\n if (classNames.includes('facebook')) socialMedia = 'facebook';\n if (classNames.includes('microsoft')) socialMedia = 'microsoft';\n\n if (!window.loginFlowHelper) {\n await Promise.all([\n loadLoginFlow(),\n loadFacebookJS(),\n loadGoogleJS(),\n loadMicrosotfJS()\n ]);\n\n if (socialMedia !== 'google') toggleSignupLoaders('show');\n openSocialLoginFlow(socialMedia);\n return;\n }\n\n if (socialMedia !== 'google') toggleSignupLoaders('show');\n openSocialLoginFlow(socialMedia);\n });\n });\n};\n","import { attachLoginFlowToTrioButtons } from './attachLoginFlowToTrioButtons';\nimport {\n loadFacebookJS, loadGoogleJS, loadLoginFlow, loadMicrosotfJS\n} from './loadLoginFlow';\n\nexport const initLoginFlowTrioButtons = () => {\n const isHomepage = document.querySelector('body.homepage');\n const hasTrioButtons = document.querySelector('.introSection-buttons');\n const hasAnySocialSignupButton = document.querySelector('button.google, button.facebook, button.microsoft');\n\n if (isHomepage || hasTrioButtons || hasAnySocialSignupButton) {\n loadLoginFlow();\n loadFacebookJS();\n loadGoogleJS();\n loadMicrosotfJS();\n attachLoginFlowToTrioButtons();\n }\n};\n","export const attachObsoleteSignupLoadingFunctionToWindow = () => {\n const bannerSignupLoading = document.querySelector('.auth-section .signup-loading');\n const signupModalSignupLoading = document.querySelector('.modalpage.s1 .signup-loading');\n const loginModalLoading = document.querySelector('.modalpage.s2 .signup-loading');\n\n window.signupLoaderTimeout = null;\n\n window.handleSignupLoading = eventTarget => {\n if (!eventTarget) return;\n\n clearTimeout(window.signupLoaderTimeout);\n\n const parentClasses = eventTarget.parentNode?.className || '';\n const grandParentClasses = eventTarget.parentNode?.parentNode?.parentNode?.classList;\n\n if (parentClasses.includes('auth-section')) {\n bannerSignupLoading.style.display = 'block';\n } else if (grandParentClasses?.contains('s1')) {\n signupModalSignupLoading.style.display = 'block';\n } else if (grandParentClasses?.contains('s2')) {\n loginModalLoading.style.display = 'block';\n } else if (eventTarget.classList.contains('js-naked-social-signup')) {\n document.querySelectorAll('.signup-loading').forEach(el => {\n const elRef = el;\n elRef.style.display = 'block';\n });\n }\n };\n};\n","/* eslint-disable no-undef */\nfunction yieldToMain(callback = () => {}) {\n if ('scheduler' in global.window && 'yield' in scheduler) {\n return scheduler.yield().then(callback);\n }\n\n return new Promise(resolve => {\n setTimeout(() => {\n resolve();\n callback();\n }, 0);\n });\n}\n\nwindow.yieldToMain = yieldToMain;\n\nexport default yieldToMain;\n","const hasCookieConsent = consentName => {\n const cookiebot = window.Cookiebot;\n const consent = cookiebot?.consent?.[consentName];\n if (!consentName || !cookiebot) return true;\n if (cookiebot?.consent?.stamp === '0') return true;\n if (consent) return true;\n return false;\n};\n\nexport const setCookie = (name, value, ttl, consentName) => {\n let expires = '';\n if (window.jotCookie.hasCookieConsent(consentName)) {\n if (ttl) {\n const date = new Date();\n date.setTime(date.getTime() + (ttl * 24 * 60 * 60 * 1000));\n expires = `expires=${date.toUTCString()};`;\n }\n document.cookie = `${name}=${value};${expires} path=/`;\n }\n document.cookie = `${name}=${value};${expires} path=/`;\n};\n\nexport const readCookie = name => {\n const nameEQ = `${name}=`;\n const cookies = document.cookie.split(';');\n for (let i = 0; i < cookies.length; i++) {\n const cookie = cookies[i].trim();\n if (cookie.indexOf(nameEQ) === 0) {\n return cookie.substring(nameEQ.length, cookie.length);\n }\n }\n\n return null;\n};\n\nwindow.jotCookie = { hasCookieConsent, setCookie, readCookie };\n","import {\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState,\n useLayoutEffect\n} from 'react';\nimport { moment as Moment, nodeContains } from '@jotforminc/utils';\nimport debounce from 'lodash/debounce';\nimport { v4 as uuid } from 'uuid';\nimport throttle from 'lodash/throttle';\nimport Fuse from 'fuse.js';\nimport { useResize } from './useResize';\n\nexport const useDebounce = (fn, waitTime = 400, options = {}) => {\n const funcRef = useRef(fn);\n if (funcRef.current !== fn) {\n funcRef.current = fn;\n }\n\n return useCallback(debounce(fn, waitTime, options), [funcRef.current]);\n};\n\nconst baseFuseOptions = {};\nconst baseKeys = ['name', 'email'];\nexport const useFuse = (list, searchTerm, keys = baseKeys, fuseOptions = baseFuseOptions) => {\n const fuse = useMemo(() => new Fuse(list, {\n shouldSort: true,\n location: 0,\n threshold: 0.4,\n distance: 100,\n maxPatternLength: 32,\n minMatchCharLength: 1,\n ...fuseOptions,\n keys\n }), [list, keys, fuseOptions]);\n\n const results = useMemo(() => (!searchTerm\n ? list\n : fuse.search(searchTerm).map(fuseResult => ({\n ...fuseResult.item\n }))\n ), [fuse, searchTerm]);\n return results;\n};\n\nexport const useLongPress = (callback, ms = 500) => {\n const timer = useRef();\n\n const start = useCallback(event => {\n timer.current = setTimeout(() => callback(event), ms);\n }, [ms, callback]);\n\n const cancel = useCallback(() => {\n if (timer.current !== undefined) clearTimeout(timer.current);\n });\n\n useEffect(() => () => {\n if (timer.current !== undefined) clearTimeout(timer.current);\n }, []);\n\n return useMemo(() => ({\n onMouseDown: start,\n onMouseUp: cancel,\n onMouseLeave: cancel,\n onTouchStart: start,\n onTouchEnd: cancel,\n onTouchMove: cancel,\n onTouchCancel: cancel\n }), [start, cancel]);\n};\n\nexport const useSwitch = (value, cases) => useMemo(() => {\n const firstMatchingCase = cases.find(([caseValue]) => caseValue === value);\n if (firstMatchingCase) {\n const [, result] = firstMatchingCase;\n return result;\n }\n}, [value, cases]);\n\nexport const useStateWithAutoReset = (initialState = '', timeoutDuration = 3000) => {\n const [state, setState] = useState(initialState);\n\n useEffect(() => {\n if (state !== initialState) {\n const delayedClearStateTimeout = global.setTimeout(() => setState(initialState), timeoutDuration);\n return () => global.clearTimeout(delayedClearStateTimeout);\n }\n }, [state]);\n\n return [state, setState];\n};\n\nexport const useTimeout = (callback, delay) => {\n const callbackRef = useRef(callback);\n const timeoutRef = useRef();\n\n useEffect(() => {\n callbackRef.current = callback;\n }, [callback]);\n\n const set = useCallback(() => {\n timeoutRef.current = setTimeout(() => callbackRef.current(), delay);\n }, [delay]);\n\n const clear = useCallback(() => {\n if (timeoutRef.current) {\n clearTimeout(timeoutRef.current);\n }\n }, []);\n\n useEffect(() => {\n set();\n return clear;\n }, [delay, set, clear]);\n\n const reset = useCallback(() => {\n clear();\n set();\n }, [clear, set]);\n\n return { reset, clear };\n};\n\nexport const useDebounceWithTimeout = (callback, delay, dependencies) => {\n const { reset, clear } = useTimeout(callback, delay);\n useEffect(reset, [...dependencies, reset]);\n useEffect(clear, []);\n};\n\nexport const useTimeoutMessage = (initialValue, timeout = 3000) => {\n const timeoutRef = useRef(null);\n const [message, setMessage] = useState(initialValue);\n\n useEffect(() => {\n return () => {\n clearTimeout(timeoutRef.current);\n };\n }, []);\n\n return [\n message, data => {\n clearTimeout(timeoutRef.current);\n setMessage(data);\n timeoutRef.current = setTimeout(() => setMessage(false), timeout);\n }\n ];\n};\n\nexport const usePropState = initalValue => {\n const [state, setState] = useState(initalValue);\n useEffect(() => {\n if (initalValue !== state) {\n setState(initalValue);\n }\n }, [initalValue]);\n\n return [state, setState];\n};\n\nconst fetchers = {};\n\nexport const useRequest = (fetcher, name = fetcher.toString()) => {\n const [loading, setLoading] = useState(false);\n const [data, setData] = useState(false);\n const [error, setError] = useState(false);\n\n const load = async (...args) => {\n setLoading(true);\n setError(false);\n\n try {\n const req = fetcher(...args);\n fetchers[name] = req;\n\n const newData = await req;\n\n if (fetchers[name] !== req) return;\n\n setData(newData);\n } catch (e) {\n setError(e);\n }\n\n setLoading(false);\n\n return data;\n };\n\n return {\n error, load, loading, data, setData\n };\n};\nexport const useQuery = (fetcher, query, name) => {\n const request = useRequest(fetcher, name);\n const { load, setData } = request;\n\n const reload = () => load(query);\n\n useEffect(() => {\n setData(false);\n reload();\n }, [JSON.stringify(query)]);\n\n return { ...request, reload };\n};\n\nexport const useInViewport = (elementRef, callback = f => f, threshold = 0.2, callOnce = true, scrollRef = { current: window }) => {\n const isCalledRef = useRef(false);\n\n const isInViewport = elRef => {\n const rect = elRef.current?.getBoundingClientRect();\n const innerHeight = window.innerHeight || document.documentElement.clientHeight;\n const innerWidth = window.innerWidth || document.documentElement.clientWidth;\n const topCalculation = rect.top + (rect.height * threshold);\n const bottomCalculation = rect.bottom + (rect.height * threshold);\n const fromTop = topCalculation <= innerHeight && topCalculation >= 0;\n const fromBottom = bottomCalculation <= innerHeight && bottomCalculation >= 0;\n return (\n rect.left >= 0\n && (fromTop || fromBottom)\n && rect.right <= innerWidth\n );\n };\n\n const handleScroll = () => {\n if (!elementRef.current) return;\n const inViewport = isInViewport(elementRef);\n const shouldCall = callOnce ? (inViewport && !isCalledRef.current) : inViewport;\n if (shouldCall) {\n callback();\n isCalledRef.current = true;\n }\n };\n\n useEffect(() => {\n handleScroll();\n const throttledHandleScroll = throttle(handleScroll, 400);\n scrollRef.current?.addEventListener('scroll', throttledHandleScroll);\n return () => {\n scrollRef.current?.removeEventListener('scroll', throttledHandleScroll);\n };\n }, [elementRef, scrollRef]);\n};\n\n// from usehooks.com\nexport const useHover = (ms = 0) => {\n const [value, setValue] = useState(false);\n\n const ref = useRef(null);\n let timeout;\n const handleMouseOver = () => {\n if (ms > 0) {\n timeout = setTimeout(() => setValue(true), ms);\n } else {\n setValue(true);\n }\n };\n const handleMouseOut = () => {\n if (timeout) {\n timeout = clearTimeout(timeout);\n }\n setValue(false);\n };\n\n useEffect(\n () => {\n const node = ref.current;\n if (node) {\n node.addEventListener('mouseover', handleMouseOver);\n node.addEventListener('mouseout', handleMouseOut);\n\n return () => {\n if (timeout) {\n timeout = clearTimeout(timeout);\n }\n node.removeEventListener('mouseover', handleMouseOver);\n node.removeEventListener('mouseout', handleMouseOut);\n };\n }\n },\n [ref.current] // Recall only if ref changes\n );\n\n return [ref, value];\n};\n\nexport const useMomentDate = (date, format) => {\n const [momentDate, setMomentDate] = useState(Moment.dateToMoment(date, format));\n const renewMomentDate = () => {\n setMomentDate(Moment.dateToMoment(date, format));\n };\n\n useEffect(() => {\n const listenerKey = `renewMomentDate_${uuid()}`;\n Moment.addListener('setLocale', listenerKey, renewMomentDate);\n return () => Moment.removeListener('setLocale', listenerKey);\n }, []);\n\n useEffect(() => {\n renewMomentDate();\n }, [date, format]);\n\n return [momentDate, setMomentDate];\n};\n\nexport const useIsMobile = (mobileBreakdownWidth = 580) => {\n const { width } = useResize();\n return width <= mobileBreakdownWidth;\n};\n\nexport const useMoveOutsideState = (initialState, refs = []) => {\n const [isVisible, setVisibility] = useState(initialState);\n\n useEffect(() => {\n const hideMenu = ({ target }) => {\n return !refs.find(ref => ref?.current && nodeContains(ref.current, target)) && setVisibility(false);\n };\n\n global.window.addEventListener('mouseout', hideMenu);\n return () => global.window.removeEventListener('mouseout', hideMenu);\n }, [refs]);\n\n return [isVisible, setVisibility];\n};\n\nexport const useSetAttributeToElement = (className, setAttributeName, setAttributeValue, useEffectDependency) => {\n useEffect(() => {\n let index;\n const dates = document.getElementsByClassName(className);\n for (index = 0; index < dates.length; ++index) {\n dates[index]?.setAttribute(setAttributeName, setAttributeValue);\n }\n }, [useEffectDependency]);\n};\n\nexport const useDelayUnmount = (isMounted, delayTime) => {\n const [shouldRender, setShouldRender] = useState(false);\n const [className, setClassName] = useState('closed');\n useEffect(() => {\n let timeoutIdOut;\n if (isMounted && !shouldRender) {\n setShouldRender(true);\n setTimeout(() => setClassName('opened'));\n } else if (!isMounted && shouldRender) {\n setClassName('closed');\n timeoutIdOut = setTimeout(() => setShouldRender(false), delayTime);\n }\n return () => {\n clearTimeout(timeoutIdOut);\n };\n }, [isMounted, delayTime, shouldRender]);\n return [shouldRender, className];\n};\n\nexport const useKeyPress = targetKey => {\n const [keyPressed, setKeyPressed] = useState(false);\n function downHandler({ key }) {\n if (key === targetKey) {\n setKeyPressed(true);\n }\n }\n const upHandler = ({ key }) => {\n if (key === targetKey) {\n setKeyPressed(false);\n }\n };\n useEffect(() => {\n window.addEventListener('keydown', downHandler);\n window.addEventListener('keyup', upHandler);\n return () => {\n window.removeEventListener('keydown', downHandler);\n window.removeEventListener('keyup', upHandler);\n };\n }, []);\n return keyPressed;\n};\n\nexport const useMeasure = () => {\n const ref = useRef(null);\n const [forceRedraw, setForceRedraw] = useState(1);\n const rect = useRef(null);\n\n useLayoutEffect(() => {\n rect.current = ref.current && ref.current.getBoundingClientRect();\n if (!ref.current) return;\n if (rect.current.height) {\n setForceRedraw(0);\n }\n }, [forceRedraw, rect]);\n return [ref, rect.current && rect.current.height];\n};\n\nexport const useFocus = () => {\n const htmlElRef = useRef(null);\n // eslint-disable-next-line no-unused-expressions\n const setFocus = () => { htmlElRef?.current && htmlElRef?.current?.focus(); };\n\n return [htmlElRef, setFocus];\n};\n\nexport const useDelayed = (fn, ms) => {\n const ready = useRef(false);\n const timeout = useRef();\n const callback = useRef(fn);\n\n const isReady = useCallback(() => ready.current, []);\n\n const set = useCallback(\n (...args) => {\n ready.current = false;\n if (timeout.current) clearTimeout(timeout.current);\n\n timeout.current = setTimeout(() => {\n ready.current = true;\n callback.current(...args);\n }, ms);\n },\n [ms]\n );\n\n const clear = useCallback(() => {\n ready.current = null;\n if (timeout.current) clearTimeout(timeout.current);\n }, []);\n\n // update ref when function changes\n useEffect(() => {\n callback.current = fn;\n }, [fn]);\n\n // clear on unmount\n useEffect(() => {\n return clear;\n }, [ms]);\n\n return [isReady, clear, set];\n};\n\nexport const useOnClickOutside = (ref, handler) => {\n useEffect(() => {\n const listener = event => {\n if (!ref.current || ref.current.contains(event.target)) {\n return;\n }\n handler(event);\n };\n document.addEventListener('mousedown', listener);\n document.addEventListener('touchstart', listener);\n return () => {\n document.removeEventListener('mousedown', listener);\n document.removeEventListener('touchstart', listener);\n };\n }, [ref, handler]);\n};\n\nexport const usePrevious = value => {\n const ref = useRef();\n useEffect(() => {\n ref.current = value;\n }, [value]);\n return ref.current;\n};\n\nconst defaultOptions = {\n isPassive: true, condition: true, element: global, capture: false\n};\n\nexport const useEventListener = (\n eventName,\n handler,\n options\n) => {\n const savedHandler = useRef();\n const {\n isPassive, condition, element, capture\n } = { ...defaultOptions, ...options };\n\n useEffect(() => {\n savedHandler.current = handler;\n }, [handler]);\n\n useEffect(() => {\n const eventListener = event => savedHandler.current(event);\n if (condition) {\n element.addEventListener(eventName, eventListener, { passive: isPassive, capture });\n }\n return () => {\n if (condition) {\n element.removeEventListener(eventName, eventListener, { passive: isPassive, capture });\n }\n };\n }, [eventName, condition, element, isPassive]);\n};\n","import React from 'react';\nimport { string } from 'prop-types';\nimport classNames from 'classnames';\nimport Styled from 'styled-components';\n\nconst StyledSVG = Styled.svg`\n position: absolute;\n top: 50%;\n left: 50%;\n width: ${({ size = '70px' }) => size};\n height: ${({ size = '70px' }) => size};\n transform: translate(-50%, -50%);\n animation: jfLoading-svgRotate 2s linear 0s infinite normal none running;\n transform-origin: center center 0;\n\n .jfLoading-svgPath {\n stroke-dasharray: 1, 200;\n stroke-dashoffset: 0;\n animation: jfLoading-svgPath 1.5s ease-in-out 0s infinite normal none running;\n stroke-linecap: round;\n }\n\n @keyframes jfLoading-svgPath {\n 0% {\n stroke-dasharray: 1, 200;\n stroke-dashoffset: 0;\n }\n 50% {\n stroke-dasharray: 89, 200;\n stroke-dashoffset: -35px;\n }\n 100% {\n stroke-dasharray: 89, 200;\n stroke-dashoffset: -124px;\n }\n }\n\n @keyframes jfLoading-svgRotate {\n 100% {\n transform: rotate(360deg) translate(-50%, -50%);\n }\n }\n`;\n\nexport const Loading = ({\n className = null,\n strokeWidth = '2',\n strokeColor = 'rgba(0,0,0,0.5)',\n ...props\n}) => (\n \n \n \n);\n\nLoading.propTypes = {\n className: string,\n strokeColor: string,\n strokeWidth: string\n};\n","// import path from 'path';\n\nimport get from 'lodash/get';\n\nexport const getRouterValue = (key, defaultValue) => {\n return get(window.__jfrouter, key, defaultValue);\n};\n\nexport const getEnv = () => {\n return getRouterValue('JOTFORM_ENV', 'development');\n};\n\nexport const getAppPath = () => {\n return getRouterValue('APP_PATH', '/');\n};\n\nexport const getBaseURL = () => {\n return getRouterValue('BASE_URL', 'http://localhost');\n};\n\nexport const getAssetPath = () => {\n return getRouterValue('ASSET_PATH', '/');\n};\n\nexport const getRevision = () => {\n return getRouterValue('REVISION_HASH', '/');\n};\n\nexport const getPublicURL = () => {\n return `${getBaseURL()}${getAssetPath()}`;\n};\n\nexport const getCDNURL = () => {\n return getRouterValue('CDN_URL', getPublicURL());\n};\n\n// export const getAssetURL = assetPath => {\n// return `${getBaseURL()}${path.join(getAssetPath(), assetPath)}`;\n// };\n\nexport const getAppURL = () => {\n return `${getBaseURL()}${getAppPath()}`;\n};\n\nexport const getRoutePath = () => {\n return window.location.pathname.replace(getAppPath(), '');\n};\n\nexport const getActiveAlias = () => {\n return getRouterValue('ACTIVE_ALIAS', '');\n};\n\nexport const getActiveApp = () => {\n return getRouterValue('ACTIVE_APP', '');\n};\n\nexport const getInitialRoutePath = () => {\n return getRouterValue('INITIAL_ROUTE_PATH', '');\n};\n\nexport const getFullPath = () => {\n return getRouterValue('FULL_PATH', '');\n};\n\nexport const isHIPAA = () => {\n return getRouterValue('IS_HIPAA', '0') === '1';\n};\n\nexport const isEU = () => {\n return getRouterValue('IS_EU', '0') === '1';\n};\n\nexport const isSSO = () => {\n return getRouterValue('IS_SSO', '0') === '1';\n};\n\nexport const getRootPath = () => {\n return getRouterValue('ROOT_PATH', '');\n};\n","export const persistentKeyList = [\n /^.*?VariantCode$/,\n 'gocardlessPayload',\n 'stripeCode',\n 'DIGEST_ACTION_LSK',\n 'leadFlowBannerAutoVisible',\n 'messageHistory',\n /^AUTO_DELETE_INFO_POPUP_KEY_.*?$/,\n 'firstVisitDone',\n 'formCopilotModalSeen',\n /^limitWarningSeen_.*?$/,\n 'notification-lal-autovisible',\n 'notification-up-to-fifty-percent-discount-autovisible',\n 'notification-hubspot-milestone',\n 'notification-trysign',\n 'notification-fomo-a1-third-autovisible',\n /^uxrSurvey-.*?$/,\n 'notification-hipaa-enforcement',\n 'ncseen',\n 'notification-cent-store-recommendation',\n 'notification-cent-app-recommendation',\n 'stripeCode',\n /contentOfQuestion_.*?$/,\n 'actionKanbanCount',\n 'actionReportCount',\n 'lastShownTimeDraftWarning',\n /^AUTO_DELETE_INFO_POPUP_KEY_.*?$/,\n 'subscriptionsColumnList',\n 'invoiceColumnList',\n 'ttmLanguage',\n 'boxnet_auth_token',\n 'discardSalesforceEarlyAccessModal',\n 'discardSalesforceRatingModal',\n 'AIChat',\n 'FormCopilotProps',\n /^whats_new_.*?$/\n];\n","import isEqual from 'lodash/isEqual';\n\nimport { persistentKeyList } from './constants';\n\nclass StorageHelper {\n static instance = null;\n\n static testStorage = type => {\n const testItem = 'test';\n const testKey = 'jfStorageHelper_test';\n const storage = StorageHelper.getStorage(type);\n\n try {\n if (!storage) {\n return false;\n }\n storage.setItem(testKey, testItem);\n const result = storage.getItem(testKey) === testItem;\n storage.removeItem(testKey);\n return result;\n } catch (e) {\n console.error(`Error in ${type} storage helper initialization`, e);\n return false;\n }\n };\n\n static get isSupported() {\n return StorageHelper.testStorage('local') && StorageHelper.testStorage('session');\n }\n\n static getStorage = type => {\n const storageBase = typeof window !== 'undefined' ? window : global;\n return type === 'session' ? storageBase.sessionStorage : storageBase.localStorage;\n };\n\n static getLocalStorageItem = ({ key, defaultValue }) => {\n return StorageHelper.getItem({ key, defaultValue, type: 'local' });\n };\n\n static getSessionStorageItem = ({ key, defaultValue }) => {\n return StorageHelper.getItem({ key, defaultValue, type: 'session' });\n };\n\n static getItem = ({ key, type = 'local', defaultValue = null }) => {\n const storage = StorageHelper.getStorage(type);\n if (!StorageHelper.isSupported || !storage) {\n return defaultValue;\n }\n\n const itemString = storage.getItem(key);\n try {\n if (!itemString) {\n return defaultValue;\n }\n\n const { value, expiry } = JSON.parse(itemString) || {};\n if (expiry && (new Date()).getTime() > expiry) {\n StorageHelper.removeItem({ key, type });\n return defaultValue;\n }\n\n return value;\n } catch (e) {\n console.error('Error in getting item from storage', e);\n return itemString || defaultValue;\n }\n };\n\n static setLocalStorageItem = ({ key, value, ttl }) => {\n return StorageHelper.setItem({\n key,\n ttl,\n value,\n type: 'local'\n });\n };\n\n static setSessionStorageItem = ({ key, value, ttl }) => {\n return StorageHelper.setItem({\n key,\n ttl,\n value,\n type: 'session'\n });\n };\n\n static setItem = ({\n key, value, type = 'local', ttl\n }) => {\n const storage = StorageHelper.getStorage(type);\n if (!StorageHelper.isSupported || !storage) return false;\n try {\n const itemString = JSON.stringify({ value, expiry: ttl ? (new Date()).getTime() + ttl : undefined });\n storage.setItem(key, itemString);\n return true;\n } catch (e) {\n console.error('Error in setting item in storage', e);\n return false;\n }\n };\n\n static removeLocalStorageItem = ({ key }) => {\n return StorageHelper.removeItem({ key, type: 'local' });\n };\n\n static removeSessionStorageItem = ({ key }) => {\n return StorageHelper.removeItem({ key, type: 'session' });\n };\n\n static removeItem = ({ key, type = 'local' }) => {\n const storage = StorageHelper.getStorage(type);\n if (!StorageHelper.isSupported || !storage) return false;\n try {\n storage.removeItem(key);\n return true;\n } catch (e) {\n console.error('Error in removing item from storage', e);\n return false;\n }\n };\n\n static clearLocalStorage = ({ force = false } = {}) => {\n return StorageHelper.clear({ type: 'local', force });\n };\n\n static clear = ({ type = 'local', force } = {}) => {\n const storage = StorageHelper.getStorage(type);\n if (!StorageHelper.isSupported || !storage) {\n return false;\n }\n\n for (let i = storage.length - 1; i >= 0; i--) {\n const key = storage.key(i);\n if (!key) {\n continue;\n }\n\n if (!force && StorageHelper.isPersistantKey(key)) {\n continue;\n }\n\n storage.removeItem(key);\n }\n };\n\n static incrementCounter = ({ key, maxCount, type = 'local' }) => {\n const counter = StorageHelper.getItem({ key, type });\n if (counter) {\n const numericVal = parseInt(counter, 10);\n if (numericVal >= maxCount) {\n return;\n }\n\n StorageHelper.setItem({ key, type, value: numericVal + 1 });\n return;\n }\n\n StorageHelper.setItem({ key, type, value: 1 });\n };\n\n static hasKeyValuePair = ({ key, value, type = 'local' }) => {\n const val = StorageHelper.getItem({ key, type });\n return isEqual(val, value);\n };\n\n static isPersistantKey = key => {\n return persistentKeyList.some(keyOrPattern => {\n switch (true) {\n case keyOrPattern instanceof RegExp:\n return keyOrPattern.test(key);\n case typeof keyOrPattern === 'string':\n return keyOrPattern === key;\n default:\n return false;\n }\n });\n };\n}\n\nexport { StorageHelper };\n","/* eslint-disable max-len */\nimport Styled, { css } from 'styled-components';\n\nexport const customFont = '-apple-system, BlinkMacSystemFont, \"Segoe UI\", roboto, oxygen-sans, ubuntu, cantarell, \"Helvetica Neue\", sans-serif';\n// '\"CircularStd\", \"Work Sans SemiBold\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", roboto, oxygen-sans, ubuntu, cantarell, \"Helvetica Neue\", sans-serif';\n\nexport const commonStyles = `\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n text-rendering: optimizeLegibility;\n font-family: ${customFont};\n font-size: 16px;\n`;\n\nexport const ScBox = Styled.div`\n box-sizing: border-box;\n background-color: #fff;\n border-radius: 4px;\n margin: auto auto;\n height: 100%;\n width: 100%;\n display: flex;\n flex-direction: column;\n position: relative;\n\n .wBox-upper {\n position: absolute;\n left: 0;\n top: 0;\n right: 50px;\n height: 79px;\n }\n\n > div { flex: 1 1 auto; min-height: 0; }\n\n @media screen and (max-width: 480px) {\n border-radius: 0;\n }\n`;\n\nexport const ScHeader = Styled.div`\n @font-face {\n font-family:\"Circular\";\n src: local(\"Circular Medium\"), local(\"Circular-Medium\"), url(\"https://cdn.jotfor.ms/fonts/circular/fonts/Circular-Medium.woff2\") format(\"woff2\"), url(\"https://cdn.jotfor.ms/fonts/circular/fonts/Circular-Medium.woff\") format(\"woff\");\n font-display:swap;\n font-style:normal;\n font-weight: 500;\n }\n\n border-bottom: ${p => (p.withHeader === true ? '1px solid #eaebf2' : 0)};\n display: flex;\n align-items: center;\n\n .header-content {\n flex: 1 1 auto;\n padding-left: 20px;\n .jShareModal-titleText {\n font-size: 20px;\n line-height: 24px;\n font-weight: 500;\n }\n\n html[dir=\"rtl\"] & {\n padding-left: 0;\n padding-right: 20px;\n }\n }\n\n .header-title {\n display: flex;\n align-items: center;\n font-size: 18px;\n font-weight: 500;\n font-family: \"Circular\",Work Sans Medium,-apple-system,Helvetica Neue,sans-serif;\n line-height: 20px;\n color: #141E46;\n height: 20px;\n margin: 0;\n\n .avatarHolder {\n margin-right: 10px;\n html[dir=\"rtl\"] & {\n margin-right: 0;\n margin-left: 10px;\n }\n }\n }\n\n .close-modal {\n margin: 18px;\n }\n && { flex: 0 0 auto; }\n\n @media screen and (max-width: 480px) {\n .header-content { padding-left: 1.5rem; }\n }\n`;\n\nexport const ScFooter = Styled.div`\n border-top: 1px solid #EDEEF5;\n border-radius: 0 0 4px 4px;\n background-color: #F8F8FA;\n min-height: 30px;\n padding: 12px 25px;\n\n && { flex: 0 0 auto; }\n\n @media screen and (max-width: 480px) {\n padding: 9px 18px;\n }\n`;\n\nexport const ScOverlay = Styled.div`\n * { box-sizing: border-box; }\n ${commonStyles};\n font-family: \"Circular\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", roboto, oxygen-sans, ubuntu, cantarell, \"Helvetica Neue\", sans-serif;\n position: fixed;\n left: 0;\n top: 0;\n width: 100%;\n height: 100%;\n z-index: 7002;\n background-color: rgba(37, 45, 91, 0.7);\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n\n div[data-uikit-modal-container] {\n max-width: ${p => (p.maxWidth ? p.maxWidth : 630)}px;\n }\n &.templateModal {\n div[data-uikit-modal-container] {\n max-width: 1440px;\n max-height: unset;\n height: 96%;\n }\n [data-sc=\"picker-body\"] {\n max-height: unset;\n }\n [data-sc=\"footer\"] {\n display: none;\n }\n }\n\n &.forWizard {\n div[data-uikit-modal-container] {\n max-width: 860px;\n min-height: 0;\n }\n .header-content {\n padding-left: 24px;\n }\n .jfTabs-tabs-button {\n color: #8D8FA8;\n border-bottom: 1px solid #EAEBF2;\n &[data-isactive=true] {\n color: #5e74e6;\n }\n &:after {\n background-color: #5e74e6;\n }\n }\n }\n\n &.contactsDeleteModal {\n .title {\n margin: 24px 0 12px 0;\n }\n .content {\n padding-bottom: 32px;\n p {\n max-width: 450px;\n width: 100%;\n background-color: #F3F3FE;\n border-radius: 4px;\n padding: 24px 32px;\n color: #0A1551;\n .contactNames {\n font-weight: 500;\n }\n }\n .subtitle {\n color: #8D8FA8;\n font-weight: 400;\n .undone {\n font-weight: 500;\n }\n }\n }\n }\n\n :not(:last-child) {\n display: none;\n }\n\n .forShareModal-assignee div[data-uikitgeneratedportalcontainer=true] {\n position: absolute;\n\n & > div {\n position: relative !important;\n }\n }\n\n & > div {\n ${p => (p.isFullScreen ? css`\n width: 100%;\n height: 100%;\n ` : css`\n width: 96%;\n max-width: 770px;\n max-height: 80vh;\n // min-height: 424px;\n `)};\n display: flex;\n }\n\n ${p => p.isFullScreen && css`\n ${ScBox} { border-radius: 0; }\n `};\n\n @media screen and (max-width: 480px), (max-height: 480px) {\n overflow: auto;\n display: block;\n &.is2FAModal {\n display: flex;\n height: auto !important; \n }\n\n & > div {\n max-height: none;\n height: 100svh;\n width: 100%;\n margin: 0;\n max-width: none;\n }\n }\n\n @media screen and (max-width: 480px) and (max-height: 380px) {\n & > div {\n height: calc(100vh + 88px);\n }\n }\n\n @media screen and (max-height: 414px) and (orientation: landscape) {\n & > div {\n height: unset;\n }\n }\n`;\n","import React, { useMemo, useRef } from 'react';\nimport {\n elementType, func, bool, node, oneOfType, string, number\n} from 'prop-types';\nimport { t } from '@jotforminc/translation';\nimport { Modal as UIKitModal, Hooks } from '@jotforminc/uikit';\n\nimport { Button } from '@jotforminc/magnet';\nimport { IconChevronLeft, IconXmark } from '@jotforminc/svg-icons';\n\nimport {\n ScOverlay, ScBox, ScHeader, ScFooter\n} from './styled';\n\nconst Modal = React.forwardRef((props, ref) => {\n const {\n header,\n footer,\n onClose,\n isFullScreen,\n showGoBackAsClose,\n contentRenderer,\n className,\n headerHasCloseButton,\n usePortal,\n headerVisible,\n portalContainerSelector,\n onHeaderCloseClick,\n is2FAModal,\n maxWidth\n } = props;\n const innerRef = useRef();\n const rootRef = Hooks.useCombinedRefs(innerRef, ref);\n\n // TODO :: We should translate `Go Back` text\n\n const handleHeaderClose = () => {\n if (onHeaderCloseClick) {\n onHeaderCloseClick();\n return;\n }\n rootRef.current.hide();\n };\n\n const HeaderRenderer = useMemo(() => () => (\n \n
{header}
\n {headerHasCloseButton && (\n \n {showGoBackAsClose ? t('Go back') : ''}\n \n )}\n
\n ), [rootRef.current, header]);\n\n const FooterRenderer = useMemo(() => () => (footer ? {footer} : null), [footer]);\n const ScOverlayWithClass = useMemo(() => pr => (\n \n ), [isFullScreen, className, is2FAModal]);\n\n const isMobile = window.navigator.userAgent.indexOf('Mobile') !== -1;\n\n return (\n null}\n FooterRenderer={FooterRenderer}\n onModalClose={onClose}\n />\n );\n});\n\nModal.propTypes = {\n header: oneOfType([elementType, node]),\n footer: oneOfType([elementType, node]),\n onClose: func,\n onHeaderCloseClick: func,\n isFullScreen: bool,\n showGoBackAsClose: bool,\n className: string,\n contentRenderer: oneOfType([elementType, node]),\n headerHasCloseButton: bool,\n usePortal: bool,\n headerVisible: bool,\n portalContainerSelector: string,\n is2FAModal: bool,\n maxWidth: number\n};\n\nModal.defaultProps = {\n header: null,\n footer: null,\n onClose: f => f,\n onHeaderCloseClick: undefined,\n isFullScreen: false,\n showGoBackAsClose: false,\n className: undefined,\n contentRenderer: ScBox,\n headerHasCloseButton: true,\n usePortal: false,\n headerVisible: true,\n portalContainerSelector: 'body',\n is2FAModal: false,\n maxWidth: 630\n};\n\nexport default Modal;\n","\n \n\n","\n \n\n","\n \n\n","\n \n\n","","\n \n\n","\n \n\n","\n \n\n","\n \n\n","\n \n\n","\n \n\n","import React from 'react';\nimport {\n bool,\n elementType,\n node,\n string,\n oneOf,\n oneOfType,\n func,\n shape\n} from 'prop-types';\nimport classNames from 'classnames';\n\nimport '../styles/_jfTooltip.scss';\n\nconst VerticalAttachments = ['Left', 'Right'];\nconst HorizontalAttachments = ['Top', 'Bottom'];\n\n/**\n * Displays a tooltip\n */\nexport class Tooltip extends React.Component {\n get wrapperClassNames() {\n const {\n animated,\n wrapperClassName\n } = this.props;\n\n return classNames(\n 'jfTooltip-wrapper',\n wrapperClassName,\n {\n withAnimation: animated\n }\n );\n }\n\n get containerClassNames() {\n const {\n align,\n attach\n } = this.props;\n\n return classNames('jfTooltip-container', align ? `align${align}` : null, attach ? `attach${attach}` : null);\n }\n\n get classNames() {\n const {\n icon\n } = this.props;\n\n return classNames('jfTooltip', { hasIcon: icon });\n }\n\n get stateClassNames() {\n const {\n isVisible,\n allowHover,\n noWrap,\n align,\n attach,\n renderInContainer\n } = this.props;\n\n return classNames(\n {\n isVisible,\n isInContainer: renderInContainer,\n tooltipAllowHover: allowHover,\n tooltipNoWrap: noWrap\n },\n align ? `tooltipAlign${align}` : null,\n attach ? `tooltipAttach${attach}` : null\n );\n }\n\n renderIcon() {\n const {\n icon\n } = this.props;\n return icon ?
{icon}
: null;\n }\n\n renderV1() {\n const {\n text,\n onClick,\n backgroundColor,\n color,\n children,\n customProps\n } = this.props;\n\n return (text || children) ? (\n \n
\n
\n {this.renderIcon()}\n
{children || text}
\n
\n
\n
\n
\n ) : null;\n }\n\n renderV2() {\n const {\n v2,\n animated,\n className,\n backgroundColor,\n wrapperClassName,\n isVisible,\n children,\n align,\n attach,\n customProps,\n style,\n allowHover,\n hideArrow,\n tooltipDistance,\n tooltipArrowDistance,\n noWrap,\n ...props\n } = this.props;\n\n const isVertical = VerticalAttachments.indexOf(attach) >= 0;\n\n return children ? (\n \n
\n \n \n \n
\n
\n {children}\n
\n
\n ) : null;\n }\n\n render() {\n const { v2 } = this.props;\n return !v2 ? this.renderV1() : this.renderV2();\n }\n}\n\nTooltip.propTypes = {\n v2: bool,\n className: string,\n children: node,\n icon: oneOfType([\n elementType,\n node\n ]),\n text: string,\n align: oneOf(['Left', 'Center', 'Right', 'Start', 'End']),\n attach: oneOf([...VerticalAttachments, ...HorizontalAttachments]),\n animated: bool,\n onClick: func,\n wrapperClassName: string,\n backgroundColor: string,\n color: string,\n isVisible: bool,\n allowHover: bool,\n hideArrow: bool,\n noWrap: bool,\n renderInContainer: bool,\n tooltipDistance: string,\n tooltipArrowDistance: string,\n style: shape({}),\n customProps: shape({})\n};\n\nTooltip.defaultProps = {\n v2: false,\n className: null,\n children: null,\n icon: null,\n text: null,\n align: 'Center',\n attach: 'Top',\n animated: false,\n onClick: f => f,\n wrapperClassName: null,\n backgroundColor: null,\n color: null,\n isVisible: false,\n allowHover: false,\n hideArrow: false,\n noWrap: false,\n renderInContainer: false,\n tooltipDistance: null,\n tooltipArrowDistance: null,\n style: {},\n customProps: {}\n};\n","import axios from 'axios';\nimport isNil from 'lodash/isNil';\n\nimport { encodeUsedTranslations, unlocalizeOriginHref } from './utils';\nimport { partialTranslations, DEFAULT_LANGUAGE } from './constants';\n\nexport const prepareT = translation => function t(str, params = {}) {\n if (!str) {\n return str;\n }\n if (typeof str !== 'string') {\n return str;\n }\n\n if ((global?.window?.location?.href || '')?.includes('rawTranslationTextMode=true')) {\n return str;\n }\n\n let translated = str;\n try {\n if (typeof translation.translate === 'function') {\n translated = translation.translate(str, params);\n } else if (typeof translation.t === 'function') {\n translated = translation.t(str, params);\n }\n if (typeof global?.window?.useTranslationScreenshots !== 'undefined') {\n return str;\n }\n if (translation.currentLocale !== DEFAULT_LANGUAGE && str !== translated && translation.controlMode) {\n return '1';\n }\n } catch (e) {\n console.error('Error on common/translate falling back with original str', e);\n }\n\n const resp = (params.branding21) ? translated.replace(/JotForm/g, 'Jotform') : translated;\n\n return resp;\n};\n\nexport const preapreTtime = translation => function ttime(str, options = {}) {\n const { hour = 'numeric', minute = 'numeric' } = options;\n const formatOptions = { hour, minute };\n let [hourVal, minuteVal] = str.replace('/am|pm/', '').split(':').map(i1 => parseInt(i1, 10)); //eslint-disable-line\n\n if (str.indexOf('pm') > 0) {\n hourVal = hourVal !== 12 ? hourVal + 12 : hourVal;\n } else if (str.indexOf('am') > 0) {\n hourVal = hourVal === 12 ? 0 : hourVal;\n }\n\n const tempDate = new Date();\n tempDate.setHours(hourVal, minuteVal);\n // eslint-disable-next-line no-restricted-globals\n if (isNaN(tempDate.getTime())) {\n return str;\n }\n return tempDate.toLocaleTimeString(translation.currentLocale, formatOptions);\n};\n\nexport const prepareTDate = translation => function tdate(str, options = {}) {\n try {\n const ttime = preapreTtime(translation);\n if (options.timeOnly) {\n return ttime(str, options);\n }\n const dateObj = new Date(str);\n // eslint-disable-next-line no-restricted-globals\n if (isNaN(dateObj.getTime())) {\n return str;\n }\n // Add undesired fields with null values to options object. Ex:{weekday : null}\n const formatOptions = {\n weekday: 'short', year: 'numeric', month: 'short', day: 'numeric'\n };\n if (options && typeof options === 'object') {\n Object.keys(options).forEach(optionName => {\n if (options[optionName] == null) {\n delete formatOptions[optionName];\n } else {\n formatOptions[optionName] = options[optionName];\n }\n });\n }\n return dateObj.toLocaleDateString(translation.currentLocale, formatOptions);\n } catch (err) {\n return str;\n }\n};\n\n// Example usage:\n/*\n translationRenderer('This is an [1[example]] string [2[for]] translation')({\n renderer1: (str) => {str}; // str is \"example\"\n fallback: (str) => {str};\n })\n - Since there is no render function given for second match, fallback function will be used as renderer.\n - Renderer functions can only have 1 parameter, which is sanitized version of delimeter.\n */\nexport const prepareTranslationRenderer = t => function translationRenderer(str, params = {}) {\n if ((global?.window?.location?.href || '')?.includes('rawTranslationTextMode=true')) {\n return () => str;\n }\n const translatedString = t(str, params);\n const getRendererIndex = delimiterStr => {\n const matches = delimiterStr.match(/\\[(\\d+)\\[/);\n if (matches && matches[1]) {\n return matches[1];\n }\n throw new Error(`Delimeter string (${delimiterStr}) format is inappropriate! Correct format is [RENDERER_NUMBER[TEXT]]`);\n };\n\n return renderFunctions => {\n try {\n const matchTemplate = /\\[\\d+\\[.*?\\]{2}/g;\n const replaceTemplate = /\\[(\\d+)\\[|\\]{2}/g;\n const matches = (translatedString && translatedString.match) ? translatedString.match(matchTemplate) : null;\n if (matches && matches.length > 0) {\n const renderers = renderFunctions || {};\n // Set a fallback renderer if it is not given in renderFunctions\n if (typeof renderers.fallback !== 'function') {\n renderers.fallback = i1 => i1;\n }\n // Create an array which includes all render functions\n const matchedStrings = matches.map(matchItem => {\n const currentKey = `renderer${getRendererIndex(matchItem)}`;\n const sanitizedValue = matchItem.replace(replaceTemplate, '');\n if (typeof renderers[currentKey] === 'function') {\n return renderers[currentKey](sanitizedValue);\n }\n return renderers.fallback(sanitizedValue);\n });\n\n return translatedString.split(matchTemplate).map((normStr, index) => (\n typeof matchedStrings[index] !== 'undefined'\n ? [normStr, matchedStrings[index]]\n : [normStr]\n ));\n }\n } catch (err) {\n console.error(err); // eslint-disable-line\n }\n return translatedString;\n };\n};\n\nexport const prepareControlModeChange = translation => function controlModeChange(controlMode) {\n return new Promise((resolve, reject) => {\n try {\n // eslint-disable-next-line no-param-reassign\n translation.controlMode = controlMode;\n resolve({ loaded: true, controlMode });\n } catch (err) {\n reject(new Error(err));\n }\n });\n};\n\nexport const prepareAddTranslationToDictionary = translation => function addTranslationToDictionary(code, translationData) {\n const dictionary = translationData;\n // remove untranslated keys\n const clearedDic = Object.keys(dictionary).reduce((dic, key) => {\n const entry = dictionary[key];\n if (!entry) {\n return dic;\n }\n return Object.assign(dic, { [key]: entry });\n }, {});\n\n if (dictionary) {\n translation.add(code, clearedDic);\n }\n return ({ loaded: true, code });\n};\n\nexport const generateDictionaryURL = ({ path, code = DEFAULT_LANGUAGE }) => {\n const sanitizedCode = code?.length !== 5 ? DEFAULT_LANGUAGE : code;\n return `/js/${path}/locale_${sanitizedCode}.js?${Math.floor((Math.random() * (9999 - 1001)) + 1000)}`;\n};\n\nexport const loadDictionaryViaTag = ({ code, path }) => new Promise((resolve, reject) => {\n try {\n const tmpScriptTag = global.document.createElement('script');\n tmpScriptTag.src = generateDictionaryURL({ code, path });\n tmpScriptTag.onload = () => resolve(global.Locale.language);\n tmpScriptTag.onerror = () => reject(new Error('Language dictionary load failed.'));\n\n if (!global.Locale) {\n global.Locale = {};\n }\n\n global.document.body.appendChild(tmpScriptTag);\n } catch (e) {\n reject(e);\n }\n});\n\nexport const loadDictionaryViaFetch = ({ code, path }) => fetch(generateDictionaryURL({ code, path }), {\n headers: { 'Content-Type': 'text/plain' }\n}).then(r => r.text()).then(r => r.replace('Locale.language=', '')).then(r => JSON.parse(r));\n\nexport const prepareAddDictionary = translation => function addDictionary(code, partialDictionaryName) {\n const addTranslationToDictionary = prepareAddTranslationToDictionary(translation);\n const url = unlocalizeOriginHref(global?.window?.location?.href);\n const partialDictionaryPath = partialDictionaryName || Object.keys(partialTranslations).find(q => partialTranslations[q](url));\n const loadMethod = global?.document ? loadDictionaryViaTag : loadDictionaryViaFetch;\n const path = partialDictionaryPath ? `locale/partial-translations/${partialDictionaryPath}` : 'locale';\n return new Promise((resolve, reject) => {\n loadMethod({ path, code: code?.length !== 5 ? DEFAULT_LANGUAGE : code })\n .then(translationData => resolve(addTranslationToDictionary(code, translationData)))\n .catch(err => reject(new Error(err)));\n });\n};\n\nexport const sendUsedTranslationsInterval = () => {\n if (isNil(global.Translations.processUsedTranslationsInterval) && !global.Translations.forceStopCollecting) {\n console.log('[Translations] :: Collecting used translation strings.');\n\n global.Translations.processUsedTranslationsInterval = setInterval(() => {\n const finishInterval = global.Translations.encodedAndProcessedStrings?.length >= global.Translations.usedTranslations?.length;\n\n if (global.Translations.forceStopCollecting) {\n return;\n }\n\n if (finishInterval) {\n clearInterval(global.Translations.processUsedTranslationsInterval);\n global.Translations.processUsedTranslationsInterval = null;\n global.Translations.forceStopCollecting = true;\n\n return axios.post('/API/translation/track-translated-strings', {\n url: global.location?.href,\n hashes: global.Translations.encodedAndProcessedStrings\n }).then(res => {\n if (res?.data?.responseCode === 200) {\n console.log(`[Translations] :: ${global.Translations.encodedAndProcessedStrings?.length} used translations collected.`);\n }\n }).catch(() => {\n console.log('[Translations] :: Error while collect used translations.');\n });\n }\n\n encodeUsedTranslations(global.Translations.usedTranslations);\n }, 1500);\n }\n};\n","// Clear translation visibility classes\nexport const clearTranslationMarkup = () => {\n // Get elements with the class\n const elements = global.document.body.querySelectorAll('.js-translationBlocker');\n\n // Get direct parents of translation texts\n const textParents = global.document.body.querySelectorAll('.js-translationText');\n\n // Get select parents of translation texts\n const selectParents = global.document.body.querySelectorAll('.js-translationSelect');\n\n // Convert node list to array and remove class from each element\n Object.values(elements).forEach(el => el && el.classList && el.classList.remove('js-translationBlocker'));\n // Object.values(textParents).forEach(el => el && el.classList && el.classList.remove('js-translationText'));\n Object.values(textParents).forEach(el => {\n // eslint-disable-next-line no-unused-expressions\n if (el && el.classList) {\n const elc = el;\n elc.style.outline = 'none';\n elc.style.position = 'initial';\n elc.style.zIndex = 'initial';\n el.classList.remove('js-translationText');\n }\n });\n Object.values(selectParents).forEach(el => {\n // Return if not a valid dom element\n if (!el || !el.classList) {\n return false;\n }\n\n // Get original size and multiple values of element if there were exist\n const originalSize = el.getAttribute('data-tempsize');\n const originalMultiple = el.getAttribute('data-tempmultiple');\n\n // Remove temporary attributes\n el.removeAttribute('data-tempsize');\n el.removeAttribute('data-tempmultiple');\n\n // If any one of them was setted then add them again; otherwise remove them\n if (originalSize !== 'null') {\n el.setAttribute('size', originalSize);\n } else {\n el.removeAttribute('size');\n }\n\n if (originalMultiple !== 'null') {\n el.setAttribute('multiple', originalMultiple);\n } else {\n el.removeAttribute('multiple');\n }\n\n // Lastly remove translation class\n el.classList.remove('js-translationSelect');\n });\n};\n\nexport const addTranslationMarkup = (el, initial = true) => {\n // If element is body or global then no need to process further\n if (el === global || el === global.document || el === global.document.body) return true;\n\n // If element or style belongs to it is undefined then terminate the process\n if (!el) return false;\n\n // Put text class at initial call\n if (initial) {\n el.parentElement.classList.add('js-translationText');\n\n const parent = el.parentElement;\n parent.style.outline = '3px solid #F00';\n parent.style.position = 'relative';\n parent.style.zIndex = '1000';\n }\n\n // Process if style is defined\n if (el.style) {\n // Get current style values of the element\n const currentStyle = global.getComputedStyle(el);\n\n // Check if one of the invisibility requirements it satisfied\n if (currentStyle.display === 'none' || currentStyle.opacity === '0' || currentStyle.visibility === 'hidden' || currentStyle.maxHeight === '0px') {\n // Add visibility class of translation\n el.classList.add('js-translationBlocker');\n }\n }\n\n if (el.tagName === 'SELECT') { // Handle select to show all options\n // Keep size and multiple attributes temporarily\n el.setAttribute('data-tempsize', el.getAttribute('size'));\n el.setAttribute('data-tempmultiple', el.getAttribute('multiple'));\n\n // Add size attribute temporarly to show all options\n el.setAttribute('size', el.length);\n el.setAttribute('multiple', 'multiple');\n\n // Add translation class to set height and mark select as dirty to clear later\n el.classList.add('js-translationSelect');\n }\n\n return addTranslationMarkup(el.parentElement, false);\n};\n\n// Finds elements that contains one of the texts passed\nexport const searchTextInDOM = (el, texts) => {\n // No need to parse the dom if it belongs to one of the given tags\n if (['SCRIPT', 'SVG', 'IMG', 'STYLE', 'INPUT', 'PATH'].indexOf(el.tagName) !== -1) {\n return null;\n }\n\n // If classList is defined for given element\n if (el.classList && el.classList.value) {\n // Define classes that we do not want to search\n // const classesToBeFiltered = [/hideOnDesktop/, /hide-on-builder/, /tabMenu/, /toggleText-mobile/, /hide-on-crawler/];\n const classesToBeFiltered = [/hideOnDesktop/, /toggleText-mobile/, /hide-on-crawler/];\n\n // Check if classList contains one of the unwanted classes\n if (classesToBeFiltered.some(rgx => rgx.test(el.classList.value))) {\n return null;\n }\n }\n\n // If still a child exist then parse tree deeper\n if (el.childNodes && el.childNodes.length !== 0) {\n return Object.values(el.childNodes) // Convert nodeList to array\n .filter(child => typeof child === 'object') // Remove numbers and functions to take only nodes(objects)\n .map(child => searchTextInDOM(child, texts)) // Call every node element with parseTree (recursive)\n .reduce((prev, curr) => (curr !== null ? prev.concat(curr) : prev), []); // Reduce results to one array\n }\n\n // Check if text content is one of the strings we are searching\n if (el.textContent && texts.indexOf(el.textContent.trim()) > -1) {\n return el;\n }\n\n return null;\n};\n\n// Checks if element is in viewport\nexport const isInViewport = el => {\n if (el === null) {\n return false;\n }\n if (typeof el.offsetTop === 'undefined') {\n return isInViewport(el.parentNode);\n }\n\n // Get recteangle information of element\n const elementRect = el.getBoundingClientRect();\n\n // Get window height and width\n const windowHeight = global.window.innerHeight;\n const windowWidth = global.window.innerWidth;\n\n // Get scrolling x and y\n const scrollX = global.window.pageXOffset;\n const scrollY = global.window.pageYOffset;\n\n // eslint-disable-next-line max-len\n if (elementRect.top + elementRect.height < windowHeight + scrollY && elementRect.left + elementRect.width < windowWidth + scrollX && elementRect.top + elementRect.height > 0 && elementRect.left + elementRect.width > 0) {\n return true;\n // eslint-disable-next-line no-else-return\n } else {\n // eslint-disable-next-line no-lonely-if\n if (global.window.casperJsTest) {\n el.scrollIntoView({ behavior: 'auto', block: 'center' });\n return true;\n // eslint-disable-next-line no-else-return\n } else {\n return false;\n }\n }\n};\n\n// Get text contents of dom elements\nexport const getTextContents = elements => elements.map(el => el.textContent.trim());\n","import qs from 'qs';\nimport Axios from 'axios';\nimport Polyglot from 'node-polyglot';\nimport domtoimage from 'dom-to-image-more';\nimport isUndefined from 'lodash/isUndefined';\n\nimport {\n isInViewport,\n getTextContents,\n searchTextInDOM,\n addTranslationMarkup,\n clearTranslationMarkup\n} from './domHelper';\n\nclass Translation {\n constructor() {\n // Default value settings\n this.defaultLang = 'en-US';\n this.processedStrings = {};\n this.usedTranslations = [];\n this.untranslatedStrings = {};\n this.currentLocale = this.defaultLang;\n this.filterClasses = [\n 'ace_editor',\n 'ace-solarized-dark',\n 'ace_dark',\n 'input-group',\n 'isAvatar',\n 'jfHeader-userAvatar',\n 'themesListItem-img',\n 'themesListItem-imgAspect',\n 'prevUploads-list',\n 'card-leftSide',\n 'jfQuestion-fields-contentVisible',\n 'appBox-image'\n ];\n this.filterTags = [\n 'IFRAME',\n 'IMG'\n ];\n this.dictionaries = {\n [this.defaultLang]: new Polyglot({\n phrases: {},\n locale: this.defaultLang.split('-')[0],\n allowMissing: true\n })\n };\n\n this.interpolation = { templateSyntax: /\\{.\\}*\\w+\\}/g, eraseTemplate: /\\{|\\}/g };\n // Variables related to delayed submitNotTranslated function\n this.callTimer = null;\n\n // Number of elements to be processed and send to server at once\n this.processLimit = 1;\n\n // Debounce time for process function\n this.debounceTime = 1000;\n\n // Function binds\n this.setLocale = this.setLocale.bind(this);\n this.resetProcess = this.resetProcess.bind(this);\n this.limitElements = this.limitElements.bind(this);\n this.orderElements = this.orderElements.bind(this);\n this.takeScreenShot = this.takeScreenShot.bind(this);\n this.debounceProcess = this.debounceProcess.bind(this);\n this.handleMissingKey = this.handleMissingKey.bind(this);\n this.submitNotTranslated = this.submitNotTranslated.bind(this);\n this.processNotTranslated = this.processNotTranslated.bind(this);\n this.updateProcessedStrings = this.updateProcessedStrings.bind(this);\n this.rotateUntranslatedStrings = this.rotateUntranslatedStrings.bind(this);\n this.filterUntranslatedStrings = this.filterUntranslatedStrings.bind(this);\n this.translate = this.translate.bind(this);\n this.initServerSideDictionary = this.initServerSideDictionary.bind(this);\n }\n\n // Getter for getting untranslated string list of current language\n get currentLocaleUntranslated() {\n return Array.isArray(this.untranslatedStrings[this.currentLocale]) ? this.untranslatedStrings[this.currentLocale] : [];\n }\n\n // Get processed elements in this session\n get currentProcessed() {\n return Array.isArray(this.processedStrings[this.currentLocale]) ? this.processedStrings[this.currentLocale] : [];\n }\n\n // Get single array that contains all untranslated strings\n get allUntranslatedStrings() {\n return Object.keys(this.untranslatedStrings).reduce(\n (prev, curr) => prev.concat(this.untranslatedStrings[curr]),\n []\n );\n }\n\n initServerSideDictionary(langCode, dictionary) {\n this.add(langCode, dictionary);\n }\n\n // Sets current locale and fetch untranslated list if it still does not exist\n setLocale(code) {\n // Set locale of objectcurrentLocale\n this.currentLocale = code;\n }\n\n // Update untranslatedStrings array by removing sended strings\n filterUntranslatedStrings(langCode, strings) {\n this.untranslatedStrings = {\n\n ...this.untranslatedStrings,\n [langCode]: this.untranslatedStrings[langCode].filter(str => strings.indexOf(str) === -1)\n };\n }\n\n // Update unprocessedStrings by adding sended strings\n updateProcessedStrings(langCode, strings) {\n // Add processed words to processed list\n this.processedStrings = {\n\n ...this.processedStrings,\n [langCode]: this.processedStrings[langCode] ? this.processedStrings[langCode].concat(strings) : strings\n };\n }\n\n // Add sended str to the untranslatedStrIngs array of current locale\n addUntranslatedString(str) {\n this.untranslatedStrings = {\n\n ...this.untranslatedStrings,\n [this.currentLocale]: this.currentLocaleUntranslated.concat([str])\n };\n }\n\n // Move given strings to the end of their respective array\n rotateUntranslatedStrings(strings) {\n // For each key filter given strings and append found ones to the end\n this.untranslatedStrings = Object.keys(this.untranslatedStrings).reduce((prev, curr) => {\n // Get matched strings array of given locale\n const foundStrings = this.untranslatedStrings[curr].filter(str => strings.indexOf(str) > -1);\n\n // First filter given strings and then append them afterward\n return {\n\n ...prev,\n [curr]: this.untranslatedStrings[curr].filter(str => foundStrings.indexOf(str) < 0).concat(foundStrings)\n };\n }, {});\n }\n\n // Order given dom elements respect to their position as strings in untranslated array\n orderElements(elements) {\n // No need to order if only one is found\n if (elements.length <= 1) {\n return elements;\n }\n\n // Get strings of elements\n const textContents = getTextContents(elements);\n\n // Order elements by looking their string positions\n return this.allUntranslatedStrings.filter(str => textContents.indexOf(str) > -1).map(str => elements[textContents.indexOf(str)]);\n }\n\n // Initializes locale and the dictionary belongs to it\n add(code = '', dictionary = {}) {\n // Initialize locale\n this.setLocale(code);\n\n if (isUndefined(this.dictionaries[code])) {\n // Add sended dictionary to the current list\n this.dictionaries = {\n\n ...this.dictionaries,\n [code]: new Polyglot({\n phrases: dictionary,\n locale: code.split('-')[0],\n onMissingKey: this.handleMissingKey // This function will be triggered if the text does not exist in translation list\n })\n };\n }\n }\n\n // Translate string using Polyglot api\n translate(str, params) {\n let translated = str;\n if (typeof params === 'object' && Object.keys(params).length) {\n const variables = str.match(this.interpolation.templateSyntax);\n variables?.forEach(strVar => {\n // Remove template string characters and get variable name.\n const variableName = strVar.replace(this.interpolation.eraseTemplate, '');\n // If there is a value for given key, replace the key with given value\n if (params[variableName]) {\n translated = translated.replace(strVar, params[variableName]);\n }\n });\n }\n\n if (!this.usedTranslations.includes(str)) {\n this.usedTranslations.push(str);\n }\n\n return this.dictionaries[this.currentLocale].t(translated, params);\n }\n\n // Handler for texts that does not have translation\n handleMissingKey(str, options) {\n // Further process is limited to certain users\n if (!(global.window.useTranslationScreenshots === true)) {\n return Polyglot.transformPhrase(str, options);\n }\n\n // If it is already in processed list then skip processing it\n if (this.currentProcessed.indexOf(str) > -1) {\n return Polyglot.transformPhrase(str, options);\n }\n\n // Do not try to process if string is empty or only contains space\n if (/^\\s+$/.test(str)) {\n return '';\n }\n\n // Add founded word to untranslated texts if it does not exist\n if (this.currentLocaleUntranslated.indexOf(str) === -1) {\n this.addUntranslatedString(str);\n }\n\n // Call debounced process (works every n seconds where n is this.processLimit)\n this.debounceProcess();\n }\n\n // Delays the call of submitNotTranslated\n debounceProcess() {\n // If a timer is already started\n if (this.callTimer !== null) {\n // Do not process any further\n return;\n }\n\n // Restart timer\n this.callTimer = setTimeout(this.processNotTranslated, this.debounceTime);\n }\n\n // Limits sended dom elements according to the constants set in class\n limitElements(elements) {\n // Limit the elements based on the processLimit variable\n return elements.slice(0, this.processLimit);\n }\n\n // Filters false positive translations by looking their screenshot values\n filterFalseTranslations(strings, screenshots) {\n // Indexes of false screenshots\n const emptyIndexes = screenshots.reduce((prev, curr, index) => { return curr === false ? prev.concat([index]) : prev; }, []);\n\n // Filter strings that matched with false screenshot results\n const filteredStrings = {\n\n ...strings,\n [this.currentLocale]: strings[this.currentLocale].filter((str, index) => emptyIndexes.indexOf(index) < 0)\n };\n\n // Filter false screenshots\n const filteredScreenshots = screenshots.filter((ss, index) => emptyIndexes.indexOf(index) < 0);\n\n // Return filtered strings and screenshots\n return {\n filteredStrings,\n filteredScreenshots\n };\n }\n\n // Prepares object for next translation process\n resetProcess(strings = []) {\n // Clear timer as the submit promises are resolved\n clearTimeout(this.callTimer);\n this.callTimer = null;\n\n // If there is still an untranslated string in the list\n if (this.currentLocaleUntranslated.length !== 0) {\n if (strings.length !== 0) {\n // Rotate strings that tried to be translated before if they still exist\n this.rotateUntranslatedStrings(strings);\n }\n\n // Try to call process again\n this.debounceProcess();\n }\n }\n\n // Filter and screenshot process\n processNotTranslated() {\n // Get body for dom earch\n let node = '';\n if (global.window.casperjsTestDomParam) {\n node = global.document.querySelector(decodeURI(global.window.casperjsTestDomParam));\n /* eslint-disable no-console */\n console.log('global.window.casperjsTestDomParam', global.window.casperjsTestDomParam);\n /* eslint-enable no-console */\n } else {\n node = global.document.body;\n }\n\n // Search all texts accross dom elements to find their containers\n const foundElements = searchTextInDOM(node, this.allUntranslatedStrings);\n\n /* eslint-disable no-console */\n console.log('this.allUntranslatedStrings', this.allUntranslatedStrings);\n console.log('foundElements', foundElements);\n /* eslint-enable no-console */\n\n // If could not found any element then reset the process\n if (!foundElements || foundElements.length === 0) {\n if (global.window.casperJsTest) {\n global.window.captureInProcess = false;\n /* eslint-disable no-console */\n console.log('capture process finished!');\n /* eslint-enable no-console */\n }\n // Clear timer\n return this.resetProcess();\n }\n\n // Order these elements to match with their respected string positions in untranslated strings array\n const orderedFoundElements = this.orderElements(foundElements);\n\n // Limit the number of elements to be processed\n const elementsToProcess = this.limitElements(orderedFoundElements);\n\n // Get strings of found elements\n const foundStrings = getTextContents(elementsToProcess);\n\n // Get only matched strings from unstranslated list\n const untranslatedToPost = Object.keys(this.untranslatedStrings).reduce((prev, curr) => ({\n\n ...prev,\n [curr]: this.untranslatedStrings[curr].filter(str => foundStrings.indexOf(str) > -1)\n }), {});\n\n // Create promise for each screenshot\n const ssPromises = Object.values(elementsToProcess).reduce((prev, curr) => { return typeof curr === 'object' ? prev.concat([this.takeScreenShot(node, curr)]) : prev; }, []);\n\n Promise.all(ssPromises) // After all screenshots taken\n .then(ssDataAll => this.filterFalseTranslations(untranslatedToPost, ssDataAll)) // Filter false positive translations\n // After resolving all of the promises just pass them to the not transalted submission\n .then(({ filteredStrings, filteredScreenshots }) => this.submitNotTranslated(filteredStrings, filteredScreenshots))\n // Reset required variables and do post process jobs to prepare object for next translation after submissions\n .then(submitPromises => Promise.all(submitPromises).then(() => this.resetProcess(foundStrings)));\n }\n\n // Submit not translated strings\n submitNotTranslated(untranslatedToPost, ssDataAll) {\n // Send translation request for each key separately\n return Object.keys(untranslatedToPost).map(langCode => {\n // Get strings to send\n const strings = untranslatedToPost[langCode];\n\n let depthCount = 0;\n let depthLabel = '';\n if (global.window.casperJsTest) {\n if (global.window.depthCount) {\n depthCount = global.window.depthCount;\n }\n if (global.window.depthLabel) {\n depthLabel = global.window.depthLabel;\n }\n }\n\n // No need to send data if one of them is empty or their lengths are not equal to each other\n if (strings.length === 0 || ssDataAll.length === 0 || strings.length !== ssDataAll.length) {\n if (global.window.casperJsTest) {\n global.window.captureInProcess = false;\n /* eslint-disable no-console */\n console.log('capture process finished!');\n /* eslint-enable no-console */\n }\n return false;\n }\n\n Axios.post('/server.php', qs.stringify({\n action: 'submitNotTranslated',\n lang_code: langCode,\n raw: untranslatedToPost[langCode].join('__NOT_TRANSLATED__'),\n autoSuggestion: false,\n depthCount,\n depthLabel,\n screenshot: ssDataAll.join('|||')\n }), {\n 'Content-Type': 'application/x-www-form-urlencoded'\n })\n .then(() => {\n // Move processed strings to processed list\n this.updateProcessedStrings(langCode, untranslatedToPost[langCode]);\n\n // Filter them from untranslated list\n this.filterUntranslatedStrings(langCode, untranslatedToPost[langCode]);\n });\n\n return true;\n });\n }\n\n // Take screenshot of given node if foundElement is visible in that dom\n takeScreenShot(node, foundElement) {\n // Try to make every element visible on found elements\n const visibilityResult = addTranslationMarkup(foundElement);\n if (global.window.casperJsTest) {\n /* eslint-disable no-console */\n console.log('foundElement', foundElement.wholeText);\n /* eslint-enable no-console */\n }\n // Do not need to take ss if element is invisible or not in viewport\n if (!visibilityResult || !isInViewport(foundElement)) {\n /* eslint-disable no-console */\n console.log('the element is invisible or not in viewport');\n /* eslint-enable no-console */\n // Clear visibility\n clearTranslationMarkup();\n\n // Return false due to it does not exist on screen\n return false;\n }\n\n // If the page is loaded by casperjs\n if (global.window.casperJsTest) {\n // Send capture command to casperjs as error\n /* eslint-disable no-console */\n console.log('capture');\n /* eslint-enable no-console */\n\n // Resolve with base64 encoded ss data\n return new Promise(resolve => {\n setTimeout(() => {\n // Take ss data\n const capturedData = global.window.tempCaptureData;\n\n // Clear temporary data\n global.window.tempCaptureData = null;\n\n // Clear visibility classes\n clearTranslationMarkup();\n\n // Return screenshot\n resolve(capturedData);\n }, 2000);\n });\n }\n\n // Take screenshot and return base64 encoded form using visibility css\n return new Promise(resolve => domtoimage.toPng(\n node,\n {\n filter: el => {\n // Return if element is not valid to check\n if (!el || !el.className || !el.tagName || typeof el.className !== 'string') {\n return true;\n }\n\n // If element is one of the tags to be filtered from screenshot\n if (this.filterTags.indexOf(el.tagName) > -1) {\n return false;\n }\n\n const filteredNodeClass = el.className.split(' ').filter(classStr => this.filterClasses.indexOf(classStr) !== -1);\n\n return filteredNodeClass.length === 0;\n }\n }\n )\n .then(dataUrl => {\n // Clear visibility classes\n clearTranslationMarkup();\n\n // Return screenshot\n resolve(dataUrl);\n }));\n }\n}\n\nexport const translation = global.Translations || new Translation();\n\nexport default Translation;\n","export const langCodes = {\n tr: 'tr-TR',\n en: 'en-US',\n es: 'es-ES',\n pt: 'pt-PT',\n fr: 'fr-FR',\n de: 'de-DE',\n it: 'it-IT',\n bg: 'bg-BG',\n sr: 'sr-BA',\n hu: 'hu-HU',\n fi: 'fi-FI',\n ka: 'ka-GE',\n nl: 'nl-NL',\n uk: 'uk-UA',\n ua: 'uk-UA',\n id: 'id-ID',\n ko: 'ko-KR',\n ar: 'ar-AR',\n ja: 'ja-JP',\n pl: 'pl-PL',\n ca: 'ca-ES',\n sv: 'sv-SE',\n no: 'no-NO',\n da: 'da-DA',\n ro: 'ro-RO',\n ru: 'ru-RU',\n zh: 'zh-CN',\n 'zh-CN': 'zh-CN',\n 'zh-HK': 'zh-HK',\n af: 'af-ZA',\n he: 'he-IL'\n};\n\nexport const partialTranslations = {\n 'animal-shelter': path => /(jotform.com|jform.co.kr|jotform.pro)(\\/){1}(animal-shelter){1}/g.test(path)\n};\n\n/**\n * Returns Jotform translation files suffix (locale/locale_SUFFIX.js)\n * @param {string} localeCode - lang-[country] (en-US, pt-BR, en)\n * @return {string} A value from langCodes object.\n */\nexport const getLangFileSuffix = localeCode => {\n const lang = localeCode.split('-')[0];\n return langCodes[localeCode] || langCodes[lang];\n};\n\nexport const DEFAULT_LANGUAGE = 'en-US';\n","import { langCodes } from './constants';\n\nexport const getApp = () => global.window.__jfrouter?.ACTIVE_ALIAS || global.window.location.pathname?.replace(/\\//g, '');\nexport const isProduction = () => global.window?.__jfrouter?.JOTFORM_ENV === 'PRODUCTION' || global.window?.JOTFORM_ENV === 'PRODUCTION';\n\nconst encodedAndProcessedStrings = [];\n\nconst processTranslation = async string => {\n const transformPhrase = string?.replace(/JotForm|Jform/gm, 'Jotform')?.trim();\n const buffer = new TextEncoder('utf-8').encode(transformPhrase);\n const digest = await global.crypto.subtle.digest('SHA-1', buffer);\n return {\n raw: transformPhrase,\n encoded: Array.from(new Uint8Array(digest)).map(x => x.toString(16).padStart(2, '0')).join('')\n };\n};\n\nexport const encodeUsedTranslations = translations => {\n translations.forEach(translation => {\n processTranslation(translation)\n .then(({ encoded, raw }) => {\n if (!global.Translations.encodedAndProcessedStrings.some(q => Object.keys(q).includes(encoded))) {\n global.Translations.encodedAndProcessedStrings.push({\n [encoded]: raw\n });\n }\n })\n .catch(error => console.error(error));\n });\n\n return encodedAndProcessedStrings;\n};\n\nexport const collectionTimer = () => {\n const year = new Date().getFullYear();\n const month = new Date().getMonth();\n const day = new Date().getDate();\n const hours = new Date().getHours();\n const minutes = new Date().getMinutes();\n const now = Date.UTC(year, month, day, hours, minutes, 0);\n const startDate = Date.UTC(year, month, day, hours, 0, 0);\n const endDate = Date.UTC(year, month, day, hours, 15, 0);\n\n // Between HH:00 and HH:15\n return startDate < now && endDate > now;\n};\n\nexport const unlocalizeOriginHref = url => {\n const shortLangCodes = Object.keys(langCodes)?.join('|');\n const exp = RegExp(`(\\\\/)(${shortLangCodes})(\\\\/)`, 'g');\n\n return url?.replace(exp, '/');\n};\n","import { translation } from './Translation';\nimport { initializeTranslationFromGlobal } from './global';\nimport { prepareT, prepareTranslationRenderer, prepareTDate } from './hof';\nimport { langCodes, getLangFileSuffix } from './constants';\nimport { TranslateProvider } from './components/TranslateProvider';\nimport { setDatepickerLocale } from './setDatepickerLocale';\n\nconst t = prepareT(translation);\nconst tdate = prepareTDate(translation);\nconst translationRenderer = prepareTranslationRenderer(t);\n\ninitializeTranslationFromGlobal(translation, t);\n\nexport {\n t,\n tdate,\n translation,\n translationRenderer,\n langCodes,\n getLangFileSuffix,\n TranslateProvider,\n setDatepickerLocale\n};\n\nexport default translation;\n","import {\n prepareAddDictionary,\n prepareControlModeChange,\n prepareAddTranslationToDictionary,\n sendUsedTranslationsInterval\n} from './hof';\n\nimport { isProduction, collectionTimer } from './utils';\n\n/* eslint-disable no-param-reassign, no-extend-native */\nexport function initializeTranslationFromGlobal(translation, t) {\n const addDictionary = prepareAddDictionary(translation);\n const controlModeChange = prepareControlModeChange(translation);\n const addTranslationToDictionary = prepareAddTranslationToDictionary(translation);\n\n // Overriding all strings and adding locale method\n String.prototype.locale = function locale() {\n return t(this);\n };\n\n if (!global.Translations) {\n global.__t = t;\n global.Translations = translation;\n global.Translations.t = t;\n global.Translations.addDictionary = addDictionary;\n global.Translations.addTranslationToDictionary = addTranslationToDictionary;\n global.Translations.controlModeChange = controlModeChange;\n global.Translations.processUsedTranslationsInterval = null;\n global.Translations.encodedAndProcessedStrings = [];\n global.Translations.startCollectUsedTranslationsInterval = sendUsedTranslationsInterval;\n global.Translations.forceStopCollecting = false;\n }\n\n if (global.window && global.window.useLocaleDictionary && global.window?.Locale?.language) {\n addTranslationToDictionary(global.window.currentLocale, global.window.Locale.language);\n }\n\n if (isProduction() && collectionTimer() && global.Translations.currentLocale !== 'en-US') {\n sendUsedTranslationsInterval();\n }\n}\n","/* eslint-disable react/button-has-type */\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport { wrapWithComp } from '../../utils/index';\n\n// not so pro but it does the trick\nconst getSomeString = el => {\n const defaultString = 'Button';\n let resultString = '';\n if (typeof el === 'string') {\n resultString = el;\n } else if (Array.isArray(el)) {\n const strArr = [];\n el.map(i => typeof i === 'string' && strArr.push(i));\n resultString = strArr.length === 0\n ? defaultString : strArr.join(' ');\n } else {\n resultString = defaultString;\n }\n\n return resultString;\n};\n\nconst Button = React.forwardRef(({\n children,\n disabled,\n ariaLabel,\n buttonAriaLabelPrefix,\n ...others\n}, ref) => {\n const defaultAriaLabel = (ariaLabel === 'Button' && others && others['aria-label']) ? others['aria-label'] : ariaLabel;\n const producedAriaLabel = defaultAriaLabel === 'Button' ? getSomeString(children) : defaultAriaLabel;\n const ariaLabelWithPrefix = buttonAriaLabelPrefix ? `${buttonAriaLabelPrefix} ${producedAriaLabel}` : producedAriaLabel;\n return (\n \n {React.Children.map(children, child => wrapWithComp(child, 'btn-label'))}\n \n );\n});\n\nButton.propTypes = {\n disabled: PropTypes.bool,\n ariaLabel: PropTypes.string,\n children: PropTypes.node.isRequired,\n buttonAriaLabelPrefix: PropTypes.string\n};\n\nButton.defaultProps = {\n disabled: false,\n ariaLabel: 'Button',\n buttonAriaLabelPrefix: ''\n};\n\nexport default Button;\n","import React, {\n forwardRef, useImperativeHandle, useRef, useState, useEffect\n} from 'react';\nimport {\n bool, node, elementType, string, shape, func, arrayOf, oneOfType, any\n} from 'prop-types';\nimport KeyboardJS from 'keyboardjs';\nimport { nodeContains } from '@jotforminc/utils';\n\nimport Portal from '../Portal';\n\nimport { useContinueFocus, useEffectIgnoreFirst } from '../../utils/hooks';\nimport { generateShortID } from '../../utils';\n\nconst Modal = forwardRef(({\n children,\n defaultVisible,\n usePortal,\n portalContainerSelector,\n initialPortalSelector,\n closeOnOutsideClick,\n DialogRenderer,\n HeaderRenderer,\n ContentRenderer,\n FooterRenderer,\n reffedDivProps,\n onModalClose,\n closeOnEscPress,\n exceptionalSelectorList,\n autoFocus,\n currentActiveElementRef,\n t,\n ariaLabel\n}, ref) => {\n // Refs\n const portalRef = useRef();\n\n let selector = \"[data-uikit-modal-container='true'],[data-uikitgeneratedportalcontainer='true']\";\n\n if (closeOnOutsideClick && exceptionalSelectorList.length > 0) {\n const additionalSelector = exceptionalSelectorList.join(',');\n selector = `${selector},${additionalSelector}`;\n }\n // States\n const [isVisible, setVisibility] = useState(defaultVisible);\n const hideMenu = event => {\n const containerList = global.document.querySelectorAll(selector);\n const isContained = [...containerList].find(container => nodeContains(container, event.target));\n if (!isContained) {\n setVisibility(false);\n }\n };\n const contentRef = autoFocus ? useContinueFocus(isVisible, currentActiveElementRef) : useRef();\n const hide = () => setVisibility(false);\n const show = () => setVisibility(true);\n const toggleVisibility = () => setVisibility(!isVisible);\n useImperativeHandle(ref, () => ({\n ...portalRef.current,\n hide,\n show,\n toggleVisibility,\n isVisible,\n contentRef\n }));\n\n useEffect(() => {\n if (closeOnOutsideClick) {\n global.window.addEventListener('mouseup', hideMenu);\n return () => global.window.removeEventListener('mouseup', hideMenu);\n }\n }, [selector]);\n\n useEffect(() => {\n if (closeOnEscPress) {\n if (isVisible) {\n KeyboardJS.bind('esc', hide);\n } else {\n KeyboardJS.unbind('esc', hide);\n }\n }\n return () => KeyboardJS.unbind('esc', hide);\n }, [closeOnEscPress, isVisible]);\n\n useEffectIgnoreFirst(() => {\n if (!isVisible) {\n onModalClose();\n }\n }, [isVisible]);\n\n const headerTitleId = useRef(generateShortID()).current;\n const headerSubTitleId = useRef(generateShortID()).current;\n\n return (\n \n {isVisible && (\n \n \n \n \n {children}\n \n \n
\n \n )}\n \n );\n});\n\nModal.propTypes = {\n usePortal: bool,\n defaultVisible: bool,\n children: node.isRequired,\n closeOnOutsideClick: bool,\n DialogRenderer: elementType,\n HeaderRenderer: elementType,\n ContentRenderer: elementType,\n FooterRenderer: elementType,\n portalContainerSelector: string,\n reffedDivProps: shape({}),\n onModalClose: func,\n closeOnEscPress: bool,\n exceptionalSelectorList: arrayOf(string),\n autoFocus: bool,\n currentActiveElementRef: oneOfType([\n func,\n shape({ current: any })\n ]),\n initialPortalSelector: string,\n ariaLabel: string\n};\n\n/* eslint react/prop-types: \"off\" */\nModal.defaultProps = {\n usePortal: false,\n defaultVisible: false,\n closeOnOutsideClick: true,\n portalContainerSelector: 'body',\n DialogRenderer: ({ children }) => (\n
\n {children}\n
\n ),\n ContentRenderer: ({ children }) => (\n \n {children}\n
\n ),\n HeaderRenderer: ({ children }) =>
{children}
,\n FooterRenderer: ({ children }) =>
{children}
,\n reffedDivProps: {},\n onModalClose: () => {},\n closeOnEscPress: true,\n exceptionalSelectorList: [],\n autoFocus: true,\n currentActiveElementRef: null,\n initialPortalSelector: '',\n ariaLabel: ''\n};\n\nexport default Modal;\n","import React from 'react';\nimport {\n shape, func, elementType, bool, oneOfType, string, number\n} from 'prop-types';\n\nimport { isPressedKeyEnter } from '../../utils';\n\nconst Option = ({\n option, setSelected, ContainerRenderer, Renderer, isSelected, disabled, OptionContainerRendererProps\n}) => {\n const handleSelection = opt => {\n if (disabled) return;\n setSelected(opt);\n };\n\n const onOptionClick = opt => () => handleSelection(opt);\n const onOptionKeyPress = opt => event => isPressedKeyEnter(event) && handleSelection(opt);\n const ContainerRendererProps = typeof OptionContainerRendererProps === 'function' ? OptionContainerRendererProps(option) : OptionContainerRendererProps;\n return (\n \n \n \n );\n};\n\nOption.prototype = {\n disabled: bool,\n isSelected: bool,\n setSelected: func,\n Renderer: elementType,\n ContainerRenderer: elementType,\n OptionContainerRendererProps: oneOfType([\n func,\n shape({})\n ]),\n option: shape({ text: string, value: oneOfType([string, number]) })\n};\n\n/* eslint react/prop-types: \"off\" */\nOption.defaultProps = {\n option: {},\n disabled: false,\n isSelected: false,\n setSelected: f => f,\n ContainerRenderer: props =>
  • ,\n OptionContainerRendererProps: {},\n Renderer: ({ option: { text, value }, isSelected }) =>
    {text}
    \n};\n\nexport default Option;\n","import React, { forwardRef } from 'react';\nimport {\n arrayOf, oneOfType, string, number, shape, elementType, bool, func\n} from 'prop-types';\n\nimport Option from '../Option';\n\nconst OptionGroup = forwardRef(({\n options, setSelected, checkOptionSelectionState, ContainerRenderer, OptionContainerRenderer, OptionRenderer, disabled, GroupRenderer, text, OptionContainerRendererProps, groupIcon,\n NoResultsRenderer, onClearFilter, inputValue, containerID\n}, ref) => {\n if (inputValue && !options.length && NoResultsRenderer) {\n return ;\n }\n return (\n \n {options.map(option => {\n if (option.type === 'group') {\n return (\n \n );\n }\n\n return (\n \n );\n })}\n \n );\n});\n\nOptionGroup.prototype = {\n containerID: string.isRequired,\n disabled: bool,\n setSelected: func,\n onClearFilter: func,\n GroupRenderer: elementType,\n OptionRenderer: elementType,\n ContainerRenderer: elementType,\n OptionContainerRenderer: elementType,\n OptionContainerRendererProps: oneOfType([\n func,\n shape({})\n ]),\n NoResultsRenderer: elementType,\n inputValue: string,\n checkOptionSelectionState: func,\n options: arrayOf(shape({ text: string, value: oneOfType([string, number]) })),\n selectedOptions: arrayOf(shape({ text: string, value: oneOfType([string, number]) }))\n};\n\n/* eslint react/prop-types: \"off\" */\nOptionGroup.defaultProps = {\n options: [],\n selectedOptions: [],\n disabled: false,\n setSelected: f => f,\n checkOptionSelectionState: f => f,\n onClearFilter: f => f,\n GroupRenderer: ({ text, children, ...props }) => (\n
    \n {text}\n
    {children}
    \n
    \n ),\n ContainerRenderer: forwardRef(({ children }, ref) =>
      {children}
    ),\n OptionContainerRenderer: props =>
  • ,\n OptionContainerRendererProps: {},\n OptionRenderer: ({ option: { text, value }, isSelected }) =>
    {text}
    ,\n NoResultsRenderer: null,\n inputValue: ''\n};\n\nexport default OptionGroup;\n","import React, {\n forwardRef, useRef, useEffect, useState, useMemo\n} from 'react';\nimport {\n node, shape, bool, string, func\n} from 'prop-types';\nimport { createPopper } from '@popperjs/core';\n\nimport Portal from '../Portal';\n\nimport { useCombinedRefs } from '../../utils/hooks';\n\nconst Popover = forwardRef(({\n style,\n children,\n usePortal,\n popoverOptions,\n targetRef: { current },\n portalContainerSelector,\n onPlacementChange,\n useMemoizedPopper,\n dontUpdate = false,\n ...props\n}, ref) => {\n if (!current) {\n return null;\n }\n\n // States\n const [popperInstance, setPopperInstance] = useState(false);\n\n // detect placement changings\n useEffect(() => {\n onPlacementChange(popperInstance?.state?.placement);\n }, [popperInstance?.state, popperInstance?.state?.placement]);\n\n // Refs\n const innerRef = useRef();\n const rootRef = useCombinedRefs(ref, innerRef);\n\n const memoizedPopperInstance = useMemo(() => (\n useMemoizedPopper && current && rootRef.current ? createPopper(current, rootRef.current, popoverOptions) : null\n ), [rootRef.current, current, useMemoizedPopper]);\n\n useEffect(() => {\n if (rootRef.current && current) {\n setPopperInstance((useMemoizedPopper && memoizedPopperInstance) ? memoizedPopperInstance : createPopper(current, rootRef.current, popoverOptions));\n }\n\n function handleOrientation() {\n popperInstance.update();\n }\n\n if (window.screen.orientation) {\n window.screen.orientation.addEventListener('change', handleOrientation);\n }\n\n if (popperInstance && !dontUpdate) {\n popperInstance.update();\n }\n\n return () => {\n if (window.screen.orientation) {\n window.screen.orientation.removeEventListener('change', handleOrientation);\n }\n if (popperInstance) popperInstance.destroy();\n };\n }, [rootRef.current, current]);\n\n useEffect(() => {\n if (popperInstance) {\n popperInstance.setOptions(popoverOptions);\n }\n }, [popoverOptions]);\n\n return (\n \n
    \n {popperInstance && children}\n
    \n
    \n );\n});\n\nPopover.propTypes = {\n usePortal: bool,\n children: node,\n targetRef: shape({}),\n popoverOptions: shape({}),\n style: shape({}),\n portalContainerSelector: string,\n onPlacementChange: func,\n useMemoizedPopper: bool,\n dontUpdate: bool\n};\n\nPopover.defaultProps = {\n usePortal: false,\n targetRef: { current: null },\n popoverOptions: {},\n style: {},\n children: null,\n portalContainerSelector: undefined,\n onPlacementChange: f => f,\n useMemoizedPopper: false,\n dontUpdate: false\n};\n\nexport default Popover;\n","import { createPortal } from 'react-dom';\nimport { bool, string, node } from 'prop-types';\nimport { forwardRef, useImperativeHandle } from 'react';\n\nimport { usePortalRef } from '../../utils/hooks';\n\nconst Portal = forwardRef(({\n children,\n usePortal,\n portalAttribute,\n containerSelector,\n initialPortalSelector\n}, ref) => {\n const portalRef = usePortalRef(containerSelector, usePortal, portalAttribute, initialPortalSelector);\n\n useImperativeHandle(ref, () => ({\n portalID: portalRef.current ? portalRef.current.id : ''\n }));\n\n if (usePortal && portalRef.current) {\n return createPortal(\n children,\n portalRef.current\n );\n }\n\n return children;\n});\n\nPortal.propTypes = {\n children: node.isRequired,\n usePortal: bool,\n containerSelector: string,\n portalAttribute: string,\n initialPortalSelector: string\n};\n\nPortal.defaultProps = {\n usePortal: true,\n containerSelector: 'body',\n portalAttribute: undefined,\n initialPortalSelector: ''\n};\n\nexport default Portal;\n","import React, {\n useRef, useImperativeHandle, forwardRef, useEffect\n} from 'react';\nimport {\n arrayOf, oneOfType, string, number, shape, elementType, bool, node, func\n} from 'prop-types';\n\nimport OptionGroup from '../OptionGroup';\n\nimport { useSelectionState, useEffectIgnoreFirst, useCombinedRefs } from '../../utils/hooks';\n\nconst SelectionGroup = forwardRef(({\n options,\n disabled,\n defaultValue,\n isMultiSelect,\n GroupRenderer,\n OptionRenderer,\n ContainerRenderer,\n OptionContainerRenderer,\n OptionContainerRendererProps,\n onSelectionChange,\n autoFocusToFirstChild\n}, ref) => {\n const [selectedOptionList, toggleSelectedOption, setSelectedOptionList] = useSelectionState(defaultValue, isMultiSelect);\n\n const optionGroupRef = useRef();\n const rootRef = useCombinedRefs(ref, optionGroupRef);\n useImperativeHandle(rootRef, () => ({\n current: rootRef.current,\n setSelectedOptionList\n }));\n\n const changeSelectedOptions = value => !disabled && toggleSelectedOption(value);\n const checkOptionSelectionState = option => selectedOptionList.indexOf(option.value) > -1;\n const onOptionSelection = option => !disabled && !option.disabled && changeSelectedOptions(option.value);\n\n useEffectIgnoreFirst(() => {\n onSelectionChange(isMultiSelect ? selectedOptionList : selectedOptionList[0]);\n }, [selectedOptionList]);\n\n useEffect(() => {\n if (autoFocusToFirstChild) rootRef?.current?.current?.firstChild?.focus();\n }, [autoFocusToFirstChild]);\n\n return (\n \n );\n});\n\nSelectionGroup.propTypes = {\n disabled: bool,\n options: arrayOf(shape({\n text: oneOfType([string, node]),\n value: oneOfType([string, number])\n })),\n defaultValue: oneOfType([string, number, arrayOf(oneOfType([string, number]))]),\n isMultiSelect: bool,\n GroupRenderer: elementType,\n OptionRenderer: elementType,\n OptionContainerRenderer: elementType,\n OptionContainerRendererProps: oneOfType([\n func,\n shape({})\n ]),\n ContainerRenderer: elementType,\n onSelectionChange: func,\n autoFocusToFirstChild: bool\n};\n\n/* eslint react/prop-types: \"off\" */\nSelectionGroup.defaultProps = {\n disabled: false,\n options: [],\n defaultValue: undefined,\n isMultiSelect: false,\n GroupRenderer: ({ text, children, ...props }) => (\n
    \n {text}\n
    {children}
    \n
    \n ),\n ContainerRenderer: forwardRef(({ children }, ref) =>
      {children}
    ),\n OptionRenderer: ({ option: { text, value }, isSelected }) =>
    {`${text}${isSelected ? '- SELECTED' : ''}`}
    ,\n OptionContainerRenderer: props =>
  • ,\n OptionContainerRendererProps: {},\n onSelectionChange: f => f,\n autoFocusToFirstChild: false\n};\n\nexport default SelectionGroup;\n","export const KEY_KEYCODE_LIST = {\n Enter: 13,\n Backspace: 8,\n Comma: 188,\n Tab: 9,\n Space: 32,\n Escape: 27\n};\n\nexport const SERVER_ERROR = 'Server error';\nexport const FILE_TYPE_ERROR = 'Unsupported file type';\n","import {\n useEffect, useState, useRef, useMemo, useLayoutEffect\n} from 'react';\nimport Fuse from 'fuse.js';\nimport { nodeContains } from '@jotforminc/utils';\n\nimport { generateShortID } from '.';\n\nexport const useClickOutsideState = (initialState, refs = [], eventTypes = ['mouseup']) => {\n const [isVisible, setVisibility] = useState(initialState);\n\n useEffect(() => {\n const hideMenu = ({ target }) => !refs.find(ref => nodeContains(ref.current, target)) && setVisibility(false);\n\n eventTypes.forEach(eventType => {\n global.addEventListener(eventType, hideMenu);\n });\n\n return () => eventTypes.forEach(eventType => global.removeEventListener(eventType, hideMenu));\n }, [refs]);\n\n return [isVisible, setVisibility];\n};\n\nexport const useClickOutsideStateWithCallback = ({ refs = [], callback = null, eventType = 'mouseup' }) => {\n const _callback = typeof callback === 'function' ? callback : f => f;\n useEffect(() => {\n const hideMenu = ({ target }) => !refs.find(ref => nodeContains(ref.current, target)) && _callback(target);\n\n global.addEventListener(eventType, hideMenu);\n return () => global.removeEventListener(eventType, hideMenu);\n }, [refs]);\n};\n\nexport const useClickOutsideStateMouseDown = (initialState, refs = []) => {\n const [isVisible, setVisibility] = useState(initialState);\n\n useEffect(() => {\n const hideMenu = ({ target }) => !refs.find(ref => nodeContains(ref.current, target)) && setVisibility(false);\n\n global.addEventListener('mousedown', hideMenu);\n return () => global.removeEventListener('mousedown', hideMenu);\n }, [refs]);\n\n return [isVisible, setVisibility];\n};\n\nexport const useClickOutsideStateWithSelector = (initialState, selector) => {\n const [isVisible, setVisibility] = useState(initialState);\n const hideMenu = event => {\n const containerList = global.document.querySelectorAll(selector);\n const isContained = [...containerList].find(container => nodeContains(container, event.target));\n if (!isContained) {\n setVisibility(false);\n }\n };\n\n useEffect(() => {\n global.addEventListener('mouseup', hideMenu);\n return () => global.removeEventListener('mouseup', hideMenu);\n }, [selector]);\n\n return [isVisible, setVisibility];\n};\n\nexport const useSelectionState = (initialState, isMultiSelect = false) => {\n // Instance methods\n const sanitizeInitialState = !Array.isArray(initialState) ? [initialState] : initialState;\n\n // States\n const [selectedOptions, setSelectedOptions] = useState(sanitizeInitialState);\n\n // State methods\n const toggleOptionSelection = selectedValue => {\n const isOptionExist = selectedOptions.indexOf(selectedValue) > -1;\n const newSelectionArray = isOptionExist ? selectedOptions.filter(value => selectedValue !== value) : [...selectedOptions, selectedValue];\n setSelectedOptions(newSelectionArray);\n };\n\n const singleToggleOptionSelection = selectedValue => {\n const isOptionExist = selectedOptions.indexOf(selectedValue) > -1;\n if (isOptionExist) {\n return;\n }\n\n setSelectedOptions([selectedValue]);\n };\n\n if (isMultiSelect) {\n return [selectedOptions, toggleOptionSelection, setSelectedOptions];\n }\n\n return [selectedOptions, singleToggleOptionSelection, setSelectedOptions];\n};\n\nexport const useEffectIgnoreFirst = (effectHandler, effectDependedValues) => {\n const isFirstRun = useRef(true);\n\n useEffect(() => {\n if (isFirstRun.current) {\n isFirstRun.current = false;\n return;\n }\n\n return effectHandler();\n }, effectDependedValues);\n};\n\nexport const useCombinedRefs = (...refs) => {\n const targetRef = useRef();\n\n useEffect(() => {\n refs.forEach(ref => {\n if (!ref) {\n return;\n }\n\n if (typeof ref === 'function') {\n ref(targetRef.current);\n } else {\n // eslint-disable-next-line no-param-reassign\n ref.current = targetRef.current;\n }\n });\n }, [refs]);\n\n return targetRef;\n};\n\nexport const usePortalRef = (\n containerSelector = 'body',\n usePortal = false,\n portalAttribute = 'data-uikitGeneratedPortalContainer',\n initialPortalSelector = ''\n) => {\n // if the parent component won't rerender, it won't be able to detect the ref.current change so initial selector may be needed for components like those\n const portalRef = useRef(initialPortalSelector ? document.querySelector(initialPortalSelector) : false);\n\n useEffect(() => {\n if (containerSelector && usePortal) {\n const portalContainer = global.document.querySelector(containerSelector);\n if (portalContainer) {\n const currentPortalDiv = portalAttribute ? portalContainer.querySelector(`[${portalAttribute}=true]`) : false;\n if (currentPortalDiv) {\n portalRef.current = currentPortalDiv;\n } else {\n const id = generateShortID();\n const div = global.document.createElement('div');\n div.setAttribute(portalAttribute, 'true');\n div.setAttribute('id', id);\n portalContainer.appendChild(div);\n portalRef.current = div;\n }\n }\n }\n }, [containerSelector, usePortal]);\n\n return portalRef;\n};\n\nexport const useDragState = (initialState, {\n onDrop: onDropCallBack,\n onDragOver: onDragOverCallBack,\n onDragEnter: onDragEnterCallBack,\n onDragLeave: onDragLeaveCallBack\n} = {}) => {\n const [isDragging, setDragState] = useState(initialState);\n\n const generateDragEventHandler = (state, callback) => event => {\n setDragState(state);\n event.stopPropagation();\n event.preventDefault();\n\n if (typeof callback === 'function') {\n callback(event);\n }\n\n return false;\n };\n\n const onDragEnter = generateDragEventHandler(true, onDragEnterCallBack);\n const onDragOver = generateDragEventHandler(true, onDragOverCallBack);\n const onDragLeave = generateDragEventHandler(false, onDragLeaveCallBack);\n const onDrop = generateDragEventHandler(false, onDropCallBack);\n\n return [isDragging, {\n onDragEnter, onDragOver, onDragLeave, onDrop\n }];\n};\n\nconst cachedScripts = [];\nexport const useScript = src => {\n const [scriptState, setLoadState] = useState({ loaded: false, error: false });\n\n useEffect(() => {\n if (cachedScripts.indexOf(src) > -1) {\n setLoadState({ loaded: true, error: false });\n return f => f;\n }\n\n cachedScripts.push(src);\n\n const scriptTag = document.createElement('script');\n scriptTag.src = src;\n scriptTag.async = true;\n\n const onScriptLoad = () => setLoadState({ loaded: true, error: false });\n const onScriptError = () => {\n setLoadState({ loaded: true, error: true });\n scriptTag.remove();\n };\n\n scriptTag.addEventListener('load', onScriptLoad);\n scriptTag.addEventListener('error', onScriptError);\n document.body.appendChild(scriptTag);\n\n return () => {\n scriptTag.removeEventListener('load', onScriptLoad);\n scriptTag.removeEventListener('error', onScriptError);\n };\n }, [src]);\n\n return scriptState;\n};\n\nexport const useFuse = (list, searchTerm, keys = ['text'], fuseOptions = {\n shouldSort: true,\n threshold: 0.4,\n location: 0,\n distance: 100,\n maxPatternLength: 32,\n minMatchCharLength: 1\n}) => {\n const fuse = useMemo(() => new Fuse(list, { ...fuseOptions, keys }), [list, fuseOptions, keys]);\n const results = useMemo(() => (!searchTerm ? list : fuse.search(searchTerm)), [fuse, searchTerm]);\n return results;\n};\n\nexport const usePrev = value => {\n const ref = useRef();\n useEffect(() => {\n ref.current = value;\n });\n return ref.current;\n};\n\nexport const useInView = onInView => {\n const ref = useRef();\n\n useEffect(() => {\n let observer;\n\n global.requestAnimationFrame(() => {\n if (!ref.current) return;\n\n if (global.IntersectionObserver) {\n observer = new global.IntersectionObserver(([entry]) => {\n if (entry.intersectionRatio === 0) {\n return;\n }\n\n onInView(true);\n\n observer.unobserve(ref.current);\n }, { threshold: 1 });\n\n observer.observe(ref.current);\n } else {\n onInView(true);\n }\n });\n\n return () => {\n if (observer) {\n observer.disconnect();\n }\n };\n }, [ref.current]);\n\n return [ref];\n};\n\nexport const useContinueFocus = (isOpen, currentActiveElementRef) => {\n const panelRef = useRef();\n const activeElementRef = currentActiveElementRef ? currentActiveElementRef : useRef();\n const isFirstRun = useRef(true);\n\n useLayoutEffect(() => {\n if (isFirstRun.current && !isOpen) {\n isFirstRun.current = false;\n return;\n }\n panelRef.current?.setAttribute('tabindex', isOpen ? 0 : -1);\n if (isOpen) {\n if (!currentActiveElementRef) { // if current element ref is not given, focus last active element\n activeElementRef.current = document.activeElement;\n }\n panelRef.current?.focus();\n } else {\n activeElementRef.current?.focus();\n }\n return () => activeElementRef.current?.focus();\n }, [isOpen]);\n\n return panelRef;\n};\n","import React from 'react';\nimport { nanoid } from 'nanoid';\n\nimport { KEY_KEYCODE_LIST } from './constants';\n\nexport const wrapWithComp = (child, type, Comp = 'span') => {\n if (typeof child === 'string') {\n return {child};\n }\n return child;\n};\n\n// Expects event as parameter\nexport const prepareKeyList = keyList => Object.keys(KEY_KEYCODE_LIST).filter(key => keyList.indexOf(key) > -1).map(key => ({ key, keyCode: KEY_KEYCODE_LIST[key] }));\nexport const isPressedKeyFN = keyList => {\n const preparedKeyList = prepareKeyList(keyList);\n return ({ key, keyCode }) => preparedKeyList.filter(({ key: expectedKey, keyCode: expectedKeyCode }) => (expectedKey === key || expectedKeyCode === keyCode)).length > 0;\n};\nexport const isPressedKeyEnter = isPressedKeyFN(['Enter']);\nexport const isPressedKeyBackspace = isPressedKeyFN(['Backspace']);\nexport const isPressedKeyTab = isPressedKeyFN(['Tab']);\nexport const isPressedKeyPillboxAddKey = isPressedKeyFN(['Enter', 'Comma', 'Space', 'Tab']);\nexport const isPressedKeyEnterOrSpace = isPressedKeyFN(['Enter', 'Space']);\nexport const isPressedKeyEscape = isPressedKeyFN(['Escape']);\nexport const isPressedKeyOneOf = keyList => isPressedKeyFN(keyList);\n\nexport const flattenOptions = options => options.reduce((flattenedOptions, option) => flattenedOptions.concat(option.type === 'group' ? flattenOptions(option.options) : [option]), []);\nexport const findOptionByValue = (value, options, allowEmpty = false) => {\n if (options.length === 0) {\n return;\n }\n\n const flattenedOptions = flattenOptions(options);\n const optionsHaveSomeDisabledOptions = flattenedOptions.some(option => option.disabled);\n const dropdownMayBeEmpty = allowEmpty || optionsHaveSomeDisabledOptions; // if options contain any disabled option treat like allowEmpty is true\n const sanitizedOptions = dropdownMayBeEmpty ? flattenedOptions.filter(option => !option.disabled) : flattenedOptions;\n\n if (!value) {\n return dropdownMayBeEmpty ? undefined : sanitizedOptions[0];\n }\n return sanitizedOptions.find(({ value: optionValue }) => optionValue === value);\n};\n\nexport const createFileMetadata = ({ name, type, size }, url) => {\n return {\n name, type, size, url\n };\n};\n\nexport const generateShortID = () => nanoid().split(/^\\d/).join('_');\n","export const setCookie = (cname, cvalue, exdays) => {\n const d = new Date();\n d.setTime(d.getTime() + (exdays * 24 * 60 * 60 * 1000));\n const expires = `expires=${d.toUTCString()}`;\n document.cookie = `${cname}=${cvalue}; ${expires}; domain=.${global.location.host.split('.').splice(1).join('.')}; path=/; Secure; SameSite=None`;\n};\n\nexport const readCookie = key => {\n const values = document.cookie.match(`(^|;)\\\\s*${key}\\\\s*=\\\\s*([^;]+)`);\n return values ? values.pop() : undefined;\n};\n","export const safeJSONParse = (str, defVal = {}, allowObj = false) => {\n if (str) {\n if (typeof str === typeof {} && allowObj) {\n return str;\n }\n try {\n return JSON.parse(str);\n } catch (ex) {\n return defVal;\n }\n } else {\n return defVal;\n }\n};\n\nexport const getUrlParameter = name => {\n const _name = name.replace(/[[]/, '\\\\[').replace(/[\\]]/, '\\\\]');\n const regex = new RegExp(`[\\\\?&]${_name}=([^&#]*)`);\n const results = regex.exec(global.location?.search || global.window?.location?.search);\n return results === null ? '' : decodeURIComponent(results[1].replace(/\\+/g, ' '));\n};\n\nexport const getUrlByCurrentLocale = url => {\n const { currentLocale, languageCodeURLPaths, JOTFORM_ENV } = global;\n if (currentLocale?.length === 5 && currentLocale?.include('-')) {\n const [languageCode] = currentLocale.split('-');\n if (typeof languageCodeURLPaths !== 'object' || Object.values(languageCodeURLPaths).includes(languageCode)) {\n return JOTFORM_ENV === 'PRODUCTION' ? `/${languageCode}${url}` : `https://www.jotform.com/${languageCode}${url}`;\n }\n }\n return JOTFORM_ENV === 'PRODUCTION' ? `${url}` : `https://www.jotform.com${url}`;\n};\n\nconst arrayMoveMutate = (array, from, to) => {\n const startIndex = to < 0 ? array.length + to : to;\n const item = array.splice(from, 1)[0];\n array.splice(startIndex, 0, item);\n};\n\nexport const arrayMove = (array, from, to) => {\n const newArray = array.slice();\n arrayMoveMutate(newArray, from, to);\n return newArray;\n};\n\nexport const serialize = (obj, prefix) => {\n /* eslint-disable */\n const str = [];\n let p;\n for (p in obj) {\n if (obj.hasOwnProperty(p)) {\n const k = prefix ? `${prefix}[${p}]` : p;\n const v = obj[p];\n str.push((v !== null && typeof v === \"object\") ?\n serialize(v, k) :\n v !== null ? `${encodeURIComponent(k)}=${encodeURIComponent(v)}`: null) ;\n }\n }\n return str.filter(a => a).join(\"&\");\n /* eslint-enable */\n};\n\nexport const objectEntries = obj => {\n const ownProps = Object.keys(obj);\n let i = ownProps.length;\n const resArray = new Array(i);\n while (i--) {\n resArray[i] = [ownProps[i], obj[ownProps[i]]];\n }\n return resArray;\n};\n\nexport const hasUrlParamOf = (key, value) => {\n return new URLSearchParams(document?.location?.search).get(key) === value;\n};\n","import isElement from 'lodash/isElement';\n\nexport const createFormData = data => {\n return Object.keys(data)\n .map(key => `${key}=${window.encodeURIComponent(data[key])}`)\n .join('&');\n};\n\nexport const listenEnter = (e, callbackFN = () => undefined, stopPropagation = true) => {\n const { key = '', keyCode } = e;\n if ((key && key === 'Enter') || keyCode === 13) {\n if (stopPropagation) {\n e.stopPropagation(); // to prevent cardform selectNextQuestion\n }\n callbackFN();\n }\n};\n\nexport const loadJS = (id, src, onload) => {\n if (document.getElementById(id)) {\n return false;\n }\n\n const js = document.createElement('script');\n\n js.id = id;\n js.onload = onload;\n js.src = src;\n const fjs = document.getElementsByTagName('script')[0];\n if (fjs) {\n fjs.parentNode.insertBefore(js, fjs);\n } else {\n document.getElementsByTagName('head')[0].appendChild(js);\n }\n};\n\n/**\n * Select nearest parent matches with selector (unless it encounters stopSelector) according to _element.\n * @param _element\n * @param selector\n * @param stopSelector\n * @returns {*}\n */\nexport const closest = (_element, selector, stopSelector) => {\n let element = _element;\n let retval = null;\n while (element) {\n if (element.matches(selector)) {\n retval = element;\n break;\n } else if (stopSelector && element.matches(stopSelector)) {\n break;\n }\n element = element.parentElement;\n }\n return retval;\n};\n\n// Check if node2 contains node1\nexport const nodeContains = (node2, node1) => isElement(node2) && isElement(node1) && ((node2 === node1) || nodeContains(node2, node1.parentNode));\n\nexport const getClassAttributes = values => {\n if (!values?.class) return '';\n const classAttributes = values.class;\n const classResult = Object.values(classAttributes).join(' ').trim();\n return classResult;\n};\n\n/**\n * Select the text content and collapse if you want to move the caret to end of input\n * @param target\n * @param shouldCollapse\n */\nexport const selectAllText = ({ target, shouldCollapse = false, focusBefore = false }) => {\n let selection;\n let range;\n if (focusBefore) target.focus();\n\n if (document.body.createTextRange) {\n range = document.body.createTextRange();\n range.moveToElementText(target);\n if (shouldCollapse) range.collapse(false);\n range.select();\n } else if (window.getSelection) {\n selection = window.getSelection();\n range = document.createRange();\n range.selectNodeContents(target);\n selection.removeAllRanges();\n if (shouldCollapse) range.collapse(false);\n selection.addRange(range);\n }\n\n if (!focusBefore) target.focus();\n};\n\nexport const classNameGenerator = classess => {\n let className = '';\n const classKeys = Object.keys(classess);\n classKeys.forEach(classKey => {\n if (classess[classKey]) className += ` ${classKey}`;\n });\n return className.trim();\n};\n","import { getBaseURL, getEnv } from '@jotforminc/router-bridge';\nimport { t } from '@jotforminc/translation';\nimport { handleCustomNavigation } from './platform';\nimport { getUrlParameter } from './data';\n\nexport const shortenString = (str, maxLength = 15) => {\n const sanitizedString = str.replace(/(<([^>]+)>)/ig, '');\n return (\n sanitizedString.length > maxLength\n ? `${sanitizedString.substring(0, maxLength - 2)}...`\n : sanitizedString\n );\n};\n\nexport const getTextForDuplicate = ({\n list,\n count = 1,\n text = '',\n baseKey = 'text'\n}) => {\n const isExists = list.find(({ [baseKey]: tmpText }) => tmpText === text);\n if (!isExists) {\n return text;\n }\n\n const textParts = text.split('_');\n const originalText = textParts.length === 1 ? textParts[0] : textParts.slice(0, -1).join('_');\n return getTextForDuplicate({\n list,\n baseKey,\n count: count + 1,\n text: `${originalText}_${count}`\n });\n};\n\nexport const tagDuplicateProperty = baseKey => values => {\n const sanitizedValues = Array.isArray(values) ? values : [];\n const updatedValues = sanitizedValues.reduce((list, property = {}) => {\n const text = property[baseKey];\n\n if (text === undefined) {\n return [...list, property];\n }\n\n const newText = getTextForDuplicate({ list, baseKey, text });\n const updatedProperty = { ...property, [baseKey]: newText };\n return [...list, updatedProperty];\n }, []);\n return updatedValues;\n};\n\nfunction getRandomColor() {\n const letters = '0123456789ABCDEF';\n let color = '#';\n for (let i = 0; i < 6; i++) {\n color += letters[Math.floor(Math.random() * 16)];\n }\n return color;\n}\n\nconst defaultPalette = [\n '#007862',\n '#F46A00',\n '#047C9E',\n '#0876DB',\n '#00871E',\n '#363E76',\n '#656A9B',\n '#69E8AB',\n '#7553A3',\n '#9A674A',\n '#B0ECFF',\n '#B94B9A',\n '#C1FCF1',\n '#C7DF68',\n '#CE1F73',\n '#D1DEE2',\n '#DCC2FF',\n '#DD304C',\n '#DEE1FF',\n '#E2D1D1',\n '#FDC1CA',\n '#FFCDFA',\n '#FFD6BC',\n '#FFE195'\n];\n\nexport const colorifyFormArray = (formArray, palette = defaultPalette) => {\n return formArray.map((formObj, i) => {\n const color = palette[i] ? palette[i] : getRandomColor();\n return { ...formObj, color: formObj.color || color };\n });\n};\n\nexport const formatBytes = (bytes, decimals = 2) => {\n if (bytes === 0) return '0 Bytes';\n\n const k = 1024;\n const dm = decimals < 0 ? 0 : decimals;\n const sizes = ['Bytes', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'];\n\n const i = Math.floor(Math.log(bytes) / Math.log(k));\n\n return `${parseFloat((bytes / k ** i).toFixed(dm))} ${sizes[i]}`;\n};\n\nexport const isBright = sourceColor => {\n if (sourceColor && sourceColor.length > 0) {\n const color = (sourceColor.charAt(0) === '#') ? sourceColor.substring(1, 7) : sourceColor;\n const r = parseInt(color.substring(0, 2), 16); // hexToR\n const g = parseInt(color.substring(2, 4), 16); // hexToG\n const b = parseInt(color.substring(4, 6), 16); // hexToB\n return (((r * 0.299) + (g * 0.587) + (b * 0.114)) > 186);\n }\n return false;\n};\n\n/**\n * This function creates an object with keys given in array of string type\n * and makes the defaultValue parameter the value of all keys.\n */\nexport const createObjectWithKeys = (keys, defaultValue = true) => keys.reduce((accumulatorObject, key) => ({ ...accumulatorObject, [key]: defaultValue }), {});\n\nexport const filterObjectKeysByValue = (obj, value = true) => Object.keys(obj).filter(key => obj[key] === value);\n\nexport const getAccountTypeName = user => {\n if (user.accountType) {\n return user.accountType;\n }\n return user?.account_type?.name;\n};\n\nexport const classNames = (...arr) => arr.flat().filter(Boolean).join(' ');\n\nexport const handleRedirect = formID => {\n const integrationParam = getUrlParameter('integration');\n\n handleCustomNavigation(`/sign/${formID}${integrationParam.length > 0 ? `/settings/integrations?integration=${integrationParam}` : ''}`, '_self');\n};\n\nexport const generateSessionLink = (sessionID, token, formID) => {\n const pathnameClean = window.location.pathname.replace(/^\\/|(?:(?=[&?]).*$)/g, '');\n if (window?.JFAppsManager?.isOpenedInPortal() && !window?.JFAppsManager?.isProductListForm) {\n return window.JFAppsManager.generateAppContinueLink(sessionID, token, formID);\n }\n return `${window.location.origin}/${pathnameClean}?session=${sessionID}&stoken=${token}`;\n};\n\nexport const generateUniqueID = () => (Math.random().toString(36).substring(2));\n\nexport const openInNewTab = (url, target = '_blank') => {\n handleCustomNavigation(url, target, 'noopener,noreferrer');\n};\n\nexport const isUserAllowedView = credentials => {\n const { account_type: { name } = {} } = credentials || {};\n const allowedUsers = ['ADMIN', 'SUPPORT'];\n\n if (allowedUsers.indexOf(name) > -1) return true;\n return false;\n};\n\nexport const redirectToLoginPage = () => {\n window.location.href = `${getBaseURL()}/login`;\n};\n\nexport const isProduction = () => {\n return getEnv() === 'PRODUCTION' || window.JOTFORM_ENV === 'PRODUCTION';\n};\n\nfunction numberFormat(number, decimals, decPoint, thousandsSep) {\n const n = number;\n const prec = decimals;\n const toFixedFix = (num, _prec) => {\n const k = 10 ** _prec;\n return (Math.round(num * k) / k).toString();\n };\n // n = !isFinite(+n) ? 0 : +n;\n // prec = !isFinite(+prec) ? 0 : Math.abs(prec);\n const sep = (typeof thousandsSep === 'undefined') ? ',' : thousandsSep;\n const dec = (typeof decPoint === 'undefined') ? '.' : decPoint;\n let s = (prec > 0) ? toFixedFix(n, prec) : toFixedFix(Math.round(n), prec);\n const abs = toFixedFix(Math.abs(n), prec);\n let _; let i;\n if (abs >= 1000) {\n _ = abs.split(/\\D/);\n i = _[0].length % 3 || 3;\n _[0] = s.slice(0, i + (n < 0)) + _[0].slice(i).replace(/(\\d{3})/g, `${sep}$1`);\n s = _.join(dec);\n } else {\n s = s.replace('.', dec);\n }\n\n if (+s > 0) {\n if (s.indexOf(dec) === -1 && prec > 1) {\n const preca = [];\n preca[prec - 1] = undefined;\n s += `${dec} ${preca.join(0)} 0`;\n } else if (s.indexOf(dec) === s.length - 2) { // incorrect: 2.7, correct: 2.70\n s += '0';\n }\n }\n return s;\n}\n\nexport const bytesToHuman = octets => {\n const units = ['B', 'kB', 'MB', 'GB', 'TB']; // ...etc\n let i = 0;\n let size = octets;\n for (i = 0; size > 1024; size /= 1024) { i++; }\n return numberFormat(size, 1) + units[Math.min(i, units.length - 1)];\n};\n\nexport const saveBlobAsFile = (blob, fileName) => {\n // For ie and edge, use native msSaveOrOpenBlob method instead of dummy anchor and click\n if (window.navigator && window.navigator.msSaveOrOpenBlob) {\n window.navigator.msSaveOrOpenBlob(blob, fileName);\n } else if (window.URL.createObjectURL) {\n const link = document.createElement('a');\n const blobURL = window.URL.createObjectURL(blob);\n link.href = blobURL;\n link.download = fileName;\n document.body.appendChild(link);\n link.click();\n document.body.removeChild(link);\n URL.revokeObjectURL(blobURL);\n }\n};\n\n/**\n * When send a GET request to a PDF file url which has nc query parameter with value 1,\n * Content-Disposition in response header's value becomes 'inline'\n * and this behaviour causes to open file in the current tab\n * To have the downloaded file as an attachment,\n * we should convert the url to a blob and download this blob.\n * @param {string} fileURL\n * @param {function} callback\n */\nexport const downloadPDFCheckingNoCache = async (fileURL, callback = f => f) => {\n const contentURL = new window.URL(fileURL);\n const { searchParams, pathname } = contentURL;\n const hasNoChacheFlag = searchParams.get('nc') === '1';\n if (hasNoChacheFlag) {\n const fileResponse = await fetch(contentURL.href);\n const blob = await fileResponse.blob();\n const paths = pathname.split('/');\n const filename = paths[paths.length - 1];\n saveBlobAsFile(blob, filename);\n } else {\n callback();\n }\n};\n\nexport const sleep = ms => {\n return new Promise(resolve => setTimeout(resolve, ms));\n};\n\nexport const encodeURLs = context => {\n const urlRegex = /\"https?:\\/\\/(.*?)\"/g;\n return context.replace(urlRegex, (_, url) => `\"https://${encodeURI(url)}\"`);\n};\n\nexport const getDimensionsAndPosition = node => {\n const rect = node.getBoundingClientRect();\n return {\n width: rect.width,\n height: rect.height,\n top: rect.top,\n right: rect.right,\n bottom: rect.bottom,\n left: rect.left\n };\n};\nexport const openSocialMediaPopup = (url, callback) => {\n if (!url) return;\n\n const w = (window.innerWidth || window.screen.width) / 2;\n const h = (window.innerHeight || window.screen.height) / 2;\n let y = window.outerHeight / 2 + window.screenY - h / 2;\n let x = window.outerWidth / 2 + window.screenX - w / 2;\n try {\n y = window.top.outerHeight / 2 + window.top.screenY - h / 2;\n x = window.top.outerWidth / 2 + window.top.screenX - w / 2;\n } catch (err) {\n // error accessing to cross origin frame. Do nothing.\n }\n\n handleCustomNavigation(url, '_blank', true, `toolbar=0,location=0,menubar=0,width=${w},height=${h},top=${y},left=${x}`);\n\n if (typeof callback === 'function') {\n callback();\n }\n};\n\nexport const getMissingPDFAttachmentMessage = (availablePDFIDs = [], currentSelectedPDFIDs = []) => {\n const diff = currentSelectedPDFIDs.filter(id => !availablePDFIDs.includes(id));\n if (diff.length) {\n if (diff.length > 1) {\n return t('Attached documents are missing.');\n }\n return t('Attached document is missing.');\n }\n};\n\nexport const doesTargetLinkContainsProtocol = targetURL => {\n const protocolRegex = /^(https|http|ftp|tel|mailto|ms-excel):\\/\\//gi;\n return protocolRegex.test(targetURL);\n};\n\nexport const checkAndAddProtocolToTargetLink = targetURL => {\n if (!doesTargetLinkContainsProtocol(targetURL)) return `https://${targetURL}`;\n\n return targetURL;\n};\n","export const PlatformTypes = {\n SALESFORCE: 'salesforce',\n WEEBLY: 'weebly',\n ANYWHERE: 'anywhere',\n DOCUSIGN: 'docusign',\n CANVA: 'canva'\n};\n\nexport const AllowedPlatforms = [\n PlatformTypes.SALESFORCE,\n PlatformTypes.WEEBLY,\n PlatformTypes.ANYWHERE,\n PlatformTypes.DOCUSIGN,\n PlatformTypes.CANVA\n];\n","import { createStore, compose } from 'redux';\n\nconst makeFeatureReducer = initialState => {\n return (state = initialState, action) => {\n if (!action.type) return state;\n if (action.type === 'ADD_NEW_FEATURE') {\n return {\n ...state,\n [action.payload.featureName]: {\n name: action.payload.featureName,\n value: action.payload.featureValue\n }\n };\n }\n if (action.type === 'ADD_FEATURE_FLAG_LIST') {\n return {\n ...state,\n ...action.payload.featureFlagList\n };\n }\n if (action.type === 'RENEW_FEATURE_FLAG') {\n return {\n ...action.payload.featureFlagList\n };\n }\n if (action.type === 'RESET_FEATURE_FLAG') {\n return {};\n }\n if (!state[action.type]) return state;\n return {\n ...state,\n [action.type]: {\n ...state[action.type],\n value: !state[action.type].value\n }\n };\n };\n};\n\nconst composeEnhancers = (typeof window !== 'undefined' && window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__ && window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__({ name: 'JF Feature Flag Reducer' })) || compose;\nclass FeatureFlag {\n store = createStore(makeFeatureReducer({}), composeEnhancers());\n\n constructor() {\n if (global.FeatureFlag) return global.FeatureFlag;\n global.FeatureFlag = this;\n }\n\n init = featureList => {\n this.store.dispatch({ type: 'ADD_FEATURE_FLAG_LIST', payload: { featureFlagList: featureList } });\n };\n\n getStore = () => {\n // TODO: return singleton store;\n return this.store;\n };\n\n addNewFeature = (featureName, featureValue) => {\n this.store.dispatch({ type: 'ADD_NEW_FEATURE', payload: { featureName, featureValue } });\n };\n\n getList = () => {\n return this.store.getState();\n };\n\n getFeature = feature => {\n const featureName = this.getFeatureName(feature);\n const featureValue = this.store.getState()[featureName]?.value;\n if (typeof featureValue === 'undefined') {\n console.log(JSON.stringify(feature), ': feature is not defined.');\n return false;\n }\n return featureValue;\n };\n\n toggleFeature = feature => {\n const featureName = this.getFeatureName(feature);\n this.store.dispatch({ type: featureName });\n };\n\n getFeatureName = feature => {\n if (typeof feature === 'undefined') return null;\n if (typeof feature === 'string') return feature;\n return feature.name;\n };\n}\n\nexport default new FeatureFlag();\n","import { AllowedPlatforms, PlatformTypes } from '@jotforminc/constants';\nimport { getRootPath, getBaseURL } from '@jotforminc/router-bridge';\nimport { featureFlag } from '@jotforminc/feature-flag';\n\nconst cache = {};\n\nexport const isPlatformEnv = () => {\n if (typeof cache.isPlatform !== 'undefined') return cache.isPlatform;\n const platformEnv = window.__jfrouter ? window.__jfrouter.PLATFORM_ENV : window.PLATFORM_ENV;\n const isAllowedPlatform = AllowedPlatforms.includes(platformEnv);\n cache.isPlatform = isAllowedPlatform;\n cache.platformEnv = isAllowedPlatform ? platformEnv : null;\n return cache.isPlatform;\n};\n\nexport const isSalesforceEnv = () => {\n if (isPlatformEnv()) {\n return cache.platformEnv === PlatformTypes.SALESFORCE;\n }\n return false;\n};\n\nexport const isAnywhereEnv = () => {\n return cache.platformEnv === PlatformTypes.ANYWHERE;\n};\n\nexport const getPlatformEnv = () => {\n if (isPlatformEnv()) {\n return cache.platformEnv;\n }\n return null;\n};\n\nconst getValidURL = (url, baseURL) => {\n try {\n return new URL(url, baseURL);\n } catch (e) {\n return false;\n }\n};\n\nconst appendRootPath = pathname => {\n const rootPath = getRootPath();\n if (!pathname.startsWith(rootPath)) {\n return `${pathname.startsWith('/') ? rootPath.slice(0, -1) : rootPath}${pathname}`;\n }\n return pathname;\n};\n\n// THIS IS A TEMPORARY FUNCTION WILL BE DELETED AFTER RELEASE. THANKS AND SORRY :)\nconst interceptURLForWorkflowRelease = (url = '') => {\n const pathnames = url?.split('/').filter(Boolean) || [];\n const shouldChangeParameter = window?.isWorkflowReleased && pathnames[0] === 'myapprovals';\n if (!shouldChangeParameter) return url;\n return ['/myworkflows', ...pathnames.slice(1)].join('/');\n};\n\nconst prepareURLWithRoot = urlString => {\n const baseURL = getBaseURL();\n let url = urlString;\n const urlObject = getValidURL(url);\n\n if (urlObject) {\n if (urlObject.origin === baseURL) {\n urlObject.pathname = appendRootPath(urlObject.pathname);\n url = urlObject.toString();\n }\n } else {\n url = appendRootPath(url);\n }\n url = interceptURLForWorkflowRelease(url);\n return url;\n};\n\nconst shouldRedirectToSessionExpired = redirectURL => {\n if (isPlatformEnv()) {\n if (\n redirectURL.pathname === '/login'\n && (redirectURL.searchParams.has('rp') || redirectURL.searchParams.size === 0)\n ) {\n return true;\n }\n }\n return false;\n};\n\nexport const handleCustomNavigation = (url, target = '_blank', dontOverwrite = false, windowFeatures = '') => {\n const isMobileApp = global.navigator.userAgent.indexOf('JotForm Mobile') > -1 || global.navigator.userAgent.indexOf('JFCEMobile') > -1;\n const redirectURL = getValidURL(url, getBaseURL());\n\n if (redirectURL && shouldRedirectToSessionExpired(redirectURL)) {\n return window.open(`/platform/${getPlatformEnv()}/platform-pages/session-expired${redirectURL.search}`, '_self', windowFeatures);\n }\n\n if (dontOverwrite) {\n return window.open(url, target, windowFeatures);\n }\n\n if (isMobileApp) {\n window.location.href = url;\n return;\n }\n if (isPlatformEnv()) {\n if (featureFlag.getFeature(featureFlag.getList().NAVIGATE_TO_THE_NEW_TAB)) {\n return window.open(url, '_blank', `noopener,noreferrer,${windowFeatures}`);\n }\n\n if (url.startsWith('https://')) {\n // TODO: handle this properly\n return window.open(url, target, windowFeatures);\n }\n return window.open(`/platform/${getPlatformEnv()}${url}`, '_self', windowFeatures);\n }\n\n return window.open(prepareURLWithRoot(url), target, windowFeatures);\n};\n\nexport const getPlatformSafeUrl = url => {\n let safeUrl = getValidURL(url);\n if (!safeUrl || (safeUrl && window.__jfrouter.BASE_URL !== (new URL(safeUrl)).origin)) {\n const platformEnv = getPlatformEnv();\n const platformPrefix = platformEnv ? `/platform/${platformEnv}` : '';\n safeUrl = `${window.__jfrouter.BASE_URL}${platformPrefix}/myforms`;\n }\n return safeUrl;\n};\n","import isNumber from 'lodash/isNumber';\nimport { EMAIL_PATTERN } from '@jotforminc/constants';\nimport { t } from '@jotforminc/translation';\n\nimport { safeJSONParse } from './data';\n\nexport const isFilled = value => {\n if (typeof value === 'string') {\n const val = value && value.replace(/^\\s+|\\s+$/g, '');\n return !!val;\n } if (Array.isArray(value)) {\n return value.length > 0;\n }\n return !!value;\n};\n\nexport const isEmpty = value => {\n return !isFilled(value);\n};\n\nexport const isValidUrl = value => {\n const URLPattern = /(http|ftp|https){0,1}:{0,1}[\\w\\-_]+(\\.[\\w\\-_]+)+([\\w\\-\\.,@?^=%&:/~\\+#]*[\\w\\-\\@?^=%&/~\\+#])?/; // eslint-disable-line no-useless-escape\n const validUrlRegex = global?.JotForm?.validationRegexes?.url || URLPattern;\n return isFilled(value) && validUrlRegex.test(value);\n};\n\nexport const isEmail = value => {\n return isFilled(value) && EMAIL_PATTERN.test(value);\n};\n\nexport const isTeamEmail = value => {\n const teamRegex = /team:[0-9].{13,14}$/;\n return teamRegex.test(value);\n};\n\n/**\n * Hostname validation\n * @function\n * @param {String} hostname to validate\n */\nexport const validateHostname = hostname => /^(([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9-]*[a-zA-Z0-9]).)*([A-Za-z0-9]|[A-Za-z0-9][A-Za-z0-9-]*[A-Za-z0-9])$/\n .test(String(hostname).toLowerCase());\n\nexport const isSafari = () => /^((?!chrome|android).)*safari/i.test(global.navigator.userAgent);\n\n/**\n * E-mail validation\n * @function\n * @param {String} email to validate\n */\nexport const validateEmail = email => /^(([^<>()[\\]\\\\.,;:\\s@\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/\n .test(String(email).toLowerCase());\n\nconst validationMessages = {\n required: t('This field is required'),\n invalidEmail: t('Invalid email address')\n};\n\nconst validationsMap = {\n required: value => (!isFilled(value) ? validationMessages.required : false),\n required_withnone: value => (!isFilled(value) || value === 'none' ? validationMessages.required : false),\n email: value => {\n const questionPlaceholderRegex = /^\\{(.*?)\\}$/;\n if (typeof value === 'string' && questionPlaceholderRegex.test(value)) {\n return false;\n }\n\n if (typeof value === 'string') {\n const [, tagifyValue] = value.match(/^\\[\\[(.*?)\\]\\]$/) || [];\n if (tagifyValue) {\n const parsedTagifyValue = safeJSONParse(tagifyValue);\n if (parsedTagifyValue && parsedTagifyValue.name && questionPlaceholderRegex.test(parsedTagifyValue.name)) {\n return false;\n }\n }\n }\n\n if (Array.isArray(value) && value.length === 1 && questionPlaceholderRegex.test(value[0].value)) {\n return false;\n }\n\n const strEmail = (Array.isArray(value) && value.length === 1) ? value[0].value : value;\n return !isEmail(strEmail) ? validationMessages.invalidEmail : false;\n },\n numeric: val => (!isNumber(val) ? 'please write numeric' : false),\n content: val => {\n if (!isFilled(val)) {\n return validationMessages.required;\n }\n\n // Create dummy dom to check if the email content is empty or not\n const emailContent = new window.DOMParser().parseFromString(val, 'text/html').body.textContent.trim();\n return !emailContent ? validationMessages.required : false;\n }\n};\n\n// TODO: memoize this fn\nexport const generateIsErroredFromValidations = validations => {\n const fns = [];\n validations.forEach(name => {\n const validator = validationsMap[name];\n if (validator) {\n fns.push(validator);\n }\n });\n return value => {\n let errorMsg;\n fns.find(fn => {\n errorMsg = fn(value);\n return errorMsg;\n });\n return errorMsg || false;\n };\n};\n\nexport const checkUserType = (userType, credentials) => {\n const { account_type: { name } } = credentials;\n return name === userType;\n};\n","import { cva } from 'class-variance-authority';\nimport { primary, secondary } from '../../tokens/colors';\nimport { CVAType } from '../../types/system.types';\nimport {\n ButtonIconProps, ButtonIndicatorProps, ButtonProps, ButtonTextProps\n} from './button.types';\n\n// CVA Types\ntype ButtonHelperTypes = {\n hasLoaderText?: boolean,\n hasDoubleIcon?: boolean,\n hasOneIcon?: boolean,\n hasChildren?: boolean\n}\n\ntype ButtonCVAType = CVAType & ButtonHelperTypes>\ntype ButtonTextCVAType = CVAType\ntype ButtonIconCVAType = CVAType>\ntype ButtonIndicatorCVAType = CVAType>;\n\nconst buttonDefaultClassName = 'magnet-button inline-flex shrink-0 justify-center items-center font-medium duration-300 outline-2 outline-transparent outline-offset-0 focus:outline-opacity-50';\n\n// Classes\nexport const buttonCVA = cva(buttonDefaultClassName, {\n variants: {\n size: {\n small: 'h-8 px-2',\n medium: 'h-10 px-2.5',\n large: 'h-12 px-3'\n },\n rounded: {\n true: 'radius-full',\n false: 'radius'\n },\n fullWidth: {\n true: 'w-full'\n },\n variant: {\n ghost: 'border-0',\n filled: 'border-0',\n outline: 'border'\n },\n showTextOnHover: {\n true: 'group'\n },\n loader: {\n true: 'pointer-events-none'\n },\n disabled: {\n true: 'cursor-not-allowed opacity-40',\n false: 'cursor-pointer'\n },\n colorStyle: {},\n showTextOnly: {},\n hasLoaderText: {},\n hasDoubleIcon: {},\n hasOneIcon: {},\n hasChildren: {}\n },\n compoundVariants: [\n /*\n Added `width` class for only outlined icon buttons depending by size because of border width\n */\n {\n variant: 'outline',\n hasChildren: false,\n hasOneIcon: true,\n size: 'small',\n className: 'w-8'\n },\n {\n variant: 'outline',\n hasChildren: false,\n hasOneIcon: true,\n size: 'medium',\n className: 'w-10'\n },\n {\n variant: 'outline',\n hasChildren: false,\n hasOneIcon: true,\n size: 'large',\n className: 'w-12'\n },\n /*\n Added `width` class for only outlined icon buttons depending by size and showTextOnly breakpoints because of border width\n */\n {\n variant: 'outline',\n hasOneIcon: true,\n showTextOnly: 'xs',\n size: 'small',\n className: 'w-8 xs:w-auto'\n },\n {\n variant: 'outline',\n hasOneIcon: true,\n showTextOnly: 'sm',\n size: 'small',\n className: 'w-8 sm:w-auto'\n },\n {\n variant: 'outline',\n hasOneIcon: true,\n showTextOnly: 'md',\n size: 'small',\n className: 'w-8 md:w-auto'\n },\n {\n variant: 'outline',\n hasOneIcon: true,\n showTextOnly: 'lg',\n size: 'small',\n className: 'w-8 lg:w-auto'\n },\n {\n variant: 'outline',\n hasOneIcon: true,\n showTextOnly: 'xl',\n size: 'small',\n className: 'w-8 xl:w-auto'\n },\n {\n variant: 'outline',\n hasOneIcon: true,\n showTextOnly: 'xxl',\n size: 'small',\n className: 'w-8 xxl:w-auto'\n },\n {\n variant: 'outline',\n hasOneIcon: true,\n showTextOnly: 'xs',\n size: 'medium',\n className: 'w-10 xs:w-auto'\n },\n {\n variant: 'outline',\n hasOneIcon: true,\n showTextOnly: 'sm',\n size: 'medium',\n className: 'w-10 sm:w-auto'\n },\n {\n variant: 'outline',\n hasOneIcon: true,\n showTextOnly: 'md',\n size: 'medium',\n className: 'w-10 md:w-auto'\n },\n {\n variant: 'outline',\n hasOneIcon: true,\n showTextOnly: 'lg',\n size: 'medium',\n className: 'w-10 lg:w-auto'\n },\n {\n variant: 'outline',\n hasOneIcon: true,\n showTextOnly: 'xl',\n size: 'medium',\n className: 'w-10 xl:w-auto'\n },\n {\n variant: 'outline',\n hasOneIcon: true,\n showTextOnly: 'xxl',\n size: 'medium',\n className: 'w-10 xxl:w-auto'\n },\n {\n variant: 'outline',\n hasOneIcon: true,\n showTextOnly: 'xs',\n size: 'large',\n className: 'w-12 xs:w-auto'\n },\n {\n variant: 'outline',\n hasOneIcon: true,\n showTextOnly: 'sm',\n size: 'large',\n className: 'w-12 sm:w-auto'\n },\n {\n variant: 'outline',\n hasOneIcon: true,\n showTextOnly: 'md',\n size: 'large',\n className: 'w-12 md:w-auto'\n },\n {\n variant: 'outline',\n hasOneIcon: true,\n showTextOnly: 'lg',\n size: 'large',\n className: 'w-12 lg:w-auto'\n },\n {\n variant: 'outline',\n hasOneIcon: true,\n showTextOnly: 'xl',\n size: 'large',\n className: 'w-12 xl:w-auto'\n },\n {\n variant: 'outline',\n hasOneIcon: true,\n showTextOnly: 'xxl',\n size: 'large',\n className: 'w-12 xxl:w-auto'\n },\n /*\n Added `width` class for only outlined icon buttons depending by size and showTextOnHover because of border width\n */\n {\n variant: 'outline',\n hasOneIcon: true,\n showTextOnHover: true,\n size: 'small',\n className: 'w-8 hover:w-auto'\n },\n {\n variant: 'outline',\n hasOneIcon: true,\n showTextOnHover: true,\n size: 'medium',\n className: 'w-10 hover:w-auto'\n },\n {\n variant: 'outline',\n hasOneIcon: true,\n showTextOnHover: true,\n size: 'large',\n className: 'w-12 hover:w-auto'\n },\n /*\n Added `relative` class to wrapping the loader overlay element\n */\n {\n loader: true,\n hasLoaderText: false,\n className: 'relative'\n },\n /*\n Added `bg-transparent` class for `ghost` and `outline` variants\n because they don't have a background in the static state\n */\n {\n variant: ['ghost', 'outline'],\n className: 'bg-transparent'\n },\n /*\n Added `bg-white` for those with\n `filled` variant\n \"darker\" colorStyle\n */\n {\n variant: 'filled',\n colorStyle: [\n 'primary', 'success', 'error', 'neutral',\n 'analytics', 'pages', 'teams', 'sign', 'pdf', 'apps',\n 'reports', 'forms', 'sign', 'tables', 'inbox', 'approvals'\n ],\n className: 'color-white'\n },\n /*\n Added core classes for those with\n `filled` variant\n `primary` colorStyle\n */\n {\n variant: 'filled',\n colorStyle: 'primary',\n className: primary.accent.default.bg.base\n },\n {\n variant: 'filled',\n colorStyle: 'primary',\n disabled: false,\n className: primary.accent.dark.bg.hover\n },\n /*\n Added core classes for those with\n `filled` variant\n `secondary` colorStyle\n */\n {\n variant: 'filled',\n colorStyle: 'secondary',\n className: [\n primary.background.light.base,\n primary.text.dark.base\n ]\n },\n {\n variant: 'filled',\n colorStyle: 'secondary',\n disabled: false,\n className: primary.background.medium.hover\n },\n /*\n Added core classes for those with\n `filled` variant\n `success` colorStyle\n */\n {\n variant: 'filled',\n colorStyle: 'success',\n className: primary.success.default.bg.base\n },\n {\n variant: 'filled',\n colorStyle: 'success',\n disabled: false,\n className: primary.success.dark.bg.hover\n },\n /*\n Added core classes for those with\n `filled` variant\n `error` colorStyle\n */\n {\n variant: 'filled',\n colorStyle: 'error',\n className: primary.error.default.bg.base\n },\n {\n variant: 'filled',\n colorStyle: 'error',\n disabled: false,\n className: primary.error.dark.bg.hover\n },\n /*\n Added core classes for those with\n `filled` variant\n `neutral` colorStyle\n */\n {\n variant: 'filled',\n colorStyle: 'neutral',\n className: secondary.background.medium.base\n },\n {\n variant: 'filled',\n colorStyle: 'neutral',\n disabled: false,\n className: secondary.background.dark.hover\n },\n /*\n Added core classes for those with\n `filled` variant\n `analytics` colorStyle\n */\n {\n variant: 'filled',\n colorStyle: 'analytics',\n className: 'bg-analytics-default'\n },\n {\n variant: 'filled',\n colorStyle: 'analytics',\n disabled: false,\n className: 'hover:bg-analytics-dark'\n },\n /*\n Added core classes for those with\n `filled` variant\n `pages` colorStyle\n */\n {\n variant: 'filled',\n colorStyle: 'pages',\n className: 'bg-pages-default'\n },\n {\n variant: 'filled',\n colorStyle: 'pages',\n disabled: false,\n className: 'hover:bg-pages-dark'\n },\n /*\n Added core classes for those with\n `filled` variant\n `teams` colorStyle\n */\n {\n variant: 'filled',\n colorStyle: 'teams',\n className: 'bg-teams-default'\n },\n {\n variant: 'filled',\n colorStyle: 'teams',\n disabled: false,\n className: 'hover:bg-teams-dark'\n },\n /*\n Added core classes for those with\n `filled` variant\n `sign` colorStyle\n */\n {\n variant: 'filled',\n colorStyle: 'sign',\n className: 'bg-sign-default'\n },\n {\n variant: 'filled',\n colorStyle: 'sign',\n disabled: false,\n className: 'hover:bg-sign-dark'\n },\n /*\n Added core classes for those with\n `filled` variant\n `pdf` colorStyle\n */\n {\n variant: 'filled',\n colorStyle: 'pdf',\n className: 'bg-pdf-default'\n },\n {\n variant: 'filled',\n colorStyle: 'pdf',\n disabled: false,\n className: 'hover:bg-pdf-dark'\n },\n /*\n Added core classes for those with\n `filled` variant\n `apps` colorStyle\n */\n {\n variant: 'filled',\n colorStyle: 'apps',\n className: 'bg-apps-default'\n },\n {\n variant: 'filled',\n colorStyle: 'apps',\n disabled: false,\n className: 'bg-apps-default hover:bg-apps-dark'\n },\n /*\n Added core classes for those with\n `filled` variant\n `reports` colorStyle\n */\n {\n variant: 'filled',\n colorStyle: 'reports',\n className: 'bg-reports-default'\n },\n {\n variant: 'filled',\n colorStyle: 'reports',\n disabled: false,\n className: 'hover:bg-reports-dark'\n },\n /*\n Added core classes for those with\n `filled` variant\n `forms` colorStyle\n */\n {\n variant: 'filled',\n colorStyle: 'forms',\n className: 'bg-forms-default'\n },\n {\n variant: 'filled',\n colorStyle: 'forms',\n disabled: false,\n className: 'hover:bg-forms-dark'\n },\n /*\n Added core classes for those with\n `filled` variant\n `tables` colorStyle\n */\n {\n variant: 'filled',\n colorStyle: 'tables',\n className: 'bg-tables-default'\n },\n {\n variant: 'filled',\n colorStyle: 'tables',\n disabled: false,\n className: 'hover:bg-tables-dark'\n },\n /*\n Added core classes for those with\n `filled` variant\n `approvals` colorStyle\n */\n {\n variant: 'filled',\n colorStyle: 'approvals',\n className: 'bg-approvals-default'\n },\n {\n variant: 'filled',\n colorStyle: 'approvals',\n disabled: false,\n className: 'hover:bg-approvals-dark'\n },\n /*\n Added core classes for those with\n `filled` variant\n `inbox` colorStyle\n */\n {\n variant: 'filled',\n colorStyle: 'inbox',\n className: 'bg-inbox-default'\n },\n {\n variant: 'filled',\n colorStyle: 'inbox',\n disabled: false,\n className: 'hover:bg-inbox-dark'\n },\n /*\n Added border-color class for those with\n `outline` variant\n `primary` colorStyle\n */\n {\n variant: 'outline',\n colorStyle: 'primary',\n className: primary.accent.default.border.base\n },\n /*\n Added border-color class for those with\n `outline` variant\n `secondary` colorStyle\n */\n {\n variant: 'outline',\n colorStyle: 'secondary',\n className: primary.border.medium.base\n },\n /*\n Added border-color class for those with\n `outline` variant\n `neutral` colorStyle\n */\n {\n variant: 'outline',\n colorStyle: 'neutral',\n className: 'border-gray-600'\n },\n /*\n Added border-color class for those with\n `outline` variant\n `success` colorStyle\n */\n {\n variant: 'outline',\n colorStyle: 'success',\n className: primary.success.default.border.base\n },\n /*\n Added border-color class for those with\n `outline` variant\n `error` colorStyle\n */\n {\n variant: 'outline',\n colorStyle: 'error',\n className: primary.error.default.border.base\n },\n /*\n Added color and background-hover classes for those with\n `ghost` or `outline` variant\n `primary` colorStyle\n */\n {\n variant: ['ghost', 'outline'],\n colorStyle: 'primary',\n className: primary.accent.default.color.base\n },\n /*\n Added color and background-hover classes for those with\n `ghost` or `outline` variant\n `primary` colorStyle\n `disabled` false\n */\n {\n variant: ['ghost', 'outline'],\n colorStyle: 'primary',\n disabled: false,\n className: primary.accent.lightest.bg.hover\n },\n /*\n Added color and background-hover classes for those with\n `ghost` or `outline` variant\n `secondary` or `neutral` colorStyle\n */\n {\n variant: ['ghost', 'outline'],\n colorStyle: ['secondary', 'neutral'],\n class: primary.text.dark.base\n },\n /*\n Added color and background-hover classes for those with\n `ghost` or `outline` variant\n `secondary` or `neutral` colorStyle\n `disabled` false\n */\n {\n variant: ['ghost', 'outline'],\n colorStyle: ['secondary', 'neutral'],\n disabled: false,\n className: primary.background.lightest.hover\n },\n /*\n Added color and background-hover classes for those with\n `ghost` or `outline` variant\n `success` colorStyle\n `disabled` false\n */\n {\n variant: ['ghost', 'outline'],\n colorStyle: 'success',\n disabled: false,\n className: [primary.success.dark.color.base, primary.success.lightest.bg.hover]\n },\n /*\n Added color and background-hover classes for those with\n `ghost` or `outline` variant\n `error` colorStyle\n */\n {\n variant: ['ghost', 'outline'],\n colorStyle: 'error',\n className: primary.error.default.color.base\n },\n /*\n Added color and background-hover classes for those with\n `ghost` or `outline` variant\n `error` colorStyle\n `disabled` false\n */\n {\n variant: ['ghost', 'outline'],\n colorStyle: 'error',\n disabled: false,\n className: primary.error.lightest.bg.hover\n },\n /*\n Added `focus:outline` classes for those with\n `primary` colorStyle\n `disabled` false\n */\n {\n colorStyle: 'primary',\n disabled: false,\n className: 'focus:outline-blue-200'\n },\n /*\n Added `focus:outline` classes for those with\n `secondary` colorStyle\n `disabled` false\n */\n {\n colorStyle: 'secondary',\n disabled: false,\n className: 'focus:outline-navy-50'\n },\n /*\n Added `focus:outline` classes for those with\n `success` colorStyle\n `disabled` false\n */\n {\n colorStyle: 'success',\n disabled: false,\n className: 'focus:outline-green-300'\n },\n /*\n Added `focus:outline` classes for those with\n `error` colorStyle\n `disabled` false\n */\n {\n colorStyle: 'error',\n disabled: false,\n className: 'focus:outline-red-300'\n },\n /*\n Added `focus:outline` classes for those with\n `neutral` colorStyle\n `disabled` false\n */\n {\n colorStyle: 'neutral',\n disabled: false,\n className: 'focus:outline-gray-300'\n },\n /*\n Added `focus:outline` classes for those with\n `analytics` colorStyle\n `disabled` false\n */\n {\n colorStyle: 'analytics',\n disabled: false,\n className: 'focus:outline-analytics-light'\n },\n /*\n Added `focus:outline` classes for those with\n `pages` colorStyle\n `disabled` false\n */\n {\n colorStyle: 'pages',\n disabled: false,\n className: 'focus:outline-pages-light'\n },\n /*\n Added `focus:outline` classes for those with\n `teams` colorStyle\n `disabled` false\n */\n {\n colorStyle: 'teams',\n disabled: false,\n className: 'focus:outline-teams-light'\n },\n /*\n Added `focus:outline` classes for those with\n `sign` colorStyle\n `disabled` false\n */\n {\n colorStyle: 'sign',\n disabled: false,\n className: 'focus:outline-sign-light'\n },\n /*\n Added `focus:outline` classes for those with\n `pdf` colorStyle\n `disabled` false\n */\n {\n colorStyle: 'pdf',\n disabled: false,\n className: 'focus:outline-pdf-light'\n },\n /*\n Added `focus:outline` classes for those with\n `apps` colorStyle\n `disabled` false\n */\n {\n colorStyle: 'apps',\n disabled: false,\n className: 'focus:outline-apps-light'\n },\n /*\n Added `focus:outline` classes for those with\n `reports` colorStyle\n `disabled` false\n */\n {\n colorStyle: 'reports',\n disabled: false,\n className: 'focus:outline-reports-light'\n },\n /*\n Added `focus:outline` classes for those with\n `forms` colorStyle\n `disabled` false\n */\n {\n colorStyle: 'forms',\n disabled: false,\n className: 'focus:outline-forms-light'\n },\n /*\n Added `focus:outline` classes for those with\n `tables` colorStyle\n `disabled` false\n */\n {\n colorStyle: 'tables',\n disabled: false,\n className: 'focus:outline-tables-light'\n },\n /*\n Added `focus:outline` classes for those with\n `inbox` colorStyle\n `disabled` false\n */\n {\n colorStyle: 'inbox',\n disabled: false,\n className: 'focus:outline-inbox-light'\n },\n /*\n Added `focus:outline` classes for those with\n `approvals` colorStyle\n `disabled` false\n */\n {\n colorStyle: 'approvals',\n disabled: false,\n className: 'focus:outline-approvals-light'\n },\n // Icon gaps\n // XS\n {\n showTextOnly: 'xs',\n hasDoubleIcon: true,\n size: 'small',\n hasChildren: true,\n className: 'gap-1 xs:gap-0'\n },\n {\n showTextOnly: 'xs',\n hasDoubleIcon: true,\n size: 'medium',\n hasChildren: true,\n className: 'gap-2 xs:gap-0'\n },\n {\n showTextOnly: 'xs',\n hasDoubleIcon: true,\n size: 'large',\n hasChildren: true,\n className: 'gap-3 xs:gap-0'\n },\n // SM\n {\n showTextOnly: 'sm',\n hasDoubleIcon: true,\n size: 'small',\n hasChildren: true,\n className: 'gap-1 sm:gap-0'\n },\n {\n showTextOnly: 'sm',\n hasDoubleIcon: true,\n size: 'medium',\n hasChildren: true,\n className: 'gap-2 sm:gap-0'\n },\n {\n showTextOnly: 'sm',\n hasDoubleIcon: true,\n size: 'large',\n hasChildren: true,\n className: 'gap-3 sm:gap-0'\n },\n // MD\n {\n showTextOnly: 'md',\n hasDoubleIcon: true,\n size: 'small',\n className: 'gap-1 md:gap-0'\n },\n {\n showTextOnly: 'md',\n hasDoubleIcon: true,\n size: 'medium',\n className: 'gap-2 md:gap-0'\n },\n {\n showTextOnly: 'md',\n hasDoubleIcon: true,\n size: 'large',\n className: 'gap-3 md:gap-0'\n },\n // LG\n {\n showTextOnly: 'lg',\n hasDoubleIcon: true,\n size: 'small',\n className: 'gap-1 lg:gap-0'\n },\n {\n showTextOnly: 'lg',\n hasDoubleIcon: true,\n size: 'medium',\n className: 'gap-2 lg:gap-0'\n },\n {\n showTextOnly: 'lg',\n hasDoubleIcon: true,\n size: 'large',\n className: 'gap-3 lg:gap-0'\n },\n // XL\n {\n showTextOnly: 'xl',\n hasDoubleIcon: true,\n size: 'small',\n className: 'gap-1 xl:gap-0'\n },\n {\n showTextOnly: 'xl',\n hasDoubleIcon: true,\n size: 'medium',\n className: 'gap-2 xl:gap-0'\n },\n {\n showTextOnly: 'xl',\n hasDoubleIcon: true,\n size: 'large',\n className: 'gap-3 xl:gap-0'\n },\n // XXL\n {\n showTextOnly: 'xxl',\n hasDoubleIcon: true,\n size: 'small',\n className: 'gap-1 xxl:gap-0'\n },\n {\n showTextOnly: 'xxl',\n hasDoubleIcon: true,\n size: 'medium',\n className: 'gap-2 xxl:gap-0'\n },\n {\n showTextOnly: 'xxl',\n hasDoubleIcon: true,\n size: 'large',\n className: 'gap-3 xxl:gap-0'\n },\n {\n size: 'small',\n hasOneIcon: false,\n hasDoubleIcon: true,\n hasChildren: false,\n className: 'gap-1'\n },\n {\n size: 'medium',\n hasOneIcon: false,\n hasDoubleIcon: true,\n hasChildren: false,\n className: 'gap-2'\n },\n {\n size: 'large',\n hasOneIcon: false,\n hasDoubleIcon: true,\n hasChildren: false,\n className: 'gap-3'\n }\n ]\n});\n\nexport const buttonTextCVA = cva('', {\n variants: {\n size: {\n small: 'px-1 text-sm',\n medium: 'px-2 text-sm',\n large: 'px-3 text-lg'\n },\n showTextOnHover: {\n true: 'hiddenjf group-hover:block whitespace-nowrap'\n },\n showTextOnly: {\n xs: 'xs:inline',\n sm: 'sm:inline',\n md: 'md:inline',\n lg: 'lg:inline',\n xl: 'xl:inline',\n xxl: 'xxl:inline'\n },\n loader: {},\n hasLoaderText: {},\n hasChildren: {}\n },\n compoundVariants: [\n {\n showTextOnly: ['xs', 'sm', 'md', 'lg', 'xl', 'xxl'],\n className: 'hiddenjf'\n },\n {\n loader: true,\n hasLoaderText: false,\n hasChildren: true,\n className: 'opacity-0'\n }\n ]\n});\n\nexport const buttonIconCVA = cva('magnet-button-icon shrink-0', {\n variants: {\n size: {\n small: 'w-4 h-4',\n medium: 'w-5 h-5',\n large: 'w-6 h-6'\n },\n loader: {},\n hasLoaderText: {}\n },\n compoundVariants: [\n {\n loader: true,\n hasLoaderText: false,\n className: 'opacity-0'\n },\n {\n loader: true,\n hasLoaderText: true,\n className: 'hiddenjf'\n }\n ]\n});\n\nexport const buttonIndicatorCVA = cva('shrink-0', {\n variants: {\n loader: {},\n colorStyle: {}\n },\n compoundVariants: [\n {\n colorStyle: undefined,\n className: 'color-navy-300'\n },\n {\n loader: true,\n className: 'opacity-0'\n }\n ]\n});\n","import { ComponentPropsWithoutRef, ElementType, ReactElement } from 'react';\nimport { PolymorphicProps } from '../../types/system.types';\nimport {\n Breakpoint, ColorStyle, Icon, ProductName, Size\n} from '../../constants/common.types';\n\nexport type AcceptableButtonTypes = 'button' | 'a';\n\nexport const defaultButtonType:AcceptableButtonTypes = 'button';\n\nexport type ButtonProps = {\n endIcon?: Icon,\n href?: string\n loaderText?: string,\n indicatorText?: string\n startIcon?: Icon,\n type?: 'submit' | 'button' | 'reset',\n colorStyle?: ColorStyle | ProductName | 'secondary' | 'neutral',\n disabled?: boolean,\n fullWidth?: boolean,\n loader?: boolean,\n rounded?: boolean,\n showTextOnHover?: boolean,\n showTextOnly?: Breakpoint | null,\n size?: Size,\n variant?: 'filled' | 'outline' | 'ghost'\n}\n\nexport type ButtonTextProps = Pick & {\n hasLoaderText?: boolean,\n hasChildren?: boolean\n}\n\nexport type ButtonIconProps = Pick & {\n icon: ElementType,\n hasLoaderText?: boolean\n}\n\nexport type ButtonIndicatorProps = Pick\n\nexport type ButtonComponentType = (\n props: PolymorphicProps & { ref?: ComponentPropsWithoutRef['ref'] }\n) => ReactElement | null\n\nexport const buttonDefaultProps:Partial = {\n colorStyle: 'primary',\n disabled: false,\n fullWidth: false,\n loader: false,\n rounded: false,\n showTextOnHover: false,\n showTextOnly: null,\n size: 'medium',\n type: 'button',\n variant: 'filled'\n};\n","import React, { PropsWithChildren } from 'react';\nimport { cx } from 'class-variance-authority';\nimport { Indicator } from '../Indicator';\nimport { ButtonTextProps, ButtonIconProps, ButtonIndicatorProps } from './button.types';\nimport { buttonTextCVA, buttonIconCVA, buttonIndicatorCVA } from './button.cva';\n\nexport const ButtonText = (props: PropsWithChildren): JSX.Element => {\n const {\n size, showTextOnHover, showTextOnly, loader, hasLoaderText, hasChildren, children\n } = props;\n\n return (\n \n {children}\n \n );\n};\n\nexport const ButtonIcon = (props: ButtonIconProps): JSX.Element => {\n const {\n size, hasLoaderText, loader, icon: Icon\n } = props;\n\n return ;\n};\n\nexport const ButtonIndicator = (props: ButtonIndicatorProps): JSX.Element => {\n const {\n size, loader, indicatorText, colorStyle, variant\n } = props;\n\n // If color style is not `primary`, `success`, `error`, pill's color always should be `null`\n const indicatorColorStyle = (colorStyle === 'primary' || colorStyle === 'success' || colorStyle === 'error' || colorStyle === 'secondary') ? colorStyle : undefined;\n\n const indicatorVariant = variant === 'filled';\n\n return (\n \n {indicatorText}\n \n );\n};\n","import { cva } from 'class-variance-authority';\nimport { primary } from '../../tokens/colors';\nimport { CVAType } from '../../types/system.types';\nimport { LoaderProps } from './loader.types';\n\n// CVA Types\ntype LoaderCVAType = CVAType>;\ntype LoaderElementsCVAType = CVAType>;\n\n// Classes\nexport const loaderCVA = cva(\n 'magnet-loader relative', {\n variants: {\n size: {\n small: 'w-4 h-4',\n medium: 'w-5 h-5',\n large: 'w-6 h-6'\n },\n theme: {}\n }\n }\n);\n\nexport const loaderTrackCVA = cva('opacity-20 absolute inset-px radius-full border-2', {\n variants: {\n theme: {\n current: 'border-current',\n dark: primary.border.darkest.base,\n light: 'border-white'\n }\n }\n});\n\nexport const loaderSpinnerCVA = cva(\n 'absolute inset-px radius-full border-2 border-t-transparent border-b-transparent border-l-transparent anim anim-700 spin-loader timing-linear', {\n variants: {\n theme: {\n current: 'border-r-current',\n dark: 'border-r-navy-700',\n light: 'border-r-white'\n }\n }\n }\n);\n","import { ComponentPropsWithoutRef } from 'react';\nimport { Size, Theme } from '../../constants/common.types';\n\nexport type LoaderProps = ComponentPropsWithoutRef<'div'> & {\n size?: Size,\n theme?: Theme | 'current'\n}\n\nexport const loaderDefaultProps:Partial = {\n size: 'medium',\n theme: 'current'\n};\n","import React from 'react';\nimport { cx } from 'class-variance-authority';\n\nimport '@jotforminc/jotform.css';\n// eslint-disable-next-line no-restricted-imports\nimport '@jotforminc/jotform.css/animation.css';\n\nimport { loaderCVA, loaderSpinnerCVA, loaderTrackCVA } from './loader.cva';\nimport { LoaderProps, loaderDefaultProps } from './loader.types';\n\nexport const Loader = (props: LoaderProps):JSX.Element => {\n const {\n className, size, theme, ...rest\n } = { ...loaderDefaultProps, ...props };\n\n const loaderClassName = cx(className, loaderCVA({\n size,\n theme\n }));\n\n return (\n
    \n \n
    \n
    \n );\n};\n","import React, { ComponentPropsWithRef, ElementType, forwardRef } from 'react';\nimport { cx } from 'class-variance-authority';\n\nimport '@jotforminc/jotform.css';\nimport { buttonCVA } from './button.cva';\nimport {\n ButtonComponentType, ButtonProps, buttonDefaultProps\n} from './button.types';\n\nimport { ButtonIcon, ButtonIndicator, ButtonText } from './ButtonContent';\nimport { Loader } from '../Loader/Loader';\n\nimport { PolymorphicProps } from '../../types/system.types';\nimport { PRODUCT_NAME_VALUES } from '../../constants/common.values';\n\nexport const Button:ButtonComponentType = forwardRef(\n // eslint-disable-next-line complexity\n (\n props: PolymorphicProps,\n ref?: ComponentPropsWithRef['ref']\n ): JSX.Element => {\n const {\n children,\n className,\n colorStyle = buttonDefaultProps.colorStyle,\n disabled = buttonDefaultProps.disabled,\n endIcon: EndIcon,\n fullWidth = buttonDefaultProps.fullWidth,\n href,\n loader = buttonDefaultProps.loader,\n loaderText,\n indicatorText,\n rounded = buttonDefaultProps.rounded,\n showTextOnHover = buttonDefaultProps.showTextOnHover,\n size = buttonDefaultProps.size,\n startIcon: StartIcon,\n showTextOnly = buttonDefaultProps.showTextOnly,\n type = buttonDefaultProps.type,\n variant = buttonDefaultProps.variant,\n as: Component = href ? 'a' : 'button',\n ...rest\n } = props;\n\n const hasOneIcon = !!((StartIcon && !EndIcon) || (!StartIcon && EndIcon));\n const hasDoubleIcon = !!(StartIcon && EndIcon);\n const hasIndicator = !!indicatorText;\n\n const hasChildren = !!children;\n const hasLoaderText = !!loaderText;\n const isProductButton = colorStyle ? (PRODUCT_NAME_VALUES as ReadonlyArray).includes(colorStyle) : false;\n\n // If color style is a product color, its variant always should be `filled`\n const buttonVariant = isProductButton ? 'filled' : variant;\n\n // The `loader` state should work only if it is not `disabled`.\n const buttonLoader = !disabled ? loader : false;\n\n // Update button text according the loader state\n const buttonText = hasLoaderText && buttonLoader ? loaderText : children;\n\n // Check button text\n const hasText = hasChildren || (hasLoaderText && buttonLoader);\n\n // Button class list\n const buttonClassName = cx(className, buttonCVA({\n size,\n colorStyle,\n variant: buttonVariant,\n fullWidth,\n loader: buttonLoader,\n disabled,\n rounded,\n showTextOnHover,\n showTextOnly,\n hasLoaderText,\n hasDoubleIcon,\n hasOneIcon,\n hasChildren\n }));\n\n // Loader content\n const loaderComponent = ;\n const loaderContent = hasLoaderText ? loaderComponent : {loaderComponent};\n\n // Button content\n const buttonContent = (\n <>\n {StartIcon && (\n \n )}\n {buttonLoader && loaderContent}\n {hasText && (\n \n {buttonText}\n \n )}\n {hasIndicator && !hasLoaderText && (\n \n )}\n {EndIcon && !hasIndicator && (\n \n )}\n \n );\n\n return (\n \n {buttonContent}\n \n );\n }\n);\n","\n \n\n","import { cva } from 'class-variance-authority';\nimport { primary, secondary } from '../../tokens/colors';\nimport { CVAType } from '../../types/system.types';\nimport { CheckboxProps } from './checkbox.types';\n\n// CVA Types\ntype CheckboxCVAType = CVAType>\ntype CheckboxWrapperCVAType = CVAType>\ntype CheckboxIconCVAType = CVAType>\n\n// Common classes\nconst checkboxSizes = {\n small: 'w-4 h-4',\n medium: 'w-5 h-5',\n large: 'w-6 h-6'\n};\n\n// Classes\nexport const checkboxCVA = cva(\n 'appearance-none border-2 radius inline-flex shrink-0 focus:outline-2 outline-offset-0 m-0', {\n variants: {\n size: checkboxSizes,\n disabled: {\n true: 'cursor-not-allowed',\n false: 'cursor-pointer'\n },\n checked: {},\n indeterminate: {},\n theme: {},\n error: {\n false: primary.accent.default.border.focus\n }\n },\n compoundVariants: [\n // Dark\n {\n theme: 'dark',\n error: false,\n className: 'outline-blue-600 outline-opacity-50'\n },\n {\n theme: 'dark',\n error: true,\n checked: true,\n className: 'outline-blue-600 outline-opacity-50'\n },\n {\n theme: 'dark',\n checked: false,\n disabled: false,\n error: false,\n indeterminate: false,\n className: [\n secondary.background.dark.base,\n secondary.border.medium.base,\n primary.accent.default.border.hover\n ]\n },\n {\n theme: 'dark',\n checked: true,\n disabled: true,\n indeterminate: false,\n className: [secondary.background.light.base, secondary.border.medium.base]\n },\n {\n theme: 'dark',\n indeterminate: true,\n checked: false,\n disabled: true,\n className: [secondary.background.light.base, secondary.border.medium.base]\n },\n {\n theme: 'dark',\n checked: false,\n disabled: true,\n indeterminate: false,\n className: [secondary.background.medium.base, secondary.border.medium.base]\n },\n // Light\n {\n theme: 'light',\n error: false,\n className: 'focus:outline-blue-200'\n },\n {\n theme: 'light',\n error: true,\n checked: true,\n className: 'focus:outline-blue-200'\n },\n {\n theme: 'light',\n checked: false,\n disabled: false,\n indeterminate: false,\n error: false,\n className: [primary.border.medium.base, primary.accent.default.border.hover, 'bg-white']\n },\n {\n theme: 'light',\n checked: true,\n disabled: true,\n className: 'bg-navy-50 border-navy-50'\n },\n {\n theme: 'light',\n indeterminate: true,\n checked: false,\n disabled: true,\n className: 'bg-navy-50 border-navy-50'\n },\n {\n theme: 'light',\n checked: false,\n disabled: true,\n className: 'border-navy-50'\n },\n // Dark & Light\n {\n theme: ['dark', 'light'],\n checked: false,\n error: false,\n className: [primary.accent.default.border.focus]\n },\n {\n theme: ['dark', 'light'],\n checked: true,\n disabled: false,\n indeterminate: false,\n className: [\n primary.accent.default.bg.base,\n primary.accent.default.border.base,\n primary.accent.dark.bg.hover,\n primary.accent.dark.border.hover\n ]\n },\n {\n theme: ['dark', 'light'],\n checked: false,\n indeterminate: true,\n disabled: false,\n className: [\n primary.accent.default.bg.base,\n primary.accent.default.border.base,\n primary.accent.dark.bg.hover,\n primary.accent.dark.border.hover\n ]\n },\n {\n theme: ['dark', 'light'],\n checked: false,\n indeterminate: false,\n disabled: false,\n error: true,\n className: [\n primary.error.default.border.base,\n primary.error.dark.border.hover\n ]\n },\n {\n theme: 'light',\n checked: false,\n indeterminate: false,\n disabled: false,\n error: true,\n className: 'focus:outline-red-200 focus:outline-opacity-50'\n },\n {\n theme: 'dark',\n checked: false,\n indeterminate: false,\n error: true,\n disabled: false,\n className: [secondary.background.dark.base, 'focus:outline-red-400 focus:outline-opacity-50']\n }\n ]\n }\n);\n\nexport const checkboxWrapperCVA = cva('inline-flex shrink-0 relative', {\n variants: {\n size: checkboxSizes\n }\n});\n\nexport const checkboxIconCVA = cva('absolute inset-0 w-full h-full pointer-events-none', {\n variants: {\n disabled: {\n false: 'color-white'\n },\n theme: {}\n },\n compoundVariants: [\n {\n theme: 'dark',\n disabled: true,\n className: 'color-gray-600'\n },\n {\n theme: 'light',\n disabled: true,\n className: primary.text.light.base\n }\n ]\n});\n","import { ChoiceTruncate, Size, Theme } from '../../constants/common.types';\nimport { commonInputDefaults } from '../../contexts';\nimport { NativePropsWithoutRef } from '../../types/system.types';\n\nexport type CheckboxBaseProps = {\n label?: string,\n description?: string\n htmlSize?: number,\n truncate?: ChoiceTruncate,\n size?: Size,\n indeterminate?: boolean,\n theme?: Theme,\n error?: boolean,\n in?: 'dropdown'\n}\n\nexport type CheckboxProps = NativePropsWithoutRef<'input', CheckboxBaseProps> & CheckboxBaseProps;\n\nexport const checkboxDefaultProps:Partial = {\n size: commonInputDefaults.size,\n theme: commonInputDefaults.theme\n};\n","import { VariantProps, cva } from 'class-variance-authority';\nimport { primary, secondary } from '../../tokens/colors';\nimport { CVAType } from '../../types';\nimport { ChoiceLabelProps } from './choice-label.types';\n\nexport type ChoiceLabelVariantProps = VariantProps\n\ntype ChoiceLabelCVAType = CVAType>\ntype ChoiceLabelContainerCVAType = CVAType>\ntype ChoiceLabelTextCVAType = CVAType & { hasDescription?: boolean }>\ntype ChoiceLabelDescCVAType = CVAType>\n\n// Variance values\nexport const choiceLabelCVA = cva('flex', {\n variants: {\n size: {\n small: 'gap-2',\n medium: 'gap-3',\n large: 'gap-3'\n },\n disabled: {},\n theme: {},\n truncate: {}\n },\n compoundVariants: [\n {\n truncate: ['both', 'description', 'label'],\n className: 'max-w-full'\n }\n ]\n});\n\nexport const choiceLabelContainerCVA = cva('', {\n variants: {\n size: {\n small: '-mt-px',\n large: 'mt-0.5'\n },\n truncate: {}\n },\n compoundVariants: [\n {\n truncate: ['both', 'description', 'label'],\n className: 'overflow-hidden'\n }\n ]\n});\n\nexport const choiceLabelTextCVA = cva('', {\n variants: {\n size: {\n small: 'text-sm',\n medium: 'text-md',\n large: 'text-md'\n },\n hasDescription: {\n true: 'font-bold'\n },\n theme: {},\n disabled: {},\n truncate: {}\n },\n compoundVariants: [\n {\n size: ['small', 'medium', 'large'],\n className: 'block'\n },\n {\n theme: 'light',\n disabled: false,\n className: primary.text.darkest.base\n },\n {\n theme: 'light',\n disabled: true,\n className: 'color-navy-100'\n },\n {\n theme: 'dark',\n disabled: false,\n className: 'color-white'\n },\n {\n theme: 'dark',\n disabled: true,\n className: 'color-gray-400'\n },\n {\n truncate: ['both', 'label'],\n className: 'truncate'\n }\n ]\n});\n\nexport const choiceLabelDescriptionCVA = cva('block', {\n variants: {\n size: {\n small: 'text-xs',\n medium: 'text-sm',\n large: 'text-sm'\n },\n theme: {},\n disabled: {},\n truncate: {}\n },\n compoundVariants: [\n {\n theme: 'light',\n disabled: false,\n className: primary.text.medium.base\n },\n {\n theme: 'light',\n disabled: true,\n className: 'color-navy-100'\n },\n {\n theme: 'dark',\n disabled: false,\n className: secondary.text.light.base\n },\n {\n theme: 'dark',\n disabled: true,\n className: 'color-gray-400'\n },\n {\n truncate: ['both', 'description'],\n className: 'truncate'\n }\n ]\n});\n","import React from 'react';\n\nimport { cx } from 'class-variance-authority';\n\nimport { ChoiceLabelProps, choiceLabelDefaultProps } from './choice-label.types';\nimport {\n choiceLabelCVA, choiceLabelContainerCVA, choiceLabelDescriptionCVA, choiceLabelTextCVA\n} from './choice-label.cva';\n\nexport const ChoiceLabel = (props: ChoiceLabelProps):JSX.Element => {\n const {\n className, description, disabled, id, input, label, size, theme, truncate\n } = props;\n const hasDescription = description.length > 0;\n const hasLabel = label.length > 0;\n\n return (\n
    \n \n );\n};\n\nChoiceLabel.defaultProps = choiceLabelDefaultProps;\n","import { ComponentPropsWithoutRef } from 'react';\nimport { ChoiceTruncate, Size, Theme } from '../../constants/common.types';\n\nexport type ChoiceLabelBaseProps = {\n className?: string,\n description: string,\n id: string,\n input: ComponentPropsWithoutRef<'input'>,\n label: string,\n truncate?: ChoiceTruncate,\n disabled?: boolean,\n theme?: Theme,\n size?: Size\n}\n\nexport type ChoiceLabelProps = ChoiceLabelBaseProps;\n\nexport const choiceLabelDefaultProps:Partial = {\n description: '',\n label: '',\n disabled: false,\n size: 'medium',\n theme: 'light'\n};\n","import React, { ComponentPropsWithRef, forwardRef } from 'react';\nimport { cx } from 'class-variance-authority';\nimport { IconCheck, IconMinus } from '@jotforminc/svg-icons';\n\nimport '@jotforminc/jotform.css';\n\nimport { checkboxCVA, checkboxIconCVA, checkboxWrapperCVA } from './checkbox.cva';\nimport { CheckboxProps, checkboxDefaultProps } from './checkbox.types';\n\nimport { ChoiceLabel } from '../../shared/ChoiceLabel/ChoiceLabel';\nimport { useFormControl } from '../../contexts';\n\nexport const Checkbox = forwardRef((\n props: CheckboxProps,\n ref?: ComponentPropsWithRef<'input'>['ref']\n): JSX.Element => {\n const {\n description,\n label,\n htmlSize,\n theme,\n disabled,\n indeterminate,\n checked,\n size,\n error,\n className,\n id,\n truncate,\n ...rest\n } = useFormControl(props, ['theme', 'size']);\n\n const hasLabel = label && label.length > 0;\n const hasDescription = description && description.length > 0;\n const wrapperClass = cx(!hasLabel && !hasDescription ? className : null, checkboxWrapperCVA({ size }));\n\n const checkIcon = (\n \n \n {checked && }\n {indeterminate && }\n \n );\n\n return (\n (hasLabel || hasDescription) ? (\n \n ) : checkIcon\n );\n});\n\nCheckbox.defaultProps = checkboxDefaultProps;\n","import { cva } from 'class-variance-authority';\nimport { primary } from '../../tokens/colors';\nimport { CVAType } from '../../types/system.types';\nimport { IndicatorProps } from './indicator.types';\n\n// // CVA Types\ntype IndicatorCVAType = CVAType & { hasChildren?: boolean }>\n\n// Classes\nexport const indicatorCVA = cva(\n 'magnet-pill inline-flex radius-full', {\n variants: {\n size: {},\n colorStyle: {},\n hasChildren: {\n true: 'justify-center items-center font-bold'\n },\n invert: {\n true: 'bg-white'\n }\n },\n compoundVariants: [\n /*\n Added width & height classes for sizes if component has children\n */\n {\n hasChildren: false,\n size: 'small',\n class: 'w-2 h-2'\n },\n {\n hasChildren: false,\n size: 'medium',\n class: 'w-2.5 h-2.5'\n },\n {\n hasChildren: false,\n size: 'large',\n class: 'w-3 h-3'\n },\n /*\n Added width, height, padding, text classes for sizes if component has no children\n */\n {\n hasChildren: true,\n size: 'small',\n class: 'min-w-4 h-4 px-1 text-xxs'\n },\n {\n hasChildren: true,\n size: 'medium',\n class: 'min-w-5 h-5 px-1.5 text-xs'\n },\n {\n hasChildren: true,\n size: 'large',\n class: 'min-w-6 h-6 px-2 text-sm'\n },\n /*\n Added color classes for all colorStyles for those with\n `invert` false & `hasChildren` true\n */\n {\n colorStyle: ['primary', 'success', 'error'],\n invert: false,\n hasChildren: true,\n class: 'color-white'\n },\n {\n colorStyle: 'secondary',\n hasChildren: true,\n class: primary.text.darkest.base\n },\n /*\n Added bg classes for each colorStyles for those with\n `current` false\n */\n {\n colorStyle: 'primary',\n invert: false,\n class: primary.accent.default.bg.base\n },\n {\n colorStyle: 'secondary',\n invert: false,\n class: primary.background.light.base\n },\n {\n colorStyle: 'success',\n invert: false,\n class: primary.success.default.bg.base\n },\n {\n colorStyle: 'error',\n invert: false,\n class: primary.error.default.bg.base\n },\n /*\n Added color classes for each colorStyles for those with\n `invert` true (mostly for usage with button)\n */\n {\n colorStyle: 'primary',\n invert: true,\n class: primary.accent.default.color.base\n },\n {\n colorStyle: 'secondary',\n invert: true,\n class: primary.text.dark.base\n },\n {\n colorStyle: 'success',\n invert: true,\n class: primary.success.default.color.base\n },\n {\n colorStyle: 'error',\n invert: true,\n class: primary.error.default.color.base\n }\n ]\n }\n);\n","import React from 'react';\nimport { cx } from 'class-variance-authority';\n\nimport '@jotforminc/jotform.css';\n// eslint-disable-next-line no-restricted-imports\nimport '@jotforminc/jotform.css/animation.css';\n\nimport { indicatorCVA } from './indicator.cva';\nimport { IndicatorProps, indicatorDefaultProps } from './indicator.types';\n\nexport const Indicator = (props: IndicatorProps):JSX.Element => {\n const {\n className, children, colorStyle, invert, size, ...rest\n } = props;\n\n const hasChildren = !!children;\n\n const indicatorClassName = cx(className, indicatorCVA({\n colorStyle,\n hasChildren,\n invert,\n size\n }));\n\n return (\n \n {children}\n \n );\n};\n\nIndicator.defaultProps = indicatorDefaultProps;\n","import { ComponentPropsWithoutRef } from 'react';\nimport { ColorStyle, Size } from '../../constants/common.types';\n\nexport type IndicatorProps = ComponentPropsWithoutRef<'span'> & {\n size?: Size,\n colorStyle?: ColorStyle | 'secondary',\n invert?: boolean\n}\n\nexport const indicatorDefaultProps:Partial = {\n invert: false,\n size: 'medium',\n colorStyle: 'primary'\n};\n","import { cva } from 'class-variance-authority';\nimport { CVAType } from '../../types/system.types';\nimport { primary, secondary } from '../../tokens/colors';\nimport { BaseInputAddonProps, BaseInputProps } from './input.types';\n\ntype BaseInputHelperTypes = {\n hasPlaceholder: boolean,\n hasChildren: boolean\n}\n\n// CVA Types\ntype BaseInputCVAType = CVAType & BaseInputHelperTypes>\ntype BaseInputContainerCVAType = CVAType>\ntype BaseInputAddonTextCVAType = CVAType>\ntype BaseInputAddonIconCVAType = CVAType>\ntype InputSpinButtonCVAType = CVAType>\n\n// Classes\nexport const baseInputContainerCVA = cva('', {\n variants: {\n size: {},\n expand: {},\n disabled: {},\n readOnly: {},\n as: {\n input: 'magnet-input-container',\n dropdown: 'magnet-dropdown items-center'\n }\n },\n compoundVariants: [\n {\n expand: false,\n size: 'small',\n className: 'h-8'\n },\n {\n expand: false,\n size: 'medium',\n className: 'h-10'\n },\n {\n expand: false,\n size: 'large',\n className: 'h-12'\n },\n {\n expand: true,\n size: 'small',\n className: 'min-h-8 py-1'\n },\n {\n expand: true,\n size: 'medium',\n className: 'min-h-10 py-1'\n },\n {\n expand: true,\n size: 'large',\n className: 'min-h-12 py-1.5'\n },\n {\n disabled: true,\n as: 'dropdown',\n className: 'cursor-not-allowed'\n },\n {\n disabled: false,\n readOnly: false,\n as: 'dropdown',\n className: 'cursor-pointer'\n }\n ]\n});\n\nexport const baseInputCVA = cva('', {\n variants: {\n size: {\n small: 'px-2',\n medium: 'px-3',\n large: 'px-3'\n },\n as: {\n input: 'magnet-input h-full color-current',\n dropdown: 'truncate'\n },\n hasPlaceholder: {},\n hasChildren: {},\n theme: {}\n },\n compoundVariants: [\n {\n hasPlaceholder: true,\n hasChildren: false,\n as: 'dropdown',\n theme: 'light',\n className: 'color-navy-200'\n },\n {\n hasPlaceholder: true,\n hasChildren: false,\n as: 'dropdown',\n theme: 'dark',\n className: secondary.text.light.base\n }\n ]\n});\n\nexport const baseInputAddon = {\n textCVA: cva('flex shrink-0 items-center', {\n variants: {\n size: {\n small: 'gap-2 text-sm',\n medium: 'gap-3 text-sm',\n large: 'gap-3 text-md'\n },\n theme: {},\n readOnly: {},\n disabled: {},\n direction: {},\n variant: {},\n useInputColor: {}\n },\n compoundVariants: [\n {\n direction: 'start',\n className: 'radius-l'\n },\n {\n direction: 'end',\n className: 'radius-r'\n },\n {\n useInputColor: false,\n theme: 'light',\n className: primary.text.medium.base\n },\n {\n useInputColor: false,\n theme: 'dark',\n className: 'color-gray-200'\n },\n {\n direction: 'start',\n variant: 'ghost',\n size: 'small',\n className: 'pl-2'\n },\n {\n direction: 'start',\n variant: 'ghost',\n size: ['medium', 'large'],\n className: 'pl-3'\n },\n {\n direction: 'end',\n variant: 'ghost',\n size: 'small',\n className: 'pr-2'\n },\n {\n direction: 'end',\n variant: 'ghost',\n size: ['medium', 'large'],\n className: 'pr-3'\n },\n {\n variant: 'filled',\n size: 'small',\n className: 'px-2'\n },\n {\n variant: 'filled',\n size: ['medium', 'large'],\n className: 'px-3'\n },\n {\n variant: 'filled',\n readOnly: false,\n disabled: false,\n theme: 'light',\n className: 'bg-navy-25'\n },\n {\n variant: 'filled',\n readOnly: true,\n disabled: false,\n theme: 'light',\n className: 'bg-navy-50'\n },\n {\n variant: 'filled',\n readOnly: false,\n disabled: true,\n theme: 'light',\n className: 'bg-navy-100'\n },\n {\n variant: 'filled',\n theme: 'dark',\n className: 'bg-gray-400 bg-opacity-50'\n }\n ]\n }),\n iconCVA: cva('shrink-0', {\n variants: {\n size: {\n small: 'w-4',\n medium: 'w-5',\n large: 'w-6'\n }\n }\n })\n};\n\nexport const numberSpinButtonCVA = cva('flex shrink-0 grow-1 justify-center items-center', {\n variants: {\n theme: {},\n readOnly: {},\n disabled: {}\n },\n compoundVariants: [\n {\n theme: 'light',\n disabled: false,\n readOnly: false,\n className: [primary.text.dark.base, 'bg-navy-10']\n },\n {\n theme: 'light',\n readOnly: true,\n disabled: false,\n className: 'color-navy-200 bg-navy-75'\n },\n {\n theme: 'light',\n readOnly: false,\n disabled: true,\n className: 'color-navy-200 bg-navy-75'\n },\n {\n theme: 'dark',\n className: 'bg-gray-400'\n },\n {\n theme: 'dark',\n readOnly: true,\n className: 'color-gray-300'\n },\n {\n theme: 'dark',\n disabled: true,\n className: 'color-gray-300'\n }\n ]\n});\n","import React, { ComponentPropsWithRef, ElementType, forwardRef } from 'react';\nimport { cx } from 'class-variance-authority';\nimport {\n BaseInputAddonComponentType,\n BaseInputAddonProps, BaseInputProps, baseInputDefaultProps, inputAddonDefaultProps\n} from './input.types';\nimport { baseInputAddon, baseInputContainerCVA, baseInputCVA } from './input.cva';\nimport { PolymorphicProps } from '../../types';\n\nimport '@jotforminc/jotform.css';\nimport { commonFormControlCVA } from '../../constants/common.cva';\n\nexport const BaseInput = forwardRef((\n props: BaseInputProps,\n ref?: ComponentPropsWithRef<'input'>['ref']\n):JSX.Element => {\n const {\n colorStyle,\n size,\n disabled,\n theme,\n readOnly,\n htmlSize,\n id,\n className,\n addonStart,\n addonEnd,\n required,\n ghost,\n as = 'input',\n expand = false,\n value,\n children,\n placeholder,\n ...rest\n } = props;\n\n const handleFocus = (e: React.MouseEvent) => {\n const element = e.target as HTMLElement;\n if (element.tagName === 'BUTTON' || element.tagName === 'LABEL' || element.tagName === 'INPUT') return;\n\n const input = e?.currentTarget?.getElementsByTagName('input')[0];\n input?.focus();\n };\n\n const readOnlyVariant = readOnly && !disabled;\n\n const baseInputContainerClassName = cx(\n className,\n commonFormControlCVA.container({\n colorStyle,\n readOnly: readOnlyVariant,\n disabled: !!disabled,\n theme,\n ghost: !!ghost\n }),\n baseInputContainerCVA({\n size, as, expand, disabled: !!disabled, readOnly: !!readOnly\n })\n );\n\n const baseInputClassName = cx(\n commonFormControlCVA.input({\n disabled,\n theme,\n size,\n ghost: !!ghost\n }),\n baseInputCVA({\n size,\n as,\n hasPlaceholder: !!placeholder,\n hasChildren: !!children,\n theme\n })\n );\n\n return (\n // eslint-disable-next-line jsx-a11y/click-events-have-key-events\n \n {addonStart}\n {as === 'input'\n && (\n \n )}\n {as === 'dropdown' && {children ?? placeholder}}\n {addonEnd}\n
    \n );\n});\n\nBaseInput.defaultProps = baseInputDefaultProps;\n\nexport const BaseInputAddon:BaseInputAddonComponentType = forwardRef(\n (\n props: PolymorphicProps,\n ref?: ComponentPropsWithRef['ref']\n ):JSX.Element => {\n const {\n size = inputAddonDefaultProps.size,\n theme = inputAddonDefaultProps.theme,\n direction = inputAddonDefaultProps.direction,\n variant = inputAddonDefaultProps.variant,\n disabled = inputAddonDefaultProps.disabled,\n readOnly = inputAddonDefaultProps.readOnly,\n as = 'span',\n useInputColor,\n id,\n icon: Icon,\n text,\n htmlFor,\n ...rest\n } = props;\n\n if (!Icon && !text) return <>;\n\n const addonContainerClassName = cx(baseInputAddon.textCVA({\n size,\n theme,\n direction,\n variant,\n readOnly: !!readOnly,\n disabled: !!disabled,\n useInputColor: !!useInputColor\n }));\n\n const addonIconClassName = baseInputAddon.iconCVA({ size });\n const Component = as;\n\n return (\n \n {direction === 'start'\n && (\n <>\n {Icon && }\n {text && text}\n \n )}\n {direction === 'end'\n && (\n <>\n {text && text}\n {Icon && }\n \n )}\n \n );\n }\n);\n","import React, { ComponentPropsWithRef, forwardRef } from 'react';\nimport { IconLockFilled } from '@jotforminc/svg-icons';\nimport { BaseInput, BaseInputAddon } from './BaseInput';\nimport { InputTextProps, inputTextDefaultProps } from './input.types';\nimport { useFormControl } from '../../contexts';\n\nexport const InputText = forwardRef((\n props: InputTextProps,\n ref?: ComponentPropsWithRef<'input'>['ref']\n):JSX.Element => {\n const {\n id,\n readOnly,\n size,\n disabled,\n theme,\n prefix,\n suffix,\n showLockIconInReadOnly,\n required,\n ...rest\n } = useFormControl(props);\n\n const addonStart = (\n \n );\n\n const addonEnd = (\n \n );\n\n return (\n \n );\n});\n\nInputText.defaultProps = inputTextDefaultProps;\n","import {\n ComponentPropsWithoutRef, ElementType, ReactNode\n} from 'react';\nimport { ForwardedComponentType } from '../../types/system.types';\nimport { FormControlContextType, commonInputDefaults } from '../../contexts';\nimport { BaseInputAddonDirection, BaseInputAddonVariant, Icon } from '../../constants/common.types';\nimport { ColorPickerProps, colorPickerDefaultProps } from '../ColorPicker/color-picker.types';\n\n// BaseInput & BaseInputAddon\nexport type NativeInputTypes = Omit, keyof FormControlContextType | 'prefix'>\nexport type CommonInputProps = FormControlContextType & NativeInputTypes & {\n ghost?: boolean\n};\n\ntype BaseInputOwnProps = {\n htmlSize?: number,\n addonStart?: ReactNode,\n addonEnd?: ReactNode,\n as?: 'input' | 'dropdown',\n expand?: boolean\n}\n\nexport type BaseInputProps = BaseInputOwnProps & CommonInputProps;\n\nexport type BaseInputAddonProps = Partial & {\n icon?: Icon,\n text?: string,\n direction?: BaseInputAddonDirection\n variant?: BaseInputAddonVariant,\n useInputColor?: boolean\n}\n\nexport type BaseInputAddonComponentType = ForwardedComponentType\n\nexport type AppendixType = {\n as?: ElementType\n icon?: Icon,\n text?: string,\n variant?: BaseInputAddonVariant,\n useInputColor?: boolean\n [otherProps: string]: unknown\n}\n\n// InputText\nexport type InputTextProps = CommonInputProps & {\n showLockIconInReadOnly?: boolean\n prefix?: AppendixType\n suffix?: AppendixType\n}\n\n// InputNumber\nexport type InputNumberProps = Omit & {\n step?: number\n}\n\n// InputColor\nexport type InputColorProps = CommonInputProps & {\n pickerOptions?: Pick\n}\n\n// Defaults\nexport const baseInputDefaultProps:Partial = { ...commonInputDefaults, as: 'input' };\n\nconst appendixDefaults:AppendixType = {\n as: 'span',\n icon: undefined,\n text: undefined,\n variant: 'ghost'\n};\n\nexport const inputAddonDefaultProps:Partial = {\n ...commonInputDefaults,\n direction: 'start',\n variant: 'ghost'\n};\n\nexport const inputTextDefaultProps:Partial = {\n ...commonInputDefaults,\n showLockIconInReadOnly: true,\n prefix: appendixDefaults,\n suffix: appendixDefaults\n};\n\nexport const inputNumberDefaultProps:InputNumberProps = {\n ...commonInputDefaults,\n step: 1\n};\n\nconst {\n disableAlpha, presetColors, offset, placement, onSwatchHover\n}:InputColorProps['pickerOptions'] = colorPickerDefaultProps;\n\nexport const inputColorDefaultProps:InputColorProps = {\n ...commonInputDefaults,\n pickerOptions: {\n disableAlpha,\n presetColors,\n offset,\n placement,\n onSwatchHover\n }\n};\n","import { AriaAttributes, MouseEvent } from 'react';\nimport { OffsetOptions, Placement } from '@floating-ui/react';\nimport { SketchPickerProps } from 'react-color';\nimport { Size, Theme } from '../../constants/common.types';\nimport { DataAttrs } from '../../types/system.types';\n\nexport type ColorPickerProps = {\n disabled?: boolean,\n size?: Size,\n rounded?: boolean,\n placement?: Placement,\n offset?: OffsetOptions,\n theme?: Theme,\n onChange?: (color: string) => void,\n color?: string,\n custom?: boolean,\n className?: string\n zIndex?: number,\n onClick?: (e: MouseEvent) => void,\n buttonAttrs?: DataAttrs & AriaAttributes & {\n id: string\n },\n pickerAttrs?: DataAttrs & AriaAttributes & {\n id?: string\n }\n} & Pick\n\nexport const colorPickerDefaultProps:Partial = {\n size: 'medium',\n placement: 'bottom-end',\n offset: 6,\n rounded: false,\n disableAlpha: false,\n theme: 'light',\n custom: false,\n zIndex: 1005\n};\n","import { cva } from 'class-variance-authority';\nimport { FormControlContextType } from '../contexts';\nimport { BaseInputProps, CVAType } from '../types';\nimport { primary } from '../tokens/colors';\nimport { ResponsiveClasses } from '../utils';\nimport { JUSTIFY_CONTENT_VALUES } from './common.values';\n\ntype FormControlInputCVAType = CVAType & Pick>;\ntype FormControlContainerCVAType = CVAType & Pick>;\n\nexport const commonFormControlCVA = {\n container: cva('flex', {\n variants: {\n colorStyle: {},\n disabled: {\n true: 'opacity-40'\n },\n readOnly: {},\n theme: {},\n required: {},\n ghost: {\n true: 'border-0 bg-transparent',\n false: 'border radius outline-2 outline-offset-0 hover:duration-300 focus:duration-300 duration-all-colors'\n }\n },\n compoundVariants: [\n {\n theme: 'light',\n className: primary.text.darkest.base\n },\n {\n theme: 'light',\n disabled: false,\n readOnly: false,\n ghost: false,\n className: 'bg-white'\n },\n {\n theme: 'light',\n disabled: true,\n readOnly: false,\n ghost: false,\n className: 'border-navy-50 bg-navy-50 outline-transparent'\n },\n // shadow\n {\n colorStyle: ['error', 'success', 'warning'],\n readOnly: false,\n ghost: false,\n className: 'shadow-xs'\n },\n {\n disabled: false,\n ghost: false,\n className: 'hover:shadow-xs'\n },\n // readonly - light\n {\n theme: 'light',\n disabled: false,\n readOnly: true,\n ghost: false,\n className: [\n primary.border.medium.base,\n primary.accent.default.border.focusWithin,\n 'bg-navy-25 outline-transparent hover:border-navy-300 focus-within:outline-blue-200 focus-within:outline-opacity-50'\n ]\n },\n // default - light\n {\n theme: 'light',\n disabled: false,\n readOnly: false,\n colorStyle: 'default',\n ghost: false,\n className: [\n primary.border.medium.base,\n primary.accent.default.border.focusWithin,\n 'outline-transparent hover:border-navy-300 focus-within:outline-blue-200 focus-within:outline-opacity-50'\n ]\n },\n // success - light\n {\n theme: 'light',\n disabled: false,\n readOnly: false,\n colorStyle: 'success',\n ghost: false,\n className: [\n primary.success.default.border.base,\n 'outline-green-200 outline-opacity-0 hover:outline-opacity-50 focus-within:outline-opacity-100'\n ]\n },\n // error - light\n {\n theme: 'light',\n disabled: false,\n readOnly: false,\n colorStyle: 'error',\n ghost: false,\n className: [\n primary.error.default.border.base,\n 'outline-red-200 outline-opacity-0 hover:outline-opacity-50 focus-within:outline-opacity-100'\n ]\n },\n // warning - light\n {\n theme: 'light',\n disabled: false,\n readOnly: false,\n ghost: false,\n colorStyle: 'warning',\n className: 'border-yellow-500 outline-yellow-200 outline-opacity-0 hover:outline-opacity-50 focus-within:outline-opacity-100'\n },\n {\n theme: 'dark',\n className: 'color-white'\n },\n {\n theme: 'dark',\n ghost: false,\n className: 'bg-gray-500'\n },\n // default - dark\n {\n theme: 'dark',\n disabled: false,\n readOnly: false,\n ghost: false,\n colorStyle: 'default',\n className: [\n primary.accent.default.border.focusWithin,\n 'border-gray-500 outline-transparent hover:border-gray-300 focus-within:outline-blue-500 focus-within:outline-opacity-30'\n ]\n },\n // success - dark\n {\n theme: 'dark',\n disabled: false,\n readOnly: false,\n ghost: false,\n colorStyle: 'success',\n className: [\n primary.success.default.border.base,\n 'outline-green-600 outline-opacity-0 hover:outline-opacity-30 focus-within:outline-opacity-50'\n ]\n },\n // error - dark\n {\n theme: 'dark',\n disabled: false,\n readOnly: false,\n ghost: false,\n colorStyle: 'error',\n className: 'border-red-400 outline-red-400 outline-opacity-0 hover:outline-opacity-30 focus-within:outline-opacity-50'\n },\n // warning - dark\n {\n theme: 'dark',\n disabled: false,\n readOnly: false,\n ghost: false,\n colorStyle: 'warning',\n className: 'border-yellow-500 outline-yellow-500 outline-opacity-0 hover:outline-opacity-30 focus-within:outline-opacity-50'\n },\n // readonly - dark\n {\n theme: 'dark',\n disabled: false,\n readOnly: true,\n ghost: false,\n className: [\n primary.accent.default.border.focusWithin,\n 'border-gray-500 outline-transparent hover:border-gray-300 focus-within:outline-blue-500 focus-within:outline-opacity-30'\n ]\n },\n {\n theme: 'dark',\n disabled: true,\n readOnly: false,\n ghost: false,\n className: 'outline-transparent border-gray-500'\n }\n ]\n }),\n input: cva('appearance-none bg-transparent grow-1 outline-0 w-full focus-visible-none border-0', {\n variants: {\n size: {\n small: 'text-sm',\n medium: 'text-sm',\n large: 'text-md'\n },\n theme: {},\n disabled: {},\n ghost: {\n true: '',\n false: 'radius'\n }\n },\n compoundVariants: [\n {\n theme: 'light',\n disabled: false,\n className: 'placeholder-navy-200'\n },\n {\n theme: 'light',\n disabled: true,\n className: 'placeholder-navy-300'\n }\n ]\n })\n};\n\nexport const justifyContentClasses:ResponsiveClasses = {\n around: {\n base: 'justify-around',\n xs: 'xs:justify-around',\n sm: 'sm:justify-around',\n md: 'md:justify-around',\n lg: 'lg:justify-around',\n xl: 'xl:justify-around',\n xxl: 'xxl:justify-around'\n },\n between: {\n base: 'justify-between',\n xs: 'xs:justify-between',\n sm: 'sm:justify-between',\n md: 'md:justify-between',\n lg: 'lg:justify-between',\n xl: 'xl:justify-between',\n xxl: 'xxl:justify-between'\n },\n center: {\n base: 'justify-center',\n xs: 'xs:justify-center',\n sm: 'sm:justify-center',\n md: 'md:justify-center',\n lg: 'lg:justify-center',\n xl: 'xl:justify-center',\n xxl: 'xxl:justify-center'\n },\n end: {\n base: 'justify-end',\n xs: 'xs:justify-end',\n sm: 'sm:justify-end',\n md: 'md:justify-end',\n lg: 'lg:justify-end',\n xl: 'xl:justify-end',\n xxl: 'xxl:justify-end'\n },\n evenly: {\n base: 'justify-evenly',\n xs: 'xs:justify-evenly',\n sm: 'sm:justify-evenly',\n md: 'md:justify-evenly',\n lg: 'lg:justify-evenly',\n xl: 'xl:justify-evenly',\n xxl: 'xxl:justify-evenly'\n },\n start: {\n base: 'justify-start',\n xs: 'xs:justify-start',\n sm: 'sm:justify-start',\n md: 'md:justify-start',\n lg: 'lg:justify-start',\n xl: 'xl:justify-start',\n xxl: 'xxl:justify-start'\n }\n};\n","// Radio & Checkbox & ChoiceLabel\nexport const CHOICE_TRUNCATE_VALUES = ['both', 'description', 'label'] as const;\n\nexport const THEME_VALUES = ['dark', 'light'] as const;\nexport const SIZE_VALUES = ['small', 'medium', 'large'] as const;\nexport const BREAKPOINT_VALUES = ['xs', 'sm', 'md', 'lg', 'xl', 'xxl'] as const;\nexport const PRODUCT_NAME_VALUES = ['teams', 'pdf', 'apps', 'reports', 'forms', 'sign', 'tables', 'inbox', 'approvals', 'analytics', 'pages'] as const;\nexport const RESPONSIVE_BREAKPOINT_VALUES = ['base', ...BREAKPOINT_VALUES] as const;\nexport const COLOR_STYLE_VALUES = ['primary', 'success', 'error'] as const;\n\n// Form Controls\nexport const FORM_CONTROL_COLOR_STYLE_VALUES = ['default', 'success', 'warning', 'error'] as const;\nexport const BASE_INPUT_ADDON_DIRECTION_VALUES = ['start', 'end'] as const;\nexport const BASE_INPUT_ADDON_VARIANT_VALUES = ['filled', 'ghost'] as const;\n\n// Flex & Grid\nexport const JUSTIFY_CONTENT_VALUES = ['start', 'end', 'center', 'between', 'around', 'evenly'] as const;\nexport const ALIGN_ITEMS_VALUES = ['start', 'end', 'center', 'stretch', 'baseline'] as const;\nexport const FLEX_DIRECTION_VALUES = ['row', 'column', 'row-reverse', 'column-reverse'] as const;\nexport const FLEX_WRAP_VALUES = ['wrap', 'nowrap'] as const;\nexport const FLEX_GROW_VALUES = ['0', '1'] as const;\nexport const FLEX_SHRINK_VALUES = ['0', '1'] as const;\nexport const ORDER_VALUES = ['none', 'first', 'last'] as const;\nexport const ALIGN_SELF_VALUES = ['auto', 'center', 'start', 'end', 'stretch', 'baseline'] as const;\nexport const JUSTIFY_SELF_VALUES = ['auto', 'center', 'start', 'end', 'stretch'] as const;\n\nexport const GRID_TRACK_VALUES = ['1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12'] as const;\nexport const GRID_TEMPLATE_COLUMNS_VALUES = ['none', ...GRID_TRACK_VALUES] as const;\nexport const GRID_ITEM_START_END_VALUES = ['auto', ...GRID_TRACK_VALUES] as const;\n","import {\n createContext, CSSProperties, ReactNode, useContext\n} from 'react';\nimport { useInteractions } from '@floating-ui/react';\nimport {\n FormControlColorStyle, Icon, Size, Theme\n} from '../constants/common.types';\nimport { pick } from '../utils';\nimport { TagProps } from '../components/Tag/tag.types';\n\nconst useSelectValue = (\n ownContext: ContextTypes,\n props: PropTypes,\n pickedContextValues: string[]\n): PropTypes => {\n if (!ownContext) {\n return props;\n }\n\n const pickedContext = pick(ownContext, pickedContextValues);\n return { ...props, ...pickedContext };\n};\n\nexport type FormControlContextType = {\n id?: string\n colorStyle?: FormControlColorStyle,\n size?: Size,\n disabled?: boolean,\n required?: boolean,\n readOnly?: boolean,\n theme?: Theme\n}\n\nexport const commonInputDefaults:Partial = {\n size: 'medium',\n theme: 'light',\n colorStyle: 'default'\n} as const;\n\nexport const FormControlContext = createContext(null);\n\ntype FormControlContextArrayKeys = (keyof FormControlContextType)[];\nconst contextValuesArray:FormControlContextArrayKeys = ['colorStyle', 'disabled', 'readOnly', 'required', 'size', 'theme', 'id'];\n\nexport const useFormControl = (\n props:T,\n pickContextValues:FormControlContextArrayKeys = contextValuesArray\n):T & FormControlContextType => {\n const formContext = useContext(FormControlContext);\n return useSelectValue(formContext, props, pickContextValues);\n};\n\nexport type HandleSelectParams = {\n index: number,\n} & DropdownOptionType\n\nexport type HandleGroupSelectParams = {\n checked: boolean,\n allOptions: DropdownOptionType[],\n childrenArray: DropdownOptionType[]\n}\n\nexport type HandleMultiSelect = {\n checked: boolean\n} & DropdownOptionType;\n\nexport type DropdownOptionType = {\n index?: number,\n icon?: Icon\n value: string,\n disabled?: boolean,\n tagStyles?: CSSProperties,\n tagColorStyle?: TagProps['colorStyle'],\n children?: string | ReactNode\n}\n\nexport type DropdownContextType = {\n activeIndex: number | null,\n selectedIndex: number | null,\n getItemProps: ReturnType['getItemProps'],\n handleSelect: (args: HandleSelectParams) => void,\n handleGroupSelect: (args: HandleGroupSelectParams) => void,\n handleMultiSelect: (args: HandleMultiSelect) => void,\n multiple?: boolean,\n selectedOptionArray: DropdownOptionType[] | null,\n setSelectedOptionArray: (array: DropdownOptionType[]) => void\n} & FormControlContextType;\n\nexport type DropdownGroupContextType = {\n indent?: boolean,\n}\n\nexport const DropdownContext = createContext(null);\n\nexport const DropdownGroupContext = createContext(null);\n\nexport const useDropdownContext = ():DropdownContextType => {\n const context = useContext(DropdownContext);\n if (!context) {\n throw new Error('DropdownOption/DropdownGroup should wrap within a Dropdown');\n }\n return context;\n};\n\nexport const useDropdownGroupContext = ():DropdownGroupContextType => {\n const context = useContext(DropdownGroupContext);\n if (!context) {\n return {};\n }\n return context;\n};\n","const brand = {\n yellow: {\n bg: {\n base: 'bg-yellow-400',\n hover: 'hover:bg-yellow-400'\n },\n border: {\n base: 'border-yellow-400',\n hover: 'hover:border-yellow-400'\n },\n color: {\n base: 'color-yellow-400',\n hover: 'hover:color-yellow-400'\n }\n },\n orange: {\n bg: {\n base: 'bg-orange-500',\n hover: 'hover:bg-orange-500'\n },\n border: {\n base: 'border-orange-500',\n hover: 'hover:border-orange-500'\n },\n color: {\n base: 'color-orange-500',\n hover: 'hover:color-orange-500'\n }\n },\n blue: {\n bg: {\n base: 'bg-blue-400',\n hover: 'hover:bg-blue-400'\n },\n border: {\n base: 'border-blue-400',\n hover: 'hover:border-blue-400'\n },\n color: {\n base: 'color-blue-400',\n hover: 'hover:color-blue-400'\n }\n },\n dark: {\n bg: {\n base: 'bg-navy-700',\n hover: 'hover:bg-navy-700'\n },\n border: {\n base: 'border-navy-700',\n hover: 'hover:border-navy-700'\n },\n color: {\n base: 'color-navy-700',\n hover: 'hover:color-navy-700'\n }\n }\n} as const;\n\nconst text = {\n lightest: {\n base: 'color-navy-50',\n hover: 'hover:color-navy-50'\n },\n light: {\n base: 'color-navy-100',\n hover: 'hover:color-navy-100'\n },\n medium: {\n base: 'color-navy-300',\n hover: 'hover:color-navy-300'\n },\n dark: {\n base: 'color-navy-500',\n hover: 'hover:color-navy-500'\n },\n darkest: {\n base: 'color-navy-700',\n hover: 'hover:color-navy-700'\n }\n} as const;\n\nconst background = {\n lightest: {\n base: 'bg-navy-25',\n focus: 'focus:bg-navy-25',\n focusWithin: 'focus-within:bg-navy-25',\n hover: 'hover:bg-navy-25'\n },\n light: {\n base: 'bg-navy-75',\n focus: 'focus:bg-navy-75',\n focusWithin: 'focus-within:bg-navy-75',\n hover: 'hover:bg-navy-75'\n },\n medium: {\n base: 'bg-navy-100',\n focus: 'focus:bg-navy-100',\n focusWithin: 'focus-within:bg-navy-100',\n hover: 'hover:bg-navy-100'\n },\n dark: {\n base: 'bg-navy-300',\n focus: 'focus:bg-navy-300',\n focusWithin: 'focus-within:bg-navy-300',\n hover: 'hover:bg-navy-300'\n },\n darkest: {\n base: 'bg-navy-700',\n focus: 'focus:bg-navy-700',\n focusWithin: 'focus-within:bg-navy-700',\n hover: 'hover:bg-navy-700'\n }\n} as const;\n\nconst border = {\n light: {\n base: 'border-navy-50',\n hover: 'hover:border-navy-50'\n },\n medium: {\n base: 'border-navy-100',\n hover: 'hover:border-navy-100'\n },\n dark: {\n base: 'border-navy-500',\n hover: 'hover:border-navy-500'\n },\n darkest: {\n base: 'border-navy-700',\n hover: 'hover:border-navy-700'\n }\n} as const;\n\nconst accent = {\n lightest: {\n bg: {\n base: 'bg-blue-100',\n focus: 'focus:bg-blue-100',\n focusWithin: 'focus-within:bg-blue-100',\n hover: 'hover:bg-blue-100'\n },\n border: {\n base: 'border-blue-100',\n focus: 'focus:border-blue-100',\n focusWithin: 'focus-within:border-blue-100',\n hover: 'hover:border-blue-100'\n },\n color: {\n base: 'color-blue-100',\n focus: 'focus:color-blue-100',\n focusWithin: 'focus-within:color-blue-100',\n hover: 'hover:color-blue-100'\n }\n },\n light: {\n bg: {\n base: 'bg-blue-300',\n focus: 'focus:bg-blue-300',\n focusWithin: 'focus-within:bg-blue-300',\n hover: 'hover:bg-blue-300'\n },\n border: {\n base: 'border-blue-300',\n focus: 'focus:border-blue-300',\n focusWithin: 'focus-within:border-blue-300',\n hover: 'hover:border-blue-300'\n },\n color: {\n base: 'color-blue-300',\n focus: 'focus:color-blue-300',\n focusWithin: 'focus-within:color-blue-300',\n hover: 'hover:color-blue-300'\n }\n },\n default: {\n bg: {\n base: 'bg-blue-500',\n focus: 'focus:bg-blue-500',\n focusWithin: 'focus-within:bg-blue-500',\n hover: 'hover:bg-blue-500'\n },\n border: {\n base: 'border-blue-500',\n focus: 'focus:border-blue-500',\n focusWithin: 'focus-within:border-blue-500',\n hover: 'hover:border-blue-500'\n },\n color: {\n base: 'color-blue-500',\n focus: 'focus:color-blue-500',\n focusWithin: 'focus-within:color-blue-500',\n hover: 'hover:color-blue-500'\n }\n },\n dark: {\n bg: {\n base: 'bg-blue-600',\n focus: 'focus:bg-blue-600',\n focusWithin: 'focus-within:bg-blue-600',\n hover: 'hover:bg-blue-600'\n },\n border: {\n base: 'border-blue-600',\n focus: 'focus:border-blue-600',\n focusWithin: 'focus-within:border-blue-600',\n hover: 'hover:border-blue-600'\n },\n color: {\n base: 'color-blue-600',\n focus: 'focus:color-blue-600',\n focusWithin: 'focus-within:color-blue-600',\n hover: 'hover:color-blue-600'\n }\n }\n} as const;\n\nconst success = {\n lightest: {\n bg: {\n base: 'bg-green-100',\n hover: 'hover:bg-green-100'\n },\n border: {\n base: 'border-green-100',\n hover: 'hover:border-green-100'\n },\n color: {\n base: 'color-green-100',\n hover: 'hover:color-green-100'\n }\n },\n light: {\n bg: {\n base: 'bg-green-200',\n hover: 'hover:bg-green-200'\n },\n border: {\n base: 'border-green-200',\n hover: 'hover:border-green-200'\n },\n color: {\n base: 'color-green-200',\n hover: 'hover:color-green-200'\n }\n },\n default: {\n bg: {\n base: 'bg-green-500',\n hover: 'hover:bg-green-500'\n },\n border: {\n base: 'border-green-500',\n hover: 'hover:border-green-500'\n },\n color: {\n base: 'color-green-500',\n hover: 'hover:color-green-500'\n }\n },\n dark: {\n bg: {\n base: 'bg-green-600',\n hover: 'hover:bg-green-600'\n },\n border: {\n base: 'border-green-600',\n hover: 'hover:border-green-600'\n },\n color: {\n base: 'color-green-600',\n hover: 'hover:color-green-600'\n }\n }\n} as const;\n\nconst error = {\n lightest: {\n bg: {\n base: 'bg-red-100',\n focus: 'focus:bg-red-100',\n focusWithin: 'focus-within:bg-red-100',\n hover: 'hover:bg-red-100'\n },\n border: {\n base: 'border-red-100',\n focus: 'focus:border-red-100',\n focusWithin: 'focus-within:border-red-100',\n hover: 'hover:border-red-100'\n },\n color: {\n base: 'color-red-100',\n focus: 'focus:color-red-100',\n focusWithin: 'focus-within:color-red-100',\n hover: 'hover:color-red-100'\n }\n },\n light: {\n bg: {\n base: 'bg-red-200',\n focus: 'focus:bg-red-200',\n focusWithin: 'focus-within:bg-red-200',\n hover: 'hover:bg-red-200'\n },\n border: {\n base: 'border-red-200',\n focus: 'focus:border-red-200',\n focusWithin: 'focus-within:border-red-200',\n hover: 'hover:border-red-200'\n },\n color: {\n base: 'color-red-200',\n focus: 'focus:color-red-200',\n focusWithin: 'focus-within:color-red-200',\n hover: 'hover:color-red-200'\n }\n },\n default: {\n bg: {\n base: 'bg-red-400',\n focus: 'focus:bg-red-400',\n focusWithin: 'focus-within:bg-red-400',\n hover: 'hover:bg-red-400'\n },\n border: {\n base: 'border-red-400',\n focus: 'focus:border-red-400',\n focusWithin: 'focus-within:border-red-400',\n hover: 'hover:border-red-400'\n },\n color: {\n base: 'color-red-400',\n focus: 'focus:color-red-400',\n focusWithin: 'focus-within:color-red-400',\n hover: 'hover:color-red-400'\n }\n },\n dark: {\n bg: {\n base: 'bg-red-600',\n focus: 'focus:bg-red-600',\n focusWithin: 'focus-within:bg-red-600',\n hover: 'hover:bg-red-600'\n },\n border: {\n base: 'border-red-600',\n focus: 'focus:border-red-600',\n focusWithin: 'focus-within:border-red-600',\n hover: 'hover:border-red-600'\n },\n color: {\n base: 'color-red-600',\n focus: 'focus:color-red-600',\n focusWithin: 'focus-within:color-red-600',\n hover: 'hover:color-red-600'\n }\n }\n} as const;\n\nexport default {\n brand,\n text,\n background,\n border,\n accent,\n success,\n error\n};\n","const text = {\n lightest: {\n base: 'color-gray-100',\n hover: 'hover:color-gray-100'\n },\n light: {\n base: 'color-gray-200',\n hover: 'hover:color-gray-200'\n },\n medium: {\n base: 'color-gray-300',\n hover: 'hover:color-gray-300'\n },\n dark: {\n base: 'color-gray-500',\n hover: 'hover:color-gray-500'\n },\n darkest: {\n base: 'color-gray-700',\n hover: 'hover:color-gray-700'\n }\n} as const;\n\nconst background = {\n lightest: {\n base: 'bg-gray-400',\n hover: 'hover:bg-gray-400'\n },\n light: {\n base: 'bg-gray-500',\n hover: 'hover:bg-gray-500'\n },\n medium: {\n base: 'bg-gray-600',\n hover: 'hover:bg-gray-600'\n },\n dark: {\n base: 'bg-gray-700',\n hover: 'hover:bg-gray-700'\n },\n darkest: {\n base: 'bg-gray-800',\n hover: 'hover:bg-gray-800'\n }\n} as const;\n\nconst border = {\n light: {\n base: 'border-gray-200',\n hover: 'hover:border-gray-200'\n },\n medium: {\n base: 'border-gray-500',\n hover: 'hover:border-gray-500'\n },\n dark: {\n base: 'border-gray-700',\n hover: 'hover:border-gray-700'\n }\n} as const;\n\nexport default {\n text,\n background,\n border\n};\n","import {\n Children, cloneElement, Fragment, isValidElement, ReactChild, ReactNode\n} from 'react';\nimport { Responsive } from '../constants/common.types';\n\nexport type ResponsiveClasses = Record>;\n\nexport const convertResponsiveClass = (\n propValue: Partial> | string | undefined, classList: ResponsiveClasses\n): string[] => {\n if (propValue === undefined) {\n return [];\n }\n\n const valueObject = typeof propValue === 'string' ? { base: propValue } : propValue;\n\n const classArr = Object.entries(valueObject).map(values => {\n const _key:T[number] = values[1];\n const _val = values[0] as Responsive;\n\n return classList[_key][_val];\n });\n\n return classArr;\n};\n\nexport function pick(\n object: T,\n keys: K[]\n): Pick {\n return Object.assign(\n {},\n ...keys.map((key: K) => {\n return { [key]: object[key] };\n })\n );\n}\n\ntype FlattenChildrenArgs = {\n children: ReactNode,\n depth: number,\n keys?: (string | number)[]\n filter: string,\n group:string\n}\n\nexport function flattenChildren({\n children, depth = 0, keys = [], filter, group\n}: FlattenChildrenArgs): ReactChild[] {\n return Children.toArray(children).reduce(\n (acc: ReactChild[] | any, node: any, nodeIndex) => {\n if (node?.type?.displayName === group || node?.type === Fragment) {\n acc.push(\n acc,\n ...flattenChildren({\n children: node.props.children,\n depth: depth + 1,\n keys: keys.concat(node.key || nodeIndex),\n group,\n filter\n })\n );\n } else if (isValidElement(node)) {\n acc.push(\n cloneElement(node, {\n key: keys.concat(String(node.key)).join('.')\n })\n );\n } else if (typeof node === 'string' || typeof node === 'number') {\n acc.push(node);\n }\n return acc;\n },\n []\n ).filter((child: any) => child?.type?.displayName === filter);\n}\n\nexport const arraysEqualsCheck = (a:string[] = [], b:string[] = []):boolean => a.length === b.length && a.every((v, i) => v === b[i]);\n","import { NormalizeMap } from './types';\n\n// normalizing request fields to prevent unnecessary hit misses\nexport const normalizedKeyMap: Record = {\n teamID: { contains: [''], to: undefined }\n};\n","/* eslint-disable no-param-reassign */\nimport { normalizedKeyMap } from './constants';\nimport { CacheValue } from './types';\n\ntype RetryFunction = () => Promise | undefined>;\nconst delay = (fn: RetryFunction, ms: number): ReturnType => new Promise(resolve => setTimeout(() => resolve(fn()), ms));\n\nexport const retry = async (fn: RetryFunction, maxAttempts = 3, delayMs = 10): ReturnType => {\n const execute = async (attempt: number): ReturnType => {\n try {\n return await fn();\n } catch {\n if (attempt <= maxAttempts) {\n const nextAttempt = attempt + 1;\n return delay(() => execute(nextAttempt), delayMs);\n }\n return undefined;\n }\n };\n return execute(1);\n};\n\nexport const mapRequest = (obj: Record): void => {\n Object.keys(obj).forEach(key => {\n if (normalizedKeyMap[key]) {\n const shouldMap = normalizedKeyMap[key].contains.includes(obj[key]);\n if (shouldMap) obj[key] = normalizedKeyMap[key].to;\n }\n if (typeof obj[key] === 'object' && obj[key] !== null) {\n mapRequest(obj[key] as Record);\n }\n });\n};\n","import { RequestContext, ResponseResult } from '../layer/types';\nimport { CacheValue, LatestHitAttempt } from './types';\nimport { retry, mapRequest } from './utils';\n\nexport default class TTLCache {\n private cache: Map;\n\n private readonly ttl: number;\n\n // it's used as a lookup table to check consecutive requests\n private readonly latestAttempts: LatestHitAttempt[];\n\n private readonly MAX_LATEST_ATTEMPTS = 5;\n\n private readonly attemptTTL: number;\n\n private readonly MAX_CACHE_SIZE = 25;\n\n constructor(ttl = 900) {\n this.cache = new Map();\n this.ttl = ttl;\n this.attemptTTL = ttl - 50;\n this.latestAttempts = [];\n }\n\n private pushLatestHitAttemps(key: string): void {\n if (this.latestAttempts.length === this.MAX_LATEST_ATTEMPTS) {\n this.latestAttempts.pop();\n }\n this.latestAttempts.unshift({ key: key, ttl: Date.now() + this.attemptTTL });\n }\n\n private shouldAttempt(key: string): boolean {\n return this.latestAttempts.find(attempt => attempt.key === key && Date.now() < attempt.ttl) ? true : false;\n }\n\n private generateCacheKey(request: RequestContext): string {\n mapRequest(request as unknown as Record);\n const { url, ...rest } = request;\n return `${url}-${JSON.stringify(rest)}`;\n }\n\n public add(request: RequestContext, response: ResponseResult): void {\n if (this.size() >= this.MAX_CACHE_SIZE) {\n this.clear();\n }\n\n this.cache.set(\n this.generateCacheKey(request),\n {\n response,\n expirationTime: Date.now() + this.ttl\n }\n );\n }\n\n public async get(request: RequestContext): Promise | null> {\n const key = this.generateCacheKey(request);\n\n const shouldAttempt = this.shouldAttempt(key);\n this.pushLatestHitAttemps(key);\n\n let cacheItem: CacheValue | undefined = this.cache.get(key);\n\n // it's a retry mechanism to handle consecutive hit attempts\n // to decrase the posiblity of worst case scenarios, a lookup table is used\n // and early exists are implemented\n if (!cacheItem && shouldAttempt) {\n cacheItem = await retry(() => new Promise((resolve, reject) => {\n const item = this.cache.get(key);\n\n if (item) {\n if (this.isValueValid(item)) resolve(item);\n else {\n this.cache.delete(key);\n resolve(undefined);\n }\n }\n\n reject();\n }), 40, 50);\n }\n\n if (cacheItem && this.isValueValid(cacheItem)) {\n return cacheItem.response;\n }\n\n this.cache.delete(key);\n return null;\n }\n\n public remove(request: RequestContext): void {\n this.cache.delete(this.generateCacheKey(request));\n }\n\n public clear(): void {\n this.cache.clear();\n }\n\n public size(): number {\n return this.cache.size;\n }\n\n private isValueValid(cacheItem: CacheValue | undefined): boolean {\n if (!cacheItem) return false;\n return Date.now() < cacheItem.expirationTime;\n }\n}\n","import {\n Config, Methods, RequestArgs, RequestParameters\n} from '../layer/types';\n\nexport const argumentParser = (method: Methods, args: RequestArgs): RequestParameters => {\n switch (true) {\n case args.length === 1: {\n const [url] = args;\n return { url, config: {} };\n }\n case args.length === 2 && ['get', 'delete'].includes(method): {\n const [url, config] = args;\n return { url, config: config as Config };\n }\n\n case args.length === 2 && ['put', 'post'].includes(method): {\n const [url, data] = args;\n return { url, data, config: {} };\n }\n\n case args.length === 3: {\n const [url, data, config] = args;\n if (config) return { url, data, config };\n return { url, data, config: {} };\n }\n\n default:\n return { url: '' };\n }\n};\n","// type InterceptorKeys = keyof DefaultInterceptorsConfig;\n// type InterceptorValues = DefaultInterceptorsConfig[InterceptorKeys];\n\nimport { CustomConfig, DefaultInterceptorsConfig } from '../layer/types';\n\nexport const constructInterceptorConfig = (\n config: CustomConfig,\n interceptorConfig: DefaultInterceptorsConfig | undefined\n): DefaultInterceptorsConfig => {\n return { ...interceptorConfig, ...config };\n\n // later if we want to strict the usage of configs\n // we can only override the settings which are defined on request-layer\n // it can be used instead\n\n // return (Object.entries(interceptorConfig) as [InterceptorKeys, InterceptorValues][])\n // .reduce((newConfig, props) => {\n // const [key, value] = props;\n // return { ...newConfig, [key]: config[key] ?? value };\n // }, {} as DefaultInterceptorsConfig);\n};\n","import { Interceptor } from '../types';\n\nexport class InterceptorHandler {\n interceptors: Interceptor[];\n\n constructor(interceptors: InterceptorHandler['interceptors']) {\n this.interceptors = interceptors;\n }\n\n run(ctx: T): void {\n this.interceptors.forEach(interceptor => {\n interceptor(ctx);\n });\n }\n}\n","import { InterceptorHandler } from '..';\nimport {\n RequestContext,\n RequestInterceptor, ResponseContext, ResponseInterceptor\n} from '../../types';\n\nconst createDefaultInterceptors = (\n reqInterceptors: RequestInterceptor[],\n resInterceptors: ResponseInterceptor[],\n resFailedInterceptors: ResponseInterceptor[]\n): {preRequest: InterceptorHandler, postRequest: InterceptorHandler, postFailedRequest: InterceptorHandler} => ({\n preRequest: new InterceptorHandler(reqInterceptors),\n postRequest: new InterceptorHandler(resInterceptors),\n postFailedRequest: new InterceptorHandler(resFailedInterceptors)\n});\n\nexport { createDefaultInterceptors };\n","// If the value is not a string or a Blob, append() will convert it to a string automatically\n// Therefore using \"any\" as type, should be safe\n\nimport { BaseResponse, ResponseContext } from '../../types';\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport function objToFormData(obj: Record, prefix?: string, formData?: FormData): FormData {\n // eslint-disable-next-line no-param-reassign\n formData = formData ?? new FormData();\n\n if (obj) {\n Object.keys(obj).forEach(key => {\n const keyName = prefix ? `${prefix}[${key}]` : key;\n\n if (typeof obj[key] !== 'object') {\n formData?.append(keyName, obj[key]);\n } else {\n objToFormData(obj[key], keyName, formData);\n }\n });\n }\n\n return formData;\n}\n\nexport const isCrossOrigin = (url?: string): boolean => {\n const { location: { origin } } = window || {};\n if (url?.startsWith('http') && !url.includes(origin)) {\n return true;\n }\n return false;\n};\n\nexport const axiosNormalizer = (ctx: ResponseContext): void => {\n if (ctx.interceptorConfig?.disableResponseNormalizer) {\n return;\n }\n if ('data' in ctx.resp) {\n ctx.result = ctx.resp.data;\n }\n\n const resp = ctx.result as BaseResponse;\n\n if (resp && typeof resp.responseCode === 'number'\n && (resp.responseCode < 200 || resp.responseCode > 299)) {\n ctx.result = Promise.reject(resp);\n return;\n }\n\n if (resp && resp.content) {\n ctx.result = resp.content;\n }\n};\n\nexport const engineResponseNormalizer = (ctx: ResponseContext): void => {\n switch (ctx.engineName) {\n default:\n axiosNormalizer(ctx);\n }\n};\n","import { isSalesforceEnv, handleCustomNavigation } from '@jotforminc/utils';\nimport { RequestInterceptor, ResponseInterceptor } from '../../../types';\n\nexport const salesforceAuthFailed: ResponseInterceptor = ctx => {\n if (`${ctx?.resp?.config?.baseURL}/${ctx?.resp?.config?.url}`.startsWith('/API/salesforce/')) {\n if (ctx?.resp?.data?.responseCode === 400 && ctx?.resp?.data?.message === 'Please reauthenticate your account.') {\n handleCustomNavigation(`/platform/salesforce/platform-pages/reauth?rp=${window.location}`, '_self', true);\n }\n }\n};\n\nconst salesforceRequestInterceptors: RequestInterceptor[] = [];\nconst salesforceResponseSuccessInterceptors: ResponseInterceptor[] = [];\nconst salesforceResponseFailedInterceptors: ResponseInterceptor[] = [];\n\nlet isSalesforcePlatform = false;\ntry {\n isSalesforcePlatform = isSalesforceEnv();\n} catch (e) {\n console.log('Error :: salesforceInterceptors -> ', e);\n isSalesforcePlatform = false;\n}\nif (isSalesforcePlatform) {\n salesforceResponseFailedInterceptors.push(salesforceAuthFailed);\n}\n\nexport {\n salesforceRequestInterceptors,\n salesforceResponseSuccessInterceptors,\n salesforceResponseFailedInterceptors\n};\n","import {\n RequestInterceptor, ResponseInterceptor\n} from '../../types';\nimport { engineResponseNormalizer, isCrossOrigin, objToFormData } from './utils';\nimport { salesforceResponseFailedInterceptors } from './platform/salesforceInterceptors';\n\nexport const requestUrlInterceptor: RequestInterceptor = ctx => {\n const { url, config } = ctx;\n\n // ignore base url if req starts with different origin\n // or it starts with a protocol\n if (url.startsWith('/') || url.startsWith('https://') || url.startsWith('http://')) {\n config.baseURL = '';\n }\n // attach apiKey header if it exists\n const apiKey = ctx.interceptorConfig?.apiKey;\n if (apiKey) {\n ctx.config.headers = {\n apiKey,\n ...ctx.config.headers\n };\n }\n\n if (config.method === 'get' && ctx.data) {\n ctx.config.params = { ...(ctx.config.params as Record), ...(ctx.data as Record) };\n ctx.data = null;\n }\n};\n\n// xml requests are heavily used in form-builder\n// this interceptor does the job of reqwest library\nexport const requestXMLInterceptor: RequestInterceptor = ctx => {\n if (ctx.interceptorConfig?.isFormData) {\n ctx.config.headers = {\n Accept: '*/*',\n ...ctx.config.headers\n };\n\n if (ctx.data) {\n ctx.data = objToFormData(ctx.data as Record>);\n }\n }\n};\n\nexport const requestNormalizer: RequestInterceptor = ctx => {\n const { config } = ctx;\n if (ctx.interceptorConfig?.teamID) {\n if (isCrossOrigin(ctx.url) || config.disableTeamIDHeader) {\n return;\n }\n\n config.headers = { 'jf-team-id': ctx.interceptorConfig.teamID, ...config.headers };\n }\n};\n\nexport const responseNormalizer: ResponseInterceptor = ctx => {\n engineResponseNormalizer(ctx);\n};\n\nexport const requestInterceptors = [requestUrlInterceptor, requestXMLInterceptor, requestNormalizer];\nexport const responseInterceptors = [responseNormalizer];\n\nexport const defaultRequestInterceptors = [];\nexport const defaultResponseSuccessInterceptors = [];\nexport const defaultResponseFailedInterceptors = [...salesforceResponseFailedInterceptors];\n","import { createDefaultInterceptors } from '../layer/interceptors/defaultInterceptors';\nimport {\n requestInterceptors,\n responseInterceptors,\n defaultRequestInterceptors,\n defaultResponseSuccessInterceptors,\n defaultResponseFailedInterceptors\n} from '../layer/interceptors/defaultInterceptors/defaultInterceptors';\nimport { Interceptors } from '../layer/interceptors/types';\nimport {\n DefaultInterceptorsConfig\n} from '../layer/types';\n\nexport const setInterceptors = (config: DefaultInterceptorsConfig | undefined)\n: Interceptors | undefined => {\n if (config?.disableInterceptors) return undefined;\n\n let preRequestInterceptors = config?.customRequestInterceptors ?? requestInterceptors;\n let postRequestInterceptors = config?.customResponseInterceptors ?? responseInterceptors;\n const postRequestFailedInterceptors = [];\n\n if (config?.disableRequestInterceptors) {\n preRequestInterceptors = [];\n }\n\n if (config?.disableResponseInterceptors) {\n postRequestInterceptors = [];\n }\n\n if (!config?.disableDefaultInterceptors) {\n preRequestInterceptors.push(...defaultRequestInterceptors);\n postRequestInterceptors.push(...defaultResponseSuccessInterceptors);\n postRequestFailedInterceptors.push(...defaultResponseFailedInterceptors);\n }\n\n return createDefaultInterceptors(preRequestInterceptors, postRequestInterceptors, postRequestFailedInterceptors);\n};\n","export const defaultValidation = (status: number): boolean => {\n return status >= 200 && status < 300;\n};\n","import { AxiosEngine } from './AxiosEngine';\n\n// add ${newEngine} class\nexport const ENGINES = {\n AXIOS: AxiosEngine\n};\n\nexport type EngineNames = keyof typeof ENGINES\n","import axios, {\n AxiosInstance, AxiosRequestConfig, AxiosResponse, Method\n} from 'axios';\nimport { CustomConfig, Engine, RequestFunction } from '../types';\nimport { defaultValidation } from './utils';\n\nexport class AxiosEngine implements Engine {\n instance: AxiosInstance;\n\n public get: RequestFunction;\n\n public post: RequestFunction;\n\n public put: RequestFunction;\n\n public delete: RequestFunction;\n\n constructor(baseURL: string, config?: CustomConfig) {\n this.instance = axios.create({\n baseURL,\n validateStatus: config?.disableEngineThrowOnError ? () => true : defaultValidation,\n ...config\n });\n\n this.get = this.createRequestMethod('get');\n\n this.post = this.createRequestMethod('post');\n\n this.put = this.createRequestMethod('put');\n\n this.delete = this.createRequestMethod('delete');\n }\n\n public createRequestMethod(method: Method): RequestFunction {\n return (url: string, config?: AxiosRequestConfig, data?: D) => {\n return this.instance.request, D>({\n url,\n method,\n data,\n ...config\n });\n };\n }\n}\n","import { isAxiosError } from 'axios';\nimport { RequestFunction, Responses } from './types';\n\nexport type AwaitedEngineResponse = Awaited>\n\nexport const mapAxiosResponse = (awaitedEngineResp: AwaitedEngineResponse): Responses => {\n if (isAxiosError(awaitedEngineResp) && awaitedEngineResp.response) {\n return awaitedEngineResp.response;\n }\n\n return awaitedEngineResp as Responses;\n};\n","import TTLCache from '../request-cache';\nimport { argumentParser } from '../utils/argumentParser';\nimport { constructInterceptorConfig } from '../utils/constructInterceptorConfig';\nimport { setInterceptors } from '../utils/setInterceptors';\nimport { EngineNames, ENGINES } from './engines/constants';\nimport { Interceptors } from './interceptors/types';\nimport {\n CustomConfig,\n DefaultInterceptorsConfig,\n Engine,\n Methods,\n RequestArgs,\n RequestContext,\n RequestFunction,\n ResponseContext,\n ResponseResult,\n Responses\n} from './types';\nimport { mapAxiosResponse } from './utils';\n\nexport class RequestLayer {\n engineInstance: Engine;\n\n engineName: EngineNames;\n\n interceptors?: Interceptors;\n\n configs?: {engineConfig?: CustomConfig, interceptorConfig?: DefaultInterceptorsConfig};\n\n ttlCache?: TTLCache;\n\n baseURL?: string;\n\n get: (...args: RequestArgs) => Promise | T>;\n\n post: (...args: RequestArgs) => Promise | T>;\n\n delete: (...args: RequestArgs) => Promise | T>;\n\n put: (...args: RequestArgs) => Promise | T>;\n\n constructor(\n baseURL?: string,\n configs?: {engineConfig?: CustomConfig, interceptorConfig?: DefaultInterceptorsConfig},\n engineName: EngineNames = 'AXIOS'\n\n ) {\n this.configs = configs;\n this.engineInstance = new ENGINES[engineName](baseURL || '', { withCredentials: true, ...configs?.engineConfig });\n this.interceptors = setInterceptors(configs?.interceptorConfig);\n this.engineName = engineName;\n this.baseURL = baseURL;\n\n if (configs?.interceptorConfig?.shouldCache) {\n this.ttlCache = new TTLCache(configs?.interceptorConfig?.cacheTTL);\n }\n\n this.get = this.createMethod('get');\n\n this.post = this.createMethod('post');\n\n this.delete = this.createMethod('delete');\n\n this.put = this.createMethod('put');\n }\n\n createMethod(method: Methods): (...args: RequestArgs) => Promise | T> {\n return async (...args: RequestArgs): Promise | T> => {\n const { url, config, data } = argumentParser(method, args);\n\n // it enables to override request layer's interceptor configs\n // so configs are prioritized for endpoints, not for layer configs\n const modifiedInterceptorConfig = config\n ? constructInterceptorConfig(config, this.configs?.interceptorConfig)\n : this.configs?.interceptorConfig;\n\n const req: RequestContext = {\n url,\n config: { method, ...config },\n data: (data as T),\n interceptorConfig: modifiedInterceptorConfig,\n engineName: this.engineName\n };\n\n const shouldCacheRun = this.ttlCache && !config?.disableCache && modifiedInterceptorConfig?.shouldCache;\n\n if (!modifiedInterceptorConfig?.disableRequestInterceptors) {\n this.interceptors?.preRequest?.run(req);\n }\n\n const cacheRequest: RequestContext = {\n ...req,\n data: req.data instanceof FormData ? Object.fromEntries(req.data as unknown as Iterable) : req.data,\n interceptorConfig: {\n ...req.interceptorConfig,\n customRequestInterceptors: [],\n customResponseInterceptors: []\n }\n };\n\n if (shouldCacheRun) {\n const cachedResponse = await this.ttlCache?.get(cacheRequest);\n if (cachedResponse) {\n return cachedResponse as ResponseResult;\n }\n }\n\n let resp: Responses;\n let ctx: ResponseContext;\n\n switch (method) {\n case 'get':\n case 'delete':\n case 'post':\n case 'put': {\n let engineResponse;\n try {\n engineResponse = await this.engineInstance[method](req.url, req.config, req.data);\n } catch (e) {\n resp = this.mapEngineResponse(e as Awaited>);\n ctx = {\n resp, config: req.config, interceptorConfig: modifiedInterceptorConfig, engineName: this.engineName, result: resp\n };\n this.interceptors?.postFailedRequest?.run(ctx);\n\n throw e;\n }\n\n resp = this.mapEngineResponse(engineResponse);\n\n ctx = {\n resp,\n config: req.config,\n interceptorConfig: modifiedInterceptorConfig,\n engineName: this.engineName,\n result: resp\n };\n break;\n }\n\n default: {\n const customMethod = this.engineInstance.createRequestMethod(method);\n resp = await customMethod(url, config, data as T) as Responses;\n ctx = {\n resp, config: req.config, interceptorConfig: modifiedInterceptorConfig, engineName: this.engineName, result: resp\n };\n }\n }\n\n if (!modifiedInterceptorConfig?.disableResponseInterceptors) {\n this.interceptors?.postRequest?.run(ctx);\n }\n\n if (shouldCacheRun) {\n this.ttlCache?.add(cacheRequest, ctx.result);\n }\n\n return ctx.result;\n };\n }\n\n setTeamID(teamID: number): void {\n this.configs = {\n ...this.configs,\n interceptorConfig: {\n ...this.configs?.interceptorConfig,\n teamID\n }\n };\n }\n\n getTeamID(): DefaultInterceptorsConfig['teamID'] {\n return this.configs?.interceptorConfig?.teamID;\n }\n\n private mapEngineResponse = (\n awaitedEngineResp: Awaited>\n ): Responses => {\n switch (this.engineName) {\n default:\n return mapAxiosResponse(awaitedEngineResp) as Responses;\n }\n };\n}\n","import { ResponseInterceptor } from '../../types';\n\n// if rejected it returns AxiosResponse instead AxiosResponse.data\n// it is implemented to refactor projects that use RequestManager\nconst requestManagerResponseNormalizer: ResponseInterceptor = ctx => {\n if (ctx.interceptorConfig?.disableResponseNormalizer) {\n return;\n }\n\n const { resp } = ctx;\n\n if (resp && resp.data && typeof resp.data.responseCode === 'number'\n && (resp.data.responseCode < 200 || resp.data.responseCode > 299)) {\n ctx.result = Promise.reject(ctx.resp);\n return;\n }\n\n if (resp && resp.data) {\n ctx.result = resp.data?.content || resp.data;\n }\n};\n\nconst returnAxiosData: ResponseInterceptor = ctx => {\n // it is implemented for reqwest only\n if (ctx.engineName === 'AXIOS') {\n ctx.result = (new Promise(resolve => {\n if ('data' in ctx.resp) {\n resolve(ctx.resp.data);\n }\n }));\n }\n};\n\nexport const Interceptors = {\n requestManagerResponseNormalizer,\n returnAxiosData\n};\n","import trimEnd from 'lodash/trimEnd';\nimport { isEnterprise } from '@jotforminc/enterprise-utils';\n\nexport const getEnterpriseUrl = (): string => {\n if (window.JotForm && window.JotForm.enterprise) {\n return `https://${window.JotForm.enterprise}`;\n }\n\n if (window.JOTFORM_ENV === 'ENTERPRISE') {\n return `https://${window.location.host}`;\n }\n\n return '/';\n};\n\nexport const getEnterpriseLogo = (): string => {\n const url = getEnterpriseUrl();\n return `${trimEnd(url, '/')}/enterprise/logo.png`;\n};\n\nexport const getPublicApiURL = (): string => {\n const isEUDomain = /(?:eu\\.jotform)|(jotformeu\\.com)/.test(window.location.host);\n const isHipaaDomain = /(?:hipaa\\.jotform)/.test(window.location.host);\n switch (true) {\n case /jotform.pro/.test(window.location.host):\n return '/API';\n case isEUDomain:\n return 'https://eu-api.jotform.com';\n case isHipaaDomain:\n return 'https://hipaa-api.jotform.com';\n case Boolean(window.JotFormAPIEndpoint):\n return window.JotFormAPIEndpoint;\n default:\n return 'https://api.jotform.com';\n }\n};\n\nexport const getAPIURL = (): string => {\n // !add temporarily production test check\n if (window.location.host === 'hipaa.jotformers.com') {\n return '/API';\n }\n\n if (isEnterprise()) {\n return '/API';\n }\n\n if (/(?:jotform\\.ooo)/.test(window.location.host)) {\n return '/API';\n }\n\n if (/(?:alt\\.jotfor\\.ms)/.test(window.location.host)) {\n return '/API';\n }\n\n return getPublicApiURL();\n};\n\nexport const getDomainFromAPI = (apiURL: string): string => {\n const liteURL = apiURL.replace(/^http:\\/\\/|^https:\\/\\/|^\\//, '');\n const apiServerMap = {\n 'api.jotform.com': 'https://www.jotform.com',\n 'eu-api.jotform.com': 'https://eu.jotform.com',\n 'hipaa-api.jotform.com': 'https://hipaa.jotform.com',\n API: window.location.origin\n };\n return apiServerMap[liteURL as keyof typeof apiServerMap] || 'https://www.jotform.com';\n};\n\nexport const getDomainURL = (): string => {\n const isInternRDS = window.location.href.includes('.jotform.dev');\n if (isInternRDS) {\n return '';\n }\n\n if (!window.JotForm) {\n return getDomainFromAPI(getAPIURL());\n }\n\n const enterpriseEnv = isEnterprise();\n /* eslint-disable no-undef */\n switch (true) {\n case enterpriseEnv:\n return getEnterpriseUrl();\n case /jotform\\.pro/.test(window.location.origin):\n case window.JotForm.hipaa:\n return window.location.origin;\n default:\n return `https://${window.location.hostname.replace(/^form./, '')}`; // TODO: better way.\n }\n /* eslint-enable no-undef */\n};\n\nexport const getURLDomain = (url: string): string | boolean => {\n if (url && url.length > 0) {\n try {\n const urlObj = new URL(url);\n return urlObj.hostname;\n } catch (e) {\n return false;\n }\n }\n return false;\n};\n\nexport const replaceURLDomain = (url: string, newDomain: string): string => {\n if (newDomain && newDomain.length > 0) {\n try {\n const urlObj = new URL(url);\n urlObj.hostname = newDomain;\n return urlObj.toString();\n } catch (e) {\n return url;\n }\n }\n return url;\n};\n\nexport const getCombinedInfoURLByProduct = (resourceID: string, productType: string): string => {\n const apiURL = getAPIURL();\n let loginURL;\n switch (productType) {\n case 'form':\n loginURL = `${apiURL}/formuser/${resourceID}/combinedinfo?master=1`;\n break;\n default:\n loginURL = `${apiURL}/formuser/combinedinfo?master=1`;\n break;\n }\n return window?.JFAppsManager?.isOpenedInPortal() ? `${loginURL}&jotform_pwa=1` : loginURL;\n};\n","import { CaptureContext, Scope, Options } from '@sentry/types';\nimport { SnippetOptions, UserVars } from '@fullstory/browser';\n\n// Senrty types\nexport interface SentryOptions extends Options {\n allowUrls?: Array;\n denyUrls?: Array;\n whitelistUrls?: Array;\n blacklistUrls?: Array;\n}\nexport declare type ExtraOptions = CaptureContext;\nexport declare type ScopeOptions = (scope: Scope) => void;\n\n// FullStory types\nexport declare type FullstoryOptions = SnippetOptions;\nexport declare type FullstoryUserVars = UserVars;\n\nexport enum Severity {\n Fatal = 'fatal',\n Error = 'error',\n Warning = 'warning',\n Log = 'log',\n Info = 'info',\n Debug = 'debug',\n Critical = 'critical'\n}\n","import * as FullStory from '@fullstory/browser';\nimport { FullstoryOptions } from './types';\n\nclass FullStoryManager {\n constructor(\n fullStoryConfigs: FullstoryOptions\n ) {\n FullStory.init(fullStoryConfigs);\n }\n\n activeTrackings = new Set();\n\n setUserVars = (customVars: FullStory.UserVars): void => {\n const { displayName, email, ...projectVars } = customVars;\n Object.keys(projectVars).forEach(key => this.activeTrackings.add(key));\n\n FullStory.setUserVars({\n ...projectVars,\n email,\n displayName,\n activeTrackings: Array.from(this.activeTrackings.values())\n });\n };\n\n isInitialized = FullStory.isInitialized;\n\n event = FullStory.event;\n\n identify = (uid: string, customVars?: FullStory.UserVars): void => {\n const { displayName, email, ...projectVars } = customVars || {};\n Object.keys(projectVars).forEach(key => this.activeTrackings.add(key));\n FullStory.identify(uid, {\n ...projectVars,\n email,\n displayName,\n activeTrackings: Array.from(this.activeTrackings.values())\n });\n };\n\n shutdown = FullStory.shutdown;\n\n restart = FullStory.restart;\n\n getCurrentSessionURL = FullStory.getCurrentSessionURL;\n}\n\nexport default FullStoryManager;\n","import {\n BrowserOptions, browserTracingIntegration, captureConsoleIntegration, contextLinesIntegration, ErrorEvent,\n extraErrorDataIntegration\n} from '@sentry/react';\n\nconst IGNORED_ERRORS = [\n // Random plugins/extensions\n 'top.GLOBALS',\n // See: http://blog.errorception.com/2012/03/tale-of-unfindable-js-error. html\n 'originalCreateNotification',\n 'canvas.contentDocument',\n 'MyApp_RemoveAllHighlights',\n 'http://tt.epicplay.com',\n 'Can\\'t find variable: ZiteReader',\n 'jigsaw is not defined',\n 'ComboSearch is not defined',\n 'http://loading.retry.widdit.com/',\n 'atomicFindClose',\n // Facebook borked\n 'fb_xd_fragment',\n // ISP \"optimizing\" proxy - `Cache-Control: no-transform` seems to\n // reduce this. (thanks @acdha)\n // See http://stackoverflow.com/questions/4113268\n 'bmi_SafeAddOnload',\n 'EBCallBackMessageReceived',\n // See http://toolbar.conduit.com/Developer/HtmlAndGadget/Methods/JSInjection.aspx\n 'conduitPage',\n 'tinymce',\n /tinymce/,\n 'for=',\n // tinymce related errors\n /tinymce-4\\.5\\.2/,\n // Error generated by a bug in auto-fill library from browser\n // https://github.com/getsentry/sentry/issues/5267\n /Blocked a frame with origin/,\n // Below error is basically the browser complaining that\n // ResizeObserver wasn't able to complete its work within an animation frame.\n // See: https://stackoverflow.com/questions/49384120\n 'ResizeObserver loop limit exceeded',\n // This error comes from the EDGE and IE users that uses Visual basic\n // to connect to jotform, when the connection fails, we receive below error on sentry\n 'The remote server machine does not exist or is unavailable',\n // Some firefox versions on windows devices throws below error\n // possibly thrown from an firefox add-on\n 'can\\'t redefine non-configurable property \"userAgent\"',\n 'SVGAnimatedString',\n 'You have entered your current password wrong.',\n 'New password should have minimum 8 characters.',\n 'Username is not available.',\n 'Link is already taken.',\n 'URL Slug may only contain letters or combination of letters, numbers, dash and underscores (\"_-”).',\n /^.*(email address is already registered!).*$/gim,\n /^.*(You're not authorized to use).*$/gim,\n /^.*(hooks).*$/gim,\n /^.*(username).*$/gim,\n /^.*(password).*$/gim,\n /^.*(byte).*$/gim,\n 'zoid destroyed all components',\n // Google Auth Errors\n '[GSI_LOGGER]:'\n];\n\nfunction findValue(event: ErrorEvent, search: RegExp) {\n if (!event.exception || !event.exception.values) {\n return false;\n }\n\n let found = false;\n event.exception.values.forEach(value => {\n if (!value.value) {\n return false;\n }\n found = search.test(value.value);\n return !found;\n });\n return found;\n}\n\n/**\n * Determines if a string or regex is included in another string\n * @param {string} str string to search\n * @param {string | RegExp} search string or regex to search for\n * @returns {boolean} true if search is found in str\n */\nfunction includes(str: string, search: string | RegExp): boolean {\n if (typeof search === 'string') {\n return str.includes(search);\n }\n return search.test(str);\n}\n\nexport const defaultSentryConfigs: BrowserOptions = {\n integrations: [\n browserTracingIntegration({\n traceFetch: false,\n traceXHR: false\n }),\n captureConsoleIntegration({ levels: ['error'] }),\n extraErrorDataIntegration(),\n contextLinesIntegration()\n ],\n attachStacktrace: true,\n sampleRate: 0.1,\n tracesSampler: ({ attributes }) => {\n // send pageload traces with 0.1% probability\n if (attributes?.['sentry.op'] === 'pageload') {\n return 0.001;\n }\n // default trace rate\n return 0.1;\n },\n debug: false,\n environment: 'production',\n allowUrls: [\n /https?:\\/\\/.*jotform\\.com/,\n /https?:\\/\\/cdn([0-9]*)\\.jotfor\\.ms/,\n /https?:\\/\\/.*jotform\\.pro/\n ],\n normalizeDepth: 50,\n denyUrls: [\n // Facebook flakiness\n /graph\\.facebook\\.com/i,\n // Facebook blocked\n /connect\\.facebook\\.net\\/en_US\\/all\\.js/i,\n // Woopra flakiness\n /eatdifferent\\.com\\.woopra-ns\\.com/i,\n /static\\.woopra\\.com\\/js\\/woopra\\.js/i,\n // Chrome extensions\n /extensions\\//i,\n /^chrome:\\/\\//i,\n // Other plugins\n /127\\.0\\.0\\.1:4001\\/isrunning/i, // Cacaoweb\n /webappstoolbarba\\.texthelp\\.com\\//i,\n /metrics\\.itunes\\.apple\\.com\\.edgesuite\\.net\\//i,\n /tinymce/i,\n /^.*(https:\\/\\/api.jotform.com\\/translationList).*$/gim,\n /^.*(pagead\\/viewthroughconversion).*$/gim\n ],\n ignoreErrors: IGNORED_ERRORS,\n // eslint-disable-next-line complexity, max-statements\n beforeSend: (event, hint) => {\n if (/Android 4\\.4\\.[2,4]/.test(window.navigator.userAgent)) {\n return null;\n }\n\n // Non error promise rejection events\n if (/Non-Error promise rejection/i.test(event?.message || '')) {\n return null;\n }\n\n // tinymce errors\n if (/cloneNode/i.test(event?.message || '')) {\n return null;\n }\n\n if (/t is null/i.test(event?.message || '')) {\n return null;\n }\n\n if ((event.message && /\"Invariant Violation\"/.test(event.message)) || findValue(event, /\"Invariant Violation\"/)) {\n return null;\n }\n\n // Ignore FS errors\n if (findValue(event, /\"Timeout \\(h\\)\"/)) {\n return null;\n }\n\n if (findValue(event, /\"Timeout\"/)) {\n return null;\n }\n\n if (findValue(event, /\"Unable to find node on an unmounted component.\"/)) {\n return null;\n }\n\n const error = hint?.originalException as {message: string};\n if (error?.message) {\n const { message } = error;\n const exactErrors = [\n 'chrome is not defined', // Firefox extension tries to use chrome object\n 'tm_x is not defined', // Chrome Mobile WebView 99, Android 9;\n 'twttr is not defined', // Twitter GTM tag errors\n \"Can't find variable: $\",\n \"Can't find variable: al_onPoststitialDismiss\", // 3rd party, Mobile Safari UI/WKWebView, iOS 15.3.1\n \"Can't find variable: article\",\n \"Can't find variable: twttr\", // Twitter GTM tag errors\n \"Can't find variable: WeixinJSBridge\", // 3rd party, Mobile Safari UI/WKWebView, iOS 13.6\n \"Identifier 'boundExec' has already been declared\", // 3rd party, Windows 10\n \"Identifier 'kImgMinWidth' has already been declared\", // Chrome Mobile WebView 87, Android 11\n \"Unexpected token 'var'\"\n ];\n\n const partialErrors = [\n '__firefox__', // Firefox internal errors\n '__show__deepen', // noise likely coming from browsers/extensions\n 'ats.js', // ATS tracker script (probably coming from GTM)\n 'BetterJsPop', // adblocker\n 'C3 is not defined', // coming from C3 maps script\n 'checkDomStatus', // likely coming from ads/campaigns\n 'chrome-extension',\n 'Could not find googletag', // Another possible GTM issue\n 'Could not find Nativo', // Nativo third-party script\n 'crazyegg',\n 'crypto.getRandomValues', // third-party app\n 'customDispatchEvent is not defined', // Issue coming from crazyegg third-party script\n 'DomNode has not been set for this SimpleScriptable', // HTMLUnit issue coming from very old browsers\n 'DOMNodeInsertedByJs', // Coming from an Android browser called Crosswalk\n 'fb.js', // Issues coming from Facebook pixel/third-party script on GTM\n 'First argument to Readability constructor should be a document object', // Readability app on Mobile devices\n 'fixedTimeID is not defined', // Likely coming from a browser extension\n 'getHiAnalysticsParam', // Coming from Huawei mobile devices\n 'grecaptcha is not defined', // Coming from recaptcha\n 'instantSearchSDKJSBridgeClearHighlight', // Bing Instant Search issue with Edge on iOS\n 'Java exception was raised', // Android internal issues\n 'keydownt', // Coming from a chrome extension\n 'langDetector is not defined', // Translation third-party script\n 'localStorage', // mobile device settings\n 'MoatMAK', // Issues coming from Mobile ads (MRAID SDK)\n 'mobincube', // third-party app\n 'moz-extension', // Firefox\n 'mraid', // Issues coming from Mobile ads (MRAID SDK)\n 'NetworkError: Load failed', // Fetch issue on user browser\n 'NotAllowedError: Read permission denied', // User browser issue originated from third-party scripts\n 'notifyCurrentVideoState is not defined', // Coming from Mobile devices\n 'NS_ERROR_', // Firefox internal errors\n 'Object Not Found Matching Id:', // Microsoft Outlook SafeLink crawlers\n 'onAPWebViewPause', // Issue coming from Webviews on Mobile devices\n 'onTabScrolled is not defined', // Might be coming from browser extensions or third-party apps\n 'perfectbrowsr_nodecheck', // browser extension\n 'pktAnnotationHighlighter', // Issues coming from Pocket on iOS\n 'prebidjs', // Coming from a bidding external script (Prebid.js)\n 'privateSpecialRepair', // likely coming from ads/campaigns\n 'QK_middlewareReadModePage', // noise from ads/campaigns\n 'Quora Pixel Error',\n 'redefine property: googletag', // GTM\n 'safari-extension',\n 'safari-web-extension',\n 'safari.self.tab.setContext', // Safari browser error\n 'SecurityError: Blocked a frame with origin', // CORS issues from users or third-party scripts/apps\n 'sendBeacon', // Issues coming from Cloudflare beacon.min.js script\n 'setIOSParameters', // Mobile Safari browser issue on iOS\n 'Taboola', // Taboola third-party script\n 'tgetT is not defined', // 3rd party\n 'TypeError: WebKit', // Safari (WebKit) internal issues\n 'ucapi is not defined', // Might be coming from browser extensions or third-party apps\n 'UCShellJava', // noise coming from UC Browser\n 'UXCam', // third-party app\n 'vid_mate_check', // third-party app\n 'VUE_DEVTOOLS_IFRAME', // Issue coming from Vue Devtools extension\n 'webkitExitFullScreen', // Mobile Safari browser issue on iOS\n 'window.appHotStart', // Might be coming from browser extensions or third-party apps\n 'window.bannerNight', // Might be coming from browser extensions or third-party apps\n 'window.getPlayer is not a function', // Third-party scripts\n 'window.huawei', // Coming from Huawei mobile devices\n 'window.onunload is not a function', // Third-party scripts\n 'window.performance.getEntries is not a function', // Trying to access from console in unsupported browser\n 'window.regainData is not a function', // Third-party scripts\n 'window.showAngularStats', // Might be coming from browser extensions or third-party apps\n 'zaloJSV2', // Zalo API\n 'Zotero', // third-party app\n \"Can't find variable: al_\", // Appears only on Apple devices, related to tracking\n \"Failed to read the 'cookie' property from 'Document'\", // User browser issue to fetch cookies\n \"getElementsByTagName('video')\", // Mobile Safari browser issue on iOS\n \"Identifier 'VIDEO_PLAYING'\", // noise likely coming from browsers/extensions\n 'GSI_LOGGER', // Google auth noise\n 'ReferenceError: UET is not defined', // happens when bing is blocked by adblockers\n '[olark]', // olark chatbot errors\n '[Meta Pixel]' // pixel initialization errors\n ];\n\n const patterns = [\n /window.cb\\d+ is not a function/ // 3rd party, Windows 10, Edge 98.0.1108\n ];\n\n if (\n exactErrors.includes(message)\n || partialErrors.some(partialError => message.includes(partialError))\n || patterns.some(pattern => pattern.test(message))\n ) {\n return null;\n }\n\n const parsedEvent = JSON.stringify(event);\n\n const match = [\n '/Users/', // MacOS localhost\n 'adblocker', // Ad blockers\n 'addons/pops/license', // Coming from random addons\n 'ads/pixel.js', // Reddit Pixel\n 'ats.js', // ATS tracker script (probably coming from GTM)\n 'bad-network-popup', // third-party script\n 'beacon.min.js', // Cloudflare script\n 'beforeLoad_SafariV2.js', // Coming from Safari extensions\n 'BVProxy.min.js', // BVProxy external script\n 'C:\\\\Users\\\\', // Windows localhost\n 'card-injection.js', // coming from a netfree.link website, might be an extension or app\n 'chrome-extension',\n 'clarity.js', // Microsoft Clarity analytics tool\n 'common-scripts', // Third-party scripts such as CrazyEgg\n 'crypto.getRandomValues', // third-party app\n 'fb.js', // Issues coming from Facebook pixel/third-party script on GTM\n 'Grammarly.js', // Grammarly extension\n 'gtm.js', // GTM main script\n 'hstc.tracking', // Hubspot tracking script\n 'localStorage', // Mobile device settings (usually coming from Android)\n 'MathJax.js', // MathJax.js script\n 'moz-extension', // Firefox\n 'nrWrapper', // NewRelic\n 'processRandomSelector', // noise from ads/campaigns\n 'r.beacon', // NewRelic\n 'recaptcha/releases',\n 'RILLONGPRESS', // third-party script\n 'safari-extension',\n 'safari-web-extension',\n 'setupPops', // Chrome issue coming from adblockers\n 'setupPops', // Chrome issue coming from adblockers\n 'SnapTube', // External app to download videos\n 'srcIsLegacy', // Drift third-party script\n 'translate_http', // Issues coming from Google Translate API\n 'uwt.js', // Twitter Universal Tag\n 'zteEnd' // Coming from an external script related to ZTE phones\n ].some(predicate => parsedEvent.includes(predicate));\n\n if (match) {\n return null;\n }\n }\n\n const values = event?.exception?.values;\n if (values?.length) {\n const [{\n type, value, stacktrace\n }] = values;\n\n if (type === 'UnhandledRejection') {\n // Google reCAPTCHA timeout exceptions\n const recaptchaPattern = /^Non-Error promise rejection captured with value: Timeout( \\(\\w\\))?$/;\n if (recaptchaPattern.test(value || '')) {\n return null;\n }\n if (!stacktrace && value === 'Non-Error promise rejection captured with keys: errors, message, name') {\n const extra = event?.extra;\n if (extra) {\n const message = (extra.__serialized__ as {message: string})?.message;\n\n // 3rd party code RxJS error, supposedly Grammarly extension\n if (message === '1 errors occurred during unsubscription:\\n1) RangeError: Maximum call stack size exceeded.') {\n return null;\n }\n }\n }\n // Do not send errors like \"Non-Error promise rejection captured with value: content, keys, name\"\n // as these are handled in some other/hacky way in the code\n if (value && (value.includes('Object captured as promise rejection with keys:') || value.includes('Non-Error promise rejection captured with keys:'))) {\n if (value.includes(',')) {\n return null;\n }\n }\n }\n }\n\n if (event?.extra?.arguments) {\n const parsedArguments = JSON.stringify(event.extra.arguments);\n if (IGNORED_ERRORS.some(ignored => includes(parsedArguments, ignored))) {\n return null;\n }\n }\n\n if (event?.breadcrumbs instanceof Array && event?.breadcrumbs.length > 0) {\n const fullStoryBreadcrumbs = event.breadcrumbs.filter(breadcrumb => breadcrumb.category === 'xhr' && breadcrumb.data?.url?.includes('https://rs.fullstory.com/rec/bundle/v2?OrgId=K1ZZ'));\n if (fullStoryBreadcrumbs.length > 0) {\n if (event?.tags) {\n // eslint-disable-next-line no-param-reassign\n event.tags.withFullStory = true;\n }\n } else if (event?.tags) {\n // eslint-disable-next-line no-param-reassign\n event.tags.withFullStory = false;\n }\n }\n return event;\n }\n};\n","import * as Sentry from '@sentry/react';\nimport { ExclusiveEventHintOrCaptureContext } from '@sentry/core/types/utils/prepareEvent';\nimport { SentryOptions } from './types';\nimport { defaultSentryConfigs } from '../constants';\n\nclass SentryManager {\n constructor(sentryOptions: SentryOptions) {\n if (sentryOptions.dsn) {\n window.errorTracking = true; // FIXME: this is needed for some breadcrumbs, we should refactor code that uses this window variable\n Sentry.init({ ...defaultSentryConfigs, ...sentryOptions });\n }\n }\n\n captureException = (exception: unknown, hint?: ExclusiveEventHintOrCaptureContext): string => {\n if (exception instanceof Error) {\n return Sentry.captureException(exception, hint);\n }\n // we do not care about exceptions type at this point, just throwing an error is enough\n const exceptionAsString = exception as string;\n return Sentry.captureException(new Error(exceptionAsString), hint);\n };\n\n captureMessage = Sentry.captureMessage;\n\n configureScope = (fn: (scope: Sentry.Scope) => void): void => {\n const scope = Sentry.getCurrentScope();\n fn(scope);\n };\n\n configureGlobalScope = (fn: (scope: Sentry.Scope) => void): void => {\n const scope = Sentry.getGlobalScope();\n fn(scope);\n };\n\n captureEvent = Sentry.captureEvent;\n\n createReduxEnhancer = Sentry.createReduxEnhancer;\n}\nexport default SentryManager;\n","import {\n getEnv, isHIPAA, isEU, getActiveApp, getRevision\n} from '@jotforminc/router-bridge';\nimport trackingList from '@jotforminc/tracking-config';\nimport { CaptureContext, EventHint, Event } from '@sentry/types';\nimport { SentryEnhancerOptions } from '@sentry/react/types/redux';\n\nimport FullStoryManager from './FullStoryManager';\nimport SentryManager from './SentryManager';\nimport {\n FullstoryOptions, ScopeOptions, SentryOptions, FullstoryUserVars\n} from './types';\n\nclass TrackingManager {\n sentry: SentryManager | undefined;\n\n sentryOptions: SentryOptions | undefined;\n\n FS: FullStoryManager | undefined;\n\n fullstoryOptions: FullstoryOptions | undefined;\n\n enableSentry(config: object, forceEnable = false): void {\n if (forceEnable || (getEnv() === 'PRODUCTION' && !isHIPAA() && !isEU())) {\n try {\n const activeApp = getActiveApp();\n const doesSentryNameExist = trackingList[activeApp]?.sentry.name;\n const appName = activeApp === 'listings' ? 'js-listings' : activeApp;\n this.sentry = new SentryManager({ ...config, ...(doesSentryNameExist && { release: `${appName}@${getRevision()}` }) });\n } catch (error) {\n console.log('Failed to initialize Sentry !');\n }\n }\n }\n\n enableFS(userVars: FullstoryUserVars | null = null): void {\n if (getEnv() === 'PRODUCTION' && !isHIPAA() && !isEU()) {\n try {\n if (!this.FSisInitialized()) {\n this.FS = new FullStoryManager({ orgId: 'K1ZZ', debug: false });\n }\n\n if (userVars) {\n this.setUserVars(userVars);\n }\n } catch (error) {\n console.log('Failed to initialize Fullstory !');\n }\n }\n }\n\n initTypes = {\n sentry: (config: object, forceEnable: boolean): void => this.enableSentry({ ...config }, forceEnable),\n fullStory: (): void => this.enableFS()\n };\n\n enableErrorTracking(appName: string, forceEnable = false, extraConfigs: typeof trackingList = {}): void {\n const configs = {\n sentry: {\n ...trackingList?.[appName]?.sentry,\n ...extraConfigs?.sentry\n },\n fullStory: {\n ...trackingList?.[appName]?.fullStory,\n ...extraConfigs?.fullStory\n }\n };\n if (!Object.keys(configs.sentry || {}).length && !Object.keys(configs.fullStory || {}).length) {\n console.log(`Error tracking config couldn't found for ${appName}`);\n return;\n }\n // eslint-disable-next-line no-restricted-syntax\n for (const trackingType in configs) {\n if (trackingType !== 'sentry' && trackingType !== 'fullStory') {\n continue;\n }\n const config = configs[trackingType];\n if (config === undefined) continue;\n const { enable, ...rest } = config;\n if (enable) {\n if (!this.initTypes[trackingType]) {\n console.error(`Tracking type ${trackingType} couldn't found`);\n continue;\n }\n this.initTypes[trackingType]({ ...rest }, forceEnable);\n }\n }\n }\n\n captureException(error: unknown, extras?: CaptureContext): void {\n if (this.sentry) {\n this.sentry?.captureException(error, extras);\n } else if (error instanceof Error) {\n console.log(`Sentry not initialized! \\nIf it's initialized, it would capture exception for ${error}\\nStack:${error.stack}`);\n } else {\n console.log(`Sentry not initialized! \\nIf it's initialized, it would capture exception for ${error}`);\n }\n }\n\n captureMessage(message: string, extras?: CaptureContext): void {\n if (this.sentry) {\n this.sentry?.captureMessage(message, extras);\n } else {\n console.log(`Sentry not initialized! \\nIf it's initialized, it would capture message for ${message}`);\n }\n }\n\n configureScope(callback: ScopeOptions): void {\n this.sentry?.configureScope(callback);\n }\n\n configureGlobalScope(callback: ScopeOptions): void {\n this.sentry?.configureGlobalScope(callback);\n }\n\n captureEvent(event: Event, hint?: EventHint): void {\n this.sentry?.captureEvent(event, hint);\n }\n\n createReduxEnhancer(enhanceOptions?: Partial): void {\n return this.sentry?.createReduxEnhancer(enhanceOptions);\n }\n\n setUserVars(userVars: FullstoryUserVars): void {\n this.FS?.setUserVars(userVars);\n }\n\n FSisInitialized(): boolean | undefined {\n return this.FS?.isInitialized();\n }\n\n event(eventName: string, eventProperties: { [key: string]: unknown }): void {\n this.FS?.event(eventName, eventProperties);\n }\n\n getCurrentSessionURL(): string | undefined | null {\n return this.FS?.getCurrentSessionURL();\n }\n\n identify(uid: string, customVars?: FullstoryUserVars): void {\n this.FS?.identify(uid, customVars);\n }\n\n shutdown(): void {\n this.FS?.shutdown();\n }\n\n restart(): void {\n this.FS?.restart();\n }\n}\n\nexport default TrackingManager;\n","import { TrackingManager as TManager } from './utils';\n\nconst TrackingManager = new TManager();\n\nexport default TrackingManager;\n"],"names":["window","module","getFSEnabledForSignFiller","e","_g","_path2","_path3","_path4","_path5","_path6","_path7","_path8","_path9","_path10","_path11","_global_window___jfCommonHeaderProps","_global_window1","_global_window2","_global_window___jfCommonHeaderProps1","_global_window___jfCommonHeaderProps2","_global_window___jfCommonHeaderProps3","_global_window___jfCommonHeaderProps4","_global_window___jfCommonHeaderProps5","_global_window___jfCommonHeaderProps6","_global_window___jfCommonHeaderProps7","_global_window___jfCommonHeaderProps8","_global_window___jfCommonHeaderProps9","_global_window___jfCommonHeaderProps10","_global_window___jfCommonHeaderProps11","_global_window___jfCommonHeaderProps12","_global_window___jfCommonHeaderProps13","_global_window___jfCommonHeaderProps14","_global_window___jfCommonHeaderProps15","_global_window___jfCommonHeaderProps16","_global_window___jfCommonHeaderProps17","_this","_global_window___jfCommonHeaderProps18","_this1","_global_window___jfCommonHeaderProps19","_global_window___jfCommonHeaderProps20","_global_window___jfCommonHeaderProps21","_global_window___jfCommonHeaderProps22","_global_window___jfCommonHeaderProps23","__webpack_public_path__","getAssetPath","LoginGroupPreLoader","hideLoginButton","hideSignupButton","contactSalesAbTestVariation","contactSalesAbTestVariationURL","CONTACT_SALES_AS_CTA","CONTACT_SALES_AS_ITEM","CONTACT_SALES_AB_TEST_VARIATIONS","t","shouldRenderSignupButton","bool","string","PreLoaders","isLoggedIn","username","avatarUrl","AccountBoxAvatar","HamburgerButton","onClick","isActive","cx","IconXmark","IconBars","func","f","ScHeaderNavigation","styled","Navigation","LoginGroupRenderer","children","isMobileScreen","isMobile","disableLoginFlow","replaceAuthButtons","showLoginGroup","elementType","node","Object","n","arguments","r","props","DefaultMenuType","menuItems","isOpen","currentPath","isMobileMenuActive","isCurrent","setIsCurrent","useState","useEffect","url","isSamePath","defaultMenuTypeClasses","name","title","target","array","TemplatesMenuType","menuTitle","showAiAgentBanner","TemplatesMenuTypeClasses","icon","IntegrationsMenuType","IntegrationsMenuTypeClasses","subTitle","seeMore","subLinks","item","IconChevronRight","TEXTS","ProductsMenuType","sideMenuItems","sideMenuTitle","sideMenuSeeMoreTitle","sideMenuSeeMoreUrl","ProductsMenuTypeClasses","urlGuest","DedicatedSupportSection","logAbTestAction","ASSET_IDENTIFIER","CONTACT_SALES_URL","CTA_URLS","gaAttributes","createGaAttributes","gaAttributesCs","GA_SUFFIXES","setEPActions","handleContactSalesClick","saveCustomerAsHubspotFormByUsername","SDR_SOURCES","error","console","handleCustomNavigation","translationRenderer","text","ALL_TEXTS","IconArrowRight","SupportMenuType","unreadSupportAnswerCount","SupportMenuTypeClasses","filteredMenuItems","loginRequired","shouldShowSupportAnswersCount","count","isEnterprise","ProfessionalServicesBanner","number","SignMenuType","SignMenuTypeClasses","PdfEditorMenuType","PdfEditorMenuTypeClasses","splitArray","items","menuTypes","WrapperComponent","classNames","menuType","renderAs","newUrl","showRedDot","event","a11yClickHandler","ArrowIcon","NavLink","user","openedMenu","setOpenedMenu","linkClassName","badge","logHeaderAction","className","isPricing","menuProps","MenuComponent","MENU_TYPES","combinedClassname","linkClassname","setTimeout","prev","_user_campaign","utmCampaign","utmSource","utmContent","GrowthAssetManager","object","oneOf","undefined","myFormsNavItem","templatesNavItem","integrationsNavItem","productsNavItem","MENU_BADGE_TYPES","supportNavItem","enterpriseNavItem","pricingsNavItem","pdfEditorNavItem","signNavItem","_defaultNavItems","getUrlParameter","productsJson","NavItems","navItems","defaultNavItems","NO_INTEGRATIONS_MENU","linkProps","SignupButtonMobile","BadgeGovernment","theme","isDarkTheme","GovernmentSvg","themePropType","BadgeHipaa","HipaaSvg","SideLink","logoSideLinkProps","sideLinkText","dividerColor","sideLinkUrl","sideLinkClassName","sideLinkTextColor","sideLinkLogoAsHtmlString","linkClasses","sideLinkClasses","Badge","selectBadge","_currentPath_replace","showGovernmentBadge","isHIPAA","pathname","page","logoSideLinkPropsPropTypes","logoSideLinkPropsDefaultProps","LogoVisual","isKorean","logoFullLight","SelectedLogo","LogoJotformKoreanFullLight","LogoJotformFullLight","LogoJotformKoreanLight","LogoJotformLight","isLightTheme","isGrayTheme","LogoJotformKoreanDark","LogoJotformDark","logoPropsPropTypes","logoPropsDefaultProps","Logo","isSticky","language","logoUrl","customLogoAsReactElement","customLogoAsHtmlStringProp","customDarkLogoAsHtmlString","enterpriseLogoSrc","customLogoAsHtmlString","THEME_MAP","isCustomLogo","logoSvgClasses","handleClick","LogoGroup","logoProps","ScHeaderWrapper","ScHeaderContainer","ScHeader","ScLogoWrapper","ContactSalesMobile","HeaderBody","AppPickerRenderer","customNavItems","forceRTL","bgColor","fullWidth","onMobileMenuButtonClick","onMobileSignupButtonClick","menuStyles","_global_window_document_querySelector","bgStyles","setBgStyles","outlineWrapper","initLanguageSwitcherTest","languageSwitcher","setLanguageSwitcherVisible","_global_window","document","readCookie","languageList","Array","link","lang","browserLanguage","domainLanguage","isSwitchLanguageAvailable","abTestManager","ABTestManager","logAbTestActionLangSwitcher","global","ModeContext","createContext","ModeProvider","stickyMode","dropdownDefaultProps","commonInputDefaults","dropdownOptionCVA","cva","primary","dropdownOptionIconCVA","dropdownListCVA","dropdownSearchInputCVA","dropdownResultNotFoundCVA","tagCVA","tagTextCVA","tagIconCVA","Tag","colorStyle","size","BadgeIcon","disabled","rest","tagClassName","tagButtonClassName","hasIcon","hasChildren","allowedKeys","Dropdown","readOnly","required","placeholder","noResultFoundText","searchable","placeholderIcon","ghost","defaultValue","onChange","id","multiple","expand","showCountOnly","style","useFormControl","setIsOpen","activeIndex","setActiveIndex","selectedIndex","setSelectedIndex","selectedOptionArray","setSelectedOptionArray","selectedOption","setSelectedOption","searchTerm","setSearchTerm","resultNotFound","setResultNotFound","defaultValueArr","DropdownOption","value","OptionIcon","tagStyles","tagColorStyle","getItemProps","handleSelect","handleMultiSelect","useDropdownContext","indent","useDropdownGroupContext","ref","index","useListItem","isSelected","isChecked","option","iconMargin","dropdownOptionClassName","Checkbox","checked","chValue","LanguageSwitcher","_languages_find","visible","setVisible","switchText","languageCodeURLPaths","languagesAvailable","languages","langCode","longLangKey","path","langPrettyName","a","b","selectedLang","prettyBrowserLang","splitedSwithText","IconLocationPinFilled","newLang","hreflang","Button","setCookie","DeletedFormNotification","defaultVisible","onClose","isVisible","setIsVisible","isAnimationVisible","setIsAnimationVisible","useContext","JotformActionsContext","deletedFormClass","deletedFormInnerClass","deletedFormContentClass","CloseSvg","AppPickerBox","lazy","LoginGroup","Header","appPickerProps","hideAccountBox","hostname","loadLoginGroup","useLazyLoginGroup","useStickyHeader","languageSwitcherVisible","userType","UserContext","MobileMenuContext","disableAccountBox","isAppPickerEnabled","appPickerItems","attachObsoleteSignupLoadingFunctionToWindow","useEnterprisePromotions","useLazyIntegrationImages","addBrowserClassNames","toggleDocumentOverflowProperty","initLoginFlowTrioButtons","initGoogleOneTap","listenAppSignInOnFailure","runFooterCustomFunction","exceptionallyOverwriteUserDataForFormUser","USER_TYPES","isFsEnabledOnPage","identifyUserForFullstory","FS_PROJECT_NAME","useCallback","isEmpty","Suspense","handleSignupButtonMobileClick","yieldToMain","showLoginFlowModal","preLoaders","useMemo","updateFavicon","dark","mediaQuery","handleChange","showDeletedFormNotificationVisible","isAiAgentBannerAvailable","FlyInn","ExitModal","shape","HeaderProvider","showOneTapLoginArea","UserProvider","JotformActionsProvider","MobileMenuProvider","userTypePropType","jfRHeaderShadowHost","jfRHeaderDocument","jfRHeaderEl","rootEl","renderer","hydrate","render","isJotformer","_user_account_type","isMobileApp","isEnvProd","_window___jfrouter","ABTestVariantCache","ABTestVariantCacheClass","RequestLayer","Interceptors","isSalesforceEnv","customCheck","forceUserEligible","isValid","variation","StorageHelper","currentVariant","multipleVariants","variant","testVariantCode","cb","Promise","resolve","reject","params","layer","res","result","forceTestVariant","forceControlVariant","ActionManager","JotFormActions","actor","action","_this_JotFormActions","param","accountType","isJotFormer","projectName","trackOnce","enableDebugMode","Tooltip","targetRef","useCustomHandlers","onDeactivate","onActivate","activationEvent","deactivationEvent","isTooltipVisible","setTooltipVisibility","handleHoverEvent","handleLeaverEvent","Popover","ScUIKitButton","Styled","UIKitButton","ScUIKitTooltip","UIKitTooltip","React","innerRef","useRef","combinedRef","Hooks","setEpUserSettings","key","URLSearchParams","getEnterprisePromotionByAssetName","asset","searchParams","lastProductAssetInteraction","intent","isProd","paramsObj","ACTION_PROJECT_NAMES","isEnabled","isTrackerLoaded","setIsTrackerLoaded","handleScript","scriptEl","FeedbackForm","formUiModifier","checkUserType","isFeedbackFormOpen","setIsFeedbackFormOpen","iframeSrc","setIframeSrc","isIframeLoaded","setIsIframeLoaded","feedbackFormClasses","memoizedIframeSrc","email","nameFirst","nameLast","getUserPrefillValues","pathName","o","IconMessageEllipsisPencilFilled","Loading","IconXmarkSm","userPropType","PrefilledLeadFormAside","formIdProp","devFormID","isIframeEmbed","gaFormTrackingItems","customFormParamsPreparer","onFormSubmit","pageUrl","automatedNurturingSource","fullFormPath","isPrefillEnabled","isAdForm","isDynamicHeightEnabled","isFrameLoaded","isSubmissionLoggedRef","isFormFillingLoggedRef","isHubspotLoggedRef","formRef","userMandatoryData","getMandatoryPrefillValues","userData","formParamPreparer","prepareFormParams","formParams","formId","isDevelopment","SHOULD_SHOW_AD_FORM","LEAD_FORM_MAP","getDomainURL","_hsq","isHubspotTrackerLoaded","useHubspotTracker","iframeHeight","setIframeHeight","handleMessage","_formRef_current_querySelector","_formRef_current_querySelector1","_window_dataLayer","_event_data","height","jobTitle","country","iframeWindow","iframeDocument","formElement","trackingItem","selector","payload","element","SHORT_LEAD_FORM_IFRAME_ID","gaAttributesPropType","gaFormTrackingItemsPropType","AB_TEST","CAMPAIGN","PRODUCT","AUTOMATION","WEBINAR","ENTERPRSE_PROMOTIONS_ROOT_EL_ID","healthcareReportModalSeenAtUserSettingsKey","SEGMENTED_MODAL_TYPES","PRICING_TABLE_SOURCE_PAGES","EDUCATION","NONPROFIT","leadFlowBannerUrlParam","leadFlowBannerAutoVisibleLcStKey","FOLDER_LIMIT_MODAL","HELP_DEDICATED_SUPPORT_MODAL","WHITE_LABELING_MODAL","ASSIGN_TO_ORGANIZATON_MODAL","TEAMS_MODAL","TEAM_CREATION_LIMIT_MODAL","ADMIN_CONSOLE_DARK_MODAL","ENTERPRISE_DATA_CENTERS_MODAL","MY_ACCOUNT_USERS_SECTION_WITH_FORM","CONTACT_DEDICATED_SUPPORT_MODAL","EDUCATION_DISCOUNT_MODAL","EDUCATION_DISCOUNT_MODAL_FERPA_VIOLATION_EXAMPLES","SYSTEM_LOGS_MODAL","ADD_COLLABORATOR_MODAL","ENTERPRISE_CHECKOUT_LIKE_SECTION","SINGLE_COLUMN_DEDICATED_SUPPORT_MODAL","SCHEDULE_ZOOM_MODAL","GOVERNMENT_MODAL","GA_AD_FORM_TRACKING_ITEMS","ENTERPRISE_TEAMS_MODAL","APPEXCHANGE_MODAL","ENTERPRISE_BEGINNERS_BOOK_MODAL","PDF_DOWNLOAD_MODAL","ED_TECH_WEBINAR_MODAL","HEALTHCARE_AUTOMATION_STRATEGIES_WEBINAR_MODAL","LUNCH_AND_LEARN_MODAL","MAXIMUM_IMPACT_WEBINAR_MODAL","HEALTHCARE_TECHNOLOGY_MODAL","HEALTHCARE_FUTURE_WEBINAR_MODAL","ETT_EDUCATION_GATED_CONTENT_MODAL","ETT_EDUCATION_EXIT_INTENT_MODAL","FOMO_MODAL","FQHC_MODAL","HEALTHCARE_REPORT_MODAL","AD_BANNER_MODAL","AD_FIRST_EXIT_INTENT_MODAL","AD_SECOND_EXIT_INTENT_MODAL","BLOG_BANNER_MODAL","DEDICATED_SUPPORT_MODAL","FASTER_SUPPORT_RESPONSE_MODAL","PRICING_TABLE_MODAL","PRICING_TABLE_ISOLATED_MODAL","SHARE_FOLDER_MODAL","SSO_PREFILL_MODAL","PROFESSIONAL_SERVICES_MODAL","ZOOM_SUPPORT_MODAL","ASSIGN_FORM_MODAL","BRONZE_PLAN_DISCOUNT_MODAL","SILVER_PLAN_DISCOUNT_MODAL","GOLD_PLAN_DISCOUNT_MODAL","ENTERPRISE_PLAN_DISCOUNT_MODAL","BLOG_CONTENT_SIDE_BANNER","LOCAL_DATA_RESIDENCY_MODAL","MOBILE_FOOTER_CONTACT_BANNER","APPLY_REAL_TIME_SUPPORT_MODAL","TEAMS_WHITE_LABELING_MODAL","REQUIRE_SSO_MODAL","SSO_PREFILL_DETAILED_MODAL","EDUCATION_MODAL","EDUCATION_MODAL_ALT","FIELD_SERVICE_MANAGEMENT_MODAL","HEALTHCARE_MODAL","NONPROFIT_MODAL","ENTERPRISE_DISCOUNT_MODAL","AU_DATA_RESIDENCY_MODAL","HK_DATA_RESIDENCY_MODAL","SG_DATA_RESIDENCY_MODAL","BLOG_GATED_CONTENT_MODAL","GA_FORM_TRACKING_ITEMS","LEAD_FORM_SOURCE_MODIFIERS","AUTOMATED_NURTURING_SOURCES","gaFormTrackingItem","planDetailsProps","arrayOf","ASSET_TYPES","kebabizeReplacer","match","offset","getAdwordsUtmsFromCookie","decodedAdwordsUtms","parsedAdwordsUtms","adwordsUtms","decodeURIComponent","JSON","createParam","decodeUTF8","utf8","getRootElement","formatNumber","num","getComponentName","assetType","campaignType","assetsVersion","assetYear","map","startCase","toLowerCase","replace","join","Y2024BacktopaidFlyinV1","Y2024BacktopaidPricingBadgeV1","Y2024BlackfridayBannerIndex","Y2024NewuserBannerV2","Y2024NewuserDummyExitModalV2","Y2024NewuserLimitDialogV2","Y2024NewuserMyaccountBadgeV2","Y2024NewuserPricingBadgeV2","Y2024OverquotauserBannerIndex","Y2024RegularfiftydiscountAccountBoxV2","Y2024RegularfiftydiscountExitModalV2","Y2024RegularfiftydiscountFlyinV2","Y2024RegularfiftydiscountPricingBadgeV2","Y2024SilveroneExitModalV1","Y2024SilveroneFlyinV1","Y2024SilveroneLightboxV1","Y2024SummerBannerIndex","Y2024SummerLightboxIndex","Y2024TestcampaignBannerIndex","Y2024TestcampaignBannerV2","Y2024GtwopromotionFlyinV1","Y2024GtwopromotionFlyinV2","Y2024GovernmentlaunchFlyinV1","Y2024MicrosoftteamsFlyinV1","Y2024SalesforceFlyinV1","Y2024AnimalShelterPricingBadgeV2","Y2024ChurchPricingBadgeV2","Y2024EducationPricingBadgeV2","Y2024TestannouncementBannerIndex","AssetList","_object_spread","CampaignAssetList","PromotionAssetList","LaunchAssetList","AnnouncementAssetList","getAssetComponent","assetInfo","componentName","_object_spread_props","GrowthAssetRenderer","assetProps","campaignInfo","Fallback","AssetComponent","orderedCampaignInfos","keys","includes","promotion","campaign","announcement","launch","filter","info","status","type","assetsAvailable","Component","length","_jsx","fallback","AssetManagerProvider","propTypes","defaultProps","Fragment","AssetManagerContext","state","Provider","useAssetManagerContext","defaultAvatar","onAccountBoxToggle","THEME_CLASSNAME_MAP","_global","_global1","ACTION_KEYS","isActionKeyPressed","handler","arr","len","mid","Math","removeHost","url_","ACTIONS_PROJECT_NAME","logLoginFlowAction","LOGIN_FLOW_ACTIONS_PROJECT_NAME","useIsMobileScreen","lockScroll","unlockScroll","useLockBodyScroll","setIsMobileMenuActive","active","userAsProp","userTypeAsProp","isLoggedinAsProp","useUser","_path","_defs","checkIsUserLoggedIn","setUserToWindow","Event","isFormUser","usr","isLoggedInAsProp","userTypeRef","setUser","setUserType","setIsLoggedIn","initUser","credentials","fetchUser","activateBehaviour","scrollTreshold","setIsSticky","bodyEl","headerEl","getHeaderRootEl","CLASS_NAME","handleScroll","isTresholdExceeded","load","setLoad","handleMouseMove","_window","setIsMobile","handleResize","Modal","ReactDOM","_extends","DialogRenderer","ContentRenderer","HeaderRenderer","onCloseClick","CloseIcon","EducationReportModal","middleTitle","gaAttributesClose","descriptionText","EDUCATION_REPORT_MODAL_NUR","uikitModalRef","handleCloseClick","_uikitModalRef_current","prps","EttEducationGatedContentModal","mapCallbacksToGaTrackingItems","gaDataLayerPushClose","renderEttEducationGatedContentModal","renderModal","initEpEttGatedContentModal","hasUrlParam","urlParams","downloadButtonEl","Asset","rootElementId","HealthcareReportModal","modalProps","handleCloseModalClick","targetSelector","renderAsset","enabledPages","initEpHealthcareReportModal","seenAtKey","isUserHasAdCookie","isGuestUser","isGuest","shouldRenderForGuest","_document_documentElement","regularUserNotSeenYet","userSeenCampaign","shouldRenderForRegularUser","getCurrentDateWithoutTimeZone","isInitiated","renderHealthcareReportModal","LEARN_MORE_URL","gaAttributesGaq","gaAttributesLm","IconEnterprise","assetName","HTMLElement","assetMap","GeneralFaqProfessionalServicesBanner","UserGuideProfessionalServicesBanner","SelectedAsset","renderUserGuideBanner","helpRoot","helpRootId","renderProfServicesAsset","renderFaqBanner","faqRoot","faqRootId","initEpProfessionalServices","EducationDiscountModal","from","isTestVariant","hasAdwordsModeOn","actionData","EnterpriseIcon","nowrapText","BlogEducationSideBanner","isFormVisible","sectionRef","BLOG_EDUCATION_SIDE_BANNER","gaAttributesAn","Tracking","IconRocketSquareFilled","initEpFerpaBanner","createFormButtonEl","bannerRootEl","insertAfter","renderFerpaBanner","PdfDownloadModal","pdfUrl","iconUrl","description","BlogDownloadBanner","badgeText","bannerTitle","bannerDescription","bannerVisualUrl","bannerItems","gaAttributesGetPdf","IconCheck","LogoJotformColor","ReportVisual","CASE_STUDIES","initEpCaseStudyAssets","caseStudy","enterprisePromotionsBannerRoot","renderBlogCaseStudies","AdvertisementLeadFlowModal","onSeen","ADVERTISEMENT_LEAD_FLOW_MODAL","Stars","AdSecondExitIntentModal","AdFirstExitIntentModal","AdBannerModal","AdvertisementLeadFlowBanner","isExitIntentModalAvailable","toggleRef","bannerRef","onceAutoVisibled","onceBannerOpened","onceModalShown","gaAttributesRad","gaAttributesNn","isAutoVisibleSeen","timer","clearTimeout","bannerClasses","RocketIcon","MainVisual","actionsLoaded","setActionsLoaded","actionManagerRef","actionManager","loaded","AdvertisementLeadFlow","registerJotformAction","useActionManager","logAbTestActionRef","BLOG_POSTS","initEpAdLeadFlowBlogPosts","blogPost","_asset_details","renderAdvertisementLeadFlow","initEnterpriseJobs","isLoaded","setIsLoaded","loadImage","el","_el_dataset","loadImages","handleLazyLoad","getBodyEl","isHidden","headerHostEl","addEventListenerOnce","listener","listenerWrapper","createScriptElement","callback","attr","script","createLinkElement","htmlEl","referenceNode","newNode","_circle","_rect","_rect2","_rect3","_rect4","requestLayer","createCombinedInfoUrl","combinedInfoUrl","isMyForms","navLang","getUnpaidInvoices","mostOverdueInvoice","getEpUserSettings","content","currentDate","Date","currentDateWithoutOffset","isIE","ua","msie","trident","edge","isWindows","isYandex","yandexIndex","jfHeader","ieClassName","yandexClassName","getJotFormEnv","getUserAccountType","_user_accountType","isAdmin","isSupport","isProduction","isAiAgentExistingUserAB","isAiAgentNewUserAB","isAiAgentBetaUser","allowedDirectories","isInOnePercent","customRedirectionOnSignUp","customRedirectionOnLogIn","getPublicApiURL","isEUDomain","isHipaaDomain","Boolean","getAPIURL","getCombinedInfoURLByProduct","resourceID","productType","_window_JFAppsManager","loginURL","apiURL","getUserInfo","requestURL","axios","responseCode","location","pendingSubmission","permissions","saclSubmission","host","initAppleSignin","nonce","initFBSignin","initGoogleSignin","response","initMicrosoftSignin","myMSALObj","initSalesforceSignin","openPopupWindowCentered","windowName","w","h","x","y","features","popUpWindow","handleLogin","Axios","message","randomString","possible","i","twoFactorTypeKeys","Texts","encodeURIComponent","prepareLoginFlowDefaultGreetings","isPartnershipPages","isAffiliateSignup","isJotformForBeginners","Dialog","IconExclamationTriangleFilled","IconLinkDiagonalBroken","IconTrashExclamationFilled","IconHIPAAWarning","closable","modalID","submitButtonText","cancelButtonText","oneButtonDialog","isOneButtonColor","subTitles","hasCheckboxForDisabling","otherButtonText","onOtherButtonClick","dialogClass","renderFields","wrapperClassName","headerImg","isSolidButtonGreen","loadingButtonEnable","parentSelector","loadingState","ReactModal","onSubmit","PropTypes","trackAction","data","actionTracker","fetchUserCredentialRuleSet","isSecure","checkPasswordReuse","password","qs","prepareVerificationSettings","token","isDeleteVerified","prepareForDeletionEndpoint","socialLogins","verifyAndDelete","settings","verifyUser","getPrefillToken","OFACModal","forwardRef","isModal","_window_user","_window___formInfo","logger","unmountModal","getPortalElement","useOnClickOutside","Close","IconExclamationCircle","openOFACModal","createRef","portalElement","getScreenResolution","availWidth","availHeight","getSocialLoginOptionsByType","options","pushDataLayerEvent","eventAction","handleSignupVariationTest","handleSignupCompletedEvents","forceUserSocialLogin","onSuccess","onFailure","appName","tfaResponseCallback","tfaVerificationToken","tfaMethod","buttonNames","socialLoginVerificationHash","onSocialTermsRequired","enableSocialTerms","eaResponseCallback","eaVerificationToken","newGoogleFlow","ofacModalRef","config","defaultButtonName","buttonName","navigator","getPossibleTimeZone","responseData","success","tfaToken","newUser","socialLoginHash","emailAuthToken","idToken","fullName","imageUrl","_message_toLowerCase","forceUserLoginRequest","recaptcha","tfaTokenType","eaToken","rememberDevice","_response_data","handleLoginHelper","regularLoginRequest","forceUser","handleLoginSuccess","handleNavigationChangeRequest","screenToNavigate","shouldCallNavigate","handleTFAResponse","handleEAResponse","isRecovery","_loginResponse_message_toLowerCase","loginSuccess","loginResponse","tfaResponse","eaResponse","loginFunction","getTermsOfUseLinkByLanguage","isTurkish","getPrivacyLinkByLanguage","isTurkishLanguage","countryCode","createGoogleOneTapContainerEl","container","hideGoogleOneTapContainerEl","SalesforceButton","ariaLabel","LogoSalesforceLogomarkColor","FacebookButton","FBIcon","GoogleButton","GoogleIcon","onSmallMobile","ScPassword","icons","IconCheckSm","RequirementsList","checkReuse","getSecureRuleClass","hasSecureTextIcon","securePassErrors","securePassText","securePassContText","securePassDescText","secureRules","passwordSecurityRules","totalHeight","setTotalHeight","descTextRef","requirementListRef","validatedSecuresValues","IconInfoCircleFilled","ruleKey","ruleValue","isPasswordSecurityRule","REGULAR_VALIDATOR_RULE_DEFAULTS","SECURE_VALIDATOR_RULE_DEFAULTS","ErrorAlert","enableScreenReaderAlert","readAlertMessage","setReadAlertMessage","Password","getCurrentPasswordValue","hasForgotPassUI","forgotPassFunc","passwordLabel","passwordConfirmationLabel","secure","secureDisplay","toggleSecureDisplay","includeConfirm","onKeyDown","passwordErrorServer","resetPasswordError","setSecurePaswordError","callbackConfirmPassError","requestCurrentPassword","allowPasswordShow","onPasswordInputBlur","sendValueToParent","initialValue","clearInitialOnFocus","hasErrorMessage","disclaimer","autoComplete","onPasswordValidate","isOnboardingFlow","customTexts","hideNeutralRules","basicRuleMessages","allRuleMessagesRef","inputPassRef","inputConfirmPassRef","inputCurrentPassRef","currentPassword","setCurrentPassword","currentPasswordError","setCurrentPasswordError","setPassword","isCleared","setCleared","isChanged","setChanged","confirmPassword","setConfirmPassword","requiredPassError","setRequiredPassError","confirmPassError","setConfirmPassError","passwordMode","setPasswordMode","setPasswordSecurityRules","regularValidatorRules","secureValidatorRules","regularPassErrors","setRegularPassErrors","setSecurePassErrors","passwordError","setPasswordError","regularRuleMessages","setRegularRuleMessages","secureRuleMessages","setSecureRuleMessages","passwordErrorMessage","setPasswordErrorMessage","showRegularRequirementsList","setShowRegularRequirementsList","showSecureRequirementsList","setShowSecureRequirementsList","requirementDescText","setRequirementDescText","initPasswordRuleSet","rules","errorTypes","nextMessages","ruleName","errorMessage","constructPasswordRules","credentialRules","passwordSecurityRuleNames","passwordRuleData","fieldName","passwordSecurityRuleData","rule","getPasswordRuleSet","explanation","validateSomeRules","ruleSet","prevRules","regex","TermsAndConditionsUrls","LabelRenderer","str","MicrosoftButton","MicrosoftIcon","AppleButton","AppleIcon","RenderSocialButtons","registerMsAbTestAction","showSalesforceLogin","onGoogleLoginClick","onSalesforceLoginClick","onMicrosoftLoginClick","onFBLoginClick","onAppleLoginClick","isMicrosoftTeamsFormsLanding","isSalesforceRelatedLanding","getSocialBtnOrder","socialPlatform","jfSocialOpts","GoogleIcon36","salesforceSocialLoginLogger","MicrosoftIcon36","FacebookIcon36","AppleIcon36","IconSalesforceFilled","socialOptA","socialOptB","isPlatformSalesforce","q","serverRequestInterceptor","ctx","_resp_data","_resp_data1","_resp_data_error_type","resp","Error","apiRequestInterceptor","_resp_data_errorType","LoginFlowRequestManager","baseURI","serverRequest","args","ServerManager","APIManager","registerNewUser","refApp","isAgreedTerms","isEmailEligibleForRegister","verificationHash","formUserPretendCreate","formUserCreate","sendVerification","fromSACL","initiator","redirectURL","errorMessages","SignupOptions","shrinkConfirmOnMobile","isMsSignupControlVariant","isMsSignupTestBVariant","isMsSignupTestCVariant","enterpriseEnv","onNavigationChangeRequest","enterpriseLogo","skippable","onSkip","greetingMessage","thereSocialError","thereErrorMessage","showLogoOnSignupOptions","greetingDescription","showFormOnSignupOptions","signupButtonText","shrinkConfirmHeight","disableEmail","logoSource","areSocialButtonsLoading","horizontalSocialButtons","squareSocialButtonStyle","hideGreetingMessageOnSignupOptions","useSwsoButtons","jfLogo","getEnterpriseLogo","emailError","nameError","isAggreedTerms","termsError","isSignupLoading","screenHeight","showRecaptcha","userCampaign","isMobileTexts","REPORT_UNUSUAL_SIGNUP","CONTINUE","EMAIL","EMAIL_ADDRESS","ENTER_EMAIL_ADDRESS","SignupWithEmail","enforceHIPAARuleSet","greetingMessageOnSignupWithEmail","showLogoOnSignupWithEmail","isSwsoTestVariant","showLoginWarningOption","idpLogos","auth0","azurad","google","windowsad","okta","onelogin","custom","getIdpLogo","idpName","SUCCESS_REDIRECT","SSOLoginOptions","ssoLoginOptions","onSSOLoginSuccess","onSSOLoginFail","compact","onSSOLoginClick","configKey","currentPage","loginPopup","setInterval","clearInterval","_result_content_account_type","IDPLogo","invalidInputText","invalidEmailInputText","invalidPassInputText","userIsSSOError","unexpectedErrorText","LoginOptions","_this_emailInputRef_current","prevProps","externalErrorMessage","isSSOControlStep","loginErrorMsg","emailValid","ssoErrorMessage","preventBack","loginButtonText","loginWelcomeText","loginDescriptionText","hideSignUp","readonlyEmail","showJotformLogo","showEnterpriseLogin","forceShowBack","isOnboardingTestVariantReversed","pass","passValid","isLoginLoading","isSSOControlLoading","emailErrorMessage","loginLogoSource","showLogo","ForgotPassword","usernameValid","resetErrorMessage","inputValid","IconChevronLeft","BackIcon","input","err","listenEnter","ScPieTimerWrapper","PieTimer","startCallback","stopCallback","alpha","setAlpha","counter","setCounter","interval","counterRef","calculateTimeInterval","totalTime","VerificationInput","validChars","onCodeChange","onEnterPress","characterClassName","inputId","inputType","handleKeyDown","inputProps","ReactVerificationInput","ScToggle","ScToggleText","ScDefaultSizeText","ScToggleIcon","ScLine","p","branding21","Toggle","desc","isLoading","isMultiLine","isTitleUppercase","onFieldError","squareMode","onText","offText","isMixed","noTextMode","IconLockFilled","commonForRadioAndCheck","css","ScRadio","ScCheckbox","ScOptionList","Option","fillColor","backgroundColor","borderColor","optionDisabled","optionSelected","isMultiSelect","useMouseDown","ScOption","onMobile","OptionGroup","rgba","rotate","initial","keyframes","QRCodeWrapper","color","loading","Text","align","letterCase","foregroundColor","fontSize","lighten","darken","Body","wide","Footer","reverse","center","MessageContaiener","ErrorContainer","black","ScTooltip","ScMethodButton","ButtonSC","isGenerateNewCodesButton","isPrimary","ScInfoBox","InfoBox","mode","TwoFactorLogin","handleTFALogin","remainingTime","expiresAt","isForced","showRememberDevice","isSocialTFA","verificationCode","setVerificationCode","timerRunning","setTimerRunning","isCodeFilled","setCodeFilled","setIsLoginLoading","setRememberDevice","setErrorMessage","wrongAttemptRef","timerRef","firstVerifyRef","isPassiveTFAMethod","showRememberDeviceSection","EmailAuthLogin","handleEALogin","isSocialEA","useTimeoutMessage","handleTabChange","remainingTimeAfterTabChange","code","TwoFactorMethods","activeMethods","typeMap","IconMessageFilled","IconScanFilled","_response_","methodType","_typeMap_methodType","typeCode","Icon","IconKeyFilled","SocialInit","socialLoginRequest","handle2FASocialLoginRequest","handleSocialEAResponse","primaryMethod","LoginError","errorType","loginType","originalError","DeleteAccountModalStep1","handleStep","FacebookIcon","buttons","SocialsContainer","callbacks","connectedAccounts","login","ErrorMessage","IconExclamationCircleFilled","DeleteAccountModalStep2","isPasswordErrored","setIsPasswordErrored","handleDeleteAccount","ModalHeader","DeleteAccountModalStep3","isDeleteErrored","setIsDeleteErrored","handleDelete","IconCheckCircleFilled","DeleteAccountModal","handleClose","step","setStep","nextStep","useImperativeHandle","ResetSuccess","SocialTermsStep","socialUserProfile","onSocialTermsContinue","isTermsAgreed","setIsTermsAgreed","setTermsError","handleContinue","SocialTermsModal","removeModalFromDOM","onSocialTermsClose","ROOT_ID","createRootEl","getRootEl","termsModalRoot","EmailAuthLoginModal","emailAuthRoot","Verification","handleVerification","isPending","setIsPending","handleVerifyAccount","isResultWithToken","VerifyAccountModal","AfterVerificationComponent","BeforeVerificationComponent","VerificationWrapper","isVerified","setIsVerified","approveVerification","VerificationStep","UnusualSignup","unusualSignupCode","unusualSignupToken","changeActiveMode","setOption","isReported","setIsReported","setError","_window_user_account_type","IconCheckCircle","IconFlagFilled","SignupWithSocialOpts","signupPredefinedEmail","onLoginSuccess","changeActiveScreen","builderShowSlides","_window_opener","_window_opener1","isEnterpriseEnv","termsRef","nameRef","passwordRef","emailInputRef","captchaRef","invalidFieldRefs","setIsAgreedTerms","securePasswordErrors","setSecurePasswordErrors","confirmPasswordError","setConfirmPasswordError","emailErrorMsg","setEmailErrorMsg","nameErrorMsg","setNameErrorMsg","signupErrorMsg","setSignupErrorMsg","emailIsLoading","setEmailIsLoading","signupIsLoading","setSignupIsLoading","setEmail","setName","setShowRecaptcha","setRecaptcha","invalidFieldFocusOrder","_emailInputRef_current","_emailInputRef_current1","handleChangeTerms","RecoverAccountPage","handle2FARecoverAccount","tfaAccountRecoveryProps","isErrored","RecoverAccountNotification","AccountRecoveryViewTicket","ticket","LoginFlow","showUnusualSignupFlow","initialScreen","swsoTestVariant","activeScreenKey","lastTFAResponse","lastEAResponse","isMsSignupTestEnabled","manager","loginPredefinedEmail","forceLogin","actionLogger","OtherColumnComponents","appleSigninEnabled","socialInitData","firstShowThankyouModal","usePortal","baseApp","signupPredefinedName","ssoNormalLoginEnabled","ActiveComponent","getUserSSOStatus","Portal","CloseWithCircleSVG","allComponents","Column","s","preLoginCheck","cleanResult","omit","_window___accountSharingActions","userProp","queryParams","googleUser","currentProfile","notification","showSocialTermsStepAsModal","renderStandaloneSocialTermsModal","preLoginResponse","hasMFA","firstName","lastName","isSocialLoginForDeleteMyAccountFlow","isSocialLoginForVerification","verifierFunction","duration","errorMsg","authResponse","accessToken","multipleTokens","LoginFlowHelper","formUser","resourceTitle","welcomeText","ignoreFormUser","noDefaultWrapper","containerClass","noLoading","enableGoogleOneTap","onUserLogin","onNavigationChange","onGoogleOneTapPromptOpened","showEmailAuthStepAsModal","isReact17","loadByApplyingLazyIgnoredElements","loadFunction","lazyLoadDelayedElements","elements","isTargetDelayed","classList","currentEl","shouldDelayLazyLoad","forceLoad","defaultOptions","uniqueName","elGeneralFunc","handleEvent","loadAndInsertAsFirstScript","src","onload","js","fjs","loadLoginFlow","onLoad","loginFlowHelper","getSocialMediaScriptInfo","socialMedia","loadSocialMediaClient","loadGoogleJS","loadFacebookJS","loadMicrosotfJS","headEl","openLoginFlow","tracking","extraModalProps","screen","prevRoute","trackLoginFlow","loginFlowProps","nextRoute","setButtonNames","hideClose","toggleSignupLoaders","act","elRef","createSocialTermsFlow","socialTermsSecretManager","socialSignupThunk","isTermsChecked","hash","continueSocialSignup","isOneTapAvailable","isGoogleOneTapPrevented","hasCustomCta","loggedInUser","openSocialLoginFlow","activeMethod","handlerMap","attachLoginFlowToTrioButtons","socialButtons","button","isHomepage","hasTrioButtons","hasAnySocialSignupButton","bannerSignupLoading","signupModalSignupLoading","loginModalLoading","eventTarget","_eventTarget_parentNode","_eventTarget_parentNode_parentNode_parentNode","parentClasses","grandParentClasses","scheduler","nameEQ","cookies","cookie","hasCookieConsent","consentName","_cookiebot_consent","_cookiebot_consent1","cookiebot","consent","ttl","expires","date","useDebounce","fn","waitTime","funcRef","debounce","timeout","timeoutRef","setMessage","StyledSVG","strokeWidth","strokeColor","getRouterValue","get","getEnv","getBaseURL","getRevision","getActiveApp","isEU","getRootPath","persistentKeyList","testItem","testKey","storage","storageBase","itemString","expiry","commonStyles","ScBox","ScFooter","ScOverlay","header","footer","isFullScreen","showGoBackAsClose","contentRenderer","headerHasCloseButton","headerVisible","portalContainerSelector","onHeaderCloseClick","is2FAModal","maxWidth","rootRef","handleHeaderClose","FooterRenderer","ScOverlayWithClass","pr","UIKitModal","oneOfType","VerticalAttachments","animated","attach","allowHover","noWrap","renderInContainer","customProps","translation","clearTranslationMarkup","textParents","selectParents","elc","originalSize","originalMultiple","addTranslationMarkup","parent","currentStyle","searchTextInDOM","texts","classesToBeFiltered","rgx","child","curr","isInViewport","elementRect","windowHeight","windowWidth","scrollX","scrollY","getTextContents","Translation","dictionary","strings","foundStrings","textContents","isUndefined","Polyglot","translated","variables","strVar","variableName","screenshots","emptyIndexes","filteredStrings","filteredScreenshots","ss","decodeURI","foundElements","orderedFoundElements","elementsToProcess","untranslatedToPost","ssDataAll","submitPromises","depthCount","depthLabel","foundElement","visibilityResult","capturedData","domtoimage","filteredNodeClass","classStr","dataUrl","langCodes","partialTranslations","DEFAULT_LANGUAGE","_global_window___jfrouter","encodedAndProcessedStrings","processTranslation","_string_replace","transformPhrase","buffer","TextEncoder","Uint8Array","encodeUsedTranslations","translations","encoded","raw","collectionTimer","year","month","day","hours","now","startDate","endDate","unlocalizeOriginHref","_Object_keys","shortLangCodes","exp","RegExp","initializeTranslationFromGlobal","_global_window_Locale","addDictionary","prepareAddDictionary","controlModeChange","prepareControlModeChange","addTranslationToDictionary","prepareAddTranslationToDictionary","String","sendUsedTranslationsInterval","getSomeString","defaultString","resultString","strArr","buttonAriaLabelPrefix","others","defaultAriaLabel","initialPortalSelector","closeOnOutsideClick","reffedDivProps","onModalClose","closeOnEscPress","exceptionalSelectorList","autoFocus","currentActiveElementRef","portalRef","additionalSelector","setVisibility","hideMenu","nodeContains","contentRef","useContinueFocus","hide","show","toggleVisibility","KeyboardJS","useEffectIgnoreFirst","headerTitleId","generateShortID","headerSubTitleId","any","setSelected","ContainerRenderer","Renderer","OptionContainerRendererProps","opt","handleSelection","ContainerRendererProps","isPressedKeyEnter","checkOptionSelectionState","OptionContainerRenderer","OptionRenderer","GroupRenderer","groupIcon","NoResultsRenderer","onClearFilter","inputValue","containerID","_popperInstance_state","popoverOptions","current","onPlacementChange","useMemoizedPopper","dontUpdate","popperInstance","setPopperInstance","useCombinedRefs","memoizedPopperInstance","createPopper","portalAttribute","containerSelector","usePortalRef","createPortal","SelectionGroup","onSelectionChange","autoFocusToFirstChild","selectedOptionList","toggleSelectedOption","setSelectedOptionList","useSelectionState","optionGroupRef","changeSelectedOptions","_rootRef_current_current_firstChild","KEY_KEYCODE_LIST","SERVER_ERROR","FILE_TYPE_ERROR","useClickOutsideState","initialState","refs","eventTypes","eventType","useClickOutsideStateWithCallback","_callback","useClickOutsideStateMouseDown","useClickOutsideStateWithSelector","sanitizeInitialState","selectedOptions","setSelectedOptions","selectedValue","isOptionExist","effectHandler","effectDependedValues","isFirstRun","portalContainer","currentPortalDiv","div","useDragState","onDropCallBack","onDragOverCallBack","onDragEnterCallBack","onDragLeaveCallBack","isDragging","setDragState","generateDragEventHandler","onDragEnter","onDragOver","onDragLeave","onDrop","cachedScripts","useScript","scriptState","setLoadState","scriptTag","onScriptLoad","onScriptError","useFuse","list","fuseOptions","fuse","Fuse","usePrev","useInView","onInView","observer","entry","panelRef","activeElementRef","useLayoutEffect","_panelRef_current","_panelRef_current1","_activeElementRef_current","wrapWithComp","Comp","prepareKeyList","keyList","isPressedKeyFN","preparedKeyList","keyCode","expectedKey","expectedKeyCode","isPressedKeyEnterOrSpace","flattenOptions","flattenedOptions","findOptionByValue","allowEmpty","optionsHaveSomeDisabledOptions","dropdownMayBeEmpty","sanitizedOptions","optionValue","createFileMetadata","nanoid","cname","cvalue","exdays","d","values","_global_location","_global_window_location","_name","results","arrayMoveMutate","to","startIndex","arrayMove","newArray","createFormData","callbackFN","stopPropagation","shortenString","maxLength","sanitizedString","formatBytes","bytes","decimals","parseFloat","k","sizes","PlatformTypes","AllowedPlatforms","makeFeatureReducer","composeEnhancers","cache","isPlatformEnv","platformEnv","isAllowedPlatform","getPlatformEnv","getValidURL","baseURL","URL","appendRootPath","rootPath","interceptURLForWorkflowRelease","pathnames","prepareURLWithRoot","urlString","urlObject","shouldRedirectToSessionExpired","dontOverwrite","windowFeatures","featureFlag","validateEmail","buttonCVA","secondary","buttonTextCVA","buttonIconCVA","buttonIndicatorCVA","ButtonText","showTextOnHover","showTextOnly","loader","hasLoaderText","ButtonIcon","ButtonIndicator","indicatorText","indicatorColorStyle","loaderCVA","loaderTrackCVA","loaderSpinnerCVA","loaderDefaultProps","Loader","_ref","loaderClassName","EndIcon","href","loaderText","rounded","StartIcon","hasOneIcon","checkboxSizes","checkboxCVA","checkboxWrapperCVA","checkboxIconCVA","checkboxDefaultProps","choiceLabelCVA","choiceLabelContainerCVA","choiceLabelTextCVA","choiceLabelDescriptionCVA","ChoiceLabel","label","truncate","hasDescription","hasLabel","_useFormControl","htmlSize","indeterminate","wrapperClass","checkIcon","IconMinus","indicatorCVA","Indicator","invert","indicatorClassName","baseInputContainerCVA","baseInputCVA","baseInputAddon","BaseInput","addonStart","addonEnd","as","readOnlyVariant","baseInputContainerClassName","commonFormControlCVA","baseInputClassName","_e_currentTarget","baseInputDefaultProps","BaseInputAddon","inputAddonDefaultProps","direction","useInputColor","htmlFor","addonContainerClassName","addonIconClassName","InputText","prefix","suffix","showLockIconInReadOnly","inputTextDefaultProps","appendixDefaults","disableAlpha","presetColors","placement","onSwatchHover","justifyContentClasses","PRODUCT_NAME_VALUES","COLOR_STYLE_VALUES","GRID_TRACK_VALUES","useSelectValue","ownContext","pickedContextValues","pick","FormControlContext","contextValuesArray","pickContextValues","DropdownContext","DropdownGroupContext","context","brand","background","border","accent","flattenChildren","depth","group","Children","acc","nodeIndex","_node_type","isValidElement","cloneElement","_child_type","convertResponsiveClass","propValue","_key","_val","arraysEqualsCheck","v","normalizedKeyMap","delay","ms","retry","maxAttempts","delayMs","execute","attempt","nextAttempt","mapRequest","obj","TTLCache","request","shouldAttempt","cacheItem","Map","argumentParser","method","constructInterceptorConfig","interceptorConfig","InterceptorHandler","interceptor","interceptors","createDefaultInterceptors","reqInterceptors","resInterceptors","resFailedInterceptors","isCrossOrigin","origin","axiosNormalizer","_ctx_interceptorConfig","engineResponseNormalizer","salesforceResponseFailedInterceptors","isSalesforcePlatform","_ctx_resp_config","_ctx_resp_config1","_ctx_resp_data","_ctx_resp_data1","requestInterceptors","apiKey","objToFormData","formData","FormData","keyName","responseInterceptors","defaultRequestInterceptors","defaultResponseSuccessInterceptors","defaultResponseFailedInterceptors","setInterceptors","_config_customRequestInterceptors","_config_customResponseInterceptors","preRequestInterceptors","postRequestInterceptors","postRequestFailedInterceptors","defaultValidation","ENGINES","AxiosEngine","mapAxiosResponse","awaitedEngineResp","isAxiosError","_this_configs","_this_configs1","_this_interceptors_preRequest","_this_ttlCache","_this_interceptors_postFailedRequest","_this_interceptors_postRequest","_this_ttlCache1","modifiedInterceptorConfig","req","shouldCacheRun","cacheRequest","cachedResponse","engineResponse","customMethod","teamID","_this_configs_interceptorConfig","configs","engineName","_configs_interceptorConfig","_configs_interceptorConfig1","requestManagerResponseNormalizer","returnAxiosData","getEnterpriseUrl","trimEnd","getDomainFromAPI","liteURL","apiServerMap","Severity","FullStoryManager","fullStoryConfigs","Set","customVars","displayName","projectVars","FullStory","uid","IGNORED_ERRORS","findValue","search","found","defaultSentryConfigs","browserTracingIntegration","captureConsoleIntegration","extraErrorDataIntegration","contextLinesIntegration","attributes","hint","_event_exception","_event_extra","SentryManager","sentryOptions","exception","Sentry","TrackingManager","forceEnable","_trackingList_activeApp","activeApp","doesSentryNameExist","userVars","extraConfigs","_trackingList_appName","_trackingList_appName1","trackingType","enable","extras","_this_sentry","enhanceOptions","_this_FS","eventName","eventProperties","TManager"],"mappings":"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AAA,CAAAA,AAAAA,EAAE8D,GAAAA,EAAc,CACzB,CACF,ECgDa+E,GAAmB,CAC9B,KAAM,YACN,UAzD2B,CAC3B,KAAM,YACN,UAAW,YACX,UAAW,CACT,CACE,KAAM,gBACN,MAAO,iBACP,KAAM,oEACN,IAAK,0BACP,EACA,CACE,KAAM,oBACN,MAAO,sBACP,KAAM,yEACN,IAAK,wBACP,EACA,CACE,KAAM,eACN,MAAO,gBACP,KAAM,mEACN,IAAK,iBACP,EACA,CACE,KAAM,wBACN,MAAO,0BACP,KAAM,mFACN,IAAK,gDACP,EACA,CACE,KAAM,iBACN,MAAO,kBACP,KAAM,qEACN,IAAK,mBACP,EACA,CACE,KAAM,oBACN,MAAO,qBACP,KAAM,wEACN,IAAK,sBACP,EACA,CACE,KAAM,eACN,MAAO,gBACP,KAAM,mEACN,IAAK,iBACP,EACA,CACE,KAAM,gBACN,MAAO,iBACP,KAAM,oEACN,IAAK,uBACP,EACD,AACH,EAKE,UAAW,CACT,SAAU,SACV,MAAO,YACP,SAAUd,GAAAA,EAAAA,CAAAA,SAAoB,AAChC,CACF,KCzDyB,0BAClB,SACI,aACA,aACF,QAqEHe,GAAsB,CAC1B,KAAM,eACN,UApEuB,CACvB,KAAM,eACN,UAAW,eACX,OAAQ,CACN,MAAO,uBACP,IAAK,gBACP,EACA,UAAW,CAET,CACE,IAAI,IACJ,MAAO,eACP,SAAU,wBACV,QAAS,CACP,MAAO,WACP,IAAK,gBACP,EACA,SChC4B,CAChC,CACE,KAAM,yBACN,MAAO,kBACP,IAAK,gCACL,KAAM,iFACR,EACA,CACE,KAAM,iBACN,MAAO,SACP,IAAK,gCACL,KAAM,wEACR,EACA,CACE,KAAM,gBACN,MAAO,QACP,IAAK,sBACL,KAAM,uEACR,EACA,CACE,KAAM,uBACN,MAAO,gBACP,IAAK,8BACL,KAAM,+EACR,EACA,CACE,KAAM,oBACN,MAAO,YACP,IAAK,0BACL,KAAM,2EACR,EACA,CACE,KAAM,eACN,MAAO,OACP,IAAK,qBACL,KAAM,sEACR,EACA,CACE,KAAM,kBACN,MAAO,UACP,IAAK,wBACL,KAAM,yEACR,EACA,CACE,KAAM,yBACN,MAAO,kBACP,IAAK,gCACL,KAAM,iFACR,EACA,CACE,KAAM,qBACN,MAAO,aACP,IAAK,2BACL,KAAM,4EACR,EACD,ADtBG,EAEA,CACE,IAAI,IACJ,MAAO,MACP,SAAU,MACV,QAAS,CACP,MAAO,WACP,IAAK,4BACP,EACA,SE3CW,CACf,CACE,KAAM,aACN,MAAO,aACP,IAAK,2BACL,KAAM,4EACR,EACA,CACE,KAAM,UACN,MAAO,UACP,IAAK,wBACL,KAAM,yEACR,EACA,CACE,KAAM,UACN,MAAO,WACP,IAAK,yBACL,KAAM,sEACR,EACA,CACE,KAAM,iBACN,MAAO,kBACP,IAAK,+BACL,KAAM,iFACR,EACA,CACE,KAAM,YACN,MAAO,YACP,IAAK,0BACL,KAAM,2EACR,EACA,CACE,KAAM,SACN,MAAO,UACP,IAAK,wBACL,KAAM,yEACR,EACA,CACE,KAAM,YACN,MAAO,YACP,IAAK,0BACL,KAAM,2EACR,EACA,CACE,KAAM,OACN,MAAO,OACP,IAAK,qBACL,KAAM,sEACR,EACA,CACE,KAAM,YACN,MAAO,YACP,IAAK,0BACL,KAAM,2EACR,EACD,AFXG,EAEA,CACE,IAAI,IACJ,MAAO,UACP,SAAU,UACV,QAAS,CACP,MAAO,WACP,IAAK,iDACP,EACA,SGtDe,CACnB,CACE,KAAM,cACN,MAAO,eACP,IAAK,6BACL,KAAM,8EACR,EACA,CACE,KAAM,UACN,MAAO,UACP,IAAK,wBACL,KAAM,yEACR,EACA,CACE,KAAM,WACN,MAAO,WACP,IAAK,yBACL,KAAM,0EACR,EACA,CACE,KAAM,MACN,MAAO,MACP,IAAK,oBACL,KAAM,qEACR,EACA,CACE,KAAM,SACN,MAAO,SACP,IAAK,uBACL,KAAM,wEACR,EACA,CACE,KAAM,MACN,MAAO,MACP,IAAK,oBACL,KAAM,qEACR,EACA,CACE,KAAM,WACN,MAAO,WACP,IAAK,yBACL,KAAM,0EACR,EACD,AHYG,EAEA,CACE,IAAI,IACJ,MAAO,UACP,SAAU,UACV,QAAS,CACP,MAAO,WACP,IAAK,2CACP,EACA,SIjEe,CACnB,CACE,KAAM,iBACN,MAAO,kBACP,IAAK,gCACL,KAAM,wEACR,EACA,CACE,KAAM,SACN,MAAO,SACP,IAAK,uBACL,KAAM,wEACR,EACA,CACE,KAAM,iBACN,MAAO,kBACP,IAAK,gCACL,KAAM,wEACR,EACA,CACE,KAAM,SACN,MAAO,SACP,IAAK,uBACL,KAAM,wEACR,EACA,CACE,KAAM,eACN,MAAO,gBACP,IAAK,0CACL,IAAK,8BACL,KAAM,kFACR,EACA,CACE,KAAM,uBACN,MAAO,yBACP,IAAK,qCACL,KAAM,sFACR,EACA,CACE,KAAM,UACN,MAAO,UACP,IAAK,wBACL,KAAM,yEACR,EACA,CACE,KAAM,SACN,MAAO,SACP,IAAK,uBACL,KAAM,wEACR,EACA,CACE,KAAM,QACN,MAAO,QACP,IAAK,sBACL,KAAM,uEACR,EACD,AJUG,EAEA,CACE,IAAI,IACJ,MAAO,QACP,SAAU,QACV,QAAS,CACP,MAAO,WACP,IAAK,iCACP,EACA,SK5Ea,CACjB,CACE,KAAM,kBACN,MAAO,mBACP,IAAK,iCACL,KAAM,kFACR,EACA,CACE,KAAM,YACN,MAAO,YACP,IAAK,0BACL,KAAM,2EACR,EACA,CACE,KAAM,iBACN,MAAO,iBACP,IAAK,+BACL,KAAM,iFACR,EACA,CACE,KAAM,SACN,MAAO,SACP,IAAK,uBACL,KAAM,wEACR,EACA,CACE,KAAM,kBACN,MAAO,mBACP,IAAK,iCACL,KAAM,kFACR,EACA,CACE,KAAM,cACN,MAAO,cACP,IAAK,4BACL,KAAM,8EACR,EACA,CACE,KAAM,iBACN,MAAO,kBACP,IAAK,gCACL,KAAM,iFACR,EACA,CACE,KAAM,WACN,MAAO,WACP,IAAK,oCACL,IAAK,yBACL,KAAM,0EACR,EACD,AL2BG,EACD,AACH,EAKE,UAAW,CACT,SAAU,SACV,MAAO,eACP,SAAUf,GAAAA,EAAAA,CAAAA,YAAuB,AACnC,CACF,EMiDagB,GAAkB,CAC7B,KAAM,WACN,UAzImB,CACnB,KAAM,WACN,UAAW,WACX,cAAe,WACf,qBAAsBjF,GAAAA,EAAuB,CAC7C,mBAAoB,aACpB,UAAW,CACT,CACE,KAAM,cACN,MAAO,eACP,SAAU,IACV,IAAK,SACL,KAAM,0EACR,EACA,CACE,KAAM,oBACN,MAAO,qBACP,IAAK,eACL,KAAM,wEACR,EACA,CACE,KAAM,cACN,MAAO,eACP,IAAK,kBACL,KAAM,kEACR,EACA,CACE,KAAM,eACN,MAAO,gBACP,IAAK,2BACL,KAAM,iFACR,EACA,CACE,KAAM,gBACN,MAAO,iBACP,IAAK,oBACL,KAAM,oEACR,EACA,CACE,KAAM,eACN,MAAO,gBACP,IAAK,mBACL,KAAM,mEACR,EACA,CACE,KAAM,mBACN,MAAO,qBACP,IAAK,0BACL,KAAM,wEACR,EACA,CACE,KAAM,mBACN,MAAO,oBACP,IAAK,uBACL,KAAM,uEACR,EACA,CACE,KAAM,gBACN,MAAO,iBACP,IAAK,4BACL,KAAM,4EACR,EACA,CACE,KAAM,gBACN,MAAO,kBACP,IAAK,6BACL,KAAM,6EACR,EACA,CACE,KAAM,YACN,MAAO,aACP,IAAK,wBACL,KAAM,wEACR,EACA,CACE,KAAM,cACN,MAAO,eACP,IAAK,kBACL,KAAM,kEACR,EACA,CACE,KAAM,oBACN,MAAO,yBACP,IAAK,kMACL,KAAM,wEACR,EACD,CACD,cAAe,CACb,CACE,KAAM,eACN,MAAO,gBACP,IAAK,QACP,EACA,CACE,KAAM,mBACN,MAAO,oBACP,IAAK,0BACL,MAAO,CACL,KAAM,MACN,KAAMkF,GAAAA,EAAAA,CAAAA,OAAwB,AAChC,CACF,EACA,CACE,KAAM,eACN,MAAO,gBACP,IAAK,2BACP,EACA,CACE,KAAM,aACN,MAAO,cACP,IAAK,SACP,EACA,CACE,KAAM,cACN,MAAO,eACP,IAAK,YACP,EACA,CACE,KAAM,aACN,MAAO,eACP,IAAK,yBACP,EACA,CACE,KAAM,iBACN,MAAO,kBACP,IAAK,mBACP,EACA,CACE,KAAM,UACN,MAAO,UACP,IAAK,WACP,EACD,AACH,EAKE,UAAW,CACT,SAAU,SACV,MAAO,WACP,SAAUjB,GAAAA,EAAAA,CAAAA,QAAmB,AAC/B,CACF,ECxFakB,GAAiB,CAC5B,KAAM,UACN,UA1DyB,CACzB,KAAM,UACN,UAAW,WACX,YAAa,EACb,UAAW,CACT,CACE,KAAM,iBACN,MAAO,kBACP,IAAK,WACP,EACA,CACE,KAAM,oBACN,MAAO,sBACP,IAAK,iBACL,cAAe,EACjB,EACA,CACE,KAAM,aACN,MAAO,cACP,IAAK,WACP,EACA,CACE,KAAM,MACN,MAAO,MACP,IAAK,OACP,EACD,CACD,cAAe,QACf,cAAe,CACb,CACE,KAAM,YACN,MAAO,aACP,IAAK,QACP,EACA,CACE,KAAM,eACN,MAAO,gBACP,IAAK,SACP,EACA,CACE,KAAM,OACN,MAAO,OACP,IAAK,QACP,EACA,CACE,KAAM,SACN,MAAO,SACP,IAAK,yCACP,EAAG,CACD,KAAM,UACN,MAAO,kBACP,IAAK,WACP,EACD,AACH,EAKE,UAAW,CACT,SAAU,SACV,MAAO,UACP,SAAUlB,GAAAA,EAAAA,CAAAA,OAAkB,AAC9B,CACF,EC/DamB,GAAoB,CAC/B,KAAM,aACN,UAAW,CACT,IAAK,sIACL,MAAOlJ,AAAAA,CAAAA,EAAAA,GAAAA,CAAAA,AAAAA,EAAE8D,GAAAA,EAAgB,CAC3B,CACF,ECNaqF,GAAkB,CAC7B,KAAM,UACN,UAAW,CACT,IAAK,WACL,MAAOnJ,AAAAA,CAAAA,EAAAA,GAAAA,CAAAA,AAAAA,EAAE8D,GAAAA,EAAa,EACtB,cAAe,EACjB,CACF,ECwBasF,GAAmB,CAC9B,KAAM,aACN,UAlC2B,CAC3B,KAAM,aACN,UAAW,GACX,UAAW,CACT,CACE,KAAM,cACN,MAAO,WACP,IAAK,gCACP,EACA,CACE,KAAM,eACN,MAAO,gBACP,IAAK,iBACP,EACA,CACE,KAAM,mBACN,MAAO,qBACP,IAAK,6BACP,EACA,CACE,KAAM,SACN,MAAO,MACP,IAAK,2BACP,EACA,CACE,KAAM,aACN,MAAO,UACP,IAAK,qEACP,EACD,AACH,EAKE,UAAW,CACT,SAAU,SACV,MAAO,aACP,SAAUrB,GAAAA,EAAAA,CAAAA,UAAqB,AACjC,CACF,ECwEasB,GAAc,CACzB,KAAM,OACN,UAlHsB,CACtB,KAAM,OACN,UAAW,GACX,UAAW,CACT,CACE,GAAI,EACJ,KAAM,QACN,MAAO,GACP,aAAc,CACZ,CACE,KAAM,eACN,MAAO,WACP,IAAK,iBACP,EACA,CACE,KAAM,eACN,MAAO,WACP,IAAK,0BACP,EACA,CACE,KAAM,gBACN,MAAO,YACP,IAAK,wBACP,EACA,CACE,KAAM,mBACN,MAAO,eACP,IAAK,uBACP,EACA,CACE,KAAM,cACN,MAAO,UACP,IAAK,yBACP,EACD,AACH,EACA,CACE,GAAI,EACJ,KAAM,UACN,MAAO,UACP,aAAc,CACZ,CACE,KAAM,YACN,MAAO,QACP,IAAK,0CACP,EACA,CACE,KAAM,gBACN,MAAO,aACP,IAAK,2BACP,EACA,CACE,KAAM,gBACN,MAAO,iBACP,IAAK,sCACP,EACA,CACE,KAAM,UACN,MAAO,MACP,IAAK,qBACP,EACA,CACE,KAAM,qBACN,MAAO,oBACP,IAAK,qCACP,EACD,AACH,EACA,CACE,GAAI,EACJ,KAAM,YACN,MAAO,YACP,QAAS,CACP,MAAO,oBACP,IAAK,2BACP,EACA,aAAc,CACZ,CACE,KAAM,aACN,MAAO,aACP,IACE,+DACJ,EACA,CACE,KAAM,YACN,MAAO,YACP,IACE,qEACJ,EACA,CACE,KAAM,aACN,MAAO,cACP,IACE,gEACJ,EACA,CACE,KAAM,YACN,MAAO,YACP,IACE,8DACJ,EACA,CACE,KAAM,aACN,MAAO,aACP,IACE,+DACJ,EACD,AACH,EACD,AACH,EAKE,UAAW,CACT,SAAU,SACV,MAAO,eACP,KAAM,+DACN,SAAUtB,GAAAA,EAAAA,CAAAA,IAAe,AAC3B,CACF,ECnGMuB,GAAmB,CACvBV,GACAC,GACAC,GACAS,AAAAA,CAAAA,EAAAA,GAAAA,EAAAA,AAAAA,EAAgB,mBAAqBC,GAAeT,GACpDE,GACAC,GACAC,GACD,CAEKM,GAAW,CAAC,CAChBpC,KAAAA,CAAI,CACJqC,S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CR,EACA,SAAU,CACR,KAAM,gCACN,MAAO,gBACT,EACA,WAAY,CAAC,EACb,aAAc,CAAC,EACf,cAAe,CAAC,EAChB,cAAe,CAAC,EAChB,WAAY,CAAC,EACb,YAAa,CAAC,CAChB,EACA,iBAAkB,CAIhB,CACE,QAAS,UACT,YAAa,GACb,WAAY,GACZ,KAAM,QACN,UAAW,KACb,EACA,CACE,QAAS,UACT,YAAa,GACb,WAAY,GACZ,KAAM,SACN,UAAW,MACb,EACA,CACE,QAAS,UACT,YAAa,GACb,WAAY,GACZ,KAAM,QACN,UAAW,MACb,EAIA,CACE,QAAS,UACT,WAAY,GACZ,aAAc,KACd,KAAM,QACN,UAAW,eACb,EACA,CACE,QAAS,UACT,WAAY,GACZ,aAAc,KACd,KAAM,QACN,UAAW,eACb,EACA,CACE,QAAS,UACT,WAAY,GACZ,aAAc,KACd,KAAM,QACN,UAAW,eACb,EACA,CACE,QAAS,UACT,WAAY,GACZ,aAAc,KACd,KAAM,QACN,UAAW,eACb,EACA,CACE,QAAS,UACT,WAAY,GACZ,aAAc,KACd,KAAM,QACN,UAAW,eACb,EACA,CACE,QAAS,UACT,WAAY,GACZ,aAAc,MACd,KAAM,QACN,UAAW,gBACb,EACA,CACE,QAAS,UACT,WAAY,GACZ,aAAc,KACd,KAAM,SACN,UAAW,gBACb,EACA,CACE,QAAS,UACT,WAAY,GACZ,aAAc,KACd,KAAM,SACN,UAAW,gBACb,EACA,CACE,QAAS,UACT,WAAY,GACZ,aAAc,KACd,KAAM,SACN,UAAW,gBACb,EACA,CACE,QAAS,UACT,WAAY,GACZ,aAAc,KACd,KAAM,SACN,UAAW,gBACb,EACA,CACE,QAAS,UACT,WAAY,GACZ,aAAc,KACd,KAAM,SACN,UAAW,gBACb,EACA,CACE,QAAS,UACT,WAAY,GACZ,aAAc,MACd,KAAM,SACN,UAAW,iBACb,EACA,CACE,QAAS,UACT,WAAY,GACZ,aAAc,KACd,KAAM,QACN,UAAW,gBACb,EACA,CACE,QAAS,UACT,WAAY,GACZ,aAAc,KACd,KAAM,QACN,UAAW,gBACb,EACA,CACE,QAAS,UACT,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e,GACf,KAAM,QACN,YAAa,GACb,UAAW,gBACb,EACA,CACE,aAAc,KACd,cAAe,GACf,KAAM,SACN,YAAa,GACb,UAAW,gBACb,EACA,CACE,aAAc,KACd,cAAe,GACf,KAAM,QACN,YAAa,GACb,UAAW,gBACb,EAEA,CACE,aAAc,KACd,cAAe,GACf,KAAM,QACN,YAAa,GACb,UAAW,gBACb,EACA,CACE,aAAc,KACd,cAAe,GACf,KAAM,SACN,YAAa,GACb,UAAW,gBACb,EACA,CACE,aAAc,KACd,cAAe,GACf,KAAM,QACN,YAAa,GACb,UAAW,gBACb,EAEA,CACE,aAAc,KACd,cAAe,GACf,KAAM,QACN,UAAW,gBACb,EACA,CACE,aAAc,KACd,cAAe,GACf,KAAM,SACN,UAAW,gBACb,EACA,CACE,aAAc,KACd,cAAe,GACf,KAAM,QACN,UAAW,gBACb,EAEA,CACE,aAAc,KACd,cAAe,GACf,KAAM,QACN,UAAW,gBACb,EACA,CACE,aAAc,KACd,cAAe,GACf,KAAM,SACN,UAAW,gBACb,EACA,CACE,aAAc,KACd,cAAe,GACf,KAAM,QACN,UAAW,gBACb,EAEA,CACE,aAAc,KACd,cAAe,GACf,KAAM,QACN,UAAW,gBACb,EACA,CACE,aAAc,KACd,cAAe,GACf,KAAM,SACN,UAAW,gBACb,EACA,CACE,aAAc,KACd,cAAe,GACf,KAAM,QACN,UAAW,gBACb,EAEA,CACE,aAAc,MACd,cAAe,GACf,KAAM,QACN,UAAW,iBACb,EACA,CACE,aAAc,MACd,cAAe,GACf,KAAM,SACN,UAAW,iBACb,EACA,CACE,aAAc,MACd,cAAe,GACf,KAAM,QACN,UAAW,iBACb,EACA,CACE,KAAM,QACN,WAAY,GACZ,cAAe,GACf,YAAa,GACb,UAAW,OACb,EACA,CACE,KAAM,SACN,WAAY,GACZ,cAAe,GACf,YAAa,GACb,UAAW,OACb,EACA,CACE,KAAM,QACN,WAAY,GACZ,cAAe,GACf,YAAa,GACb,UAAW,OACb,EACD,AACH,GAEag7D,EAAgBj7D,AAAAA,CAAAA,EAAAA,EAAAA,CAAAA,AAAAA,EA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,CACJ,GAAI,CACF,KAAM,cACN,MAAO,mBACT,EACA,OAAQ,CACN,KAAM,kBACN,MAAO,uBACT,EACA,MAAO,CACL,KAAM,iBACN,MAAO,sBACT,CACF,CACF,EAgTEvrE,KA9SW,CACX,SAAU,CACR,KAAM,gBACN,MAAO,qBACT,EACA,MAAO,CACL,KAAM,iBACN,MAAO,sBACT,EACA,OAAQ,CACN,KAAM,iBACN,MAAO,sBACT,EACA,KAAM,CACJ,KAAM,iBACN,MAAO,sBACT,EACA,QAAS,CACP,KAAM,iBACN,MAAO,sBACT,CACF,EA0REwrE,WAxRiB,CACjB,SAAU,CACR,KAAM,aACN,MAAO,mBACP,YAAa,0BACb,MAAO,kBACT,EACA,MAAO,CACL,KAAM,aACN,MAAO,mBACP,YAAa,0BACb,MAAO,kBACT,EACA,OAAQ,CACN,KAAM,cACN,MAAO,oBACP,YAAa,2BACb,MAAO,mBACT,EACA,KAAM,CACJ,KAAM,cACN,MAAO,oBACP,YAAa,2BACb,MAAO,mBACT,EACA,QAAS,CACP,KAAM,cACN,MAAO,oBACP,YAAa,2BACb,MAAO,mBACT,CACF,EA0PEC,OAxPa,CACb,MAAO,CACL,KAAM,iBACN,MAAO,sBACT,EACA,OAAQ,CACN,KAAM,kBACN,MAAO,uBACT,EACA,KAAM,CACJ,KAAM,kBACN,MAAO,uBACT,EACA,QAAS,CACP,KAAM,kBACN,MAAO,uBACT,CACF,EAwOEC,OAtOa,CACb,SAAU,CACR,GAAI,CACF,KAAM,cACN,MAAO,oBACP,YAAa,2BACb,MAAO,mBACT,EACA,OAAQ,CACN,KAAM,kBACN,MAAO,wBACP,YAAa,+BACb,MAAO,uBACT,EACA,MAAO,CACL,KAAM,iBACN,MAAO,uBACP,YAAa,8BACb,MAAO,sBACT,CACF,EACA,MAAO,CACL,GAAI,CACF,KAAM,cACN,MAAO,oBACP,YAAa,2BACb,MAAO,mBACT,EACA,OAAQ,CACN,KAAM,kBACN,MAAO,wBACP,YAAa,+BACb,MAAO,uBACT,EACA,MAAO,CACL,KAAM,iBACN,MAAO,uBACP,YAAa,8BACb,MAAO,sBACT,CACF,EACA,QAAS,CACP,GAAI,CACF,KAAM,cACN,MAAO,oBACP,YAAa,2BACb,MAAO,mBACT,EACA,OAAQ,CACN,KAAM,kBACN,MAAO,wBACP,YAAa,+BACb,MAAO,uBACT,EACA,MAAO,CACL,KAAM,iBACN,MAAO,uBACP,YAAa,8BACb,MAAO,sBACT,CACF,EACA,KAAM,CACJ,GAAI,CACF,KAAM,cACN,MAAO,oBACP,YAAa,2BACb,MAAO,mBACT,EACA,OAAQ,CACN,KAAM,kBACN,MAAO,wBACP,YAAa,+BACb,MAAO,uBACT,EACA,MAAO,CACL,KAAM,iBACN,MAAO,uBACP,YAAa,8BACb,MAAO,sBACT,CACF,CACF,EAsJElpC,QApJc,CACd,SAAU,CACR,GAAI,CACF,KAAM,eACN,MAAO,oBACT,EACA,OAAQ,CACN,KAAM,mBACN,MAAO,wBACT,EACA,MAAO,CACL,KAAM,kBACN,MAAO,uBACT,CACF,EACA,MAAO,CACL,GAAI,CACF,KAAM,eACN,MAAO,oBACT,EACA,OAAQ,CACN,KAAM,mBACN,MAAO,wBACT,EACA,MAAO,CACL,KAAM,kBACN,MAAO,uBACT,CACF,EACA,QAAS,CACP,GAAI,CACF,KAAM,eACN,MAAO,oBACT,EACA,OAAQ,CACN,KAAM,mBACN,MAAO,wBACT,EACA,MAAO,CACL,KAAM,kBACN,MAAO,uBACT,CACF,EACA,KAAM,CACJ,GAAI,CACF,KAAM,eACN,MAAO,oBACT,EACA,OAAQ,CACN,KAAM,mBACN,MAAO,wBACT,EACA,MAAO,CACL,KAAM,kBACN,MAAO,uBACT,CACF,CACF,EA4FE5iC,MA1FY,CACZ,SAAU,CACR,GAAI,CACF,KAAM,aACN,MAAO,mBACP,YAAa,0BACb,MAAO,kBACT,EACA,OAAQ,CACN,KAAM,iBACN,MAAO,uBACP,YAAa,8BACb,MAAO,sBACT,EACA,MAAO,CACL,KAAM,gBACN,MAAO,sBACP,YAAa,6BACb,MAAO,qBACT,CACF,EACA,MAAO,CACL,GAAI,CACF,KAAM,aACN,MAAO,mBACP,YAAa,0BACb,MAAO,kBACT,EACA,OAAQ,CACN,KAAM,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"}