{"version":3,"sources":["Extensions/Plugins/login-management/Images/Login_Logo.png","Resource/Images/logo-merk.svg","Extensions/Plugins/grid-control/ImageTemplate/Images/doc.png","Extensions/Plugins/login-eula/EULA.pdf","Resource/Images/thelogo.svg","Extensions/Themes/impact-analysis/media/NCLB LOGO_1.png","Extensions/Themes/impact-analysis/media/search.svg","Extensions/Themes/impact-analysis/media/projects.svg","Extensions/Themes/impact-analysis/media/audit.svg","Extensions/Themes/impact-analysis/media/collab.svg","Extensions/Themes/impact-analysis/media/logout.svg","Extensions/Themes/impact-analysis/media/admion-white.svg","Extensions/Themes/impact-analysis/media/user.svg","Config/layouts lazy /^/.*/.json$/ groupOptions: {} namespace object","Config/layouts lazy /^/.*/.txt$/ groupOptions: {} namespace object","Extensions/Themes/impact-analysis/media/notification.svg","Extensions/Plugins/grid-control/ImageTemplate/Images/pdf.png","Extensions/Plugins/grid-control/ImageTemplate/Images/loader.gif","Extensions/Plugins/grid-control/ImageTemplate/Images/No-Preview.png","Extensions/Plugins/image-control/loader.gif","Extensions/Plugins/comments/LayoutControls/ringloader.gif","Resource/Images/theme/logout.svg","Models/Core/FiltersManager.tsx","Models/Core/Filters.ts","Services/ConfigService.ts","Services/AuthService.tsx","Models/Shared/LayoutTreeOBJ.tsx","Models/Core/LayoutControls/Controls/Document/Main.tsx","Models/Core/LayoutControls/Controls/Row/Main.tsx","Models/Core/LayoutControls/Controls/Column/Main.tsx","Models/Core/LayoutControls/Controls/PopupContainer/Main.tsx","Models/Core/LayoutControls/LayoutControlManager.tsx","Components/LayoutRenderer/LayoutHelper.tsx","Components/LayoutRenderer/LayoutRenderer.tsx","Components/ConfirmModalNew.tsx","Helpers/ConfirmModalHelperNew.tsx","Services/EnvService.tsx","Helpers/HelperMethods.tsx","Helpers/HttpHelper.tsx","history.tsx","Components/LayoutRenderer/Loader.tsx","Helpers/SessionHelper.tsx","Components/LayoutRenderer/LayoutRobotHelper.tsx","Components/LayoutManger.tsx","Extensions/Themes/impact-analysis/Header.tsx","Models/Core/HooksManager.tsx","Models/Core/Hooks.tsx","Services/MenuService.ts","Extensions/Themes/impact-analysis/Menu.tsx","Extensions/Themes/impact-analysis/Loader.tsx","Extensions/Themes/List.ts","Extensions/Themes/impact-analysis/Main.tsx","Extensions/Themes/impact-analysis/Footer.tsx","Extensions/Themes/impact-analysis/Page.tsx","Models/Core/ThemeManager.tsx","Services/LayoutService.tsx","Components/LayoutRenderer/Layout.tsx","Models/Core/RouteManager.tsx","Models/Core/ExtensionWrapper.ts","Extensions/Plugins/permissions/Main.tsx","Extensions/Plugins/notifications-management/Service.tsx","Extensions/Plugins/notifications-management/Notifications.tsx","Helpers/StatusBarHelper.tsx","Helpers/EntityHelper.ts","Extensions/Plugins/Helpers/TimeZones.tsx","Extensions/Plugins/Helpers/HelperMethods.tsx","Extensions/Plugins/email-preference/EmailPreferenceService.ts","Extensions/Plugins/email-preference/Main.tsx","Extensions/Plugins/email-preference/email-preference.tsx","Resource/en-US.tsx","Library/Components/Grids/GridHelper.tsx","Library/Components/Grids/Grids.tsx","Extensions/Plugins/email-template/Main.tsx","Extensions/Plugins/profile-management/UserProfileServices.tsx","Extensions/Plugins/profile-management/ChangePass.tsx","Extensions/Plugins/profile-management/UserProfile.tsx","Extensions/Plugins/profile-management/Main.tsx","Extensions/Plugins/login-management/Login.tsx","Extensions/Plugins/login-management/LoginService.ts","Extensions/Plugins/login-management/ForgotPassword.tsx","Extensions/Plugins/login-management/InvalidLink.tsx","Extensions/Themes/impact-analysis/UsersService.tsx","Extensions/Plugins/login-management/ChangePassword.tsx","Extensions/Plugins/session-timeout/SessionTimeoutService.ts","Extensions/Plugins/session-timeout/Main.tsx","Extensions/Plugins/basic-auth/BasicAuthService.ts","Extensions/Plugins/basic-auth/RefreshToken.ts","Extensions/Plugins/basic-auth/Main.tsx","Extensions/Plugins/grid-control/ImageTemplate/ImageTemplate.tsx","Extensions/Plugins/grid-control/LinkTemplate/LinkTemplate.tsx","Extensions/Plugins/grid-control/BadgeTemplate/BadgeTemplate.tsx","Extensions/Plugins/grid-control/WarningIconTemplate/WarningIconTemplate.tsx","Extensions/Plugins/grid-control/MergeIconTemplate/MergeIconTemplate.tsx","Extensions/Plugins/grid-control/ShareIconTemplate/ShareIconTemplate.tsx","Extensions/Plugins/grid-control/ContentBlock/ContentBlockTemplate.tsx","Extensions/Plugins/grid-control/AttachmentIcon/AttachmentIconTemplate.tsx","Extensions/Plugins/grid-control/LikeIcon/LikeIconTemplate.tsx","Extensions/Plugins/grid-control/ImpatedIcon/ImpatedIconTemplate.tsx","Extensions/Plugins/grid-control/FileDetails/FileDetailsTemplate.tsx","Extensions/Plugins/grid-control/ComponentSummary/ComponentSummaryTemplate.tsx","Extensions/Plugins/grid-control/ViewDetails/ViewDetailsTemplate.tsx","Extensions/Plugins/grid-control/CommentTemplate/CommentTemplate.tsx","Extensions/Plugins/grid-control/ProjectLinkTemplate/ProjectLinkTemplate.tsx","Library/Components/Avatar/avatar.tsx","Extensions/Plugins/grid-control/UserTemplate/UserTemplate.tsx","Extensions/Plugins/grid-control/ReadTemplate/ReadTemplate.tsx","Extensions/Plugins/grid-control/ProjectStatus/ProjectStatus.tsx","Extensions/Plugins/grid-control/DropDownMultiSelectTemplete/DropDownMultiSelectTemplete.tsx","Extensions/Plugins/grid-control/GreenRed/Main.tsx","Extensions/Plugins/grid-control/FileUpdated/Main.tsx","Extensions/Plugins/grid-control/StatusTemplate/StatusTemplate.tsx","Extensions/Plugins/grid-control/MarkAsCompleteTemplate/MarkAsCompleteTemplate.tsx","Extensions/Plugins/grid-control/FlagTemplate/FlagTemplate.tsx","Extensions/Plugins/grid-control/FlagLabelTemplate/FlagLabelTemplate.tsx","Extensions/Plugins/grid-control/StatusIconTemplate/StatusIconTemplate.tsx","Extensions/Plugins/grid-control/DynamicFlags/DynamicFlags.tsx","Extensions/Plugins/grid-control/CheckBoxTemplate/CheckboxTemplate.tsx","Extensions/Plugins/grid-control/DateAndTime/DateAndTime.tsx","Extensions/Plugins/grid-control/TemplateList.tsx","Extensions/Plugins/grid-control/ListTemplate/ListTemplate.tsx","Extensions/Plugins/grid-control/CustomColumnTemplate.tsx","Extensions/Plugins/grid-control/ToolBar.tsx","Extensions/Plugins/grid-control/MultiSelectComponent/MultiSelectComponent.tsx","Models/DefaultStyleProperties.tsx","Extensions/Plugins/grid-control/GridContextMenuHook.tsx","Extensions/Plugins/grid-control/AddPresetModel.tsx","Extensions/Plugins/grid-control/gridServices.tsx","Extensions/Plugins/grid-control/Main.tsx","Extensions/Plugins/image-control/Main.tsx","Extensions/Plugins/basic-controls/LayoutControls/Button/Main.tsx","Extensions/Plugins/basic-controls/LayoutControls/ButtonGroup/Main.tsx","Extensions/Plugins/basic-controls/LayoutControls/CheckBox/Main.tsx","Extensions/Plugins/basic-controls/LayoutControls/DatePicker/Main.tsx","Extensions/Plugins/basic-controls/LayoutControls/FileUpload/Main.tsx","Extensions/Plugins/basic-controls/LayoutControls/Heading/Main.tsx","Extensions/Plugins/basic-controls/LayoutControls/ItemInfo/Main.tsx","Extensions/Plugins/basic-controls/LayoutControls/Section/Main.tsx","Extensions/Plugins/basic-controls/LayoutControls/Select/Main.tsx","Extensions/Plugins/basic-controls/LayoutControls/TextArea/Main.tsx","Extensions/Plugins/basic-controls/LayoutControls/Textbox/Main.tsx","Extensions/Plugins/basic-controls/LayoutControls/Badges/Main.tsx","Extensions/Plugins/comments/LayoutControls/CommentsModel.tsx","Extensions/Plugins/comments/LayoutControls/CommentsHelper.tsx","Extensions/Plugins/comments/LayoutControls/ToasterService.tsx","Extensions/Plugins/comments/LayoutControls/Topic.tsx","Extensions/Plugins/comments/LayoutControls/UsersService.tsx","Extensions/Plugins/comments/LayoutControls/Main.tsx","Extensions/Plugins/admin-management/UserModel.tsx","Extensions/Plugins/admin-management/Modals/AddUser.tsx","Extensions/Plugins/admin-management/Modals/RolesComponent.tsx","Extensions/Plugins/admin-management/Modals/GroupsComponent.tsx","Extensions/Plugins/admin-management/Modals/EditUserDetails.tsx","Extensions/Plugins/admin-management/AdminService.tsx","Extensions/Plugins/admin-management/Users.tsx","Extensions/Plugins/admin-management/AdminPageRolesAndPermissions.tsx","Extensions/Plugins/admin-management/PageAdminMD.tsx","Extensions/Plugins/admin-management/PageAdminMDT.tsx","Extensions/Plugins/admin-management/UsersReport.tsx","Extensions/Plugins/admin-management/Main.tsx","Extensions/Plugins/admin-management/PageAdminMDM.tsx","Extensions/Plugins/admin-management/PageAdminGroup.tsx","Extensions/Plugins/multigrid-control/SearchControlTab.tsx","Models/Shared/PropertyControlTypes.ts","Models/Shared/ItemProperty.tsx","Extensions/Plugins/multigrid-control/Main.tsx","Extensions/Plugins/searchnav-control/Main.tsx","Extensions/Plugins/login-eula/EULAService.tsx","Extensions/Plugins/login-eula/Eula.tsx","Extensions/Plugins/login-eula/EULACheck.tsx","Extensions/Plugins/login-eula/Main.tsx","Extensions/Plugins/advanced-controls/LayoutControls/Breadcrumb/Main.tsx","Extensions/Plugins/advanced-controls/LayoutControls/LayoutSection/Main.tsx","Extensions/Plugins/advanced-controls/LayoutControls/Popup/Main.tsx","Extensions/Plugins/advanced-controls/LayoutControls/Tags/Main.tsx","Extensions/Plugins/advanced-controls/LayoutControls/Tabs/Main.tsx","Extensions/Plugins/List.ts","Extensions/Plugins/notifications-management/Main.tsx","Extensions/Plugins/login-management/Main.tsx","Extensions/Plugins/basic-controls/Main.tsx","Extensions/Plugins/comments/Main.tsx","Extensions/Plugins/advanced-controls/Main.tsx","App.tsx","serviceWorker.js","index.js","Resource/Images/ringloader.gif"],"names":["module","exports","map","webpackAsyncContext","req","__webpack_require__","o","Promise","resolve","then","e","Error","code","ids","id","t","keys","Object","FilterManager","this","registerFilter","bind","filterName","method","filters","push","hookName","executeFilter","data","functionsList","getFilter","forEach","fnData","executeAsyncFilter","ConfigService","get","key","ConfigJSON","find","a","value","LayoutControlType","UserDetails","displayname","userid","username","AuthService","password","force","res","rej","filterData","undefined","catch","err","theHeader","userDetails","url","window","location","href","isLoggedIn","permissions","hasAccess","control","ControlType","Document","Control","props","item","load","data-test","items","n","React","Component","className","PopupContainer","LayoutControlManager","Row","Column","add","getAll","LayoutHelper","onLayoutUpdate","onButtonClick","onChange","valueProp","properties","name","theControl","type","itemToShow","html","createElement","doValidation","groupName","validate","visibility","length","doesUserHaveAccess","data-type","data-name","toLowerCase","propItem","colClass","findedClass","p","getTheColClass","console","error","groupValidationStatus","buttonName","validationErrors","validationProperty","JsonProperty","JSON","parse","validateGroup","groupList","obj","Name","toUpperCase","elementValue","Validation","RegExp","rule","test","message","setGroupStatus","isInvalid","status","document","querySelector","setAttribute","isValid","resetValidation","LayoutRenderer","ele","layoutHelper","layoutDataCopy","updateLayoutData","createRef","layoutData","nextProps","ref","ConfirmModalNew","showModal","content","onCancel","onConfirm","primaryButtonText","secondaryButtonText","title","Modal","show","Header","Body","Footer","Button","variant","onClick","ConfirmModalHelperNew","container","body","appendChild","ReactDOM","render","unmountComponentAtNode","remove","EnvService","env","setEnvSettings","settings","Helper","someArray","stringify","text","varName","formattedUrl","matchedVarArray","match","conditionsQuery","index","replace","Function","toString","theString","placeHolders","process","REACT_APP_ODATA_INTERACT","REACT_APP_ODATA_VIEW","REACT_APP_API_INTERACT","REACT_APP_API_USERENDPOINT","REACT_APP_API_AUTHTOKEN","REACT_APP_API_FILESAVE","REACT_APP_API_FILEREMOVE","REACT_APP_API_FILE","REACT_APP_API_FILE_DETAILS","GlamsURL","IAStore","copy","replaceAll","promises","updateFunction","completedCount","finally","Math","round","_HttpHelper","headers","dontChangeBody","httpFilterParam","reject","options","mode","cache","credentials","redirect","referrerPolicy","i","esc","encodeURIComponent","query","k","join","fetch","statusCode","response","r","contentType","indexOf","json","api","http","TheHistory","history","LoadHistory","h","useHistory","Loader","loaderimage","require","showLoader","showp","node","innerHTML","getElementById","Date","now","setCookie","cname","cvalue","exdays","d","setTime","getTime","expires","toUTCString","cookie","SessionHelper","setItem","getItem","ca","split","c","charAt","substring","getCookie","removeItem","LayoutRobotHelper","interactBaseUrl","oDataUrl","userMgmt","callApi","entity","params","requestOptions","authHeader","axios","put","post","delete","redirectTo","Url","New","open","alertNotify","Type","Message","position","autoClose","hideProgressBar","closeOnClick","pauseOnHover","draggable","progress","toast","success","warning","downloadFile","filedata","loader","loaderState","createHttp","callHttp","mapArray","mapData","b","doesUserHavePermission","permission","PermissionName","convertToObject","newitem","val","convertToObjectHelper","prop","getQueryParam","param","queryString","search","URLSearchParams","getAllGroupsByRoles","roles","getAllUsersByRoles","registerContextMenuHook","hook","getRootUrl","getTodaysDate","toISOString","aString","envReplacer","validationsResetHook","ConfirmationPopup","okLbl","cancelLbl","msg","destroy","TheState","showModel","okBtnLabel","cancelBtnLabel","LayoutManager","varsList","setVarSync","varKey","varValue","layoutCopy","setLayoutVars","setLayoutData","setVarObjectSync","subkey","getVar","layout","layoutLoop","layoutItems","propValue","bindedVar","anyVarPlaceholders","level1","level2","replaceVarPlaceholders","executeCode","layoutRobotHelper","setState","AsyncFunction","getPrototypeOf","constructor","func","getUserDetails","updateVarList","subProp","String","assign","loadLayoutVars","splitVal","state","src","alt","removeLayoutVars","logo","HooksManager","registerHook","component","hooks","ExecuteHook","hookedComps","getRegisteredComponents","pluginComp","comp","renderComp","MenuService","getMenu","menuId","MenuJSON","filter","access","searchIcon","projectsIcon","auditIcon","collabIcon","logoutIcon","adminIcon","userIcon","menuItems","showNoificatioList","showNotificationInMenu","Menu","haveAccess","getIcon","menu","isProfileActive","includes","to","accessType","link","width","customVal","logout","onKeyUp","theme","style","useState","setUrl","setName","useEffect","details","Page","children","Array","isArray","child","Main","log","ThemeManager","CurrentThemeData","ThemeData","Templates","LayoutService","layoutEntity","layoutDataEntity","robotEntity","getLayout","templateName","LayoutsJSON","default","clone","loadAllLayouts","layoutModel","Layout","layoutId","setCode","showDynamicLayout","setShowDynamicLayout","PageTemplate","useRef","current","RouteManager","registerRoute","isAuthRequired","route","ExtensionsWrapper","registerLayoutControl","registerLayoutTemplate","routes","getUserRoles","currentUserDetails","HttpHelper","userId","result","x","ExtensionWrapper","rolesParsed","perm","role","Code","NotificationService","GetAllNotifications","GetNotificationsByUser","GetNotificationUpdatesBackground","intract","notificationId","MarkallAsRead","addToWatchList","addToNotifications","getAllNotifications","getAllNotifiedUsers","getUnreadNotifications","updateNotificationStatus","addToAudit","auditObj","auditEntity","notificationIcon","NotificationModel","Id","Title","Category","ReadStatus","SentTo","Link","CreatedOn","CreatedBy","RefId","AssessmentNo","notificatioData","selectedMessage","notificationsList","unreadNotifications","notificationService","NotificationList","lastNotificationiD","notificationsWatcher","hideNotificationsListModel","event","target","closest","getNotificationsByUser","unReadMessages","readAllMessages","messagesList","idsList","updateMessagestatus","notification","random","floor","addAdudit","setNotificationFilter","sourcedata","sortedata","checked","projectId","assessmentNo","ProejctAudit","Activity","Log","ProjectId","getDifferenceInMinutes","date1","date2","statement","d1","moment","d2","ms","duration","diff","asMinutes","newHrs","newDays","notificationBackgroundWatch","parseInt","setNotification","dark","toggleNotificationList","setTimeout","element","topPostions","getBoundingClientRect","top","abs","setProperty","addEventListener","setInterval","removeEventListener","clearInterval","newdate","disabled","marginTop","StatusBar","StatusBarHelper","uuid","hide","update","statusEle","messsage","REACT_APP_API_INTERACT_ODATA","EntityHelper","TimeZoneData","ExtHelper","date","format","dateFormat","dateAndTime","regExp","CurrentUserDetails","CurrentTimeZone","exec","Timezone","zone","timeZone","newDate","toJSON","utcOffset","EmailPreferenceService","UpdateEmailPrefrence","AddSystemPreferencesForUsers","userIds","GetEmailPreferencesbyUserId","thePluginData","EmailPrefrenceComponent","listToUpdate","listToUpdateNotification","excludedIdArr","getAllEmailTemplate","excludedId","GetAll","temp2","IsSelected","findIndex","preferenceState","showAlert","getAllRecord","userData","localStorage","OptOutEmailPrefrenceId","getEmailPrefrenceByUserId","UserId","UsersId","arr","IsNotificationRequired","initialState","changePrefrence","eleName","isChecked","splice","preferenceUpdated","createUserPrefrence","Create","updatePrefrence","tempArr","EmailPreferences","DisplayName","ModifiedOn","EmailTemplateName","ModifiedBy","Table","size","IsSystem","getTimeZoneDate","slice","EmailPrefrence","EmailTemplateIds","Update","submitHandeler","EditUserTabs","L10n","grid","EmptyRecord","uploader","uploadSuccessMessage","Browse","GridHelper","setOrderedColumns","columns","gridId","fields","field","getColumns","gridSettingJSON","orderdedItems","columnFields","sort","toolbarOptions","contextMenuItems","TheGrid","childGridData","pageSettings","allMenuItems","isDragFlag","ifilter","maptocontextMenuItems","menucopy","mapThedata","menuprops","assobj","iconCss","icon","subitems","rowSelected","selectedRows","selectedRecords","getSelectedRecords","onDataStateChangeThen","onDataStateChange","gridCellFormat","cell","templateFn","dataitem","column","dataItem","headerText","templateOptions","dataSource","defaultItem","unshift","create","args","dd","option","label","write","arg","currentTarget","elem","filterByColumn","removeFilteredColsByField","exportToExcel","excelExport","templateFunctionExe","getToolBarOptions","gridSettingsData","toolOptions","isSerchable","toolbar","childGrid","contextOpen","rowInfo","rowData","contextMenuAction","contextMenuModule","contextMenu","onMenuClick","contextMenuOnClick","isDraggingStarted","shouldColumnsReorder","evt","shouldGridColumnsReorder","allowColumsReorder","requestType","removeChildrenFromProps","propsCopy","getUpdatedChildGridChanges","pageSize","pageable","pageSizes","dataUrl","DataManager","adaptor","ODataV4Adaptor","authHeadersForOData","childGridDataUrl","childGridSettings","showColumns","gridHeaderTittles","hideColumns","columnHeader","nextState","oldProps","newProps","groupable","sortable","filterable","filterSettings","sortSettings","groupSettings","allowReordering","allowGridResizing","selectionSettings","allowTextWrap","enableStickyHeader","g","allowPaging","allowGrouping","allowSorting","allowFiltering","actionBegin","detailDataBound","allowResizing","checkBoxChange","contextMenuOpen","contextMenuClick","actionComplete","columnDragStart","colPropertes","template","isPrimaryKey","visible","customAttributes","filterBarTemplate","minWidth","disableHtmlEncode","services","Sort","Filter","Group","Selection","DetailRow","Search","Resize","ExcelExport","Toolbar","Reorder","ContextMenu","TheGridColumn","EmailTemplatePage","rteObj","odataBaseUrl","isOpen","openModal","isAdd","closeModal","isConfirModalVisble","subject","notificationText","templateId","ccEmail","isSystem","errMsg","templateNameErr","templateSubjectErr","templateNotificationErr","isFormSubmited","editRecord","Subject","Content","cc","isActive","deleteConfirm","deleteRecord","isLoading","Delete","handleRefresh","validateInput","errFlag","dataKey","prevState","errObj","saveTemplate","EmailSubject","NotificationText","TemplateContent","CCEmail","IsActive","updateTemplate","refresh","reload","refreshUI","onActivateDeactivate","activate","selectedRecordIds","confirm","EmailTemplates","onSelectedRows","getUpdatedGridChanges","textAlign","checkboxOnly","persistSelection","CloseButton","htmlFor","required","display","height","enableAutoUrl","richtexteditor","created","valueTemplate","Image","HtmlEditor","QuickToolbar","AdminManagerMenu","activeItem","UsersService","getUserProfile","prom","updateProfile","getTimezone","userProfileChangePassword","ChangePass","userName","setUserName","currentPassword","newPassword","confirmPassword","passwordData","setPasswordData","isFormSubmitted","setFormSubmitted","setShowLoader","formRef","inputChnageHandler","newVal","validateControl","propertyName","validator","isEmpty","validatePasswordEqual","noValidate","onSubmit","preventDefault","oldPassword","usersService","UserProfile","userProfile","setUserProfile","isReadOnly","setTimezone","user","record","inputChangeHandler","tempData","handleSubmit","displayName","firstName","lastName","email","department","enableExternalAccess","userGroups","roleProfiles","isGlobalAccessEnabled","isValidationFailed","isEmail","readOnly","validateEmailFormat","change","timeZoneProps","sortOrder","ProfileManagerManu","order","profileMenu","setProfileMenu","ExternalAccess","profilemenu","ErrorObj","userNameErrorMsg","passwordErrorMsg","Login","setPassword","errorMessages","setErrorMessagaes","showSessionExpiryAlert","setShowSessionExpiryAlert","showLoginPage","setShowLoginPage","gotoHome","handleValidations","errorInstance","formStatus","login","model","err1","error_code","error_description","errJson","LoginService","loginBaseUrl","forgotPassword","changePassword","token","ForgotPassword","data-testid","InvalidLink","Navbar","bg","Container","Brand","color","getUsersData","getActiveUsersData","addNewUser","updateUser","deleteUser","getUserDataByUserId","addNewPermission","getUserPermission","getSelectedUserRoles","getAllPermissions","deletePermission","addRole","getPermissionsForRole","roleProfileId","getAllRoles","addPermissiontoRole","addUsersToRole","getUsersForRole","deleteRole","updateRole","getUserGroup","getAllUsersGroups","addNewUserGroup","deleteUserGroup","addMultiplesUsersToGroup","getusersByGroupId","updateGroup","header","qs","getManageData","fieldNameList","promList","all","clearSession","REACT_APP_API_IDENTITY","resetPassword","lockUser","isLocked","securityCode","updateEulaFlag","isAgree","getUserPermissions","getUserDetailsByUserId","getOutOfOfficeByUserId","getUserByGroupId","updateProjectAssigne","downloadUserReport","gridUrl","tokenUrl","fileName","ColumnList","fileDetails","bulkUserUpload","defaultHeader","formdata","FormData","append","isPasswordUpdated","ChangePassword","setNewPassword","setConfirmPassword","setPasswordDescription","isPasswordResetLinkActive","setPasswordLinkStatus","isApiCallFinished","setApiCallStatus","URL","searchParams","authenticationService","isLinkExpired","passwordPatternDesc","PasswordPattern","PasswordPatternDescription","res1","SessionTimeoutService","fetchRefreshToken","AuthenticationComponent","idleTimer","intervelTime","interval","blinkTab","timeoutId","oldTitle","onmousemove","decodeURIComponent","SessionValidateIntervel","remainder1mins","remainder1minEnd","flag","Number","countDownTimer","countDownSec","countDownInSec","grant_type","scope","client_id","REACT_SSO_AUTH_CLIENTID","REACT_APP_AUTH_CLIENTID","client_secret","REACT_APP_AUTH_CLIENT_SECRET","refresh_token","isAuthCallInProgress","isAuthPopupOpen","access_token","SessionExpiry","idealTime","timeoutSec","oauthTokenValidity","timeInMilliSec","exp","BasicAuthService","apiAuthUrl","RefreshTokenService","refreshInprogress","logoutInprogress","handleCursor","oAuthToken","loginUser","basicAuthService","retData","expires_in","userDetailsData","GetRolesbyUserId","RoleName","docIcon","pdfIcon","docXIcon","loadingImg","noPreview","imgPath","bigImgPath","showBigPreview","TemplateType","Template","showBigImage","PreviewBigId","Authorization","blob","createObjectURL","hideBigImage","PreviewId","ev","onerror","templateDataProps","onMouseEnter","onMouseLeave","onError","addNoPreviewSrc","data-count","showInsights","showInsightModal","handleClose","onHide","closeButton","IsShowIcon","fontSize","fontWeight","doseForm","tradeName","market","subclass","strength","artworkCenter","artworkType","componentNumber","componentType","developmentCompoundID","fileType","genericName","impactedFinishedGoodItems","jobID","jobOwner","jobStatus","labelingDocClassification","labelingTitle","manufacturerName","modifiedOn","packSetName","packagingComponent","packagingSite","packagingType","presentationType","productNumber","rcn","registrationNumber","secondayMarket","workflowName","overflow","textOverflow","Avatar","avatarData","shortName","backgroundColor","setNameAndColor","colorPalette","alphabetsNum","f","j","l","m","q","s","u","v","w","y","z","assignedColor","userdata","substr","ceil","background","info","dropDownData","multiSelectOnChange","sessionStorage","placeholder","selectAllText","unSelectAllText","showSelectAll","CheckBoxSelection","dangerouslySetInnerHTML","__html","markAsComplete","onGridActionClick","FlagColor","blue","yellow","orange","red","green","IsBlue","IsRed","IsOragne","textFlage","textLabel","IsTextCorrected","IsLocationCorrected","textStyles","iconStyles","conditionValue","GridOnchange","oncheckBoxChange","templates","ImageTemplate","LinkTemplate","BadgeTemplate","WarningIconTemplate","MergeIconTemplate","ShareIconTemplate","ContentBlockTemplate","AttachmentIconTemplate","ImpatedIconTemplate","LikeIconTemplate","FileDetailsTemplate","ComponentSummaryTemplate","ViewDetailsTemplate","CommentTemplate","ProjectLink","UserTemplate","ReadTemplate","ProjectStatus","DropDownMultiSelectTemplete","GreenRed","FileUpdated","StatusTemplate","MarkAsComplete","FlagTemplate","FlagLabelTemplate","StatusIconTemplate","DynamicFlagAndIconTemplate","checkboxTemplate","list","styleObj","showCustomColumn","separatorValue","listStyle","CustomColumnTemplate","templatesToLoad","propsData","templateVal","ToolBar","onGridAction","colData","iconsStyles","data-toggle","aria-haspopup","aria-expanded","aria-labelledby","subItem","showMultiSelect","selectedColumns","tempSelectedColumns","MultiSelectComponent","searchCol","filterItemsass","dropDownPropsData","selectAll","isAllSelected","onCheckBoxChange","assval","fltrarr","hideMultiSelect","storageId","selectedData","optionalColumns","columName","action","isHavingDefaultColumns","toggleMultiSelect","stopPropagation","headerName","whiteSpace","DefaultStyleProperties","stylePropsObj","padding","margin","border","opacity","maxWidth","minHeight","maxHeight","float","customCss","reduce","acc","presetObj","presetName","columnsMsg","AddPresetModel","columnsHeader","presetObjCopy","presetColumns","errorMsgCopy","isformvalid","onSave","addPreset","inputChange","dropDownChange","showDropDownIcon","GridService","getridStatsData","payload","gridData","toolbarData","filterSettingsData","rowActionsData","groupListData","authHeaders","dropdownValue","defaultColumns","sortSettingsData","gridStatsData","slectedChildData","gridStatsDataUpdateCheck","GridControl","selectedRowData","theGrid","addPresetRef","presetDroupdownInstance","primaryColumnField","GridStatsFinalData","onGridReloadRequest","gridStats","getGridStatsCount","clearSelection","GridStatsObject","gridService","finalGridStats","countObj","GridOnChange","primaryColumn","col","isHavingid","cEvent","CustomEvent","detail","persist","dispatchEvent","onContextMenuFilter","actionName","onToolBarAction","actionVal","updatedSelectedList","currentGridDetails","onGroupValChange","groupData","gridSettingsCopy","rowActions","gridSettings","contextMeduItems","newState","getGroupListFromLocalStrg","gridSettingsString","gridSettingsGroupList","localSavedGroupList","groupListDataAll","seen","Set","ishaving","has","gridSettingData","isDefaultColumn","isoptionalColumns","updateGridStateFromProps","groupDataCopy","getAllStyles","addPresetEnable","chooseColumns","showClearButton","inst","gs","savePreset","some","customformat","updateState","chSettings","chDataUrl","chDataSettings","childSettings","JsonChDataSettings","gridRef","templateProps","JsonChData","childFilterSettings","parentMatchPropertyName","childMatchPropertyName","loo","parentDetails","parentKeyFieldValue","parentRowData","childData","rowDeselected","recordIndex","TextCorrectionId","alert","Preview","itemOptions","backGroundColor","btnWidth","isHide","isDisabled","alignVal","validationFailed","validateTheControl","optionsValue","sponserData","onInputChange","errors","minDate","maxDate","min","max","UploadedFileFormat","uniqueId","uploadObj","isInteraction","allowMultipleFiles","filesList","updatedFilesList","selectdFileData","setPropsReturnObject","requiredDataType","newItem","onUploadFailed","operation","file","statusText","getSelectedFiles","files","selectedFiles","pop","onSuccess","onFileRemove","onBeforeFailure","onPausing","onResuming","newFileData","clearAll","selectedFileName","filesData","rawFile","lastIndexOf","postRawFile","customFormData","filename","cancel","navigator","onLine","proxy","clearTimeInterval","isNullOrUndefined","resume","pause","selectedVals","trim","path","chunkSize","removeUrl","saveUrl","asyncSettings","uploading","FileUpload","addHeaders","chunkUploading","failure","removing","pausing","resuming","chunkFailure","minFileSize","maxFileSize","multiple","sequentialUpload","entries","currentRequest","setRequestHeader","itemType","headingToBeRendered","itemName","excludeValue","wordBreak","Card","isquerySet","previousProps","validationValue","theElement","dropDownRef","Query","filterValue","dynamicData","dropDownSettings","dropDownSettingsJSON","start","recordsCount","end","listElement","scrollTop","offsetHeight","scrollHeight","getAuthToken","filterQuery","where","executeQuery","range","addItem","onOpen","setTheSettings","isCountRequired","take","fieldsSettingsData","sortByFieldName","enableSort","sortBy","predicate","Predicate","operator","filterObj","and","crossDomain","tempIsDisabledVal","isDisabledValue","isMultiSelect","validation","assigntheValue","marginBottom","enabled","enableSelectionOrder","filtering","focus","focusOut","SelectControl","maxLength","isReadonly","rows","isNaN","expand","getValue","badges","badgesList","CommentsTopicModel","TopicType","InactiveReason","CommentsControlId","LocationIdentifier","CommentModel","Comment","FileName","FileId","TopicId","NotifiedUsers","NotifiedUserEmails","CommentsHelper","locationId","topicId","getNotifiedUserNames","usersList","usersName","getUserEmails","emailsList","userObj","comments","showInactiveComment","userList","topicData","uploadedFileName","uploadedFileId","newNotificationUsers","updatedUsersList","inactiveCommentReason","showCommentsBlocks","selectedTopic","updatedTopicId","replyMessageAdded","attachmentStatus","userListWithMultiselect","minRows","maxRows","showInactiveCommentsList","inactiveCommentsList","currentUser","inactivateCommentValidation","errorMsg","comment","TopicComponent","NotifiedUsersNames","getCommentsList","GetCommentsById","userslist","getNotifiedUsername","downloadImage","fielname","fileId","source","handleReplyMessageChange","previousRows","currentRows","reply","checktheChange","createdBy","itemData","getNotifiedUserList","getUsername","tagrteElement","chunkUpload","toggleUsersList","conversation","showUsersDropdown","getSelectedList","currentusers","selectedUsersList","handleReply","notifiedUserslist","checkForCurrentuser","userEmails","completeMessage","Actiontype","NotifyUserNames","sendDataToControl","commentsModel","CommentsListModel","showInactiveTopicModel","showInactiveCommentModel","onStatusmessageChange","handleClearCommentStatus","updatedActiveStatus","selectedIds","handleSubmitCommentStatus","AuditData","reason","UpdateSingleCommentStatus","CommentedIds","onMessageInactivate","getTopicType","commentsType","resteUsersList","resetUsers","getMessageNotifiedUsers","users","userdetails","currenctUser","TopicData","commentsList","data-target","aria-controls","idx","locale","select","removed","CommentsListFilter","showAddNewTopic","newTopic","commentType","commentsFilter","CommentsEntity","commentTypesList","secondaryIdentifier","filterItemsCount","isFailed","newTopicValidation","getAllData","entityId","secondaryEntity","GetById","onCommentsClick","getAllUsers","createTopic","handleMessageChange","handleTopicTitleChange","handleClearTopic","onTypeChange","filterCommentsData","selectedTopics","validateNewTopic","errorMessage","handleAddNewTopic","topic","addCommentToList","attachFile","getUpdatedTopics","fieldsType","startsWith","selected","updateSingleTopic","isReplyMessageAdded","backdrop","currentState","DataModel","groups","sourceModel","description","isLockedOut","registerUserDetails","timezone","AddUsersModal","onHideRequest","onSubmitRequest","newUserDetails","setNewUserDetails","userErrorMsg","setUserErrorMsg","timeZoneArray","newVal1","isFormValid","setUserDetailsName","validateUserName","isInvalidForm","sumbitSource","resp","ex","RolesComponent","listOldNames","listNewNames","byName","RoleId","Role","roleChange","mainIndex","RoleUpdated","roleIds","oldRoleNames","newRoleNames","UpdateUserRole","OldRoleNames","NewRoleNames","prevProps","GroupsComponent","GetGroupsbyUserId","GroupTypeName","object","temp","GroupId","GroupName","groupsGloabalAccess","allGroupsAssignToUser","groupChange","GroupUpdated","onGlobalAccessEnabledRequest","setAllGroups","group","groupIds","oldGroupNames","newGroupNames","UpdateUserGroup","OldGroupNames","NewGroupNames","EditUserDetails","groupComponentChild","roleComponentChild","extraTabsChils","editUserDetails","editDetails","setEditDetails","showSuccessMessage","getElementsByClassName","updatedUserDetials","setUserDetails","setUserChanges","btnLabel","statusMessage","isLockedFlag","timeZoneVal","extraTabs","setExtraTabs","userChanges","tabs","updatedUserDetailsManually","Tabs","defaultActiveKey","transition","Fade","Tab","eventKey","tab","tabClassName","AdminService","userBaseUrl","getUsersReportsData","regenerateUsersListReport","downloadConsolidatedUserReport","Users","showAddNew","setShowAddNew","showEditUser","setshowEditUser","UsersList","setUsersList","UsersExportExcelPermission","setUsersExportExcelPermission","inputFile","gridCustomCss","class","getUsers","useCallback","adminService","parsingData","DataUtil","parseJson","usersPermissions","Exportaccess","Userdata","fileExtension","accept","click","createdOn","AdminPageRolesAndPermissions","PageAdminMD","PageAdminMDT","UsersReport","fileGeneratedTime","setFileGeneratedTime","getUsersReportsDataList","fileDate","dateTime","PageAdminMDM","PageAdminGroup","AdminManagerManu","userSettings","userReportsSettings","rolesAndPermissionsSettings","manageDataSettings","pageChech","SearchControlTab","PropertyControlTypes","tabData","filterLegend","ItemProperty","Textbox","tabInstance","prevSearch","onTabChange","selectingItem","outerText","onRenameRequest","newName","tabsDataClone","tabsData","currentTab","oldtabName","tabName","selectedItem","isEdited","onTabActionClick","onTabDeleteRequest","gridName","onTabCreated","querySelectorAll","setSelectedIndex","componentWillUnmount","elementList","deleteElementList","searchFld","searchJson","gridSearchJson","queryObj","_index","itemTemp","paddingTop","selecting","heightAdjustMode","tabInst","editable","tabIndex","SearchNavState","toggleMenu","classList","handleToggleMenu","Eula","setIsAgree","IsEulaAgreed","cursor","EULAPdf","EULAService","EulaCheck","queryParamsObject","urlParams","paramsData","breadcrumbMenu","breadcrumbData","showLoading","popupSize","showVal","includeHeader","includeFooter","showHideVar","closeIcon","titleVal","dialogClassName","enforceFocus","allowCustomValue","defaultTabName","isUpdatingFromState","activeKey","onSelect","data-placement","defaultTab","pluginData","notificationsManagement","emailPreference","currentUserdetails","profileManagement","loginManagement","userDetailsString","responseCode","keysToRemove","pathname","basicAuth","ButtonGroup","CheckBox","DatePicker","Heading","ItemInfo","Section","Select","TextArea","Badges","basicControls","Comments","adminManagement","loginEula","emailTemplate","Breadcrumb","LayoutSection","Popup","Tags","advancedControls","HomespageManager","gotoLogin","NoMatch","NoAccess","AuthFailed","App","pluginRoutes","setPluginRoutes","dynamicRoutes","setDynamicRoutess","renderer","setRendrer","origin","REACT_APP_SYNCFUSION_LICENSE","registerLicense","getRoutes","allLayouts","routeArr","layoutObj","routeObj","pathName","RouteName","loadTheme","loadPlugins","basename","PUBLIC_URL","exact","RenderDynamicLayout","Boolean","hostname","serviceWorker","ready","registration","unregister"],"mappings":";2FAAAA,EAAOC,QAAU,IAA0B,wC,wpKCA3CD,EAAOC,QAAU,IAA0B,uC,kBCA3CD,EAAOC,QAAU,8lE,4oFCAjBD,EAAOC,QAAU,IAA0B,kC,sGCA3CD,EAAOC,QAAU,IAA0B,qC,oBCA3CD,EAAOC,QAAU,IAA0B,yC,oBCA3CD,EAAOC,QAAU,IAA0B,oC,oBCA3CD,EAAOC,QAAU,IAA0B,sC,oBCA3CD,EAAOC,QAAU,IAA0B,mC,oBCA3CD,EAAOC,QAAU,IAA0B,oC,oBCA3CD,EAAOC,QAAU,IAA0B,oC,oBCA3CD,EAAOC,QAAU,IAA0B,0C,oBCA3CD,EAAOC,QAAU,IAA0B,kC,0CCA3C,IAAIC,EAAM,CACT,uBAAwB,CACvB,IACA,IAED,uBAAwB,CACvB,IACA,IAED,uBAAwB,CACvB,IACA,IAED,uBAAwB,CACvB,IACA,IAED,uBAAwB,CACvB,IACA,IAED,uBAAwB,CACvB,IACA,IAED,uBAAwB,CACvB,IACA,IAED,uBAAwB,CACvB,IACA,IAED,uBAAwB,CACvB,IACA,IAED,uBAAwB,CACvB,IACA,IAED,uBAAwB,CACvB,IACA,IAED,uBAAwB,CACvB,IACA,IAED,uBAAwB,CACvB,IACA,IAED,uBAAwB,CACvB,IACA,IAED,uBAAwB,CACvB,IACA,IAED,uBAAwB,CACvB,IACA,IAED,uBAAwB,CACvB,IACA,IAED,uBAAwB,CACvB,IACA,IAED,uBAAwB,CACvB,IACA,IAED,uBAAwB,CACvB,IACA,IAED,uBAAwB,CACvB,IACA,IAED,uBAAwB,CACvB,IACA,IAED,uBAAwB,CACvB,IACA,IAED,uBAAwB,CACvB,IACA,IAED,uBAAwB,CACvB,IACA,IAED,uBAAwB,CACvB,IACA,IAED,uBAAwB,CACvB,IACA,IAED,uBAAwB,CACvB,IACA,IAED,uBAAwB,CACvB,IACA,IAED,uBAAwB,CACvB,IACA,IAED,uBAAwB,CACvB,IACA,IAED,uBAAwB,CACvB,IACA,IAED,uBAAwB,CACvB,IACA,IAED,uBAAwB,CACvB,IACA,IAED,uBAAwB,CACvB,IACA,IAED,uBAAwB,CACvB,IACA,IAED,uBAAwB,CACvB,IACA,IAED,uBAAwB,CACvB,IACA,IAED,uBAAwB,CACvB,IACA,IAED,uBAAwB,CACvB,IACA,IAED,uBAAwB,CACvB,IACA,IAED,uBAAwB,CACvB,IACA,IAED,uBAAwB,CACvB,IACA,IAED,uBAAwB,CACvB,IACA,IAED,uBAAwB,CACvB,IACA,KAGF,SAASC,EAAoBC,GAC5B,IAAIC,EAAoBC,EAAEJ,EAAKE,GAC9B,OAAOG,QAAQC,UAAUC,MAAK,WAC7B,IAAIC,EAAI,IAAIC,MAAM,uBAAyBP,EAAM,KAEjD,MADAM,EAAEE,KAAO,mBACHF,KAIR,IAAIG,EAAMX,EAAIE,GAAMU,EAAKD,EAAI,GAC7B,OAAOR,EAAoBK,EAAEG,EAAI,IAAIJ,MAAK,WACzC,OAAOJ,EAAoBU,EAAED,EAAI,MAGnCX,EAAoBa,KAAO,WAC1B,OAAOC,OAAOD,KAAKd,IAEpBC,EAAoBW,GAAK,IACzBd,EAAOC,QAAUE,G,oBCxMjB,IAAID,EAAM,CACT,sBAAuB,CACtB,IACA,GAED,sBAAuB,CACtB,IACA,GAED,sBAAuB,CACtB,IACA,GAED,sBAAuB,CACtB,IACA,GAED,sBAAuB,CACtB,IACA,GAED,sBAAuB,CACtB,IACA,GAED,sBAAuB,CACtB,IACA,GAED,sBAAuB,CACtB,IACA,IAED,sBAAuB,CACtB,IACA,IAED,sBAAuB,CACtB,IACA,IAED,sBAAuB,CACtB,IACA,IAED,sBAAuB,CACtB,IACA,IAED,sBAAuB,CACtB,IACA,IAED,sBAAuB,CACtB,IACA,IAED,sBAAuB,CACtB,IACA,IAED,sBAAuB,CACtB,IACA,IAED,sBAAuB,CACtB,IACA,IAED,sBAAuB,CACtB,IACA,IAED,sBAAuB,CACtB,IACA,IAED,sBAAuB,CACtB,IACA,IAED,sBAAuB,CACtB,IACA,IAED,sBAAuB,CACtB,IACA,IAED,sBAAuB,CACtB,IACA,IAED,sBAAuB,CACtB,IACA,IAED,sBAAuB,CACtB,IACA,IAED,sBAAuB,CACtB,IACA,IAED,sBAAuB,CACtB,IACA,IAE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","file":"static/js/main.c33285d0.chunk.js","sourcesContent":["module.exports = __webpack_public_path__ + \"static/media/Login_Logo.bb745053.png\";","module.exports = __webpack_public_path__ + \"static/media/logo-merk.cdfb348c.svg\";","module.exports = \"data:image/png;base64,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\"","module.exports = __webpack_public_path__ + \"static/media/EULA.c94c406d.pdf\";","module.exports = __webpack_public_path__ + \"static/media/thelogo.263ccd85.svg\";","module.exports = __webpack_public_path__ + \"static/media/NCLB LOGO_1.bb745053.png\";","module.exports = __webpack_public_path__ + \"static/media/search.7d5decf5.svg\";","module.exports = __webpack_public_path__ + \"static/media/projects.002d30a3.svg\";","module.exports = __webpack_public_path__ + \"static/media/audit.161c1ff4.svg\";","module.exports = __webpack_public_path__ + \"static/media/collab.c41905f4.svg\";","module.exports = __webpack_public_path__ + \"static/media/logout.dac115c1.svg\";","module.exports = __webpack_public_path__ + \"static/media/admion-white.7014052d.svg\";","module.exports = __webpack_public_path__ + \"static/media/user.2e31237d.svg\";","var map = {\n\t\"./1635264245504.json\": [\n\t\t372,\n\t\t41\n\t],\n\t\"./1635337822124.json\": [\n\t\t373,\n\t\t42\n\t],\n\t\"./1635338941081.json\": [\n\t\t374,\n\t\t43\n\t],\n\t\"./1635418915804.json\": [\n\t\t375,\n\t\t44\n\t],\n\t\"./1635422144028.json\": [\n\t\t376,\n\t\t45\n\t],\n\t\"./1635423984807.json\": [\n\t\t377,\n\t\t46\n\t],\n\t\"./1635426331847.json\": [\n\t\t378,\n\t\t47\n\t],\n\t\"./1635431487057.json\": [\n\t\t379,\n\t\t48\n\t],\n\t\"./1635444899492.json\": [\n\t\t380,\n\t\t49\n\t],\n\t\"./1635510692006.json\": [\n\t\t381,\n\t\t50\n\t],\n\t\"./1635923570306.json\": [\n\t\t382,\n\t\t51\n\t],\n\t\"./1636806064422.json\": [\n\t\t383,\n\t\t52\n\t],\n\t\"./1637140894093.json\": [\n\t\t384,\n\t\t53\n\t],\n\t\"./1637141952366.json\": [\n\t\t385,\n\t\t54\n\t],\n\t\"./1637146325007.json\": [\n\t\t386,\n\t\t55\n\t],\n\t\"./1638372669426.json\": [\n\t\t387,\n\t\t56\n\t],\n\t\"./1638619672038.json\": [\n\t\t388,\n\t\t57\n\t],\n\t\"./1639381668075.json\": [\n\t\t389,\n\t\t58\n\t],\n\t\"./1643096477174.json\": [\n\t\t390,\n\t\t59\n\t],\n\t\"./1643975895452.json\": [\n\t\t391,\n\t\t60\n\t],\n\t\"./1644237426805.json\": [\n\t\t392,\n\t\t61\n\t],\n\t\"./1644302096653.json\": [\n\t\t393,\n\t\t62\n\t],\n\t\"./1645161171443.json\": [\n\t\t394,\n\t\t63\n\t],\n\t\"./1645434709730.json\": [\n\t\t395,\n\t\t64\n\t],\n\t\"./1645444092387.json\": [\n\t\t396,\n\t\t65\n\t],\n\t\"./1645542438857.json\": [\n\t\t397,\n\t\t66\n\t],\n\t\"./1646220984243.json\": [\n\t\t398,\n\t\t67\n\t],\n\t\"./1646728208682.json\": [\n\t\t399,\n\t\t68\n\t],\n\t\"./1646745945170.json\": [\n\t\t400,\n\t\t69\n\t],\n\t\"./1648471451499.json\": [\n\t\t401,\n\t\t70\n\t],\n\t\"./1665908595540.json\": [\n\t\t402,\n\t\t71\n\t],\n\t\"./1666000822290.json\": [\n\t\t403,\n\t\t72\n\t],\n\t\"./1666069713583.json\": [\n\t\t404,\n\t\t73\n\t],\n\t\"./1666075092252.json\": [\n\t\t405,\n\t\t74\n\t],\n\t\"./1666154511858.json\": [\n\t\t406,\n\t\t75\n\t],\n\t\"./1666164807483.json\": [\n\t\t407,\n\t\t76\n\t],\n\t\"./1666965544278.json\": [\n\t\t408,\n\t\t77\n\t],\n\t\"./1667386973460.json\": [\n\t\t409,\n\t\t78\n\t],\n\t\"./1667471232660.json\": [\n\t\t410,\n\t\t79\n\t],\n\t\"./1668002347448.json\": [\n\t\t411,\n\t\t80\n\t],\n\t\"./1669199749930.json\": [\n\t\t412,\n\t\t81\n\t],\n\t\"./1677828938798.json\": [\n\t\t413,\n\t\t82\n\t],\n\t\"./1687082254341.json\": [\n\t\t414,\n\t\t83\n\t],\n\t\"./1687254164878.json\": [\n\t\t415,\n\t\t84\n\t],\n\t\"./1737120298722.json\": [\n\t\t416,\n\t\t85\n\t]\n};\nfunction webpackAsyncContext(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\treturn Promise.resolve().then(function() {\n\t\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\t\te.code = 'MODULE_NOT_FOUND';\n\t\t\tthrow e;\n\t\t});\n\t}\n\n\tvar ids = map[req], id = ids[0];\n\treturn __webpack_require__.e(ids[1]).then(function() {\n\t\treturn __webpack_require__.t(id, 3);\n\t});\n}\nwebpackAsyncContext.keys = function webpackAsyncContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackAsyncContext.id = 234;\nmodule.exports = webpackAsyncContext;","var map = {\n\t\"./1635264245504.txt\": [\n\t\t417,\n\t\t3\n\t],\n\t\"./1635337822124.txt\": [\n\t\t418,\n\t\t4\n\t],\n\t\"./1635338941081.txt\": [\n\t\t419,\n\t\t5\n\t],\n\t\"./1635418915804.txt\": [\n\t\t420,\n\t\t6\n\t],\n\t\"./1635422144028.txt\": [\n\t\t421,\n\t\t7\n\t],\n\t\"./1635423984807.txt\": [\n\t\t422,\n\t\t8\n\t],\n\t\"./1635426331847.txt\": [\n\t\t423,\n\t\t9\n\t],\n\t\"./1635431487057.txt\": [\n\t\t424,\n\t\t10\n\t],\n\t\"./1635444899492.txt\": [\n\t\t425,\n\t\t11\n\t],\n\t\"./1635510692006.txt\": [\n\t\t426,\n\t\t12\n\t],\n\t\"./1635923570306.txt\": [\n\t\t427,\n\t\t13\n\t],\n\t\"./1636806064422.txt\": [\n\t\t428,\n\t\t14\n\t],\n\t\"./1637140894093.txt\": [\n\t\t429,\n\t\t15\n\t],\n\t\"./1637141952366.txt\": [\n\t\t430,\n\t\t16\n\t],\n\t\"./1638372669426.txt\": [\n\t\t431,\n\t\t17\n\t],\n\t\"./1638619672038.txt\": [\n\t\t432,\n\t\t18\n\t],\n\t\"./1639381668075.txt\": [\n\t\t433,\n\t\t19\n\t],\n\t\"./1643096477174.txt\": [\n\t\t434,\n\t\t20\n\t],\n\t\"./1643975895452.txt\": [\n\t\t435,\n\t\t21\n\t],\n\t\"./1644302096653.txt\": [\n\t\t436,\n\t\t22\n\t],\n\t\"./1645434709730.txt\": [\n\t\t437,\n\t\t23\n\t],\n\t\"./1645444092387.txt\": [\n\t\t438,\n\t\t24\n\t],\n\t\"./1646220984243.txt\": [\n\t\t439,\n\t\t25\n\t],\n\t\"./1646728208682.txt\": [\n\t\t440,\n\t\t26\n\t],\n\t\"./1646745945170.txt\": [\n\t\t441,\n\t\t27\n\t],\n\t\"./1648471451499.txt\": [\n\t\t442,\n\t\t28\n\t],\n\t\"./1665908595540.txt\": [\n\t\t443,\n\t\t29\n\t],\n\t\"./1666000822290.txt\": [\n\t\t444,\n\t\t30\n\t],\n\t\"./1666069713583.txt\": [\n\t\t445,\n\t\t31\n\t],\n\t\"./1666075092252.txt\": [\n\t\t446,\n\t\t32\n\t],\n\t\"./1666164807483.txt\": [\n\t\t447,\n\t\t33\n\t],\n\t\"./1667386973460.txt\": [\n\t\t448,\n\t\t34\n\t],\n\t\"./1667471232660.txt\": [\n\t\t449,\n\t\t35\n\t],\n\t\"./1668002347448.txt\": [\n\t\t450,\n\t\t36\n\t],\n\t\"./1669199749930.txt\": [\n\t\t451,\n\t\t37\n\t],\n\t\"./1677828938798.txt\": [\n\t\t452,\n\t\t38\n\t],\n\t\"./1687082254341.txt\": [\n\t\t453,\n\t\t39\n\t],\n\t\"./1687254164878.txt\": [\n\t\t454,\n\t\t40\n\t]\n};\nfunction webpackAsyncContext(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\treturn Promise.resolve().then(function() {\n\t\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\t\te.code = 'MODULE_NOT_FOUND';\n\t\t\tthrow e;\n\t\t});\n\t}\n\n\tvar ids = map[req], id = ids[0];\n\treturn __webpack_require__.e(ids[1]).then(function() {\n\t\treturn __webpack_require__.t(id, 7);\n\t});\n}\nwebpackAsyncContext.keys = function webpackAsyncContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackAsyncContext.id = 235;\nmodule.exports = webpackAsyncContext;","module.exports = __webpack_public_path__ + \"static/media/notification.2fe1f6dd.svg\";","module.exports = \"data:image/png;base64,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\"","module.exports = __webpack_public_path__ + \"static/media/loader.8c077453.gif\";","module.exports = \"data:image/png;base64,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\"","module.exports = __webpack_public_path__ + \"static/media/loader.8c077453.gif\";","module.exports = __webpack_public_path__ + \"static/media/ringloader.dafb50ef.gif\";","module.exports = __webpack_public_path__ + \"static/media/logout.dac115c1.svg\";","/* eslint-disable no-dupe-class-members */\r\n\r\nexport type PluginFilters = {\r\n id: string;\r\n method: Function;\r\n}\r\n\r\ntype FilterHolder = {[key:string]: Array};\r\n\r\nexport default class FilterManager{\r\n private id:string;\r\n\r\n private static filters:FilterHolder = {};\r\n\r\n static getFilter(hookName: string) : PluginFilters[] | undefined{\r\n return FilterManager.filters[hookName];\r\n }\r\n\r\n constructor(id: string){\r\n this.id = id;\r\n this.registerFilter = this.registerFilter.bind(this);\r\n }\r\n\r\n registerFilter(\r\n filterName: string, \r\n method: Function\r\n ){\r\n if (!FilterManager.filters[filterName]) FilterManager.filters[filterName] = [];\r\n\r\n FilterManager.filters[filterName].push({\r\n id: this.id,\r\n method\r\n });\r\n }\r\n}","/* eslint-disable no-await-in-loop */\r\n/* eslint-disable no-restricted-syntax */\r\nimport FilterManager from './FiltersManager';\r\n\r\nexport function executeFilter(filterName: string, data: {[key:string]:any}): void{\r\n const functionsList = FilterManager.getFilter(filterName);\r\n functionsList?.forEach(fnData => {\r\n const { method } = fnData;\r\n\r\n method(data);\r\n });\r\n}\r\n\r\nexport async function executeAsyncFilter(filterName: string, data: {[key:string]:any}): Promise{\r\n const functionsList = FilterManager.getFilter(filterName);\r\n\r\n if (!functionsList) return;\r\n\r\n for (const fnData of functionsList){\r\n const { method } = fnData;\r\n data = await method(data);\r\n }\r\n}\r\n","import ConfigJSON from \"../Config/config.json\";\r\n\r\nexport class ConfigurationType{\r\n key = \"\";\r\n\r\n value = \"\";\r\n}\r\n\r\nexport default class ConfigService{\r\n static get = (key: string) => {\r\n return (ConfigJSON as ConfigurationType[]).find(a => a.key===key)?.value;\r\n }\r\n}","import { \r\n executeFilter, executeAsyncFilter \r\n} from '../Models/Core/Filters';\r\nimport ConfigService from './ConfigService';\r\n\r\nexport class UserDetails{\r\n // role: string | undefined;\r\n displayname:string = \"\";\r\n\r\n userid: string = \"\";\r\n\r\n username: string = \"\";\r\n\r\n [key: string]: string;\r\n}\r\n\r\nexport type LoginFilterType = {\r\n username: string, password: string, force: boolean\r\n}\r\nexport type AfterLoginFilterType = LoginFilterType;\r\n\r\nexport type AuthHeaderFilterType = {\r\n theHeader: any,\r\n}\r\n\r\nexport type LogoutFilterType = {}\r\n\r\nexport type IsLoggedInFilterType = {\r\n isLoggedIn: boolean\r\n}\r\nexport type GetUserDetailsFilterType = {\r\n userDetails: UserDetails\r\n}\r\n\r\nexport type DoesUserHaveAccessFilterType = {\r\n permissions: string[]\r\n hasAccess: boolean\r\n}\r\nexport type HandleNoAuthFilterType = {}\r\n\r\nexport type HttpResponseFilterType = {\r\n statusCode: number\r\n response: any;\r\n}\r\n\r\nexport default class AuthService{\r\n static login(username:string, password:string, force = false) {\r\n return new Promise((res, rej) => {\r\n const filterData:LoginFilterType = {username, password, force};\r\n executeAsyncFilter(\"LoginFilter\", filterData)\r\n .then(() => {\r\n executeAsyncFilter(\"AfterLoginFilter\", filterData)\r\n .then(()=>{\r\n res(undefined);\r\n })\r\n \r\n })\r\n .catch((err) => {\r\n rej(err);\r\n }); \r\n });\r\n }\r\n\r\n static authHeader() : {[key:string]: string} {\r\n const filterData: AuthHeaderFilterType = {theHeader: {}};\r\n\r\n executeFilter(\"AuthHeaderFilter\", filterData);\r\n\r\n return filterData.theHeader;\r\n }\r\n\r\n static getUserDetails():UserDetails{\r\n const filterData: GetUserDetailsFilterType = {\r\n userDetails: new UserDetails()\r\n };\r\n\r\n executeFilter(\"GetUserDetailsFilter\", filterData);\r\n\r\n return filterData.userDetails;\r\n }\r\n\r\n static logout() {\r\n const data: LogoutFilterType = {};\r\n executeFilter(\"LogoutFilter\", data);\r\n }\r\n\r\n static gotoHome() {\r\n const url = ConfigService.get(\"HomePage\");\r\n window.location.href=`${url}`;\r\n }\r\n\r\n static gotoLogin() {\r\n const data: HandleNoAuthFilterType = {};\r\n executeFilter(\"HandleNoAuthFilter\", data);\r\n }\r\n\r\n static isLoggedIn() {\r\n const filterData:IsLoggedInFilterType = {isLoggedIn: true};\r\n\r\n executeFilter(\"IsLoggedInFilter\", filterData);\r\n\r\n return filterData.isLoggedIn;\r\n } \r\n\r\n static doesUserHaveAccess(permissions:string[]){\r\n const filterData:DoesUserHaveAccessFilterType = {\r\n permissions,\r\n hasAccess: true\r\n };\r\n executeFilter(\"DoesUserHaveAccess\", filterData);\r\n\r\n return filterData.hasAccess;\r\n }\r\n}","import ItemProperty from './ItemProperty';\r\n\r\nexport enum LayoutControlType {\r\n Document = 'Document',\r\n Date = 'Date',\r\n Row = 'Row',\r\n Column = 'Column',\r\n Textbox = 'Textbox',\r\n Textarea = 'Textarea',\r\n Password = 'Password',\r\n ItemInfo = 'ItemInfo',\r\n ItemInfoCollection = 'ItemInfoCollection',\r\n Tabs = 'Tabs',\r\n Tab = 'Tab',\r\n Hidden = 'Hidden',\r\n Section = 'Section',\r\n Select = 'Select',\r\n RadioGroup = 'RadioGroup',\r\n Paragraph = 'Paragraph',\r\n H1 = 'H1',\r\n H2 = 'H2',\r\n HTML = 'HTML',\r\n InjectJavascript = 'InjectJavascript',\r\n LineBreak = 'LineBreak',\r\n CheckboxGroup = 'CheckboxGroup',\r\n SingleCheckBox = 'SingleCheckBox',\r\n GroupPanel = 'GroupPanel',\r\n ManagedData = 'ManagedData',\r\n ServerSelect = 'ServerSelect',\r\n ManagedDataGroup = 'ManagedDataGroup',\r\n Users = 'Users',\r\n BarCode = 'BarCode',\r\n FileUpload = 'FileUpload',\r\n Grid = 'Grid',\r\n CustomControl = 'CustomControl',\r\n Button = 'Button',\r\n Popup = \"Popup\",\r\n PopupFooter = \"PopupFooter\",\r\n PopupContainer = \"PopupContainer\"\r\n}\r\n/**\r\n * The Layout tree structure\r\n */\r\nexport class LayoutTreeOBJ {\r\n name: string;\r\n\r\n id: string;\r\n\r\n label?: string;\r\n\r\n type: string;\r\n\r\n visibility?: boolean;\r\n\r\n required?: boolean = false;\r\n\r\n regexValidation?: string;\r\n\r\n permissions?: string[];\r\n\r\n properties?: ItemProperty[] = []\r\n\r\n items?: LayoutTreeOBJ[] = [];\r\n\r\n static flatten(items: LayoutTreeOBJ[]): LayoutTreeOBJ[] {\r\n const a: LayoutTreeOBJ[] = [];\r\n\r\n items.forEach((n) => {\r\n a.push(n);\r\n\r\n if (n.items) {\r\n const b = LayoutTreeOBJ.flatten(n.items);\r\n\r\n b.forEach(c => a.push(c)); \r\n }\r\n });\r\n\r\n return a;\r\n }\r\n\r\n constructor(id: string, type: string, name: string, label = '', visibility = true, props: ItemProperty[] = []) {\r\n this.id = id;\r\n this.type = type;\r\n this.name = name;\r\n this.label = label === '' ? name : label;\r\n this.visibility = visibility;\r\n\r\n this.properties = props;\r\n }\r\n}\r\n","import React from 'react';\r\nimport { LayoutControlType } from '../../../../Shared/LayoutTreeOBJ';\r\nimport { LayoutControl, LayoutControlProps } from '../../LayoutControlManager';\r\n\r\nconst controlType = LayoutControlType.Document;\r\n\r\nclass RowControl extends React.Component{\r\n render() {\r\n const { item, load } = this.props;\r\n\r\n return (\r\n <>\r\n
\r\n {item.items?.map((n) => load(n))}\r\n
\r\n \r\n );\r\n }\r\n}\r\n\r\nconst control: LayoutControl = {\r\n ControlType: controlType,\r\n Control: RowControl\r\n};\r\n\r\nexport default control;","import React from 'react';\r\nimport { LayoutControl, LayoutControlProps } from '../../LayoutControlManager';\r\n\r\nconst controlType = 'Row';\r\n\r\nclass RowControl extends React.Component{\r\n render() {\r\n const { item, load } = this.props;\r\n\r\n return (\r\n <>\r\n
\r\n {item.items?.map((n) => load(n))}\r\n
\r\n \r\n );\r\n }\r\n}\r\n\r\nconst control: LayoutControl = {\r\n ControlType: controlType,\r\n Control: RowControl\r\n};\r\n\r\nexport default control;","import React from 'react';\r\nimport { LayoutControl, LayoutControlProps } from '../../LayoutControlManager';\r\n\r\nconst controlType = 'Column';\r\n\r\nclass ColumnControl extends React.Component{\r\n render(){\r\n const {item, load} = this.props;\r\n\r\n return (\r\n <>\r\n {item.items?.map((n) => load(n))}\r\n \r\n );\r\n }\r\n}\r\n\r\nconst control:LayoutControl = {\r\n ControlType: controlType,\r\n Control: ColumnControl\r\n};\r\n\r\nexport default control;","import React from 'react';\r\nimport { LayoutControlType } from '../../../../Shared/LayoutTreeOBJ';\r\nimport { LayoutControl, LayoutControlProps } from '../../LayoutControlManager';\r\n\r\nconst controlType = LayoutControlType.PopupContainer;\r\n\r\nclass RowControl extends React.Component{\r\n render() {\r\n const { item, load } = this.props;\r\n\r\n return (\r\n <>\r\n
\r\n {item.items?.map((n) => load(n))}\r\n
\r\n \r\n );\r\n }\r\n}\r\n\r\nconst control: LayoutControl = {\r\n ControlType: controlType,\r\n Control: RowControl\r\n};\r\n\r\nexport default control;","import { LayoutTreeOBJ } from '../../Shared/LayoutTreeOBJ';\r\nimport Document from './Controls/Document/Main';\r\nimport Row from './Controls/Row/Main';\r\nimport Column from './Controls/Column/Main';\r\nimport PopupContainer from './Controls/PopupContainer/Main';\r\n\r\nexport interface LayoutControlProps {\r\n item: LayoutTreeOBJ;\r\n load: (item: LayoutTreeOBJ) => JSX.Element;\r\n onChange: (value: string) => void;\r\n doValidation?: (groupName: string, buttonName:string) => void;\r\n}\r\n\r\nexport interface LayoutControl {\r\n ControlType: string;\r\n Control: any;\r\n}\r\n\r\nexport default class LayoutControlManager{\r\n private static items: LayoutControl[] = [\r\n Row, \r\n Column, \r\n PopupContainer,\r\n Document\r\n ];\r\n\r\n static add = (item: LayoutControl) => {\r\n LayoutControlManager.items.push(item);\r\n }\r\n\r\n static getAll = () => {\r\n return LayoutControlManager.items;\r\n }\r\n}","import React from 'react';\r\nimport { LayoutTreeOBJ } from '../../Models/Shared/LayoutTreeOBJ';\r\nimport AuthService from '../../Services/AuthService';\r\nimport LayoutControlManager from '../../Models/Core/LayoutControls/LayoutControlManager';\r\n\r\n/**\r\n * Helps PreviewView with loading previews for items\r\n */\r\nexport default class LayoutHelper {\r\n onLayoutUpdate: () => void;\r\n\r\n static groupName = ''\r\n\r\n static isValid = true\r\n\r\n static groupValidationStatus: string[] = []\r\n\r\n static buttonName: string = 'default'\r\n\r\n constructor(onLayoutUpdate: () => void) {\r\n this.onLayoutUpdate = onLayoutUpdate;\r\n }\r\n\r\n onButtonClick: ((item: LayoutTreeOBJ) => void) | undefined = undefined;\r\n\r\n onChange = (item: LayoutTreeOBJ, value: string) => {\r\n const valueProp = item.properties?.find(a => a.name === 'Value');\r\n if (valueProp) valueProp.value = value;\r\n\r\n this.onLayoutUpdate();\r\n }\r\n\r\n /**\r\n * @author Praveen\r\n * @description this method used for validate all controls\r\n * @static\r\n * @param {LayoutTreeOBJ} item\r\n * @param {string} [value] this property is optional, if the input control having our defined id need to pass the value of that control \r\n * @return {*} {string[]}\r\n * @memberof LayoutHelper\r\n */\r\n static validateTheControl(item: LayoutTreeOBJ, value?:string): string[] {\r\n const {groupName} = LayoutHelper;\r\n const validationErrors: string[] = [];\r\n\r\n if (groupName !== '') {\r\n const validationProperty = item.properties?.find((p) => p.name === 'Validations')?.value;\r\n if (validationProperty) {\r\n validationErrors.length = 0;\r\n const JsonProperty = JSON.parse(validationProperty);\r\n const validateGroup = JsonProperty?.groupList.find((obj: any) => obj.Name?.toUpperCase() === groupName.toUpperCase());\r\n\r\n if (validateGroup) {\r\n const elementValue: string = value || \"\";\r\n validateGroup.Validation.forEach((obj: any) => {\r\n const re = new RegExp(obj.rule, 'i');\r\n\r\n if (!re.test(elementValue)) validationErrors.push(obj.message);\r\n });\r\n }\r\n if (validationErrors.length > 0) {\r\n LayoutHelper.groupValidationStatus.push('Invalid');\r\n } else {\r\n LayoutHelper.groupValidationStatus.push('Valid');\r\n }\r\n }\r\n LayoutHelper.setGroupStatus();\r\n }\r\n\r\n return validationErrors;\r\n }\r\n\r\n /**\r\n *@author Praveen\r\n *@description this function is used for form status in document \r\n * @static\r\n * @memberof LayoutHelper\r\n */\r\n static setGroupStatus() {\r\n const isInvalid = LayoutHelper.groupValidationStatus.find((status) => status === 'Invalid');\r\n const {buttonName} = LayoutHelper;\r\n\r\n if (isInvalid && buttonName !== '') {\r\n document.querySelector(`.layout-renderer [data-name=${buttonName}] button`)?.setAttribute('groupStatus', 'Invalid');\r\n } else {\r\n document.querySelector(`.layout-renderer [data-name=${buttonName}] button`)?.setAttribute('groupStatus', 'Valid');\r\n }\r\n }\r\n\r\n validate(items: string, name: string) {\r\n LayoutHelper.groupValidationStatus.length = 0;\r\n LayoutHelper.groupName = items;\r\n LayoutHelper.buttonName = name;\r\n this.onLayoutUpdate();\r\n }\r\n\r\n static resetValidation = () => {\r\n LayoutHelper.groupValidationStatus.length = 0;\r\n LayoutHelper.groupName = \"\";\r\n LayoutHelper.buttonName = \"\";\r\n }\r\n\r\n load = (item: LayoutTreeOBJ) => {\r\n const theControl = LayoutControlManager.getAll().find((a) => a.ControlType === item.type);\r\n\r\n if (!theControl) {\r\n console.error(`GLAMS IA Error: Layout control \"${item.type}\" not found.`);\r\n\r\n return undefined;\r\n }\r\n\r\n const {Control} = theControl;\r\n const html = React.createElement(Control, {\r\n item, load: this.load, doValidation: (groupName: string, name: string) => { this.validate(groupName, name); }, onChange: (value: string) => { this.onChange(item, value); } \r\n });\r\n\r\n const showItemToUser = (itemToShow:LayoutTreeOBJ) => {\r\n if (itemToShow.visibility === false) return false;\r\n if (itemToShow.permissions !== undefined && itemToShow.permissions.length > 0){\r\n const doestHavePermission = AuthService.doesUserHaveAccess(itemToShow.permissions);\r\n return doestHavePermission;\r\n }\r\n return true;\r\n };\r\n\r\n const getTheColClass = (propItem:LayoutTreeOBJ):string => {\r\n let colClass = \"col\";\r\n if (propItem.properties){\r\n const findedClass = propItem.properties?.find((p) => p.name === 'Size')?.value;\r\n if (findedClass){\r\n colClass = findedClass;\r\n }\r\n }\r\n return colClass;\r\n };\r\n\r\n return (\r\n showItemToUser(item) && (\r\n \r\n {html}\r\n \r\n )\r\n );\r\n }\r\n}\r\n","import React from 'react';\r\nimport { LayoutTreeOBJ } from '../../Models/Shared/LayoutTreeOBJ';\r\nimport LayoutHelper from './LayoutHelper';\r\n\r\ninterface TheProps{\r\n layoutData: LayoutTreeOBJ[];\r\n updateLayoutData: (layout: LayoutTreeOBJ[]) => void;\r\n}\r\n\r\nclass TheState{\r\n layoutData: LayoutTreeOBJ[];\r\n\r\n constructor(layoutData:LayoutTreeOBJ[]){\r\n this.layoutData = layoutData;\r\n }\r\n}\r\n\r\nexport default class LayoutRenderer extends React.Component{\r\n ele:React.RefObject;\r\n\r\n layoutHelper: LayoutHelper;\r\n\r\n layoutDataCopy: LayoutTreeOBJ[];\r\n\r\n onLayoutUpdate = () => {\r\n this.props.updateLayoutData(this.layoutDataCopy);\r\n }\r\n\r\n constructor(props: TheProps){\r\n super(props);\r\n\r\n this.ele = React.createRef();\r\n\r\n this.layoutHelper = new LayoutHelper(this.onLayoutUpdate);\r\n this.layoutDataCopy = [...props.layoutData];\r\n }\r\n\r\n shouldComponentUpdate(nextProps:TheProps){\r\n this.layoutDataCopy = [...nextProps.layoutData];\r\n return true;\r\n }\r\n \r\n render(){ \r\n return (\r\n
\r\n {this.layoutDataCopy.map((n) => this.layoutHelper?.load(n))}\r\n
\r\n );\r\n }\r\n}","import React from 'react';\r\nimport { Modal, Button } from 'react-bootstrap';\r\n\r\ninterface TheProps{\r\n showModal: boolean;\r\n content: JSX.Element | string;\r\n onCancel: ((value: boolean) => void);\r\n onConfirm:()=> void;\r\n primaryButtonText: string;\r\n secondaryButtonText?: string;\r\n title: string;\r\n}\r\n\r\n/**\r\n * Creates a input modal popup\r\n */\r\nexport default function ConfirmModalNew({\r\n showModal, content, onCancel, onConfirm, primaryButtonText, secondaryButtonText, title\r\n}: TheProps) {\r\n return (\r\n\r\n \r\n {title}\r\n \r\n
\r\n {content}\r\n
\r\n
\r\n \r\n {secondaryButtonText && secondaryButtonText !== \"\" && }\r\n \r\n \r\n
\r\n\r\n );\r\n}","import ReactDOM from 'react-dom'; import React from 'react';\r\nimport ConfirmModalNew from '../Components/ConfirmModalNew';\r\n/**\r\n * A popup modal which take simple textbox input\r\n */\r\nexport default class ConfirmModalHelperNew {\r\n container = document.body.appendChild(document.createElement('div'))\r\n\r\n constructor(title: string, content: JSX.Element,\r\n primaryButtonText: string, onCancel: ((value: boolean) => void), onConfirm: (()=>void), secondaryButtonText?: string) {\r\n ReactDOM.render(\r\n ,\r\n this.container,\r\n );\r\n }\r\n \r\n destroy() {\r\n ReactDOM.unmountComponentAtNode(this.container);\r\n this.container.remove();\r\n }\r\n}\r\n","interface EnvObject {\r\n SsoAuthUrl: any;\r\n SsoRedirectURL: any;\r\n REACT_APP_API_INTERACT: string,\r\n REACT_APP_API_USERENDPOINT: string,\r\n REACT_APP_API_AUTHTOKEN: string,\r\n REACT_APP_API_FILESAVE: string,\r\n REACT_APP_API_FILEREMOVE: string,\r\n REACT_APP_API_FILE: string,\r\n REACT_APP_API_FILE_DETAILS: string,\r\n REACT_APP_ODATA_INTERACT: string,\r\n REACT_APP_ODATA_VIEW: string,\r\n REACT_APP_API_IDENTITY: string,\r\n PORT: string,\r\n REACT_APP_AUTH_CLIENTID: string,\r\n REACT_SSO_AUTH_CLIENTID:string;\r\n REACT_APP_AUTH_CLIENT_SECRET: string,\r\n REACT_APP_SYNCFUSION_LICENSE: string,\r\n GlamsURL:string,\r\n IAStore:string\r\n}\r\n\r\nexport class EnvService{\r\n static env:EnvObject\r\n\r\n static setEnvSettings=(settings:EnvObject) => {\r\n EnvService.env = settings;\r\n }\r\n\r\n}","/**\r\n * Generic Helper class that hosts all helper methods\r\n */\r\nimport { EnvService as process} from '../Services/EnvService';\r\n\r\nexport default class Helper {\r\n public static clone(someArray: T): T {\r\n return JSON.parse(JSON.stringify(someArray));\r\n }\r\n\r\n public static replaceVarPlaceholders(text:string, data:{[key:string]:string}): string {\r\n let formattedUrl = '';\r\n const matchedVarArray = text.match(/([#]+[{]+[a-zA-z]+[}])/g);\r\n\r\n const conditionsQuery = text.match(/[=&|><]+[=&|=<]|[!]|[>]|[<]/g);\r\n\r\n let varName;\r\n if (matchedVarArray && matchedVarArray.length > 0){\r\n formattedUrl = text;\r\n matchedVarArray.forEach((match, index) => {\r\n varName = matchedVarArray[index].replace(/[#{}]/g, '');\r\n // @ts-ignore\r\n // ignored as the varName is string type and being used on data which is unknown type\r\n formattedUrl = varName && formattedUrl.replace(matchedVarArray[index], data[varName]);\r\n });\r\n }\r\n\r\n if (formattedUrl && conditionsQuery && conditionsQuery.length > 0){\r\n try {\r\n // eslint-disable-next-line no-new-func\r\n formattedUrl = new Function(`return ${formattedUrl}`)();\r\n formattedUrl = formattedUrl.toString();\r\n } catch (err){\r\n console.error(err);\r\n }\r\n }\r\n \r\n return formattedUrl || text;\r\n }\r\n\r\n public static anyVarPlaceholders(text:string): boolean{\r\n const matchedVarArray = text.match(/([$]+[{]+[a-zA-z]+[}])/g);\r\n return (matchedVarArray !== null && matchedVarArray.length > 0);\r\n }\r\n\r\n public static envReplacer(theString: string){\r\n const placeHolders: {[key:string]: string} = {\r\n \"%odata%\": process.env.REACT_APP_ODATA_INTERACT as string,\r\n \"%view%\": process.env.REACT_APP_ODATA_VIEW as string,\r\n \"%interact%\": process.env.REACT_APP_API_INTERACT as string,\r\n \"%user%\": process.env.REACT_APP_API_USERENDPOINT as string,\r\n \"%auth%\": process.env.REACT_APP_API_AUTHTOKEN as string,\r\n \"%file_save%\": process.env.REACT_APP_API_FILESAVE as string,\r\n \"%file_remove%\": process.env.REACT_APP_API_FILEREMOVE as string,\r\n \"%file_details%\": process.env.REACT_APP_API_FILE as string,\r\n \"%file%\": process.env.REACT_APP_API_FILE_DETAILS as string,\r\n \"%glams%\": process.env.GlamsURL as string,\r\n \"%iastore%\":process.env.IAStore as string\r\n };\r\n \r\n let copy = theString;\r\n \r\n Object.keys(placeHolders).forEach(a => {\r\n copy = copy.replaceAll(a, placeHolders[a]);\r\n });\r\n \r\n return copy;\r\n }\r\n\r\n static updatePromiseStatuses(promises: Promise[], updateFunction: (completed: number) => void){\r\n let completedCount = 0;\r\n\r\n promises.forEach(a => {\r\n a.finally(() => {\r\n completedCount++;\r\n updateFunction(Math.round((completedCount / promises.length) * 100));\r\n });\r\n });\r\n }\r\n}\r\n","import { executeFilter } from '../Models/Core/Filters';\r\n\r\nexport type HttpFilterType = {\r\n url: string;\r\n data: any;\r\n method: string;\r\n headers: any;\r\n dontChangeBody: boolean;\r\n}\r\n\r\n/**\r\n * Helper methods for making API calls\r\n */\r\nexport default class _HttpHelper {\r\n private static http(url: string, data: any, method = 'GET', headers: any = null, dontChangeBody = false): Promise {\r\n const httpFilterParam = {\r\n url, data, method, headers, dontChangeBody\r\n };\r\n\r\n executeFilter(\"HttpFilter\", httpFilterParam);\r\n\r\n url = httpFilterParam.url;\r\n data = httpFilterParam.data;\r\n method = httpFilterParam.method;\r\n headers = httpFilterParam.headers;\r\n dontChangeBody = httpFilterParam.dontChangeBody;\r\n \r\n return new Promise((resolve: any, reject: any) => {\r\n const options: RequestInit = {\r\n method, // *GET, POST, PUT, DELETE, etc.\r\n mode: 'cors', // no-cors, *cors, same-origin\r\n cache: 'no-cache', // *default, no-cache, reload, force-cache, only-if-cached\r\n credentials: 'same-origin', // include, *same-origin, omit\r\n headers: {\r\n 'Content-Type': 'application/json',\r\n // 'Content-Type': 'application/x-www-form-urlencoded',\r\n },\r\n redirect: 'follow', // manual, *follow, error\r\n referrerPolicy: 'no-referrer', // no-referrer, *client\r\n };\r\n\r\n if (headers && options.headers){\r\n Object.keys(headers).forEach(i => {\r\n // @ts-ignore\r\n options.headers[i] = headers[i];\r\n });\r\n }\r\n \r\n if ((method === 'POST' || method === 'PUT') && data) { \r\n if (dontChangeBody){\r\n options.body = (data); \r\n } else {\r\n options.body = JSON.stringify(data);\r\n }\r\n } else if (method === 'GET' && data) {\r\n // body data type must match \"Content-Type\" header\r\n const esc = encodeURIComponent;\r\n const query = Object.keys(data)\r\n .map(k => `${esc(k)}=${esc(data[k])}`)\r\n .join('&');\r\n \r\n url += `?${query}`;\r\n } \r\n // body data type must match \"Content-Type\" header\r\n\r\n fetch(url, options).then((res) => {\r\n if (res.status !== 200) {\r\n const responseCode = {statusCode: res.status, response: res};\r\n\r\n executeFilter(\"HttpResponseFilter\", responseCode);\r\n \r\n return res.text().then((r) => {\r\n reject(r);\r\n });\r\n }\r\n\r\n const contentType = res.headers.get('content-type');\r\n\r\n if (contentType && contentType.indexOf('application/json') !== -1) {\r\n return res.json().then((r) => {\r\n // process your JSON data further\r\n resolve(r);\r\n });\r\n }\r\n\r\n return res.text().then((text) => {\r\n // this is text, do something with it\r\n resolve(text);\r\n });\r\n }).catch((err=>{\r\n reject(err);\r\n }));\r\n });\r\n }\r\n\r\n static get(api: string, data: any = null, headers: any = null) {\r\n return _HttpHelper.http(api, data, 'GET', headers);\r\n }\r\n\r\n static post(api: string, data: any = null, headers: any = null, dontChangeBody = false) {\r\n return _HttpHelper.http(api, data, 'POST', headers, dontChangeBody);\r\n }\r\n\r\n static delete(api: string, data: any = null, headers: any = null) {\r\n return _HttpHelper.http(api, data, 'DELETE', headers);\r\n }\r\n\r\n static put(api: string, data: any = null, headers: any = null, dontChangeBody = false) {\r\n return _HttpHelper.http(api, data, 'PUT', headers, dontChangeBody);\r\n }\r\n}\r\n","/* eslint-disable import/no-extraneous-dependencies */\r\nimport {History} from \"history\";\r\nimport React from \"react\";\r\nimport { useHistory } from \"react-router\";\r\n\r\nconst TheHistory: {history: History|undefined} = { history: undefined };\r\n\r\nexport function LoadHistory(){\r\n const h = useHistory();\r\n TheHistory.history = h;\r\n\r\n return <>;\r\n}\r\n\r\nexport default TheHistory;","export class Loader {\r\n id=\"\"\r\n\r\n loaderimage = require('../../Resource/Images/ringloader.gif');\r\n\r\n constructor(){\r\n this.id = Date.now().toString();\r\n }\r\n\r\n showLoader=(showp:boolean) => {\r\n if (showp){\r\n const node = document.createElement(\"div\");\r\n node.id = `loader${this.id}`;\r\n node.className = \"Multiloader\";\r\n node.innerHTML = `\"\"`;\r\n document.getElementById(\"loaderseaction\")?.appendChild(node);\r\n } else {\r\n document.getElementById(`loader${this.id}`)?.remove();\r\n }\r\n }\r\n}\r\n","function setCookie(cname: string, cvalue: string, exdays?: number) {\r\n if (exdays){\r\n const d = new Date();\r\n d.setTime(d.getTime() + (exdays * 24 * 60 * 60 * 1000));\r\n const expires = `expires=${d.toUTCString()}`;\r\n document.cookie = `${cname}=${cvalue};${expires};path=/`;\r\n } else {\r\n document.cookie = `${cname}=${cvalue};path=/`;\r\n }\r\n}\r\n\r\nfunction getCookie(cname: string) {\r\n const name = `${cname}=`;\r\n const ca = document.cookie.split(';');\r\n for (let i = 0; i < ca.length; i++) {\r\n let c = ca[i];\r\n while (c.charAt(0) === ' ') {\r\n c = c.substring(1);\r\n }\r\n if (c.indexOf(name) === 0) {\r\n return c.substring(name.length, c.length);\r\n }\r\n }\r\n return undefined;\r\n}\r\n\r\nexport default class SessionHelper{\r\n static setItem = (key: string, value: string) => {\r\n setCookie(key, value);\r\n }\r\n\r\n static getItem = (key: string) => {\r\n return getCookie(key);\r\n }\r\n\r\n static removeItem = (key: string) => {\r\n setCookie(key, \"\", -1); \r\n }\r\n}\r\n","import axios from 'axios';\r\nimport React from 'react';\r\nimport { toast, ToastOptions } from 'react-toastify';\r\nimport ConfirmModalHelperNew from '../../Helpers/ConfirmModalHelperNew';\r\nimport Helper from '../../Helpers/HelperMethods';\r\nimport _HttpHelper from '../../Helpers/HttpHelper';\r\nimport TheHistory from '../../history';\r\nimport AuthService from '../../Services/AuthService';\r\nimport ConfigService from '../../Services/ConfigService';\r\nimport LayoutHelper from './LayoutHelper';\r\nimport { EnvService as process} from '../../Services/EnvService';\r\nimport { Loader } from './Loader';\r\nimport SessionHelper from '../../Helpers/SessionHelper';\r\n\r\nexport class LayoutRobotHelper{\r\n showLoader: (show: boolean) => void;\r\n\r\n interactBaseUrl = process.env.REACT_APP_API_INTERACT;\r\n\r\n oDataUrl = process.env.REACT_APP_ODATA_INTERACT;\r\n\r\n userMgmt = process.env.REACT_APP_API_USERENDPOINT;\r\n\r\n constructor(showLoader: (show: boolean) => void){\r\n this.showLoader = showLoader;\r\n }\r\n \r\n callApi = (\r\n entity:string, \r\n method:string, \r\n params: any\r\n ) : Promise => {\r\n const requestOptions = AuthService.authHeader();\r\n switch (method){\r\n case 'GetAll': {\r\n const load = new Loader();\r\n load.showLoader(true);\r\n const prom = new Promise((res, rej) => {\r\n _HttpHelper.get(`${this.oDataUrl}/${entity}?${params || '$skip=0&$top=5000'}`, '', requestOptions)\r\n .then((a:any) => {\r\n load.showLoader(false);\r\n res(a.value);\r\n })\r\n .catch((e) => {\r\n load.showLoader(false);\r\n rej(new Error(e));\r\n });\r\n });\r\n return prom;\r\n } \r\n case 'GetById': {\r\n const prom = new Promise((res, rej) => {\r\n const load = new Loader();\r\n\r\n load.showLoader(true);\r\n\r\n _HttpHelper.get(`${this.interactBaseUrl}/${entity}/getById/${params}`, '', requestOptions)\r\n .then((a:any) => {\r\n load.showLoader(false);\r\n res(a);\r\n })\r\n .catch((e) => {\r\n load.showLoader(false);\r\n rej(new Error(e));\r\n });\r\n });\r\n return prom;\r\n } \r\n case 'Update': {\r\n const load = new Loader();\r\n load.showLoader(true);\r\n const prom = new Promise((res, rej) => { \r\n // HttpHelper.post(interactBaseUrl+`/${entity}`,params, requestOptions)\r\n axios.put(`${this.interactBaseUrl}/${entity}/update`, params, { headers: requestOptions})\r\n .then(() => {\r\n load.showLoader(false);\r\n\r\n res();\r\n })\r\n .catch((e) => {\r\n load.showLoader(false);\r\n rej(new Error(e));\r\n });\r\n });\r\n return prom;\r\n }\r\n case 'Create': {\r\n const load = new Loader();\r\n\r\n load.showLoader(true);\r\n const prom = new Promise((res, rej) => { \r\n _HttpHelper.post(`${this.interactBaseUrl}/${entity}/Add`, params, requestOptions)\r\n .then((data) => {\r\n load.showLoader(false);\r\n // @ts-ignore\r\n res(data);\r\n })\r\n .catch((e) => {\r\n load.showLoader(false);\r\n rej(new Error(e));\r\n });\r\n });\r\n return prom;\r\n }\r\n case 'Delete': {\r\n const load = new Loader();\r\n\r\n load.showLoader(true);\r\n\r\n const prom = new Promise((res, rej) => { \r\n _HttpHelper.delete(`${this.interactBaseUrl}/${entity}/delete/${params}`, '', requestOptions)\r\n .then(() => {\r\n load.showLoader(false);\r\n res();\r\n })\r\n .catch((e) => {\r\n load.showLoader(false);\r\n rej(new Error(e));\r\n });\r\n });\r\n return prom;\r\n }\r\n default: {\r\n // load.showLoader(true);;\r\n\r\n const load = new Loader();\r\n load.showLoader(true);\r\n const prom = new Promise((res, rej) => { \r\n _HttpHelper.post(`${this.interactBaseUrl}/${entity}/${method}`, params, requestOptions)\r\n .then((data) => {\r\n // load.showLoader(false);\r\n load.showLoader(false);\r\n\r\n res(data);\r\n })\r\n .catch((e) => {\r\n // load.showLoader(false);\r\n load.showLoader(false);\r\n\r\n rej(new Error(e));\r\n });\r\n });\r\n return prom;\r\n }\r\n } \r\n }\r\n\r\n redirectTo = (Url:string, New: string) => {\r\n if (New === 'Yes'){\r\n window.open(Url, '_blank');\r\n } else { \r\n TheHistory.history?.push(Url);\r\n }\r\n } \r\n \r\n alertNotify = (Type: string, Message: string) => {\r\n const settings : ToastOptions = {\r\n position: 'top-center',\r\n autoClose: 8000,\r\n hideProgressBar: true,\r\n closeOnClick: true,\r\n pauseOnHover: false,\r\n draggable: true,\r\n progress: undefined,\r\n };\r\n if (Type.toLowerCase() === 'error') {\r\n toast.error(Message, settings);\r\n }\r\n if (Type.toLowerCase() === 'success') {\r\n toast.success(Message, settings);\r\n }\r\n if (Type.toLowerCase() === 'warning') {\r\n toast.warning(Message, settings);\r\n }\r\n }\r\n\r\n downloadFile = (filedata: string) => { \r\n fetch('https://g7rnd03-3.glams.com/fileupload/api/FileUpload/Download?id=', {\r\n method: 'POST', // *GET, POST, PUT, DELETE, etc.\r\n mode: 'cors', // no-cors, *cors, same-origin\r\n cache: 'no-cache', // *default, no-cache, reload, force-cache, only-if-cached\r\n credentials: 'same-origin', // include, *same-origin, omit\r\n headers: AuthService.authHeader(),\r\n // redirect: 'follow', // manual, *follow, error\r\n referrerPolicy: 'no-referrer', // no-referrer, *no-referrer-when-downgrade, origin, origin-when-cross-origin, same-origin, strict-origin, strict-origin-when-cross-origin, unsafe-url\r\n // body: JSON.stringify(data) // body data type must match \"Content-Type\" header\r\n }); \r\n }\r\n\r\n loader = (loaderState: boolean) => {\r\n this.showLoader(loaderState);\r\n }\r\n\r\n createHttp = (entity: any, data:any) => {\r\n return this.callApi(entity, 'create', data);\r\n }\r\n\r\n callHttp = (url: any) => {\r\n const load = new Loader();\r\n load.showLoader(true);\r\n const prom = new Promise((res) => {\r\n const requestOptions = AuthService.authHeader();\r\n _HttpHelper.get(url, '', requestOptions)\r\n .then((a:any) => {\r\n load.showLoader(false);\r\n res(a.data);\r\n });\r\n });\r\n return prom;\r\n }\r\n\r\n mapArray = (mapData: any, data:any) => {\r\n const ret = data.map((a:any) => {\r\n const b: any = {};\r\n Object.keys(mapData).forEach(i => {\r\n b[i] = a[mapData[i]];\r\n }); \r\n\r\n return b;\r\n });\r\n\r\n return ret;\r\n }\r\n \r\n doesUserHavePermission = (permission:string) => {\r\n const permissions = JSON.parse(SessionHelper.getItem('roles') || '[]');\r\n return permissions.find((p:any) => {\r\n if(permission===p.PermissionName)\r\n return true \r\n });\r\n\r\n }\r\n\r\n convertToObject = (data: [string, string][]) => {\r\n const newitem:any = {};\r\n\r\n data.forEach(item => {\r\n const [val, key] = item;\r\n if (item.length === 2) newitem[key] = val;\r\n });\r\n\r\n return newitem;\r\n }\r\n\r\n convertToObjectHelper = (prop:string, value:any) => {\r\n return [prop, value];\r\n }\r\n \r\n getQueryParam = (param: string) => {\r\n const queryString = window.location.search;\r\n const urlParams = new URLSearchParams(queryString);\r\n const ret = urlParams.get(param);\r\n return ret;\r\n }\r\n\r\n getAllGroupsByRoles = (roles:string[]) => {\r\n const requestOptions = AuthService.authHeader();\r\n return _HttpHelper.get(`${this.userMgmt}/UserGroups`, '', requestOptions);\r\n }\r\n \r\n getAllUsersByRoles = (roles:string[]) => {\r\n const requestOptions = AuthService.authHeader();\r\n return _HttpHelper.get(`${this.userMgmt}/Users`, '', requestOptions);\r\n }\r\n\r\n registerContextMenuHook =(hook:Function) => {\r\n // rcmh(hook);\r\n // this functionality is lost in this version, because Grids have been moved into plugins\r\n }\r\n\r\n getRootUrl = () => {\r\n return `//${ConfigService.get(\"Domain\")}/`;\r\n }\r\n\r\n getTodaysDate = () => {\r\n const yourDate = new Date();\r\n return yourDate.toISOString().split('T')[0];\r\n }\r\n\r\n text = (aString: string) => {\r\n return Helper.envReplacer(aString);\r\n }\r\n\r\n validationsResetHook = () => {\r\n LayoutHelper.resetValidation();\r\n }\r\n\r\n ConfirmationPopup = async (okLbl:string, cancelLbl:string, msg:string) => {\r\n return new Promise((res, rej) => {\r\n const t = new ConfirmModalHelperNew(\r\n \"Confirm\",\r\n
{msg}
,\r\n okLbl,\r\n () => {\r\n rej();\r\n t.destroy();\r\n },\r\n () => {\r\n res();\r\n t.destroy();\r\n },\r\n cancelLbl \r\n );\r\n });\r\n }\r\n}","import React from 'react';\r\nimport { LayoutTreeOBJ } from '../Models/Shared/LayoutTreeOBJ';\r\nimport LayoutRenderer from './LayoutRenderer/LayoutRenderer';\r\n\r\nimport AuthService from '../Services/AuthService';\r\nimport { LayoutRobotHelper } from './LayoutRenderer/LayoutRobotHelper';\r\nimport Helper from '../Helpers/HelperMethods';\r\nimport SessionHelper from '../Helpers/SessionHelper';\r\nimport { EnvService as process} from '../Services/EnvService';\r\n\r\nconst loaderimage = require('../Resource/Images/ringloader.gif');\r\n\r\ninterface TheProps{\r\n layoutData: LayoutTreeOBJ[];\r\n code: string;\r\n setLayoutData: (layoutData: LayoutTreeOBJ[]) => void;\r\n}\r\n\r\nclass TheState{\r\n loader:boolean = false;\r\n\r\n showModel:boolean=false;\r\n\r\n message:string=\"\";\r\n\r\n okBtnLabel:string='';\r\n\r\n cancelBtnLabel:string=''\r\n}\r\n\r\nexport class LayoutManager extends React.Component {\r\n interactBaseUrl = process.env.REACT_APP_API_INTERACT;\r\n\r\n oDataUrl = process.env.REACT_APP_ODATA_INTERACT;\r\n\r\n userMgmt = process.env.REACT_APP_API_USERENDPOINT;\r\n\r\n varsList:any = {};\r\n\r\n constructor(props: TheProps){\r\n super(props);\r\n this.state = new TheState();\r\n }\r\n\r\n setVarSync = (varKey:string, varValue: any) => {\r\n this.varsList[varKey] = varValue;\r\n const layoutCopy = [...this.props.layoutData];\r\n this.setLayoutVars(layoutCopy);\r\n this.props.setLayoutData(layoutCopy);\r\n }\r\n\r\n setVarObjectSync = (varKey:string, subkey:string, varValue: any) => {\r\n if (!this.varsList[varKey]) return;\r\n\r\n this.varsList[varKey][subkey] = varValue;\r\n const layoutCopy = [...this.props.layoutData];\r\n this.setLayoutVars(layoutCopy);\r\n this.props.setLayoutData(layoutCopy);\r\n }\r\n\r\n getVar = (varKey:string) => {\r\n if (this.varsList[varKey] !== undefined){\r\n return this.varsList[varKey];\r\n } \r\n return null;\r\n }\r\n\r\n static removeLayoutVars = (layout: LayoutTreeOBJ[]) => {\r\n const layoutLoop = (layoutItems: LayoutTreeOBJ[]) => {\r\n layoutItems.forEach(item => {\r\n item.properties?.forEach(val => {\r\n if (val?.value.indexOf('=') === 0) val.value = '';\r\n });\r\n \r\n if (item.items){\r\n layoutLoop(item.items);\r\n }\r\n });\r\n };\r\n \r\n layoutLoop(layout);\r\n }\r\n\r\n setLayoutVars = (layout: LayoutTreeOBJ[]) => {\r\n const layoutLoop = (layoutItems: LayoutTreeOBJ[]) => {\r\n layoutItems.forEach(item => {\r\n item.properties?.forEach(propValue => {\r\n if (propValue?.bindedVar && !Helper.anyVarPlaceholders(propValue.bindedVar)){ \r\n const varName = propValue?.bindedVar;\r\n const subProp = varName.split('.');\r\n\r\n if (subProp.length >= 2){\r\n const [level1, level2]: any = varName.split('.');\r\n \r\n if (this.varsList[level1]) propValue.value = typeof (this.varsList[level1][level2]) === 'object' ? JSON.stringify(this.varsList[level1][level2]) : this.varsList[level1][level2];\r\n } else {\r\n propValue.value = typeof (this.varsList[varName]) === 'object' ? JSON.stringify(this.varsList[varName]) : this.varsList[varName];\r\n }\r\n } else if (propValue?.bindedVar && Helper.anyVarPlaceholders(propValue.bindedVar)){ \r\n propValue.value = Helper.replaceVarPlaceholders(propValue.bindedVar, this.varsList);\r\n }\r\n });\r\n \r\n if (item.items){\r\n layoutLoop(item.items);\r\n }\r\n });\r\n };\r\n \r\n layoutLoop(layout);\r\n }\r\n\r\n executeCode =(code:string) => {\r\n const loader = (show: boolean) => {\r\n this.setState({loader: show});\r\n };\r\n\r\n const layoutRobotHelper = new LayoutRobotHelper(loader);\r\n\r\n if (code.length){\r\n const AsyncFunction = Object.getPrototypeOf(async () => {}).constructor;\r\n const func = new AsyncFunction(\r\n 'varsList', 'callApi', 'mapArray', 'setVarSync', 'createHttp', 'callHttp',\r\n 'convertToObject', 'convertToObjectHelper',\r\n 'getQueryParam', 'redirectTo', 'getVar', 'alertNotify',\r\n 'loader', 'setVarObjectSync',\r\n 'getAllGroupsByRoles', 'getAllUsersByRoles',\r\n 'getUserDetails', 'registerContextMenuHook', 'downloadFile', 'getRootUrl','getTodaysDate',\r\n 'text', \"validationsResetHook\", 'ConfirmationPopup', 'SessionHelper', 'doesUserHavePermission',\r\n code\r\n );\r\n func(\r\n this.varsList, layoutRobotHelper.callApi, layoutRobotHelper.mapArray, this.setVarSync, layoutRobotHelper.createHttp, layoutRobotHelper.callHttp,\r\n layoutRobotHelper.convertToObject, layoutRobotHelper.convertToObjectHelper,\r\n layoutRobotHelper.getQueryParam, layoutRobotHelper.redirectTo, this.getVar, layoutRobotHelper.alertNotify,\r\n layoutRobotHelper.loader, this.setVarObjectSync, \r\n layoutRobotHelper.getAllGroupsByRoles, layoutRobotHelper.getAllUsersByRoles,\r\n AuthService.getUserDetails, layoutRobotHelper.registerContextMenuHook, layoutRobotHelper.downloadFile, layoutRobotHelper.getRootUrl,layoutRobotHelper.getTodaysDate,\r\n layoutRobotHelper.text, layoutRobotHelper.validationsResetHook, layoutRobotHelper.ConfirmationPopup, SessionHelper, layoutRobotHelper.doesUserHavePermission,\r\n code\r\n );\r\n \r\n // eslint-disable-next-line no-console\r\n // console.log(\"Executed Logic\", code);\r\n }\r\n }\r\n\r\n updateVarList = () => {\r\n const layoutLoop = (layoutItems: LayoutTreeOBJ[]) => {\r\n layoutItems.forEach(item => {\r\n item.properties?.forEach(propValue => {\r\n if (propValue?.bindedVar){ \r\n const varName = propValue.bindedVar;\r\n const subProp = varName.split('.');\r\n\r\n if (subProp.length >= 2){\r\n const [level1, level2] = subProp;\r\n if (this.varsList[level1]){\r\n try {\r\n const val = JSON.parse(propValue.value);\r\n if (typeof (val) !== 'object') throw String('Not an object');\r\n Object.assign(this.varsList[level1][level2], val, { length: val.length });\r\n } catch (e){\r\n this.varsList[level1][level2] = propValue.value;\r\n }\r\n }\r\n } else {\r\n try {\r\n const val = JSON.parse(propValue.value);\r\n if (typeof (val) !== 'object') throw String('Not an object');\r\n Object.assign(this.varsList[varName], val, { length: val.length });\r\n } catch (e){\r\n // if string\r\n this.varsList[varName] = propValue.value;\r\n }\r\n } \r\n }\r\n });\r\n \r\n if (item.items){\r\n layoutLoop(item.items);\r\n }\r\n });\r\n };\r\n \r\n layoutLoop(this.props.layoutData);\r\n }\r\n\r\n loadLayoutVars = () => {\r\n const layoutLoop = (layoutItems: LayoutTreeOBJ[]) => {\r\n layoutItems.forEach(item => {\r\n item.properties?.forEach(propValue => {\r\n if (propValue?.value.indexOf('=') === 0){\r\n const splitVal = propValue.value.split('=');\r\n \r\n if (splitVal.length >= 1){\r\n const varName = splitVal[1]; \r\n const subProp = varName.split('.');\r\n \r\n propValue.bindedVar = varName;\r\n propValue.value = '';\r\n\r\n if (subProp.length >= 2){\r\n const [level1, level2] = subProp;\r\n if (this.varsList[level1]) this.varsList[level1][level2] = undefined;\r\n } else if (this.varsList[varName]) this.varsList[varName] = undefined;\r\n }\r\n } else if (Helper.anyVarPlaceholders(propValue.value)){\r\n propValue.bindedVar = propValue.value;\r\n propValue.value = '';\r\n }\r\n });\r\n \r\n if (item.items){\r\n layoutLoop(item.items);\r\n }\r\n });\r\n };\r\n \r\n const layoutCopy = [...this.props.layoutData];\r\n\r\n layoutLoop(layoutCopy);\r\n this.props.setLayoutData(layoutCopy);\r\n }\r\n\r\n componentDidMount(){\r\n this.loadLayoutVars();\r\n this.executeCode(this.props.code);\r\n }\r\n\r\n render(){\r\n this.updateVarList();\r\n \r\n return (\r\n <>\r\n \r\n { this.state.loader && (\r\n
\r\n \"\"\r\n
\r\n )}\r\n \r\n\r\n \r\n );\r\n }\r\n}\r\n","import React from 'react';\r\nimport { Link } from 'react-router-dom';\r\n\r\nconst logo = require('../../../Resource/Images/thelogo.svg');\r\n\r\nexport default function Header(){\r\n return (\r\n
\r\n
\r\n
\r\n \"GLAMS\"\r\n
\r\n
\r\n
\r\n );\r\n}","/* eslint-disable no-dupe-class-members */\r\nimport React from 'react';\r\nimport { PluginComponents } from './Hooks';\r\n\r\ntype HookHolder = {[key:string]: Array};\r\n\r\nexport default class HooksManager{\r\n private id: string;\r\n\r\n private static hooks:HookHolder = {};\r\n\r\n constructor(id: string){\r\n this.id = id; \r\n this.registerHook = this.registerHook.bind(this);\r\n }\r\n\r\n static getRegisteredComponents(hookName: string): PluginComponents[]|undefined{\r\n return HooksManager.hooks[hookName];\r\n }\r\n\r\n registerHook(\r\n hookName: string, \r\n component: React.ComponentClass | React.FunctionComponent\r\n ): void {\r\n if (!HooksManager.hooks[hookName]) HooksManager.hooks[hookName] = [];\r\n\r\n HooksManager.hooks[hookName].push({\r\n id: this.id,\r\n component\r\n }); \r\n }\r\n}","import React from 'react';\r\nimport HooksManager from './HooksManager';\r\n\r\nexport type PluginComponents = {\r\n id: string;\r\n component: React.ComponentClass|React.FunctionComponent;\r\n}\r\n\r\nexport interface HookPropType{\r\n hook: string;\r\n data?: {[key:string]:any};\r\n}\r\n\r\nexport function ExecuteHook(props: HookPropType) : JSX.Element{\r\n const hookedComps = HooksManager.getRegisteredComponents(props.hook);\r\n const { data } = props;\r\n\r\n function renderComp(comp: PluginComponents) {\r\n const { component } = comp;\r\n return React.createElement(component, {...data});\r\n }\r\n\r\n return (\r\n <>\r\n {hookedComps?.map((pluginComp, index) =>
{renderComp(pluginComp)}
)}\r\n \r\n );\r\n}","import { MenuType } from \"../Models/Shared/MenuModel\";\r\nimport MenuJSON from \"../Config/menus.json\";\r\nimport AuthService from \"./AuthService\";\r\n\r\nexport default class MenuService{\r\n static getMenu = (menuId: string): MenuType[]|undefined => {\r\n // @ts-ignore this is needed for the project to get compiled with default files\r\n return MenuJSON.find(a => a.data.Name === menuId)?.data.data.filter(a => {\r\n if (a.access.length > 0) return AuthService.doesUserHaveAccess(a.access); \r\n return true;\r\n }); \r\n }\r\n}","import React from 'react';\r\nimport { Link } from 'react-router-dom';\r\nimport {v4 as uuid } from 'uuid';\r\nimport { ExecuteHook } from '../../../Models/Core/Hooks';\r\nimport { MenuType } from '../../../Models/Shared/MenuModel';\r\nimport AuthService from '../../../Services/AuthService';\r\nimport MenuService from '../../../Services/MenuService';\r\nimport ConfigService from '../../../Services/ConfigService';\r\n\r\n//const logo = require('./media/logo-merk.svg');\r\nconst logo = require('./media/NCLB LOGO_1.png');\r\nconst searchIcon = require('./media/search.svg');\r\nconst projectsIcon = require('./media/projects.svg');\r\nconst auditIcon = require('./media/audit.svg');\r\nconst collabIcon = require('./media/collab.svg');\r\nconst logoutIcon = require('./media/logout.svg');\r\nconst adminIcon = require('./media/admion-white.svg');\r\nconst userIcon = require('./media/user.svg');\r\n\r\nexport interface LayoutPermissions{\r\n Id: string;\r\n PermissionName: string;\r\n}\r\nexport class TheMenuItem {\r\n url: string;\r\n\r\n name: string;\r\n\r\n id: string;\r\n\r\n active: boolean;\r\n\r\n constructor(url: string, name: string, active: boolean = false){\r\n this.url = url;\r\n this.name = name;\r\n this.id = uuid();\r\n this.active = active;\r\n }\r\n}\r\n\r\ninterface TheProps{\r\n name: string;\r\n}\r\n\r\nclass TheState{\r\n menuItems: MenuType[] = [];\r\n\r\n username = '';\r\n\r\n showNoificatioList = false;\r\n\r\n showNotificationInMenu = false;\r\n}\r\n\r\n// const notificationService = new NotificationService();\r\n/**\r\n * The menu control for the site\r\n */\r\nexport default class Menu extends React.Component{\r\n constructor(props: TheProps){\r\n super(props);\r\n this.state = new TheState();\r\n }\r\n\r\n componentDidMount(){\r\n // const usersService = new UsersService();\r\n // const details = JSON.parse(localStorage.getItem('userDetails') || '');\r\n // const pluginsData = JSON.parse(localStorage.getItem('pluginSettings') || '');\r\n \r\n // const notificationplugin = pluginsData.find((e: any) => e.key === 'notifications-plugin');\r\n\r\n // if (notificationplugin){\r\n // this.setState({showNotificationInMenu: notificationplugin.data.enabled});\r\n // }\r\n // usersService.getUserPermissions(details.userid).then((res:any) => {\r\n // const permissions: LayoutPermissions[] = res.map((a: LayoutPermissions) => { return {Id: a.Id, Name: a.PermissionName}; });\r\n // localStorage.setItem('permissions', JSON.stringify(permissions));\r\n // }).catch(() => {\r\n // localStorage.setItem('permissions', JSON.stringify([]));\r\n // });\r\n // setUserDetails(details);\r\n // this.setState({username: details.username});\r\n\r\n const userDetails = AuthService.getUserDetails();\r\n this.setState({username: userDetails.username});\r\n \r\n const menu = MenuService.getMenu(this.props.name);\r\n if (menu === undefined) return;\r\n\r\n this.setState({\r\n menuItems: menu\r\n });\r\n }\r\n\r\n haveAccess = (item: MenuType) => {\r\n // if (item && item.access !== undefined) {\r\n // const userPermissions = JSON.parse(localStorage.getItem(\"permissions\") || \"[]\");\r\n // const find = userPermissions.find((a: { Id: any; }) => {\r\n // return a.Id.toString() === item.access;\r\n // });\r\n // return find;\r\n // } \r\n return true;\r\n }\r\n\r\n getIcon = (val: string) => {\r\n switch (val) {\r\n case 'projectsIcon': return projectsIcon;\r\n case 'searchIcon': return searchIcon;\r\n case 'auditIcon': return auditIcon;\r\n case 'collabIcon': return collabIcon;\r\n case 'admin': return adminIcon;\r\n default: return collabIcon;\r\n }\r\n }\r\n\r\n render(){\r\n const { username, menuItems} = this.state;\r\n const isProfileActive = window.location.href.includes('/profile');\r\n\r\n return (\r\n
\r\n
\r\n
\r\n
\r\n \"\"\r\n
\r\n
\r\n\r\n {/*
\r\n
    \r\n {this.state.menuItems.map(menu => (\r\n
  • \r\n {menu.name}\r\n
  • \r\n ))}\r\n
\r\n
*/}\r\n\r\n
\r\n
    \r\n {menuItems.map((item : MenuType) => (\r\n
  • \r\n \r\n
    \r\n {item.text}\r\n\r\n
    {item.text}
    \r\n
    \r\n \r\n
  • \r\n ))}\r\n
\r\n
\r\n
\r\n
\r\n
    \r\n
  • \r\n \r\n
  • \r\n
  • \r\n \r\n
    \r\n \"Profile\"\r\n
    {username}
    \r\n
    \r\n \r\n
  • \r\n
  • \r\n
    AuthService.logout()} onKeyUp={() => AuthService.logout()}>\r\n \"Logout\"\r\n
    Logout
    \r\n
    \r\n
  • \r\n \r\n
\r\n
\r\n
{ConfigService.get('Version')}
\r\n
\r\n );\r\n }\r\n}\r\n","import React from \"react\";\r\n\r\nconst loaderimage = require('../../../Resource/Images/ringloader.gif');\r\n\r\nexport function toggleLoader(show: boolean){\r\n if (show) document.querySelector(\"loader\")?.classList.add(\"show\");\r\n else document.querySelector(\"loader\")?.classList.remove(\"show\");\r\n}\r\n\r\nexport default function Loader(){\r\n return (\r\n <> \r\n
\r\n \"\"\r\n
\r\n \r\n );\r\n}","import Theme from './impact-analysis/Main';\r\n\r\nexport default {\r\n theme: Theme,\n data: {}\r\n};","// import Header from './Header';\r\n// import Footer from './Footer';\r\n// import Page from './Page';\r\n// import { registerRoute } from '../../../Helpers/Core/RouteManager';\r\n// import Login from './Views/Login';\r\n// import ForgotPassword from './Views/ForgotPassword';\r\n// import ChangePassword from './Views/ChangePassword';\r\n// import Users from './Admin/Users';\r\n// import Roles from './Admin/Roles';\r\n// import Groups from './Admin/Groups';\r\n// import UserProfile from './Profile/UserProfile';\r\n// import ChangePass from './Profile/ChangePass';\r\n// import './IATheme.css';\r\n// import AdminPageRolesAndPermissions from './AdminPageRolesAndPermissions'\r\n// import PageAdminMDT from './PageAdminMDT';\r\n// import PageAdminMD from './PageAdminMD';\r\n// import UserProfilePageOOF from './UserProfilePageOOF';\r\n// import PageAdminGroupType from './PageAdminGroupType';\r\n// import PageAdminGroup from './PageAdminGroup';\r\n// import PageCentered from './PageCentered';\r\n// import PageAdminMDM from './PageAdminMDM';\r\n// import './SearchControlTabHookUi';\r\n// import Eula from './Views/Eula';\r\n// import EmailPrefrenceProfile from './Profile/EmailPrefrenceProfile';\r\n\r\n// const data = {\r\n// Header,\r\n// Footer,\r\n// Page,\r\n// Templates: {\r\n// \"Roles And Permissions\":AdminPageRolesAndPermissions,\r\n// \"Manage Data Type\": PageAdminMDT,\r\n// \"Manage Data\": PageAdminMD,\r\n// \"Out Of Office\": UserProfilePageOOF,\r\n// \"Email Preference\":EmailPrefrenceProfile,\r\n// \"Managed Data Mapping\": PageAdminMDM,\r\n// GroupTypes: PageAdminGroupType,\r\n// Groups: PageAdminGroup,\r\n// Centered: PageCentered\r\n// }\r\n// };\r\n\r\n// registerRoute(\"/login\", \"impact-analysis\", Login, false);\r\n// registerRoute(\"/forgot-password\", \"impact-analysis\", ForgotPassword, false);\r\n// registerRoute(\"/change-password\", \"impact-analysis\", ChangePassword, false);\r\n\r\n// registerRoute(\"/admin\", \"impact-analysis\", Users);\r\n// registerRoute(\"/admin/users\", \"impact-analysis\", Users);\r\n// registerRoute(\"/admin/roles\", \"impact-analysis\", Roles);\r\n// registerRoute(\"/admin/groups\", \"impact-analysis\", Groups);\r\n\r\n// registerRoute(\"/profile\", \"impact-analysis\", UserProfile);\r\n// registerRoute(\"/profile/changepass\", \"impact-analysis\", ChangePass);\r\n// registerRoute(\"/eula\", \"impact-analysis\", Eula);\r\n\r\n// export default data;\r\nimport Header from './Header';\r\nimport Footer from './Footer';\r\nimport Page from './Page';\r\n\r\nimport Loader from \"./Loader\";\r\nimport './css/IATheme.css';\r\n\r\nexport default {\r\n Header,\r\n Footer,\r\n Page,\r\n Loader,\r\n Main(data: any){\r\n console.log(\"APP: impact-analysis theme is loaded.\", data);\r\n }\r\n};","import React, { useEffect, useState } from 'react';\r\nimport AuthService from '../../../Services/AuthService';\r\n\r\nexport default function Footer(){\r\n const [url, setUrl] = useState('');\r\n const [name, setName] = useState('');\r\n useEffect(() => {\r\n const details = AuthService.getUserDetails();\r\n if (!details) return;\r\n \r\n setName(details.displayname);\r\n setUrl(`https://eu.ui-avatars.com/api/?rounded=true&size=32&background=random&name=${details.username}`);\r\n }, []);\r\n\r\n return (\r\n
\r\n
\r\n {url && \"avatar\"}\r\n
\r\n {name} \r\n
\r\n Logout\r\n
\r\n
\r\n );\r\n}","import React from 'react';\r\nimport { PageProps } from './ThemeManager';\r\nimport Menu from './Menu';\r\n\r\nexport default function Page(props: PageProps){\r\n const { children } = props;\r\n\r\n return (\r\n <> \r\n
\r\n \r\n
\r\n {/* */}\r\n {/*
*/}\r\n
\r\n
\r\n {Array.isArray(children) ? (\r\n <>\r\n {children.map(child => child)}\r\n \r\n ) : (\r\n <>\r\n {children}\r\n \r\n )}\r\n
\r\n
\r\n {/*
*/}\r\n
\r\n
\r\n \r\n );\r\n}\r\n","import React from \"react\";\r\nimport ThemeData from \"../../Extensions/Themes/List\";\r\n\r\n/* eslint-disable global-require */\r\nexport type PageProps = {\r\n children: React.ReactElement|React.ReactElement[];\r\n};\r\n\r\nexport default class ThemeManager{\r\n static Header: React.FunctionComponent | React.ComponentClass;\r\n \r\n static Footer: React.FunctionComponent | React.ComponentClass;\r\n \r\n static Page: React.FunctionComponent<{children: React.ReactElement|React.ReactElement[]}> | React.ComponentClass;\r\n\r\n static Loader: React.FunctionComponent | React.ComponentClass;\r\n\r\n static Templates: {[key:string]: React.FunctionComponent<{children: React.ReactElement|React.ReactElement[]}> | React.ComponentClass} = {}\r\n\r\n static loadTheme(){\r\n const CurrentThemeData = ThemeData.theme;\r\n\r\n ThemeManager.Header = CurrentThemeData.Header;\r\n ThemeManager.Footer = CurrentThemeData.Footer;\r\n ThemeManager.Page = CurrentThemeData.Page;\r\n ThemeManager.Loader = CurrentThemeData.Loader;\r\n\r\n if (CurrentThemeData.Main) CurrentThemeData.Main(ThemeData.data);\r\n } \r\n}","import { TheData } from \"../Helpers/DataHelper\";\r\nimport { Layout } from \"../Models/Shared/LayoutModel\";\r\nimport { LayoutTreeOBJ } from \"../Models/Shared/LayoutTreeOBJ\";\r\nimport LayoutsJSON from \"../Config/layouts.json\";\r\nimport Helper from \"../Helpers/HelperMethods\";\r\n\r\nexport interface GetLayout{\r\n layout: LayoutTreeOBJ[];\r\n code: string|undefined;\r\n templateName?: string\r\n}\r\n\r\n/**\r\n * Model for loading Layout related information\r\n */\r\nexport default class LayoutService {\r\n layoutEntity='layoutStudio';\r\n \r\n layoutDataEntity='layout_data';\r\n\r\n robotEntity='robotEntity';\r\n\r\n getLayout = async (id:string): Promise => {\r\n // eslint-disable-next-line import/no-dynamic-require, global-require\r\n let layout: any;\r\n let code: any;\r\n\r\n try {\r\n layout = await import(`../Config/layouts/${id}.json`);\r\n } catch (error){\r\n\r\n }\r\n\r\n try {\r\n // eslint-disable-next-line import/no-dynamic-require, global-require\r\n code = await import(`../Config/layouts/${id}.txt`);\r\n } catch (error){\r\n \r\n }\r\n\r\n const templateName = (LayoutsJSON as TheData[]).find(a => a.key === id)?.data.templateName;\r\n\r\n if (!layout) throw Error(\"Layout JSON not found\");\r\n\r\n let text = \"\";\r\n\r\n if (code && code.default){\r\n text = await (await fetch(code.default)).text();\r\n }\r\n\r\n return {\r\n // default is needed for some reason bcoz it is import and \r\n // we have to clone it and send, or else the layout is being manipulated in the LayoutManager\r\n layout: Helper.clone(layout.default), \r\n code: text,\r\n templateName\r\n };\r\n }\r\n\r\n static loadAllLayouts = (): TheData[] => {\r\n return LayoutsJSON;\r\n }\r\n}","import React, { useState, useEffect, useRef } from 'react';\r\nimport { LayoutTreeOBJ } from '../../Models/Shared/LayoutTreeOBJ';\r\nimport { LayoutManager } from '../LayoutManger';\r\nimport ThemeManager from '../../Models/Core/ThemeManager';\r\nimport LayoutService from '../../Services/LayoutService';\r\nimport { ExecuteHook } from '../../Models/Core/Hooks';\r\n\r\nexport type PageLoadHookType = {\r\n layoutData: LayoutTreeOBJ[]\r\n}\r\n\r\ninterface TheProp {\r\n layoutId: string;\r\n}\r\nconst layoutModel = new LayoutService();\r\n\r\nexport default function Layout({ layoutId }: TheProp) {\r\n const [layoutData, setLayoutData] = useState();\r\n const [code, setCode] = useState();\r\n // const [pageTitle, setPageTitle] = useState(\"\");\r\n const [showDynamicLayout, setShowDynamicLayout] = useState(false);\r\n const PageTemplate = useRef(ThemeManager.Page);\r\n // const pageContext = useContext(PageContext);\r\n\r\n useEffect(() => {\r\n setShowDynamicLayout(false);\r\n // pageContext.toggleLoader(true);\r\n\r\n layoutModel.getLayout(layoutId)\r\n .then((layout) => {\r\n if (!layout) return;\r\n\r\n if (layout.code) setCode(layout.code);\r\n else setCode('');\r\n // pageContext.toggleLoader(false);\r\n if (layout.layout) setLayoutData(layout.layout); \r\n if (layout.templateName) PageTemplate.current = (ThemeManager.Templates[layout.templateName]);\r\n \r\n setShowDynamicLayout(true); \r\n }); \r\n }, [layoutId]);\r\n\r\n // const onPageTitleChange = (title: string) => {\r\n // setPageTitle(title);\r\n // }\r\n\r\n return ( \r\n <>\r\n {PageTemplate.current && (\r\n \r\n
\r\n
\r\n { showDynamicLayout && (\r\n
\r\n {/*

{pageTitle }

*/}\r\n {layoutData && code !== undefined && (\r\n <>\r\n \r\n \r\n \r\n )}\r\n
\r\n )}\r\n \r\n
\r\n
\r\n
\r\n )}\r\n \r\n );\r\n}\r\n","export type RouteComponents = {\r\n id: string;\r\n url: string;\r\n isAuthRequired: boolean;\r\n component: React.ComponentClass|React.FunctionComponent;\r\n access:string[];\r\n}\r\n\r\ntype RouteHolder = Array;\r\n\r\nexport default class RouteManager{\r\n private id: string;\r\n\r\n private static route:RouteHolder = [];\r\n\r\n static getRoutes(){\r\n return RouteManager.route;\r\n }\r\n\r\n constructor(id: string){\r\n this.id = id; \r\n }\r\n\r\n registerRoute =( \r\n url: string, \r\n component: React.ComponentClass|React.FunctionComponent,\r\n isAuthRequired = true,\r\n access: string[]=[]\r\n ): void => {\r\n RouteManager.route.push({\r\n id: this.id,\r\n url,\r\n isAuthRequired,\r\n component,\r\n access\r\n });\r\n }\r\n}","import HooksManager from \"./HooksManager\";\r\nimport FilterManager from \"./FiltersManager\";\r\nimport RouteManager from \"./RouteManager\";\r\nimport LayoutControlManager, { LayoutControl } from \"./LayoutControls/LayoutControlManager\";\r\nimport ThemeManager from \"./ThemeManager\";\r\n\r\nexport default class ExtensionsWrapper{\r\n // @ts-ignore\r\n registerHook;\r\n\r\n // @ts-ignore\r\n registerFilter;\r\n\r\n // @ts-ignore\r\n registerRoute;\r\n\r\n constructor(id: string){\r\n const hooks = new HooksManager(id);\r\n const filters = new FilterManager(id);\r\n const routes = new RouteManager(id);\r\n\r\n this.registerHook = hooks.registerHook;\r\n this.registerFilter = filters.registerFilter;\r\n this.registerRoute = routes.registerRoute;\r\n } \r\n\r\n registerLayoutControl = (control: LayoutControl) => {\r\n LayoutControlManager.add(control);\r\n }\r\n\r\n registerLayoutTemplate = (name: string, component: React.FunctionComponent<{children: React.ReactElement|React.ReactElement[]}>| React.ComponentClass) => {\r\n ThemeManager.Templates[name] = component;\r\n }\r\n}","import HttpHelper from \"../../../Helpers/HttpHelper\";\r\nimport SessionHelper from \"../../../Helpers/SessionHelper\";\r\nimport ExtensionWrapper from \"../../../Models/Core/ExtensionWrapper\";\r\nimport AuthService, { DoesUserHaveAccessFilterType } from \"../../../Services/AuthService\";\r\nimport { EnvService as process} from '../../../Services/EnvService';\r\n\r\ntype Permission = {\r\n Code: any;\r\n PermissionName: string;\r\n}\r\nfunction getUserRoles(){\r\n const currentUserDetails = AuthService.getUserDetails();\r\n\r\n return new Promise((res, rej) => {\r\n HttpHelper.post(\r\n `${process.env.REACT_APP_API_INTERACT}/RoleInPermission/GetAllPermissionsByUserId`, \r\n {userId: currentUserDetails.userid},\r\n AuthService.authHeader()\r\n )\r\n .then((result) => {\r\n res(result);\r\n })\r\n .catch(() => {\r\n rej();\r\n });\r\n });\r\n}\r\n\r\n// execution\r\n\r\nexport default async function (){\r\n const x = new ExtensionWrapper(\"permissions\");\r\n\r\n x.registerFilter(\"AfterLoginFilter\", async () => {\r\n const roles=await getUserRoles()\r\n \r\n SessionHelper.setItem(\"roles\", JSON.stringify(roles));\r\n \r\n });\r\n \r\n x.registerFilter(\"DoesUserHaveAccess\", (data: DoesUserHaveAccessFilterType) => {\r\n const roles = SessionHelper.getItem(\"roles\");\r\n if (roles){\r\n data.hasAccess = false;\r\n try {\r\n const rolesParsed = JSON.parse(roles) as Permission[];\r\n if(data.permissions.length===0)\r\n data.hasAccess = true\r\n\r\n data.permissions.find(perm => {\r\n const matchInUserRoles = rolesParsed.find(role => role.Code.toString() === perm);\r\n if (matchInUserRoles){\r\n data.hasAccess = true;\r\n return true;\r\n }\r\n return false;\r\n });\r\n } catch (e){\r\n\r\n }\r\n }\r\n \r\n return data;\r\n });\r\n}","import axios from 'axios';\r\nimport HttpHelper from '../../../Helpers/HttpHelper';\r\nimport AuthService from '../../../Services/AuthService';\r\nimport { EnvService as process} from '../../../Services/EnvService';\r\n\r\n\r\nconst entity = 'Notification';\r\nexport default class NotificationService {\r\n \r\n GetAllNotifications = (filters: string = '') => {\r\n const oDataUrl = process.env.REACT_APP_ODATA_INTERACT;\r\n return new Promise((res) => {\r\n HttpHelper.get(`${oDataUrl}/${entity}?${filters || '$skip=0&$top=5000'}`, '', AuthService.authHeader())\r\n .then((a:any) => {\r\n res(a);\r\n });\r\n });\r\n }\r\n \r\n GetNotificationsByUser = (filters: string = '') => {\r\n const oDataUrl = process.env.REACT_APP_ODATA_INTERACT;\r\n return new Promise((res) => {\r\n HttpHelper.get(`${oDataUrl}/${entity}?$count=true&$filter=(SentTo eq ${filters})&$orderby=Id desc`, '', AuthService.authHeader())\r\n .then((a:any) => {\r\n res(a);\r\n });\r\n });\r\n }\r\n\r\n GetNotificationUpdatesBackground = (id:Number) => {\r\n const intract = process.env.REACT_APP_API_INTERACT;\r\n return new Promise((res) => {\r\n HttpHelper.post(`${intract}/${entity}/getNotificationsById`, {notificationId: id}, AuthService.authHeader())\r\n .then((a:any) => {\r\n res(a);\r\n });\r\n });\r\n }\r\n\r\n MarkallAsRead = (data :any) => {\r\n const intract = process.env.REACT_APP_API_INTERACT;\r\n return new Promise((res) => {\r\n HttpHelper.post(`${intract}/${entity}/MarkAsRead`, data, AuthService.authHeader())\r\n .then((a:any) => {\r\n res(a);\r\n });\r\n });\r\n }\r\n\r\n addToWatchList = (data: any) => {\r\n const interactBaseUrl = process.env.REACT_APP_API_INTERACT;\r\n \r\n const prom = new Promise((res) => {\r\n HttpHelper.post(`${interactBaseUrl}/${'WatchList'}`, data, AuthService.authHeader())\r\n .then((a: any) => {\r\n res(a.data);\r\n });\r\n });\r\n \r\n return prom;\r\n }\r\n\r\n addToNotifications = (data: any) => {\r\n const interactBaseUrl = process.env.REACT_APP_API_INTERACT;\r\n \r\n const prom = new Promise((res) => {\r\n HttpHelper.post(`${interactBaseUrl}/${'Notifications'}`, data, AuthService.authHeader())\r\n .then((a: any) => {\r\n res(a.data);\r\n });\r\n });\r\n \r\n return prom;\r\n }\r\n \r\n getAllNotifications = async () => {\r\n const response = await axios.get(`${process.env.REACT_APP_API_INTERACT}/Notifications`, { headers: AuthService.authHeader() });\r\n return response;\r\n }\r\n\r\n getAllNotifiedUsers = async (userId : string) => {\r\n const response = await axios.get(`${process.env.REACT_APP_API_INTERACT}/NotifiedUsers?query={\"query\":{\"bool\":{\"must\":[{\"match\":{\"userId\":\"${userId}\"}},{\"match\":{\"isRead\":false}}]}},\"from\":0,\"size\":1000}`, { headers: AuthService.authHeader() });\r\n return response;\r\n }\r\n\r\n getUnreadNotifications = async (data : string) => {\r\n const response = await axios.get(`${process.env.REACT_APP_API_INTERACT}/Notifications?query={\"query\":{\"ids\":{\"values\":[${data}]}}}`, { headers: AuthService.authHeader() });\r\n return response;\r\n }\r\n\r\n updateNotificationStatus = async (data : any) => {\r\n const response = await axios.post(`${process.env.REACT_APP_API_INTERACT}/NotifiedUsers`, data, { headers: AuthService.authHeader() });\r\n return response;\r\n }\r\n\r\n addToAudit = (auditObj: any, auditEntity:string) => {\r\n return new Promise((res) => {\r\n HttpHelper.post(`${process.env.REACT_APP_API_INTERACT}/${auditEntity}/Add`, auditObj, AuthService.authHeader()).then(() => {})\r\n .then((a:any) => {\r\n res(a);\r\n });\r\n });\r\n }\r\n}\r\n","import React from 'react';\r\nimport moment from 'moment';\r\nimport { toast, ToastOptions } from 'react-toastify';\r\nimport NotificationService from './Service';\r\nimport { NotificationsClass } from './NotificationCalss';\r\nimport './style.css';\r\nimport AuthService from '../../../Services/AuthService';\r\nimport SessionHelper from '../../../Helpers/SessionHelper';\r\nimport TheHistory from '../../../history';\r\n\r\nconst notificationIcon = require('../../Themes/impact-analysis/media/notification.svg');\r\n\r\nclass NotificationModel {\r\n Id = 0;\r\n\r\n Title = \"\";\r\n\r\n Message = \"\";\r\n\r\n Category = \"\";\r\n\r\n ReadStatus = false;\r\n\r\n SentTo = \"\";\r\n\r\n Link = \"\";\r\n\r\n CreatedOn:Date = new Date()\r\n\r\n CreatedBy='';\r\n\r\n RefId=0;\r\n\r\n AssessmentNo=\"\";\r\n}\r\n\r\ninterface NotificationData {\r\n Category: string\r\n CreatedBy: string\r\n CreatedOn: Date\r\n Id: number\r\n IsDefunct: boolean\r\n Link: string\r\n Message: string\r\n ModifiedBy: Date\r\n ModifiedOn: Date\r\n ReadStatus: boolean\r\n SentTo: string\r\n Title: string\r\n}\r\n\r\nclass TheState {\r\n notificatioData: NotificationsClass[] = [];\r\n\r\n selectedMessage = new NotificationModel();\r\n\r\n notificationsList: NotificationModel[] = [];\r\n\r\n showLoader: boolean = false;\r\n\r\n showNoificatioList:boolean = false;\r\n\r\n unreadNotifications:number=0;\r\n}\r\n\r\nconst notificationService = new NotificationService(); \r\nconst loader = require('../../../Resource/Images/ringloader.gif');\r\n\r\nexport class NotificationList extends React.Component<{}, TheState>{\r\n notificationsList: NotificationModel[] = [];\r\n\r\n lastNotificationiD = 0;\r\n\r\n notificationsWatcher: NodeJS.Timeout | undefined;\r\n\r\n constructor(props: {}) {\r\n super(props);\r\n this.state = new TheState();\r\n }\r\n\r\n componentDidMount() {\r\n const notificationId = SessionHelper.getItem('notificationLatestId');\r\n this.notificationBackgroundWatch();\r\n if (!notificationId){\r\n this.getNotificationsByUser();\r\n } \r\n document.addEventListener('click', this.hideNotificationsListModel);\r\n this.notificationsWatcher = setInterval(() => {\r\n this.notificationBackgroundWatch();\r\n }, 10000);\r\n }\r\n\r\n componentWillUnmount(){\r\n document.removeEventListener('click', this.hideNotificationsListModel);\r\n if (this.notificationsWatcher) clearInterval(this.notificationsWatcher);\r\n }\r\n\r\n hideNotificationsListModel=(event:MouseEvent) => {\r\n if (this.state.showNoificatioList && !(event.target as Element)?.closest('.notifications-management')) { this.setState({showNoificatioList: false}); }\r\n }\r\n\r\n getNotificationsByUser = () => {\r\n const details = AuthService.getUserDetails();\r\n notificationService.GetNotificationsByUser(details.userid).then((res) => {\r\n if (res && res.value.length > 0){\r\n const unReadMessages = res.value.filter((e:NotificationData) => e.ReadStatus === false);\r\n this.notificationsList = res.value;\r\n this.setState({notificationsList: res.value, unreadNotifications: unReadMessages.length});\r\n this.lastNotificationiD = res.value[0].Id;\r\n SessionHelper.removeItem('notificationLatestId');\r\n SessionHelper.setItem('notificationLatestId', res.value[0].Id);\r\n } \r\n });\r\n }\r\n\r\n readAllMessages = () => { \r\n this.setState({showLoader: true});\r\n const messagesList = this.state.notificationsList;\r\n const idsList:{ids:number[]} = {\r\n ids: []\r\n };\r\n \r\n messagesList.forEach((e) => {\r\n if (e.ReadStatus === false){\r\n idsList.ids.push(e.Id);\r\n }\r\n });\r\n\r\n notificationService.MarkallAsRead(idsList).then(res => {\r\n if (res){\r\n this.setState({showLoader: false});\r\n this.getNotificationsByUser();\r\n }\r\n });\r\n }\r\n\r\n updateMessagestatus = (notification: NotificationModel) => {\r\n this.setState({showLoader: true});\r\n const idsList: {ids:number[]} = {\r\n ids: []\r\n };\r\n const random = Math.floor((Math.random() * 100) + 1);\r\n idsList.ids.push(notification.Id); \r\n if (notification.ReadStatus === false){\r\n notificationService.MarkallAsRead(idsList).then(res => {\r\n if (res){\r\n this.setState({showLoader: false});\r\n\r\n if (notification.Category === \"Mark Up\"){\r\n window.open(notification.Link, \"_blank\");\r\n this.addAdudit(notification?.RefId,notification?.AssessmentNo);\r\n } else { TheHistory.history?.push(`${notification.Link}&Nav=${random}`); }\r\n \r\n this.getNotificationsByUser();\r\n }\r\n });\r\n } else {\r\n this.setState({showLoader: false});\r\n\r\n if (notification.Category === \"Mark Up\"){\r\n window.open(notification.Link, \"_blank\");\r\n this.addAdudit(notification?.RefId,notification?.AssessmentNo);\r\n } else { TheHistory.history?.push(`${notification.Link}&Nav=${random}`); }\r\n }\r\n }\r\n\r\n setNotificationFilter = (event: React.ChangeEvent) => {\r\n const sourcedata = this.notificationsList;\r\n const sortedata = sourcedata.filter((e) => e.ReadStatus === false);\r\n this.setState({showLoader: true});\r\n if (sourcedata.length > 0){\r\n if (event.target.checked){\r\n this.setState({notificationsList: sortedata});\r\n } else {\r\n this.setState({notificationsList: sourcedata});\r\n } \r\n }\r\n this.setState({showLoader: false});\r\n }\r\n\r\n addAdudit = (projectId?:number,assessmentNo?:string) => {\r\n if (projectId) {\r\n const ProejctAudit = {\r\n Activity: \"PDF Markup Downloaded\",\r\n Log: `PDF Markup downloaded successfully in Assessment ${assessmentNo}.`,\r\n ProjectId: projectId\r\n };\r\n notificationService.addToAudit(ProejctAudit, \"ProjectAudit\");\r\n } \r\n }\r\n\r\n getDifferenceInMinutes = (date1:Date, date2: Date) => { \r\n const d1 = moment(date1);\r\n const d2 = moment(date2);\r\n const ms = moment.duration(d2.diff(d1));\r\n const d = Math.floor(ms.asMinutes());\r\n let statement;\r\n if (d < 1){\r\n statement = (now);\r\n } else if (d < 60){\r\n statement = ({d} min ago);\r\n } else if (d >= 60 && d <= 60 * 24){\r\n const newHrs = Math.floor(d / 60);\r\n statement = ({newHrs} hours ago);\r\n } else if (d >= 60 * 24 && d <= 60 * 24 * 30){\r\n const newDays = Math.floor(d / (60 * 24));\r\n statement = ({newDays} days ago);\r\n } else if (d >= 60 * 24 * 30){\r\n const newDays = Math.floor(d / (60 * 24 * 30));\r\n statement = ({newDays} month ago);\r\n }\r\n // const s = d.format(\"hh:mm:ss\");\r\n return statement;\r\n }\r\n \r\n notificationBackgroundWatch = () => {\r\n const notificationId = SessionHelper.getItem('notificationLatestId') || \"0\";\r\n \r\n notificationService.GetNotificationUpdatesBackground(parseInt(notificationId))\r\n .then((res) => {\r\n if (res?.length !== 0){\r\n this.setNotification(res); \r\n }\r\n }); \r\n\r\n if (this.state.notificationsList.length === 0){\r\n this.getNotificationsByUser(); \r\n } \r\n }\r\n\r\n setNotification = (data: string | any[]) => {\r\n const settings : ToastOptions = {\r\n position: \"bottom-left\",\r\n autoClose: 5000,\r\n hideProgressBar: false,\r\n closeOnClick: true,\r\n pauseOnHover: true,\r\n draggable: true\r\n };\r\n\r\n toast.dark(`You have ${data.length} new notification(s)`, settings); \r\n this.getNotificationsByUser(); \r\n }\r\n\r\n toggleNotificationList = () => {\r\n this.setState({showNoificatioList: !this.state.showNoificatioList});\r\n setTimeout(() => {\r\n const element = document.getElementById(\"notificationListWrapper\");\r\n const topPostions = element?.getBoundingClientRect().top;\r\n if (topPostions && topPostions < 0){\r\n const position = Math.abs(topPostions) + 80;\r\n element?.style.setProperty(\"bottom\", `-${position}px`);\r\n }\r\n }, 0); \r\n }\r\n\r\n render() {\r\n const newdate = new Date();\r\n return (\r\n
\r\n
{ if (e.key === \"Enter\") this.toggleNotificationList(); }} title=\"Notifications\">\r\n {this.state.unreadNotifications !== 0 && {this.state.unreadNotifications}}\r\n \"Notofications\"\r\n
Notifications
\r\n
\r\n { this.state.showNoificatioList && (\r\n
\r\n
\r\n { this.state.showLoader && (\r\n
\r\n \"\"\r\n
\r\n )}\r\n \r\n
\r\n
\r\n Notifications {this.state.notificationsList.length}\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
    \r\n {(this.state.notificationsList.length === 0) && (\r\n
    \r\n There is nothing to show here.\r\n
    \r\n )}\r\n {this.state.notificationsList && this.state.notificationsList.map((notification, index) => {\r\n return (\r\n // @ts-ignore\r\n // eslint-disable-next-line jsx-a11y/click-events-have-key-events, jsx-a11y/no-noninteractive-element-interactions\r\n
  • this.updateMessagestatus(notification)}>\r\n {/* */}\r\n
    \r\n {notification.CreatedBy}\r\n {/* {notification.CreatedBy} */}\r\n
    \r\n
    \r\n {notification.Title}\r\n {notification.Message}\r\n {this.getDifferenceInMinutes(notification.CreatedOn, newdate)}\r\n {/* {notification.CreatedOn} */}\r\n {/* {this.getDifferenceInMinutes(notification.CreatedOn, newdate)} */}\r\n
    \r\n
    \r\n {!notification.ReadStatus && }\r\n
    \r\n {/* */}\r\n
  • \r\n );\r\n })}\r\n
\r\n
\r\n
\r\n
\r\n )}\r\n
\r\n );\r\n }\r\n}\r\n","import ReactDOM from 'react-dom';\r\nimport React from 'react';\r\nimport { toast } from \"react-toastify\";\r\nimport { v4 as uuid } from 'uuid';\r\n\r\ninterface TheProps{\r\n id: string;\r\n message: JSX.Element;\r\n}\r\n\r\n/**\r\n * Statusbar component that returns html for StatusBar\r\n */\r\nfunction StatusBar({ id, message }: TheProps) {\r\n return (\r\n
{message}
\r\n );\r\n}\r\n\r\n/**\r\n * Helper class for initlizing and using StatusBar\r\n */\r\nexport default class StatusBarHelper {\r\n container = document.body.appendChild(document.createElement('div'))\r\n\r\n id = uuid();\r\n\r\n constructor(message: JSX.Element, duration = 0, priority = 1) {\r\n ReactDOM.render(\r\n ,\r\n this.container,\r\n );\r\n\r\n if (duration > 0) {\r\n setTimeout(() => {\r\n this.destroy();\r\n }, duration);\r\n }\r\n }\r\n\r\n destroy = () => {\r\n ReactDOM.unmountComponentAtNode(this.container);\r\n this.container.remove();\r\n }\r\n\r\n hide = () => {\r\n this.destroy();\r\n }\r\n\r\n static showStatus(message? : JSX.Element | string, duration = 0) {\r\n let msg = <>Loading...;\r\n\r\n if (message) {\r\n if (typeof (message) === 'string') {\r\n msg = <>{message};\r\n } else {\r\n msg = message;\r\n }\r\n }\r\n\r\n return new StatusBarHelper(msg, duration);\r\n }\r\n\r\n update = (message: string) => {\r\n const statusEle = document.querySelector(`[id='${this.id}']`);\r\n\r\n if (statusEle) {\r\n statusEle.innerHTML = message;\r\n }\r\n }\r\n\r\n static showAlert(type:'error'|'success', messsage:string) {\r\n if (type === 'error') {\r\n toast.error(messsage, {\r\n position: 'top-center',\r\n autoClose: 5000,\r\n hideProgressBar: true,\r\n closeOnClick: true,\r\n pauseOnHover: true,\r\n draggable: false,\r\n progress: undefined,\r\n }); \r\n } else {\r\n toast.success(messsage, {\r\n position: 'top-center',\r\n autoClose: 5000,\r\n hideProgressBar: true,\r\n closeOnClick: true,\r\n pauseOnHover: true,\r\n draggable: false,\r\n progress: undefined,\r\n }); \r\n }\r\n }\r\n}\r\n","import AuthService from \"../Services/AuthService\";\r\nimport _HttpHelper from \"./HttpHelper\";\r\n\r\nconst oDataUrl = process.env.REACT_APP_API_INTERACT_ODATA;\r\nconst interactBaseUrl = process.env.REACT_APP_API_INTERACT;\r\n\r\nexport default class EntityHelper{\r\n static GetAll(entity: string, filters: string = ''){\r\n const requestOptions = AuthService.authHeader();\r\n return new Promise((res) => {\r\n _HttpHelper.get(`${oDataUrl}/${entity}?${filters || '$skip=0&$top=5000'}`, '', requestOptions)\r\n .then((a:any) => {\r\n res(a);\r\n });\r\n });\r\n }\r\n\r\n static GetById(entity: string, id: string = ''){\r\n const requestOptions = AuthService.authHeader();\r\n return new Promise((res) => {\r\n _HttpHelper.get(`${interactBaseUrl}/${entity}/getById/${id}`, '', requestOptions)\r\n .then((a:any) => {\r\n res(a);\r\n });\r\n });\r\n }\r\n\r\n static Update(entity: string, data: any){\r\n const requestOptions = AuthService.authHeader();\r\n return new Promise((res) => {\r\n _HttpHelper.put(`${interactBaseUrl}/${entity}/update`, data, requestOptions)\r\n .then((a:any) => {\r\n res(a);\r\n });\r\n });\r\n }\r\n\r\n static Create(entity: string, data: any){\r\n const requestOptions = AuthService.authHeader();\r\n return new Promise((res) => {\r\n _HttpHelper.post(`${interactBaseUrl}/${entity}/Add`, data, requestOptions)\r\n .then((a:any) => {\r\n res(a);\r\n });\r\n });\r\n }\r\n\r\n static Delete(entity: string, id: string = ''){\r\n const requestOptions = AuthService.authHeader();\r\n return new Promise((res) => {\r\n _HttpHelper.delete(`${interactBaseUrl}/${entity}/delete/${id}`, '', requestOptions)\r\n .then((a:any) => {\r\n res(a);\r\n });\r\n });\r\n }\r\n}","export const TimeZoneData:any ={\r\n \"Dateline Standard Time\": {\r\n \"zone\": \"(UTC-12:00) International Date Line West\",\r\n \"value\": 12\r\n },\r\n \"UTC-11\": {\r\n \"zone\": \"(UTC-11:00) Coordinated Universal Time-11\",\r\n \"value\": 11\r\n },\r\n \"Aleutian Standard Time\": {\r\n \"zone\": \"(UTC-10:00) Aleutian Islands\",\r\n \"value\": 10\r\n },\r\n \"Hawaiian Standard Time\": {\r\n \"zone\": \"(UTC-10:00) Hawaii\",\r\n \"value\": 10\r\n },\r\n \"Marquesas Standard Time\": {\r\n \"zone\": \"(UTC-09:30) Marquesas Islands\",\r\n \"value\": 9.5\r\n },\r\n \"Alaskan Standard Time\": {\r\n \"zone\": \"(UTC-09:00) Alaska\",\r\n \"value\": 9\r\n },\r\n \"UTC-09\": {\r\n \"zone\": \"(UTC-09:00) Coordinated Universal Time-09\",\r\n \"value\": 9\r\n },\r\n \"Pacific Standard Time (Mexico)\": {\r\n \"zone\": \"(UTC-08:00) Baja California\",\r\n \"value\": 8\r\n },\r\n \"UTC-08\": {\r\n \"zone\": \"(UTC-08:00) Coordinated Universal Time-08\",\r\n \"value\": 8\r\n },\r\n \"Pacific Standard Time\": {\r\n \"zone\": \"(UTC-08:00) Pacific Time (US & Canada)\",\r\n \"value\": 8\r\n },\r\n \"US Mountain Standard Time\": {\r\n \"zone\": \"(UTC-07:00) Arizona\",\r\n \"value\": 7\r\n },\r\n \"Mountain Standard Time (Mexico)\": {\r\n \"zone\": \"(UTC-07:00) Chihuahua, La Paz, Mazatlan\",\r\n \"value\": 7\r\n },\r\n \"Mountain Standard Time\": {\r\n \"zone\": \"(UTC-07:00) Mountain Time (US & Canada)\",\r\n \"value\": 7\r\n },\r\n \"Yukon Standard Time\": {\r\n \"zone\": \"(UTC-07:00) Yukon\",\r\n \"value\": 7\r\n },\r\n \"Central America Standard Time\": {\r\n \"zone\": \"(UTC-06:00) Central America\",\r\n \"value\": 7\r\n },\r\n \"Central Standard Time\": {\r\n \"zone\": \"(UTC-06:00) Central Time (US & Canada)\",\r\n \"value\": 6\r\n },\r\n \"Easter Island Standard Time\": {\r\n \"zone\": \"(UTC-06:00) Easter Island\",\r\n \"value\": 6\r\n },\r\n \"Central Standard Time (Mexico)\": {\r\n \"zone\": \"(UTC-06:00) Guadalajara, Mexico City, Monterrey\",\r\n \"value\": 6\r\n },\r\n \"Canada Central Standard Time\": {\r\n \"zone\": \"(UTC-06:00) Saskatchewan\",\r\n \"value\": 6\r\n },\r\n \"SA Pacific Standard Time\": {\r\n \"zone\": \"(UTC-05:00) Bogota, Lima, Quito, Rio Branco\",\r\n \"value\": 5\r\n },\r\n \"Eastern Standard Time (Mexico)\": {\r\n \"zone\": \"(UTC-05:00) Chetumal\",\r\n \"value\": 5\r\n },\r\n \"Eastern Standard Time\": {\r\n \"zone\": \"(UTC-05:00) Eastern Time (US & Canada)\",\r\n \"value\": 5\r\n },\r\n \"Haiti Standard Time\": {\r\n \"zone\": \"(UTC-05:00) Haiti\",\r\n \"value\": 5\r\n },\r\n \"Cuba Standard Time\": {\r\n \"zone\": \"(UTC-05:00) Havana\",\r\n \"value\": 5\r\n },\r\n \"US Eastern Standard Time\": {\r\n \"zone\": \"(UTC-05:00) Indiana (East)\",\r\n \"value\": 5\r\n },\r\n \"Turks And Caicos Standard Time\": {\r\n \"zone\": \"(UTC-05:00) Turks and Caicos\",\r\n \"value\": 55\r\n },\r\n \"Paraguay Standard Time\": {\r\n \"zone\": \"(UTC-04:00) Asuncion\",\r\n \"value\": 4\r\n },\r\n \"Atlantic Standard Time\": {\r\n \"zone\": \"(UTC-04:00) Atlantic Time (Canada)\",\r\n \"value\": 4\r\n },\r\n \"Venezuela Standard Time\": {\r\n \"zone\": \"(UTC-04:00) Caracas\",\r\n \"value\": 4\r\n },\r\n \"Central Brazilian Standard Time\": {\r\n \"zone\": \"(UTC-04:00) Cuiaba\",\r\n \"value\": 4\r\n },\r\n \"SA Western Standard Time\": {\r\n \"zone\": \"(UTC-04:00) Georgetown, La Paz, Manaus, San Juan\",\r\n \"value\": 4\r\n },\r\n \"Pacific SA Standard Time\": {\r\n \"zone\": \"(UTC-04:00) Santiago\",\r\n \"value\": 4\r\n },\r\n \"Newfoundland Standard Time\": {\r\n \"zone\": \"(UTC-03:30) Newfoundland\",\r\n \"value\": 3.5\r\n },\r\n \"Tocantins Standard Time\": {\r\n \"zone\": \"(UTC-03:00) Araguaina\",\r\n \"value\": 3\r\n },\r\n \"E. South America Standard Time\": {\r\n \"zone\": \"(UTC-03:00) Brasilia\",\r\n \"value\": 3\r\n },\r\n \"SA Eastern Standard Time\": {\r\n \"zone\": \"(UTC-03:00) Cayenne, Fortaleza\",\r\n \"value\": 3\r\n },\r\n \"Argentina Standard Time\": {\r\n \"zone\": \"(UTC-03:00) City of Buenos Aires\",\r\n \"value\": 3\r\n },\r\n \"Greenland Standard Time\": {\r\n \"zone\": \"(UTC-03:00) Greenland\",\r\n \"value\": 3\r\n },\r\n \"Montevideo Standard Time\": {\r\n \"zone\": \"(UTC-03:00) Montevideo\",\r\n \"value\": 3\r\n },\r\n \"Magallanes Standard Time\": {\r\n \"zone\": \"(UTC-03:00) Punta Arenas\",\r\n \"value\": 3\r\n },\r\n \"Saint Pierre Standard Time\": {\r\n \"zone\": \"(UTC-03:00) Saint Pierre and Miquelon\",\r\n \"value\": 3\r\n },\r\n \"Bahia Standard Time\": {\r\n \"zone\": \"(UTC-03:00) Salvador\",\r\n \"value\": 3\r\n },\r\n \"UTC-02\": {\r\n \"zone\": \"(UTC-02:00) Coordinated Universal Time-02\",\r\n \"value\": 2\r\n },\r\n \"Mid-Atlantic Standard Time\": {\r\n \"zone\": \"(UTC-02:00) Mid-Atlantic - Old\",\r\n \"value\": 2\r\n },\r\n \"Azores Standard Time\": {\r\n \"zone\": \"(UTC-01:00) Azores\",\r\n \"value\": 1\r\n },\r\n \"Cape Verde Standard Time\": {\r\n \"zone\": \"(UTC-01:00) Cabo Verde Is.\",\r\n \"value\": 1\r\n },\r\n \"UTC\": {\r\n \"zone\": \"(UTC) Coordinated Universal Time\",\r\n \"value\": 0\r\n },\r\n \"GMT Standard Time\": {\r\n \"zone\": \"(UTC+00:00) Dublin, Edinburgh, Lisbon, London\",\r\n \"value\": 0\r\n },\r\n \"Greenwich Standard Time\": {\r\n \"zone\": \"(UTC+00:00) Monrovia, Reykjavik\",\r\n \"value\": 0\r\n },\r\n \"Sao Tome Standard Time\": {\r\n \"zone\": \"(UTC+00:00) Sao Tome\",\r\n \"value\": 0\r\n },\r\n \"Morocco Standard Time\": {\r\n \"zone\": \"(UTC+01:00) Casablanca\",\r\n \"value\": -1\r\n },\r\n \"W. Europe Standard Time\": {\r\n \"zone\": \"(UTC+01:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna\",\r\n \"value\": -1\r\n },\r\n \"Central Europe Standard Time\": {\r\n \"zone\": \"(UTC+01:00) Belgrade, Bratislava, Budapest, Ljubljana, Prague\",\r\n \"value\": -1\r\n },\r\n \"Romance Standard Time\": {\r\n \"zone\": \"(UTC+01:00) Brussels, Copenhagen, Madrid, Paris\",\r\n \"value\": -1\r\n },\r\n \"Central European Standard Time\": {\r\n \"zone\": \"(UTC+01:00) Sarajevo, Skopje, Warsaw, Zagreb\",\r\n \"value\": -1\r\n },\r\n \"W. Central Africa Standard Time\": {\r\n \"zone\": \"(UTC+01:00) West Central Africa\",\r\n \"value\": -1\r\n },\r\n \"Jordan Standard Time\": {\r\n \"zone\": \"(UTC+02:00) Amman\",\r\n \"value\": -2\r\n },\r\n \"GTB Standard Time\": {\r\n \"zone\": \"(UTC+02:00) Athens, Bucharest\",\r\n \"value\": -2\r\n },\r\n \"Middle East Standard Time\": {\r\n \"zone\": \"(UTC+02:00) Beirut\",\r\n \"value\": -2\r\n },\r\n \"Egypt Standard Time\": {\r\n \"zone\": \"(UTC+02:00) Cairo\",\r\n \"value\": -2\r\n },\r\n \"E. Europe Standard Time\": {\r\n \"zone\": \"(UTC+02:00) Chisinau\",\r\n \"value\": -2\r\n },\r\n \"Syria Standard Time\": {\r\n \"zone\": \"(UTC+02:00) Damascus\",\r\n \"value\": -2\r\n },\r\n \"West Bank Standard Time\": {\r\n \"zone\": \"(UTC+02:00) Gaza, Hebron\",\r\n \"value\": -2\r\n },\r\n \"South Africa Standard Time\": {\r\n \"zone\": \"(UTC+02:00) Harare, Pretoria\",\r\n \"value\": -2\r\n },\r\n \"FLE Standard Time\": {\r\n \"zone\": \"(UTC+02:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius\",\r\n \"value\": -2\r\n },\r\n \"Israel Standard Time\": {\r\n \"zone\": \"(UTC+02:00) Jerusalem\",\r\n \"value\": -2\r\n },\r\n \"South Sudan Standard Time\": {\r\n \"zone\": \"(UTC+02:00) Juba\",\r\n \"value\": -2\r\n },\r\n \"Kaliningrad Standard Time\": {\r\n \"zone\": \"(UTC+02:00) Kaliningrad\",\r\n \"value\": -2\r\n },\r\n \"Sudan Standard Time\": {\r\n \"zone\": \"(UTC+02:00) Khartoum\",\r\n \"value\": -2\r\n },\r\n \"Libya Standard Time\": {\r\n \"zone\": \"(UTC+02:00) Tripoli\",\r\n \"value\": -2\r\n },\r\n \"Namibia Standard Time\": {\r\n \"zone\": \"(UTC+02:00) Windhoek\",\r\n \"value\": -2\r\n },\r\n \"Arabic Standard Time\": {\r\n \"zone\": \"(UTC+03:00) Baghdad\",\r\n \"value\": -3\r\n },\r\n \"Turkey Standard Time\": {\r\n \"zone\": \"(UTC+03:00) Istanbul\",\r\n \"value\": 3\r\n },\r\n \"Arab Standard Time\": {\r\n \"zone\": \"(UTC+03:00) Kuwait, Riyadh\",\r\n \"value\": -3\r\n },\r\n \"Belarus Standard Time\": {\r\n \"zone\": \"(UTC+03:00) Minsk\",\r\n \"value\": -3\r\n },\r\n \"Russian Standard Time\": {\r\n \"zone\": \"(UTC+03:00) Moscow, St. Petersburg\",\r\n \"value\": -3\r\n },\r\n \"E. Africa Standard Time\": {\r\n \"zone\": \"(UTC+03:00) Nairobi\",\r\n \"value\": -3\r\n },\r\n \"Volgograd Standard Time\": {\r\n \"zone\": \"(UTC+03:00) Volgograd\",\r\n \"value\": -3\r\n },\r\n \"Iran Standard Time\": {\r\n \"zone\": \"(UTC+03:30) Tehran\",\r\n \"value\": -3.5\r\n },\r\n \"Arabian Standard Time\": {\r\n \"zone\": \"(UTC+04:00) Abu Dhabi, Muscat\",\r\n \"value\": -4\r\n },\r\n \"Astrakhan Standard Time\": {\r\n \"zone\": \"(UTC+04:00) Astrakhan, Ulyanovsk\",\r\n \"value\": -4\r\n },\r\n \"Azerbaijan Standard Time\": {\r\n \"zone\": \"(UTC+04:00) Baku\",\r\n \"value\": -4\r\n },\r\n \"Russia Time Zone 3\": {\r\n \"zone\": \"(UTC+04:00) Izhevsk, Samara\",\r\n \"value\": -4\r\n },\r\n \"Mauritius Standard Time\": {\r\n \"zone\": \"(UTC+04:00) Port Louis\",\r\n \"value\": -4\r\n },\r\n \"Saratov Standard Time\": {\r\n \"zone\": \"(UTC+04:00) Saratov\",\r\n \"value\": -4\r\n },\r\n \"Georgian Standard Time\": {\r\n \"zone\": \"(UTC+04:00) Tbilisi\",\r\n \"value\": -4\r\n },\r\n \"Caucasus Standard Time\": {\r\n \"zone\": \"(UTC+04:00) Yerevan\",\r\n \"value\": -4\r\n },\r\n \"Afghanistan Standard Time\": {\r\n \"zone\": \"(UTC+04:30) Kabul\",\r\n \"value\": -4.5\r\n },\r\n \"West Asia Standard Time\": {\r\n \"zone\": \"(UTC+05:00) Ashgabat, Tashkent\",\r\n \"value\": -5\r\n },\r\n \"Ekaterinburg Standard Time\": {\r\n \"zone\": \"(UTC+05:00) Ekaterinburg\",\r\n \"value\": -5\r\n },\r\n \"Pakistan Standard Time\": {\r\n \"zone\": \"(UTC+05:00) Islamabad, Karachi\",\r\n \"value\": -5\r\n },\r\n \"Qyzylorda Standard Time\": {\r\n \"zone\": \"(UTC+05:00) Qyzylorda\",\r\n \"value\": -5\r\n },\r\n \"India Standard Time\": {\r\n \"zone\": \"(UTC+05:30) Chennai, Kolkata, Mumbai, New Delhi\",\r\n \"value\": -5.5\r\n },\r\n \"Sri Lanka Standard Time\": {\r\n \"zone\": \"(UTC+05:30) Sri Jayawardenepura\",\r\n \"value\": -5.5\r\n },\r\n \"Nepal Standard Time\": {\r\n \"zone\": \"(UTC+05:45) Kathmandu\",\r\n \"value\": -5.75\r\n },\r\n \"Central Asia Standard Time\": {\r\n \"zone\": \"(UTC+06:00) Astana\",\r\n \"value\": -6\r\n },\r\n \"Bangladesh Standard Time\": {\r\n \"zone\": \"(UTC+06:00) Dhaka\",\r\n \"value\": -6\r\n },\r\n \"Omsk Standard Time\": {\r\n \"zone\": \"(UTC+06:00) Omsk\",\r\n \"value\": -6\r\n },\r\n \"Myanmar Standard Time\": {\r\n \"zone\": \"(UTC+06:30) Yangon (Rangoon)\",\r\n \"value\": -6.5\r\n },\r\n \"SE Asia Standard Time\": {\r\n \"zone\": \"(UTC+07:00) Bangkok, Hanoi, Jakarta\",\r\n \"value\": -7\r\n },\r\n \"Altai Standard Time\": {\r\n \"zone\": \"(UTC+07:00) Barnaul, Gorno-Altaysk\",\r\n \"value\": -7\r\n },\r\n \"W. Mongolia Standard Time\": {\r\n \"zone\": \"(UTC+07:00) Hovd\",\r\n \"value\": -7\r\n },\r\n \"North Asia Standard Time\": {\r\n \"zone\": \"(UTC+07:00) Krasnoyarsk\",\r\n \"value\": -7\r\n },\r\n \"N. Central Asia Standard Time\": {\r\n \"zone\": \"(UTC+07:00) Novosibirsk\",\r\n \"value\": -7\r\n },\r\n \"Tomsk Standard Time\": {\r\n \"zone\": \"(UTC+07:00) Tomsk\",\r\n \"value\": -7\r\n },\r\n \"China Standard Time\": {\r\n \"zone\": \"(UTC+08:00) Beijing, Chongqing, Hong Kong, Urumqi\",\r\n \"value\": -8\r\n },\r\n \"North Asia East Standard Time\": {\r\n \"zone\": \"(UTC+08:00) Irkutsk\",\r\n \"value\": -8\r\n },\r\n \"Singapore Standard Time\": {\r\n \"zone\": \"(UTC+08:00) Kuala Lumpur, Singapore\",\r\n \"value\": -8\r\n },\r\n \"W. Australia Standard Time\": {\r\n \"zone\": \"(UTC+08:00) Perth\",\r\n \"value\": -8\r\n },\r\n \"Taipei Standard Time\": {\r\n \"zone\": \"(UTC+08:00) Taipei\",\r\n \"value\": -8\r\n },\r\n \"Ulaanbaatar Standard Time\": {\r\n \"zone\": \"(UTC+08:00) Ulaanbaatar\",\r\n \"value\": -8\r\n },\r\n \"Aus Central W. Standard Time\": {\r\n \"zone\": \"(UTC+08:45) Eucla\",\r\n \"value\": -8.75\r\n },\r\n \"Transbaikal Standard Time\": {\r\n \"zone\": \"(UTC+09:00) Chita\",\r\n \"value\": -9\r\n },\r\n \"Tokyo Standard Time\": {\r\n \"zone\": \"(UTC+09:00) Osaka, Sapporo, Tokyo\",\r\n \"value\": -9\r\n },\r\n \"North Korea Standard Time\": {\r\n \"zone\": \"(UTC+09:00) Pyongyang\",\r\n \"value\": -9\r\n },\r\n \"Korea Standard Time\": {\r\n \"zone\": \"(UTC+09:00) Seoul\",\r\n \"value\": -9\r\n },\r\n \"Yakutsk Standard Time\": {\r\n \"zone\": \"(UTC+09:00) Yakutsk\",\r\n \"value\": -9\r\n },\r\n \"Cen. Australia Standard Time\": {\r\n \"zone\": \"(UTC+09:30) Adelaide\",\r\n \"value\": -9.5\r\n },\r\n \"AUS Central Standard Time\": {\r\n \"zone\": \"(UTC+09:30) Darwin\",\r\n \"value\": -9.5\r\n },\r\n \"E. Australia Standard Time\": {\r\n \"zone\": \"(UTC+10:00) Brisbane\",\r\n \"value\": -10\r\n },\r\n \"AUS Eastern Standard Time\": {\r\n \"zone\": \"(UTC+10:00) Canberra, Melbourne, Sydney\",\r\n \"value\": -10\r\n },\r\n \"West Pacific Standard Time\": {\r\n \"zone\": \"(UTC+10:00) Guam, Port Moresby\",\r\n \"value\": -10\r\n },\r\n \"Tasmania Standard Time\": {\r\n \"zone\": \"(UTC+10:00) Hobart\",\r\n \"value\": -10\r\n },\r\n \"Vladivostok Standard Time\": {\r\n \"zone\": \"(UTC+10:00) Vladivostok\",\r\n \"value\": -10\r\n },\r\n \"Lord Howe Standard Time\": {\r\n \"zone\": \"(UTC+10:30) Lord Howe Island\",\r\n \"value\": -10.5\r\n },\r\n \"Bougainville Standard Time\": {\r\n \"zone\": \"(UTC+11:00) Bougainville Island\",\r\n \"value\": -11\r\n },\r\n \"Russia Time Zone 10\": {\r\n \"zone\": \"(UTC+11:00) Chokurdakh\",\r\n \"value\": -11\r\n },\r\n \"Magadan Standard Time\": {\r\n \"zone\": \"(UTC+11:00) Magadan\",\r\n \"value\": -11\r\n },\r\n \"Norfolk Standard Time\": {\r\n \"zone\": \"(UTC+11:00) Norfolk Island\",\r\n \"value\": -11\r\n },\r\n \"Sakhalin Standard Time\": {\r\n \"zone\": \"(UTC+11:00) Sakhalin\",\r\n \"value\": -11\r\n },\r\n \"Central Pacific Standard Time\": {\r\n \"zone\": \"(UTC+11:00) Solomon Is., New Caledonia\",\r\n \"value\": -11\r\n },\r\n \"Russia Time Zone 11\": {\r\n \"zone\": \"(UTC+12:00) Anadyr, Petropavlovsk-Kamchatsky\",\r\n \"value\": -12\r\n },\r\n \"New Zealand Standard Time\": {\r\n \"zone\": \"(UTC+12:00) Auckland, Wellington\",\r\n \"value\": -12\r\n },\r\n \"UTC+12\": {\r\n \"zone\": \"(UTC+12:00) Coordinated Universal Time+12\",\r\n \"value\": -12\r\n },\r\n \"Fiji Standard Time\": {\r\n \"zone\": \"(UTC+12:00) Fiji\",\r\n \"value\": -12\r\n },\r\n \"Kamchatka Standard Time\": {\r\n \"zone\": \"(UTC+12:00) Petropavlovsk-Kamchatsky - Old\",\r\n \"value\": -12\r\n },\r\n \"Chatham Islands Standard Time\": {\r\n \"zone\": \"(UTC+12:45) Chatham Islands\",\r\n \"value\": -12.75\r\n },\r\n \"UTC+13\": {\r\n \"zone\": \"(UTC+13:00) Coordinated Universal Time+13\",\r\n \"value\": -13\r\n },\r\n \"Tonga Standard Time\": {\r\n \"zone\": \"(UTC+13:00) Nuku'alofa\",\r\n \"value\": -13\r\n },\r\n \"Samoa Standard Time\": {\r\n \"zone\": \"(UTC+13:00) Samoa\",\r\n \"value\": -13\r\n },\r\n \"Line Islands Standard Time\": {\r\n \"zone\": \"(UTC+14:00) Kiritimati Island\",\r\n \"value\": -14\r\n }\r\n}","import moment from \"moment\";\r\nimport AuthService from \"../../../Services/AuthService\";\r\nimport ConfigService from \"../../../Services/ConfigService\";\r\nimport { TimeZoneData } from \"./TimeZones\";\r\n\r\n/**\r\n * Generic Helper class that hosts all helper methods\r\n */\r\nexport default class ExtHelper {\r\n\r\n\r\n\r\n public static getTimeZoneDate(date:string,format:string = \"\"):string{\r\n \r\n const dateFormat = format===\"\"?ConfigService.get('FrontendDateFormat'):format;\r\n const dateAndTime = new Date(`${date}Z`).toUTCString();\r\n const regExp = /\\(([^)]+)\\)/;\r\n \r\n const CurrentUserDetails = AuthService.getUserDetails();\r\n\r\n const CurrentTimeZone:any = regExp.exec(TimeZoneData[CurrentUserDetails.Timezone].zone);\r\n const timeZone = CurrentTimeZone[1] === \"UTC\" ? \"UTC+00:00\" : CurrentTimeZone[1];\r\n \r\n const newDate = moment(new Date(dateAndTime).toJSON()).utcOffset(timeZone); \r\n \r\n return date!== \"null\" ? newDate.format(dateFormat) : \"\"; \r\n }\r\n\r\n}\r\n","import _HttpHelper from \"../../../Helpers/HttpHelper\";\r\nimport AuthService from \"../../../Services/AuthService\";\r\nimport { EnvService as process} from '../../../Services/EnvService';\r\n\r\nexport default class EmailPreferenceService {\r\n static interactBaseUrl = \"\";\r\n\r\n constructor(){\r\n EmailPreferenceService.interactBaseUrl = process.env.REACT_APP_API_INTERACT;\r\n }\r\n\r\n static UpdateEmailPrefrence = (entity: string, data: any) => {\r\n const requestOptions = AuthService.authHeader();\r\n return new Promise((res) => {\r\n _HttpHelper.post(`${process.env.REACT_APP_API_INTERACT}/${entity}/savepreferences`, data, requestOptions)\r\n .then((a:any) => {\r\n res(a);\r\n });\r\n });\r\n }\r\n\r\n static AddSystemPreferencesForUsers = (userIds: string[]): Promise => {\r\n const requestOptions = AuthService.authHeader();\r\n return _HttpHelper.post(`${process.env.REACT_APP_API_INTERACT}/Emailpreferences/AddSystemPreferencesForUsers`, {userIds}, requestOptions)\r\n }\r\n \r\n static GetEmailPreferencesbyUserId = (entity: string, data:any = null) => {\r\n const requestOptions = AuthService.authHeader();\r\n return new Promise((res) => {\r\n _HttpHelper.post(`${process.env.REACT_APP_API_INTERACT}/${entity}/getemailpreferencesbyuserid`, data, requestOptions)\r\n .then((a:any) => {\r\n res(a);\r\n });\r\n });\r\n }\r\n}","import React from \"react\";\r\nimport StatusBarHelper from \"../../../Helpers/StatusBarHelper\";\r\nimport { EmailPrefrenceComponent } from \"./email-preference\";\r\nimport EntityHelper from \"../../../Helpers/EntityHelper\";\r\nimport ExtensionsWrapper from \"../../../Models/Core/ExtensionWrapper\";\r\nimport ThemeManager from \"../../../Models/Core/ThemeManager\";\r\nimport { ExecuteHook } from \"../../../Models/Core/Hooks\";\r\nimport AuthService from \"../../../Services/AuthService\";\r\n\r\ninterface TabModel {\r\n eventKey: string;\r\n title: string;\r\n component: ({ userId, child }: { userId: string; child:any}) => JSX.Element;\r\n}\r\ninterface MenuModel {\r\n to: string;\r\n name: string;\r\n key:string;\r\n order:number;\r\n}\r\ntype PluginDataType = {\r\n access : string[];\r\n};\r\nlet thePluginData: PluginDataType;\r\n\r\nexport function getPluginData(){\r\n return thePluginData;\r\n}\r\nclass EmailPrefrence extends React.Component<{}, {userId:string}> {\r\n child: React.RefObject;\r\n \r\n constructor(props: {}) {\r\n super(props);\r\n this.state = {\r\n userId: '',\r\n };\r\n this.child = React.createRef();\r\n }\r\n\r\n componentDidMount() {\r\n const userData = AuthService.getUserDetails();\r\n if (!userData) return;\r\n this.setState({userId: userData.userid});\r\n }\r\n\r\n hasAccess=AuthService.doesUserHaveAccess(thePluginData.access);\r\n\r\n updatePrefrence = (listToUpdate:number[]) => {\r\n const userData = AuthService.getUserDetails();\r\n if (!userData) return;\r\n const data = {\r\n EmailTemplateIds: listToUpdate,\r\n UserId: userData.userid,\r\n };\r\n EntityHelper.Update(\"Emailpreferences\", data)\r\n .then((res) => {\r\n StatusBarHelper.showAlert('success', \"Notification Preference updated successfully.\");\r\n })\r\n .catch((err) => {\r\n StatusBarHelper.showAlert('error', err);\r\n });\r\n };\r\n\r\n submitHandeler = async () => {\r\n if (!this.child.current) return;\r\n await this.child.current.updatePrefrence();\r\n StatusBarHelper.showAlert('success', \"Notification Preference updated successfully.\");\r\n }\r\n\r\n render() {\r\n return (\r\n \r\n
\r\n

Profile

\r\n
\r\n\r\n
\r\n
\r\n\r\n
    \r\n \r\n
\r\n
\r\n\r\n
\r\n\r\n \r\n \r\n
\r\n
\r\n \r\n Update\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n );\r\n }\r\n}\r\nfunction EditUserTabs({ userId, child}: {userId: string,child:any}) {\r\n\r\n return (\r\n <>\r\n \r\n \r\n )\r\n}\r\nexport default function (pluginData: PluginDataType){\r\n const pluginId = \"email-preference\";\r\n thePluginData = pluginData;\r\n const x = new ExtensionsWrapper(pluginId);\r\n \r\n x.registerRoute(\"/profile/email-prefrence\", EmailPrefrence, false);\r\n \r\n x.registerFilter(\"AdminEditUserTabsFilter\", function (tabs: TabModel[]){\r\n return tabs.push({\r\n eventKey: \"preference\",\r\n title: \"Notification Preferences\",\r\n component: EditUserTabs\r\n });\r\n });\r\n x.registerFilter(\"UserProfileMenuFilter\", function (menu: MenuModel[]){\r\n return menu.push({\r\n to: \"/profile/email-prefrence\",\r\n name: \"Notification Preferences\",\r\n key:\"email-prefrence\",\r\n order:4\r\n });\r\n });\r\n}\r\n","import React from \"react\";\r\nimport { Table } from \"react-bootstrap\";\r\nimport EntityHelper from \"../../../Helpers/EntityHelper\";\r\n// import { getUserDetails } from \"../../../Services/Authentication\";\r\nimport StatusBarHelper from \"../../../Helpers/StatusBarHelper\";\r\nimport AuthService from \"../../../Services/AuthService\";\r\nimport ExtHelper from \"../Helpers/HelperMethods\";\r\nimport EmailPreferenceService from \"./EmailPreferenceService\";\r\nimport { EnvService as process} from '../../../Services/EnvService';\r\nimport _HttpHelper from \"../../../Helpers/HttpHelper\";\r\n\r\nclass TheState {\r\n preferenceState : EmailPreferenceType[] = [];\r\n\r\n initialState: EmailPreferenceType[] = [];\r\n\r\n UsersId = '';\r\n hasAccess=true;\r\n preferenceUpdated=false;\r\n}\r\ninterface TheProp {\r\n UsersId: string;\r\n hasAccess:boolean;\r\n // updateData:(listToUpdate: any)=>void;\r\n // childFunc: React.MutableRefObject\r\n}\r\ntype EmailTemplateType = { value: {IsSystem: boolean, EmailTemplateName: string, Id: number, IsSelected: boolean }[] };\r\ntype EmailPreferenceType = {IsSystem: boolean, Id: number, EmailTemplateName: string, IsSelected: boolean, IsNotificationRequired?: boolean, DisplayName?: string, ModifiedOn?: string, ModifiedBy?: string};\r\n\r\ntype EmailExculdedType = { value: { UserId: string, Id: string, OptOutEmailPrefrenceId: string }[] };\r\n\r\nexport class EmailPrefrenceComponent extends React.Component {\r\n listToUpdate: unknown[] = [];\r\n \r\n listToUpdateNotification: unknown[] = [];\r\n\r\n constructor(props: TheProp) {\r\n super(props);\r\n this.state = {\r\n preferenceState: [],\r\n initialState: [],\r\n UsersId: props.UsersId,\r\n hasAccess:props.hasAccess,\r\n preferenceUpdated:false\r\n };\r\n }\r\n\r\n componentDidMount() {\r\n if (this.props.UsersId) {\r\n //this.setState({ UsersId: this.props.UsersId });\r\n this.getEmailPrefrenceByUserId();\r\n }\r\n }\r\n\r\n excludedIdArr: string[] = [];\r\n\r\n getAllEmailTemplate = (excludedId: string) => {\r\n this.excludedIdArr = excludedId.length ? excludedId.split(\",\") : [];\r\n EntityHelper.GetAll(\"EmailTemplate\")\r\n .then((res: EmailTemplateType) => {\r\n let temp2 = res.value;\r\n temp2 = temp2.map((ele) => {\r\n ele.IsSelected = true;\r\n return ele;\r\n });\r\n if (this.excludedIdArr.length >= 1) {\r\n this.excludedIdArr.forEach((e) => {\r\n const index = temp2.findIndex((ele) => {\r\n return ele.Id === parseInt(e);\r\n });\r\n if (index >= 0) {\r\n temp2[index].IsSelected = false;\r\n }\r\n });\r\n }\r\n\r\n this.setState({ preferenceState: temp2 });\r\n })\r\n .catch((err) => {\r\n StatusBarHelper.showAlert('error', err);\r\n });\r\n };\r\n\r\n getAllRecord = () => {\r\n const userData = AuthService.getUserDetails();\r\n EntityHelper.GetAll(\"Emailpreferences\", `UserId eq ${userData?.userid}`)\r\n .then((res: EmailExculdedType) => {\r\n if (res.value.length) {\r\n localStorage.setItem(\"OptOutEmailPrefrenceIndexId\", res.value[0].Id);\r\n this.listToUpdate = res.value[0].OptOutEmailPrefrenceId.split(\",\");\r\n this.getAllEmailTemplate(res.value[0].OptOutEmailPrefrenceId);\r\n } else {\r\n if (localStorage.getItem(\"OptOutEmailPrefrenceIndexId\")) {\r\n localStorage.removeItem(\"OptOutEmailPrefrenceIndexId\");\r\n }\r\n this.getAllEmailTemplate(\"\");\r\n }\r\n })\r\n .catch((err) => {\r\n StatusBarHelper.showAlert('error', err);\r\n });\r\n };\r\n\r\n getEmailPrefrenceByUserId = () => {\r\n const data = {\r\n UserId: this.state.UsersId\r\n };\r\n\r\n EmailPreferenceService.GetEmailPreferencesbyUserId(\"Emailpreferences\", data)\r\n .then((res: EmailPreferenceType[]) => {\r\n // this.state.prefrenceState = res;\r\n const arr = res.map((ele: EmailPreferenceType, index: number) => {\r\n ele.Id = index;\r\n if (ele.IsSelected === null) ele.IsSelected = false;\r\n if (ele.IsNotificationRequired === null) ele.IsNotificationRequired = false; \r\n return ele;\r\n });\r\n this.setState({ preferenceState: arr, initialState: arr.map((e: EmailPreferenceType) => ({...e})) });\r\n })\r\n .catch((err: string) => {\r\n StatusBarHelper.showAlert('error', err);\r\n });\r\n }\r\n\r\n changePrefrence = (ele: unknown, id: number, i: number, eleName:string, isChecked:boolean) => {\r\n const a = this.listToUpdate.indexOf(id.toString());\r\n if (a >= 0 && this.listToUpdate.length) {\r\n this.listToUpdate.splice(this.listToUpdate.indexOf(id), 1);\r\n } else {\r\n this.listToUpdate.push(id);\r\n }\r\n this.setState((state, props) => {\r\n if (state.preferenceState) {\r\n if (eleName === 'prefrence') state.preferenceState[i].IsSelected = isChecked;\r\n if (eleName === 'notification') state.preferenceState[i].IsNotificationRequired = isChecked;\r\n }\r\n return {\r\n preferenceState: state.preferenceState,\r\n };\r\n });\r\n this.setState({preferenceUpdated:true})\r\n };\r\n\r\n createUserPrefrence = () => {\r\n const userData = AuthService.getUserDetails();\r\n if (userData) {\r\n const data = {\r\n UserId: userData.userid,\r\n OptOutEmailPrefrenceId: this.listToUpdate.join(\",\"),\r\n };\r\n EntityHelper.Create(\"EmailExculded\", data)\r\n .then((res: string) => {\r\n localStorage.setItem(\"OptOutEmailPrefrenceIndexId\", res);\r\n })\r\n .catch((err) => {\r\n StatusBarHelper.showAlert('error', err);\r\n });\r\n }\r\n };\r\n\r\n updatePrefrence = () => {\r\n const userData = AuthService.getUserDetails();\r\n if (!userData) return;\r\n const tempArr = this.state.preferenceState;\r\n if (JSON.stringify(tempArr) === JSON.stringify(this.state.initialState)){\r\n console.log(\"Email preferences not changed, no api request will be made.\");\r\n return;\r\n }\r\n // to remove unnecessary key DisplayName etc\r\n const dataToSend = tempArr.map(({\r\n DisplayName, ModifiedOn, EmailTemplateName, Id, ModifiedBy, ...keepAttrs\r\n }) => keepAttrs);\r\n const data = {\r\n EmailPreferences: dataToSend,\r\n UserId: this.props.UsersId,\r\n };\r\n \r\n // EmailPreferenceService.UpdateEmailPrefrence(\"Emailpreferences\", data)\r\n // .then((res: unknown) => {\r\n // this.getEmailPrefrenceByUserId();\r\n // return res;\r\n // })\r\n // .catch((err: string) => {\r\n // StatusBarHelper.showAlert('error', err);\r\n // });\r\n const requestOptions = AuthService.authHeader();\r\n return new Promise((res) => {\r\n _HttpHelper.post(`${process.env.REACT_APP_API_INTERACT}/Emailpreferences/savepreferences`, data, requestOptions)\r\n .then((a:any) => {\r\n res(a);\r\n });\r\n });\r\n };\r\n\r\n\r\n render() {\r\n return (\r\n <>\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n { \r\n this.state.preferenceState.map((ele, i) => (\r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n ))\r\n }\r\n \r\n \r\n
Template NameEmailPushUpdated ByUpdated On
\r\n {ele.EmailTemplateName}\r\n \r\n \r\n \r\n \r\n\r\n \r\n {ele.DisplayName ? ele.DisplayName : 'N/A'}\r\n \r\n {ExtHelper.getTimeZoneDate((ele.ModifiedOn+'').slice(0, -1))}\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n );\r\n }\r\n}\r\n","import { L10n } from \"@syncfusion/ej2-base\";\r\n\r\nL10n.load({\r\n 'en-US': {\r\n grid: {\r\n EmptyRecord: 'No records to display.'\r\n },\r\n uploader: {\r\n uploadSuccessMessage: \"File added successfully.\",\r\n Browse: \"Browse\"\r\n }\r\n \r\n }\r\n});","import { Column } from \"@syncfusion/ej2-react-grids\";\r\nimport { TheGridColumnProp } from \"./Grids\";\r\n\r\nexport class GridHelper {\r\n static setOrderedColumns = (columns:Column[], gridId?:string) => {\r\n const fields: string[] = [];\r\n columns.forEach(c => {\r\n if (c.field) { fields.push(c.field); }\r\n }); \r\n localStorage.setItem(`columnsOrder-${gridId}`, JSON.stringify(fields));\r\n }\r\n\r\n static getColumns = (gridSettingJSON:React.ReactElement[], gridId?:string):React.ReactElement[] => {\r\n const orderdedItems = [...gridSettingJSON];\r\n if (localStorage.getItem(`columnsOrder-${gridId}`)) {\r\n const columnFields = JSON.parse(localStorage.getItem(`columnsOrder-${gridId}`) || '[]');\r\n\r\n orderdedItems.sort((a, b) => { \r\n return columnFields.indexOf(a.props.field) - columnFields.indexOf(b.props.field);\r\n });\r\n }\r\n return orderdedItems;\r\n }\r\n}","/**\r\n * Version 1.0\r\n */\r\nimport React from 'react';\r\nimport {\r\n ActionEventArgs,\r\n Column, ColumnDirective, ColumnModel, Selection, ColumnsDirective,\r\n Filter, Grid, GridComponent, Group, IFilterUI, Inject, Page,\r\n PageSettingsModel, Sort, GridModel, DetailRow, Search, Resize, ExcelExport, Toolbar, ContextMenu, Reorder, IFilter\r\n} from '@syncfusion/ej2-react-grids';\r\n \r\nimport '@syncfusion/ej2-base/styles/material.css';\r\nimport '@syncfusion/ej2-buttons/styles/material.css';\r\nimport '@syncfusion/ej2-calendars/styles/material.css';\r\nimport '@syncfusion/ej2-dropdowns/styles/material.css';\r\nimport '@syncfusion/ej2-inputs/styles/material.css';\r\nimport '@syncfusion/ej2-navigations/styles/material.css';\r\nimport '@syncfusion/ej2-popups/styles/material.css';\r\nimport '@syncfusion/ej2-splitbuttons/styles/material.css';\r\nimport '@syncfusion/ej2-react-grids/styles/material.css';\r\nimport { DataManager, ODataV4Adaptor } from '@syncfusion/ej2-data';\r\nimport '../../../Resource/en-US';\r\nimport { GridHelper } from './GridHelper';\r\nimport AuthService from '../../../Services/AuthService';\r\n\r\nexport interface ContextMenuItem {\r\n text: string;\r\n icon: string;\r\n name: string;\r\n display: string;\r\n subitems?: ContextMenuItem[];\r\n }\r\n \r\nexport interface SortSettingsModel {\r\n columns?: [{\r\n field?: string;\r\n direction?: 'Ascending' | 'Descending';\r\n }];\r\n }\r\n \r\nexport interface FilterSettingsModel {\r\n columns?: [{\r\n field?: string;\r\n operator?: string;\r\n value?: string | number | Date | boolean;\r\n type?: string;\r\n }];\r\n currentGridDetails?: {[key: string]: string | boolean | number};\r\n type?: 'FilterBar' | 'Excel' | 'Menu' | 'CheckBox';\r\n mode?: 'OnEnter' | 'Immediate';\r\n \r\n operators?: {\r\n stringOperator?: {\r\n [key: string]: Record;\r\n }[];\r\n numberOperator?: {\r\n [key: string]: Record;\r\n }[];\r\n dateOperator?: {\r\n [key: string]: Record;\r\n }[];\r\n dateTimeOperator?: {\r\n [key: string]: Record;\r\n }[];\r\n booleanOperator?: {\r\n [key: string]: Record;\r\n }[];\r\n };\r\n }\r\n \r\nexport interface GroupSettingsModel {\r\n columns?: string[];\r\n }\r\n \r\nexport interface SelectionSettingsModel {\r\n mode?: 'Cell' | 'Row' | 'Both';\r\n type?: 'Single' | 'Multiple';\r\n checkboxOnly?: boolean;\r\n persistSelection?: boolean;\r\n checkboxMode?: 'Default' | 'ResetOnRowClick';\r\n enableSimpleMultiRowSelection?: boolean;\r\n enableToggle?: boolean;\r\n }\r\n \r\n interface TheProps {\r\n data?: any[];\r\n dataUrl?: string;\r\n sortable?: boolean;\r\n filterable?: boolean;\r\n pageable?: boolean;\r\n pageSize?: number;\r\n children?: React.ReactElement[] | React.ReactElement;\r\n server?: boolean;\r\n style?: React.CSSProperties;\r\n sortSettings?: SortSettingsModel;\r\n filterSettings?: FilterSettingsModel;\r\n groupSettings?: GroupSettingsModel;\r\n groupable?: boolean;\r\n allowGridResizing?: boolean;\r\n allowReordering?: boolean;\r\n reorderable?: boolean;\r\n selectionSettings?: SelectionSettingsModel;\r\n selectedRows?: (val: { selectedRecords: any[] }) => void;\r\n authHeadersForOData?: Object[];\r\n \r\n onDataStateChange?: (state: TheGridDataState, data: DataManager) => void;\r\n \r\n childGridSettings?: GridModel;\r\n childGridDataUrl?: string;\r\n tittleName?: string;\r\n exportToExcel?: boolean;\r\n isSerchable?: boolean;\r\n contextMenuAction?: (menuItems: ContextMenuItem[], rowData?: any) => ContextMenuItem[];\r\n contextMenuItems?: ContextMenuItem[];\r\n contextMenuOnClick?: (actionName: string, rowData: any) => void;\r\n allowTextWrap?:boolean;\r\n enableStickyHeader?:boolean\r\n pageSizes?: boolean | (number | string)[];\r\n gridId?:string\r\n allowColumsReorder?: boolean | undefined;\r\n }\r\n \r\nexport type TheGridDataState = ActionEventArgs\r\n \r\nexport interface TheGridCellProp {\r\n field?: string;\r\n dataItem: any;\r\n }\r\n /**\r\n @description State object to maintain toolbarOptions\r\n *\r\n * @author Tejaswi\r\n * @class TheState\r\n */\r\nclass TheState {\r\n toolbarOptions: object[] | undefined;\r\n \r\n contextMenuItems?: ContextMenuItem[]\r\n}\r\n \r\n/** se\r\n * Layout Grid Component\r\n */\r\nexport default class TheGrid extends React.Component{\r\n /* commented as we are getting the settings as property */\r\n \r\n // const filterSettings: FilterSettingsModel = {\r\n // mode: 'Immediate'\r\n // };\r\n grid: Grid | null = null;\r\n \r\n data?: DataManager;\r\n \r\n childGridData?: DataManager;\r\n \r\n pageSettings: PageSettingsModel;\r\n \r\n allMenuItems?: ContextMenuItem[];\r\n\r\n isDragFlag?: boolean;\r\n \r\n public ifilter: IFilter = { params: {format: '####'}};\r\n\r\n constructor(props: TheProps) {\r\n super(props);\r\n \r\n this.state = new TheState();\r\n this.pageSettings = { pageSize: props.pageable ? (props.pageSize || 10) : 0, pageSizes: props.pageable ? [\"All\",20, 50, 100] : false };\r\n \r\n if (props.dataUrl) {\r\n this.data = new DataManager({\r\n adaptor: new ODataV4Adaptor(),\r\n url: props.dataUrl,\r\n headers: props.authHeadersForOData\r\n }); \r\n }\r\n \r\n if (props.childGridDataUrl) {\r\n this.childGridData = new DataManager({\r\n adaptor: new ODataV4Adaptor(),\r\n url: props.childGridDataUrl,\r\n headers: props.authHeadersForOData\r\n }); \r\n }\r\n }\r\n \r\n componentDidMount(){\r\n this.getToolBarOptions(this.props);\r\n \r\n if (this.props.contextMenuItems && this.grid){\r\n this.allMenuItems = this.maptocontextMenuItems(this.props.contextMenuItems);\r\n \r\n this.grid.contextMenuItems = this.allMenuItems;\r\n }\r\n }\r\n \r\n maptocontextMenuItems=(menu: ContextMenuItem[]) => {\r\n const menucopy = [...menu];\r\n \r\n function mapThedata(menuprops: ContextMenuItem[]){\r\n menuprops.forEach((obj) => {\r\n const assobj: any = obj;\r\n \r\n assobj.text = obj.text;\r\n assobj.iconCss = obj.icon;\r\n // assobj.id = obj.name;\r\n \r\n if (obj.subitems && obj.subitems?.length > 0){\r\n mapThedata(obj.subitems);\r\n }\r\n \r\n assobj.items = obj.subitems;\r\n });\r\n }\r\n \r\n mapThedata(menucopy);\r\n \r\n return menucopy;\r\n }\r\n \r\n rowSelected = () => {\r\n const {selectedRows} = this.props;\r\n \r\n if (this.grid) {\r\n const selectedRecords: any[] = this.grid.getSelectedRecords();\r\n \r\n selectedRows && selectedRows({ selectedRecords });\r\n }\r\n };\r\n \r\n onDataStateChangeThen = (event: ActionEventArgs, data: DataManager) => {\r\n const {onDataStateChange} = this.props;\r\n \r\n onDataStateChange && onDataStateChange(event, data);\r\n };\r\n \r\n gridCellFormat = (p: any, cell?: ((props: TheGridCellProp) => JSX.Element)) => {\r\n const dataitem: TheGridCellProp = {\r\n field: p.column.field,\r\n dataItem: p\r\n };\r\n \r\n const { children } = this.props;\r\n let templateFn: ((props: TheGridCellProp) => JSX.Element) | undefined;\r\n \r\n if (Array.isArray(children)) {\r\n (children as React.ReactElement[]).find(a => {\r\n if ((p.column.field && p.column.field === a.props.field) \r\n || (p.column.headerText === a.props.title)) {\r\n templateFn = a.props.cell;\r\n \r\n return true;\r\n }\r\n \r\n return false;\r\n });\r\n }\r\n \r\n if (templateFn) { \r\n return
{templateFn(dataitem)}
;\r\n }\r\n \r\n return
{p.column.field}
;\r\n };\r\n \r\n templateOptions = (dataSource: TheGridDropdownData[],\r\n defaultItem?: TheGridDropdownData): IFilterUI => {\r\n defaultItem && dataSource.unshift(defaultItem);\r\n \r\n const templete: IFilterUI = {\r\n \r\n create: (args: { element: Element; column: Column }) => {\r\n const dd: HTMLSelectElement = document.createElement('select');\r\n \r\n dd.id = args.column.field;\r\n dd.style.width = '100%';\r\n \r\n dataSource.forEach((d) => {\r\n const option: HTMLOptionElement = document.createElement('option');\r\n \r\n option.value = d.value;\r\n option.innerHTML = d.label;\r\n dd.appendChild(option);\r\n });\r\n \r\n return dd;\r\n },\r\n write: (args: { element: Element; column: Column }) => {\r\n const listner = (arg: Event) => {\r\n if (this.grid && arg.currentTarget) {\r\n const elem: HTMLSelectElement = arg.currentTarget as HTMLSelectElement;\r\n \r\n if (elem.value !== '') {\r\n this.grid.filterByColumn(elem.id, 'equal', elem.value);\r\n } else {\r\n this.grid.removeFilteredColsByField(elem.id);\r\n }\r\n }\r\n };\r\n \r\n args.element.addEventListener('input', listner);\r\n },\r\n };\r\n \r\n return templete;\r\n };\r\n \r\n exportToExcel = () => {\r\n if (this.grid) {\r\n this.grid.excelExport();\r\n }\r\n }\r\n \r\n templateFunctionExe = (p: any) => {\r\n return this.gridCellFormat(p);\r\n }\r\n\r\n getToolBarOptions=(gridSettingsData: TheProps) => {\r\n const toolOptions: string[] = [];\r\n\r\n gridSettingsData.isSerchable && toolOptions.push('Search');\r\n\r\n if (this.grid && toolOptions.length > 0){\r\n this.grid.toolbar = toolOptions;\r\n\r\n if (this.grid.childGrid){\r\n this.grid.childGrid.toolbar = toolOptions;\r\n }\r\n }\r\n }\r\n\r\n contextOpen= async (arg?: any) => {\r\n if (arg?.rowInfo?.rowData && this.props.contextMenuItems && this.allMenuItems && this.props.contextMenuAction && this.grid){\r\n const menuItems = this.props.contextMenuAction(this.allMenuItems, arg?.rowInfo?.rowData);\r\n\r\n if (menuItems?.length > 0){\r\n this.grid.contextMenuModule.contextMenu.items = menuItems;\r\n } else {\r\n this.grid.contextMenuModule.contextMenu.items = [{text: \"No action\"}];\r\n }\r\n }\r\n }\r\n \r\n onMenuClick=(arg?: any) => {\r\n if (this.props.contextMenuOnClick){\r\n this.props.contextMenuOnClick(arg.item.properties.text, arg.rowInfo.rowData);\r\n }\r\n }\r\n \r\n beforeExcelExport() {\r\n if (this.grid) {\r\n // @ts-ignore: Unreachable code error\r\n this.grid.childGrid = null;\r\n }\r\n }\r\n\r\n excelExportComplete() {\r\n const {childGridSettings: childGridData} = this.props;\r\n\r\n if (this.grid && childGridData) {\r\n this.grid.childGrid = childGridData;\r\n }\r\n }\r\n\r\n showColumns(showColumns: string[]) {\r\n if (this.grid) {\r\n const { children } = this.props;\r\n const gridHeaderTittles: string[] = [];\r\n \r\n Array.isArray(children)\r\n && (children as React.ReactElement[])\r\n .forEach((c: React.ReactElement) => {\r\n c.props.title && gridHeaderTittles.push(c.props.title);\r\n });\r\n \r\n const hideColumns = gridHeaderTittles.filter(columnHeader => {\r\n return !showColumns.includes(columnHeader);\r\n });\r\n \r\n this.grid.showColumns(showColumns);\r\n this.grid.hideColumns(hideColumns);\r\n }\r\n }\r\n \r\n isDraggingStarted = () => {\r\n this.isDragFlag = true;\r\n }\r\n \r\n shouldColumnsReorder = (evt: any) => {\r\n const shouldGridColumnsReorder = !this.props.allowColumsReorder ? true : this.props.allowColumsReorder; \r\n if (this.grid) {\r\n if (evt.requestType === \"reorder\" && this.isDragFlag && shouldGridColumnsReorder){\r\n const columns = this.grid.getColumns();\r\n GridHelper.setOrderedColumns(columns, this.props.gridId);\r\n }\r\n }\r\n }\r\n\r\n removeChildrenFromProps=(nextProps:TheProps):TheProps => {\r\n const propsCopy = {...nextProps};\r\n propsCopy.children = undefined;\r\n return propsCopy;\r\n }\r\n\r\n shouldComponentUpdate(nextProps: TheProps, nextState: TheState) {\r\n const oldProps = this.removeChildrenFromProps(this.props);\r\n const newProps = this.removeChildrenFromProps(nextProps);\r\n if (JSON.stringify(nextState) === JSON.stringify(this.state) && JSON.stringify(oldProps) === JSON.stringify(newProps)) return false; return true;\r\n }\r\n\r\n getUpdatedChildGridChanges = (event: any, data: DataManager) => {\r\n if (event) { event.childGrid.dataSource.dataSource.headers = [AuthService.authHeader()]; }\r\n }\r\n \r\n render() {\r\n const {children} = this.props;\r\n const {\r\n pageable, groupable, sortable, data, filterable, filterSettings, sortSettings, groupSettings, allowReordering,\r\n allowGridResizing, selectionSettings, style, childGridSettings: childGridData, allowTextWrap, enableStickyHeader\r\n } = this.props;\r\n \r\n return (\r\n <>\r\n {\r\n this.grid = g;\r\n }}\r\n allowPaging={pageable}\r\n allowGrouping={groupable}\r\n allowSorting={sortable}\r\n allowReordering={allowReordering || true}\r\n allowFiltering={filterable}\r\n pageSettings={this.pageSettings}\r\n actionBegin={(event) => this.onDataStateChangeThen(event as ActionEventArgs, this.data as unknown as DataManager)}\r\n detailDataBound={this.getUpdatedChildGridChanges}\r\n filterSettings={filterSettings}\r\n sortSettings={sortSettings}\r\n groupSettings={groupSettings}\r\n allowResizing={allowGridResizing || true}\r\n selectionSettings={selectionSettings}\r\n checkBoxChange={this.rowSelected}\r\n style={style}\r\n /* commented as export to excel is handled in backend */\r\n // allowExcelExport={exportToExcel}\r\n // beforeExcelExport={() => this.beforeExcelExport()} \r\n // excelExportComplete={() => this.excelExportComplete()}\r\n contextMenuOpen={(evt) => this.contextOpen(evt)}\r\n contextMenuClick={this.onMenuClick}\r\n contextMenuItems={this.state.contextMenuItems}\r\n allowTextWrap={allowTextWrap}\r\n enableStickyHeader={enableStickyHeader}\r\n actionComplete={this.shouldColumnsReorder}\r\n columnDragStart={this.isDraggingStarted}\r\n >\r\n \r\n {Array.isArray(children) \r\n && (GridHelper.getColumns(children, this.props.gridId) as React.ReactElement[])\r\n .map((c: React.ReactElement, i: number) => {\r\n const colPropertes: ColumnModel = {\r\n headerText: c.props.title ? c.props.title : undefined,\r\n field: c.props.field ? c.props.field : undefined,\r\n width: c.props.width ? c.props.width : undefined,\r\n type: c.props.type ? c.props.type : undefined,\r\n format: c.props.format ? c.props.format : undefined, \r\n // @ts-ignore\r\n template: c.props.cell ? this.templateFunctionExe : (c.props.template || undefined),\r\n // template: c.props.template,\r\n isPrimaryKey: c.props.isPrimaryKey ? c.props.isPrimaryKey : false,\r\n allowFiltering: c.props.filterable !== undefined ? c.props.filterable : true,\r\n visible: c.props.visible,\r\n allowResizing: c.props.allowResizing || true,\r\n customAttributes: c.props.customAttributes,\r\n filterBarTemplate: (c.props.data && c.props.filter === 'dropdown' ? this.templateOptions(c.props.data, { label: 'Not Selected', value: '' }) : undefined),\r\n allowSorting: c.props.allowSorting !== undefined ? c.props.allowSorting : true,\r\n minWidth: c.props.minWidth ? c.props.minWidth : undefined,\r\n filter: c.props.type === 'number' ? this.ifilter : {}\r\n };\r\n \r\n Object.keys(colPropertes).forEach((b) => {\r\n (colPropertes[b as keyof (ColumnModel)] === undefined) \r\n && delete colPropertes[b as keyof (ColumnModel)];\r\n });\r\n \r\n const {\r\n headerText, field, width, type, format, template, isPrimaryKey,\r\n allowFiltering, visible, allowResizing, customAttributes, filterBarTemplate, allowSorting, minWidth, filter\r\n }: ColumnModel = colPropertes;\r\n \r\n return (\r\n \r\n );\r\n })}\r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n }\r\n}\r\n \r\nexport interface TheGridDropdownData {\r\n label: string;\r\n value: any;\r\n }\r\n \r\nexport interface TheGridColumnProp {\r\n type?: string;\r\n title?: string;\r\n field?: string;\r\n width?: string;\r\n filterable?: boolean;\r\n filter?: 'text' | 'numeric' | 'boolean' | 'date' | 'dropdown';\r\n format?: string;\r\n data?: TheGridDropdownData[];\r\n cell?: (props: TheGridCellProp) => JSX.Element;\r\n template?: string;\r\n allowResizing?: boolean;\r\n customformat?: { template: string; props: { [key: string]: string } }[];\r\n customAttributes?:{ [key: string]: string };\r\n isPrimaryKey?: boolean;\r\n visible?: boolean;\r\n allowSorting?:boolean;\r\n minWidth?:string;\r\n }\r\n \r\nexport type childGridProps = GridModel\r\n/**\r\n *\r\n *\r\n * @author Tejaswi\r\n * @export\r\n * @param {TheGridColumnProp} prop\r\n * @return {*} \r\n */\r\n \r\nexport function TheGridColumn(prop: TheGridColumnProp) {\r\n // for some reason, when render the out here it is not working\r\n // hence we r sending blank out here, and then in the TheGrid compoennt\r\n // we r rendering the children manually \r\n \r\n return (\r\n <>\r\n );\r\n}","import React from \"react\";\r\nimport {\r\n HtmlEditor,\r\n Image,\r\n Inject,\r\n QuickToolbar,\r\n Link as link,\r\n RichTextEditorComponent,\r\n Toolbar,\r\n} from \"@syncfusion/ej2-react-richtexteditor\";\r\nimport { Modal, Button, CloseButton } from \"react-bootstrap\";\r\nimport { Link } from \"react-router-dom\";\r\nimport TheGrid, { TheGridCellProp, TheGridColumn } from \"../../../Library/Components/Grids/Grids\";\r\n\r\nimport \"@syncfusion/ej2-richtexteditor/styles/material.css\";\r\nimport { DataManager } from \"@syncfusion/ej2-data\";\r\nimport { ActionEventArgs } from \"@syncfusion/ej2-react-grids\";\r\nimport StatusBarHelper from \"../../../Helpers/StatusBarHelper\";\r\nimport ThemeManager from \"../../../Models/Core/ThemeManager\";\r\nimport ExtensionsWrapper from \"../../../Models/Core/ExtensionWrapper\";\r\nimport { ExecuteHook } from \"../../../Models/Core/Hooks\";\r\nimport AuthService from \"../../../Services/AuthService\";\r\nimport ConfigService from \"../../../Services/ConfigService\";\r\nimport _HttpHelper from \"../../../Helpers/HttpHelper\";\r\n// import { PageLoadHook } from \"../../../Helpers/Core/Hooks\";\r\nimport { EnvService as process} from '../../../Services/EnvService';\r\nimport EntityHelper from \"../../../Helpers/EntityHelper\";\r\nimport ConfirmModalHelperNew from \"../../../Helpers/ConfirmModalHelperNew\";\r\nimport ExtHelper from \"../Helpers/HelperMethods\";\r\n\r\ntype PluginDataType = {\r\n access : string[];\r\n};\r\nlet thePluginData: PluginDataType;\r\nexport function getPluginData(){\r\n return thePluginData;\r\n}\r\n\r\nclass TheState {\r\n isOpen = false;\r\n\r\n // notesContent = \"Sample content\";\r\n\r\n templateName = \"\";\r\n\r\n subject = \"\";\r\n notificationText = \"\";\r\n content = \"\";\r\n\r\n isAdd = false;\r\n\r\n templateId = '';\r\n\r\n isConfirModalVisble = false;\r\n\r\n isLoading = true;\r\n\r\n selectedRecordIds: any[] = [];\r\n\r\n ccEmail: string|null = null;\r\n\r\n isSystem: boolean|null = null;\r\n\r\n isActive: boolean|null = null;\r\n\r\n errMsg = {\r\n templateNameErr: '',\r\n templateSubjectErr: '',\r\n templateNotificationErr:''\r\n }\r\n\r\n isFormSubmited= false\r\n}\r\nexport class EmailTemplatePage extends React.Component<{}, TheState> {\r\n private rteObj: any = \"\";\r\n\r\n grid: TheGrid | null | undefined;\r\n dateFormat: string | undefined = ConfigService.get('FrontendDateFormat');\r\n\r\n interactBaseUrl =\"\";\r\n odataBaseUrl = \"\";\r\n\r\n constructor(props: {}) {\r\n super(props);\r\n this.state = {\r\n isOpen: false,\r\n // notesContent: \"Sample content\",\r\n templateName: \"\",\r\n subject: \"\",\r\n notificationText: \"\",\r\n content: \"\",\r\n isAdd: false,\r\n templateId: '',\r\n isConfirModalVisble: false,\r\n isLoading: false,\r\n selectedRecordIds: [],\r\n isActive: true,\r\n errMsg: {\r\n templateNameErr: '',\r\n templateSubjectErr: '',\r\n templateNotificationErr:''\r\n },\r\n isSystem: null,\r\n ccEmail: null,\r\n isFormSubmited: false\r\n };\r\n this.interactBaseUrl = process.env.REACT_APP_API_INTERACT;\r\n this.odataBaseUrl = process.env.REACT_APP_ODATA_VIEW;\r\n }\r\n\r\n isOpen = false;\r\n\r\n\r\n\r\n\r\n\r\n openModal = () => {\r\n this.setState({ isOpen: true, isAdd: true });\r\n };\r\n\r\n closeModal = () => {\r\n this.setState({\r\n isOpen: false,\r\n isConfirModalVisble: false,\r\n templateName: \"\",\r\n subject: \"\",\r\n notificationText: \"\",\r\n content: \"\",\r\n templateId: '',\r\n ccEmail: \"\",\r\n isSystem: null,\r\n errMsg: {\r\n templateNameErr: '',\r\n templateSubjectErr: '',\r\n templateNotificationErr:''\r\n },\r\n isFormSubmited: false\r\n });\r\n };\r\n\r\n editRecord = (Name: string, Subject: string, notificationText: string, Content: string, templateId: string, cc: string|null, isSystem: boolean|null, isActive: boolean|null) => {\r\n this.setState({\r\n isOpen: true,\r\n templateName: Name,\r\n subject: Subject,\r\n content: Content,\r\n notificationText: notificationText,\r\n isAdd: false,\r\n templateId: templateId,\r\n ccEmail: cc,\r\n isSystem\r\n });\r\n };\r\n\r\n deleteConfirm = (Id: string) => {\r\n this.setState({ isConfirModalVisble: true, templateId: Id });\r\n }\r\n\r\n deleteRecord = () => {\r\n this.setState({ isLoading: true });\r\n EntityHelper.Delete(\"EmailTemplate\", this.state.templateId).then((res: any) => {\r\n StatusBarHelper.showAlert('success', res);\r\n this.setState({ isLoading: false });\r\n this.closeModal();\r\n this.handleRefresh()\r\n }).catch(err => {\r\n this.setState({ isConfirModalVisble: false, isLoading: false });\r\n this.closeModal();\r\n StatusBarHelper.showAlert('error', err);\r\n });\r\n };\r\n\r\n validateInput = (data: any, errFlag: boolean) => {\r\n // eslint-disable-next-line guard-for-in, no-restricted-syntax\r\n for (const dataKey in data) {\r\n if (dataKey === 'EmailTemplateName' && data[dataKey].length <= 0) {\r\n errFlag = true;\r\n \r\n this.setState({ templateName: data[dataKey] });\r\n this.setState(prevState => {\r\n const errObj = { ...prevState.errMsg };\r\n errObj.templateNameErr = 'Please enter Template Name.';\r\n return { ...prevState, errMsg: errObj };\r\n });\r\n } else if (dataKey === 'EmailTemplateName' && data[dataKey].length > 100){\r\n errFlag = true;\r\n this.setState(prevState => {\r\n const errObj = { ...prevState.errMsg };\r\n errObj.templateNameErr = 'Please enter Max 100 charactors.';\r\n return { ...prevState, errMsg: errObj };\r\n });\r\n } else if (dataKey === 'EmailTemplateName'){\r\n \r\n this.setState({ templateName: data[dataKey] });\r\n this.setState(prevState => {\r\n const errObj = { ...prevState.errMsg };\r\n errObj.templateNameErr = '';\r\n return { ...prevState, errMsg: errObj };\r\n });\r\n }\r\n\r\n if (dataKey === 'EmailSubject' && data[dataKey].length <= 0) {\r\n errFlag = true;\r\n this.setState({ subject: data[dataKey] });\r\n this.setState(prevState => {\r\n const errObj = { ...prevState.errMsg };\r\n errObj.templateSubjectErr = 'Please enter Email Subject.';\r\n return { ...prevState, errMsg: errObj };\r\n });\r\n }\r\n else if (dataKey === 'EmailSubject' && data[dataKey].length > 250){\r\n errFlag = true;\r\n this.setState(prevState => {\r\n const errObj = { ...prevState.errMsg };\r\n errObj.templateSubjectErr = 'Please enter Max 250 charactors.';\r\n return { ...prevState, errMsg: errObj };\r\n });\r\n } \r\n else if (dataKey === 'EmailSubject'){\r\n this.setState({ subject: data[dataKey] });\r\n this.setState(prevState => {\r\n const errObj = { ...prevState.errMsg };\r\n errObj.templateSubjectErr = '';\r\n return { ...prevState, errMsg: errObj };\r\n });\r\n } \r\n\r\n // if (dataKey === 'NotificationText' && data[dataKey].length <= 0) {\r\n // errFlag = true;\r\n // this.setState(prevState => {\r\n // const errObj = { ...prevState.errMsg };\r\n // errObj.templateNotificationErr = 'Notification Required';\r\n // return { ...prevState, errMsg: errObj };\r\n // });\r\n //}\r\n }\r\n return errFlag;\r\n }\r\n\r\n saveTemplate = () => {\r\n let errFlag = false;\r\n this.setState({isFormSubmited: true});\r\n const data = {\r\n EmailTemplateName: this.state.templateName,\r\n EmailSubject: this.state.subject,\r\n NotificationText: this.state.notificationText,\r\n TemplateContent: this.rteObj.value,\r\n IsSystem: this.state.isSystem,\r\n CCEmail: this.state.ccEmail,\r\n IsActive: true\r\n };\r\n errFlag = this.validateInput(data, errFlag);\r\n if (!errFlag) {\r\n this.setState({ isLoading: true });\r\n\r\n const requestOptions = AuthService.authHeader();\r\n\r\n _HttpHelper.post(`${this.interactBaseUrl}/EmailTemplate/CreateOrUpdate`, { \"emailTemplate\": data }, requestOptions)\r\n .then((a: any) => {\r\n StatusBarHelper.showAlert('success', \"Email Template created successfully.\");\r\n this.setState({ isLoading: false });\r\n this.closeModal();\r\n this.handleRefresh();\r\n }).catch((err) => {\r\n this.setState({ isLoading: false });\r\n StatusBarHelper.showAlert('error', err);\r\n });\r\n }\r\n }\r\n\r\n updateTemplate = () => {\r\n let errFlag = false;\r\n this.setState({isFormSubmited: true});\r\n\r\n const data = {\r\n EmailTemplateName: this.state.templateName,\r\n EmailSubject: this.state.subject,\r\n NotificationText: this.state.notificationText,\r\n TemplateContent: this.rteObj.value,\r\n IsSystem: this.state.isSystem,\r\n Id: this.state.templateId,\r\n CCEmail: this.state.ccEmail,\r\n IsActive: this.state.isActive\r\n };\r\n\r\n errFlag = this.validateInput(data, errFlag);\r\n if (!errFlag) {\r\n const requestOptions = AuthService.authHeader();\r\n this.setState({ isLoading: true });\r\n _HttpHelper.post(`${this.interactBaseUrl}/EmailTemplate/CreateOrUpdate`, { \"emailTemplate\": data }, requestOptions)\r\n .then((a: any) => {\r\n StatusBarHelper.showAlert('success', \"Email Template updated successfully.\");\r\n this.setState({ isLoading: false });\r\n this.closeModal();\r\n this.handleRefresh()\r\n }).catch((err) => {\r\n this.setState({ isLoading: false });\r\n StatusBarHelper.showAlert('error', err);\r\n });\r\n }\r\n }\r\n \r\n handleRefresh = () => {\r\n this.grid?.grid?.refresh()\r\n };\r\n\r\n reload = () => {\r\n if (this.rteObj) {\r\n this.rteObj.refreshUI();\r\n }\r\n }\r\n\r\n onActivateDeactivate = (activate: boolean) => {\r\n\r\n if (this.state.selectedRecordIds?.length <= 0){\r\n StatusBarHelper.showAlert('error', `Please select at least one record to ${activate ? \"activate\" : \"deactivate\"}.`);\r\n return;\r\n }\r\n \r\n const confirm = new ConfirmModalHelperNew(\r\n \"Confirm\", \r\n
Are you sure you want to {activate?\"Activate\":\"Deactivate\"} the selected record(s)?
, \r\n \"Yes\", \r\n () => {\r\n confirm.destroy();\r\n }, \r\n () => {\r\n confirm.destroy();\r\n \r\n this.setState({ isLoading: true });\r\n const data: any[] = [];\r\n \r\n this.state.selectedRecordIds.forEach(a => {\r\n data.push({...a, IsActive: activate, CreatedBy: undefined, CreatedOn: undefined, ModifiedBy: undefined, ModifiedOn: undefined});\r\n });\r\n \r\n const requestOptions = AuthService.authHeader();\r\n \r\n _HttpHelper.post(`${this.interactBaseUrl}/EmailTemplate/BulkUpdateEmailTemplates`, { EmailTemplates: data }, requestOptions)\r\n .then((a: any) => {\r\n StatusBarHelper.showAlert('success', `Email Template(s) ${activate ?\"Activated\":\"Deactivated\"} successfully.`); this.setState({ isLoading: false });\r\n this.closeModal();\r\n this.handleRefresh()\r\n }).catch((err) => {\r\n this.setState({ isLoading: false });\r\n StatusBarHelper.showAlert('error', err);\r\n });\r\n }, \r\n \"No\"\r\n );\r\n\r\n }\r\n\r\n onSelectedRows = (val: {selectedRecords: any[]}) => {\r\n this.setState({selectedRecordIds: val.selectedRecords});\r\n }\r\n\r\n getUpdatedGridChanges = (event: ActionEventArgs, data: DataManager) => {\r\n if (data) { data.dataSource.headers = [AuthService.authHeader()]; }\r\n }\r\n\r\n render() {\r\n return (\r\n \r\n \r\n
\r\n {this.state.isLoading && }\r\n
\r\n

Email Template

\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n Add Template\r\n \r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n (this.grid = g)}\r\n authHeadersForOData={[AuthService.authHeader()]}\r\n filterable\r\n filterSettings={{type: \"Menu\"}}\r\n selectionSettings={{mode: \"Row\", type: \"Multiple\", checkboxOnly: true, persistSelection: true }}\r\n selectedRows={this.onSelectedRows}\r\n allowTextWrap\r\n gridId=\"emailTemplateGrid212\"\r\n onDataStateChange={this.getUpdatedGridChanges}\r\n >\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n (\r\n \r\n {ExtHelper.getTimeZoneDate(p.dataItem.ModifiedOn)}\r\n \r\n \r\n )}\r\n type=\"date\"\r\n />\r\n \r\n (\r\n
\r\n this.editRecord(\r\n p.dataItem.EmailTemplateName,\r\n p.dataItem.EmailSubject,\r\n p.dataItem.NotificationText,\r\n p.dataItem.TemplateContent,\r\n p.dataItem.Id,\r\n p.dataItem.CCEmail,\r\n p.dataItem.IsSystem,\r\n p.dataItem.IsActive\r\n )}\r\n >\r\n\r\n \r\n \r\n
\r\n )}\r\n />\r\n \r\n\r\n\r\n
\r\n
\r\n
\r\n
\r\n {this.state.isOpen && (\r\n \r\n \r\n {this.state.isAdd?\"Add\":\"Edit\"} Email Template\r\n this.closeModal()} />\r\n \r\n \r\n
\r\n
\r\n \r\n {\r\n this.validateInput({ EmailTemplateName: e.target.value }, false); \r\n }}\r\n required\r\n disabled={!this.state.isAdd}\r\n />\r\n

{this.state.errMsg.templateNameErr}

\r\n
\r\n
\r\n \r\n {\r\n this.validateInput({ EmailSubject: e.target.value }, false); \r\n }}\r\n required\r\n />\r\n

{this.state.errMsg.templateSubjectErr}

\r\n
\r\n
\r\n \r\n this.setState({ notificationText: e.target.value })}\r\n required\r\n />\r\n

{this.state.errMsg.templateNotificationErr}

\r\n
\r\n
\r\n \r\n this.setState({ ccEmail: e.target.value })}\r\n required\r\n />\r\n

{this.state.errMsg.templateNotificationErr}

\r\n
\r\n
\r\n \r\n this.setState({ isSystem: e.target.checked })} checked={this.state.isSystem ? this.state.isSystem : undefined} />\r\n
\r\n
\r\n \r\n {\r\n this.rteObj = richtexteditor;\r\n }}\r\n created={() => { this.reload(); }}\r\n valueTemplate={this.state.content}\r\n >\r\n {/*
*/}\r\n\r\n \r\n\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {\r\n this.state.isAdd && (\r\n \r\n )\r\n }\r\n {\r\n !this.state.isAdd && (<>\r\n \r\n \r\n )\r\n }\r\n\r\n \r\n \r\n )}\r\n
\r\n \r\n );\r\n }\r\n}\r\n\r\nfunction AdminManagerMenu({ activeItem }: { activeItem: string }) {\r\n return (\r\n <>\r\n
  • \r\n Email Template\r\n
  • \r\n \r\n );\r\n}\r\n\r\nexport default function (pluginData: PluginDataType) {\r\n const pluginId = 'email-template-without-model';\r\n\r\n thePluginData=pluginData;\r\n\r\n const x = new ExtensionsWrapper(pluginId);\r\n x.registerHook(\"AdminManagerMenuHook\", AdminManagerMenu);\r\n x.registerRoute(\"/admin/email-template\", EmailTemplatePage, false,thePluginData.access);\r\n}\r\n","import HttpHelper from '../../../Helpers/HttpHelper';\r\nimport AuthService from '../../../Services/AuthService';\r\nimport { UserDetailsModel } from './UserModel';\r\nimport { EnvService as process} from '../../../Services/EnvService';\r\n\r\nexport default class UsersService {\r\n getUserProfile = async (userId: string) => {\r\n const prom = new Promise((res) => {\r\n HttpHelper.get(`${process.env.REACT_APP_API_USERENDPOINT}/Users/${userId}`, null, AuthService.authHeader())\r\n .then((a: any) => {\r\n res(a.data);\r\n });\r\n });\r\n return prom;\r\n }\r\n\r\n getUserDetails = () => {\r\n \r\n const prom = new Promise((res) => {\r\n HttpHelper.get(`${process.env.REACT_APP_API_AUTHTOKEN}/userinfo`, null, AuthService.authHeader())\r\n .then((a: any) => {\r\n res(a);\r\n });\r\n });\r\n return prom;\r\n }\r\n\r\n updateProfile=(data:UserDetailsModel) => {\r\n return new Promise((resolve, reject) => {\r\n HttpHelper.post(`${process.env.REACT_APP_API_USERENDPOINT}/UserProfile/UpdateUserProfile`, data, AuthService.authHeader()).then(res => {\r\n resolve(res);\r\n });\r\n });\r\n }\r\n\r\n getTimezone = () => {\r\n const prom = new Promise((res) => {\r\n HttpHelper.get(`${process.env.REACT_APP_API_USERENDPOINT}/TimeZone`, null, AuthService.authHeader())\r\n .then((a: any) => {\r\n res(a.data);\r\n });\r\n });\r\n return prom;\r\n }\r\n\r\n userProfileChangePassword = (data: any) => {\r\n const prom = new Promise((res) => {\r\n HttpHelper.post(`${process.env.REACT_APP_API_USERENDPOINT}/UserProfile/ChangePassword`, data, AuthService.authHeader()).then((a: any) => {\r\n res(a);\r\n });\r\n });\r\n return prom;\r\n }\r\n \r\n}","import React, { useEffect, useRef, useState } from 'react';\r\nimport validator from 'validator';\r\nimport StatusBarHelper from '../../../Helpers/StatusBarHelper';\r\nimport { ExecuteHook } from '../../../Models/Core/Hooks';\r\nimport ThemeManager from '../../../Models/Core/ThemeManager';\r\nimport UsersService from './UserProfileServices';\r\nimport AuthService from '../../../Services/AuthService';\r\n\r\nconst loader = require('../../../Resource/Images/ringloader.gif');\r\n\r\nexport default function ChangePass() {\r\n const [userName, setUserName] = useState();\r\n const [passwordData, setPasswordData] = useState({ currentPassword: '', newPassword: '', confirmPassword: ''});\r\n const [isFormSubmitted, setFormSubmitted] = useState(false);\r\n\r\n const [showLoader, setShowLoader] = useState(false);\r\n const formRef = useRef(null);\r\n\r\n\r\n useEffect(() => {\r\n const usersService = new UsersService();\r\n usersService.getUserDetails()\r\n .then((details: any) => {\r\n setUserName(details?.username);\r\n })\r\n },[]);\r\n\r\n\r\n const onFormSubmit = (e: React.FormEvent) => {\r\n e.preventDefault();\r\n setFormSubmitted(true);\r\n if (validator.isEmpty(passwordData.newPassword) || validator.isEmpty(passwordData.currentPassword) || validator.isEmpty(passwordData.confirmPassword) || passwordData.newPassword !== passwordData.confirmPassword) {\r\n return;\r\n }\r\n const data = { 'userName': userName, newPassword: passwordData.newPassword, oldPassword: passwordData.currentPassword };\r\n\r\n const usersService = new UsersService();\r\n setShowLoader(true);\r\n usersService.userProfileChangePassword(data).then(res => {\r\n setShowLoader(false);\r\n if (res.code >= 400) {\r\n StatusBarHelper.showAlert('error', res.message)\r\n } else {\r\n StatusBarHelper.showAlert('success', res.message);\r\n setTimeout(() => {\r\n AuthService.logout();\r\n }, 6000)\r\n }\r\n }).catch(err => {\r\n setShowLoader(false);\r\n StatusBarHelper.showAlert('error', err?.message);\r\n });\r\n }\r\n\r\n const inputChnageHandler = (e: React.ChangeEvent) => {\r\n const newVal = { ...passwordData, [e.target.name]: e.target.value };\r\n setPasswordData(newVal);\r\n }\r\n\r\n const validateControl = (propertyName: \"currentPassword\" | \"newPassword\" | \"confirmPassword\") => {\r\n let isInvalid = false;\r\n if (isFormSubmitted && validator.isEmpty(passwordData[propertyName])) {\r\n isInvalid = true;\r\n }\r\n return isInvalid;\r\n };\r\n\r\n const validatePasswordEqual = () => {\r\n let isInvalid = false;\r\n if (isFormSubmitted && !validator.isEmpty(passwordData.confirmPassword) && !validator.isEmpty(passwordData.newPassword) && passwordData.newPassword !== passwordData.confirmPassword) {\r\n isInvalid = true;\r\n }\r\n return isInvalid;\r\n };\r\n\r\n return (\r\n \r\n
    \r\n {showLoader && (\r\n\r\n
    setShowLoader(false)} onKeyUp={() => setShowLoader(false)}>\r\n\r\n \"\"\r\n\r\n
    \r\n\r\n )}\r\n
    \r\n

    Profile

    \r\n
    \r\n\r\n
    \r\n
    \r\n\r\n
      \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n

    Please enter Current Password.

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n

    Please enter New Password.

    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n

    Please enter Confirm Password.

    \r\n

    New Password and Confirm Password doesn’t match.

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n );\r\n}","import React, { useState, useEffect } from 'react';\r\nimport validator from 'validator';\r\n\r\nimport { DropDownListComponent } from '@syncfusion/ej2-react-dropdowns';\r\nimport UsersService from './UserProfileServices';\r\nimport ThemeManager from '../../../Models/Core/ThemeManager';\r\nimport { ExecuteHook } from '../../../Models/Core/Hooks';\r\nimport StatusBarHelper from '../../../Helpers/StatusBarHelper';\r\nimport { UserDetailsModel } from './UserModel';\r\nimport SessionHelper from '../../../Helpers/SessionHelper';\r\nconst loader = require('../../../Resource/Images/ringloader.gif');\r\n\r\nexport default function UserProfile() {\r\n const [userProfile, setUserProfile] = useState({});\r\n const [isReadOnly] = useState(true);\r\n const [name, setName] = useState('');\r\n const [timeZone, setTimezone] = useState();\r\n \r\n\r\n const [showLoader, setShowLoader] = useState(false);\r\n const [isFormSubmitted, setFormSubmitted] = useState(false);\r\n\r\n const usersService = new UsersService();\r\n\r\n const getTimezone = () => {\r\n usersService.getTimezone().then((res: any) => {\r\n const arr = [];\r\n for (const k in res) {\r\n const record = {\r\n label: res[k],\r\n key: k\r\n }\r\n arr.push(record);\r\n }\r\n setTimezone(arr);\r\n });\r\n };\r\n const getUserProfile = (userId: string) => {\r\n usersService.getUserProfile(userId).then(res => {\r\n setUserProfile(res.user);\r\n setName(res.user.userName);\r\n });\r\n };\r\n\r\n useEffect(() => { \r\n const userDetails = JSON.parse(SessionHelper.getItem(\"userDetails\") || \"{}\")\r\n\r\n getUserProfile(userDetails?.userid);\r\n getTimezone(); \r\n },[]);\r\n\r\n const inputChangeHandler = (e: React.ChangeEvent) => {\r\n\r\n const tempData = { ...userProfile, [e.target.name]: e.target.value };\r\n setUserProfile(tempData);\r\n };\r\n\r\n const getValue = (timeZoneProps: any) => {\r\n console.log(timeZoneProps.value);\r\n setUserProfile((val: any) => {\r\n const newVal = { ...val, timeZone: timeZoneProps.value };\r\n return newVal;\r\n });\r\n }\r\n\r\n const handleSubmit = async (evt: any) => {\r\n evt.preventDefault();\r\n const usersService = new UsersService();\r\n const data: UserDetailsModel = {\r\n id: userProfile.id,\r\n displayName: userProfile.displayName,\r\n firstName: userProfile.firstName,\r\n lastName: userProfile.lastName,\r\n email: userProfile.email,\r\n department: userProfile.department,\r\n timeZone: userProfile.timeZone,\r\n isActive: userProfile.isActive,\r\n enableExternalAccess: userProfile.enableExternalAccess,\r\n roles: [],\r\n userGroups: [],\r\n roleProfiles: [],\r\n isGlobalAccessEnabled: userProfile.isGlobalAccessEnabled\r\n };\r\n let isValidationFailed = false;\r\n setFormSubmitted(true);\r\n if (validator.isEmpty(data.firstName) || validator.isEmpty(data.lastName) || validator.isEmpty(data.department) || !validator.isEmail(data.email)) {\r\n isValidationFailed = true;\r\n }\r\n if (!isValidationFailed) {\r\n setShowLoader(true);\r\n usersService.updateProfile(data).then((res: any) => {\r\n setShowLoader(false);\r\n setFormSubmitted(false);\r\n // sbLayouts.hide();\r\n StatusBarHelper.showAlert('success', res.message);\r\n }).catch(err => {\r\n setShowLoader(false);\r\n\r\n });\r\n }\r\n };\r\n const validateControl = (propertyName: \"firstName\" | \"lastName\"|\"email\"|\"department\") => {\r\n let isInvalid = false;\r\n if (isFormSubmitted && validator.isEmpty(userProfile[propertyName])) {\r\n isInvalid = true;\r\n }\r\n return isInvalid;\r\n };\r\n\r\n const validateEmailFormat = () => {\r\n let isInvalid = false;\r\n if (isFormSubmitted && !validator.isEmpty(userProfile.email) && !validator.isEmail(userProfile.email)) {\r\n isInvalid = true;\r\n }\r\n return isInvalid;\r\n };\r\n\r\n const fields: object = { text: 'label', value: 'key' }\r\n\r\n return (\r\n \r\n {(userProfile.id && timeZone && timeZone?.length > 0) ?
    \r\n {showLoader && (\r\n\r\n
    setShowLoader(false)} onKeyUp={() => setShowLoader(false)}>\r\n\r\n \"\"\r\n\r\n
    \r\n\r\n )}\r\n
    \r\n

    Profile

    \r\n
    \r\n\r\n
    \r\n
    \r\n\r\n
      \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n

    Please enter First Name.

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n

    Please enter Last Name.

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n

    Please enter Department.

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n

    Please enter Email.

    \r\n

    Please Enter Valid Email Address.

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    :<>\r\n
    \r\n \"\"\r\n
    }\r\n
    \r\n );\r\n}\r\n\r\n","import React, { useEffect, useState } from 'react';\r\nimport { Link } from 'react-router-dom';\r\nimport Helper from '../../../Helpers/HelperMethods';\r\nimport ExtensionsWrapper from '../../../Models/Core/ExtensionWrapper';\r\nimport { executeFilter } from '../../../Models/Core/Filters';\r\nimport ChangePass from './ChangePass';\r\nimport UserProfile from './UserProfile';\r\nimport SessionHelper from '../../../Helpers/SessionHelper';\r\n\r\ninterface MenuModel {\r\n to: string;\r\n name: string;\r\n key:string;\r\n order:number;\r\n}\r\n\r\ntype PluginDataType = { profileBaseUrl: string };\r\n\r\nlet thePluginData: PluginDataType | undefined;\r\n\r\nexport function getPluginData() {\r\n return thePluginData;\r\n}\r\n\r\nfunction ProfileManagerManu({ activeItem }: { activeItem: string }) {\r\n\r\n const [profileMenu, setProfileMenu] = useState([{\r\n to: \"/profile\",\r\n name: \"Profile\",\r\n key:\"profile\",\r\n order:1\r\n }]);\r\n\r\n useEffect(() => { \r\n setProfileMenu((data) => {\r\n const menu = Helper.clone(data);\r\n\r\n const currentUserdetails=JSON.parse(SessionHelper.getItem(\"userDetails\")||\"{}\");\r\n if(currentUserdetails.ExternalAccess!==\"True\"){\r\n menu.push({\r\n to: \"/profile/changepass\",\r\n name: \"Change Password\",\r\n key:\"change-password\",\r\n order:2\r\n })\r\n }\r\n executeFilter(\"UserProfileMenuFilter\", menu);\r\n return menu;\r\n });\r\n }, []);\r\n\r\n return (\r\n <>\r\n {\r\n profileMenu\r\n .sort((a, b) => (a.order > b.order) ? 1 : -1)\r\n .map((profilemenu)=>(\r\n
  • \r\n {profilemenu.name}\r\n
  • \r\n ))\r\n }\r\n \r\n )\r\n}\r\nexport default function () {\r\n const pluginId = \"profile-management\";\r\n const currentUserdetails=JSON.parse(SessionHelper.getItem(\"userDetails\")||\"{}\");\r\n\r\n const x = new ExtensionsWrapper(pluginId);\r\n\r\n x.registerRoute(\"/profile\", UserProfile);\r\n\r\n if(currentUserdetails.ExternalAccess!==\"True\"){\r\n x.registerRoute(\"/profile/changepass\", ChangePass);\r\n }\r\n\r\n x.registerHook(\"profile-manager-menu\", ProfileManagerManu);\r\n}","import React, { FormEvent, useEffect, useState } from 'react';\r\nimport { Link } from 'react-router-dom';\r\nimport 'react-toastify/dist/ReactToastify.css';\r\nimport ConfirmModalNew from '../../../Components/ConfirmModalNew';\r\nimport ConfirmModalHelperNew from '../../../Helpers/ConfirmModalHelperNew';\r\nimport SessionHelper from '../../../Helpers/SessionHelper';\r\nimport StatusBarHelper from '../../../Helpers/StatusBarHelper';\r\nimport { ExecuteHook } from '../../../Models/Core/Hooks';\r\nimport ThemeManager from '../../../Models/Core/ThemeManager';\r\nimport AuthService from '../../../Services/AuthService';\r\nimport './styles.css';\r\nimport ConfigService from '../../../Services/ConfigService';\r\n\r\n// const logo = require('../../../Resource/Images/logo-merk.svg');\r\nconst logo = require('./Images/Login_Logo.png');\r\n\r\nclass ErrorObj {\r\n userNameErrorMsg = \"\";\r\n\r\n passwordErrorMsg = \"\"\r\n}\r\n\r\nfunction Login() {\r\n const [username, setName] = useState('');\r\n const [password, setPassword] = useState('');\r\n const [showLoader, setShowLoader] = useState(false);\r\n const [errorMessages, setErrorMessagaes] = useState(new ErrorObj());\r\n const [showSessionExpiryAlert, setShowSessionExpiryAlert] = useState(false);\r\n const [showLoginPage, setShowLoginPage] = useState(false);\r\n\r\n const checkforUserLogin = () => {\r\n if (AuthService.isLoggedIn()){\r\n setShowLoginPage(false);\r\n AuthService.gotoHome();\r\n } else {\r\n setShowLoginPage(true);\r\n }\r\n };\r\n\r\n useEffect(() => { \r\n checkforUserLogin();\r\n }, []);\r\n\r\n if (SessionHelper.getItem('idealTimeout')){\r\n setShowSessionExpiryAlert(true);\r\n SessionHelper.removeItem('idealTimeout');\r\n }\r\n\r\n const handleValidations = (): boolean => {\r\n const errorInstance = new ErrorObj();\r\n let formStatus = true;\r\n if (username === '' || username === undefined) {\r\n errorInstance.userNameErrorMsg = \"Please Enter Username.\";\r\n formStatus = false;\r\n }\r\n if (password === '' || password === undefined) {\r\n errorInstance.passwordErrorMsg = \"Please Enter Password.\";\r\n formStatus = false;\r\n }\r\n setErrorMessagaes(errorInstance);\r\n \r\n return formStatus;\r\n };\r\n\r\n const handleSubmit = async (evt: FormEvent) => {\r\n evt.preventDefault();\r\n\r\n if (handleValidations()) {\r\n setShowLoader(true);\r\n\r\n AuthService.login(username, password)\r\n .then((res) => {\r\n setShowLoader(false);\r\n const queryString = window.location.search;\r\n const urlParams = new URLSearchParams(queryString);\r\n let redirect=urlParams.get('redirect')||\"\"\r\n if(redirect!==\"\")\r\n window.location.href=redirect;\r\n else\r\n AuthService.gotoHome(); \r\n }, (err) => {\r\n const err1 = JSON.parse(err);\r\n if (err1.error_code === 3) {\r\n StatusBarHelper.showAlert('error', err1.error_description);\r\n }\r\n setShowLoader(false);\r\n let model: ConfirmModalHelperNew;\r\n const onCancel = () => {\r\n model.destroy();\r\n };\r\n \r\n const onConfirm = () => {\r\n setShowLoader(true);\r\n const isConcurrentUser = true;\r\n AuthService.login(username, password, isConcurrentUser)\r\n .then((res) => {\r\n model.destroy();\r\n const queryString = window.location.search;\r\n const urlParams = new URLSearchParams(queryString);\r\n let redirect=urlParams.get('redirect')||\"\"\r\n if(redirect!==\"\")\r\n window.location.href=redirect;\r\n else\r\n AuthService.gotoHome();\r\n setShowLoader(false);\r\n }, (error) => {\r\n StatusBarHelper.showAlert('error', JSON.parse(error));\r\n setShowLoader(false);\r\n });\r\n };\r\n const errJson = JSON.parse(err);\r\n if (errJson.error_code === 4){\r\n model = new ConfirmModalHelperNew(\r\n 'Alert',\r\n
    {errJson.error_description}
    ,\r\n 'Continue',\r\n onCancel,\r\n onConfirm,\r\n 'Cancel',\r\n );\r\n } else if (errJson.error_code !== 4 && errJson.error_code !== 3) {\r\n StatusBarHelper.showAlert('error', errJson.error_description);\r\n }\r\n setShowLoader(false);\r\n });\r\n }\r\n };\r\n\r\n // const getMenuList = async () => {\r\n // try {\r\n // const response :any = await usersService.loadMenu()\r\n // if (response.length > 0) {\r\n // setTimeout(() => {\r\n // history.push(`/${response[0].data[0].accessType.link}`);\r\n // }, 1000);\r\n // setShowLoader(false);\r\n // }\r\n // } catch (err) {\r\n // console.error(err.message);\r\n // setShowLoader(false);\r\n // }\r\n // };\r\n\r\n return (\r\n <>\r\n {showLoginPage && (\r\n
    \r\n {showLoader && (\r\n \r\n )}\r\n {showSessionExpiryAlert && (\r\n Your session has expired, you need to relogin to continue using the application.

    } title=\"Session Expired\" showModal primaryButtonText=\"Ok\" onCancel={() => { setShowSessionExpiryAlert(false); SessionHelper.removeItem('idealTimeout'); }} onConfirm={() => { setShowSessionExpiryAlert(false); SessionHelper.removeItem('idealTimeout'); }} />\r\n )}\r\n \r\n
    \r\n
    \r\n
    \r\n \"\"\r\n
    \r\n
    \r\n\r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n 0 ? 'error-input' : ''}`} value={username} onChange={e => setName(e.target.value)} />\r\n

    {errorMessages.userNameErrorMsg}

    \r\n
    \r\n
    \r\n \r\n 0 ? 'error-input' : ''}`} id=\"password\" name=\"password\" value={password} onChange={e => setPassword(e.target.value)} />\r\n

    {errorMessages.passwordErrorMsg}

    \r\n
    \r\n
    \r\n\r\n Forgot Password ?\r\n \r\n
    \r\n \r\n
    \r\n \r\n
    {ConfigService.get('Version')}
    \r\n\r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n )}\r\n \r\n );\r\n}\r\n\r\nexport default Login;\r\n","import _HttpHelper from \"../../../Helpers/HttpHelper\";\r\n\r\nexport default class LoginService{\r\n loginBaseUrl: string;\r\n\r\n constructor(loginBaseUrl: string){\r\n this.loginBaseUrl = loginBaseUrl;\r\n }\r\n\r\n forgotPassword = (username: string) => {\r\n const response = _HttpHelper.get(`${this.loginBaseUrl}/PasswordUpdate/ForgotPassword/${username}`);\r\n return response;\r\n }\r\n\r\n changePassword = (token: string, password: string) => {\r\n const data={\r\n \"securityCode\": token,\r\n \"password\": password\r\n }\r\n const response = _HttpHelper.post(`${this.loginBaseUrl}/PasswordUpdate`,data);\r\n return response;\r\n }\r\n}","import React, {useState } from 'react';\r\nimport { Link } from 'react-router-dom';\r\nimport { toast } from 'react-toastify';\r\nimport 'react-toastify/dist/ReactToastify.css';\r\nimport ThemeManager from '../../../Models/Core/ThemeManager';\r\nimport LoginService from './LoginService';\r\nimport {EnvService as process} from '../../../Services/EnvService'\r\n\r\n//const logo = require('../../../Resource/Images/logo-merk.svg');\r\nconst logo = require('./Images/Login_Logo.png');\r\n\r\nconst errorBlock = (error : any) => toast.error('Please Enter Valid Credentials', {\r\n position: 'top-center',\r\n autoClose: 5000,\r\n hideProgressBar: false,\r\n closeOnClick: true,\r\n pauseOnHover: true,\r\n draggable: true,\r\n progress: undefined,\r\n});\r\n\r\nexport function ForgotPassword() {\r\n const [username, setName] = useState('');\r\n const [showLoader, setShowLoader] = useState(false);\r\n\r\n \r\n\r\n const handleSubmit = async (evt: any) => {\r\n evt.preventDefault();\r\n // if (!validator.isEmail(username)) {\r\n // toast.error('Please Enter Valid Email Address', {\r\n // position: 'top-center',\r\n // autoClose: 5000,\r\n // hideProgressBar: false,\r\n // closeOnClick: true,\r\n // pauseOnHover: true,\r\n // draggable: true,\r\n // progress: undefined,\r\n // });\r\n // return;\r\n // }\r\n\r\n setShowLoader(true);\r\n\r\n if (!process.env.REACT_APP_API_USERENDPOINT) return;\r\n\r\n const loginService = new LoginService(process.env.REACT_APP_API_USERENDPOINT);\r\n\r\n loginService\r\n .forgotPassword(username)\r\n .then((res: any) => {\r\n setShowLoader(false);\r\n if (res.code === 204) {\r\n toast.error(res.message, {\r\n position: 'top-center',\r\n autoClose: 5000,\r\n hideProgressBar: true,\r\n closeOnClick: true, \r\n pauseOnHover: true,\r\n draggable: false,\r\n progress: undefined,\r\n });\r\n } else if (res.code === 400) {\r\n toast.error(res.message, {\r\n position: 'top-center',\r\n autoClose: 5000,\r\n hideProgressBar: true,\r\n closeOnClick: true, \r\n pauseOnHover: true,\r\n draggable: false,\r\n progress: undefined,\r\n });\r\n } else {\r\n toast.success('Password Reset email sent successfully to your email address.', {\r\n position: 'top-center',\r\n autoClose: 5000,\r\n hideProgressBar: true,\r\n closeOnClick: true,\r\n pauseOnHover: true,\r\n draggable: false,\r\n progress: undefined,\r\n });\r\n setTimeout(() => {\r\n window.location.href = '/';\r\n }, 5000);\r\n }\r\n })\r\n .catch((err : any) => {\r\n errorBlock(err);\r\n setShowLoader(false);\r\n });\r\n };\r\n \r\n return (\r\n
    \r\n {showLoader && (\r\n \r\n )}\r\n
    \r\n
    \r\n
    \r\n \"\"\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n setName(e.target.value)}\r\n required\r\n />\r\n
    \r\n
    \r\n Back\r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n );\r\n}\r\n\r\nexport default ForgotPassword;\r\n","import React from 'react';\r\nimport { Container, Navbar } from 'react-bootstrap';\r\n\r\nconst logo = require('../../../Resource/Images/logo-merk.svg');\r\n\r\nfunction InvalidLink() {\r\n return (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n

    Link Expired

    \r\n
    \r\n Sorry, Password Reset link has expired, to reset you password please request a new one. For further assistance, please contact your administrator.\r\n
    \r\n
    \r\n Back to login\r\n\r\n
    \r\n
    \r\n \r\n );\r\n}\r\n\r\nexport default InvalidLink;\r\n","import qs from 'querystring';\r\nimport HttpHelper from '../../../Helpers/HttpHelper';\r\nimport { \r\n RegisterUserDetailsModel, AddRoleModel, \r\n AddRolesModel, AddPermissiontoRoleModel, AddGroupRoleModel, \r\n RoleDetailsModel, AddGroupModel, AddUsersToGroupModel, GroupDetailsModel \r\n} from './UserModel';\r\nimport AuthService from '../../../Services/AuthService';\r\nimport { EnvService as process} from '../../../Services/EnvService';\r\n\r\nexport default class UsersService {\r\n getUsersData = async () => {\r\n // const response = await axios.get(`${process.env.REACT_APP_API_USERENDPOINT}/Users`, requestOptions);\r\n // return response;\r\n const prom = new Promise((res) => {\r\n HttpHelper.get(`${process.env.REACT_APP_API_USERENDPOINT}/Users?pageNumber=1&pageSize=100000`, null, AuthService.authHeader())\r\n .then((a: any) => {\r\n res(a);\r\n });\r\n });\r\n\r\n return prom;\r\n }\r\n\r\n getActiveUsersData = async () => {\r\n // const response = await axios.get(`${process.env.REACT_APP_API_USERENDPOINT}/Users`, requestOptions);\r\n // return response;\r\n const prom = new Promise((res) => {\r\n HttpHelper.get(`${process.env.REACT_APP_API_USERENDPOINT}/Users/GetAllActiveUsers?pageNumber=1&pageSize=100000`, null, AuthService.authHeader())\r\n .then((a: any) => {\r\n res(a);\r\n });\r\n });\r\n\r\n return prom;\r\n }\r\n\r\n getUserProfile = async (userId: string) => {\r\n const prom = new Promise((res) => {\r\n HttpHelper.get(`${process.env.REACT_APP_API_USERENDPOINT}/Users/${userId}`, null, AuthService.authHeader())\r\n .then((a: any) => {\r\n res(a.data);\r\n });\r\n });\r\n return prom;\r\n }\r\n\r\n addNewUser = async (data: RegisterUserDetailsModel) => {\r\n // const response = await axios.post(`${process.env.REACT_APP_API_USERENDPOINT}/Users`, data, requestOptions);\r\n // return response;\r\n const prom = new Promise<{code:number, data: string, message: string}>((res, reject) => {\r\n HttpHelper.post(`${process.env.REACT_APP_API_USERENDPOINT}/Users`, data, AuthService.authHeader())\r\n .then((result: any) => {\r\n res(result);\r\n }).catch(e => {\r\n reject(e);\r\n });\r\n });\r\n\r\n return prom;\r\n }\r\n\r\n updateUser = async (data: any) => {\r\n // const response = await axios.post(`${process.env.REACT_APP_API_USERENDPOINT}/Users/update`, data, requestOptions);\r\n // return response;\r\n const prom = new Promise((res) => {\r\n HttpHelper.post(`${process.env.REACT_APP_API_USERENDPOINT}/Users/update`, data, AuthService.authHeader())\r\n .then((a: any) => {\r\n res(a);\r\n });\r\n });\r\n\r\n return prom;\r\n }\r\n\r\n deleteUser = async (id: string) => {\r\n const prom = new Promise((res) => {\r\n HttpHelper.delete(`${process.env.REACT_APP_API_USERENDPOINT}/Users/${id}`, null, AuthService.authHeader())\r\n .then((a: any) => {\r\n res(a);\r\n });\r\n });\r\n\r\n return prom;\r\n }\r\n\r\n getUserDataByUserId = async (id: string) => {\r\n const prom = new Promise((res) => {\r\n HttpHelper.get(`${process.env.REACT_APP_API_USERENDPOINT}/Users/${id}`, null, AuthService.authHeader())\r\n .then((a: any) => {\r\n res(a);\r\n });\r\n });\r\n\r\n return prom;\r\n }\r\n\r\n // addUsersInGroup = async (data: any) => {\r\n // const response = await axios.post(`${process.env.REACT_APP_API_USERENDPOINT}/UserGroups/adduseringroups`, data, requestOptions);\r\n // return response;\r\n // }\r\n\r\n // Permissions Calls\r\n addNewPermission = async (data: AddRoleModel) => {\r\n // const response = await axios.post(`${process.env.REACT_APP_API_USERENDPOINT}/Roles`, data, requestOptions);\r\n // return response;\r\n const prom = new Promise((res) => {\r\n HttpHelper.post(`${process.env.REACT_APP_API_USERENDPOINT}/Roles`, data, AuthService.authHeader())\r\n .then((a: any) => {\r\n res(a);\r\n });\r\n });\r\n\r\n return prom;\r\n }\r\n\r\n getUserPermission = async (userId: string) => {\r\n // const response = await axios.get(`${process.env.REACT_APP_API_USERENDPOINT}/Users/Roles/${userId}`, requestOptions);\r\n // return response;\r\n const prom = new Promise((res) => {\r\n HttpHelper.get(`${process.env.REACT_APP_API_USERENDPOINT}/Users/Roles/${userId}`, null, AuthService.authHeader())\r\n .then((a: any) => {\r\n res(a);\r\n });\r\n });\r\n\r\n return prom;\r\n }\r\n\r\n getSelectedUserRoles = async (userId: string) => {\r\n // const response = await axios.get(`${process.env.REACT_APP_API_USERENDPOINT}/Users/roleprofiles/${userId}`, requestOptions);\r\n // return response;\r\n const prom = new Promise((res) => {\r\n HttpHelper.get(`${process.env.REACT_APP_API_USERENDPOINT}/Users/roleprofiles/${userId}`, null, AuthService.authHeader())\r\n .then((a: any) => {\r\n res(a);\r\n });\r\n });\r\n\r\n return prom;\r\n }\r\n\r\n getAllPermissions = async () => {\r\n // const response = await axios.get(`${process.env.REACT_APP_API_USERENDPOINT}/Roles`, requestOptions);\r\n // return response;\r\n const prom = new Promise((res) => {\r\n HttpHelper.get(`${process.env.REACT_APP_API_USERENDPOINT}/Roles`, null, AuthService.authHeader())\r\n .then((a: any) => {\r\n res(a);\r\n });\r\n });\r\n\r\n return prom;\r\n }\r\n\r\n deletePermission = async (id: string) => {\r\n // const response = await axios.delete(`${process.env.REACT_APP_API_USERENDPOINT}/Roles/${id}`, requestOptions);\r\n // return response;\r\n const prom = new Promise((res) => {\r\n HttpHelper.delete(`${process.env.REACT_APP_API_USERENDPOINT}/Roles/${id}`, null, AuthService.authHeader())\r\n .then((a: any) => {\r\n res(a);\r\n });\r\n });\r\n\r\n return prom;\r\n }\r\n\r\n // Role Calls\r\n addRole = async (data: AddRolesModel) => {\r\n // const response = await axios.post(`${process.env.REACT_APP_API_USERENDPOINT}/RoleProfile`, data, requestOptions);\r\n // return response;\r\n const prom = new Promise((res) => {\r\n HttpHelper.post(`${process.env.REACT_APP_API_USERENDPOINT}/RoleProfile`, data, AuthService.authHeader())\r\n .then((a: any) => {\r\n res(a);\r\n });\r\n });\r\n\r\n return prom;\r\n }\r\n\r\n getPermissionsForRole = async (roleProfileId: string) => {\r\n // const response = await axios.get(`${process.env.REACT_APP_API_USERENDPOINT}/RoleProfile/${roleProfileId}`, requestOptions);\r\n // return response;\r\n const prom = new Promise((res) => {\r\n HttpHelper.get(`${process.env.REACT_APP_API_USERENDPOINT}/RoleProfile/${roleProfileId}`, null, AuthService.authHeader())\r\n .then((a: any) => {\r\n res(a);\r\n });\r\n });\r\n\r\n return prom;\r\n }\r\n\r\n getAllRoles = async () => {\r\n // const response = await axios.get(`${process.env.REACT_APP_API_USERENDPOINT}/RoleProfile`, requestOptions);\r\n // return response;\r\n const prom = new Promise((res) => {\r\n HttpHelper.get(`${process.env.REACT_APP_API_USERENDPOINT}/RoleProfile`, null, AuthService.authHeader())\r\n .then((a: any) => {\r\n res(a);\r\n });\r\n });\r\n\r\n return prom;\r\n }\r\n\r\n addPermissiontoRole = async (data: AddPermissiontoRoleModel) => {\r\n // const response = await axios.post(`${process.env.REACT_APP_API_USERENDPOINT}/RoleProfile/addroleinroleprofile`, data, requestOptions);\r\n // return response;\r\n const prom = new Promise((res) => {\r\n HttpHelper.post(`${process.env.REACT_APP_API_USERENDPOINT}/RoleProfile/addroleinroleprofile`, data, AuthService.authHeader())\r\n .then((a: any) => {\r\n res(a);\r\n });\r\n });\r\n\r\n return prom;\r\n }\r\n\r\n addUsersToRole = async (data: AddGroupRoleModel) => {\r\n // const response = await axios.post(`${process.env.REACT_APP_API_USERENDPOINT}/RoleProfile/adduserinroleprofile`, data, requestOptions);\r\n // return response;\r\n const prom = new Promise((res) => {\r\n HttpHelper.post(`${process.env.REACT_APP_API_USERENDPOINT}/RoleProfile/adduserinroleprofile`, data, AuthService.authHeader())\r\n .then((a: any) => {\r\n res(a);\r\n });\r\n });\r\n\r\n return prom;\r\n }\r\n\r\n getUsersForRole = async (data: string[]) => {\r\n // const response = await axios.post(`${process.env.REACT_APP_API_USERENDPOINT}/Users/usersbyroleprofiles`, data, requestOptions);\r\n // return response;\r\n\r\n const prom = new Promise((res) => {\r\n HttpHelper.post(`${process.env.REACT_APP_API_USERENDPOINT}/Users/usersbyroleprofiles`, data, AuthService.authHeader())\r\n .then((a: any) => {\r\n res(a);\r\n });\r\n });\r\n\r\n return prom;\r\n }\r\n\r\n deleteRole = async (id: string) => {\r\n // const response = await axios.delete(`${process.env.REACT_APP_API_USERENDPOINT}/RoleProfile/${id}`, requestOptions);\r\n // return response;\r\n const prom = new Promise((res) => {\r\n HttpHelper.delete(`${process.env.REACT_APP_API_USERENDPOINT}/RoleProfile/${id}`, null, AuthService.authHeader())\r\n .then((a: any) => {\r\n res(a);\r\n });\r\n });\r\n\r\n return prom;\r\n }\r\n\r\n updateRole = async (data: RoleDetailsModel) => {\r\n // const response = await axios.post(`${process.env.REACT_APP_API_USERENDPOINT}/RoleProfile/update`,data, requestOptions);\r\n // return response;\r\n\r\n const prom = new Promise((res) => {\r\n HttpHelper.post(`${process.env.REACT_APP_API_USERENDPOINT}/RoleProfile/update`, data, AuthService.authHeader())\r\n .then((a: any) => {\r\n res(a);\r\n });\r\n });\r\n\r\n return prom;\r\n }\r\n\r\n // UserGroups Calls\r\n getUserGroup = async (userId: string) => {\r\n // const response = await axios.get(`${process.env.REACT_APP_API_USERENDPOINT}/Users/UserGroups/${userId}`, requestOptions);\r\n // return response;\r\n const prom = new Promise((res) => {\r\n HttpHelper.get(`${process.env.REACT_APP_API_USERENDPOINT}/Users/UserGroups/${userId}`, null, AuthService.authHeader())\r\n .then((a: any) => {\r\n res(a);\r\n });\r\n });\r\n\r\n return prom;\r\n }\r\n\r\n getAllUsersGroups = async () => {\r\n // const requestOptions = { headers: AuthService.authHeader() };\r\n // const response = await axios.get(`${process.env.REACT_APP_API_USERENDPOINT}/UserGroups`, requestOptions);\r\n // return response;\r\n const prom = new Promise((res) => {\r\n HttpHelper.get(`${process.env.REACT_APP_API_USERENDPOINT}/UserGroups`, null, AuthService.authHeader())\r\n .then((a: any) => {\r\n res(a);\r\n });\r\n });\r\n\r\n return prom;\r\n }\r\n\r\n addNewUserGroup = async (data: AddGroupModel) => {\r\n // const response = await axios.post(`${process.env.REACT_APP_API_USERENDPOINT}/UserGroups`, data, requestOptions);\r\n // return response;\r\n const prom = new Promise((res) => {\r\n HttpHelper.post(`${process.env.REACT_APP_API_USERENDPOINT}/UserGroups`, data, AuthService.authHeader())\r\n .then((a: any) => {\r\n res(a);\r\n });\r\n });\r\n\r\n return prom;\r\n }\r\n\r\n deleteUserGroup = async (id: string) => {\r\n // const response = await axios.delete(`${process.env.REACT_APP_API_USERENDPOINT}/UserGroups/${id}`, requestOptions);\r\n // return response;\r\n\r\n const prom = new Promise((res) => {\r\n HttpHelper.delete(`${process.env.REACT_APP_API_USERENDPOINT}/UserGroups/${id}`, null, AuthService.authHeader())\r\n .then((a: any) => {\r\n res(a);\r\n });\r\n });\r\n\r\n return prom;\r\n }\r\n\r\n addMultiplesUsersToGroup = async (data: AddUsersToGroupModel) => {\r\n // const response = await axios.post(`${process.env.REACT_APP_API_USERENDPOINT}/UserGroups/addmultipleuseringroups`, data, requestOptions);\r\n // return response;\r\n const prom = new Promise((res) => {\r\n HttpHelper.post(`${process.env.REACT_APP_API_USERENDPOINT}/UserGroups/addmultipleuseringroups`, data, AuthService.authHeader())\r\n .then((a: any) => {\r\n res(a);\r\n });\r\n });\r\n\r\n return prom;\r\n }\r\n\r\n getusersByGroupId = async (id: string) => {\r\n // const response = await axios.get(`${process.env.REACT_APP_API_USERENDPOINT}/UserGroups/getusersbygroup/${id}`, requestOptions);\r\n // return response;\r\n const prom = new Promise((res) => {\r\n HttpHelper.get(`${process.env.REACT_APP_API_USERENDPOINT}/UserGroups/getusersbygroup/${id}`, null, AuthService.authHeader())\r\n .then((a: any) => {\r\n res(a);\r\n });\r\n });\r\n\r\n return prom;\r\n }\r\n\r\n updateGroup = async (data: GroupDetailsModel) => {\r\n // const response = await axios.post(`${process.env.REACT_APP_API_USERENDPOINT}/UserGroups/update`,data, requestOptions);\r\n // return response;\r\n const prom = new Promise((res) => {\r\n HttpHelper.post(`${process.env.REACT_APP_API_USERENDPOINT}/UserGroups/update`, data, AuthService.authHeader())\r\n .then((a: any) => {\r\n res(a);\r\n });\r\n });\r\n\r\n return prom;\r\n }\r\n\r\n // loadMenu = async () => {\r\n // const requestOptions = {\r\n // 'apikey': process.env.REACT_APP_API_KEY\r\n // };\r\n // const response = await axios.get(`${process.env.REACT_APP_API_URL}/api/data/getall?studio=${process.env.REACT_APP_STUDIO_NAME}&project=${process.env.REACT_APP_PROJECT_NAME}&entity=${menulistEntity}&from=0&size=1000` , {headers : requestOptions});\r\n // return response;\r\n // }\r\n\r\n login = async (data: any) => {\r\n const header = {\r\n 'Content-Type': 'application/x-www-form-urlencoded',\r\n\r\n };\r\n\r\n const response = HttpHelper.post(`${process.env.REACT_APP_API_AUTHTOKEN}/token`, qs.stringify(data), header, true);\r\n return response;\r\n }\r\n\r\n getUserDetails = (token?:string) => {\r\n return HttpHelper.get(`${process.env.REACT_APP_API_AUTHTOKEN}/userinfo`, null, AuthService.authHeader());\r\n }\r\n\r\n getManageData = async (entity: string, fieldNameList:string[]) => {\r\n let response: never[] = [];\r\n const interactBaseUrl = process.env.REACT_APP_API_INTERACT;\r\n const promList: any = [];\r\n\r\n fieldNameList.forEach((field) => {\r\n const data = `{\"query\":{\"bool\":{\"must\":[{\"match\":{\"name\":\"${field}\"}}],\"must_not\":[],\"should\":[]}},\"from\":0,\"size\":10,\"sort\":[],\"aggs\":{}}`;\r\n\r\n const prom = new Promise((res) => {\r\n HttpHelper.get(`${interactBaseUrl}/${entity}?query=${data}`, '', AuthService.authHeader()).then((a: any) => {\r\n res(a.data);\r\n });\r\n }); \r\n\r\n promList.push(prom);\r\n });\r\n \r\n await Promise.all(promList).then((res:any) => {\r\n response = res;\r\n }); \r\n\r\n return response; \r\n }\r\n\r\n forgotPassword = (data: any) => {\r\n const response = HttpHelper.get(`${process.env.REACT_APP_API_USERENDPOINT}/PasswordUpdate/ForgotPassword/${data}`);\r\n return response;\r\n }\r\n\r\n clearSession = (userId: string) => {\r\n const response = HttpHelper.post(`${process.env.REACT_APP_API_IDENTITY}/api/Logout?userId=${userId}`);\r\n return response;\r\n }\r\n\r\n resetPassword = (data: string) => {\r\n const response = HttpHelper.get(`${process.env.REACT_APP_API_USERENDPOINT}/PasswordUpdate/ResetPassword/${data}`, null, AuthService.authHeader());\r\n return response;\r\n }\r\n\r\n lockUser = (userId: string, isLocked: boolean) => {\r\n const response = HttpHelper.post(`${process.env.REACT_APP_API_USERENDPOINT}/Users/isuserlockedout/${userId}/${isLocked}`, null, AuthService.authHeader());\r\n return response;\r\n }\r\n\r\n changePassword = (token: string, password: string) => {\r\n const data = {\r\n securityCode: token,\r\n password\r\n };\r\n const prom = new Promise((res) => {\r\n HttpHelper.post(`${process.env.REACT_APP_API_USERENDPOINT}/PasswordUpdate`, data)\r\n .then((a: any) => {\r\n res(a);\r\n });\r\n });\r\n\r\n return prom;\r\n }\r\n\r\n userProfileChangePassword = (data: any) => {\r\n const prom = new Promise((res) => {\r\n HttpHelper.post(`${process.env.REACT_APP_API_USERENDPOINT}/UserProfile/ChangePassword`, data, AuthService.authHeader()).then((a: any) => {\r\n res(a);\r\n });\r\n });\r\n return prom;\r\n }\r\n\r\n static isPasswordUpdated = (securityCode: any) => {\r\n const prom = new Promise((res,rej) => {\r\n HttpHelper.get(`${process.env.REACT_APP_API_USERENDPOINT}/PasswordUpdate/IsPasswordUpdated?securityCode=${securityCode}`).then((a: any) => {\r\n res(a);\r\n }).catch((error) => {\r\n rej(error);\r\n });\r\n });\r\n return prom;\r\n }\r\n\r\n updateProfile=(data:any) => {\r\n return new Promise((resolve, reject) => {\r\n HttpHelper.post(`${process.env.REACT_APP_API_USERENDPOINT}/UserProfile/UpdateUserProfile`, data, AuthService.authHeader()).then(res => {\r\n resolve(res);\r\n });\r\n });\r\n }\r\n\r\n updateEulaFlag = (userId: string, isAgree: boolean) => {\r\n const prom = new Promise((res) => {\r\n HttpHelper.post(`${process.env.REACT_APP_API_USERENDPOINT}/Users/IsEULAAgreed?userId=${userId}&isAgreed=${isAgree}`, null, AuthService.authHeader())\r\n .then((a: any) => {\r\n res(a);\r\n });\r\n });\r\n return prom;\r\n }\r\n\r\n getTimezone = () => {\r\n const prom = new Promise((res) => {\r\n HttpHelper.get(`${process.env.REACT_APP_API_USERENDPOINT}/TimeZone`, null, AuthService.authHeader())\r\n .then((a: any) => {\r\n res(a.data);\r\n });\r\n });\r\n return prom;\r\n }\r\n\r\n getUserPermissions = (userId: string) => {\r\n const prom = new Promise((res) => {\r\n HttpHelper.post(`${process.env.REACT_APP_API_INTERACT}/RoleInPermission/GetAllPermissionsByUserId`, {userId}, AuthService.authHeader())\r\n .then((a: any) => {\r\n res(a);\r\n });\r\n });\r\n return prom;\r\n }\r\n // getTimezone = () => {\r\n // const prom = new Promise((res) => {\r\n // HttpHelper.get(`${process.env.REACT_APP_API_USERENDPOINT}/TimeZone`, null, AuthService.authHeader())\r\n // .then((a: any) => {\r\n // res(a.data);\r\n // });\r\n // });\r\n\r\n // return prom;\r\n // }\r\n\r\n getUserDetailsByUserId = (userId: string) => {\r\n const prom = new Promise((res) => {\r\n HttpHelper.get(`${process.env.REACT_APP_API_USERENDPOINT}/Users/${userId}`, null, AuthService.authHeader())\r\n .then((a: any) => {\r\n res(a);\r\n });\r\n });\r\n\r\n return prom;\r\n }\r\n\r\n getOutOfOfficeByUserId = (data:any) => {\r\n const prom = new Promise((res) => {\r\n HttpHelper.post(`${process.env.REACT_APP_API_INTERACT}/OutOfOffice/GetByUserId`, data, AuthService.authHeader())\r\n .then((a: any) => {\r\n res(a);\r\n });\r\n });\r\n return prom;\r\n }\r\n\r\n getUserByGroupId = (data:any) => {\r\n const prom = new Promise((res) => {\r\n HttpHelper.post(`${process.env.REACT_APP_API_INTERACT}/OutOfOffice/GetUsersByGroupIds`, data, AuthService.authHeader())\r\n .then((a: any) => {\r\n res(a);\r\n });\r\n });\r\n return prom;\r\n }\r\n\r\n updateProjectAssigne = (data: any) => {\r\n const prom = new Promise((res) => {\r\n HttpHelper.post(`${process.env.REACT_APP_API_INTERACT}/Projects/UpdateProjectAssignee`, data, AuthService.authHeader())\r\n .then((a: any) => {\r\n res(a);\r\n });\r\n });\r\n return prom;\r\n }\r\n\r\n downloadUserReport = () => {\r\n const data = { \r\n gridUrl: `${process.env.REACT_APP_API_USERENDPOINT}/Users?pageNumber=1&pageSize=100000`, \r\n tokenUrl: `${process.env.REACT_APP_API_FILE_DETAILS}`,\r\n fileName: \"Users List\",\r\n ColumnList: \"[{\\\"field\\\":\\\"userName\\\",\\\"title\\\":\\\"Username\\\"},{\\\"field\\\":\\\"firstName\\\",\\\"title\\\":\\\"First Name\\\"},{\\\"field\\\":\\\"lastName\\\",\\\"title\\\":\\\"Last Name\\\"},{\\\"field\\\":\\\"displayName\\\",\\\"title\\\":\\\"Display Name\\\"},{\\\"field\\\":\\\"department\\\",\\\"title\\\":\\\"Department\\\"},{\\\"field\\\":\\\"isActive\\\",\\\"title\\\":\\\"Is Active\\\"},{\\\"field\\\":\\\"isLockedOut\\\",\\\"title\\\":\\\"Is Locked\\\"},{\\\"field\\\":\\\"timeZone\\\",\\\"title\\\":\\\"Time Zone\\\"},{\\\"field\\\":\\\"enableExternalAccess\\\",\\\"title\\\":\\\"External Access\\\"},{\\\"field\\\":\\\"email\\\",\\\"title\\\":\\\"Email\\\"}]\"\r\n };\r\n \r\n const prom = new Promise((res) => {\r\n HttpHelper.post(`${process.env.REACT_APP_API_INTERACT}/ExportExcel/GetFileNameAndToken`, data, AuthService.authHeader())\r\n \r\n .then((a: any) => {\r\n res(a);\r\n \r\n const fileDetails = a.split(',');\r\n \r\n window.open(`${process.env.REACT_APP_API_FILE_DETAILS}/Download?id=${fileDetails[0]}&token=${fileDetails[1]}`);\r\n });\r\n });\r\n \r\n return prom;\r\n }\r\n\r\n bulkUserUpload = (data: any) => {\r\n const defaultHeader = AuthService.authHeader();\r\n\r\n // const prom = new Promise((res) => {\r\n // HttpHelper.post(`${process.env.REACT_APP_API_USERENDPOINT}/Users/BulkUsersUpload`, data, defaultHeader)\r\n\r\n // .then((a: any) => {\r\n\r\n // res(a);\r\n\r\n // });\r\n\r\n // });\r\n\r\n // return prom;\r\n\r\n const formdata = new FormData();\r\n formdata.append(\"excelFile\", data);\r\n\r\n const prom = new Promise((resolve) => {\r\n fetch(`${process.env.REACT_APP_API_USERENDPOINT}/Users/BulkUsersUpload`, {\r\n method: 'POST',\r\n headers: defaultHeader,\r\n body: formdata,\r\n redirect: 'follow'\r\n })\r\n .then(response => {\r\n // resolve(response.text())\r\n return response.json().then((r) => {\r\n // process your JSON data further\r\n resolve(r);\r\n });\r\n })\r\n // .then(result => {resolve(result)})\r\n .catch(error => { console.log(error); });\r\n });\r\n return prom;\r\n }\r\n}","import React, { useEffect, useState } from 'react';\r\nimport 'react-toastify/dist/ReactToastify.css';\r\nimport StatusBarHelper from '../../../Helpers/StatusBarHelper';\r\nimport ThemeManager from '../../../Models/Core/ThemeManager';\r\nimport ConfigService from '../../../Services/ConfigService';\r\nimport LoginService from './LoginService';\r\nimport InvalidLink from './InvalidLink';\r\nimport authenticationService from '../../Themes/impact-analysis/UsersService';\r\nimport {EnvService as process} from '../../../Services/EnvService'\r\nimport ConfirmModalHelperNew from '../../../Helpers/ConfirmModalHelperNew';\r\n\r\n//const logo = require('../../../Resource/Images/logo-merk.svg');\r\nconst logo = require('./Images/Login_Logo.png');\r\n\r\nexport function ChangePassword() {\r\n const [newPassword, setNewPassword] = useState('');\r\n const [confirmPassword, setConfirmPassword] = useState('');\r\n const [showLoader, setShowLoader] = useState(false);\r\n const [passwordDescription, setPasswordDescription] = useState('');\r\n const [isPasswordResetLinkActive, setPasswordLinkStatus] = useState(undefined);\r\n const [isApiCallFinished, setApiCallStatus] = useState(false);\r\n\r\n useEffect(() => { \r\n const token = new URL(window.location.href).searchParams.get(\"code\");\r\n if (token){\r\n authenticationService.isPasswordUpdated(token).then((res: any) => {\r\n setApiCallStatus(true);\r\n if (res.data.status !== 'Complete' && !res.data.isLinkExpired){\r\n setPasswordLinkStatus(true);\r\n } else {\r\n setPasswordLinkStatus(false);\r\n }\r\n }).catch(error => {\r\n console.log(error)\r\n setPasswordLinkStatus(false);\r\n setApiCallStatus(true); \r\n });\r\n }\r\n const passwordPatternDesc = ConfigService.get('PasswordPatternDescription'); // shouldnt use this directly\r\n if (passwordPatternDesc) setPasswordDescription(passwordPatternDesc); \r\n }, []);\r\n\r\n const handleSubmit = async (evt: any) => {\r\n evt.preventDefault();\r\n if (newPassword !== confirmPassword) {\r\n StatusBarHelper.showAlert('error', 'New Password and Confirm Password not matching');\r\n return;\r\n }\r\n\r\n const PasswordPattern = ConfigService.get('PasswordPattern');// shouldnt use this directly\r\n if (PasswordPattern) {\r\n if (PasswordPattern){\r\n const passwordRegex = new RegExp(PasswordPattern);\r\n if (!passwordRegex.test(newPassword)){\r\n const PasswordPatternDescription = ConfigService.get('PasswordPatternDescription'); \r\n if (PasswordPatternDescription) StatusBarHelper.showAlert('error', PasswordPatternDescription);\r\n return;\r\n }\r\n }\r\n }\r\n\r\n setShowLoader(true);\r\n\r\n const token = new URL(window.location.href).searchParams.get('code');\r\n\r\n if (token && process.env.REACT_APP_API_USERENDPOINT) { \r\n const loginService = new LoginService(process.env.REACT_APP_API_USERENDPOINT);\r\n \r\n loginService.changePassword(token, newPassword).then(\r\n (res: any) => {\r\n setShowLoader(false);\r\n if(res.code===200){\r\n\r\n token && authenticationService.isPasswordUpdated(token).then(res1 => {\r\n setShowLoader(false);\r\n });\r\n \r\n StatusBarHelper.showAlert('success', res.message);\r\n setTimeout(()=>{\r\n window.location.href = '/login';\r\n },2000);\r\n \r\n }else if(res.code===400){ \r\n StatusBarHelper.showAlert('error', res.message);\r\n }\r\n },\r\n (err: any) => {\r\n StatusBarHelper.showAlert('error', 'Please Enter Valid Credentials');\r\n setShowLoader(false);\r\n }\r\n )\r\n .catch(err => {\r\n StatusBarHelper.showAlert('error', err.message);\r\n setShowLoader(false);\r\n });\r\n }\r\n };\r\n\r\n return (\r\n \r\n <>{isPasswordResetLinkActive && isApiCallFinished && (\r\n\r\n
    \r\n {showLoader && (\r\n \r\n )}\r\n
    \r\n
    \r\n
    \r\n \"\"\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n setNewPassword(e.target.value)}\r\n required\r\n />\r\n
    \r\n
    \r\n \r\n setConfirmPassword(e.target.value)}\r\n required\r\n />\r\n
    \r\n\r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n )}\r\n {!isPasswordResetLinkActive && isApiCallFinished && ()}\r\n \r\n );\r\n}\r\n\r\nexport default ChangePassword;\r\n","import qs from 'querystring';\r\nimport _HttpHelper from \"../../../Helpers/HttpHelper\";\r\nimport { EnvService as process} from '../../../Services/EnvService';\r\n\r\n\r\nexport interface ResType {access_token: string; refresh_token:string}\r\nexport class SessionTimeoutService {\r\n static fetchRefreshToken = async (data: any): Promise => {\r\n const header = {\r\n 'Content-Type': 'application/x-www-form-urlencoded',\r\n \r\n };\r\n const response : Promise = _HttpHelper.post(`${process.env.REACT_APP_API_AUTHTOKEN}/token`, qs.stringify(data), header, true);\r\n return response;\r\n }\r\n}","import React from 'react';\r\n\r\n// import IdleTimer from 'react-idle-timer';\r\nimport ConfirmModalHelperNew from '../../../Helpers/ConfirmModalHelperNew';\r\nimport SessionHelper from '../../../Helpers/SessionHelper';\r\nimport ExtensionsWrapper from '../../../Models/Core/ExtensionWrapper';\r\nimport { LayoutTreeOBJ } from '../../../Models/Shared/LayoutTreeOBJ';\r\nimport AuthService from '../../../Services/AuthService';\r\nimport ConfigService from '../../../Services/ConfigService';\r\nimport { SessionTimeoutService, ResType } from './SessionTimeoutService';\r\nimport { EnvService as process} from '../../../Services/EnvService';\r\n\r\nconst loader = require('../../../Resource/Images/ringloader.gif');\r\n\r\nclass TheState {\r\n idleTimer?:number | null = null;\r\n\r\n countDownInSec: number = 0;\r\n\r\n timeoutSec =0;\r\n\r\n isAuthPopupOpen=false;\r\n \r\n isAuthCallInProgress=false; \r\n}\r\n\r\n\r\nexport interface PageLoadHookProp{\r\n hook: string;\r\n data: {layoutData: LayoutTreeOBJ[]}\r\n}\r\n\r\nclass AuthenticationComponent extends React.Component{\r\n idleTimer: React.RefObject;\r\n\r\n private model!: ConfirmModalHelperNew;\r\n\r\n constructor(props: PageLoadHookProp) {\r\n super(props);\r\n this.idleTimer = React.createRef(); \r\n this.state = {\r\n countDownInSec: 60,\r\n timeoutSec: 0,\r\n isAuthPopupOpen: false,\r\n isAuthCallInProgress: false\r\n };\r\n }\r\n\r\n intervelTime:any;\r\n \r\n interval: any;\r\n \r\n componentDidMount(){ \r\n // const configDataJson1 = JSON.parse(localStorage.getItem('configData')!);\r\n const SessionExpiry = Number(SessionHelper.getItem('SessionExpiry'));\r\n const b: any = SessionHelper.getItem('oauthTokenValidity');\r\n \r\n const IsSessionExpired = (b * 1) < Date.now();\r\n if (IsSessionExpired){\r\n SessionHelper.setItem('idealTimeout', 'true');\r\n AuthService.logout();\r\n }\r\n if (SessionHelper.getItem('sessionTimeoutAt')) {\r\n const c = Number(SessionHelper.getItem('sessionTimeoutAt')); \r\n if ((c * 1) < Date.now() && !this.state.isAuthCallInProgress){\r\n this.onConfirm();\r\n }\r\n }\r\n\r\n this.SessionValidateIntervel();\r\n\r\n const oauthTokenValidity:string = SessionHelper.getItem('oauthTokenValidity') || '0';\r\n if (Date.now() > parseInt(oauthTokenValidity)){\r\n AuthService.logout();\r\n }\r\n // const configDataJson = JSON.parse(localStorage.getItem('configData')!);\r\n\r\n const timeInMilliSec = ((SessionExpiry * 1) - 60) * 1000;\r\n const a = {...this.state, timeoutSec: timeInMilliSec};\r\n this.setState(a);\r\n } \r\n \r\n render(){\r\n return (<>);\r\n }\r\n\r\n blinkTab = (message:string) => {\r\n const oldTitle = document.title; /* save original title */\r\n let timeoutId: any;\r\n const blink = () => { document.title = document.title === message ? ' ' : message; }; /* function to BLINK browser tab */\r\n const clear = () => { /* function to set title back to original */\r\n clearInterval(timeoutId);\r\n document.title = oldTitle;\r\n window.onmousemove = null;\r\n timeoutId = null;\r\n };\r\n\r\n if (!timeoutId) {\r\n timeoutId = setInterval(blink, 1000);\r\n window.onmousemove = clear; /* stop changing title on moving the mouse */\r\n }\r\n }\r\n\r\n static setCookie(cname:string, cvalue:any, exp:number) {\r\n const d = new Date();\r\n d.setTime(d.getTime() + (exp * 1000));\r\n const expires = `expires=${d.toUTCString()}`;\r\n document.cookie = `${cname}=${cvalue};${expires};path=/`;\r\n }\r\n\r\ngetCookie = (cname: any) => {\r\n const name = `${cname}=`;\r\n const decodedCookie = decodeURIComponent(document.cookie);\r\n const ca = decodedCookie.split(';');\r\n for (let i = 0; i < ca.length; i++) {\r\n let c = ca[i];\r\n while (c.charAt(0) === ' ') {\r\n c = c.substring(1);\r\n }\r\n if (c.indexOf(name) === 0) {\r\n return c.substring(name.length, c.length);\r\n }\r\n }\r\n return false;\r\n}\r\n\r\n SessionValidateIntervel=() => { \r\n if (AuthService.isLoggedIn()) {\r\n this.intervelTime = setInterval(() => {\r\n let remainder1mins; let remainder1minEnd; \r\n const flag: boolean = (Number(SessionHelper.getItem('sessionTimeoutAt'))) < Date.now(); // ?\r\n if (SessionHelper.getItem('sessionTimeoutAt')) {\r\n const b = Number(SessionHelper.getItem('sessionTimeoutAt')); \r\n remainder1mins = (b * 1) < Date.now();\r\n remainder1minEnd = ((((b * 1) - Date.now()) / 1000) / 60) <= -1;\r\n if (remainder1mins && document.querySelector(\"#sessionTimeLoader\") === null){\r\n if (remainder1minEnd){\r\n SessionHelper.setItem('idealTimeout', 'true');\r\n this.onCancel();\r\n }\r\n \r\n this.countDownTimer();\r\n if (flag) {\r\n this.model = new ConfirmModalHelperNew(\r\n 'Session Expiry',\r\n
    \r\n \r\n
    \r\n \"\"\r\n
    \r\n \r\n Session is going to expire in 60 sec. Click Continue Session to renew your current session or click End Session Now to logout\r\n
    ,\r\n 'Continue Session',\r\n this.onCancel,\r\n this.onConfirm,\r\n 'Cancel'\r\n );\r\n } \r\n clearInterval(this.intervelTime);\r\n }\r\n }\r\n }, 2000);\r\n } \r\n }\r\n\r\n countDownTimer = () => {\r\n let countDownSec = 60;\r\n this.setState({countDownInSec: 60});\r\n this.interval = setInterval(() => {\r\n const b = Number(SessionHelper.getItem('sessionTimeoutAt')); // ?\r\n const remainder1minEnd = ((((b * 1) - Date.now()) / 1000) / 60) <= -1;\r\n\r\n if (remainder1minEnd){\r\n SessionHelper.setItem('idealTimeout', 'true');\r\n clearInterval(this.interval);\r\n this.onCancel();\r\n }\r\n\r\n if (countDownSec < 1){\r\n clearInterval(this.interval);\r\n this.onCancel();\r\n SessionHelper.setItem('idealTimeout', 'true');\r\n return;\r\n }\r\n \r\n countDownSec -= 1;\r\n if (document.querySelector('#counterSec')){\r\n // @ts-ignore\r\n document.querySelector('#counterSec').innerHTML = countDownSec;\r\n if (this.getCookie(\"notideal\")){\r\n this.model.destroy();\r\n clearInterval(this.interval);\r\n this.SessionValidateIntervel();\r\n }\r\n }\r\n }, 1000);\r\n }\r\n \r\n onConfirm = () => {\r\n let userDetails=JSON.parse(SessionHelper.getItem('userDetails') || \"\");\r\n const data = {\r\n grant_type: 'refresh_token',\r\n scope: 'openid profile email glamsScope offline_access',\r\n client_id: SessionHelper.getItem(\"isSSOUser\")===\"true\"? process.env.REACT_SSO_AUTH_CLIENTID : process.env.REACT_APP_AUTH_CLIENTID,\r\n client_secret: process.env.REACT_APP_AUTH_CLIENT_SECRET,\r\n refresh_token: SessionHelper.getItem('refreshToken'),\r\n };\r\n this.setState({isAuthCallInProgress: true});\r\n this.setState({isAuthPopupOpen: false});\r\n const a: HTMLElement | null = document.querySelector(\"#sessionTimeLoader\");\r\n if (a) a.style!.display = 'block';\r\n\r\n // //multi tab idle time pop up handling\r\n AuthenticationComponent.setCookie(\"notideal\", true, 30);\r\n clearInterval(this.interval);\r\n SessionTimeoutService.fetchRefreshToken(data) \r\n .then((res: ResType) => {\r\n SessionHelper.removeItem('oauthToken');\r\n SessionHelper.removeItem('oauthTokenValidity');\r\n SessionHelper.setItem('oauthToken', res.access_token);\r\n SessionHelper.setItem('refreshToken', res.refresh_token);\r\n // const configDataJson = JSON.parse(localStorage.getItem('configData')!);\r\n const SessionExpiry = Number(SessionHelper.getItem('SessionExpiry'));\r\n const idealTime = ((SessionExpiry * 1) - 60) * 1000;\r\n SessionHelper.setItem(\r\n 'oauthTokenValidity',\r\n (Date.now() + (SessionExpiry * 1)).toString()\r\n );\r\n SessionHelper.setItem(\r\n 'sessionTimeoutAt',\r\n (Date.now() + idealTime).toString()\r\n );\r\n this.setState({isAuthCallInProgress: false});\r\n if (a) a.style!.display = 'none';\r\n if (document.querySelector('.ConfirmModal')){\r\n this.model.destroy();\r\n this.SessionValidateIntervel();\r\n }\r\n })\r\n .catch((err: any) => {\r\n this.setState({isAuthCallInProgress: false});\r\n this.setState({isAuthPopupOpen: false});\r\n AuthService.logout();\r\n });\r\n };\r\n\r\n onCancel = () => {\r\n this.model?.destroy();\r\n this.setState({isAuthPopupOpen: false });\r\n AuthService.logout();\r\n };\r\n}\r\n\r\n// execution\r\nconst pluginId = \"session-timeout\";\r\n\r\nexport default function (){\r\n const x = new ExtensionsWrapper(pluginId);\r\n x.registerHook('PageLoadHook', AuthenticationComponent); \r\n}","import qs from 'querystring';\r\nimport HttpHelper from '../../../Helpers/HttpHelper';\r\nimport _HttpHelper from \"../../../Helpers/HttpHelper\";\r\nimport AuthService from '../../../Services/AuthService';\r\nimport { LoginDataType } from './Main';\r\nimport { EnvService as process} from '../../../Services/EnvService';\r\n\r\nexport default class BasicAuthService{\r\n requestOptions = {\r\n headers: {}\r\n };\r\n\r\n apiAuthUrl: string;\r\n\r\n constructor(apiAuthUrl: string){\r\n this.requestOptions.headers = AuthService.authHeader();\r\n this.apiAuthUrl = apiAuthUrl;\r\n }\r\n\r\n login = (data: LoginDataType) => {\r\n const header = {\r\n 'Content-Type': 'application/x-www-form-urlencoded',\r\n\r\n };\r\n\r\n const response = _HttpHelper.post(`${this.apiAuthUrl}/token`, qs.stringify(data), header, true);\r\n return response;\r\n }\r\n\r\n GetRolesbyUserId(entity: string, data:any = null){\r\n const interactBaseUrl = process.env.REACT_APP_API_INTERACT;\r\n\r\n const requestOptions = AuthService.authHeader();\r\n return new Promise((res) => {\r\n HttpHelper.post(`${interactBaseUrl}/${entity}/GetRoleByUserID`, data, requestOptions)\r\n .then((a:any) => {\r\n res(a);\r\n });\r\n });\r\n }\r\n \r\n getUserDetails = (token?:string) => {\r\n return _HttpHelper.get(`${this.apiAuthUrl}/userinfo`, null, AuthService.authHeader());\r\n }\r\n}","import qs from 'querystring';\r\nimport _HttpHelper from \"../../../Helpers/HttpHelper\";\r\nimport { EnvService as process} from '../../../Services/EnvService';\r\n\r\nexport interface ResType {access_token: string; refresh_token:string}\r\nexport class RefreshTokenService {\r\n static fetchRefreshToken = async (data: any): Promise => {\r\n const header = {\r\n 'Content-Type': 'application/x-www-form-urlencoded',\r\n \r\n };\r\n const response : Promise = _HttpHelper.post(`${process.env.REACT_APP_API_AUTHTOKEN}/token`, qs.stringify(data), header, true);\r\n return response;\r\n }\r\n\r\n static clearSession = (userId: string) => {\r\n const response = _HttpHelper.post(`${process.env.REACT_APP_API_IDENTITY}/api/Logout?userId=${userId}`);\r\n return response;\r\n }\r\n}","import ExtensionWrapper from '../../../Models/Core/ExtensionWrapper';\r\nimport SessionHelper from '../../../Helpers/SessionHelper';\r\nimport TheHistory from '../../../history';\r\nimport AuthService, { \r\n AuthHeaderFilterType, DoesUserHaveAccessFilterType, \r\n GetUserDetailsFilterType, IsLoggedInFilterType, LoginFilterType, LogoutFilterType, HttpResponseFilterType, HandleNoAuthFilterType \r\n} from '../../../Services/AuthService';\r\nimport BasicAuthService from './BasicAuthService';\r\nimport ConfigService from '../../../Services/ConfigService';\r\nimport { RefreshTokenService, ResType } from './RefreshToken';\r\nimport { executeFilter } from '../../../Models/Core/Filters';\r\nimport { EnvService as process} from '../../../Services/EnvService';\r\n\r\nconst pluginId = \"basic-auth\";\r\nexport type PluginDataType = {idealTimeout: string, apiAuthToken: string};\r\nlet thePluginData: PluginDataType;\r\n\r\nexport function getPluginData(){\r\n return thePluginData;\r\n}\r\n\r\nexport type LoginDataType = {\r\n // eslint-disable-next-line camelcase\r\n grant_type: string | undefined,\r\n scope: string | undefined,\r\n username: string | undefined,\r\n password: string | undefined,\r\n // eslint-disable-next-line camelcase\r\n client_id: string | undefined,\r\n // eslint-disable-next-line camelcase\r\n client_secret: string | undefined\r\n}\r\n\r\nlet refreshInprogress = false;\r\n\r\nlet intervelTime: any;\r\n\r\nlet logoutInprogress = false;\r\n\r\nconst onConfirm = () => {\r\n if (refreshInprogress) return;\r\n\r\n \r\n let userDetails=JSON.parse(SessionHelper.getItem('userDetails') || \"\");\r\n const data = {\r\n grant_type: 'refresh_token',\r\n scope: 'openid profile email glamsScope offline_access',\r\n client_id: SessionHelper.getItem(\"isSSOUser\")===\"true\"? process.env.REACT_SSO_AUTH_CLIENTID : process.env.REACT_APP_AUTH_CLIENTID,\r\n client_secret: process.env.REACT_APP_AUTH_CLIENT_SECRET,\r\n refresh_token: SessionHelper.getItem('refreshToken'),\r\n };\r\n\r\n refreshInprogress = true;\r\n // //multi tab idle time pop up handling\r\n RefreshTokenService.fetchRefreshToken(data) \r\n .then((res: ResType) => {\r\n refreshInprogress = false;\r\n SessionHelper.removeItem('oauthToken');\r\n SessionHelper.removeItem('oauthTokenValidity');\r\n SessionHelper.setItem('oauthToken', res.access_token);\r\n SessionHelper.setItem('refreshToken', res.refresh_token);\r\n // const configDataJson = JSON.parse(localStorage.getItem('configData')!);\r\n const SessionExpiry = Number(SessionHelper.getItem('SessionExpiry'));\r\n const idealTime = ((SessionExpiry * 1) - 60) * 1000;\r\n SessionHelper.setItem(\r\n 'oauthTokenValidity',\r\n (Date.now() + idealTime).toString()\r\n );\r\n })\r\n .catch((err: any) => {\r\n refreshInprogress = false;\r\n AuthService.logout();\r\n });\r\n};\r\n\r\nconst handleCursor = (e: any) => {\r\n const SessionExpiry = Number(SessionHelper.getItem('SessionExpiry'));\r\n const idealTime = ((SessionExpiry * 1) - 60) * 1000;\r\n SessionHelper.setItem(\r\n 'sessionTimeoutAt',\r\n (Date.now() + idealTime).toString()\r\n ); \r\n\r\n const oAuthToken = ((Number(SessionHelper.getItem('oauthTokenValidity'))) - (1000));\r\n const isSessionExpiring = oAuthToken < Date.now();\r\n if (isSessionExpiring && !refreshInprogress) onConfirm();\r\n};\r\n\r\nconst SessionValidateIntervel = () => { \r\n intervelTime = setInterval(() => {\r\n if (AuthService.isLoggedIn()) {\r\n const flag: boolean = (Number(SessionHelper.getItem('sessionTimeoutAt')) + 60 * 1000) < Date.now();\r\n const oAuthToken = (((Number(SessionHelper.getItem('oauthTokenValidity')) * 1) - (3 * 60 * 1000)));\r\n // const isSessionExpiring = (Number(SessionHelper.getItem('sessionTimeoutAt'!))) > Date.now() && oAuthToken < Date.now();\r\n if (!flag && oAuthToken < Date.now() && !refreshInprogress){\r\n onConfirm();\r\n } else if (flag && !logoutInprogress){\r\n logoutInprogress = true;\r\n AuthService.logout();\r\n }\r\n }\r\n }, 2000);\r\n};\r\n\r\nconst loginUser = (username: string, password: string, force?: boolean) => {\r\n return new Promise((res, rej) => {\r\n const basicAuthService = new BasicAuthService(process.env.REACT_APP_API_AUTHTOKEN);\r\n const scopeValue = force ? 'openid profile email glamsScope offline_access force' : 'openid profile email glamsScope offline_access';\r\n \r\n const data = {\r\n grant_type: 'password',\r\n scope: scopeValue,\r\n username,\r\n password,\r\n client_id: process.env.REACT_APP_AUTH_CLIENTID,\r\n client_secret: process.env.REACT_APP_AUTH_CLIENT_SECRET\r\n };\r\n \r\n basicAuthService.login(data)\r\n .then((retData:any) => {\r\n SessionHelper.setItem('oauthToken', retData.access_token);\r\n SessionHelper.setItem('refreshToken', retData.refresh_token); \r\n SessionHelper.setItem('SessionExpiry', retData.expires_in); \r\n\r\n SessionHelper.setItem('oauthTokenValidity', (Date.now() + (retData.expires_in * 1000)).toString()); \r\n\r\n if(data.grant_type===\"password\"){\r\n SessionHelper.setItem('sessionTimeoutAt', (Date.now() + (retData.expires_in * 1000)).toString()); \r\n SessionHelper.setItem('isSSOUser', \"false\"); \r\n } \r\n\r\n SessionValidateIntervel();\r\n document.addEventListener(\"mousemove\", handleCursor);\r\n\r\n basicAuthService.getUserDetails(retData.access_token)\r\n .then((userDetailsData:any) => {\r\n res(basicAuthService.GetRolesbyUserId(\"UserInRole\", {\r\n userId: userDetailsData.userid\r\n }).then(response => {\r\n const roles: string[] = [];\r\n response.map((role:any) => {\r\n if (role.IsSelected) { roles.push(role.RoleName); }\r\n return roles;\r\n });\r\n userDetailsData.role = roles.toString();\r\n SessionHelper.setItem('userDetails', JSON.stringify(userDetailsData));\r\n }));\r\n }); \r\n // getMenuList();\r\n }).catch((err) => {\r\n rej(err);\r\n });\r\n });\r\n};\r\n// execution\r\n\r\nexport default function (){\r\n \r\n\r\n clearInterval(intervelTime);\r\n\r\n const x = new ExtensionWrapper(pluginId);\r\n\r\n x.registerFilter(\"LoginFilter\", async (data: LoginFilterType) => {\r\n await loginUser(data.username, data.password, data.force);\r\n });\r\n \r\n x.registerFilter(\"GetUserDetailsFilter\", (data: GetUserDetailsFilterType) => {\r\n const userDetailsString = SessionHelper.getItem('userDetails');\r\n if (userDetailsString){\r\n const userdetails = JSON.parse(userDetailsString);\r\n data.userDetails = userdetails; \r\n } \r\n });\r\n \r\n x.registerFilter(\"AuthHeaderFilter\", (data: AuthHeaderFilterType) => {\r\n const token = SessionHelper.getItem('oauthToken');\r\n \r\n const theHeader = {\r\n Authorization: `Bearer ${token}`\r\n };\r\n \r\n data.theHeader = theHeader;\r\n }); \r\n \r\n x.registerFilter(\"HttpResponseFilter\", (responseCode: HttpResponseFilterType) => {\r\n if (responseCode.statusCode === 401){\r\n const keysToRemove = [\r\n 'userDetails',\r\n 'oauthToken',\r\n 'refreshToken',\r\n 'oauthTokenValidity',\r\n 'OptOutEmailPrefrenceIndexId',\r\n 'notificationLatestId',\r\n 'idealTimeout',\r\n 'sessionTimeoutAt',\r\n 'roles'\r\n ];\r\n logoutInprogress = false;\r\n clearInterval(intervelTime);\r\n keysToRemove.forEach(k => SessionHelper.removeItem(k)); \r\n\r\n SessionHelper.setItem('idealTimeout', 'true');\r\n const data: HandleNoAuthFilterType = {};\r\n executeFilter(\"HandleNoAuthFilter\", data);\r\n }\r\n }); \r\n\r\n const currentUserdetails = SessionHelper.getItem('userDetails');\r\n\r\n if (currentUserdetails){\r\n SessionValidateIntervel(); \r\n document.addEventListener(\"mousemove\", handleCursor);\r\n }\r\n\r\n x.registerFilter(\"LogoutFilter\", async (data: LogoutFilterType) => {\r\n try {\r\n const userdetails = AuthService.getUserDetails();\r\n const keysToRemove = [\r\n 'userDetails',\r\n 'oauthToken',\r\n 'refreshToken',\r\n 'oauthTokenValidity',\r\n 'OptOutEmailPrefrenceIndexId',\r\n 'notificationLatestId',\r\n 'sessionTimeoutAt',\r\n 'roles'\r\n ];\r\n clearInterval(intervelTime);\r\n keysToRemove.forEach(k => SessionHelper.removeItem(k));\r\n \r\n if (userdetails?.userid) {\r\n await RefreshTokenService.clearSession(userdetails.userid);\r\n }\r\n \r\n } catch (err) {\r\n console.log(err);\r\n } finally {\r\n logoutInprogress = false;\r\n window.location.href = '/login';\r\n }\r\n });\r\n \r\n x.registerFilter(\"IsLoggedInFilter\", (data: IsLoggedInFilterType) => {\r\n data.isLoggedIn = !!(SessionHelper.getItem('oauthToken') && SessionHelper.getItem('userDetails'));\r\n });\r\n \r\n x.registerFilter(\"HandleNoAuthFilter\", () => {\r\nif(window.location.pathname!==\"/login\")\r\n TheHistory.history?.push(`/login?redirect=${window.location.pathname}${window.location.search}`);\r\n });\r\n\r\n x.registerFilter(\"DoesUserHaveAccess\", (data: DoesUserHaveAccessFilterType) => {\r\n const userdetails = AuthService.getUserDetails();\r\n if (userdetails && userdetails.role){\r\n const userPermissions = (userdetails.role).split(','); \r\n let isUserHaveAccess: string | undefined = \"\";\r\n isUserHaveAccess = userPermissions.find(r => data.permissions.includes(r)); \r\n return !!isUserHaveAccess;\r\n } \r\n return false;\r\n });\r\n}\r\n","/* eslint-disable react/prefer-stateless-function */\r\n/* eslint-disable require-jsdoc */\r\nimport React from 'react';\r\nimport SessionHelper from '../../../../Helpers/SessionHelper';\r\nimport { EnvService as process} from '../../../../Services/EnvService';\r\n\r\nimport './style.css';\r\n\r\nconst docIcon = require('./Images/doc.png');\r\nconst pdfIcon = require('./Images/pdf.png');\r\nconst docXIcon = require('./Images/doc.png');\r\nconst loadingImg= require('./Images/loader.gif');\r\nconst noPreview = require('./Images/No-Preview.png');\r\n\r\nexport interface ImageTemplateProps {\r\n PreviewId?: string;\r\n PreviewBigId?: string;\r\n alt?: string;\r\n type?: string;\r\n}\r\nconst templateType = 'Image';\r\n\r\nclass TheState {\r\n imgPath: string = loadingImg;\r\n bigImgPath:string=loadingImg;\r\n showBigPreview:boolean=false;\r\n}\r\n\r\nclass ImageTemplate extends React.Component{\r\n constructor(props: ImageTemplateProps) {\r\n super(props);\r\n this.state = new TheState();\r\n }\r\n\r\n\r\n componentDidMount() {\r\n fetch(`${process.env.REACT_APP_API_FILE_DETAILS}/preview?id=${this.props.PreviewId}`, {\r\n headers: {\r\n Authorization: `Bearer ${SessionHelper.getItem('oauthToken')}`\r\n }\r\n })\r\n .then(res => res.blob())\r\n .then(blob => {\r\n this.setState({ imgPath: window.URL.createObjectURL(blob) });\r\n });\r\n }\r\n showBigImage=()=>{\r\n //console.log(\"enter\")\r\n this.setState({ showBigPreview: true});\r\n fetch(`${process.env.REACT_APP_API_FILE_DETAILS}/preview?id=${this.props.PreviewBigId}`, {\r\n headers: {\r\n Authorization: `Bearer ${SessionHelper.getItem('oauthToken')}`\r\n }\r\n })\r\n .then(res => res.blob())\r\n .then(blob => {\r\n this.setState({ bigImgPath: window.URL.createObjectURL(blob) });\r\n });\r\n }\r\n hideBigImage=()=>{\r\n //console.log(\"leave\")\r\n this.setState({ showBigPreview: false});\r\n }\r\n addNoPreviewSrc(ev: any){\r\n ev.target.src = noPreview;\r\n ev.target.onerror = noPreview;\r\n}\r\n\r\n\r\n render() {\r\n const templateDataProps: ImageTemplateProps = {\r\n PreviewId: this.props.PreviewId,\r\n alt: this.props.alt,\r\n type: this.props.type\r\n };\r\n return (\r\n
    \r\n {templateDataProps.PreviewId && templateDataProps.PreviewId.length > 0 && \"\" this.addNoPreviewSrc(e)} className=\"preview-image\" />}\r\n {(!templateDataProps.PreviewId || templateDataProps.PreviewId.length === 0) && templateDataProps.type?.toLowerCase() === 'pdf' && \"PDF\"}\r\n {(!templateDataProps.PreviewId || templateDataProps.PreviewId.length === 0) && (templateDataProps.type?.toLowerCase() === 'doc') && \"Doc\"}\r\n {(!templateDataProps.PreviewId || templateDataProps.PreviewId.length === 0) && (templateDataProps.type?.toLowerCase() === 'docx') && \"DocX\"}\r\n {this.state.showBigPreview &&
    this.addNoPreviewSrc(e)} alt=\"\" />
    }\r\n
    \r\n );\r\n }\r\n}\r\n\r\nconst control = {\r\n TemplateType: templateType,\r\n Template: ImageTemplate\r\n};\r\nexport default control;","/* eslint-disable react/prefer-stateless-function */\r\n/* eslint-disable require-jsdoc */\r\nimport React from 'react';\r\n\r\nexport interface LinkTemplateProps{\r\n url: string;\r\n title?:string;\r\n}\r\nconst templateType = 'Link';\r\n\r\nclass LinkTemplate extends React.Component{\r\n render(){\r\n const {url, title} = this.props;\r\n const templateDataProps:LinkTemplateProps = {\r\n url,\r\n title\r\n };\r\n \r\n return (\r\n {templateDataProps.title}\r\n );\r\n }\r\n}\r\n\r\nconst control = {\r\n TemplateType: templateType,\r\n Template: LinkTemplate\r\n};\r\nexport default control;","/* eslint-disable react/prefer-stateless-function */\r\n/* eslint-disable require-jsdoc */\r\nimport React from 'react';\r\n\r\nexport interface BadgeTemplateProps{\r\n status: string;\r\n }\r\nconst templateType = 'Badge';\r\n\r\nclass BadgeTemplate extends React.Component{\r\n render(){\r\n const templateDataProps:BadgeTemplateProps = {\r\n status: this.props.status\r\n };\r\n \r\n return (templateDataProps.status.toLowerCase() === 'active' ? : {templateDataProps.status});\r\n }\r\n}\r\n\r\nconst control = {\r\n TemplateType: templateType,\r\n Template: BadgeTemplate\r\n};\r\nexport default control;","/* eslint-disable react/prefer-stateless-function */\r\n/* eslint-disable require-jsdoc */\r\nimport React from 'react';\r\nimport './WarningTemplate.css';\r\n\r\nexport interface WarningIconTemplateProps{\r\n value:string\r\n }\r\nconst templateType = 'Warning';\r\n\r\nclass WarningIconTemplate extends React.Component{\r\n render(){\r\n const templateDataProps:WarningIconTemplateProps = {\r\n value: this.props.value\r\n };\r\n \r\n return (\r\n templateDataProps.value?.toLowerCase() === 'true' ? ! : \r\n );\r\n }\r\n}\r\n\r\nconst control = {\r\n TemplateType: templateType,\r\n Template: WarningIconTemplate\r\n};\r\nexport default control;","/* eslint-disable react/prefer-stateless-function */\r\n/* eslint-disable require-jsdoc */\r\nimport React from 'react';\r\nimport './MergeIconTemplate.css';\r\n\r\nexport interface MergeIconTemplateProps{\r\n value:boolean;\r\n }\r\nconst templateType = 'Merge';\r\n\r\nclass MergeIconTemplate extends React.Component{\r\n render(){\r\n const templateDataProps:MergeIconTemplateProps = {\r\n value: this.props.value\r\n };\r\n \r\n return (templateDataProps.value && templateDataProps.value.toString().toLowerCase() === 'true' ? M : );\r\n }\r\n}\r\n\r\nconst control = {\r\n TemplateType: templateType,\r\n Template: MergeIconTemplate\r\n};\r\nexport default control;","/* eslint-disable react/prefer-stateless-function */\r\n/* eslint-disable require-jsdoc */\r\nimport React from 'react';\r\nimport './ShareIconTemplate.css';\r\n\r\nexport interface ShareIconTemplateProps{\r\n value:boolean\r\n }\r\nconst templateType = 'Share';\r\n\r\nclass ShareIconTemplate extends React.Component{\r\n render(){\r\n const templateDataProps:ShareIconTemplateProps = {\r\n value: this.props.value\r\n };\r\n \r\n return (templateDataProps.value && templateDataProps.value.toString().toLowerCase() === 'true' ? S : );\r\n }\r\n}\r\n\r\nconst control = {\r\n TemplateType: templateType,\r\n Template: ShareIconTemplate\r\n};\r\nexport default control;","/* eslint-disable react/prefer-stateless-function */\r\n/* eslint-disable require-jsdoc */\r\nimport React from 'react';\r\nimport './ContentBlockTemplate.css';\r\n\r\nexport interface ContentBlockTemplateProps{\r\n value:string\r\n }\r\nconst templateType = 'ContentBlock';\r\n\r\nclass ContentBlockTemplate extends React.Component{\r\n render(){\r\n const templateDataProps:ContentBlockTemplateProps = {\r\n value: this.props.value\r\n };\r\n \r\n return (\r\n templateDataProps.value ?
    {templateDataProps.value}
    :
    \r\n );\r\n }\r\n}\r\n\r\nconst control = {\r\n TemplateType: templateType,\r\n Template: ContentBlockTemplate\r\n};\r\nexport default control;","/* eslint-disable react/prefer-stateless-function */\r\n/* eslint-disable require-jsdoc */\r\nimport React from 'react';\r\nimport './AttachmentIconTemplate.css';\r\n\r\nexport interface AttachmentIconTemplateProps{\r\n value:string\r\n }\r\nconst templateType = 'Attachment';\r\n\r\nclass AttachmentIconTemplate extends React.Component{\r\n render(){\r\n const templateDataProps:AttachmentIconTemplateProps = {\r\n value: this.props.value\r\n };\r\n \r\n return (parseInt(templateDataProps.value) > 0 ? : );\r\n }\r\n}\r\n\r\nconst control = {\r\n TemplateType: templateType,\r\n Template: AttachmentIconTemplate\r\n};\r\nexport default control;","/* eslint-disable react/prefer-stateless-function */\r\n/* eslint-disable require-jsdoc */\r\nimport React from 'react';\r\nimport { Modal } from 'react-bootstrap';\r\nimport './LikeIconTemplate.css';\r\n\r\nexport interface LikeIconTemplateProps{\r\n value:string\r\n }\r\nconst templateType = 'Like';\r\nclass TheState{\r\n showInsights:boolean=false;\r\n}\r\n\r\nclass LikeIconTemplate extends React.Component{\r\n constructor(props: LikeIconTemplateProps) {\r\n super(props);\r\n this.state = new TheState();\r\n }\r\n \r\n showInsightModal=() => {\r\n this.setState({showInsights: true});\r\n }\r\n\r\n handleClose = () => {\r\n this.setState({ showInsights: false });\r\n };\r\n \r\n render(){\r\n const templateDataProps:LikeIconTemplateProps = {\r\n value: this.props.value\r\n };\r\n \r\n return (\r\n <>\r\n {(parseInt(templateDataProps.value) > 0 ? : )}\r\n \r\n \r\n Comments\r\n \r\n

    Enter your comments:

    \r\n