@salesgenterp/ui-components 0.4.77 → 0.4.78

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.
package/dist/index.js CHANGED
@@ -23,6 +23,16 @@ var reactHookForm = require('react-hook-form');
23
23
  var hi = require('react-icons/hi');
24
24
  var Cards = _interopDefault(require('react-credit-cards'));
25
25
  var fi = require('react-icons/fi');
26
+ var styles = require('@mui/styles');
27
+ var lodash = require('lodash');
28
+ var axios = _interopDefault(require('axios'));
29
+ var DashboardIcon = _interopDefault(require('@mui/icons-material/Dashboard'));
30
+ require('@mui/icons-material/ShoppingCart');
31
+ require('@mui/icons-material/People');
32
+ require('@mui/icons-material/BarChart');
33
+ require('@mui/icons-material/LibraryBooks');
34
+ var ExpandLessIcon = _interopDefault(require('@mui/icons-material/ExpandLess'));
35
+ var ExpandMoreIcon = _interopDefault(require('@mui/icons-material/ExpandMore'));
26
36
 
27
37
  function _extends() {
28
38
  _extends = Object.assign ? Object.assign.bind() : function (target) {
@@ -56,6 +66,25 @@ function _setPrototypeOf(o, p) {
56
66
  return _setPrototypeOf(o, p);
57
67
  }
58
68
 
69
+ function _objectDestructuringEmpty(obj) {
70
+ if (obj == null) throw new TypeError("Cannot destructure undefined");
71
+ }
72
+
73
+ function _objectWithoutPropertiesLoose(source, excluded) {
74
+ if (source == null) return {};
75
+ var target = {};
76
+ var sourceKeys = Object.keys(source);
77
+ var key, i;
78
+
79
+ for (i = 0; i < sourceKeys.length; i++) {
80
+ key = sourceKeys[i];
81
+ if (excluded.indexOf(key) >= 0) continue;
82
+ target[key] = source[key];
83
+ }
84
+
85
+ return target;
86
+ }
87
+
59
88
  function _taggedTemplateLiteralLoose(strings, raw) {
60
89
  if (!raw) {
61
90
  raw = strings.slice(0);
@@ -267,7 +296,7 @@ function createCommonjsModule(fn, module) {
267
296
  */
268
297
  var b="function"===typeof Symbol&&Symbol.for,c=b?Symbol.for("react.element"):60103,d=b?Symbol.for("react.portal"):60106,e=b?Symbol.for("react.fragment"):60107,f=b?Symbol.for("react.strict_mode"):60108,g=b?Symbol.for("react.profiler"):60114,h=b?Symbol.for("react.provider"):60109,k=b?Symbol.for("react.context"):60110,l=b?Symbol.for("react.async_mode"):60111,m=b?Symbol.for("react.concurrent_mode"):60111,n=b?Symbol.for("react.forward_ref"):60112,p=b?Symbol.for("react.suspense"):60113,q=b?
269
298
  Symbol.for("react.suspense_list"):60120,r=b?Symbol.for("react.memo"):60115,t=b?Symbol.for("react.lazy"):60116,v=b?Symbol.for("react.block"):60121,w=b?Symbol.for("react.fundamental"):60117,x=b?Symbol.for("react.responder"):60118,y=b?Symbol.for("react.scope"):60119;
270
- function z(a){if("object"===typeof a&&null!==a){var u=a.$$typeof;switch(u){case c:switch(a=a.type,a){case l:case m:case e:case g:case f:case p:return a;default:switch(a=a&&a.$$typeof,a){case k:case n:case t:case r:case h:return a;default:return u}}case d:return u}}}function A(a){return z(a)===m}var AsyncMode=l;var ConcurrentMode=m;var ContextConsumer=k;var ContextProvider=h;var Element=c;var ForwardRef=n;var Fragment=e;var Lazy=t;var Memo=r;var Portal=d;
299
+ function z(a){if("object"===typeof a&&null!==a){var u=a.$$typeof;switch(u){case c:switch(a=a.type,a){case l:case m:case e:case g:case f:case p:return a;default:switch(a=a&&a.$$typeof,a){case k:case n:case t:case r:case h:return a;default:return u}}case d:return u}}}function A(a){return z(a)===m}var AsyncMode=l;var ConcurrentMode=m;var ContextConsumer=k;var ContextProvider=h;var Element=c;var ForwardRef=n;var Fragment$1=e;var Lazy=t;var Memo=r;var Portal=d;
271
300
  var Profiler=g;var StrictMode=f;var Suspense=p;var isAsyncMode=function(a){return A(a)||z(a)===l};var isConcurrentMode=A;var isContextConsumer=function(a){return z(a)===k};var isContextProvider=function(a){return z(a)===h};var isElement=function(a){return "object"===typeof a&&null!==a&&a.$$typeof===c};var isForwardRef=function(a){return z(a)===n};var isFragment=function(a){return z(a)===e};var isLazy=function(a){return z(a)===t};
272
301
  var isMemo=function(a){return z(a)===r};var isPortal=function(a){return z(a)===d};var isProfiler=function(a){return z(a)===g};var isStrictMode=function(a){return z(a)===f};var isSuspense=function(a){return z(a)===p};
273
302
  var isValidElementType=function(a){return "string"===typeof a||"function"===typeof a||a===e||a===m||a===g||a===f||a===p||a===q||"object"===typeof a&&null!==a&&(a.$$typeof===t||a.$$typeof===r||a.$$typeof===h||a.$$typeof===k||a.$$typeof===n||a.$$typeof===w||a.$$typeof===x||a.$$typeof===y||a.$$typeof===v)};var typeOf=z;
@@ -279,7 +308,7 @@ var reactIs_production_min = {
279
308
  ContextProvider: ContextProvider,
280
309
  Element: Element,
281
310
  ForwardRef: ForwardRef,
282
- Fragment: Fragment,
311
+ Fragment: Fragment$1,
283
312
  Lazy: Lazy,
284
313
  Memo: Memo,
285
314
  Portal: Portal,
@@ -3439,6 +3468,975 @@ var CheckoutPageComponent = function CheckoutPageComponent(_ref) {
3439
3468
  }));
3440
3469
  };
3441
3470
 
3471
+ var convertCamCaseToSnake = function convertCamCaseToSnake(child) {
3472
+ var data = [];
3473
+ var i = 1;
3474
+ Object.keys(child).map(function (k) {
3475
+ var result = k.replace(/([A-Z])/g, ' $1');
3476
+ var dataIndex = {
3477
+ key: i.toString(),
3478
+ name: result.charAt(0).toUpperCase() + result.slice(1),
3479
+ value: child[k]
3480
+ };
3481
+ data.push(dataIndex);
3482
+ i++;
3483
+ });
3484
+ return data;
3485
+ };
3486
+
3487
+ // A type of promise-like that resolves synchronously and supports only one observer
3488
+
3489
+ const _iteratorSymbol = /*#__PURE__*/ typeof Symbol !== "undefined" ? (Symbol.iterator || (Symbol.iterator = Symbol("Symbol.iterator"))) : "@@iterator";
3490
+
3491
+ const _asyncIteratorSymbol = /*#__PURE__*/ typeof Symbol !== "undefined" ? (Symbol.asyncIterator || (Symbol.asyncIterator = Symbol("Symbol.asyncIterator"))) : "@@asyncIterator";
3492
+
3493
+ // Asynchronously call a function and send errors to recovery continuation
3494
+ function _catch(body, recover) {
3495
+ try {
3496
+ var result = body();
3497
+ } catch(e) {
3498
+ return recover(e);
3499
+ }
3500
+ if (result && result.then) {
3501
+ return result.then(void 0, recover);
3502
+ }
3503
+ return result;
3504
+ }
3505
+
3506
+ // Asynchronously await a promise and pass the result to a finally continuation
3507
+ function _finallyRethrows(body, finalizer) {
3508
+ try {
3509
+ var result = body();
3510
+ } catch (e) {
3511
+ return finalizer(true, e);
3512
+ }
3513
+ if (result && result.then) {
3514
+ return result.then(finalizer.bind(null, false), finalizer.bind(null, true));
3515
+ }
3516
+ return finalizer(false, result);
3517
+ }
3518
+
3519
+ var erLocalStorage = {
3520
+ setItem: function setItem(key, value) {
3521
+ localStorage.setItem(key, value);
3522
+ },
3523
+ getItem: function getItem(key) {
3524
+ return localStorage.getItem(key);
3525
+ },
3526
+ removeItem: function removeItem(key) {
3527
+ localStorage.removeItem(key);
3528
+ },
3529
+ setJSONItem: function setJSONItem(key, value) {
3530
+ value = JSON.stringify(value);
3531
+ localStorage.setItem(key, value);
3532
+ },
3533
+ getJSONItem: function getJSONItem(key) {
3534
+ var returnValue = {};
3535
+
3536
+ try {
3537
+ returnValue = localStorage.getItem(key) ? JSON.parse(localStorage.getItem(key)) : {};
3538
+ } catch (e) {
3539
+ console.error(e);
3540
+ }
3541
+
3542
+ return returnValue;
3543
+ }
3544
+ };
3545
+
3546
+ var API_END_POINT = 'https://dev.salesgent.xyz/api';
3547
+ var STORAGE_KEYS = {
3548
+ ACCESS_TOKEN: 'accessToken',
3549
+ REFRESH_TOKEN: 'refreshToken',
3550
+ TABLE_STATE: 'TABLE_STATE',
3551
+ TABLE_DATA: 'TABLE_DATA'
3552
+ };
3553
+ var API_STATUSES = Object.freeze({
3554
+ PENDING: 'PENDING',
3555
+ LOADING: 'LOADING',
3556
+ SUCCESS: 'SUCCESS',
3557
+ ERROR: 'ERROR'
3558
+ });
3559
+
3560
+ var getJSONItem = erLocalStorage.getJSONItem;
3561
+ var loadCachedTableState = function loadCachedTableState(_ref2) {
3562
+ var tableId = _ref2.tableId;
3563
+ return (getJSONItem(STORAGE_KEYS.TABLE_STATE) || {})[tableId] || {
3564
+ filters: {}
3565
+ };
3566
+ };
3567
+
3568
+ var ErCache = /*#__PURE__*/function () {
3569
+ function ErCache() {
3570
+ this.sessionStorage = window.sessionStorage;
3571
+ }
3572
+
3573
+ var _proto = ErCache.prototype;
3574
+
3575
+ _proto.getItem = function getItem(key) {
3576
+ return this.sessionStorage.getItem(key);
3577
+ };
3578
+
3579
+ _proto.getJSONItem = function getJSONItem(key) {
3580
+ try {
3581
+ return JSON.parse(this.sessionStorage.getItem(key));
3582
+ } catch (e) {
3583
+ return {};
3584
+ }
3585
+ };
3586
+
3587
+ _proto.removeItem = function removeItem(key) {
3588
+ this.sessionStorage.removeItem(key);
3589
+ };
3590
+
3591
+ _proto.setItem = function setItem(_ref) {
3592
+ var key = _ref.key,
3593
+ value = _ref.value;
3594
+ return this.sessionStorage.setItem(key, value);
3595
+ };
3596
+
3597
+ _proto.setJSONItem = function setJSONItem(_ref2) {
3598
+ var key = _ref2.key,
3599
+ value = _ref2.value;
3600
+
3601
+ try {
3602
+ return this.sessionStorage.setItem(key, JSON.stringify(value));
3603
+ } catch (e) {
3604
+ console.error(e);
3605
+ }
3606
+ };
3607
+
3608
+ return ErCache;
3609
+ }();
3610
+
3611
+ var erCache = new ErCache();
3612
+
3613
+ var getItem = erLocalStorage.getItem,
3614
+ getJSONItem$1 = erLocalStorage.getJSONItem,
3615
+ setItem = erLocalStorage.setItem;
3616
+ var ACCESS_TOKEN = STORAGE_KEYS.ACCESS_TOKEN,
3617
+ REFRESH_TOKEN = STORAGE_KEYS.REFRESH_TOKEN;
3618
+ var byPassAuthAPIs = ['/authenticate'];
3619
+ var API_CACHE_PREFIX = 'API_CACHE';
3620
+
3621
+ var getKeyFromPath = function getKeyFromPath(_ref) {
3622
+ var path = _ref.path,
3623
+ queryParams = _ref.queryParams;
3624
+ return API_CACHE_PREFIX + "_" + path + "_" + JSON.stringify(queryParams);
3625
+ };
3626
+
3627
+ var getAPICacheData = function getAPICacheData(_ref2) {
3628
+ var path = _ref2.path,
3629
+ queryParams = _ref2.queryParams;
3630
+ var cachedData = erCache.getJSONItem(getKeyFromPath({
3631
+ path: path,
3632
+ queryParams: queryParams
3633
+ }));
3634
+ return lodash.isEmpty(cachedData) ? null : cachedData;
3635
+ };
3636
+
3637
+ var setAPIDataToCache = function setAPIDataToCache(_ref3) {
3638
+ var path = _ref3.path,
3639
+ queryParams = _ref3.queryParams,
3640
+ data = _ref3.data;
3641
+ erCache.setJSONItem({
3642
+ key: getKeyFromPath({
3643
+ path: path,
3644
+ queryParams: queryParams
3645
+ }),
3646
+ value: data
3647
+ });
3648
+ };
3649
+
3650
+ var CancelToken = axios.CancelToken;
3651
+ var source;
3652
+
3653
+ var API = function API(apiData) {
3654
+ try {
3655
+ var url = apiData.url,
3656
+ method = apiData.method,
3657
+ _apiData$queryParams = apiData.queryParams,
3658
+ queryParams = _apiData$queryParams === void 0 ? {} : _apiData$queryParams,
3659
+ formData = apiData.formData,
3660
+ body = apiData.body,
3661
+ isCancelToken = apiData.isCancelToken,
3662
+ cache = apiData.cache,
3663
+ _apiData$headers = apiData.headers,
3664
+ headers = _apiData$headers === void 0 ? {} : _apiData$headers,
3665
+ successMessage = apiData.successMessage,
3666
+ hideErrorMessage = apiData.hideErrorMessage,
3667
+ responseTypeData = apiData.responseTypeData;
3668
+ return Promise.resolve(_finallyRethrows(function () {
3669
+ return _catch(function () {
3670
+ function _temp2() {
3671
+ if (successMessage) {
3672
+ alert(successMessage);
3673
+ }
3674
+
3675
+ if (responseTypeData) {
3676
+ return response.data;
3677
+ } else {
3678
+ return response.data.result;
3679
+ }
3680
+ }
3681
+
3682
+ var apiUrl = ("/" + url).replace(/\/\//g, '/');
3683
+ var accessToken = getItem(ACCESS_TOKEN) || 'eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJzYWxlc2dlbnRlcnBAZ21haWwuY29tIiwidGllciI6MiwidXNlclR5cGUiOiJDdXN0b21lciIsInRva2VuVHlwZSI6ImFjY2VzcyIsInN0b3JlSWQiOjIsImV4cCI6MTY2NDkxNzA2NiwidXNlcklkIjoyNDU1LCJpYXQiOjE2NjQ4ODEwNjYsInJlc2V0UGFzc3dvcmRSZXF1aXJlZCI6ZmFsc2V9.zpK0A-qiWg32jBKHo0ddnuUBD1-S8ZlmZvUAYNUdaWg';
3684
+ var requestHeaders = headers;
3685
+
3686
+ if (byPassAuthAPIs.indexOf(url) === -1) {
3687
+ requestHeaders = _extends({}, headers, {
3688
+ Authorization: "Bearer " + accessToken,
3689
+ Accept: "application/json, text/plain"
3690
+ });
3691
+ }
3692
+
3693
+ var response;
3694
+
3695
+ if (isCancelToken && typeof source != typeof undefined) {
3696
+ source.cancel();
3697
+ }
3698
+
3699
+ source = CancelToken.source();
3700
+
3701
+ if (apiUrl.indexOf('/services') === 0) {
3702
+ queryParams.token = accessToken;
3703
+ } else {
3704
+ apiUrl = "" + API_END_POINT + apiUrl;
3705
+ }
3706
+
3707
+ var _temp = function () {
3708
+ if (cache && getAPICacheData({
3709
+ path: apiUrl,
3710
+ queryParams: queryParams
3711
+ })) {
3712
+ response = getAPICacheData({
3713
+ path: apiUrl,
3714
+ queryParams: queryParams
3715
+ });
3716
+ } else {
3717
+ return Promise.resolve(axios.request({
3718
+ method: method || 'GET',
3719
+ url: apiUrl,
3720
+ data: formData || body,
3721
+ params: queryParams,
3722
+ headers: requestHeaders,
3723
+ cancelToken: source.token,
3724
+ responseType: responseTypeData ? responseTypeData : null
3725
+ })).then(function (_axios$request) {
3726
+ response = _axios$request;
3727
+
3728
+ if (cache) {
3729
+ setAPIDataToCache({
3730
+ path: apiUrl,
3731
+ queryParams: queryParams,
3732
+ data: response
3733
+ });
3734
+ }
3735
+ });
3736
+ }
3737
+ }();
3738
+
3739
+ return _temp && _temp.then ? _temp.then(_temp2) : _temp2(_temp);
3740
+ }, function (exception) {
3741
+ var _exit = false;
3742
+
3743
+ function _temp4(_result3) {
3744
+ return _exit ? _result3 : function () {
3745
+ if (axios.isCancel(exception)) {} else {
3746
+ console.log('Exception on API call', url, exception);
3747
+ return Promise.resolve(handleError({
3748
+ exception: exception,
3749
+ url: url,
3750
+ apiData: apiData,
3751
+ hideErrorMessage: hideErrorMessage
3752
+ }));
3753
+ }
3754
+ }();
3755
+ }
3756
+
3757
+ var exceptionResponse = exception.response;
3758
+
3759
+ var _temp3 = function () {
3760
+ if (exceptionResponse.data.hasError) {
3761
+ if (url != '/employee') {
3762
+ alert(exceptionResponse.data.error.message);
3763
+ }
3764
+
3765
+ return function () {
3766
+ if (exceptionResponse.data.exception) {
3767
+ return Promise.resolve(handleError({
3768
+ exception: exception,
3769
+ url: url,
3770
+ apiData: apiData,
3771
+ hideErrorMessage: true
3772
+ })).then(function (_await$handleError) {
3773
+ _exit = true;
3774
+ return _await$handleError;
3775
+ });
3776
+ }
3777
+ }();
3778
+ }
3779
+ }();
3780
+
3781
+ return _temp3 && _temp3.then ? _temp3.then(_temp4) : _temp4(_temp3);
3782
+ });
3783
+ }, function (_wasThrown, _result) {
3784
+ if (_wasThrown) throw _result;
3785
+ return _result;
3786
+ }));
3787
+ } catch (e) {
3788
+ return Promise.reject(e);
3789
+ }
3790
+ };
3791
+
3792
+ API.get = function (url, options) {
3793
+ return API(_extends({
3794
+ url: url,
3795
+ method: 'get'
3796
+ }, options));
3797
+ };
3798
+
3799
+ API.put = function (url, body, options) {
3800
+ return API(_extends({
3801
+ url: url,
3802
+ body: body,
3803
+ method: 'put'
3804
+ }, options));
3805
+ };
3806
+
3807
+ API.patch = function (url, body, options) {
3808
+ return API(_extends({
3809
+ url: url,
3810
+ body: body,
3811
+ method: 'patch'
3812
+ }, options));
3813
+ };
3814
+
3815
+ API.post = function (url, body, options) {
3816
+ return API(_extends({
3817
+ url: url,
3818
+ body: body,
3819
+ method: 'post'
3820
+ }, options));
3821
+ };
3822
+
3823
+ API["delete"] = function (url, body, options) {
3824
+ return API(_extends({
3825
+ url: url,
3826
+ body: body,
3827
+ method: 'delete'
3828
+ }, options));
3829
+ };
3830
+
3831
+ var handle401Error = function handle401Error(_ref4) {
3832
+ var apiData = _ref4.apiData,
3833
+ exception = _ref4.exception;
3834
+
3835
+ try {
3836
+ return Promise.resolve(_catch(function () {
3837
+ var _accessToken$refreshT = {
3838
+ accessToken: getJSONItem$1(ACCESS_TOKEN),
3839
+ refreshToken: getItem(REFRESH_TOKEN)
3840
+ },
3841
+ oldAccessToken = _accessToken$refreshT.accessToken,
3842
+ oldRefreshToken = _accessToken$refreshT.refreshToken;
3843
+ return Promise.resolve(API({
3844
+ url: '/refreshToken',
3845
+ hideErrorMessage: true,
3846
+ headers: {
3847
+ refreshToken: oldRefreshToken,
3848
+ Authorization: "Bearer " + oldAccessToken
3849
+ }
3850
+ })).then(function (_ref5) {
3851
+ var accessToken = _ref5.access,
3852
+ refreshToken = _ref5.refresh;
3853
+ setItem(ACCESS_TOKEN, accessToken);
3854
+ setItem(REFRESH_TOKEN, refreshToken);
3855
+
3856
+ if (apiData.throwErrorOnTokenTimeout) {
3857
+ exception.reason = 'resetRefreshToken';
3858
+ throw exception;
3859
+ } else {
3860
+ return Promise.resolve(API(apiData));
3861
+ }
3862
+ });
3863
+ }, function () {
3864
+ window.dispatchEvent(new Event('authError'));
3865
+ exception.message = 'Your session is expired, please login again to continue.';
3866
+
3867
+ if (exception.reason) {
3868
+ exception.message = '';
3869
+ }
3870
+
3871
+ throw exception;
3872
+ }));
3873
+ } catch (e) {
3874
+ return Promise.reject(e);
3875
+ }
3876
+ };
3877
+
3878
+ var handleError = function handleError(_ref6) {
3879
+ var exception = _ref6.exception,
3880
+ url = _ref6.url,
3881
+ apiData = _ref6.apiData,
3882
+ hideErrorMessage = _ref6.hideErrorMessage;
3883
+
3884
+ try {
3885
+ var _apiData$throwExcepti = apiData.throwException,
3886
+ throwException = _apiData$throwExcepti === void 0 ? true : _apiData$throwExcepti,
3887
+ errorMessage = apiData.errorMessage,
3888
+ showAPIError = apiData.showAPIError;
3889
+ return Promise.resolve(function () {
3890
+ if (exception.response && (exception.response.status === 401 || exception.response.status === 403) && url !== '/checkLogin' && url !== '/employee' && url !== '/authenticate' && url !== '/refreshToken') {
3891
+ return _catch(function () {
3892
+ return Promise.resolve(handle401Error({
3893
+ apiData: apiData,
3894
+ exception: exception
3895
+ }));
3896
+ }, function (e) {
3897
+ alert(e);
3898
+
3899
+ if (throwException) {
3900
+ throw exception;
3901
+ }
3902
+ });
3903
+ } else {
3904
+ if (!hideErrorMessage) {
3905
+ var errMessage = errorMessage;
3906
+
3907
+ if (showAPIError) {
3908
+ errMessage = lodash.get(exception, 'response.data.message');
3909
+ }
3910
+
3911
+ alert(errMessage);
3912
+ }
3913
+
3914
+ if (throwException) {
3915
+ throw exception;
3916
+ }
3917
+ }
3918
+ }());
3919
+ } catch (e) {
3920
+ return Promise.reject(e);
3921
+ }
3922
+ };
3923
+
3924
+ var _excluded = ["apiData", "columns", "listUpdate", "onDataLoad", "expandedRowRender", "onDataLoadError", "pagination", "extraFilterParams", "setExtraFilterParams", "cacheFilters", "tableId", "asyncService", "tableDataList", "filterData"];
3925
+ var APITable = React.forwardRef(function (_ref, ref) {
3926
+ var apiData = _ref.apiData,
3927
+ columns = _ref.columns,
3928
+ listUpdate = _ref.listUpdate,
3929
+ onDataLoad = _ref.onDataLoad,
3930
+ onDataLoadError = _ref.onDataLoadError,
3931
+ pagination = _ref.pagination,
3932
+ _ref$extraFilterParam = _ref.extraFilterParams,
3933
+ extraFilterParams = _ref$extraFilterParam === void 0 ? {} : _ref$extraFilterParam,
3934
+ setExtraFilterParams = _ref.setExtraFilterParams,
3935
+ tableId = _ref.tableId,
3936
+ asyncService = _ref.asyncService,
3937
+ tableDataList = _ref.tableDataList,
3938
+ props = _objectWithoutPropertiesLoose(_ref, _excluded);
3939
+
3940
+ console.log('columns: ', columns);
3941
+
3942
+ var _React$useState = React__default.useState(0),
3943
+ page = _React$useState[0],
3944
+ setPage = _React$useState[1];
3945
+
3946
+ var _React$useState2 = React__default.useState(10),
3947
+ rowsPerPage = _React$useState2[0],
3948
+ setRowsPerPage = _React$useState2[1];
3949
+
3950
+ var handleChangePage = function handleChangePage(event, newPage) {
3951
+ setPage(newPage);
3952
+ };
3953
+
3954
+ var handleChangeRowsPerPage = function handleChangeRowsPerPage(event) {
3955
+ setRowsPerPage(+event.target.value);
3956
+ setPage(0);
3957
+ };
3958
+
3959
+ var getJSONItem = erLocalStorage.getJSONItem;
3960
+ var tableCache = getJSONItem(STORAGE_KEYS.TABLE_DATA);
3961
+
3962
+ var _useState = React.useState({
3963
+ data: [],
3964
+ pagination: {
3965
+ current: (tableCache === null || tableCache === void 0 ? void 0 : tableCache.tableId) === tableId ? tableCache.currentPage : 1,
3966
+ showSizeChanger: true,
3967
+ pageSize: (tableCache === null || tableCache === void 0 ? void 0 : tableCache.tableId) === tableId ? tableCache === null || tableCache === void 0 ? void 0 : tableCache.pageSize : 20,
3968
+ size: 'default'
3969
+ },
3970
+ apiStatus: API_STATUSES.PENDING
3971
+ }),
3972
+ tableData = _useState[0],
3973
+ setTableData = _useState[1];
3974
+
3975
+ console.log('tableData: ', tableData);
3976
+
3977
+ var setTableDataOnRef = function setTableDataOnRef() {
3978
+ if (ref) {
3979
+ ref.current = {
3980
+ setTableData: setTableData,
3981
+ tableData: tableData
3982
+ };
3983
+ }
3984
+ };
3985
+
3986
+ setTableDataOnRef();
3987
+ React.useEffect(function () {
3988
+ setTableDataOnRef();
3989
+
3990
+ if (tableDataList) {
3991
+ tableDataList(tableData);
3992
+ }
3993
+ }, [tableData, ref]);
3994
+ React.useEffect(function () {
3995
+ var newPagination = _extends({}, tableData.pagination, pagination || {});
3996
+
3997
+ setTableData(_extends({}, tableData, {
3998
+ pagination: newPagination
3999
+ }));
4000
+ setTimeout(function () {
4001
+ return loadDataSource({
4002
+ pagination: newPagination
4003
+ });
4004
+ }, 200);
4005
+ }, [listUpdate, pagination]);
4006
+
4007
+ var getFilterQueryParams = function getFilterQueryParams(filters) {
4008
+ var resultFilters = {};
4009
+
4010
+ if (lodash.isPlainObject(filters)) {
4011
+ Object.keys(filters).forEach(function (filterKey) {
4012
+ var filterColumn = columns.find(function (column) {
4013
+ return column.dataIndex === filterKey;
4014
+ });
4015
+ var queryKey = filterColumn.filterIndex || filterColumn.dataIndex;
4016
+ resultFilters[queryKey] = filters[filterKey] && filters[filterKey].toString ? filters[filterKey].toString() : filters[filterKey];
4017
+ });
4018
+ setExtraFilterParams && setExtraFilterParams(_extends({}, extraFilterParams, resultFilters));
4019
+ }
4020
+
4021
+ return resultFilters;
4022
+ };
4023
+
4024
+ var getSortQueryParams = function getSortQueryParams(sort) {
4025
+ var resultSorters = {};
4026
+
4027
+ if (sort) {
4028
+ var filterColumn = columns.find(function (column) {
4029
+ return column.dataIndex === sort;
4030
+ });
4031
+ var queryKey = filterColumn.sortIndex || filterColumn.dataIndex;
4032
+ resultSorters.sort = queryKey;
4033
+ setExtraFilterParams && setExtraFilterParams(_extends({}, extraFilterParams, resultSorters));
4034
+ }
4035
+
4036
+ return resultSorters;
4037
+ };
4038
+
4039
+ var loadDataSource = function loadDataSource(_temp) {
4040
+ var _ref2 = _temp === void 0 ? {} : _temp,
4041
+ _ref2$pagination = _ref2.pagination,
4042
+ pagination = _ref2$pagination === void 0 ? tableData.pagination : _ref2$pagination,
4043
+ filters = _ref2.filters,
4044
+ sort = _ref2.sort,
4045
+ sortDirection = _ref2.sortDirection;
4046
+
4047
+ (function () {
4048
+ try {
4049
+ if (tableData.apiStatus === API_STATUSES.LOADING) {
4050
+ return;
4051
+ }
4052
+
4053
+ setTableData(_extends({}, tableData, {
4054
+ apiStatus: API_STATUSES.LOADING
4055
+ }));
4056
+
4057
+ var _temp5 = _catch(function () {
4058
+ var _ref3;
4059
+
4060
+ function _temp3() {
4061
+ var responseData = apiResponse.content || apiResponse.sliderImageList || apiResponse;
4062
+ setTableData(_extends({}, tableData, {
4063
+ data: responseData,
4064
+ apiStatus: API_STATUSES.SUCCESS,
4065
+ pagination: _extends({}, pagination, {
4066
+ total: apiResponse.totalElements
4067
+ })
4068
+ }));
4069
+ onDataLoad && onDataLoad(responseData);
4070
+ }
4071
+
4072
+ var cachedTableState = loadCachedTableState({
4073
+ tableId: tableId
4074
+ });
4075
+ filters = _extends({}, cachedTableState.filters, filters);
4076
+ var apiResponse;
4077
+
4078
+ var queryParams = _extends({
4079
+ page: pagination.current - 1,
4080
+ size: pagination.pageSize,
4081
+ sortDirection: sortDirection
4082
+ }, getSortQueryParams(sort), (_ref3 = apiData || {}) === null || _ref3 === void 0 ? void 0 : _ref3.queryParams, getFilterQueryParams(filters), extraFilterParams);
4083
+
4084
+ var _temp2 = function () {
4085
+ if (asyncService) {
4086
+ apiResponse = asyncService;
4087
+ } else {
4088
+ return Promise.resolve(API(_extends({}, apiData, {
4089
+ queryParams: queryParams
4090
+ }))).then(function (_API) {
4091
+ apiResponse = _API;
4092
+ });
4093
+ }
4094
+ }();
4095
+
4096
+ return _temp2 && _temp2.then ? _temp2.then(_temp3) : _temp3(_temp2);
4097
+ }, function (e) {
4098
+ setTableData(_extends({}, tableData, {
4099
+ apiStatus: API_STATUSES.ERROR
4100
+ }));
4101
+ onDataLoadError && onDataLoadError(e);
4102
+ });
4103
+
4104
+ return _temp5 && _temp5.then ? _temp5.then(function () {}) : void 0;
4105
+ } catch (e) {
4106
+ Promise.reject(e);
4107
+ }
4108
+ })();
4109
+ };
4110
+
4111
+ return /*#__PURE__*/React__default.createElement(Fragment, null, /*#__PURE__*/React__default.createElement(material.Paper, {
4112
+ sx: {
4113
+ width: '100%'
4114
+ }
4115
+ }, /*#__PURE__*/React__default.createElement(material.TableContainer, {
4116
+ sx: {
4117
+ maxHeight: 440
4118
+ }
4119
+ }, /*#__PURE__*/React__default.createElement(material.Table, {
4120
+ stickyHeader: true,
4121
+ "aria-label": "sticky table"
4122
+ }, /*#__PURE__*/React__default.createElement(material.TableHead, null, /*#__PURE__*/React__default.createElement(material.TableRow, null, columns.map(function (column) {
4123
+ return /*#__PURE__*/React__default.createElement(material.TableCell, {
4124
+ key: column.id,
4125
+ align: column.align
4126
+ }, column.label);
4127
+ }))), /*#__PURE__*/React__default.createElement(material.TableBody, null, tableData === null || tableData === void 0 ? void 0 : tableData.data.map(function (row) {
4128
+ return /*#__PURE__*/React__default.createElement(material.TableRow, {
4129
+ hover: true,
4130
+ key: row === null || row === void 0 ? void 0 : row[(props === null || props === void 0 ? void 0 : props.rowKey) || 'id']
4131
+ }, columns.map(function (column) {
4132
+ var value = row[column.id];
4133
+ return /*#__PURE__*/React__default.createElement(material.TableCell, {
4134
+ key: column.id,
4135
+ align: column.align
4136
+ }, value);
4137
+ }));
4138
+ })))), /*#__PURE__*/React__default.createElement(material.TablePagination, {
4139
+ rowsPerPageOptions: [10, 20, 50, 100],
4140
+ component: "div",
4141
+ count: tableData === null || tableData === void 0 ? void 0 : tableData.totalElements,
4142
+ rowsPerPage: rowsPerPage,
4143
+ page: page,
4144
+ onPageChange: handleChangePage,
4145
+ onRowsPerPageChange: handleChangeRowsPerPage
4146
+ })));
4147
+ });
4148
+
4149
+ var _templateObject$9;
4150
+ var TotalContainer = styled(material.Stack)(_templateObject$9 || (_templateObject$9 = _taggedTemplateLiteralLoose(["\n border: 1px solid red;\n border-radius: 20px;\n padding: 14px;\n"])));
4151
+ var totalData = {
4152
+ totalAmount: '10622',
4153
+ totalOrder: '622',
4154
+ totalReturnAmount: '622',
4155
+ totalReturn: '622',
4156
+ availableStoreCredit: '622',
4157
+ totalCreditReceived: '622',
4158
+ totalItemOrder: '622',
4159
+ avgOrderTotal: '622'
4160
+ };
4161
+ var columns = [{
4162
+ id: 'orderId',
4163
+ label: 'Order'
4164
+ }, {
4165
+ id: 'insertedTimestamp',
4166
+ label: 'Date'
4167
+ }, {
4168
+ id: 'customerName',
4169
+ label: 'Ship To'
4170
+ }, {
4171
+ id: 'totalAmount',
4172
+ label: 'Total Amount'
4173
+ }, {
4174
+ id: 'dueBalance',
4175
+ label: 'Total Due'
4176
+ }, {
4177
+ id: 'status',
4178
+ label: 'Status'
4179
+ }, {
4180
+ id: 'trackingNumber',
4181
+ label: 'Tracking Number'
4182
+ }, {
4183
+ id: 'orderId'
4184
+ }, {
4185
+ id: 'orderId'
4186
+ }];
4187
+
4188
+ var Dashboard = function Dashboard(_ref) {
4189
+ _objectDestructuringEmpty(_ref);
4190
+
4191
+ var totalDataSource = convertCamCaseToSnake(totalData);
4192
+ return /*#__PURE__*/React__default.createElement("div", null, /*#__PURE__*/React__default.createElement("div", null, /*#__PURE__*/React__default.createElement(material.Typography, {
4193
+ variant: "h3",
4194
+ gutterBottom: true
4195
+ }, "Hello Rohit"), /*#__PURE__*/React__default.createElement(material.Typography, {
4196
+ variant: "h5",
4197
+ gutterBottom: true
4198
+ }, "Welcome Back To Your Dashboard")), /*#__PURE__*/React__default.createElement(material.Card, null, /*#__PURE__*/React__default.createElement(material.CardContent, null, /*#__PURE__*/React__default.createElement(material.Grid, {
4199
+ container: true,
4200
+ spacing: 4
4201
+ }, /*#__PURE__*/React__default.createElement(material.Grid, {
4202
+ item: true,
4203
+ xs: 12,
4204
+ md: 4,
4205
+ lg: 2
4206
+ }, /*#__PURE__*/React__default.createElement(material.CardMedia, {
4207
+ component: "img",
4208
+ image: "/images/imgnotfound.jpeg",
4209
+ alt: "image"
4210
+ })), /*#__PURE__*/React__default.createElement(material.Grid, {
4211
+ item: true,
4212
+ xs: 12,
4213
+ md: 8,
4214
+ lg: 10
4215
+ }, /*#__PURE__*/React__default.createElement(material.Typography, {
4216
+ variant: "h5",
4217
+ gutterBottom: true
4218
+ }, "Meet Your Account Representative"), /*#__PURE__*/React__default.createElement(material.Grid, {
4219
+ container: true,
4220
+ spacing: 4
4221
+ }, /*#__PURE__*/React__default.createElement(material.Grid, {
4222
+ item: true,
4223
+ xs: 12,
4224
+ md: 6,
4225
+ lg: 4
4226
+ }, /*#__PURE__*/React__default.createElement(material.Typography, {
4227
+ variant: "h5",
4228
+ gutterBottom: true
4229
+ }, /*#__PURE__*/React__default.createElement(md.MdPersonOutline, null), "Alok Patel")), /*#__PURE__*/React__default.createElement(material.Grid, {
4230
+ item: true,
4231
+ xs: 12,
4232
+ md: 6,
4233
+ lg: 4
4234
+ }, /*#__PURE__*/React__default.createElement(material.Typography, {
4235
+ variant: "h5",
4236
+ gutterBottom: true
4237
+ }, /*#__PURE__*/React__default.createElement(md.MdCall, null), "+91 1234567890")), /*#__PURE__*/React__default.createElement(material.Grid, {
4238
+ item: true,
4239
+ xs: 12,
4240
+ md: 6,
4241
+ lg: 4
4242
+ }, /*#__PURE__*/React__default.createElement(material.Typography, {
4243
+ variant: "h5",
4244
+ gutterBottom: true
4245
+ }, /*#__PURE__*/React__default.createElement(md.MdEmail, null), "AlokPatel@gmail.com"))))))), /*#__PURE__*/React__default.createElement("div", null, /*#__PURE__*/React__default.createElement(material.Grid, {
4246
+ container: true,
4247
+ spacing: 4
4248
+ }, totalDataSource === null || totalDataSource === void 0 ? void 0 : totalDataSource.map(function (data) {
4249
+ var _data$name, _data$name2, _data$name3;
4250
+
4251
+ var isAmount = (data === null || data === void 0 ? void 0 : (_data$name = data.name) === null || _data$name === void 0 ? void 0 : _data$name.indexOf('Amount')) > 1 || (data === null || data === void 0 ? void 0 : (_data$name2 = data.name) === null || _data$name2 === void 0 ? void 0 : _data$name2.indexOf('Credit')) > 1 || (data === null || data === void 0 ? void 0 : (_data$name3 = data.name) === null || _data$name3 === void 0 ? void 0 : _data$name3.indexOf('Price')) > 1;
4252
+ return /*#__PURE__*/React__default.createElement(material.Grid, {
4253
+ item: true,
4254
+ xs: 6,
4255
+ md: 4,
4256
+ lg: 3,
4257
+ justifyContent: "space-between",
4258
+ alignItems: "center"
4259
+ }, /*#__PURE__*/React__default.createElement(TotalContainer, {
4260
+ flexDirection: "row",
4261
+ justifyContent: "space-between"
4262
+ }, /*#__PURE__*/React__default.createElement("div", null, /*#__PURE__*/React__default.createElement("p", null, data === null || data === void 0 ? void 0 : data.name), /*#__PURE__*/React__default.createElement("h3", null, "" + (isAmount ? '$' : '') + (data === null || data === void 0 ? void 0 : data.value))), isAmount ? /*#__PURE__*/React__default.createElement(md.MdMonetizationOn, null) : /*#__PURE__*/React__default.createElement(gr.GrStackOverflow, null)));
4263
+ }))), /*#__PURE__*/React__default.createElement(APITable, {
4264
+ cacheFilters: true,
4265
+ pagination: false,
4266
+ scroll: {
4267
+ x: 1000
4268
+ },
4269
+ tableId: "master-child-map",
4270
+ columns: columns,
4271
+ apiData: {
4272
+ url: "/ecommerce/dashboard/orderTable"
4273
+ },
4274
+ rowKey: 'masterProductId'
4275
+ }));
4276
+ };
4277
+
4278
+ var SideMenuItemComponent = function SideMenuItemComponent(props) {
4279
+ var className = props.className,
4280
+ onClick = props.onClick,
4281
+ link = props.link,
4282
+ children = props.children;
4283
+
4284
+ if (!link || typeof link !== 'string') {
4285
+ return /*#__PURE__*/React__default.createElement(material.ListItem, {
4286
+ button: true,
4287
+ className: className,
4288
+ children: children,
4289
+ onClick: onClick
4290
+ });
4291
+ }
4292
+
4293
+ return /*#__PURE__*/React__default.createElement(material.ListItem, {
4294
+ button: true,
4295
+ className: className,
4296
+ children: children,
4297
+ component: React.forwardRef(function (props, ref) {
4298
+ return /*#__PURE__*/React__default.createElement("p", _extends({
4299
+ exact: true
4300
+ }, props, {
4301
+ innerRef: ref
4302
+ }));
4303
+ }),
4304
+ to: link
4305
+ });
4306
+ };
4307
+
4308
+ var SideMenuItem = function SideMenuItem(props) {
4309
+ var name = props.name,
4310
+ link = props.link,
4311
+ Icon = props.Icon,
4312
+ _props$items = props.items,
4313
+ items = _props$items === void 0 ? [] : _props$items;
4314
+ var classes = useStyles();
4315
+ var isExpandable = items && items.length > 0;
4316
+
4317
+ var _React$useState = React__default.useState(false),
4318
+ open = _React$useState[0],
4319
+ setOpen = _React$useState[1];
4320
+
4321
+ function handleClick() {
4322
+ setOpen(!open);
4323
+ }
4324
+
4325
+ var MenuItemRoot = /*#__PURE__*/React__default.createElement(SideMenuItemComponent, {
4326
+ className: classes.menuItem,
4327
+ link: link,
4328
+ onClick: handleClick
4329
+ }, !!Icon && /*#__PURE__*/React__default.createElement(material.ListItemIcon, {
4330
+ className: classes.menuItemIcon
4331
+ }, /*#__PURE__*/React__default.createElement(Icon, null)), /*#__PURE__*/React__default.createElement(material.ListItemText, {
4332
+ primary: name,
4333
+ inset: !Icon
4334
+ }), isExpandable && !open && /*#__PURE__*/React__default.createElement(ExpandMoreIcon, null), isExpandable && open && /*#__PURE__*/React__default.createElement(ExpandLessIcon, null));
4335
+ var MenuItemChildren = isExpandable ? /*#__PURE__*/React__default.createElement(material.Collapse, {
4336
+ "in": open,
4337
+ timeout: "auto",
4338
+ unmountOnExit: true
4339
+ }, /*#__PURE__*/React__default.createElement(material.Divider, null), /*#__PURE__*/React__default.createElement(material.List, {
4340
+ component: "div",
4341
+ disablePadding: true
4342
+ }, items.map(function (item, index) {
4343
+ return /*#__PURE__*/React__default.createElement(SideMenuItem, _extends({}, item, {
4344
+ key: index
4345
+ }));
4346
+ }))) : null;
4347
+ return /*#__PURE__*/React__default.createElement(Fragment, null, MenuItemRoot, MenuItemChildren);
4348
+ };
4349
+
4350
+ var useStyles = styles.makeStyles(function (theme) {
4351
+ return styles.createStyles({
4352
+ menuItem: {
4353
+ '&.active': {
4354
+ background: 'rgba(0, 0, 0, 0.08)',
4355
+ '& .MuiListItemIcon-root': {
4356
+ color: '#fff'
4357
+ }
4358
+ }
4359
+ },
4360
+ menuItemIcon: {
4361
+ color: '#97c05c'
4362
+ }
4363
+ });
4364
+ });
4365
+
4366
+ var sideMenuItems = [{
4367
+ name: 'Dashboard',
4368
+ Icon: DashboardIcon
4369
+ }];
4370
+
4371
+ var SideMenu = function SideMenu() {
4372
+ var classes = useStyles$1();
4373
+ return /*#__PURE__*/React__default.createElement(material.List, {
4374
+ component: "nav",
4375
+ className: classes.appMenu,
4376
+ disablePadding: true
4377
+ }, sideMenuItems.map(function (item, index) {
4378
+ return /*#__PURE__*/React__default.createElement(SideMenuItem, _extends({}, item, {
4379
+ key: index
4380
+ }));
4381
+ }));
4382
+ };
4383
+
4384
+ var drawerWidth = 240;
4385
+ var useStyles$1 = styles.makeStyles(function (theme) {
4386
+ return styles.createStyles({
4387
+ appMenu: {
4388
+ width: '100%'
4389
+ },
4390
+ navList: {
4391
+ width: drawerWidth
4392
+ },
4393
+ menuItem: {
4394
+ width: drawerWidth
4395
+ },
4396
+ menuItemIcon: {
4397
+ color: '#97c05c'
4398
+ }
4399
+ });
4400
+ });
4401
+
4402
+ var AccountDetails = function AccountDetails(_ref) {
4403
+ var classes = useStyles$2();
4404
+ return /*#__PURE__*/React__default.createElement("div", null, /*#__PURE__*/React__default.createElement(material.CssBaseline, null), /*#__PURE__*/React__default.createElement("div", {
4405
+ className: classes.root
4406
+ }, /*#__PURE__*/React__default.createElement(material.Drawer, {
4407
+ variant: "permanent",
4408
+ classes: {
4409
+ paper: classes.drawerPaper
4410
+ }
4411
+ }, /*#__PURE__*/React__default.createElement(SideMenu, null)), /*#__PURE__*/React__default.createElement("main", {
4412
+ className: classes.content
4413
+ }, /*#__PURE__*/React__default.createElement(material.Container, {
4414
+ maxWidth: "lg",
4415
+ className: classes.container
4416
+ }, /*#__PURE__*/React__default.createElement(Dashboard, null)))));
4417
+ };
4418
+
4419
+ var drawerWidth$1 = 240;
4420
+ var useStyles$2 = styles.makeStyles(function (theme) {
4421
+ return {
4422
+ root: {
4423
+ display: 'flex'
4424
+ },
4425
+ drawerPaper: {
4426
+ position: 'relative',
4427
+ whiteSpace: 'nowrap',
4428
+ width: drawerWidth$1,
4429
+ background: '#535454',
4430
+ color: '#fff'
4431
+ },
4432
+ content: {
4433
+ flexGrow: 1,
4434
+ overflow: 'auto'
4435
+ },
4436
+ container: {}
4437
+ };
4438
+ });
4439
+
3442
4440
  var Breakpoint = function Breakpoint() {};
3443
4441
 
3444
4442
  Breakpoint.xs = 'xs';
@@ -3544,6 +4542,7 @@ function useGridSize() {
3544
4542
  return layout;
3545
4543
  }
3546
4544
 
4545
+ exports.AccountDetails = AccountDetails;
3547
4546
  exports.Breakpoint = Breakpoint;
3548
4547
  exports.CartDrawer = CartDrawer;
3549
4548
  exports.CartPageComponent = CartPageComponent;