@gridsuite/commons-ui 0.26.1 → 0.27.0

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.
@@ -15,6 +15,16 @@ var _SilentRenewCallbackHandler = _interopRequireDefault(require("../SilentRenew
15
15
 
16
16
  var _Login = _interopRequireDefault(require("../Login"));
17
17
 
18
+ var _material = require("@mui/material");
19
+
20
+ var _Alert = _interopRequireDefault(require("@mui/material/Alert"));
21
+
22
+ var _AlertTitle = _interopRequireDefault(require("@mui/material/AlertTitle"));
23
+
24
+ var _reactIntl = require("react-intl");
25
+
26
+ var _Button = _interopRequireDefault(require("@mui/material/Button"));
27
+
18
28
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
19
29
 
20
30
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
@@ -30,6 +40,8 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
30
40
  var AuthenticationRouter = function AuthenticationRouter(_ref) {
31
41
  var userManager = _ref.userManager,
32
42
  signInCallbackError = _ref.signInCallbackError,
43
+ unauthorizedUserInfo = _ref.unauthorizedUserInfo,
44
+ showAuthenticationRouterLogin = _ref.showAuthenticationRouterLogin,
33
45
  dispatch = _ref.dispatch,
34
46
  navigate = _ref.navigate,
35
47
  location = _ref.location;
@@ -39,7 +51,12 @@ var AuthenticationRouter = function AuthenticationRouter(_ref) {
39
51
  var handleSilentRenewCallbackClosure = (0, _react.useCallback)(function () {
40
52
  return (0, _AuthService.handleSilentRenewCallback)(userManager.instance);
41
53
  }, [userManager.instance]);
42
- return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, userManager.error !== null && /*#__PURE__*/_react["default"].createElement("h1", null, "Error : Getting userManager; ", userManager.error), signInCallbackError !== null && /*#__PURE__*/_react["default"].createElement("h1", null, "Error : SignIn Callback Error; ", signInCallbackError.message), /*#__PURE__*/_react["default"].createElement(_reactRouterDom.Routes, null, /*#__PURE__*/_react["default"].createElement(_reactRouterDom.Route, {
54
+ return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(_material.Grid, {
55
+ container: true,
56
+ alignContent: 'center',
57
+ alignItems: 'center',
58
+ direction: 'column'
59
+ }, userManager.error !== null && /*#__PURE__*/_react["default"].createElement("h1", null, "Error : Getting userManager; ", userManager.error), signInCallbackError !== null && /*#__PURE__*/_react["default"].createElement("h1", null, "Error : SignIn Callback Error;", signInCallbackError.message), /*#__PURE__*/_react["default"].createElement(_reactRouterDom.Routes, null, /*#__PURE__*/_react["default"].createElement(_reactRouterDom.Route, {
43
60
  path: "sign-in-callback",
44
61
  element: /*#__PURE__*/_react["default"].createElement(_SignInCallbackHandler["default"], {
45
62
  userManager: userManager.instance,
@@ -58,13 +75,33 @@ var AuthenticationRouter = function AuthenticationRouter(_ref) {
58
75
  })
59
76
  }), /*#__PURE__*/_react["default"].createElement(_reactRouterDom.Route, {
60
77
  path: "*",
61
- element: userManager.error === null && /*#__PURE__*/_react["default"].createElement(_Login["default"], {
78
+ element: showAuthenticationRouterLogin && /*#__PURE__*/_react["default"].createElement(_Login["default"], {
62
79
  disabled: userManager.instance === null,
63
80
  onLoginClick: function onLoginClick() {
64
81
  return (0, _AuthService.login)(location, userManager.instance);
65
82
  }
66
83
  })
67
- })));
84
+ })), unauthorizedUserInfo !== null && /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(_material.Grid, {
85
+ item: true
86
+ }, /*#__PURE__*/_react["default"].createElement(_Button["default"], {
87
+ variant: "contained",
88
+ onClick: function onClick() {
89
+ (0, _AuthService.logout)(dispatch, userManager.instance);
90
+ }
91
+ }, /*#__PURE__*/_react["default"].createElement(_reactIntl.FormattedMessage, {
92
+ id: "login/logout"
93
+ }))), /*#__PURE__*/_react["default"].createElement(_material.Grid, {
94
+ item: true
95
+ }, /*#__PURE__*/_react["default"].createElement(_Alert["default"], {
96
+ severity: "info"
97
+ }, /*#__PURE__*/_react["default"].createElement(_AlertTitle["default"], null, /*#__PURE__*/_react["default"].createElement(_reactIntl.FormattedMessage, {
98
+ id: "login/unauthorizedAccess"
99
+ })), /*#__PURE__*/_react["default"].createElement(_reactIntl.FormattedMessage, {
100
+ id: "login/unauthorizedAccessMessage",
101
+ values: {
102
+ userName: unauthorizedUserInfo === null || unauthorizedUserInfo === void 0 ? void 0 : unauthorizedUserInfo.userName
103
+ }
104
+ }))))));
68
105
  };
69
106
 
70
107
  var _default = AuthenticationRouter;
@@ -90,8 +90,9 @@ var defaultStyles = {
90
90
  * @param {String} data[].id - Uuid of the object in Tree
91
91
  * @param {String} data[].parentId - Uuid of the parent node in Tree
92
92
  * @param {String} data[].name - name of the node to print in Tree
93
+ * @param {String} data[].icon - JSX of an icon to display next a node
94
+ * @param {String} data[].childrenCount - number of children
93
95
  * @param {Object[]} [data[].children] - array of children nodes, if undefined, the node is a leaf.
94
- * @param {String} [data[].icon] - JSX of an icon to display next a node
95
96
  * @callback onTreeBrowse - callback to update data prop when walk into Tree
96
97
  * @param {Array} [defaultSelected=[]] - selected items at mount (Uncontrolled)
97
98
  * @param {Array} [defaultExpanded=[]] - ids of the expanded items at mount (Uncontrolled)
@@ -225,7 +226,13 @@ var TreeViewFinder = function TreeViewFinder(props) {
225
226
  return /*#__PURE__*/_react["default"].createElement(_TreeItem["default"], {
226
227
  key: node.id,
227
228
  nodeId: node.id,
228
- label: renderTreeItemLabel(node)
229
+ label: renderTreeItemLabel(node),
230
+ expandIcon: node.childrenCount > 0 ? /*#__PURE__*/_react["default"].createElement(_ChevronRight["default"], {
231
+ className: classes.icon
232
+ }) : null,
233
+ collapseIcon: node.childrenCount > 0 ? /*#__PURE__*/_react["default"].createElement(_ExpandMore["default"], {
234
+ className: classes.icon
235
+ }) : null
229
236
  }, Array.isArray(node.children) ? node.children.length ? node.children.sort(sortMethod).map(function (child) {
230
237
  return renderTree(child);
231
238
  }) : [false] // Pass non empty Array here to simulate a child then this node isn't considered as a leaf.
@@ -263,12 +270,6 @@ var TreeViewFinder = function TreeViewFinder(props) {
263
270
  onNodeToggle: handleNodeToggle,
264
271
  onNodeSelect: handleNodeSelect // Uncontrolled props
265
272
  ,
266
- defaultCollapseIcon: /*#__PURE__*/_react["default"].createElement(_ExpandMore["default"], {
267
- className: classes.icon
268
- }),
269
- defaultExpandIcon: /*#__PURE__*/_react["default"].createElement(_ChevronRight["default"], {
270
- className: classes.icon
271
- }),
272
273
  multiSelect: multiselect
273
274
  }, data && Array.isArray(data) ? data.sort(sortMethod).map(function (child) {
274
275
  return renderTree(child);
@@ -11,7 +11,10 @@ exports["default"] = void 0;
11
11
  */
12
12
  var login_en = {
13
13
  'login/login': 'Login',
14
- 'login/connection': 'Connection'
14
+ 'login/connection': 'Connection',
15
+ 'login/unauthorizedAccess': 'Unauthorized access',
16
+ 'login/unauthorizedAccessMessage': "The user {userName} isn't granted yet",
17
+ 'login/logout': 'Logout'
15
18
  };
16
19
  var _default = login_en;
17
20
  exports["default"] = _default;
@@ -11,7 +11,10 @@ exports["default"] = void 0;
11
11
  */
12
12
  var login_fr = {
13
13
  'login/login': 'Se connecter',
14
- 'login/connection': 'Connexion'
14
+ 'login/connection': 'Connexion',
15
+ 'login/unauthorizedAccess': 'Accès non autorisé',
16
+ 'login/unauthorizedAccessMessage': "L'utilisateur {userName} n'a pas encore accès à GridSuite",
17
+ 'login/logout': 'Se déconnecter'
15
18
  };
16
19
  var _default = login_fr;
17
20
  exports["default"] = _default;
@@ -80,7 +80,7 @@ var useImportExportParams = function useImportExportParams(paramsAsArray) {
80
80
  };
81
81
 
82
82
  var renderField = function renderField(param) {
83
- var _currentValues$param$, _param$possibleValues, _currentValues$param$2, _currentValues$param$3;
83
+ var _currentValues$param$, _param$possibleValues, _currentValues$param$2, _currentValues$param$5;
84
84
 
85
85
  switch (param.type) {
86
86
  case 'BOOLEAN':
@@ -118,10 +118,41 @@ var useImportExportParams = function useImportExportParams(paramsAsArray) {
118
118
  }
119
119
  });
120
120
 
121
+ case 'STRING':
122
+ if (param.possibleValues) {
123
+ var _currentValues$param$3;
124
+
125
+ return /*#__PURE__*/_react["default"].createElement(_material.Autocomplete, {
126
+ fullWidth: true,
127
+ disableClearable: true,
128
+ options: param.possibleValues,
129
+ onChange: function onChange(e, value) {
130
+ return onFieldChange(value, param.name);
131
+ },
132
+ value: (_currentValues$param$3 = currentValues === null || currentValues === void 0 ? void 0 : currentValues[param.name]) !== null && _currentValues$param$3 !== void 0 ? _currentValues$param$3 : defaultValues[param.name],
133
+ renderInput: function renderInput(options) {
134
+ return /*#__PURE__*/_react["default"].createElement(_material.TextField, _extends({}, options, {
135
+ variant: "standard"
136
+ }));
137
+ }
138
+ });
139
+ } else {
140
+ var _currentValues$param$4;
141
+
142
+ return /*#__PURE__*/_react["default"].createElement(_material.TextField, {
143
+ fullWidth: true,
144
+ defaultValue: (_currentValues$param$4 = currentValues === null || currentValues === void 0 ? void 0 : currentValues[param.name]) !== null && _currentValues$param$4 !== void 0 ? _currentValues$param$4 : defaultValues[param.name],
145
+ onChange: function onChange(e) {
146
+ return onFieldChange(e.target.value, param.name);
147
+ },
148
+ variant: 'standard'
149
+ });
150
+ }
151
+
121
152
  default:
122
153
  return /*#__PURE__*/_react["default"].createElement(_material.TextField, {
123
154
  fullWidth: true,
124
- defaultValue: (_currentValues$param$3 = currentValues === null || currentValues === void 0 ? void 0 : currentValues[param.name]) !== null && _currentValues$param$3 !== void 0 ? _currentValues$param$3 : defaultValues[param.name],
155
+ defaultValue: (_currentValues$param$5 = currentValues === null || currentValues === void 0 ? void 0 : currentValues[param.name]) !== null && _currentValues$param$5 !== void 0 ? _currentValues$param$5 : defaultValues[param.name],
125
156
  onChange: function onChange(e) {
126
157
  return onFieldChange(e.target.value, param.name);
127
158
  },
package/lib/index.js CHANGED
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
 
3
3
  exports.__esModule = true;
4
- exports.useImportExportParams = exports.treeview_finder_fr = exports.treeview_finder_en = exports.top_bar_fr = exports.top_bar_en = exports.table_fr = exports.table_en = exports.setSignInCallbackError = exports.setLoggedUser = exports.report_viewer_fr = exports.report_viewer_en = exports.logout = exports.login_fr = exports.login_en = exports.initializeAuthenticationProd = exports.initializeAuthenticationDev = exports.getPreLoginPath = exports.getFileIcon = exports.getEquipmentsInfosForSearchBar = exports.equipment_search_fr = exports.equipment_search_en = exports.equipmentStyles = exports.element_search_fr = exports.element_search_en = exports.elementType = exports.dispatchUser = exports.card_error_boundary_fr = exports.card_error_boundary_en = exports.USER = exports.TreeViewFinder = exports.TopBar = exports.TagRenderer = exports.SnackbarProvider = exports.SIGNIN_CALLBACK_ERROR = exports.ReportViewerDialog = exports.ReportViewer = exports.OverflowableText = exports.MuiVirtualizedTable = exports.LIGHT_THEME = exports.LANG_SYSTEM = exports.LANG_FRENCH = exports.LANG_ENGLISH = exports.EquipmentItem = exports.ElementSearchDialog = exports.EQUIPMENT_TYPE = exports.DEFAULT_ROW_HEIGHT = exports.DEFAULT_HEADER_HEIGHT = exports.DEFAULT_CELL_PADDING = exports.DARK_THEME = exports.CardErrorBoundary = exports.AuthenticationRouter = void 0;
4
+ exports.useImportExportParams = exports.treeview_finder_fr = exports.treeview_finder_en = exports.top_bar_fr = exports.top_bar_en = exports.table_fr = exports.table_en = exports.setSignInCallbackError = exports.setShowAuthenticationRouterLogin = exports.setLoggedUser = exports.report_viewer_fr = exports.report_viewer_en = exports.logout = exports.login_fr = exports.login_en = exports.initializeAuthenticationProd = exports.initializeAuthenticationDev = exports.getPreLoginPath = exports.getFileIcon = exports.getEquipmentsInfosForSearchBar = exports.equipment_search_fr = exports.equipment_search_en = exports.equipmentStyles = exports.element_search_fr = exports.element_search_en = exports.elementType = exports.dispatchUser = exports.card_error_boundary_fr = exports.card_error_boundary_en = exports.USER = exports.UNAUTHORIZED_USER_INFO = exports.TreeViewFinder = exports.TopBar = exports.TagRenderer = exports.SnackbarProvider = exports.SIGNIN_CALLBACK_ERROR = exports.SHOW_AUTH_INFO_LOGIN = exports.ReportViewerDialog = exports.ReportViewer = exports.OverflowableText = exports.MuiVirtualizedTable = exports.LIGHT_THEME = exports.LANG_SYSTEM = exports.LANG_FRENCH = exports.LANG_ENGLISH = exports.EquipmentItem = exports.ElementSearchDialog = exports.EQUIPMENT_TYPE = exports.DEFAULT_ROW_HEIGHT = exports.DEFAULT_HEADER_HEIGHT = exports.DEFAULT_CELL_PADDING = exports.DARK_THEME = exports.CardErrorBoundary = exports.AuthenticationRouter = void 0;
5
5
 
6
6
  var _TreeViewFinder = _interopRequireDefault(require("./components/TreeViewFinder"));
7
7
 
@@ -79,6 +79,9 @@ exports.USER = _actions.USER;
79
79
  exports.setLoggedUser = _actions.setLoggedUser;
80
80
  exports.SIGNIN_CALLBACK_ERROR = _actions.SIGNIN_CALLBACK_ERROR;
81
81
  exports.setSignInCallbackError = _actions.setSignInCallbackError;
82
+ exports.UNAUTHORIZED_USER_INFO = _actions.UNAUTHORIZED_USER_INFO;
83
+ exports.setShowAuthenticationRouterLogin = _actions.setShowAuthenticationRouterLogin;
84
+ exports.SHOW_AUTH_INFO_LOGIN = _actions.SHOW_AUTH_INFO_LOGIN;
82
85
 
83
86
  var _reportViewerEn = _interopRequireDefault(require("./components/translations/report-viewer-en"));
84
87
 
@@ -31,11 +31,11 @@ window.OIDCLog = _oidcClient.Log;
31
31
  var hackauthoritykey = 'oidc.hack.authority';
32
32
  var pathKey = 'powsybl-gridsuite-current-path';
33
33
 
34
- function initializeAuthenticationDev(dispatch, isSilentRenew) {
34
+ function initializeAuthenticationDev(dispatch, isSilentRenew, validateUser) {
35
35
  var userManager = new _UserManagerMock.UserManagerMock({});
36
36
 
37
37
  if (!isSilentRenew) {
38
- handleUser(dispatch, userManager);
38
+ handleUser(dispatch, userManager, validateUser);
39
39
  }
40
40
 
41
41
  return Promise.resolve(userManager);
@@ -43,7 +43,7 @@ function initializeAuthenticationDev(dispatch, isSilentRenew) {
43
43
 
44
44
  var accessTokenExpiringNotificationTime = 60; // seconds
45
45
 
46
- function initializeAuthenticationProd(dispatch, isSilentRenew, idpSettings) {
46
+ function initializeAuthenticationProd(dispatch, isSilentRenew, idpSettings, validateUser) {
47
47
  return idpSettings.then(function (r) {
48
48
  return r.json();
49
49
  }).then(function (idpSettings) {
@@ -117,7 +117,7 @@ function initializeAuthenticationProd(dispatch, isSilentRenew, idpSettings) {
117
117
  userManager.idpSettings = idpSettings; //store our settings in there as well to use it later
118
118
 
119
119
  if (!isSilentRenew) {
120
- handleUser(dispatch, userManager);
120
+ handleUser(dispatch, userManager, validateUser);
121
121
  }
122
122
 
123
123
  return userManager;
@@ -144,20 +144,33 @@ function logout(dispatch, userManagerInstance) {
144
144
  });
145
145
  }
146
146
 
147
- function dispatchUser(dispatch, userManagerInstance) {
147
+ function dispatchUser(dispatch, userManagerInstance, validateUser) {
148
148
  return userManagerInstance.getUser().then(function (user) {
149
149
  if (user) {
150
- var now = parseInt(Date.now() / 1000);
151
- var exp = (0, _jwtDecode["default"])(user.id_token).exp;
152
- var idTokenExpiresIn = exp - now;
150
+ // without validateUser defined, valid user by default
151
+ var validateUserPromise = validateUser && validateUser(user) || Promise.resolve(true);
152
+ return validateUserPromise.then(function (valid) {
153
+ if (!valid) {
154
+ var _user$profile;
155
+
156
+ console.debug("User isn't authorized to log in and will not be dispatched");
157
+ return dispatch((0, _actions.setUnauthorizedUserInfo)({
158
+ userName: user === null || user === void 0 ? void 0 : (_user$profile = user.profile) === null || _user$profile === void 0 ? void 0 : _user$profile.name
159
+ }));
160
+ }
153
161
 
154
- if (idTokenExpiresIn < 0) {
155
- console.debug('User token is expired and will not be dispatched');
156
- return;
157
- }
162
+ var now = parseInt(Date.now() / 1000);
163
+ var exp = (0, _jwtDecode["default"])(user.id_token).exp;
164
+ var idTokenExpiresIn = exp - now;
158
165
 
159
- console.debug('User has been successfully loaded from store.');
160
- return dispatch((0, _actions.setLoggedUser)(user));
166
+ if (idTokenExpiresIn < 0) {
167
+ console.debug('User token is expired and will not be dispatched');
168
+ return;
169
+ }
170
+
171
+ console.debug('User has been successfully loaded from store.');
172
+ return dispatch((0, _actions.setLoggedUser)(user));
173
+ });
161
174
  } else {
162
175
  console.debug('You are not logged in.');
163
176
  }
@@ -183,10 +196,10 @@ function handleSilentRenewCallback(userManagerInstance) {
183
196
  userManagerInstance.signinSilentCallback();
184
197
  }
185
198
 
186
- function handleUser(dispatch, userManager) {
199
+ function handleUser(dispatch, userManager, validateUser) {
187
200
  userManager.events.addUserLoaded(function (user) {
188
- console.debug('user loaded');
189
- dispatchUser(dispatch, userManager);
201
+ console.debug('user loaded', user);
202
+ dispatchUser(dispatch, userManager, validateUser);
190
203
  });
191
204
  userManager.events.addSilentRenewError(function (error) {
192
205
  console.debug(error); // wait for accessTokenExpiringNotificationTime so that the user is expired
@@ -226,5 +239,5 @@ function handleUser(dispatch, userManager) {
226
239
  }, accessTokenExpiringNotificationTime * 1000);
227
240
  });
228
241
  console.debug('dispatch user');
229
- dispatchUser(dispatch, userManager);
242
+ dispatchUser(dispatch, userManager, validateUser);
230
243
  }
@@ -57,15 +57,14 @@ var UserManagerMock = /*#__PURE__*/function () {
57
57
  };
58
58
 
59
59
  _proto2.signinSilent = function signinSilent() {
60
- var _this = this;
61
-
62
60
  console.info('signinSilent..............');
63
- var localStorageUser = localStorage.getItem('powsybl-gridsuite-mock-user');
64
- sessionStorage.setItem('powsybl-gridsuite-mock-user', localStorageUser);
61
+ var localStorageUser = JSON.parse(localStorage.getItem('powsybl-gridsuite-mock-user'));
62
+ if (localStorageUser === null) return Promise.reject(new Error('End-User authentication required'));
63
+ sessionStorage.setItem('powsybl-gridsuite-mock-user', JSON.stringify(localStorageUser));
65
64
  this.events.userLoadedCallbacks.forEach(function (c) {
66
- return c(_this.user);
65
+ return c(localStorageUser);
67
66
  });
68
- return Promise.resolve(JSON.parse(localStorageUser));
67
+ return Promise.resolve(localStorageUser);
69
68
  };
70
69
 
71
70
  _proto2.signinSilentCallback = function signinSilentCallback() {
@@ -74,24 +73,24 @@ var UserManagerMock = /*#__PURE__*/function () {
74
73
  };
75
74
 
76
75
  _proto2.signinRedirect = function signinRedirect() {
76
+ localStorage.setItem('powsybl-gridsuite-mock-user', JSON.stringify(this.user));
77
77
  window.location = './sign-in-callback';
78
78
  return Promise.resolve(null);
79
79
  };
80
80
 
81
81
  _proto2.signoutRedirect = function signoutRedirect() {
82
- sessionStorage.setItem('powsybl-gridsuite-mock-user', null);
83
- localStorage.setItem('powsybl-gridsuite-mock-user', null);
82
+ sessionStorage.removeItem('powsybl-gridsuite-mock-user');
83
+ localStorage.removeItem('powsybl-gridsuite-mock-user');
84
84
  window.location = '.';
85
85
  return Promise.resolve(null);
86
86
  };
87
87
 
88
88
  _proto2.signinRedirectCallback = function signinRedirectCallback() {
89
- var _this2 = this;
89
+ var _this = this;
90
90
 
91
91
  sessionStorage.setItem('powsybl-gridsuite-mock-user', JSON.stringify(this.user));
92
- localStorage.setItem('powsybl-gridsuite-mock-user', JSON.stringify(this.user));
93
92
  this.events.userLoadedCallbacks.forEach(function (c) {
94
- return c(_this2.user);
93
+ return c(_this.user);
95
94
  });
96
95
  return Promise.resolve('');
97
96
  };
@@ -1,9 +1,11 @@
1
1
  "use strict";
2
2
 
3
3
  exports.__esModule = true;
4
- exports.USER = exports.SIGNIN_CALLBACK_ERROR = void 0;
4
+ exports.USER = exports.UNAUTHORIZED_USER_INFO = exports.SIGNIN_CALLBACK_ERROR = exports.SHOW_AUTH_INFO_LOGIN = void 0;
5
5
  exports.setLoggedUser = setLoggedUser;
6
+ exports.setShowAuthenticationRouterLogin = setShowAuthenticationRouterLogin;
6
7
  exports.setSignInCallbackError = setSignInCallbackError;
8
+ exports.setUnauthorizedUserInfo = setUnauthorizedUserInfo;
7
9
 
8
10
  /**
9
11
  * Copyright (c) 2020, RTE (http://www.rte-france.com)
@@ -29,4 +31,24 @@ function setSignInCallbackError(signInCallbackError) {
29
31
  type: SIGNIN_CALLBACK_ERROR,
30
32
  signInCallbackError: signInCallbackError
31
33
  };
34
+ }
35
+
36
+ var UNAUTHORIZED_USER_INFO = 'UNAUTHORIZED_USER_INFO';
37
+ exports.UNAUTHORIZED_USER_INFO = UNAUTHORIZED_USER_INFO;
38
+
39
+ function setUnauthorizedUserInfo(unauthorizedUserInfo) {
40
+ return {
41
+ type: UNAUTHORIZED_USER_INFO,
42
+ unauthorizedUserInfo: unauthorizedUserInfo
43
+ };
44
+ }
45
+
46
+ var SHOW_AUTH_INFO_LOGIN = 'SHOW_AUTH_INFO_LOGIN';
47
+ exports.SHOW_AUTH_INFO_LOGIN = SHOW_AUTH_INFO_LOGIN;
48
+
49
+ function setShowAuthenticationRouterLogin(showAuthenticationRouterLogin) {
50
+ return {
51
+ type: SHOW_AUTH_INFO_LOGIN,
52
+ showAuthenticationRouterLogin: showAuthenticationRouterLogin
53
+ };
32
54
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gridsuite/commons-ui",
3
- "version": "0.26.1",
3
+ "version": "0.27.0",
4
4
  "description": "common react components for gridsuite applications",
5
5
  "engines": {
6
6
  "npm": "<=6",