@projectcor/people-microfront 1.0.2-3 → 1.0.2-31
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 +26 -2
- package/lib/components/DeleteTeamModal/DeleteTeamModal.js +36 -21
- package/lib/components/DeleteTeamModal/DeleteTeamModal.styles.js +25 -12
- package/lib/components/DeleteTeamModal/DeleteTeamModal.types.js +1 -1
- 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 +8 -49
- package/lib/components/EmptyUser/EmptyUser.styles.js +14 -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 +46 -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 +28 -40
- package/lib/components/MenuOptions/MenuOptions.styles.js +4 -3
- 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 +53 -166
- package/lib/components/ModalEditUserPosition/UserEditPositionRow.styles.js +56 -1
- package/lib/components/ModalOptionsWithSearch/ModalOptionsWithSearch.js +18 -10
- package/lib/components/ModalOptionsWithSearch/ModalOptionsWithSearch.styles.js +10 -5
- 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 +27 -39
- package/lib/components/Table/Header/HeaderTable.styles.js +15 -0
- package/lib/components/Table/Row/Row.js +67 -24
- package/lib/components/Table/Row/Row.styles.js +41 -13
- 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 +89 -73
- 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 +59 -22
- package/lib/components/Table/TeamRow/TeamRow.styles.js +7 -0
- package/lib/components/Table/TeamRow/UsersRow/UsersRow.js +119 -48
- package/lib/components/Table/TeamRow/UsersRow/UsersRow.styles.js +27 -4
- package/lib/components/TeamDetailsModal/MembersSelect.js +38 -35
- package/lib/components/TeamDetailsModal/TeamDetailsModal.js +56 -63
- 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 +69 -31
- package/lib/container/Filters/FiltersContainer.js +67 -27
- package/lib/container/MainView/MainTeamsView.js +12 -16
- package/lib/container/MainView/MainUsersView.js +78 -104
- package/lib/container/MainView/MainUsersView.styles.js +32 -0
- package/lib/container/MainView/MainView.js +16 -6
- 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/UsersContext.js +45 -22
- package/lib/hooks/useAbortController.js +15 -11
- package/lib/hooks/useAssignUserToTeam.js +17 -4
- package/lib/hooks/useCreateTeams.js +42 -11
- package/lib/hooks/useDebouncedCallback.js +27 -0
- package/lib/hooks/useDeleteTeam.js +67 -0
- package/lib/hooks/useGetTeams.js +2 -2
- 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/useResize.js +9 -4
- package/lib/hooks/useUnassignUserFromTeam.js +19 -10
- package/lib/hooks/useUpdateTeam.js +65 -0
- package/lib/lang/i18nextForWeb.js +2 -2
- package/lib/lang/translation/br.json +58 -10
- package/lib/lang/translation/en.json +58 -10
- package/lib/lang/translation/es.json +58 -10
- package/lib/lang/translation/fr.json +60 -12
- package/lib/mocks/mockedUser.js +7 -1
- package/lib/query/createTeam.js +2 -2
- package/lib/query/deleteTeam.js +5 -0
- package/lib/query/getTeams.js +2 -2
- package/lib/query/getUsers.js +2 -2
- package/lib/query/updateTeam.js +5 -0
- package/lib/types/global.d.js +1 -1
- package/lib/types/userType.d.js +1 -1
- package/lib/utils/formatNumber.js +28 -0
- package/lib/utils/tabUrl.js +20 -0
- package/package.json +3 -3
- 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
|
@@ -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; }
|
|
@@ -14,20 +15,18 @@ import { FilterChip } from '../../components/Filters/FilterChip';
|
|
|
14
15
|
import { useGetTeams } from '../../hooks/useGetTeams';
|
|
15
16
|
import { SEARCH_EVENT } from '../../hooks/useSearchEvent';
|
|
16
17
|
import { Search } from '../../components/Search/Search';
|
|
18
|
+
import { LayoutSearchUser } from '../../components/Layout/Layout';
|
|
17
19
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
18
|
-
export var FiltersContainer = /*#__PURE__*/memo(function (
|
|
19
|
-
var handleGetUserPositionFilterProp = _ref.handleGetUserPositionFilter;
|
|
20
|
+
export var FiltersContainer = /*#__PURE__*/memo(function () {
|
|
20
21
|
var _useTranslation = useTranslation('people'),
|
|
21
22
|
t = _useTranslation.t;
|
|
22
23
|
var _useUsersQuery = useUsersQuery(),
|
|
23
24
|
handleGetUsers = _useUsersQuery.handleGetUsers,
|
|
24
25
|
positions = _useUsersQuery.positions;
|
|
25
26
|
var _useGetTeams = useGetTeams(),
|
|
26
|
-
handleGetTeams = _useGetTeams.handleGetTeams,
|
|
27
27
|
loading = _useGetTeams.loading,
|
|
28
28
|
error = _useGetTeams.error,
|
|
29
29
|
data = _useGetTeams.data;
|
|
30
|
-
var handleGetUserPositionFilter = handleGetUserPositionFilterProp !== null && handleGetUserPositionFilterProp !== void 0 ? handleGetUserPositionFilterProp : function () {};
|
|
31
30
|
var _useState = useState(''),
|
|
32
31
|
_useState2 = _slicedToArray(_useState, 2),
|
|
33
32
|
searchTermValue = _useState2[0],
|
|
@@ -49,20 +48,28 @@ export var FiltersContainer = /*#__PURE__*/memo(function (_ref) {
|
|
|
49
48
|
_useState0 = _slicedToArray(_useState9, 2),
|
|
50
49
|
selectedPositions = _useState0[0],
|
|
51
50
|
setSelectedPositions = _useState0[1];
|
|
51
|
+
var _useState1 = useState(''),
|
|
52
|
+
_useState10 = _slicedToArray(_useState1, 2),
|
|
53
|
+
teamSearchTerm = _useState10[0],
|
|
54
|
+
setTeamSearchTerm = _useState10[1];
|
|
55
|
+
var _useState11 = useState(''),
|
|
56
|
+
_useState12 = _slicedToArray(_useState11, 2),
|
|
57
|
+
positionSearchTerm = _useState12[0],
|
|
58
|
+
setPositionSearchTerm = _useState12[1];
|
|
52
59
|
var buildAndSendUserRequest = function buildAndSendUserRequest() {
|
|
53
|
-
var
|
|
54
|
-
searchInputOverride =
|
|
55
|
-
teamsOverride =
|
|
56
|
-
positionsOverride =
|
|
60
|
+
var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
|
|
61
|
+
searchInputOverride = _ref.searchInputOverride,
|
|
62
|
+
teamsOverride = _ref.teamsOverride,
|
|
63
|
+
positionsOverride = _ref.positionsOverride;
|
|
57
64
|
var positionsFilter = positionsOverride !== undefined ? positionsOverride.length ? {
|
|
58
65
|
positions: positionsOverride
|
|
59
66
|
} : {} : selectedPositions.length ? {
|
|
60
67
|
positions: selectedPositions
|
|
61
68
|
} : {};
|
|
62
69
|
var teamsFilter = teamsOverride !== undefined ? teamsOverride.length ? {
|
|
63
|
-
|
|
70
|
+
team: teamsOverride
|
|
64
71
|
} : {} : selectedTeams.length ? {
|
|
65
|
-
|
|
72
|
+
team: selectedTeams
|
|
66
73
|
} : {};
|
|
67
74
|
var valuesToFilter = _objectSpread(_objectSpread({}, positionsFilter), teamsFilter);
|
|
68
75
|
handleGetUsers({
|
|
@@ -102,7 +109,7 @@ export var FiltersContainer = /*#__PURE__*/memo(function (_ref) {
|
|
|
102
109
|
});
|
|
103
110
|
}
|
|
104
111
|
} else {
|
|
105
|
-
|
|
112
|
+
setTeamSearchTerm(searchTerm !== null && searchTerm !== void 0 ? searchTerm : '');
|
|
106
113
|
}
|
|
107
114
|
}
|
|
108
115
|
if (type === 'positionFilter') {
|
|
@@ -122,8 +129,8 @@ export var FiltersContainer = /*#__PURE__*/memo(function (_ref) {
|
|
|
122
129
|
positionsOverride: valuesToFilter
|
|
123
130
|
});
|
|
124
131
|
}
|
|
125
|
-
} else
|
|
126
|
-
|
|
132
|
+
} else {
|
|
133
|
+
setPositionSearchTerm(searchTerm !== null && searchTerm !== void 0 ? searchTerm : '');
|
|
127
134
|
}
|
|
128
135
|
}
|
|
129
136
|
};
|
|
@@ -131,10 +138,11 @@ export var FiltersContainer = /*#__PURE__*/memo(function (_ref) {
|
|
|
131
138
|
return function () {
|
|
132
139
|
window.removeEventListener(SEARCH_EVENT, handleSearch);
|
|
133
140
|
};
|
|
134
|
-
}, [
|
|
141
|
+
}, [handleGetUsers, searchTermValue, selectedTeams, selectedPositions]);
|
|
135
142
|
useEffect(function () {
|
|
136
|
-
|
|
137
|
-
|
|
143
|
+
var _data$teamsUsers;
|
|
144
|
+
if (data !== null && data !== void 0 && (_data$teamsUsers = data.teamsUsers) !== null && _data$teamsUsers !== void 0 && _data$teamsUsers.data && !loading && !error) {
|
|
145
|
+
setTeamOptions(data.teamsUsers.data.map(function (team) {
|
|
138
146
|
return {
|
|
139
147
|
id: team.id,
|
|
140
148
|
label: team.name
|
|
@@ -143,26 +151,58 @@ export var FiltersContainer = /*#__PURE__*/memo(function (_ref) {
|
|
|
143
151
|
}
|
|
144
152
|
}, [data, loading, error]);
|
|
145
153
|
useEffect(function () {
|
|
146
|
-
if (positions
|
|
154
|
+
if (positions) {
|
|
147
155
|
setPositionOptions(positions);
|
|
148
|
-
|
|
156
|
+
if (positions.length) {
|
|
157
|
+
defaultPositionsRef.current = positions;
|
|
158
|
+
}
|
|
149
159
|
}
|
|
150
160
|
}, [positions]);
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
161
|
+
var teamOptionsToShow = !teamSearchTerm.trim() ? teamOptions : function () {
|
|
162
|
+
var term = teamSearchTerm.trim().toLowerCase();
|
|
163
|
+
var selectedOpts = teamOptions.filter(function (team) {
|
|
164
|
+
return selectedTeams.includes(team.id);
|
|
165
|
+
});
|
|
166
|
+
var filteredOpts = teamOptions.filter(function (team) {
|
|
167
|
+
return team.label.toLowerCase().includes(term);
|
|
168
|
+
});
|
|
169
|
+
var filteredIds = new Set(filteredOpts.map(function (o) {
|
|
170
|
+
return o.id;
|
|
171
|
+
}));
|
|
172
|
+
var selectedNotInFiltered = selectedOpts.filter(function (o) {
|
|
173
|
+
return !filteredIds.has(o.id);
|
|
174
|
+
});
|
|
175
|
+
return [].concat(_toConsumableArray(selectedNotInFiltered), _toConsumableArray(filteredOpts));
|
|
176
|
+
}();
|
|
177
|
+
var positionOptionsToShow = !positionSearchTerm.trim() ? positionOptions : function () {
|
|
178
|
+
var term = positionSearchTerm.trim().toLowerCase();
|
|
179
|
+
var posWithCategory = positionOptions;
|
|
180
|
+
var selectedOpts = posWithCategory.filter(function (p) {
|
|
181
|
+
return selectedPositions.includes(p.id);
|
|
182
|
+
});
|
|
183
|
+
var filteredOpts = posWithCategory.filter(function (p) {
|
|
184
|
+
return p.label.toLowerCase().includes(term) || p.categoryName && p.categoryName.toLowerCase().includes(term);
|
|
185
|
+
});
|
|
186
|
+
var filteredIds = new Set(filteredOpts.map(function (o) {
|
|
187
|
+
return o.id;
|
|
188
|
+
}));
|
|
189
|
+
var selectedNotInFiltered = selectedOpts.filter(function (o) {
|
|
190
|
+
return !filteredIds.has(o.id);
|
|
191
|
+
});
|
|
192
|
+
return [].concat(_toConsumableArray(selectedNotInFiltered), _toConsumableArray(filteredOpts));
|
|
193
|
+
}();
|
|
194
|
+
return /*#__PURE__*/_jsxs(LayoutSearchUser, {
|
|
157
195
|
children: [/*#__PURE__*/_jsx(Search, {}), /*#__PURE__*/_jsx(FilterChip, {
|
|
158
196
|
id: "teamFilter",
|
|
159
197
|
label: t('filters.team'),
|
|
160
|
-
options:
|
|
198
|
+
options: teamOptionsToShow,
|
|
199
|
+
emptyMessage: t('users.emptyFilterMessage')
|
|
161
200
|
}), /*#__PURE__*/_jsx(FilterChip, {
|
|
162
201
|
id: "positionFilter",
|
|
163
202
|
label: t('filters.position'),
|
|
164
|
-
options:
|
|
203
|
+
options: positionOptionsToShow,
|
|
204
|
+
emptyMessage: t('users.emptyFilterMessage')
|
|
165
205
|
})]
|
|
166
206
|
});
|
|
167
207
|
});
|
|
168
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJtZW1vIiwidXNlRWZmZWN0IiwidXNlU3RhdGUiLCJ1c2VSZWYiLCJ1c2VUcmFuc2xhdGlvbiIsInVzZVVzZXJzUXVlcnkiLCJGaWx0ZXJDaGlwIiwidXNlR2V0VGVhbXMiLCJTRUFSQ0hfRVZFTlQiLCJTZWFyY2giLCJqc3giLCJfanN4IiwianN4cyIsIl9qc3hzIiwiRmlsdGVyc0NvbnRhaW5lciIsIl9yZWYiLCJoYW5kbGVHZXRVc2VyUG9zaXRpb25GaWx0ZXJQcm9wIiwiaGFuZGxlR2V0VXNlclBvc2l0aW9uRmlsdGVyIiwiX3VzZVRyYW5zbGF0aW9uIiwidCIsIl91c2VVc2Vyc1F1ZXJ5IiwiaGFuZGxlR2V0VXNlcnMiLCJwb3NpdGlvbnMiLCJfdXNlR2V0VGVhbXMiLCJoYW5kbGVHZXRUZWFtcyIsImxvYWRpbmciLCJlcnJvciIsImRhdGEiLCJfdXNlU3RhdGUiLCJfdXNlU3RhdGUyIiwiX3NsaWNlZFRvQXJyYXkiLCJzZWFyY2hUZXJtVmFsdWUiLCJzZXRTZWFyY2hUZXJtVmFsdWUiLCJfdXNlU3RhdGUzIiwiX3VzZVN0YXRlNCIsInRlYW1PcHRpb25zIiwic2V0VGVhbU9wdGlvbnMiLCJfdXNlU3RhdGU1IiwiX3VzZVN0YXRlNiIsInBvc2l0aW9uT3B0aW9ucyIsInNldFBvc2l0aW9uT3B0aW9ucyIsImRlZmF1bHRQb3NpdGlvbnNSZWYiLCJfdXNlU3RhdGU3IiwiX3VzZVN0YXRlOCIsInNlbGVjdGVkVGVhbXMiLCJzZXRTZWxlY3RlZFRlYW1zIiwiX3VzZVN0YXRlOSIsIl91c2VTdGF0ZTAiLCJzZWxlY3RlZFBvc2l0aW9ucyIsInNldFNlbGVjdGVkUG9zaXRpb25zIiwiYnVpbGRBbmRTZW5kVXNlclJlcXVlc3QiLCJfcmVmMiIsImFyZ3VtZW50cyIsImxlbmd0aCIsInVuZGVmaW5lZCIsInNlYXJjaElucHV0T3ZlcnJpZGUiLCJ0ZWFtc092ZXJyaWRlIiwicG9zaXRpb25zT3ZlcnJpZGUiLCJwb3NpdGlvbnNGaWx0ZXIiLCJ0ZWFtc0ZpbHRlciIsInRlYW1zIiwidmFsdWVzVG9GaWx0ZXIiLCJfb2JqZWN0U3ByZWFkIiwic2VhcmNoSW5wdXQiLCJwYWdlIiwiaGFuZGxlU2VhcmNoIiwiZXZlbnQiLCJfZXZlbnQkZGV0YWlsIiwiZGV0YWlsIiwic2VhcmNoVGVybSIsInR5cGUiLCJBcnJheSIsImlzQXJyYXkiLCJhcmVUZWFtc0VxdWFsIiwiZXZlcnkiLCJ2YWx1ZSIsImluZGV4IiwiYXJlUG9zaXRpb25zRXF1YWwiLCJ3aW5kb3ciLCJhZGRFdmVudExpc3RlbmVyIiwicmVtb3ZlRXZlbnRMaXN0ZW5lciIsIm1hcCIsInRlYW0iLCJpZCIsImxhYmVsIiwibmFtZSIsImN1cnJlbnQiLCJzdHlsZSIsImRpc3BsYXkiLCJnYXAiLCJhbGlnbkl0ZW1zIiwiY2hpbGRyZW4iLCJvcHRpb25zIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbnRhaW5lci9GaWx0ZXJzL0ZpbHRlcnNDb250YWluZXIudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9pbmRlbnQgKi9cbi8qIGVzbGludC1kaXNhYmxlIG5vLW5lc3RlZC10ZXJuYXJ5ICovXG4vKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktZnVuY3Rpb24gKi9cbi8qIGVzbGludC1kaXNhYmxlIHJlYWN0L3JlcXVpcmUtZGVmYXVsdC1wcm9wcyAqL1xuLyogZXNsaW50LWRpc2FibGUgbm8tdW5kZWYgKi9cbmltcG9ydCB7IG1lbW8sIHVzZUVmZmVjdCwgdXNlU3RhdGUsIHVzZVJlZiB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHsgdXNlVHJhbnNsYXRpb24gfSBmcm9tICdyZWFjdC1pMThuZXh0J1xuaW1wb3J0IHsgdXNlVXNlcnNRdWVyeSB9IGZyb20gJy4uLy4uL2NvbnRleHQvVXNlcnNDb250ZXh0J1xuaW1wb3J0IHsgRmlsdGVyQ2hpcCB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMvRmlsdGVycy9GaWx0ZXJDaGlwJ1xuaW1wb3J0IHsgdXNlR2V0VGVhbXMgfSBmcm9tICcuLi8uLi9ob29rcy91c2VHZXRUZWFtcydcbmltcG9ydCB7IFNFQVJDSF9FVkVOVCB9IGZyb20gJy4uLy4uL2hvb2tzL3VzZVNlYXJjaEV2ZW50J1xuaW1wb3J0IHsgU2VhcmNoIH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cy9TZWFyY2gvU2VhcmNoJ1xuXG50eXBlIEZpbHRlcnNDb250YWluZXJQcm9wcyA9IHtcbiAgaGFuZGxlR2V0VXNlclBvc2l0aW9uRmlsdGVyPzogKG5hbWU6IHN0cmluZywgcGFnZT86IG51bWJlcikgPT4gdm9pZFxufVxuXG5leHBvcnQgY29uc3QgRmlsdGVyc0NvbnRhaW5lciA9IG1lbW8oXG4gICh7IGhhbmRsZUdldFVzZXJQb3NpdGlvbkZpbHRlcjogaGFuZGxlR2V0VXNlclBvc2l0aW9uRmlsdGVyUHJvcCB9OiBGaWx0ZXJzQ29udGFpbmVyUHJvcHMpID0+IHtcbiAgICBjb25zdCB7IHQgfSA9IHVzZVRyYW5zbGF0aW9uKCdwZW9wbGUnKVxuICAgIGNvbnN0IHsgaGFuZGxlR2V0VXNlcnMsIHBvc2l0aW9ucyB9ID0gdXNlVXNlcnNRdWVyeSgpXG4gICAgY29uc3QgeyBoYW5kbGVHZXRUZWFtcywgbG9hZGluZywgZXJyb3IsIGRhdGEgfSA9IHVzZUdldFRlYW1zKClcbiAgICBjb25zdCBoYW5kbGVHZXRVc2VyUG9zaXRpb25GaWx0ZXIgPSBoYW5kbGVHZXRVc2VyUG9zaXRpb25GaWx0ZXJQcm9wID8/ICgoKSA9PiB7fSlcblxuICAgIGNvbnN0IFtzZWFyY2hUZXJtVmFsdWUsIHNldFNlYXJjaFRlcm1WYWx1ZV0gPSB1c2VTdGF0ZSgnJylcbiAgICBjb25zdCBbdGVhbU9wdGlvbnMsIHNldFRlYW1PcHRpb25zXSA9IHVzZVN0YXRlPHsgaWQ6IG51bWJlcjsgbGFiZWw6IHN0cmluZyB9W10+KFtdKVxuICAgIGNvbnN0IFtwb3NpdGlvbk9wdGlvbnMsIHNldFBvc2l0aW9uT3B0aW9uc10gPSB1c2VTdGF0ZTx7IGlkOiBudW1iZXI7IGxhYmVsOiBzdHJpbmcgfVtdPihwb3NpdGlvbnMgfHwgW10pXG4gICAgY29uc3QgZGVmYXVsdFBvc2l0aW9uc1JlZiA9IHVzZVJlZjx7IGlkOiBudW1iZXI7IGxhYmVsOiBzdHJpbmc7IGNhdGVnb3J5TmFtZT86IHN0cmluZyB9W10+KHBvc2l0aW9ucyB8fCBbXSlcblxuICAgIGNvbnN0IFtzZWxlY3RlZFRlYW1zLCBzZXRTZWxlY3RlZFRlYW1zXSA9IHVzZVN0YXRlPG51bWJlcltdPihbXSlcbiAgICBjb25zdCBbc2VsZWN0ZWRQb3NpdGlvbnMsIHNldFNlbGVjdGVkUG9zaXRpb25zXSA9IHVzZVN0YXRlPG51bWJlcltdPihbXSlcblxuICAgIGNvbnN0IGJ1aWxkQW5kU2VuZFVzZXJSZXF1ZXN0ID0gKHtcbiAgICAgIHNlYXJjaElucHV0T3ZlcnJpZGUsXG4gICAgICB0ZWFtc092ZXJyaWRlLFxuICAgICAgcG9zaXRpb25zT3ZlcnJpZGUsXG4gICAgfToge1xuICAgICAgc2VhcmNoSW5wdXRPdmVycmlkZT86IHN0cmluZ1xuICAgICAgdGVhbXNPdmVycmlkZT86IG51bWJlcltdXG4gICAgICBwb3NpdGlvbnNPdmVycmlkZT86IG51bWJlcltdXG4gICAgfSA9IHt9KSA9PiB7XG4gICAgICBjb25zdCBwb3NpdGlvbnNGaWx0ZXIgPVxuICAgICAgICBwb3NpdGlvbnNPdmVycmlkZSAhPT0gdW5kZWZpbmVkXG4gICAgICAgICAgPyBwb3NpdGlvbnNPdmVycmlkZS5sZW5ndGhcbiAgICAgICAgICAgID8geyBwb3NpdGlvbnM6IHBvc2l0aW9uc092ZXJyaWRlIH1cbiAgICAgICAgICAgIDoge31cbiAgICAgICAgICA6IHNlbGVjdGVkUG9zaXRpb25zLmxlbmd0aFxuICAgICAgICAgID8geyBwb3NpdGlvbnM6IHNlbGVjdGVkUG9zaXRpb25zIH1cbiAgICAgICAgICA6IHt9XG4gICAgICBjb25zdCB0ZWFtc0ZpbHRlciA9XG4gICAgICAgIHRlYW1zT3ZlcnJpZGUgIT09IHVuZGVmaW5lZFxuICAgICAgICAgID8gdGVhbXNPdmVycmlkZS5sZW5ndGhcbiAgICAgICAgICAgID8geyB0ZWFtczogdGVhbXNPdmVycmlkZSB9XG4gICAgICAgICAgICA6IHt9XG4gICAgICAgICAgOiBzZWxlY3RlZFRlYW1zLmxlbmd0aFxuICAgICAgICAgID8geyB0ZWFtczogc2VsZWN0ZWRUZWFtcyB9XG4gICAgICAgICAgOiB7fVxuICAgICAgY29uc3QgdmFsdWVzVG9GaWx0ZXIgPSB7IC4uLnBvc2l0aW9uc0ZpbHRlciwgLi4udGVhbXNGaWx0ZXIgfVxuXG4gICAgICBoYW5kbGVHZXRVc2Vycyh7XG4gICAgICAgIHNlYXJjaElucHV0OiBzZWFyY2hJbnB1dE92ZXJyaWRlICE9PSB1bmRlZmluZWQgPyBzZWFyY2hJbnB1dE92ZXJyaWRlIDogc2VhcmNoVGVybVZhbHVlLFxuICAgICAgICBwYWdlOiAxLFxuICAgICAgICB2YWx1ZXNUb0ZpbHRlcjogdmFsdWVzVG9GaWx0ZXIgYXMgYW55LFxuICAgICAgfSlcbiAgICB9XG5cbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgY29uc3QgaGFuZGxlU2VhcmNoID0gKGV2ZW50OiBDdXN0b21FdmVudCkgPT4ge1xuICAgICAgICBjb25zdCB7IHNlYXJjaFRlcm0sIHR5cGUsIHZhbHVlc1RvRmlsdGVyIH0gPSBldmVudC5kZXRhaWxcbiAgICAgICAgaWYgKHR5cGUgPT09ICdmaWx0ZXIxJykge1xuICAgICAgICAgIHNldFNlYXJjaFRlcm1WYWx1ZShzZWFyY2hUZXJtKVxuICAgICAgICAgIGJ1aWxkQW5kU2VuZFVzZXJSZXF1ZXN0KHsgc2VhcmNoSW5wdXRPdmVycmlkZTogc2VhcmNoVGVybSB9KVxuICAgICAgICAgIHJldHVyblxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHR5cGUgPT09ICd0ZWFtRmlsdGVyJykge1xuICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KHZhbHVlc1RvRmlsdGVyKSkge1xuICAgICAgICAgICAgaWYgKHZhbHVlc1RvRmlsdGVyLmxlbmd0aCkge1xuICAgICAgICAgICAgICBjb25zdCBhcmVUZWFtc0VxdWFsID0gdmFsdWVzVG9GaWx0ZXIuZXZlcnkoKHZhbHVlLCBpbmRleCkgPT4gdmFsdWUgPT09IHNlbGVjdGVkVGVhbXNbaW5kZXhdKVxuICAgICAgICAgICAgICBpZiAoYXJlVGVhbXNFcXVhbCkgcmV0dXJuXG4gICAgICAgICAgICAgIHNldFNlbGVjdGVkVGVhbXModmFsdWVzVG9GaWx0ZXIpXG4gICAgICAgICAgICAgIGJ1aWxkQW5kU2VuZFVzZXJSZXF1ZXN0KHtcbiAgICAgICAgICAgICAgICB0ZWFtc092ZXJyaWRlOiB2YWx1ZXNUb0ZpbHRlcixcbiAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIHNldFNlbGVjdGVkVGVhbXMoW10pXG4gICAgICAgICAgICAgIGJ1aWxkQW5kU2VuZFVzZXJSZXF1ZXN0KHsgdGVhbXNPdmVycmlkZTogW10gfSlcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgaGFuZGxlR2V0VGVhbXMoMSwgc2VhcmNoVGVybSlcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodHlwZSA9PT0gJ3Bvc2l0aW9uRmlsdGVyJykge1xuICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KHZhbHVlc1RvRmlsdGVyKSkge1xuICAgICAgICAgICAgaWYgKCF2YWx1ZXNUb0ZpbHRlci5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgc2V0U2VsZWN0ZWRQb3NpdGlvbnMoW10pXG4gICAgICAgICAgICAgIGJ1aWxkQW5kU2VuZFVzZXJSZXF1ZXN0KHsgcG9zaXRpb25zT3ZlcnJpZGU6IFtdIH0pXG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICBjb25zdCBhcmVQb3NpdGlvbnNFcXVhbCA9IHZhbHVlc1RvRmlsdGVyLmV2ZXJ5KCh2YWx1ZSwgaW5kZXgpID0+IHZhbHVlID09PSBzZWxlY3RlZFBvc2l0aW9uc1tpbmRleF0pXG4gICAgICAgICAgICAgIGlmIChhcmVQb3NpdGlvbnNFcXVhbCkgcmV0dXJuXG4gICAgICAgICAgICAgIHNldFNlbGVjdGVkUG9zaXRpb25zKHZhbHVlc1RvRmlsdGVyKVxuICAgICAgICAgICAgICBidWlsZEFuZFNlbmRVc2VyUmVxdWVzdCh7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zT3ZlcnJpZGU6IHZhbHVlc1RvRmlsdGVyLFxuICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH0gZWxzZSBpZiAoc2VhcmNoVGVybSkge1xuICAgICAgICAgICAgaGFuZGxlR2V0VXNlclBvc2l0aW9uRmlsdGVyKHNlYXJjaFRlcm0pXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKFNFQVJDSF9FVkVOVCwgaGFuZGxlU2VhcmNoIGFzIHVua25vd24gYXMgRXZlbnRMaXN0ZW5lcilcbiAgICAgIHJldHVybiAoKSA9PiB7XG4gICAgICAgIHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKFNFQVJDSF9FVkVOVCwgaGFuZGxlU2VhcmNoIGFzIHVua25vd24gYXMgRXZlbnRMaXN0ZW5lcilcbiAgICAgIH1cbiAgICB9LCBbaGFuZGxlR2V0VGVhbXMsIGhhbmRsZUdldFVzZXJQb3NpdGlvbkZpbHRlciwgaGFuZGxlR2V0VXNlcnMsIHNlYXJjaFRlcm1WYWx1ZV0pXG5cbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgaWYgKGRhdGE/LnRlYW1zICYmICFsb2FkaW5nICYmICFlcnJvcikge1xuICAgICAgICBzZXRUZWFtT3B0aW9ucyhkYXRhLnRlYW1zLmRhdGEubWFwKHRlYW0gPT4gKHsgaWQ6IHRlYW0uaWQsIGxhYmVsOiB0ZWFtLm5hbWUgfSkpKVxuICAgICAgfVxuICAgIH0sIFtkYXRhLCBsb2FkaW5nLCBlcnJvcl0pXG5cbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgaWYgKHBvc2l0aW9ucz8ubGVuZ3RoKSB7XG4gICAgICAgIHNldFBvc2l0aW9uT3B0aW9ucyhwb3NpdGlvbnMpXG4gICAgICAgIGRlZmF1bHRQb3NpdGlvbnNSZWYuY3VycmVudCA9IHBvc2l0aW9uc1xuICAgICAgfVxuICAgIH0sIFtwb3NpdGlvbnNdKVxuXG4gICAgcmV0dXJuIChcbiAgICAgIDxkaXZcbiAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICBkaXNwbGF5OiAnZmxleCcsXG4gICAgICAgICAgZ2FwOiAnMTBweCcsXG4gICAgICAgICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXG4gICAgICAgIH19XG4gICAgICA+XG4gICAgICAgIDxTZWFyY2ggLz5cbiAgICAgICAgPEZpbHRlckNoaXAgaWQ9XCJ0ZWFtRmlsdGVyXCIgbGFiZWw9e3QoJ2ZpbHRlcnMudGVhbScpfSBvcHRpb25zPXt0ZWFtT3B0aW9uc30gLz5cbiAgICAgICAgPEZpbHRlckNoaXAgaWQ9XCJwb3NpdGlvbkZpbHRlclwiIGxhYmVsPXt0KCdmaWx0ZXJzLnBvc2l0aW9uJyl9IG9wdGlvbnM9e3Bvc2l0aW9uT3B0aW9uc30gLz5cbiAgICAgIDwvZGl2PlxuICAgIClcbiAgfVxuKVxuIl0sIm1hcHBpbmdzIjoiOzs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVNBLElBQUksRUFBRUMsU0FBUyxFQUFFQyxRQUFRLEVBQUVDLE1BQU0sUUFBUSxPQUFPO0FBQ3pELFNBQVNDLGNBQWMsUUFBUSxlQUFlO0FBQzlDLFNBQVNDLGFBQWEsUUFBUSw0QkFBNEI7QUFDMUQsU0FBU0MsVUFBVSxRQUFRLHFDQUFxQztBQUNoRSxTQUFTQyxXQUFXLFFBQVEseUJBQXlCO0FBQ3JELFNBQVNDLFlBQVksUUFBUSw0QkFBNEI7QUFDekQsU0FBU0MsTUFBTSxRQUFRLGdDQUFnQztBQUFBLFNBQUFDLEdBQUEsSUFBQUMsSUFBQSxFQUFBQyxJQUFBLElBQUFDLEtBQUE7QUFNdkQsT0FBTyxJQUFNQyxnQkFBZ0IsZ0JBQUdkLElBQUksQ0FDbEMsVUFB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
|
|
208
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJtZW1vIiwidXNlRWZmZWN0IiwidXNlU3RhdGUiLCJ1c2VSZWYiLCJ1c2VUcmFuc2xhdGlvbiIsInVzZVVzZXJzUXVlcnkiLCJGaWx0ZXJDaGlwIiwidXNlR2V0VGVhbXMiLCJTRUFSQ0hfRVZFTlQiLCJTZWFyY2giLCJMYXlvdXRTZWFyY2hVc2VyIiwianN4IiwiX2pzeCIsImpzeHMiLCJfanN4cyIsIkZpbHRlcnNDb250YWluZXIiLCJfdXNlVHJhbnNsYXRpb24iLCJ0IiwiX3VzZVVzZXJzUXVlcnkiLCJoYW5kbGVHZXRVc2VycyIsInBvc2l0aW9ucyIsIl91c2VHZXRUZWFtcyIsImxvYWRpbmciLCJlcnJvciIsImRhdGEiLCJfdXNlU3RhdGUiLCJfdXNlU3RhdGUyIiwiX3NsaWNlZFRvQXJyYXkiLCJzZWFyY2hUZXJtVmFsdWUiLCJzZXRTZWFyY2hUZXJtVmFsdWUiLCJfdXNlU3RhdGUzIiwiX3VzZVN0YXRlNCIsInRlYW1PcHRpb25zIiwic2V0VGVhbU9wdGlvbnMiLCJfdXNlU3RhdGU1IiwiX3VzZVN0YXRlNiIsInBvc2l0aW9uT3B0aW9ucyIsInNldFBvc2l0aW9uT3B0aW9ucyIsImRlZmF1bHRQb3NpdGlvbnNSZWYiLCJfdXNlU3RhdGU3IiwiX3VzZVN0YXRlOCIsInNlbGVjdGVkVGVhbXMiLCJzZXRTZWxlY3RlZFRlYW1zIiwiX3VzZVN0YXRlOSIsIl91c2VTdGF0ZTAiLCJzZWxlY3RlZFBvc2l0aW9ucyIsInNldFNlbGVjdGVkUG9zaXRpb25zIiwiX3VzZVN0YXRlMSIsIl91c2VTdGF0ZTEwIiwidGVhbVNlYXJjaFRlcm0iLCJzZXRUZWFtU2VhcmNoVGVybSIsIl91c2VTdGF0ZTExIiwiX3VzZVN0YXRlMTIiLCJwb3NpdGlvblNlYXJjaFRlcm0iLCJzZXRQb3NpdGlvblNlYXJjaFRlcm0iLCJidWlsZEFuZFNlbmRVc2VyUmVxdWVzdCIsIl9yZWYiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJ1bmRlZmluZWQiLCJzZWFyY2hJbnB1dE92ZXJyaWRlIiwidGVhbXNPdmVycmlkZSIsInBvc2l0aW9uc092ZXJyaWRlIiwicG9zaXRpb25zRmlsdGVyIiwidGVhbXNGaWx0ZXIiLCJ0ZWFtIiwidmFsdWVzVG9GaWx0ZXIiLCJfb2JqZWN0U3ByZWFkIiwic2VhcmNoSW5wdXQiLCJwYWdlIiwiaGFuZGxlU2VhcmNoIiwiZXZlbnQiLCJfZXZlbnQkZGV0YWlsIiwiZGV0YWlsIiwic2VhcmNoVGVybSIsInR5cGUiLCJBcnJheSIsImlzQXJyYXkiLCJhcmVUZWFtc0VxdWFsIiwiZXZlcnkiLCJ2YWx1ZSIsImluZGV4IiwiYXJlUG9zaXRpb25zRXF1YWwiLCJ3aW5kb3ciLCJhZGRFdmVudExpc3RlbmVyIiwicmVtb3ZlRXZlbnRMaXN0ZW5lciIsIl9kYXRhJHRlYW1zVXNlcnMiLCJ0ZWFtc1VzZXJzIiwibWFwIiwiaWQiLCJsYWJlbCIsIm5hbWUiLCJjdXJyZW50IiwidGVhbU9wdGlvbnNUb1Nob3ciLCJ0cmltIiwidGVybSIsInRvTG93ZXJDYXNlIiwic2VsZWN0ZWRPcHRzIiwiZmlsdGVyIiwiaW5jbHVkZXMiLCJmaWx0ZXJlZE9wdHMiLCJmaWx0ZXJlZElkcyIsIlNldCIsIm8iLCJzZWxlY3RlZE5vdEluRmlsdGVyZWQiLCJoYXMiLCJjb25jYXQiLCJfdG9Db25zdW1hYmxlQXJyYXkiLCJwb3NpdGlvbk9wdGlvbnNUb1Nob3ciLCJwb3NXaXRoQ2F0ZWdvcnkiLCJwIiwiY2F0ZWdvcnlOYW1lIiwiY2hpbGRyZW4iLCJvcHRpb25zIiwiZW1wdHlNZXNzYWdlIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbnRhaW5lci9GaWx0ZXJzL0ZpbHRlcnNDb250YWluZXIudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9pbmRlbnQgKi9cbi8qIGVzbGludC1kaXNhYmxlIG5vLW5lc3RlZC10ZXJuYXJ5ICovXG4vKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktZnVuY3Rpb24gKi9cbi8qIGVzbGludC1kaXNhYmxlIHJlYWN0L3JlcXVpcmUtZGVmYXVsdC1wcm9wcyAqL1xuLyogZXNsaW50LWRpc2FibGUgbm8tdW5kZWYgKi9cbmltcG9ydCB7IG1lbW8sIHVzZUVmZmVjdCwgdXNlU3RhdGUsIHVzZVJlZiB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHsgdXNlVHJhbnNsYXRpb24gfSBmcm9tICdyZWFjdC1pMThuZXh0J1xuaW1wb3J0IHsgdXNlVXNlcnNRdWVyeSB9IGZyb20gJy4uLy4uL2NvbnRleHQvVXNlcnNDb250ZXh0J1xuaW1wb3J0IHsgRmlsdGVyQ2hpcCB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMvRmlsdGVycy9GaWx0ZXJDaGlwJ1xuaW1wb3J0IHsgdXNlR2V0VGVhbXMgfSBmcm9tICcuLi8uLi9ob29rcy91c2VHZXRUZWFtcydcbmltcG9ydCB7IFNFQVJDSF9FVkVOVCB9IGZyb20gJy4uLy4uL2hvb2tzL3VzZVNlYXJjaEV2ZW50J1xuaW1wb3J0IHsgU2VhcmNoIH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cy9TZWFyY2gvU2VhcmNoJ1xuaW1wb3J0IHsgTGF5b3V0U2VhcmNoVXNlciB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMvTGF5b3V0L0xheW91dCdcblxuZXhwb3J0IGNvbnN0IEZpbHRlcnNDb250YWluZXIgPSBtZW1vKCgpID0+IHtcbiAgY29uc3QgeyB0IH0gPSB1c2VUcmFuc2xhdGlvbigncGVvcGxlJylcbiAgY29uc3QgeyBoYW5kbGVHZXRVc2VycywgcG9zaXRpb25zIH0gPSB1c2VVc2Vyc1F1ZXJ5KClcbiAgY29uc3QgeyBsb2FkaW5nLCBlcnJvciwgZGF0YSB9ID0gdXNlR2V0VGVhbXMoKVxuXG4gIGNvbnN0IFtzZWFyY2hUZXJtVmFsdWUsIHNldFNlYXJjaFRlcm1WYWx1ZV0gPSB1c2VTdGF0ZSgnJylcbiAgY29uc3QgW3RlYW1PcHRpb25zLCBzZXRUZWFtT3B0aW9uc10gPSB1c2VTdGF0ZTx7IGlkOiBudW1iZXI7IGxhYmVsOiBzdHJpbmcgfVtdPihbXSlcbiAgY29uc3QgW3Bvc2l0aW9uT3B0aW9ucywgc2V0UG9zaXRpb25PcHRpb25zXSA9IHVzZVN0YXRlPHsgaWQ6IG51bWJlcjsgbGFiZWw6IHN0cmluZyB9W10+KHBvc2l0aW9ucyB8fCBbXSlcbiAgY29uc3QgZGVmYXVsdFBvc2l0aW9uc1JlZiA9IHVzZVJlZjx7IGlkOiBudW1iZXI7IGxhYmVsOiBzdHJpbmc7IGNhdGVnb3J5TmFtZT86IHN0cmluZyB9W10+KHBvc2l0aW9ucyB8fCBbXSlcblxuICBjb25zdCBbc2VsZWN0ZWRUZWFtcywgc2V0U2VsZWN0ZWRUZWFtc10gPSB1c2VTdGF0ZTxudW1iZXJbXT4oW10pXG4gIGNvbnN0IFtzZWxlY3RlZFBvc2l0aW9ucywgc2V0U2VsZWN0ZWRQb3NpdGlvbnNdID0gdXNlU3RhdGU8bnVtYmVyW10+KFtdKVxuICBjb25zdCBbdGVhbVNlYXJjaFRlcm0sIHNldFRlYW1TZWFyY2hUZXJtXSA9IHVzZVN0YXRlKCcnKVxuICBjb25zdCBbcG9zaXRpb25TZWFyY2hUZXJtLCBzZXRQb3NpdGlvblNlYXJjaFRlcm1dID0gdXNlU3RhdGUoJycpXG5cbiAgY29uc3QgYnVpbGRBbmRTZW5kVXNlclJlcXVlc3QgPSAoe1xuICAgIHNlYXJjaElucHV0T3ZlcnJpZGUsXG4gICAgdGVhbXNPdmVycmlkZSxcbiAgICBwb3NpdGlvbnNPdmVycmlkZSxcbiAgfToge1xuICAgIHNlYXJjaElucHV0T3ZlcnJpZGU/OiBzdHJpbmdcbiAgICB0ZWFtc092ZXJyaWRlPzogbnVtYmVyW11cbiAgICBwb3NpdGlvbnNPdmVycmlkZT86IG51bWJlcltdXG4gIH0gPSB7fSkgPT4ge1xuICAgIGNvbnN0IHBvc2l0aW9uc0ZpbHRlciA9XG4gICAgICBwb3NpdGlvbnNPdmVycmlkZSAhPT0gdW5kZWZpbmVkXG4gICAgICAgID8gcG9zaXRpb25zT3ZlcnJpZGUubGVuZ3RoXG4gICAgICAgICAgPyB7IHBvc2l0aW9uczogcG9zaXRpb25zT3ZlcnJpZGUgfVxuICAgICAgICAgIDoge31cbiAgICAgICAgOiBzZWxlY3RlZFBvc2l0aW9ucy5sZW5ndGhcbiAgICAgICAgPyB7IHBvc2l0aW9uczogc2VsZWN0ZWRQb3NpdGlvbnMgfVxuICAgICAgICA6IHt9XG4gICAgY29uc3QgdGVhbXNGaWx0ZXIgPVxuICAgICAgdGVhbXNPdmVycmlkZSAhPT0gdW5kZWZpbmVkXG4gICAgICAgID8gdGVhbXNPdmVycmlkZS5sZW5ndGhcbiAgICAgICAgICA/IHsgdGVhbTogdGVhbXNPdmVycmlkZSB9XG4gICAgICAgICAgOiB7fVxuICAgICAgICA6IHNlbGVjdGVkVGVhbXMubGVuZ3RoXG4gICAgICAgID8geyB0ZWFtOiBzZWxlY3RlZFRlYW1zIH1cbiAgICAgICAgOiB7fVxuICAgIGNvbnN0IHZhbHVlc1RvRmlsdGVyID0geyAuLi5wb3NpdGlvbnNGaWx0ZXIsIC4uLnRlYW1zRmlsdGVyIH1cblxuICAgIGhhbmRsZUdldFVzZXJzKHtcbiAgICAgIHNlYXJjaElucHV0OiBzZWFyY2hJbnB1dE92ZXJyaWRlICE9PSB1bmRlZmluZWQgPyBzZWFyY2hJbnB1dE92ZXJyaWRlIDogc2VhcmNoVGVybVZhbHVlLFxuICAgICAgcGFnZTogMSxcbiAgICAgIHZhbHVlc1RvRmlsdGVyOiB2YWx1ZXNUb0ZpbHRlciBhcyBhbnksXG4gICAgfSlcbiAgfVxuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgY29uc3QgaGFuZGxlU2VhcmNoID0gKGV2ZW50OiBDdXN0b21FdmVudCkgPT4ge1xuICAgICAgY29uc3QgeyBzZWFyY2hUZXJtLCB0eXBlLCB2YWx1ZXNUb0ZpbHRlciB9ID0gZXZlbnQuZGV0YWlsXG4gICAgICBpZiAodHlwZSA9PT0gJ2ZpbHRlcjEnKSB7XG4gICAgICAgIHNldFNlYXJjaFRlcm1WYWx1ZShzZWFyY2hUZXJtKVxuICAgICAgICBidWlsZEFuZFNlbmRVc2VyUmVxdWVzdCh7IHNlYXJjaElucHV0T3ZlcnJpZGU6IHNlYXJjaFRlcm0gfSlcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG5cbiAgICAgIGlmICh0eXBlID09PSAndGVhbUZpbHRlcicpIHtcbiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkodmFsdWVzVG9GaWx0ZXIpKSB7XG4gICAgICAgICAgaWYgKHZhbHVlc1RvRmlsdGVyLmxlbmd0aCkge1xuICAgICAgICAgICAgY29uc3QgYXJlVGVhbXNFcXVhbCA9IHZhbHVlc1RvRmlsdGVyLmV2ZXJ5KCh2YWx1ZSwgaW5kZXg6IG51bWJlcikgPT4gdmFsdWUgPT09IHNlbGVjdGVkVGVhbXNbaW5kZXhdKVxuICAgICAgICAgICAgaWYgKGFyZVRlYW1zRXF1YWwpIHJldHVyblxuICAgICAgICAgICAgc2V0U2VsZWN0ZWRUZWFtcyh2YWx1ZXNUb0ZpbHRlcilcbiAgICAgICAgICAgIGJ1aWxkQW5kU2VuZFVzZXJSZXF1ZXN0KHtcbiAgICAgICAgICAgICAgdGVhbXNPdmVycmlkZTogdmFsdWVzVG9GaWx0ZXIsXG4gICAgICAgICAgICB9KVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBzZXRTZWxlY3RlZFRlYW1zKFtdKVxuICAgICAgICAgICAgYnVpbGRBbmRTZW5kVXNlclJlcXVlc3QoeyB0ZWFtc092ZXJyaWRlOiBbXSB9KVxuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBzZXRUZWFtU2VhcmNoVGVybShzZWFyY2hUZXJtID8/ICcnKVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGlmICh0eXBlID09PSAncG9zaXRpb25GaWx0ZXInKSB7XG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KHZhbHVlc1RvRmlsdGVyKSkge1xuICAgICAgICAgIGlmICghdmFsdWVzVG9GaWx0ZXIubGVuZ3RoKSB7XG4gICAgICAgICAgICBzZXRTZWxlY3RlZFBvc2l0aW9ucyhbXSlcbiAgICAgICAgICAgIGJ1aWxkQW5kU2VuZFVzZXJSZXF1ZXN0KHsgcG9zaXRpb25zT3ZlcnJpZGU6IFtdIH0pXG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGNvbnN0IGFyZVBvc2l0aW9uc0VxdWFsID0gdmFsdWVzVG9GaWx0ZXIuZXZlcnkoKHZhbHVlLCBpbmRleDogbnVtYmVyKSA9PiB2YWx1ZSA9PT0gc2VsZWN0ZWRQb3NpdGlvbnNbaW5kZXhdKVxuICAgICAgICAgICAgaWYgKGFyZVBvc2l0aW9uc0VxdWFsKSByZXR1cm5cbiAgICAgICAgICAgIHNldFNlbGVjdGVkUG9zaXRpb25zKHZhbHVlc1RvRmlsdGVyKVxuICAgICAgICAgICAgYnVpbGRBbmRTZW5kVXNlclJlcXVlc3Qoe1xuICAgICAgICAgICAgICBwb3NpdGlvbnNPdmVycmlkZTogdmFsdWVzVG9GaWx0ZXIsXG4gICAgICAgICAgICB9KVxuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBzZXRQb3NpdGlvblNlYXJjaFRlcm0oc2VhcmNoVGVybSA/PyAnJylcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKFNFQVJDSF9FVkVOVCwgaGFuZGxlU2VhcmNoIGFzIHVua25vd24gYXMgRXZlbnRMaXN0ZW5lcilcbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoU0VBUkNIX0VWRU5ULCBoYW5kbGVTZWFyY2ggYXMgdW5rbm93biBhcyBFdmVudExpc3RlbmVyKVxuICAgIH1cbiAgfSwgW2hhbmRsZUdldFVzZXJzLCBzZWFyY2hUZXJtVmFsdWUsIHNlbGVjdGVkVGVhbXMsIHNlbGVjdGVkUG9zaXRpb25zXSlcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChkYXRhPy50ZWFtc1VzZXJzPy5kYXRhICYmICFsb2FkaW5nICYmICFlcnJvcikge1xuICAgICAgc2V0VGVhbU9wdGlvbnMoZGF0YS50ZWFtc1VzZXJzLmRhdGEubWFwKHRlYW0gPT4gKHsgaWQ6IHRlYW0uaWQsIGxhYmVsOiB0ZWFtLm5hbWUgfSkpKVxuICAgIH1cbiAgfSwgW2RhdGEsIGxvYWRpbmcsIGVycm9yXSlcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChwb3NpdGlvbnMpIHtcbiAgICAgIHNldFBvc2l0aW9uT3B0aW9ucyhwb3NpdGlvbnMpXG4gICAgICBpZiAocG9zaXRpb25zLmxlbmd0aCkge1xuICAgICAgICBkZWZhdWx0UG9zaXRpb25zUmVmLmN1cnJlbnQgPSBwb3NpdGlvbnNcbiAgICAgIH1cbiAgICB9XG4gIH0sIFtwb3NpdGlvbnNdKVxuXG4gIGNvbnN0IHRlYW1PcHRpb25zVG9TaG93ID0gIXRlYW1TZWFyY2hUZXJtLnRyaW0oKVxuICAgID8gdGVhbU9wdGlvbnNcbiAgICA6ICgoKSA9PiB7XG4gICAgICAgIGNvbnN0IHRlcm0gPSB0ZWFtU2VhcmNoVGVybS50cmltKCkudG9Mb3dlckNhc2UoKVxuICAgICAgICBjb25zdCBzZWxlY3RlZE9wdHMgPSB0ZWFtT3B0aW9ucy5maWx0ZXIodGVhbSA9PiBzZWxlY3RlZFRlYW1zLmluY2x1ZGVzKHRlYW0uaWQpKVxuICAgICAgICBjb25zdCBmaWx0ZXJlZE9wdHMgPSB0ZWFtT3B0aW9ucy5maWx0ZXIodGVhbSA9PiB0ZWFtLmxhYmVsLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXModGVybSkpXG4gICAgICAgIGNvbnN0IGZpbHRlcmVkSWRzID0gbmV3IFNldChmaWx0ZXJlZE9wdHMubWFwKG8gPT4gby5pZCkpXG4gICAgICAgIGNvbnN0IHNlbGVjdGVkTm90SW5GaWx0ZXJlZCA9IHNlbGVjdGVkT3B0cy5maWx0ZXIobyA9PiAhZmlsdGVyZWRJZHMuaGFzKG8uaWQpKVxuICAgICAgICByZXR1cm4gWy4uLnNlbGVjdGVkTm90SW5GaWx0ZXJlZCwgLi4uZmlsdGVyZWRPcHRzXVxuICAgICAgfSkoKVxuXG4gIGNvbnN0IHBvc2l0aW9uT3B0aW9uc1RvU2hvdyA9ICFwb3NpdGlvblNlYXJjaFRlcm0udHJpbSgpXG4gICAgPyBwb3NpdGlvbk9wdGlvbnNcbiAgICA6ICgoKSA9PiB7XG4gICAgICAgIGNvbnN0IHRlcm0gPSBwb3NpdGlvblNlYXJjaFRlcm0udHJpbSgpLnRvTG93ZXJDYXNlKClcbiAgICAgICAgY29uc3QgcG9zV2l0aENhdGVnb3J5ID0gcG9zaXRpb25PcHRpb25zIGFzIHsgaWQ6IG51bWJlcjsgbGFiZWw6IHN0cmluZzsgY2F0ZWdvcnlOYW1lPzogc3RyaW5nIH1bXVxuICAgICAgICBjb25zdCBzZWxlY3RlZE9wdHMgPSBwb3NXaXRoQ2F0ZWdvcnkuZmlsdGVyKHAgPT4gc2VsZWN0ZWRQb3NpdGlvbnMuaW5jbHVkZXMocC5pZCkpXG4gICAgICAgIGNvbnN0IGZpbHRlcmVkT3B0cyA9IHBvc1dpdGhDYXRlZ29yeS5maWx0ZXIoXG4gICAgICAgICAgcCA9PiBwLmxhYmVsLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXModGVybSkgfHwgKHAuY2F0ZWdvcnlOYW1lICYmIHAuY2F0ZWdvcnlOYW1lLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXModGVybSkpXG4gICAgICAgIClcbiAgICAgICAgY29uc3QgZmlsdGVyZWRJZHMgPSBuZXcgU2V0KGZpbHRlcmVkT3B0cy5tYXAobyA9PiBvLmlkKSlcbiAgICAgICAgY29uc3Qgc2VsZWN0ZWROb3RJbkZpbHRlcmVkID0gc2VsZWN0ZWRPcHRzLmZpbHRlcihvID0+ICFmaWx0ZXJlZElkcy5oYXMoby5pZCkpXG4gICAgICAgIHJldHVybiBbLi4uc2VsZWN0ZWROb3RJbkZpbHRlcmVkLCAuLi5maWx0ZXJlZE9wdHNdXG4gICAgICB9KSgpXG5cbiAgcmV0dXJuIChcbiAgICA8TGF5b3V0U2VhcmNoVXNlcj5cbiAgICAgIDxTZWFyY2ggLz5cbiAgICAgIDxGaWx0ZXJDaGlwXG4gICAgICAgIGlkPVwidGVhbUZpbHRlclwiXG4gICAgICAgIGxhYmVsPXt0KCdmaWx0ZXJzLnRlYW0nKX1cbiAgICAgICAgb3B0aW9ucz17dGVhbU9wdGlvbnNUb1Nob3d9XG4gICAgICAgIGVtcHR5TWVzc2FnZT17dCgndXNlcnMuZW1wdHlGaWx0ZXJNZXNzYWdlJyl9XG4gICAgICAvPlxuICAgICAgPEZpbHRlckNoaXBcbiAgICAgICAgaWQ9XCJwb3NpdGlvbkZpbHRlclwiXG4gICAgICAgIGxhYmVsPXt0KCdmaWx0ZXJzLnBvc2l0aW9uJyl9XG4gICAgICAgIG9wdGlvbnM9e3Bvc2l0aW9uT3B0aW9uc1RvU2hvd31cbiAgICAgICAgZW1wdHlNZXNzYWdlPXt0KCd1c2Vycy5lbXB0eUZpbHRlck1lc3NhZ2UnKX1cbiAgICAgIC8+XG4gICAgPC9MYXlvdXRTZWFyY2hVc2VyPlxuICApXG59KVxuIl0sIm1hcHBpbmdzIjoiOzs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTQSxJQUFJLEVBQUVDLFNBQVMsRUFBRUMsUUFBUSxFQUFFQyxNQUFNLFFBQVEsT0FBTztBQUN6RCxTQUFTQyxjQUFjLFFBQVEsZUFBZTtBQUM5QyxTQUFTQyxhQUFhLFFBQVEsNEJBQTRCO0FBQzFELFNBQVNDLFVBQVUsUUFBUSxxQ0FBcUM7QUFDaEUsU0FBU0MsV0FBVyxRQUFRLHlCQUF5QjtBQUNyRCxTQUFTQyxZQUFZLFFBQVEsNEJBQTRCO0FBQ3pELFNBQVNDLE1BQU0sUUFBUSxnQ0FBZ0M7QUFDdkQsU0FBU0MsZ0JBQWdCLFFBQVEsZ0NBQWdDO0FBQUEsU0FBQUMsR0FBQSxJQUFBQyxJQUFBLEVBQUFDLElBQUEsSUFBQUMsS0FBQTtBQUVqRSxPQUFPLElBQU1DLGdCQUFnQixnQkFBR2YsSUFBSSxDQUFDLFlBQU07RUFDekMsSUFBQWdCLGVBQUEsR0FBY1osY0FBYyxDQUFDLFFBQVEsQ0FBQztJQUE5QmEsQ0FBQyxHQUFBRCxlQUFBLENBQURDLENBQUM7RUFDVCxJQUFBQyxjQUFBLEdBQXNDYixhQUFhLENBQUMsQ0FBQztJQUE3Q2MsY0FBYyxHQUFBRCxjQUFBLENBQWRDLGNBQWM7SUFBRUMsU0FBUyxHQUFBRixjQUFBLENBQVRFLFNBQVM7RUFDakMsSUFBQUMsWUFBQSxHQUFpQ2QsV0FBVyxDQUFDLENBQUM7SUFBdENlLE9BQU8sR0FBQUQsWUFBQSxDQUFQQyxPQUFPO0lBQUVDLEtBQUssR0FBQUYsWUFBQSxDQUFMRSxLQUFLO0lBQUVDLElBQUksR0FBQUgsWUFBQSxDQUFKRyxJQUFJO0VBRTVCLElBQUFDLFNBQUEsR0FBOEN2QixRQUFRLENBQUMsRUFBRSxDQUFDO0lBQUF3QixVQUFBLEdBQUFDLGNBQUEsQ0FBQUYsU0FBQTtJQUFuREcsZUFBZSxHQUFBRixVQUFBO0lBQUVHLGtCQUFrQixHQUFBSCxVQUFBO0VBQzFDLElBQUFJLFVBQUEsR0FBc0M1QixRQUFRLENBQWtDLEVBQUUsQ0FBQztJQUFBNkIsVUFBQSxHQUFBSixjQUFBLENBQUFHLFVBQUE7SUFBNUVFLFdBQVcsR0FBQUQsVUFBQTtJQUFFRSxjQUFjLEdBQUFGLFVBQUE7RUFDbEMsSUFBQUcsVUFBQSxHQUE4Q2hDLFFBQVEsQ0FBa0NrQixTQUFTLElBQUksRUFBRSxDQUFDO0lBQUFlLFVBQUEsR0FBQVIsY0FBQSxDQUFBTyxVQUFBO0lBQWpHRSxlQUFlLEdBQUFELFVBQUE7SUFBRUUsa0JBQWtCLEdBQUFGLFVBQUE7RUFDMUMsSUFBTUcsbUJBQW1CLEdBQUduQyxNQUFNLENBQXlEaUIsU0FBUyxJQUFJLEVBQUUsQ0FBQztFQUUzRyxJQUFBbUIsVUFBQSxHQUEwQ3JDLFFBQVEsQ0FBVyxFQUFFLENBQUM7SUFBQXNDLFVBQUEsR0FBQWIsY0FBQSxDQUFBWSxVQUFBO0lBQXpERSxhQUFhLEdBQUFELFVBQUE7SUFBRUUsZ0JBQWdCLEdBQUFGLFVBQUE7RUFDdEMsSUFBQUcsVUFBQSxHQUFrRHpDLFFBQVEsQ0FBVyxFQUFFLENBQUM7SUFBQTBDLFVBQUEsR0FBQWpCLGNBQUEsQ0FBQWdCLFVBQUE7SUFBakVFLGlCQUFpQixHQUFBRCxVQUFBO0lBQUVFLG9CQUFvQixHQUFBRixVQUFBO0VBQzlDLElBQUFHLFVBQUEsR0FBNEM3QyxRQUFRLENBQUMsRUFBRSxDQUFDO0lBQUE4QyxXQUFBLEdBQUFyQixjQUFBLENBQUFvQixVQUFBO0lBQWpERSxjQUFjLEdBQUFELFdBQUE7SUFBRUUsaUJBQWlCLEdBQUFGLFdBQUE7RUFDeEMsSUFBQUcsV0FBQSxHQUFvRGpELFFBQVEsQ0FBQyxFQUFFLENBQUM7SUFBQWtELFdBQUEsR0FBQXpCLGNBQUEsQ0FBQXdCLFdBQUE7SUFBekRFLGtCQUFrQixHQUFBRCxXQUFBO0lBQUVFLHFCQUFxQixHQUFBRixXQUFBO0VBRWhELElBQU1HLHVCQUF1QixHQUFHLFNBQTFCQSx1QkFBdUJBLENBQUEsRUFRbEI7SUFBQSxJQUFBQyxJQUFBLEdBQUFDLFNBQUEsQ0FBQUMsTUFBQSxRQUFBRCxTQUFBLFFBQUFFLFNBQUEsR0FBQUYsU0FBQSxNQUFQLENBQUMsQ0FBQztNQVBKRyxtQkFBbUIsR0FBQUosSUFBQSxDQUFuQkksbUJBQW1CO01BQ25CQyxhQUFhLEdBQUFMLElBQUEsQ0FBYkssYUFBYTtNQUNiQyxpQkFBaUIsR0FBQU4sSUFBQSxDQUFqQk0saUJBQWlCO0lBTWpCLElBQU1DLGVBQWUsR0FDbkJELGlCQUFpQixLQUFLSCxTQUFTLEdBQzNCRyxpQkFBaUIsQ0FBQ0osTUFBTSxHQUN0QjtNQUFFdEMsU0FBUyxFQUFFMEM7SUFBa0IsQ0FBQyxHQUNoQyxDQUFDLENBQUMsR0FDSmpCLGlCQUFpQixDQUFDYSxNQUFNLEdBQ3hCO01BQUV0QyxTQUFTLEVBQUV5QjtJQUFrQixDQUFDLEdBQ2hDLENBQUMsQ0FBQztJQUNSLElBQU1tQixXQUFXLEdBQ2ZILGFBQWEsS0FBS0YsU0FBUyxHQUN2QkUsYUFBYSxDQUFDSCxNQUFNLEdBQ2xCO01BQUVPLElBQUksRUFBRUo7SUFBYyxDQUFDLEdBQ3ZCLENBQUMsQ0FBQyxHQUNKcEIsYUFBYSxDQUFDaUIsTUFBTSxHQUNwQjtNQUFFTyxJQUFJLEVBQUV4QjtJQUFjLENBQUMsR0FDdkIsQ0FBQyxDQUFDO0lBQ1IsSUFBTXlCLGNBQWMsR0FBQUMsYUFBQSxDQUFBQSxhQUFBLEtBQVFKLGVBQWUsR0FBS0MsV0FBVyxDQUFFO0lBRTdEN0MsY0FBYyxDQUFDO01BQ2JpRCxXQUFXLEVBQUVSLG1CQUFtQixLQUFLRCxTQUFTLEdBQUdDLG1CQUFtQixHQUFHaEMsZUFBZTtNQUN0RnlDLElBQUksRUFBRSxDQUFDO01BQ1BILGNBQWMsRUFBRUE7SUFDbEIsQ0FBQyxDQUFDO0VBQ0osQ0FBQztFQUVEakUsU0FBUyxDQUFDLFlBQU07SUFDZCxJQUFNcUUsWUFBWSxHQUFHLFNBQWZBLFlBQVlBLENBQUlDLEtBQWtCLEVBQUs7TUFDM0MsSUFBQUMsYUFBQSxHQUE2Q0QsS0FBSyxDQUFDRSxNQUFNO1FBQWpEQyxVQUFVLEdBQUFGLGFBQUEsQ0FBVkUsVUFBVTtRQUFFQyxJQUFJLEdBQUFILGFBQUEsQ0FBSkcsSUFBSTtRQUFFVCxjQUFjLEdBQUFNLGFBQUEsQ0FBZE4sY0FBYztNQUN4QyxJQUFJUyxJQUFJLEtBQUssU0FBUyxFQUFFO1FBQ3RCOUMsa0JBQWtCLENBQUM2QyxVQUFVLENBQUM7UUFDOUJuQix1QkFBdUIsQ0FBQztVQUFFSyxtQkFBbUIsRUFBRWM7UUFBVyxDQUFDLENBQUM7UUFDNUQ7TUFDRjtNQUVBLElBQUlDLElBQUksS0FBSyxZQUFZLEVBQUU7UUFDekIsSUFBSUMsS0FBSyxDQUFDQyxPQUFPLENBQUNYLGNBQWMsQ0FBQyxFQUFFO1VBQ2pDLElBQUlBLGNBQWMsQ0FBQ1IsTUFBTSxFQUFFO1lBQ3pCLElBQU1vQixhQUFhLEdBQUdaLGNBQWMsQ0FBQ2EsS0FBSyxDQUFDLFVBQUNDLEtBQUssRUFBRUMsS0FBYTtjQUFBLE9BQUtELEtBQUssS0FBS3ZDLGFBQWEsQ0FBQ3dDLEtBQUssQ0FBQztZQUFBLEVBQUM7WUFDcEcsSUFBSUgsYUFBYSxFQUFFO1lBQ25CcEMsZ0JBQWdCLENBQUN3QixjQUFjLENBQUM7WUFDaENYLHVCQUF1QixDQUFDO2NBQ3RCTSxhQUFhLEVBQUVLO1lBQ2pCLENBQUMsQ0FBQztVQUNKLENBQUMsTUFBTTtZQUNMeEIsZ0JBQWdCLENBQUMsRUFBRSxDQUFDO1lBQ3BCYSx1QkFBdUIsQ0FBQztjQUFFTSxhQUFhLEVBQUU7WUFBRyxDQUFDLENBQUM7VUFDaEQ7UUFDRixDQUFDLE1BQU07VUFDTFgsaUJBQWlCLENBQUN3QixVQUFVLGFBQVZBLFVBQVUsY0FBVkEsVUFBVSxHQUFJLEVBQUUsQ0FBQztRQUNyQztNQUNGO01BRUEsSUFBSUMsSUFBSSxLQUFLLGdCQUFnQixFQUFFO1FBQzdCLElBQUlDLEtBQUssQ0FBQ0MsT0FBTyxDQUFDWCxjQUFjLENBQUMsRUFBRTtVQUNqQyxJQUFJLENBQUNBLGNBQWMsQ0FBQ1IsTUFBTSxFQUFFO1lBQzFCWixvQkFBb0IsQ0FBQyxFQUFFLENBQUM7WUFDeEJTLHVCQUF1QixDQUFDO2NBQUVPLGlCQUFpQixFQUFFO1lBQUcsQ0FBQyxDQUFDO1VBQ3BELENBQUMsTUFBTTtZQUNMLElBQU1vQixpQkFBaUIsR0FBR2hCLGNBQWMsQ0FBQ2EsS0FBSyxDQUFDLFVBQUNDLEtBQUssRUFBRUMsS0FBYTtjQUFBLE9BQUtELEtBQUssS0FBS25DLGlCQUFpQixDQUFDb0MsS0FBSyxDQUFDO1lBQUEsRUFBQztZQUM1RyxJQUFJQyxpQkFBaUIsRUFBRTtZQUN2QnBDLG9CQUFvQixDQUFDb0IsY0FBYyxDQUFDO1lBQ3BDWCx1QkFBdUIsQ0FBQztjQUN0Qk8saUJBQWlCLEVBQUVJO1lBQ3JCLENBQUMsQ0FBQztVQUNKO1FBQ0YsQ0FBQyxNQUFNO1VBQ0xaLHFCQUFxQixDQUFDb0IsVUFBVSxhQUFWQSxVQUFVLGNBQVZBLFVBQVUsR0FBSSxFQUFFLENBQUM7UUFDekM7TUFDRjtJQUNGLENBQUM7SUFFRFMsTUFBTSxDQUFDQyxnQkFBZ0IsQ0FBQzVFLFlBQVksRUFBRThELFlBQXdDLENBQUM7SUFDL0UsT0FBTyxZQUFNO01BQ1hhLE1BQU0sQ0FBQ0UsbUJBQW1CLENBQUM3RSxZQUFZLEVBQUU4RCxZQUF3QyxDQUFDO0lBQ3BGLENBQUM7RUFDSCxDQUFDLEVBQUUsQ0FBQ25ELGNBQWMsRUFBRVMsZUFBZSxFQUFFYSxhQUFhLEVBQUVJLGlCQUFpQixDQUFDLENBQUM7RUFFdkU1QyxTQUFTLENBQUMsWUFBTTtJQUFBLElBQUFxRixnQkFBQTtJQUNkLElBQUk5RCxJQUFJLGFBQUpBLElBQUksZ0JBQUE4RCxnQkFBQSxHQUFKOUQsSUFBSSxDQUFFK0QsVUFBVSxjQUFBRCxnQkFBQSxlQUFoQkEsZ0JBQUEsQ0FBa0I5RCxJQUFJLElBQUksQ0FBQ0YsT0FBTyxJQUFJLENBQUNDLEtBQUssRUFBRTtNQUNoRFUsY0FBYyxDQUFDVCxJQUFJLENBQUMrRCxVQUFVLENBQUMvRCxJQUFJLENBQUNnRSxHQUFHLENBQUMsVUFBQXZCLElBQUk7UUFBQSxPQUFLO1VBQUV3QixFQUFFLEVBQUV4QixJQUFJLENBQUN3QixFQUFFO1VBQUVDLEtBQUssRUFBRXpCLElBQUksQ0FBQzBCO1FBQUssQ0FBQztNQUFBLENBQUMsQ0FBQyxDQUFDO0lBQ3ZGO0VBQ0YsQ0FBQyxFQUFFLENBQUNuRSxJQUFJLEVBQUVGLE9BQU8sRUFBRUMsS0FBSyxDQUFDLENBQUM7RUFFMUJ0QixTQUFTLENBQUMsWUFBTTtJQUNkLElBQUltQixTQUFTLEVBQUU7TUFDYmlCLGtCQUFrQixDQUFDakIsU0FBUyxDQUFDO01BQzdCLElBQUlBLFNBQVMsQ0FBQ3NDLE1BQU0sRUFBRTtRQUNwQnBCLG1CQUFtQixDQUFDc0QsT0FBTyxHQUFHeEUsU0FBUztNQUN6QztJQUNGO0VBQ0YsQ0FBQyxFQUFFLENBQUNBLFNBQVMsQ0FBQyxDQUFDO0VBRWYsSUFBTXlFLGlCQUFpQixHQUFHLENBQUM1QyxjQUFjLENBQUM2QyxJQUFJLENBQUMsQ0FBQyxHQUM1QzlELFdBQVcsR0FDVixZQUFNO0lBQ0wsSUFBTStELElBQUksR0FBRzlDLGNBQWMsQ0FBQzZDLElBQUksQ0FBQyxDQUFDLENBQUNFLFdBQVcsQ0FBQyxDQUFDO0lBQ2hELElBQU1DLFlBQVksR0FBR2pFLFdBQVcsQ0FBQ2tFLE1BQU0sQ0FBQyxVQUFBakMsSUFBSTtNQUFBLE9BQUl4QixhQUFhLENBQUMwRCxRQUFRLENBQUNsQyxJQUFJLENBQUN3QixFQUFFLENBQUM7SUFBQSxFQUFDO0lBQ2hGLElBQU1XLFlBQVksR0FBR3BFLFdBQVcsQ0FBQ2tFLE1BQU0sQ0FBQyxVQUFBakMsSUFBSTtNQUFBLE9BQUlBLElBQUksQ0FBQ3lCLEtBQUssQ0FBQ00sV0FBVyxDQUFDLENBQUMsQ0FBQ0csUUFBUSxDQUFDSixJQUFJLENBQUM7SUFBQSxFQUFDO0lBQ3hGLElBQU1NLFdBQVcsR0FBRyxJQUFJQyxHQUFHLENBQUNGLFlBQVksQ0FBQ1osR0FBRyxDQUFDLFVBQUFlLENBQUM7TUFBQSxPQUFJQSxDQUFDLENBQUNkLEVBQUU7SUFBQSxFQUFDLENBQUM7SUFDeEQsSUFBTWUscUJBQXFCLEdBQUdQLFlBQVksQ0FBQ0MsTUFBTSxDQUFDLFVBQUFLLENBQUM7TUFBQSxPQUFJLENBQUNGLFdBQVcsQ0FBQ0ksR0FBRyxDQUFDRixDQUFDLENBQUNkLEVBQUUsQ0FBQztJQUFBLEVBQUM7SUFDOUUsVUFBQWlCLE1BQUEsQ0FBQUMsa0JBQUEsQ0FBV0gscUJBQXFCLEdBQUFHLGtCQUFBLENBQUtQLFlBQVk7RUFDbkQsQ0FBQyxDQUFFLENBQUM7RUFFUixJQUFNUSxxQkFBcUIsR0FBRyxDQUFDdkQsa0JBQWtCLENBQUN5QyxJQUFJLENBQUMsQ0FBQyxHQUNwRDFELGVBQWUsR0FDZCxZQUFNO0lBQ0wsSUFBTTJELElBQUksR0FBRzFDLGtCQUFrQixDQUFDeUMsSUFBSSxDQUFDLENBQUMsQ0FBQ0UsV0FBVyxDQUFDLENBQUM7SUFDcEQsSUFBTWEsZUFBZSxHQUFHekUsZUFBeUU7SUFDakcsSUFBTTZELFlBQVksR0FBR1ksZUFBZSxDQUFDWCxNQUFNLENBQUMsVUFBQVksQ0FBQztNQUFBLE9BQUlqRSxpQkFBaUIsQ0FBQ3NELFFBQVEsQ0FBQ1csQ0FBQyxDQUFDckIsRUFBRSxDQUFDO0lBQUEsRUFBQztJQUNsRixJQUFNVyxZQUFZLEdBQUdTLGVBQWUsQ0FBQ1gsTUFBTSxDQUN6QyxVQUFBWSxDQUFDO01BQUEsT0FBSUEsQ0FBQyxDQUFDcEIsS0FBSyxDQUFDTSxXQUFXLENBQUMsQ0FBQyxDQUFDRyxRQUFRLENBQUNKLElBQUksQ0FBQyxJQUFLZSxDQUFDLENBQUNDLFlBQVksSUFBSUQsQ0FBQyxDQUFDQyxZQUFZLENBQUNmLFdBQVcsQ0FBQyxDQUFDLENBQUNHLFFBQVEsQ0FBQ0osSUFBSSxDQUFFO0lBQUEsQ0FDOUcsQ0FBQztJQUNELElBQU1NLFdBQVcsR0FBRyxJQUFJQyxHQUFHLENBQUNGLFlBQVksQ0FBQ1osR0FBRyxDQUFDLFVBQUFlLENBQUM7TUFBQSxPQUFJQSxDQUFDLENBQUNkLEVBQUU7SUFBQSxFQUFDLENBQUM7SUFDeEQsSUFBTWUscUJBQXFCLEdBQUdQLFlBQVksQ0FBQ0MsTUFBTSxDQUFDLFVBQUFLLENBQUM7TUFBQSxPQUFJLENBQUNGLFdBQVcsQ0FBQ0ksR0FBRyxDQUFDRixDQUFDLENBQUNkLEVBQUUsQ0FBQztJQUFBLEVBQUM7SUFDOUUsVUFBQWlCLE1BQUEsQ0FBQUMsa0JBQUEsQ0FBV0gscUJBQXFCLEdBQUFHLGtCQUFBLENBQUtQLFlBQVk7RUFDbkQsQ0FBQyxDQUFFLENBQUM7RUFFUixvQkFDRXRGLEtBQUEsQ0FBQ0osZ0JBQWdCO0lBQUFzRyxRQUFBLGdCQUNmcEcsSUFBQSxDQUFDSCxNQUFNLElBQUUsQ0FBQyxlQUNWRyxJQUFBLENBQUNOLFVBQVU7TUFDVG1GLEVBQUUsRUFBQyxZQUFZO01BQ2ZDLEtBQUssRUFBRXpFLENBQUMsQ0FBQyxjQUFjLENBQUU7TUFDekJnRyxPQUFPLEVBQUVwQixpQkFBa0I7TUFDM0JxQixZQUFZLEVBQUVqRyxDQUFDLENBQUMsMEJBQTBCO0lBQUUsQ0FDN0MsQ0FBQyxlQUNGTCxJQUFBLENBQUNOLFVBQVU7TUFDVG1GLEVBQUUsRUFBQyxnQkFBZ0I7TUFDbkJDLEtBQUssRUFBRXpFLENBQUMsQ0FBQyxrQkFBa0IsQ0FBRTtNQUM3QmdHLE9BQU8sRUFBRUwscUJBQXNCO01BQy9CTSxZQUFZLEVBQUVqRyxDQUFDLENBQUMsMEJBQTBCO0lBQUUsQ0FDN0MsQ0FBQztFQUFBLENBQ2MsQ0FBQztBQUV2QixDQUFDLENBQUMiLCJpZ25vcmVMaXN0IjpbXX0=
|
|
@@ -1,19 +1,15 @@
|
|
|
1
|
-
import { memo } from 'react';
|
|
1
|
+
import { memo, useMemo } from 'react';
|
|
2
2
|
import { useTeams } from '../../context/TeamsContext';
|
|
3
3
|
import { LayoutSection } from '../../components/Layout';
|
|
4
4
|
import { HeaderTeams } from '../../components/HeaderTeams';
|
|
5
5
|
import { EmptyStateTeams } from '../../components/EmptyStateTeams';
|
|
6
6
|
import { useGetTeams } from '../../hooks/useGetTeams';
|
|
7
7
|
import { ErrorTeams } from '../../components/ErrorTeams';
|
|
8
|
-
import { ShowMore } from '../../components/ShowMore';
|
|
9
8
|
import { TableContainer } from '../TableContainer/TableContainer';
|
|
10
9
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
11
10
|
export var MainTeamsView = /*#__PURE__*/memo(function () {
|
|
12
11
|
var _useTeams = useTeams(),
|
|
13
|
-
teams = _useTeams.teams
|
|
14
|
-
totalTeams = _useTeams.totalTeams,
|
|
15
|
-
currentPage = _useTeams.currentPage,
|
|
16
|
-
setCurrentPage = _useTeams.setCurrentPage;
|
|
12
|
+
teams = _useTeams.teams;
|
|
17
13
|
var _useGetTeams = useGetTeams(),
|
|
18
14
|
loading = _useGetTeams.loading,
|
|
19
15
|
error = _useGetTeams.error;
|
|
@@ -21,20 +17,20 @@ export var MainTeamsView = /*#__PURE__*/memo(function () {
|
|
|
21
17
|
var event = new CustomEvent('createTeam');
|
|
22
18
|
window.dispatchEvent(event);
|
|
23
19
|
};
|
|
24
|
-
var
|
|
25
|
-
|
|
26
|
-
};
|
|
20
|
+
var hasTeams = useMemo(function () {
|
|
21
|
+
return teams.length > 0;
|
|
22
|
+
}, [teams]);
|
|
27
23
|
return /*#__PURE__*/_jsxs(LayoutSection, {
|
|
28
24
|
children: [/*#__PURE__*/_jsx(HeaderTeams, {
|
|
29
|
-
showCreateButton:
|
|
25
|
+
showCreateButton: hasTeams,
|
|
30
26
|
clickCreateTeam: handleCreateTeam
|
|
31
|
-
}), error && /*#__PURE__*/_jsx(ErrorTeams, {}),
|
|
32
|
-
loading: loading
|
|
33
|
-
|
|
27
|
+
}), error && /*#__PURE__*/_jsx(ErrorTeams, {}), hasTeams ? /*#__PURE__*/_jsx(TableContainer, {
|
|
28
|
+
loading: loading,
|
|
29
|
+
error: !!error,
|
|
30
|
+
hasTeams: true
|
|
31
|
+
}) : !error && !loading && /*#__PURE__*/_jsx(EmptyStateTeams, {
|
|
34
32
|
clickCreateTeam: handleCreateTeam
|
|
35
|
-
}), currentPage < totalTeams && /*#__PURE__*/_jsx(ShowMore, {
|
|
36
|
-
clickShowMore: handleClickShowMore
|
|
37
33
|
})]
|
|
38
34
|
});
|
|
39
35
|
});
|
|
40
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
36
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJtZW1vIiwidXNlTWVtbyIsInVzZVRlYW1zIiwiTGF5b3V0U2VjdGlvbiIsIkhlYWRlclRlYW1zIiwiRW1wdHlTdGF0ZVRlYW1zIiwidXNlR2V0VGVhbXMiLCJFcnJvclRlYW1zIiwiVGFibGVDb250YWluZXIiLCJqc3giLCJfanN4IiwianN4cyIsIl9qc3hzIiwiTWFpblRlYW1zVmlldyIsIl91c2VUZWFtcyIsInRlYW1zIiwiX3VzZUdldFRlYW1zIiwibG9hZGluZyIsImVycm9yIiwiaGFuZGxlQ3JlYXRlVGVhbSIsImV2ZW50IiwiQ3VzdG9tRXZlbnQiLCJ3aW5kb3ciLCJkaXNwYXRjaEV2ZW50IiwiaGFzVGVhbXMiLCJsZW5ndGgiLCJjaGlsZHJlbiIsInNob3dDcmVhdGVCdXR0b24iLCJjbGlja0NyZWF0ZVRlYW0iXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29udGFpbmVyL01haW5WaWV3L01haW5UZWFtc1ZpZXcudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IG1lbW8sIHVzZU1lbW8gfSBmcm9tICdyZWFjdCdcbmltcG9ydCB7IHVzZVRlYW1zIH0gZnJvbSAnLi4vLi4vY29udGV4dC9UZWFtc0NvbnRleHQnXG5pbXBvcnQgeyBMYXlvdXRTZWN0aW9uIH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cy9MYXlvdXQnXG5pbXBvcnQgeyBIZWFkZXJUZWFtcyB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMvSGVhZGVyVGVhbXMnXG5pbXBvcnQgeyBFbXB0eVN0YXRlVGVhbXMgfSBmcm9tICcuLi8uLi9jb21wb25lbnRzL0VtcHR5U3RhdGVUZWFtcydcbmltcG9ydCB7IHVzZUdldFRlYW1zIH0gZnJvbSAnLi4vLi4vaG9va3MvdXNlR2V0VGVhbXMnXG5pbXBvcnQgeyBFcnJvclRlYW1zIH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cy9FcnJvclRlYW1zJ1xuaW1wb3J0IHsgVGFibGVDb250YWluZXIgfSBmcm9tICcuLi9UYWJsZUNvbnRhaW5lci9UYWJsZUNvbnRhaW5lcidcblxuZXhwb3J0IGNvbnN0IE1haW5UZWFtc1ZpZXcgPSBtZW1vKCgpID0+IHtcbiAgY29uc3QgeyB0ZWFtcyB9ID0gdXNlVGVhbXMoKVxuICBjb25zdCB7IGxvYWRpbmcsIGVycm9yIH0gPSB1c2VHZXRUZWFtcygpXG5cbiAgY29uc3QgaGFuZGxlQ3JlYXRlVGVhbSA9ICgpID0+IHtcbiAgICBjb25zdCBldmVudCA9IG5ldyBDdXN0b21FdmVudCgnY3JlYXRlVGVhbScpXG4gICAgd2luZG93LmRpc3BhdGNoRXZlbnQoZXZlbnQpXG4gIH1cblxuICBjb25zdCBoYXNUZWFtcyA9IHVzZU1lbW8oKCkgPT4gdGVhbXMubGVuZ3RoID4gMCwgW3RlYW1zXSlcblxuICByZXR1cm4gKFxuICAgIDxMYXlvdXRTZWN0aW9uPlxuICAgICAgPEhlYWRlclRlYW1zIHNob3dDcmVhdGVCdXR0b249e2hhc1RlYW1zfSBjbGlja0NyZWF0ZVRlYW09e2hhbmRsZUNyZWF0ZVRlYW19IC8+XG4gICAgICB7ZXJyb3IgJiYgPEVycm9yVGVhbXMgLz59XG4gICAgICB7aGFzVGVhbXMgPyAoXG4gICAgICAgIDxUYWJsZUNvbnRhaW5lciBsb2FkaW5nPXtsb2FkaW5nfSBlcnJvcj17ISFlcnJvcn0gaGFzVGVhbXMgLz5cbiAgICAgICkgOiAoXG4gICAgICAgICFlcnJvciAmJiAhbG9hZGluZyAmJiA8RW1wdHlTdGF0ZVRlYW1zIGNsaWNrQ3JlYXRlVGVhbT17aGFuZGxlQ3JlYXRlVGVhbX0gLz5cbiAgICAgICl9XG4gICAgPC9MYXlvdXRTZWN0aW9uPlxuICApXG59KVxuIl0sIm1hcHBpbmdzIjoiQUFBQSxTQUFTQSxJQUFJLEVBQUVDLE9BQU8sUUFBUSxPQUFPO0FBQ3JDLFNBQVNDLFFBQVEsUUFBUSw0QkFBNEI7QUFDckQsU0FBU0MsYUFBYSxRQUFRLHlCQUF5QjtBQUN2RCxTQUFTQyxXQUFXLFFBQVEsOEJBQThCO0FBQzFELFNBQVNDLGVBQWUsUUFBUSxrQ0FBa0M7QUFDbEUsU0FBU0MsV0FBVyxRQUFRLHlCQUF5QjtBQUNyRCxTQUFTQyxVQUFVLFFBQVEsNkJBQTZCO0FBQ3hELFNBQVNDLGNBQWMsUUFBUSxrQ0FBa0M7QUFBQSxTQUFBQyxHQUFBLElBQUFDLElBQUEsRUFBQUMsSUFBQSxJQUFBQyxLQUFBO0FBRWpFLE9BQU8sSUFBTUMsYUFBYSxnQkFBR2IsSUFBSSxDQUFDLFlBQU07RUFDdEMsSUFBQWMsU0FBQSxHQUFrQlosUUFBUSxDQUFDLENBQUM7SUFBcEJhLEtBQUssR0FBQUQsU0FBQSxDQUFMQyxLQUFLO0VBQ2IsSUFBQUMsWUFBQSxHQUEyQlYsV0FBVyxDQUFDLENBQUM7SUFBaENXLE9BQU8sR0FBQUQsWUFBQSxDQUFQQyxPQUFPO0lBQUVDLEtBQUssR0FBQUYsWUFBQSxDQUFMRSxLQUFLO0VBRXRCLElBQU1DLGdCQUFnQixHQUFHLFNBQW5CQSxnQkFBZ0JBLENBQUEsRUFBUztJQUM3QixJQUFNQyxLQUFLLEdBQUcsSUFBSUMsV0FBVyxDQUFDLFlBQVksQ0FBQztJQUMzQ0MsTUFBTSxDQUFDQyxhQUFhLENBQUNILEtBQUssQ0FBQztFQUM3QixDQUFDO0VBRUQsSUFBTUksUUFBUSxHQUFHdkIsT0FBTyxDQUFDO0lBQUEsT0FBTWMsS0FBSyxDQUFDVSxNQUFNLEdBQUcsQ0FBQztFQUFBLEdBQUUsQ0FBQ1YsS0FBSyxDQUFDLENBQUM7RUFFekQsb0JBQ0VILEtBQUEsQ0FBQ1QsYUFBYTtJQUFBdUIsUUFBQSxnQkFDWmhCLElBQUEsQ0FBQ04sV0FBVztNQUFDdUIsZ0JBQWdCLEVBQUVILFFBQVM7TUFBQ0ksZUFBZSxFQUFFVDtJQUFpQixDQUFFLENBQUMsRUFDN0VELEtBQUssaUJBQUlSLElBQUEsQ0FBQ0gsVUFBVSxJQUFFLENBQUMsRUFDdkJpQixRQUFRLGdCQUNQZCxJQUFBLENBQUNGLGNBQWM7TUFBQ1MsT0FBTyxFQUFFQSxPQUFRO01BQUNDLEtBQUssRUFBRSxDQUFDLENBQUNBLEtBQU07TUFBQ00sUUFBUTtJQUFBLENBQUUsQ0FBQyxHQUU3RCxDQUFDTixLQUFLLElBQUksQ0FBQ0QsT0FBTyxpQkFBSVAsSUFBQSxDQUFDTCxlQUFlO01BQUN1QixlQUFlLEVBQUVUO0lBQWlCLENBQUUsQ0FDNUU7RUFBQSxDQUNZLENBQUM7QUFFcEIsQ0FBQyxDQUFDIiwiaWdub3JlTGlzdCI6W119
|