@bigbinary/neeto-team-members-frontend 5.0.64 → 5.0.66
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 +5 -0
- package/dist/.ready +1 -1
- package/dist/Groups.js +1 -1
- package/dist/ManageMember.js +50 -991
- package/dist/ManageMember.js.map +1 -1
- package/dist/{RolesRadioGroup-CsTenjqQ.js → RolesRadioGroup-BfcqSCiE.js} +23 -19
- package/dist/RolesRadioGroup-BfcqSCiE.js.map +1 -0
- package/dist/{RolesRadioGroup-D4h-GY0X.js → RolesRadioGroup-CjmVbqPn.js} +21 -17
- package/dist/RolesRadioGroup-CjmVbqPn.js.map +1 -0
- package/dist/TeamMembers.js +172 -12
- package/dist/TeamMembers.js.map +1 -1
- package/dist/cjs/ManageMember.js +51 -1015
- package/dist/cjs/ManageMember.js.map +1 -1
- package/dist/cjs/TeamMembers.js +184 -23
- package/dist/cjs/TeamMembers.js.map +1 -1
- package/dist/cjs/index.js +2 -4
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/v2/ManageMember.js +43 -1048
- package/dist/cjs/v2/ManageMember.js.map +1 -1
- package/dist/cjs/v2/RolesRadioGroup.js +1 -1
- package/dist/cjs/v2/TeamMembers.js +22 -28
- package/dist/cjs/v2/TeamMembers.js.map +1 -1
- package/dist/cjs/v2/hooks.js +15 -185
- package/dist/cjs/v2/hooks.js.map +1 -1
- package/dist/cjs/v2/index.js +7 -13
- package/dist/cjs/v2/index.js.map +1 -1
- package/dist/constants-FEDmfINW.js +29 -0
- package/dist/constants-FEDmfINW.js.map +1 -0
- package/dist/constants-il7hAfM-.js +34 -0
- package/dist/constants-il7hAfM-.js.map +1 -0
- package/dist/hooks.js +1 -1
- package/dist/index-BV7WfESJ.js +1331 -0
- package/dist/index-BV7WfESJ.js.map +1 -0
- package/dist/index-CXQ1YglX.js +1287 -0
- package/dist/index-CXQ1YglX.js.map +1 -0
- package/dist/index-CaLd5930.js +1253 -0
- package/dist/index-CaLd5930.js.map +1 -0
- package/dist/index-DfEYM4-v.js +1272 -0
- package/dist/index-DfEYM4-v.js.map +1 -0
- package/dist/index.js +2 -4
- package/dist/index.js.map +1 -1
- package/dist/{useTeams-C9N2TJY-.js → useTeams-DDkhfivj.js} +81 -13
- package/dist/useTeams-DDkhfivj.js.map +1 -0
- package/dist/{useTeams-Bw4eltN1.js → useTeams-DpZbszj9.js} +73 -6
- package/dist/useTeams-DpZbszj9.js.map +1 -0
- package/dist/{useTeamsApi-DkgWqw-g.js → useTeamsApi-CGY9oJqn.js} +2 -2
- package/dist/{useTeamsApi-DkgWqw-g.js.map → useTeamsApi-CGY9oJqn.js.map} +1 -1
- package/dist/utils.js +1 -1
- package/dist/v2/Groups.js +1 -1
- package/dist/v2/ManageMember.js +42 -1041
- package/dist/v2/ManageMember.js.map +1 -1
- package/dist/v2/RolesRadioGroup.js +1 -1
- package/dist/v2/TeamMembers.js +7 -13
- package/dist/v2/TeamMembers.js.map +1 -1
- package/dist/v2/hooks.js +14 -183
- package/dist/v2/hooks.js.map +1 -1
- package/dist/v2/index.js +7 -13
- package/dist/v2/index.js.map +1 -1
- package/dist/v2/utils.js +1 -1
- package/package.json +9 -9
- package/dist/RolesRadioGroup-CsTenjqQ.js.map +0 -1
- package/dist/RolesRadioGroup-D4h-GY0X.js.map +0 -1
- package/dist/useTeams-Bw4eltN1.js.map +0 -1
- package/dist/useTeams-C9N2TJY-.js.map +0 -1
- package/dist/utils-3WlshQ9e.js +0 -312
- package/dist/utils-3WlshQ9e.js.map +0 -1
- package/dist/utils-BFRNzhia.js +0 -318
- package/dist/utils-BFRNzhia.js.map +0 -1
- package/dist/utils-CgwJI9pk.js +0 -334
- package/dist/utils-CgwJI9pk.js.map +0 -1
- package/dist/utils-DEOuQRcK.js +0 -300
- package/dist/utils-DEOuQRcK.js.map +0 -1
package/dist/v2/hooks.js
CHANGED
|
@@ -1,196 +1,27 @@
|
|
|
1
|
-
|
|
2
|
-
export { u as useFetchMembers, a as useFetchMembersCountsPerCategory } from '../useTeamsApi-DkgWqw-g.js';
|
|
1
|
+
export { u as useFetchMembers, a as useFetchMembersCountsPerCategory } from '../useTeamsApi-CGY9oJqn.js';
|
|
3
2
|
export { u as useMembersSidenav } from '../useMembersSidenav-Dj60wgFC.js';
|
|
4
|
-
|
|
5
|
-
import _toConsumableArray from '@babel/runtime/helpers/toConsumableArray';
|
|
6
|
-
import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
|
|
7
|
-
import { useState, useMemo } from 'react';
|
|
8
|
-
import { DEFAULT_PAGE_INDEX, DEFAULT_PAGE_SIZE } from '@bigbinary/neeto-commons-frontend/constants';
|
|
9
|
-
import { taxonomies } from '@bigbinary/neeto-commons-frontend/initializers';
|
|
10
|
-
import { useQueryParams, useFuncDebounce, useDebounce } from '@bigbinary/neeto-commons-frontend/react-utils';
|
|
11
|
-
import { buildFiltersFromURL } from '@bigbinary/neeto-filters-frontend/utils';
|
|
12
|
-
import { mergeLeft, isNil, assoc, pluck } from 'ramda';
|
|
13
|
-
import { useTranslation } from 'react-i18next';
|
|
14
|
-
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 } from '../utils-DEOuQRcK.js';
|
|
15
|
-
import { useHistory } from 'react-router-dom';
|
|
3
|
+
export { u as useFilters, a as useTeams } from '../useTeams-DpZbszj9.js';
|
|
16
4
|
import '@babel/runtime/helpers/objectWithoutProperties';
|
|
5
|
+
import '@babel/runtime/helpers/defineProperty';
|
|
17
6
|
import '@tanstack/react-query';
|
|
7
|
+
import '@bigbinary/neeto-commons-frontend/initializers';
|
|
8
|
+
import '@bigbinary/neeto-commons-frontend/react-utils';
|
|
9
|
+
import 'ramda';
|
|
18
10
|
import 'axios';
|
|
19
11
|
import '@bigbinary/neeto-cist';
|
|
20
12
|
import 'qs';
|
|
21
13
|
import '../constants-CXdiW8NZ.js';
|
|
22
14
|
import 'i18next';
|
|
15
|
+
import '@bigbinary/neeto-commons-frontend/constants';
|
|
23
16
|
import '../queryClient-Dsu-gu4Y.js';
|
|
24
17
|
import 'lucide-react';
|
|
25
|
-
import '@
|
|
26
|
-
import '@
|
|
18
|
+
import '@babel/runtime/helpers/toConsumableArray';
|
|
19
|
+
import '@babel/runtime/helpers/slicedToArray';
|
|
20
|
+
import 'react';
|
|
21
|
+
import '@bigbinary/neeto-filters-frontend/utils';
|
|
22
|
+
import 'react-i18next';
|
|
23
|
+
import '../constants-FEDmfINW.js';
|
|
27
24
|
import '@bigbinary/neeto-commons-frontend/v2/constants';
|
|
28
|
-
import '@bigbinary/neeto-commons-frontend/v2/initializers';
|
|
29
25
|
import '@bigbinary/neeto-commons-frontend/v2/utils';
|
|
30
|
-
import '
|
|
31
|
-
import 'react/jsx-runtime';
|
|
32
|
-
|
|
33
|
-
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; }
|
|
34
|
-
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), true).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; }
|
|
35
|
-
var useFilters = function useFilters(_ref) {
|
|
36
|
-
var _config$filterColumns;
|
|
37
|
-
var config = _ref.config;
|
|
38
|
-
var _useTranslation = useTranslation(),
|
|
39
|
-
t = _useTranslation.t;
|
|
40
|
-
var _useQueryParams = useQueryParams(),
|
|
41
|
-
_useQueryParams$searc = _useQueryParams.searchTerm,
|
|
42
|
-
searchTerm = _useQueryParams$searc === void 0 ? "" : _useQueryParams$searc;
|
|
43
|
-
var searchKeywordProps = {
|
|
44
|
-
node: "first_name,last_name,email",
|
|
45
|
-
value: searchTerm,
|
|
46
|
-
key: "search_term"
|
|
47
|
-
};
|
|
48
|
-
var _useState = useState(""),
|
|
49
|
-
_useState2 = _slicedToArray(_useState, 2),
|
|
50
|
-
emailSearchTerm = _useState2[0],
|
|
51
|
-
setEmailSearchTerm = _useState2[1];
|
|
52
|
-
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]));
|
|
53
|
-
var _useState3 = useState(_objectSpread$1(_objectSpread$1(_objectSpread$1({}, DEFAULT_FILTER_VALUES), config === null || config === void 0 ? void 0 : config.defaultFilterValues), {}, {
|
|
54
|
-
neetoFilters: defaultNeetoFilters
|
|
55
|
-
})),
|
|
56
|
-
_useState4 = _slicedToArray(_useState3, 2),
|
|
57
|
-
filters = _useState4[0],
|
|
58
|
-
setFilters = _useState4[1];
|
|
59
|
-
var resetPage = useFuncDebounce(function () {
|
|
60
|
-
return setFilters(mergeLeft({
|
|
61
|
-
page: DEFAULT_PAGE_INDEX
|
|
62
|
-
}));
|
|
63
|
-
});
|
|
64
|
-
var debouncedEmailSearchTerm = useDebounce(emailSearchTerm, 750);
|
|
65
|
-
var shouldFetchFilterOptions = isNil(config === null || config === void 0 ? void 0 : config.filterColumns);
|
|
66
|
-
var _useFetchFilterOption = useFetchFilterOptions({
|
|
67
|
-
params: {
|
|
68
|
-
emailSearchTerm: debouncedEmailSearchTerm
|
|
69
|
-
},
|
|
70
|
-
options: {
|
|
71
|
-
enabled: shouldFetchFilterOptions
|
|
72
|
-
}
|
|
73
|
-
}),
|
|
74
|
-
_useFetchFilterOption2 = _useFetchFilterOption.data,
|
|
75
|
-
filterOptions = _useFetchFilterOption2 === void 0 ? {} : _useFetchFilterOption2,
|
|
76
|
-
isFilterOptionsLoading = _useFetchFilterOption.isLoading;
|
|
77
|
-
var filterColumns = shouldFetchFilterOptions ? buildFilterColumns({
|
|
78
|
-
options: filterOptions,
|
|
79
|
-
emailConfig: {
|
|
80
|
-
setSearchTerm: setEmailSearchTerm,
|
|
81
|
-
isLoading: isFilterOptionsLoading
|
|
82
|
-
}
|
|
83
|
-
}) : config === null || config === void 0 ? void 0 : config.filterColumns;
|
|
84
|
-
var searchProps = useMemo(function () {
|
|
85
|
-
return {
|
|
86
|
-
"data-testid": "ntm-search-members-input",
|
|
87
|
-
placeholder: t("neetoTeamMembers.common.search_", {
|
|
88
|
-
what: taxonomies.member.plural
|
|
89
|
-
}),
|
|
90
|
-
onChange: resetPage
|
|
91
|
-
};
|
|
92
|
-
}, []);
|
|
93
|
-
return {
|
|
94
|
-
filters: filters,
|
|
95
|
-
setFilters: setFilters,
|
|
96
|
-
filterColumns: filterColumns,
|
|
97
|
-
searchProps: searchProps,
|
|
98
|
-
searchKeywordProps: searchKeywordProps
|
|
99
|
-
};
|
|
100
|
-
};
|
|
101
|
-
|
|
102
|
-
function ownKeys(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; }
|
|
103
|
-
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
104
|
-
var useTeams = function useTeams(_ref) {
|
|
105
|
-
var config = _ref.config,
|
|
106
|
-
filters = _ref.filters,
|
|
107
|
-
setFilters = _ref.setFilters,
|
|
108
|
-
updateMember = _ref.updateMember;
|
|
109
|
-
var history = useHistory();
|
|
110
|
-
var _useState = useState(null),
|
|
111
|
-
_useState2 = _slicedToArray(_useState, 2),
|
|
112
|
-
selectedMember = _useState2[0],
|
|
113
|
-
setSelectedMember = _useState2[1];
|
|
114
|
-
var _useState3 = useState(DEFAULT_IS_OPEN_VALUES),
|
|
115
|
-
_useState4 = _slicedToArray(_useState3, 2),
|
|
116
|
-
isOpen = _useState4[0],
|
|
117
|
-
setIsOpen = _useState4[1];
|
|
118
|
-
var _useState5 = useState(DEFAULT_SELECTED_ROWS),
|
|
119
|
-
_useState6 = _slicedToArray(_useState5, 2),
|
|
120
|
-
selectedRows = _useState6[0],
|
|
121
|
-
setSelectedRows = _useState6[1];
|
|
122
|
-
var handleRemoveMember = function handleRemoveMember() {
|
|
123
|
-
if (!selectedMember) return;
|
|
124
|
-
var id = selectedMember.id;
|
|
125
|
-
var payload = {
|
|
126
|
-
active: false
|
|
127
|
-
};
|
|
128
|
-
updateMember({
|
|
129
|
-
id: id,
|
|
130
|
-
payload: payload
|
|
131
|
-
});
|
|
132
|
-
};
|
|
133
|
-
var handleUpdateStatus = function handleUpdateStatus(user) {
|
|
134
|
-
setSelectedMember(user);
|
|
135
|
-
setIsOpen(assoc("alert", true));
|
|
136
|
-
};
|
|
137
|
-
var handleUpdateRole = function handleUpdateRole(user) {
|
|
138
|
-
setSelectedMember(user);
|
|
139
|
-
setIsOpen(assoc("manageMember", true));
|
|
140
|
-
};
|
|
141
|
-
var handleAlertClose = function handleAlertClose() {
|
|
142
|
-
setIsOpen(assoc("alert", false));
|
|
143
|
-
setSelectedMember(null);
|
|
144
|
-
};
|
|
145
|
-
var handlePaneClose = function handlePaneClose() {
|
|
146
|
-
setIsOpen(assoc("manageMember", false));
|
|
147
|
-
setSelectedMember(null);
|
|
148
|
-
};
|
|
149
|
-
var resetSelectedRows = function resetSelectedRows() {
|
|
150
|
-
return setSelectedRows(DEFAULT_SELECTED_ROWS);
|
|
151
|
-
};
|
|
152
|
-
var handleMemberFilterChange = function handleMemberFilterChange() {
|
|
153
|
-
var _filters$pageSize;
|
|
154
|
-
setSelectedRows(DEFAULT_SELECTED_ROWS);
|
|
155
|
-
handlePageChange(setFilters, history)(DEFAULT_PAGE_INDEX, (_filters$pageSize = filters.pageSize) !== null && _filters$pageSize !== void 0 ? _filters$pageSize : DEFAULT_PAGE_SIZE);
|
|
156
|
-
};
|
|
157
|
-
var handleTableChange = function handleTableChange(_, __, sorter) {
|
|
158
|
-
setFilters(mergeLeft({
|
|
159
|
-
sortBy: sorter.field,
|
|
160
|
-
orderBy: sorter.order
|
|
161
|
-
}));
|
|
162
|
-
};
|
|
163
|
-
var handleRowSelect = function handleRowSelect(keys, rowData) {
|
|
164
|
-
var _config$table, _config$table$onRowSe;
|
|
165
|
-
var rows = {
|
|
166
|
-
active: pluck("active", rowData),
|
|
167
|
-
displayNames: pluck("displayName", rowData),
|
|
168
|
-
emails: pluck("email", rowData),
|
|
169
|
-
keys: keys
|
|
170
|
-
};
|
|
171
|
-
setSelectedRows(_objectSpread({}, rows));
|
|
172
|
-
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, {
|
|
173
|
-
rows: rows,
|
|
174
|
-
resetSelectedRows: resetSelectedRows,
|
|
175
|
-
rowData: rowData
|
|
176
|
-
});
|
|
177
|
-
};
|
|
178
|
-
return {
|
|
179
|
-
handleAlertClose: handleAlertClose,
|
|
180
|
-
handleMemberFilterChange: handleMemberFilterChange,
|
|
181
|
-
handlePaneClose: handlePaneClose,
|
|
182
|
-
handleRowSelect: handleRowSelect,
|
|
183
|
-
handleTableChange: handleTableChange,
|
|
184
|
-
handleRemoveMember: handleRemoveMember,
|
|
185
|
-
handleUpdateRole: handleUpdateRole,
|
|
186
|
-
handleUpdateStatus: handleUpdateStatus,
|
|
187
|
-
isOpen: isOpen,
|
|
188
|
-
selectedMember: selectedMember,
|
|
189
|
-
selectedRows: selectedRows,
|
|
190
|
-
setIsOpen: setIsOpen,
|
|
191
|
-
setSelectedRows: setSelectedRows
|
|
192
|
-
};
|
|
193
|
-
};
|
|
194
|
-
|
|
195
|
-
export { useFilters, useTeams };
|
|
26
|
+
import 'react-router-dom';
|
|
196
27
|
//# sourceMappingURL=hooks.js.map
|
package/dist/v2/hooks.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hooks.js","sources":["../../app/javascript/src/v2/hooks/useFilters.js","../../app/javascript/src/v2/hooks/useTeams.js"],"sourcesContent":["import { useMemo, useState } from \"react\";\n\nimport { DEFAULT_PAGE_INDEX } from \"neetocommons/constants\";\nimport { taxonomies } from \"neetocommons/initializers\";\nimport {\n useDebounce,\n useFuncDebounce,\n useQueryParams,\n} from \"neetocommons/react-utils\";\nimport { buildFiltersFromURL } from \"neetofilters\";\nimport { isNil, mergeLeft } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useFetchFilterOptions } from \"hooks/teams/useTeamsApi\";\nimport { DEFAULT_FILTER_VALUES } from \"v2/components/TeamMembers/constants\";\nimport {\n buildFilterColumns,\n defaultNeetoFiltersColumns,\n} from \"v2/components/TeamMembers/utils\";\n\nconst useFilters = ({ config }) => {\n const { t } = useTranslation();\n const { searchTerm = \"\" } = useQueryParams();\n const searchKeywordProps = {\n node: \"first_name,last_name,email\",\n value: searchTerm,\n key: \"search_term\",\n };\n\n const [emailSearchTerm, setEmailSearchTerm] = useState(\"\");\n const defaultNeetoFilters = buildFiltersFromURL([\n ...(config?.filterColumns ?? defaultNeetoFiltersColumns()),\n searchKeywordProps,\n ]);\n\n const [filters, setFilters] = useState({\n ...DEFAULT_FILTER_VALUES,\n ...config?.defaultFilterValues,\n neetoFilters: defaultNeetoFilters,\n });\n\n const resetPage = useFuncDebounce(() =>\n setFilters(mergeLeft({ page: DEFAULT_PAGE_INDEX }))\n );\n const debouncedEmailSearchTerm = useDebounce(emailSearchTerm, 750);\n\n const shouldFetchFilterOptions = isNil(config?.filterColumns);\n const { data: filterOptions = {}, isLoading: isFilterOptionsLoading } =\n useFetchFilterOptions({\n params: { emailSearchTerm: debouncedEmailSearchTerm },\n options: { enabled: shouldFetchFilterOptions },\n });\n\n const filterColumns = shouldFetchFilterOptions\n ? buildFilterColumns({\n options: filterOptions,\n emailConfig: {\n setSearchTerm: setEmailSearchTerm,\n isLoading: isFilterOptionsLoading,\n },\n })\n : config?.filterColumns;\n\n const searchProps = useMemo(\n () => ({\n \"data-testid\": \"ntm-search-members-input\",\n placeholder: t(\"neetoTeamMembers.common.search_\", {\n what: taxonomies.member.plural,\n }),\n onChange: resetPage,\n }),\n []\n );\n\n return {\n filters,\n setFilters,\n filterColumns,\n searchProps,\n searchKeywordProps,\n };\n};\n\nexport default useFilters;\n","import { useState } from \"react\";\n\nimport { DEFAULT_PAGE_INDEX, DEFAULT_PAGE_SIZE } from \"neetocommons/constants\";\nimport { assoc, mergeLeft, pluck } from \"ramda\";\nimport { useHistory } from \"react-router-dom\";\n\nimport {\n DEFAULT_IS_OPEN_VALUES,\n DEFAULT_SELECTED_ROWS,\n} from \"v2/components/TeamMembers/constants\";\nimport { handlePageChange } from \"v2/components/TeamMembers/utils\";\n\nconst useTeams = ({ config, filters, setFilters, updateMember }) => {\n const history = useHistory();\n const [selectedMember, setSelectedMember] = useState(null);\n const [isOpen, setIsOpen] = useState(DEFAULT_IS_OPEN_VALUES);\n const [selectedRows, setSelectedRows] = useState(DEFAULT_SELECTED_ROWS);\n\n const handleRemoveMember = () => {\n if (!selectedMember) return;\n\n const { id } = selectedMember;\n const payload = { active: false };\n updateMember({ id, payload });\n };\n\n const handleUpdateStatus = user => {\n setSelectedMember(user);\n setIsOpen(assoc(\"alert\", true));\n };\n\n const handleUpdateRole = user => {\n setSelectedMember(user);\n setIsOpen(assoc(\"manageMember\", true));\n };\n\n const handleAlertClose = () => {\n setIsOpen(assoc(\"alert\", false));\n setSelectedMember(null);\n };\n\n const handlePaneClose = () => {\n setIsOpen(assoc(\"manageMember\", false));\n setSelectedMember(null);\n };\n\n const resetSelectedRows = () => setSelectedRows(DEFAULT_SELECTED_ROWS);\n\n const handleMemberFilterChange = () => {\n setSelectedRows(DEFAULT_SELECTED_ROWS);\n\n handlePageChange(setFilters, history)(\n DEFAULT_PAGE_INDEX,\n filters.pageSize ?? DEFAULT_PAGE_SIZE\n );\n };\n\n const handleTableChange = (_, __, sorter) => {\n setFilters(mergeLeft({ sortBy: sorter.field, orderBy: sorter.order }));\n };\n\n const handleRowSelect = (keys, rowData) => {\n const rows = {\n active: pluck(\"active\", rowData),\n displayNames: pluck(\"displayName\", rowData),\n emails: pluck(\"email\", rowData),\n keys,\n };\n setSelectedRows({ ...rows });\n config?.table?.onRowSelect?.({ rows, resetSelectedRows, rowData });\n };\n\n return {\n handleAlertClose,\n handleMemberFilterChange,\n handlePaneClose,\n handleRowSelect,\n handleTableChange,\n handleRemoveMember,\n handleUpdateRole,\n handleUpdateStatus,\n isOpen,\n selectedMember,\n selectedRows,\n setIsOpen,\n setSelectedRows,\n };\n};\n\nexport default useTeams;\n"],"names":["useFilters","_ref","_config$filterColumns","config","_useTranslation","useTranslation","t","_useQueryParams","useQueryParams","_useQueryParams$searc","searchTerm","searchKeywordProps","node","value","key","_useState","useState","_useState2","_slicedToArray","emailSearchTerm","setEmailSearchTerm","defaultNeetoFilters","buildFiltersFromURL","concat","_toConsumableArray","filterColumns","defaultNeetoFiltersColumns","_useState3","_objectSpread","DEFAULT_FILTER_VALUES","defaultFilterValues","neetoFilters","_useState4","filters","setFilters","resetPage","useFuncDebounce","mergeLeft","page","DEFAULT_PAGE_INDEX","debouncedEmailSearchTerm","useDebounce","shouldFetchFilterOptions","isNil","_useFetchFilterOption","useFetchFilterOptions","params","options","enabled","_useFetchFilterOption2","data","filterOptions","isFilterOptionsLoading","isLoading","buildFilterColumns","emailConfig","setSearchTerm","searchProps","useMemo","placeholder","what","taxonomies","member","plural","onChange","useTeams","updateMember","history","useHistory","selectedMember","setSelectedMember","DEFAULT_IS_OPEN_VALUES","isOpen","setIsOpen","_useState5","DEFAULT_SELECTED_ROWS","_useState6","selectedRows","setSelectedRows","handleRemoveMember","id","payload","active","handleUpdateStatus","user","assoc","handleUpdateRole","handleAlertClose","handlePaneClose","resetSelectedRows","handleMemberFilterChange","_filters$pageSize","handlePageChange","pageSize","DEFAULT_PAGE_SIZE","handleTableChange","_","__","sorter","sortBy","field","orderBy","order","handleRowSelect","keys","rowData","_config$table","_config$table$onRowSe","rows","pluck","displayNames","emails","table","onRowSelect","call"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAoBA,IAAMA,UAAU,GAAG,SAAbA,UAAUA,CAAAC,IAAA,EAAmB;AAAA,EAAA,IAAAC,qBAAA;AAAA,EAAA,IAAbC,MAAM,GAAAF,IAAA,CAANE,MAAM;AAC1B,EAAA,IAAAC,eAAA,GAAcC,cAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC;AACT,EAAA,IAAAC,eAAA,GAA4BC,cAAc,EAAE;IAAAC,qBAAA,GAAAF,eAAA,CAApCG,UAAU;AAAVA,IAAAA,UAAU,GAAAD,qBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,qBAAA;AACvB,EAAA,IAAME,kBAAkB,GAAG;AACzBC,IAAAA,IAAI,EAAE,4BAA4B;AAClCC,IAAAA,KAAK,EAAEH,UAAU;AACjBI,IAAAA,GAAG,EAAE;GACN;AAED,EAAA,IAAAC,SAAA,GAA8CC,QAAQ,CAAC,EAAE,CAAC;IAAAC,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAAnDI,IAAAA,eAAe,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAEG,IAAAA,kBAAkB,GAAAH,UAAA,CAAA,CAAA,CAAA;AAC1C,EAAA,IAAMI,mBAAmB,GAAGC,mBAAmB,CAAA,EAAA,CAAAC,MAAA,CAAAC,kBAAA,CAAA,CAAAtB,qBAAA,GACzCC,MAAM,KAAA,IAAA,IAANA,MAAM,KAAA,MAAA,GAAA,MAAA,GAANA,MAAM,CAAEsB,aAAa,MAAA,IAAA,IAAAvB,qBAAA,KAAA,MAAA,GAAAA,qBAAA,GAAIwB,0BAA0B,EAAE,CAAA,EAAA,CACzDf,kBAAkB,CAAA,CACnB,CAAC;AAEF,EAAA,IAAAgB,UAAA,GAA8BX,QAAQ,CAAAY,eAAA,CAAAA,eAAA,CAAAA,eAAA,CAAA,EAAA,EACjCC,qBAAqB,GACrB1B,MAAM,KAAA,IAAA,IAANA,MAAM,KAAA,MAAA,GAAA,MAAA,GAANA,MAAM,CAAE2B,mBAAmB,CAAA,EAAA,EAAA,EAAA;AAC9BC,MAAAA,YAAY,EAAEV;AAAmB,KAAA,CAClC,CAAC;IAAAW,UAAA,GAAAd,cAAA,CAAAS,UAAA,EAAA,CAAA,CAAA;AAJKM,IAAAA,OAAO,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,UAAU,GAAAF,UAAA,CAAA,CAAA,CAAA;EAM1B,IAAMG,SAAS,GAAGC,eAAe,CAAC,YAAA;IAAA,OAChCF,UAAU,CAACG,SAAS,CAAC;AAAEC,MAAAA,IAAI,EAAEC;AAAmB,KAAC,CAAC,CAAC;AAAA,EAAA,CACrD,CAAC;AACD,EAAA,IAAMC,wBAAwB,GAAGC,WAAW,CAACtB,eAAe,EAAE,GAAG,CAAC;EAElE,IAAMuB,wBAAwB,GAAGC,KAAK,CAACxC,MAAM,KAAA,IAAA,IAANA,MAAM,KAAA,MAAA,GAAA,MAAA,GAANA,MAAM,CAAEsB,aAAa,CAAC;EAC7D,IAAAmB,qBAAA,GACEC,qBAAqB,CAAC;AACpBC,MAAAA,MAAM,EAAE;AAAE3B,QAAAA,eAAe,EAAEqB;OAA0B;AACrDO,MAAAA,OAAO,EAAE;AAAEC,QAAAA,OAAO,EAAEN;AAAyB;AAC/C,KAAC,CAAC;IAAAO,sBAAA,GAAAL,qBAAA,CAJIM,IAAI;AAAEC,IAAAA,aAAa,GAAAF,sBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,sBAAA;IAAaG,sBAAsB,GAAAR,qBAAA,CAAjCS,SAAS;AAM3C,EAAA,IAAM5B,aAAa,GAAGiB,wBAAwB,GAC1CY,kBAAkB,CAAC;AACjBP,IAAAA,OAAO,EAAEI,aAAa;AACtBI,IAAAA,WAAW,EAAE;AACXC,MAAAA,aAAa,EAAEpC,kBAAkB;AACjCiC,MAAAA,SAAS,EAAED;AACb;GACD,CAAC,GACFjD,MAAM,KAAA,IAAA,IAANA,MAAM,KAAA,MAAA,GAAA,MAAA,GAANA,MAAM,CAAEsB,aAAa;EAEzB,IAAMgC,WAAW,GAAGC,OAAO,CACzB,YAAA;IAAA,OAAO;AACL,MAAA,aAAa,EAAE,0BAA0B;AACzCC,MAAAA,WAAW,EAAErD,CAAC,CAAC,iCAAiC,EAAE;AAChDsD,QAAAA,IAAI,EAAEC,UAAU,CAACC,MAAM,CAACC;AAC1B,OAAC,CAAC;AACFC,MAAAA,QAAQ,EAAE7B;KACX;EAAA,CAAC,EACF,EACF,CAAC;EAED,OAAO;AACLF,IAAAA,OAAO,EAAPA,OAAO;AACPC,IAAAA,UAAU,EAAVA,UAAU;AACVT,IAAAA,aAAa,EAAbA,aAAa;AACbgC,IAAAA,WAAW,EAAXA,WAAW;AACX9C,IAAAA,kBAAkB,EAAlBA;GACD;AACH;;;;ACrEA,IAAMsD,QAAQ,GAAG,SAAXA,QAAQA,CAAAhE,IAAA,EAAsD;AAAA,EAAA,IAAhDE,MAAM,GAAAF,IAAA,CAANE,MAAM;IAAE8B,OAAO,GAAAhC,IAAA,CAAPgC,OAAO;IAAEC,UAAU,GAAAjC,IAAA,CAAViC,UAAU;IAAEgC,YAAY,GAAAjE,IAAA,CAAZiE,YAAY;AAC3D,EAAA,IAAMC,OAAO,GAAGC,UAAU,EAAE;AAC5B,EAAA,IAAArD,SAAA,GAA4CC,QAAQ,CAAC,IAAI,CAAC;IAAAC,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAAnDsD,IAAAA,cAAc,GAAApD,UAAA,CAAA,CAAA,CAAA;AAAEqD,IAAAA,iBAAiB,GAAArD,UAAA,CAAA,CAAA,CAAA;AACxC,EAAA,IAAAU,UAAA,GAA4BX,QAAQ,CAACuD,sBAAsB,CAAC;IAAAvC,UAAA,GAAAd,cAAA,CAAAS,UAAA,EAAA,CAAA,CAAA;AAArD6C,IAAAA,MAAM,GAAAxC,UAAA,CAAA,CAAA,CAAA;AAAEyC,IAAAA,SAAS,GAAAzC,UAAA,CAAA,CAAA,CAAA;AACxB,EAAA,IAAA0C,UAAA,GAAwC1D,QAAQ,CAAC2D,qBAAqB,CAAC;IAAAC,UAAA,GAAA1D,cAAA,CAAAwD,UAAA,EAAA,CAAA,CAAA;AAAhEG,IAAAA,YAAY,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,eAAe,GAAAF,UAAA,CAAA,CAAA,CAAA;AAEpC,EAAA,IAAMG,kBAAkB,GAAG,SAArBA,kBAAkBA,GAAS;IAC/B,IAAI,CAACV,cAAc,EAAE;AAErB,IAAA,IAAQW,EAAE,GAAKX,cAAc,CAArBW,EAAE;AACV,IAAA,IAAMC,OAAO,GAAG;AAAEC,MAAAA,MAAM,EAAE;KAAO;AACjChB,IAAAA,YAAY,CAAC;AAAEc,MAAAA,EAAE,EAAFA,EAAE;AAAEC,MAAAA,OAAO,EAAPA;AAAQ,KAAC,CAAC;EAC/B,CAAC;AAED,EAAA,IAAME,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAGC,IAAI,EAAI;IACjCd,iBAAiB,CAACc,IAAI,CAAC;AACvBX,IAAAA,SAAS,CAACY,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;EACjC,CAAC;AAED,EAAA,IAAMC,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAGF,IAAI,EAAI;IAC/Bd,iBAAiB,CAACc,IAAI,CAAC;AACvBX,IAAAA,SAAS,CAACY,KAAK,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC;EACxC,CAAC;AAED,EAAA,IAAME,gBAAgB,GAAG,SAAnBA,gBAAgBA,GAAS;AAC7Bd,IAAAA,SAAS,CAACY,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IAChCf,iBAAiB,CAAC,IAAI,CAAC;EACzB,CAAC;AAED,EAAA,IAAMkB,eAAe,GAAG,SAAlBA,eAAeA,GAAS;AAC5Bf,IAAAA,SAAS,CAACY,KAAK,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;IACvCf,iBAAiB,CAAC,IAAI,CAAC;EACzB,CAAC;AAED,EAAA,IAAMmB,iBAAiB,GAAG,SAApBA,iBAAiBA,GAAA;IAAA,OAASX,eAAe,CAACH,qBAAqB,CAAC;AAAA,EAAA,CAAA;AAEtE,EAAA,IAAMe,wBAAwB,GAAG,SAA3BA,wBAAwBA,GAAS;AAAA,IAAA,IAAAC,iBAAA;IACrCb,eAAe,CAACH,qBAAqB,CAAC;AAEtCiB,IAAAA,gBAAgB,CAAC1D,UAAU,EAAEiC,OAAO,CAAC,CACnC5B,kBAAkB,EAAA,CAAAoD,iBAAA,GAClB1D,OAAO,CAAC4D,QAAQ,MAAA,IAAA,IAAAF,iBAAA,cAAAA,iBAAA,GAAIG,iBACtB,CAAC;EACH,CAAC;EAED,IAAMC,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAIC,CAAC,EAAEC,EAAE,EAAEC,MAAM,EAAK;IAC3ChE,UAAU,CAACG,SAAS,CAAC;MAAE8D,MAAM,EAAED,MAAM,CAACE,KAAK;MAAEC,OAAO,EAAEH,MAAM,CAACI;AAAM,KAAC,CAAC,CAAC;EACxE,CAAC;EAED,IAAMC,eAAe,GAAG,SAAlBA,eAAeA,CAAIC,IAAI,EAAEC,OAAO,EAAK;IAAA,IAAAC,aAAA,EAAAC,qBAAA;AACzC,IAAA,IAAMC,IAAI,GAAG;AACX1B,MAAAA,MAAM,EAAE2B,KAAK,CAAC,QAAQ,EAAEJ,OAAO,CAAC;AAChCK,MAAAA,YAAY,EAAED,KAAK,CAAC,aAAa,EAAEJ,OAAO,CAAC;AAC3CM,MAAAA,MAAM,EAAEF,KAAK,CAAC,OAAO,EAAEJ,OAAO,CAAC;AAC/BD,MAAAA,IAAI,EAAJA;KACD;AACD1B,IAAAA,eAAe,CAAAlD,aAAA,CAAA,EAAA,EAAMgF,IAAI,CAAE,CAAC;IAC5BzG,MAAM,KAAA,IAAA,IAANA,MAAM,KAAA,MAAA,IAAA,CAAAuG,aAAA,GAANvG,MAAM,CAAE6G,KAAK,MAAA,IAAA,IAAAN,aAAA,KAAA,MAAA,IAAA,CAAAC,qBAAA,GAAbD,aAAA,CAAeO,WAAW,MAAA,IAAA,IAAAN,qBAAA,KAAA,MAAA,IAA1BA,qBAAA,CAAAO,IAAA,CAAAR,aAAA,EAA6B;AAAEE,MAAAA,IAAI,EAAJA,IAAI;AAAEnB,MAAAA,iBAAiB,EAAjBA,iBAAiB;AAAEgB,MAAAA,OAAO,EAAPA;AAAQ,KAAC,CAAC;EACpE,CAAC;EAED,OAAO;AACLlB,IAAAA,gBAAgB,EAAhBA,gBAAgB;AAChBG,IAAAA,wBAAwB,EAAxBA,wBAAwB;AACxBF,IAAAA,eAAe,EAAfA,eAAe;AACfe,IAAAA,eAAe,EAAfA,eAAe;AACfR,IAAAA,iBAAiB,EAAjBA,iBAAiB;AACjBhB,IAAAA,kBAAkB,EAAlBA,kBAAkB;AAClBO,IAAAA,gBAAgB,EAAhBA,gBAAgB;AAChBH,IAAAA,kBAAkB,EAAlBA,kBAAkB;AAClBX,IAAAA,MAAM,EAANA,MAAM;AACNH,IAAAA,cAAc,EAAdA,cAAc;AACdQ,IAAAA,YAAY,EAAZA,YAAY;AACZJ,IAAAA,SAAS,EAATA,SAAS;AACTK,IAAAA,eAAe,EAAfA;GACD;AACH;;;;"}
|
|
1
|
+
{"version":3,"file":"hooks.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;"}
|
package/dist/v2/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export { M as MANAGE_MEMBERS_PERMISSION, a as MANAGE_ROLES_PERMISSION, V as VIEW_MEMBERS_PERMISSION, b as VIEW_ROLES_PERMISSION } from '../constants-CXdiW8NZ.js';
|
|
2
|
-
export { r as refetchMembers, u as useFetchMembers, a as useFetchMembersCountsPerCategory } from '../useTeamsApi-
|
|
2
|
+
export { r as refetchMembers, u as useFetchMembers, a as useFetchMembersCountsPerCategory } from '../useTeamsApi-CGY9oJqn.js';
|
|
3
3
|
export { u as useMembersSidenav } from '../useMembersSidenav-Dj60wgFC.js';
|
|
4
4
|
export { default as Groups } from './Groups.js';
|
|
5
5
|
export { default as MembersDropdown } from './MembersDropdown.js';
|
|
@@ -8,8 +8,8 @@ export { default as Profile } from './Profile.js';
|
|
|
8
8
|
export { default as Roles } from './Roles.js';
|
|
9
9
|
export { P as Permissions } from '../Permissions-DIdoAJlu.js';
|
|
10
10
|
export { default as TeamMembers } from './TeamMembers.js';
|
|
11
|
-
export {
|
|
12
|
-
export { R as RolesRadioGroup } from '../RolesRadioGroup-
|
|
11
|
+
export { M as ManageMember } from '../index-CaLd5930.js';
|
|
12
|
+
export { R as RolesRadioGroup } from '../RolesRadioGroup-BfcqSCiE.js';
|
|
13
13
|
export { default as TeamsAndMembersDropdown } from './TeamsAndMembersDropdown.js';
|
|
14
14
|
export { default as TeamsDropdown } from './TeamsDropdown.js';
|
|
15
15
|
import 'i18next';
|
|
@@ -77,16 +77,10 @@ import '@bigbinary/neeto-molecules/v2/Search';
|
|
|
77
77
|
import '../withReactQuery-CSuiy5RK.js';
|
|
78
78
|
import '@bigbinary/neeto-filters-frontend/v2/Bar';
|
|
79
79
|
import '@bigbinary/neeto-molecules/v2/Columns';
|
|
80
|
-
import '../useTeams-Bw4eltN1.js';
|
|
81
|
-
import '@bigbinary/neeto-filters-frontend/utils';
|
|
82
|
-
import '../utils-3WlshQ9e.js';
|
|
83
|
-
import '@bigbinary/neeto-commons-frontend/utils';
|
|
84
|
-
import '@bigbinary/neeto-molecules/MoreDropdown';
|
|
85
|
-
import '@bigbinary/neetoui/Avatar';
|
|
86
|
-
import '@bigbinary/neetoui/Dropdown';
|
|
87
|
-
import '@bigbinary/neetoui/Typography';
|
|
88
80
|
import '../constants.js';
|
|
89
|
-
import '../
|
|
90
|
-
import '@bigbinary/neeto-
|
|
81
|
+
import '../useTeams-DpZbszj9.js';
|
|
82
|
+
import '@bigbinary/neeto-filters-frontend/utils';
|
|
83
|
+
import '../constants-FEDmfINW.js';
|
|
91
84
|
import '../useInviteLinksApi-gn-AP0Yx.js';
|
|
85
|
+
import '@bigbinary/neeto-atoms/primitives';
|
|
92
86
|
//# sourceMappingURL=index.js.map
|
package/dist/v2/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
package/dist/v2/utils.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import '@bigbinary/neeto-commons-frontend/initializers';
|
|
2
2
|
export { isNeetoAuthApp, pluralizeLabelUsingTaxonomy } from '../utils.js';
|
|
3
3
|
import 'ramda';
|
|
4
|
-
export { r as refetchMembers } from '../useTeamsApi-
|
|
4
|
+
export { r as refetchMembers } from '../useTeamsApi-CGY9oJqn.js';
|
|
5
5
|
import '../_commonjsHelpers-BFTU3MAI.js';
|
|
6
6
|
import '@babel/runtime/helpers/objectWithoutProperties';
|
|
7
7
|
import '@babel/runtime/helpers/defineProperty';
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bigbinary/neeto-team-members-frontend",
|
|
3
|
-
"version": "5.0.
|
|
3
|
+
"version": "5.0.66",
|
|
4
4
|
"description": "A repo acts as the source of truth for the new nano's structure, configs, data etc.",
|
|
5
5
|
"license": "UNLICENSED",
|
|
6
6
|
"homepage": "https://github.com/bigbinary/neeto-team-members-nano",
|
|
@@ -75,12 +75,12 @@
|
|
|
75
75
|
"@bigbinary/neeto-atoms": "1.0.90",
|
|
76
76
|
"@bigbinary/neeto-cist": "1.0.17",
|
|
77
77
|
"@bigbinary/neeto-commons-frontend": "4.13.138",
|
|
78
|
-
"@bigbinary/neeto-filters-frontend": "4.3.
|
|
78
|
+
"@bigbinary/neeto-filters-frontend": "4.3.42",
|
|
79
79
|
"@bigbinary/neeto-icons": "1.20.89",
|
|
80
|
-
"@bigbinary/neeto-image-uploader-frontend": "4.0.
|
|
81
|
-
"@bigbinary/neeto-molecules": "5.1
|
|
80
|
+
"@bigbinary/neeto-image-uploader-frontend": "4.0.12",
|
|
81
|
+
"@bigbinary/neeto-molecules": "5.2.1",
|
|
82
82
|
"@bigbinary/neeto-time-zones": "0.8.25",
|
|
83
|
-
"@bigbinary/neetoui": "8.8.
|
|
83
|
+
"@bigbinary/neetoui": "8.8.3",
|
|
84
84
|
"@dnd-kit/core": "6.3.1",
|
|
85
85
|
"@dnd-kit/sortable": "10.0.0",
|
|
86
86
|
"@emotion/is-prop-valid": "1.2.0",
|
|
@@ -192,12 +192,12 @@
|
|
|
192
192
|
"@bigbinary/neeto-atoms": "1.0.90",
|
|
193
193
|
"@bigbinary/neeto-cist": "1.0.17",
|
|
194
194
|
"@bigbinary/neeto-commons-frontend": "4.13.138",
|
|
195
|
-
"@bigbinary/neeto-filters-frontend": "4.3.
|
|
195
|
+
"@bigbinary/neeto-filters-frontend": "4.3.42",
|
|
196
196
|
"@bigbinary/neeto-icons": "1.20.89",
|
|
197
|
-
"@bigbinary/neeto-image-uploader-frontend": "4.0.
|
|
198
|
-
"@bigbinary/neeto-molecules": "5.1
|
|
197
|
+
"@bigbinary/neeto-image-uploader-frontend": "4.0.12",
|
|
198
|
+
"@bigbinary/neeto-molecules": "5.2.1",
|
|
199
199
|
"@bigbinary/neeto-time-zones": "0.8.25",
|
|
200
|
-
"@bigbinary/neetoui": "8.8.
|
|
200
|
+
"@bigbinary/neetoui": "8.8.3",
|
|
201
201
|
"@dnd-kit/core": "6.3.1",
|
|
202
202
|
"@dnd-kit/sortable": "10.0.0",
|
|
203
203
|
"@honeybadger-io/js": "6.10.1",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"RolesRadioGroup-CsTenjqQ.js","sources":["../app/javascript/src/v2/components/TeamMembers/ManageMember/Page/index.jsx","../app/javascript/src/v2/components/TeamMembers/ManageMember/constants.js","../app/javascript/src/v2/components/TeamMembers/ManageMember/utils.jsx","../app/javascript/src/v2/components/TeamMembers/ManageMember/RolesRadioGroup.jsx"],"sourcesContent":["const PageWrapper = ({ className, children, ...otherProps }) => (\n <div {...{ className, ...otherProps }}>{children}</div>\n);\n\nconst Page = ({ className, children, ...otherProps }) => (\n <div {...{ className, ...otherProps }}>{children}</div>\n);\n\nPage.Header = PageWrapper;\nPage.Title = PageWrapper;\nPage.Description = PageWrapper;\nPage.Body = PageWrapper;\nPage.Footer = PageWrapper;\n\nexport default Page;\n","import { Dialog, Sheet } from \"@bigbinary/neeto-atoms\";\nimport { t } from \"i18next\";\nimport { PLURAL } from \"neetocommons/v2/constants\";\nimport { globalProps } from \"neetocommons/v2/initializers\";\nimport * as yup from \"yup\";\n\nimport Page from \"./Page\";\n\nexport const FEEDBACK_DURATION_MS = 2500;\n\nexport const NAME_INPUT_VALIDATION_SCHEMA = {\n firstName: yup\n .string()\n .trim(t(\"neetoTeamMembers.validations.removeSpaces\"))\n .strict(true),\n lastName: yup\n .string()\n .trim(t(\"neetoTeamMembers.validations.removeSpaces\"))\n .strict(true),\n};\n\nexport const ROLES_RADIO_GROUP_VALIDATION_SCHEMA = {\n role: yup.string().required(t(\"neetoTeamMembers.validations.roleRequired\")),\n};\n\nexport const APP_ROLES_SCHEMA = {\n appsRoles: yup.array().of(\n yup.object().shape({\n appName: yup.string(),\n isEnabled: yup.boolean(),\n role: yup\n .string()\n .required(t(\"neetoTeamMembers.validations.roleRequired\")),\n })\n ),\n};\n\nexport const FILTER_INVALID_EMAILS = {\n label: t(\"neetoTeamMembers.validations.filterInvalidEmails\"),\n};\n\nexport const COUNTER_PROPS = {\n label: t(\"neetoTeamMembers.common.email\", PLURAL),\n startsFrom: 4,\n};\n\nexport const DEFAULT_COMPONENT_CONFIG = {\n type: \"pane\",\n isOpen: false,\n className: \"\",\n headerProps: {},\n bodyProps: {},\n footerProps: {},\n};\n\nexport const MEMBERS_FORM_COMPONENT_MAPPER = {\n pane: Sheet,\n modal: Dialog,\n page: Page,\n};\n\nexport const FORM_PAGES = {\n MAIN: \"main\",\n APP_LIST: \"appList\",\n CONFIRMATION: \"confirmation\",\n INVITE_LINK: \"inviteLink\",\n};\n\nexport const EMAIL_REGEX = new RegExp(\n \"^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\\\.[A-Z]{2,}$\",\n \"i\"\n);\n\nexport const NEETO_AUTH_MANAGE_PRODUCT_URL = `${globalProps.organization?.authAppUrl}/admin/admin-panel/general/products`;\n","import { Button } from \"@bigbinary/neeto-atoms\";\nimport { t } from \"i18next\";\nimport { notEquals, _findBy, toLabelAndValue } from \"neetocist\";\nimport { globalProps } from \"neetocommons/v2/initializers\";\nimport { dayjs } from \"neetocommons/v2/utils\";\nimport {\n equals,\n includes,\n isNil,\n isNotNil,\n keys,\n move,\n pick,\n pluck,\n prop,\n} from \"ramda\";\nimport { Trans } from \"react-i18next\";\nimport * as yup from \"yup\";\n\nimport { ADMIN_ROLES, ADMIN_ROLE_NAME } from \"common/constants\";\n\nimport {\n NAME_INPUT_VALIDATION_SCHEMA,\n ROLES_RADIO_GROUP_VALIDATION_SCHEMA,\n APP_ROLES_SCHEMA,\n} from \"./constants\";\n\nconst getProductName = activeAppRoles =>\n activeAppRoles?.[0]?.appName\n ? t(\"neetoTeamMembers.labels.neeto_\", {\n product: activeAppRoles[0].appName,\n })\n : globalProps.appName;\n\nconst getActiveRole = (activeAppRoles, role) =>\n activeAppRoles?.[0]?.activeRole || role;\n\nconst getDefaultRole = (roles, currentAppRole, appName) => {\n if (appName === globalProps.appName?.substring(5)) {\n return currentAppRole;\n }\n\n const condition = isAdminRole(currentAppRole);\n\n const role = _findBy({ name: condition }, roles);\n\n return role ? role.name : roles[0].name;\n};\n\nconst generateAppsRolesInitialValue = (globalRoles, currentAppRole) => {\n if (!globalRoles) return [];\n\n const appNames = Object.keys(globalRoles);\n const currentApp = globalProps.appName?.substring(5);\n const currentAppNameIndex = appNames.indexOf(currentApp);\n const appNamesSorted = move(currentAppNameIndex, 0, appNames);\n\n return appNamesSorted.map(appName => ({\n appName,\n activeRole: getDefaultRole(globalRoles[appName], currentAppRole, appName),\n isEnabled: true,\n isPrimary: currentApp === appName,\n }));\n};\n\nexport const isAdminRole = role =>\n includes(role, ADMIN_ROLES)\n ? equals(ADMIN_ROLE_NAME)\n : notEquals(ADMIN_ROLE_NAME);\n\nexport const renderInitialValues = ({\n additionalFieldsInitialValues = {},\n globalRoles,\n memberShowData,\n roles,\n selectedMember,\n}) => {\n if (isNotNil(selectedMember)) {\n const keysToPick = [\n \"firstName\",\n \"lastName\",\n \"role\",\n ...keys(additionalFieldsInitialValues),\n ];\n\n return {\n ...additionalFieldsInitialValues,\n ...pick(keysToPick, selectedMember),\n emails: [{ ...toLabelAndValue(selectedMember.email), valid: true }],\n timeZone: selectedMember.timeZone || \"\",\n dateFormat: selectedMember.dateFormat || \"\",\n timeFormat: selectedMember.timeFormat || \"\",\n countryId:\n memberShowData?.member?.countryIdentifier ||\n selectedMember.countryIdentifier ||\n \"\",\n language: selectedMember.language || \"\",\n phonenumber: selectedMember.phonenumber || \"\",\n avatar: {\n imageUrl: selectedMember.profileImageUrl || \"\",\n file: null,\n },\n };\n }\n\n return {\n firstName: \"\",\n lastName: \"\",\n emails: [],\n role: roles[1]?.name ?? \"\",\n appRoles: generateAppsRolesInitialValue(globalRoles, roles[1]?.name),\n ...additionalFieldsInitialValues,\n };\n};\n\nexport const renderPayload = (\n { appRoles, emails, firstName, lastName, role, ...otherValues },\n selectedMember = null,\n initialValues = {}\n) => {\n if (selectedMember) {\n const {\n timeZone,\n dateFormat,\n timeFormat,\n countryId,\n language,\n phonenumber,\n avatar,\n ...rest\n } = otherValues;\n\n const payload = {\n active: true,\n firstName: firstName.trim(),\n lastName: lastName.trim(),\n organizationRole: role,\n email: emails[0].value,\n ...rest,\n };\n\n const profileFields = {\n timeZone,\n dateFormat,\n timeFormat,\n countryIdentifier: countryId,\n language,\n phonenumber,\n };\n\n // Compare each field against its initial form value, not `selectedMember`.\n // The payload key `countryIdentifier` maps to form field `countryId`\n // (seeded from the show endpoint's `country_id`, a different\n // representation than the list's `country_identifier`); aligning the\n // baseline stops an untouched country being logged as a phantom audit\n // change (#1746).\n const initialProfile = {\n ...initialValues,\n countryIdentifier: initialValues.countryId,\n };\n\n const profile = Object.fromEntries(\n Object.entries(profileFields).filter(\n ([key, value]) => value !== (initialProfile[key] ?? \"\")\n )\n );\n\n if (Object.keys(profile).length > 0 || avatar?.file) {\n payload.profile = profile;\n }\n\n return payload;\n }\n\n return {\n user: {\n emails: pluck(\"value\", emails),\n organizationRole: role,\n appRoles,\n ...otherValues,\n },\n };\n};\n\nexport const getSingleInvitationTranslationProps = ({\n activeAppRoles,\n role,\n selectedEmail,\n}) => ({\n count: selectedEmail.length,\n emails: selectedEmail,\n product: getProductName(activeAppRoles),\n role: getActiveRole(activeAppRoles, role),\n});\n\nexport const buildValidationSchema = ({\n selectedMember,\n memberLimit,\n activeUsersCount,\n}) =>\n yup.object().shape({\n ...NAME_INPUT_VALIDATION_SCHEMA,\n ...ROLES_RADIO_GROUP_VALIDATION_SCHEMA,\n ...APP_ROLES_SCHEMA,\n emails: yup\n .array()\n .min(1, t(\"neetoTeamMembers.validations.minOneEmail\"))\n .test(\n \"are-all-emails-valid\",\n ({ value }) =>\n t(\"neetoTeamMembers.validations.validEmail\", { count: value.length }),\n emails => emails.every(prop(\"valid\"))\n )\n .test(\n \"is-emails-length-within-available-members-capacity\",\n <Trans\n i18nKey=\"neetoTeamMembers.validations.memberLimitExceeded\"\n values={{ limit: memberLimit }}\n components={{\n emailTo: (\n <Button asChild variant=\"link\">\n <a href=\"mailto:support@neeto.com\">support</a>\n </Button>\n ),\n }}\n />,\n emails =>\n isNotNil(selectedMember) ||\n isNil(memberLimit) ||\n emails.length <= memberLimit - activeUsersCount\n )\n .nullable(),\n });\n\nexport const getInviteURL = inviteToken =>\n `${window.location.origin}/invite-link/${inviteToken}`;\n\nexport const remainingExpiryDays = expiryDate => {\n const today = dayjs().startOf(\"day\");\n const expiry = dayjs(expiryDate).startOf(\"day\");\n\n return expiry.diff(today, \"day\");\n};\n\nexport const neetoAuthManageProductUrl = `${globalProps.organization?.authAppUrl}/settings/general/products`;\n","import { Button, Label } from \"@bigbinary/neeto-atoms\";\nimport { useFormikContext } from \"formik\";\nimport { _findBy, slugify } from \"neetocist\";\nimport { SINGULAR, PLURAL } from \"neetocommons/v2/constants\";\nimport { globalProps } from \"neetocommons/v2/initializers\";\nimport { identical } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { isAdminRole } from \"./utils\";\n\nimport { FormikRadioGroup } from \"../../Common/formik\";\n\nconst RolesRadioGroup = ({\n config,\n globalRoles,\n isEdit,\n role = \"\",\n roles = [],\n}) => {\n const { t } = useTranslation();\n\n const { values, setFieldValue } = useFormikContext();\n\n const setDefaultSelection = currentRole => {\n const condition = isAdminRole(currentRole);\n values.appRoles?.forEach(({ appName, activeRole }, index) => {\n if (appName === globalProps.appName?.substring(5)) {\n setFieldValue(`appRoles[${index}].activeRole`, currentRole);\n\n return;\n }\n\n if (condition(activeRole)) return;\n const matchingRole = _findBy({ name: condition }, globalRoles[appName]);\n if (matchingRole) {\n setFieldValue(`appRoles[${index}].activeRole`, matchingRole.name);\n }\n });\n };\n\n return (\n <div className=\"space-y-2\">\n <div className=\"flex w-full items-center justify-between\">\n <Label>\n {t(\"neetoTeamMembers.common.role\", SINGULAR)}\n <span className=\"text-destructive\"> *</span>\n </Label>\n <Button asChild variant=\"link\">\n <a href={config.pathToRolesPage}>\n {t(\"neetoTeamMembers.labels.manageRole\", PLURAL)}\n </a>\n </Button>\n </div>\n <FormikRadioGroup\n stacked\n className=\"w-full grow-0\"\n data-testid=\"ntm-manage-member-roles-group\"\n name=\"role\"\n onChange={({ target: { value } }) => {\n setFieldValue(\"role\", value);\n if (!isEdit) setDefaultSelection(value);\n }}\n >\n {roles.map(({ id, name }) => (\n <label\n className=\"w-full cursor-pointer py-1 first:pt-0\"\n htmlFor={slugify(name)}\n key={id}\n >\n <FormikRadioGroup.Item\n data-testid=\"ntm-manage-member-roles-button\"\n defaultChecked={identical(name, role)}\n id={slugify(name)}\n label={name}\n value={name}\n />\n </label>\n ))}\n </FormikRadioGroup>\n </div>\n );\n};\n\nexport default RolesRadioGroup;\n"],"names":["PageWrapper","_ref","className","children","otherProps","_objectWithoutProperties","_excluded","_jsx","_objectSpread","Page","_ref2","_excluded2","Header","Title","Description","Body","Footer","FEEDBACK_DURATION_MS","NAME_INPUT_VALIDATION_SCHEMA","firstName","yup","string","trim","t","strict","lastName","ROLES_RADIO_GROUP_VALIDATION_SCHEMA","role","required","APP_ROLES_SCHEMA","appsRoles","array","of","object","shape","appName","isEnabled","FILTER_INVALID_EMAILS","label","COUNTER_PROPS","PLURAL","startsFrom","DEFAULT_COMPONENT_CONFIG","type","isOpen","headerProps","bodyProps","footerProps","MEMBERS_FORM_COMPONENT_MAPPER","pane","Sheet","modal","Dialog","page","FORM_PAGES","MAIN","APP_LIST","CONFIRMATION","INVITE_LINK","EMAIL_REGEX","RegExp","NEETO_AUTH_MANAGE_PRODUCT_URL","concat","_globalProps$organiza","globalProps","organization","authAppUrl","getProductName","activeAppRoles","_activeAppRoles$","product","getActiveRole","_activeAppRoles$2","activeRole","getDefaultRole","roles","currentAppRole","_globalProps$appName","substring","condition","isAdminRole","_findBy","name","generateAppsRolesInitialValue","globalRoles","_globalProps$appName2","appNames","Object","keys","currentApp","currentAppNameIndex","indexOf","appNamesSorted","move","map","isPrimary","includes","ADMIN_ROLES","equals","ADMIN_ROLE_NAME","notEquals","renderInitialValues","_roles$1$name","_roles$","_roles$2","_ref$additionalFields","additionalFieldsInitialValues","memberShowData","selectedMember","isNotNil","_memberShowData$membe","keysToPick","_toConsumableArray","pick","emails","toLabelAndValue","email","valid","timeZone","dateFormat","timeFormat","countryId","member","countryIdentifier","language","phonenumber","avatar","imageUrl","profileImageUrl","file","appRoles","renderPayload","otherValues","arguments","length","undefined","initialValues","rest","payload","active","organizationRole","value","profileFields","initialProfile","profile","fromEntries","entries","filter","_ref3","_initialProfile$key","_ref4","_slicedToArray","key","user","pluck","getSingleInvitationTranslationProps","_ref5","selectedEmail","count","buildValidationSchema","_ref6","memberLimit","activeUsersCount","min","test","_ref7","every","prop","Trans","i18nKey","values","limit","components","emailTo","Button","asChild","variant","href","isNil","nullable","getInviteURL","inviteToken","window","location","origin","remainingExpiryDays","expiryDate","today","dayjs","startOf","expiry","diff","RolesRadioGroup","config","isEdit","_ref$role","_ref$roles","_useTranslation","useTranslation","_useFormikContext","useFormikContext","setFieldValue","setDefaultSelection","currentRole","_values$appRoles","forEach","index","matchingRole","_jsxs","Label","SINGULAR","pathToRolesPage","FormikRadioGroup","stacked","onChange","target","id","htmlFor","slugify","Item","defaultChecked","identical"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"RolesRadioGroup-D4h-GY0X.js","sources":["../app/javascript/src/v2/components/TeamMembers/ManageMember/Page/index.jsx","../app/javascript/src/v2/components/TeamMembers/ManageMember/constants.js","../app/javascript/src/v2/components/TeamMembers/ManageMember/utils.jsx","../app/javascript/src/v2/components/TeamMembers/ManageMember/RolesRadioGroup.jsx"],"sourcesContent":["const PageWrapper = ({ className, children, ...otherProps }) => (\n <div {...{ className, ...otherProps }}>{children}</div>\n);\n\nconst Page = ({ className, children, ...otherProps }) => (\n <div {...{ className, ...otherProps }}>{children}</div>\n);\n\nPage.Header = PageWrapper;\nPage.Title = PageWrapper;\nPage.Description = PageWrapper;\nPage.Body = PageWrapper;\nPage.Footer = PageWrapper;\n\nexport default Page;\n","import { Dialog, Sheet } from \"@bigbinary/neeto-atoms\";\nimport { t } from \"i18next\";\nimport { PLURAL } from \"neetocommons/v2/constants\";\nimport { globalProps } from \"neetocommons/v2/initializers\";\nimport * as yup from \"yup\";\n\nimport Page from \"./Page\";\n\nexport const FEEDBACK_DURATION_MS = 2500;\n\nexport const NAME_INPUT_VALIDATION_SCHEMA = {\n firstName: yup\n .string()\n .trim(t(\"neetoTeamMembers.validations.removeSpaces\"))\n .strict(true),\n lastName: yup\n .string()\n .trim(t(\"neetoTeamMembers.validations.removeSpaces\"))\n .strict(true),\n};\n\nexport const ROLES_RADIO_GROUP_VALIDATION_SCHEMA = {\n role: yup.string().required(t(\"neetoTeamMembers.validations.roleRequired\")),\n};\n\nexport const APP_ROLES_SCHEMA = {\n appsRoles: yup.array().of(\n yup.object().shape({\n appName: yup.string(),\n isEnabled: yup.boolean(),\n role: yup\n .string()\n .required(t(\"neetoTeamMembers.validations.roleRequired\")),\n })\n ),\n};\n\nexport const FILTER_INVALID_EMAILS = {\n label: t(\"neetoTeamMembers.validations.filterInvalidEmails\"),\n};\n\nexport const COUNTER_PROPS = {\n label: t(\"neetoTeamMembers.common.email\", PLURAL),\n startsFrom: 4,\n};\n\nexport const DEFAULT_COMPONENT_CONFIG = {\n type: \"pane\",\n isOpen: false,\n className: \"\",\n headerProps: {},\n bodyProps: {},\n footerProps: {},\n};\n\nexport const MEMBERS_FORM_COMPONENT_MAPPER = {\n pane: Sheet,\n modal: Dialog,\n page: Page,\n};\n\nexport const FORM_PAGES = {\n MAIN: \"main\",\n APP_LIST: \"appList\",\n CONFIRMATION: \"confirmation\",\n INVITE_LINK: \"inviteLink\",\n};\n\nexport const EMAIL_REGEX = new RegExp(\n \"^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\\\.[A-Z]{2,}$\",\n \"i\"\n);\n\nexport const NEETO_AUTH_MANAGE_PRODUCT_URL = `${globalProps.organization?.authAppUrl}/admin/admin-panel/general/products`;\n","import { Button } from \"@bigbinary/neeto-atoms\";\nimport { t } from \"i18next\";\nimport { notEquals, _findBy, toLabelAndValue } from \"neetocist\";\nimport { globalProps } from \"neetocommons/v2/initializers\";\nimport { dayjs } from \"neetocommons/v2/utils\";\nimport {\n equals,\n includes,\n isNil,\n isNotNil,\n keys,\n move,\n pick,\n pluck,\n prop,\n} from \"ramda\";\nimport { Trans } from \"react-i18next\";\nimport * as yup from \"yup\";\n\nimport { ADMIN_ROLES, ADMIN_ROLE_NAME } from \"common/constants\";\n\nimport {\n NAME_INPUT_VALIDATION_SCHEMA,\n ROLES_RADIO_GROUP_VALIDATION_SCHEMA,\n APP_ROLES_SCHEMA,\n} from \"./constants\";\n\nconst getProductName = activeAppRoles =>\n activeAppRoles?.[0]?.appName\n ? t(\"neetoTeamMembers.labels.neeto_\", {\n product: activeAppRoles[0].appName,\n })\n : globalProps.appName;\n\nconst getActiveRole = (activeAppRoles, role) =>\n activeAppRoles?.[0]?.activeRole || role;\n\nconst getDefaultRole = (roles, currentAppRole, appName) => {\n if (appName === globalProps.appName?.substring(5)) {\n return currentAppRole;\n }\n\n const condition = isAdminRole(currentAppRole);\n\n const role = _findBy({ name: condition }, roles);\n\n return role ? role.name : roles[0].name;\n};\n\nconst generateAppsRolesInitialValue = (globalRoles, currentAppRole) => {\n if (!globalRoles) return [];\n\n const appNames = Object.keys(globalRoles);\n const currentApp = globalProps.appName?.substring(5);\n const currentAppNameIndex = appNames.indexOf(currentApp);\n const appNamesSorted = move(currentAppNameIndex, 0, appNames);\n\n return appNamesSorted.map(appName => ({\n appName,\n activeRole: getDefaultRole(globalRoles[appName], currentAppRole, appName),\n isEnabled: true,\n isPrimary: currentApp === appName,\n }));\n};\n\nexport const isAdminRole = role =>\n includes(role, ADMIN_ROLES)\n ? equals(ADMIN_ROLE_NAME)\n : notEquals(ADMIN_ROLE_NAME);\n\nexport const renderInitialValues = ({\n additionalFieldsInitialValues = {},\n globalRoles,\n memberShowData,\n roles,\n selectedMember,\n}) => {\n if (isNotNil(selectedMember)) {\n const keysToPick = [\n \"firstName\",\n \"lastName\",\n \"role\",\n ...keys(additionalFieldsInitialValues),\n ];\n\n return {\n ...additionalFieldsInitialValues,\n ...pick(keysToPick, selectedMember),\n emails: [{ ...toLabelAndValue(selectedMember.email), valid: true }],\n timeZone: selectedMember.timeZone || \"\",\n dateFormat: selectedMember.dateFormat || \"\",\n timeFormat: selectedMember.timeFormat || \"\",\n countryId:\n memberShowData?.member?.countryIdentifier ||\n selectedMember.countryIdentifier ||\n \"\",\n language: selectedMember.language || \"\",\n phonenumber: selectedMember.phonenumber || \"\",\n avatar: {\n imageUrl: selectedMember.profileImageUrl || \"\",\n file: null,\n },\n };\n }\n\n return {\n firstName: \"\",\n lastName: \"\",\n emails: [],\n role: roles[1]?.name ?? \"\",\n appRoles: generateAppsRolesInitialValue(globalRoles, roles[1]?.name),\n ...additionalFieldsInitialValues,\n };\n};\n\nexport const renderPayload = (\n { appRoles, emails, firstName, lastName, role, ...otherValues },\n selectedMember = null,\n initialValues = {}\n) => {\n if (selectedMember) {\n const {\n timeZone,\n dateFormat,\n timeFormat,\n countryId,\n language,\n phonenumber,\n avatar,\n ...rest\n } = otherValues;\n\n const payload = {\n active: true,\n firstName: firstName.trim(),\n lastName: lastName.trim(),\n organizationRole: role,\n email: emails[0].value,\n ...rest,\n };\n\n const profileFields = {\n timeZone,\n dateFormat,\n timeFormat,\n countryIdentifier: countryId,\n language,\n phonenumber,\n };\n\n // Compare each field against its initial form value, not `selectedMember`.\n // The payload key `countryIdentifier` maps to form field `countryId`\n // (seeded from the show endpoint's `country_id`, a different\n // representation than the list's `country_identifier`); aligning the\n // baseline stops an untouched country being logged as a phantom audit\n // change (#1746).\n const initialProfile = {\n ...initialValues,\n countryIdentifier: initialValues.countryId,\n };\n\n const profile = Object.fromEntries(\n Object.entries(profileFields).filter(\n ([key, value]) => value !== (initialProfile[key] ?? \"\")\n )\n );\n\n if (Object.keys(profile).length > 0 || avatar?.file) {\n payload.profile = profile;\n }\n\n return payload;\n }\n\n return {\n user: {\n emails: pluck(\"value\", emails),\n organizationRole: role,\n appRoles,\n ...otherValues,\n },\n };\n};\n\nexport const getSingleInvitationTranslationProps = ({\n activeAppRoles,\n role,\n selectedEmail,\n}) => ({\n count: selectedEmail.length,\n emails: selectedEmail,\n product: getProductName(activeAppRoles),\n role: getActiveRole(activeAppRoles, role),\n});\n\nexport const buildValidationSchema = ({\n selectedMember,\n memberLimit,\n activeUsersCount,\n}) =>\n yup.object().shape({\n ...NAME_INPUT_VALIDATION_SCHEMA,\n ...ROLES_RADIO_GROUP_VALIDATION_SCHEMA,\n ...APP_ROLES_SCHEMA,\n emails: yup\n .array()\n .min(1, t(\"neetoTeamMembers.validations.minOneEmail\"))\n .test(\n \"are-all-emails-valid\",\n ({ value }) =>\n t(\"neetoTeamMembers.validations.validEmail\", { count: value.length }),\n emails => emails.every(prop(\"valid\"))\n )\n .test(\n \"is-emails-length-within-available-members-capacity\",\n <Trans\n i18nKey=\"neetoTeamMembers.validations.memberLimitExceeded\"\n values={{ limit: memberLimit }}\n components={{\n emailTo: (\n <Button asChild variant=\"link\">\n <a href=\"mailto:support@neeto.com\">support</a>\n </Button>\n ),\n }}\n />,\n emails =>\n isNotNil(selectedMember) ||\n isNil(memberLimit) ||\n emails.length <= memberLimit - activeUsersCount\n )\n .nullable(),\n });\n\nexport const getInviteURL = inviteToken =>\n `${window.location.origin}/invite-link/${inviteToken}`;\n\nexport const remainingExpiryDays = expiryDate => {\n const today = dayjs().startOf(\"day\");\n const expiry = dayjs(expiryDate).startOf(\"day\");\n\n return expiry.diff(today, \"day\");\n};\n\nexport const neetoAuthManageProductUrl = `${globalProps.organization?.authAppUrl}/settings/general/products`;\n","import { Button, Label } from \"@bigbinary/neeto-atoms\";\nimport { useFormikContext } from \"formik\";\nimport { _findBy, slugify } from \"neetocist\";\nimport { SINGULAR, PLURAL } from \"neetocommons/v2/constants\";\nimport { globalProps } from \"neetocommons/v2/initializers\";\nimport { identical } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { isAdminRole } from \"./utils\";\n\nimport { FormikRadioGroup } from \"../../Common/formik\";\n\nconst RolesRadioGroup = ({\n config,\n globalRoles,\n isEdit,\n role = \"\",\n roles = [],\n}) => {\n const { t } = useTranslation();\n\n const { values, setFieldValue } = useFormikContext();\n\n const setDefaultSelection = currentRole => {\n const condition = isAdminRole(currentRole);\n values.appRoles?.forEach(({ appName, activeRole }, index) => {\n if (appName === globalProps.appName?.substring(5)) {\n setFieldValue(`appRoles[${index}].activeRole`, currentRole);\n\n return;\n }\n\n if (condition(activeRole)) return;\n const matchingRole = _findBy({ name: condition }, globalRoles[appName]);\n if (matchingRole) {\n setFieldValue(`appRoles[${index}].activeRole`, matchingRole.name);\n }\n });\n };\n\n return (\n <div className=\"space-y-2\">\n <div className=\"flex w-full items-center justify-between\">\n <Label>\n {t(\"neetoTeamMembers.common.role\", SINGULAR)}\n <span className=\"text-destructive\"> *</span>\n </Label>\n <Button asChild variant=\"link\">\n <a href={config.pathToRolesPage}>\n {t(\"neetoTeamMembers.labels.manageRole\", PLURAL)}\n </a>\n </Button>\n </div>\n <FormikRadioGroup\n stacked\n className=\"w-full grow-0\"\n data-testid=\"ntm-manage-member-roles-group\"\n name=\"role\"\n onChange={({ target: { value } }) => {\n setFieldValue(\"role\", value);\n if (!isEdit) setDefaultSelection(value);\n }}\n >\n {roles.map(({ id, name }) => (\n <label\n className=\"w-full cursor-pointer py-1 first:pt-0\"\n htmlFor={slugify(name)}\n key={id}\n >\n <FormikRadioGroup.Item\n data-testid=\"ntm-manage-member-roles-button\"\n defaultChecked={identical(name, role)}\n id={slugify(name)}\n label={name}\n value={name}\n />\n </label>\n ))}\n </FormikRadioGroup>\n </div>\n );\n};\n\nexport default RolesRadioGroup;\n"],"names":["PageWrapper","_ref","className","children","otherProps","_objectWithoutProperties","_excluded","_jsx","_objectSpread","Page","_ref2","_excluded2","Header","Title","Description","Body","Footer","FEEDBACK_DURATION_MS","NAME_INPUT_VALIDATION_SCHEMA","firstName","yup","string","trim","t","strict","lastName","ROLES_RADIO_GROUP_VALIDATION_SCHEMA","role","required","APP_ROLES_SCHEMA","appsRoles","array","of","object","shape","appName","isEnabled","FILTER_INVALID_EMAILS","label","COUNTER_PROPS","PLURAL","startsFrom","DEFAULT_COMPONENT_CONFIG","type","isOpen","headerProps","bodyProps","footerProps","MEMBERS_FORM_COMPONENT_MAPPER","pane","Sheet","modal","Dialog","page","FORM_PAGES","MAIN","APP_LIST","CONFIRMATION","INVITE_LINK","EMAIL_REGEX","RegExp","NEETO_AUTH_MANAGE_PRODUCT_URL","concat","_globalProps$organiza","globalProps","organization","authAppUrl","getProductName","activeAppRoles","_activeAppRoles$","product","getActiveRole","_activeAppRoles$2","activeRole","getDefaultRole","roles","currentAppRole","_globalProps$appName","substring","condition","isAdminRole","_findBy","name","generateAppsRolesInitialValue","globalRoles","_globalProps$appName2","appNames","Object","keys","currentApp","currentAppNameIndex","indexOf","appNamesSorted","move","map","isPrimary","includes","ADMIN_ROLES","equals","ADMIN_ROLE_NAME","notEquals","renderInitialValues","_roles$1$name","_roles$","_roles$2","_ref$additionalFields","additionalFieldsInitialValues","memberShowData","selectedMember","isNotNil","_memberShowData$membe","keysToPick","_toConsumableArray","pick","emails","toLabelAndValue","email","valid","timeZone","dateFormat","timeFormat","countryId","member","countryIdentifier","language","phonenumber","avatar","imageUrl","profileImageUrl","file","appRoles","renderPayload","otherValues","arguments","length","undefined","initialValues","rest","payload","active","organizationRole","value","profileFields","initialProfile","profile","fromEntries","entries","filter","_ref3","_initialProfile$key","_ref4","_slicedToArray","key","user","pluck","getSingleInvitationTranslationProps","_ref5","selectedEmail","count","buildValidationSchema","_ref6","memberLimit","activeUsersCount","min","test","_ref7","every","prop","Trans","i18nKey","values","limit","components","emailTo","Button","asChild","variant","href","isNil","nullable","getInviteURL","inviteToken","window","location","origin","remainingExpiryDays","expiryDate","today","dayjs","startOf","expiry","diff","RolesRadioGroup","config","isEdit","_ref$role","_ref$roles","_useTranslation","useTranslation","_useFormikContext","useFormikContext","setFieldValue","setDefaultSelection","currentRole","_values$appRoles","forEach","index","matchingRole","_jsxs","Label","SINGULAR","pathToRolesPage","FormikRadioGroup","stacked","onChange","target","id","htmlFor","slugify","Item","defaultChecked","identical"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useTeams-Bw4eltN1.js","sources":["../app/javascript/src/hooks/useFilters.js","../app/javascript/src/hooks/useTeams.js"],"sourcesContent":["import { useMemo, useState } from \"react\";\n\nimport { DEFAULT_PAGE_INDEX } from \"neetocommons/constants\";\nimport { taxonomies } from \"neetocommons/initializers\";\nimport {\n useDebounce,\n useFuncDebounce,\n useQueryParams,\n} from \"neetocommons/react-utils\";\nimport { buildFiltersFromURL } from \"neetofilters\";\nimport { isNil, mergeLeft } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useFetchFilterOptions } from \"hooks/teams/useTeamsApi\";\n\nimport { DEFAULT_FILTER_VALUES } from \"../components/TeamMembers/constants\";\nimport {\n buildFilterColumns,\n defaultNeetoFiltersColumns,\n} from \"../components/TeamMembers/utils\";\n\nconst useFilters = ({ config }) => {\n const { t } = useTranslation();\n const { searchTerm = \"\" } = useQueryParams();\n const searchKeywordProps = {\n node: \"first_name,last_name,email\",\n value: searchTerm,\n key: \"search_term\",\n };\n\n const [emailSearchTerm, setEmailSearchTerm] = useState(\"\");\n const defaultNeetoFilters = buildFiltersFromURL([\n ...(config?.filterColumns ?? defaultNeetoFiltersColumns()),\n searchKeywordProps,\n ]);\n\n const [filters, setFilters] = useState({\n ...DEFAULT_FILTER_VALUES,\n ...config?.defaultFilterValues,\n neetoFilters: defaultNeetoFilters,\n });\n\n const resetPage = useFuncDebounce(() =>\n setFilters(mergeLeft({ page: DEFAULT_PAGE_INDEX }))\n );\n const debouncedEmailSearchTerm = useDebounce(emailSearchTerm, 750);\n\n const shouldFetchFilterOptions = isNil(config?.filterColumns);\n const { data: filterOptions = {}, isLoading: isFilterOptionsLoading } =\n useFetchFilterOptions({\n params: { emailSearchTerm: debouncedEmailSearchTerm },\n options: { enabled: shouldFetchFilterOptions },\n });\n\n const filterColumns = shouldFetchFilterOptions\n ? buildFilterColumns({\n options: filterOptions,\n emailConfig: {\n setSearchTerm: setEmailSearchTerm,\n isLoading: isFilterOptionsLoading,\n },\n })\n : config?.filterColumns;\n\n const searchProps = useMemo(\n () => ({\n \"data-testid\": \"ntm-search-members-input\",\n placeholder: t(\"neetoTeamMembers.common.search_\", {\n what: taxonomies.member.plural,\n }),\n onChange: resetPage,\n }),\n []\n );\n\n return {\n filters,\n setFilters,\n filterColumns,\n searchProps,\n searchKeywordProps,\n };\n};\n\nexport default useFilters;\n","import { useState } from \"react\";\n\nimport { DEFAULT_PAGE_INDEX, DEFAULT_PAGE_SIZE } from \"neetocommons/constants\";\nimport { assoc, mergeLeft, pluck } from \"ramda\";\nimport { useHistory } from \"react-router-dom\";\n\nimport {\n DEFAULT_IS_OPEN_VALUES,\n DEFAULT_SELECTED_ROWS,\n} from \"../components/TeamMembers/constants\";\nimport { handlePageChange } from \"../components/TeamMembers/utils\";\n\nconst useTeams = ({ config, filters, setFilters, updateMember }) => {\n const history = useHistory();\n const [selectedMember, setSelectedMember] = useState(null);\n const [isOpen, setIsOpen] = useState(DEFAULT_IS_OPEN_VALUES);\n const [selectedRows, setSelectedRows] = useState(DEFAULT_SELECTED_ROWS);\n\n const handleRemoveMember = () => {\n if (!selectedMember) return;\n\n const { id } = selectedMember;\n const payload = { active: false };\n updateMember({ id, payload });\n };\n\n const handleUpdateStatus = user => {\n setSelectedMember(user);\n setIsOpen(assoc(\"alert\", true));\n };\n\n const handleUpdateRole = user => {\n setSelectedMember(user);\n setIsOpen(assoc(\"manageMember\", true));\n };\n\n const handleAlertClose = () => {\n setIsOpen(assoc(\"alert\", false));\n setSelectedMember(null);\n };\n\n const handlePaneClose = () => {\n setIsOpen(assoc(\"manageMember\", false));\n setSelectedMember(null);\n };\n\n const resetSelectedRows = () => setSelectedRows(DEFAULT_SELECTED_ROWS);\n\n const handleMemberFilterChange = () => {\n setSelectedRows(DEFAULT_SELECTED_ROWS);\n\n handlePageChange(setFilters, history)(\n DEFAULT_PAGE_INDEX,\n filters.pageSize ?? DEFAULT_PAGE_SIZE\n );\n };\n\n const handleTableChange = (_, __, sorter) => {\n setFilters(mergeLeft({ sortBy: sorter.field, orderBy: sorter.order }));\n };\n\n const handleRowSelect = (keys, rowData) => {\n const rows = {\n active: pluck(\"active\", rowData),\n displayNames: pluck(\"displayName\", rowData),\n emails: pluck(\"email\", rowData),\n keys,\n };\n setSelectedRows({ ...rows });\n config?.table?.onRowSelect?.({ rows, resetSelectedRows, rowData });\n };\n\n return {\n handleAlertClose,\n handleMemberFilterChange,\n handlePaneClose,\n handleRowSelect,\n handleTableChange,\n handleRemoveMember,\n handleUpdateRole,\n handleUpdateStatus,\n isOpen,\n selectedMember,\n selectedRows,\n setIsOpen,\n setSelectedRows,\n };\n};\n\nexport default useTeams;\n"],"names":["useFilters","_ref","_config$filterColumns","config","_useTranslation","useTranslation","t","_useQueryParams","useQueryParams","_useQueryParams$searc","searchTerm","searchKeywordProps","node","value","key","_useState","useState","_useState2","_slicedToArray","emailSearchTerm","setEmailSearchTerm","defaultNeetoFilters","buildFiltersFromURL","concat","_toConsumableArray","filterColumns","defaultNeetoFiltersColumns","_useState3","_objectSpread","DEFAULT_FILTER_VALUES","defaultFilterValues","neetoFilters","_useState4","filters","setFilters","resetPage","useFuncDebounce","mergeLeft","page","DEFAULT_PAGE_INDEX","debouncedEmailSearchTerm","useDebounce","shouldFetchFilterOptions","isNil","_useFetchFilterOption","useFetchFilterOptions","params","options","enabled","_useFetchFilterOption2","data","filterOptions","isFilterOptionsLoading","isLoading","buildFilterColumns","emailConfig","setSearchTerm","searchProps","useMemo","placeholder","what","taxonomies","member","plural","onChange","useTeams","updateMember","history","useHistory","selectedMember","setSelectedMember","DEFAULT_IS_OPEN_VALUES","isOpen","setIsOpen","_useState5","DEFAULT_SELECTED_ROWS","_useState6","selectedRows","setSelectedRows","handleRemoveMember","id","payload","active","handleUpdateStatus","user","assoc","handleUpdateRole","handleAlertClose","handlePaneClose","resetSelectedRows","handleMemberFilterChange","_filters$pageSize","handlePageChange","pageSize","DEFAULT_PAGE_SIZE","handleTableChange","_","__","sorter","sortBy","field","orderBy","order","handleRowSelect","keys","rowData","_config$table","_config$table$onRowSe","rows","pluck","displayNames","emails","table","onRowSelect","call"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useTeams-C9N2TJY-.js","sources":["../app/javascript/src/hooks/useFilters.js","../app/javascript/src/hooks/useTeams.js"],"sourcesContent":["import { useMemo, useState } from \"react\";\n\nimport { DEFAULT_PAGE_INDEX } from \"neetocommons/constants\";\nimport { taxonomies } from \"neetocommons/initializers\";\nimport {\n useDebounce,\n useFuncDebounce,\n useQueryParams,\n} from \"neetocommons/react-utils\";\nimport { buildFiltersFromURL } from \"neetofilters\";\nimport { isNil, mergeLeft } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useFetchFilterOptions } from \"hooks/teams/useTeamsApi\";\n\nimport { DEFAULT_FILTER_VALUES } from \"../components/TeamMembers/constants\";\nimport {\n buildFilterColumns,\n defaultNeetoFiltersColumns,\n} from \"../components/TeamMembers/utils\";\n\nconst useFilters = ({ config }) => {\n const { t } = useTranslation();\n const { searchTerm = \"\" } = useQueryParams();\n const searchKeywordProps = {\n node: \"first_name,last_name,email\",\n value: searchTerm,\n key: \"search_term\",\n };\n\n const [emailSearchTerm, setEmailSearchTerm] = useState(\"\");\n const defaultNeetoFilters = buildFiltersFromURL([\n ...(config?.filterColumns ?? defaultNeetoFiltersColumns()),\n searchKeywordProps,\n ]);\n\n const [filters, setFilters] = useState({\n ...DEFAULT_FILTER_VALUES,\n ...config?.defaultFilterValues,\n neetoFilters: defaultNeetoFilters,\n });\n\n const resetPage = useFuncDebounce(() =>\n setFilters(mergeLeft({ page: DEFAULT_PAGE_INDEX }))\n );\n const debouncedEmailSearchTerm = useDebounce(emailSearchTerm, 750);\n\n const shouldFetchFilterOptions = isNil(config?.filterColumns);\n const { data: filterOptions = {}, isLoading: isFilterOptionsLoading } =\n useFetchFilterOptions({\n params: { emailSearchTerm: debouncedEmailSearchTerm },\n options: { enabled: shouldFetchFilterOptions },\n });\n\n const filterColumns = shouldFetchFilterOptions\n ? buildFilterColumns({\n options: filterOptions,\n emailConfig: {\n setSearchTerm: setEmailSearchTerm,\n isLoading: isFilterOptionsLoading,\n },\n })\n : config?.filterColumns;\n\n const searchProps = useMemo(\n () => ({\n \"data-testid\": \"ntm-search-members-input\",\n placeholder: t(\"neetoTeamMembers.common.search_\", {\n what: taxonomies.member.plural,\n }),\n onChange: resetPage,\n }),\n []\n );\n\n return {\n filters,\n setFilters,\n filterColumns,\n searchProps,\n searchKeywordProps,\n };\n};\n\nexport default useFilters;\n","import { useState } from \"react\";\n\nimport { DEFAULT_PAGE_INDEX, DEFAULT_PAGE_SIZE } from \"neetocommons/constants\";\nimport { assoc, mergeLeft, pluck } from \"ramda\";\nimport { useHistory } from \"react-router-dom\";\n\nimport {\n DEFAULT_IS_OPEN_VALUES,\n DEFAULT_SELECTED_ROWS,\n} from \"../components/TeamMembers/constants\";\nimport { handlePageChange } from \"../components/TeamMembers/utils\";\n\nconst useTeams = ({ config, filters, setFilters, updateMember }) => {\n const history = useHistory();\n const [selectedMember, setSelectedMember] = useState(null);\n const [isOpen, setIsOpen] = useState(DEFAULT_IS_OPEN_VALUES);\n const [selectedRows, setSelectedRows] = useState(DEFAULT_SELECTED_ROWS);\n\n const handleRemoveMember = () => {\n if (!selectedMember) return;\n\n const { id } = selectedMember;\n const payload = { active: false };\n updateMember({ id, payload });\n };\n\n const handleUpdateStatus = user => {\n setSelectedMember(user);\n setIsOpen(assoc(\"alert\", true));\n };\n\n const handleUpdateRole = user => {\n setSelectedMember(user);\n setIsOpen(assoc(\"manageMember\", true));\n };\n\n const handleAlertClose = () => {\n setIsOpen(assoc(\"alert\", false));\n setSelectedMember(null);\n };\n\n const handlePaneClose = () => {\n setIsOpen(assoc(\"manageMember\", false));\n setSelectedMember(null);\n };\n\n const resetSelectedRows = () => setSelectedRows(DEFAULT_SELECTED_ROWS);\n\n const handleMemberFilterChange = () => {\n setSelectedRows(DEFAULT_SELECTED_ROWS);\n\n handlePageChange(setFilters, history)(\n DEFAULT_PAGE_INDEX,\n filters.pageSize ?? DEFAULT_PAGE_SIZE\n );\n };\n\n const handleTableChange = (_, __, sorter) => {\n setFilters(mergeLeft({ sortBy: sorter.field, orderBy: sorter.order }));\n };\n\n const handleRowSelect = (keys, rowData) => {\n const rows = {\n active: pluck(\"active\", rowData),\n displayNames: pluck(\"displayName\", rowData),\n emails: pluck(\"email\", rowData),\n keys,\n };\n setSelectedRows({ ...rows });\n config?.table?.onRowSelect?.({ rows, resetSelectedRows, rowData });\n };\n\n return {\n handleAlertClose,\n handleMemberFilterChange,\n handlePaneClose,\n handleRowSelect,\n handleTableChange,\n handleRemoveMember,\n handleUpdateRole,\n handleUpdateStatus,\n isOpen,\n selectedMember,\n selectedRows,\n setIsOpen,\n setSelectedRows,\n };\n};\n\nexport default useTeams;\n"],"names":["useFilters","_ref","_config$filterColumns","config","_useTranslation","useTranslation","t","_useQueryParams","useQueryParams","_useQueryParams$searc","searchTerm","searchKeywordProps","node","value","key","_useState","useState","_useState2","_slicedToArray","emailSearchTerm","setEmailSearchTerm","defaultNeetoFilters","buildFiltersFromURL","concat","_toConsumableArray","filterColumns","defaultNeetoFiltersColumns","_useState3","_objectSpread","DEFAULT_FILTER_VALUES","defaultFilterValues","neetoFilters","_useState4","filters","setFilters","resetPage","useFuncDebounce","mergeLeft","page","DEFAULT_PAGE_INDEX","debouncedEmailSearchTerm","useDebounce","shouldFetchFilterOptions","isNil","_useFetchFilterOption","useFetchFilterOptions","params","options","enabled","_useFetchFilterOption2","data","filterOptions","isFilterOptionsLoading","isLoading","buildFilterColumns","emailConfig","setSearchTerm","searchProps","useMemo","placeholder","what","taxonomies","member","plural","onChange","useTeams","updateMember","history","useHistory","selectedMember","setSelectedMember","DEFAULT_IS_OPEN_VALUES","isOpen","setIsOpen","_useState5","DEFAULT_SELECTED_ROWS","_useState6","selectedRows","setSelectedRows","handleRemoveMember","id","payload","active","handleUpdateStatus","user","assoc","handleUpdateRole","handleAlertClose","handlePaneClose","resetSelectedRows","handleMemberFilterChange","_filters$pageSize","handlePageChange","pageSize","DEFAULT_PAGE_SIZE","handleTableChange","_","__","sorter","sortBy","field","orderBy","order","handleRowSelect","keys","rowData","_config$table","_config$table$onRowSe","rows","pluck","displayNames","emails","table","onRowSelect","call"],"mappings":"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"}
|