@itilite/iui-user-management 1.0.1 → 1.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,4 @@
1
- import { IUIAsyncSelect, IUIBox, IUILabel, IUIFileUpload, IUICheckboxButton, IUIPhone, IUISelect, IUIDatePicker, IUIInput, IUIDivider, IUIGrid, IUITypography, IUIRadio, IUIButton, IUIModal, IUIAccordion, IUIAccordionSummary, IUIAccordionDetails, IUIIconButton, IUICard, IUIBackdrop, IUICircularProgress, IUIBreadCrumb, IUIDropzone, IUIStepper, IUIFormControlLabel, IUICheckBox, IUIPrimaryRadio, IUITable, IUISkeleton, IUIProfileBox, IUIFormGroup, IUIDropdownButton, IUITabs } from '@itilite/iuistyles';
1
+ import { IUIAsyncSelect, IUIBox, IUILabel, IUIFileUpload, IUICheckboxButton, IUIPhone, IUISelect, IUIDatePicker, IUIInput, IUIDivider, IUIGrid, IUITypography, IUIRadio, IUIButton, IUIModal, IUIAccordion, IUIAccordionSummary, IUIAccordionDetails, IUIIconButton, IUICard, IUIBackdrop, IUICircularProgress, IUIBreadCrumb, IUIDropzone, IUIStepper, IUIFormControlLabel, IUICheckBox, IUIPrimaryRadio, IUITable, IUISkeleton, IUIProfileBox, IUIFormGroup, IUISearch, IUIDropdownButton, IUITabs } from '@itilite/iuistyles';
2
2
  import React, { useState, useEffect, useRef, Fragment as Fragment$1 } from 'react';
3
3
  import { configs, services, utilUrls } from '@itilite/utils';
4
4
  import axios from 'axios';
@@ -14,7 +14,8 @@ import { withStyles } from '@material-ui/core/styles';
14
14
  import Switch from '@material-ui/core/Switch';
15
15
  import MoreHorizIcon from '@material-ui/icons/MoreHoriz';
16
16
  import Button from '@material-ui/core/Button';
17
- import { Popper, Grow, Paper, ClickAwayListener, MenuList, MenuItem, Typography } from '@material-ui/core';
17
+ import { Popper, Grow, Paper, ClickAwayListener, MenuList, MenuItem, Typography, Box } from '@material-ui/core';
18
+ import { useScrollPosition } from '@n8tb1t/use-scroll-position';
18
19
 
19
20
  function _extends() {
20
21
  _extends = Object.assign ? Object.assign.bind() : function (target) {
@@ -6698,7 +6699,7 @@ var fetchBulkactionHistory = function fetchBulkactionHistory(url) {
6698
6699
  };
6699
6700
  };
6700
6701
 
6701
- var styles$5 = {"UUIUserManagementList":"_3WNHx","pageHeader":"_1WLpc","buttonWrapper":"_2egTG","headingWrapper":"_1He01","headingSignUpWrapper":"_Q8vqd","heading":"_1uPaO","headingLarge":"_2FsLd","headingMedium":"_nGXA9","headingSmall":"_2rpwF","description":"_25vb9","headerText":"_1Ny9J","letterImage":"_2hr3R","tablewrapper":"_1-RPw","rowText":"_1LXyO","textTransform":"_3kFQS","lightColor":"_3Ghgw","avatarClassName":"_2qO_X","tooltipText":"_151u_","tooltip":"_-LQNH","importModalBodyContainer":"_25xUk","dividerColor":"_2HZv9","w100":"_3vGmU","downloadTemplateContainer":"_3-Xu_","downloadTemplateDescContainer":"_tLw43","labelContainer":"_7TYUZ","downlTempHeader":"__CZpe","downlTempDescription":"_19jEe","downloadTemplateButton":"_1qXtq","fileUploaderContainer":"_1YVz2","colGap":"_3vnY5","deActivateModalContainer":"_28H9H","backdrop":"_1ky1x","errorText":"_26_if","user_list_page_tabs":"_xWE7K","TabLabelCount":"_13pXn"};
6702
+ var styles$5 = {"UUIUserManagementList":"_3WNHx","scrollOverlayMenu":"_2_WEg","overlaysearch":"_1Pbhb","pageHeader":"_1WLpc","buttonWrapper":"_2egTG","headingWrapper":"_1He01","headingSignUpWrapper":"_Q8vqd","heading":"_1uPaO","headingLarge":"_2FsLd","headingMedium":"_nGXA9","headingSmall":"_2rpwF","description":"_25vb9","headerText":"_1Ny9J","letterImage":"_2hr3R","tablewrapper":"_1-RPw","rowText":"_1LXyO","textTransform":"_3kFQS","lightColor":"_3Ghgw","avatarClassName":"_2qO_X","tooltipText":"_151u_","tooltip":"_-LQNH","importModalBodyContainer":"_25xUk","dividerColor":"_2HZv9","w100":"_3vGmU","downloadTemplateContainer":"_3-Xu_","downloadTemplateDescContainer":"_tLw43","labelContainer":"_7TYUZ","downlTempHeader":"__CZpe","downlTempDescription":"_19jEe","downloadTemplateButton":"_1qXtq","fileUploaderContainer":"_1YVz2","colGap":"_3vnY5","deActivateModalContainer":"_28H9H","backdrop":"_1ky1x","errorText":"_26_if","user_list_page_tabs":"_xWE7K","TabLabelCount":"_13pXn"};
6702
6703
 
6703
6704
  var BulkUploadModal = function BulkUploadModal(props) {
6704
6705
  var isOpenImportUsersModal = props.isOpenImportUsersModal,
@@ -8296,7 +8297,8 @@ var StickyHeadTable = function StickyHeadTable(props) {
8296
8297
  isDataFetching: isDataFetching,
8297
8298
  disableRowCheckbox: disableRowCheckbox,
8298
8299
  searchBoxWidth: "400px",
8299
- searchValue: searchValue
8300
+ searchValue: searchValue,
8301
+ hideTopPagination: false
8300
8302
  });
8301
8303
  };
8302
8304
  var SingupRequests = function SingupRequests(props) {
@@ -8453,7 +8455,7 @@ var UserList = function UserList(_ref2) {
8453
8455
  var _React$useState = React.useState(1),
8454
8456
  page = _React$useState[0],
8455
8457
  setPage = _React$useState[1];
8456
- var _useState = useState(5),
8458
+ var _useState = useState(10),
8457
8459
  rowsPerPage = _useState[0],
8458
8460
  setRowsPerPage = _useState[1];
8459
8461
  var _React$useState2 = React.useState({}),
@@ -8499,18 +8501,42 @@ var UserList = function UserList(_ref2) {
8499
8501
  var _useState10 = useState(false),
8500
8502
  isApiFetching = _useState10[0],
8501
8503
  setisApiFetching = _useState10[1];
8502
- var _React$useState5 = React.useState(1),
8503
- signup_page = _React$useState5[0],
8504
- setSignUpPage = _React$useState5[1];
8504
+ var _React$useState5 = React.useState(false),
8505
+ overlayMenu = _React$useState5[0],
8506
+ setOverlayMenu = _React$useState5[1];
8507
+ useScrollPosition(function (_ref3) {
8508
+ var prevPos = _ref3.prevPos,
8509
+ currPos = _ref3.currPos;
8510
+ console.log(currPos.y, 'zz');
8511
+ if (prevPos.y - currPos.y > 0) {
8512
+ if (currPos.y <= -275) {
8513
+ setOverlayMenu(true);
8514
+ }
8515
+ } else {
8516
+ if (currPos.y > -295) {
8517
+ setOverlayMenu(false);
8518
+ }
8519
+ }
8520
+ }, [overlayMenu]);
8521
+ var scrollTo = function scrollTo(id) {
8522
+ var el = document.getElementById(id);
8523
+ window.scrollTo({
8524
+ top: el.offsetTop,
8525
+ behavior: 'smooth'
8526
+ });
8527
+ };
8528
+ var _React$useState6 = React.useState(1),
8529
+ signup_page = _React$useState6[0],
8530
+ setSignUpPage = _React$useState6[1];
8505
8531
  var _useState11 = useState(5),
8506
8532
  signup_rowsPerPage = _useState11[0],
8507
8533
  setSignUpRowsPerPage = _useState11[1];
8508
- var _React$useState6 = React.useState('asc'),
8509
- signup_order = _React$useState6[0],
8510
- setSignUpOrder = _React$useState6[1];
8511
- var _React$useState7 = React.useState('fname'),
8512
- signup_orderBy = _React$useState7[0],
8513
- setSignUpOrderBy = _React$useState7[1];
8534
+ var _React$useState7 = React.useState('asc'),
8535
+ signup_order = _React$useState7[0],
8536
+ setSignUpOrder = _React$useState7[1];
8537
+ var _React$useState8 = React.useState('fname'),
8538
+ signup_orderBy = _React$useState8[0],
8539
+ setSignUpOrderBy = _React$useState8[1];
8514
8540
  var _useState12 = useState(''),
8515
8541
  signup_searchValue = _useState12[0],
8516
8542
  set_signup_SearchValue = _useState12[1];
@@ -8735,6 +8761,7 @@ var UserList = function UserList(_ref2) {
8735
8761
  dispatch(fetchUsersList(url)).then(function () {
8736
8762
  setSearchingChange(false);
8737
8763
  setisApiFetching(false);
8764
+ scrollTo('table-root');
8738
8765
  });
8739
8766
  }, 1000);
8740
8767
  return function () {
@@ -8760,6 +8787,7 @@ var UserList = function UserList(_ref2) {
8760
8787
  }
8761
8788
  if (isSortingChange) {
8762
8789
  setisApiFetching(true);
8790
+ scrollTo('table-root');
8763
8791
  dispatch(fetchUsersList(url)).then(function () {
8764
8792
  setisApiFetching(false);
8765
8793
  setSortingChange(false);
@@ -8798,15 +8826,89 @@ var UserList = function UserList(_ref2) {
8798
8826
  }
8799
8827
  }
8800
8828
  }, [isTokenVerified, isSearchingChangeTemp, isSortingChangeTemp, isSignUpSearchingChangeTemp, isSignUpSortingChangeTemp]);
8829
+ var topRightButtons = function topRightButtons() {
8830
+ return /*#__PURE__*/React.createElement(IUIBox, {
8831
+ component: "div",
8832
+ className: styles$5.buttonWrapper,
8833
+ display: "flex",
8834
+ justifyContent: "space-between",
8835
+ alignItems: "center",
8836
+ alignSelf: "flex-start"
8837
+ }, /*#__PURE__*/React.createElement(IUIBox, {
8838
+ component: "div",
8839
+ className: clsx(styles$5.buttonSingle, styles$5.buttonLeft)
8840
+ }, /*#__PURE__*/React.createElement(IUIButton, {
8841
+ buttonText: "Export all users",
8842
+ type: "outlined",
8843
+ startIcon: /*#__PURE__*/React.createElement(BulkDownloadIcon, {
8844
+ width: "22",
8845
+ height: "22"
8846
+ }),
8847
+ onClick: handleExportUsers
8848
+ })), /*#__PURE__*/React.createElement(IUIBox, {
8849
+ component: "div",
8850
+ className: clsx(styles$5.buttonSingle, styles$5.buttonLeft)
8851
+ }, /*#__PURE__*/React.createElement(IUIDropdownButton, {
8852
+ buttonText: "Bulk actions",
8853
+ type: "outlined",
8854
+ menuListInfo: BulkUploadInfo
8855
+ })), /*#__PURE__*/React.createElement(IUIBox, {
8856
+ component: "div",
8857
+ className: "pageHeader--button-single button-right"
8858
+ }, /*#__PURE__*/React.createElement(IUIButton, {
8859
+ buttonText: "Add user",
8860
+ type: "contained",
8861
+ startIcon: /*#__PURE__*/React.createElement(AddIcon, {
8862
+ width: "9",
8863
+ height: "9",
8864
+ color: "white"
8865
+ }),
8866
+ onClick: handleAddPageNavigation
8867
+ })));
8868
+ };
8801
8869
  return /*#__PURE__*/React.createElement(IUIBox, {
8802
8870
  component: "div",
8803
8871
  className: styles$5.UUIUserManagementList
8804
- }, !hasVerificationError ? /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(IUIBackdrop, {
8872
+ }, overlayMenu ? /*#__PURE__*/React.createElement(Box, {
8873
+ className: styles$5.scrollOverlayMenu
8874
+ }, /*#__PURE__*/React.createElement(IUIBox, {
8875
+ component: "div",
8876
+ className: clsx(styles$5.pageHeader)
8877
+ }, /*#__PURE__*/React.createElement(IUIBox, {
8878
+ component: "div",
8879
+ display: "flex",
8880
+ justifyContent: "space-between",
8881
+ alignItems: "center",
8882
+ flexWrap: "wrap",
8883
+ style: {
8884
+ gap: '1rem'
8885
+ }
8886
+ }, /*#__PURE__*/React.createElement(IUIBox, {
8887
+ component: "div",
8888
+ display: "flex",
8889
+ flexDirection: "column",
8890
+ style: {
8891
+ gap: '0.5rem'
8892
+ }
8893
+ }, /*#__PURE__*/React.createElement(IUISearch, {
8894
+ placeholder: "Search by name, email & department",
8895
+ value: searchValue,
8896
+ onChangeHandler: function onChangeHandler(e) {
8897
+ return onSearchHandler(e.target.value);
8898
+ },
8899
+ className: styles$5.overlaysearch
8900
+ })), topRightButtons()), /*#__PURE__*/React.createElement(IUIBox, {
8901
+ component: "div",
8902
+ display: "flex",
8903
+ justifyContent: "space-between",
8904
+ alignItems: "center"
8905
+ }))) : '', !hasVerificationError ? /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(IUIBackdrop, {
8805
8906
  open: isFileDownloading || isApiFetching,
8806
8907
  className: styles$5.backdrop
8807
8908
  }, /*#__PURE__*/React.createElement(IUICircularProgress, {
8808
8909
  color: "inherit"
8809
8910
  })), isDataFetching ? /*#__PURE__*/React.createElement(SkeletonLoader, null) : /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(IUIBox, {
8911
+ id: "table-root",
8810
8912
  component: "div",
8811
8913
  className: clsx(styles$5.pageHeader)
8812
8914
  }, /*#__PURE__*/React.createElement(IUIBox, {
@@ -8831,44 +8933,7 @@ var UserList = function UserList(_ref2) {
8831
8933
  }, /*#__PURE__*/React.createElement(IUITypography, {
8832
8934
  variant: "h3",
8833
8935
  className: clsx(styles$5.heading, styles$5.headingLarge)
8834
- }, isILadmin && companyName ? companyName + " - Users" : 'Users'))), /*#__PURE__*/React.createElement(IUIBox, {
8835
- component: "div",
8836
- className: styles$5.buttonWrapper,
8837
- display: "flex",
8838
- justifyContent: "space-between",
8839
- alignItems: "center",
8840
- alignSelf: "flex-start"
8841
- }, /*#__PURE__*/React.createElement(IUIBox, {
8842
- component: "div",
8843
- className: clsx(styles$5.buttonSingle, styles$5.buttonLeft)
8844
- }, /*#__PURE__*/React.createElement(IUIButton, {
8845
- buttonText: "Export all users",
8846
- type: "outlined",
8847
- startIcon: /*#__PURE__*/React.createElement(BulkDownloadIcon, {
8848
- width: "22",
8849
- height: "22"
8850
- }),
8851
- onClick: handleExportUsers
8852
- })), /*#__PURE__*/React.createElement(IUIBox, {
8853
- component: "div",
8854
- className: clsx(styles$5.buttonSingle, styles$5.buttonLeft)
8855
- }, /*#__PURE__*/React.createElement(IUIDropdownButton, {
8856
- buttonText: "Bulk actions",
8857
- type: "outlined",
8858
- menuListInfo: BulkUploadInfo
8859
- })), /*#__PURE__*/React.createElement(IUIBox, {
8860
- component: "div",
8861
- className: "pageHeader--button-single button-right"
8862
- }, /*#__PURE__*/React.createElement(IUIButton, {
8863
- buttonText: "Add user",
8864
- type: "contained",
8865
- startIcon: /*#__PURE__*/React.createElement(AddIcon, {
8866
- width: "9",
8867
- height: "9",
8868
- color: "white"
8869
- }),
8870
- onClick: handleAddPageNavigation
8871
- })))), /*#__PURE__*/React.createElement(IUIBox, {
8936
+ }, isILadmin && companyName ? companyName + " - Users" : 'Users'))), topRightButtons()), /*#__PURE__*/React.createElement(IUIBox, {
8872
8937
  component: "div",
8873
8938
  display: "flex",
8874
8939
  justifyContent: "space-between",
@@ -8995,8 +9060,8 @@ var UserList = function UserList(_ref2) {
8995
9060
  errMsg: hasVerificationError
8996
9061
  }));
8997
9062
  };
8998
- var TabLabelCount = function TabLabelCount(_ref3) {
8999
- var count = _ref3.count;
9063
+ var TabLabelCount = function TabLabelCount(_ref4) {
9064
+ var count = _ref4.count;
9000
9065
  return /*#__PURE__*/React.createElement(IUIBox, {
9001
9066
  className: styles$5.TabLabelCount
9002
9067
  }, " ", count, " ");