@replyke/core 4.0.4 → 4.0.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/hooks/comments/useCommentVotes.d.ts +4 -4
- package/dist/cjs/hooks/comments/useCommentVotes.js +132 -55
- package/dist/cjs/hooks/comments/useCommentVotes.js.map +1 -1
- package/dist/cjs/hooks/comments/useDownvoteComment.d.ts +4 -0
- package/dist/cjs/hooks/comments/useDownvoteComment.js +73 -0
- package/dist/cjs/hooks/comments/useDownvoteComment.js.map +1 -0
- package/dist/cjs/hooks/comments/useRemoveCommentDownvote.d.ts +4 -0
- package/dist/cjs/hooks/comments/useRemoveCommentDownvote.js +73 -0
- package/dist/cjs/hooks/comments/useRemoveCommentDownvote.js.map +1 -0
- package/dist/cjs/hooks/comments/useRemoveCommentUpvote.d.ts +4 -0
- package/dist/cjs/hooks/comments/useRemoveCommentUpvote.js +73 -0
- package/dist/cjs/hooks/comments/useRemoveCommentUpvote.js.map +1 -0
- package/dist/cjs/hooks/comments/useUpvoteComment.d.ts +4 -0
- package/dist/cjs/hooks/comments/useUpvoteComment.js +73 -0
- package/dist/cjs/hooks/comments/useUpvoteComment.js.map +1 -0
- package/dist/cjs/hooks/entities/useDownvoteEntity.d.ts +4 -0
- package/dist/cjs/hooks/entities/useDownvoteEntity.js +73 -0
- package/dist/cjs/hooks/entities/useDownvoteEntity.js.map +1 -0
- package/dist/cjs/hooks/entities/useEntityVotes.d.ts +4 -4
- package/dist/cjs/hooks/entities/useEntityVotes.js +138 -57
- package/dist/cjs/hooks/entities/useEntityVotes.js.map +1 -1
- package/dist/cjs/hooks/entities/useRemoveEntityDownvote.d.ts +4 -0
- package/dist/cjs/hooks/entities/useRemoveEntityDownvote.js +73 -0
- package/dist/cjs/hooks/entities/useRemoveEntityDownvote.js.map +1 -0
- package/dist/cjs/hooks/entities/useRemoveEntityUpvote.d.ts +4 -0
- package/dist/cjs/hooks/entities/useRemoveEntityUpvote.js +73 -0
- package/dist/cjs/hooks/entities/useRemoveEntityUpvote.js.map +1 -0
- package/dist/cjs/hooks/entities/useUpvoteEntity.d.ts +4 -0
- package/dist/cjs/hooks/entities/useUpvoteEntity.js +73 -0
- package/dist/cjs/hooks/entities/useUpvoteEntity.js.map +1 -0
- package/dist/cjs/utils/handleError.d.ts +1 -1
- package/dist/cjs/utils/handleError.js +8 -5
- package/dist/cjs/utils/handleError.js.map +1 -1
- package/dist/esm/hooks/comments/useCommentVotes.d.ts +4 -4
- package/dist/esm/hooks/comments/useCommentVotes.js +132 -55
- package/dist/esm/hooks/comments/useCommentVotes.js.map +1 -1
- package/dist/esm/hooks/comments/useDownvoteComment.d.ts +4 -0
- package/dist/esm/hooks/comments/useDownvoteComment.js +68 -0
- package/dist/esm/hooks/comments/useDownvoteComment.js.map +1 -0
- package/dist/esm/hooks/comments/useRemoveCommentDownvote.d.ts +4 -0
- package/dist/esm/hooks/comments/useRemoveCommentDownvote.js +68 -0
- package/dist/esm/hooks/comments/useRemoveCommentDownvote.js.map +1 -0
- package/dist/esm/hooks/comments/useRemoveCommentUpvote.d.ts +4 -0
- package/dist/esm/hooks/comments/useRemoveCommentUpvote.js +68 -0
- package/dist/esm/hooks/comments/useRemoveCommentUpvote.js.map +1 -0
- package/dist/esm/hooks/comments/useUpvoteComment.d.ts +4 -0
- package/dist/esm/hooks/comments/useUpvoteComment.js +68 -0
- package/dist/esm/hooks/comments/useUpvoteComment.js.map +1 -0
- package/dist/esm/hooks/entities/useDownvoteEntity.d.ts +4 -0
- package/dist/esm/hooks/entities/useDownvoteEntity.js +68 -0
- package/dist/esm/hooks/entities/useDownvoteEntity.js.map +1 -0
- package/dist/esm/hooks/entities/useEntityVotes.d.ts +4 -4
- package/dist/esm/hooks/entities/useEntityVotes.js +138 -57
- package/dist/esm/hooks/entities/useEntityVotes.js.map +1 -1
- package/dist/esm/hooks/entities/useRemoveEntityDownvote.d.ts +4 -0
- package/dist/esm/hooks/entities/useRemoveEntityDownvote.js +68 -0
- package/dist/esm/hooks/entities/useRemoveEntityDownvote.js.map +1 -0
- package/dist/esm/hooks/entities/useRemoveEntityUpvote.d.ts +4 -0
- package/dist/esm/hooks/entities/useRemoveEntityUpvote.js +68 -0
- package/dist/esm/hooks/entities/useRemoveEntityUpvote.js.map +1 -0
- package/dist/esm/hooks/entities/useUpvoteEntity.d.ts +4 -0
- package/dist/esm/hooks/entities/useUpvoteEntity.js +68 -0
- package/dist/esm/hooks/entities/useUpvoteEntity.js.map +1 -0
- package/dist/esm/utils/handleError.d.ts +1 -1
- package/dist/esm/utils/handleError.js +8 -5
- package/dist/esm/utils/handleError.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
+
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);
|
|
13
|
+
return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
+
function step(op) {
|
|
16
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
18
|
+
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;
|
|
19
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
+
switch (op[0]) {
|
|
21
|
+
case 0: case 1: t = op; break;
|
|
22
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
+
default:
|
|
26
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
+
if (t[2]) _.ops.pop();
|
|
31
|
+
_.trys.pop(); continue;
|
|
32
|
+
}
|
|
33
|
+
op = body.call(thisArg, _);
|
|
34
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
39
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
40
|
+
};
|
|
41
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
42
|
+
var react_1 = require("react");
|
|
43
|
+
var useAxiosPrivate_1 = __importDefault(require("../../config/useAxiosPrivate"));
|
|
44
|
+
var useProject_1 = __importDefault(require("../projects/useProject"));
|
|
45
|
+
function useDownvoteEntity() {
|
|
46
|
+
var _this = this;
|
|
47
|
+
var axios = (0, useAxiosPrivate_1.default)();
|
|
48
|
+
var projectId = (0, useProject_1.default)().projectId;
|
|
49
|
+
var basePath = projectId ? "/".concat(projectId, "/entities") : null;
|
|
50
|
+
var downvoteEntity = (0, react_1.useCallback)(function (_a) { return __awaiter(_this, [_a], void 0, function (_b) {
|
|
51
|
+
var path, response;
|
|
52
|
+
var entityId = _b.entityId;
|
|
53
|
+
return __generator(this, function (_c) {
|
|
54
|
+
switch (_c.label) {
|
|
55
|
+
case 0:
|
|
56
|
+
if (!entityId) {
|
|
57
|
+
throw new Error("No entity ID provided");
|
|
58
|
+
}
|
|
59
|
+
if (!basePath) {
|
|
60
|
+
throw new Error("No projectId available");
|
|
61
|
+
}
|
|
62
|
+
path = [basePath, entityId, "downvote"].join("/");
|
|
63
|
+
return [4 /*yield*/, axios.patch(path)];
|
|
64
|
+
case 1:
|
|
65
|
+
response = _c.sent();
|
|
66
|
+
return [2 /*return*/, response.data];
|
|
67
|
+
}
|
|
68
|
+
});
|
|
69
|
+
}); }, [axios, basePath]);
|
|
70
|
+
return downvoteEntity;
|
|
71
|
+
}
|
|
72
|
+
exports.default = useDownvoteEntity;
|
|
73
|
+
//# sourceMappingURL=useDownvoteEntity.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useDownvoteEntity.js","sourceRoot":"","sources":["../../../../src/hooks/entities/useDownvoteEntity.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+BAAoC;AACpC,iFAA2D;AAC3D,sEAAgD;AAEhD,SAAS,iBAAiB;IAA1B,iBAqBC;IApBC,IAAM,KAAK,GAAG,IAAA,yBAAe,GAAE,CAAC;IACxB,IAAA,SAAS,GAAK,IAAA,oBAAU,GAAE,UAAjB,CAAkB;IACnC,IAAM,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAC,WAAI,SAAS,cAAW,CAAC,CAAC,CAAC,IAAI,CAAC;IAE7D,IAAM,cAAc,GAAG,IAAA,mBAAW,EAChC,gEAAO,EAAkC;;YAAhC,QAAQ,cAAA;;;;oBACf,IAAI,CAAC,QAAQ,EAAE,CAAC;wBACd,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;oBAC3C,CAAC;oBACD,IAAI,CAAC,QAAQ,EAAE,CAAC;wBACd,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;oBAC5C,CAAC;oBACK,IAAI,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;oBACvC,qBAAM,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,EAAA;;oBAAlC,QAAQ,GAAG,SAAuB;oBACxC,sBAAO,QAAQ,CAAC,IAAI,EAAC;;;SACtB,EACD,CAAC,KAAK,EAAE,QAAQ,CAAC,CAClB,CAAC;IAEF,OAAO,cAAc,CAAC;AACxB,CAAC;AAED,kBAAe,iBAAiB,CAAC"}
|
|
@@ -3,9 +3,9 @@ declare function useEntityVotes(props: {
|
|
|
3
3
|
entity: Entity | undefined;
|
|
4
4
|
setEntity: React.Dispatch<React.SetStateAction<Entity | undefined>>;
|
|
5
5
|
}): {
|
|
6
|
-
upvoteEntity: () => void
|
|
7
|
-
removeEntityUpvote: () => void
|
|
8
|
-
downvoteEntity: () => void
|
|
9
|
-
removeEntityDownvote: () => void
|
|
6
|
+
upvoteEntity: () => Promise<void>;
|
|
7
|
+
removeEntityUpvote: () => Promise<void>;
|
|
8
|
+
downvoteEntity: () => Promise<void>;
|
|
9
|
+
removeEntityDownvote: () => Promise<void>;
|
|
10
10
|
};
|
|
11
11
|
export default useEntityVotes;
|
|
@@ -61,45 +61,54 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
61
61
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
62
62
|
var react_1 = require("react");
|
|
63
63
|
var handleError_1 = require("../../utils/handleError");
|
|
64
|
-
var useAxiosPrivate_1 = __importDefault(require("../../config/useAxiosPrivate"));
|
|
65
|
-
var useProject_1 = __importDefault(require("../projects/useProject"));
|
|
66
64
|
var useUser_1 = __importDefault(require("../users/useUser"));
|
|
65
|
+
// Import the API communication hooks
|
|
66
|
+
var useUpvoteEntity_1 = __importDefault(require("./useUpvoteEntity"));
|
|
67
|
+
var useRemoveEntityUpvote_1 = __importDefault(require("./useRemoveEntityUpvote"));
|
|
68
|
+
var useDownvoteEntity_1 = __importDefault(require("./useDownvoteEntity"));
|
|
69
|
+
var useRemoveEntityDownvote_1 = __importDefault(require("./useRemoveEntityDownvote"));
|
|
67
70
|
function useEntityVotes(props) {
|
|
68
71
|
var _this = this;
|
|
69
|
-
var projectId = (0, useProject_1.default)().projectId;
|
|
70
72
|
var user = (0, useUser_1.default)().user;
|
|
71
|
-
var axios = (0, useAxiosPrivate_1.default)();
|
|
72
|
-
var basePath = projectId ? "/".concat(projectId, "/entities") : null;
|
|
73
73
|
var entity = props.entity, setEntity = props.setEntity;
|
|
74
|
-
var _a = (0, react_1.useState)(false), isUpdating = _a[0], setIsUpdating = _a[1];
|
|
74
|
+
var _a = (0, react_1.useState)(false), isUpdating = _a[0], setIsUpdating = _a[1];
|
|
75
75
|
var _b = (0, react_1.useState)(entity), previousEntity = _b[0], setPreviousEntity = _b[1];
|
|
76
|
+
// Save the current state for potential reversion on error
|
|
76
77
|
var updateEntityState = function (newEntityState) {
|
|
77
|
-
setPreviousEntity(entity);
|
|
78
|
+
setPreviousEntity(entity);
|
|
78
79
|
setEntity(newEntityState);
|
|
79
80
|
};
|
|
80
81
|
var revertToPreviousState = (0, react_1.useCallback)(function () {
|
|
81
82
|
setEntity(previousEntity);
|
|
82
|
-
}, [
|
|
83
|
-
|
|
84
|
-
|
|
83
|
+
}, [previousEntity, setEntity]);
|
|
84
|
+
// Get the API request functions from the extracted hooks
|
|
85
|
+
var upvoteEntityRequest = (0, useUpvoteEntity_1.default)();
|
|
86
|
+
var removeEntityUpvoteRequest = (0, useRemoveEntityUpvote_1.default)();
|
|
87
|
+
var downvoteEntityRequest = (0, useDownvoteEntity_1.default)();
|
|
88
|
+
var removeEntityDownvoteRequest = (0, useRemoveEntityDownvote_1.default)();
|
|
89
|
+
var handleUpvote = function () { return __awaiter(_this, void 0, void 0, function () {
|
|
90
|
+
var updatedEntity, err_1;
|
|
85
91
|
return __generator(this, function (_a) {
|
|
86
92
|
switch (_a.label) {
|
|
87
93
|
case 0:
|
|
88
|
-
if (!
|
|
89
|
-
throw new Error("No
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
+
if (!user)
|
|
95
|
+
throw new Error("No authenticated user");
|
|
96
|
+
if (!entity)
|
|
97
|
+
throw new Error("No entity provided");
|
|
98
|
+
if (isUpdating)
|
|
99
|
+
return [2 /*return*/];
|
|
100
|
+
// Optimistic update: add user's upvote and remove any downvote from the user
|
|
101
|
+
updateEntityState(__assign(__assign({}, entity), { upvotes: __spreadArray(__spreadArray([], (entity.upvotes || []), true), [user.id], false), downvotes: (entity.downvotes || []).filter(function (id) { return id !== user.id; }) }));
|
|
94
102
|
setIsUpdating(true);
|
|
95
103
|
_a.label = 1;
|
|
96
104
|
case 1:
|
|
97
105
|
_a.trys.push([1, 3, 4, 5]);
|
|
98
|
-
|
|
99
|
-
|
|
106
|
+
return [4 /*yield*/, upvoteEntityRequest({
|
|
107
|
+
entityId: entity.id,
|
|
108
|
+
})];
|
|
100
109
|
case 2:
|
|
101
|
-
|
|
102
|
-
|
|
110
|
+
updatedEntity = _a.sent();
|
|
111
|
+
setEntity(updatedEntity);
|
|
103
112
|
return [3 /*break*/, 5];
|
|
104
113
|
case 3:
|
|
105
114
|
err_1 = _a.sent();
|
|
@@ -112,43 +121,115 @@ function useEntityVotes(props) {
|
|
|
112
121
|
case 5: return [2 /*return*/];
|
|
113
122
|
}
|
|
114
123
|
});
|
|
115
|
-
}); }
|
|
116
|
-
var
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
};
|
|
124
|
+
}); };
|
|
125
|
+
var handleRemoveUpvote = function () { return __awaiter(_this, void 0, void 0, function () {
|
|
126
|
+
var updatedEntity, err_2;
|
|
127
|
+
return __generator(this, function (_a) {
|
|
128
|
+
switch (_a.label) {
|
|
129
|
+
case 0:
|
|
130
|
+
if (!user)
|
|
131
|
+
throw new Error("No authenticated user");
|
|
132
|
+
if (!entity)
|
|
133
|
+
throw new Error("No entity provided");
|
|
134
|
+
if (isUpdating)
|
|
135
|
+
return [2 /*return*/];
|
|
136
|
+
// Optimistic update: remove user's upvote
|
|
137
|
+
updateEntityState(__assign(__assign({}, entity), { upvotes: (entity.upvotes || []).filter(function (id) { return id !== user.id; }) }));
|
|
138
|
+
setIsUpdating(true);
|
|
139
|
+
_a.label = 1;
|
|
140
|
+
case 1:
|
|
141
|
+
_a.trys.push([1, 3, 4, 5]);
|
|
142
|
+
return [4 /*yield*/, removeEntityUpvoteRequest({
|
|
143
|
+
entityId: entity.id,
|
|
144
|
+
})];
|
|
145
|
+
case 2:
|
|
146
|
+
updatedEntity = _a.sent();
|
|
147
|
+
setEntity(updatedEntity);
|
|
148
|
+
return [3 /*break*/, 5];
|
|
149
|
+
case 3:
|
|
150
|
+
err_2 = _a.sent();
|
|
151
|
+
revertToPreviousState();
|
|
152
|
+
(0, handleError_1.handleError)(err_2, "Failed to remove upvote from entity: ");
|
|
153
|
+
return [3 /*break*/, 5];
|
|
154
|
+
case 4:
|
|
155
|
+
setIsUpdating(false);
|
|
156
|
+
return [7 /*endfinally*/];
|
|
157
|
+
case 5: return [2 /*return*/];
|
|
158
|
+
}
|
|
159
|
+
});
|
|
160
|
+
}); };
|
|
161
|
+
var handleDownvote = function () { return __awaiter(_this, void 0, void 0, function () {
|
|
162
|
+
var updatedEntity, err_3;
|
|
163
|
+
return __generator(this, function (_a) {
|
|
164
|
+
switch (_a.label) {
|
|
165
|
+
case 0:
|
|
166
|
+
if (!user)
|
|
167
|
+
throw new Error("No authenticated user");
|
|
168
|
+
if (!entity)
|
|
169
|
+
throw new Error("No entity provided");
|
|
170
|
+
if (isUpdating)
|
|
171
|
+
return [2 /*return*/];
|
|
172
|
+
// Optimistic update: add user's downvote and remove any upvote from the user
|
|
173
|
+
updateEntityState(__assign(__assign({}, entity), { downvotes: __spreadArray(__spreadArray([], (entity.downvotes || []), true), [user.id], false), upvotes: (entity.upvotes || []).filter(function (id) { return id !== user.id; }) }));
|
|
174
|
+
setIsUpdating(true);
|
|
175
|
+
_a.label = 1;
|
|
176
|
+
case 1:
|
|
177
|
+
_a.trys.push([1, 3, 4, 5]);
|
|
178
|
+
return [4 /*yield*/, downvoteEntityRequest({
|
|
179
|
+
entityId: entity.id,
|
|
180
|
+
})];
|
|
181
|
+
case 2:
|
|
182
|
+
updatedEntity = _a.sent();
|
|
183
|
+
setEntity(updatedEntity);
|
|
184
|
+
return [3 /*break*/, 5];
|
|
185
|
+
case 3:
|
|
186
|
+
err_3 = _a.sent();
|
|
187
|
+
revertToPreviousState();
|
|
188
|
+
(0, handleError_1.handleError)(err_3, "Failed to update entity vote: ");
|
|
189
|
+
return [3 /*break*/, 5];
|
|
190
|
+
case 4:
|
|
191
|
+
setIsUpdating(false);
|
|
192
|
+
return [7 /*endfinally*/];
|
|
193
|
+
case 5: return [2 /*return*/];
|
|
194
|
+
}
|
|
195
|
+
});
|
|
196
|
+
}); };
|
|
197
|
+
var handleRemoveDownvote = function () { return __awaiter(_this, void 0, void 0, function () {
|
|
198
|
+
var updatedEntity, err_4;
|
|
199
|
+
return __generator(this, function (_a) {
|
|
200
|
+
switch (_a.label) {
|
|
201
|
+
case 0:
|
|
202
|
+
if (!user)
|
|
203
|
+
throw new Error("No authenticated user");
|
|
204
|
+
if (!entity)
|
|
205
|
+
throw new Error("No entity provided");
|
|
206
|
+
if (isUpdating)
|
|
207
|
+
return [2 /*return*/];
|
|
208
|
+
// Optimistic update: remove user's downvote
|
|
209
|
+
updateEntityState(__assign(__assign({}, entity), { downvotes: (entity.downvotes || []).filter(function (id) { return id !== user.id; }) }));
|
|
210
|
+
setIsUpdating(true);
|
|
211
|
+
_a.label = 1;
|
|
212
|
+
case 1:
|
|
213
|
+
_a.trys.push([1, 3, 4, 5]);
|
|
214
|
+
return [4 /*yield*/, removeEntityDownvoteRequest({
|
|
215
|
+
entityId: entity.id,
|
|
216
|
+
})];
|
|
217
|
+
case 2:
|
|
218
|
+
updatedEntity = _a.sent();
|
|
219
|
+
setEntity(updatedEntity);
|
|
220
|
+
return [3 /*break*/, 5];
|
|
221
|
+
case 3:
|
|
222
|
+
err_4 = _a.sent();
|
|
223
|
+
revertToPreviousState();
|
|
224
|
+
(0, handleError_1.handleError)(err_4, "Failed to remove downvote from entity: ");
|
|
225
|
+
return [3 /*break*/, 5];
|
|
226
|
+
case 4:
|
|
227
|
+
setIsUpdating(false);
|
|
228
|
+
return [7 /*endfinally*/];
|
|
229
|
+
case 5: return [2 /*return*/];
|
|
230
|
+
}
|
|
231
|
+
});
|
|
232
|
+
}); };
|
|
152
233
|
return {
|
|
153
234
|
upvoteEntity: handleUpvote,
|
|
154
235
|
removeEntityUpvote: handleRemoveUpvote,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useEntityVotes.js","sourceRoot":"","sources":["../../../../src/hooks/entities/useEntityVotes.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+BAA8C;AAC9C,uDAAsD;AAEtD,
|
|
1
|
+
{"version":3,"file":"useEntityVotes.js","sourceRoot":"","sources":["../../../../src/hooks/entities/useEntityVotes.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
+
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);
|
|
13
|
+
return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
+
function step(op) {
|
|
16
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
18
|
+
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;
|
|
19
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
+
switch (op[0]) {
|
|
21
|
+
case 0: case 1: t = op; break;
|
|
22
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
+
default:
|
|
26
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
+
if (t[2]) _.ops.pop();
|
|
31
|
+
_.trys.pop(); continue;
|
|
32
|
+
}
|
|
33
|
+
op = body.call(thisArg, _);
|
|
34
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
39
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
40
|
+
};
|
|
41
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
42
|
+
var react_1 = require("react");
|
|
43
|
+
var useAxiosPrivate_1 = __importDefault(require("../../config/useAxiosPrivate"));
|
|
44
|
+
var useProject_1 = __importDefault(require("../projects/useProject"));
|
|
45
|
+
function useRemoveEntityDownvote() {
|
|
46
|
+
var _this = this;
|
|
47
|
+
var axios = (0, useAxiosPrivate_1.default)();
|
|
48
|
+
var projectId = (0, useProject_1.default)().projectId;
|
|
49
|
+
var basePath = projectId ? "/".concat(projectId, "/entities") : null;
|
|
50
|
+
var removeEntityDownvote = (0, react_1.useCallback)(function (_a) { return __awaiter(_this, [_a], void 0, function (_b) {
|
|
51
|
+
var path, response;
|
|
52
|
+
var entityId = _b.entityId;
|
|
53
|
+
return __generator(this, function (_c) {
|
|
54
|
+
switch (_c.label) {
|
|
55
|
+
case 0:
|
|
56
|
+
if (!entityId) {
|
|
57
|
+
throw new Error("No entity ID provided");
|
|
58
|
+
}
|
|
59
|
+
if (!basePath) {
|
|
60
|
+
throw new Error("No projectId available");
|
|
61
|
+
}
|
|
62
|
+
path = [basePath, entityId, "remove-downvote"].join("/");
|
|
63
|
+
return [4 /*yield*/, axios.patch(path)];
|
|
64
|
+
case 1:
|
|
65
|
+
response = _c.sent();
|
|
66
|
+
return [2 /*return*/, response.data];
|
|
67
|
+
}
|
|
68
|
+
});
|
|
69
|
+
}); }, [axios, basePath]);
|
|
70
|
+
return removeEntityDownvote;
|
|
71
|
+
}
|
|
72
|
+
exports.default = useRemoveEntityDownvote;
|
|
73
|
+
//# sourceMappingURL=useRemoveEntityDownvote.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useRemoveEntityDownvote.js","sourceRoot":"","sources":["../../../../src/hooks/entities/useRemoveEntityDownvote.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+BAAoC;AACpC,iFAA2D;AAC3D,sEAAgD;AAEhD,SAAS,uBAAuB;IAAhC,iBAqBC;IApBC,IAAM,KAAK,GAAG,IAAA,yBAAe,GAAE,CAAC;IACxB,IAAA,SAAS,GAAK,IAAA,oBAAU,GAAE,UAAjB,CAAkB;IACnC,IAAM,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAC,WAAI,SAAS,cAAW,CAAC,CAAC,CAAC,IAAI,CAAC;IAE7D,IAAM,oBAAoB,GAAG,IAAA,mBAAW,EACtC,gEAAO,EAAkC;;YAAhC,QAAQ,cAAA;;;;oBACf,IAAI,CAAC,QAAQ,EAAE,CAAC;wBACd,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;oBAC3C,CAAC;oBACD,IAAI,CAAC,QAAQ,EAAE,CAAC;wBACd,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;oBAC5C,CAAC;oBACK,IAAI,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,iBAAiB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;oBAC9C,qBAAM,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,EAAA;;oBAAlC,QAAQ,GAAG,SAAuB;oBACxC,sBAAO,QAAQ,CAAC,IAAI,EAAC;;;SACtB,EACD,CAAC,KAAK,EAAE,QAAQ,CAAC,CAClB,CAAC;IAEF,OAAO,oBAAoB,CAAC;AAC9B,CAAC;AAED,kBAAe,uBAAuB,CAAC"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
+
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);
|
|
13
|
+
return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
+
function step(op) {
|
|
16
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
18
|
+
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;
|
|
19
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
+
switch (op[0]) {
|
|
21
|
+
case 0: case 1: t = op; break;
|
|
22
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
+
default:
|
|
26
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
+
if (t[2]) _.ops.pop();
|
|
31
|
+
_.trys.pop(); continue;
|
|
32
|
+
}
|
|
33
|
+
op = body.call(thisArg, _);
|
|
34
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
39
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
40
|
+
};
|
|
41
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
42
|
+
var react_1 = require("react");
|
|
43
|
+
var useAxiosPrivate_1 = __importDefault(require("../../config/useAxiosPrivate"));
|
|
44
|
+
var useProject_1 = __importDefault(require("../projects/useProject"));
|
|
45
|
+
function useRemoveEntityUpvote() {
|
|
46
|
+
var _this = this;
|
|
47
|
+
var axios = (0, useAxiosPrivate_1.default)();
|
|
48
|
+
var projectId = (0, useProject_1.default)().projectId;
|
|
49
|
+
var basePath = projectId ? "/".concat(projectId, "/entities") : null;
|
|
50
|
+
var removeEntityUpvote = (0, react_1.useCallback)(function (_a) { return __awaiter(_this, [_a], void 0, function (_b) {
|
|
51
|
+
var path, response;
|
|
52
|
+
var entityId = _b.entityId;
|
|
53
|
+
return __generator(this, function (_c) {
|
|
54
|
+
switch (_c.label) {
|
|
55
|
+
case 0:
|
|
56
|
+
if (!entityId) {
|
|
57
|
+
throw new Error("No entity ID provided");
|
|
58
|
+
}
|
|
59
|
+
if (!basePath) {
|
|
60
|
+
throw new Error("No projectId available");
|
|
61
|
+
}
|
|
62
|
+
path = [basePath, entityId, "remove-upvote"].join("/");
|
|
63
|
+
return [4 /*yield*/, axios.patch(path)];
|
|
64
|
+
case 1:
|
|
65
|
+
response = _c.sent();
|
|
66
|
+
return [2 /*return*/, response.data];
|
|
67
|
+
}
|
|
68
|
+
});
|
|
69
|
+
}); }, [axios, basePath]);
|
|
70
|
+
return removeEntityUpvote;
|
|
71
|
+
}
|
|
72
|
+
exports.default = useRemoveEntityUpvote;
|
|
73
|
+
//# sourceMappingURL=useRemoveEntityUpvote.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useRemoveEntityUpvote.js","sourceRoot":"","sources":["../../../../src/hooks/entities/useRemoveEntityUpvote.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+BAAoC;AACpC,iFAA2D;AAC3D,sEAAgD;AAEhD,SAAS,qBAAqB;IAA9B,iBAqBC;IApBC,IAAM,KAAK,GAAG,IAAA,yBAAe,GAAE,CAAC;IACxB,IAAA,SAAS,GAAK,IAAA,oBAAU,GAAE,UAAjB,CAAkB;IACnC,IAAM,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAC,WAAI,SAAS,cAAW,CAAC,CAAC,CAAC,IAAI,CAAC;IAE7D,IAAM,kBAAkB,GAAG,IAAA,mBAAW,EACpC,gEAAO,EAAkC;;YAAhC,QAAQ,cAAA;;;;oBACf,IAAI,CAAC,QAAQ,EAAE,CAAC;wBACd,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;oBAC3C,CAAC;oBACD,IAAI,CAAC,QAAQ,EAAE,CAAC;wBACd,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;oBAC5C,CAAC;oBACK,IAAI,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,eAAe,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;oBAC5C,qBAAM,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,EAAA;;oBAAlC,QAAQ,GAAG,SAAuB;oBACxC,sBAAO,QAAQ,CAAC,IAAI,EAAC;;;SACtB,EACD,CAAC,KAAK,EAAE,QAAQ,CAAC,CAClB,CAAC;IAEF,OAAO,kBAAkB,CAAC;AAC5B,CAAC;AAED,kBAAe,qBAAqB,CAAC"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
+
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);
|
|
13
|
+
return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
+
function step(op) {
|
|
16
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
18
|
+
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;
|
|
19
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
+
switch (op[0]) {
|
|
21
|
+
case 0: case 1: t = op; break;
|
|
22
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
+
default:
|
|
26
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
+
if (t[2]) _.ops.pop();
|
|
31
|
+
_.trys.pop(); continue;
|
|
32
|
+
}
|
|
33
|
+
op = body.call(thisArg, _);
|
|
34
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
39
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
40
|
+
};
|
|
41
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
42
|
+
var react_1 = require("react");
|
|
43
|
+
var useAxiosPrivate_1 = __importDefault(require("../../config/useAxiosPrivate"));
|
|
44
|
+
var useProject_1 = __importDefault(require("../projects/useProject"));
|
|
45
|
+
function useUpvoteEntity() {
|
|
46
|
+
var _this = this;
|
|
47
|
+
var axios = (0, useAxiosPrivate_1.default)();
|
|
48
|
+
var projectId = (0, useProject_1.default)().projectId;
|
|
49
|
+
var basePath = projectId ? "/".concat(projectId, "/entities") : null;
|
|
50
|
+
var upvoteEntity = (0, react_1.useCallback)(function (_a) { return __awaiter(_this, [_a], void 0, function (_b) {
|
|
51
|
+
var path, response;
|
|
52
|
+
var entityId = _b.entityId;
|
|
53
|
+
return __generator(this, function (_c) {
|
|
54
|
+
switch (_c.label) {
|
|
55
|
+
case 0:
|
|
56
|
+
if (!entityId) {
|
|
57
|
+
throw new Error("No entity ID provided");
|
|
58
|
+
}
|
|
59
|
+
if (!basePath) {
|
|
60
|
+
throw new Error("No projectId available");
|
|
61
|
+
}
|
|
62
|
+
path = [basePath, entityId, "upvote"].join("/");
|
|
63
|
+
return [4 /*yield*/, axios.patch(path)];
|
|
64
|
+
case 1:
|
|
65
|
+
response = _c.sent();
|
|
66
|
+
return [2 /*return*/, response.data];
|
|
67
|
+
}
|
|
68
|
+
});
|
|
69
|
+
}); }, [axios, basePath]);
|
|
70
|
+
return upvoteEntity;
|
|
71
|
+
}
|
|
72
|
+
exports.default = useUpvoteEntity;
|
|
73
|
+
//# sourceMappingURL=useUpvoteEntity.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useUpvoteEntity.js","sourceRoot":"","sources":["../../../../src/hooks/entities/useUpvoteEntity.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+BAAoC;AACpC,iFAA2D;AAC3D,sEAAgD;AAEhD,SAAS,eAAe;IAAxB,iBAqBC;IApBC,IAAM,KAAK,GAAG,IAAA,yBAAe,GAAE,CAAC;IACxB,IAAA,SAAS,GAAK,IAAA,oBAAU,GAAE,UAAjB,CAAkB;IACnC,IAAM,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAC,WAAI,SAAS,cAAW,CAAC,CAAC,CAAC,IAAI,CAAC;IAE7D,IAAM,YAAY,GAAG,IAAA,mBAAW,EAC9B,gEAAO,EAAkC;;YAAhC,QAAQ,cAAA;;;;oBACf,IAAI,CAAC,QAAQ,EAAE,CAAC;wBACd,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;oBAC3C,CAAC;oBACD,IAAI,CAAC,QAAQ,EAAE,CAAC;wBACd,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;oBAC5C,CAAC;oBACK,IAAI,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;oBACrC,qBAAM,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,EAAA;;oBAAlC,QAAQ,GAAG,SAAuB;oBACxC,sBAAO,QAAQ,CAAC,IAAI,EAAC;;;SACtB,EACD,CAAC,KAAK,EAAE,QAAQ,CAAC,CAClB,CAAC;IAEF,OAAO,YAAY,CAAC;AACtB,CAAC;AAED,kBAAe,eAAe,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const handleError: (err:
|
|
1
|
+
export declare const handleError: (err: any, baseMessage?: string) => string;
|
|
@@ -2,12 +2,15 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.handleError = void 0;
|
|
4
4
|
var handleError = function (err, baseMessage) {
|
|
5
|
-
var
|
|
6
|
-
if (err
|
|
7
|
-
|
|
5
|
+
var messages = [baseMessage !== null && baseMessage !== void 0 ? baseMessage : ""];
|
|
6
|
+
if (err === null || err === void 0 ? void 0 : err.error) {
|
|
7
|
+
messages.push(err.error);
|
|
8
8
|
}
|
|
9
|
-
|
|
10
|
-
|
|
9
|
+
if (err === null || err === void 0 ? void 0 : err.details) {
|
|
10
|
+
messages.push(err.details);
|
|
11
|
+
}
|
|
12
|
+
console.error(messages.join(" - "));
|
|
13
|
+
return messages.join(" - ");
|
|
11
14
|
};
|
|
12
15
|
exports.handleError = handleError;
|
|
13
16
|
//# sourceMappingURL=handleError.js.map
|