@replyke/core 6.1.1-beta.0 → 6.2.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (259) hide show
  1. package/dist/cjs/context/index.d.ts +1 -0
  2. package/dist/cjs/context/index.js +3 -1
  3. package/dist/cjs/context/index.js.map +1 -1
  4. package/dist/cjs/context/space-context.d.ts +9 -0
  5. package/dist/cjs/context/space-context.js +35 -0
  6. package/dist/cjs/context/space-context.js.map +1 -0
  7. package/dist/cjs/hooks/crypto/useSignTestingJwt.d.ts +1 -2
  8. package/dist/cjs/hooks/crypto/useSignTestingJwt.js +17 -10
  9. package/dist/cjs/hooks/crypto/useSignTestingJwt.js.map +1 -1
  10. package/dist/cjs/hooks/projects/useProjectData.js +1 -1
  11. package/dist/cjs/hooks/projects/useProjectData.js.map +1 -1
  12. package/dist/cjs/hooks/reports/index.d.ts +3 -0
  13. package/dist/cjs/hooks/reports/index.js +7 -1
  14. package/dist/cjs/hooks/reports/index.js.map +1 -1
  15. package/dist/cjs/hooks/reports/useFetchSpaceReports.d.ts +38 -0
  16. package/dist/cjs/hooks/reports/useFetchSpaceReports.js +96 -0
  17. package/dist/cjs/hooks/reports/useFetchSpaceReports.js.map +1 -0
  18. package/dist/cjs/hooks/reports/useHandleSpaceCommentReport.d.ts +30 -0
  19. package/dist/cjs/hooks/reports/useHandleSpaceCommentReport.js +92 -0
  20. package/dist/cjs/hooks/reports/useHandleSpaceCommentReport.js.map +1 -0
  21. package/dist/cjs/hooks/reports/useHandleSpaceEntityReport.d.ts +32 -0
  22. package/dist/cjs/hooks/reports/useHandleSpaceEntityReport.js +94 -0
  23. package/dist/cjs/hooks/reports/useHandleSpaceEntityReport.js.map +1 -0
  24. package/dist/cjs/hooks/space-lists/index.d.ts +3 -0
  25. package/dist/cjs/hooks/space-lists/index.js +11 -0
  26. package/dist/cjs/hooks/space-lists/index.js.map +1 -0
  27. package/dist/cjs/hooks/space-lists/useSpaceList.d.ts +36 -0
  28. package/dist/cjs/hooks/space-lists/useSpaceList.js +293 -0
  29. package/dist/cjs/hooks/space-lists/useSpaceList.js.map +1 -0
  30. package/dist/cjs/hooks/space-lists/useSpaceListActions.d.ts +33 -0
  31. package/dist/cjs/hooks/space-lists/useSpaceListActions.js +210 -0
  32. package/dist/cjs/hooks/space-lists/useSpaceListActions.js.map +1 -0
  33. package/dist/cjs/hooks/spaces/index.d.ts +22 -0
  34. package/dist/cjs/hooks/spaces/index.js +51 -0
  35. package/dist/cjs/hooks/spaces/index.js.map +1 -0
  36. package/dist/cjs/hooks/spaces/useApproveMember.d.ts +7 -0
  37. package/dist/cjs/hooks/spaces/useApproveMember.js +71 -0
  38. package/dist/cjs/hooks/spaces/useApproveMember.js.map +1 -0
  39. package/dist/cjs/hooks/spaces/useCreateSpace.d.ts +15 -0
  40. package/dist/cjs/hooks/spaces/useCreateSpace.js +70 -0
  41. package/dist/cjs/hooks/spaces/useCreateSpace.js.map +1 -0
  42. package/dist/cjs/hooks/spaces/useDeclineMember.d.ts +7 -0
  43. package/dist/cjs/hooks/spaces/useDeclineMember.js +71 -0
  44. package/dist/cjs/hooks/spaces/useDeclineMember.js.map +1 -0
  45. package/dist/cjs/hooks/spaces/useDeleteSpace.d.ts +5 -0
  46. package/dist/cjs/hooks/spaces/useDeleteSpace.js +71 -0
  47. package/dist/cjs/hooks/spaces/useDeleteSpace.js.map +1 -0
  48. package/dist/cjs/hooks/spaces/useFetchMySpaces.d.ts +8 -0
  49. package/dist/cjs/hooks/spaces/useFetchMySpaces.js +85 -0
  50. package/dist/cjs/hooks/spaces/useFetchMySpaces.js.map +1 -0
  51. package/dist/cjs/hooks/spaces/useFetchSpace.d.ts +5 -0
  52. package/dist/cjs/hooks/spaces/useFetchSpace.js +71 -0
  53. package/dist/cjs/hooks/spaces/useFetchSpace.js.map +1 -0
  54. package/dist/cjs/hooks/spaces/useFetchSpaceBreadcrumb.d.ts +5 -0
  55. package/dist/cjs/hooks/spaces/useFetchSpaceBreadcrumb.js +71 -0
  56. package/dist/cjs/hooks/spaces/useFetchSpaceBreadcrumb.js.map +1 -0
  57. package/dist/cjs/hooks/spaces/useFetchSpaceByShortId.d.ts +5 -0
  58. package/dist/cjs/hooks/spaces/useFetchSpaceByShortId.js +71 -0
  59. package/dist/cjs/hooks/spaces/useFetchSpaceByShortId.js.map +1 -0
  60. package/dist/cjs/hooks/spaces/useFetchSpaceBySlug.d.ts +5 -0
  61. package/dist/cjs/hooks/spaces/useFetchSpaceBySlug.js +71 -0
  62. package/dist/cjs/hooks/spaces/useFetchSpaceBySlug.js.map +1 -0
  63. package/dist/cjs/hooks/spaces/useFetchSpaceChildren.d.ts +8 -0
  64. package/dist/cjs/hooks/spaces/useFetchSpaceChildren.js +70 -0
  65. package/dist/cjs/hooks/spaces/useFetchSpaceChildren.js.map +1 -0
  66. package/dist/cjs/hooks/spaces/useFetchSpaceMembers.d.ts +10 -0
  67. package/dist/cjs/hooks/spaces/useFetchSpaceMembers.js +82 -0
  68. package/dist/cjs/hooks/spaces/useFetchSpaceMembers.js.map +1 -0
  69. package/dist/cjs/hooks/spaces/useJoinSpace.d.ts +5 -0
  70. package/dist/cjs/hooks/spaces/useJoinSpace.js +71 -0
  71. package/dist/cjs/hooks/spaces/useJoinSpace.js.map +1 -0
  72. package/dist/cjs/hooks/spaces/useLeaveSpace.d.ts +5 -0
  73. package/dist/cjs/hooks/spaces/useLeaveSpace.js +71 -0
  74. package/dist/cjs/hooks/spaces/useLeaveSpace.js.map +1 -0
  75. package/dist/cjs/hooks/spaces/useRemoveMember.d.ts +9 -0
  76. package/dist/cjs/hooks/spaces/useRemoveMember.js +71 -0
  77. package/dist/cjs/hooks/spaces/useRemoveMember.js.map +1 -0
  78. package/dist/cjs/hooks/spaces/useSpace.d.ts +3 -0
  79. package/dist/cjs/hooks/spaces/useSpace.js +13 -0
  80. package/dist/cjs/hooks/spaces/useSpace.js.map +1 -0
  81. package/dist/cjs/hooks/spaces/useSpaceData.d.ts +32 -0
  82. package/dist/cjs/hooks/spaces/useSpaceData.js +358 -0
  83. package/dist/cjs/hooks/spaces/useSpaceData.js.map +1 -0
  84. package/dist/cjs/hooks/spaces/useSpacePermissions.d.ts +18 -0
  85. package/dist/cjs/hooks/spaces/useSpacePermissions.js +53 -0
  86. package/dist/cjs/hooks/spaces/useSpacePermissions.js.map +1 -0
  87. package/dist/cjs/hooks/spaces/useUpdateMemberRole.d.ts +9 -0
  88. package/dist/cjs/hooks/spaces/useUpdateMemberRole.js +71 -0
  89. package/dist/cjs/hooks/spaces/useUpdateMemberRole.js.map +1 -0
  90. package/dist/cjs/hooks/spaces/useUpdateSpace.d.ts +17 -0
  91. package/dist/cjs/hooks/spaces/useUpdateSpace.js +71 -0
  92. package/dist/cjs/hooks/spaces/useUpdateSpace.js.map +1 -0
  93. package/dist/cjs/index.d.ts +10 -1
  94. package/dist/cjs/index.js +35 -2
  95. package/dist/cjs/index.js.map +1 -1
  96. package/dist/cjs/interfaces/SpaceBreadcrumb.d.ts +5 -0
  97. package/dist/cjs/interfaces/SpaceBreadcrumb.js +3 -0
  98. package/dist/cjs/interfaces/SpaceBreadcrumb.js.map +1 -0
  99. package/dist/cjs/interfaces/SpaceListSortByOptions.d.ts +7 -0
  100. package/dist/cjs/interfaces/SpaceListSortByOptions.js +3 -0
  101. package/dist/cjs/interfaces/SpaceListSortByOptions.js.map +1 -0
  102. package/dist/cjs/interfaces/models/Space.d.ts +122 -0
  103. package/dist/cjs/interfaces/models/Space.js +3 -0
  104. package/dist/cjs/interfaces/models/Space.js.map +1 -0
  105. package/dist/cjs/interfaces/models/SpaceMember.d.ts +27 -0
  106. package/dist/cjs/interfaces/models/SpaceMember.js +3 -0
  107. package/dist/cjs/interfaces/models/SpaceMember.js.map +1 -0
  108. package/dist/cjs/interfaces/models/User.d.ts +1 -1
  109. package/dist/cjs/store/api/appNotificationsApi.d.ts +741 -221
  110. package/dist/cjs/store/api/baseApi.d.ts +1 -1
  111. package/dist/cjs/store/api/baseApi.js +2 -0
  112. package/dist/cjs/store/api/baseApi.js.map +1 -1
  113. package/dist/cjs/store/api/entityListsApi.d.ts +387 -127
  114. package/dist/cjs/store/api/listsApi.d.ts +786 -266
  115. package/dist/cjs/store/api/spacesApi.d.ts +10750 -0
  116. package/dist/cjs/store/api/spacesApi.js +501 -0
  117. package/dist/cjs/store/api/spacesApi.js.map +1 -0
  118. package/dist/cjs/store/api/userApi.d.ts +3 -3
  119. package/dist/cjs/store/index.d.ts +4 -2
  120. package/dist/cjs/store/rootReducer.d.ts +4 -2
  121. package/dist/cjs/store/rootReducer.js +2 -0
  122. package/dist/cjs/store/rootReducer.js.map +1 -1
  123. package/dist/cjs/store/slices/appNotificationsSlice.d.ts +2365 -11
  124. package/dist/cjs/store/slices/entityListsSlice.d.ts +1608 -12
  125. package/dist/cjs/store/slices/listsSlice.d.ts +1414 -14
  126. package/dist/cjs/store/slices/spaceListsSlice.d.ts +850 -0
  127. package/dist/cjs/store/slices/spaceListsSlice.js +226 -0
  128. package/dist/cjs/store/slices/spaceListsSlice.js.map +1 -0
  129. package/dist/cjs/store/slices/userSlice.d.ts +248 -8
  130. package/dist/esm/context/index.d.ts +1 -0
  131. package/dist/esm/context/index.js +1 -0
  132. package/dist/esm/context/index.js.map +1 -1
  133. package/dist/esm/context/space-context.d.ts +9 -0
  134. package/dist/esm/context/space-context.js +28 -0
  135. package/dist/esm/context/space-context.js.map +1 -0
  136. package/dist/esm/hooks/crypto/useSignTestingJwt.d.ts +1 -2
  137. package/dist/esm/hooks/crypto/useSignTestingJwt.js +17 -10
  138. package/dist/esm/hooks/crypto/useSignTestingJwt.js.map +1 -1
  139. package/dist/esm/hooks/projects/useProjectData.js +1 -1
  140. package/dist/esm/hooks/projects/useProjectData.js.map +1 -1
  141. package/dist/esm/hooks/reports/index.d.ts +3 -0
  142. package/dist/esm/hooks/reports/index.js +3 -0
  143. package/dist/esm/hooks/reports/index.js.map +1 -1
  144. package/dist/esm/hooks/reports/useFetchSpaceReports.d.ts +38 -0
  145. package/dist/esm/hooks/reports/useFetchSpaceReports.js +91 -0
  146. package/dist/esm/hooks/reports/useFetchSpaceReports.js.map +1 -0
  147. package/dist/esm/hooks/reports/useHandleSpaceCommentReport.d.ts +30 -0
  148. package/dist/esm/hooks/reports/useHandleSpaceCommentReport.js +87 -0
  149. package/dist/esm/hooks/reports/useHandleSpaceCommentReport.js.map +1 -0
  150. package/dist/esm/hooks/reports/useHandleSpaceEntityReport.d.ts +32 -0
  151. package/dist/esm/hooks/reports/useHandleSpaceEntityReport.js +89 -0
  152. package/dist/esm/hooks/reports/useHandleSpaceEntityReport.js.map +1 -0
  153. package/dist/esm/hooks/space-lists/index.d.ts +3 -0
  154. package/dist/esm/hooks/space-lists/index.js +3 -0
  155. package/dist/esm/hooks/space-lists/index.js.map +1 -0
  156. package/dist/esm/hooks/space-lists/useSpaceList.d.ts +36 -0
  157. package/dist/esm/hooks/space-lists/useSpaceList.js +288 -0
  158. package/dist/esm/hooks/space-lists/useSpaceList.js.map +1 -0
  159. package/dist/esm/hooks/space-lists/useSpaceListActions.d.ts +33 -0
  160. package/dist/esm/hooks/space-lists/useSpaceListActions.js +204 -0
  161. package/dist/esm/hooks/space-lists/useSpaceListActions.js.map +1 -0
  162. package/dist/esm/hooks/spaces/index.d.ts +22 -0
  163. package/dist/esm/hooks/spaces/index.js +26 -0
  164. package/dist/esm/hooks/spaces/index.js.map +1 -0
  165. package/dist/esm/hooks/spaces/useApproveMember.d.ts +7 -0
  166. package/dist/esm/hooks/spaces/useApproveMember.js +66 -0
  167. package/dist/esm/hooks/spaces/useApproveMember.js.map +1 -0
  168. package/dist/esm/hooks/spaces/useCreateSpace.d.ts +15 -0
  169. package/dist/esm/hooks/spaces/useCreateSpace.js +65 -0
  170. package/dist/esm/hooks/spaces/useCreateSpace.js.map +1 -0
  171. package/dist/esm/hooks/spaces/useDeclineMember.d.ts +7 -0
  172. package/dist/esm/hooks/spaces/useDeclineMember.js +66 -0
  173. package/dist/esm/hooks/spaces/useDeclineMember.js.map +1 -0
  174. package/dist/esm/hooks/spaces/useDeleteSpace.d.ts +5 -0
  175. package/dist/esm/hooks/spaces/useDeleteSpace.js +66 -0
  176. package/dist/esm/hooks/spaces/useDeleteSpace.js.map +1 -0
  177. package/dist/esm/hooks/spaces/useFetchMySpaces.d.ts +8 -0
  178. package/dist/esm/hooks/spaces/useFetchMySpaces.js +80 -0
  179. package/dist/esm/hooks/spaces/useFetchMySpaces.js.map +1 -0
  180. package/dist/esm/hooks/spaces/useFetchSpace.d.ts +5 -0
  181. package/dist/esm/hooks/spaces/useFetchSpace.js +66 -0
  182. package/dist/esm/hooks/spaces/useFetchSpace.js.map +1 -0
  183. package/dist/esm/hooks/spaces/useFetchSpaceBreadcrumb.d.ts +5 -0
  184. package/dist/esm/hooks/spaces/useFetchSpaceBreadcrumb.js +66 -0
  185. package/dist/esm/hooks/spaces/useFetchSpaceBreadcrumb.js.map +1 -0
  186. package/dist/esm/hooks/spaces/useFetchSpaceByShortId.d.ts +5 -0
  187. package/dist/esm/hooks/spaces/useFetchSpaceByShortId.js +66 -0
  188. package/dist/esm/hooks/spaces/useFetchSpaceByShortId.js.map +1 -0
  189. package/dist/esm/hooks/spaces/useFetchSpaceBySlug.d.ts +5 -0
  190. package/dist/esm/hooks/spaces/useFetchSpaceBySlug.js +66 -0
  191. package/dist/esm/hooks/spaces/useFetchSpaceBySlug.js.map +1 -0
  192. package/dist/esm/hooks/spaces/useFetchSpaceChildren.d.ts +8 -0
  193. package/dist/esm/hooks/spaces/useFetchSpaceChildren.js +65 -0
  194. package/dist/esm/hooks/spaces/useFetchSpaceChildren.js.map +1 -0
  195. package/dist/esm/hooks/spaces/useFetchSpaceMembers.d.ts +10 -0
  196. package/dist/esm/hooks/spaces/useFetchSpaceMembers.js +77 -0
  197. package/dist/esm/hooks/spaces/useFetchSpaceMembers.js.map +1 -0
  198. package/dist/esm/hooks/spaces/useJoinSpace.d.ts +5 -0
  199. package/dist/esm/hooks/spaces/useJoinSpace.js +66 -0
  200. package/dist/esm/hooks/spaces/useJoinSpace.js.map +1 -0
  201. package/dist/esm/hooks/spaces/useLeaveSpace.d.ts +5 -0
  202. package/dist/esm/hooks/spaces/useLeaveSpace.js +66 -0
  203. package/dist/esm/hooks/spaces/useLeaveSpace.js.map +1 -0
  204. package/dist/esm/hooks/spaces/useRemoveMember.d.ts +9 -0
  205. package/dist/esm/hooks/spaces/useRemoveMember.js +66 -0
  206. package/dist/esm/hooks/spaces/useRemoveMember.js.map +1 -0
  207. package/dist/esm/hooks/spaces/useSpace.d.ts +3 -0
  208. package/dist/esm/hooks/spaces/useSpace.js +11 -0
  209. package/dist/esm/hooks/spaces/useSpace.js.map +1 -0
  210. package/dist/esm/hooks/spaces/useSpaceData.d.ts +32 -0
  211. package/dist/esm/hooks/spaces/useSpaceData.js +353 -0
  212. package/dist/esm/hooks/spaces/useSpaceData.js.map +1 -0
  213. package/dist/esm/hooks/spaces/useSpacePermissions.d.ts +18 -0
  214. package/dist/esm/hooks/spaces/useSpacePermissions.js +51 -0
  215. package/dist/esm/hooks/spaces/useSpacePermissions.js.map +1 -0
  216. package/dist/esm/hooks/spaces/useUpdateMemberRole.d.ts +9 -0
  217. package/dist/esm/hooks/spaces/useUpdateMemberRole.js +66 -0
  218. package/dist/esm/hooks/spaces/useUpdateMemberRole.js.map +1 -0
  219. package/dist/esm/hooks/spaces/useUpdateSpace.d.ts +17 -0
  220. package/dist/esm/hooks/spaces/useUpdateSpace.js +66 -0
  221. package/dist/esm/hooks/spaces/useUpdateSpace.js.map +1 -0
  222. package/dist/esm/index.d.ts +10 -1
  223. package/dist/esm/index.js +8 -1
  224. package/dist/esm/index.js.map +1 -1
  225. package/dist/esm/interfaces/SpaceBreadcrumb.d.ts +5 -0
  226. package/dist/esm/interfaces/SpaceBreadcrumb.js +2 -0
  227. package/dist/esm/interfaces/SpaceBreadcrumb.js.map +1 -0
  228. package/dist/esm/interfaces/SpaceListSortByOptions.d.ts +7 -0
  229. package/dist/esm/interfaces/SpaceListSortByOptions.js +2 -0
  230. package/dist/esm/interfaces/SpaceListSortByOptions.js.map +1 -0
  231. package/dist/esm/interfaces/models/Space.d.ts +122 -0
  232. package/dist/esm/interfaces/models/Space.js +2 -0
  233. package/dist/esm/interfaces/models/Space.js.map +1 -0
  234. package/dist/esm/interfaces/models/SpaceMember.d.ts +27 -0
  235. package/dist/esm/interfaces/models/SpaceMember.js +2 -0
  236. package/dist/esm/interfaces/models/SpaceMember.js.map +1 -0
  237. package/dist/esm/interfaces/models/User.d.ts +1 -1
  238. package/dist/esm/store/api/appNotificationsApi.d.ts +741 -221
  239. package/dist/esm/store/api/baseApi.d.ts +1 -1
  240. package/dist/esm/store/api/baseApi.js +2 -0
  241. package/dist/esm/store/api/baseApi.js.map +1 -1
  242. package/dist/esm/store/api/entityListsApi.d.ts +387 -127
  243. package/dist/esm/store/api/listsApi.d.ts +786 -266
  244. package/dist/esm/store/api/spacesApi.d.ts +10750 -0
  245. package/dist/esm/store/api/spacesApi.js +498 -0
  246. package/dist/esm/store/api/spacesApi.js.map +1 -0
  247. package/dist/esm/store/api/userApi.d.ts +3 -3
  248. package/dist/esm/store/index.d.ts +4 -2
  249. package/dist/esm/store/rootReducer.d.ts +4 -2
  250. package/dist/esm/store/rootReducer.js +2 -0
  251. package/dist/esm/store/rootReducer.js.map +1 -1
  252. package/dist/esm/store/slices/appNotificationsSlice.d.ts +2365 -11
  253. package/dist/esm/store/slices/entityListsSlice.d.ts +1608 -12
  254. package/dist/esm/store/slices/listsSlice.d.ts +1414 -14
  255. package/dist/esm/store/slices/spaceListsSlice.d.ts +850 -0
  256. package/dist/esm/store/slices/spaceListsSlice.js +223 -0
  257. package/dist/esm/store/slices/spaceListsSlice.js.map +1 -0
  258. package/dist/esm/store/slices/userSlice.d.ts +248 -8
  259. package/package.json +1 -1
@@ -0,0 +1,36 @@
1
+ import { type SpaceListFilters, type SpaceListConfig, type SpaceListFetchOptions } from "../../store/slices/spaceListsSlice";
2
+ import { Space, ReadingPermission, PostingPermission } from "../../interfaces/models/Space";
3
+ import { SpaceListSortByOptions } from "../../interfaces/SpaceListSortByOptions";
4
+ export interface UseSpaceListProps {
5
+ listId: string;
6
+ }
7
+ export interface UseSpaceListValues {
8
+ spaces: Space[];
9
+ loading: boolean;
10
+ hasMore: boolean;
11
+ sortBy: SpaceListSortByOptions | null;
12
+ search: string | null;
13
+ readingPermission: "anyone" | "members" | null;
14
+ memberOf: boolean;
15
+ parentSpaceId: string | null;
16
+ fetchSpaces: (filters: Partial<SpaceListFilters>, config?: SpaceListConfig, options?: SpaceListFetchOptions) => void;
17
+ loadMore: () => void;
18
+ createSpace: (props: {
19
+ name: string;
20
+ slug?: string | null;
21
+ description?: string | null;
22
+ avatar?: string | null;
23
+ banner?: string | null;
24
+ readingPermission?: ReadingPermission;
25
+ postingPermission?: PostingPermission;
26
+ requireJoinApproval?: boolean;
27
+ metadata?: Record<string, any>;
28
+ parentSpaceId?: string | null;
29
+ insertPosition?: "first" | "last";
30
+ }) => Promise<Space | undefined>;
31
+ deleteSpace: (props: {
32
+ spaceId: string;
33
+ }) => Promise<void>;
34
+ }
35
+ declare function useSpaceList({ listId }: UseSpaceListProps): UseSpaceListValues;
36
+ export default useSpaceList;
@@ -0,0 +1,293 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
14
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
15
+ return new (P || (P = Promise))(function (resolve, reject) {
16
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
17
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
18
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
19
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
20
+ });
21
+ };
22
+ var __generator = (this && this.__generator) || function (thisArg, body) {
23
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
24
+ return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
25
+ function verb(n) { return function (v) { return step([n, v]); }; }
26
+ function step(op) {
27
+ if (f) throw new TypeError("Generator is already executing.");
28
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
29
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
30
+ if (y = 0, t) op = [op[0] & 2, t.value];
31
+ switch (op[0]) {
32
+ case 0: case 1: t = op; break;
33
+ case 4: _.label++; return { value: op[1], done: false };
34
+ case 5: _.label++; y = op[1]; op = [0]; continue;
35
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
36
+ default:
37
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
38
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
39
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
40
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
41
+ if (t[2]) _.ops.pop();
42
+ _.trys.pop(); continue;
43
+ }
44
+ op = body.call(thisArg, _);
45
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
46
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
47
+ }
48
+ };
49
+ var __rest = (this && this.__rest) || function (s, e) {
50
+ var t = {};
51
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
52
+ t[p] = s[p];
53
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
54
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
55
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
56
+ t[p[i]] = s[p[i]];
57
+ }
58
+ return t;
59
+ };
60
+ var __importDefault = (this && this.__importDefault) || function (mod) {
61
+ return (mod && mod.__esModule) ? mod : { "default": mod };
62
+ };
63
+ Object.defineProperty(exports, "__esModule", { value: true });
64
+ var react_1 = require("react");
65
+ var react_redux_1 = require("react-redux");
66
+ var spaceListsSlice_1 = require("../../store/slices/spaceListsSlice");
67
+ var useSpaceListActions_1 = __importDefault(require("./useSpaceListActions"));
68
+ var handleError_1 = require("../../utils/handleError");
69
+ function useSpaceList(_a) {
70
+ var _this = this;
71
+ var listId = _a.listId;
72
+ var dispatch = (0, react_redux_1.useDispatch)();
73
+ // Get state from Redux
74
+ var spaceList = (0, react_redux_1.useSelector)(function (state) {
75
+ return (0, spaceListsSlice_1.selectSpaceList)(state, listId);
76
+ });
77
+ var spaces = (0, react_redux_1.useSelector)(function (state) {
78
+ return (0, spaceListsSlice_1.selectSpaceListSpaces)(state, listId);
79
+ });
80
+ var loading = (0, react_redux_1.useSelector)(function (state) {
81
+ return (0, spaceListsSlice_1.selectSpaceListLoading)(state, listId);
82
+ });
83
+ var hasMore = (0, react_redux_1.useSelector)(function (state) {
84
+ return (0, spaceListsSlice_1.selectSpaceListHasMore)(state, listId);
85
+ });
86
+ var filters = (0, react_redux_1.useSelector)(function (state) {
87
+ return (0, spaceListsSlice_1.selectSpaceListFilters)(state, listId);
88
+ });
89
+ var config = (0, react_redux_1.useSelector)(function (state) {
90
+ return (0, spaceListsSlice_1.selectSpaceListConfig)(state, listId);
91
+ });
92
+ // Get space actions hook
93
+ var spaceActions = (0, useSpaceListActions_1.default)();
94
+ // Debounce timer for filter changes
95
+ var debounceTimer = (0, react_1.useRef)(null);
96
+ // Fetch spaces function (always triggers a fetch)
97
+ var handleFetchSpaces = (0, react_1.useCallback)(function (newFilters, newConfig, options) {
98
+ // Apply config defaults if not provided
99
+ var configWithDefaults = __assign({ limit: 20 }, newConfig);
100
+ // Ensure Redux state is initialized and update filters/config
101
+ dispatch((0, spaceListsSlice_1.initializeList)({ listId: listId }));
102
+ dispatch((0, spaceListsSlice_1.updateFilters)({
103
+ listId: listId,
104
+ filters: newFilters,
105
+ config: configWithDefaults,
106
+ options: options,
107
+ }));
108
+ // Clear spaces immediately if requested
109
+ if (options === null || options === void 0 ? void 0 : options.clearImmediately) {
110
+ dispatch((0, spaceListsSlice_1.setSpaceListSpaces)({ listId: listId, spaces: [], append: false }));
111
+ }
112
+ // Define the fetch logic
113
+ var performFetch = function () { return __awaiter(_this, void 0, void 0, function () {
114
+ var currentConfig, currentState, finalFilters, err_1;
115
+ return __generator(this, function (_a) {
116
+ switch (_a.label) {
117
+ case 0:
118
+ currentConfig = { limit: configWithDefaults.limit };
119
+ currentState = spaceList || {
120
+ sortBy: "newest",
121
+ search: null,
122
+ readingPermission: null,
123
+ memberOf: false,
124
+ parentSpaceId: null,
125
+ };
126
+ finalFilters = __assign({}, currentState);
127
+ // Apply resetUnspecified logic (only reset filter properties)
128
+ if (options === null || options === void 0 ? void 0 : options.resetUnspecified) {
129
+ finalFilters.sortBy = "newest";
130
+ finalFilters.search = null;
131
+ finalFilters.readingPermission = null;
132
+ finalFilters.memberOf = false;
133
+ finalFilters.parentSpaceId = null;
134
+ }
135
+ // Apply new filters
136
+ Object.keys(newFilters).forEach(function (key) {
137
+ if (newFilters[key] !== undefined) {
138
+ finalFilters[key] =
139
+ newFilters[key];
140
+ }
141
+ });
142
+ if (!finalFilters.sortBy)
143
+ return [2 /*return*/]; // sortBy is required
144
+ dispatch((0, spaceListsSlice_1.setSpaceListLoading)({ listId: listId, loading: true }));
145
+ _a.label = 1;
146
+ case 1:
147
+ _a.trys.push([1, 3, , 4]);
148
+ return [4 /*yield*/, spaceActions.fetchSpaces(listId, {
149
+ page: 1,
150
+ // User-controlled filters from Redux state + new filters
151
+ sortBy: finalFilters.sortBy,
152
+ search: finalFilters.search,
153
+ readingPermission: finalFilters.readingPermission,
154
+ memberOf: finalFilters.memberOf,
155
+ parentSpaceId: finalFilters.parentSpaceId,
156
+ // Configuration parameters from current config
157
+ limit: currentConfig.limit,
158
+ })];
159
+ case 2:
160
+ _a.sent();
161
+ return [3 /*break*/, 4];
162
+ case 3:
163
+ err_1 = _a.sent();
164
+ console.error("[SpaceList] Failed to fetch spaces for listId: ".concat(listId), err_1);
165
+ return [3 /*break*/, 4];
166
+ case 4: return [2 /*return*/];
167
+ }
168
+ });
169
+ }); };
170
+ // Execute immediately if requested, otherwise debounce
171
+ // For initial loads (empty filters object), make it immediate by default
172
+ var shouldBeImmediate = (options === null || options === void 0 ? void 0 : options.immediate) || Object.keys(newFilters).length === 0;
173
+ if (shouldBeImmediate) {
174
+ performFetch();
175
+ }
176
+ else {
177
+ // Clear existing debounce timer
178
+ if (debounceTimer.current) {
179
+ clearTimeout(debounceTimer.current);
180
+ }
181
+ // Debounce the actual fetch
182
+ debounceTimer.current = setTimeout(function () {
183
+ performFetch();
184
+ }, 800); // 800ms debounce delay
185
+ }
186
+ }, [dispatch, listId, spaceList, config, spaceActions.fetchSpaces]);
187
+ // Load more function
188
+ var loadMore = (0, react_1.useCallback)(function () { return __awaiter(_this, void 0, void 0, function () {
189
+ var nextPage, err_2;
190
+ return __generator(this, function (_a) {
191
+ switch (_a.label) {
192
+ case 0:
193
+ if (!spaceList || loading || !hasMore)
194
+ return [2 /*return*/];
195
+ // Check if fetchSpaces has been called before (safeguard)
196
+ if (!config) {
197
+ console.error("[SpaceList] loadMore called before fetchSpaces for listId: ".concat(listId, ". ") +
198
+ "fetchSpaces must be called first to initialize configuration.");
199
+ return [2 /*return*/];
200
+ }
201
+ nextPage = spaceList.page + 1;
202
+ dispatch((0, spaceListsSlice_1.incrementPage)(listId));
203
+ _a.label = 1;
204
+ case 1:
205
+ _a.trys.push([1, 3, , 4]);
206
+ return [4 /*yield*/, spaceActions.fetchSpaces(listId, {
207
+ page: nextPage,
208
+ // User-controlled filters from Redux state
209
+ sortBy: spaceList.sortBy,
210
+ search: spaceList.search,
211
+ readingPermission: spaceList.readingPermission,
212
+ memberOf: spaceList.memberOf,
213
+ parentSpaceId: spaceList.parentSpaceId,
214
+ // Configuration parameters from state (single source of truth)
215
+ limit: config.limit,
216
+ })];
217
+ case 2:
218
+ _a.sent();
219
+ return [3 /*break*/, 4];
220
+ case 3:
221
+ err_2 = _a.sent();
222
+ console.error("[SpaceList] Failed to load more spaces for listId: ".concat(listId), err_2);
223
+ return [3 /*break*/, 4];
224
+ case 4: return [2 /*return*/];
225
+ }
226
+ });
227
+ }); }, [dispatch, listId, config, spaceList, loading, hasMore, spaceActions.fetchSpaces]);
228
+ // Create space function
229
+ var createSpace = (0, react_1.useCallback)(function (_a) { return __awaiter(_this, void 0, void 0, function () {
230
+ var newSpace, err_3;
231
+ var insertPosition = _a.insertPosition, restOfProps = __rest(_a, ["insertPosition"]);
232
+ return __generator(this, function (_b) {
233
+ switch (_b.label) {
234
+ case 0:
235
+ _b.trys.push([0, 2, , 3]);
236
+ return [4 /*yield*/, spaceActions.createSpace(listId, __assign(__assign({}, restOfProps), { insertPosition: insertPosition }))];
237
+ case 1:
238
+ newSpace = _b.sent();
239
+ return [2 /*return*/, newSpace];
240
+ case 2:
241
+ err_3 = _b.sent();
242
+ (0, handleError_1.handleError)(err_3, "Failed to create space");
243
+ return [3 /*break*/, 3];
244
+ case 3: return [2 /*return*/];
245
+ }
246
+ });
247
+ }); }, [spaceActions.createSpace, dispatch, listId]);
248
+ // Delete space function
249
+ var deleteSpace = (0, react_1.useCallback)(function (_a) { return __awaiter(_this, [_a], void 0, function (_b) {
250
+ var err_4;
251
+ var spaceId = _b.spaceId;
252
+ return __generator(this, function (_c) {
253
+ switch (_c.label) {
254
+ case 0:
255
+ _c.trys.push([0, 2, , 3]);
256
+ return [4 /*yield*/, spaceActions.deleteSpace(listId, { spaceId: spaceId })];
257
+ case 1:
258
+ _c.sent();
259
+ return [3 /*break*/, 3];
260
+ case 2:
261
+ err_4 = _c.sent();
262
+ (0, handleError_1.handleError)(err_4, "Failed to delete space");
263
+ return [3 /*break*/, 3];
264
+ case 3: return [2 /*return*/];
265
+ }
266
+ });
267
+ }); }, [spaceActions.deleteSpace, dispatch, listId]);
268
+ return (0, react_1.useMemo)(function () { return ({
269
+ spaces: spaces,
270
+ loading: loading,
271
+ hasMore: hasMore,
272
+ sortBy: (filters === null || filters === void 0 ? void 0 : filters.sortBy) || null,
273
+ search: (filters === null || filters === void 0 ? void 0 : filters.search) || null,
274
+ readingPermission: (filters === null || filters === void 0 ? void 0 : filters.readingPermission) || null,
275
+ memberOf: (filters === null || filters === void 0 ? void 0 : filters.memberOf) || false,
276
+ parentSpaceId: (filters === null || filters === void 0 ? void 0 : filters.parentSpaceId) || null,
277
+ fetchSpaces: handleFetchSpaces,
278
+ loadMore: loadMore,
279
+ createSpace: createSpace,
280
+ deleteSpace: deleteSpace,
281
+ }); }, [
282
+ spaces,
283
+ loading,
284
+ hasMore,
285
+ filters,
286
+ handleFetchSpaces,
287
+ loadMore,
288
+ createSpace,
289
+ deleteSpace,
290
+ ]);
291
+ }
292
+ exports.default = useSpaceList;
293
+ //# sourceMappingURL=useSpaceList.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useSpaceList.js","sourceRoot":"","sources":["../../../../src/hooks/space-lists/useSpaceList.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,33 @@
1
+ import type { Space, ReadingPermission, PostingPermission } from "../../interfaces/models/Space";
2
+ import type { SpaceListSortByOptions } from "../../interfaces/SpaceListSortByOptions";
3
+ interface FetchSpacesOptions {
4
+ page: number;
5
+ sortBy: SpaceListSortByOptions;
6
+ search?: string | null;
7
+ readingPermission?: "anyone" | "members" | null;
8
+ memberOf?: boolean;
9
+ parentSpaceId?: string | null;
10
+ limit: number;
11
+ }
12
+ interface CreateSpaceOptions {
13
+ name: string;
14
+ slug?: string | null;
15
+ description?: string | null;
16
+ avatar?: string | null;
17
+ banner?: string | null;
18
+ readingPermission?: ReadingPermission;
19
+ postingPermission?: PostingPermission;
20
+ requireJoinApproval?: boolean;
21
+ metadata?: Record<string, any>;
22
+ parentSpaceId?: string | null;
23
+ insertPosition?: "first" | "last";
24
+ }
25
+ interface DeleteSpaceOptions {
26
+ spaceId: string;
27
+ }
28
+ export declare function useSpaceListActions(): {
29
+ fetchSpaces: (listId: string, options: FetchSpacesOptions) => Promise<Space[] | null>;
30
+ createSpace: (listId: string, options: CreateSpaceOptions) => Promise<Space | undefined>;
31
+ deleteSpace: (listId: string, options: DeleteSpaceOptions) => Promise<void>;
32
+ };
33
+ export default useSpaceListActions;
@@ -0,0 +1,210 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
14
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
15
+ return new (P || (P = Promise))(function (resolve, reject) {
16
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
17
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
18
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
19
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
20
+ });
21
+ };
22
+ var __generator = (this && this.__generator) || function (thisArg, body) {
23
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
24
+ return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
25
+ function verb(n) { return function (v) { return step([n, v]); }; }
26
+ function step(op) {
27
+ if (f) throw new TypeError("Generator is already executing.");
28
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
29
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
30
+ if (y = 0, t) op = [op[0] & 2, t.value];
31
+ switch (op[0]) {
32
+ case 0: case 1: t = op; break;
33
+ case 4: _.label++; return { value: op[1], done: false };
34
+ case 5: _.label++; y = op[1]; op = [0]; continue;
35
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
36
+ default:
37
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
38
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
39
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
40
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
41
+ if (t[2]) _.ops.pop();
42
+ _.trys.pop(); continue;
43
+ }
44
+ op = body.call(thisArg, _);
45
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
46
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
47
+ }
48
+ };
49
+ var __rest = (this && this.__rest) || function (s, e) {
50
+ var t = {};
51
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
52
+ t[p] = s[p];
53
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
54
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
55
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
56
+ t[p[i]] = s[p[i]];
57
+ }
58
+ return t;
59
+ };
60
+ var __importDefault = (this && this.__importDefault) || function (mod) {
61
+ return (mod && mod.__esModule) ? mod : { "default": mod };
62
+ };
63
+ Object.defineProperty(exports, "__esModule", { value: true });
64
+ exports.useSpaceListActions = useSpaceListActions;
65
+ var react_1 = require("react");
66
+ var react_redux_1 = require("react-redux");
67
+ var spaceListsSlice_1 = require("../../store/slices/spaceListsSlice");
68
+ var spacesApi_1 = require("../../store/api/spacesApi");
69
+ var handleError_1 = require("../../utils/handleError");
70
+ var useProject_1 = __importDefault(require("../projects/useProject"));
71
+ function useSpaceListActions() {
72
+ var _this = this;
73
+ var dispatch = (0, react_redux_1.useDispatch)();
74
+ // Get project context
75
+ var projectId = (0, useProject_1.default)().projectId;
76
+ // RTK Query hooks
77
+ var triggerFetchSpaces = (0, spacesApi_1.useLazyFetchSpacesQuery)()[0];
78
+ var createSpaceMutation = (0, spacesApi_1.useCreateSpaceMutation)()[0];
79
+ var deleteSpaceMutation = (0, spacesApi_1.useDeleteSpaceMutation)()[0];
80
+ // Fetch spaces action
81
+ var fetchSpaces = (0, react_1.useCallback)(function (listId, options) { return __awaiter(_this, void 0, void 0, function () {
82
+ var result, append, err_1;
83
+ return __generator(this, function (_a) {
84
+ switch (_a.label) {
85
+ case 0:
86
+ if (!projectId) {
87
+ throw new Error("No project ID available");
88
+ }
89
+ if (!options.sortBy) {
90
+ console.warn("sortBy is required for fetching spaces");
91
+ return [2 /*return*/, null];
92
+ }
93
+ dispatch((0, spaceListsSlice_1.setSpaceListLoading)({ listId: listId, loading: true }));
94
+ _a.label = 1;
95
+ case 1:
96
+ _a.trys.push([1, 3, 4, 5]);
97
+ return [4 /*yield*/, triggerFetchSpaces({
98
+ projectId: projectId,
99
+ page: options.page,
100
+ sortBy: options.sortBy,
101
+ search: options.search,
102
+ readingPermission: options.readingPermission,
103
+ memberOf: options.memberOf,
104
+ parentSpaceId: options.parentSpaceId,
105
+ limit: options.limit,
106
+ }).unwrap()];
107
+ case 2:
108
+ result = _a.sent();
109
+ if (result) {
110
+ append = options.page > 1;
111
+ dispatch((0, spaceListsSlice_1.setSpaceListSpaces)({ listId: listId, spaces: result, append: append }));
112
+ dispatch((0, spaceListsSlice_1.setSpaceListHasMore)({
113
+ listId: listId,
114
+ hasMore: result.length >= options.limit,
115
+ }));
116
+ return [2 /*return*/, result];
117
+ }
118
+ return [2 /*return*/, null];
119
+ case 3:
120
+ err_1 = _a.sent();
121
+ console.error("[SpaceListActions] Failed to fetch spaces for listId: ".concat(listId), err_1);
122
+ (0, handleError_1.handleError)(err_1, "Failed to fetch spaces:");
123
+ dispatch((0, spaceListsSlice_1.setSpaceListError)({ listId: listId, error: "Failed to fetch spaces" }));
124
+ throw err_1;
125
+ case 4:
126
+ dispatch((0, spaceListsSlice_1.setSpaceListLoading)({ listId: listId, loading: false }));
127
+ return [7 /*endfinally*/];
128
+ case 5: return [2 /*return*/];
129
+ }
130
+ });
131
+ }); }, [dispatch, projectId, triggerFetchSpaces]);
132
+ // Create space action
133
+ var createSpace = (0, react_1.useCallback)(function (listId, options) { return __awaiter(_this, void 0, void 0, function () {
134
+ var insertPosition, createData, newSpace, err_2;
135
+ return __generator(this, function (_a) {
136
+ switch (_a.label) {
137
+ case 0:
138
+ if (!projectId) {
139
+ throw new Error("No project ID available");
140
+ }
141
+ if (!options.name) {
142
+ throw new Error("Space name is required");
143
+ }
144
+ _a.label = 1;
145
+ case 1:
146
+ _a.trys.push([1, 3, , 4]);
147
+ insertPosition = options.insertPosition, createData = __rest(options, ["insertPosition"]);
148
+ return [4 /*yield*/, createSpaceMutation(__assign({ projectId: projectId }, createData)).unwrap()];
149
+ case 2:
150
+ newSpace = _a.sent();
151
+ // Optimistically add to the list
152
+ dispatch((0, spaceListsSlice_1.addSpace)({
153
+ listId: listId,
154
+ space: newSpace,
155
+ insertPosition: insertPosition || "first",
156
+ }));
157
+ return [2 /*return*/, newSpace];
158
+ case 3:
159
+ err_2 = _a.sent();
160
+ console.error("[SpaceListActions] Failed to create space for listId: ".concat(listId), err_2);
161
+ (0, handleError_1.handleError)(err_2, "Failed to create space:");
162
+ throw err_2;
163
+ case 4: return [2 /*return*/];
164
+ }
165
+ });
166
+ }); }, [dispatch, projectId, createSpaceMutation]);
167
+ // Delete space action
168
+ var deleteSpace = (0, react_1.useCallback)(function (listId, options) { return __awaiter(_this, void 0, void 0, function () {
169
+ var err_3;
170
+ return __generator(this, function (_a) {
171
+ switch (_a.label) {
172
+ case 0:
173
+ if (!projectId) {
174
+ throw new Error("No project ID available");
175
+ }
176
+ if (!options.spaceId) {
177
+ throw new Error("Space ID is required");
178
+ }
179
+ _a.label = 1;
180
+ case 1:
181
+ _a.trys.push([1, 3, , 4]);
182
+ return [4 /*yield*/, deleteSpaceMutation({
183
+ projectId: projectId,
184
+ spaceId: options.spaceId,
185
+ }).unwrap()];
186
+ case 2:
187
+ _a.sent();
188
+ // Remove from the list
189
+ dispatch((0, spaceListsSlice_1.removeSpace)({
190
+ listId: listId,
191
+ spaceId: options.spaceId,
192
+ }));
193
+ return [3 /*break*/, 4];
194
+ case 3:
195
+ err_3 = _a.sent();
196
+ console.error("[SpaceListActions] Failed to delete space for listId: ".concat(listId), err_3);
197
+ (0, handleError_1.handleError)(err_3, "Failed to delete space:");
198
+ throw err_3;
199
+ case 4: return [2 /*return*/];
200
+ }
201
+ });
202
+ }); }, [dispatch, projectId, deleteSpaceMutation]);
203
+ return {
204
+ fetchSpaces: fetchSpaces,
205
+ createSpace: createSpace,
206
+ deleteSpace: deleteSpace,
207
+ };
208
+ }
209
+ exports.default = useSpaceListActions;
210
+ //# sourceMappingURL=useSpaceListActions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useSpaceListActions.js","sourceRoot":"","sources":["../../../../src/hooks/space-lists/useSpaceListActions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ export { default as useSpace } from "./useSpace";
2
+ export { default as useSpaceData } from "./useSpaceData";
3
+ export type { UseSpaceDataProps, UseSpaceDataValues } from "./useSpaceData";
4
+ export { default as useFetchSpace } from "./useFetchSpace";
5
+ export { default as useFetchSpaceByShortId } from "./useFetchSpaceByShortId";
6
+ export { default as useFetchSpaceBySlug } from "./useFetchSpaceBySlug";
7
+ export { default as useFetchSpaceBreadcrumb } from "./useFetchSpaceBreadcrumb";
8
+ export { default as useFetchSpaceChildren } from "./useFetchSpaceChildren";
9
+ export { default as useCreateSpace } from "./useCreateSpace";
10
+ export type { CreateSpaceProps } from "./useCreateSpace";
11
+ export { default as useUpdateSpace } from "./useUpdateSpace";
12
+ export type { UpdateSpaceProps } from "./useUpdateSpace";
13
+ export { default as useDeleteSpace } from "./useDeleteSpace";
14
+ export { default as useJoinSpace } from "./useJoinSpace";
15
+ export { default as useLeaveSpace } from "./useLeaveSpace";
16
+ export { default as useFetchSpaceMembers } from "./useFetchSpaceMembers";
17
+ export { default as useFetchMySpaces } from "./useFetchMySpaces";
18
+ export { default as useUpdateMemberRole } from "./useUpdateMemberRole";
19
+ export { default as useApproveMember } from "./useApproveMember";
20
+ export { default as useDeclineMember } from "./useDeclineMember";
21
+ export { default as useRemoveMember } from "./useRemoveMember";
22
+ export { default as useSpacePermissions } from "./useSpacePermissions";