cozy-bar 29.1.0 → 29.2.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.
@@ -7,6 +7,7 @@ Object.defineProperty(exports, "__esModule", {
7
7
  exports.default = void 0;
8
8
  var _react = _interopRequireDefault(require("react"));
9
9
  var _classnames = _interopRequireDefault(require("classnames"));
10
+ var _reactRedux = require("react-redux");
10
11
  var _cozyFlags = _interopRequireDefault(require("cozy-flags"));
11
12
  var _cozyIntent = require("cozy-intent");
12
13
  var _cozyClient = require("cozy-client");
@@ -26,6 +27,7 @@ var _Divider = _interopRequireDefault(require("cozy-ui/transpiled/react/Divider"
26
27
  var _Buttons = _interopRequireDefault(require("cozy-ui/transpiled/react/Buttons"));
27
28
  var _Typography = _interopRequireDefault(require("cozy-ui/transpiled/react/Typography"));
28
29
  var _Breakpoints = require("cozy-ui/transpiled/react/providers/Breakpoints");
30
+ var _reducers = require("../../lib/reducers");
29
31
  var _useI18n2 = _interopRequireDefault(require("../useI18n"));
30
32
  var _AvatarMyself = _interopRequireDefault(require("./components/AvatarMyself"));
31
33
  var _helpers = require("./helpers");
@@ -37,6 +39,7 @@ var UserMenuContent = function UserMenuContent(_ref) {
37
39
  var onLogOut = _ref.onLogOut,
38
40
  instance = _ref.instance,
39
41
  diskUsage = _ref.diskUsage,
42
+ isSettingsAppInstalled = _ref.isSettingsAppInstalled,
40
43
  closeMenu = _ref.closeMenu;
41
44
  var webviewIntent = (0, _cozyIntent.useWebviewIntent)();
42
45
  var client = (0, _cozyClient.useClient)();
@@ -78,7 +81,7 @@ var UserMenuContent = function UserMenuContent(_ref) {
78
81
  className: (0, _classnames.default)(styles['user-menu-content-add-account'], 'u-mt-1')
79
82
  })), /*#__PURE__*/_react.default.createElement(_List.default, {
80
83
  className: "u-pb-0"
81
- }, /*#__PURE__*/_react.default.createElement(_ListItem.default, {
84
+ }, isSettingsAppInstalled && /*#__PURE__*/_react.default.createElement(_ListItem.default, {
82
85
  button: true,
83
86
  gutters: gutters,
84
87
  size: "small",
@@ -100,7 +103,7 @@ var UserMenuContent = function UserMenuContent(_ref) {
100
103
  icon: _Company.default
101
104
  })), /*#__PURE__*/_react.default.createElement(_ListItemText.default, {
102
105
  primary: t('userMenu.createBusinessAccount')
103
- })), /*#__PURE__*/_react.default.createElement(_ListItem.default, {
106
+ })), isSettingsAppInstalled && /*#__PURE__*/_react.default.createElement(_ListItem.default, {
104
107
  button: true,
105
108
  gutters: gutters,
106
109
  size: "small",
@@ -134,4 +137,9 @@ var UserMenuContent = function UserMenuContent(_ref) {
134
137
  primary: t('userMenu.logOut')
135
138
  }))));
136
139
  };
137
- var _default = exports.default = UserMenuContent;
140
+ var mapStateToProps = function mapStateToProps(state) {
141
+ return {
142
+ isSettingsAppInstalled: (0, _reducers.getIsSettingsAppInstalled)(state)
143
+ };
144
+ };
145
+ var _default = exports.default = (0, _reactRedux.connect)(mapStateToProps)(UserMenuContent);
package/dist/index.js CHANGED
@@ -71,4 +71,4 @@ var _BarProvider = _interopRequireDefault(require("./components/BarProvider"));
71
71
  var _reducers = require("./lib/reducers");
72
72
  /* global __VERSION__ */
73
73
 
74
- var version = exports.version = "\"29.1.0\"";
74
+ var version = exports.version = "\"29.2.0\"";
@@ -4,7 +4,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
- exports.setInfos = exports.setDefaultApp = exports.receiveApp = exports.isFetchingApps = exports.isCurrentApp = exports.hasFetched = exports.getHomeApp = exports.getApps = exports.fetchApps = exports.deleteApp = exports.default = void 0;
7
+ exports.setIsSettingsAppInstalled = exports.setInfos = exports.setDefaultApp = exports.receiveApp = exports.isFetchingApps = exports.isCurrentApp = exports.hasFetched = exports.getIsSettingsAppInstalled = exports.getHomeApp = exports.getApps = exports.fetchApps = exports.deleteApp = exports.default = void 0;
8
8
  var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
9
9
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
10
10
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
@@ -22,6 +22,7 @@ var FETCH_APPS = 'FETCH_APPS';
22
22
  var FETCH_APPS_FAILURE = 'FETCH_APPS_FAILURE';
23
23
  var FETCH_APPS_SUCCESS = 'FETCH_APPS_SUCCESS';
24
24
  var SET_INFOS = 'SET_INFOS';
25
+ var SET_IS_SETTINGS_APP_INSTALLED = 'SET_IS_SETTINGS_APP_INSTALLED';
25
26
  var isCurrentApp = exports.isCurrentApp = function isCurrentApp(state, app) {
26
27
  return app.slug === state.appSlug;
27
28
  };
@@ -37,6 +38,9 @@ var getHomeApp = exports.getHomeApp = function getHomeApp(state) {
37
38
  var isFetchingApps = exports.isFetchingApps = function isFetchingApps(state) {
38
39
  return state ? state.isFetching : false;
39
40
  };
41
+ var getIsSettingsAppInstalled = exports.getIsSettingsAppInstalled = function getIsSettingsAppInstalled(state) {
42
+ return state ? state.isSettingsAppInstalled : false;
43
+ };
40
44
  var hasFetched = exports.hasFetched = function hasFetched(state) {
41
45
  return state.hasFetched;
42
46
  };
@@ -74,12 +78,18 @@ var setInfos = exports.setInfos = function setInfos(appName, appNamePrefix, appS
74
78
  appSlug: appSlug
75
79
  };
76
80
  };
81
+ var setIsSettingsAppInstalled = exports.setIsSettingsAppInstalled = function setIsSettingsAppInstalled(isSettingsAppInstalled) {
82
+ return {
83
+ type: SET_IS_SETTINGS_APP_INSTALLED,
84
+ isSettingsAppInstalled: isSettingsAppInstalled
85
+ };
86
+ };
77
87
 
78
88
  // actions async
79
89
  var fetchApps = exports.fetchApps = function fetchApps() {
80
90
  return /*#__PURE__*/function () {
81
91
  var _ref = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee(dispatch) {
82
- var rawAppList, excludedApps, apps;
92
+ var rawAppList, isSettingsAppInstalled, excludedApps, apps;
83
93
  return _regenerator.default.wrap(function _callee$(_context) {
84
94
  while (1) switch (_context.prev = _context.next) {
85
95
  case 0:
@@ -91,37 +101,45 @@ var fetchApps = exports.fetchApps = function fetchApps() {
91
101
  return _stack.default.get.apps();
92
102
  case 4:
93
103
  rawAppList = _context.sent;
94
- excludedApps = (0, _cozyFlags.default)('apps.hidden') || [];
95
- apps = rawAppList.map(mapApp).filter(function (app) {
96
- return !excludedApps.includes(app.slug);
97
- });
98
104
  if (rawAppList.length) {
99
- _context.next = 9;
105
+ _context.next = 7;
100
106
  break;
101
107
  }
102
108
  throw new Error('No installed apps found by the bar');
103
- case 9:
104
- _context.next = 11;
109
+ case 7:
110
+ // We need to store if settings app is installed because it maybe be filtered because of apps.hidden
111
+ isSettingsAppInstalled = rawAppList.some(function (app) {
112
+ var _app$attributes;
113
+ return (app === null || app === void 0 || (_app$attributes = app.attributes) === null || _app$attributes === void 0 ? void 0 : _app$attributes.slug) === 'settings';
114
+ });
115
+ _context.next = 10;
116
+ return dispatch(setIsSettingsAppInstalled(isSettingsAppInstalled));
117
+ case 10:
118
+ excludedApps = (0, _cozyFlags.default)('apps.hidden') || [];
119
+ apps = rawAppList.map(mapApp).filter(function (app) {
120
+ return !excludedApps.includes(app.slug);
121
+ }); // TODO load only one time icons
122
+ _context.next = 14;
105
123
  return dispatch(setDefaultApp(apps));
106
- case 11:
107
- _context.next = 13;
124
+ case 14:
125
+ _context.next = 16;
108
126
  return dispatch(receiveAppList(apps));
109
- case 13:
110
- _context.next = 19;
127
+ case 16:
128
+ _context.next = 22;
111
129
  break;
112
- case 15:
113
- _context.prev = 15;
130
+ case 18:
131
+ _context.prev = 18;
114
132
  _context.t0 = _context["catch"](0);
115
133
  dispatch({
116
134
  type: FETCH_APPS_FAILURE
117
135
  });
118
136
  // eslint-disable-next-line no-console
119
137
  console.warn(_context.t0.message ? _context.t0.message : _context.t0);
120
- case 19:
138
+ case 22:
121
139
  case "end":
122
140
  return _context.stop();
123
141
  }
124
- }, _callee, null, [[0, 15]]);
142
+ }, _callee, null, [[0, 18]]);
125
143
  }));
126
144
  return function (_x) {
127
145
  return _ref.apply(this, arguments);
@@ -176,7 +194,8 @@ var defaultState = {
176
194
  appName: null,
177
195
  appNamePrefix: null,
178
196
  appSlug: null,
179
- hasFetched: false
197
+ hasFetched: false,
198
+ isSettingsAppInstalled: false
180
199
  };
181
200
  var reducer = function reducer() {
182
201
  var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : defaultState;
@@ -236,6 +255,10 @@ var reducer = function reducer() {
236
255
  appNamePrefix: action.appNamePrefix,
237
256
  appSlug: action.appSlug
238
257
  });
258
+ case SET_IS_SETTINGS_APP_INSTALLED:
259
+ return _objectSpread(_objectSpread({}, state), {}, {
260
+ isSettingsAppInstalled: action.isSettingsAppInstalled
261
+ });
239
262
  default:
240
263
  return state;
241
264
  }
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.setInfos = exports.reducers = exports.onRealtimeDelete = exports.onRealtimeCreate = exports.logOut = exports.isSettingsBusy = exports.isFetchingSettings = exports.isFetchingApps = exports.isCurrentApp = exports.hasFetched = exports.getStorageData = exports.getHomeApp = exports.getHelpLink = exports.getApps = exports.fetchSettingsData = exports.fetchContext = exports.fetchApps = exports.default = void 0;
6
+ exports.setInfos = exports.reducers = exports.onRealtimeDelete = exports.onRealtimeCreate = exports.logOut = exports.isSettingsBusy = exports.isFetchingSettings = exports.isFetchingApps = exports.isCurrentApp = exports.hasFetched = exports.getStorageData = exports.getIsSettingsAppInstalled = exports.getHomeApp = exports.getHelpLink = exports.getApps = exports.fetchSettingsData = exports.fetchContext = exports.fetchApps = exports.default = void 0;
7
7
  var _redux = require("redux");
8
8
  var _apps = _interopRequireWildcard(require("./apps"));
9
9
  var apps = _apps;
@@ -26,6 +26,7 @@ var setInfos = exports.setInfos = apps.setInfos;
26
26
  var fetchSettingsData = exports.fetchSettingsData = settings.fetchSettingsData;
27
27
  var logOut = exports.logOut = settings.logOut;
28
28
  var fetchContext = exports.fetchContext = context.fetchContext;
29
+ var getIsSettingsAppInstalled = exports.getIsSettingsAppInstalled = proxy('apps', apps.getIsSettingsAppInstalled);
29
30
  var getApps = exports.getApps = proxy('apps', apps.getApps);
30
31
  var getHomeApp = exports.getHomeApp = proxy('apps', apps.getHomeApp);
31
32
  var isFetchingApps = exports.isFetchingApps = proxy('apps', apps.isFetchingApps);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "cozy-bar",
3
- "version": "29.1.0",
3
+ "version": "29.2.0",
4
4
  "description": "cozy-bar.js library, a small lib provided by cozy-stack to inject the Cozy-bar component into each app",
5
5
  "main": "dist/index.js",
6
6
  "author": "Cozy Cloud <contact@cozycloud.cc> (https://cozy.io/)",