@replyke/core 7.0.0-beta.23 → 7.0.0-beta.25

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 (140) hide show
  1. package/dist/cjs/hooks/comments/index.d.ts +0 -1
  2. package/dist/cjs/hooks/comments/index.js +1 -3
  3. package/dist/cjs/hooks/comments/index.js.map +1 -1
  4. package/dist/cjs/hooks/comments/useCommentSectionData.js +10 -0
  5. package/dist/cjs/hooks/comments/useCommentSectionData.js.map +1 -1
  6. package/dist/cjs/hooks/entities/index.d.ts +0 -5
  7. package/dist/cjs/hooks/entities/index.js +1 -11
  8. package/dist/cjs/hooks/entities/index.js.map +1 -1
  9. package/dist/cjs/hooks/entities/useEntityData.d.ts +0 -6
  10. package/dist/cjs/hooks/entities/useEntityData.js +0 -11
  11. package/dist/cjs/hooks/entities/useEntityData.js.map +1 -1
  12. package/dist/cjs/hooks/reactions/index.d.ts +10 -0
  13. package/dist/cjs/hooks/reactions/index.js +21 -0
  14. package/dist/cjs/hooks/reactions/index.js.map +1 -0
  15. package/dist/cjs/hooks/reactions/useAddReaction.d.ts +9 -0
  16. package/dist/cjs/hooks/{comments/useDownvoteComment.js → reactions/useAddReaction.js} +19 -13
  17. package/dist/cjs/hooks/reactions/useAddReaction.js.map +1 -0
  18. package/dist/cjs/hooks/reactions/useFetchCommentReactions.d.ts +10 -0
  19. package/dist/cjs/hooks/{comments/useRemoveCommentUpvote.js → reactions/useFetchCommentReactions.js} +26 -13
  20. package/dist/cjs/hooks/reactions/useFetchCommentReactions.js.map +1 -0
  21. package/dist/cjs/hooks/reactions/useFetchCommentReactionsWrapper.d.ts +17 -0
  22. package/dist/cjs/hooks/reactions/useFetchCommentReactionsWrapper.js +170 -0
  23. package/dist/cjs/hooks/reactions/useFetchCommentReactionsWrapper.js.map +1 -0
  24. package/dist/cjs/hooks/reactions/useFetchEntityReactions.d.ts +10 -0
  25. package/dist/cjs/hooks/{entities/useDownvoteEntity.js → reactions/useFetchEntityReactions.js} +26 -13
  26. package/dist/cjs/hooks/reactions/useFetchEntityReactions.js.map +1 -0
  27. package/dist/cjs/hooks/reactions/useFetchEntityReactionsWrapper.d.ts +17 -0
  28. package/dist/cjs/hooks/reactions/useFetchEntityReactionsWrapper.js +170 -0
  29. package/dist/cjs/hooks/reactions/useFetchEntityReactionsWrapper.js.map +1 -0
  30. package/dist/cjs/hooks/reactions/useReactionToggle.d.ts +14 -0
  31. package/dist/cjs/hooks/{comments/useUpvoteComment.js → reactions/useReactionToggle.js} +45 -23
  32. package/dist/cjs/hooks/reactions/useReactionToggle.js.map +1 -0
  33. package/dist/cjs/hooks/reactions/useRemoveReaction.d.ts +7 -0
  34. package/dist/cjs/hooks/{comments/useRemoveCommentDownvote.js → reactions/useRemoveReaction.js} +16 -13
  35. package/dist/cjs/hooks/reactions/useRemoveReaction.js.map +1 -0
  36. package/dist/cjs/index.d.ts +4 -2
  37. package/dist/cjs/index.js +12 -9
  38. package/dist/cjs/index.js.map +1 -1
  39. package/dist/cjs/interfaces/models/Comment.d.ts +3 -0
  40. package/dist/cjs/interfaces/models/Entity.d.ts +3 -0
  41. package/dist/cjs/interfaces/models/Reaction.d.ts +23 -0
  42. package/dist/cjs/interfaces/models/Reaction.js +3 -0
  43. package/dist/cjs/interfaces/models/Reaction.js.map +1 -0
  44. package/dist/cjs/store/slices/entityListsSlice.d.ts +132 -0
  45. package/dist/esm/hooks/comments/index.d.ts +0 -1
  46. package/dist/esm/hooks/comments/index.js +0 -1
  47. package/dist/esm/hooks/comments/index.js.map +1 -1
  48. package/dist/esm/hooks/comments/useCommentSectionData.js +10 -0
  49. package/dist/esm/hooks/comments/useCommentSectionData.js.map +1 -1
  50. package/dist/esm/hooks/entities/index.d.ts +0 -5
  51. package/dist/esm/hooks/entities/index.js +0 -5
  52. package/dist/esm/hooks/entities/index.js.map +1 -1
  53. package/dist/esm/hooks/entities/useEntityData.d.ts +0 -6
  54. package/dist/esm/hooks/entities/useEntityData.js +0 -11
  55. package/dist/esm/hooks/entities/useEntityData.js.map +1 -1
  56. package/dist/esm/hooks/reactions/index.d.ts +10 -0
  57. package/dist/esm/hooks/reactions/index.js +8 -0
  58. package/dist/esm/hooks/reactions/index.js.map +1 -0
  59. package/dist/esm/hooks/reactions/useAddReaction.d.ts +9 -0
  60. package/dist/esm/hooks/{comments/useDownvoteComment.js → reactions/useAddReaction.js} +19 -13
  61. package/dist/esm/hooks/reactions/useAddReaction.js.map +1 -0
  62. package/dist/esm/hooks/reactions/useFetchCommentReactions.d.ts +10 -0
  63. package/dist/esm/hooks/{comments/useRemoveCommentUpvote.js → reactions/useFetchCommentReactions.js} +26 -13
  64. package/dist/esm/hooks/reactions/useFetchCommentReactions.js.map +1 -0
  65. package/dist/esm/hooks/reactions/useFetchCommentReactionsWrapper.d.ts +17 -0
  66. package/dist/esm/hooks/reactions/useFetchCommentReactionsWrapper.js +165 -0
  67. package/dist/esm/hooks/reactions/useFetchCommentReactionsWrapper.js.map +1 -0
  68. package/dist/esm/hooks/reactions/useFetchEntityReactions.d.ts +10 -0
  69. package/dist/esm/hooks/{entities/useDownvoteEntity.js → reactions/useFetchEntityReactions.js} +26 -13
  70. package/dist/esm/hooks/reactions/useFetchEntityReactions.js.map +1 -0
  71. package/dist/esm/hooks/reactions/useFetchEntityReactionsWrapper.d.ts +17 -0
  72. package/dist/esm/hooks/reactions/useFetchEntityReactionsWrapper.js +165 -0
  73. package/dist/esm/hooks/reactions/useFetchEntityReactionsWrapper.js.map +1 -0
  74. package/dist/esm/hooks/reactions/useReactionToggle.d.ts +14 -0
  75. package/dist/esm/hooks/reactions/useReactionToggle.js +88 -0
  76. package/dist/esm/hooks/reactions/useReactionToggle.js.map +1 -0
  77. package/dist/esm/hooks/reactions/useRemoveReaction.d.ts +7 -0
  78. package/dist/esm/hooks/{comments/useRemoveCommentDownvote.js → reactions/useRemoveReaction.js} +16 -13
  79. package/dist/esm/hooks/reactions/useRemoveReaction.js.map +1 -0
  80. package/dist/esm/index.d.ts +4 -2
  81. package/dist/esm/index.js +4 -2
  82. package/dist/esm/index.js.map +1 -1
  83. package/dist/esm/interfaces/models/Comment.d.ts +3 -0
  84. package/dist/esm/interfaces/models/Entity.d.ts +3 -0
  85. package/dist/esm/interfaces/models/Reaction.d.ts +23 -0
  86. package/dist/esm/interfaces/models/Reaction.js +2 -0
  87. package/dist/esm/interfaces/models/Reaction.js.map +1 -0
  88. package/dist/esm/store/slices/entityListsSlice.d.ts +132 -0
  89. package/package.json +1 -1
  90. package/dist/cjs/hooks/comments/useCommentVotes.d.ts +0 -13
  91. package/dist/cjs/hooks/comments/useCommentVotes.js +0 -241
  92. package/dist/cjs/hooks/comments/useCommentVotes.js.map +0 -1
  93. package/dist/cjs/hooks/comments/useDownvoteComment.d.ts +0 -5
  94. package/dist/cjs/hooks/comments/useDownvoteComment.js.map +0 -1
  95. package/dist/cjs/hooks/comments/useRemoveCommentDownvote.d.ts +0 -5
  96. package/dist/cjs/hooks/comments/useRemoveCommentDownvote.js.map +0 -1
  97. package/dist/cjs/hooks/comments/useRemoveCommentUpvote.d.ts +0 -5
  98. package/dist/cjs/hooks/comments/useRemoveCommentUpvote.js.map +0 -1
  99. package/dist/cjs/hooks/comments/useUpvoteComment.d.ts +0 -5
  100. package/dist/cjs/hooks/comments/useUpvoteComment.js.map +0 -1
  101. package/dist/cjs/hooks/entities/useDownvoteEntity.d.ts +0 -5
  102. package/dist/cjs/hooks/entities/useDownvoteEntity.js.map +0 -1
  103. package/dist/cjs/hooks/entities/useEntityVotes.d.ts +0 -13
  104. package/dist/cjs/hooks/entities/useEntityVotes.js +0 -250
  105. package/dist/cjs/hooks/entities/useEntityVotes.js.map +0 -1
  106. package/dist/cjs/hooks/entities/useRemoveEntityDownvote.d.ts +0 -5
  107. package/dist/cjs/hooks/entities/useRemoveEntityDownvote.js +0 -71
  108. package/dist/cjs/hooks/entities/useRemoveEntityDownvote.js.map +0 -1
  109. package/dist/cjs/hooks/entities/useRemoveEntityUpvote.d.ts +0 -5
  110. package/dist/cjs/hooks/entities/useRemoveEntityUpvote.js +0 -71
  111. package/dist/cjs/hooks/entities/useRemoveEntityUpvote.js.map +0 -1
  112. package/dist/cjs/hooks/entities/useUpvoteEntity.d.ts +0 -5
  113. package/dist/cjs/hooks/entities/useUpvoteEntity.js +0 -71
  114. package/dist/cjs/hooks/entities/useUpvoteEntity.js.map +0 -1
  115. package/dist/esm/hooks/comments/useCommentVotes.d.ts +0 -13
  116. package/dist/esm/hooks/comments/useCommentVotes.js +0 -236
  117. package/dist/esm/hooks/comments/useCommentVotes.js.map +0 -1
  118. package/dist/esm/hooks/comments/useDownvoteComment.d.ts +0 -5
  119. package/dist/esm/hooks/comments/useDownvoteComment.js.map +0 -1
  120. package/dist/esm/hooks/comments/useRemoveCommentDownvote.d.ts +0 -5
  121. package/dist/esm/hooks/comments/useRemoveCommentDownvote.js.map +0 -1
  122. package/dist/esm/hooks/comments/useRemoveCommentUpvote.d.ts +0 -5
  123. package/dist/esm/hooks/comments/useRemoveCommentUpvote.js.map +0 -1
  124. package/dist/esm/hooks/comments/useUpvoteComment.d.ts +0 -5
  125. package/dist/esm/hooks/comments/useUpvoteComment.js +0 -66
  126. package/dist/esm/hooks/comments/useUpvoteComment.js.map +0 -1
  127. package/dist/esm/hooks/entities/useDownvoteEntity.d.ts +0 -5
  128. package/dist/esm/hooks/entities/useDownvoteEntity.js.map +0 -1
  129. package/dist/esm/hooks/entities/useEntityVotes.d.ts +0 -13
  130. package/dist/esm/hooks/entities/useEntityVotes.js +0 -245
  131. package/dist/esm/hooks/entities/useEntityVotes.js.map +0 -1
  132. package/dist/esm/hooks/entities/useRemoveEntityDownvote.d.ts +0 -5
  133. package/dist/esm/hooks/entities/useRemoveEntityDownvote.js +0 -66
  134. package/dist/esm/hooks/entities/useRemoveEntityDownvote.js.map +0 -1
  135. package/dist/esm/hooks/entities/useRemoveEntityUpvote.d.ts +0 -5
  136. package/dist/esm/hooks/entities/useRemoveEntityUpvote.js +0 -66
  137. package/dist/esm/hooks/entities/useRemoveEntityUpvote.js.map +0 -1
  138. package/dist/esm/hooks/entities/useUpvoteEntity.d.ts +0 -5
  139. package/dist/esm/hooks/entities/useUpvoteEntity.js +0 -66
  140. package/dist/esm/hooks/entities/useUpvoteEntity.js.map +0 -1
@@ -1,236 +0,0 @@
1
- var __assign = (this && this.__assign) || function () {
2
- __assign = Object.assign || function(t) {
3
- for (var s, i = 1, n = arguments.length; i < n; i++) {
4
- s = arguments[i];
5
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
- t[p] = s[p];
7
- }
8
- return t;
9
- };
10
- return __assign.apply(this, arguments);
11
- };
12
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
13
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
14
- return new (P || (P = Promise))(function (resolve, reject) {
15
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
16
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
17
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
18
- step((generator = generator.apply(thisArg, _arguments || [])).next());
19
- });
20
- };
21
- var __generator = (this && this.__generator) || function (thisArg, body) {
22
- 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);
23
- return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
24
- function verb(n) { return function (v) { return step([n, v]); }; }
25
- function step(op) {
26
- if (f) throw new TypeError("Generator is already executing.");
27
- while (g && (g = 0, op[0] && (_ = 0)), _) try {
28
- 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;
29
- if (y = 0, t) op = [op[0] & 2, t.value];
30
- switch (op[0]) {
31
- case 0: case 1: t = op; break;
32
- case 4: _.label++; return { value: op[1], done: false };
33
- case 5: _.label++; y = op[1]; op = [0]; continue;
34
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
35
- default:
36
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
37
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
38
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
39
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
40
- if (t[2]) _.ops.pop();
41
- _.trys.pop(); continue;
42
- }
43
- op = body.call(thisArg, _);
44
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
45
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
46
- }
47
- };
48
- var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
49
- if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
50
- if (ar || !(i in from)) {
51
- if (!ar) ar = Array.prototype.slice.call(from, 0, i);
52
- ar[i] = from[i];
53
- }
54
- }
55
- return to.concat(ar || Array.prototype.slice.call(from));
56
- };
57
- import { useCallback, useState } from "react";
58
- import { handleError } from "../../utils/handleError";
59
- import { useUser } from "../user";
60
- // Import the communication hooks
61
- import useUpvoteComment from "./useUpvoteComment";
62
- import useRemoveCommentUpvote from "./useRemoveCommentUpvote";
63
- import useDownvoteComment from "./useDownvoteComment";
64
- import useRemoveCommentDownvote from "./useRemoveCommentDownvote";
65
- function useCommentVotes(props) {
66
- var _this = this;
67
- var user = useUser().user;
68
- var comment = props.comment, setComment = props.setComment;
69
- // Save the previous state in case we need to revert
70
- var _a = useState(comment), previousComment = _a[0], setPreviousComment = _a[1];
71
- var _b = useState(false), isUpdating = _b[0], setIsUpdating = _b[1];
72
- // Compute current user's vote state
73
- var userUpvotedComment = !!((user === null || user === void 0 ? void 0 : user.id) &&
74
- comment.upvotes.includes(user.id));
75
- var userDownvotedComment = !!((user === null || user === void 0 ? void 0 : user.id) &&
76
- comment.downvotes.includes(user.id));
77
- // Helper to update state and remember the previous value
78
- var updateCommentState = function (newCommentState) {
79
- setPreviousComment(comment);
80
- setComment(newCommentState);
81
- };
82
- var revertToPreviousState = useCallback(function () {
83
- setComment(previousComment);
84
- }, [previousComment, setComment]);
85
- // Get our request functions from the extracted hooks
86
- var upvoteCommentRequest = useUpvoteComment();
87
- var removeUpvoteRequest = useRemoveCommentUpvote();
88
- var downvoteCommentRequest = useDownvoteComment();
89
- var removeDownvoteRequest = useRemoveCommentDownvote();
90
- var handleUpvote = function () { return __awaiter(_this, void 0, void 0, function () {
91
- var updatedComment, err_1;
92
- return __generator(this, function (_a) {
93
- switch (_a.label) {
94
- case 0:
95
- if (!user)
96
- throw new Error("No authenticated user");
97
- if (isUpdating)
98
- return [2 /*return*/];
99
- // Optimistic update: add upvote and remove any downvote from the user
100
- updateCommentState(__assign(__assign({}, comment), { upvotes: __spreadArray(__spreadArray([], comment.upvotes, true), [user.id], false), downvotes: comment.downvotes.filter(function (id) { return id !== user.id; }) }));
101
- setIsUpdating(true);
102
- _a.label = 1;
103
- case 1:
104
- _a.trys.push([1, 3, 4, 5]);
105
- return [4 /*yield*/, upvoteCommentRequest({
106
- commentId: comment.id,
107
- })];
108
- case 2:
109
- updatedComment = _a.sent();
110
- setComment(updatedComment);
111
- return [3 /*break*/, 5];
112
- case 3:
113
- err_1 = _a.sent();
114
- revertToPreviousState();
115
- handleError(err_1, "Failed to update comment vote: ");
116
- return [3 /*break*/, 5];
117
- case 4:
118
- setIsUpdating(false);
119
- return [7 /*endfinally*/];
120
- case 5: return [2 /*return*/];
121
- }
122
- });
123
- }); };
124
- var handleRemoveUpvote = function () { return __awaiter(_this, void 0, void 0, function () {
125
- var updatedComment, err_2;
126
- return __generator(this, function (_a) {
127
- switch (_a.label) {
128
- case 0:
129
- if (!user)
130
- throw new Error("No authenticated user");
131
- if (isUpdating)
132
- return [2 /*return*/];
133
- // Optimistic update: remove the user's upvote
134
- updateCommentState(__assign(__assign({}, comment), { upvotes: comment.upvotes.filter(function (id) { return id !== user.id; }) }));
135
- setIsUpdating(true);
136
- _a.label = 1;
137
- case 1:
138
- _a.trys.push([1, 3, 4, 5]);
139
- return [4 /*yield*/, removeUpvoteRequest({
140
- commentId: comment.id,
141
- })];
142
- case 2:
143
- updatedComment = _a.sent();
144
- setComment(updatedComment);
145
- return [3 /*break*/, 5];
146
- case 3:
147
- err_2 = _a.sent();
148
- revertToPreviousState();
149
- handleError(err_2, "Failed to remove upvote from comment: ");
150
- return [3 /*break*/, 5];
151
- case 4:
152
- setIsUpdating(false);
153
- return [7 /*endfinally*/];
154
- case 5: return [2 /*return*/];
155
- }
156
- });
157
- }); };
158
- var handleDownvote = function () { return __awaiter(_this, void 0, void 0, function () {
159
- var updatedComment, err_3;
160
- return __generator(this, function (_a) {
161
- switch (_a.label) {
162
- case 0:
163
- if (!user)
164
- throw new Error("No authenticated user");
165
- if (isUpdating)
166
- return [2 /*return*/];
167
- // Optimistic update: add downvote and remove any upvote from the user
168
- updateCommentState(__assign(__assign({}, comment), { downvotes: __spreadArray(__spreadArray([], comment.downvotes, true), [user.id], false), upvotes: comment.upvotes.filter(function (id) { return id !== user.id; }) }));
169
- setIsUpdating(true);
170
- _a.label = 1;
171
- case 1:
172
- _a.trys.push([1, 3, 4, 5]);
173
- return [4 /*yield*/, downvoteCommentRequest({
174
- commentId: comment.id,
175
- })];
176
- case 2:
177
- updatedComment = _a.sent();
178
- setComment(updatedComment);
179
- return [3 /*break*/, 5];
180
- case 3:
181
- err_3 = _a.sent();
182
- revertToPreviousState();
183
- handleError(err_3, "Failed to update comment vote: ");
184
- return [3 /*break*/, 5];
185
- case 4:
186
- setIsUpdating(false);
187
- return [7 /*endfinally*/];
188
- case 5: return [2 /*return*/];
189
- }
190
- });
191
- }); };
192
- var handleRemoveDownvote = function () { return __awaiter(_this, void 0, void 0, function () {
193
- var updatedComment, err_4;
194
- return __generator(this, function (_a) {
195
- switch (_a.label) {
196
- case 0:
197
- if (!user)
198
- throw new Error("No authenticated user");
199
- if (isUpdating)
200
- return [2 /*return*/];
201
- // Optimistic update: remove the user's downvote
202
- updateCommentState(__assign(__assign({}, comment), { downvotes: comment.downvotes.filter(function (id) { return id !== user.id; }) }));
203
- setIsUpdating(true);
204
- _a.label = 1;
205
- case 1:
206
- _a.trys.push([1, 3, 4, 5]);
207
- return [4 /*yield*/, removeDownvoteRequest({
208
- commentId: comment.id,
209
- })];
210
- case 2:
211
- updatedComment = _a.sent();
212
- setComment(updatedComment);
213
- return [3 /*break*/, 5];
214
- case 3:
215
- err_4 = _a.sent();
216
- revertToPreviousState();
217
- handleError(err_4, "Failed to remove downvote from comment: ");
218
- return [3 /*break*/, 5];
219
- case 4:
220
- setIsUpdating(false);
221
- return [7 /*endfinally*/];
222
- case 5: return [2 /*return*/];
223
- }
224
- });
225
- }); };
226
- return {
227
- userUpvotedComment: userUpvotedComment,
228
- userDownvotedComment: userDownvotedComment,
229
- upvoteComment: handleUpvote,
230
- removeCommentUpvote: handleRemoveUpvote,
231
- downvoteComment: handleDownvote,
232
- removeCommentDownvote: handleRemoveDownvote,
233
- };
234
- }
235
- export default useCommentVotes;
236
- //# sourceMappingURL=useCommentVotes.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useCommentVotes.js","sourceRoot":"","sources":["../../../../src/hooks/comments/useCommentVotes.tsx"],"names":[],"mappings":"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"}
@@ -1,5 +0,0 @@
1
- import { Comment } from "../../interfaces/models/Comment";
2
- declare function useDownvoteComment(): ({ commentId }: {
3
- commentId: string;
4
- }) => Promise<Comment>;
5
- export default useDownvoteComment;
@@ -1 +0,0 @@
1
- {"version":3,"file":"useDownvoteComment.js","sourceRoot":"","sources":["../../../../src/hooks/comments/useDownvoteComment.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AACpC,OAAO,eAAe,MAAM,8BAA8B,CAAC;AAC3D,OAAO,UAAU,MAAM,wBAAwB,CAAC;AAGhD,SAAS,kBAAkB;IAA3B,iBAqBC;IApBC,IAAM,KAAK,GAAG,eAAe,EAAE,CAAC;IACxB,IAAA,SAAS,GAAK,UAAU,EAAE,UAAjB,CAAkB;IAEnC,IAAM,eAAe,GAAG,WAAW,CACjC,gEAAO,EAAoC;;YAAlC,SAAS,eAAA;;;;oBAChB,IAAI,CAAC,SAAS,EAAE,CAAC;wBACf,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;oBAC1C,CAAC;oBACD,IAAI,CAAC,SAAS,EAAE,CAAC;wBACf,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;oBAC1C,CAAC;oBACgB,qBAAM,KAAK,CAAC,KAAK,CAChC,WAAI,SAAS,uBAAa,SAAS,cAAW,CAC/C,EAAA;;oBAFK,QAAQ,GAAG,SAEhB;oBACD,sBAAO,QAAQ,CAAC,IAAe,EAAC;;;SACjC,EACD,CAAC,KAAK,EAAE,SAAS,CAAC,CACnB,CAAC;IAEF,OAAO,eAAe,CAAC;AACzB,CAAC;AAED,eAAe,kBAAkB,CAAC"}
@@ -1,5 +0,0 @@
1
- import { Comment } from "../../interfaces/models/Comment";
2
- declare function useRemoveCommentDownvote(): ({ commentId }: {
3
- commentId: string;
4
- }) => Promise<Comment>;
5
- export default useRemoveCommentDownvote;
@@ -1 +0,0 @@
1
- {"version":3,"file":"useRemoveCommentDownvote.js","sourceRoot":"","sources":["../../../../src/hooks/comments/useRemoveCommentDownvote.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AACpC,OAAO,eAAe,MAAM,8BAA8B,CAAC;AAC3D,OAAO,UAAU,MAAM,wBAAwB,CAAC;AAGhD,SAAS,wBAAwB;IAAjC,iBAqBC;IApBC,IAAM,KAAK,GAAG,eAAe,EAAE,CAAC;IACxB,IAAA,SAAS,GAAK,UAAU,EAAE,UAAjB,CAAkB;IAEnC,IAAM,qBAAqB,GAAG,WAAW,CACvC,gEAAO,EAAoC;;YAAlC,SAAS,eAAA;;;;oBAChB,IAAI,CAAC,SAAS,EAAE,CAAC;wBACf,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;oBAC1C,CAAC;oBACD,IAAI,CAAC,SAAS,EAAE,CAAC;wBACf,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;oBAC1C,CAAC;oBACgB,qBAAM,KAAK,CAAC,KAAK,CAChC,WAAI,SAAS,uBAAa,SAAS,qBAAkB,CACtD,EAAA;;oBAFK,QAAQ,GAAG,SAEhB;oBACD,sBAAO,QAAQ,CAAC,IAAe,EAAC;;;SACjC,EACD,CAAC,KAAK,EAAE,SAAS,CAAC,CACnB,CAAC;IAEF,OAAO,qBAAqB,CAAC;AAC/B,CAAC;AAED,eAAe,wBAAwB,CAAC"}
@@ -1,5 +0,0 @@
1
- import { Comment } from "../../interfaces/models/Comment";
2
- declare function useRemoveCommentUpvote(): ({ commentId }: {
3
- commentId: string;
4
- }) => Promise<Comment>;
5
- export default useRemoveCommentUpvote;
@@ -1 +0,0 @@
1
- {"version":3,"file":"useRemoveCommentUpvote.js","sourceRoot":"","sources":["../../../../src/hooks/comments/useRemoveCommentUpvote.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AACpC,OAAO,eAAe,MAAM,8BAA8B,CAAC;AAC3D,OAAO,UAAU,MAAM,wBAAwB,CAAC;AAGhD,SAAS,sBAAsB;IAA/B,iBAqBC;IApBC,IAAM,KAAK,GAAG,eAAe,EAAE,CAAC;IACxB,IAAA,SAAS,GAAK,UAAU,EAAE,UAAjB,CAAkB;IAEnC,IAAM,mBAAmB,GAAG,WAAW,CACrC,gEAAO,EAAoC;;YAAlC,SAAS,eAAA;;;;oBAChB,IAAI,CAAC,SAAS,EAAE,CAAC;wBACf,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;oBAC1C,CAAC;oBACD,IAAI,CAAC,SAAS,EAAE,CAAC;wBACf,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;oBAC1C,CAAC;oBACgB,qBAAM,KAAK,CAAC,KAAK,CAChC,WAAI,SAAS,uBAAa,SAAS,mBAAgB,CACpD,EAAA;;oBAFK,QAAQ,GAAG,SAEhB;oBACD,sBAAO,QAAQ,CAAC,IAAe,EAAC;;;SACjC,EACD,CAAC,KAAK,EAAE,SAAS,CAAC,CACnB,CAAC;IAEF,OAAO,mBAAmB,CAAC;AAC7B,CAAC;AAED,eAAe,sBAAsB,CAAC"}
@@ -1,5 +0,0 @@
1
- import { Comment } from "../../interfaces/models/Comment";
2
- declare function useUpvoteComment(): ({ commentId }: {
3
- commentId: string;
4
- }) => Promise<Comment>;
5
- export default useUpvoteComment;
@@ -1,66 +0,0 @@
1
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
- return new (P || (P = Promise))(function (resolve, reject) {
4
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
- step((generator = generator.apply(thisArg, _arguments || [])).next());
8
- });
9
- };
10
- var __generator = (this && this.__generator) || function (thisArg, body) {
11
- 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);
12
- return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
13
- function verb(n) { return function (v) { return step([n, v]); }; }
14
- function step(op) {
15
- if (f) throw new TypeError("Generator is already executing.");
16
- while (g && (g = 0, op[0] && (_ = 0)), _) try {
17
- 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;
18
- if (y = 0, t) op = [op[0] & 2, t.value];
19
- switch (op[0]) {
20
- case 0: case 1: t = op; break;
21
- case 4: _.label++; return { value: op[1], done: false };
22
- case 5: _.label++; y = op[1]; op = [0]; continue;
23
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
24
- default:
25
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
26
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
27
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
28
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
29
- if (t[2]) _.ops.pop();
30
- _.trys.pop(); continue;
31
- }
32
- op = body.call(thisArg, _);
33
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
34
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
35
- }
36
- };
37
- import { useCallback } from "react";
38
- import useAxiosPrivate from "../../config/useAxiosPrivate";
39
- import useProject from "../projects/useProject";
40
- function useUpvoteComment() {
41
- var _this = this;
42
- var axios = useAxiosPrivate();
43
- var projectId = useProject().projectId;
44
- var upvoteComment = useCallback(function (_a) { return __awaiter(_this, [_a], void 0, function (_b) {
45
- var response;
46
- var commentId = _b.commentId;
47
- return __generator(this, function (_c) {
48
- switch (_c.label) {
49
- case 0:
50
- if (!commentId) {
51
- throw new Error("No comment ID passed");
52
- }
53
- if (!projectId) {
54
- throw new Error("No project specified");
55
- }
56
- return [4 /*yield*/, axios.patch("/".concat(projectId, "/comments/").concat(commentId, "/upvote"))];
57
- case 1:
58
- response = _c.sent();
59
- return [2 /*return*/, response.data];
60
- }
61
- });
62
- }); }, [axios, projectId]);
63
- return upvoteComment;
64
- }
65
- export default useUpvoteComment;
66
- //# sourceMappingURL=useUpvoteComment.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useUpvoteComment.js","sourceRoot":"","sources":["../../../../src/hooks/comments/useUpvoteComment.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AACpC,OAAO,eAAe,MAAM,8BAA8B,CAAC;AAC3D,OAAO,UAAU,MAAM,wBAAwB,CAAC;AAGhD,SAAS,gBAAgB;IAAzB,iBAqBC;IApBC,IAAM,KAAK,GAAG,eAAe,EAAE,CAAC;IACxB,IAAA,SAAS,GAAK,UAAU,EAAE,UAAjB,CAAkB;IAEnC,IAAM,aAAa,GAAG,WAAW,CAC/B,gEAAO,EAAoC;;YAAlC,SAAS,eAAA;;;;oBAChB,IAAI,CAAC,SAAS,EAAE,CAAC;wBACf,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;oBAC1C,CAAC;oBACD,IAAI,CAAC,SAAS,EAAE,CAAC;wBACf,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;oBAC1C,CAAC;oBACgB,qBAAM,KAAK,CAAC,KAAK,CAChC,WAAI,SAAS,uBAAa,SAAS,YAAS,CAC7C,EAAA;;oBAFK,QAAQ,GAAG,SAEhB;oBACD,sBAAO,QAAQ,CAAC,IAAe,EAAC;;;SACjC,EACD,CAAC,KAAK,EAAE,SAAS,CAAC,CACnB,CAAC;IAEF,OAAO,aAAa,CAAC;AACvB,CAAC;AAED,eAAe,gBAAgB,CAAC"}
@@ -1,5 +0,0 @@
1
- import { Entity } from "../../interfaces/models/Entity";
2
- declare function useDownvoteEntity(): ({ entityId }: {
3
- entityId: string;
4
- }) => Promise<Entity>;
5
- export default useDownvoteEntity;
@@ -1 +0,0 @@
1
- {"version":3,"file":"useDownvoteEntity.js","sourceRoot":"","sources":["../../../../src/hooks/entities/useDownvoteEntity.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AACpC,OAAO,eAAe,MAAM,8BAA8B,CAAC;AAC3D,OAAO,UAAU,MAAM,wBAAwB,CAAC;AAGhD,SAAS,iBAAiB;IAA1B,iBAuBC;IAtBC,IAAM,KAAK,GAAG,eAAe,EAAE,CAAC;IACxB,IAAA,SAAS,GAAK,UAAU,EAAE,UAAjB,CAAkB;IAEnC,IAAM,cAAc,GAAG,WAAW,CAChC,gEAAO,EAAkC;;YAAhC,QAAQ,cAAA;;;;oBACf,IAAI,CAAC,QAAQ,EAAE,CAAC;wBACd,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;oBAC3C,CAAC;oBACD,IAAI,CAAC,SAAS,EAAE,CAAC;wBACf,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;oBAC5C,CAAC;oBACgB,qBAAM,KAAK,CAAC,KAAK,CAChC,WAAI,SAAS,uBAAa,QAAQ,cAAW,EAC7C,EAAE,EACF,EAAE,eAAe,EAAE,IAAI,EAAE,CAC1B,EAAA;;oBAJK,QAAQ,GAAG,SAIhB;oBACD,sBAAO,QAAQ,CAAC,IAAc,EAAC;;;SAChC,EACD,CAAC,KAAK,EAAE,SAAS,CAAC,CACnB,CAAC;IAEF,OAAO,cAAc,CAAC;AACxB,CAAC;AAED,eAAe,iBAAiB,CAAC"}
@@ -1,13 +0,0 @@
1
- import { Entity } from "../../interfaces/models/Entity";
2
- declare function useEntityVotes(props: {
3
- entity: Entity | undefined | null;
4
- setEntity: React.Dispatch<React.SetStateAction<Entity | undefined | null>>;
5
- }): {
6
- userUpvotedEntity: boolean;
7
- userDownvotedEntity: boolean;
8
- upvoteEntity: () => Promise<void>;
9
- removeEntityUpvote: () => Promise<void>;
10
- downvoteEntity: () => Promise<void>;
11
- removeEntityDownvote: () => Promise<void>;
12
- };
13
- export default useEntityVotes;
@@ -1,245 +0,0 @@
1
- var __assign = (this && this.__assign) || function () {
2
- __assign = Object.assign || function(t) {
3
- for (var s, i = 1, n = arguments.length; i < n; i++) {
4
- s = arguments[i];
5
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
- t[p] = s[p];
7
- }
8
- return t;
9
- };
10
- return __assign.apply(this, arguments);
11
- };
12
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
13
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
14
- return new (P || (P = Promise))(function (resolve, reject) {
15
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
16
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
17
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
18
- step((generator = generator.apply(thisArg, _arguments || [])).next());
19
- });
20
- };
21
- var __generator = (this && this.__generator) || function (thisArg, body) {
22
- 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);
23
- return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
24
- function verb(n) { return function (v) { return step([n, v]); }; }
25
- function step(op) {
26
- if (f) throw new TypeError("Generator is already executing.");
27
- while (g && (g = 0, op[0] && (_ = 0)), _) try {
28
- 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;
29
- if (y = 0, t) op = [op[0] & 2, t.value];
30
- switch (op[0]) {
31
- case 0: case 1: t = op; break;
32
- case 4: _.label++; return { value: op[1], done: false };
33
- case 5: _.label++; y = op[1]; op = [0]; continue;
34
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
35
- default:
36
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
37
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
38
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
39
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
40
- if (t[2]) _.ops.pop();
41
- _.trys.pop(); continue;
42
- }
43
- op = body.call(thisArg, _);
44
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
45
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
46
- }
47
- };
48
- var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
49
- if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
50
- if (ar || !(i in from)) {
51
- if (!ar) ar = Array.prototype.slice.call(from, 0, i);
52
- ar[i] = from[i];
53
- }
54
- }
55
- return to.concat(ar || Array.prototype.slice.call(from));
56
- };
57
- import { useCallback, useState } from "react";
58
- import { handleError } from "../../utils/handleError";
59
- import { useUser } from "../user";
60
- // Import the API communication hooks
61
- import useUpvoteEntity from "./useUpvoteEntity";
62
- import useRemoveEntityUpvote from "./useRemoveEntityUpvote";
63
- import useDownvoteEntity from "./useDownvoteEntity";
64
- import useRemoveEntityDownvote from "./useRemoveEntityDownvote";
65
- function useEntityVotes(props) {
66
- var _this = this;
67
- var user = useUser().user;
68
- var entity = props.entity, setEntity = props.setEntity;
69
- var _a = useState(false), isUpdating = _a[0], setIsUpdating = _a[1];
70
- var _b = useState(entity), previousEntity = _b[0], setPreviousEntity = _b[1];
71
- // Compute current user's vote state
72
- var userUpvotedEntity = !!((entity === null || entity === void 0 ? void 0 : entity.upvotes) &&
73
- (user === null || user === void 0 ? void 0 : user.id) &&
74
- entity.upvotes.includes(user.id));
75
- var userDownvotedEntity = !!((entity === null || entity === void 0 ? void 0 : entity.downvotes) &&
76
- (user === null || user === void 0 ? void 0 : user.id) &&
77
- entity.downvotes.includes(user.id));
78
- // Save the current state for potential reversion on error
79
- var updateEntityState = function (newEntityState) {
80
- setPreviousEntity(entity);
81
- setEntity(newEntityState);
82
- };
83
- var revertToPreviousState = useCallback(function () {
84
- setEntity(previousEntity);
85
- }, [previousEntity, setEntity]);
86
- // Get the API request functions from the extracted hooks
87
- var upvoteEntityRequest = useUpvoteEntity();
88
- var removeEntityUpvoteRequest = useRemoveEntityUpvote();
89
- var downvoteEntityRequest = useDownvoteEntity();
90
- var removeEntityDownvoteRequest = useRemoveEntityDownvote();
91
- var handleUpvote = function () { return __awaiter(_this, void 0, void 0, function () {
92
- var updatedEntity, err_1;
93
- return __generator(this, function (_a) {
94
- switch (_a.label) {
95
- case 0:
96
- if (!user)
97
- throw new Error("No authenticated user");
98
- if (!entity)
99
- throw new Error("No entity provided");
100
- if (isUpdating)
101
- return [2 /*return*/];
102
- // Optimistic update: add user's upvote and remove any downvote from the user
103
- updateEntityState(__assign(__assign({}, entity), { upvotes: __spreadArray(__spreadArray([], (entity.upvotes || []), true), [user.id], false), downvotes: (entity.downvotes || []).filter(function (id) { return id !== user.id; }) }));
104
- setIsUpdating(true);
105
- _a.label = 1;
106
- case 1:
107
- _a.trys.push([1, 3, 4, 5]);
108
- return [4 /*yield*/, upvoteEntityRequest({
109
- entityId: entity.id,
110
- })];
111
- case 2:
112
- updatedEntity = _a.sent();
113
- setEntity(updatedEntity);
114
- return [3 /*break*/, 5];
115
- case 3:
116
- err_1 = _a.sent();
117
- revertToPreviousState();
118
- handleError(err_1, "Failed to update entity vote: ");
119
- return [3 /*break*/, 5];
120
- case 4:
121
- setIsUpdating(false);
122
- return [7 /*endfinally*/];
123
- case 5: return [2 /*return*/];
124
- }
125
- });
126
- }); };
127
- var handleRemoveUpvote = function () { return __awaiter(_this, void 0, void 0, function () {
128
- var updatedEntity, err_2;
129
- return __generator(this, function (_a) {
130
- switch (_a.label) {
131
- case 0:
132
- if (!user)
133
- throw new Error("No authenticated user");
134
- if (!entity)
135
- throw new Error("No entity provided");
136
- if (isUpdating)
137
- return [2 /*return*/];
138
- // Optimistic update: remove user's upvote
139
- updateEntityState(__assign(__assign({}, entity), { upvotes: (entity.upvotes || []).filter(function (id) { return id !== user.id; }) }));
140
- setIsUpdating(true);
141
- _a.label = 1;
142
- case 1:
143
- _a.trys.push([1, 3, 4, 5]);
144
- return [4 /*yield*/, removeEntityUpvoteRequest({
145
- entityId: entity.id,
146
- })];
147
- case 2:
148
- updatedEntity = _a.sent();
149
- setEntity(updatedEntity);
150
- return [3 /*break*/, 5];
151
- case 3:
152
- err_2 = _a.sent();
153
- revertToPreviousState();
154
- handleError(err_2, "Failed to remove upvote from entity: ");
155
- return [3 /*break*/, 5];
156
- case 4:
157
- setIsUpdating(false);
158
- return [7 /*endfinally*/];
159
- case 5: return [2 /*return*/];
160
- }
161
- });
162
- }); };
163
- var handleDownvote = function () { return __awaiter(_this, void 0, void 0, function () {
164
- var updatedEntity, err_3;
165
- return __generator(this, function (_a) {
166
- switch (_a.label) {
167
- case 0:
168
- if (!user)
169
- throw new Error("No authenticated user");
170
- if (!entity)
171
- throw new Error("No entity provided");
172
- if (isUpdating)
173
- return [2 /*return*/];
174
- // Optimistic update: add user's downvote and remove any upvote from the user
175
- updateEntityState(__assign(__assign({}, entity), { downvotes: __spreadArray(__spreadArray([], (entity.downvotes || []), true), [user.id], false), upvotes: (entity.upvotes || []).filter(function (id) { return id !== user.id; }) }));
176
- setIsUpdating(true);
177
- _a.label = 1;
178
- case 1:
179
- _a.trys.push([1, 3, 4, 5]);
180
- return [4 /*yield*/, downvoteEntityRequest({
181
- entityId: entity.id,
182
- })];
183
- case 2:
184
- updatedEntity = _a.sent();
185
- setEntity(updatedEntity);
186
- return [3 /*break*/, 5];
187
- case 3:
188
- err_3 = _a.sent();
189
- revertToPreviousState();
190
- handleError(err_3, "Failed to update entity vote: ");
191
- return [3 /*break*/, 5];
192
- case 4:
193
- setIsUpdating(false);
194
- return [7 /*endfinally*/];
195
- case 5: return [2 /*return*/];
196
- }
197
- });
198
- }); };
199
- var handleRemoveDownvote = function () { return __awaiter(_this, void 0, void 0, function () {
200
- var updatedEntity, err_4;
201
- return __generator(this, function (_a) {
202
- switch (_a.label) {
203
- case 0:
204
- if (!user)
205
- throw new Error("No authenticated user");
206
- if (!entity)
207
- throw new Error("No entity provided");
208
- if (isUpdating)
209
- return [2 /*return*/];
210
- // Optimistic update: remove user's downvote
211
- updateEntityState(__assign(__assign({}, entity), { downvotes: (entity.downvotes || []).filter(function (id) { return id !== user.id; }) }));
212
- setIsUpdating(true);
213
- _a.label = 1;
214
- case 1:
215
- _a.trys.push([1, 3, 4, 5]);
216
- return [4 /*yield*/, removeEntityDownvoteRequest({
217
- entityId: entity.id,
218
- })];
219
- case 2:
220
- updatedEntity = _a.sent();
221
- setEntity(updatedEntity);
222
- return [3 /*break*/, 5];
223
- case 3:
224
- err_4 = _a.sent();
225
- revertToPreviousState();
226
- handleError(err_4, "Failed to remove downvote from entity: ");
227
- return [3 /*break*/, 5];
228
- case 4:
229
- setIsUpdating(false);
230
- return [7 /*endfinally*/];
231
- case 5: return [2 /*return*/];
232
- }
233
- });
234
- }); };
235
- return {
236
- userUpvotedEntity: userUpvotedEntity,
237
- userDownvotedEntity: userDownvotedEntity,
238
- upvoteEntity: handleUpvote,
239
- removeEntityUpvote: handleRemoveUpvote,
240
- downvoteEntity: handleDownvote,
241
- removeEntityDownvote: handleRemoveDownvote,
242
- };
243
- }
244
- export default useEntityVotes;
245
- //# sourceMappingURL=useEntityVotes.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useEntityVotes.js","sourceRoot":"","sources":["../../../../src/hooks/entities/useEntityVotes.tsx"],"names":[],"mappings":"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"}
@@ -1,5 +0,0 @@
1
- import { Entity } from "../../interfaces/models/Entity";
2
- declare function useRemoveEntityDownvote(): ({ entityId }: {
3
- entityId: string;
4
- }) => Promise<Entity>;
5
- export default useRemoveEntityDownvote;