@projectcor/people-microfront 1.0.10 → 1.0.12

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.
Files changed (193) hide show
  1. package/lib/App.js +28 -0
  2. package/lib/App.stories.js +134 -0
  3. package/lib/Providers.js +30 -0
  4. package/lib/components/Backdrop/Background.interface.js +2 -0
  5. package/lib/components/Backdrop/Background.js +12 -0
  6. package/lib/components/Backdrop/Background.style.js +9 -0
  7. package/lib/components/Backdrop/index.js +2 -0
  8. package/lib/components/DeleteTeamModal/DeleteTeamModal.js +69 -0
  9. package/lib/components/DeleteTeamModal/DeleteTeamModal.styles.js +55 -0
  10. package/lib/components/DeleteTeamModal/DeleteTeamModal.types.js +2 -0
  11. package/lib/components/DeleteTeamModal/index.js +2 -0
  12. package/lib/components/DeletedUserIcon/DeletedUserIcon.js +22 -0
  13. package/lib/components/DeletedUserIcon/DeletedUserIcon.styles.js +7 -0
  14. package/lib/components/DeletedUserIcon/index.js +2 -0
  15. package/lib/components/DisabledUserIcon/DisabledUserIcon.js +25 -0
  16. package/lib/components/DisabledUserIcon/DisabledUserIcon.styles.js +7 -0
  17. package/lib/components/DisabledUserIcon/index.js +2 -0
  18. package/lib/components/EmptyStateTeams/EmptyStateTeams.js +195 -0
  19. package/lib/components/EmptyStateTeams/EmptyStateTeams.styles.js +7 -0
  20. package/lib/components/EmptyStateTeams/index.js +2 -0
  21. package/lib/components/EmptyUser/EmptyUser.js +20 -0
  22. package/lib/components/EmptyUser/EmptyUser.styles.js +18 -0
  23. package/lib/components/EmptyUser/index.js +3 -0
  24. package/lib/components/ErrorComponent/ErrorComponent.js +24 -0
  25. package/lib/components/ErrorComponent/ErrorComponent.spec.js +30 -0
  26. package/lib/components/ErrorComponent/ErrorComponent.styles.js +19 -0
  27. package/lib/components/ErrorComponent/index.js +2 -0
  28. package/lib/components/ErrorTeams/ErrorTeams.js +118 -0
  29. package/lib/components/ErrorTeams/ErrorTeams.styles.js +7 -0
  30. package/lib/components/ErrorTeams/index.js +2 -0
  31. package/lib/components/Filters/FilterChip/FilterChip.js +165 -0
  32. package/lib/components/Filters/FilterChip/FilterChip.styles.js +6 -0
  33. package/lib/components/Filters/FilterChip/index.js +2 -0
  34. package/lib/components/Filters/LabelFilter/LabelFilter.js +89 -0
  35. package/lib/components/Filters/LabelFilter/LabelFilter.styles.js +32 -0
  36. package/lib/components/Filters/SearchComponent/SearchComponent.js +28 -0
  37. package/lib/components/Filters/SearchComponent/SearchComponent.styles.js +22 -0
  38. package/lib/components/Filters/SearchComponent/index.js +2 -0
  39. package/lib/components/Filters/index.js +2 -0
  40. package/lib/components/HeaderTeams/HeaderTeams.js +37 -0
  41. package/lib/components/HeaderTeams/HeaderTeams.style.js +15 -0
  42. package/lib/components/HeaderTeams/index.js +2 -0
  43. package/lib/components/Icons/UserBlockIcon.js +25 -0
  44. package/lib/components/Icons/UserIconLock.js +43 -0
  45. package/lib/components/Icons/UserIconWithCross.js +21 -0
  46. package/lib/components/Icons/index.js +4 -0
  47. package/lib/components/Illustration/EmptyFilter.js +67 -0
  48. package/lib/components/Illustration/EmptyUser.js +141 -0
  49. package/lib/components/Illustration/index.js +2 -0
  50. package/lib/components/Layout/Layout.js +37 -0
  51. package/lib/components/Layout/Layout.styles.js +26 -0
  52. package/lib/components/Layout/index.js +2 -0
  53. package/lib/components/Loader/Loader.js +11 -0
  54. package/lib/components/Loader/Loader.styles.js +6 -0
  55. package/lib/components/Loader/index.js +2 -0
  56. package/lib/components/Loading/LoadingComponent.js +19 -0
  57. package/lib/components/Loading/LoadingComponent.style.js +15 -0
  58. package/lib/components/Loading/index.js +2 -0
  59. package/lib/components/MenuOptions/MenuOptions.js +220 -0
  60. package/lib/components/MenuOptions/MenuOptions.styles.js +18 -0
  61. package/lib/components/MenuOptions/index.js +2 -0
  62. package/lib/components/Modal/ModalLayout.interface.js +2 -0
  63. package/lib/components/Modal/ModalLayout.js +25 -0
  64. package/lib/components/Modal/ModalLayout.style.js +26 -0
  65. package/lib/components/Modal/index.js +2 -0
  66. package/lib/components/ModalBlockedUser/ModalBlockedUser.js +47 -0
  67. package/lib/components/ModalBlockedUser/ModalBlockedUser.styles.js +14 -0
  68. package/lib/components/ModalBlockedUser/index.js +2 -0
  69. package/lib/components/ModalEditUserPosition/ModalEditUserPosition.js +136 -0
  70. package/lib/components/ModalEditUserPosition/ModalEditUserPosition.styles.js +37 -0
  71. package/lib/components/ModalEditUserPosition/UserEditPositionRow.js +216 -0
  72. package/lib/components/ModalEditUserPosition/UserEditPositionRow.styles.js +61 -0
  73. package/lib/components/ModalEditUserPosition/index.js +2 -0
  74. package/lib/components/ModalOptionsWithSearch/ConfirmButton.js +19 -0
  75. package/lib/components/ModalOptionsWithSearch/ModalOptionsWithSearch.js +177 -0
  76. package/lib/components/ModalOptionsWithSearch/ModalOptionsWithSearch.styles.js +46 -0
  77. package/lib/components/ModalOptionsWithSearch/SearchInput.js +20 -0
  78. package/lib/components/Pagination/Pagination.styles.js +26 -0
  79. package/lib/components/Pagination/PaginationView.js +83 -0
  80. package/lib/components/Pagination/index.js +2 -0
  81. package/lib/components/Search/InputSearch.js +23 -0
  82. package/lib/components/Search/Search.js +41 -0
  83. package/lib/components/Search/Search.styles.js +15 -0
  84. package/lib/components/Search/index.js +2 -0
  85. package/lib/components/Snackbar/Snackbar.interface.js +2 -0
  86. package/lib/components/Snackbar/Snackbar.js +35 -0
  87. package/lib/components/Snackbar/Snackbar.styles.js +18 -0
  88. package/lib/components/Snackbar/index.js +2 -0
  89. package/lib/components/Table/Header/HeaderTable.js +208 -0
  90. package/lib/components/Table/Header/HeaderTable.styles.js +15 -0
  91. package/lib/components/Table/Header/index.js +2 -0
  92. package/lib/components/Table/Row/Row.js +112 -0
  93. package/lib/components/Table/Row/Row.styles.js +91 -0
  94. package/lib/components/Table/Row/index.js +2 -0
  95. package/lib/components/Table/TeamRow/AddMemberModal/AddMemberModal.js +68 -0
  96. package/lib/components/Table/TeamRow/AddMemberModal/AddMemberModal.styles.js +39 -0
  97. package/lib/components/Table/TeamRow/AddMemberModal/index.js +2 -0
  98. package/lib/components/Table/TeamRow/AddUsers/AddUsers.js +246 -0
  99. package/lib/components/Table/TeamRow/AddUsers/AddUsers.styles.js +32 -0
  100. package/lib/components/Table/TeamRow/AddUsers/index.js +2 -0
  101. package/lib/components/Table/TeamRow/RemoveMemberModal/RemoveMemberModal.js +68 -0
  102. package/lib/components/Table/TeamRow/RemoveMemberModal/RemoveMemberModal.styles.js +39 -0
  103. package/lib/components/Table/TeamRow/RemoveMemberModal/index.js +2 -0
  104. package/lib/components/Table/TeamRow/TeamRow.js +131 -0
  105. package/lib/components/Table/TeamRow/TeamRow.styles.js +7 -0
  106. package/lib/components/Table/TeamRow/UsersRow/UsersRow.js +195 -0
  107. package/lib/components/Table/TeamRow/UsersRow/UsersRow.styles.js +41 -0
  108. package/lib/components/Table/TeamRow/UsersRow/index.js +2 -0
  109. package/lib/components/Table/TeamRow/index.js +2 -0
  110. package/lib/components/TeamDetailsModal/MembersSelect.js +181 -0
  111. package/lib/components/TeamDetailsModal/TeamDetailsModal.js +276 -0
  112. package/lib/components/TeamDetailsModal/TeamDetailsModal.styles.js +130 -0
  113. package/lib/components/TeamDetailsModal/TeamDetailsModal.types.js +2 -0
  114. package/lib/components/TeamDetailsModal/index.js +2 -0
  115. package/lib/components/UserRow/UserRow.js +83 -0
  116. package/lib/components/UserRow/UserRow.stories.js +17 -0
  117. package/lib/components/UserRow/UserRow.styles.js +51 -0
  118. package/lib/constants/gqlClient.js +4 -0
  119. package/lib/constants/peopleFilterEventTypes.js +9 -0
  120. package/lib/container/Body/BodyContainer.js +130 -0
  121. package/lib/container/Body/BodyContainerViewTeams.js +216 -0
  122. package/lib/container/Filters/FiltersContainer.js +494 -0
  123. package/lib/container/Filters/FiltersTeamsContainer.js +159 -0
  124. package/lib/container/MainView/MainTeamsView.js +69 -0
  125. package/lib/container/MainView/MainUsersView.js +159 -0
  126. package/lib/container/MainView/MainUsersView.styles.js +32 -0
  127. package/lib/container/MainView/MainView.js +139 -0
  128. package/lib/container/Pagination/PaginationContainer.js +32 -0
  129. package/lib/container/Pagination/PaginationTeamsContainer.js +32 -0
  130. package/lib/container/RouterComponent/RouterComponent.js +110 -0
  131. package/lib/container/RouterComponent/RouterComponent.stories.js +12 -0
  132. package/lib/container/RouterComponent/RouterComponent.styles.js +26 -0
  133. package/lib/container/RouterComponent/index.js +2 -0
  134. package/lib/container/TableContainer/TableContainer.js +62 -0
  135. package/lib/container/index.js +2 -0
  136. package/lib/context/TeamsContext.js +49 -0
  137. package/lib/context/UsersContext.js +214 -0
  138. package/lib/hooks/useAbortController.js +21 -0
  139. package/lib/hooks/useAssignUserToTeam.js +77 -0
  140. package/lib/hooks/useAssignedWorkspacesFromHost.js +103 -0
  141. package/lib/hooks/useCreateTeams.js +67 -0
  142. package/lib/hooks/useDebounce.js +18 -0
  143. package/lib/hooks/useDebouncedCallback.js +27 -0
  144. package/lib/hooks/useDeleteTeam.js +69 -0
  145. package/lib/hooks/useGetTeams.js +73 -0
  146. package/lib/hooks/useGetTotalPositions.js +24 -0
  147. package/lib/hooks/useGetTotalTeams.js +24 -0
  148. package/lib/hooks/useGetUserPositionFilter.js +32 -0
  149. package/lib/hooks/useGetUsers.js +128 -0
  150. package/lib/hooks/useGetUsersForFilter.js +51 -0
  151. package/lib/hooks/useGraphAdapter.js +71 -0
  152. package/lib/hooks/useLoadMoreGuard.js +16 -0
  153. package/lib/hooks/useResize.js +34 -0
  154. package/lib/hooks/useSearchEvent.js +18 -0
  155. package/lib/hooks/useUnassignUserFromTeam.js +67 -0
  156. package/lib/hooks/useUnblockUser.js +47 -0
  157. package/lib/hooks/useUpdateTeam.js +67 -0
  158. package/lib/hooks/useUpdateUserPositions.js +58 -0
  159. package/lib/hooks/useUserPositionCategories.js +38 -0
  160. package/lib/index.css +28 -0
  161. package/lib/index.js +10 -0
  162. package/lib/lang/i18next.js +19 -0
  163. package/lib/lang/i18nextForWeb.js +25 -0
  164. package/lib/lang/resource.js +11 -0
  165. package/lib/lang/translation/br.json +179 -0
  166. package/lib/lang/translation/en.json +180 -0
  167. package/lib/lang/translation/es.json +180 -0
  168. package/lib/lang/translation/fr.json +180 -0
  169. package/lib/mocks/mockedUser.js +101 -0
  170. package/lib/query/assignUserToTeam.js +5 -0
  171. package/lib/query/createTeam.js +5 -0
  172. package/lib/query/deleteTeam.js +5 -0
  173. package/lib/query/getTeams.js +5 -0
  174. package/lib/query/getTotalPositions.js +5 -0
  175. package/lib/query/getTotalTeams.js +5 -0
  176. package/lib/query/getUserPositionCategory.js +5 -0
  177. package/lib/query/getUserPositionFilter.js +5 -0
  178. package/lib/query/getUsers.js +5 -0
  179. package/lib/query/getWorkspaces.js +5 -0
  180. package/lib/query/unassignUserFromTeam.js +5 -0
  181. package/lib/query/updateTeam.js +5 -0
  182. package/lib/query/updateUserPosition.js +5 -0
  183. package/lib/query/userUnblock.js +5 -0
  184. package/lib/types/global.d.js +2 -0
  185. package/lib/types/userType.d.js +2 -0
  186. package/lib/utils/ApolloMicroServiceClient.js +3 -0
  187. package/lib/utils/formatNumber.js +55 -0
  188. package/lib/utils/isCorWorkspacesFeatureEnabled.js +15 -0
  189. package/lib/utils/peopleFiltersStorage.js +128 -0
  190. package/lib/utils/peopleFiltersUrl.js +147 -0
  191. package/lib/utils/sanitizeHtml.js +11 -0
  192. package/lib/utils/tabUrl.js +16 -0
  193. package/package.json +1 -1
@@ -0,0 +1,214 @@
1
+ import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
+ import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
3
+ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
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; }
5
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
6
+ /* eslint-disable @typescript-eslint/no-shadow */
7
+ /* eslint-disable @typescript-eslint/no-explicit-any */
8
+ import { createContext, useCallback, useContext, useMemo, useState, useEffect } from 'react';
9
+ import { UserContext } from '@projectcor/cor-commons/lib/providers/UserProvider';
10
+ import { useGetUsers } from '../hooks/useGetUsers';
11
+ import { useGetTotalTeams } from '../hooks/useGetTotalTeams';
12
+ import { useGetTotalPositions } from '../hooks/useGetTotalPositions';
13
+ import { buildValuesToFilterPayload, clearPersistedUsersNameSearch } from '../utils/peopleFiltersStorage';
14
+ import { writeUsersFiltersToUrl } from '../utils/peopleFiltersUrl';
15
+ import { jsx as _jsx } from "react/jsx-runtime";
16
+ var UsersQueryContext = /*#__PURE__*/createContext(undefined);
17
+ var UsersViewContext = /*#__PURE__*/createContext(undefined);
18
+ var UsersEditPositionsContext = /*#__PURE__*/createContext(undefined);
19
+ export var UsersProvider = function UsersProvider(_ref) {
20
+ var children = _ref.children,
21
+ initialView = _ref.view;
22
+ var _useState = useState(initialView),
23
+ _useState2 = _slicedToArray(_useState, 2),
24
+ view = _useState2[0],
25
+ setView = _useState2[1];
26
+ var _useState3 = useState(false),
27
+ _useState4 = _slicedToArray(_useState3, 2),
28
+ hasEditPositions = _useState4[0],
29
+ setHasEditPositions = _useState4[1];
30
+ var _useState5 = useState([]),
31
+ _useState6 = _slicedToArray(_useState5, 2),
32
+ usersToEditPositions = _useState6[0],
33
+ setUsersToEditPositions = _useState6[1];
34
+ var _useState7 = useState([]),
35
+ _useState8 = _slicedToArray(_useState7, 2),
36
+ positions = _useState8[0],
37
+ setPositions = _useState8[1];
38
+ var _useGetUsers = useGetUsers(),
39
+ handleGetUsers = _useGetUsers.handleGetUsers,
40
+ abort = _useGetUsers.abort,
41
+ loading = _useGetUsers.loading,
42
+ error = _useGetUsers.error,
43
+ users = _useGetUsers.users,
44
+ totalUsers = _useGetUsers.totalUsers,
45
+ currentPage = _useGetUsers.currentPage,
46
+ totalPages = _useGetUsers.totalPages;
47
+ var _useGetTotalTeams = useGetTotalTeams(),
48
+ totalTeamsData = _useGetTotalTeams.data,
49
+ handleGetTotalTeams = _useGetTotalTeams.handleGetTotalTeams;
50
+ var _useGetTotalPositions = useGetTotalPositions(),
51
+ totalPositionsData = _useGetTotalPositions.data,
52
+ handleGetTotalPositions = _useGetTotalPositions.handleGetTotalPositions;
53
+ var _useState9 = useState(0),
54
+ _useState0 = _slicedToArray(_useState9, 2),
55
+ totalTeamsFromGraph = _useState0[0],
56
+ setTotalTeamsFromGraph = _useState0[1];
57
+ var _useState1 = useState(null),
58
+ _useState10 = _slicedToArray(_useState1, 2),
59
+ teamsListTotal = _useState10[0],
60
+ setTeamsListTotal = _useState10[1];
61
+ var _useState11 = useState(0),
62
+ _useState12 = _slicedToArray(_useState11, 2),
63
+ totalPositions = _useState12[0],
64
+ setTotalPositions = _useState12[1];
65
+ var _useState13 = useState(0),
66
+ _useState14 = _slicedToArray(_useState13, 2),
67
+ totalUsersForTabs = _useState14[0],
68
+ setTotalUsersForTabs = _useState14[1];
69
+ useEffect(function () {
70
+ if (view === 'users') {
71
+ setTotalUsersForTabs(totalUsers);
72
+ }
73
+ }, [view, totalUsers]);
74
+ useEffect(function () {
75
+ handleGetTotalTeams();
76
+ handleGetTotalPositions();
77
+ }, [handleGetTotalTeams, handleGetTotalPositions]);
78
+ useEffect(function () {
79
+ if ((totalTeamsData === null || totalTeamsData === void 0 ? void 0 : totalTeamsData.getTotalTeams) != null) {
80
+ setTotalTeamsFromGraph(totalTeamsData.getTotalTeams.total);
81
+ }
82
+ }, [totalTeamsData]);
83
+ useEffect(function () {
84
+ if ((totalPositionsData === null || totalPositionsData === void 0 ? void 0 : totalPositionsData.userPositionCategoryTotal) != null) {
85
+ setTotalPositions(totalPositionsData.userPositionCategoryTotal.totalCategories);
86
+ }
87
+ }, [totalPositionsData]);
88
+ var handleSetHasEditPositions = useCallback(function (value) {
89
+ if (!value) setUsersToEditPositions([]);
90
+ setHasEditPositions(value);
91
+ }, []);
92
+ useEffect(function () {
93
+ if (view !== 'users') {
94
+ setHasEditPositions(false);
95
+ setUsersToEditPositions([]);
96
+ }
97
+ }, [view]);
98
+ useEffect(function () {
99
+ if (view === 'users' && !loading && (users === null || users === void 0 ? void 0 : users.length) === 0 && (hasEditPositions || usersToEditPositions.length > 0)) {
100
+ setHasEditPositions(false);
101
+ setUsersToEditPositions([]);
102
+ }
103
+ }, [view, loading, users, hasEditPositions, usersToEditPositions.length]);
104
+ var handleSetUsersToEditPositions = useCallback(function (value) {
105
+ setUsersToEditPositions(function (prev) {
106
+ var exists = prev.some(function (user) {
107
+ return (user === null || user === void 0 ? void 0 : user.id) === value.id;
108
+ });
109
+ if (exists) return prev.filter(function (user) {
110
+ return (user === null || user === void 0 ? void 0 : user.id) !== value.id;
111
+ });
112
+ return [].concat(_toConsumableArray(prev), [value]);
113
+ });
114
+ }, []);
115
+ var handleSetPositions = useCallback(function (newPositions) {
116
+ setPositions(newPositions);
117
+ }, []);
118
+ useEffect(function () {
119
+ if (view !== 'users') {
120
+ abort();
121
+ }
122
+ }, [view, abort]);
123
+ useEffect(function () {
124
+ if (view !== 'users') return;
125
+ var cleared = clearPersistedUsersNameSearch();
126
+ writeUsersFiltersToUrl(cleared);
127
+ var vf = buildValuesToFilterPayload(cleared);
128
+ handleGetUsers({
129
+ page: 1,
130
+ searchInput: '',
131
+ valuesToFilter: Object.keys(vf).length ? vf : undefined
132
+ });
133
+ }, [view, handleGetUsers]);
134
+ var queryValue = useMemo(function () {
135
+ return {
136
+ users: users,
137
+ totalUsers: totalUsers,
138
+ currentPage: currentPage,
139
+ totalPages: totalPages,
140
+ loading: loading,
141
+ error: error,
142
+ positions: positions,
143
+ handleGetUsers: handleGetUsers,
144
+ handleSetPositions: handleSetPositions
145
+ };
146
+ }, [users, totalUsers, currentPage, loading, error, positions, handleGetUsers, handleSetPositions]);
147
+ var editPositionsValue = useMemo(function () {
148
+ return {
149
+ hasEditPositions: hasEditPositions,
150
+ handleSetHasEditPositions: handleSetHasEditPositions,
151
+ usersToEditPositions: usersToEditPositions,
152
+ handleSetUsersToEditPositions: handleSetUsersToEditPositions
153
+ };
154
+ }, [hasEditPositions, handleSetHasEditPositions, usersToEditPositions, handleSetUsersToEditPositions]);
155
+ var viewValue = useMemo(function () {
156
+ return {
157
+ view: view,
158
+ setView: setView,
159
+ totalUsers: totalUsersForTabs,
160
+ totalTeams: teamsListTotal !== null ? teamsListTotal : totalTeamsFromGraph,
161
+ totalPositions: totalPositions,
162
+ setTeamsListTotal: setTeamsListTotal
163
+ };
164
+ }, [view, totalUsersForTabs, teamsListTotal, totalTeamsFromGraph, totalPositions]);
165
+ return /*#__PURE__*/_jsx(UsersViewContext.Provider, {
166
+ value: viewValue,
167
+ children: /*#__PURE__*/_jsx(UsersQueryContext.Provider, {
168
+ value: queryValue,
169
+ children: /*#__PURE__*/_jsx(UsersEditPositionsContext.Provider, {
170
+ value: editPositionsValue,
171
+ children: children
172
+ })
173
+ })
174
+ });
175
+ };
176
+ export var useUsersQuery = function useUsersQuery() {
177
+ var context = useContext(UsersQueryContext);
178
+ if (context === undefined) throw new Error('useUsersQuery must be used within a UsersProvider');
179
+ return context;
180
+ };
181
+ export var useUsersView = function useUsersView() {
182
+ var context = useContext(UsersViewContext);
183
+ if (context === undefined) throw new Error('useUsersView must be used within a UsersProvider');
184
+ return context;
185
+ };
186
+ export var useUsersEditPositions = function useUsersEditPositions() {
187
+ var context = useContext(UsersEditPositionsContext);
188
+ if (context === undefined) throw new Error('useUsersEditPositions must be used within a UsersProvider');
189
+ return context;
190
+ };
191
+ export var useUserInfo = function useUserInfo() {
192
+ var context = useContext(UserContext);
193
+ if (context === undefined) throw new Error('useUserInfo must be used within a UsersProvider');
194
+ return context;
195
+ };
196
+ export var useUsersCount = function useUsersCount() {
197
+ var context = useContext(UsersViewContext);
198
+ if (context === undefined) throw new Error('useUsersCount must be used within a UsersProvider');
199
+ return {
200
+ totalUsers: context.totalUsers,
201
+ totalTeams: context.totalTeams,
202
+ totalPositions: context.totalPositions
203
+ };
204
+ };
205
+ export var useUsers = function useUsers() {
206
+ var query = useUsersQuery();
207
+ var viewCtx = useUsersView();
208
+ var edit = useUsersEditPositions();
209
+ var userInfo = useUserInfo();
210
+ return _objectSpread(_objectSpread(_objectSpread(_objectSpread({}, query), viewCtx), edit), {}, {
211
+ userInfo: userInfo
212
+ });
213
+ };
214
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJjcmVhdGVDb250ZXh0IiwidXNlQ2FsbGJhY2siLCJ1c2VDb250ZXh0IiwidXNlTWVtbyIsInVzZVN0YXRlIiwidXNlRWZmZWN0IiwiVXNlckNvbnRleHQiLCJ1c2VHZXRVc2VycyIsInVzZUdldFRvdGFsVGVhbXMiLCJ1c2VHZXRUb3RhbFBvc2l0aW9ucyIsImJ1aWxkVmFsdWVzVG9GaWx0ZXJQYXlsb2FkIiwiY2xlYXJQZXJzaXN0ZWRVc2Vyc05hbWVTZWFyY2giLCJ3cml0ZVVzZXJzRmlsdGVyc1RvVXJsIiwianN4IiwiX2pzeCIsIlVzZXJzUXVlcnlDb250ZXh0IiwidW5kZWZpbmVkIiwiVXNlcnNWaWV3Q29udGV4dCIsIlVzZXJzRWRpdFBvc2l0aW9uc0NvbnRleHQiLCJVc2Vyc1Byb3ZpZGVyIiwiX3JlZiIsImNoaWxkcmVuIiwiaW5pdGlhbFZpZXciLCJ2aWV3IiwiX3VzZVN0YXRlIiwiX3VzZVN0YXRlMiIsIl9zbGljZWRUb0FycmF5Iiwic2V0VmlldyIsIl91c2VTdGF0ZTMiLCJfdXNlU3RhdGU0IiwiaGFzRWRpdFBvc2l0aW9ucyIsInNldEhhc0VkaXRQb3NpdGlvbnMiLCJfdXNlU3RhdGU1IiwiX3VzZVN0YXRlNiIsInVzZXJzVG9FZGl0UG9zaXRpb25zIiwic2V0VXNlcnNUb0VkaXRQb3NpdGlvbnMiLCJfdXNlU3RhdGU3IiwiX3VzZVN0YXRlOCIsInBvc2l0aW9ucyIsInNldFBvc2l0aW9ucyIsIl91c2VHZXRVc2VycyIsImhhbmRsZUdldFVzZXJzIiwiYWJvcnQiLCJsb2FkaW5nIiwiZXJyb3IiLCJ1c2VycyIsInRvdGFsVXNlcnMiLCJjdXJyZW50UGFnZSIsInRvdGFsUGFnZXMiLCJfdXNlR2V0VG90YWxUZWFtcyIsInRvdGFsVGVhbXNEYXRhIiwiZGF0YSIsImhhbmRsZUdldFRvdGFsVGVhbXMiLCJfdXNlR2V0VG90YWxQb3NpdGlvbnMiLCJ0b3RhbFBvc2l0aW9uc0RhdGEiLCJoYW5kbGVHZXRUb3RhbFBvc2l0aW9ucyIsIl91c2VTdGF0ZTkiLCJfdXNlU3RhdGUwIiwidG90YWxUZWFtc0Zyb21HcmFwaCIsInNldFRvdGFsVGVhbXNGcm9tR3JhcGgiLCJfdXNlU3RhdGUxIiwiX3VzZVN0YXRlMTAiLCJ0ZWFtc0xpc3RUb3RhbCIsInNldFRlYW1zTGlzdFRvdGFsIiwiX3VzZVN0YXRlMTEiLCJfdXNlU3RhdGUxMiIsInRvdGFsUG9zaXRpb25zIiwic2V0VG90YWxQb3NpdGlvbnMiLCJfdXNlU3RhdGUxMyIsIl91c2VTdGF0ZTE0IiwidG90YWxVc2Vyc0ZvclRhYnMiLCJzZXRUb3RhbFVzZXJzRm9yVGFicyIsImdldFRvdGFsVGVhbXMiLCJ0b3RhbCIsInVzZXJQb3NpdGlvbkNhdGVnb3J5VG90YWwiLCJ0b3RhbENhdGVnb3JpZXMiLCJoYW5kbGVTZXRIYXNFZGl0UG9zaXRpb25zIiwidmFsdWUiLCJsZW5ndGgiLCJoYW5kbGVTZXRVc2Vyc1RvRWRpdFBvc2l0aW9ucyIsInByZXYiLCJleGlzdHMiLCJzb21lIiwidXNlciIsImlkIiwiZmlsdGVyIiwiY29uY2F0IiwiX3RvQ29uc3VtYWJsZUFycmF5IiwiaGFuZGxlU2V0UG9zaXRpb25zIiwibmV3UG9zaXRpb25zIiwiY2xlYXJlZCIsInZmIiwicGFnZSIsInNlYXJjaElucHV0IiwidmFsdWVzVG9GaWx0ZXIiLCJPYmplY3QiLCJrZXlzIiwicXVlcnlWYWx1ZSIsImVkaXRQb3NpdGlvbnNWYWx1ZSIsInZpZXdWYWx1ZSIsInRvdGFsVGVhbXMiLCJQcm92aWRlciIsInVzZVVzZXJzUXVlcnkiLCJjb250ZXh0IiwiRXJyb3IiLCJ1c2VVc2Vyc1ZpZXciLCJ1c2VVc2Vyc0VkaXRQb3NpdGlvbnMiLCJ1c2VVc2VySW5mbyIsInVzZVVzZXJzQ291bnQiLCJ1c2VVc2VycyIsInF1ZXJ5Iiwidmlld0N0eCIsImVkaXQiLCJ1c2VySW5mbyIsIl9vYmplY3RTcHJlYWQiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvY29udGV4dC9Vc2Vyc0NvbnRleHQudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9uby1zaGFkb3cgKi9cbi8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnkgKi9cbmltcG9ydCB7IGNyZWF0ZUNvbnRleHQsIHVzZUNhbGxiYWNrLCB1c2VDb250ZXh0LCB1c2VNZW1vLCBSZWFjdE5vZGUsIHVzZVN0YXRlLCB1c2VFZmZlY3QgfSBmcm9tICdyZWFjdCdcbmltcG9ydCB7IFVzZXJDb250ZXh0IH0gZnJvbSAnQHByb2plY3Rjb3IvY29yLWNvbW1vbnMvbGliL3Byb3ZpZGVycy9Vc2VyUHJvdmlkZXInXG5pbXBvcnQgeyB1c2VHZXRVc2VycyB9IGZyb20gJy4uL2hvb2tzL3VzZUdldFVzZXJzJ1xuaW1wb3J0IHsgdXNlR2V0VG90YWxUZWFtcyB9IGZyb20gJy4uL2hvb2tzL3VzZUdldFRvdGFsVGVhbXMnXG5pbXBvcnQgeyB1c2VHZXRUb3RhbFBvc2l0aW9ucyB9IGZyb20gJy4uL2hvb2tzL3VzZUdldFRvdGFsUG9zaXRpb25zJ1xuaW1wb3J0IHsgVXNlciwgVmlld1R5cGUgfSBmcm9tICcuLi90eXBlcy91c2VyVHlwZSdcbmltcG9ydCB7IGJ1aWxkVmFsdWVzVG9GaWx0ZXJQYXlsb2FkLCBjbGVhclBlcnNpc3RlZFVzZXJzTmFtZVNlYXJjaCB9IGZyb20gJy4uL3V0aWxzL3Blb3BsZUZpbHRlcnNTdG9yYWdlJ1xuaW1wb3J0IHsgd3JpdGVVc2Vyc0ZpbHRlcnNUb1VybCB9IGZyb20gJy4uL3V0aWxzL3Blb3BsZUZpbHRlcnNVcmwnXG5cbmludGVyZmFjZSBVc2Vyc1F1ZXJ5Q29udGV4dFR5cGUge1xuICB1c2VyczogVXNlcltdXG4gIHRvdGFsVXNlcnM6IG51bWJlclxuICBjdXJyZW50UGFnZTogbnVtYmVyXG4gIHRvdGFsUGFnZXM6IG51bWJlclxuICBsb2FkaW5nOiBib29sZWFuXG4gIGVycm9yOiBhbnlcbiAgcG9zaXRpb25zOiB7IGlkOiBudW1iZXI7IGxhYmVsOiBzdHJpbmc7IGNhdGVnb3J5TmFtZT86IHN0cmluZyB9W11cbiAgaGFuZGxlR2V0VXNlcnM6ICh7XG4gICAgc2VhcmNoSW5wdXQsXG4gICAgcGFnZSxcbiAgICB2YWx1ZXNUb0ZpbHRlcixcbiAgfToge1xuICAgIHNlYXJjaElucHV0Pzogc3RyaW5nXG4gICAgcGFnZT86IG51bWJlclxuICAgIHZhbHVlc1RvRmlsdGVyPzogYW55W11cbiAgfSkgPT4gdm9pZFxuICBoYW5kbGVTZXRQb3NpdGlvbnM6IChwb3NpdGlvbnM6IHsgaWQ6IG51bWJlcjsgbGFiZWw6IHN0cmluZzsgY2F0ZWdvcnlOYW1lPzogc3RyaW5nIH1bXSkgPT4gdm9pZFxufVxuXG5pbnRlcmZhY2UgVXNlcnNWaWV3Q29udGV4dFR5cGUge1xuICB2aWV3OiBWaWV3VHlwZVxuICBzZXRWaWV3OiAodmlldzogVmlld1R5cGUpID0+IHZvaWRcbiAgdG90YWxVc2VyczogbnVtYmVyXG4gIHRvdGFsVGVhbXM6IG51bWJlclxuICB0b3RhbFBvc2l0aW9uczogbnVtYmVyXG4gIHNldFRlYW1zTGlzdFRvdGFsOiAodG90YWw6IG51bWJlciB8IG51bGwpID0+IHZvaWRcbn1cblxuZXhwb3J0IHR5cGUgSW5mb1VzZXIgPSB7XG4gIGlkOiBudW1iZXJcbiAgZmlyc3ROYW1lOiBzdHJpbmdcbiAgbGFzdE5hbWU6IHN0cmluZ1xuICBsYW5nOiBzdHJpbmdcbiAgY29tcGFueV9pZDogbnVtYmVyXG4gIGNvbXBhbnk6IHN0cmluZ1xuICByZW1haW5pbmdIb3Vycz86IG51bWJlclxuICBkYWlseUhvdXJzOiBudW1iZXJcbiAgYXV0aG9yaXplZF9ieT86IHsgaWQ6IG51bWJlciB9XG4gIHJvbGVfaWQ6IG51bWJlclxuICBwaWN0dXJlOiBzdHJpbmdcbn1cblxuaW50ZXJmYWNlIFVzZXJzRWRpdFBvc2l0aW9uc0NvbnRleHRUeXBlIHtcbiAgaGFzRWRpdFBvc2l0aW9uczogYm9vbGVhblxuICBoYW5kbGVTZXRIYXNFZGl0UG9zaXRpb25zOiAodmFsdWU6IGJvb2xlYW4pID0+IHZvaWRcbiAgdXNlcnNUb0VkaXRQb3NpdGlvbnM6IFVzZXJbXVxuICBoYW5kbGVTZXRVc2Vyc1RvRWRpdFBvc2l0aW9uczogKHZhbHVlOiBVc2VyKSA9PiB2b2lkXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVXNlclR5cGVzIGV4dGVuZHMgSW5mb1VzZXIge1xuICBwZXJtaXNzaW9uczogUGFydGlhbDxQZXJtaXNzaW9ucz5cbiAgc2V0dGluZ3M/OiB7XG4gICAgYmxvY2tfdGFza193aXRob3V0X3Byb2plY3Q/OiBib29sZWFuXG4gIH1cbiAgcGxhbj86IHtcbiAgICBpZDogbnVtYmVyXG4gICAgc2x1Zzogc3RyaW5nXG4gICAgbmFtZTogc3RyaW5nXG4gICAgY3JlYXRlZF9hdDogc3RyaW5nXG4gICAgdXBkYXRlZF9hdDogc3RyaW5nXG4gICAgZGVsZXRlZF9hdDogc3RyaW5nIHwgbnVsbFxuICAgIGZlYXR1cmVzOiBzdHJpbmdbXVxuICB9XG59XG5cbmNvbnN0IFVzZXJzUXVlcnlDb250ZXh0ID0gY3JlYXRlQ29udGV4dDxVc2Vyc1F1ZXJ5Q29udGV4dFR5cGUgfCB1bmRlZmluZWQ+KHVuZGVmaW5lZClcbmNvbnN0IFVzZXJzVmlld0NvbnRleHQgPSBjcmVhdGVDb250ZXh0PFVzZXJzVmlld0NvbnRleHRUeXBlIHwgdW5kZWZpbmVkPih1bmRlZmluZWQpXG5jb25zdCBVc2Vyc0VkaXRQb3NpdGlvbnNDb250ZXh0ID0gY3JlYXRlQ29udGV4dDxVc2Vyc0VkaXRQb3NpdGlvbnNDb250ZXh0VHlwZSB8IHVuZGVmaW5lZD4odW5kZWZpbmVkKVxuXG5leHBvcnQgY29uc3QgVXNlcnNQcm92aWRlciA9ICh7IGNoaWxkcmVuLCB2aWV3OiBpbml0aWFsVmlldyB9OiB7IGNoaWxkcmVuOiBSZWFjdE5vZGU7IHZpZXc6IFZpZXdUeXBlIH0pID0+IHtcbiAgY29uc3QgW3ZpZXcsIHNldFZpZXddID0gdXNlU3RhdGU8Vmlld1R5cGU+KGluaXRpYWxWaWV3KVxuICBjb25zdCBbaGFzRWRpdFBvc2l0aW9ucywgc2V0SGFzRWRpdFBvc2l0aW9uc10gPSB1c2VTdGF0ZShmYWxzZSlcbiAgY29uc3QgW3VzZXJzVG9FZGl0UG9zaXRpb25zLCBzZXRVc2Vyc1RvRWRpdFBvc2l0aW9uc10gPSB1c2VTdGF0ZTxVc2VyW10+KFtdKVxuICBjb25zdCBbcG9zaXRpb25zLCBzZXRQb3NpdGlvbnNdID0gdXNlU3RhdGU8eyBpZDogbnVtYmVyOyBsYWJlbDogc3RyaW5nOyBjYXRlZ29yeU5hbWU/OiBzdHJpbmcgfVtdPihbXSlcbiAgY29uc3QgeyBoYW5kbGVHZXRVc2VycywgYWJvcnQsIGxvYWRpbmcsIGVycm9yLCB1c2VycywgdG90YWxVc2VycywgY3VycmVudFBhZ2UsIHRvdGFsUGFnZXMgfSA9IHVzZUdldFVzZXJzKClcbiAgY29uc3QgeyBkYXRhOiB0b3RhbFRlYW1zRGF0YSwgaGFuZGxlR2V0VG90YWxUZWFtcyB9ID0gdXNlR2V0VG90YWxUZWFtcygpXG4gIGNvbnN0IHsgZGF0YTogdG90YWxQb3NpdGlvbnNEYXRhLCBoYW5kbGVHZXRUb3RhbFBvc2l0aW9ucyB9ID0gdXNlR2V0VG90YWxQb3NpdGlvbnMoKVxuXG4gIGNvbnN0IFt0b3RhbFRlYW1zRnJvbUdyYXBoLCBzZXRUb3RhbFRlYW1zRnJvbUdyYXBoXSA9IHVzZVN0YXRlKDApXG4gIGNvbnN0IFt0ZWFtc0xpc3RUb3RhbCwgc2V0VGVhbXNMaXN0VG90YWxdID0gdXNlU3RhdGU8bnVtYmVyIHwgbnVsbD4obnVsbClcbiAgY29uc3QgW3RvdGFsUG9zaXRpb25zLCBzZXRUb3RhbFBvc2l0aW9uc10gPSB1c2VTdGF0ZSgwKVxuICBjb25zdCBbdG90YWxVc2Vyc0ZvclRhYnMsIHNldFRvdGFsVXNlcnNGb3JUYWJzXSA9IHVzZVN0YXRlKDApXG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAodmlldyA9PT0gJ3VzZXJzJykge1xuICAgICAgc2V0VG90YWxVc2Vyc0ZvclRhYnModG90YWxVc2VycylcbiAgICB9XG4gIH0sIFt2aWV3LCB0b3RhbFVzZXJzXSlcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGhhbmRsZUdldFRvdGFsVGVhbXMoKVxuICAgIGhhbmRsZUdldFRvdGFsUG9zaXRpb25zKClcbiAgfSwgW2hhbmRsZUdldFRvdGFsVGVhbXMsIGhhbmRsZUdldFRvdGFsUG9zaXRpb25zXSlcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmICh0b3RhbFRlYW1zRGF0YT8uZ2V0VG90YWxUZWFtcyAhPSBudWxsKSB7XG4gICAgICBzZXRUb3RhbFRlYW1zRnJvbUdyYXBoKHRvdGFsVGVhbXNEYXRhLmdldFRvdGFsVGVhbXMudG90YWwpXG4gICAgfVxuICB9LCBbdG90YWxUZWFtc0RhdGFdKVxuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKHRvdGFsUG9zaXRpb25zRGF0YT8udXNlclBvc2l0aW9uQ2F0ZWdvcnlUb3RhbCAhPSBudWxsKSB7XG4gICAgICBzZXRUb3RhbFBvc2l0aW9ucyh0b3RhbFBvc2l0aW9uc0RhdGEudXNlclBvc2l0aW9uQ2F0ZWdvcnlUb3RhbC50b3RhbENhdGVnb3JpZXMpXG4gICAgfVxuICB9LCBbdG90YWxQb3NpdGlvbnNEYXRhXSlcblxuICBjb25zdCBoYW5kbGVTZXRIYXNFZGl0UG9zaXRpb25zID0gdXNlQ2FsbGJhY2soKHZhbHVlOiBib29sZWFuKSA9PiB7XG4gICAgaWYgKCF2YWx1ZSkgc2V0VXNlcnNUb0VkaXRQb3NpdGlvbnMoW10pXG4gICAgc2V0SGFzRWRpdFBvc2l0aW9ucyh2YWx1ZSlcbiAgfSwgW10pXG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAodmlldyAhPT0gJ3VzZXJzJykge1xuICAgICAgc2V0SGFzRWRpdFBvc2l0aW9ucyhmYWxzZSlcbiAgICAgIHNldFVzZXJzVG9FZGl0UG9zaXRpb25zKFtdKVxuICAgIH1cbiAgfSwgW3ZpZXddKVxuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKHZpZXcgPT09ICd1c2VycycgJiYgIWxvYWRpbmcgJiYgdXNlcnM/Lmxlbmd0aCA9PT0gMCAmJiAoaGFzRWRpdFBvc2l0aW9ucyB8fCB1c2Vyc1RvRWRpdFBvc2l0aW9ucy5sZW5ndGggPiAwKSkge1xuICAgICAgc2V0SGFzRWRpdFBvc2l0aW9ucyhmYWxzZSlcbiAgICAgIHNldFVzZXJzVG9FZGl0UG9zaXRpb25zKFtdKVxuICAgIH1cbiAgfSwgW3ZpZXcsIGxvYWRpbmcsIHVzZXJzLCBoYXNFZGl0UG9zaXRpb25zLCB1c2Vyc1RvRWRpdFBvc2l0aW9ucy5sZW5ndGhdKVxuXG4gIGNvbnN0IGhhbmRsZVNldFVzZXJzVG9FZGl0UG9zaXRpb25zID0gdXNlQ2FsbGJhY2soKHZhbHVlOiBVc2VyKSA9PiB7XG4gICAgc2V0VXNlcnNUb0VkaXRQb3NpdGlvbnMocHJldiA9PiB7XG4gICAgICBjb25zdCBleGlzdHMgPSBwcmV2LnNvbWUodXNlciA9PiB1c2VyPy5pZCA9PT0gdmFsdWUuaWQpXG4gICAgICBpZiAoZXhpc3RzKSByZXR1cm4gcHJldi5maWx0ZXIodXNlciA9PiB1c2VyPy5pZCAhPT0gdmFsdWUuaWQpXG4gICAgICByZXR1cm4gWy4uLnByZXYsIHZhbHVlXVxuICAgIH0pXG4gIH0sIFtdKVxuXG4gIGNvbnN0IGhhbmRsZVNldFBvc2l0aW9ucyA9IHVzZUNhbGxiYWNrKChuZXdQb3NpdGlvbnM6IHsgaWQ6IG51bWJlcjsgbGFiZWw6IHN0cmluZzsgY2F0ZWdvcnlOYW1lPzogc3RyaW5nIH1bXSkgPT4ge1xuICAgIHNldFBvc2l0aW9ucyhuZXdQb3NpdGlvbnMpXG4gIH0sIFtdKVxuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKHZpZXcgIT09ICd1c2VycycpIHtcbiAgICAgIGFib3J0KClcbiAgICB9XG4gIH0sIFt2aWV3LCBhYm9ydF0pXG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAodmlldyAhPT0gJ3VzZXJzJykgcmV0dXJuXG5cbiAgICBjb25zdCBjbGVhcmVkID0gY2xlYXJQZXJzaXN0ZWRVc2Vyc05hbWVTZWFyY2goKVxuICAgIHdyaXRlVXNlcnNGaWx0ZXJzVG9VcmwoY2xlYXJlZClcbiAgICBjb25zdCB2ZiA9IGJ1aWxkVmFsdWVzVG9GaWx0ZXJQYXlsb2FkKGNsZWFyZWQpXG5cbiAgICBoYW5kbGVHZXRVc2Vycyh7XG4gICAgICBwYWdlOiAxLFxuICAgICAgc2VhcmNoSW5wdXQ6ICcnLFxuICAgICAgdmFsdWVzVG9GaWx0ZXI6IE9iamVjdC5rZXlzKHZmKS5sZW5ndGggPyB2ZiA6IHVuZGVmaW5lZCxcbiAgICB9KVxuICB9LCBbdmlldywgaGFuZGxlR2V0VXNlcnNdKVxuXG4gIGNvbnN0IHF1ZXJ5VmFsdWUgPSB1c2VNZW1vKFxuICAgICgpID0+ICh7XG4gICAgICB1c2VycyxcbiAgICAgIHRvdGFsVXNlcnMsXG4gICAgICBjdXJyZW50UGFnZSxcbiAgICAgIHRvdGFsUGFnZXMsXG4gICAgICBsb2FkaW5nLFxuICAgICAgZXJyb3IsXG4gICAgICBwb3NpdGlvbnMsXG4gICAgICBoYW5kbGVHZXRVc2VycyxcbiAgICAgIGhhbmRsZVNldFBvc2l0aW9ucyxcbiAgICB9KSxcbiAgICBbdXNlcnMsIHRvdGFsVXNlcnMsIGN1cnJlbnRQYWdlLCBsb2FkaW5nLCBlcnJvciwgcG9zaXRpb25zLCBoYW5kbGVHZXRVc2VycywgaGFuZGxlU2V0UG9zaXRpb25zXVxuICApXG5cbiAgY29uc3QgZWRpdFBvc2l0aW9uc1ZhbHVlID0gdXNlTWVtbyhcbiAgICAoKSA9PiAoe1xuICAgICAgaGFzRWRpdFBvc2l0aW9ucyxcbiAgICAgIGhhbmRsZVNldEhhc0VkaXRQb3NpdGlvbnMsXG4gICAgICB1c2Vyc1RvRWRpdFBvc2l0aW9ucyxcbiAgICAgIGhhbmRsZVNldFVzZXJzVG9FZGl0UG9zaXRpb25zLFxuICAgIH0pLFxuICAgIFtoYXNFZGl0UG9zaXRpb25zLCBoYW5kbGVTZXRIYXNFZGl0UG9zaXRpb25zLCB1c2Vyc1RvRWRpdFBvc2l0aW9ucywgaGFuZGxlU2V0VXNlcnNUb0VkaXRQb3NpdGlvbnNdXG4gIClcblxuICBjb25zdCB2aWV3VmFsdWUgPSB1c2VNZW1vKFxuICAgICgpID0+ICh7XG4gICAgICB2aWV3LFxuICAgICAgc2V0VmlldyxcbiAgICAgIHRvdGFsVXNlcnM6IHRvdGFsVXNlcnNGb3JUYWJzLFxuICAgICAgdG90YWxUZWFtczogdGVhbXNMaXN0VG90YWwgIT09IG51bGwgPyB0ZWFtc0xpc3RUb3RhbCA6IHRvdGFsVGVhbXNGcm9tR3JhcGgsXG4gICAgICB0b3RhbFBvc2l0aW9ucyxcbiAgICAgIHNldFRlYW1zTGlzdFRvdGFsLFxuICAgIH0pLFxuICAgIFt2aWV3LCB0b3RhbFVzZXJzRm9yVGFicywgdGVhbXNMaXN0VG90YWwsIHRvdGFsVGVhbXNGcm9tR3JhcGgsIHRvdGFsUG9zaXRpb25zXVxuICApXG5cbiAgcmV0dXJuIChcbiAgICA8VXNlcnNWaWV3Q29udGV4dC5Qcm92aWRlciB2YWx1ZT17dmlld1ZhbHVlfT5cbiAgICAgIDxVc2Vyc1F1ZXJ5Q29udGV4dC5Qcm92aWRlciB2YWx1ZT17cXVlcnlWYWx1ZX0+XG4gICAgICAgIDxVc2Vyc0VkaXRQb3NpdGlvbnNDb250ZXh0LlByb3ZpZGVyIHZhbHVlPXtlZGl0UG9zaXRpb25zVmFsdWV9PntjaGlsZHJlbn08L1VzZXJzRWRpdFBvc2l0aW9uc0NvbnRleHQuUHJvdmlkZXI+XG4gICAgICA8L1VzZXJzUXVlcnlDb250ZXh0LlByb3ZpZGVyPlxuICAgIDwvVXNlcnNWaWV3Q29udGV4dC5Qcm92aWRlcj5cbiAgKVxufVxuXG5leHBvcnQgY29uc3QgdXNlVXNlcnNRdWVyeSA9ICgpID0+IHtcbiAgY29uc3QgY29udGV4dCA9IHVzZUNvbnRleHQoVXNlcnNRdWVyeUNvbnRleHQpXG4gIGlmIChjb250ZXh0ID09PSB1bmRlZmluZWQpIHRocm93IG5ldyBFcnJvcigndXNlVXNlcnNRdWVyeSBtdXN0IGJlIHVzZWQgd2l0aGluIGEgVXNlcnNQcm92aWRlcicpXG4gIHJldHVybiBjb250ZXh0XG59XG5cbmV4cG9ydCBjb25zdCB1c2VVc2Vyc1ZpZXcgPSAoKSA9PiB7XG4gIGNvbnN0IGNvbnRleHQgPSB1c2VDb250ZXh0KFVzZXJzVmlld0NvbnRleHQpXG4gIGlmIChjb250ZXh0ID09PSB1bmRlZmluZWQpIHRocm93IG5ldyBFcnJvcigndXNlVXNlcnNWaWV3IG11c3QgYmUgdXNlZCB3aXRoaW4gYSBVc2Vyc1Byb3ZpZGVyJylcbiAgcmV0dXJuIGNvbnRleHRcbn1cblxuZXhwb3J0IGNvbnN0IHVzZVVzZXJzRWRpdFBvc2l0aW9ucyA9ICgpID0+IHtcbiAgY29uc3QgY29udGV4dCA9IHVzZUNvbnRleHQoVXNlcnNFZGl0UG9zaXRpb25zQ29udGV4dClcbiAgaWYgKGNvbnRleHQgPT09IHVuZGVmaW5lZCkgdGhyb3cgbmV3IEVycm9yKCd1c2VVc2Vyc0VkaXRQb3NpdGlvbnMgbXVzdCBiZSB1c2VkIHdpdGhpbiBhIFVzZXJzUHJvdmlkZXInKVxuICByZXR1cm4gY29udGV4dFxufVxuXG5leHBvcnQgY29uc3QgdXNlVXNlckluZm8gPSAoKSA9PiB7XG4gIGNvbnN0IGNvbnRleHQgPSB1c2VDb250ZXh0PFVzZXJUeXBlcz4oVXNlckNvbnRleHQpXG4gIGlmIChjb250ZXh0ID09PSB1bmRlZmluZWQpIHRocm93IG5ldyBFcnJvcigndXNlVXNlckluZm8gbXVzdCBiZSB1c2VkIHdpdGhpbiBhIFVzZXJzUHJvdmlkZXInKVxuICByZXR1cm4gY29udGV4dFxufVxuXG5leHBvcnQgY29uc3QgdXNlVXNlcnNDb3VudCA9ICgpID0+IHtcbiAgY29uc3QgY29udGV4dCA9IHVzZUNvbnRleHQoVXNlcnNWaWV3Q29udGV4dClcbiAgaWYgKGNvbnRleHQgPT09IHVuZGVmaW5lZCkgdGhyb3cgbmV3IEVycm9yKCd1c2VVc2Vyc0NvdW50IG11c3QgYmUgdXNlZCB3aXRoaW4gYSBVc2Vyc1Byb3ZpZGVyJylcbiAgcmV0dXJuIHtcbiAgICB0b3RhbFVzZXJzOiBjb250ZXh0LnRvdGFsVXNlcnMsXG4gICAgdG90YWxUZWFtczogY29udGV4dC50b3RhbFRlYW1zLFxuICAgIHRvdGFsUG9zaXRpb25zOiBjb250ZXh0LnRvdGFsUG9zaXRpb25zLFxuICB9XG59XG5cbmV4cG9ydCBjb25zdCB1c2VVc2VycyA9ICgpID0+IHtcbiAgY29uc3QgcXVlcnkgPSB1c2VVc2Vyc1F1ZXJ5KClcbiAgY29uc3Qgdmlld0N0eCA9IHVzZVVzZXJzVmlldygpXG4gIGNvbnN0IGVkaXQgPSB1c2VVc2Vyc0VkaXRQb3NpdGlvbnMoKVxuICBjb25zdCB1c2VySW5mbyA9IHVzZVVzZXJJbmZvKClcbiAgcmV0dXJuIHsgLi4ucXVlcnksIC4uLnZpZXdDdHgsIC4uLmVkaXQsIHVzZXJJbmZvIH1cbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQTtBQUNBO0FBQ0EsU0FBU0EsYUFBYSxFQUFFQyxXQUFXLEVBQUVDLFVBQVUsRUFBRUMsT0FBTyxFQUFhQyxRQUFRLEVBQUVDLFNBQVMsUUFBUSxPQUFPO0FBQ3ZHLFNBQVNDLFdBQVcsUUFBUSxvREFBb0Q7QUFDaEYsU0FBU0MsV0FBVyxRQUFRLHNCQUFzQjtBQUNsRCxTQUFTQyxnQkFBZ0IsUUFBUSwyQkFBMkI7QUFDNUQsU0FBU0Msb0JBQW9CLFFBQVEsK0JBQStCO0FBRXBFLFNBQVNDLDBCQUEwQixFQUFFQyw2QkFBNkIsUUFBUSwrQkFBK0I7QUFDekcsU0FBU0Msc0JBQXNCLFFBQVEsMkJBQTJCO0FBQUEsU0FBQUMsR0FBQSxJQUFBQyxJQUFBO0FBb0VsRSxJQUFNQyxpQkFBaUIsZ0JBQUdmLGFBQWEsQ0FBb0NnQixTQUFTLENBQUM7QUFDckYsSUFBTUMsZ0JBQWdCLGdCQUFHakIsYUFBYSxDQUFtQ2dCLFNBQVMsQ0FBQztBQUNuRixJQUFNRSx5QkFBeUIsZ0JBQUdsQixhQUFhLENBQTRDZ0IsU0FBUyxDQUFDO0FBRXJHLE9BQU8sSUFBTUcsYUFBYSxHQUFHLFNBQWhCQSxhQUFhQSxDQUFBQyxJQUFBLEVBQWlGO0VBQUEsSUFBM0VDLFFBQVEsR0FBQUQsSUFBQSxDQUFSQyxRQUFRO0lBQVFDLFdBQVcsR0FBQUYsSUFBQSxDQUFqQkcsSUFBSTtFQUM1QyxJQUFBQyxTQUFBLEdBQXdCcEIsUUFBUSxDQUFXa0IsV0FBVyxDQUFDO0lBQUFH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
@@ -0,0 +1,21 @@
1
+ import { useCallback, useEffect, useRef } from 'react';
2
+ export var useAbortController = function useAbortController() {
3
+ var controllerRef = useRef(new AbortController());
4
+ var abort = useCallback(function () {
5
+ controllerRef.current.abort();
6
+ controllerRef.current = new AbortController();
7
+ }, []);
8
+ var getSignal = useCallback(function () {
9
+ return controllerRef.current.signal;
10
+ }, []);
11
+ useEffect(function () {
12
+ return function () {
13
+ return controllerRef.current.abort();
14
+ };
15
+ }, []);
16
+ return {
17
+ getSignal: getSignal,
18
+ abort: abort
19
+ };
20
+ };
21
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ1c2VDYWxsYmFjayIsInVzZUVmZmVjdCIsInVzZVJlZiIsInVzZUFib3J0Q29udHJvbGxlciIsImNvbnRyb2xsZXJSZWYiLCJBYm9ydENvbnRyb2xsZXIiLCJhYm9ydCIsImN1cnJlbnQiLCJnZXRTaWduYWwiLCJzaWduYWwiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvaG9va3MvdXNlQWJvcnRDb250cm9sbGVyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHVzZUNhbGxiYWNrLCB1c2VFZmZlY3QsIHVzZVJlZiB9IGZyb20gJ3JlYWN0J1xuXG5leHBvcnQgY29uc3QgdXNlQWJvcnRDb250cm9sbGVyID0gKCkgPT4ge1xuICBjb25zdCBjb250cm9sbGVyUmVmID0gdXNlUmVmKG5ldyBBYm9ydENvbnRyb2xsZXIoKSlcblxuICBjb25zdCBhYm9ydCA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBjb250cm9sbGVyUmVmLmN1cnJlbnQuYWJvcnQoKVxuICAgIGNvbnRyb2xsZXJSZWYuY3VycmVudCA9IG5ldyBBYm9ydENvbnRyb2xsZXIoKVxuICB9LCBbXSlcblxuICBjb25zdCBnZXRTaWduYWwgPSB1c2VDYWxsYmFjaygoKSA9PiBjb250cm9sbGVyUmVmLmN1cnJlbnQuc2lnbmFsLCBbXSlcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIHJldHVybiAoKSA9PiBjb250cm9sbGVyUmVmLmN1cnJlbnQuYWJvcnQoKVxuICB9LCBbXSlcblxuICByZXR1cm4geyBnZXRTaWduYWwsIGFib3J0IH1cbn1cbiJdLCJtYXBwaW5ncyI6IkFBQUEsU0FBU0EsV0FBVyxFQUFFQyxTQUFTLEVBQUVDLE1BQU0sUUFBUSxPQUFPO0FBRXRELE9BQU8sSUFBTUMsa0JBQWtCLEdBQUcsU0FBckJBLGtCQUFrQkEsQ0FBQSxFQUFTO0VBQ3RDLElBQU1DLGFBQWEsR0FBR0YsTUFBTSxDQUFDLElBQUlHLGVBQWUsQ0FBQyxDQUFDLENBQUM7RUFFbkQsSUFBTUMsS0FBSyxHQUFHTixXQUFXLENBQUMsWUFBTTtJQUM5QkksYUFBYSxDQUFDRyxPQUFPLENBQUNELEtBQUssQ0FBQyxDQUFDO0lBQzdCRixhQUFhLENBQUNHLE9BQU8sR0FBRyxJQUFJRixlQUFlLENBQUMsQ0FBQztFQUMvQyxDQUFDLEVBQUUsRUFBRSxDQUFDO0VBRU4sSUFBTUcsU0FBUyxHQUFHUixXQUFXLENBQUM7SUFBQSxPQUFNSSxhQUFhLENBQUNHLE9BQU8sQ0FBQ0UsTUFBTTtFQUFBLEdBQUUsRUFBRSxDQUFDO0VBRXJFUixTQUFTLENBQUMsWUFBTTtJQUNkLE9BQU87TUFBQSxPQUFNRyxhQUFhLENBQUNHLE9BQU8sQ0FBQ0QsS0FBSyxDQUFDLENBQUM7SUFBQTtFQUM1QyxDQUFDLEVBQUUsRUFBRSxDQUFDO0VBRU4sT0FBTztJQUFFRSxTQUFTLEVBQVRBLFNBQVM7SUFBRUYsS0FBSyxFQUFMQTtFQUFNLENBQUM7QUFDN0IsQ0FBQyIsImlnbm9yZUxpc3QiOltdfQ==
@@ -0,0 +1,77 @@
1
+ import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
2
+ import _defineProperty from "@babel/runtime/helpers/defineProperty";
3
+ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
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; }
5
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
6
+ import { useMutation } from '@apollo/client';
7
+ import { ASSIGN_USER_TO_TEAM } from '../query/assignUserToTeam';
8
+ import { useTeams } from '../context/TeamsContext';
9
+ import { apolloReasourceAllocationServiceClient } from '../utils/ApolloMicroServiceClient';
10
+ export var useAssignUserToTeam = function useAssignUserToTeam() {
11
+ var _useTeams = useTeams(),
12
+ teams = _useTeams.teams,
13
+ setTeams = _useTeams.setTeams;
14
+ var _useMutation = useMutation(ASSIGN_USER_TO_TEAM, {
15
+ client: apolloReasourceAllocationServiceClient,
16
+ onCompleted: function onCompleted(dataAssignUser) {
17
+ if (dataAssignUser.assignUserToTeam) {
18
+ var _dataAssignUser$assig = dataAssignUser.assignUserToTeam,
19
+ teamId = _dataAssignUser$assig.teamId,
20
+ user = _dataAssignUser$assig.user;
21
+
22
+ // Actualizar el equipo agregando el usuario
23
+ var updatedTeams = teams.map(function (team) {
24
+ if (+team.id === teamId) {
25
+ // Verificar si el usuario ya existe en el equipo
26
+ var userExists = team.users.some(function (u) {
27
+ return u.id === user.id;
28
+ });
29
+ if (!userExists) {
30
+ return _objectSpread(_objectSpread({}, team), {}, {
31
+ users: [].concat(_toConsumableArray(team.users), [user])
32
+ });
33
+ }
34
+ }
35
+ return team;
36
+ });
37
+ setTeams(updatedTeams);
38
+ window.dispatchEvent(new CustomEvent('snackbar', {
39
+ detail: {
40
+ typeMessage: 'assignUserToTeam',
41
+ severity: 'success',
42
+ show: true
43
+ }
44
+ }));
45
+ }
46
+ },
47
+ onError: function onError() {
48
+ window.dispatchEvent(new CustomEvent('snackbar', {
49
+ detail: {
50
+ typeMessage: 'errorMessage',
51
+ severity: 'error',
52
+ show: true
53
+ }
54
+ }));
55
+ }
56
+ }),
57
+ _useMutation2 = _slicedToArray(_useMutation, 2),
58
+ fetchMutation = _useMutation2[0],
59
+ _useMutation2$ = _useMutation2[1],
60
+ loading = _useMutation2$.loading,
61
+ error = _useMutation2$.error,
62
+ data = _useMutation2$.data;
63
+ var assignUserToTeam = function assignUserToTeam(fields) {
64
+ return fetchMutation({
65
+ variables: {
66
+ fields: fields
67
+ }
68
+ });
69
+ };
70
+ return {
71
+ assignUserToTeam: assignUserToTeam,
72
+ loading: loading,
73
+ error: error,
74
+ data: data
75
+ };
76
+ };
77
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ1c2VNdXRhdGlvbiIsIkFTU0lHTl9VU0VSX1RPX1RFQU0iLCJ1c2VUZWFtcyIsImFwb2xsb1JlYXNvdXJjZUFsbG9jYXRpb25TZXJ2aWNlQ2xpZW50IiwidXNlQXNzaWduVXNlclRvVGVhbSIsIl91c2VUZWFtcyIsInRlYW1zIiwic2V0VGVhbXMiLCJfdXNlTXV0YXRpb24iLCJjbGllbnQiLCJvbkNvbXBsZXRlZCIsImRhdGFBc3NpZ25Vc2VyIiwiYXNzaWduVXNlclRvVGVhbSIsIl9kYXRhQXNzaWduVXNlciRhc3NpZyIsInRlYW1JZCIsInVzZXIiLCJ1cGRhdGVkVGVhbXMiLCJtYXAiLCJ0ZWFtIiwiaWQiLCJ1c2VyRXhpc3RzIiwidXNlcnMiLCJzb21lIiwidSIsIl9vYmplY3RTcHJlYWQiLCJjb25jYXQiLCJfdG9Db25zdW1hYmxlQXJyYXkiLCJ3aW5kb3ciLCJkaXNwYXRjaEV2ZW50IiwiQ3VzdG9tRXZlbnQiLCJkZXRhaWwiLCJ0eXBlTWVzc2FnZSIsInNldmVyaXR5Iiwic2hvdyIsIm9uRXJyb3IiLCJfdXNlTXV0YXRpb24yIiwiX3NsaWNlZFRvQXJyYXkiLCJmZXRjaE11dGF0aW9uIiwiX3VzZU11dGF0aW9uMiQiLCJsb2FkaW5nIiwiZXJyb3IiLCJkYXRhIiwiZmllbGRzIiwidmFyaWFibGVzIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL2hvb2tzL3VzZUFzc2lnblVzZXJUb1RlYW0udHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdXNlTXV0YXRpb24gfSBmcm9tICdAYXBvbGxvL2NsaWVudCdcbmltcG9ydCB7IEFTU0lHTl9VU0VSX1RPX1RFQU0gfSBmcm9tICcuLi9xdWVyeS9hc3NpZ25Vc2VyVG9UZWFtJ1xuaW1wb3J0IHsgdXNlVGVhbXMgfSBmcm9tICcuLi9jb250ZXh0L1RlYW1zQ29udGV4dCdcbmltcG9ydCB7IGFwb2xsb1JlYXNvdXJjZUFsbG9jYXRpb25TZXJ2aWNlQ2xpZW50IH0gZnJvbSAnLi4vdXRpbHMvQXBvbGxvTWljcm9TZXJ2aWNlQ2xpZW50J1xuXG5pbnRlcmZhY2UgQXNzaWduVXNlclRvVGVhbUZpZWxkcyB7XG4gIHNldFVzZXJUZWFtUHJvamVjdDogYm9vbGVhblxuICB1c2VySWQ6IG51bWJlclxuICB0ZWFtSWQ6IG51bWJlclxufVxuXG5leHBvcnQgY29uc3QgdXNlQXNzaWduVXNlclRvVGVhbSA9ICgpID0+IHtcbiAgY29uc3QgeyB0ZWFtcywgc2V0VGVhbXMgfSA9IHVzZVRlYW1zKClcbiAgY29uc3QgW2ZldGNoTXV0YXRpb24sIHsgbG9hZGluZywgZXJyb3IsIGRhdGEgfV0gPSB1c2VNdXRhdGlvbihBU1NJR05fVVNFUl9UT19URUFNLCB7XG4gICAgY2xpZW50OiBhcG9sbG9SZWFzb3VyY2VBbGxvY2F0aW9uU2VydmljZUNsaWVudCxcbiAgICBvbkNvbXBsZXRlZDogZGF0YUFzc2lnblVzZXIgPT4ge1xuICAgICAgaWYgKGRhdGFBc3NpZ25Vc2VyLmFzc2lnblVzZXJUb1RlYW0pIHtcbiAgICAgICAgY29uc3QgeyB0ZWFtSWQsIHVzZXIgfSA9IGRhdGFBc3NpZ25Vc2VyLmFzc2lnblVzZXJUb1RlYW1cblxuICAgICAgICAvLyBBY3R1YWxpemFyIGVsIGVxdWlwbyBhZ3JlZ2FuZG8gZWwgdXN1YXJpb1xuICAgICAgICBjb25zdCB1cGRhdGVkVGVhbXMgPSB0ZWFtcy5tYXAodGVhbSA9PiB7XG4gICAgICAgICAgaWYgKCt0ZWFtLmlkID09PSB0ZWFtSWQpIHtcbiAgICAgICAgICAgIC8vIFZlcmlmaWNhciBzaSBlbCB1c3VhcmlvIHlhIGV4aXN0ZSBlbiBlbCBlcXVpcG9cbiAgICAgICAgICAgIGNvbnN0IHVzZXJFeGlzdHMgPSB0ZWFtLnVzZXJzLnNvbWUodSA9PiB1LmlkID09PSB1c2VyLmlkKVxuICAgICAgICAgICAgaWYgKCF1c2VyRXhpc3RzKSB7XG4gICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgLi4udGVhbSxcbiAgICAgICAgICAgICAgICB1c2VyczogWy4uLnRlYW0udXNlcnMsIHVzZXJdLFxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIHJldHVybiB0ZWFtXG4gICAgICAgIH0pXG5cbiAgICAgICAgc2V0VGVhbXModXBkYXRlZFRlYW1zKVxuICAgICAgICB3aW5kb3cuZGlzcGF0Y2hFdmVudChcbiAgICAgICAgICBuZXcgQ3VzdG9tRXZlbnQoJ3NuYWNrYmFyJywge1xuICAgICAgICAgICAgZGV0YWlsOiB7IHR5cGVNZXNzYWdlOiAnYXNzaWduVXNlclRvVGVhbScsIHNldmVyaXR5OiAnc3VjY2VzcycsIHNob3c6IHRydWUgfSxcbiAgICAgICAgICB9KVxuICAgICAgICApXG4gICAgICB9XG4gICAgfSxcbiAgICBvbkVycm9yOiAoKSA9PiB7XG4gICAgICB3aW5kb3cuZGlzcGF0Y2hFdmVudChcbiAgICAgICAgbmV3IEN1c3RvbUV2ZW50KCdzbmFja2JhcicsIHtcbiAgICAgICAgICBkZXRhaWw6IHsgdHlwZU1lc3NhZ2U6ICdlcnJvck1lc3NhZ2UnLCBzZXZlcml0eTogJ2Vycm9yJywgc2hvdzogdHJ1ZSB9LFxuICAgICAgICB9KVxuICAgICAgKVxuICAgIH0sXG4gIH0pXG5cbiAgY29uc3QgYXNzaWduVXNlclRvVGVhbSA9IChmaWVsZHM6IEFzc2lnblVzZXJUb1RlYW1GaWVsZHMpID0+IHtcbiAgICByZXR1cm4gZmV0Y2hNdXRhdGlvbih7XG4gICAgICB2YXJpYWJsZXM6IHtcbiAgICAgICAgZmllbGRzLFxuICAgICAgfSxcbiAgICB9KVxuICB9XG5cbiAgcmV0dXJuIHtcbiAgICBhc3NpZ25Vc2VyVG9UZWFtLFxuICAgIGxvYWRpbmcsXG4gICAgZXJyb3IsXG4gICAgZGF0YSxcbiAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7OztBQUFBLFNBQVNBLFdBQVcsUUFBUSxnQkFBZ0I7QUFDNUMsU0FBU0MsbUJBQW1CLFFBQVEsMkJBQTJCO0FBQy9ELFNBQVNDLFFBQVEsUUFBUSx5QkFBeUI7QUFDbEQsU0FBU0Msc0NB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
@@ -0,0 +1,103 @@
1
+ import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
+ import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
3
+ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
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; }
5
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
6
+ import { useCallback, useRef, useState } from 'react';
7
+ import { useLazyQueryAdapter } from './useGraphAdapter';
8
+ import { GET_WORKSPACES } from '../query/getWorkspaces';
9
+ import { apolloReasourceAllocationServiceClient } from '../utils/ApolloMicroServiceClient';
10
+ var PER_PAGE = 10;
11
+ var mapWorkspaceRows = function mapWorkspaceRows(rows) {
12
+ return (rows || []).map(function (w) {
13
+ var _w$name;
14
+ return {
15
+ id: Number(w.id),
16
+ name: String((_w$name = w.name) !== null && _w$name !== void 0 ? _w$name : '')
17
+ };
18
+ });
19
+ };
20
+
21
+ /**
22
+ * Workspaces vía GraphQL `workspaces` (GRAPHQL_URL), 10 por página, scroll para página siguiente.
23
+ */
24
+ export var useAssignedWorkspacesFromHost = function useAssignedWorkspacesFromHost(featureEnabled) {
25
+ var _useState = useState([]),
26
+ _useState2 = _slicedToArray(_useState, 2),
27
+ workspacesList = _useState2[0],
28
+ setWorkspacesList = _useState2[1];
29
+ var _useState3 = useState(1),
30
+ _useState4 = _slicedToArray(_useState3, 2),
31
+ currentPage = _useState4[0],
32
+ setCurrentPage = _useState4[1];
33
+ var _useState5 = useState(1),
34
+ _useState6 = _slicedToArray(_useState5, 2),
35
+ lastPage = _useState6[0],
36
+ setLastPage = _useState6[1];
37
+ var featureEnabledRef = useRef(featureEnabled);
38
+ var requestedPageRef = useRef(1);
39
+ var _useLazyQueryAdapter = useLazyQueryAdapter({
40
+ query: GET_WORKSPACES,
41
+ client: apolloReasourceAllocationServiceClient,
42
+ onCompleted: function onCompleted(res) {
43
+ if (!featureEnabledRef.current || !(res !== null && res !== void 0 && res.workspaces)) return;
44
+ var _res$workspaces = res.workspaces,
45
+ page = _res$workspaces.page,
46
+ resLastPage = _res$workspaces.lastPage,
47
+ rows = _res$workspaces.data;
48
+ setCurrentPage(+page);
49
+ setLastPage(+resLastPage);
50
+ var mapped = mapWorkspaceRows(rows || []);
51
+ if (+page === 1) {
52
+ setWorkspacesList(mapped);
53
+ } else {
54
+ setWorkspacesList(function (prev) {
55
+ var existingIds = new Set(prev.map(function (o) {
56
+ return o.id;
57
+ }));
58
+ var newOnes = mapped.filter(function (o) {
59
+ return !existingIds.has(o.id);
60
+ });
61
+ return newOnes.length ? [].concat(_toConsumableArray(prev), _toConsumableArray(newOnes)) : prev;
62
+ });
63
+ }
64
+ },
65
+ onError: function onError() {
66
+ if (!featureEnabledRef.current) return;
67
+ if (requestedPageRef.current === 1) {
68
+ setWorkspacesList([]);
69
+ setCurrentPage(1);
70
+ setLastPage(1);
71
+ }
72
+ }
73
+ }),
74
+ fetchWorkspacesQuery = _useLazyQueryAdapter.handleFetchLazyQuery,
75
+ loading = _useLazyQueryAdapter.loading;
76
+ var handleGetWorkspaces = useCallback(function () {
77
+ var _filter$name;
78
+ var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
79
+ _ref$page = _ref.page,
80
+ page = _ref$page === void 0 ? 1 : _ref$page,
81
+ filter = _ref.filter;
82
+ if (!featureEnabled) return;
83
+ requestedPageRef.current = page;
84
+ fetchWorkspacesQuery({
85
+ variables: _objectSpread({
86
+ page: page,
87
+ perPage: PER_PAGE
88
+ }, filter !== null && filter !== void 0 && (_filter$name = filter.name) !== null && _filter$name !== void 0 && _filter$name.trim() ? {
89
+ filter: {
90
+ name: filter.name.trim()
91
+ }
92
+ } : {})
93
+ });
94
+ }, [featureEnabled, fetchWorkspacesQuery]);
95
+ return {
96
+ workspacesList: workspacesList,
97
+ loading: loading,
98
+ handleGetWorkspaces: handleGetWorkspaces,
99
+ currentPage: currentPage,
100
+ lastPage: lastPage
101
+ };
102
+ };
103
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ1c2VDYWxsYmFjayIsInVzZVJlZiIsInVzZVN0YXRlIiwidXNlTGF6eVF1ZXJ5QWRhcHRlciIsIkdFVF9XT1JLU1BBQ0VTIiwiYXBvbGxvUmVhc291cmNlQWxsb2NhdGlvblNlcnZpY2VDbGllbnQiLCJQRVJfUEFHRSIsIm1hcFdvcmtzcGFjZVJvd3MiLCJyb3dzIiwibWFwIiwidyIsIl93JG5hbWUiLCJpZCIsIk51bWJlciIsIm5hbWUiLCJTdHJpbmciLCJ1c2VBc3NpZ25lZFdvcmtzcGFjZXNGcm9tSG9zdCIsImZlYXR1cmVFbmFibGVkIiwiX3VzZVN0YXRlIiwiX3VzZVN0YXRlMiIsIl9zbGljZWRUb0FycmF5Iiwid29ya3NwYWNlc0xpc3QiLCJzZXRXb3Jrc3BhY2VzTGlzdCIsIl91c2VTdGF0ZTMiLCJfdXNlU3RhdGU0IiwiY3VycmVudFBhZ2UiLCJzZXRDdXJyZW50UGFnZSIsIl91c2VTdGF0ZTUiLCJfdXNlU3RhdGU2IiwibGFzdFBhZ2UiLCJzZXRMYXN0UGFnZSIsImZlYXR1cmVFbmFibGVkUmVmIiwicmVxdWVzdGVkUGFnZVJlZiIsIl91c2VMYXp5UXVlcnlBZGFwdGVyIiwicXVlcnkiLCJjbGllbnQiLCJvbkNvbXBsZXRlZCIsInJlcyIsImN1cnJlbnQiLCJ3b3Jrc3BhY2VzIiwiX3JlcyR3b3Jrc3BhY2VzIiwicGFnZSIsInJlc0xhc3RQYWdlIiwiZGF0YSIsIm1hcHBlZCIsInByZXYiLCJleGlzdGluZ0lkcyIsIlNldCIsIm8iLCJuZXdPbmVzIiwiZmlsdGVyIiwiaGFzIiwibGVuZ3RoIiwiY29uY2F0IiwiX3RvQ29uc3VtYWJsZUFycmF5Iiwib25FcnJvciIsImZldGNoV29ya3NwYWNlc1F1ZXJ5IiwiaGFuZGxlRmV0Y2hMYXp5UXVlcnkiLCJsb2FkaW5nIiwiaGFuZGxlR2V0V29ya3NwYWNlcyIsIl9maWx0ZXIkbmFtZSIsIl9yZWYiLCJhcmd1bWVudHMiLCJ1bmRlZmluZWQiLCJfcmVmJHBhZ2UiLCJ2YXJpYWJsZXMiLCJfb2JqZWN0U3ByZWFkIiwicGVyUGFnZSIsInRyaW0iXSwic291cmNlcyI6WyIuLi8uLi9zcmMvaG9va3MvdXNlQXNzaWduZWRXb3Jrc3BhY2VzRnJvbUhvc3QudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdXNlQ2FsbGJhY2ssIHVzZVJlZiwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCdcbmltcG9ydCB7IHVzZUxhenlRdWVyeUFkYXB0ZXIgfSBmcm9tICcuL3VzZUdyYXBoQWRhcHRlcidcbmltcG9ydCB7IEdFVF9XT1JLU1BBQ0VTIH0gZnJvbSAnLi4vcXVlcnkvZ2V0V29ya3NwYWNlcydcbmltcG9ydCB7IGFwb2xsb1JlYXNvdXJjZUFsbG9jYXRpb25TZXJ2aWNlQ2xpZW50IH0gZnJvbSAnLi4vdXRpbHMvQXBvbGxvTWljcm9TZXJ2aWNlQ2xpZW50J1xuXG5jb25zdCBQRVJfUEFHRSA9IDEwXG5cbnR5cGUgV29ya3NwYWNlT3B0aW9uID0geyBpZDogbnVtYmVyOyBuYW1lOiBzdHJpbmcgfVxuXG50eXBlIFdvcmtzcGFjZXNRdWVyeURhdGEgPSB7XG4gIHdvcmtzcGFjZXM6IHtcbiAgICBwYWdlOiBudW1iZXIgfCBzdHJpbmdcbiAgICBsYXN0UGFnZTogbnVtYmVyIHwgc3RyaW5nXG4gICAgZGF0YTogeyBpZDogbnVtYmVyOyBuYW1lOiBzdHJpbmcgfVtdXG4gIH1cbn1cblxuY29uc3QgbWFwV29ya3NwYWNlUm93cyA9IChyb3dzOiB7IGlkOiBudW1iZXI7IG5hbWU6IHN0cmluZyB9W10pOiBXb3Jrc3BhY2VPcHRpb25bXSA9PlxuICAocm93cyB8fCBbXSkubWFwKHcgPT4gKHtcbiAgICBpZDogTnVtYmVyKHcuaWQpLFxuICAgIG5hbWU6IFN0cmluZyh3Lm5hbWUgPz8gJycpLFxuICB9KSlcblxuLyoqXG4gKiBXb3Jrc3BhY2VzIHbDrWEgR3JhcGhRTCBgd29ya3NwYWNlc2AgKEdSQVBIUUxfVVJMKSwgMTAgcG9yIHDDoWdpbmEsIHNjcm9sbCBwYXJhIHDDoWdpbmEgc2lndWllbnRlLlxuICovXG5leHBvcnQgY29uc3QgdXNlQXNzaWduZWRXb3Jrc3BhY2VzRnJvbUhvc3QgPSAoZmVhdHVyZUVuYWJsZWQ6IGJvb2xlYW4pID0+IHtcbiAgY29uc3QgW3dvcmtzcGFjZXNMaXN0LCBzZXRXb3Jrc3BhY2VzTGlzdF0gPSB1c2VTdGF0ZTxXb3Jrc3BhY2VPcHRpb25bXT4oW10pXG4gIGNvbnN0IFtjdXJyZW50UGFnZSwgc2V0Q3VycmVudFBhZ2VdID0gdXNlU3RhdGUoMSlcbiAgY29uc3QgW2xhc3RQYWdlLCBzZXRMYXN0UGFnZV0gPSB1c2VTdGF0ZSgxKVxuICBjb25zdCBmZWF0dXJlRW5hYmxlZFJlZiA9IHVzZVJlZihmZWF0dXJlRW5hYmxlZClcbiAgY29uc3QgcmVxdWVzdGVkUGFnZVJlZiA9IHVzZVJlZigxKVxuXG4gIGNvbnN0IHsgaGFuZGxlRmV0Y2hMYXp5UXVlcnk6IGZldGNoV29ya3NwYWNlc1F1ZXJ5LCBsb2FkaW5nIH0gPSB1c2VMYXp5UXVlcnlBZGFwdGVyPFdvcmtzcGFjZXNRdWVyeURhdGE+KHtcbiAgICBxdWVyeTogR0VUX1dPUktTUEFDRVMsXG4gICAgY2xpZW50OiBhcG9sbG9SZWFzb3VyY2VBbGxvY2F0aW9uU2VydmljZUNsaWVudCxcbiAgICBvbkNvbXBsZXRlZDogcmVzID0+IHtcbiAgICAgIGlmICghZmVhdHVyZUVuYWJsZWRSZWYuY3VycmVudCB8fCAhcmVzPy53b3Jrc3BhY2VzKSByZXR1cm5cbiAgICAgIGNvbnN0IHsgcGFnZSwgbGFzdFBhZ2U6IHJlc0xhc3RQYWdlLCBkYXRhOiByb3dzIH0gPSByZXMud29ya3NwYWNlc1xuICAgICAgc2V0Q3VycmVudFBhZ2UoK3BhZ2UpXG4gICAgICBzZXRMYXN0UGFnZSgrcmVzTGFzdFBhZ2UpXG4gICAgICBjb25zdCBtYXBwZWQgPSBtYXBXb3Jrc3BhY2VSb3dzKHJvd3MgfHwgW10pXG4gICAgICBpZiAoK3BhZ2UgPT09IDEpIHtcbiAgICAgICAgc2V0V29ya3NwYWNlc0xpc3QobWFwcGVkKVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgc2V0V29ya3NwYWNlc0xpc3QocHJldiA9PiB7XG4gICAgICAgICAgY29uc3QgZXhpc3RpbmdJZHMgPSBuZXcgU2V0KHByZXYubWFwKG8gPT4gby5pZCkpXG4gICAgICAgICAgY29uc3QgbmV3T25lcyA9IG1hcHBlZC5maWx0ZXIobyA9PiAhZXhpc3RpbmdJZHMuaGFzKG8uaWQpKVxuICAgICAgICAgIHJldHVybiBuZXdPbmVzLmxlbmd0aCA/IFsuLi5wcmV2LCAuLi5uZXdPbmVzXSA6IHByZXZcbiAgICAgICAgfSlcbiAgICAgIH1cbiAgICB9LFxuICAgIG9uRXJyb3I6ICgpID0+IHtcbiAgICAgIGlmICghZmVhdHVyZUVuYWJsZWRSZWYuY3VycmVudCkgcmV0dXJuXG4gICAgICBpZiAocmVxdWVzdGVkUGFnZVJlZi5jdXJyZW50ID09PSAxKSB7XG4gICAgICAgIHNldFdvcmtzcGFjZXNMaXN0KFtdKVxuICAgICAgICBzZXRDdXJyZW50UGFnZSgxKVxuICAgICAgICBzZXRMYXN0UGFnZSgxKVxuICAgICAgfVxuICAgIH0sXG4gIH0pXG5cbiAgY29uc3QgaGFuZGxlR2V0V29ya3NwYWNlcyA9IHVzZUNhbGxiYWNrKFxuICAgICh7IHBhZ2UgPSAxLCBmaWx0ZXIgfTogeyBwYWdlPzogbnVtYmVyOyBmaWx0ZXI/OiB7IG5hbWU/OiBzdHJpbmcgfSB9ID0ge30pID0+IHtcbiAgICAgIGlmICghZmVhdHVyZUVuYWJsZWQpIHJldHVyblxuICAgICAgcmVxdWVzdGVkUGFnZVJlZi5jdXJyZW50ID0gcGFnZVxuICAgICAgZmV0Y2hXb3Jrc3BhY2VzUXVlcnkoe1xuICAgICAgICB2YXJpYWJsZXM6IHtcbiAgICAgICAgICBwYWdlLFxuICAgICAgICAgIHBlclBhZ2U6IFBFUl9QQUdFLFxuICAgICAgICAgIC4uLihmaWx0ZXI/Lm5hbWU/LnRyaW0oKSA/IHsgZmlsdGVyOiB7IG5hbWU6IGZpbHRlci5uYW1lLnRyaW0oKSB9IH0gOiB7fSksXG4gICAgICAgIH0sXG4gICAgICB9KVxuICAgIH0sXG4gICAgW2ZlYXR1cmVFbmFibGVkLCBmZXRjaFdvcmtzcGFjZXNRdWVyeV1cbiAgKVxuXG4gIHJldHVybiB7XG4gICAgd29ya3NwYWNlc0xpc3QsXG4gICAgbG9hZGluZyxcbiAgICBoYW5kbGVHZXRXb3Jrc3BhY2VzLFxuICAgIGN1cnJlbnRQYWdlLFxuICAgIGxhc3RQYWdlLFxuICB9XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsU0FBU0EsV0FBVyxFQUFFQyxNQUFNLEVBQUVDLFFBQVEsUUFBUSxPQUFPO0FBQ3JELFNBQVNDLG1CQUFtQixRQUFRLG1CQUFtQjtBQUN2RCxTQUFTQyxjQUFjLFFBQVEsd0JBQXdCO0FBQ3ZELFNBQVNDLHNDQUFzQyxRQUFRLG1DQUFtQztBQUUxRixJQUFNQyxRQUFRLEdBQUcsRUFBRTtBQVluQixJQUFNQyxnQkFBZ0IsR0FBRyxTQUFuQkEsZ0JBQWdCQSxDQUFJQyxJQUFvQztFQUFBLE9BQzVELENBQUNBLElBQUksSUFBSSxFQUFFLEVBQUVDLEdBQUcsQ0FBQyxVQUFBQyxDQUFDO0lBQUEsSUFBQUMsT0FBQTtJQUFBLE9BQUs7TUFDckJDLEVBQUUsRUFBRUMsTUFBTSxDQUFDSCxDQUFDLENBQUNFLEVBQUUsQ0FBQztNQUNoQkUsSUFBSSxFQUFFQyxNQUFNLEVBQUFKLE9BQUEsR0FBQ0QsQ0FBQyxDQUFDSSxJQUFJLGNBQUFILE9BQUEsY0FBQUEsT0FBQSxHQUFJLEVBQUU7SUFDM0IsQ0FBQztFQUFBLENBQUMsQ0FBQztBQUFBOztBQUVMO0FBQ0E7QUFDQTtBQUNBLE9BQU8sSUFBTUssNkJBQTZCLEdBQUcsU0FBaENBLDZCQUE2QkEsQ0FBSUMsY0FBdUIsRUFBSztFQUN4RSxJQUFBQyxTQUFBLEdBQTRDaEIsUUFBUSxDQUFvQixFQUFFLENBQUM7SUFBQWlCLFVBQUEsR0FBQUMsY0FBQSxDQUFBRixTQUFBO0lBQXBFRyxjQUFjLEdBQUFGLFVBQUE7SUFBRUcsaUJBQWlCLEdBQUFILFVBQUE7RUFDeEMsSUFBQUksVUFBQSxHQUFzQ3JCLFFBQVEsQ0FBQyxDQUFDLENBQUM7SUFBQXNC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
@@ -0,0 +1,67 @@
1
+ import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
+ import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
3
+ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
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; }
5
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
6
+ import { useMutation } from '@apollo/client';
7
+ import { CREATE_TEAM } from '../query/createTeam';
8
+ import { GET_TOTAL_TEAMS } from '../query/getTotalTeams';
9
+ import { useTeams } from '../context/TeamsContext';
10
+ import { apolloReasourceAllocationServiceClient } from '../utils/ApolloMicroServiceClient';
11
+ export var useCreateTeam = function useCreateTeam() {
12
+ var _useTeams = useTeams(),
13
+ teams = _useTeams.teams,
14
+ setTeams = _useTeams.setTeams;
15
+ var _useMutation = useMutation(CREATE_TEAM, {
16
+ client: apolloReasourceAllocationServiceClient,
17
+ refetchQueries: [{
18
+ query: GET_TOTAL_TEAMS
19
+ }]
20
+ }),
21
+ _useMutation2 = _slicedToArray(_useMutation, 2),
22
+ fetchMutation = _useMutation2[0],
23
+ _useMutation2$ = _useMutation2[1],
24
+ loading = _useMutation2$.loading,
25
+ error = _useMutation2$.error,
26
+ data = _useMutation2$.data;
27
+ var handleCreateTeam = function handleCreateTeam(fields) {
28
+ fetchMutation({
29
+ variables: {
30
+ fields: fields
31
+ },
32
+ onCompleted: function onCompleted(dataCreateTeam) {
33
+ if (dataCreateTeam.createTeam) {
34
+ setTeams([_objectSpread(_objectSpread({}, dataCreateTeam.createTeam), {}, {
35
+ description: fields.description,
36
+ users: [],
37
+ workspace: null
38
+ })].concat(_toConsumableArray(teams)));
39
+ }
40
+ var detail = {
41
+ typeMessage: "".concat(dataCreateTeam.createTeam ? 'createTeam' : 'errorCreateTeam'),
42
+ severity: "".concat(dataCreateTeam.createTeam ? 'success' : 'error'),
43
+ show: true
44
+ };
45
+ window.dispatchEvent(new CustomEvent('snackbar', {
46
+ detail: detail
47
+ }));
48
+ },
49
+ onError: function onError() {
50
+ window.dispatchEvent(new CustomEvent('snackbar', {
51
+ detail: {
52
+ typeMessage: 'errorCreateTeam',
53
+ severity: 'error',
54
+ show: true
55
+ }
56
+ }));
57
+ }
58
+ });
59
+ };
60
+ return {
61
+ fetchCreateTeam: handleCreateTeam,
62
+ loading: loading,
63
+ error: error,
64
+ data: data
65
+ };
66
+ };
67
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ1c2VNdXRhdGlvbiIsIkNSRUFURV9URUFNIiwiR0VUX1RPVEFMX1RFQU1TIiwidXNlVGVhbXMiLCJhcG9sbG9SZWFzb3VyY2VBbGxvY2F0aW9uU2VydmljZUNsaWVudCIsInVzZUNyZWF0ZVRlYW0iLCJfdXNlVGVhbXMiLCJ0ZWFtcyIsInNldFRlYW1zIiwiX3VzZU11dGF0aW9uIiwiY2xpZW50IiwicmVmZXRjaFF1ZXJpZXMiLCJxdWVyeSIsIl91c2VNdXRhdGlvbjIiLCJfc2xpY2VkVG9BcnJheSIsImZldGNoTXV0YXRpb24iLCJfdXNlTXV0YXRpb24yJCIsImxvYWRpbmciLCJlcnJvciIsImRhdGEiLCJoYW5kbGVDcmVhdGVUZWFtIiwiZmllbGRzIiwidmFyaWFibGVzIiwib25Db21wbGV0ZWQiLCJkYXRhQ3JlYXRlVGVhbSIsImNyZWF0ZVRlYW0iLCJfb2JqZWN0U3ByZWFkIiwiZGVzY3JpcHRpb24iLCJ1c2VycyIsIndvcmtzcGFjZSIsImNvbmNhdCIsIl90b0NvbnN1bWFibGVBcnJheSIsImRldGFpbCIsInR5cGVNZXNzYWdlIiwic2V2ZXJpdHkiLCJzaG93Iiwid2luZG93IiwiZGlzcGF0Y2hFdmVudCIsIkN1c3RvbUV2ZW50Iiwib25FcnJvciIsImZldGNoQ3JlYXRlVGVhbSJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ob29rcy91c2VDcmVhdGVUZWFtcy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB1c2VNdXRhdGlvbiB9IGZyb20gJ0BhcG9sbG8vY2xpZW50J1xuaW1wb3J0IHsgQ1JFQVRFX1RFQU0gfSBmcm9tICcuLi9xdWVyeS9jcmVhdGVUZWFtJ1xuaW1wb3J0IHsgR0VUX1RPVEFMX1RFQU1TIH0gZnJvbSAnLi4vcXVlcnkvZ2V0VG90YWxUZWFtcydcbmltcG9ydCB7IHVzZVRlYW1zIH0gZnJvbSAnLi4vY29udGV4dC9UZWFtc0NvbnRleHQnXG5pbXBvcnQgeyBhcG9sbG9SZWFzb3VyY2VBbGxvY2F0aW9uU2VydmljZUNsaWVudCB9IGZyb20gJy4uL3V0aWxzL0Fwb2xsb01pY3JvU2VydmljZUNsaWVudCdcblxuZXhwb3J0IGNvbnN0IHVzZUNyZWF0ZVRlYW0gPSAoKSA9PiB7XG4gIGNvbnN0IHsgdGVhbXMsIHNldFRlYW1zIH0gPSB1c2VUZWFtcygpXG4gIGNvbnN0IFtmZXRjaE11dGF0aW9uLCB7IGxvYWRpbmcsIGVycm9yLCBkYXRhIH1dID0gdXNlTXV0YXRpb24oQ1JFQVRFX1RFQU0sIHtcbiAgICBjbGllbnQ6IGFwb2xsb1JlYXNvdXJjZUFsbG9jYXRpb25TZXJ2aWNlQ2xpZW50LFxuICAgIHJlZmV0Y2hRdWVyaWVzOiBbeyBxdWVyeTogR0VUX1RPVEFMX1RFQU1TIH1dLFxuICB9KVxuXG4gIGNvbnN0IGhhbmRsZUNyZWF0ZVRlYW0gPSAoZmllbGRzOiB7IG5hbWU6IHN0cmluZzsgZGVzY3JpcHRpb246IHN0cmluZzsgd29ya3NwYWNlSWQ/OiBudW1iZXIgfSkgPT4ge1xuICAgIGZldGNoTXV0YXRpb24oe1xuICAgICAgdmFyaWFibGVzOiB7XG4gICAgICAgIGZpZWxkcyxcbiAgICAgIH0sXG4gICAgICBvbkNvbXBsZXRlZDogZGF0YUNyZWF0ZVRlYW0gPT4ge1xuICAgICAgICBpZiAoZGF0YUNyZWF0ZVRlYW0uY3JlYXRlVGVhbSkge1xuICAgICAgICAgIHNldFRlYW1zKFtcbiAgICAgICAgICAgIHsgLi4uZGF0YUNyZWF0ZVRlYW0uY3JlYXRlVGVhbSwgZGVzY3JpcHRpb246IGZpZWxkcy5kZXNjcmlwdGlvbiwgdXNlcnM6IFtdLCB3b3Jrc3BhY2U6IG51bGwgfSxcbiAgICAgICAgICAgIC4uLnRlYW1zLFxuICAgICAgICAgIF0pXG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgZGV0YWlsID0ge1xuICAgICAgICAgIHR5cGVNZXNzYWdlOiBgJHtkYXRhQ3JlYXRlVGVhbS5jcmVhdGVUZWFtID8gJ2NyZWF0ZVRlYW0nIDogJ2Vycm9yQ3JlYXRlVGVhbSd9YCxcbiAgICAgICAgICBzZXZlcml0eTogYCR7ZGF0YUNyZWF0ZVRlYW0uY3JlYXRlVGVhbSA/ICdzdWNjZXNzJyA6ICdlcnJvcid9YCxcbiAgICAgICAgICBzaG93OiB0cnVlLFxuICAgICAgICB9XG4gICAgICAgIHdpbmRvdy5kaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudCgnc25hY2tiYXInLCB7IGRldGFpbCB9KSlcbiAgICAgIH0sXG4gICAgICBvbkVycm9yOiAoKSA9PiB7XG4gICAgICAgIHdpbmRvdy5kaXNwYXRjaEV2ZW50KFxuICAgICAgICAgIG5ldyBDdXN0b21FdmVudCgnc25hY2tiYXInLCB7XG4gICAgICAgICAgICBkZXRhaWw6IHsgdHlwZU1lc3NhZ2U6ICdlcnJvckNyZWF0ZVRlYW0nLCBzZXZlcml0eTogJ2Vycm9yJywgc2hvdzogdHJ1ZSB9LFxuICAgICAgICAgIH0pXG4gICAgICAgIClcbiAgICAgIH0sXG4gICAgfSlcbiAgfVxuXG4gIHJldHVybiB7XG4gICAgZmV0Y2hDcmVhdGVUZWFtOiBoYW5kbGVDcmVhdGVUZWFtLFxuICAgIGxvYWRpbmcsXG4gICAgZXJyb3IsXG4gICAgZGF0YSxcbiAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7OztBQUFBLFNBQVNBLFdBQVcsUUFBUSxnQkFBZ0I7QUFDNUMsU0FBU0MsV0FBVyxRQUFRLHFCQUFxQjtBQUNqRCxTQUFTQyxlQUFlLFFBQVEsd0JBQXdCO0FBQ3hELFNBQVNDLFFBQVEsUUFBUSx5QkFBeUI7QUFDbEQsU0FBU0Msc0NBQXNDLFFBQVEsbUNBQW1DO0FBRTFGLE9BQU8sSUFBTUMsYUFBYSxHQUFHLFNBQWhCQSxhQUFhQSxDQUFBLEVBQVM7RUFDakMsSUFBQUMsU0FBQSxHQUE0QkgsUUFBUSxDQUFDLENBQUM7SUFBOUJJLEtBQUssR0FBQUQsU0FBQSxDQUFMQyxLQUFLO0lBQUVDLFFBQVEsR0FBQUYsU0FBQSxDQUFSRSxRQUFRO0VBQ3ZCLElBQUFDLFlBQUEsR0FBa0RULFdBQVcsQ0FBQ0MsV0FBVyxFQUFFO01BQ3pFUyxNQUFNLEVBQUVOLHNDQUFzQztNQUM5Q08sY0FBYyxFQUFFLENBQUM7UUFBRUMsS0FBSyxFQUFFVjtNQUFnQixDQUFDO0lBQzdDLENBQUMsQ0FBQztJQUFBVyxhQUFBLEdBQUFDLGNBQUEsQ0FBQUwsWUFBQTtJQUhLTSxhQUFhLEdBQUFGLGFBQUE7SUFBQUcsY0FBQSxHQUFBSCxhQUFBO0lBQUlJLE9BQU8sR0FBQUQsY0FBQSxDQUFQQyxPQUFPO0lBQUVDLEtBQUssR0FBQUYsY0FBQSxDQUFMRSxLQUFLO0lBQUVDLElBQUksR0FBQUgsY0FBQSxDQUFKRyxJQUFJO0VBSzVDLElBQU1DLGdCQUFnQixHQUFHLFNBQW5CQSxnQkFBZ0JBLENBQUlDLE1BQW1FLEVBQUs7SUFDaEdOLGFBQWEsQ0FBQztNQUNaTyxTQUFTLEVBQUU7UUFDVEQsTUFBTSxFQUFOQTtNQUNGLENBQUM7TUFDREUsV0FBVyxFQUFFLFNBQWJBLFdBQVdBLENBQUVDLGNBQWMsRUFBSTtRQUM3QixJQUFJQSxjQUFjLENBQUNDLFVBQVUsRUFBRTtVQUM3QmpCLFFBQVEsRUFBQWtCLGFBQUEsQ0FBQUEsYUFBQSxLQUNERixjQUFjLENBQUNDLFVBQVU7WUFBRUUsV0FBVyxFQUFFTixNQUFNLENBQUNNLFdBQVc7WUFBRUMsS0FBSyxFQUFFLEVBQUU7WUFBRUMsU0FBUyxFQUFFO1VBQUksSUFBQUMsTUFBQSxDQUFBQyxrQkFBQSxDQUN4RnhCLEtBQUssRUFDVCxDQUFDO1FBQ0o7UUFDQSxJQUFNeUIsTUFBTSxHQUFHO1VBQ2JDLFdBQVcsS0FBQUgsTUFBQSxDQUFLTixjQUFjLENBQUNDLFVBQVUsR0FBRyxZQUFZLEdBQUcsaUJBQWlCLENBQUU7VUFDOUVTLFFBQVEsS0FBQUosTUFBQSxDQUFLTixjQUFjLENBQUNDLFVBQVUsR0FBRyxTQUFTLEdBQUcsT0FBTyxDQUFFO1VBQzlEVSxJQUFJLEVBQUU7UUFDUixDQUFDO1FBQ0RDLE1BQU0sQ0FBQ0MsYUFBYSxDQUFDLElBQUlDLFdBQVcsQ0FBQyxVQUFVLEVBQUU7VUFBRU4sTUFBTSxFQUFOQTtRQUFPLENBQUMsQ0FBQyxDQUFDO01BQy9ELENBQUM7TUFDRE8sT0FBTyxFQUFFLFNBQVRBLE9BQU9BLENBQUEsRUFBUTtRQUNiSCxNQUFNLENBQUNDLGFBQWEsQ0FDbEIsSUFBSUMsV0FBVyxDQUFDLFVBQVUsRUFBRTtVQUMxQk4sTUFBTSxFQUFFO1lBQUVDLFdBQVcsRUFBRSxpQkFBaUI7WUFBRUMsUUFBUSxFQUFFLE9BQU87WUFBRUMsSUFBSSxFQUFFO1VBQUs7UUFDMUUsQ0FBQyxDQUNILENBQUM7TUFDSDtJQUNGLENBQUMsQ0FBQztFQUNKLENBQUM7RUFFRCxPQUFPO0lBQ0xLLGVBQWUsRUFBRXBCLGdCQUFnQjtJQUNqQ0gsT0FBTyxFQUFQQSxPQUFPO0lBQ1BDLEtBQUssRUFBTEEsS0FBSztJQUNMQyxJQUFJLEVBQUpBO0VBQ0YsQ0FBQztBQUNILENBQUMiLCJpZ25vcmVMaXN0IjpbXX0=
@@ -0,0 +1,18 @@
1
+ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
2
+ import { useState, useEffect } from 'react';
3
+ export function useDebounce(value, delay) {
4
+ var _useState = useState(value),
5
+ _useState2 = _slicedToArray(_useState, 2),
6
+ debouncedValue = _useState2[0],
7
+ setDebouncedValue = _useState2[1];
8
+ useEffect(function () {
9
+ var timer = setTimeout(function () {
10
+ setDebouncedValue(value);
11
+ }, delay);
12
+ return function () {
13
+ clearTimeout(timer);
14
+ };
15
+ }, [value, delay]);
16
+ return debouncedValue;
17
+ }
18
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ1c2VTdGF0ZSIsInVzZUVmZmVjdCIsInVzZURlYm91bmNlIiwidmFsdWUiLCJkZWxheSIsIl91c2VTdGF0ZSIsIl91c2VTdGF0ZTIiLCJfc2xpY2VkVG9BcnJheSIsImRlYm91bmNlZFZhbHVlIiwic2V0RGVib3VuY2VkVmFsdWUiLCJ0aW1lciIsInNldFRpbWVvdXQiLCJjbGVhclRpbWVvdXQiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvaG9va3MvdXNlRGVib3VuY2UudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdXNlU3RhdGUsIHVzZUVmZmVjdCB9IGZyb20gJ3JlYWN0J1xuXG5leHBvcnQgZnVuY3Rpb24gdXNlRGVib3VuY2U8VD4odmFsdWU6IFQsIGRlbGF5OiBudW1iZXIpOiBUIHtcbiAgY29uc3QgW2RlYm91bmNlZFZhbHVlLCBzZXREZWJvdW5jZWRWYWx1ZV0gPSB1c2VTdGF0ZTxUPih2YWx1ZSlcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGNvbnN0IHRpbWVyID0gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICBzZXREZWJvdW5jZWRWYWx1ZSh2YWx1ZSlcbiAgICB9LCBkZWxheSlcblxuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICBjbGVhclRpbWVvdXQodGltZXIpXG4gICAgfVxuICB9LCBbdmFsdWUsIGRlbGF5XSlcblxuICByZXR1cm4gZGVib3VuY2VkVmFsdWVcbn1cbiJdLCJtYXBwaW5ncyI6IjtBQUFBLFNBQVNBLFFBQVEsRUFBRUMsU0FBUyxRQUFRLE9BQU87QUFFM0MsT0FBTyxTQUFTQyxXQUFXQSxDQUFJQyxLQUFRLEVBQUVDLEtBQWEsRUFBSztFQUN6RCxJQUFBQyxTQUFBLEdBQTRDTCxRQUFRLENBQUlHLEtBQUssQ0FBQztJQUFBRyxVQUFBLEdBQUFDLGNBQUEsQ0FBQUYsU0FBQTtJQUF2REcsY0FBYyxHQUFBRixVQUFBO0lBQUVHLGlCQUFpQixHQUFBSCxVQUFBO0VBRXhDTCxTQUFTLENBQUMsWUFBTTtJQUNkLElBQU1TLEtBQUssR0FBR0MsVUFBVSxDQUFDLFlBQU07TUFDN0JGLGlCQUFpQixDQUFDTixLQUFLLENBQUM7SUFDMUIsQ0FBQyxFQUFFQyxLQUFLLENBQUM7SUFFVCxPQUFPLFlBQU07TUFDWFEsWUFBWSxDQUFDRixLQUFLLENBQUM7SUFDckIsQ0FBQztFQUNILENBQUMsRUFBRSxDQUFDUCxLQUFLLEVBQUVDLEtBQUssQ0FBQyxDQUFDO0VBRWxCLE9BQU9JLGNBQWM7QUFDdkIiLCJpZ25vcmVMaXN0IjpbXX0=
@@ -0,0 +1,27 @@
1
+ import { useCallback, useEffect, useRef } from 'react';
2
+
3
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
4
+ export function useDebouncedCallback(callback, delay) {
5
+ var callbackRef = useRef(callback);
6
+ var timerRef = useRef(null);
7
+
8
+ // Siempre apunta al callback más reciente sin reiniciar el timer
9
+ callbackRef.current = callback;
10
+
11
+ // Limpia el timer pendiente al desmontar
12
+ useEffect(function () {
13
+ return function () {
14
+ if (timerRef.current !== null) clearTimeout(timerRef.current);
15
+ };
16
+ }, []);
17
+ return useCallback(function () {
18
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
19
+ args[_key] = arguments[_key];
20
+ }
21
+ if (timerRef.current !== null) clearTimeout(timerRef.current);
22
+ timerRef.current = setTimeout(function () {
23
+ callbackRef.current.apply(callbackRef, args);
24
+ }, delay);
25
+ }, [delay]);
26
+ }
27
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ1c2VDYWxsYmFjayIsInVzZUVmZmVjdCIsInVzZVJlZiIsInVzZURlYm91bmNlZENhbGxiYWNrIiwiY2FsbGJhY2siLCJkZWxheSIsImNhbGxiYWNrUmVmIiwidGltZXJSZWYiLCJjdXJyZW50IiwiY2xlYXJUaW1lb3V0IiwiX2xlbiIsImFyZ3VtZW50cyIsImxlbmd0aCIsImFyZ3MiLCJBcnJheSIsIl9rZXkiLCJzZXRUaW1lb3V0IiwiYXBwbHkiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvaG9va3MvdXNlRGVib3VuY2VkQ2FsbGJhY2sudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdXNlQ2FsbGJhY2ssIHVzZUVmZmVjdCwgdXNlUmVmIH0gZnJvbSAncmVhY3QnXG5cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG5leHBvcnQgZnVuY3Rpb24gdXNlRGVib3VuY2VkQ2FsbGJhY2s8VCBleHRlbmRzICguLi5hcmdzOiBhbnlbXSkgPT4gYW55PihcbiAgY2FsbGJhY2s6IFQsXG4gIGRlbGF5OiBudW1iZXJcbik6ICguLi5hcmdzOiBQYXJhbWV0ZXJzPFQ+KSA9PiB2b2lkIHtcbiAgY29uc3QgY2FsbGJhY2tSZWYgPSB1c2VSZWY8VD4oY2FsbGJhY2spXG4gIGNvbnN0IHRpbWVyUmVmID0gdXNlUmVmPFJldHVyblR5cGU8dHlwZW9mIHNldFRpbWVvdXQ+IHwgbnVsbD4obnVsbClcblxuICAvLyBTaWVtcHJlIGFwdW50YSBhbCBjYWxsYmFjayBtw6FzIHJlY2llbnRlIHNpbiByZWluaWNpYXIgZWwgdGltZXJcbiAgY2FsbGJhY2tSZWYuY3VycmVudCA9IGNhbGxiYWNrXG5cbiAgLy8gTGltcGlhIGVsIHRpbWVyIHBlbmRpZW50ZSBhbCBkZXNtb250YXJcbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgaWYgKHRpbWVyUmVmLmN1cnJlbnQgIT09IG51bGwpIGNsZWFyVGltZW91dCh0aW1lclJlZi5jdXJyZW50KVxuICAgIH1cbiAgfSwgW10pXG5cbiAgcmV0dXJuIHVzZUNhbGxiYWNrKFxuICAgICguLi5hcmdzOiBQYXJhbWV0ZXJzPFQ+KSA9PiB7XG4gICAgICBpZiAodGltZXJSZWYuY3VycmVudCAhPT0gbnVsbCkgY2xlYXJUaW1lb3V0KHRpbWVyUmVmLmN1cnJlbnQpXG4gICAgICB0aW1lclJlZi5jdXJyZW50ID0gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIGNhbGxiYWNrUmVmLmN1cnJlbnQoLi4uYXJncylcbiAgICAgIH0sIGRlbGF5KVxuICAgIH0sXG4gICAgW2RlbGF5XVxuICApXG59XG4iXSwibWFwcGluZ3MiOiJBQUFBLFNBQVNBLFdBQVcsRUFBRUMsU0FBUyxFQUFFQyxNQUFNLFFBQVEsT0FBTzs7QUFFdEQ7QUFDQSxPQUFPLFNBQVNDLG9CQUFvQkEsQ0FDbENDLFFBQVcsRUFDWEMsS0FBYSxFQUNxQjtFQUNsQyxJQUFNQyxXQUFXLEdBQUdKLE1BQU0sQ0FBSUUsUUFBUSxDQUFDO0VBQ3ZDLElBQU1HLFFBQVEsR0FBR0wsTUFBTSxDQUF1QyxJQUFJLENBQUM7O0VBRW5FO0VBQ0FJLFdBQVcsQ0FBQ0UsT0FBTyxHQUFHSixRQUFROztFQUU5QjtFQUNBSCxTQUFTLENBQUMsWUFBTTtJQUNkLE9BQU8sWUFBTTtNQUNYLElBQUlNLFFBQVEsQ0FBQ0MsT0FBTyxLQUFLLElBQUksRUFBRUMsWUFBWSxDQUFDRixRQUFRLENBQUNDLE9BQU8sQ0FBQztJQUMvRCxDQUFDO0VBQ0gsQ0FBQyxFQUFFLEVBQUUsQ0FBQztFQUVOLE9BQU9SLFdBQVcsQ0FDaEIsWUFBNEI7SUFBQSxTQUFBVSxJQUFBLEdBQUFDLFNBQUEsQ0FBQUMsTUFBQSxFQUF4QkMsSUFBSSxPQUFBQyxLQUFBLENBQUFKLElBQUEsR0FBQUssSUFBQSxNQUFBQSxJQUFBLEdBQUFMLElBQUEsRUFBQUssSUFBQTtNQUFKRixJQUFJLENBQUFFLElBQUEsSUFBQUosU0FBQSxDQUFBSSxJQUFBO0lBQUE7SUFDTixJQUFJUixRQUFRLENBQUNDLE9BQU8sS0FBSyxJQUFJLEVBQUVDLFlBQVksQ0FBQ0YsUUFBUSxDQUFDQyxPQUFPLENBQUM7SUFDN0RELFFBQVEsQ0FBQ0MsT0FBTyxHQUFHUSxVQUFVLENBQUMsWUFBTTtNQUNsQ1YsV0FBVyxDQUFDRSxPQUFPLENBQUFTLEtBQUEsQ0FBbkJYLFdBQVcsRUFBWU8sSUFBSSxDQUFDO0lBQzlCLENBQUMsRUFBRVIsS0FBSyxDQUFDO0VBQ1gsQ0FBQyxFQUNELENBQUNBLEtBQUssQ0FDUixDQUFDO0FBQ0giLCJpZ25vcmVMaXN0IjpbXX0=