@projectcor/people-microfront 1.0.2-8 → 1.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/App.js +8 -45
- package/lib/App.stories.js +27 -2
- package/lib/components/DeleteTeamModal/DeleteTeamModal.js +8 -5
- package/lib/components/DeleteTeamModal/DeleteTeamModal.styles.js +11 -10
- package/lib/components/DeletedUserIcon/DeletedUserIcon.js +5 -3
- package/lib/components/DeletedUserIcon/DeletedUserIcon.styles.js +2 -2
- package/lib/components/DisabledUserIcon/DisabledUserIcon.js +3 -2
- package/lib/components/DisabledUserIcon/DisabledUserIcon.styles.js +2 -2
- package/lib/components/EmptyStateTeams/EmptyStateTeams.js +4 -3
- package/lib/components/EmptyStateTeams/EmptyStateTeams.styles.js +3 -2
- package/lib/components/EmptyUser/EmptyUser.js +9 -48
- package/lib/components/EmptyUser/EmptyUser.styles.js +18 -0
- package/lib/components/ErrorComponent/ErrorComponent.spec.js +3 -2
- package/lib/components/ErrorComponent/ErrorComponent.styles.js +5 -5
- package/lib/components/ErrorTeams/ErrorTeams.styles.js +3 -2
- package/lib/components/Filters/FilterChip/FilterChip.js +52 -32
- package/lib/components/Filters/FilterChip/FilterChip.styles.js +6 -0
- package/lib/components/Filters/LabelFilter/LabelFilter.js +22 -20
- package/lib/components/Filters/LabelFilter/LabelFilter.styles.js +4 -4
- package/lib/components/Filters/SearchComponent/SearchComponent.js +3 -5
- package/lib/components/HeaderTeams/HeaderTeams.js +4 -3
- package/lib/components/HeaderTeams/HeaderTeams.style.js +3 -2
- package/lib/components/Icons/UserIconLock.js +3 -2
- package/lib/components/Icons/UserIconWithCross.js +3 -2
- package/lib/components/Illustration/EmptyFilter.js +67 -0
- package/lib/components/Layout/Layout.js +23 -2
- package/lib/components/Layout/Layout.styles.js +19 -3
- package/lib/components/Layout/index.js +2 -3
- package/lib/components/MenuOptions/MenuOptions.js +127 -40
- package/lib/components/MenuOptions/MenuOptions.styles.js +8 -4
- package/lib/components/Modal/ModalLayout.js +4 -4
- package/lib/components/Modal/ModalLayout.style.js +9 -9
- package/lib/components/ModalBlockedUser/ModalBlockedUser.js +47 -0
- package/lib/components/ModalBlockedUser/ModalBlockedUser.styles.js +14 -0
- package/lib/components/ModalBlockedUser/index.js +2 -0
- package/lib/components/ModalEditUserPosition/ModalEditUserPosition.js +14 -52
- package/lib/components/ModalEditUserPosition/ModalEditUserPosition.styles.js +37 -0
- package/lib/components/ModalEditUserPosition/UserEditPositionRow.js +55 -168
- package/lib/components/ModalEditUserPosition/UserEditPositionRow.styles.js +56 -1
- package/lib/components/ModalOptionsWithSearch/ModalOptionsWithSearch.js +109 -25
- package/lib/components/ModalOptionsWithSearch/ModalOptionsWithSearch.styles.js +9 -4
- package/lib/components/ModalOptionsWithSearch/SearchInput.js +5 -2
- package/lib/components/Pagination/Pagination.styles.js +5 -1
- package/lib/components/Pagination/PaginationView.js +83 -0
- package/lib/components/Search/InputSearch.js +3 -2
- package/lib/components/Search/Search.js +18 -15
- package/lib/components/Table/Header/HeaderTable.js +29 -41
- package/lib/components/Table/Header/HeaderTable.styles.js +15 -0
- package/lib/components/Table/Row/Row.js +59 -27
- package/lib/components/Table/Row/Row.styles.js +40 -18
- package/lib/components/Table/TeamRow/AddMemberModal/AddMemberModal.js +8 -5
- package/lib/components/Table/TeamRow/AddMemberModal/AddMemberModal.styles.js +7 -6
- package/lib/components/Table/TeamRow/AddUsers/AddUsers.js +92 -61
- package/lib/components/Table/TeamRow/AddUsers/AddUsers.styles.js +8 -3
- package/lib/components/Table/TeamRow/RemoveMemberModal/RemoveMemberModal.js +8 -5
- package/lib/components/Table/TeamRow/RemoveMemberModal/RemoveMemberModal.styles.js +7 -6
- package/lib/components/Table/TeamRow/TeamRow.js +40 -13
- package/lib/components/Table/TeamRow/TeamRow.styles.js +7 -0
- package/lib/components/Table/TeamRow/UsersRow/UsersRow.js +10 -6
- package/lib/components/Table/TeamRow/UsersRow/UsersRow.styles.js +5 -4
- package/lib/components/TeamDetailsModal/MembersSelect.js +38 -35
- package/lib/components/TeamDetailsModal/TeamDetailsModal.js +21 -17
- package/lib/components/TeamDetailsModal/TeamDetailsModal.styles.js +30 -21
- package/lib/components/UserRow/UserRow.js +17 -70
- package/lib/components/UserRow/UserRow.styles.js +33 -4
- package/lib/container/Body/BodyContainer.js +52 -33
- package/lib/container/Body/BodyContainerViewTeams.js +37 -18
- package/lib/container/Filters/FiltersContainer.js +99 -34
- package/lib/container/Filters/FiltersTeamsContainer.js +1 -5
- package/lib/container/MainView/MainTeamsView.js +24 -22
- package/lib/container/MainView/MainUsersView.js +46 -80
- package/lib/container/MainView/MainUsersView.styles.js +32 -0
- package/lib/container/MainView/MainView.js +2 -4
- package/lib/container/Pagination/PaginationContainer.js +10 -123
- package/lib/container/Pagination/PaginationTeamsContainer.js +32 -0
- package/lib/container/RouterComponent/RouterComponent.js +24 -45
- package/lib/container/RouterComponent/RouterComponent.stories.js +1 -3
- package/lib/container/RouterComponent/RouterComponent.styles.js +26 -0
- package/lib/container/TableContainer/TableContainer.js +35 -11
- package/lib/context/TeamsContext.js +8 -2
- package/lib/context/UsersContext.js +45 -22
- package/lib/hooks/useAbortController.js +15 -11
- package/lib/hooks/useCreateTeams.js +8 -4
- package/lib/hooks/useDebouncedCallback.js +27 -0
- package/lib/hooks/useDeleteTeam.js +5 -1
- package/lib/hooks/useGetTeams.js +45 -19
- package/lib/hooks/useGetUserPositionFilter.js +5 -2
- package/lib/hooks/useGetUsers.js +38 -17
- package/lib/hooks/useGetUsersForFilter.js +1 -2
- package/lib/hooks/useGraphAdapter.js +19 -8
- package/lib/hooks/useLoadMoreGuard.js +16 -0
- package/lib/hooks/useResize.js +9 -4
- package/lib/lang/i18nextForWeb.js +2 -2
- package/lib/lang/translation/br.json +63 -13
- package/lib/lang/translation/en.json +64 -13
- package/lib/lang/translation/es.json +64 -13
- package/lib/lang/translation/fr.json +66 -15
- package/lib/query/getTeams.js +2 -2
- package/lib/query/getUsers.js +2 -2
- package/lib/types/global.d.js +1 -1
- package/lib/types/userType.d.js +1 -1
- package/lib/utils/formatNumber.js +55 -0
- package/lib/utils/tabUrl.js +20 -0
- package/package.json +2 -2
- package/readme.md +223 -52
- package/lib/components/ModalBloquedUser/ModalBloquedUser.js +0 -70
- package/lib/components/ModalBloquedUser/index.js +0 -2
- package/lib/components/Pagination/Pagination.js +0 -78
- package/lib/components/ShowMore/ShowMore.js +0 -12
- package/lib/components/ShowMore/ShowMore.style.js +0 -10
- package/lib/components/ShowMore/index.js +0 -2
- package/lib/components/Table/Content/ContentTable.js +0 -7
- package/lib/components/Table/Content/index.js +0 -2
|
@@ -5,14 +5,34 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
|
|
|
5
5
|
/* eslint-disable @typescript-eslint/no-unused-vars */
|
|
6
6
|
/* eslint-disable no-unused-vars */
|
|
7
7
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
8
|
-
import { useCallback, memo, useState } from 'react';
|
|
8
|
+
import { useCallback, memo, useState, lazy, Suspense } from 'react';
|
|
9
9
|
import { RowComponent } from '../../components/Table/Row';
|
|
10
|
-
import { ModalBloquedUser } from '../../components/ModalBloquedUser';
|
|
11
10
|
import { useUsersEditPositions, useUsersQuery, useUsersView } from '../../context/UsersContext';
|
|
12
|
-
import { EmptyUserComponent } from '../../components/EmptyUser/EmptyUser';
|
|
13
11
|
import { useUnblockUser } from '../../hooks/useUnblockUser';
|
|
14
|
-
import {
|
|
12
|
+
import { LoaderComponent } from '../../components/Loading/LoadingComponent';
|
|
13
|
+
import { LayoutBodyUser } from '../../components/Layout/Layout';
|
|
15
14
|
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
15
|
+
var LazyEmptyUserComponent = /*#__PURE__*/lazy(function () {
|
|
16
|
+
return import('../../components/EmptyUser/EmptyUser').then(function (module) {
|
|
17
|
+
return {
|
|
18
|
+
"default": module.EmptyUserComponent
|
|
19
|
+
};
|
|
20
|
+
});
|
|
21
|
+
});
|
|
22
|
+
var LazyModalBlockedUser = /*#__PURE__*/lazy(function () {
|
|
23
|
+
return import('../../components/ModalBlockedUser').then(function (module) {
|
|
24
|
+
return {
|
|
25
|
+
"default": module.ModalBlockedUser
|
|
26
|
+
};
|
|
27
|
+
});
|
|
28
|
+
});
|
|
29
|
+
var LazyBodyContainerViewTeams = /*#__PURE__*/lazy(function () {
|
|
30
|
+
return import('./BodyContainerViewTeams').then(function (module) {
|
|
31
|
+
return {
|
|
32
|
+
"default": module.BodyContainerViewTeams
|
|
33
|
+
};
|
|
34
|
+
});
|
|
35
|
+
});
|
|
16
36
|
var BodyContainerViewUsers = function BodyContainerViewUsers() {
|
|
17
37
|
var _useUsersQuery = useUsersQuery(),
|
|
18
38
|
users = _useUsersQuery.users;
|
|
@@ -23,18 +43,18 @@ var BodyContainerViewUsers = function BodyContainerViewUsers() {
|
|
|
23
43
|
handleUnblockUser = _useUnblockUser.handleUnblockUser;
|
|
24
44
|
var _useState = useState(false),
|
|
25
45
|
_useState2 = _slicedToArray(_useState, 2),
|
|
26
|
-
|
|
27
|
-
|
|
46
|
+
showModalBlockedUser = _useState2[0],
|
|
47
|
+
setShowModalBlockedUser = _useState2[1];
|
|
28
48
|
var _useState3 = useState(null),
|
|
29
49
|
_useState4 = _slicedToArray(_useState3, 2),
|
|
30
|
-
|
|
31
|
-
|
|
50
|
+
userBlocked = _useState4[0],
|
|
51
|
+
setUserBlocked = _useState4[1];
|
|
32
52
|
var handleSelectOption = useCallback(function (option, user, userIndexPositionToEdit) {
|
|
33
53
|
if (option.id === 1) {
|
|
34
|
-
|
|
54
|
+
setUserBlocked(_objectSpread(_objectSpread({}, user), {}, {
|
|
35
55
|
userIndexPositionToEdit: userIndexPositionToEdit
|
|
36
56
|
}));
|
|
37
|
-
|
|
57
|
+
setShowModalBlockedUser(true);
|
|
38
58
|
return;
|
|
39
59
|
}
|
|
40
60
|
if (option.id === 2) {
|
|
@@ -47,26 +67,23 @@ var BodyContainerViewUsers = function BodyContainerViewUsers() {
|
|
|
47
67
|
}, []);
|
|
48
68
|
var handleAction = function handleAction(action, userInfoToSend) {
|
|
49
69
|
if (action === 'cancel') {
|
|
50
|
-
|
|
51
|
-
|
|
70
|
+
setShowModalBlockedUser(false);
|
|
71
|
+
setUserBlocked(null);
|
|
52
72
|
return;
|
|
53
73
|
}
|
|
54
74
|
if (action === 'unlock') {
|
|
55
75
|
handleUnblockUser(userInfoToSend);
|
|
56
76
|
}
|
|
57
|
-
|
|
77
|
+
setShowModalBlockedUser(false);
|
|
58
78
|
};
|
|
59
79
|
return /*#__PURE__*/_jsxs(_Fragment, {
|
|
60
|
-
children: [
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
border: '1px solid #e7e7e7',
|
|
68
|
-
borderRadius: '0 0 4px 4px'
|
|
69
|
-
},
|
|
80
|
+
children: [showModalBlockedUser && /*#__PURE__*/_jsx(Suspense, {
|
|
81
|
+
fallback: /*#__PURE__*/_jsx(LoaderComponent, {}),
|
|
82
|
+
children: /*#__PURE__*/_jsx(LazyModalBlockedUser, {
|
|
83
|
+
user: userBlocked,
|
|
84
|
+
handleAction: handleAction
|
|
85
|
+
})
|
|
86
|
+
}), /*#__PURE__*/_jsx(LayoutBodyUser, {
|
|
70
87
|
children: users !== null && users !== void 0 && users.length ? users.map(function (user, index) {
|
|
71
88
|
return /*#__PURE__*/_jsx(RowComponent, {
|
|
72
89
|
id: user.id.toString(),
|
|
@@ -76,23 +93,22 @@ var BodyContainerViewUsers = function BodyContainerViewUsers() {
|
|
|
76
93
|
handleSetUsersToEditPositions: handleSetUsersToEditPositions,
|
|
77
94
|
userIndexPositionToEdit: index
|
|
78
95
|
}, user.id);
|
|
79
|
-
}) : /*#__PURE__*/_jsx(
|
|
96
|
+
}) : /*#__PURE__*/_jsx(Suspense, {
|
|
97
|
+
fallback: null,
|
|
98
|
+
children: /*#__PURE__*/_jsx(LazyEmptyUserComponent, {})
|
|
99
|
+
})
|
|
80
100
|
})]
|
|
81
101
|
});
|
|
82
102
|
};
|
|
83
103
|
var BodyContainerViewPositions = function BodyContainerViewPositions() {
|
|
84
|
-
return
|
|
85
|
-
children: "BodyContainerViewPositions"
|
|
86
|
-
});
|
|
104
|
+
return null;
|
|
87
105
|
};
|
|
88
106
|
var BodyContainerViewLeaves = function BodyContainerViewLeaves() {
|
|
89
|
-
return
|
|
90
|
-
children: "BodyContainerViewLeaves"
|
|
91
|
-
});
|
|
107
|
+
return null;
|
|
92
108
|
};
|
|
93
109
|
var BodyContainerByView = {
|
|
94
110
|
users: BodyContainerViewUsers,
|
|
95
|
-
teams:
|
|
111
|
+
teams: LazyBodyContainerViewTeams,
|
|
96
112
|
positions: BodyContainerViewPositions,
|
|
97
113
|
leaves: BodyContainerViewLeaves
|
|
98
114
|
};
|
|
@@ -100,6 +116,9 @@ export var BodyContainer = /*#__PURE__*/memo(function () {
|
|
|
100
116
|
var _useUsersView = useUsersView(),
|
|
101
117
|
view = _useUsersView.view;
|
|
102
118
|
var BodyContainerView = BodyContainerByView[view];
|
|
103
|
-
return /*#__PURE__*/_jsx(
|
|
119
|
+
return /*#__PURE__*/_jsx(Suspense, {
|
|
120
|
+
fallback: /*#__PURE__*/_jsx(LoaderComponent, {}),
|
|
121
|
+
children: /*#__PURE__*/_jsx(BodyContainerView, {})
|
|
122
|
+
});
|
|
104
123
|
});
|
|
105
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ1c2VDYWxsYmFjayIsIm1lbW8iLCJ1c2VTdGF0ZSIsIlJvd0NvbXBvbmVudCIsIk1vZGFsQmxvcXVlZFVzZXIiLCJ1c2VVc2Vyc0VkaXRQb3NpdGlvbnMiLCJ1c2VVc2Vyc1F1ZXJ5IiwidXNlVXNlcnNWaWV3IiwiRW1wdHlVc2VyQ29tcG9uZW50IiwidXNlVW5ibG9ja1VzZXIiLCJCb2R5Q29udGFpbmVyVmlld1RlYW1zIiwianN4IiwiX2pzeCIsIkZyYWdtZW50IiwiX0ZyYWdtZW50IiwianN4cyIsIl9qc3hzIiwiQm9keUNvbnRhaW5lclZpZXdVc2VycyIsIl91c2VVc2Vyc1F1ZXJ5IiwidXNlcnMiLCJfdXNlVXNlcnNFZGl0UG9zaXRpb24iLCJoYXNFZGl0UG9zaXRpb25zIiwiaGFuZGxlU2V0VXNlcnNUb0VkaXRQb3NpdGlvbnMiLCJfdXNlVW5ibG9ja1VzZXIiLCJoYW5kbGVVbmJsb2NrVXNlciIsIl91c2VTdGF0ZSIsIl91c2VTdGF0ZTIiLCJfc2xpY2VkVG9BcnJheSIsInNob3dNb2RhbEJsb3F1ZWRVc2VyIiwic2V0U2hvd01vZGFsQmxvcXVlZFVzZXIiLCJfdXNlU3RhdGUzIiwiX3VzZVN0YXRlNCIsInVzZXJCbG9xdWVkIiwic2V0VXNlckJsb3F1ZWQiLCJoYW5kbGVTZWxlY3RPcHRpb24iLCJvcHRpb24iLCJ1c2VyIiwidXNlckluZGV4UG9zaXRpb25Ub0VkaXQiLCJpZCIsIl9vYmplY3RTcHJlYWQiLCJ3aW5kb3ciLCJsb2NhdGlvbiIsImhyZWYiLCJjb25jYXQiLCJoYW5kbGVBY3Rpb24iLCJhY3Rpb24iLCJ1c2VySW5mb1RvU2VuZCIsImNoaWxkcmVuIiwic3R5bGUiLCJkaXNwbGF5IiwiZmxleERpcmVjdGlvbiIsImJvcmRlciIsImJvcmRlclJhZGl1cyIsImxlbmd0aCIsIm1hcCIsImluZGV4IiwidG9TdHJpbmciLCJCb2R5Q29udGFpbmVyVmlld1Bvc2l0aW9ucyIsIkJvZHlDb250YWluZXJWaWV3TGVhdmVzIiwiQm9keUNvbnRhaW5lckJ5VmlldyIsInRlYW1zIiwicG9zaXRpb25zIiwibGVhdmVzIiwiQm9keUNvbnRhaW5lciIsIl91c2VVc2Vyc1ZpZXciLCJ2aWV3IiwiQm9keUNvbnRhaW5lclZpZXciXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29udGFpbmVyL0JvZHkvQm9keUNvbnRhaW5lci50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzICovXG4vKiBlc2xpbnQtZGlzYWJsZSBuby11bnVzZWQtdmFycyAqL1xuLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueSAqL1xuaW1wb3J0IHsgdXNlQ2FsbGJhY2ssIG1lbW8sIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnXG5pbXBvcnQgeyB1c2VUcmFuc2xhdGlvbiB9IGZyb20gJ3JlYWN0LWkxOG5leHQnXG5pbXBvcnQgeyBSb3dDb21wb25lbnQgfSBmcm9tICcuLi8uLi9jb21wb25lbnRzL1RhYmxlL1JvdydcbmltcG9ydCB7IE1vZGFsQmxvcXVlZFVzZXIgfSBmcm9tICcuLi8uLi9jb21wb25lbnRzL01vZGFsQmxvcXVlZFVzZXInXG5pbXBvcnQgeyB1c2VVc2Vyc0VkaXRQb3NpdGlvbnMsIHVzZVVzZXJzUXVlcnksIHVzZVVzZXJzVmlldyB9IGZyb20gJy4uLy4uL2NvbnRleHQvVXNlcnNDb250ZXh0J1xuaW1wb3J0IHsgRW1wdHlVc2VyQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cy9FbXB0eVVzZXIvRW1wdHlVc2VyJ1xuaW1wb3J0IHsgdXNlVW5ibG9ja1VzZXIgfSBmcm9tICcuLi8uLi9ob29rcy91c2VVbmJsb2NrVXNlcidcbmltcG9ydCB7IEJvZHlDb250YWluZXJWaWV3VGVhbXMgfSBmcm9tICcuL0JvZHlDb250YWluZXJWaWV3VGVhbXMnXG5cbmNvbnN0IEJvZHlDb250YWluZXJWaWV3VXNlcnMgPSAoKSA9PiB7XG4gIGNvbnN0IHsgdXNlcnMgfSA9IHVzZVVzZXJzUXVlcnkoKVxuICBjb25zdCB7IGhhc0VkaXRQb3NpdGlvbnMsIGhhbmRsZVNldFVzZXJzVG9FZGl0UG9zaXRpb25zIH0gPSB1c2VVc2Vyc0VkaXRQb3NpdGlvbnMoKVxuICBjb25zdCB7IGhhbmRsZVVuYmxvY2tVc2VyIH0gPSB1c2VVbmJsb2NrVXNlcigpXG4gIGNvbnN0IFtzaG93TW9kYWxCbG9xdWVkVXNlciwgc2V0U2hvd01vZGFsQmxvcXVlZFVzZXJdID0gdXNlU3RhdGUoZmFsc2UpXG4gIGNvbnN0IFt1c2VyQmxvcXVlZCwgc2V0VXNlckJsb3F1ZWRdID0gdXNlU3RhdGU8YW55PihudWxsKVxuICBjb25zdCBoYW5kbGVTZWxlY3RPcHRpb24gPSB1c2VDYWxsYmFjayhcbiAgICAob3B0aW9uOiB7IGlkOiBudW1iZXI7IGxhYmVsOiBzdHJpbmcgfSwgdXNlcjogYW55LCB1c2VySW5kZXhQb3NpdGlvblRvRWRpdDogbnVtYmVyKSA9PiB7XG4gICAgICBpZiAob3B0aW9uLmlkID09PSAxKSB7XG4gICAgICAgIHNldFVzZXJCbG9xdWVkKHsgLi4udXNlciwgdXNlckluZGV4UG9zaXRpb25Ub0VkaXQgfSlcbiAgICAgICAgc2V0U2hvd01vZGFsQmxvcXVlZFVzZXIodHJ1ZSlcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG4gICAgICBpZiAob3B0aW9uLmlkID09PSAyKSB7XG4gICAgICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gYC91c2Vycy8ke3VzZXIuaWR9L2VkaXRgXG4gICAgICAgIHJldHVyblxuICAgICAgfVxuICAgICAgaWYgKG9wdGlvbi5pZCA9PT0gMykge1xuICAgICAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9IGAvdXNlcnMvJHt1c2VyLmlkfS9kZWxldGVgXG4gICAgICB9XG4gICAgfSxcbiAgICBbXVxuICApXG5cbiAgY29uc3QgaGFuZGxlQWN0aW9uID0gKGFjdGlvbjogc3RyaW5nLCB1c2VySW5mb1RvU2VuZDogYW55KSA9PiB7XG4gICAgaWYgKGFjdGlvbiA9PT0gJ2NhbmNlbCcpIHtcbiAgICAgIHNldFNob3dNb2RhbEJsb3F1ZWRVc2VyKGZhbHNlKVxuICAgICAgc2V0VXNlckJsb3F1ZWQobnVsbClcbiAgICAgIHJldHVyblxuICAgIH1cbiAgICBpZiAoYWN0aW9uID09PSAndW5sb2NrJykge1xuICAgICAgaGFuZGxlVW5ibG9ja1VzZXIodXNlckluZm9Ub1NlbmQpXG4gICAgfVxuICAgIHNldFNob3dNb2RhbEJsb3F1ZWRVc2VyKGZhbHNlKVxuICB9XG5cbiAgcmV0dXJuIChcbiAgICA8PlxuICAgICAge3Nob3dNb2RhbEJsb3F1ZWRVc2VyICYmIDxNb2RhbEJsb3F1ZWRVc2VyIHVzZXI9e3VzZXJCbG9xdWVkfSBoYW5kbGVBY3Rpb249e2hhbmRsZUFjdGlvbn0gLz59XG4gICAgICA8ZGl2XG4gICAgICAgIHN0eWxlPXt7IGRpc3BsYXk6ICdmbGV4JywgZmxleERpcmVjdGlvbjogJ2NvbHVtbicsIGJvcmRlcjogJzFweCBzb2xpZCAjZTdlN2U3JywgYm9yZGVyUmFkaXVzOiAnMCAwIDRweCA0cHgnIH19XG4gICAgICA+XG4gICAgICAgIHt1c2Vycz8ubGVuZ3RoID8gKFxuICAgICAgICAgIHVzZXJzLm1hcCgodXNlciwgaW5kZXgpID0+IChcbiAgICAgICAgICAgIDxSb3dDb21wb25lbnRcbiAgICAgICAgICAgICAga2V5PXt1c2VyLmlkfVxuICAgICAgICAgICAgICBpZD17dXNlci5pZC50b1N0cmluZygpfVxuICAgICAgICAgICAgICBoYW5kbGVTZWxlY3RPcHRpb249e2hhbmRsZVNlbGVjdE9wdGlvbn1cbiAgICAgICAgICAgICAgdXNlcj17dXNlcn1cbiAgICAgICAgICAgICAgaGFzRWRpdFBvc2l0aW9ucz17aGFzRWRpdFBvc2l0aW9uc31cbiAgICAgICAgICAgICAgaGFuZGxlU2V0VXNlcnNUb0VkaXRQb3NpdGlvbnM9e2hhbmRsZVNldFVzZXJzVG9FZGl0UG9zaXRpb25zfVxuICAgICAgICAgICAgICB1c2VySW5kZXhQb3NpdGlvblRvRWRpdD17aW5kZXh9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgICkpXG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPEVtcHR5VXNlckNvbXBvbmVudCAvPlxuICAgICAgICApfVxuICAgICAgPC9kaXY+XG4gICAgPC8+XG4gIClcbn1cblxuY29uc3QgQm9keUNvbnRhaW5lclZpZXdQb3NpdGlvbnMgPSAoKSA9PiB7XG4gIHJldHVybiA8ZGl2PkJvZHlDb250YWluZXJWaWV3UG9zaXRpb25zPC9kaXY+XG59XG5cbmNvbnN0IEJvZHlDb250YWluZXJWaWV3TGVhdmVzID0gKCkgPT4ge1xuICByZXR1cm4gPGRpdj5Cb2R5Q29udGFpbmVyVmlld0xlYXZlczwvZGl2PlxufVxuXG5jb25zdCBCb2R5Q29udGFpbmVyQnlWaWV3ID0ge1xuICB1c2VyczogQm9keUNvbnRhaW5lclZpZXdVc2VycyxcbiAgdGVhbXM6IEJvZHlDb250YWluZXJWaWV3VGVhbXMsXG4gIHBvc2l0aW9uczogQm9keUNvbnRhaW5lclZpZXdQb3NpdGlvbnMsXG4gIGxlYXZlczogQm9keUNvbnRhaW5lclZpZXdMZWF2ZXMsXG59XG5cbmV4cG9ydCBjb25zdCBCb2R5Q29udGFpbmVyID0gbWVtbygoKSA9PiB7XG4gIGNvbnN0IHsgdmlldyB9ID0gdXNlVXNlcnNWaWV3KClcbiAgY29uc3QgQm9keUNvbnRhaW5lclZpZXcgPSBCb2R5Q29udGFpbmVyQnlWaWV3W3ZpZXddXG4gIHJldHVybiA8Qm9keUNvbnRhaW5lclZpZXcgLz5cbn0pXG4iXSwibWFwcGluZ3MiOiI7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQSxTQUFTQSxXQUFXLEVBQUVDLElBQUksRUFBRUMsUUFBUSxRQUFRLE9BQU87QUFFbkQsU0FBU0MsWUFBWSxRQUFRLDRCQUE0QjtBQUN6RCxTQUFTQyxnQkFBZ0IsUUFBUSxtQ0FBbUM7QUFDcEUsU0FBU0MscUJBQXFCLEVBQUVDLGFBQWEsRUFBRUMsWUFBWSxRQUFRLDRCQUE0QjtBQUMvRixTQUFTQyxrQkFB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
|
|
124
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ1c2VDYWxsYmFjayIsIm1lbW8iLCJ1c2VTdGF0ZSIsImxhenkiLCJTdXNwZW5zZSIsIlJvd0NvbXBvbmVudCIsInVzZVVzZXJzRWRpdFBvc2l0aW9ucyIsInVzZVVzZXJzUXVlcnkiLCJ1c2VVc2Vyc1ZpZXciLCJ1c2VVbmJsb2NrVXNlciIsIkxvYWRlckNvbXBvbmVudCIsIkxheW91dEJvZHlVc2VyIiwianN4IiwiX2pzeCIsIkZyYWdtZW50IiwiX0ZyYWdtZW50IiwianN4cyIsIl9qc3hzIiwiTGF6eUVtcHR5VXNlckNvbXBvbmVudCIsInRoZW4iLCJtb2R1bGUiLCJFbXB0eVVzZXJDb21wb25lbnQiLCJMYXp5TW9kYWxCbG9ja2VkVXNlciIsIk1vZGFsQmxvY2tlZFVzZXIiLCJMYXp5Qm9keUNvbnRhaW5lclZpZXdUZWFtcyIsIkJvZHlDb250YWluZXJWaWV3VGVhbXMiLCJCb2R5Q29udGFpbmVyVmlld1VzZXJzIiwiX3VzZVVzZXJzUXVlcnkiLCJ1c2VycyIsIl91c2VVc2Vyc0VkaXRQb3NpdGlvbiIsImhhc0VkaXRQb3NpdGlvbnMiLCJoYW5kbGVTZXRVc2Vyc1RvRWRpdFBvc2l0aW9ucyIsIl91c2VVbmJsb2NrVXNlciIsImhhbmRsZVVuYmxvY2tVc2VyIiwiX3VzZVN0YXRlIiwiX3VzZVN0YXRlMiIsIl9zbGljZWRUb0FycmF5Iiwic2hvd01vZGFsQmxvY2tlZFVzZXIiLCJzZXRTaG93TW9kYWxCbG9ja2VkVXNlciIsIl91c2VTdGF0ZTMiLCJfdXNlU3RhdGU0IiwidXNlckJsb2NrZWQiLCJzZXRVc2VyQmxvY2tlZCIsImhhbmRsZVNlbGVjdE9wdGlvbiIsIm9wdGlvbiIsInVzZXIiLCJ1c2VySW5kZXhQb3NpdGlvblRvRWRpdCIsImlkIiwiX29iamVjdFNwcmVhZCIsIndpbmRvdyIsImxvY2F0aW9uIiwiaHJlZiIsImNvbmNhdCIsImhhbmRsZUFjdGlvbiIsImFjdGlvbiIsInVzZXJJbmZvVG9TZW5kIiwiY2hpbGRyZW4iLCJmYWxsYmFjayIsImxlbmd0aCIsIm1hcCIsImluZGV4IiwidG9TdHJpbmciLCJCb2R5Q29udGFpbmVyVmlld1Bvc2l0aW9ucyIsIkJvZHlDb250YWluZXJWaWV3TGVhdmVzIiwiQm9keUNvbnRhaW5lckJ5VmlldyIsInRlYW1zIiwicG9zaXRpb25zIiwibGVhdmVzIiwiQm9keUNvbnRhaW5lciIsIl91c2VVc2Vyc1ZpZXciLCJ2aWV3IiwiQm9keUNvbnRhaW5lclZpZXciXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29udGFpbmVyL0JvZHkvQm9keUNvbnRhaW5lci50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzICovXG4vKiBlc2xpbnQtZGlzYWJsZSBuby11bnVzZWQtdmFycyAqL1xuLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueSAqL1xuaW1wb3J0IHsgdXNlQ2FsbGJhY2ssIG1lbW8sIHVzZVN0YXRlLCBsYXp5LCBTdXNwZW5zZSB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHsgUm93Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cy9UYWJsZS9Sb3cnXG5pbXBvcnQgeyB1c2VVc2Vyc0VkaXRQb3NpdGlvbnMsIHVzZVVzZXJzUXVlcnksIHVzZVVzZXJzVmlldyB9IGZyb20gJy4uLy4uL2NvbnRleHQvVXNlcnNDb250ZXh0J1xuaW1wb3J0IHsgdXNlVW5ibG9ja1VzZXIgfSBmcm9tICcuLi8uLi9ob29rcy91c2VVbmJsb2NrVXNlcidcbmltcG9ydCB7IExvYWRlckNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMvTG9hZGluZy9Mb2FkaW5nQ29tcG9uZW50J1xuaW1wb3J0IHsgTGF5b3V0Qm9keVVzZXIgfSBmcm9tICcuLi8uLi9jb21wb25lbnRzL0xheW91dC9MYXlvdXQnXG5cbmNvbnN0IExhenlFbXB0eVVzZXJDb21wb25lbnQgPSBsYXp5KCgpID0+XG4gIGltcG9ydCgnLi4vLi4vY29tcG9uZW50cy9FbXB0eVVzZXIvRW1wdHlVc2VyJykudGhlbihtb2R1bGUgPT4gKHsgZGVmYXVsdDogbW9kdWxlLkVtcHR5VXNlckNvbXBvbmVudCB9KSlcbilcblxuY29uc3QgTGF6eU1vZGFsQmxvY2tlZFVzZXIgPSBsYXp5KCgpID0+XG4gIGltcG9ydCgnLi4vLi4vY29tcG9uZW50cy9Nb2RhbEJsb2NrZWRVc2VyJykudGhlbihtb2R1bGUgPT4gKHsgZGVmYXVsdDogbW9kdWxlLk1vZGFsQmxvY2tlZFVzZXIgfSkpXG4pXG5cbmNvbnN0IExhenlCb2R5Q29udGFpbmVyVmlld1RlYW1zID0gbGF6eSgoKSA9PlxuICBpbXBvcnQoJy4vQm9keUNvbnRhaW5lclZpZXdUZWFtcycpLnRoZW4obW9kdWxlID0+ICh7IGRlZmF1bHQ6IG1vZHVsZS5Cb2R5Q29udGFpbmVyVmlld1RlYW1zIH0pKVxuKVxuXG5jb25zdCBCb2R5Q29udGFpbmVyVmlld1VzZXJzID0gKCkgPT4ge1xuICBjb25zdCB7IHVzZXJzIH0gPSB1c2VVc2Vyc1F1ZXJ5KClcbiAgY29uc3QgeyBoYXNFZGl0UG9zaXRpb25zLCBoYW5kbGVTZXRVc2Vyc1RvRWRpdFBvc2l0aW9ucyB9ID0gdXNlVXNlcnNFZGl0UG9zaXRpb25zKClcbiAgY29uc3QgeyBoYW5kbGVVbmJsb2NrVXNlciB9ID0gdXNlVW5ibG9ja1VzZXIoKVxuICBjb25zdCBbc2hvd01vZGFsQmxvY2tlZFVzZXIsIHNldFNob3dNb2RhbEJsb2NrZWRVc2VyXSA9IHVzZVN0YXRlKGZhbHNlKVxuICBjb25zdCBbdXNlckJsb2NrZWQsIHNldFVzZXJCbG9ja2VkXSA9IHVzZVN0YXRlPGFueT4obnVsbClcbiAgY29uc3QgaGFuZGxlU2VsZWN0T3B0aW9uID0gdXNlQ2FsbGJhY2soXG4gICAgKG9wdGlvbjogeyBpZDogbnVtYmVyOyBsYWJlbDogc3RyaW5nIH0sIHVzZXI6IGFueSwgdXNlckluZGV4UG9zaXRpb25Ub0VkaXQ6IG51bWJlcikgPT4ge1xuICAgICAgaWYgKG9wdGlvbi5pZCA9PT0gMSkge1xuICAgICAgICBzZXRVc2VyQmxvY2tlZCh7IC4uLnVzZXIsIHVzZXJJbmRleFBvc2l0aW9uVG9FZGl0IH0pXG4gICAgICAgIHNldFNob3dNb2RhbEJsb2NrZWRVc2VyKHRydWUpXG4gICAgICAgIHJldHVyblxuICAgICAgfVxuICAgICAgaWYgKG9wdGlvbi5pZCA9PT0gMikge1xuICAgICAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9IGAvdXNlcnMvJHt1c2VyLmlkfS9lZGl0YFxuICAgICAgICByZXR1cm5cbiAgICAgIH1cbiAgICAgIGlmIChvcHRpb24uaWQgPT09IDMpIHtcbiAgICAgICAgd2luZG93LmxvY2F0aW9uLmhyZWYgPSBgL3VzZXJzLyR7dXNlci5pZH0vZGVsZXRlYFxuICAgICAgfVxuICAgIH0sXG4gICAgW11cbiAgKVxuXG4gIGNvbnN0IGhhbmRsZUFjdGlvbiA9IChhY3Rpb246IHN0cmluZywgdXNlckluZm9Ub1NlbmQ6IGFueSkgPT4ge1xuICAgIGlmIChhY3Rpb24gPT09ICdjYW5jZWwnKSB7XG4gICAgICBzZXRTaG93TW9kYWxCbG9ja2VkVXNlcihmYWxzZSlcbiAgICAgIHNldFVzZXJCbG9ja2VkKG51bGwpXG4gICAgICByZXR1cm5cbiAgICB9XG4gICAgaWYgKGFjdGlvbiA9PT0gJ3VubG9jaycpIHtcbiAgICAgIGhhbmRsZVVuYmxvY2tVc2VyKHVzZXJJbmZvVG9TZW5kKVxuICAgIH1cbiAgICBzZXRTaG93TW9kYWxCbG9ja2VkVXNlcihmYWxzZSlcbiAgfVxuXG4gIHJldHVybiAoXG4gICAgPD5cbiAgICAgIHtzaG93TW9kYWxCbG9ja2VkVXNlciAmJiAoXG4gICAgICAgIDxTdXNwZW5zZSBmYWxsYmFjaz17PExvYWRlckNvbXBvbmVudCAvPn0+XG4gICAgICAgICAgPExhenlNb2RhbEJsb2NrZWRVc2VyIHVzZXI9e3VzZXJCbG9ja2VkfSBoYW5kbGVBY3Rpb249e2hhbmRsZUFjdGlvbn0gLz5cbiAgICAgICAgPC9TdXNwZW5zZT5cbiAgICAgICl9XG4gICAgICA8TGF5b3V0Qm9keVVzZXI+XG4gICAgICAgIHt1c2Vycz8ubGVuZ3RoID8gKFxuICAgICAgICAgIHVzZXJzLm1hcCgodXNlciwgaW5kZXg6IG51bWJlcikgPT4gKFxuICAgICAgICAgICAgPFJvd0NvbXBvbmVudFxuICAgICAgICAgICAgICBrZXk9e3VzZXIuaWR9XG4gICAgICAgICAgICAgIGlkPXt1c2VyLmlkLnRvU3RyaW5nKCl9XG4gICAgICAgICAgICAgIGhhbmRsZVNlbGVjdE9wdGlvbj17aGFuZGxlU2VsZWN0T3B0aW9ufVxuICAgICAgICAgICAgICB1c2VyPXt1c2VyfVxuICAgICAgICAgICAgICBoYXNFZGl0UG9zaXRpb25zPXtoYXNFZGl0UG9zaXRpb25zfVxuICAgICAgICAgICAgICBoYW5kbGVTZXRVc2Vyc1RvRWRpdFBvc2l0aW9ucz17aGFuZGxlU2V0VXNlcnNUb0VkaXRQb3NpdGlvbnN9XG4gICAgICAgICAgICAgIHVzZXJJbmRleFBvc2l0aW9uVG9FZGl0PXtpbmRleH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKSlcbiAgICAgICAgKSA6IChcbiAgICAgICAgICA8U3VzcGVuc2UgZmFsbGJhY2s9e251bGx9PlxuICAgICAgICAgICAgPExhenlFbXB0eVVzZXJDb21wb25lbnQgLz5cbiAgICAgICAgICA8L1N1c3BlbnNlPlxuICAgICAgICApfVxuICAgICAgPC9MYXlvdXRCb2R5VXNlcj5cbiAgICA8Lz5cbiAgKVxufVxuXG5jb25zdCBCb2R5Q29udGFpbmVyVmlld1Bvc2l0aW9ucyA9ICgpID0+IHtcbiAgcmV0dXJuIG51bGxcbn1cblxuY29uc3QgQm9keUNvbnRhaW5lclZpZXdMZWF2ZXMgPSAoKSA9PiB7XG4gIHJldHVybiBudWxsXG59XG5cbmNvbnN0IEJvZHlDb250YWluZXJCeVZpZXcgPSB7XG4gIHVzZXJzOiBCb2R5Q29udGFpbmVyVmlld1VzZXJzLFxuICB0ZWFtczogTGF6eUJvZHlDb250YWluZXJWaWV3VGVhbXMsXG4gIHBvc2l0aW9uczogQm9keUNvbnRhaW5lclZpZXdQb3NpdGlvbnMsXG4gIGxlYXZlczogQm9keUNvbnRhaW5lclZpZXdMZWF2ZXMsXG59XG5cbmV4cG9ydCBjb25zdCBCb2R5Q29udGFpbmVyID0gbWVtbygoKSA9PiB7XG4gIGNvbnN0IHsgdmlldyB9ID0gdXNlVXNlcnNWaWV3KClcbiAgY29uc3QgQm9keUNvbnRhaW5lclZpZXcgPSBCb2R5Q29udGFpbmVyQnlWaWV3W3ZpZXddXG4gIHJldHVybiAoXG4gICAgPFN1c3BlbnNlIGZhbGxiYWNrPXs8TG9hZGVyQ29tcG9uZW50IC8+fT5cbiAgICAgIDxCb2R5Q29udGFpbmVyVmlldyAvPlxuICAgIDwvU3VzcGVuc2U+XG4gIClcbn0pXG4iXSwibWFwcGluZ3MiOiI7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQSxTQUFTQSxXQUFXLEVBQUVDLElBQUksRUFBRUMsUUFBUSxFQUFFQyxJQUFJLEVBQUVDLFFBQVEsUUFBUSxPQUFPO0FBQ25FLFNBQVNDLFlBQVksUUFBUSw0QkFBNEI7QUFDekQsU0FBU0MscUJBQXFCLEVBQUVDLGFBQWEsRUFBRUMsWUFBWSxRQUFRLDRCQUE0QjtBQUMvRixTQUFTQyxjQUFjLFFBQVEsNEJBQTRCO0FBQzNELFNBQVNDLGVBQWUsUUFBUSwyQ0FBMkM7QUFDM0UsU0FBU0MsY0FBYyxRQUFRLGdDQUFnQztBQUFBLFNBQUFDLEdBQUEsSUFBQUMsSUFBQSxFQUFBQyxRQUFBLElBQUFDLFNBQUEsRUFBQUMsSUFBQSxJQUFBQyxLQUFBO0FBRS9ELElBQU1DLHNCQUFzQixnQkFBR2YsSUFBSSxDQUFDO0VBQUEsT0FDbEMsTUFBTSxDQUFDLHNDQUFzQyxDQUFDLENBQUNnQixJQUFJLENBQUMsVUFBQUMsTUFBTTtJQUFBLE9BQUs7TUFBRSxXQUFTQSxNQUFNLENBQUNDO0lBQW1CLENBQUM7RUFBQSxDQUFDLENBQUM7QUFBQSxDQUN6RyxDQUFDO0FBRUQsSUFBTUMsb0JBQW9CLGdCQUFHbkIsSUFBSSxDQUFDO0VBQUEsT0FDaEMsTUFBTSxDQUFDLG1D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
|
|
@@ -1,15 +1,28 @@
|
|
|
1
1
|
import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
|
|
2
|
-
import { useState, useEffect, useCallback } from 'react';
|
|
2
|
+
import { useState, useEffect, useCallback, lazy, Suspense } from 'react';
|
|
3
3
|
import { TeamRow } from '../../components/Table/TeamRow/TeamRow';
|
|
4
|
-
import { TeamDetailsModal } from '../../components/TeamDetailsModal';
|
|
5
|
-
import { DeleteTeamModal } from '../../components/DeleteTeamModal';
|
|
6
4
|
import { useTeams } from '../../context/TeamsContext';
|
|
5
|
+
import { LoaderComponent } from '../../components/Loading/LoadingComponent';
|
|
7
6
|
import { useCreateTeam } from '../../hooks/useCreateTeams';
|
|
8
7
|
import { useUpdateTeam } from '../../hooks/useUpdateTeam';
|
|
9
8
|
import { useAssignUserToTeam } from '../../hooks/useAssignUserToTeam';
|
|
10
9
|
import { useUnassignUserFromTeam } from '../../hooks/useUnassignUserFromTeam';
|
|
11
10
|
import { useDeleteTeam } from '../../hooks/useDeleteTeam';
|
|
12
11
|
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
12
|
+
var LazyTeamDetailsModal = /*#__PURE__*/lazy(function () {
|
|
13
|
+
return import('../../components/TeamDetailsModal').then(function (module) {
|
|
14
|
+
return {
|
|
15
|
+
"default": module.TeamDetailsModal
|
|
16
|
+
};
|
|
17
|
+
});
|
|
18
|
+
});
|
|
19
|
+
var LazyDeleteTeamModal = /*#__PURE__*/lazy(function () {
|
|
20
|
+
return import('../../components/DeleteTeamModal').then(function (module) {
|
|
21
|
+
return {
|
|
22
|
+
"default": module.DeleteTeamModal
|
|
23
|
+
};
|
|
24
|
+
});
|
|
25
|
+
});
|
|
13
26
|
var mockWorkspacesList = [{
|
|
14
27
|
id: 1,
|
|
15
28
|
name: 'Workspace 1'
|
|
@@ -171,21 +184,27 @@ export var BodyContainerViewTeams = function BodyContainerViewTeams() {
|
|
|
171
184
|
handleEditTeam: handleEditTeamFromMenu,
|
|
172
185
|
handleRemoveUser: handleRemoveUser,
|
|
173
186
|
handleAddUser: handleAddUser
|
|
174
|
-
}), /*#__PURE__*/_jsx(
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
187
|
+
}), isModalOpen && /*#__PURE__*/_jsx(Suspense, {
|
|
188
|
+
fallback: /*#__PURE__*/_jsx(LoaderComponent, {}),
|
|
189
|
+
children: /*#__PURE__*/_jsx(LazyTeamDetailsModal, {
|
|
190
|
+
team: selectedTeam,
|
|
191
|
+
isOpen: isModalOpen,
|
|
192
|
+
onClose: handleCloseModal,
|
|
193
|
+
onEdit: handleEditTeam,
|
|
194
|
+
onCreate: handleCreateTeamSubmit,
|
|
195
|
+
mode: modalMode,
|
|
196
|
+
workspacesList: mockWorkspacesList,
|
|
197
|
+
membersList: mockMembersList
|
|
198
|
+
})
|
|
199
|
+
}), isDeleteModalOpen && /*#__PURE__*/_jsx(Suspense, {
|
|
200
|
+
fallback: /*#__PURE__*/_jsx(LoaderComponent, {}),
|
|
201
|
+
children: /*#__PURE__*/_jsx(LazyDeleteTeamModal, {
|
|
202
|
+
team: teamToDelete,
|
|
203
|
+
isOpen: isDeleteModalOpen,
|
|
204
|
+
onClose: handleCloseDeleteModal,
|
|
205
|
+
onConfirm: handleConfirmDelete
|
|
206
|
+
})
|
|
188
207
|
})]
|
|
189
208
|
});
|
|
190
209
|
};
|
|
191
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ1c2VTdGF0ZSIsInVzZUVmZmVjdCIsInVzZUNhbGxiYWNrIiwiVGVhbVJvdyIsIlRlYW1EZXRhaWxzTW9kYWwiLCJEZWxldGVUZWFtTW9kYWwiLCJ1c2VUZWFtcyIsInVzZUNyZWF0ZVRlYW0iLCJ1c2VVcGRhdGVUZWFtIiwidXNlQXNzaWduVXNlclRvVGVhbSIsInVzZVVuYXNzaWduVXNlckZyb21UZWFtIiwidXNlRGVsZXRlVGVhbSIsImpzeCIsIl9qc3giLCJGcmFnbWVudCIsIl9GcmFnbWVudCIsImpzeHMiLCJfanN4cyIsIm1vY2tXb3Jrc3BhY2VzTGlzdCIsImlkIiwibmFtZSIsIm1vY2tNZW1iZXJzTGlzdCIsImZpcnN0TmFtZSIsImxhc3ROYW1lIiwiQm9keUNvbnRhaW5lclZpZXdUZWFtcyIsIl91c2VUZWFtcyIsInRlYW1zIiwiX3VzZUNyZWF0ZVRlYW0iLCJmZXRjaENyZWF0ZVRlYW0iLCJfdXNlVXBkYXRlVGVhbSIsInVwZGF0ZVRlYW0iLCJfdXNlQXNzaWduVXNlclRvVGVhbSIsImFzc2lnblVzZXJUb1RlYW0iLCJfdXNlVW5hc3NpZ25Vc2VyRnJvbVQiLCJ1bmFzc2lnblVzZXJGcm9tVGVhbSIsIl91c2VEZWxldGVUZWFtIiwiZGVsZXRlVGVhbSIsIl91c2VTdGF0ZSIsIl91c2VTdGF0ZTIiLCJfc2xpY2VkVG9BcnJheSIsInNlbGVjdGVkVGVhbSIsInNldFNlbGVjdGVkVGVhbSIsIl91c2VTdGF0ZTMiLCJfdXNlU3RhdGU0IiwiaXNNb2RhbE9wZW4iLCJzZXRJc01vZGFsT3BlbiIsIl91c2VTdGF0ZTUiLCJfdXNlU3RhdGU2IiwibW9kYWxNb2RlIiwic2V0TW9kYWxNb2RlIiwiX3VzZVN0YXRlNyIsIl91c2VTdGF0ZTgiLCJ0ZWFtVG9EZWxldGUiLCJzZXRUZWFtVG9EZWxldGUiLCJfdXNlU3RhdGU5IiwiX3VzZVN0YXRlMCIsImlzRGVsZXRlTW9kYWxPcGVuIiwic2V0SXNEZWxldGVNb2RhbE9wZW4iLCJoYW5kbGVTaG93VGVhbURldGFpbHMiLCJ0ZWFtSWQiLCJ0ZWFtIiwiZmluZCIsInQiLCJoYW5kbGVDcmVhdGVUZWFtIiwiaGFuZGxlQ3JlYXRlVGVhbUV2ZW50Iiwid2luZG93IiwiYWRkRXZlbnRMaXN0ZW5lciIsInJlbW92ZUV2ZW50TGlzdGVuZXIiLCJoYW5kbGVDbG9zZU1vZGFsIiwiaGFuZGxlRWRpdFRlYW0iLCJmb3JtRGF0YSIsImZpZWxkcyIsImRlc2NyaXB0aW9uIiwiaGFzV29ya3NwYWNlc0ZlYXR1cmUiLCJ3b3Jrc3BhY2UiLCJ3b3Jrc3BhY2VJZCIsImhhbmRsZUNyZWF0ZVRlYW1TdWJtaXQiLCJoYW5kbGVFZGl0VGVhbUZyb21NZW51IiwiaGFuZGxlRGVsZXRlVGVhbSIsImhhbmRsZUNsb3NlRGVsZXRlTW9kYWwiLCJoYW5kbGVDb25maXJtRGVsZXRlIiwiZGVsZXRlRnJvbVByb2plY3RzIiwiaGFuZGxlQWRkVXNlciIsInVzZXJJZCIsImdpdmVBY2Nlc3NUb0FsbFByb2plY3RzIiwic2V0VXNlclRlYW1Qcm9qZWN0IiwiaGFuZGxlUmVtb3ZlVXNlciIsImNoaWxkcmVuIiwiaXNPcGVuIiwib25DbG9zZSIsIm9uRWRpdCIsIm9uQ3JlYXRlIiwibW9kZSIsIndvcmtzcGFjZXNMaXN0IiwibWVtYmVyc0xpc3QiLCJvbkNvbmZpcm0iXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29udGFpbmVyL0JvZHkvQm9keUNvbnRhaW5lclZpZXdUZWFtcy50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdXNlU3RhdGUsIHVzZUVmZmVjdCwgdXNlQ2FsbGJhY2sgfSBmcm9tICdyZWFjdCdcbmltcG9ydCB7IFRlYW1Sb3cgfSBmcm9tICcuLi8uLi9jb21wb25lbnRzL1RhYmxlL1RlYW1Sb3cvVGVhbVJvdydcbmltcG9ydCB7IFRlYW1EZXRhaWxzTW9kYWwsIFRlYW0sIEZvcm1EYXRhIH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cy9UZWFtRGV0YWlsc01vZGFsJ1xuaW1wb3J0IHsgRGVsZXRlVGVhbU1vZGFsIH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cy9EZWxldGVUZWFtTW9kYWwnXG5pbXBvcnQgeyB1c2VUZWFtcyB9IGZyb20gJy4uLy4uL2NvbnRleHQvVGVhbXNDb250ZXh0J1xuaW1wb3J0IHsgdXNlQ3JlYXRlVGVhbSB9IGZyb20gJy4uLy4uL2hvb2tzL3VzZUNyZWF0ZVRlYW1zJ1xuaW1wb3J0IHsgdXNlVXBkYXRlVGVhbSB9IGZyb20gJy4uLy4uL2hvb2tzL3VzZVVwZGF0ZVRlYW0nXG5pbXBvcnQgeyB1c2VBc3NpZ25Vc2VyVG9UZWFtIH0gZnJvbSAnLi4vLi4vaG9va3MvdXNlQXNzaWduVXNlclRvVGVhbSdcbmltcG9ydCB7IHVzZVVuYXNzaWduVXNlckZyb21UZWFtIH0gZnJvbSAnLi4vLi4vaG9va3MvdXNlVW5hc3NpZ25Vc2VyRnJvbVRlYW0nXG5pbXBvcnQgeyB1c2VEZWxldGVUZWFtIH0gZnJvbSAnLi4vLi4vaG9va3MvdXNlRGVsZXRlVGVhbSdcblxuY29uc3QgbW9ja1dvcmtzcGFjZXNMaXN0ID0gW1xuICB7IGlkOiAxLCBuYW1lOiAnV29ya3NwYWNlIDEnIH0sXG4gIHsgaWQ6IDIsIG5hbWU6ICdXb3Jrc3BhY2UgMicgfSxcbiAgeyBpZDogMywgbmFtZTogJ1dvcmtzcGFjZSAzJyB9LFxuXVxuXG5jb25zdCBtb2NrTWVtYmVyc0xpc3QgPSBbXG4gIHsgaWQ6IDEsIGZpcnN0TmFtZTogJ1VzZXIgMScsIGxhc3ROYW1lOiAnQXBlbGxpZG8gMScgfSxcbiAgeyBpZDogMiwgZmlyc3ROYW1lOiAnVXNlciAyJywgbGFzdE5hbWU6ICdBcGVsbGlkbyAyJyB9LFxuICB7IGlkOiAzLCBmaXJzdE5hbWU6ICdVc2VyIDMnLCBsYXN0TmFtZTogJ0FwZWxsaWRvIDMnIH0sXG5dXG5cbmV4cG9ydCBjb25zdCBCb2R5Q29udGFpbmVyVmlld1RlYW1zID0gKCkgPT4ge1xuICBjb25zdCB7IHRlYW1zIH0gPSB1c2VUZWFtcygpXG4gIGNvbnN0IHsgZmV0Y2hDcmVhdGVUZWFtIH0gPSB1c2VDcmVhdGVUZWFtKClcbiAgY29uc3QgeyB1cGRhdGVUZWFtIH0gPSB1c2VVcGRhdGVUZWFtKClcbiAgY29uc3QgeyBhc3NpZ25Vc2VyVG9UZWFtIH0gPSB1c2VBc3NpZ25Vc2VyVG9UZWFtKClcbiAgY29uc3QgeyB1bmFzc2lnblVzZXJGcm9tVGVhbSB9ID0gdXNlVW5hc3NpZ25Vc2VyRnJvbVRlYW0oKVxuICBjb25zdCB7IGRlbGV0ZVRlYW0gfSA9IHVzZURlbGV0ZVRlYW0oKVxuICBjb25zdCBbc2VsZWN0ZWRUZWFtLCBzZXRTZWxlY3RlZFRlYW1dID0gdXNlU3RhdGU8VGVhbSB8IG51bGw+KG51bGwpXG4gIGNvbnN0IFtpc01vZGFsT3Blbiwgc2V0SXNNb2RhbE9wZW5dID0gdXNlU3RhdGUoZmFsc2UpXG4gIGNvbnN0IFttb2RhbE1vZGUsIHNldE1vZGFsTW9kZV0gPSB1c2VTdGF0ZTwndmlldycgfCAnZWRpdCcgfCAnY3JlYXRlJz4oJ3ZpZXcnKVxuICBjb25zdCBbdGVhbVRvRGVsZXRlLCBzZXRUZWFtVG9EZWxldGVdID0gdXNlU3RhdGU8VGVhbSB8IG51bGw+KG51bGwpXG4gIGNvbnN0IFtpc0RlbGV0ZU1vZGFsT3Blbiwgc2V0SXNEZWxldGVNb2RhbE9wZW5dID0gdXNlU3RhdGUoZmFsc2UpXG5cbiAgY29uc3QgaGFuZGxlU2hvd1RlYW1EZXRhaWxzID0gKHRlYW1JZDogbnVtYmVyKSA9PiB7XG4gICAgY29uc3QgdGVhbSA9IHRlYW1zLmZpbmQodCA9PiB0LmlkID09PSB0ZWFtSWQpXG4gICAgaWYgKHRlYW0pIHtcbiAgICAgIHNldFNlbGVjdGVkVGVhbSh0ZWFtKVxuICAgICAgc2V0TW9kYWxNb2RlKCd2aWV3JylcbiAgICAgIHNldElzTW9kYWxPcGVuKHRydWUpXG4gICAgfVxuICB9XG5cbiAgY29uc3QgaGFuZGxlQ3JlYXRlVGVhbSA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBzZXRTZWxlY3RlZFRlYW0obnVsbClcbiAgICBzZXRNb2RhbE1vZGUoJ2NyZWF0ZScpXG4gICAgc2V0SXNNb2RhbE9wZW4odHJ1ZSlcbiAgfSwgW10pXG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBjb25zdCBoYW5kbGVDcmVhdGVUZWFtRXZlbnQgPSAoKSA9PiB7XG4gICAgICBoYW5kbGVDcmVhdGVUZWFtKClcbiAgICB9XG5cbiAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignY3JlYXRlVGVhbScsIGhhbmRsZUNyZWF0ZVRlYW1FdmVudClcblxuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcignY3JlYXRlVGVhbScsIGhhbmRsZUNyZWF0ZVRlYW1FdmVudClcbiAgICB9XG4gIH0sIFtoYW5kbGVDcmVhdGVUZWFtXSlcblxuICBjb25zdCBoYW5kbGVDbG9zZU1vZGFsID0gKCkgPT4ge1xuICAgIHNldElzTW9kYWxPcGVuKGZhbHNlKVxuICAgIHNldFNlbGVjdGVkVGVhbShudWxsKVxuICAgIHNldE1vZGFsTW9kZSgndmlldycpXG4gIH1cblxuICBjb25zdCBoYW5kbGVFZGl0VGVhbSA9IChmb3JtRGF0YTogRm9ybURhdGEpID0+IHtcbiAgICBpZiAoIXNlbGVjdGVkVGVhbSkgcmV0dXJuXG5cbiAgICBjb25zdCBmaWVsZHM6IHtcbiAgICAgIGlkOiBudW1iZXJcbiAgICAgIG5hbWU6IHN0cmluZ1xuICAgICAgZGVzY3JpcHRpb246IHN0cmluZ1xuICAgICAgd29ya3NwYWNlSWQ/OiBudW1iZXJcbiAgICB9ID0ge1xuICAgICAgaWQ6ICtzZWxlY3RlZFRlYW0uaWQsXG4gICAgICBuYW1lOiBmb3JtRGF0YS5uYW1lLFxuICAgICAgZGVzY3JpcHRpb246IGZvcm1EYXRhLmRlc2NyaXB0aW9uLFxuICAgIH1cblxuICAgIGlmICh3aW5kb3cuaGFzV29ya3NwYWNlc0ZlYXR1cmUgJiYgZm9ybURhdGEud29ya3NwYWNlKSB7XG4gICAgICBmaWVsZHMud29ya3NwYWNlSWQgPSBmb3JtRGF0YS53b3Jrc3BhY2UuaWRcbiAgICB9XG5cbiAgICB1cGRhdGVUZWFtKGZpZWxkcylcbiAgICBoYW5kbGVDbG9zZU1vZGFsKClcbiAgfVxuXG4gIGNvbnN0IGhhbmRsZUNyZWF0ZVRlYW1TdWJtaXQgPSAoZm9ybURhdGE6IEZvcm1EYXRhKSA9PiB7XG4gICAgY29uc3QgZmllbGRzOiB7XG4gICAgICBuYW1lOiBzdHJpbmdcbiAgICAgIGRlc2NyaXB0aW9uOiBzdHJpbmdcbiAgICAgIHdvcmtzcGFjZUlkPzogbnVtYmVyXG4gICAgfSA9IHtcbiAgICAgIG5hbWU6IGZvcm1EYXRhLm5hbWUsXG4gICAgICAvLyB1c2VyczogZm9ybURhdGEubWVtYmVycy5tYXAobWVtYmVyID0+IG1lbWJlci5pZCksIFRPRE86IFZhIGVuIGxhIHNlZ3VuZGEgdmVyc2lvblxuICAgICAgZGVzY3JpcHRpb246IGZvcm1EYXRhLmRlc2NyaXB0aW9uLFxuICAgIH1cblxuICAgIGlmICh3aW5kb3cuaGFzV29ya3NwYWNlc0ZlYXR1cmUgJiYgZm9ybURhdGEud29ya3NwYWNlKSB7XG4gICAgICBmaWVsZHMud29ya3NwYWNlSWQgPSBmb3JtRGF0YS53b3Jrc3BhY2UuaWRcbiAgICB9XG4gICAgZmV0Y2hDcmVhdGVUZWFtKGZpZWxkcylcbiAgICBoYW5kbGVDbG9zZU1vZGFsKClcbiAgfVxuXG4gIGNvbnN0IGhhbmRsZUVkaXRUZWFtRnJvbU1lbnUgPSAodGVhbUlkOiBudW1iZXIpID0+IHtcbiAgICBjb25zdCB0ZWFtID0gdGVhbXMuZmluZCh0ID0+IHQuaWQgPT09IHRlYW1JZClcbiAgICBpZiAodGVhbSkge1xuICAgICAgc2V0U2VsZWN0ZWRUZWFtKHRlYW0pXG4gICAgICBzZXRNb2RhbE1vZGUoJ2VkaXQnKVxuICAgICAgc2V0SXNNb2RhbE9wZW4odHJ1ZSlcbiAgICB9XG4gIH1cblxuICBjb25zdCBoYW5kbGVEZWxldGVUZWFtID0gKHRlYW1JZDogbnVtYmVyKSA9PiB7XG4gICAgY29uc3QgdGVhbSA9IHRlYW1zLmZpbmQodCA9PiB0LmlkID09PSB0ZWFtSWQpXG4gICAgaWYgKHRlYW0pIHtcbiAgICAgIHNldFRlYW1Ub0RlbGV0ZSh0ZWFtKVxuICAgICAgc2V0SXNEZWxldGVNb2RhbE9wZW4odHJ1ZSlcbiAgICB9XG4gIH1cblxuICBjb25zdCBoYW5kbGVDbG9zZURlbGV0ZU1vZGFsID0gKCkgPT4ge1xuICAgIHNldElzRGVsZXRlTW9kYWxPcGVuKGZhbHNlKVxuICAgIHNldFRlYW1Ub0RlbGV0ZShudWxsKVxuICB9XG5cbiAgY29uc3QgaGFuZGxlQ29uZmlybURlbGV0ZSA9IChkZWxldGVGcm9tUHJvamVjdHM6IGJvb2xlYW4pID0+IHtcbiAgICBpZiAodGVhbVRvRGVsZXRlKSB7XG4gICAgICBkZWxldGVUZWFtKHRlYW1Ub0RlbGV0ZS5pZCwgZGVsZXRlRnJvbVByb2plY3RzKVxuICAgIH1cbiAgICBoYW5kbGVDbG9zZURlbGV0ZU1vZGFsKClcbiAgfVxuXG4gIGNvbnN0IGhhbmRsZUFkZFVzZXIgPSAodGVhbUlkOiBudW1iZXIsIHVzZXJJZDogbnVtYmVyLCBnaXZlQWNjZXNzVG9BbGxQcm9qZWN0czogYm9vbGVhbikgPT4ge1xuICAgIGFzc2lnblVzZXJUb1RlYW0oe1xuICAgICAgc2V0VXNlclRlYW1Qcm9qZWN0OiBnaXZlQWNjZXNzVG9BbGxQcm9qZWN0cyxcbiAgICAgIHVzZXJJZCxcbiAgICAgIHRlYW1JZCxcbiAgICB9KVxuICB9XG5cbiAgY29uc3QgaGFuZGxlUmVtb3ZlVXNlciA9ICh0ZWFtSWQ6IG51bWJlciwgdXNlcklkOiBudW1iZXIsIGRlbGV0ZUZyb21Qcm9qZWN0czogYm9vbGVhbikgPT4ge1xuICAgIHVuYXNzaWduVXNlckZyb21UZWFtKHtcbiAgICAgIGRlbGV0ZUZyb21Qcm9qZWN0cyxcbiAgICAgIHVzZXJJZCxcbiAgICAgIHRlYW1JZCxcbiAgICB9KVxuICB9XG5cbiAgcmV0dXJuIChcbiAgICA8PlxuICAgICAgPFRlYW1Sb3dcbiAgICAgICAgdGVhbXM9e3RlYW1zfVxuICAgICAgICBoYW5kbGVTaG93VGVhbURldGFpbHM9e2hhbmRsZVNob3dUZWFtRGV0YWlsc31cbiAgICAgICAgaGFuZGxlRGVsZXRlVGVhbT17aGFuZGxlRGVsZXRlVGVhbX1cbiAgICAgICAgaGFuZGxlRWRpdFRlYW09e2hhbmRsZUVkaXRUZWFtRnJvbU1lbnV9XG4gICAgICAgIGhhbmRsZVJlbW92ZVVzZXI9e2hhbmRsZVJlbW92ZVVzZXJ9XG4gICAgICAgIGhhbmRsZUFkZFVzZXI9e2hhbmRsZUFkZFVzZXJ9XG4gICAgICAvPlxuICAgICAgPFRlYW1EZXRhaWxzTW9kYWxcbiAgICAgICAgdGVhbT17c2VsZWN0ZWRUZWFtfVxuICAgICAgICBpc09wZW49e2lzTW9kYWxPcGVufVxuICAgICAgICBvbkNsb3NlPXtoYW5kbGVDbG9zZU1vZGFsfVxuICAgICAgICBvbkVkaXQ9e2hhbmRsZUVkaXRUZWFtfVxuICAgICAgICBvbkNyZWF0ZT17aGFuZGxlQ3JlYXRlVGVhbVN1Ym1pdH1cbiAgICAgICAgbW9kZT17bW9kYWxNb2RlfVxuICAgICAgICB3b3Jrc3BhY2VzTGlzdD17bW9ja1dvcmtzcGFjZXNMaXN0fVxuICAgICAgICBtZW1iZXJzTGlzdD17bW9ja01lbWJlcnNMaXN0fVxuICAgICAgLz5cbiAgICAgIDxEZWxldGVUZWFtTW9kYWxcbiAgICAgICAgdGVhbT17dGVhbVRvRGVsZXRlfVxuICAgICAgICBpc09wZW49e2lzRGVsZXRlTW9kYWxPcGVufVxuICAgICAgICBvbkNsb3NlPXtoYW5kbGVDbG9zZURlbGV0ZU1vZGFsfVxuICAgICAgICBvbkNvbmZpcm09e2hhbmRsZUNvbmZpcm1EZWxldGV9XG4gICAgICAvPlxuICAgIDwvPlxuICApXG59XG4iXSwibWFwcGluZ3MiOiI7QUFBQSxTQUFTQSxRQUFRLEVBQUVDLFNBQVMsRUFBRUMsV0FBVyxRQUFRLE9BQU87QUFDeEQsU0FBU0MsT0FBTyxRQUFRLHdDQUF3QztBQUNoRSxTQUFTQyxnQkFBZ0IsUUFBd0IsbUNBQW1DO0FBQ3BGLFNBQVNDLGVBQWUsUUFBUSxrQ0FBa0M7QUFDbEUsU0FBU0MsUUFBUSxRQUFRLDRCQUE0QjtBQUNyRCxTQUFTQyxhQUFhLFFBQVEsNEJBQTRCO0FB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
|
|
210
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ1c2VTdGF0ZSIsInVzZUVmZmVjdCIsInVzZUNhbGxiYWNrIiwibGF6eSIsIlN1c3BlbnNlIiwiVGVhbVJvdyIsInVzZVRlYW1zIiwiTG9hZGVyQ29tcG9uZW50IiwidXNlQ3JlYXRlVGVhbSIsInVzZVVwZGF0ZVRlYW0iLCJ1c2VBc3NpZ25Vc2VyVG9UZWFtIiwidXNlVW5hc3NpZ25Vc2VyRnJvbVRlYW0iLCJ1c2VEZWxldGVUZWFtIiwianN4IiwiX2pzeCIsIkZyYWdtZW50IiwiX0ZyYWdtZW50IiwianN4cyIsIl9qc3hzIiwiTGF6eVRlYW1EZXRhaWxzTW9kYWwiLCJ0aGVuIiwibW9kdWxlIiwiVGVhbURldGFpbHNNb2RhbCIsIkxhenlEZWxldGVUZWFtTW9kYWwiLCJEZWxldGVUZWFtTW9kYWwiLCJtb2NrV29ya3NwYWNlc0xpc3QiLCJpZCIsIm5hbWUiLCJtb2NrTWVtYmVyc0xpc3QiLCJmaXJzdE5hbWUiLCJsYXN0TmFtZSIsIkJvZHlDb250YWluZXJWaWV3VGVhbXMiLCJfdXNlVGVhbXMiLCJ0ZWFtcyIsIl91c2VDcmVhdGVUZWFtIiwiZmV0Y2hDcmVhdGVUZWFtIiwiX3VzZVVwZGF0ZVRlYW0iLCJ1cGRhdGVUZWFtIiwiX3VzZUFzc2lnblVzZXJUb1RlYW0iLCJhc3NpZ25Vc2VyVG9UZWFtIiwiX3VzZVVuYXNzaWduVXNlckZyb21UIiwidW5hc3NpZ25Vc2VyRnJvbVRlYW0iLCJfdXNlRGVsZXRlVGVhbSIsImRlbGV0ZVRlYW0iLCJfdXNlU3RhdGUiLCJfdXNlU3RhdGUyIiwiX3NsaWNlZFRvQXJyYXkiLCJzZWxlY3RlZFRlYW0iLCJzZXRTZWxlY3RlZFRlYW0iLCJfdXNlU3RhdGUzIiwiX3VzZVN0YXRlNCIsImlzTW9kYWxPcGVuIiwic2V0SXNNb2RhbE9wZW4iLCJfdXNlU3RhdGU1IiwiX3VzZVN0YXRlNiIsIm1vZGFsTW9kZSIsInNldE1vZGFsTW9kZSIsIl91c2VTdGF0ZTciLCJfdXNlU3RhdGU4IiwidGVhbVRvRGVsZXRlIiwic2V0VGVhbVRvRGVsZXRlIiwiX3VzZVN0YXRlOSIsIl91c2VTdGF0ZTAiLCJpc0RlbGV0ZU1vZGFsT3BlbiIsInNldElzRGVsZXRlTW9kYWxPcGVuIiwiaGFuZGxlU2hvd1RlYW1EZXRhaWxzIiwidGVhbUlkIiwidGVhbSIsImZpbmQiLCJ0IiwiaGFuZGxlQ3JlYXRlVGVhbSIsImhhbmRsZUNyZWF0ZVRlYW1FdmVudCIsIndpbmRvdyIsImFkZEV2ZW50TGlzdGVuZXIiLCJyZW1vdmVFdmVudExpc3RlbmVyIiwiaGFuZGxlQ2xvc2VNb2RhbCIsImhhbmRsZUVkaXRUZWFtIiwiZm9ybURhdGEiLCJmaWVsZHMiLCJkZXNjcmlwdGlvbiIsImhhc1dvcmtzcGFjZXNGZWF0dXJlIiwid29ya3NwYWNlIiwid29ya3NwYWNlSWQiLCJoYW5kbGVDcmVhdGVUZWFtU3VibWl0IiwiaGFuZGxlRWRpdFRlYW1Gcm9tTWVudSIsImhhbmRsZURlbGV0ZVRlYW0iLCJoYW5kbGVDbG9zZURlbGV0ZU1vZGFsIiwiaGFuZGxlQ29uZmlybURlbGV0ZSIsImRlbGV0ZUZyb21Qcm9qZWN0cyIsImhhbmRsZUFkZFVzZXIiLCJ1c2VySWQiLCJnaXZlQWNjZXNzVG9BbGxQcm9qZWN0cyIsInNldFVzZXJUZWFtUHJvamVjdCIsImhhbmRsZVJlbW92ZVVzZXIiLCJjaGlsZHJlbiIsImZhbGxiYWNrIiwiaXNPcGVuIiwib25DbG9zZSIsIm9uRWRpdCIsIm9uQ3JlYXRlIiwibW9kZSIsIndvcmtzcGFjZXNMaXN0IiwibWVtYmVyc0xpc3QiLCJvbkNvbmZpcm0iXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29udGFpbmVyL0JvZHkvQm9keUNvbnRhaW5lclZpZXdUZWFtcy50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdXNlU3RhdGUsIHVzZUVmZmVjdCwgdXNlQ2FsbGJhY2ssIGxhenksIFN1c3BlbnNlIH0gZnJvbSAncmVhY3QnXG5pbXBvcnQgeyBUZWFtUm93IH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cy9UYWJsZS9UZWFtUm93L1RlYW1Sb3cnXG5pbXBvcnQgdHlwZSB7IFRlYW0sIEZvcm1EYXRhIH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cy9UZWFtRGV0YWlsc01vZGFsJ1xuaW1wb3J0IHsgdXNlVGVhbXMgfSBmcm9tICcuLi8uLi9jb250ZXh0L1RlYW1zQ29udGV4dCdcbmltcG9ydCB7IExvYWRlckNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMvTG9hZGluZy9Mb2FkaW5nQ29tcG9uZW50J1xuaW1wb3J0IHsgdXNlQ3JlYXRlVGVhbSB9IGZyb20gJy4uLy4uL2hvb2tzL3VzZUNyZWF0ZVRlYW1zJ1xuaW1wb3J0IHsgdXNlVXBkYXRlVGVhbSB9IGZyb20gJy4uLy4uL2hvb2tzL3VzZVVwZGF0ZVRlYW0nXG5pbXBvcnQgeyB1c2VBc3NpZ25Vc2VyVG9UZWFtIH0gZnJvbSAnLi4vLi4vaG9va3MvdXNlQXNzaWduVXNlclRvVGVhbSdcbmltcG9ydCB7IHVzZVVuYXNzaWduVXNlckZyb21UZWFtIH0gZnJvbSAnLi4vLi4vaG9va3MvdXNlVW5hc3NpZ25Vc2VyRnJvbVRlYW0nXG5pbXBvcnQgeyB1c2VEZWxldGVUZWFtIH0gZnJvbSAnLi4vLi4vaG9va3MvdXNlRGVsZXRlVGVhbSdcblxuY29uc3QgTGF6eVRlYW1EZXRhaWxzTW9kYWwgPSBsYXp5KCgpID0+XG4gIGltcG9ydCgnLi4vLi4vY29tcG9uZW50cy9UZWFtRGV0YWlsc01vZGFsJykudGhlbihtb2R1bGUgPT4gKHsgZGVmYXVsdDogbW9kdWxlLlRlYW1EZXRhaWxzTW9kYWwgfSkpXG4pXG5cbmNvbnN0IExhenlEZWxldGVUZWFtTW9kYWwgPSBsYXp5KCgpID0+XG4gIGltcG9ydCgnLi4vLi4vY29tcG9uZW50cy9EZWxldGVUZWFtTW9kYWwnKS50aGVuKG1vZHVsZSA9PiAoeyBkZWZhdWx0OiBtb2R1bGUuRGVsZXRlVGVhbU1vZGFsIH0pKVxuKVxuXG5jb25zdCBtb2NrV29ya3NwYWNlc0xpc3QgPSBbXG4gIHsgaWQ6IDEsIG5hbWU6ICdXb3Jrc3BhY2UgMScgfSxcbiAgeyBpZDogMiwgbmFtZTogJ1dvcmtzcGFjZSAyJyB9LFxuICB7IGlkOiAzLCBuYW1lOiAnV29ya3NwYWNlIDMnIH0sXG5dXG5cbmNvbnN0IG1vY2tNZW1iZXJzTGlzdCA9IFtcbiAgeyBpZDogMSwgZmlyc3ROYW1lOiAnVXNlciAxJywgbGFzdE5hbWU6ICdBcGVsbGlkbyAxJyB9LFxuICB7IGlkOiAyLCBmaXJzdE5hbWU6ICdVc2VyIDInLCBsYXN0TmFtZTogJ0FwZWxsaWRvIDInIH0sXG4gIHsgaWQ6IDMsIGZpcnN0TmFtZTogJ1VzZXIgMycsIGxhc3ROYW1lOiAnQXBlbGxpZG8gMycgfSxcbl1cblxuZXhwb3J0IGNvbnN0IEJvZHlDb250YWluZXJWaWV3VGVhbXMgPSAoKSA9PiB7XG4gIGNvbnN0IHsgdGVhbXMgfSA9IHVzZVRlYW1zKClcbiAgY29uc3QgeyBmZXRjaENyZWF0ZVRlYW0gfSA9IHVzZUNyZWF0ZVRlYW0oKVxuICBjb25zdCB7IHVwZGF0ZVRlYW0gfSA9IHVzZVVwZGF0ZVRlYW0oKVxuICBjb25zdCB7IGFzc2lnblVzZXJUb1RlYW0gfSA9IHVzZUFzc2lnblVzZXJUb1RlYW0oKVxuICBjb25zdCB7IHVuYXNzaWduVXNlckZyb21UZWFtIH0gPSB1c2VVbmFzc2lnblVzZXJGcm9tVGVhbSgpXG4gIGNvbnN0IHsgZGVsZXRlVGVhbSB9ID0gdXNlRGVsZXRlVGVhbSgpXG4gIGNvbnN0IFtzZWxlY3RlZFRlYW0sIHNldFNlbGVjdGVkVGVhbV0gPSB1c2VTdGF0ZTxUZWFtIHwgbnVsbD4obnVsbClcbiAgY29uc3QgW2lzTW9kYWxPcGVuLCBzZXRJc01vZGFsT3Blbl0gPSB1c2VTdGF0ZShmYWxzZSlcbiAgY29uc3QgW21vZGFsTW9kZSwgc2V0TW9kYWxNb2RlXSA9IHVzZVN0YXRlPCd2aWV3JyB8ICdlZGl0JyB8ICdjcmVhdGUnPigndmlldycpXG4gIGNvbnN0IFt0ZWFtVG9EZWxldGUsIHNldFRlYW1Ub0RlbGV0ZV0gPSB1c2VTdGF0ZTxUZWFtIHwgbnVsbD4obnVsbClcbiAgY29uc3QgW2lzRGVsZXRlTW9kYWxPcGVuLCBzZXRJc0RlbGV0ZU1vZGFsT3Blbl0gPSB1c2VTdGF0ZShmYWxzZSlcblxuICBjb25zdCBoYW5kbGVTaG93VGVhbURldGFpbHMgPSAodGVhbUlkOiBudW1iZXIpID0+IHtcbiAgICBjb25zdCB0ZWFtID0gdGVhbXMuZmluZCh0ID0+IHQuaWQgPT09IHRlYW1JZClcbiAgICBpZiAodGVhbSkge1xuICAgICAgc2V0U2VsZWN0ZWRUZWFtKHRlYW0pXG4gICAgICBzZXRNb2RhbE1vZGUoJ3ZpZXcnKVxuICAgICAgc2V0SXNNb2RhbE9wZW4odHJ1ZSlcbiAgICB9XG4gIH1cblxuICBjb25zdCBoYW5kbGVDcmVhdGVUZWFtID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIHNldFNlbGVjdGVkVGVhbShudWxsKVxuICAgIHNldE1vZGFsTW9kZSgnY3JlYXRlJylcbiAgICBzZXRJc01vZGFsT3Blbih0cnVlKVxuICB9LCBbXSlcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGNvbnN0IGhhbmRsZUNyZWF0ZVRlYW1FdmVudCA9ICgpID0+IHtcbiAgICAgIGhhbmRsZUNyZWF0ZVRlYW0oKVxuICAgIH1cblxuICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdjcmVhdGVUZWFtJywgaGFuZGxlQ3JlYXRlVGVhbUV2ZW50KVxuXG4gICAgcmV0dXJuICgpID0+IHtcbiAgICAgIHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCdjcmVhdGVUZWFtJywgaGFuZGxlQ3JlYXRlVGVhbUV2ZW50KVxuICAgIH1cbiAgfSwgW2hhbmRsZUNyZWF0ZVRlYW1dKVxuXG4gIGNvbnN0IGhhbmRsZUNsb3NlTW9kYWwgPSAoKSA9PiB7XG4gICAgc2V0SXNNb2RhbE9wZW4oZmFsc2UpXG4gICAgc2V0U2VsZWN0ZWRUZWFtKG51bGwpXG4gICAgc2V0TW9kYWxNb2RlKCd2aWV3JylcbiAgfVxuXG4gIGNvbnN0IGhhbmRsZUVkaXRUZWFtID0gKGZvcm1EYXRhOiBGb3JtRGF0YSkgPT4ge1xuICAgIGlmICghc2VsZWN0ZWRUZWFtKSByZXR1cm5cblxuICAgIGNvbnN0IGZpZWxkczoge1xuICAgICAgaWQ6IG51bWJlclxuICAgICAgbmFtZTogc3RyaW5nXG4gICAgICBkZXNjcmlwdGlvbjogc3RyaW5nXG4gICAgICB3b3Jrc3BhY2VJZD86IG51bWJlclxuICAgIH0gPSB7XG4gICAgICBpZDogK3NlbGVjdGVkVGVhbS5pZCxcbiAgICAgIG5hbWU6IGZvcm1EYXRhLm5hbWUsXG4gICAgICBkZXNjcmlwdGlvbjogZm9ybURhdGEuZGVzY3JpcHRpb24sXG4gICAgfVxuXG4gICAgaWYgKHdpbmRvdy5oYXNXb3Jrc3BhY2VzRmVhdHVyZSAmJiBmb3JtRGF0YS53b3Jrc3BhY2UpIHtcbiAgICAgIGZpZWxkcy53b3Jrc3BhY2VJZCA9IGZvcm1EYXRhLndvcmtzcGFjZS5pZFxuICAgIH1cblxuICAgIHVwZGF0ZVRlYW0oZmllbGRzKVxuICAgIGhhbmRsZUNsb3NlTW9kYWwoKVxuICB9XG5cbiAgY29uc3QgaGFuZGxlQ3JlYXRlVGVhbVN1Ym1pdCA9IChmb3JtRGF0YTogRm9ybURhdGEpID0+IHtcbiAgICBjb25zdCBmaWVsZHM6IHtcbiAgICAgIG5hbWU6IHN0cmluZ1xuICAgICAgZGVzY3JpcHRpb246IHN0cmluZ1xuICAgICAgd29ya3NwYWNlSWQ/OiBudW1iZXJcbiAgICB9ID0ge1xuICAgICAgbmFtZTogZm9ybURhdGEubmFtZSxcbiAgICAgIC8vIHVzZXJzOiBmb3JtRGF0YS5tZW1iZXJzLm1hcChtZW1iZXIgPT4gbWVtYmVyLmlkKSwgVE9ETzogVmEgZW4gbGEgc2VndW5kYSB2ZXJzaW9uXG4gICAgICBkZXNjcmlwdGlvbjogZm9ybURhdGEuZGVzY3JpcHRpb24sXG4gICAgfVxuXG4gICAgaWYgKHdpbmRvdy5oYXNXb3Jrc3BhY2VzRmVhdHVyZSAmJiBmb3JtRGF0YS53b3Jrc3BhY2UpIHtcbiAgICAgIGZpZWxkcy53b3Jrc3BhY2VJZCA9IGZvcm1EYXRhLndvcmtzcGFjZS5pZFxuICAgIH1cbiAgICBmZXRjaENyZWF0ZVRlYW0oZmllbGRzKVxuICAgIGhhbmRsZUNsb3NlTW9kYWwoKVxuICB9XG5cbiAgY29uc3QgaGFuZGxlRWRpdFRlYW1Gcm9tTWVudSA9ICh0ZWFtSWQ6IG51bWJlcikgPT4ge1xuICAgIGNvbnN0IHRlYW0gPSB0ZWFtcy5maW5kKHQgPT4gdC5pZCA9PT0gdGVhbUlkKVxuICAgIGlmICh0ZWFtKSB7XG4gICAgICBzZXRTZWxlY3RlZFRlYW0odGVhbSlcbiAgICAgIHNldE1vZGFsTW9kZSgnZWRpdCcpXG4gICAgICBzZXRJc01vZGFsT3Blbih0cnVlKVxuICAgIH1cbiAgfVxuXG4gIGNvbnN0IGhhbmRsZURlbGV0ZVRlYW0gPSAodGVhbUlkOiBudW1iZXIpID0+IHtcbiAgICBjb25zdCB0ZWFtID0gdGVhbXMuZmluZCh0ID0+IHQuaWQgPT09IHRlYW1JZClcbiAgICBpZiAodGVhbSkge1xuICAgICAgc2V0VGVhbVRvRGVsZXRlKHRlYW0pXG4gICAgICBzZXRJc0RlbGV0ZU1vZGFsT3Blbih0cnVlKVxuICAgIH1cbiAgfVxuXG4gIGNvbnN0IGhhbmRsZUNsb3NlRGVsZXRlTW9kYWwgPSAoKSA9PiB7XG4gICAgc2V0SXNEZWxldGVNb2RhbE9wZW4oZmFsc2UpXG4gICAgc2V0VGVhbVRvRGVsZXRlKG51bGwpXG4gIH1cblxuICBjb25zdCBoYW5kbGVDb25maXJtRGVsZXRlID0gKGRlbGV0ZUZyb21Qcm9qZWN0czogYm9vbGVhbikgPT4ge1xuICAgIGlmICh0ZWFtVG9EZWxldGUpIHtcbiAgICAgIGRlbGV0ZVRlYW0odGVhbVRvRGVsZXRlLmlkLCBkZWxldGVGcm9tUHJvamVjdHMpXG4gICAgfVxuICAgIGhhbmRsZUNsb3NlRGVsZXRlTW9kYWwoKVxuICB9XG5cbiAgY29uc3QgaGFuZGxlQWRkVXNlciA9ICh0ZWFtSWQ6IG51bWJlciwgdXNlcklkOiBudW1iZXIsIGdpdmVBY2Nlc3NUb0FsbFByb2plY3RzOiBib29sZWFuKSA9PiB7XG4gICAgYXNzaWduVXNlclRvVGVhbSh7XG4gICAgICBzZXRVc2VyVGVhbVByb2plY3Q6IGdpdmVBY2Nlc3NUb0FsbFByb2plY3RzLFxuICAgICAgdXNlcklkLFxuICAgICAgdGVhbUlkLFxuICAgIH0pXG4gIH1cblxuICBjb25zdCBoYW5kbGVSZW1vdmVVc2VyID0gKHRlYW1JZDogbnVtYmVyLCB1c2VySWQ6IG51bWJlciwgZGVsZXRlRnJvbVByb2plY3RzOiBib29sZWFuKSA9PiB7XG4gICAgdW5hc3NpZ25Vc2VyRnJvbVRlYW0oe1xuICAgICAgZGVsZXRlRnJvbVByb2plY3RzLFxuICAgICAgdXNlcklkLFxuICAgICAgdGVhbUlkLFxuICAgIH0pXG4gIH1cblxuICByZXR1cm4gKFxuICAgIDw+XG4gICAgICA8VGVhbVJvd1xuICAgICAgICB0ZWFtcz17dGVhbXN9XG4gICAgICAgIGhhbmRsZVNob3dUZWFtRGV0YWlscz17aGFuZGxlU2hvd1RlYW1EZXRhaWxzfVxuICAgICAgICBoYW5kbGVEZWxldGVUZWFtPXtoYW5kbGVEZWxldGVUZWFtfVxuICAgICAgICBoYW5kbGVFZGl0VGVhbT17aGFuZGxlRWRpdFRlYW1Gcm9tTWVudX1cbiAgICAgICAgaGFuZGxlUmVtb3ZlVXNlcj17aGFuZGxlUmVtb3ZlVXNlcn1cbiAgICAgICAgaGFuZGxlQWRkVXNlcj17aGFuZGxlQWRkVXNlcn1cbiAgICAgIC8+XG4gICAgICB7aXNNb2RhbE9wZW4gJiYgKFxuICAgICAgICA8U3VzcGVuc2UgZmFsbGJhY2s9ezxMb2FkZXJDb21wb25lbnQgLz59PlxuICAgICAgICAgIDxMYXp5VGVhbURldGFpbHNNb2RhbFxuICAgICAgICAgICAgdGVhbT17c2VsZWN0ZWRUZWFtfVxuICAgICAgICAgICAgaXNPcGVuPXtpc01vZGFsT3Blbn1cbiAgICAgICAgICAgIG9uQ2xvc2U9e2hhbmRsZUNsb3NlTW9kYWx9XG4gICAgICAgICAgICBvbkVkaXQ9e2hhbmRsZUVkaXRUZWFtfVxuICAgICAgICAgICAgb25DcmVhdGU9e2hhbmRsZUNyZWF0ZVRlYW1TdWJtaXR9XG4gICAgICAgICAgICBtb2RlPXttb2RhbE1vZGV9XG4gICAgICAgICAgICB3b3Jrc3BhY2VzTGlzdD17bW9ja1dvcmtzcGFjZXNMaXN0fVxuICAgICAgICAgICAgbWVtYmVyc0xpc3Q9e21vY2tNZW1iZXJzTGlzdH1cbiAgICAgICAgICAvPlxuICAgICAgICA8L1N1c3BlbnNlPlxuICAgICAgKX1cbiAgICAgIHtpc0RlbGV0ZU1vZGFsT3BlbiAmJiAoXG4gICAgICAgIDxTdXNwZW5zZSBmYWxsYmFjaz17PExvYWRlckNvbXBvbmVudCAvPn0+XG4gICAgICAgICAgPExhenlEZWxldGVUZWFtTW9kYWxcbiAgICAgICAgICAgIHRlYW09e3RlYW1Ub0RlbGV0ZX1cbiAgICAgICAgICAgIGlzT3Blbj17aXNEZWxldGVNb2RhbE9wZW59XG4gICAgICAgICAgICBvbkNsb3NlPXtoYW5kbGVDbG9zZURlbGV0ZU1vZGFsfVxuICAgICAgICAgICAgb25Db25maXJtPXtoYW5kbGVDb25maXJtRGVsZXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvU3VzcGVuc2U+XG4gICAgICApfVxuICAgIDwvPlxuICApXG59XG4iXSwibWFwcGluZ3MiOiI7QUFBQSxTQUFTQSxRQUFRLEVBQUVDLFNBQVMsRUFBRUMsV0FBVyxFQUFFQyxJQUFJLEVBQUVDLFFBQVEsUUFBUSxPQUFPO0FBQ3hFLFNBQVNDLE9BQU8sUUFBUSx3Q0FBd0M7QUFFaEUsU0FBU0MsUUFBUSxRQUFRLDRCQUE0QjtBQUNyRCxTQUFTQyxlQUFlLFFBQVEsMkNBQTJDO0FBQzNFLFNBQVNDLGFBQWEsUUFBUSw0QkFBNEI7QUFDMUQsU0FBU0MsYUFBYSxRQUFRLDJCQUEyQjtBQUN6RCxTQUFTQyxtQkFBbUIsUUFBUSxpQ0FBaUM7QUFDckUsU0FBU0MsdUJBQXVCLFFBQVEscUNBQXFDO0FBQzdFLFNBQVNDLGFBQWEsUUFBUSwyQkFBMkI7QUFBQSxTQUFBQyxHQUFBLElBQUFDLElBQUEsRUFBQUMsUUFBQSxJQUFBQyxTQUFBLEVBQUFDLElBQUEsSUFBQUMsS0FBQTtBQUV6RCxJQUFNQyxvQkFB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SUFDRixDQUFDLENBQUM7RUFDSixDQUFDO0VBRUQsSUFBTTJCLGdCQUFnQixHQUFHLFNBQW5CQSxnQkFBZ0JBLENBQUkzQixNQUFjLEVBQUV3QixNQUFjLEVBQUVGLGtCQUEyQixFQUFLO0lBQ3hGL0Msb0JBQW9CLENBQUM7TUFDbkIrQyxrQkFBa0IsRUFBbEJBLGtCQUFrQjtNQUNsQkUsTUFBTSxFQUFOQSxNQUFNO01BQ054QixNQUFNLEVBQU5BO0lBQ0YsQ0FBQyxDQUFDO0VBQ0osQ0FBQztFQUVELG9CQUNFaEQsS0FBQSxDQUFBRixTQUFBO0lBQUE4RSxRQUFBLGdCQUNFaEYsSUFBQSxDQUFDVCxPQUFPO01BQ040QixLQUFLLEVBQUVBLEtBQU07TUFDYmdDLHFCQUFxQixFQUFFQSxxQkFBc0I7TUFDN0NvQixnQkFBZ0IsRUFBRUEsZ0JBQWlCO01BQ25DVCxjQUFjLEVBQUVRLHNCQUF1QjtNQUN2Q1MsZ0JBQWdCLEVBQUVBLGdCQUFpQjtNQUNuQ0osYUFBYSxFQUFFQTtJQUFjLENBQzlCLENBQUMsRUFDRHRDLFdBQVcsaUJBQ1ZyQyxJQUFBLENBQUNWLFFBQVE7TUFBQzJGLFFBQVEsZUFBRWpGLElBQUEsQ0FBQ1AsZUFBZSxJQUFFLENBQUU7TUFBQXVGLFFBQUEsZUFDdENoRixJQUFBLENBQUNLLG9CQUFvQjtRQUNuQmdELElBQUksRUFBRXBCLFlBQWE7UUFDbkJpRCxNQUFNLEVBQUU3QyxXQUFZO1FBQ3BCOEMsT0FBTyxFQUFFdEIsZ0JBQWlCO1FBQzFCdUIsTUFBTSxFQUFFdEIsY0FBZTtRQUN2QnVCLFFBQVEsRUFBRWhCLHNCQUF1QjtRQUNqQ2lCLElBQUksRUFBRTdDLFNBQVU7UUFDaEI4QyxjQUFjLEVBQUU1RSxrQkFBbUI7UUFDbkM2RSxXQUFXLEVBQUUxRTtNQUFnQixDQUM5QjtJQUFDLENBQ00sQ0FDWCxFQUNBbUMsaUJBQWlCLGlCQUNoQmpELElBQUEsQ0FBQ1YsUUFBUTtNQUFDMkYsUUFBUSxlQUFFakYsSUFBQSxDQUFDUCxlQUFlLElBQUUsQ0FBRTtNQUFBdUYsUUFBQSxlQUN0Q2hGLElBQUEsQ0FBQ1MsbUJBQW1CO1FBQ2xCNEMsSUFBSSxFQUFFUixZQUFhO1FBQ25CcUMsTUFBTSxFQUFFakMsaUJBQWtCO1FBQzFCa0MsT0FBTyxFQUFFWCxzQkFBdUI7UUFDaENpQixTQUFTLEVBQUVoQjtNQUFvQixDQUNoQztJQUFDLENBQ00sQ0FDWDtFQUFBLENBQ0QsQ0FBQztBQUVQLENBQUMiLCJpZ25vcmVMaXN0IjpbXX0=
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
|
|
1
2
|
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
2
3
|
import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
|
|
3
4
|
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; }
|
|
@@ -7,16 +8,17 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
|
|
|
7
8
|
/* eslint-disable @typescript-eslint/no-empty-function */
|
|
8
9
|
/* eslint-disable react/require-default-props */
|
|
9
10
|
/* eslint-disable no-undef */
|
|
10
|
-
import { memo, useEffect, useState, useRef } from 'react';
|
|
11
|
+
import { memo, useEffect, useState, useRef, useCallback } from 'react';
|
|
11
12
|
import { useTranslation } from 'react-i18next';
|
|
12
13
|
import { useUsersQuery } from '../../context/UsersContext';
|
|
13
14
|
import { FilterChip } from '../../components/Filters/FilterChip';
|
|
14
15
|
import { useGetTeams } from '../../hooks/useGetTeams';
|
|
16
|
+
import { useLoadMoreGuard } from '../../hooks/useLoadMoreGuard';
|
|
15
17
|
import { SEARCH_EVENT } from '../../hooks/useSearchEvent';
|
|
16
18
|
import { Search } from '../../components/Search/Search';
|
|
19
|
+
import { LayoutSearchUser } from '../../components/Layout/Layout';
|
|
17
20
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
18
|
-
export var FiltersContainer = /*#__PURE__*/memo(function (
|
|
19
|
-
var handleGetUserPositionFilterProp = _ref.handleGetUserPositionFilter;
|
|
21
|
+
export var FiltersContainer = /*#__PURE__*/memo(function () {
|
|
20
22
|
var _useTranslation = useTranslation('people'),
|
|
21
23
|
t = _useTranslation.t;
|
|
22
24
|
var _useUsersQuery = useUsersQuery(),
|
|
@@ -26,8 +28,9 @@ export var FiltersContainer = /*#__PURE__*/memo(function (_ref) {
|
|
|
26
28
|
handleGetTeams = _useGetTeams.handleGetTeams,
|
|
27
29
|
loading = _useGetTeams.loading,
|
|
28
30
|
error = _useGetTeams.error,
|
|
29
|
-
data = _useGetTeams.data
|
|
30
|
-
|
|
31
|
+
data = _useGetTeams.data,
|
|
32
|
+
currentPage = _useGetTeams.currentPage,
|
|
33
|
+
lastPage = _useGetTeams.lastPage;
|
|
31
34
|
var _useState = useState(''),
|
|
32
35
|
_useState2 = _slicedToArray(_useState, 2),
|
|
33
36
|
searchTermValue = _useState2[0],
|
|
@@ -49,20 +52,31 @@ export var FiltersContainer = /*#__PURE__*/memo(function (_ref) {
|
|
|
49
52
|
_useState0 = _slicedToArray(_useState9, 2),
|
|
50
53
|
selectedPositions = _useState0[0],
|
|
51
54
|
setSelectedPositions = _useState0[1];
|
|
55
|
+
var _useState1 = useState(''),
|
|
56
|
+
_useState10 = _slicedToArray(_useState1, 2),
|
|
57
|
+
teamSearchTerm = _useState10[0],
|
|
58
|
+
setTeamSearchTerm = _useState10[1];
|
|
59
|
+
var _useState11 = useState(''),
|
|
60
|
+
_useState12 = _slicedToArray(_useState11, 2),
|
|
61
|
+
positionSearchTerm = _useState12[0],
|
|
62
|
+
setPositionSearchTerm = _useState12[1];
|
|
63
|
+
var canLoadMoreTeams = currentPage < lastPage;
|
|
64
|
+
var _useLoadMoreGuard = useLoadMoreGuard(loading, canLoadMoreTeams),
|
|
65
|
+
requestTeamsLoadMore = _useLoadMoreGuard.requestLoadMore;
|
|
52
66
|
var buildAndSendUserRequest = function buildAndSendUserRequest() {
|
|
53
|
-
var
|
|
54
|
-
searchInputOverride =
|
|
55
|
-
teamsOverride =
|
|
56
|
-
positionsOverride =
|
|
67
|
+
var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
|
|
68
|
+
searchInputOverride = _ref.searchInputOverride,
|
|
69
|
+
teamsOverride = _ref.teamsOverride,
|
|
70
|
+
positionsOverride = _ref.positionsOverride;
|
|
57
71
|
var positionsFilter = positionsOverride !== undefined ? positionsOverride.length ? {
|
|
58
72
|
positions: positionsOverride
|
|
59
73
|
} : {} : selectedPositions.length ? {
|
|
60
74
|
positions: selectedPositions
|
|
61
75
|
} : {};
|
|
62
76
|
var teamsFilter = teamsOverride !== undefined ? teamsOverride.length ? {
|
|
63
|
-
|
|
77
|
+
team: teamsOverride
|
|
64
78
|
} : {} : selectedTeams.length ? {
|
|
65
|
-
|
|
79
|
+
team: selectedTeams
|
|
66
80
|
} : {};
|
|
67
81
|
var valuesToFilter = _objectSpread(_objectSpread({}, positionsFilter), teamsFilter);
|
|
68
82
|
handleGetUsers({
|
|
@@ -102,7 +116,14 @@ export var FiltersContainer = /*#__PURE__*/memo(function (_ref) {
|
|
|
102
116
|
});
|
|
103
117
|
}
|
|
104
118
|
} else {
|
|
105
|
-
|
|
119
|
+
setTeamSearchTerm(searchTerm !== null && searchTerm !== void 0 ? searchTerm : '');
|
|
120
|
+
handleGetTeams(_objectSpread({
|
|
121
|
+
page: 1
|
|
122
|
+
}, searchTerm ? {
|
|
123
|
+
filter: {
|
|
124
|
+
name: searchTerm
|
|
125
|
+
}
|
|
126
|
+
} : {}));
|
|
106
127
|
}
|
|
107
128
|
}
|
|
108
129
|
if (type === 'positionFilter') {
|
|
@@ -122,8 +143,8 @@ export var FiltersContainer = /*#__PURE__*/memo(function (_ref) {
|
|
|
122
143
|
positionsOverride: valuesToFilter
|
|
123
144
|
});
|
|
124
145
|
}
|
|
125
|
-
} else
|
|
126
|
-
|
|
146
|
+
} else {
|
|
147
|
+
setPositionSearchTerm(searchTerm !== null && searchTerm !== void 0 ? searchTerm : '');
|
|
127
148
|
}
|
|
128
149
|
}
|
|
129
150
|
};
|
|
@@ -131,38 +152,82 @@ export var FiltersContainer = /*#__PURE__*/memo(function (_ref) {
|
|
|
131
152
|
return function () {
|
|
132
153
|
window.removeEventListener(SEARCH_EVENT, handleSearch);
|
|
133
154
|
};
|
|
134
|
-
}, [
|
|
155
|
+
}, [handleGetUsers, searchTermValue, selectedTeams, selectedPositions]);
|
|
135
156
|
useEffect(function () {
|
|
136
|
-
if (data !== null && data !== void 0 && data.
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
157
|
+
if (!(data !== null && data !== void 0 && data.teamsUsers) || error) return;
|
|
158
|
+
var mapped = data.teamsUsers.data.map(function (team) {
|
|
159
|
+
return {
|
|
160
|
+
id: team.id,
|
|
161
|
+
label: team.name
|
|
162
|
+
};
|
|
163
|
+
});
|
|
164
|
+
if (data.teamsUsers.page === 1) {
|
|
165
|
+
setTeamOptions(mapped);
|
|
166
|
+
} else {
|
|
167
|
+
setTeamOptions(function (prev) {
|
|
168
|
+
var existingIds = new Set(prev.map(function (o) {
|
|
169
|
+
return o.id;
|
|
170
|
+
}));
|
|
171
|
+
var newOnes = mapped.filter(function (o) {
|
|
172
|
+
return !existingIds.has(o.id);
|
|
173
|
+
});
|
|
174
|
+
return newOnes.length ? [].concat(_toConsumableArray(prev), _toConsumableArray(newOnes)) : prev;
|
|
175
|
+
});
|
|
143
176
|
}
|
|
144
|
-
}, [data,
|
|
177
|
+
}, [data, error]);
|
|
145
178
|
useEffect(function () {
|
|
146
|
-
if (positions
|
|
179
|
+
if (positions) {
|
|
147
180
|
setPositionOptions(positions);
|
|
148
|
-
|
|
181
|
+
if (positions.length) {
|
|
182
|
+
defaultPositionsRef.current = positions;
|
|
183
|
+
}
|
|
149
184
|
}
|
|
150
185
|
}, [positions]);
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
186
|
+
var handleTeamsLoadMore = useCallback(function () {
|
|
187
|
+
requestTeamsLoadMore(function () {
|
|
188
|
+
return handleGetTeams(_objectSpread({
|
|
189
|
+
page: currentPage + 1
|
|
190
|
+
}, teamSearchTerm !== null && teamSearchTerm !== void 0 && teamSearchTerm.trim() ? {
|
|
191
|
+
filter: {
|
|
192
|
+
name: teamSearchTerm.trim()
|
|
193
|
+
}
|
|
194
|
+
} : {}));
|
|
195
|
+
});
|
|
196
|
+
}, [requestTeamsLoadMore, currentPage, teamSearchTerm, handleGetTeams]);
|
|
197
|
+
var positionOptionsToShow = !positionSearchTerm.trim() ? positionOptions : function () {
|
|
198
|
+
var term = positionSearchTerm.trim().toLowerCase();
|
|
199
|
+
var posWithCategory = positionOptions;
|
|
200
|
+
var selectedOpts = posWithCategory.filter(function (p) {
|
|
201
|
+
return selectedPositions.includes(p.id);
|
|
202
|
+
});
|
|
203
|
+
var filteredOpts = posWithCategory.filter(function (p) {
|
|
204
|
+
return p.label.toLowerCase().includes(term) || p.categoryName && p.categoryName.toLowerCase().includes(term);
|
|
205
|
+
});
|
|
206
|
+
var filteredIds = new Set(filteredOpts.map(function (o) {
|
|
207
|
+
return o.id;
|
|
208
|
+
}));
|
|
209
|
+
var selectedNotInFiltered = selectedOpts.filter(function (o) {
|
|
210
|
+
return !filteredIds.has(o.id);
|
|
211
|
+
});
|
|
212
|
+
return [].concat(_toConsumableArray(selectedNotInFiltered), _toConsumableArray(filteredOpts));
|
|
213
|
+
}();
|
|
214
|
+
return /*#__PURE__*/_jsxs(LayoutSearchUser, {
|
|
157
215
|
children: [/*#__PURE__*/_jsx(Search, {}), /*#__PURE__*/_jsx(FilterChip, {
|
|
158
216
|
id: "teamFilter",
|
|
159
217
|
label: t('filters.team'),
|
|
160
|
-
options: teamOptions
|
|
218
|
+
options: teamOptions,
|
|
219
|
+
emptyMessage: t('users.emptyFilterMessage'),
|
|
220
|
+
onLoadMore: handleTeamsLoadMore,
|
|
221
|
+
hasMorePages: canLoadMoreTeams,
|
|
222
|
+
loadMoreLoading: loading,
|
|
223
|
+
dispatchSearchOnClose: false
|
|
161
224
|
}), /*#__PURE__*/_jsx(FilterChip, {
|
|
162
225
|
id: "positionFilter",
|
|
163
226
|
label: t('filters.position'),
|
|
164
|
-
options:
|
|
227
|
+
options: positionOptionsToShow,
|
|
228
|
+
emptyMessage: t('users.emptyFilterMessage'),
|
|
229
|
+
dispatchSearchOnClose: true
|
|
165
230
|
})]
|
|
166
231
|
});
|
|
167
232
|
});
|
|
168
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJtZW1vIiwidXNlRWZmZWN0IiwidXNlU3RhdGUiLCJ1c2VSZWYiLCJ1c2VUcmFuc2xhdGlvbiIsInVzZVVzZXJzUXVlcnkiLCJGaWx0ZXJDaGlwIiwidXNlR2V0VGVhbXMiLCJTRUFSQ0hfRVZFTlQiLCJTZWFyY2giLCJqc3giLCJfanN4IiwianN4cyIsIl9qc3hzIiwiRmlsdGVyc0NvbnRhaW5lciIsIl9yZWYiLCJoYW5kbGVHZXRVc2VyUG9zaXRpb25GaWx0ZXJQcm9wIiwiaGFuZGxlR2V0VXNlclBvc2l0aW9uRmlsdGVyIiwiX3VzZVRyYW5zbGF0aW9uIiwidCIsIl91c2VVc2Vyc1F1ZXJ5IiwiaGFuZGxlR2V0VXNlcnMiLCJwb3NpdGlvbnMiLCJfdXNlR2V0VGVhbXMiLCJoYW5kbGVHZXRUZWFtcyIsImxvYWRpbmciLCJlcnJvciIsImRhdGEiLCJfdXNlU3RhdGUiLCJfdXNlU3RhdGUyIiwiX3NsaWNlZFRvQXJyYXkiLCJzZWFyY2hUZXJtVmFsdWUiLCJzZXRTZWFyY2hUZXJtVmFsdWUiLCJfdXNlU3RhdGUzIiwiX3VzZVN0YXRlNCIsInRlYW1PcHRpb25zIiwic2V0VGVhbU9wdGlvbnMiLCJfdXNlU3RhdGU1IiwiX3VzZVN0YXRlNiIsInBvc2l0aW9uT3B0aW9ucyIsInNldFBvc2l0aW9uT3B0aW9ucyIsImRlZmF1bHRQb3NpdGlvbnNSZWYiLCJfdXNlU3RhdGU3IiwiX3VzZVN0YXRlOCIsInNlbGVjdGVkVGVhbXMiLCJzZXRTZWxlY3RlZFRlYW1zIiwiX3VzZVN0YXRlOSIsIl91c2VTdGF0ZTAiLCJzZWxlY3RlZFBvc2l0aW9ucyIsInNldFNlbGVjdGVkUG9zaXRpb25zIiwiYnVpbGRBbmRTZW5kVXNlclJlcXVlc3QiLCJfcmVmMiIsImFyZ3VtZW50cyIsImxlbmd0aCIsInVuZGVmaW5lZCIsInNlYXJjaElucHV0T3ZlcnJpZGUiLCJ0ZWFtc092ZXJyaWRlIiwicG9zaXRpb25zT3ZlcnJpZGUiLCJwb3NpdGlvbnNGaWx0ZXIiLCJ0ZWFtc0ZpbHRlciIsInRlYW1zIiwidmFsdWVzVG9GaWx0ZXIiLCJfb2JqZWN0U3ByZWFkIiwic2VhcmNoSW5wdXQiLCJwYWdlIiwiaGFuZGxlU2VhcmNoIiwiZXZlbnQiLCJfZXZlbnQkZGV0YWlsIiwiZGV0YWlsIiwic2VhcmNoVGVybSIsInR5cGUiLCJBcnJheSIsImlzQXJyYXkiLCJhcmVUZWFtc0VxdWFsIiwiZXZlcnkiLCJ2YWx1ZSIsImluZGV4IiwiYXJlUG9zaXRpb25zRXF1YWwiLCJ3aW5kb3ciLCJhZGRFdmVudExpc3RlbmVyIiwicmVtb3ZlRXZlbnRMaXN0ZW5lciIsIm1hcCIsInRlYW0iLCJpZCIsImxhYmVsIiwibmFtZSIsImN1cnJlbnQiLCJzdHlsZSIsImRpc3BsYXkiLCJnYXAiLCJhbGlnbkl0ZW1zIiwiY2hpbGRyZW4iLCJvcHRpb25zIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbnRhaW5lci9GaWx0ZXJzL0ZpbHRlcnNDb250YWluZXIudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9pbmRlbnQgKi9cbi8qIGVzbGludC1kaXNhYmxlIG5vLW5lc3RlZC10ZXJuYXJ5ICovXG4vKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktZnVuY3Rpb24gKi9cbi8qIGVzbGludC1kaXNhYmxlIHJlYWN0L3JlcXVpcmUtZGVmYXVsdC1wcm9wcyAqL1xuLyogZXNsaW50LWRpc2FibGUgbm8tdW5kZWYgKi9cbmltcG9ydCB7IG1lbW8sIHVzZUVmZmVjdCwgdXNlU3RhdGUsIHVzZVJlZiB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHsgdXNlVHJhbnNsYXRpb24gfSBmcm9tICdyZWFjdC1pMThuZXh0J1xuaW1wb3J0IHsgdXNlVXNlcnNRdWVyeSB9IGZyb20gJy4uLy4uL2NvbnRleHQvVXNlcnNDb250ZXh0J1xuaW1wb3J0IHsgRmlsdGVyQ2hpcCB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMvRmlsdGVycy9GaWx0ZXJDaGlwJ1xuaW1wb3J0IHsgdXNlR2V0VGVhbXMgfSBmcm9tICcuLi8uLi9ob29rcy91c2VHZXRUZWFtcydcbmltcG9ydCB7IFNFQVJDSF9FVkVOVCB9IGZyb20gJy4uLy4uL2hvb2tzL3VzZVNlYXJjaEV2ZW50J1xuaW1wb3J0IHsgU2VhcmNoIH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cy9TZWFyY2gvU2VhcmNoJ1xuXG50eXBlIEZpbHRlcnNDb250YWluZXJQcm9wcyA9IHtcbiAgaGFuZGxlR2V0VXNlclBvc2l0aW9uRmlsdGVyPzogKG5hbWU6IHN0cmluZywgcGFnZT86IG51bWJlcikgPT4gdm9pZFxufVxuXG5leHBvcnQgY29uc3QgRmlsdGVyc0NvbnRhaW5lciA9IG1lbW8oXG4gICh7IGhhbmRsZUdldFVzZXJQb3NpdGlvbkZpbHRlcjogaGFuZGxlR2V0VXNlclBvc2l0aW9uRmlsdGVyUHJvcCB9OiBGaWx0ZXJzQ29udGFpbmVyUHJvcHMpID0+IHtcbiAgICBjb25zdCB7IHQgfSA9IHVzZVRyYW5zbGF0aW9uKCdwZW9wbGUnKVxuICAgIGNvbnN0IHsgaGFuZGxlR2V0VXNlcnMsIHBvc2l0aW9ucyB9ID0gdXNlVXNlcnNRdWVyeSgpXG4gICAgY29uc3QgeyBoYW5kbGVHZXRUZWFtcywgbG9hZGluZywgZXJyb3IsIGRhdGEgfSA9IHVzZUdldFRlYW1zKClcbiAgICBjb25zdCBoYW5kbGVHZXRVc2VyUG9zaXRpb25GaWx0ZXIgPSBoYW5kbGVHZXRVc2VyUG9zaXRpb25GaWx0ZXJQcm9wID8/ICgoKSA9PiB7fSlcblxuICAgIGNvbnN0IFtzZWFyY2hUZXJtVmFsdWUsIHNldFNlYXJjaFRlcm1WYWx1ZV0gPSB1c2VTdGF0ZSgnJylcbiAgICBjb25zdCBbdGVhbU9wdGlvbnMsIHNldFRlYW1PcHRpb25zXSA9IHVzZVN0YXRlPHsgaWQ6IG51bWJlcjsgbGFiZWw6IHN0cmluZyB9W10+KFtdKVxuICAgIGNvbnN0IFtwb3NpdGlvbk9wdGlvbnMsIHNldFBvc2l0aW9uT3B0aW9uc10gPSB1c2VTdGF0ZTx7IGlkOiBudW1iZXI7IGxhYmVsOiBzdHJpbmcgfVtdPihwb3NpdGlvbnMgfHwgW10pXG4gICAgY29uc3QgZGVmYXVsdFBvc2l0aW9uc1JlZiA9IHVzZVJlZjx7IGlkOiBudW1iZXI7IGxhYmVsOiBzdHJpbmc7IGNhdGVnb3J5TmFtZT86IHN0cmluZyB9W10+KHBvc2l0aW9ucyB8fCBbXSlcblxuICAgIGNvbnN0IFtzZWxlY3RlZFRlYW1zLCBzZXRTZWxlY3RlZFRlYW1zXSA9IHVzZVN0YXRlPG51bWJlcltdPihbXSlcbiAgICBjb25zdCBbc2VsZWN0ZWRQb3NpdGlvbnMsIHNldFNlbGVjdGVkUG9zaXRpb25zXSA9IHVzZVN0YXRlPG51bWJlcltdPihbXSlcblxuICAgIGNvbnN0IGJ1aWxkQW5kU2VuZFVzZXJSZXF1ZXN0ID0gKHtcbiAgICAgIHNlYXJjaElucHV0T3ZlcnJpZGUsXG4gICAgICB0ZWFtc092ZXJyaWRlLFxuICAgICAgcG9zaXRpb25zT3ZlcnJpZGUsXG4gICAgfToge1xuICAgICAgc2VhcmNoSW5wdXRPdmVycmlkZT86IHN0cmluZ1xuICAgICAgdGVhbXNPdmVycmlkZT86IG51bWJlcltdXG4gICAgICBwb3NpdGlvbnNPdmVycmlkZT86IG51bWJlcltdXG4gICAgfSA9IHt9KSA9PiB7XG4gICAgICBjb25zdCBwb3NpdGlvbnNGaWx0ZXIgPVxuICAgICAgICBwb3NpdGlvbnNPdmVycmlkZSAhPT0gdW5kZWZpbmVkXG4gICAgICAgICAgPyBwb3NpdGlvbnNPdmVycmlkZS5sZW5ndGhcbiAgICAgICAgICAgID8geyBwb3NpdGlvbnM6IHBvc2l0aW9uc092ZXJyaWRlIH1cbiAgICAgICAgICAgIDoge31cbiAgICAgICAgICA6IHNlbGVjdGVkUG9zaXRpb25zLmxlbmd0aFxuICAgICAgICAgID8geyBwb3NpdGlvbnM6IHNlbGVjdGVkUG9zaXRpb25zIH1cbiAgICAgICAgICA6IHt9XG4gICAgICBjb25zdCB0ZWFtc0ZpbHRlciA9XG4gICAgICAgIHRlYW1zT3ZlcnJpZGUgIT09IHVuZGVmaW5lZFxuICAgICAgICAgID8gdGVhbXNPdmVycmlkZS5sZW5ndGhcbiAgICAgICAgICAgID8geyB0ZWFtczogdGVhbXNPdmVycmlkZSB9XG4gICAgICAgICAgICA6IHt9XG4gICAgICAgICAgOiBzZWxlY3RlZFRlYW1zLmxlbmd0aFxuICAgICAgICAgID8geyB0ZWFtczogc2VsZWN0ZWRUZWFtcyB9XG4gICAgICAgICAgOiB7fVxuICAgICAgY29uc3QgdmFsdWVzVG9GaWx0ZXIgPSB7IC4uLnBvc2l0aW9uc0ZpbHRlciwgLi4udGVhbXNGaWx0ZXIgfVxuXG4gICAgICBoYW5kbGVHZXRVc2Vycyh7XG4gICAgICAgIHNlYXJjaElucHV0OiBzZWFyY2hJbnB1dE92ZXJyaWRlICE9PSB1bmRlZmluZWQgPyBzZWFyY2hJbnB1dE92ZXJyaWRlIDogc2VhcmNoVGVybVZhbHVlLFxuICAgICAgICBwYWdlOiAxLFxuICAgICAgICB2YWx1ZXNUb0ZpbHRlcjogdmFsdWVzVG9GaWx0ZXIgYXMgYW55LFxuICAgICAgfSlcbiAgICB9XG5cbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgY29uc3QgaGFuZGxlU2VhcmNoID0gKGV2ZW50OiBDdXN0b21FdmVudCkgPT4ge1xuICAgICAgICBjb25zdCB7IHNlYXJjaFRlcm0sIHR5cGUsIHZhbHVlc1RvRmlsdGVyIH0gPSBldmVudC5kZXRhaWxcbiAgICAgICAgaWYgKHR5cGUgPT09ICdmaWx0ZXIxJykge1xuICAgICAgICAgIHNldFNlYXJjaFRlcm1WYWx1ZShzZWFyY2hUZXJtKVxuICAgICAgICAgIGJ1aWxkQW5kU2VuZFVzZXJSZXF1ZXN0KHsgc2VhcmNoSW5wdXRPdmVycmlkZTogc2VhcmNoVGVybSB9KVxuICAgICAgICAgIHJldHVyblxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHR5cGUgPT09ICd0ZWFtRmlsdGVyJykge1xuICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KHZhbHVlc1RvRmlsdGVyKSkge1xuICAgICAgICAgICAgaWYgKHZhbHVlc1RvRmlsdGVyLmxlbmd0aCkge1xuICAgICAgICAgICAgICBjb25zdCBhcmVUZWFtc0VxdWFsID0gdmFsdWVzVG9GaWx0ZXIuZXZlcnkoKHZhbHVlLCBpbmRleCkgPT4gdmFsdWUgPT09IHNlbGVjdGVkVGVhbXNbaW5kZXhdKVxuICAgICAgICAgICAgICBpZiAoYXJlVGVhbXNFcXVhbCkgcmV0dXJuXG4gICAgICAgICAgICAgIHNldFNlbGVjdGVkVGVhbXModmFsdWVzVG9GaWx0ZXIpXG4gICAgICAgICAgICAgIGJ1aWxkQW5kU2VuZFVzZXJSZXF1ZXN0KHtcbiAgICAgICAgICAgICAgICB0ZWFtc092ZXJyaWRlOiB2YWx1ZXNUb0ZpbHRlcixcbiAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIHNldFNlbGVjdGVkVGVhbXMoW10pXG4gICAgICAgICAgICAgIGJ1aWxkQW5kU2VuZFVzZXJSZXF1ZXN0KHsgdGVhbXNPdmVycmlkZTogW10gfSlcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgaGFuZGxlR2V0VGVhbXMoMSwgc2VhcmNoVGVybSlcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodHlwZSA9PT0gJ3Bvc2l0aW9uRmlsdGVyJykge1xuICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KHZhbHVlc1RvRmlsdGVyKSkge1xuICAgICAgICAgICAgaWYgKCF2YWx1ZXNUb0ZpbHRlci5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgc2V0U2VsZWN0ZWRQb3NpdGlvbnMoW10pXG4gICAgICAgICAgICAgIGJ1aWxkQW5kU2VuZFVzZXJSZXF1ZXN0KHsgcG9zaXRpb25zT3ZlcnJpZGU6IFtdIH0pXG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICBjb25zdCBhcmVQb3NpdGlvbnNFcXVhbCA9IHZhbHVlc1RvRmlsdGVyLmV2ZXJ5KCh2YWx1ZSwgaW5kZXgpID0+IHZhbHVlID09PSBzZWxlY3RlZFBvc2l0aW9uc1tpbmRleF0pXG4gICAgICAgICAgICAgIGlmIChhcmVQb3NpdGlvbnNFcXVhbCkgcmV0dXJuXG4gICAgICAgICAgICAgIHNldFNlbGVjdGVkUG9zaXRpb25zKHZhbHVlc1RvRmlsdGVyKVxuICAgICAgICAgICAgICBidWlsZEFuZFNlbmRVc2VyUmVxdWVzdCh7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zT3ZlcnJpZGU6IHZhbHVlc1RvRmlsdGVyLFxuICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH0gZWxzZSBpZiAoc2VhcmNoVGVybSkge1xuICAgICAgICAgICAgaGFuZGxlR2V0VXNlclBvc2l0aW9uRmlsdGVyKHNlYXJjaFRlcm0pXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKFNFQVJDSF9FVkVOVCwgaGFuZGxlU2VhcmNoIGFzIHVua25vd24gYXMgRXZlbnRMaXN0ZW5lcilcbiAgICAgIHJldHVybiAoKSA9PiB7XG4gICAgICAgIHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKFNFQVJDSF9FVkVOVCwgaGFuZGxlU2VhcmNoIGFzIHVua25vd24gYXMgRXZlbnRMaXN0ZW5lcilcbiAgICAgIH1cbiAgICB9LCBbaGFuZGxlR2V0VGVhbXMsIGhhbmRsZUdldFVzZXJQb3NpdGlvbkZpbHRlciwgaGFuZGxlR2V0VXNlcnMsIHNlYXJjaFRlcm1WYWx1ZV0pXG5cbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgaWYgKGRhdGE/LnRlYW1zICYmICFsb2FkaW5nICYmICFlcnJvcikge1xuICAgICAgICBzZXRUZWFtT3B0aW9ucyhkYXRhLnRlYW1zLmRhdGEubWFwKHRlYW0gPT4gKHsgaWQ6IHRlYW0uaWQsIGxhYmVsOiB0ZWFtLm5hbWUgfSkpKVxuICAgICAgfVxuICAgIH0sIFtkYXRhLCBsb2FkaW5nLCBlcnJvcl0pXG5cbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgaWYgKHBvc2l0aW9ucz8ubGVuZ3RoKSB7XG4gICAgICAgIHNldFBvc2l0aW9uT3B0aW9ucyhwb3NpdGlvbnMpXG4gICAgICAgIGRlZmF1bHRQb3NpdGlvbnNSZWYuY3VycmVudCA9IHBvc2l0aW9uc1xuICAgICAgfVxuICAgIH0sIFtwb3NpdGlvbnNdKVxuXG4gICAgcmV0dXJuIChcbiAgICAgIDxkaXZcbiAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICBkaXNwbGF5OiAnZmxleCcsXG4gICAgICAgICAgZ2FwOiAnMTBweCcsXG4gICAgICAgICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXG4gICAgICAgIH19XG4gICAgICA+XG4gICAgICAgIDxTZWFyY2ggLz5cbiAgICAgICAgPEZpbHRlckNoaXAgaWQ9XCJ0ZWFtRmlsdGVyXCIgbGFiZWw9e3QoJ2ZpbHRlcnMudGVhbScpfSBvcHRpb25zPXt0ZWFtT3B0aW9uc30gLz5cbiAgICAgICAgPEZpbHRlckNoaXAgaWQ9XCJwb3NpdGlvbkZpbHRlclwiIGxhYmVsPXt0KCdmaWx0ZXJzLnBvc2l0aW9uJyl9IG9wdGlvbnM9e3Bvc2l0aW9uT3B0aW9uc30gLz5cbiAgICAgIDwvZGl2PlxuICAgIClcbiAgfVxuKVxuIl0sIm1hcHBpbmdzIjoiOzs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVNBLElBQUksRUFBRUMsU0FBUyxFQUFFQyxRQUFRLEVBQUVDLE1BQU0sUUFBUSxPQUFPO0FBQ3pELFNBQVNDLGNBQWMsUUFBUSxlQUFlO0FBQzlDLFNBQVNDLGFBQWEsUUFBUSw0QkFBNEI7QUFDMUQsU0FBU0MsVUFBVSxRQUFRLHFDQUFxQztBQUNoRSxTQUFTQyxXQUFXLFFBQVEseUJBQXlCO0FBQ3JELFNBQVNDLFlBQVksUUFBUSw0QkFBNEI7QUFDekQsU0FBU0MsTUFBTSxRQUFRLGdDQUFnQztBQUFBLFNBQUFDLEdBQUEsSUFBQUMsSUFBQSxFQUFBQyxJQUFBLElBQUFDLEtBQUE7QUFNdkQsT0FBTyxJQUFNQyxnQkFBZ0IsZ0JBQUdkLElBQUksQ0FDbEMsVUFB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
|
|
233
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJtZW1vIiwidXNlRWZmZWN0IiwidXNlU3RhdGUiLCJ1c2VSZWYiLCJ1c2VDYWxsYmFjayIsInVzZVRyYW5zbGF0aW9uIiwidXNlVXNlcnNRdWVyeSIsIkZpbHRlckNoaXAiLCJ1c2VHZXRUZWFtcyIsInVzZUxvYWRNb3JlR3VhcmQiLCJTRUFSQ0hfRVZFTlQiLCJTZWFyY2giLCJMYXlvdXRTZWFyY2hVc2VyIiwianN4IiwiX2pzeCIsImpzeHMiLCJfanN4cyIsIkZpbHRlcnNDb250YWluZXIiLCJfdXNlVHJhbnNsYXRpb24iLCJ0IiwiX3VzZVVzZXJzUXVlcnkiLCJoYW5kbGVHZXRVc2VycyIsInBvc2l0aW9ucyIsIl91c2VHZXRUZWFtcyIsImhhbmRsZUdldFRlYW1zIiwibG9hZGluZyIsImVycm9yIiwiZGF0YSIsImN1cnJlbnRQYWdlIiwibGFzdFBhZ2UiLCJfdXNlU3RhdGUiLCJfdXNlU3RhdGUyIiwiX3NsaWNlZFRvQXJyYXkiLCJzZWFyY2hUZXJtVmFsdWUiLCJzZXRTZWFyY2hUZXJtVmFsdWUiLCJfdXNlU3RhdGUzIiwiX3VzZVN0YXRlNCIsInRlYW1PcHRpb25zIiwic2V0VGVhbU9wdGlvbnMiLCJfdXNlU3RhdGU1IiwiX3VzZVN0YXRlNiIsInBvc2l0aW9uT3B0aW9ucyIsInNldFBvc2l0aW9uT3B0aW9ucyIsImRlZmF1bHRQb3NpdGlvbnNSZWYiLCJfdXNlU3RhdGU3IiwiX3VzZVN0YXRlOCIsInNlbGVjdGVkVGVhbXMiLCJzZXRTZWxlY3RlZFRlYW1zIiwiX3VzZVN0YXRlOSIsIl91c2VTdGF0ZTAiLCJzZWxlY3RlZFBvc2l0aW9ucyIsInNldFNlbGVjdGVkUG9zaXRpb25zIiwiX3VzZVN0YXRlMSIsIl91c2VTdGF0ZTEwIiwidGVhbVNlYXJjaFRlcm0iLCJzZXRUZWFtU2VhcmNoVGVybSIsIl91c2VTdGF0ZTExIiwiX3VzZVN0YXRlMTIiLCJwb3NpdGlvblNlYXJjaFRlcm0iLCJzZXRQb3NpdGlvblNlYXJjaFRlcm0iLCJjYW5Mb2FkTW9yZVRlYW1zIiwiX3VzZUxvYWRNb3JlR3VhcmQiLCJyZXF1ZXN0VGVhbXNMb2FkTW9yZSIsInJlcXVlc3RMb2FkTW9yZSIsImJ1aWxkQW5kU2VuZFVzZXJSZXF1ZXN0IiwiX3JlZiIsImFyZ3VtZW50cyIsImxlbmd0aCIsInVuZGVmaW5lZCIsInNlYXJjaElucHV0T3ZlcnJpZGUiLCJ0ZWFtc092ZXJyaWRlIiwicG9zaXRpb25zT3ZlcnJpZGUiLCJwb3NpdGlvbnNGaWx0ZXIiLCJ0ZWFtc0ZpbHRlciIsInRlYW0iLCJ2YWx1ZXNUb0ZpbHRlciIsIl9vYmplY3RTcHJlYWQiLCJzZWFyY2hJbnB1dCIsInBhZ2UiLCJoYW5kbGVTZWFyY2giLCJldmVudCIsIl9ldmVudCRkZXRhaWwiLCJkZXRhaWwiLCJzZWFyY2hUZXJtIiwidHlwZSIsIkFycmF5IiwiaXNBcnJheSIsImFyZVRlYW1zRXF1YWwiLCJldmVyeSIsInZhbHVlIiwiaW5kZXgiLCJmaWx0ZXIiLCJuYW1lIiwiYXJlUG9zaXRpb25zRXF1YWwiLCJ3aW5kb3ciLCJhZGRFdmVudExpc3RlbmVyIiwicmVtb3ZlRXZlbnRMaXN0ZW5lciIsInRlYW1zVXNlcnMiLCJtYXBwZWQiLCJtYXAiLCJpZCIsImxhYmVsIiwicHJldiIsImV4aXN0aW5nSWRzIiwiU2V0IiwibyIsIm5ld09uZXMiLCJoYXMiLCJjb25jYXQiLCJfdG9Db25zdW1hYmxlQXJyYXkiLCJjdXJyZW50IiwiaGFuZGxlVGVhbXNMb2FkTW9yZSIsInRyaW0iLCJwb3NpdGlvbk9wdGlvbnNUb1Nob3ciLCJ0ZXJtIiwidG9Mb3dlckNhc2UiLCJwb3NXaXRoQ2F0ZWdvcnkiLCJzZWxlY3RlZE9wdHMiLCJwIiwiaW5jbHVkZXMiLCJmaWx0ZXJlZE9wdHMiLCJjYXRlZ29yeU5hbWUiLCJmaWx0ZXJlZElkcyIsInNlbGVjdGVkTm90SW5GaWx0ZXJlZCIsImNoaWxkcmVuIiwib3B0aW9ucyIsImVtcHR5TWVzc2FnZSIsIm9uTG9hZE1vcmUiLCJoYXNNb3JlUGFnZXMiLCJsb2FkTW9yZUxvYWRpbmciLCJkaXNwYXRjaFNlYXJjaE9uQ2xvc2UiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29udGFpbmVyL0ZpbHRlcnMvRmlsdGVyc0NvbnRhaW5lci50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L2luZGVudCAqL1xuLyogZXNsaW50LWRpc2FibGUgbm8tbmVzdGVkLXRlcm5hcnkgKi9cbi8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9uby1lbXB0eS1mdW5jdGlvbiAqL1xuLyogZXNsaW50LWRpc2FibGUgcmVhY3QvcmVxdWlyZS1kZWZhdWx0LXByb3BzICovXG4vKiBlc2xpbnQtZGlzYWJsZSBuby11bmRlZiAqL1xuaW1wb3J0IHsgbWVtbywgdXNlRWZmZWN0LCB1c2VTdGF0ZSwgdXNlUmVmLCB1c2VDYWxsYmFjayB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHsgdXNlVHJhbnNsYXRpb24gfSBmcm9tICdyZWFjdC1pMThuZXh0J1xuaW1wb3J0IHsgdXNlVXNlcnNRdWVyeSB9IGZyb20gJy4uLy4uL2NvbnRleHQvVXNlcnNDb250ZXh0J1xuaW1wb3J0IHsgRmlsdGVyQ2hpcCB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMvRmlsdGVycy9GaWx0ZXJDaGlwJ1xuaW1wb3J0IHsgdXNlR2V0VGVhbXMgfSBmcm9tICcuLi8uLi9ob29rcy91c2VHZXRUZWFtcydcbmltcG9ydCB7IHVzZUxvYWRNb3JlR3VhcmQgfSBmcm9tICcuLi8uLi9ob29rcy91c2VMb2FkTW9yZUd1YXJkJ1xuaW1wb3J0IHsgU0VBUkNIX0VWRU5UIH0gZnJvbSAnLi4vLi4vaG9va3MvdXNlU2VhcmNoRXZlbnQnXG5pbXBvcnQgeyBTZWFyY2ggfSBmcm9tICcuLi8uLi9jb21wb25lbnRzL1NlYXJjaC9TZWFyY2gnXG5pbXBvcnQgeyBMYXlvdXRTZWFyY2hVc2VyIH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cy9MYXlvdXQvTGF5b3V0J1xuXG5leHBvcnQgY29uc3QgRmlsdGVyc0NvbnRhaW5lciA9IG1lbW8oKCkgPT4ge1xuICBjb25zdCB7IHQgfSA9IHVzZVRyYW5zbGF0aW9uKCdwZW9wbGUnKVxuICBjb25zdCB7IGhhbmRsZUdldFVzZXJzLCBwb3NpdGlvbnMgfSA9IHVzZVVzZXJzUXVlcnkoKVxuICBjb25zdCB7IGhhbmRsZUdldFRlYW1zLCBsb2FkaW5nLCBlcnJvciwgZGF0YSwgY3VycmVudFBhZ2UsIGxhc3RQYWdlIH0gPSB1c2VHZXRUZWFtcygpXG5cbiAgY29uc3QgW3NlYXJjaFRlcm1WYWx1ZSwgc2V0U2VhcmNoVGVybVZhbHVlXSA9IHVzZVN0YXRlKCcnKVxuICBjb25zdCBbdGVhbU9wdGlvbnMsIHNldFRlYW1PcHRpb25zXSA9IHVzZVN0YXRlPHsgaWQ6IG51bWJlcjsgbGFiZWw6IHN0cmluZyB9W10+KFtdKVxuICBjb25zdCBbcG9zaXRpb25PcHRpb25zLCBzZXRQb3NpdGlvbk9wdGlvbnNdID0gdXNlU3RhdGU8eyBpZDogbnVtYmVyOyBsYWJlbDogc3RyaW5nIH1bXT4ocG9zaXRpb25zIHx8IFtdKVxuICBjb25zdCBkZWZhdWx0UG9zaXRpb25zUmVmID0gdXNlUmVmPHsgaWQ6IG51bWJlcjsgbGFiZWw6IHN0cmluZzsgY2F0ZWdvcnlOYW1lPzogc3RyaW5nIH1bXT4ocG9zaXRpb25zIHx8IFtdKVxuXG4gIGNvbnN0IFtzZWxlY3RlZFRlYW1zLCBzZXRTZWxlY3RlZFRlYW1zXSA9IHVzZVN0YXRlPG51bWJlcltdPihbXSlcbiAgY29uc3QgW3NlbGVjdGVkUG9zaXRpb25zLCBzZXRTZWxlY3RlZFBvc2l0aW9uc10gPSB1c2VTdGF0ZTxudW1iZXJbXT4oW10pXG4gIGNvbnN0IFt0ZWFtU2VhcmNoVGVybSwgc2V0VGVhbVNlYXJjaFRlcm1dID0gdXNlU3RhdGUoJycpXG4gIGNvbnN0IFtwb3NpdGlvblNlYXJjaFRlcm0sIHNldFBvc2l0aW9uU2VhcmNoVGVybV0gPSB1c2VTdGF0ZSgnJylcblxuICBjb25zdCBjYW5Mb2FkTW9yZVRlYW1zID0gY3VycmVudFBhZ2UgPCBsYXN0UGFnZVxuICBjb25zdCB7IHJlcXVlc3RMb2FkTW9yZTogcmVxdWVzdFRlYW1zTG9hZE1vcmUgfSA9IHVzZUxvYWRNb3JlR3VhcmQobG9hZGluZywgY2FuTG9hZE1vcmVUZWFtcylcblxuICBjb25zdCBidWlsZEFuZFNlbmRVc2VyUmVxdWVzdCA9ICh7XG4gICAgc2VhcmNoSW5wdXRPdmVycmlkZSxcbiAgICB0ZWFtc092ZXJyaWRlLFxuICAgIHBvc2l0aW9uc092ZXJyaWRlLFxuICB9OiB7XG4gICAgc2VhcmNoSW5wdXRPdmVycmlkZT86IHN0cmluZ1xuICAgIHRlYW1zT3ZlcnJpZGU/OiBudW1iZXJbXVxuICAgIHBvc2l0aW9uc092ZXJyaWRlPzogbnVtYmVyW11cbiAgfSA9IHt9KSA9PiB7XG4gICAgY29uc3QgcG9zaXRpb25zRmlsdGVyID1cbiAgICAgIHBvc2l0aW9uc092ZXJyaWRlICE9PSB1bmRlZmluZWRcbiAgICAgICAgPyBwb3NpdGlvbnNPdmVycmlkZS5sZW5ndGhcbiAgICAgICAgICA/IHsgcG9zaXRpb25zOiBwb3NpdGlvbnNPdmVycmlkZSB9XG4gICAgICAgICAgOiB7fVxuICAgICAgICA6IHNlbGVjdGVkUG9zaXRpb25zLmxlbmd0aFxuICAgICAgICA/IHsgcG9zaXRpb25zOiBzZWxlY3RlZFBvc2l0aW9ucyB9XG4gICAgICAgIDoge31cbiAgICBjb25zdCB0ZWFtc0ZpbHRlciA9XG4gICAgICB0ZWFtc092ZXJyaWRlICE9PSB1bmRlZmluZWRcbiAgICAgICAgPyB0ZWFtc092ZXJyaWRlLmxlbmd0aFxuICAgICAgICAgID8geyB0ZWFtOiB0ZWFtc092ZXJyaWRlIH1cbiAgICAgICAgICA6IHt9XG4gICAgICAgIDogc2VsZWN0ZWRUZWFtcy5sZW5ndGhcbiAgICAgICAgPyB7IHRlYW06IHNlbGVjdGVkVGVhbXMgfVxuICAgICAgICA6IHt9XG4gICAgY29uc3QgdmFsdWVzVG9GaWx0ZXIgPSB7IC4uLnBvc2l0aW9uc0ZpbHRlciwgLi4udGVhbXNGaWx0ZXIgfVxuXG4gICAgaGFuZGxlR2V0VXNlcnMoe1xuICAgICAgc2VhcmNoSW5wdXQ6IHNlYXJjaElucHV0T3ZlcnJpZGUgIT09IHVuZGVmaW5lZCA/IHNlYXJjaElucHV0T3ZlcnJpZGUgOiBzZWFyY2hUZXJtVmFsdWUsXG4gICAgICBwYWdlOiAxLFxuICAgICAgdmFsdWVzVG9GaWx0ZXI6IHZhbHVlc1RvRmlsdGVyIGFzIGFueSxcbiAgICB9KVxuICB9XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBjb25zdCBoYW5kbGVTZWFyY2ggPSAoZXZlbnQ6IEN1c3RvbUV2ZW50KSA9PiB7XG4gICAgICBjb25zdCB7IHNlYXJjaFRlcm0sIHR5cGUsIHZhbHVlc1RvRmlsdGVyIH0gPSBldmVudC5kZXRhaWxcbiAgICAgIGlmICh0eXBlID09PSAnZmlsdGVyMScpIHtcbiAgICAgICAgc2V0U2VhcmNoVGVybVZhbHVlKHNlYXJjaFRlcm0pXG4gICAgICAgIGJ1aWxkQW5kU2VuZFVzZXJSZXF1ZXN0KHsgc2VhcmNoSW5wdXRPdmVycmlkZTogc2VhcmNoVGVybSB9KVxuICAgICAgICByZXR1cm5cbiAgICAgIH1cblxuICAgICAgaWYgKHR5cGUgPT09ICd0ZWFtRmlsdGVyJykge1xuICAgICAgICBpZiAoQXJyYXkuaXNBcnJheSh2YWx1ZXNUb0ZpbHRlcikpIHtcbiAgICAgICAgICBpZiAodmFsdWVzVG9GaWx0ZXIubGVuZ3RoKSB7XG4gICAgICAgICAgICBjb25zdCBhcmVUZWFtc0VxdWFsID0gdmFsdWVzVG9GaWx0ZXIuZXZlcnkoKHZhbHVlLCBpbmRleDogbnVtYmVyKSA9PiB2YWx1ZSA9PT0gc2VsZWN0ZWRUZWFtc1tpbmRleF0pXG4gICAgICAgICAgICBpZiAoYXJlVGVhbXNFcXVhbCkgcmV0dXJuXG4gICAgICAgICAgICBzZXRTZWxlY3RlZFRlYW1zKHZhbHVlc1RvRmlsdGVyKVxuICAgICAgICAgICAgYnVpbGRBbmRTZW5kVXNlclJlcXVlc3QoeyB0ZWFtc092ZXJyaWRlOiB2YWx1ZXNUb0ZpbHRlciB9KVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBzZXRTZWxlY3RlZFRlYW1zKFtdKVxuICAgICAgICAgICAgYnVpbGRBbmRTZW5kVXNlclJlcXVlc3QoeyB0ZWFtc092ZXJyaWRlOiBbXSB9KVxuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBzZXRUZWFtU2VhcmNoVGVybShzZWFyY2hUZXJtID8/ICcnKVxuICAgICAgICAgIGhhbmRsZUdldFRlYW1zKHsgcGFnZTogMSwgLi4uKHNlYXJjaFRlcm0gPyB7IGZpbHRlcjogeyBuYW1lOiBzZWFyY2hUZXJtIH0gfSA6IHt9KSB9KVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGlmICh0eXBlID09PSAncG9zaXRpb25GaWx0ZXInKSB7XG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KHZhbHVlc1RvRmlsdGVyKSkge1xuICAgICAgICAgIGlmICghdmFsdWVzVG9GaWx0ZXIubGVuZ3RoKSB7XG4gICAgICAgICAgICBzZXRTZWxlY3RlZFBvc2l0aW9ucyhbXSlcbiAgICAgICAgICAgIGJ1aWxkQW5kU2VuZFVzZXJSZXF1ZXN0KHsgcG9zaXRpb25zT3ZlcnJpZGU6IFtdIH0pXG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGNvbnN0IGFyZVBvc2l0aW9uc0VxdWFsID0gdmFsdWVzVG9GaWx0ZXIuZXZlcnkoKHZhbHVlLCBpbmRleDogbnVtYmVyKSA9PiB2YWx1ZSA9PT0gc2VsZWN0ZWRQb3NpdGlvbnNbaW5kZXhdKVxuICAgICAgICAgICAgaWYgKGFyZVBvc2l0aW9uc0VxdWFsKSByZXR1cm5cbiAgICAgICAgICAgIHNldFNlbGVjdGVkUG9zaXRpb25zKHZhbHVlc1RvRmlsdGVyKVxuICAgICAgICAgICAgYnVpbGRBbmRTZW5kVXNlclJlcXVlc3Qoe1xuICAgICAgICAgICAgICBwb3NpdGlvbnNPdmVycmlkZTogdmFsdWVzVG9GaWx0ZXIsXG4gICAgICAgICAgICB9KVxuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBzZXRQb3NpdGlvblNlYXJjaFRlcm0oc2VhcmNoVGVybSA/PyAnJylcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKFNFQVJDSF9FVkVOVCwgaGFuZGxlU2VhcmNoIGFzIHVua25vd24gYXMgRXZlbnRMaXN0ZW5lcilcbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoU0VBUkNIX0VWRU5ULCBoYW5kbGVTZWFyY2ggYXMgdW5rbm93biBhcyBFdmVudExpc3RlbmVyKVxuICAgIH1cbiAgfSwgW2hhbmRsZUdldFVzZXJzLCBzZWFyY2hUZXJtVmFsdWUsIHNlbGVjdGVkVGVhbXMsIHNlbGVjdGVkUG9zaXRpb25zXSlcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmICghZGF0YT8udGVhbXNVc2VycyB8fCBlcnJvcikgcmV0dXJuXG4gICAgY29uc3QgbWFwcGVkID0gZGF0YS50ZWFtc1VzZXJzLmRhdGEubWFwKCh0ZWFtOiB7IGlkOiBudW1iZXI7IG5hbWU6IHN0cmluZyB9KSA9PiAoe1xuICAgICAgaWQ6IHRlYW0uaWQsXG4gICAgICBsYWJlbDogdGVhbS5uYW1lLFxuICAgIH0pKVxuICAgIGlmIChkYXRhLnRlYW1zVXNlcnMucGFnZSA9PT0gMSkge1xuICAgICAgc2V0VGVhbU9wdGlvbnMobWFwcGVkKVxuICAgIH0gZWxzZSB7XG4gICAgICBzZXRUZWFtT3B0aW9ucyhwcmV2ID0+IHtcbiAgICAgICAgY29uc3QgZXhpc3RpbmdJZHMgPSBuZXcgU2V0KHByZXYubWFwKG8gPT4gby5pZCkpXG4gICAgICAgIGNvbnN0IG5ld09uZXMgPSBtYXBwZWQuZmlsdGVyKChvOiB7IGlkOiBudW1iZXI7IGxhYmVsOiBzdHJpbmcgfSkgPT4gIWV4aXN0aW5nSWRzLmhhcyhvLmlkKSlcbiAgICAgICAgcmV0dXJuIG5ld09uZXMubGVuZ3RoID8gWy4uLnByZXYsIC4uLm5ld09uZXNdIDogcHJldlxuICAgICAgfSlcbiAgICB9XG4gIH0sIFtkYXRhLCBlcnJvcl0pXG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAocG9zaXRpb25zKSB7XG4gICAgICBzZXRQb3NpdGlvbk9wdGlvbnMocG9zaXRpb25zKVxuICAgICAgaWYgKHBvc2l0aW9ucy5sZW5ndGgpIHtcbiAgICAgICAgZGVmYXVsdFBvc2l0aW9uc1JlZi5jdXJyZW50ID0gcG9zaXRpb25zXG4gICAgICB9XG4gICAgfVxuICB9LCBbcG9zaXRpb25zXSlcblxuICBjb25zdCBoYW5kbGVUZWFtc0xvYWRNb3JlID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIHJlcXVlc3RUZWFtc0xvYWRNb3JlKCgpID0+XG4gICAgICBoYW5kbGVHZXRUZWFtcyh7XG4gICAgICAgIHBhZ2U6IGN1cnJlbnRQYWdlICsgMSxcbiAgICAgICAgLi4uKHRlYW1TZWFyY2hUZXJtPy50cmltKCkgPyB7IGZpbHRlcjogeyBuYW1lOiB0ZWFtU2VhcmNoVGVybS50cmltKCkgfSB9IDoge30pLFxuICAgICAgfSlcbiAgICApXG4gIH0sIFtyZXF1ZXN0VGVhbXNMb2FkTW9yZSwgY3VycmVudFBhZ2UsIHRlYW1TZWFyY2hUZXJtLCBoYW5kbGVHZXRUZWFtc10pXG5cbiAgY29uc3QgcG9zaXRpb25PcHRpb25zVG9TaG93ID0gIXBvc2l0aW9uU2VhcmNoVGVybS50cmltKClcbiAgICA/IHBvc2l0aW9uT3B0aW9uc1xuICAgIDogKCgpID0+IHtcbiAgICAgICAgY29uc3QgdGVybSA9IHBvc2l0aW9uU2VhcmNoVGVybS50cmltKCkudG9Mb3dlckNhc2UoKVxuICAgICAgICBjb25zdCBwb3NXaXRoQ2F0ZWdvcnkgPSBwb3NpdGlvbk9wdGlvbnMgYXMgeyBpZDogbnVtYmVyOyBsYWJlbDogc3RyaW5nOyBjYXRlZ29yeU5hbWU/OiBzdHJpbmcgfVtdXG4gICAgICAgIGNvbnN0IHNlbGVjdGVkT3B0cyA9IHBvc1dpdGhDYXRlZ29yeS5maWx0ZXIocCA9PiBzZWxlY3RlZFBvc2l0aW9ucy5pbmNsdWRlcyhwLmlkKSlcbiAgICAgICAgY29uc3QgZmlsdGVyZWRPcHRzID0gcG9zV2l0aENhdGVnb3J5LmZpbHRlcihcbiAgICAgICAgICBwID0+IHAubGFiZWwudG9Mb3dlckNhc2UoKS5pbmNsdWRlcyh0ZXJtKSB8fCAocC5jYXRlZ29yeU5hbWUgJiYgcC5jYXRlZ29yeU5hbWUudG9Mb3dlckNhc2UoKS5pbmNsdWRlcyh0ZXJtKSlcbiAgICAgICAgKVxuICAgICAgICBjb25zdCBmaWx0ZXJlZElkcyA9IG5ldyBTZXQoZmlsdGVyZWRPcHRzLm1hcChvID0+IG8uaWQpKVxuICAgICAgICBjb25zdCBzZWxlY3RlZE5vdEluRmlsdGVyZWQgPSBzZWxlY3RlZE9wdHMuZmlsdGVyKG8gPT4gIWZpbHRlcmVkSWRzLmhhcyhvLmlkKSlcbiAgICAgICAgcmV0dXJuIFsuLi5zZWxlY3RlZE5vdEluRmlsdGVyZWQsIC4uLmZpbHRlcmVkT3B0c11cbiAgICAgIH0pKClcblxuICByZXR1cm4gKFxuICAgIDxMYXlvdXRTZWFyY2hVc2VyPlxuICAgICAgPFNlYXJjaCAvPlxuICAgICAgPEZpbHRlckNoaXBcbiAgICAgICAgaWQ9XCJ0ZWFtRmlsdGVyXCJcbiAgICAgICAgbGFiZWw9e3QoJ2ZpbHRlcnMudGVhbScpfVxuICAgICAgICBvcHRpb25zPXt0ZWFtT3B0aW9uc31cbiAgICAgICAgZW1wdHlNZXNzYWdlPXt0KCd1c2Vycy5lbXB0eUZpbHRlck1lc3NhZ2UnKX1cbiAgICAgICAgb25Mb2FkTW9yZT17aGFuZGxlVGVhbXNMb2FkTW9yZX1cbiAgICAgICAgaGFzTW9yZVBhZ2VzPXtjYW5Mb2FkTW9yZVRlYW1zfVxuICAgICAgICBsb2FkTW9yZUxvYWRpbmc9e2xvYWRpbmd9XG4gICAgICAgIGRpc3BhdGNoU2VhcmNoT25DbG9zZT17ZmFsc2V9XG4gICAgICAvPlxuICAgICAgPEZpbHRlckNoaXBcbiAgICAgICAgaWQ9XCJwb3NpdGlvbkZpbHRlclwiXG4gICAgICAgIGxhYmVsPXt0KCdmaWx0ZXJzLnBvc2l0aW9uJyl9XG4gICAgICAgIG9wdGlvbnM9e3Bvc2l0aW9uT3B0aW9uc1RvU2hvd31cbiAgICAgICAgZW1wdHlNZXNzYWdlPXt0KCd1c2Vycy5lbXB0eUZpbHRlck1lc3NhZ2UnKX1cbiAgICAgICAgZGlzcGF0Y2hTZWFyY2hPbkNsb3NlXG4gICAgICAvPlxuICAgIDwvTGF5b3V0U2VhcmNoVXNlcj5cbiAgKVxufSlcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBU0EsSUFBSSxFQUFFQyxTQUFTLEVBQUVDLFFBQVEsRUFBRUMsTUFBTSxFQUFFQyxXQUFXLFFBQVEsT0FBTztBQUN0RSxTQUFTQyxjQUFjLFFBQVEsZUFBZTtBQUM5QyxTQUFTQyxhQUFhLFFBQVEsNEJBQTRCO0FBQzFELFNBQVNDLFVBQVUsUUFBUSxxQ0FBcUM7QUFDaEUsU0FBU0MsV0FBVyxRQUFRLHlCQUF5QjtBQUNyRCxTQUFTQyxnQkFBZ0IsUUFBUSw4QkFBOEI7QUFDL0QsU0FBU0MsWUFBWSxRQUFRLDRCQUE0QjtBQUN6RCxTQUFTQyxNQUFNLFFBQVEsZ0NBQWdDO0FBQ3ZELFNBQVNDLGdCQUFnQixRQUFRLGdDQUFnQztBQUFBLFNBQUFDLEdBQUEsSUFBQUMsSUFBQSxFQUFBQyxJQUFBLElBQUFDLEtBQUE7QUFFakUsT0FBTyxJQUFNQyxnQkFBZ0IsZ0JBQUdqQixJQUFJLENBQUMsWUFBTTtFQUN6QyxJQUFBa0IsZUFBQSxHQUFjYixjQUFjLENBQUMsUUFBUSxDQUFDO0lBQTlCYyxDQUFDLEdBQUFELGVBQUEsQ0FBREMsQ0FBQztFQUNULElBQUFDLGNBQUEsR0FBc0NkLGFBQWEsQ0FBQyxDQUFDO0lBQTdDZSxjQUFjLEdBQUFELGNBQUEsQ0FBZEMsY0FBYztJQUFFQyxTQUFTLEdBQUFGLGNBQUEsQ0FBVEUsU0FBUztFQUNqQyxJQUFBQyxZQUFBLEdBQXdFZixXQUFXLENBQUMsQ0FBQztJQUE3RWdCLGNBQWMsR0FBQUQsWUFBQSxDQUFkQyxjQUFjO0lBQUVDLE9BQU8sR0FB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
|