@bigbinary/neeto-team-members-frontend 4.4.27 → 4.5.1
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/app/javascript/src/translations/en.json +22 -1
- package/dist/Groups.js +1 -1
- package/dist/ManageMember.js +2 -2
- package/dist/MembersDropdown.js +1 -1
- package/dist/TeamMembers.js +172 -21
- package/dist/TeamMembers.js.map +1 -1
- package/dist/TeamsDropdown.js +1 -1
- package/dist/cjs/Groups.js +1 -1
- package/dist/cjs/ManageMember.js +2 -2
- package/dist/cjs/MembersDropdown.js +1 -1
- package/dist/cjs/TeamMembers.js +171 -20
- package/dist/cjs/TeamMembers.js.map +1 -1
- package/dist/cjs/TeamsDropdown.js +1 -1
- package/dist/cjs/constants.js +4 -1
- package/dist/cjs/constants.js.map +1 -1
- package/dist/cjs/hooks.js +1 -1
- package/dist/cjs/index.js +5 -3
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/utils.js +1 -1
- package/dist/constants.js +6 -0
- package/dist/constants.js.map +1 -1
- package/dist/hooks.js +1 -1
- package/dist/{index-CKp_a6SU.js → index-C2ciZlLk.js} +4 -3
- package/dist/index-C2ciZlLk.js.map +1 -0
- package/dist/{index-D0Ev1DvT.js → index-Cpad1EmZ.js} +6 -5
- package/dist/index-Cpad1EmZ.js.map +1 -0
- package/dist/{index-yFl2aYDN.js → index-DPMt5r_V.js} +4 -3
- package/dist/index-DPMt5r_V.js.map +1 -0
- package/dist/{index-C_Q5GzdX.js → index-DX_qEZeG.js} +6 -5
- package/dist/index-DX_qEZeG.js.map +1 -0
- package/dist/index.js +5 -3
- package/dist/index.js.map +1 -1
- package/dist/{useTeamsApi-DReZnkbo.js → useTeamsApi-DLoZKPuX.js} +14 -3
- package/dist/useTeamsApi-DLoZKPuX.js.map +1 -0
- package/dist/{useTeamsApi-DMq-AW7A.js → useTeamsApi-DqizqY5S.js} +14 -2
- package/dist/useTeamsApi-DqizqY5S.js.map +1 -0
- package/dist/utils.js +1 -1
- package/package.json +9 -9
- package/dist/index-CKp_a6SU.js.map +0 -1
- package/dist/index-C_Q5GzdX.js.map +0 -1
- package/dist/index-D0Ev1DvT.js.map +0 -1
- package/dist/index-yFl2aYDN.js.map +0 -1
- package/dist/useTeamsApi-DMq-AW7A.js.map +0 -1
- package/dist/useTeamsApi-DReZnkbo.js.map +0 -1
|
@@ -31,6 +31,7 @@
|
|
|
31
31
|
"back": "Back",
|
|
32
32
|
"cancel": "Cancel",
|
|
33
33
|
"continue": "Continue",
|
|
34
|
+
"download": "Download",
|
|
34
35
|
"editBasicInfo": "Edit basic info",
|
|
35
36
|
"manageBillingAndSubscriptions": "Manage billing and subscriptions",
|
|
36
37
|
"reset": "Reset",
|
|
@@ -63,6 +64,7 @@
|
|
|
63
64
|
"edit_": "Edit {{what}}",
|
|
64
65
|
"email_one": "Email",
|
|
65
66
|
"email_other": "Emails",
|
|
67
|
+
"format": "Format",
|
|
66
68
|
"name": "Name",
|
|
67
69
|
"notFound_": "There are no {{what}} to show",
|
|
68
70
|
"notFoundWithKind_": "There are no {{kind}} {{what}} to show",
|
|
@@ -120,7 +122,13 @@
|
|
|
120
122
|
"removeMember": "Remove {{member}}?",
|
|
121
123
|
"timeZone": "Time zone",
|
|
122
124
|
"totalMembers": "Total {{taxonomies.member.plural}}",
|
|
123
|
-
"groupName": "{{taxonomies.group.singular, anyCase}} name"
|
|
125
|
+
"groupName": "{{taxonomies.group.singular, anyCase}} name",
|
|
126
|
+
"downloadAs": "Download as {{format, anyCase}}",
|
|
127
|
+
"downloads": {
|
|
128
|
+
"pdf": "PDF",
|
|
129
|
+
"csv": "CSV",
|
|
130
|
+
"xlsx": "Excel"
|
|
131
|
+
}
|
|
124
132
|
},
|
|
125
133
|
"placeholders": {
|
|
126
134
|
"email": "Please enter the email addresses",
|
|
@@ -161,6 +169,14 @@
|
|
|
161
169
|
"noWhiteSpaces": "{{what, anyCase}} should not lead or end with white spaces",
|
|
162
170
|
"max": "Field must be less than {{size}} characters"
|
|
163
171
|
},
|
|
172
|
+
"downloadPane": {
|
|
173
|
+
"title": "Download {{taxonomies.member.plural}}",
|
|
174
|
+
"description": {
|
|
175
|
+
"selectedMembers_one": "Download selected {{taxonomies.member.singular}}",
|
|
176
|
+
"selectedMembers_other": "Download {{count}} selected {{taxonomies.member.plural}}",
|
|
177
|
+
"allMembers": "Download all {{taxonomies.member.plural}}"
|
|
178
|
+
}
|
|
179
|
+
},
|
|
164
180
|
"profile": {
|
|
165
181
|
"common": {
|
|
166
182
|
"myProfile": "My Profile",
|
|
@@ -208,5 +224,10 @@
|
|
|
208
224
|
"dotsNotAllowed": "Dots are not allowed"
|
|
209
225
|
}
|
|
210
226
|
}
|
|
227
|
+
},
|
|
228
|
+
"toastr": {
|
|
229
|
+
"success": {
|
|
230
|
+
"downloadMembers": "Your file is being prepared. It will be sent to <strong>{{email}}</strong> shortly."
|
|
231
|
+
}
|
|
211
232
|
}
|
|
212
233
|
}
|
package/dist/Groups.js
CHANGED
|
@@ -37,7 +37,7 @@ import Tooltip from '@bigbinary/neetoui/Tooltip';
|
|
|
37
37
|
import { pluralizeLabelUsingTaxonomy } from './utils.js';
|
|
38
38
|
import '@bigbinary/neeto-commons-frontend/constants';
|
|
39
39
|
import './_commonjsHelpers-BFTU3MAI.js';
|
|
40
|
-
import './useTeamsApi-
|
|
40
|
+
import './useTeamsApi-DLoZKPuX.js';
|
|
41
41
|
import '@babel/runtime/helpers/objectWithoutProperties';
|
|
42
42
|
import 'qs';
|
|
43
43
|
import './queryClient-Dsu-gu4Y.js';
|
package/dist/ManageMember.js
CHANGED
|
@@ -16,8 +16,8 @@ import '@bigbinary/neetoui/formik/Form';
|
|
|
16
16
|
import 'ramda';
|
|
17
17
|
import 'react-i18next';
|
|
18
18
|
import './index-Dvjcz-b3.js';
|
|
19
|
-
import './useTeamsApi-
|
|
20
|
-
export { M as default } from './index-
|
|
19
|
+
import './useTeamsApi-DLoZKPuX.js';
|
|
20
|
+
export { M as default } from './index-C2ciZlLk.js';
|
|
21
21
|
import './RolesRadioGroup-Bxt7zZkh.js';
|
|
22
22
|
import 'react/jsx-runtime';
|
|
23
23
|
import '@babel/runtime/helpers/objectWithoutProperties';
|
package/dist/MembersDropdown.js
CHANGED
|
@@ -6,7 +6,7 @@ import Dropdown from '@bigbinary/neetoui/Dropdown';
|
|
|
6
6
|
import Spinner from '@bigbinary/neetoui/Spinner';
|
|
7
7
|
import { includes, toLower, map, append, pluck, any, not, isEmpty } from 'ramda';
|
|
8
8
|
import { useTranslation } from 'react-i18next';
|
|
9
|
-
import { A as AssignList } from './index-
|
|
9
|
+
import { A as AssignList } from './index-Cpad1EmZ.js';
|
|
10
10
|
import Down from '@bigbinary/neeto-icons/Down';
|
|
11
11
|
import Avatar from '@bigbinary/neetoui/Avatar';
|
|
12
12
|
import Tooltip from '@bigbinary/neetoui/Tooltip';
|
package/dist/TeamMembers.js
CHANGED
|
@@ -4,7 +4,7 @@ import { useState, useMemo, memo, useEffect } from 'react';
|
|
|
4
4
|
import { DEFAULT_PAGE_INDEX, PLURAL } from '@bigbinary/neeto-commons-frontend/constants';
|
|
5
5
|
import { taxonomies, globalProps } from '@bigbinary/neeto-commons-frontend/initializers';
|
|
6
6
|
import { useQueryParams, useFuncDebounce, useDebounce, withT, withTitle, useBreakpoints } from '@bigbinary/neeto-commons-frontend/react-utils';
|
|
7
|
-
import { buildUrl } from '@bigbinary/neeto-commons-frontend/utils';
|
|
7
|
+
import { captureAnalyticsEvent, buildUrl } from '@bigbinary/neeto-commons-frontend/utils';
|
|
8
8
|
import FiltersBar from '@bigbinary/neeto-filters-frontend/Bar';
|
|
9
9
|
import { useHiddenColumns } from '@bigbinary/neeto-molecules/Columns';
|
|
10
10
|
import Container from '@bigbinary/neeto-molecules/Container';
|
|
@@ -19,10 +19,10 @@ import { useTranslation, Trans } from 'react-i18next';
|
|
|
19
19
|
import { useHistory } from 'react-router-dom';
|
|
20
20
|
import { w as withReactQuery } from './withReactQuery-CHybbL5V.js';
|
|
21
21
|
import { u as useFetchRoles } from './index-Dvjcz-b3.js';
|
|
22
|
-
import { e as useFetchFilterOptions, f as useBulkUpdateMembers, u as useFetchMembers, d as useUpdateMember } from './useTeamsApi-
|
|
22
|
+
import { e as useFetchFilterOptions, f as useBulkUpdateMembers, g as useExportMembers, u as useFetchMembers, d as useUpdateMember } from './useTeamsApi-DLoZKPuX.js';
|
|
23
23
|
import _toConsumableArray from '@babel/runtime/helpers/toConsumableArray';
|
|
24
24
|
import { buildFiltersFromURL } from '@bigbinary/neeto-filters-frontend/utils';
|
|
25
|
-
import { d as defaultNeetoFiltersColumns, D as DEFAULT_FILTER_VALUES, b as buildFilterColumns, a as DEFAULT_IS_OPEN_VALUES, c as DEFAULT_SELECTED_ROWS, h as handlePageChange, T as TEAM_MEMBERS_HIDDEN_COLUMNS, g as getFilteredRoles, e as getColumnData, f as generateNoDataContent, i as DEFAULT_RADIX, r as renderPaginationProps, M as ManageMember, j as renderUpdateAlert } from './index-
|
|
25
|
+
import { d as defaultNeetoFiltersColumns, D as DEFAULT_FILTER_VALUES, b as buildFilterColumns, a as DEFAULT_IS_OPEN_VALUES, c as DEFAULT_SELECTED_ROWS, h as handlePageChange, T as TEAM_MEMBERS_HIDDEN_COLUMNS, g as getFilteredRoles, e as getColumnData, f as generateNoDataContent, i as DEFAULT_RADIX, r as renderPaginationProps, M as ManageMember, j as renderUpdateAlert } from './index-C2ciZlLk.js';
|
|
26
26
|
import { n } from './inject-css-DmrvuTKK.js';
|
|
27
27
|
import { noop, isNotEmpty, hyphenate, findBy } from '@bigbinary/neeto-cist';
|
|
28
28
|
import Button from '@bigbinary/neetoui/Button';
|
|
@@ -34,6 +34,10 @@ import Typography from '@bigbinary/neetoui/Typography';
|
|
|
34
34
|
import Right$1 from '@bigbinary/neeto-icons/Right';
|
|
35
35
|
import Search from '@bigbinary/neeto-icons/Search';
|
|
36
36
|
import Input from '@bigbinary/neetoui/Input';
|
|
37
|
+
import Pane from '@bigbinary/neetoui/Pane';
|
|
38
|
+
import Radio from '@bigbinary/neetoui/Radio';
|
|
39
|
+
import Toastr from '@bigbinary/neetoui/Toastr';
|
|
40
|
+
import { EVENTS } from './constants.js';
|
|
37
41
|
import NeetoHeader from '@bigbinary/neeto-molecules/Header';
|
|
38
42
|
import '@tanstack/react-query';
|
|
39
43
|
import './queryClient-Dsu-gu4Y.js';
|
|
@@ -45,7 +49,6 @@ import 'qs';
|
|
|
45
49
|
import 'classnames';
|
|
46
50
|
import '@bigbinary/neeto-icons/Info';
|
|
47
51
|
import '@bigbinary/neeto-icons/LeftArrow';
|
|
48
|
-
import '@bigbinary/neetoui/Toastr';
|
|
49
52
|
import '@bigbinary/neetoui/Callout';
|
|
50
53
|
import '@bigbinary/neetoui/formik/ActionBlock';
|
|
51
54
|
import '@bigbinary/neetoui/formik/Form';
|
|
@@ -56,15 +59,14 @@ import './RolesRadioGroup-Bxt7zZkh.js';
|
|
|
56
59
|
import '@bigbinary/neetoui/Label';
|
|
57
60
|
import '@bigbinary/neetoui/formik/Radio';
|
|
58
61
|
import 'yup';
|
|
59
|
-
import '@bigbinary/neetoui/Pane';
|
|
60
62
|
import '@bigbinary/neetoui/Modal';
|
|
61
63
|
import '@bigbinary/neetoui/formik/MultiEmailInput';
|
|
62
64
|
import '@bigbinary/neetoui/formik/Input';
|
|
63
65
|
import '@bigbinary/neeto-molecules/MoreDropdown';
|
|
64
66
|
import '@bigbinary/neetoui/Avatar';
|
|
65
67
|
|
|
66
|
-
function ownKeys$
|
|
67
|
-
function _objectSpread$
|
|
68
|
+
function ownKeys$6(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
69
|
+
function _objectSpread$6(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$6(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$6(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
68
70
|
var useFilters = function useFilters(_ref) {
|
|
69
71
|
var _config$filterColumns;
|
|
70
72
|
var config = _ref.config;
|
|
@@ -83,7 +85,7 @@ var useFilters = function useFilters(_ref) {
|
|
|
83
85
|
emailSearchTerm = _useState2[0],
|
|
84
86
|
setEmailSearchTerm = _useState2[1];
|
|
85
87
|
var defaultNeetoFilters = buildFiltersFromURL([].concat(_toConsumableArray((_config$filterColumns = config === null || config === void 0 ? void 0 : config.filterColumns) !== null && _config$filterColumns !== void 0 ? _config$filterColumns : defaultNeetoFiltersColumns()), [searchKeywordProps]));
|
|
86
|
-
var _useState3 = useState(_objectSpread$
|
|
88
|
+
var _useState3 = useState(_objectSpread$6(_objectSpread$6(_objectSpread$6({}, DEFAULT_FILTER_VALUES), config === null || config === void 0 ? void 0 : config.defaultFilterValues), {}, {
|
|
87
89
|
neetoFilters: defaultNeetoFilters
|
|
88
90
|
})),
|
|
89
91
|
_useState4 = _slicedToArray(_useState3, 2),
|
|
@@ -132,8 +134,8 @@ var useFilters = function useFilters(_ref) {
|
|
|
132
134
|
};
|
|
133
135
|
};
|
|
134
136
|
|
|
135
|
-
function ownKeys$
|
|
136
|
-
function _objectSpread$
|
|
137
|
+
function ownKeys$5(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
138
|
+
function _objectSpread$5(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$5(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$5(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
137
139
|
var useTeams = function useTeams(_ref) {
|
|
138
140
|
var config = _ref.config,
|
|
139
141
|
filters = _ref.filters,
|
|
@@ -209,7 +211,7 @@ var useTeams = function useTeams(_ref) {
|
|
|
209
211
|
emails: pluck("email", rowData),
|
|
210
212
|
keys: keys
|
|
211
213
|
};
|
|
212
|
-
setSelectedRows(_objectSpread$
|
|
214
|
+
setSelectedRows(_objectSpread$5({}, rows));
|
|
213
215
|
config === null || config === void 0 || (_config$table = config.table) === null || _config$table === void 0 || (_config$table$onRowSe = _config$table.onRowSelect) === null || _config$table$onRowSe === void 0 || _config$table$onRowSe.call(_config$table, {
|
|
214
216
|
rows: rows,
|
|
215
217
|
resetSelectedRows: resetSelectedRows,
|
|
@@ -239,8 +241,8 @@ n(css,{});
|
|
|
239
241
|
var FIXED_COLUMNS = ["name", "actions"];
|
|
240
242
|
var MANAGE_ROLES_BUTTON_LABEL = t("neetoTeamMembers.labels.manageRole", PLURAL);
|
|
241
243
|
|
|
242
|
-
function ownKeys$
|
|
243
|
-
function _objectSpread$
|
|
244
|
+
function ownKeys$4(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
245
|
+
function _objectSpread$4(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$4(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$4(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
244
246
|
var Header$2 = function Header(_ref) {
|
|
245
247
|
var isCreatePermissionGranted = _ref.isCreatePermissionGranted,
|
|
246
248
|
otherActionBlock = _ref.otherActionBlock,
|
|
@@ -252,7 +254,7 @@ var Header$2 = function Header(_ref) {
|
|
|
252
254
|
var isRolesButtonVisible = !!rolesButtonProps;
|
|
253
255
|
var isOtherActionBlockVisible = !!otherActionBlock;
|
|
254
256
|
return /*#__PURE__*/jsxs(Fragment, {
|
|
255
|
-
children: [isOtherActionBlockVisible && otherActionBlock(), isRolesButtonVisible ? /*#__PURE__*/jsx(Button, _objectSpread$
|
|
257
|
+
children: [isOtherActionBlockVisible && otherActionBlock(), isRolesButtonVisible ? /*#__PURE__*/jsx(Button, _objectSpread$4({
|
|
256
258
|
"data-cy": "ntm-manage-roles-button",
|
|
257
259
|
label: MANAGE_ROLES_BUTTON_LABEL,
|
|
258
260
|
style: "secondary"
|
|
@@ -393,8 +395,8 @@ var RolesDropdown = function RolesDropdown(_ref) {
|
|
|
393
395
|
});
|
|
394
396
|
};
|
|
395
397
|
|
|
396
|
-
function ownKeys$
|
|
397
|
-
function _objectSpread$
|
|
398
|
+
function ownKeys$3(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
399
|
+
function _objectSpread$3(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$3(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$3(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
398
400
|
var Menu = Dropdown.Menu,
|
|
399
401
|
MenuItem = Dropdown.MenuItem;
|
|
400
402
|
var Left = function Left(_ref) {
|
|
@@ -540,7 +542,7 @@ var Left = function Left(_ref) {
|
|
|
540
542
|
title: selectedAlert === null || selectedAlert === void 0 ? void 0 : selectedAlert.title,
|
|
541
543
|
message: /*#__PURE__*/jsx(Trans, {
|
|
542
544
|
i18nKey: selectedAlert === null || selectedAlert === void 0 ? void 0 : selectedAlert.message,
|
|
543
|
-
values: _objectSpread$
|
|
545
|
+
values: _objectSpread$3(_objectSpread$3({}, selectedMembersCountValues), {}, {
|
|
544
546
|
person: selectedRows.displayNames[0],
|
|
545
547
|
role: bulkUpdateRole
|
|
546
548
|
})
|
|
@@ -557,9 +559,10 @@ var Right = withT(function (_ref3) {
|
|
|
557
559
|
columns = _ref3.columns,
|
|
558
560
|
filterColumns = _ref3.filterColumns,
|
|
559
561
|
handleNeetoFilterChange = _ref3.handleNeetoFilterChange,
|
|
560
|
-
setIsFiltersPaneOpen = _ref3.setIsFiltersPaneOpen,
|
|
561
562
|
isFiltersPaneOpen = _ref3.isFiltersPaneOpen,
|
|
562
|
-
searchKeywordProps = _ref3.searchKeywordProps
|
|
563
|
+
searchKeywordProps = _ref3.searchKeywordProps,
|
|
564
|
+
setIsDownloadPaneOpen = _ref3.setIsDownloadPaneOpen,
|
|
565
|
+
setIsFiltersPaneOpen = _ref3.setIsFiltersPaneOpen;
|
|
563
566
|
return /*#__PURE__*/jsx(SubHeader$1.RightBlock, {
|
|
564
567
|
columnsButtonProps: {
|
|
565
568
|
columnData: columns,
|
|
@@ -570,6 +573,12 @@ var Right = withT(function (_ref3) {
|
|
|
570
573
|
placeholder: t("neetoTeamMembers.columns.search")
|
|
571
574
|
}
|
|
572
575
|
},
|
|
576
|
+
downloadButtonProps: {
|
|
577
|
+
isVisible: true,
|
|
578
|
+
onClick: function onClick() {
|
|
579
|
+
return setIsDownloadPaneOpen(true);
|
|
580
|
+
}
|
|
581
|
+
},
|
|
573
582
|
filterProps: {
|
|
574
583
|
columns: filterColumns,
|
|
575
584
|
isOpen: isFiltersPaneOpen,
|
|
@@ -584,6 +593,134 @@ var SubHeader = {
|
|
|
584
593
|
Right: Right
|
|
585
594
|
};
|
|
586
595
|
|
|
596
|
+
var EXPORT_TYPES = {
|
|
597
|
+
PDF: "pdf",
|
|
598
|
+
CSV: "csv",
|
|
599
|
+
EXCEL: "xlsx"
|
|
600
|
+
};
|
|
601
|
+
var DEFAULT_EXPORT_OPTIONS = {
|
|
602
|
+
exportType: EXPORT_TYPES.EXCEL
|
|
603
|
+
};
|
|
604
|
+
var EXPORT_OPTIONS = [{
|
|
605
|
+
type: EXPORT_TYPES.EXCEL,
|
|
606
|
+
individualExportLabel: t("neetoTeamMembers.labels.downloads.xlsx"),
|
|
607
|
+
bulkExportLabel: t("neetoTeamMembers.labels.downloadAs", {
|
|
608
|
+
format: t("neetoTeamMembers.labels.downloads.xlsx")
|
|
609
|
+
}),
|
|
610
|
+
dataCy: "download-as-excel-radio-item"
|
|
611
|
+
}, {
|
|
612
|
+
type: EXPORT_TYPES.CSV,
|
|
613
|
+
individualExportLabel: t("neetoTeamMembers.labels.downloads.csv"),
|
|
614
|
+
bulkExportLabel: t("neetoTeamMembers.labels.downloadAs", {
|
|
615
|
+
format: t("neetoTeamMembers.labels.downloads.csv")
|
|
616
|
+
}),
|
|
617
|
+
dataCy: "download-as-csv-radio-item"
|
|
618
|
+
}, {
|
|
619
|
+
type: EXPORT_TYPES.PDF,
|
|
620
|
+
individualExportLabel: t("neetoTeamMembers.labels.downloads.pdf"),
|
|
621
|
+
bulkExportLabel: t("neetoTeamMembers.labels.downloadAs", {
|
|
622
|
+
format: t("neetoTeamMembers.labels.downloads.pdf")
|
|
623
|
+
}),
|
|
624
|
+
dataCy: "download-as-pdf-radio-item"
|
|
625
|
+
}];
|
|
626
|
+
|
|
627
|
+
function ownKeys$2(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
628
|
+
function _objectSpread$2(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
629
|
+
var ExportPane = function ExportPane(_ref) {
|
|
630
|
+
var isOpen = _ref.isOpen,
|
|
631
|
+
onClose = _ref.onClose,
|
|
632
|
+
appliedFilters = _ref.appliedFilters,
|
|
633
|
+
hasBulkSelectedAllRows = _ref.hasBulkSelectedAllRows,
|
|
634
|
+
selectedMemberIds = _ref.selectedMemberIds,
|
|
635
|
+
selectedRowsCount = _ref.selectedRowsCount;
|
|
636
|
+
var _useState = useState(DEFAULT_EXPORT_OPTIONS),
|
|
637
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
638
|
+
exportOptions = _useState2[0],
|
|
639
|
+
setExportOptions = _useState2[1];
|
|
640
|
+
var _useTranslation = useTranslation(),
|
|
641
|
+
t = _useTranslation.t;
|
|
642
|
+
var setExportOption = function setExportOption(exportOptions) {
|
|
643
|
+
return setExportOptions(mergeLeft(exportOptions));
|
|
644
|
+
};
|
|
645
|
+
var exportType = exportOptions.exportType;
|
|
646
|
+
var getParams = function getParams() {
|
|
647
|
+
return _objectSpread$2(_objectSpread$2({}, exportOptions), {}, {
|
|
648
|
+
filters: appliedFilters || undefined,
|
|
649
|
+
considerAllMembers: hasBulkSelectedAllRows,
|
|
650
|
+
memberIds: hasBulkSelectedAllRows ? undefined : selectedMemberIds
|
|
651
|
+
});
|
|
652
|
+
};
|
|
653
|
+
var _useExportMembers = useExportMembers({
|
|
654
|
+
onSuccess: function onSuccess() {
|
|
655
|
+
onClose();
|
|
656
|
+
setExportOptions(DEFAULT_EXPORT_OPTIONS);
|
|
657
|
+
Toastr.success(/*#__PURE__*/jsx(Trans, {
|
|
658
|
+
i18nKey: "toastr.success.downloadMembers",
|
|
659
|
+
values: {
|
|
660
|
+
email: globalProps.user.email
|
|
661
|
+
}
|
|
662
|
+
}));
|
|
663
|
+
captureAnalyticsEvent(EVENTS.TEAM_MEMBERS_DOWNLOADED, _objectSpread$2({}, exportOptions));
|
|
664
|
+
},
|
|
665
|
+
onError: function onError(error) {
|
|
666
|
+
return Toastr.error(error);
|
|
667
|
+
}
|
|
668
|
+
}),
|
|
669
|
+
exportMembers = _useExportMembers.mutate;
|
|
670
|
+
var description = isNotEmpty(selectedMemberIds) || hasBulkSelectedAllRows ? t("neetoTeamMembers.downloadPane.description.selectedMembers", {
|
|
671
|
+
count: selectedRowsCount
|
|
672
|
+
}) : t("neetoTeamMembers.downloadPane.description.allMembers");
|
|
673
|
+
return /*#__PURE__*/jsxs(Pane, {
|
|
674
|
+
isOpen: isOpen,
|
|
675
|
+
onClose: onClose,
|
|
676
|
+
children: [/*#__PURE__*/jsx(Pane.Header, {
|
|
677
|
+
children: /*#__PURE__*/jsx(Typography, {
|
|
678
|
+
"data-cy": "export-member-heading",
|
|
679
|
+
style: "h2",
|
|
680
|
+
children: t("neetoTeamMembers.downloadPane.title")
|
|
681
|
+
})
|
|
682
|
+
}), /*#__PURE__*/jsx(Pane.Body, {
|
|
683
|
+
children: /*#__PURE__*/jsx(Radio, {
|
|
684
|
+
stacked: true,
|
|
685
|
+
className: "flex-grow-0 space-y-4",
|
|
686
|
+
label: description,
|
|
687
|
+
children: EXPORT_OPTIONS.map(function (_ref2) {
|
|
688
|
+
var type = _ref2.type,
|
|
689
|
+
bulkExportLabel = _ref2.bulkExportLabel,
|
|
690
|
+
dataCy = _ref2.dataCy;
|
|
691
|
+
return /*#__PURE__*/jsx(Radio.Item, {
|
|
692
|
+
checked: exportType === type,
|
|
693
|
+
"data-cy": dataCy,
|
|
694
|
+
label: bulkExportLabel,
|
|
695
|
+
onChange: function onChange() {
|
|
696
|
+
return setExportOption({
|
|
697
|
+
exportType: type
|
|
698
|
+
});
|
|
699
|
+
}
|
|
700
|
+
}, type);
|
|
701
|
+
})
|
|
702
|
+
})
|
|
703
|
+
}), /*#__PURE__*/jsxs(Pane.Footer, {
|
|
704
|
+
className: "gap-x-2",
|
|
705
|
+
children: [/*#__PURE__*/jsx(Button, {
|
|
706
|
+
"data-cy": "export-submit-button",
|
|
707
|
+
label: t("neetoTeamMembers.buttons.download"),
|
|
708
|
+
onClick: function onClick() {
|
|
709
|
+
return exportMembers({
|
|
710
|
+
"export": getParams()
|
|
711
|
+
});
|
|
712
|
+
}
|
|
713
|
+
}), /*#__PURE__*/jsx(Button, {
|
|
714
|
+
className: "mr-2",
|
|
715
|
+
"data-cy": "export-cancel-button",
|
|
716
|
+
label: t("neetoTeamMembers.buttons.cancel"),
|
|
717
|
+
style: "text",
|
|
718
|
+
onClick: onClose
|
|
719
|
+
})]
|
|
720
|
+
})]
|
|
721
|
+
});
|
|
722
|
+
};
|
|
723
|
+
|
|
587
724
|
function ownKeys$1(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
588
725
|
function _objectSpread$1(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$1(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$1(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
589
726
|
var Header = function Header(_ref) {
|
|
@@ -625,8 +762,12 @@ var TeamMembers = function TeamMembers(_ref) {
|
|
|
625
762
|
setIsFiltersPaneOpen = _useState2[1];
|
|
626
763
|
var _useState3 = useState(false),
|
|
627
764
|
_useState4 = _slicedToArray(_useState3, 2),
|
|
628
|
-
|
|
629
|
-
|
|
765
|
+
isDownloadPaneOpen = _useState4[0],
|
|
766
|
+
setIsDownloadPaneOpen = _useState4[1];
|
|
767
|
+
var _useState5 = useState(false),
|
|
768
|
+
_useState6 = _slicedToArray(_useState5, 2),
|
|
769
|
+
hasBulkSelectedAllRows = _useState6[0],
|
|
770
|
+
setHasBulkSelectedAllRows = _useState6[1];
|
|
630
771
|
useEffect(function () {
|
|
631
772
|
handleMemberFilterChange();
|
|
632
773
|
}, []);
|
|
@@ -761,6 +902,7 @@ var TeamMembers = function TeamMembers(_ref) {
|
|
|
761
902
|
handleNeetoFilterChange: handleNeetoFilterChange,
|
|
762
903
|
isFiltersPaneOpen: isFiltersPaneOpen,
|
|
763
904
|
searchKeywordProps: searchKeywordProps,
|
|
905
|
+
setIsDownloadPaneOpen: setIsDownloadPaneOpen,
|
|
764
906
|
setIsFiltersPaneOpen: setIsFiltersPaneOpen
|
|
765
907
|
})
|
|
766
908
|
}), /*#__PURE__*/jsx(FiltersBar, {
|
|
@@ -769,6 +911,15 @@ var TeamMembers = function TeamMembers(_ref) {
|
|
|
769
911
|
keyword: searchKeywordProps,
|
|
770
912
|
setIsPaneOpen: setIsFiltersPaneOpen,
|
|
771
913
|
onChange: handleNeetoFilterChange
|
|
914
|
+
}), /*#__PURE__*/jsx(ExportPane, {
|
|
915
|
+
hasBulkSelectedAllRows: hasBulkSelectedAllRows,
|
|
916
|
+
selectedRowsCount: selectedRowsCount,
|
|
917
|
+
appliedFilters: filters,
|
|
918
|
+
isOpen: isDownloadPaneOpen,
|
|
919
|
+
selectedMemberIds: selectedRows.keys,
|
|
920
|
+
onClose: function onClose() {
|
|
921
|
+
return setIsDownloadPaneOpen(false);
|
|
922
|
+
}
|
|
772
923
|
}), /*#__PURE__*/jsx(TableWrapper, {
|
|
773
924
|
hasPagination: (team === null || team === void 0 ? void 0 : team.membersCount) > filters.pageSize,
|
|
774
925
|
children: (team === null || team === void 0 ? void 0 : team.membersCount) !== 0 ? /*#__PURE__*/jsx(Table, {
|