@projectcor/people-microfront 1.0.8-0 → 1.0.9-0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/components/Filters/FilterChip/FilterChip.js +36 -15
- package/lib/components/Filters/SearchComponent/SearchComponent.js +7 -3
- package/lib/components/Filters/SearchComponent/SearchComponent.styles.js +9 -3
- package/lib/components/Loading/LoadingComponent.js +16 -3
- package/lib/components/Loading/LoadingComponent.style.js +11 -2
- package/lib/components/ModalOptionsWithSearch/ModalOptionsWithSearch.js +73 -22
- package/lib/components/ModalOptionsWithSearch/SearchInput.js +6 -3
- package/lib/container/Body/BodyContainerViewTeams.js +15 -12
- package/lib/container/Filters/FiltersContainer.js +166 -21
- package/lib/hooks/useAssignedWorkspacesFromHost.js +118 -0
- package/lib/lang/translation/br.json +3 -0
- package/lib/lang/translation/en.json +3 -0
- package/lib/lang/translation/es.json +3 -0
- package/lib/lang/translation/fr.json +3 -0
- package/lib/query/getWorkspaces.js +5 -0
- package/lib/utils/isCorWorkspacesFeatureEnabled.js +10 -0
- package/package.json +1 -1
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
|
|
2
2
|
import { useState, useEffect, useCallback, lazy, Suspense } from 'react';
|
|
3
|
+
import { useAssignedWorkspacesFromHost } from '../../hooks/useAssignedWorkspacesFromHost';
|
|
3
4
|
import { TeamRow } from '../../components/Table/TeamRow/TeamRow';
|
|
4
5
|
import { useTeams } from '../../context/TeamsContext';
|
|
5
6
|
import { LoaderComponent } from '../../components/Loading/LoadingComponent';
|
|
@@ -8,6 +9,7 @@ import { useUpdateTeam } from '../../hooks/useUpdateTeam';
|
|
|
8
9
|
import { useAssignUserToTeam } from '../../hooks/useAssignUserToTeam';
|
|
9
10
|
import { useUnassignUserFromTeam } from '../../hooks/useUnassignUserFromTeam';
|
|
10
11
|
import { useDeleteTeam } from '../../hooks/useDeleteTeam';
|
|
12
|
+
import { isCorWorkspacesFeatureEnabled } from '../../utils/isCorWorkspacesFeatureEnabled';
|
|
11
13
|
import { EmptyStateTeams } from '../../components/EmptyStateTeams';
|
|
12
14
|
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
13
15
|
var LazyTeamDetailsModal = /*#__PURE__*/lazy(function () {
|
|
@@ -24,16 +26,6 @@ var LazyDeleteTeamModal = /*#__PURE__*/lazy(function () {
|
|
|
24
26
|
};
|
|
25
27
|
});
|
|
26
28
|
});
|
|
27
|
-
var mockWorkspacesList = [{
|
|
28
|
-
id: 1,
|
|
29
|
-
name: 'Workspace 1'
|
|
30
|
-
}, {
|
|
31
|
-
id: 2,
|
|
32
|
-
name: 'Workspace 2'
|
|
33
|
-
}, {
|
|
34
|
-
id: 3,
|
|
35
|
-
name: 'Workspace 3'
|
|
36
|
-
}];
|
|
37
29
|
var mockMembersList = [{
|
|
38
30
|
id: 1,
|
|
39
31
|
firstName: 'User 1',
|
|
@@ -80,6 +72,17 @@ export var BodyContainerViewTeams = function BodyContainerViewTeams() {
|
|
|
80
72
|
_useState0 = _slicedToArray(_useState9, 2),
|
|
81
73
|
isDeleteModalOpen = _useState0[0],
|
|
82
74
|
setIsDeleteModalOpen = _useState0[1];
|
|
75
|
+
var workspacesFeatureEnabled = isCorWorkspacesFeatureEnabled();
|
|
76
|
+
var _useAssignedWorkspace = useAssignedWorkspacesFromHost(workspacesFeatureEnabled),
|
|
77
|
+
workspacesList = _useAssignedWorkspace.workspacesList,
|
|
78
|
+
handleGetWorkspaces = _useAssignedWorkspace.handleGetWorkspaces;
|
|
79
|
+
useEffect(function () {
|
|
80
|
+
if (isModalOpen && workspacesFeatureEnabled) {
|
|
81
|
+
handleGetWorkspaces({
|
|
82
|
+
page: 1
|
|
83
|
+
});
|
|
84
|
+
}
|
|
85
|
+
}, [isModalOpen, workspacesFeatureEnabled, handleGetWorkspaces]);
|
|
83
86
|
var handleShowTeamDetails = function handleShowTeamDetails(teamId) {
|
|
84
87
|
var team = teams.find(function (t) {
|
|
85
88
|
return t.id === teamId;
|
|
@@ -196,7 +199,7 @@ export var BodyContainerViewTeams = function BodyContainerViewTeams() {
|
|
|
196
199
|
onEdit: handleEditTeam,
|
|
197
200
|
onCreate: handleCreateTeamSubmit,
|
|
198
201
|
mode: modalMode,
|
|
199
|
-
workspacesList:
|
|
202
|
+
workspacesList: workspacesList,
|
|
200
203
|
membersList: mockMembersList
|
|
201
204
|
})
|
|
202
205
|
}), isDeleteModalOpen && /*#__PURE__*/_jsx(Suspense, {
|
|
@@ -210,4 +213,4 @@ export var BodyContainerViewTeams = function BodyContainerViewTeams() {
|
|
|
210
213
|
})]
|
|
211
214
|
});
|
|
212
215
|
};
|
|
213
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ1c2VTdGF0ZSIsInVzZUVmZmVjdCIsInVzZUNhbGxiYWNrIiwibGF6eSIsIlN1c3BlbnNlIiwiVGVhbVJvdyIsInVzZVRlYW1zIiwiTG9hZGVyQ29tcG9uZW50IiwidXNlQ3JlYXRlVGVhbSIsInVzZVVwZGF0ZVRlYW0iLCJ1c2VBc3NpZ25Vc2VyVG9UZWFtIiwidXNlVW5hc3NpZ25Vc2VyRnJvbVRlYW0iLCJ1c2VEZWxldGVUZWFtIiwiRW1wdHlTdGF0ZVRlYW1zIiwianN4IiwiX2pzeCIsIkZyYWdtZW50IiwiX0ZyYWdtZW50IiwianN4cyIsIl9qc3hzIiwiTGF6eVRlYW1EZXRhaWxzTW9kYWwiLCJ0aGVuIiwibW9kdWxlIiwiVGVhbURldGFpbHNNb2RhbCIsIkxhenlEZWxldGVUZWFtTW9kYWwiLCJEZWxldGVUZWFtTW9kYWwiLCJtb2NrV29ya3NwYWNlc0xpc3QiLCJpZCIsIm5hbWUiLCJtb2NrTWVtYmVyc0xpc3QiLCJmaXJzdE5hbWUiLCJsYXN0TmFtZSIsIkJvZHlDb250YWluZXJWaWV3VGVhbXMiLCJfdXNlVGVhbXMiLCJ0ZWFtcyIsIl91c2VDcmVhdGVUZWFtIiwiZmV0Y2hDcmVhdGVUZWFtIiwiX3VzZVVwZGF0ZVRlYW0iLCJ1cGRhdGVUZWFtIiwiX3VzZUFzc2lnblVzZXJUb1RlYW0iLCJhc3NpZ25Vc2VyVG9UZWFtIiwiX3VzZVVuYXNzaWduVXNlckZyb21UIiwidW5hc3NpZ25Vc2VyRnJvbVRlYW0iLCJfdXNlRGVsZXRlVGVhbSIsImRlbGV0ZVRlYW0iLCJfdXNlU3RhdGUiLCJfdXNlU3RhdGUyIiwiX3NsaWNlZFRvQXJyYXkiLCJzZWxlY3RlZFRlYW0iLCJzZXRTZWxlY3RlZFRlYW0iLCJfdXNlU3RhdGUzIiwiX3VzZVN0YXRlNCIsImlzTW9kYWxPcGVuIiwic2V0SXNNb2RhbE9wZW4iLCJfdXNlU3RhdGU1IiwiX3VzZVN0YXRlNiIsIm1vZGFsTW9kZSIsInNldE1vZGFsTW9kZSIsIl91c2VTdGF0ZTciLCJfdXNlU3RhdGU4IiwidGVhbVRvRGVsZXRlIiwic2V0VGVhbVRvRGVsZXRlIiwiX3VzZVN0YXRlOSIsIl91c2VTdGF0ZTAiLCJpc0RlbGV0ZU1vZGFsT3BlbiIsInNldElzRGVsZXRlTW9kYWxPcGVuIiwiaGFuZGxlU2hvd1RlYW1EZXRhaWxzIiwidGVhbUlkIiwidGVhbSIsImZpbmQiLCJ0IiwiaGFuZGxlQ3JlYXRlVGVhbSIsImhhbmRsZUNyZWF0ZVRlYW1FdmVudCIsIndpbmRvdyIsImFkZEV2ZW50TGlzdGVuZXIiLCJyZW1vdmVFdmVudExpc3RlbmVyIiwiaGFuZGxlQ2xvc2VNb2RhbCIsImhhbmRsZUVkaXRUZWFtIiwiZm9ybURhdGEiLCJmaWVsZHMiLCJkZXNjcmlwdGlvbiIsImhhc1dvcmtzcGFjZXNGZWF0dXJlIiwid29ya3NwYWNlIiwid29ya3NwYWNlSWQiLCJoYW5kbGVDcmVhdGVUZWFtU3VibWl0IiwiaGFuZGxlRWRpdFRlYW1Gcm9tTWVudSIsImhhbmRsZURlbGV0ZVRlYW0iLCJoYW5kbGVDbG9zZURlbGV0ZU1vZGFsIiwiaGFuZGxlQ29uZmlybURlbGV0ZSIsImRlbGV0ZUZyb21Qcm9qZWN0cyIsImhhbmRsZUFkZFVzZXIiLCJ1c2VySWQiLCJnaXZlQWNjZXNzVG9BbGxQcm9qZWN0cyIsInNldFVzZXJUZWFtUHJvamVjdCIsImhhbmRsZVJlbW92ZVVzZXIiLCJjaGlsZHJlbiIsImxlbmd0aCIsImNsaWNrQ3JlYXRlVGVhbSIsImZhbGxiYWNrIiwiaXNPcGVuIiwib25DbG9zZSIsIm9uRWRpdCIsIm9uQ3JlYXRlIiwibW9kZSIsIndvcmtzcGFjZXNMaXN0IiwibWVtYmVyc0xpc3QiLCJvbkNvbmZpcm0iXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29udGFpbmVyL0JvZHkvQm9keUNvbnRhaW5lclZpZXdUZWFtcy50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdXNlU3RhdGUsIHVzZUVmZmVjdCwgdXNlQ2FsbGJhY2ssIGxhenksIFN1c3BlbnNlIH0gZnJvbSAncmVhY3QnXG5pbXBvcnQgeyBUZWFtUm93IH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cy9UYWJsZS9UZWFtUm93L1RlYW1Sb3cnXG5pbXBvcnQgdHlwZSB7IFRlYW0sIEZvcm1EYXRhIH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cy9UZWFtRGV0YWlsc01vZGFsJ1xuaW1wb3J0IHsgdXNlVGVhbXMgfSBmcm9tICcuLi8uLi9jb250ZXh0L1RlYW1zQ29udGV4dCdcbmltcG9ydCB7IExvYWRlckNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMvTG9hZGluZy9Mb2FkaW5nQ29tcG9uZW50J1xuaW1wb3J0IHsgdXNlQ3JlYXRlVGVhbSB9IGZyb20gJy4uLy4uL2hvb2tzL3VzZUNyZWF0ZVRlYW1zJ1xuaW1wb3J0IHsgdXNlVXBkYXRlVGVhbSB9IGZyb20gJy4uLy4uL2hvb2tzL3VzZVVwZGF0ZVRlYW0nXG5pbXBvcnQgeyB1c2VBc3NpZ25Vc2VyVG9UZWFtIH0gZnJvbSAnLi4vLi4vaG9va3MvdXNlQXNzaWduVXNlclRvVGVhbSdcbmltcG9ydCB7IHVzZVVuYXNzaWduVXNlckZyb21UZWFtIH0gZnJvbSAnLi4vLi4vaG9va3MvdXNlVW5hc3NpZ25Vc2VyRnJvbVRlYW0nXG5pbXBvcnQgeyB1c2VEZWxldGVUZWFtIH0gZnJvbSAnLi4vLi4vaG9va3MvdXNlRGVsZXRlVGVhbSdcbmltcG9ydCB7IEVtcHR5U3RhdGVUZWFtcyB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMvRW1wdHlTdGF0ZVRlYW1zJ1xuXG5jb25zdCBMYXp5VGVhbURldGFpbHNNb2RhbCA9IGxhenkoKCkgPT5cbiAgaW1wb3J0KCcuLi8uLi9jb21wb25lbnRzL1RlYW1EZXRhaWxzTW9kYWwnKS50aGVuKG1vZHVsZSA9PiAoeyBkZWZhdWx0OiBtb2R1bGUuVGVhbURldGFpbHNNb2RhbCB9KSlcbilcblxuY29uc3QgTGF6eURlbGV0ZVRlYW1Nb2RhbCA9IGxhenkoKCkgPT5cbiAgaW1wb3J0KCcuLi8uLi9jb21wb25lbnRzL0RlbGV0ZVRlYW1Nb2RhbCcpLnRoZW4obW9kdWxlID0+ICh7IGRlZmF1bHQ6IG1vZHVsZS5EZWxldGVUZWFtTW9kYWwgfSkpXG4pXG5cbmNvbnN0IG1vY2tXb3Jrc3BhY2VzTGlzdCA9IFtcbiAgeyBpZDogMSwgbmFtZTogJ1dvcmtzcGFjZSAxJyB9LFxuICB7IGlkOiAyLCBuYW1lOiAnV29ya3NwYWNlIDInIH0sXG4gIHsgaWQ6IDMsIG5hbWU6ICdXb3Jrc3BhY2UgMycgfSxcbl1cblxuY29uc3QgbW9ja01lbWJlcnNMaXN0ID0gW1xuICB7IGlkOiAxLCBmaXJzdE5hbWU6ICdVc2VyIDEnLCBsYXN0TmFtZTogJ0FwZWxsaWRvIDEnIH0sXG4gIHsgaWQ6IDIsIGZpcnN0TmFtZTogJ1VzZXIgMicsIGxhc3ROYW1lOiAnQXBlbGxpZG8gMicgfSxcbiAgeyBpZDogMywgZmlyc3ROYW1lOiAnVXNlciAzJywgbGFzdE5hbWU6ICdBcGVsbGlkbyAzJyB9LFxuXVxuXG5leHBvcnQgY29uc3QgQm9keUNvbnRhaW5lclZpZXdUZWFtcyA9ICgpID0+IHtcbiAgY29uc3QgeyB0ZWFtcyB9ID0gdXNlVGVhbXMoKVxuICBjb25zdCB7IGZldGNoQ3JlYXRlVGVhbSB9ID0gdXNlQ3JlYXRlVGVhbSgpXG4gIGNvbnN0IHsgdXBkYXRlVGVhbSB9ID0gdXNlVXBkYXRlVGVhbSgpXG4gIGNvbnN0IHsgYXNzaWduVXNlclRvVGVhbSB9ID0gdXNlQXNzaWduVXNlclRvVGVhbSgpXG4gIGNvbnN0IHsgdW5hc3NpZ25Vc2VyRnJvbVRlYW0gfSA9IHVzZVVuYXNzaWduVXNlckZyb21UZWFtKClcbiAgY29uc3QgeyBkZWxldGVUZWFtIH0gPSB1c2VEZWxldGVUZWFtKClcbiAgY29uc3QgW3NlbGVjdGVkVGVhbSwgc2V0U2VsZWN0ZWRUZWFtXSA9IHVzZVN0YXRlPFRlYW0gfCBudWxsPihudWxsKVxuICBjb25zdCBbaXNNb2RhbE9wZW4sIHNldElzTW9kYWxPcGVuXSA9IHVzZVN0YXRlKGZhbHNlKVxuICBjb25zdCBbbW9kYWxNb2RlLCBzZXRNb2RhbE1vZGVdID0gdXNlU3RhdGU8J3ZpZXcnIHwgJ2VkaXQnIHwgJ2NyZWF0ZSc+KCd2aWV3JylcbiAgY29uc3QgW3RlYW1Ub0RlbGV0ZSwgc2V0VGVhbVRvRGVsZXRlXSA9IHVzZVN0YXRlPFRlYW0gfCBudWxsPihudWxsKVxuICBjb25zdCBbaXNEZWxldGVNb2RhbE9wZW4sIHNldElzRGVsZXRlTW9kYWxPcGVuXSA9IHVzZVN0YXRlKGZhbHNlKVxuXG4gIGNvbnN0IGhhbmRsZVNob3dUZWFtRGV0YWlscyA9ICh0ZWFtSWQ6IG51bWJlcikgPT4ge1xuICAgIGNvbnN0IHRlYW0gPSB0ZWFtcy5maW5kKHQgPT4gdC5pZCA9PT0gdGVhbUlkKVxuICAgIGlmICh0ZWFtKSB7XG4gICAgICBzZXRTZWxlY3RlZFRlYW0odGVhbSlcbiAgICAgIHNldE1vZGFsTW9kZSgndmlldycpXG4gICAgICBzZXRJc01vZGFsT3Blbih0cnVlKVxuICAgIH1cbiAgfVxuXG4gIGNvbnN0IGhhbmRsZUNyZWF0ZVRlYW0gPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgc2V0U2VsZWN0ZWRUZWFtKG51bGwpXG4gICAgc2V0TW9kYWxNb2RlKCdjcmVhdGUnKVxuICAgIHNldElzTW9kYWxPcGVuKHRydWUpXG4gIH0sIFtdKVxuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgY29uc3QgaGFuZGxlQ3JlYXRlVGVhbUV2ZW50ID0gKCkgPT4ge1xuICAgICAgaGFuZGxlQ3JlYXRlVGVhbSgpXG4gICAgfVxuXG4gICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ2NyZWF0ZVRlYW0nLCBoYW5kbGVDcmVhdGVUZWFtRXZlbnQpXG5cbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2NyZWF0ZVRlYW0nLCBoYW5kbGVDcmVhdGVUZWFtRXZlbnQpXG4gICAgfVxuICB9LCBbaGFuZGxlQ3JlYXRlVGVhbV0pXG5cbiAgY29uc3QgaGFuZGxlQ2xvc2VNb2RhbCA9ICgpID0+IHtcbiAgICBzZXRJc01vZGFsT3BlbihmYWxzZSlcbiAgICBzZXRTZWxlY3RlZFRlYW0obnVsbClcbiAgICBzZXRNb2RhbE1vZGUoJ3ZpZXcnKVxuICB9XG5cbiAgY29uc3QgaGFuZGxlRWRpdFRlYW0gPSAoZm9ybURhdGE6IEZvcm1EYXRhKSA9PiB7XG4gICAgaWYgKCFzZWxlY3RlZFRlYW0pIHJldHVyblxuXG4gICAgY29uc3QgZmllbGRzOiB7XG4gICAgICBpZDogbnVtYmVyXG4gICAgICBuYW1lOiBzdHJpbmdcbiAgICAgIGRlc2NyaXB0aW9uOiBzdHJpbmdcbiAgICAgIHdvcmtzcGFjZUlkPzogbnVtYmVyXG4gICAgfSA9IHtcbiAgICAgIGlkOiArc2VsZWN0ZWRUZWFtLmlkLFxuICAgICAgbmFtZTogZm9ybURhdGEubmFtZSxcbiAgICAgIGRlc2NyaXB0aW9uOiBmb3JtRGF0YS5kZXNjcmlwdGlvbixcbiAgICB9XG5cbiAgICBpZiAod2luZG93Lmhhc1dvcmtzcGFjZXNGZWF0dXJlICYmIGZvcm1EYXRhLndvcmtzcGFjZSkge1xuICAgICAgZmllbGRzLndvcmtzcGFjZUlkID0gZm9ybURhdGEud29ya3NwYWNlLmlkXG4gICAgfVxuXG4gICAgdXBkYXRlVGVhbShmaWVsZHMpXG4gICAgaGFuZGxlQ2xvc2VNb2RhbCgpXG4gIH1cblxuICBjb25zdCBoYW5kbGVDcmVhdGVUZWFtU3VibWl0ID0gKGZvcm1EYXRhOiBGb3JtRGF0YSkgPT4ge1xuICAgIGNvbnN0IGZpZWxkczoge1xuICAgICAgbmFtZTogc3RyaW5nXG4gICAgICBkZXNjcmlwdGlvbjogc3RyaW5nXG4gICAgICB3b3Jrc3BhY2VJZD86IG51bWJlclxuICAgIH0gPSB7XG4gICAgICBuYW1lOiBmb3JtRGF0YS5uYW1lLFxuICAgICAgLy8gdXNlcnM6IGZvcm1EYXRhLm1lbWJlcnMubWFwKG1lbWJlciA9PiBtZW1iZXIuaWQpLCBUT0RPOiBWYSBlbiBsYSBzZWd1bmRhIHZlcnNpb25cbiAgICAgIGRlc2NyaXB0aW9uOiBmb3JtRGF0YS5kZXNjcmlwdGlvbixcbiAgICB9XG5cbiAgICBpZiAod2luZG93Lmhhc1dvcmtzcGFjZXNGZWF0dXJlICYmIGZvcm1EYXRhLndvcmtzcGFjZSkge1xuICAgICAgZmllbGRzLndvcmtzcGFjZUlkID0gZm9ybURhdGEud29ya3NwYWNlLmlkXG4gICAgfVxuICAgIGZldGNoQ3JlYXRlVGVhbShmaWVsZHMpXG4gICAgaGFuZGxlQ2xvc2VNb2RhbCgpXG4gIH1cblxuICBjb25zdCBoYW5kbGVFZGl0VGVhbUZyb21NZW51ID0gKHRlYW1JZDogbnVtYmVyKSA9PiB7XG4gICAgY29uc3QgdGVhbSA9IHRlYW1zLmZpbmQodCA9PiB0LmlkID09PSB0ZWFtSWQpXG4gICAgaWYgKHRlYW0pIHtcbiAgICAgIHNldFNlbGVjdGVkVGVhbSh0ZWFtKVxuICAgICAgc2V0TW9kYWxNb2RlKCdlZGl0JylcbiAgICAgIHNldElzTW9kYWxPcGVuKHRydWUpXG4gICAgfVxuICB9XG5cbiAgY29uc3QgaGFuZGxlRGVsZXRlVGVhbSA9ICh0ZWFtSWQ6IG51bWJlcikgPT4ge1xuICAgIGNvbnN0IHRlYW0gPSB0ZWFtcy5maW5kKHQgPT4gdC5pZCA9PT0gdGVhbUlkKVxuICAgIGlmICh0ZWFtKSB7XG4gICAgICBzZXRUZWFtVG9EZWxldGUodGVhbSlcbiAgICAgIHNldElzRGVsZXRlTW9kYWxPcGVuKHRydWUpXG4gICAgfVxuICB9XG5cbiAgY29uc3QgaGFuZGxlQ2xvc2VEZWxldGVNb2RhbCA9ICgpID0+IHtcbiAgICBzZXRJc0RlbGV0ZU1vZGFsT3BlbihmYWxzZSlcbiAgICBzZXRUZWFtVG9EZWxldGUobnVsbClcbiAgfVxuXG4gIGNvbnN0IGhhbmRsZUNvbmZpcm1EZWxldGUgPSAoZGVsZXRlRnJvbVByb2plY3RzOiBib29sZWFuKSA9PiB7XG4gICAgaWYgKHRlYW1Ub0RlbGV0ZSkge1xuICAgICAgZGVsZXRlVGVhbSh0ZWFtVG9EZWxldGUuaWQsIGRlbGV0ZUZyb21Qcm9qZWN0cylcbiAgICB9XG4gICAgaGFuZGxlQ2xvc2VEZWxldGVNb2RhbCgpXG4gIH1cblxuICBjb25zdCBoYW5kbGVBZGRVc2VyID0gKHRlYW1JZDogbnVtYmVyLCB1c2VySWQ6IG51bWJlciwgZ2l2ZUFjY2Vzc1RvQWxsUHJvamVjdHM6IGJvb2xlYW4pID0+IHtcbiAgICBhc3NpZ25Vc2VyVG9UZWFtKHtcbiAgICAgIHNldFVzZXJUZWFtUHJvamVjdDogZ2l2ZUFjY2Vzc1RvQWxsUHJvamVjdHMsXG4gICAgICB1c2VySWQsXG4gICAgICB0ZWFtSWQsXG4gICAgfSlcbiAgfVxuXG4gIGNvbnN0IGhhbmRsZVJlbW92ZVVzZXIgPSAodGVhbUlkOiBudW1iZXIsIHVzZXJJZDogbnVtYmVyLCBkZWxldGVGcm9tUHJvamVjdHM6IGJvb2xlYW4pID0+IHtcbiAgICB1bmFzc2lnblVzZXJGcm9tVGVhbSh7XG4gICAgICBkZWxldGVGcm9tUHJvamVjdHMsXG4gICAgICB1c2VySWQsXG4gICAgICB0ZWFtSWQsXG4gICAgfSlcbiAgfVxuXG4gIHJldHVybiAoXG4gICAgPD5cbiAgICAgIHt0ZWFtcy5sZW5ndGggPiAwID8gKFxuICAgICAgICA8VGVhbVJvd1xuICAgICAgICAgIHRlYW1zPXt0ZWFtc31cbiAgICAgICAgICBoYW5kbGVTaG93VGVhbURldGFpbHM9e2hhbmRsZVNob3dUZWFtRGV0YWlsc31cbiAgICAgICAgICBoYW5kbGVEZWxldGVUZWFtPXtoYW5kbGVEZWxldGVUZWFtfVxuICAgICAgICAgIGhhbmRsZUVkaXRUZWFtPXtoYW5kbGVFZGl0VGVhbUZyb21NZW51fVxuICAgICAgICAgIGhhbmRsZVJlbW92ZVVzZXI9e2hhbmRsZVJlbW92ZVVzZXJ9XG4gICAgICAgICAgaGFuZGxlQWRkVXNlcj17aGFuZGxlQWRkVXNlcn1cbiAgICAgICAgLz5cbiAgICAgICkgOiAoXG4gICAgICAgIDxFbXB0eVN0YXRlVGVhbXMgY2xpY2tDcmVhdGVUZWFtPXtoYW5kbGVDcmVhdGVUZWFtfSAvPlxuICAgICAgKX1cbiAgICAgIHtpc01vZGFsT3BlbiAmJiAoXG4gICAgICAgIDxTdXNwZW5zZSBmYWxsYmFjaz17PExvYWRlckNvbXBvbmVudCAvPn0+XG4gICAgICAgICAgPExhenlUZWFtRGV0YWlsc01vZGFsXG4gICAgICAgICAgICB0ZWFtPXtzZWxlY3RlZFRlYW19XG4gICAgICAgICAgICBpc09wZW49e2lzTW9kYWxPcGVufVxuICAgICAgICAgICAgb25DbG9zZT17aGFuZGxlQ2xvc2VNb2RhbH1cbiAgICAgICAgICAgIG9uRWRpdD17aGFuZGxlRWRpdFRlYW19XG4gICAgICAgICAgICBvbkNyZWF0ZT17aGFuZGxlQ3JlYXRlVGVhbVN1Ym1pdH1cbiAgICAgICAgICAgIG1vZGU9e21vZGFsTW9kZX1cbiAgICAgICAgICAgIHdvcmtzcGFjZXNMaXN0PXttb2NrV29ya3NwYWNlc0xpc3R9XG4gICAgICAgICAgICBtZW1iZXJzTGlzdD17bW9ja01lbWJlcnNMaXN0fVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvU3VzcGVuc2U+XG4gICAgICApfVxuICAgICAge2lzRGVsZXRlTW9kYWxPcGVuICYmIChcbiAgICAgICAgPFN1c3BlbnNlIGZhbGxiYWNrPXs8TG9hZGVyQ29tcG9uZW50IC8+fT5cbiAgICAgICAgICA8TGF6eURlbGV0ZVRlYW1Nb2RhbFxuICAgICAgICAgICAgdGVhbT17dGVhbVRvRGVsZXRlfVxuICAgICAgICAgICAgaXNPcGVuPXtpc0RlbGV0ZU1vZGFsT3Blbn1cbiAgICAgICAgICAgIG9uQ2xvc2U9e2hhbmRsZUNsb3NlRGVsZXRlTW9kYWx9XG4gICAgICAgICAgICBvbkNvbmZpcm09e2hhbmRsZUNvbmZpcm1EZWxldGV9XG4gICAgICAgICAgLz5cbiAgICAgICAgPC9TdXNwZW5zZT5cbiAgICAgICl9XG4gICAgPC8+XG4gIClcbn1cbiJdLCJtYXBwaW5ncyI6IjtBQUFBLFNBQVNBLFFBQVEsRUFBRUMsU0FBUyxFQUFFQyxXQUFXLEVBQUVDLElBQUksRUFBRUMsUUFBUSxRQUFRLE9BQU87QUFDeEUsU0FBU0MsT0FBTyxRQUFRLHdDQUF3QztBQUVoRSxTQUFTQyxRQUFRLFFBQVEsNEJBQTRCO0FBQ3JELFNBQVNDLGVBQWUsUUFB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
|
|
216
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ1c2VTdGF0ZSIsInVzZUVmZmVjdCIsInVzZUNhbGxiYWNrIiwibGF6eSIsIlN1c3BlbnNlIiwidXNlQXNzaWduZWRXb3Jrc3BhY2VzRnJvbUhvc3QiLCJUZWFtUm93IiwidXNlVGVhbXMiLCJMb2FkZXJDb21wb25lbnQiLCJ1c2VDcmVhdGVUZWFtIiwidXNlVXBkYXRlVGVhbSIsInVzZUFzc2lnblVzZXJUb1RlYW0iLCJ1c2VVbmFzc2lnblVzZXJGcm9tVGVhbSIsInVzZURlbGV0ZVRlYW0iLCJpc0NvcldvcmtzcGFjZXNGZWF0dXJlRW5hYmxlZCIsIkVtcHR5U3RhdGVUZWFtcyIsImpzeCIsIl9qc3giLCJGcmFnbWVudCIsIl9GcmFnbWVudCIsImpzeHMiLCJfanN4cyIsIkxhenlUZWFtRGV0YWlsc01vZGFsIiwidGhlbiIsIm1vZHVsZSIsIlRlYW1EZXRhaWxzTW9kYWwiLCJMYXp5RGVsZXRlVGVhbU1vZGFsIiwiRGVsZXRlVGVhbU1vZGFsIiwibW9ja01lbWJlcnNMaXN0IiwiaWQiLCJmaXJzdE5hbWUiLCJsYXN0TmFtZSIsIkJvZHlDb250YWluZXJWaWV3VGVhbXMiLCJfdXNlVGVhbXMiLCJ0ZWFtcyIsIl91c2VDcmVhdGVUZWFtIiwiZmV0Y2hDcmVhdGVUZWFtIiwiX3VzZVVwZGF0ZVRlYW0iLCJ1cGRhdGVUZWFtIiwiX3VzZUFzc2lnblVzZXJUb1RlYW0iLCJhc3NpZ25Vc2VyVG9UZWFtIiwiX3VzZVVuYXNzaWduVXNlckZyb21UIiwidW5hc3NpZ25Vc2VyRnJvbVRlYW0iLCJfdXNlRGVsZXRlVGVhbSIsImRlbGV0ZVRlYW0iLCJfdXNlU3RhdGUiLCJfdXNlU3RhdGUyIiwiX3NsaWNlZFRvQXJyYXkiLCJzZWxlY3RlZFRlYW0iLCJzZXRTZWxlY3RlZFRlYW0iLCJfdXNlU3RhdGUzIiwiX3VzZVN0YXRlNCIsImlzTW9kYWxPcGVuIiwic2V0SXNNb2RhbE9wZW4iLCJfdXNlU3RhdGU1IiwiX3VzZVN0YXRlNiIsIm1vZGFsTW9kZSIsInNldE1vZGFsTW9kZSIsIl91c2VTdGF0ZTciLCJfdXNlU3RhdGU4IiwidGVhbVRvRGVsZXRlIiwic2V0VGVhbVRvRGVsZXRlIiwiX3VzZVN0YXRlOSIsIl91c2VTdGF0ZTAiLCJpc0RlbGV0ZU1vZGFsT3BlbiIsInNldElzRGVsZXRlTW9kYWxPcGVuIiwid29ya3NwYWNlc0ZlYXR1cmVFbmFibGVkIiwiX3VzZUFzc2lnbmVkV29ya3NwYWNlIiwid29ya3NwYWNlc0xpc3QiLCJoYW5kbGVHZXRXb3Jrc3BhY2VzIiwicGFnZSIsImhhbmRsZVNob3dUZWFtRGV0YWlscyIsInRlYW1JZCIsInRlYW0iLCJmaW5kIiwidCIsImhhbmRsZUNyZWF0ZVRlYW0iLCJoYW5kbGVDcmVhdGVUZWFtRXZlbnQiLCJ3aW5kb3ciLCJhZGRFdmVudExpc3RlbmVyIiwicmVtb3ZlRXZlbnRMaXN0ZW5lciIsImhhbmRsZUNsb3NlTW9kYWwiLCJoYW5kbGVFZGl0VGVhbSIsImZvcm1EYXRhIiwiZmllbGRzIiwibmFtZSIsImRlc2NyaXB0aW9uIiwiaGFzV29ya3NwYWNlc0ZlYXR1cmUiLCJ3b3Jrc3BhY2UiLCJ3b3Jrc3BhY2VJZCIsImhhbmRsZUNyZWF0ZVRlYW1TdWJtaXQiLCJoYW5kbGVFZGl0VGVhbUZyb21NZW51IiwiaGFuZGxlRGVsZXRlVGVhbSIsImhhbmRsZUNsb3NlRGVsZXRlTW9kYWwiLCJoYW5kbGVDb25maXJtRGVsZXRlIiwiZGVsZXRlRnJvbVByb2plY3RzIiwiaGFuZGxlQWRkVXNlciIsInVzZXJJZCIsImdpdmVBY2Nlc3NUb0FsbFByb2plY3RzIiwic2V0VXNlclRlYW1Qcm9qZWN0IiwiaGFuZGxlUmVtb3ZlVXNlciIsImNoaWxkcmVuIiwibGVuZ3RoIiwiY2xpY2tDcmVhdGVUZWFtIiwiZmFsbGJhY2siLCJpc09wZW4iLCJvbkNsb3NlIiwib25FZGl0Iiwib25DcmVhdGUiLCJtb2RlIiwibWVtYmVyc0xpc3QiLCJvbkNvbmZpcm0iXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29udGFpbmVyL0JvZHkvQm9keUNvbnRhaW5lclZpZXdUZWFtcy50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdXNlU3RhdGUsIHVzZUVmZmVjdCwgdXNlQ2FsbGJhY2ssIGxhenksIFN1c3BlbnNlIH0gZnJvbSAncmVhY3QnXG5pbXBvcnQgeyB1c2VBc3NpZ25lZFdvcmtzcGFjZXNGcm9tSG9zdCB9IGZyb20gJy4uLy4uL2hvb2tzL3VzZUFzc2lnbmVkV29ya3NwYWNlc0Zyb21Ib3N0J1xuaW1wb3J0IHsgVGVhbVJvdyB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMvVGFibGUvVGVhbVJvdy9UZWFtUm93J1xuaW1wb3J0IHR5cGUgeyBUZWFtLCBGb3JtRGF0YSB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMvVGVhbURldGFpbHNNb2RhbCdcbmltcG9ydCB7IHVzZVRlYW1zIH0gZnJvbSAnLi4vLi4vY29udGV4dC9UZWFtc0NvbnRleHQnXG5pbXBvcnQgeyBMb2FkZXJDb21wb25lbnQgfSBmcm9tICcuLi8uLi9jb21wb25lbnRzL0xvYWRpbmcvTG9hZGluZ0NvbXBvbmVudCdcbmltcG9ydCB7IHVzZUNyZWF0ZVRlYW0gfSBmcm9tICcuLi8uLi9ob29rcy91c2VDcmVhdGVUZWFtcydcbmltcG9ydCB7IHVzZVVwZGF0ZVRlYW0gfSBmcm9tICcuLi8uLi9ob29rcy91c2VVcGRhdGVUZWFtJ1xuaW1wb3J0IHsgdXNlQXNzaWduVXNlclRvVGVhbSB9IGZyb20gJy4uLy4uL2hvb2tzL3VzZUFzc2lnblVzZXJUb1RlYW0nXG5pbXBvcnQgeyB1c2VVbmFzc2lnblVzZXJGcm9tVGVhbSB9IGZyb20gJy4uLy4uL2hvb2tzL3VzZVVuYXNzaWduVXNlckZyb21UZWFtJ1xuaW1wb3J0IHsgdXNlRGVsZXRlVGVhbSB9IGZyb20gJy4uLy4uL2hvb2tzL3VzZURlbGV0ZVRlYW0nXG5pbXBvcnQgeyBpc0NvcldvcmtzcGFjZXNGZWF0dXJlRW5hYmxlZCB9IGZyb20gJy4uLy4uL3V0aWxzL2lzQ29yV29ya3NwYWNlc0ZlYXR1cmVFbmFibGVkJ1xuaW1wb3J0IHsgRW1wdHlTdGF0ZVRlYW1zIH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cy9FbXB0eVN0YXRlVGVhbXMnXG5cbmNvbnN0IExhenlUZWFtRGV0YWlsc01vZGFsID0gbGF6eSgoKSA9PlxuICBpbXBvcnQoJy4uLy4uL2NvbXBvbmVudHMvVGVhbURldGFpbHNNb2RhbCcpLnRoZW4obW9kdWxlID0+ICh7IGRlZmF1bHQ6IG1vZHVsZS5UZWFtRGV0YWlsc01vZGFsIH0pKVxuKVxuXG5jb25zdCBMYXp5RGVsZXRlVGVhbU1vZGFsID0gbGF6eSgoKSA9PlxuICBpbXBvcnQoJy4uLy4uL2NvbXBvbmVudHMvRGVsZXRlVGVhbU1vZGFsJykudGhlbihtb2R1bGUgPT4gKHsgZGVmYXVsdDogbW9kdWxlLkRlbGV0ZVRlYW1Nb2RhbCB9KSlcbilcblxuY29uc3QgbW9ja01lbWJlcnNMaXN0ID0gW1xuICB7IGlkOiAxLCBmaXJzdE5hbWU6ICdVc2VyIDEnLCBsYXN0TmFtZTogJ0FwZWxsaWRvIDEnIH0sXG4gIHsgaWQ6IDIsIGZpcnN0TmFtZTogJ1VzZXIgMicsIGxhc3ROYW1lOiAnQXBlbGxpZG8gMicgfSxcbiAgeyBpZDogMywgZmlyc3ROYW1lOiAnVXNlciAzJywgbGFzdE5hbWU6ICdBcGVsbGlkbyAzJyB9LFxuXVxuXG5leHBvcnQgY29uc3QgQm9keUNvbnRhaW5lclZpZXdUZWFtcyA9ICgpID0+IHtcbiAgY29uc3QgeyB0ZWFtcyB9ID0gdXNlVGVhbXMoKVxuICBjb25zdCB7IGZldGNoQ3JlYXRlVGVhbSB9ID0gdXNlQ3JlYXRlVGVhbSgpXG4gIGNvbnN0IHsgdXBkYXRlVGVhbSB9ID0gdXNlVXBkYXRlVGVhbSgpXG4gIGNvbnN0IHsgYXNzaWduVXNlclRvVGVhbSB9ID0gdXNlQXNzaWduVXNlclRvVGVhbSgpXG4gIGNvbnN0IHsgdW5hc3NpZ25Vc2VyRnJvbVRlYW0gfSA9IHVzZVVuYXNzaWduVXNlckZyb21UZWFtKClcbiAgY29uc3QgeyBkZWxldGVUZWFtIH0gPSB1c2VEZWxldGVUZWFtKClcbiAgY29uc3QgW3NlbGVjdGVkVGVhbSwgc2V0U2VsZWN0ZWRUZWFtXSA9IHVzZVN0YXRlPFRlYW0gfCBudWxsPihudWxsKVxuICBjb25zdCBbaXNNb2RhbE9wZW4sIHNldElzTW9kYWxPcGVuXSA9IHVzZVN0YXRlKGZhbHNlKVxuICBjb25zdCBbbW9kYWxNb2RlLCBzZXRNb2RhbE1vZGVdID0gdXNlU3RhdGU8J3ZpZXcnIHwgJ2VkaXQnIHwgJ2NyZWF0ZSc+KCd2aWV3JylcbiAgY29uc3QgW3RlYW1Ub0RlbGV0ZSwgc2V0VGVhbVRvRGVsZXRlXSA9IHVzZVN0YXRlPFRlYW0gfCBudWxsPihudWxsKVxuICBjb25zdCBbaXNEZWxldGVNb2RhbE9wZW4sIHNldElzRGVsZXRlTW9kYWxPcGVuXSA9IHVzZVN0YXRlKGZhbHNlKVxuXG4gIGNvbnN0IHdvcmtzcGFjZXNGZWF0dXJlRW5hYmxlZCA9IGlzQ29yV29ya3NwYWNlc0ZlYXR1cmVFbmFibGVkKClcbiAgY29uc3QgeyB3b3Jrc3BhY2VzTGlzdCwgaGFuZGxlR2V0V29ya3NwYWNlcyB9ID0gdXNlQXNzaWduZWRXb3Jrc3BhY2VzRnJvbUhvc3Qod29ya3NwYWNlc0ZlYXR1cmVFbmFibGVkKVxuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKGlzTW9kYWxPcGVuICYmIHdvcmtzcGFjZXNGZWF0dXJlRW5hYmxlZCkge1xuICAgICAgaGFuZGxlR2V0V29ya3NwYWNlcyh7IHBhZ2U6IDEgfSlcbiAgICB9XG4gIH0sIFtpc01vZGFsT3Blbiwgd29ya3NwYWNlc0ZlYXR1cmVFbmFibGVkLCBoYW5kbGVHZXRXb3Jrc3BhY2VzXSlcblxuICBjb25zdCBoYW5kbGVTaG93VGVhbURldGFpbHMgPSAodGVhbUlkOiBudW1iZXIpID0+IHtcbiAgICBjb25zdCB0ZWFtID0gdGVhbXMuZmluZCh0ID0+IHQuaWQgPT09IHRlYW1JZClcbiAgICBpZiAodGVhbSkge1xuICAgICAgc2V0U2VsZWN0ZWRUZWFtKHRlYW0pXG4gICAgICBzZXRNb2RhbE1vZGUoJ3ZpZXcnKVxuICAgICAgc2V0SXNNb2RhbE9wZW4odHJ1ZSlcbiAgICB9XG4gIH1cblxuICBjb25zdCBoYW5kbGVDcmVhdGVUZWFtID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIHNldFNlbGVjdGVkVGVhbShudWxsKVxuICAgIHNldE1vZGFsTW9kZSgnY3JlYXRlJylcbiAgICBzZXRJc01vZGFsT3Blbih0cnVlKVxuICB9LCBbXSlcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGNvbnN0IGhhbmRsZUNyZWF0ZVRlYW1FdmVudCA9ICgpID0+IHtcbiAgICAgIGhhbmRsZUNyZWF0ZVRlYW0oKVxuICAgIH1cblxuICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdjcmVhdGVUZWFtJywgaGFuZGxlQ3JlYXRlVGVhbUV2ZW50KVxuXG4gICAgcmV0dXJuICgpID0+IHtcbiAgICAgIHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCdjcmVhdGVUZWFtJywgaGFuZGxlQ3JlYXRlVGVhbUV2ZW50KVxuICAgIH1cbiAgfSwgW2hhbmRsZUNyZWF0ZVRlYW1dKVxuXG4gIGNvbnN0IGhhbmRsZUNsb3NlTW9kYWwgPSAoKSA9PiB7XG4gICAgc2V0SXNNb2RhbE9wZW4oZmFsc2UpXG4gICAgc2V0U2VsZWN0ZWRUZWFtKG51bGwpXG4gICAgc2V0TW9kYWxNb2RlKCd2aWV3JylcbiAgfVxuXG4gIGNvbnN0IGhhbmRsZUVkaXRUZWFtID0gKGZvcm1EYXRhOiBGb3JtRGF0YSkgPT4ge1xuICAgIGlmICghc2VsZWN0ZWRUZWFtKSByZXR1cm5cblxuICAgIGNvbnN0IGZpZWxkczoge1xuICAgICAgaWQ6IG51bWJlclxuICAgICAgbmFtZTogc3RyaW5nXG4gICAgICBkZXNjcmlwdGlvbjogc3RyaW5nXG4gICAgICB3b3Jrc3BhY2VJZD86IG51bWJlclxuICAgIH0gPSB7XG4gICAgICBpZDogK3NlbGVjdGVkVGVhbS5pZCxcbiAgICAgIG5hbWU6IGZvcm1EYXRhLm5hbWUsXG4gICAgICBkZXNjcmlwdGlvbjogZm9ybURhdGEuZGVzY3JpcHRpb24sXG4gICAgfVxuXG4gICAgaWYgKHdpbmRvdy5oYXNXb3Jrc3BhY2VzRmVhdHVyZSAmJiBmb3JtRGF0YS53b3Jrc3BhY2UpIHtcbiAgICAgIGZpZWxkcy53b3Jrc3BhY2VJZCA9IGZvcm1EYXRhLndvcmtzcGFjZS5pZFxuICAgIH1cblxuICAgIHVwZGF0ZVRlYW0oZmllbGRzKVxuICAgIGhhbmRsZUNsb3NlTW9kYWwoKVxuICB9XG5cbiAgY29uc3QgaGFuZGxlQ3JlYXRlVGVhbVN1Ym1pdCA9IChmb3JtRGF0YTogRm9ybURhdGEpID0+IHtcbiAgICBjb25zdCBmaWVsZHM6IHtcbiAgICAgIG5hbWU6IHN0cmluZ1xuICAgICAgZGVzY3JpcHRpb246IHN0cmluZ1xuICAgICAgd29ya3NwYWNlSWQ/OiBudW1iZXJcbiAgICB9ID0ge1xuICAgICAgbmFtZTogZm9ybURhdGEubmFtZSxcbiAgICAgIC8vIHVzZXJzOiBmb3JtRGF0YS5tZW1iZXJzLm1hcChtZW1iZXIgPT4gbWVtYmVyLmlkKSwgVE9ETzogVmEgZW4gbGEgc2VndW5kYSB2ZXJzaW9uXG4gICAgICBkZXNjcmlwdGlvbjogZm9ybURhdGEuZGVzY3JpcHRpb24sXG4gICAgfVxuXG4gICAgaWYgKHdpbmRvdy5oYXNXb3Jrc3BhY2VzRmVhdHVyZSAmJiBmb3JtRGF0YS53b3Jrc3BhY2UpIHtcbiAgICAgIGZpZWxkcy53b3Jrc3BhY2VJZCA9IGZvcm1EYXRhLndvcmtzcGFjZS5pZFxuICAgIH1cbiAgICBmZXRjaENyZWF0ZVRlYW0oZmllbGRzKVxuICAgIGhhbmRsZUNsb3NlTW9kYWwoKVxuICB9XG5cbiAgY29uc3QgaGFuZGxlRWRpdFRlYW1Gcm9tTWVudSA9ICh0ZWFtSWQ6IG51bWJlcikgPT4ge1xuICAgIGNvbnN0IHRlYW0gPSB0ZWFtcy5maW5kKHQgPT4gdC5pZCA9PT0gdGVhbUlkKVxuICAgIGlmICh0ZWFtKSB7XG4gICAgICBzZXRTZWxlY3RlZFRlYW0odGVhbSlcbiAgICAgIHNldE1vZGFsTW9kZSgnZWRpdCcpXG4gICAgICBzZXRJc01vZGFsT3Blbih0cnVlKVxuICAgIH1cbiAgfVxuXG4gIGNvbnN0IGhhbmRsZURlbGV0ZVRlYW0gPSAodGVhbUlkOiBudW1iZXIpID0+IHtcbiAgICBjb25zdCB0ZWFtID0gdGVhbXMuZmluZCh0ID0+IHQuaWQgPT09IHRlYW1JZClcbiAgICBpZiAodGVhbSkge1xuICAgICAgc2V0VGVhbVRvRGVsZXRlKHRlYW0pXG4gICAgICBzZXRJc0RlbGV0ZU1vZGFsT3Blbih0cnVlKVxuICAgIH1cbiAgfVxuXG4gIGNvbnN0IGhhbmRsZUNsb3NlRGVsZXRlTW9kYWwgPSAoKSA9PiB7XG4gICAgc2V0SXNEZWxldGVNb2RhbE9wZW4oZmFsc2UpXG4gICAgc2V0VGVhbVRvRGVsZXRlKG51bGwpXG4gIH1cblxuICBjb25zdCBoYW5kbGVDb25maXJtRGVsZXRlID0gKGRlbGV0ZUZyb21Qcm9qZWN0czogYm9vbGVhbikgPT4ge1xuICAgIGlmICh0ZWFtVG9EZWxldGUpIHtcbiAgICAgIGRlbGV0ZVRlYW0odGVhbVRvRGVsZXRlLmlkLCBkZWxldGVGcm9tUHJvamVjdHMpXG4gICAgfVxuICAgIGhhbmRsZUNsb3NlRGVsZXRlTW9kYWwoKVxuICB9XG5cbiAgY29uc3QgaGFuZGxlQWRkVXNlciA9ICh0ZWFtSWQ6IG51bWJlciwgdXNlcklkOiBudW1iZXIsIGdpdmVBY2Nlc3NUb0FsbFByb2plY3RzOiBib29sZWFuKSA9PiB7XG4gICAgYXNzaWduVXNlclRvVGVhbSh7XG4gICAgICBzZXRVc2VyVGVhbVByb2plY3Q6IGdpdmVBY2Nlc3NUb0FsbFByb2plY3RzLFxuICAgICAgdXNlcklkLFxuICAgICAgdGVhbUlkLFxuICAgIH0pXG4gIH1cblxuICBjb25zdCBoYW5kbGVSZW1vdmVVc2VyID0gKHRlYW1JZDogbnVtYmVyLCB1c2VySWQ6IG51bWJlciwgZGVsZXRlRnJvbVByb2plY3RzOiBib29sZWFuKSA9PiB7XG4gICAgdW5hc3NpZ25Vc2VyRnJvbVRlYW0oe1xuICAgICAgZGVsZXRlRnJvbVByb2plY3RzLFxuICAgICAgdXNlcklkLFxuICAgICAgdGVhbUlkLFxuICAgIH0pXG4gIH1cblxuICByZXR1cm4gKFxuICAgIDw+XG4gICAgICB7dGVhbXMubGVuZ3RoID4gMCA/IChcbiAgICAgICAgPFRlYW1Sb3dcbiAgICAgICAgICB0ZWFtcz17dGVhbXN9XG4gICAgICAgICAgaGFuZGxlU2hvd1RlYW1EZXRhaWxzPXtoYW5kbGVTaG93VGVhbURldGFpbHN9XG4gICAgICAgICAgaGFuZGxlRGVsZXRlVGVhbT17aGFuZGxlRGVsZXRlVGVhbX1cbiAgICAgICAgICBoYW5kbGVFZGl0VGVhbT17aGFuZGxlRWRpdFRlYW1Gcm9tTWVudX1cbiAgICAgICAgICBoYW5kbGVSZW1vdmVVc2VyPXtoYW5kbGVSZW1vdmVVc2VyfVxuICAgICAgICAgIGhhbmRsZUFkZFVzZXI9e2hhbmRsZUFkZFVzZXJ9XG4gICAgICAgIC8+XG4gICAgICApIDogKFxuICAgICAgICA8RW1wdHlTdGF0ZVRlYW1zIGNsaWNrQ3JlYXRlVGVhbT17aGFuZGxlQ3JlYXRlVGVhbX0gLz5cbiAgICAgICl9XG4gICAgICB7aXNNb2RhbE9wZW4gJiYgKFxuICAgICAgICA8U3VzcGVuc2UgZmFsbGJhY2s9ezxMb2FkZXJDb21wb25lbnQgLz59PlxuICAgICAgICAgIDxMYXp5VGVhbURldGFpbHNNb2RhbFxuICAgICAgICAgICAgdGVhbT17c2VsZWN0ZWRUZWFtfVxuICAgICAgICAgICAgaXNPcGVuPXtpc01vZGFsT3Blbn1cbiAgICAgICAgICAgIG9uQ2xvc2U9e2hhbmRsZUNsb3NlTW9kYWx9XG4gICAgICAgICAgICBvbkVkaXQ9e2hhbmRsZUVkaXRUZWFtfVxuICAgICAgICAgICAgb25DcmVhdGU9e2hhbmRsZUNyZWF0ZVRlYW1TdWJtaXR9XG4gICAgICAgICAgICBtb2RlPXttb2RhbE1vZGV9XG4gICAgICAgICAgICB3b3Jrc3BhY2VzTGlzdD17d29ya3NwYWNlc0xpc3R9XG4gICAgICAgICAgICBtZW1iZXJzTGlzdD17bW9ja01lbWJlcnNMaXN0fVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvU3VzcGVuc2U+XG4gICAgICApfVxuICAgICAge2lzRGVsZXRlTW9kYWxPcGVuICYmIChcbiAgICAgICAgPFN1c3BlbnNlIGZhbGxiYWNrPXs8TG9hZGVyQ29tcG9uZW50IC8+fT5cbiAgICAgICAgICA8TGF6eURlbGV0ZVRlYW1Nb2RhbFxuICAgICAgICAgICAgdGVhbT17dGVhbVRvRGVsZXRlfVxuICAgICAgICAgICAgaXNPcGVuPXtpc0RlbGV0ZU1vZGFsT3Blbn1cbiAgICAgICAgICAgIG9uQ2xvc2U9e2hhbmRsZUNsb3NlRGVsZXRlTW9kYWx9XG4gICAgICAgICAgICBvbkNvbmZpcm09e2hhbmRsZUNvbmZpcm1EZWxldGV9XG4gICAgICAgICAgLz5cbiAgICAgICAgPC9TdXNwZW5zZT5cbiAgICAgICl9XG4gICAgPC8+XG4gIClcbn1cbiJdLCJtYXBwaW5ncyI6IjtBQUFBLFNBQVNBLFFBQVEsRUFBRUMsU0FBUyxFQUFFQyxXQUFXLEVBQUVDLElBQUksRUFBRUMsUUFBUSxRQUFRLE9BQU87QUFDeEUsU0FBU0MsNkJBQTZCLFFBQVEsMkNBQTJDO0FBQ3pGLFNBQVNDLE9BQU8sUUFBUSx3Q0FBd0M7QUFFaEUsU0FBU0MsUUFBUSxRQUFRLDRCQUE0QjtBQUNyRCxTQUFTQyxlQUFlLFFBQVEsMkNBQTJDO0FBQzNFLFNBQVNDLGFBQWEsUUFBUSw0QkFBNEI7QUFDMUQsU0FBU0MsYUFBYSxRQUFRLDJCQUEyQjtBQUN6RCxTQUFTQyxtQkFBbUIsUUFBUSxpQ0FBaUM7QUFDckUsU0FBU0MsdUJBQXVCLFFBQVEscUNBQXFDO0FBQzdFLFNBQVNDLGFBQWEsUUFBUSwyQkFBMkI7QUFDekQsU0FBU0MsNkJBQTZCLFFBQVEsMkNBQTJDO0FBQ3pGLFNBQVNDLGVBQWUsUUFBUSxrQ0FBa0M7QUFBQSxTQUFBQyxHQUFBLElBQUFDLElBQUEsRUFBQUMsUUFBQSxJQUFBQyxTQUFBLEVBQUFDLElBQUEsSUFBQUMsS0FBQTtBQUVsRSxJQUFNQyxvQkFBb0IsZ0JBQUduQixJQUFJLENBQUM7RUFBQSxPQUNoQyxNQUFN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
|
|
@@ -8,7 +8,7 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
|
|
|
8
8
|
/* eslint-disable @typescript-eslint/no-empty-function */
|
|
9
9
|
/* eslint-disable react/require-default-props */
|
|
10
10
|
/* eslint-disable no-undef */
|
|
11
|
-
import { memo, useEffect, useState, useRef, useCallback } from 'react';
|
|
11
|
+
import { memo, useEffect, useState, useRef, useCallback, useMemo } from 'react';
|
|
12
12
|
import { useTranslation } from 'react-i18next';
|
|
13
13
|
import { useUsersQuery } from '../../context/UsersContext';
|
|
14
14
|
import { FilterChip } from '../../components/Filters/FilterChip';
|
|
@@ -17,6 +17,8 @@ import { useLoadMoreGuard } from '../../hooks/useLoadMoreGuard';
|
|
|
17
17
|
import { SEARCH_EVENT } from '../../hooks/useSearchEvent';
|
|
18
18
|
import { Search } from '../../components/Search/Search';
|
|
19
19
|
import { LayoutSearchUser } from '../../components/Layout/Layout';
|
|
20
|
+
import { useAssignedWorkspacesFromHost } from '../../hooks/useAssignedWorkspacesFromHost';
|
|
21
|
+
import { isCorWorkspacesFeatureEnabled } from '../../utils/isCorWorkspacesFeatureEnabled';
|
|
20
22
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
21
23
|
export var FiltersContainer = /*#__PURE__*/memo(function () {
|
|
22
24
|
var _useTranslation = useTranslation('people'),
|
|
@@ -31,6 +33,16 @@ export var FiltersContainer = /*#__PURE__*/memo(function () {
|
|
|
31
33
|
data = _useGetTeams.data,
|
|
32
34
|
currentPage = _useGetTeams.currentPage,
|
|
33
35
|
lastPage = _useGetTeams.lastPage;
|
|
36
|
+
var workspacesFeatureEnabled = isCorWorkspacesFeatureEnabled();
|
|
37
|
+
var _useAssignedWorkspace = useAssignedWorkspacesFromHost(workspacesFeatureEnabled),
|
|
38
|
+
workspacesList = _useAssignedWorkspace.workspacesList,
|
|
39
|
+
workspacesLoading = _useAssignedWorkspace.loading,
|
|
40
|
+
handleGetWorkspaces = _useAssignedWorkspace.handleGetWorkspaces,
|
|
41
|
+
workspaceCurrentPage = _useAssignedWorkspace.currentPage,
|
|
42
|
+
workspaceLastPage = _useAssignedWorkspace.lastPage;
|
|
43
|
+
var canLoadMoreWorkspaces = workspaceCurrentPage < workspaceLastPage;
|
|
44
|
+
var _useLoadMoreGuard = useLoadMoreGuard(workspacesLoading, canLoadMoreWorkspaces),
|
|
45
|
+
requestWorkspacesLoadMore = _useLoadMoreGuard.requestLoadMore;
|
|
34
46
|
var _useState = useState(''),
|
|
35
47
|
_useState2 = _slicedToArray(_useState, 2),
|
|
36
48
|
searchTermValue = _useState2[0],
|
|
@@ -52,22 +64,43 @@ export var FiltersContainer = /*#__PURE__*/memo(function () {
|
|
|
52
64
|
_useState0 = _slicedToArray(_useState9, 2),
|
|
53
65
|
selectedPositions = _useState0[0],
|
|
54
66
|
setSelectedPositions = _useState0[1];
|
|
55
|
-
var _useState1 = useState(
|
|
67
|
+
var _useState1 = useState([]),
|
|
56
68
|
_useState10 = _slicedToArray(_useState1, 2),
|
|
57
|
-
|
|
58
|
-
|
|
69
|
+
selectedWorkspaces = _useState10[0],
|
|
70
|
+
setSelectedWorkspaces = _useState10[1];
|
|
59
71
|
var _useState11 = useState(''),
|
|
60
72
|
_useState12 = _slicedToArray(_useState11, 2),
|
|
61
|
-
|
|
62
|
-
|
|
73
|
+
teamSearchTerm = _useState12[0],
|
|
74
|
+
setTeamSearchTerm = _useState12[1];
|
|
75
|
+
var _useState13 = useState(''),
|
|
76
|
+
_useState14 = _slicedToArray(_useState13, 2),
|
|
77
|
+
positionSearchTerm = _useState14[0],
|
|
78
|
+
setPositionSearchTerm = _useState14[1];
|
|
79
|
+
var _useState15 = useState(''),
|
|
80
|
+
_useState16 = _slicedToArray(_useState15, 2),
|
|
81
|
+
workspaceSearchTerm = _useState16[0],
|
|
82
|
+
setWorkspaceSearchTerm = _useState16[1];
|
|
83
|
+
var _useState17 = useState(0),
|
|
84
|
+
_useState18 = _slicedToArray(_useState17, 2),
|
|
85
|
+
teamFilterSelectionResetKey = _useState18[0],
|
|
86
|
+
setTeamFilterSelectionResetKey = _useState18[1];
|
|
87
|
+
var workspaceOptions = useMemo(function () {
|
|
88
|
+
return workspacesList.map(function (w) {
|
|
89
|
+
return {
|
|
90
|
+
id: w.id,
|
|
91
|
+
label: w.name
|
|
92
|
+
};
|
|
93
|
+
});
|
|
94
|
+
}, [workspacesList]);
|
|
63
95
|
var canLoadMoreTeams = currentPage < lastPage;
|
|
64
|
-
var
|
|
65
|
-
requestTeamsLoadMore =
|
|
96
|
+
var _useLoadMoreGuard2 = useLoadMoreGuard(loading, canLoadMoreTeams),
|
|
97
|
+
requestTeamsLoadMore = _useLoadMoreGuard2.requestLoadMore;
|
|
66
98
|
var buildAndSendUserRequest = function buildAndSendUserRequest() {
|
|
67
99
|
var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
|
|
68
100
|
searchInputOverride = _ref.searchInputOverride,
|
|
69
101
|
teamsOverride = _ref.teamsOverride,
|
|
70
|
-
positionsOverride = _ref.positionsOverride
|
|
102
|
+
positionsOverride = _ref.positionsOverride,
|
|
103
|
+
workspacesOverride = _ref.workspacesOverride;
|
|
71
104
|
var positionsFilter = positionsOverride !== undefined ? positionsOverride.length ? {
|
|
72
105
|
positions: positionsOverride
|
|
73
106
|
} : {} : selectedPositions.length ? {
|
|
@@ -78,7 +111,13 @@ export var FiltersContainer = /*#__PURE__*/memo(function () {
|
|
|
78
111
|
} : {} : selectedTeams.length ? {
|
|
79
112
|
team: selectedTeams
|
|
80
113
|
} : {};
|
|
81
|
-
|
|
114
|
+
// allocation API: CorFilters.getUsers usa workspaceIds / workspaceId / workspace_id (no "workspaces")
|
|
115
|
+
var workspacesFilter = workspacesOverride !== undefined ? workspacesOverride.length ? {
|
|
116
|
+
workspaceIds: workspacesOverride
|
|
117
|
+
} : {} : selectedWorkspaces.length ? {
|
|
118
|
+
workspaceIds: selectedWorkspaces
|
|
119
|
+
} : {};
|
|
120
|
+
var valuesToFilter = _objectSpread(_objectSpread(_objectSpread({}, positionsFilter), teamsFilter), workspacesFilter);
|
|
82
121
|
handleGetUsers({
|
|
83
122
|
searchInput: searchInputOverride !== undefined ? searchInputOverride : searchTermValue,
|
|
84
123
|
page: 1,
|
|
@@ -117,12 +156,14 @@ export var FiltersContainer = /*#__PURE__*/memo(function () {
|
|
|
117
156
|
}
|
|
118
157
|
} else {
|
|
119
158
|
setTeamSearchTerm(searchTerm !== null && searchTerm !== void 0 ? searchTerm : '');
|
|
159
|
+
var term = (searchTerm !== null && searchTerm !== void 0 ? searchTerm : '').trim();
|
|
160
|
+
var teamListFilter = {};
|
|
161
|
+
if (term) teamListFilter.name = term;
|
|
162
|
+
if (selectedWorkspaces.length) teamListFilter.workspaceIds = selectedWorkspaces;
|
|
120
163
|
handleGetTeams(_objectSpread({
|
|
121
164
|
page: 1
|
|
122
|
-
},
|
|
123
|
-
filter:
|
|
124
|
-
name: searchTerm
|
|
125
|
-
}
|
|
165
|
+
}, Object.keys(teamListFilter).length ? {
|
|
166
|
+
filter: teamListFilter
|
|
126
167
|
} : {}));
|
|
127
168
|
}
|
|
128
169
|
}
|
|
@@ -147,12 +188,63 @@ export var FiltersContainer = /*#__PURE__*/memo(function () {
|
|
|
147
188
|
setPositionSearchTerm(searchTerm !== null && searchTerm !== void 0 ? searchTerm : '');
|
|
148
189
|
}
|
|
149
190
|
}
|
|
191
|
+
if (type === 'workspaceFilter') {
|
|
192
|
+
if (Array.isArray(valuesToFilter)) {
|
|
193
|
+
if (!valuesToFilter.length) {
|
|
194
|
+
setSelectedWorkspaces([]);
|
|
195
|
+
buildAndSendUserRequest({
|
|
196
|
+
workspacesOverride: []
|
|
197
|
+
});
|
|
198
|
+
var _term = teamSearchTerm.trim();
|
|
199
|
+
handleGetTeams(_objectSpread({
|
|
200
|
+
page: 1
|
|
201
|
+
}, _term ? {
|
|
202
|
+
filter: {
|
|
203
|
+
name: _term
|
|
204
|
+
}
|
|
205
|
+
} : {}));
|
|
206
|
+
} else {
|
|
207
|
+
var areWorkspacesEqual = valuesToFilter.every(function (value, index) {
|
|
208
|
+
return value === selectedWorkspaces[index];
|
|
209
|
+
});
|
|
210
|
+
if (areWorkspacesEqual) return;
|
|
211
|
+
setSelectedWorkspaces(valuesToFilter);
|
|
212
|
+
setSelectedTeams([]);
|
|
213
|
+
setTeamFilterSelectionResetKey(function (k) {
|
|
214
|
+
return k + 1;
|
|
215
|
+
});
|
|
216
|
+
buildAndSendUserRequest({
|
|
217
|
+
workspacesOverride: valuesToFilter,
|
|
218
|
+
teamsOverride: []
|
|
219
|
+
});
|
|
220
|
+
var _term2 = teamSearchTerm.trim();
|
|
221
|
+
var _teamListFilter = {
|
|
222
|
+
workspaceIds: valuesToFilter
|
|
223
|
+
};
|
|
224
|
+
if (_term2) _teamListFilter.name = _term2;
|
|
225
|
+
handleGetTeams({
|
|
226
|
+
page: 1,
|
|
227
|
+
filter: _teamListFilter
|
|
228
|
+
});
|
|
229
|
+
}
|
|
230
|
+
} else {
|
|
231
|
+
var _term3 = searchTerm !== null && searchTerm !== void 0 ? searchTerm : '';
|
|
232
|
+
setWorkspaceSearchTerm(_term3);
|
|
233
|
+
handleGetWorkspaces(_objectSpread({
|
|
234
|
+
page: 1
|
|
235
|
+
}, _term3.trim() ? {
|
|
236
|
+
filter: {
|
|
237
|
+
name: _term3.trim()
|
|
238
|
+
}
|
|
239
|
+
} : {}));
|
|
240
|
+
}
|
|
241
|
+
}
|
|
150
242
|
};
|
|
151
243
|
window.addEventListener(SEARCH_EVENT, handleSearch);
|
|
152
244
|
return function () {
|
|
153
245
|
window.removeEventListener(SEARCH_EVENT, handleSearch);
|
|
154
246
|
};
|
|
155
|
-
}, [handleGetUsers, searchTermValue, selectedTeams, selectedPositions]);
|
|
247
|
+
}, [handleGetUsers, handleGetTeams, handleGetWorkspaces, searchTermValue, selectedTeams, selectedPositions, selectedWorkspaces, teamSearchTerm]);
|
|
156
248
|
useEffect(function () {
|
|
157
249
|
if (!(data !== null && data !== void 0 && data.teamsUsers) || error) return;
|
|
158
250
|
var mapped = data.teamsUsers.data.map(function (team) {
|
|
@@ -185,15 +277,28 @@ export var FiltersContainer = /*#__PURE__*/memo(function () {
|
|
|
185
277
|
}, [positions]);
|
|
186
278
|
var handleTeamsLoadMore = useCallback(function () {
|
|
187
279
|
requestTeamsLoadMore(function () {
|
|
188
|
-
|
|
280
|
+
var term = teamSearchTerm === null || teamSearchTerm === void 0 ? void 0 : teamSearchTerm.trim();
|
|
281
|
+
var teamListFilter = {};
|
|
282
|
+
if (term) teamListFilter.name = term;
|
|
283
|
+
if (selectedWorkspaces.length) teamListFilter.workspaceIds = selectedWorkspaces;
|
|
284
|
+
handleGetTeams(_objectSpread({
|
|
189
285
|
page: currentPage + 1
|
|
190
|
-
},
|
|
286
|
+
}, Object.keys(teamListFilter).length ? {
|
|
287
|
+
filter: teamListFilter
|
|
288
|
+
} : {}));
|
|
289
|
+
});
|
|
290
|
+
}, [requestTeamsLoadMore, currentPage, teamSearchTerm, selectedWorkspaces, handleGetTeams]);
|
|
291
|
+
var handleWorkspacesLoadMore = useCallback(function () {
|
|
292
|
+
requestWorkspacesLoadMore(function () {
|
|
293
|
+
return handleGetWorkspaces(_objectSpread({
|
|
294
|
+
page: workspaceCurrentPage + 1
|
|
295
|
+
}, workspaceSearchTerm !== null && workspaceSearchTerm !== void 0 && workspaceSearchTerm.trim() ? {
|
|
191
296
|
filter: {
|
|
192
|
-
name:
|
|
297
|
+
name: workspaceSearchTerm.trim()
|
|
193
298
|
}
|
|
194
299
|
} : {}));
|
|
195
300
|
});
|
|
196
|
-
}, [
|
|
301
|
+
}, [requestWorkspacesLoadMore, workspaceCurrentPage, workspaceSearchTerm, handleGetWorkspaces]);
|
|
197
302
|
var positionOptionsToShow = !positionSearchTerm.trim() ? positionOptions : function () {
|
|
198
303
|
var term = positionSearchTerm.trim().toLowerCase();
|
|
199
304
|
var posWithCategory = positionOptions;
|
|
@@ -211,12 +316,52 @@ export var FiltersContainer = /*#__PURE__*/memo(function () {
|
|
|
211
316
|
});
|
|
212
317
|
return [].concat(_toConsumableArray(selectedNotInFiltered), _toConsumableArray(filteredOpts));
|
|
213
318
|
}();
|
|
319
|
+
var workspaceOptionsToShow = !workspaceSearchTerm.trim() ? workspaceOptions : function () {
|
|
320
|
+
var term = workspaceSearchTerm.trim().toLowerCase();
|
|
321
|
+
var selectedOpts = workspaceOptions.filter(function (p) {
|
|
322
|
+
return selectedWorkspaces.includes(p.id);
|
|
323
|
+
});
|
|
324
|
+
var filteredOpts = workspaceOptions.filter(function (p) {
|
|
325
|
+
return p.label.toLowerCase().includes(term);
|
|
326
|
+
});
|
|
327
|
+
var filteredIds = new Set(filteredOpts.map(function (o) {
|
|
328
|
+
return o.id;
|
|
329
|
+
}));
|
|
330
|
+
var selectedNotInFiltered = selectedOpts.filter(function (o) {
|
|
331
|
+
return !filteredIds.has(o.id);
|
|
332
|
+
});
|
|
333
|
+
return [].concat(_toConsumableArray(selectedNotInFiltered), _toConsumableArray(filteredOpts));
|
|
334
|
+
}();
|
|
335
|
+
var handleTeamFilterOpen = useCallback(function () {
|
|
336
|
+
var term = teamSearchTerm.trim();
|
|
337
|
+
var teamListFilter = {};
|
|
338
|
+
if (term) teamListFilter.name = term;
|
|
339
|
+
if (selectedWorkspaces.length) teamListFilter.workspaceIds = selectedWorkspaces;
|
|
340
|
+
handleGetTeams(_objectSpread({
|
|
341
|
+
page: 1
|
|
342
|
+
}, Object.keys(teamListFilter).length ? {
|
|
343
|
+
filter: teamListFilter
|
|
344
|
+
} : {}));
|
|
345
|
+
}, [teamSearchTerm, selectedWorkspaces, handleGetTeams]);
|
|
214
346
|
return /*#__PURE__*/_jsxs(LayoutSearchUser, {
|
|
215
|
-
children: [/*#__PURE__*/_jsx(Search, {}), /*#__PURE__*/_jsx(FilterChip, {
|
|
347
|
+
children: [/*#__PURE__*/_jsx(Search, {}), workspacesFeatureEnabled && /*#__PURE__*/_jsx(FilterChip, {
|
|
348
|
+
id: "workspaceFilter",
|
|
349
|
+
label: t('filters.workspace'),
|
|
350
|
+
options: workspaceOptionsToShow,
|
|
351
|
+
emptyMessage: t('users.emptyFilterMessage'),
|
|
352
|
+
dispatchSearchOnClose: false,
|
|
353
|
+
onLoadMore: handleWorkspacesLoadMore,
|
|
354
|
+
hasMorePages: canLoadMoreWorkspaces,
|
|
355
|
+
loadMoreLoading: workspacesLoading && workspacesList.length > 0,
|
|
356
|
+
optionsLoading: workspacesLoading && workspacesList.length === 0,
|
|
357
|
+
loadingMessage: t('users.loadingWorkspaces')
|
|
358
|
+
}), /*#__PURE__*/_jsx(FilterChip, {
|
|
216
359
|
id: "teamFilter",
|
|
217
360
|
label: t('filters.team'),
|
|
218
361
|
options: teamOptions,
|
|
219
362
|
emptyMessage: t('users.emptyFilterMessage'),
|
|
363
|
+
selectionResetKey: teamFilterSelectionResetKey,
|
|
364
|
+
onOpen: handleTeamFilterOpen,
|
|
220
365
|
onLoadMore: handleTeamsLoadMore,
|
|
221
366
|
hasMorePages: canLoadMoreTeams,
|
|
222
367
|
loadMoreLoading: loading,
|
|
@@ -230,4 +375,4 @@ export var FiltersContainer = /*#__PURE__*/memo(function () {
|
|
|
230
375
|
})]
|
|
231
376
|
});
|
|
232
377
|
});
|
|
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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
|
|
378
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJtZW1vIiwidXNlRWZmZWN0IiwidXNlU3RhdGUiLCJ1c2VSZWYiLCJ1c2VDYWxsYmFjayIsInVzZU1lbW8iLCJ1c2VUcmFuc2xhdGlvbiIsInVzZVVzZXJzUXVlcnkiLCJGaWx0ZXJDaGlwIiwidXNlR2V0VGVhbXMiLCJ1c2VMb2FkTW9yZUd1YXJkIiwiU0VBUkNIX0VWRU5UIiwiU2VhcmNoIiwiTGF5b3V0U2VhcmNoVXNlciIsInVzZUFzc2lnbmVkV29ya3NwYWNlc0Zyb21Ib3N0IiwiaXNDb3JXb3Jrc3BhY2VzRmVhdHVyZUVuYWJsZWQiLCJqc3giLCJfanN4IiwianN4cyIsIl9qc3hzIiwiRmlsdGVyc0NvbnRhaW5lciIsIl91c2VUcmFuc2xhdGlvbiIsInQiLCJfdXNlVXNlcnNRdWVyeSIsImhhbmRsZUdldFVzZXJzIiwicG9zaXRpb25zIiwiX3VzZUdldFRlYW1zIiwiaGFuZGxlR2V0VGVhbXMiLCJsb2FkaW5nIiwiZXJyb3IiLCJkYXRhIiwiY3VycmVudFBhZ2UiLCJsYXN0UGFnZSIsIndvcmtzcGFjZXNGZWF0dXJlRW5hYmxlZCIsIl91c2VBc3NpZ25lZFdvcmtzcGFjZSIsIndvcmtzcGFjZXNMaXN0Iiwid29ya3NwYWNlc0xvYWRpbmciLCJoYW5kbGVHZXRXb3Jrc3BhY2VzIiwid29ya3NwYWNlQ3VycmVudFBhZ2UiLCJ3b3Jrc3BhY2VMYXN0UGFnZSIsImNhbkxvYWRNb3JlV29ya3NwYWNlcyIsIl91c2VMb2FkTW9yZUd1YXJkIiwicmVxdWVzdFdvcmtzcGFjZXNMb2FkTW9yZSIsInJlcXVlc3RMb2FkTW9yZSIsIl91c2VTdGF0ZSIsIl91c2VTdGF0ZTIiLCJfc2xpY2VkVG9BcnJheSIsInNlYXJjaFRlcm1WYWx1ZSIsInNldFNlYXJjaFRlcm1WYWx1ZSIsIl91c2VTdGF0ZTMiLCJfdXNlU3RhdGU0IiwidGVhbU9wdGlvbnMiLCJzZXRUZWFtT3B0aW9ucyIsIl91c2VTdGF0ZTUiLCJfdXNlU3RhdGU2IiwicG9zaXRpb25PcHRpb25zIiwic2V0UG9zaXRpb25PcHRpb25zIiwiZGVmYXVsdFBvc2l0aW9uc1JlZiIsIl91c2VTdGF0ZTciLCJfdXNlU3RhdGU4Iiwic2VsZWN0ZWRUZWFtcyIsInNldFNlbGVjdGVkVGVhbXMiLCJfdXNlU3RhdGU5IiwiX3VzZVN0YXRlMCIsInNlbGVjdGVkUG9zaXRpb25zIiwic2V0U2VsZWN0ZWRQb3NpdGlvbnMiLCJfdXNlU3RhdGUxIiwiX3VzZVN0YXRlMTAiLCJzZWxlY3RlZFdvcmtzcGFjZXMiLCJzZXRTZWxlY3RlZFdvcmtzcGFjZXMiLCJfdXNlU3RhdGUxMSIsIl91c2VTdGF0ZTEyIiwidGVhbVNlYXJjaFRlcm0iLCJzZXRUZWFtU2VhcmNoVGVybSIsIl91c2VTdGF0ZTEzIiwiX3VzZVN0YXRlMTQiLCJwb3NpdGlvblNlYXJjaFRlcm0iLCJzZXRQb3NpdGlvblNlYXJjaFRlcm0iLCJfdXNlU3RhdGUxNSIsIl91c2VTdGF0ZTE2Iiwid29ya3NwYWNlU2VhcmNoVGVybSIsInNldFdvcmtzcGFjZVNlYXJjaFRlcm0iLCJfdXNlU3RhdGUxNyIsIl91c2VTdGF0ZTE4IiwidGVhbUZpbHRlclNlbGVjdGlvblJlc2V0S2V5Iiwic2V0VGVhbUZpbHRlclNlbGVjdGlvblJlc2V0S2V5Iiwid29ya3NwYWNlT3B0aW9ucyIsIm1hcCIsInciLCJpZCIsImxhYmVsIiwibmFtZSIsImNhbkxvYWRNb3JlVGVhbXMiLCJfdXNlTG9hZE1vcmVHdWFyZDIiLCJyZXF1ZXN0VGVhbXNMb2FkTW9yZSIsImJ1aWxkQW5kU2VuZFVzZXJSZXF1ZXN0IiwiX3JlZiIsImFyZ3VtZW50cyIsImxlbmd0aCIsInVuZGVmaW5lZCIsInNlYXJjaElucHV0T3ZlcnJpZGUiLCJ0ZWFtc092ZXJyaWRlIiwicG9zaXRpb25zT3ZlcnJpZGUiLCJ3b3Jrc3BhY2VzT3ZlcnJpZGUiLCJwb3NpdGlvbnNGaWx0ZXIiLCJ0ZWFtc0ZpbHRlciIsInRlYW0iLCJ3b3Jrc3BhY2VzRmlsdGVyIiwid29ya3NwYWNlSWRzIiwidmFsdWVzVG9GaWx0ZXIiLCJfb2JqZWN0U3ByZWFkIiwic2VhcmNoSW5wdXQiLCJwYWdlIiwiaGFuZGxlU2VhcmNoIiwiZXZlbnQiLCJfZXZlbnQkZGV0YWlsIiwiZGV0YWlsIiwic2VhcmNoVGVybSIsInR5cGUiLCJBcnJheSIsImlzQXJyYXkiLCJhcmVUZWFtc0VxdWFsIiwiZXZlcnkiLCJ2YWx1ZSIsImluZGV4IiwidGVybSIsInRyaW0iLCJ0ZWFtTGlzdEZpbHRlciIsIk9iamVjdCIsImtleXMiLCJmaWx0ZXIiLCJhcmVQb3NpdGlvbnNFcXVhbCIsImFyZVdvcmtzcGFjZXNFcXVhbCIsImsiLCJ3aW5kb3ciLCJhZGRFdmVudExpc3RlbmVyIiwicmVtb3ZlRXZlbnRMaXN0ZW5lciIsInRlYW1zVXNlcnMiLCJtYXBwZWQiLCJwcmV2IiwiZXhpc3RpbmdJZHMiLCJTZXQiLCJvIiwibmV3T25lcyIsImhhcyIsImNvbmNhdCIsIl90b0NvbnN1bWFibGVBcnJheSIsImN1cnJlbnQiLCJoYW5kbGVUZWFtc0xvYWRNb3JlIiwiaGFuZGxlV29ya3NwYWNlc0xvYWRNb3JlIiwicG9zaXRpb25PcHRpb25zVG9TaG93IiwidG9Mb3dlckNhc2UiLCJwb3NXaXRoQ2F0ZWdvcnkiLCJzZWxlY3RlZE9wdHMiLCJwIiwiaW5jbHVkZXMiLCJmaWx0ZXJlZE9wdHMiLCJjYXRlZ29yeU5hbWUiLCJmaWx0ZXJlZElkcyIsInNlbGVjdGVkTm90SW5GaWx0ZXJlZCIsIndvcmtzcGFjZU9wdGlvbnNUb1Nob3ciLCJoYW5kbGVUZWFtRmlsdGVyT3BlbiIsImNoaWxkcmVuIiwib3B0aW9ucyIsImVtcHR5TWVzc2FnZSIsImRpc3BhdGNoU2VhcmNoT25DbG9zZSIsIm9uTG9hZE1vcmUiLCJoYXNNb3JlUGFnZXMiLCJsb2FkTW9yZUxvYWRpbmciLCJvcHRpb25zTG9hZGluZyIsImxvYWRpbmdNZXNzYWdlIiwic2VsZWN0aW9uUmVzZXRLZXkiLCJvbk9wZW4iXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29udGFpbmVyL0ZpbHRlcnMvRmlsdGVyc0NvbnRhaW5lci50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L2luZGVudCAqL1xuLyogZXNsaW50LWRpc2FibGUgbm8tbmVzdGVkLXRlcm5hcnkgKi9cbi8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9uby1lbXB0eS1mdW5jdGlvbiAqL1xuLyogZXNsaW50LWRpc2FibGUgcmVhY3QvcmVxdWlyZS1kZWZhdWx0LXByb3BzICovXG4vKiBlc2xpbnQtZGlzYWJsZSBuby11bmRlZiAqL1xuaW1wb3J0IHsgbWVtbywgdXNlRWZmZWN0LCB1c2VTdGF0ZSwgdXNlUmVmLCB1c2VDYWxsYmFjaywgdXNlTWVtbyB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHsgdXNlVHJhbnNsYXRpb24gfSBmcm9tICdyZWFjdC1pMThuZXh0J1xuaW1wb3J0IHsgdXNlVXNlcnNRdWVyeSB9IGZyb20gJy4uLy4uL2NvbnRleHQvVXNlcnNDb250ZXh0J1xuaW1wb3J0IHsgRmlsdGVyQ2hpcCB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMvRmlsdGVycy9GaWx0ZXJDaGlwJ1xuaW1wb3J0IHsgdXNlR2V0VGVhbXMgfSBmcm9tICcuLi8uLi9ob29rcy91c2VHZXRUZWFtcydcbmltcG9ydCB7IHVzZUxvYWRNb3JlR3VhcmQgfSBmcm9tICcuLi8uLi9ob29rcy91c2VMb2FkTW9yZUd1YXJkJ1xuaW1wb3J0IHsgU0VBUkNIX0VWRU5UIH0gZnJvbSAnLi4vLi4vaG9va3MvdXNlU2VhcmNoRXZlbnQnXG5pbXBvcnQgeyBTZWFyY2ggfSBmcm9tICcuLi8uLi9jb21wb25lbnRzL1NlYXJjaC9TZWFyY2gnXG5pbXBvcnQgeyBMYXlvdXRTZWFyY2hVc2VyIH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cy9MYXlvdXQvTGF5b3V0J1xuaW1wb3J0IHsgdXNlQXNzaWduZWRXb3Jrc3BhY2VzRnJvbUhvc3QgfSBmcm9tICcuLi8uLi9ob29rcy91c2VBc3NpZ25lZFdvcmtzcGFjZXNGcm9tSG9zdCdcbmltcG9ydCB7IGlzQ29yV29ya3NwYWNlc0ZlYXR1cmVFbmFibGVkIH0gZnJvbSAnLi4vLi4vdXRpbHMvaXNDb3JXb3Jrc3BhY2VzRmVhdHVyZUVuYWJsZWQnXG5cbmV4cG9ydCBjb25zdCBGaWx0ZXJzQ29udGFpbmVyID0gbWVtbygoKSA9PiB7XG4gIGNvbnN0IHsgdCB9ID0gdXNlVHJhbnNsYXRpb24oJ3Blb3BsZScpXG4gIGNvbnN0IHsgaGFuZGxlR2V0VXNlcnMsIHBvc2l0aW9ucyB9ID0gdXNlVXNlcnNRdWVyeSgpXG4gIGNvbnN0IHsgaGFuZGxlR2V0VGVhbXMsIGxvYWRpbmcsIGVycm9yLCBkYXRhLCBjdXJyZW50UGFnZSwgbGFzdFBhZ2UgfSA9IHVzZUdldFRlYW1zKClcblxuICBjb25zdCB3b3Jrc3BhY2VzRmVhdHVyZUVuYWJsZWQgPSBpc0NvcldvcmtzcGFjZXNGZWF0dXJlRW5hYmxlZCgpXG4gIGNvbnN0IHtcbiAgICB3b3Jrc3BhY2VzTGlzdCxcbiAgICBsb2FkaW5nOiB3b3Jrc3BhY2VzTG9hZGluZyxcbiAgICBoYW5kbGVHZXRXb3Jrc3BhY2VzLFxuICAgIGN1cnJlbnRQYWdlOiB3b3Jrc3BhY2VDdXJyZW50UGFnZSxcbiAgICBsYXN0UGFnZTogd29ya3NwYWNlTGFzdFBhZ2UsXG4gIH0gPSB1c2VBc3NpZ25lZFdvcmtzcGFjZXNGcm9tSG9zdCh3b3Jrc3BhY2VzRmVhdHVyZUVuYWJsZWQpXG5cbiAgY29uc3QgY2FuTG9hZE1vcmVXb3Jrc3BhY2VzID0gd29ya3NwYWNlQ3VycmVudFBhZ2UgPCB3b3Jrc3BhY2VMYXN0UGFnZVxuICBjb25zdCB7IHJlcXVlc3RMb2FkTW9yZTogcmVxdWVzdFdvcmtzcGFjZXNMb2FkTW9yZSB9ID0gdXNlTG9hZE1vcmVHdWFyZCh3b3Jrc3BhY2VzTG9hZGluZywgY2FuTG9hZE1vcmVXb3Jrc3BhY2VzKVxuXG4gIGNvbnN0IFtzZWFyY2hUZXJtVmFsdWUsIHNldFNlYXJjaFRlcm1WYWx1ZV0gPSB1c2VTdGF0ZSgnJylcbiAgY29uc3QgW3RlYW1PcHRpb25zLCBzZXRUZWFtT3B0aW9uc10gPSB1c2VTdGF0ZTx7IGlkOiBudW1iZXI7IGxhYmVsOiBzdHJpbmcgfVtdPihbXSlcbiAgY29uc3QgW3Bvc2l0aW9uT3B0aW9ucywgc2V0UG9zaXRpb25PcHRpb25zXSA9IHVzZVN0YXRlPHsgaWQ6IG51bWJlcjsgbGFiZWw6IHN0cmluZyB9W10+KHBvc2l0aW9ucyB8fCBbXSlcbiAgY29uc3QgZGVmYXVsdFBvc2l0aW9uc1JlZiA9IHVzZVJlZjx7IGlkOiBudW1iZXI7IGxhYmVsOiBzdHJpbmc7IGNhdGVnb3J5TmFtZT86IHN0cmluZyB9W10+KHBvc2l0aW9ucyB8fCBbXSlcblxuICBjb25zdCBbc2VsZWN0ZWRUZWFtcywgc2V0U2VsZWN0ZWRUZWFtc10gPSB1c2VTdGF0ZTxudW1iZXJbXT4oW10pXG4gIGNvbnN0IFtzZWxlY3RlZFBvc2l0aW9ucywgc2V0U2VsZWN0ZWRQb3NpdGlvbnNdID0gdXNlU3RhdGU8bnVtYmVyW10+KFtdKVxuICBjb25zdCBbc2VsZWN0ZWRXb3Jrc3BhY2VzLCBzZXRTZWxlY3RlZFdvcmtzcGFjZXNdID0gdXNlU3RhdGU8bnVtYmVyW10+KFtdKVxuICBjb25zdCBbdGVhbVNlYXJjaFRlcm0sIHNldFRlYW1TZWFyY2hUZXJtXSA9IHVzZVN0YXRlKCcnKVxuICBjb25zdCBbcG9zaXRpb25TZWFyY2hUZXJtLCBzZXRQb3NpdGlvblNlYXJjaFRlcm1dID0gdXNlU3RhdGUoJycpXG4gIGNvbnN0IFt3b3Jrc3BhY2VTZWFyY2hUZXJtLCBzZXRXb3Jrc3BhY2VTZWFyY2hUZXJtXSA9IHVzZVN0YXRlKCcnKVxuICBjb25zdCBbdGVhbUZpbHRlclNlbGVjdGlvblJlc2V0S2V5LCBzZXRUZWFtRmlsdGVyU2VsZWN0aW9uUmVzZXRLZXldID0gdXNlU3RhdGUoMClcblxuICBjb25zdCB3b3Jrc3BhY2VPcHRpb25zID0gdXNlTWVtbygoKSA9PiB3b3Jrc3BhY2VzTGlzdC5tYXAodyA9PiAoeyBpZDogdy5pZCwgbGFiZWw6IHcubmFtZSB9KSksIFt3b3Jrc3BhY2VzTGlzdF0pXG5cbiAgY29uc3QgY2FuTG9hZE1vcmVUZWFtcyA9IGN1cnJlbnRQYWdlIDwgbGFzdFBhZ2VcbiAgY29uc3QgeyByZXF1ZXN0TG9hZE1vcmU6IHJlcXVlc3RUZWFtc0xvYWRNb3JlIH0gPSB1c2VMb2FkTW9yZUd1YXJkKGxvYWRpbmcsIGNhbkxvYWRNb3JlVGVhbXMpXG5cbiAgY29uc3QgYnVpbGRBbmRTZW5kVXNlclJlcXVlc3QgPSAoe1xuICAgIHNlYXJjaElucHV0T3ZlcnJpZGUsXG4gICAgdGVhbXNPdmVycmlkZSxcbiAgICBwb3NpdGlvbnNPdmVycmlkZSxcbiAgICB3b3Jrc3BhY2VzT3ZlcnJpZGUsXG4gIH06IHtcbiAgICBzZWFyY2hJbnB1dE92ZXJyaWRlPzogc3RyaW5nXG4gICAgdGVhbXNPdmVycmlkZT86IG51bWJlcltdXG4gICAgcG9zaXRpb25zT3ZlcnJpZGU/OiBudW1iZXJbXVxuICAgIHdvcmtzcGFjZXNPdmVycmlkZT86IG51bWJlcltdXG4gIH0gPSB7fSkgPT4ge1xuICAgIGNvbnN0IHBvc2l0aW9uc0ZpbHRlciA9XG4gICAgICBwb3NpdGlvbnNPdmVycmlkZSAhPT0gdW5kZWZpbmVkXG4gICAgICAgID8gcG9zaXRpb25zT3ZlcnJpZGUubGVuZ3RoXG4gICAgICAgICAgPyB7IHBvc2l0aW9uczogcG9zaXRpb25zT3ZlcnJpZGUgfVxuICAgICAgICAgIDoge31cbiAgICAgICAgOiBzZWxlY3RlZFBvc2l0aW9ucy5sZW5ndGhcbiAgICAgICAgPyB7IHBvc2l0aW9uczogc2VsZWN0ZWRQb3NpdGlvbnMgfVxuICAgICAgICA6IHt9XG4gICAgY29uc3QgdGVhbXNGaWx0ZXIgPVxuICAgICAgdGVhbXNPdmVycmlkZSAhPT0gdW5kZWZpbmVkXG4gICAgICAgID8gdGVhbXNPdmVycmlkZS5sZW5ndGhcbiAgICAgICAgICA/IHsgdGVhbTogdGVhbXNPdmVycmlkZSB9XG4gICAgICAgICAgOiB7fVxuICAgICAgICA6IHNlbGVjdGVkVGVhbXMubGVuZ3RoXG4gICAgICAgID8geyB0ZWFtOiBzZWxlY3RlZFRlYW1zIH1cbiAgICAgICAgOiB7fVxuICAgIC8vIGFsbG9jYXRpb24gQVBJOiBDb3JGaWx0ZXJzLmdldFVzZXJzIHVzYSB3b3Jrc3BhY2VJZHMgLyB3b3Jrc3BhY2VJZCAvIHdvcmtzcGFjZV9pZCAobm8gXCJ3b3Jrc3BhY2VzXCIpXG4gICAgY29uc3Qgd29ya3NwYWNlc0ZpbHRlciA9XG4gICAgICB3b3Jrc3BhY2VzT3ZlcnJpZGUgIT09IHVuZGVmaW5lZFxuICAgICAgICA/IHdvcmtzcGFjZXNPdmVycmlkZS5sZW5ndGhcbiAgICAgICAgICA/IHsgd29ya3NwYWNlSWRzOiB3b3Jrc3BhY2VzT3ZlcnJpZGUgfVxuICAgICAgICAgIDoge31cbiAgICAgICAgOiBzZWxlY3RlZFdvcmtzcGFjZXMubGVuZ3RoXG4gICAgICAgID8geyB3b3Jrc3BhY2VJZHM6IHNlbGVjdGVkV29ya3NwYWNlcyB9XG4gICAgICAgIDoge31cbiAgICBjb25zdCB2YWx1ZXNUb0ZpbHRlciA9IHsgLi4ucG9zaXRpb25zRmlsdGVyLCAuLi50ZWFtc0ZpbHRlciwgLi4ud29ya3NwYWNlc0ZpbHRlciB9XG5cbiAgICBoYW5kbGVHZXRVc2Vycyh7XG4gICAgICBzZWFyY2hJbnB1dDogc2VhcmNoSW5wdXRPdmVycmlkZSAhPT0gdW5kZWZpbmVkID8gc2VhcmNoSW5wdXRPdmVycmlkZSA6IHNlYXJjaFRlcm1WYWx1ZSxcbiAgICAgIHBhZ2U6IDEsXG4gICAgICB2YWx1ZXNUb0ZpbHRlcjogdmFsdWVzVG9GaWx0ZXIgYXMgYW55LFxuICAgIH0pXG4gIH1cblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGNvbnN0IGhhbmRsZVNlYXJjaCA9IChldmVudDogQ3VzdG9tRXZlbnQpID0+IHtcbiAgICAgIGNvbnN0IHsgc2VhcmNoVGVybSwgdHlwZSwgdmFsdWVzVG9GaWx0ZXIgfSA9IGV2ZW50LmRldGFpbFxuICAgICAgaWYgKHR5cGUgPT09ICdmaWx0ZXIxJykge1xuICAgICAgICBzZXRTZWFyY2hUZXJtVmFsdWUoc2VhcmNoVGVybSlcbiAgICAgICAgYnVpbGRBbmRTZW5kVXNlclJlcXVlc3QoeyBzZWFyY2hJbnB1dE92ZXJyaWRlOiBzZWFyY2hUZXJtIH0pXG4gICAgICAgIHJldHVyblxuICAgICAgfVxuXG4gICAgICBpZiAodHlwZSA9PT0gJ3RlYW1GaWx0ZXInKSB7XG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KHZhbHVlc1RvRmlsdGVyKSkge1xuICAgICAgICAgIGlmICh2YWx1ZXNUb0ZpbHRlci5sZW5ndGgpIHtcbiAgICAgICAgICAgIGNvbnN0IGFyZVRlYW1zRXF1YWwgPSB2YWx1ZXNUb0ZpbHRlci5ldmVyeSgodmFsdWUsIGluZGV4OiBudW1iZXIpID0+IHZhbHVlID09PSBzZWxlY3RlZFRlYW1zW2luZGV4XSlcbiAgICAgICAgICAgIGlmIChhcmVUZWFtc0VxdWFsKSByZXR1cm5cbiAgICAgICAgICAgIHNldFNlbGVjdGVkVGVhbXModmFsdWVzVG9GaWx0ZXIpXG4gICAgICAgICAgICBidWlsZEFuZFNlbmRVc2VyUmVxdWVzdCh7IHRlYW1zT3ZlcnJpZGU6IHZhbHVlc1RvRmlsdGVyIH0pXG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHNldFNlbGVjdGVkVGVhbXMoW10pXG4gICAgICAgICAgICBidWlsZEFuZFNlbmRVc2VyUmVxdWVzdCh7IHRlYW1zT3ZlcnJpZGU6IFtdIH0pXG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHNldFRlYW1TZWFyY2hUZXJtKHNlYXJjaFRlcm0gPz8gJycpXG4gICAgICAgICAgY29uc3QgdGVybSA9IChzZWFyY2hUZXJtID8/ICcnKS50cmltKClcbiAgICAgICAgICBjb25zdCB0ZWFtTGlzdEZpbHRlcjogeyBuYW1lPzogc3RyaW5nOyB3b3Jrc3BhY2VJZHM/OiBudW1iZXJbXSB9ID0ge31cbiAgICAgICAgICBpZiAodGVybSkgdGVhbUxpc3RGaWx0ZXIubmFtZSA9IHRlcm1cbiAgICAgICAgICBpZiAoc2VsZWN0ZWRXb3Jrc3BhY2VzLmxlbmd0aCkgdGVhbUxpc3RGaWx0ZXIud29ya3NwYWNlSWRzID0gc2VsZWN0ZWRXb3Jrc3BhY2VzXG4gICAgICAgICAgaGFuZGxlR2V0VGVhbXMoe1xuICAgICAgICAgICAgcGFnZTogMSxcbiAgICAgICAgICAgIC4uLihPYmplY3Qua2V5cyh0ZWFtTGlzdEZpbHRlcikubGVuZ3RoID8geyBmaWx0ZXI6IHRlYW1MaXN0RmlsdGVyIH0gOiB7fSksXG4gICAgICAgICAgfSlcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpZiAodHlwZSA9PT0gJ3Bvc2l0aW9uRmlsdGVyJykge1xuICAgICAgICBpZiAoQXJyYXkuaXNBcnJheSh2YWx1ZXNUb0ZpbHRlcikpIHtcbiAgICAgICAgICBpZiAoIXZhbHVlc1RvRmlsdGVyLmxlbmd0aCkge1xuICAgICAgICAgICAgc2V0U2VsZWN0ZWRQb3NpdGlvbnMoW10pXG4gICAgICAgICAgICBidWlsZEFuZFNlbmRVc2VyUmVxdWVzdCh7IHBvc2l0aW9uc092ZXJyaWRlOiBbXSB9KVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjb25zdCBhcmVQb3NpdGlvbnNFcXVhbCA9IHZhbHVlc1RvRmlsdGVyLmV2ZXJ5KCh2YWx1ZSwgaW5kZXg6IG51bWJlcikgPT4gdmFsdWUgPT09IHNlbGVjdGVkUG9zaXRpb25zW2luZGV4XSlcbiAgICAgICAgICAgIGlmIChhcmVQb3NpdGlvbnNFcXVhbCkgcmV0dXJuXG4gICAgICAgICAgICBzZXRTZWxlY3RlZFBvc2l0aW9ucyh2YWx1ZXNUb0ZpbHRlcilcbiAgICAgICAgICAgIGJ1aWxkQW5kU2VuZFVzZXJSZXF1ZXN0KHtcbiAgICAgICAgICAgICAgcG9zaXRpb25zT3ZlcnJpZGU6IHZhbHVlc1RvRmlsdGVyLFxuICAgICAgICAgICAgfSlcbiAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgc2V0UG9zaXRpb25TZWFyY2hUZXJtKHNlYXJjaFRlcm0gPz8gJycpXG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgaWYgKHR5cGUgPT09ICd3b3Jrc3BhY2VGaWx0ZXInKSB7XG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KHZhbHVlc1RvRmlsdGVyKSkge1xuICAgICAgICAgIGlmICghdmFsdWVzVG9GaWx0ZXIubGVuZ3RoKSB7XG4gICAgICAgICAgICBzZXRTZWxlY3RlZFdvcmtzcGFjZXMoW10pXG4gICAgICAgICAgICBidWlsZEFuZFNlbmRVc2VyUmVxdWVzdCh7IHdvcmtzcGFjZXNPdmVycmlkZTogW10gfSlcbiAgICAgICAgICAgIGNvbnN0IHRlcm0gPSB0ZWFtU2VhcmNoVGVybS50cmltKClcbiAgICAgICAgICAgIGhhbmRsZUdldFRlYW1zKHsgcGFnZTogMSwgLi4uKHRlcm0gPyB7IGZpbHRlcjogeyBuYW1lOiB0ZXJtIH0gfSA6IHt9KSB9KVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjb25zdCBhcmVXb3Jrc3BhY2VzRXF1YWwgPSB2YWx1ZXNUb0ZpbHRlci5ldmVyeShcbiAgICAgICAgICAgICAgKHZhbHVlLCBpbmRleDogbnVtYmVyKSA9PiB2YWx1ZSA9PT0gc2VsZWN0ZWRXb3Jrc3BhY2VzW2luZGV4XVxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgaWYgKGFyZVdvcmtzcGFjZXNFcXVhbCkgcmV0dXJuXG4gICAgICAgICAgICBzZXRTZWxlY3RlZFdvcmtzcGFjZXModmFsdWVzVG9GaWx0ZXIpXG4gICAgICAgICAgICBzZXRTZWxlY3RlZFRlYW1zKFtdKVxuICAgICAgICAgICAgc2V0VGVhbUZpbHRlclNlbGVjdGlvblJlc2V0S2V5KGsgPT4gayArIDEpXG4gICAgICAgICAgICBidWlsZEFuZFNlbmRVc2VyUmVxdWVzdCh7IHdvcmtzcGFjZXNPdmVycmlkZTogdmFsdWVzVG9GaWx0ZXIsIHRlYW1zT3ZlcnJpZGU6IFtdIH0pXG4gICAgICAgICAgICBjb25zdCB0ZXJtID0gdGVhbVNlYXJjaFRlcm0udHJpbSgpXG4gICAgICAgICAgICBjb25zdCB0ZWFtTGlzdEZpbHRlcjogeyBuYW1lPzogc3RyaW5nOyB3b3Jrc3BhY2VJZHM6IG51bWJlcltdIH0gPSB7XG4gICAgICAgICAgICAgIHdvcmtzcGFjZUlkczogdmFsdWVzVG9GaWx0ZXIsXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAodGVybSkgdGVhbUxpc3RGaWx0ZXIubmFtZSA9IHRlcm1cbiAgICAgICAgICAgIGhhbmRsZUdldFRlYW1zKHsgcGFnZTogMSwgZmlsdGVyOiB0ZWFtTGlzdEZpbHRlciB9KVxuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBjb25zdCB0ZXJtID0gc2VhcmNoVGVybSA/PyAnJ1xuICAgICAgICAgIHNldFdvcmtzcGFjZVNlYXJjaFRlcm0odGVybSlcbiAgICAgICAgICBoYW5kbGVHZXRXb3Jrc3BhY2VzKHtcbiAgICAgICAgICAgIHBhZ2U6IDEsXG4gICAgICAgICAgICAuLi4odGVybS50cmltKCkgPyB7IGZpbHRlcjogeyBuYW1lOiB0ZXJtLnRyaW0oKSB9IH0gOiB7fSksXG4gICAgICAgICAgfSlcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKFNFQVJDSF9FVkVOVCwgaGFuZGxlU2VhcmNoIGFzIHVua25vd24gYXMgRXZlbnRMaXN0ZW5lcilcbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoU0VBUkNIX0VWRU5ULCBoYW5kbGVTZWFyY2ggYXMgdW5rbm93biBhcyBFdmVudExpc3RlbmVyKVxuICAgIH1cbiAgfSwgW1xuICAgIGhhbmRsZUdldFVzZXJzLFxuICAgIGhhbmRsZUdldFRlYW1zLFxuICAgIGhhbmRsZUdldFdvcmtzcGFjZXMsXG4gICAgc2VhcmNoVGVybVZhbHVlLFxuICAgIHNlbGVjdGVkVGVhbXMsXG4gICAgc2VsZWN0ZWRQb3NpdGlvbnMsXG4gICAgc2VsZWN0ZWRXb3Jrc3BhY2VzLFxuICAgIHRlYW1TZWFyY2hUZXJtLFxuICBdKVxuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKCFkYXRhPy50ZWFtc1VzZXJzIHx8IGVycm9yKSByZXR1cm5cbiAgICBjb25zdCBtYXBwZWQgPSBkYXRhLnRlYW1zVXNlcnMuZGF0YS5tYXAoKHRlYW06IHsgaWQ6IG51bWJlcjsgbmFtZTogc3RyaW5nIH0pID0+ICh7XG4gICAgICBpZDogdGVhbS5pZCxcbiAgICAgIGxhYmVsOiB0ZWFtLm5hbWUsXG4gICAgfSkpXG4gICAgaWYgKGRhdGEudGVhbXNVc2Vycy5wYWdlID09PSAxKSB7XG4gICAgICBzZXRUZWFtT3B0aW9ucyhtYXBwZWQpXG4gICAgfSBlbHNlIHtcbiAgICAgIHNldFRlYW1PcHRpb25zKHByZXYgPT4ge1xuICAgICAgICBjb25zdCBleGlzdGluZ0lkcyA9IG5ldyBTZXQocHJldi5tYXAobyA9PiBvLmlkKSlcbiAgICAgICAgY29uc3QgbmV3T25lcyA9IG1hcHBlZC5maWx0ZXIoKG86IHsgaWQ6IG51bWJlcjsgbGFiZWw6IHN0cmluZyB9KSA9PiAhZXhpc3RpbmdJZHMuaGFzKG8uaWQpKVxuICAgICAgICByZXR1cm4gbmV3T25lcy5sZW5ndGggPyBbLi4ucHJldiwgLi4ubmV3T25lc10gOiBwcmV2XG4gICAgICB9KVxuICAgIH1cbiAgfSwgW2RhdGEsIGVycm9yXSlcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChwb3NpdGlvbnMpIHtcbiAgICAgIHNldFBvc2l0aW9uT3B0aW9ucyhwb3NpdGlvbnMpXG4gICAgICBpZiAocG9zaXRpb25zLmxlbmd0aCkge1xuICAgICAgICBkZWZhdWx0UG9zaXRpb25zUmVmLmN1cnJlbnQgPSBwb3NpdGlvbnNcbiAgICAgIH1cbiAgICB9XG4gIH0sIFtwb3NpdGlvbnNdKVxuXG4gIGNvbnN0IGhhbmRsZVRlYW1zTG9hZE1vcmUgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgcmVxdWVzdFRlYW1zTG9hZE1vcmUoKCkgPT4ge1xuICAgICAgY29uc3QgdGVybSA9IHRlYW1TZWFyY2hUZXJtPy50cmltKClcbiAgICAgIGNvbnN0IHRlYW1MaXN0RmlsdGVyOiB7IG5hbWU/OiBzdHJpbmc7IHdvcmtzcGFjZUlkcz86IG51bWJlcltdIH0gPSB7fVxuICAgICAgaWYgKHRlcm0pIHRlYW1MaXN0RmlsdGVyLm5hbWUgPSB0ZXJtXG4gICAgICBpZiAoc2VsZWN0ZWRXb3Jrc3BhY2VzLmxlbmd0aCkgdGVhbUxpc3RGaWx0ZXIud29ya3NwYWNlSWRzID0gc2VsZWN0ZWRXb3Jrc3BhY2VzXG4gICAgICBoYW5kbGVHZXRUZWFtcyh7XG4gICAgICAgIHBhZ2U6IGN1cnJlbnRQYWdlICsgMSxcbiAgICAgICAgLi4uKE9iamVjdC5rZXlzKHRlYW1MaXN0RmlsdGVyKS5sZW5ndGggPyB7IGZpbHRlcjogdGVhbUxpc3RGaWx0ZXIgfSA6IHt9KSxcbiAgICAgIH0pXG4gICAgfSlcbiAgfSwgW3JlcXVlc3RUZWFtc0xvYWRNb3JlLCBjdXJyZW50UGFnZSwgdGVhbVNlYXJjaFRlcm0sIHNlbGVjdGVkV29ya3NwYWNlcywgaGFuZGxlR2V0VGVhbXNdKVxuXG4gIGNvbnN0IGhhbmRsZVdvcmtzcGFjZXNMb2FkTW9yZSA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICByZXF1ZXN0V29ya3NwYWNlc0xvYWRNb3JlKCgpID0+XG4gICAgICBoYW5kbGVHZXRXb3Jrc3BhY2VzKHtcbiAgICAgICAgcGFnZTogd29ya3NwYWNlQ3VycmVudFBhZ2UgKyAxLFxuICAgICAgICAuLi4od29ya3NwYWNlU2VhcmNoVGVybT8udHJpbSgpID8geyBmaWx0ZXI6IHsgbmFtZTogd29ya3NwYWNlU2VhcmNoVGVybS50cmltKCkgfSB9IDoge30pLFxuICAgICAgfSlcbiAgICApXG4gIH0sIFtyZXF1ZXN0V29ya3NwYWNlc0xvYWRNb3JlLCB3b3Jrc3BhY2VDdXJyZW50UGFnZSwgd29ya3NwYWNlU2VhcmNoVGVybSwgaGFuZGxlR2V0V29ya3NwYWNlc10pXG5cbiAgY29uc3QgcG9zaXRpb25PcHRpb25zVG9TaG93ID0gIXBvc2l0aW9uU2VhcmNoVGVybS50cmltKClcbiAgICA/IHBvc2l0aW9uT3B0aW9uc1xuICAgIDogKCgpID0+IHtcbiAgICAgICAgY29uc3QgdGVybSA9IHBvc2l0aW9uU2VhcmNoVGVybS50cmltKCkudG9Mb3dlckNhc2UoKVxuICAgICAgICBjb25zdCBwb3NXaXRoQ2F0ZWdvcnkgPSBwb3NpdGlvbk9wdGlvbnMgYXMgeyBpZDogbnVtYmVyOyBsYWJlbDogc3RyaW5nOyBjYXRlZ29yeU5hbWU/OiBzdHJpbmcgfVtdXG4gICAgICAgIGNvbnN0IHNlbGVjdGVkT3B0cyA9IHBvc1dpdGhDYXRlZ29yeS5maWx0ZXIocCA9PiBzZWxlY3RlZFBvc2l0aW9ucy5pbmNsdWRlcyhwLmlkKSlcbiAgICAgICAgY29uc3QgZmlsdGVyZWRPcHRzID0gcG9zV2l0aENhdGVnb3J5LmZpbHRlcihcbiAgICAgICAgICBwID0+IHAubGFiZWwudG9Mb3dlckNhc2UoKS5pbmNsdWRlcyh0ZXJtKSB8fCAocC5jYXRlZ29yeU5hbWUgJiYgcC5jYXRlZ29yeU5hbWUudG9Mb3dlckNhc2UoKS5pbmNsdWRlcyh0ZXJtKSlcbiAgICAgICAgKVxuICAgICAgICBjb25zdCBmaWx0ZXJlZElkcyA9IG5ldyBTZXQoZmlsdGVyZWRPcHRzLm1hcChvID0+IG8uaWQpKVxuICAgICAgICBjb25zdCBzZWxlY3RlZE5vdEluRmlsdGVyZWQgPSBzZWxlY3RlZE9wdHMuZmlsdGVyKG8gPT4gIWZpbHRlcmVkSWRzLmhhcyhvLmlkKSlcbiAgICAgICAgcmV0dXJuIFsuLi5zZWxlY3RlZE5vdEluRmlsdGVyZWQsIC4uLmZpbHRlcmVkT3B0c11cbiAgICAgIH0pKClcblxuICBjb25zdCB3b3Jrc3BhY2VPcHRpb25zVG9TaG93ID0gIXdvcmtzcGFjZVNlYXJjaFRlcm0udHJpbSgpXG4gICAgPyB3b3Jrc3BhY2VPcHRpb25zXG4gICAgOiAoKCkgPT4ge1xuICAgICAgICBjb25zdCB0ZXJtID0gd29ya3NwYWNlU2VhcmNoVGVybS50cmltKCkudG9Mb3dlckNhc2UoKVxuICAgICAgICBjb25zdCBzZWxlY3RlZE9wdHMgPSB3b3Jrc3BhY2VPcHRpb25zLmZpbHRlcihwID0+IHNlbGVjdGVkV29ya3NwYWNlcy5pbmNsdWRlcyhwLmlkKSlcbiAgICAgICAgY29uc3QgZmlsdGVyZWRPcHRzID0gd29ya3NwYWNlT3B0aW9ucy5maWx0ZXIocCA9PiBwLmxhYmVsLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXModGVybSkpXG4gICAgICAgIGNvbnN0IGZpbHRlcmVkSWRzID0gbmV3IFNldChmaWx0ZXJlZE9wdHMubWFwKG8gPT4gby5pZCkpXG4gICAgICAgIGNvbnN0IHNlbGVjdGVkTm90SW5GaWx0ZXJlZCA9IHNlbGVjdGVkT3B0cy5maWx0ZXIobyA9PiAhZmlsdGVyZWRJZHMuaGFzKG8uaWQpKVxuICAgICAgICByZXR1cm4gWy4uLnNlbGVjdGVkTm90SW5GaWx0ZXJlZCwgLi4uZmlsdGVyZWRPcHRzXVxuICAgICAgfSkoKVxuXG4gIGNvbnN0IGhhbmRsZVRlYW1GaWx0ZXJPcGVuID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIGNvbnN0IHRlcm0gPSB0ZWFtU2VhcmNoVGVybS50cmltKClcbiAgICBjb25zdCB0ZWFtTGlzdEZpbHRlcjogeyBuYW1lPzogc3RyaW5nOyB3b3Jrc3BhY2VJZHM/OiBudW1iZXJbXSB9ID0ge31cbiAgICBpZiAodGVybSkgdGVhbUxpc3RGaWx0ZXIubmFtZSA9IHRlcm1cbiAgICBpZiAoc2VsZWN0ZWRXb3Jrc3BhY2VzLmxlbmd0aCkgdGVhbUxpc3RGaWx0ZXIud29ya3NwYWNlSWRzID0gc2VsZWN0ZWRXb3Jrc3BhY2VzXG4gICAgaGFuZGxlR2V0VGVhbXMoe1xuICAgICAgcGFnZTogMSxcbiAgICAgIC4uLihPYmplY3Qua2V5cyh0ZWFtTGlzdEZpbHRlcikubGVuZ3RoID8geyBmaWx0ZXI6IHRlYW1MaXN0RmlsdGVyIH0gOiB7fSksXG4gICAgfSlcbiAgfSwgW3RlYW1TZWFyY2hUZXJtLCBzZWxlY3RlZFdvcmtzcGFjZXMsIGhhbmRsZUdldFRlYW1zXSlcblxuICByZXR1cm4gKFxuICAgIDxMYXlvdXRTZWFyY2hVc2VyPlxuICAgICAgPFNlYXJjaCAvPlxuICAgICAge3dvcmtzcGFjZXNGZWF0dXJlRW5hYmxlZCAmJiAoXG4gICAgICAgIDxGaWx0ZXJDaGlwXG4gICAgICAgICAgaWQ9XCJ3b3Jrc3BhY2VGaWx0ZXJcIlxuICAgICAgICAgIGxhYmVsPXt0KCdmaWx0ZXJzLndvcmtzcGFjZScpfVxuICAgICAgICAgIG9wdGlvbnM9e3dvcmtzcGFjZU9wdGlvbnNUb1Nob3d9XG4gICAgICAgICAgZW1wdHlNZXNzYWdlPXt0KCd1c2Vycy5lbXB0eUZpbHRlck1lc3NhZ2UnKX1cbiAgICAgICAgICBkaXNwYXRjaFNlYXJjaE9uQ2xvc2U9e2ZhbHNlfVxuICAgICAgICAgIG9uTG9hZE1vcmU9e2hhbmRsZVdvcmtzcGFjZXNMb2FkTW9yZX1cbiAgICAgICAgICBoYXNNb3JlUGFnZXM9e2NhbkxvYWRNb3JlV29ya3NwYWNlc31cbiAgICAgICAgICBsb2FkTW9yZUxvYWRpbmc9e3dvcmtzcGFjZXNMb2FkaW5nICYmIHdvcmtzcGFjZXNMaXN0Lmxlbmd0aCA+IDB9XG4gICAgICAgICAgb3B0aW9uc0xvYWRpbmc9e3dvcmtzcGFjZXNMb2FkaW5nICYmIHdvcmtzcGFjZXNMaXN0Lmxlbmd0aCA9PT0gMH1cbiAgICAgICAgICBsb2FkaW5nTWVzc2FnZT17dCgndXNlcnMubG9hZGluZ1dvcmtzcGFjZXMnKX1cbiAgICAgICAgLz5cbiAgICAgICl9XG4gICAgICA8RmlsdGVyQ2hpcFxuICAgICAgICBpZD1cInRlYW1GaWx0ZXJcIlxuICAgICAgICBsYWJlbD17dCgnZmlsdGVycy50ZWFtJyl9XG4gICAgICAgIG9wdGlvbnM9e3RlYW1PcHRpb25zfVxuICAgICAgICBlbXB0eU1lc3NhZ2U9e3QoJ3VzZXJzLmVtcHR5RmlsdGVyTWVzc2FnZScpfVxuICAgICAgICBzZWxlY3Rpb25SZXNldEtleT17dGVhbUZpbHRlclNlbGVjdGlvblJlc2V0S2V5fVxuICAgICAgICBvbk9wZW49e2hhbmRsZVRlYW1GaWx0ZXJPcGVufVxuICAgICAgICBvbkxvYWRNb3JlPXtoYW5kbGVUZWFtc0xvYWRNb3JlfVxuICAgICAgICBoYXNNb3JlUGFnZXM9e2NhbkxvYWRNb3JlVGVhbXN9XG4gICAgICAgIGxvYWRNb3JlTG9hZGluZz17bG9hZGluZ31cbiAgICAgICAgZGlzcGF0Y2hTZWFyY2hPbkNsb3NlPXtmYWxzZX1cbiAgICAgIC8+XG4gICAgICA8RmlsdGVyQ2hpcFxuICAgICAgICBpZD1cInBvc2l0aW9uRmlsdGVyXCJcbiAgICAgICAgbGFiZWw9e3QoJ2ZpbHRlcnMucG9zaXRpb24nKX1cbiAgICAgICAgb3B0aW9ucz17cG9zaXRpb25PcHRpb25zVG9TaG93fVxuICAgICAgICBlbXB0eU1lc3NhZ2U9e3QoJ3VzZXJzLmVtcHR5RmlsdGVyTWVzc2FnZScpfVxuICAgICAgICBkaXNwYXRjaFNlYXJjaE9uQ2xvc2VcbiAgICAgIC8+XG4gICAgPC9MYXlvdXRTZWFyY2hVc2VyPlxuICApXG59KVxuIl0sIm1hcHBpbmdzIjoiOzs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTQSxJQUFJLEVBQUVDLFNBQVMsRUFBRUMsUUFBUSxFQUFFQyxNQUFNLEVBQUVDLFdBQVcsRUFBRUMsT0FBTyxRQUFRLE9BQU87QUFDL0UsU0FBU0MsY0FBYyxRQUFRLGVBQWU7QUFDOUMsU0FBU0MsYUFBYSxRQUFRLDRCQUE0QjtBQUMxRCxTQUFTQyxVQUFVLFFBQVEscUNBQXFDO0FBQ2hFLFNBQVNDLFdBQVcsUUFBUSx5QkFBeUI7QUFDckQsU0FBU0MsZ0JBQWdCLFFBQVEsOEJBQThCO0FBQy9ELFNBQVNDLFlBQVksUUFBUSw0QkFBNEI7QUFDekQsU0FBU0MsTUFBTSxRQUFRLGdDQUFnQztBQUN2RCxTQUFTQyxnQkFBZ0IsUUFBUSxnQ0FBZ0M7QUFDakUsU0FBU0MsNkJBQTZCLFFBQVEsMkNBQTJDO0FBQ3pGLFNBQVNDLDZCQUE2QixRQUFRLDJDQUEyQztBQUFBLFNBQUFDLEdBQUEsSUFBQUMs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
|