asab_webui_shell 25.2.8 → 26.1.2

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.
Files changed (41) hide show
  1. package/dist/actions.js +1 -2
  2. package/dist/components/branding/BrandImage.js +2 -2
  3. package/dist/config/ConfigService.js +10 -5
  4. package/dist/containers/Alerts/index.js +14 -9
  5. package/dist/containers/Application.js +45 -50
  6. package/dist/containers/Header/ApplicationScreenTitle/ApplicationScreenTitle.js +3 -3
  7. package/dist/containers/Header/ApplicationScreenTitle/index.js +3 -3
  8. package/dist/containers/Header/Help/HelpButton.js +5 -3
  9. package/dist/containers/Header/index.js +3 -3
  10. package/dist/containers/Header/reducer.js +0 -5
  11. package/dist/containers/Navigation/index.js +7 -4
  12. package/dist/containers/Router/ApplicationRouter.js +6 -4
  13. package/dist/containers/Router/index.js +7 -4
  14. package/dist/containers/Sidebar/NavbarBrand.js +4 -4
  15. package/dist/containers/Sidebar/SidebarBottomItem.js +8 -3
  16. package/dist/containers/Sidebar/SidebarItem.js +5 -5
  17. package/dist/containers/Sidebar/index.js +7 -5
  18. package/dist/containers/Toast/ToastContainer.js +2 -2
  19. package/dist/containers/Toast/ToastContainer.jsx +2 -2
  20. package/dist/modules/about/AboutScreen.js +6 -6
  21. package/dist/modules/auth/components/SessionExpirationAlert.js +1 -2
  22. package/dist/modules/auth/header.js +7 -11
  23. package/dist/modules/auth/index.js +37 -31
  24. package/dist/modules/auth/screens/AccessControlScreen.js +12 -7
  25. package/dist/modules/auth/screens/InvitationScreen.js +8 -3
  26. package/dist/modules/i18n/dropdown.js +4 -2
  27. package/dist/modules/tenant/TenantDropdown.js +14 -17
  28. package/dist/modules/tenant/service.js +6 -4
  29. package/dist/screens/InvalidRouteScreen.js +6 -2
  30. package/dist/screens/SuspenseScreen.js +1 -2
  31. package/dist/screens/UnauthorizedAccessScreen.js +7 -4
  32. package/dist/services/AttentionRequiredService.js +3 -2
  33. package/dist/services/HeaderService.js +4 -2
  34. package/dist/services/ReduxService.js +3 -8
  35. package/dist/services/TitleService.js +3 -3
  36. package/dist/theme/ThemeButton.js +8 -14
  37. package/dist/theme/ThemeReducer.js +2 -2
  38. package/dist/theme/ThemeService.js +4 -3
  39. package/package.json +5 -7
  40. package/dist/containers/Header/Preview/PreviewFlag.js +0 -35
  41. package/dist/containers/Header/Preview/PreviewService.js +0 -23
@@ -40,13 +40,14 @@ class HeaderService extends _asab_webui_components.Service {
40
40
  */
41
41
 
42
42
  addComponent(component) {
43
+ var _this$App, _this$App$dispatch;
43
44
  this.Items.push({
44
45
  'component': component.component,
45
46
  'componentProps': component.componentProps,
46
47
  'order': component.order,
47
48
  'fullscreenVisible': component.fullscreenVisible
48
49
  });
49
- this.App.Store.dispatch({
50
+ (_this$App = this.App) === null || _this$App === void 0 || (_this$App = _this$App.AppStore) === null || _this$App === void 0 || (_this$App$dispatch = _this$App.dispatch) === null || _this$App$dispatch === void 0 || _this$App$dispatch.call(_this$App, {
50
51
  type: _actions.SET_HEADER_NAVIGATION_ITEMS,
51
52
  headerNavItems: this.Items
52
53
  });
@@ -54,9 +55,10 @@ class HeaderService extends _asab_webui_components.Service {
54
55
 
55
56
  // This function removes a component from the Header
56
57
  removeComponent(component) {
58
+ var _this$App$AppStore, _this$App$AppStore$di;
57
59
  var filteredItems = this.Items.filter(item => item.component !== component);
58
60
  this.Items = filteredItems;
59
- this.App.Store.dispatch({
61
+ (_this$App$AppStore = this.App.AppStore) === null || _this$App$AppStore === void 0 || (_this$App$AppStore$di = _this$App$AppStore.dispatch) === null || _this$App$AppStore$di === void 0 || _this$App$AppStore$di.call(_this$App$AppStore, {
60
62
  type: _actions.SET_HEADER_NAVIGATION_ITEMS,
61
63
  headerNavItems: this.Items
62
64
  });
@@ -4,16 +4,11 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = void 0;
7
+ var _asab_webui_components = require("asab_webui_components");
7
8
  class ReduxService {
8
- constructor() {
9
- this.Reducers = {};
10
- }
9
+ // Register reducer
11
10
  addReducer(name, reducer) {
12
- if (name in this.Reducers) {
13
- console.warn("Reducer with name ".concat(name, " already exists."));
14
- return;
15
- }
16
- this.Reducers[name] = reducer;
11
+ (0, _asab_webui_components.registerReducer)(name, reducer);
17
12
  }
18
13
  }
19
14
  exports.default = ReduxService;
@@ -6,7 +6,6 @@ Object.defineProperty(exports, "__esModule", {
6
6
  });
7
7
  exports.default = void 0;
8
8
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
9
- var _react = _interopRequireDefault(require("react"));
10
9
  var _asab_webui_components = require("asab_webui_components");
11
10
  var _actions = require("../actions");
12
11
  class TitleService extends _asab_webui_components.Service {
@@ -21,9 +20,10 @@ class TitleService extends _asab_webui_components.Service {
21
20
  (0, _defineProperty2.default)(this, "clearSubtitle", () => {
22
21
  this._updateSubtitle(undefined);
23
22
  });
24
- // Method for dispatching subtitle update to Redux store
23
+ // Method for dispatching subtitle update to Application store
25
24
  (0, _defineProperty2.default)(this, "_updateSubtitle", subtitle => {
26
- this.App.Store.dispatch({
25
+ var _this$App, _this$App$dispatch;
26
+ (_this$App = this.App) === null || _this$App === void 0 || (_this$App = _this$App.AppStore) === null || _this$App === void 0 || (_this$App$dispatch = _this$App.dispatch) === null || _this$App$dispatch === void 0 || _this$App$dispatch.call(_this$App, {
27
27
  type: _actions.SET_SUBTITLE,
28
28
  subtitle: subtitle
29
29
  });
@@ -6,19 +6,18 @@ Object.defineProperty(exports, "__esModule", {
6
6
  });
7
7
  exports.default = void 0;
8
8
  var _react = _interopRequireDefault(require("react"));
9
- var _reactRedux = require("react-redux");
10
9
  var _reactI18next = require("react-i18next");
11
10
  var _reactstrap = require("reactstrap");
12
11
  var _actions = require("./actions");
13
- var ThemeButton = _ref => {
12
+ var _asab_webui_components = require("asab_webui_components");
13
+ var ThemeButton = () => {
14
14
  var {
15
- theme
16
- } = _ref;
17
- var {
18
- t,
19
- i18n
15
+ t
20
16
  } = (0, _reactI18next.useTranslation)();
21
- var dispatch = (0, _reactRedux.useDispatch)();
17
+ var {
18
+ dispatch
19
+ } = (0, _asab_webui_components.useAppStore)();
20
+ var theme = (0, _asab_webui_components.useAppSelector)(state => state.theme);
22
21
  var changeTheme = () => {
23
22
  var newTheme = theme == "light" ? "dark" : "light";
24
23
  dispatch({
@@ -34,9 +33,4 @@ var ThemeButton = _ref => {
34
33
  className: "bi bi-circle-half"
35
34
  }));
36
35
  };
37
- function mapStateToProps(state) {
38
- return {
39
- theme: state.theme
40
- };
41
- }
42
- var _default = exports.default = (0, _reactRedux.connect)(mapStateToProps)(ThemeButton);
36
+ var _default = exports.default = ThemeButton;
@@ -5,9 +5,9 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.default = ThemeReducer;
7
7
  var _actions = require("./actions");
8
- var themeInitState = null;
8
+ var initialState = null;
9
9
  function ThemeReducer() {
10
- var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : themeInitState;
10
+ var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : initialState;
11
11
  var action = arguments.length > 1 ? arguments[1] : undefined;
12
12
  switch (action.type) {
13
13
  case _actions.CHANGE_THEME:
@@ -7,8 +7,8 @@ Object.defineProperty(exports, "__esModule", {
7
7
  exports.default = void 0;
8
8
  var _asab_webui_components = require("asab_webui_components");
9
9
  var _ThemeReducer = _interopRequireDefault(require("./ThemeReducer"));
10
- var _actions = require("./actions");
11
10
  var _ThemeButton = _interopRequireDefault(require("./ThemeButton"));
11
+ var _actions = require("./actions");
12
12
  class ThemeService extends _asab_webui_components.Service {
13
13
  constructor(app) {
14
14
  var serviceName = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : "ThemeService";
@@ -16,6 +16,7 @@ class ThemeService extends _asab_webui_components.Service {
16
16
  app.ReduxService.addReducer("theme", _ThemeReducer.default);
17
17
  }
18
18
  initialize() {
19
+ var _this$App, _this$App$dispatch;
19
20
  var headerService = this.App.locateService("HeaderService");
20
21
  headerService.addComponent({
21
22
  component: _ThemeButton.default,
@@ -27,8 +28,8 @@ class ThemeService extends _asab_webui_components.Service {
27
28
  // more info https://bugs.chromium.org/p/chromium/issues/detail?id=998903
28
29
  var prefersColorScheme = window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches ? "dark" : "light";
29
30
 
30
- // Dispatch tenants obtained from userinfo
31
- this.App.Store.dispatch({
31
+ // Dispatch theme
32
+ (_this$App = this.App) === null || _this$App === void 0 || (_this$App = _this$App.AppStore) === null || _this$App === void 0 || (_this$App$dispatch = _this$App.dispatch) === null || _this$App$dispatch === void 0 || _this$App$dispatch.call(_this$App, {
32
33
  type: _actions.CHANGE_THEME,
33
34
  theme: prefersColorScheme
34
35
  });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "asab_webui_shell",
3
- "version": "25.2.8",
3
+ "version": "26.1.2",
4
4
  "license": "BSD-3-Clause",
5
5
  "description": "TeskaLabs ASAB WebUI Shell Application",
6
6
  "contributors": [
@@ -39,18 +39,16 @@
39
39
  "rimraf": "^5.0.0"
40
40
  },
41
41
  "peerDependencies": {
42
- "asab_webui_components": "^25.1.1",
42
+ "asab_webui_components": "^26.1.1",
43
43
  "@babel/runtime": "^7.22.11",
44
- "react": "^17.0.0",
45
- "react-dom": "^17.0.0",
44
+ "react": "^19.0.0",
45
+ "react-dom": "^19.0.0",
46
46
  "axios": "^1.8.4",
47
47
  "i18next": "^20.3.5",
48
48
  "react-i18next": "^11.8.12",
49
- "react-redux": "^7.2.0",
50
49
  "react-router": "^6.16.0",
51
50
  "react-router-dom": "^6.16.0",
52
- "reactstrap": "^9.2.0",
53
- "redux": "^4.0.5"
51
+ "reactstrap": "^9.2.0"
54
52
  },
55
53
  "scripts": {
56
54
  "clean": "rimraf dist",
@@ -1,35 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.default = PreviewFlag;
8
- var _react = _interopRequireDefault(require("react"));
9
- var _reactI18next = require("react-i18next");
10
- var _reactRedux = require("react-redux");
11
- var _reactstrap = require("reactstrap");
12
- function PreviewFlag() {
13
- var _name;
14
- var {
15
- t
16
- } = (0, _reactI18next.useTranslation)();
17
- var name = (0, _reactRedux.useSelector)(state => {
18
- var _state$header;
19
- return state === null || state === void 0 || (_state$header = state.header) === null || _state$header === void 0 ? void 0 : _state$header.flag;
20
- });
21
- var lowercasedName = (_name = name) === null || _name === void 0 ? void 0 : _name.toLowerCase();
22
- if (lowercasedName === "preview") {
23
- name = t("General|Feature preview");
24
- } else if (lowercasedName === "alpha") {
25
- name = t("Alpha");
26
- } else if (lowercasedName === "beta") {
27
- name = t("Beta");
28
- } else {
29
- return null;
30
- }
31
- return /*#__PURE__*/_react.default.createElement(_reactstrap.Badge, {
32
- className: "mx-2",
33
- color: "primary"
34
- }, name);
35
- }
@@ -1,23 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.default = void 0;
8
- var _asab_webui_components = require("asab_webui_components");
9
- var _PreviewFlag = _interopRequireDefault(require("./PreviewFlag"));
10
- class PreviewService extends _asab_webui_components.Service {
11
- constructor(app) {
12
- var serviceName = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : "PreviewService";
13
- super(app, serviceName);
14
- }
15
- initialize() {
16
- var headerService = this.App.locateService("HeaderService");
17
- headerService.addComponent({
18
- component: _PreviewFlag.default,
19
- order: 100
20
- });
21
- }
22
- }
23
- exports.default = PreviewService;