andoncloud-sdk 1.3.1 → 1.3.4

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.
@@ -2,12 +2,13 @@ function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'defau
2
2
 
3
3
  var React = require('react');
4
4
  var React__default = _interopDefault(React);
5
+ var mobx = require('mobx');
5
6
  var reactRouterDom = require('react-router-dom');
6
7
  var propTypes = require('prop-types');
7
8
  var CssBaseline = _interopDefault(require('@mui/material/CssBaseline'));
8
9
  var styles = require('@mui/material/styles');
9
- var mobx = require('mobx');
10
10
  var material = require('@mui/material');
11
+ var loader = _interopDefault(require('./images/loader.svg'));
11
12
  var mobxReactLite = require('mobx-react-lite');
12
13
  var Dialog = _interopDefault(require('@mui/material/Dialog'));
13
14
  var DialogContent = _interopDefault(require('@mui/material/DialogContent'));
@@ -25,6 +26,7 @@ var IconButton = _interopDefault(require('@mui/material/IconButton'));
25
26
  var MenuItem = _interopDefault(require('@mui/material/MenuItem'));
26
27
  var Menu = _interopDefault(require('@mui/material/Menu'));
27
28
  var AccessTimeIcon = _interopDefault(require('@mui/icons-material/AccessTime'));
29
+ var backdropPattern = _interopDefault(require('./images/backdropPattern.svg'));
28
30
 
29
31
  let e={data:""},t=t=>"object"==typeof window?((t?t.querySelector("#_goober"):window._goober)||Object.assign((t||document.head).appendChild(document.createElement("style")),{innerHTML:" ",id:"_goober"})).firstChild:t||e,l=/(?:([\u0080-\uFFFF\w-%@]+) *:? *([^{;]+?);|([^;}{]*?) *{)|(}\s*)/g,a=/\/\*[^]*?\*\/|\s\s+|\n/g,n=(e,t)=>{let r="",l="",a="";for(let o in e){let s=e[o];"@"==o[0]?"i"==o[1]?r=o+" "+s+";":l+="f"==o[1]?n(s,o):o+"{"+n(s,"k"==o[1]?"":t)+"}":"object"==typeof s?l+=n(s,t?t.replace(/([^,])+/g,e=>o.replace(/(^:.*)|([^,])+/g,t=>/&/.test(t)?t.replace(/&/g,e):e?e+" "+t:t)):o):null!=s&&(o=/^--/.test(o)?o:o.replace(/[A-Z]/g,"-$&").toLowerCase(),a+=n.p?n.p(o,s):o+":"+s+";");}return r+(t&&a?t+"{"+a+"}":a)+l},o={},s=e=>{if("object"==typeof e){let t="";for(let r in e)t+=r+s(e[r]);return t}return e},c=(e,t,r,c,i)=>{let u=s(e),p=o[u]||(o[u]=(e=>{let t=0,r=11;for(;t<e.length;)r=101*r+e.charCodeAt(t++)>>>0;return "go"+r})(u));if(!o[p]){let t=u!==e?e:(e=>{let t,r=[{}];for(;t=l.exec(e.replace(a,""));)t[4]?r.shift():t[3]?r.unshift(r[0][t[3]]=r[0][t[3]]||{}):r[0][t[1]]=t[2];return r[0]})(e);o[p]=n(i?{["@keyframes "+p]:t}:t,r?"":"."+p);}return ((e,t,r)=>{-1==t.data.indexOf(e)&&(t.data=r?e+t.data:t.data+e);})(o[p],t,c),p},i=(e,t,r)=>e.reduce((e,l,a)=>{let o=t[a];if(o&&o.call){let e=o(r),t=e&&e.props&&e.props.className||/^go/.test(e)&&e;o=t?"."+t:e&&"object"==typeof e?e.props?"":n(e,""):!1===e?"":e;}return e+l+(null==o?"":o)},"");function u(e){let r=this||{},l=e.call?e(r.p):e;return c(l.unshift?l.raw?i(l,[].slice.call(arguments,1),r.p):l.reduce((e,t)=>Object.assign(e,t&&t.call?t(r.p):t),{}):l,t(r.target),r.g,r.o,r.k)}let p,d,f,g=u.bind({g:1}),b=u.bind({k:1});function h(e,t,r,l){n.p=t,p=e,d=r,f=l;}function m(e,t){let r=this||{};return function(){let l=arguments;function a(n,o){let s=Object.assign({},n),c=s.className||a.className;r.p=Object.assign({theme:d&&d()},s),r.o=/ *go\d+/.test(c),s.className=u.apply(r,l)+(c?" "+c:""),t&&(s.ref=o);let i=e;return e[0]&&(i=s.as||e,delete s.as),f&&i[0]&&f(s),p(i,s)}return t?t(a):a}}
30
32
 
@@ -1431,15 +1433,31 @@ var SessionAPI = /*#__PURE__*/function () {
1431
1433
  var SessionStore = /*#__PURE__*/function () {
1432
1434
  function SessionStore() {
1433
1435
  this.loading = false;
1436
+ this.loginStatus = {
1437
+ status: "unknown"
1438
+ };
1434
1439
  this.api = new SessionAPI();
1435
1440
  this.networkError = null;
1436
1441
  mobx.makeObservable(this, {
1437
- loading: mobx.observable
1442
+ loading: mobx.observable,
1443
+ loginStatus: mobx.observable.deep
1438
1444
  });
1439
1445
  }
1440
1446
 
1441
1447
  var _proto2 = SessionStore.prototype;
1442
1448
 
1449
+ _proto2.updateLoginStatus = function updateLoginStatus() {
1450
+ this.loginStatus = {
1451
+ status: "connected",
1452
+ authResponse: {
1453
+ user: this.session.user,
1454
+ accessToken: this.session.accessToken,
1455
+ tokenType: this.session.tokenType,
1456
+ expiresIn: this.session.expiresIn
1457
+ }
1458
+ };
1459
+ };
1460
+
1443
1461
  _proto2.setAuthConfig = function setAuthConfig(config) {
1444
1462
  this.api.setAuthConfig(config);
1445
1463
  };
@@ -1465,24 +1483,6 @@ var SessionStore = /*#__PURE__*/function () {
1465
1483
  };
1466
1484
  };
1467
1485
 
1468
- _proto2.getLoginStatus = function getLoginStatus() {
1469
- if (this.isLoggedIn()) {
1470
- return {
1471
- status: "connected",
1472
- authResponse: {
1473
- user: this.session.user,
1474
- accessToken: this.session.accessToken,
1475
- tokenType: this.session.tokenType,
1476
- expiresIn: this.session.expiresIn
1477
- }
1478
- };
1479
- }
1480
-
1481
- return {
1482
- status: "not_authorized"
1483
- };
1484
- };
1485
-
1486
1486
  _proto2.authorize = function authorize(credentials, storeSession) {
1487
1487
  if (storeSession === void 0) {
1488
1488
  storeSession = true;
@@ -1505,6 +1505,8 @@ var SessionStore = /*#__PURE__*/function () {
1505
1505
  _this8.storeSession();
1506
1506
 
1507
1507
  _this8.setCurrentUser(session.user);
1508
+
1509
+ _this8.updateLoginStatus();
1508
1510
  }
1509
1511
 
1510
1512
  return session;
@@ -1527,7 +1529,13 @@ var SessionStore = /*#__PURE__*/function () {
1527
1529
  if (_this10.session) {
1528
1530
  return Promise.resolve(_this10.api.getUserData()).then(function (user) {
1529
1531
  _this10.setCurrentUser(user);
1532
+
1533
+ _this10.updateLoginStatus();
1530
1534
  });
1535
+ } else {
1536
+ _this10.loginStatus = {
1537
+ status: "not_authorized"
1538
+ };
1531
1539
  }
1532
1540
  }();
1533
1541
 
@@ -1548,6 +1556,10 @@ var SessionStore = /*#__PURE__*/function () {
1548
1556
  _this12.removeSession();
1549
1557
 
1550
1558
  _this12.removeCurrentUser();
1559
+
1560
+ _this12.loginStatus = {
1561
+ status: "not_authorized"
1562
+ };
1551
1563
  });
1552
1564
  }
1553
1565
  }();
@@ -1742,6 +1754,23 @@ var defaultTheme = styles.createTheme(styles.adaptV4Theme({
1742
1754
  }
1743
1755
  }));
1744
1756
 
1757
+ var Loader = function Loader(_ref) {
1758
+ var width = _ref.width,
1759
+ dataTestId = _ref["data-testid"];
1760
+ return /*#__PURE__*/React__default.createElement(material.Box, {
1761
+ display: "flex",
1762
+ alignItems: "center",
1763
+ justifyContent: "center",
1764
+ width: "100%",
1765
+ height: "100vh"
1766
+ }, /*#__PURE__*/React__default.createElement("img", {
1767
+ "data-testid": dataTestId,
1768
+ alt: "loader",
1769
+ width: width,
1770
+ src: loader
1771
+ }));
1772
+ };
1773
+
1745
1774
  var useQueryParams = function useQueryParams() {
1746
1775
  return new URLSearchParams(reactRouterDom.useLocation().search);
1747
1776
  };
@@ -3230,8 +3259,6 @@ Container.defaultProps = {
3230
3259
  headerProps: {}
3231
3260
  };
3232
3261
 
3233
- var backdropPattern = "backdropPattern~bkGGEBvj.svg";
3234
-
3235
3262
  var FullscreenBackdrop = function FullscreenBackdrop() {
3236
3263
  return /*#__PURE__*/React__default.createElement("div", {
3237
3264
  style: {
@@ -3392,13 +3419,11 @@ var App = mobxReactLite.observer(function (_ref) {
3392
3419
  React.useEffect(function () {
3393
3420
  var recoverSession = function recoverSession() {
3394
3421
  try {
3395
- var _temp2 = function () {
3396
- if (authEnabled) {
3397
- return Promise.resolve(sessionStore.recover()).then(function () {});
3398
- }
3399
- }();
3422
+ if (authEnabled) {
3423
+ return Promise.resolve(sessionStore.recover());
3424
+ }
3400
3425
 
3401
- return Promise.resolve(_temp2 && _temp2.then ? _temp2.then(function () {}) : void 0);
3426
+ return Promise.resolve();
3402
3427
  } catch (e) {
3403
3428
  return Promise.reject(e);
3404
3429
  }
@@ -3418,10 +3443,13 @@ var App = mobxReactLite.observer(function (_ref) {
3418
3443
  config: _extends$1({
3419
3444
  baseUrl: baseUrl
3420
3445
  }, authProps)
3421
- }, sessionStore.networkError ? /*#__PURE__*/React__default.createElement(NetworkError, null) : appReady && /*#__PURE__*/React__default.createElement(Router, null, /*#__PURE__*/React__default.createElement(reactRouterDom.Route, {
3446
+ }, sessionStore.networkError ? /*#__PURE__*/React__default.createElement(NetworkError, null) : appReady ? /*#__PURE__*/React__default.createElement(Router, null, /*#__PURE__*/React__default.createElement(reactRouterDom.Route, {
3422
3447
  path: "*",
3423
3448
  element: /*#__PURE__*/React__default.createElement(ModalProvider, null, children)
3424
- }))));
3449
+ })) : /*#__PURE__*/React__default.createElement(Loader, {
3450
+ "data-testid": "ac-sdk-app-loading",
3451
+ width: "500px"
3452
+ })));
3425
3453
  });
3426
3454
  App.propTypes = {
3427
3455
  children: propTypes.PropTypes.any.isRequired,
@@ -3441,8 +3469,19 @@ App.defaultProps = {
3441
3469
  muiTheme: defaultTheme
3442
3470
  };
3443
3471
 
3444
- var getLoginStatus = function getLoginStatus() {
3445
- return sessionStore.getLoginStatus();
3472
+ var useLoginStatus = function useLoginStatus() {
3473
+ var _useState = React.useState(sessionStore.loginStatus),
3474
+ loginStatus = _useState[0],
3475
+ setLoginStatus = _useState[1];
3476
+
3477
+ React.useEffect(function () {
3478
+ return mobx.reaction(function () {
3479
+ return mobx.toJS(sessionStore.loginStatus);
3480
+ }, function () {
3481
+ setLoginStatus(sessionStore.loginStatus);
3482
+ });
3483
+ }, []);
3484
+ return loginStatus;
3446
3485
  };
3447
3486
 
3448
3487
  var logout = function logout() {
@@ -3455,9 +3494,9 @@ var setLocale = function setLocale(locale) {
3455
3494
 
3456
3495
  exports.App = App;
3457
3496
  exports.Container = Container;
3458
- exports.getLoginStatus = getLoginStatus;
3459
3497
  exports.logout = logout;
3460
3498
  exports.notify = toast;
3461
3499
  exports.setLocale = setLocale;
3462
3500
  exports.useLogin = useLogin;
3501
+ exports.useLoginStatus = useLoginStatus;
3463
3502
  //# sourceMappingURL=andoncloud-sdk.js.map