@7365admin1/core 3.52.16 → 3.52.18
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/CHANGELOG.md +39 -0
- package/dist/index.js +25 -9
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +25 -9
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
- package/test/e2e/harness.mjs +5 -2
- package/test/e2e/patrol-email-scope.e2e.test.mjs +0 -1
- package/test/e2e/subscription-read-scope.e2e.test.mjs +182 -0
- package/test/e2e/user-email-lookup-leak.e2e.test.mjs +68 -1
package/dist/index.mjs
CHANGED
|
@@ -18091,11 +18091,11 @@ async function requireUserFieldWrite(req, userId, field) {
|
|
|
18091
18091
|
}
|
|
18092
18092
|
|
|
18093
18093
|
// src/utils/user-response.util.ts
|
|
18094
|
-
function
|
|
18094
|
+
function publicIdentity(user) {
|
|
18095
18095
|
if (!user || typeof user !== "object")
|
|
18096
18096
|
return user;
|
|
18097
|
-
const {
|
|
18098
|
-
return
|
|
18097
|
+
const { _id, name, email } = user;
|
|
18098
|
+
return { _id, name, email };
|
|
18099
18099
|
}
|
|
18100
18100
|
|
|
18101
18101
|
// src/controllers/user.controller.ts
|
|
@@ -18187,7 +18187,7 @@ function useUserController() {
|
|
|
18187
18187
|
return;
|
|
18188
18188
|
}
|
|
18189
18189
|
const user = await _getByEmail(email);
|
|
18190
|
-
res.json(
|
|
18190
|
+
res.json(publicIdentity(user));
|
|
18191
18191
|
return;
|
|
18192
18192
|
} catch (error2) {
|
|
18193
18193
|
logger24.log({ level: "error", message: `${error2.message}` });
|
|
@@ -31232,6 +31232,7 @@ function useSubscriptionController() {
|
|
|
31232
31232
|
return;
|
|
31233
31233
|
}
|
|
31234
31234
|
try {
|
|
31235
|
+
await requireOrgAccess(req, _id);
|
|
31235
31236
|
const data = await _getByOrgId(_id);
|
|
31236
31237
|
res.json(data);
|
|
31237
31238
|
return;
|
|
@@ -31258,6 +31259,7 @@ function useSubscriptionController() {
|
|
|
31258
31259
|
const page = parseInt(req.query.page ?? "1");
|
|
31259
31260
|
const status = req.query.status ?? "active";
|
|
31260
31261
|
try {
|
|
31262
|
+
await requirePlatformStaff(req);
|
|
31261
31263
|
const data = await _getSubscriptions({ search, page, status });
|
|
31262
31264
|
res.json(data);
|
|
31263
31265
|
return;
|
|
@@ -61241,10 +61243,20 @@ function usePatrolEmailController() {
|
|
|
61241
61243
|
getById: _getById,
|
|
61242
61244
|
deleteById: _deleteById
|
|
61243
61245
|
} = usePatrolEmailService();
|
|
61246
|
+
async function requirePatrolEmailReach(req, site) {
|
|
61247
|
+
await requireSiteReach(req, site);
|
|
61248
|
+
}
|
|
61249
|
+
async function requireRecordReach(req, id) {
|
|
61250
|
+
const record = await _getById(id);
|
|
61251
|
+
await requirePatrolEmailReach(req, record?.site);
|
|
61252
|
+
return record;
|
|
61253
|
+
}
|
|
61244
61254
|
async function send2(req, res, next) {
|
|
61245
|
-
const
|
|
61246
|
-
|
|
61247
|
-
|
|
61255
|
+
const actor = await resolveInviteActor(callerId(req));
|
|
61256
|
+
const { error, value } = schemaSendPatrolEmail.validate(
|
|
61257
|
+
{ ...req.body, createdBy: { _id: actor.id, name: actor.name } },
|
|
61258
|
+
{ abortEarly: false }
|
|
61259
|
+
);
|
|
61248
61260
|
if (error) {
|
|
61249
61261
|
const messages = error.details.map((d) => d.message).join(", ");
|
|
61250
61262
|
logger114.log({ level: "error", message: messages });
|
|
@@ -61252,6 +61264,7 @@ function usePatrolEmailController() {
|
|
|
61252
61264
|
return;
|
|
61253
61265
|
}
|
|
61254
61266
|
try {
|
|
61267
|
+
await requirePatrolEmailReach(req, value.site);
|
|
61255
61268
|
const cookieHeader = req.headers.cookie;
|
|
61256
61269
|
const data = await _send({
|
|
61257
61270
|
site: value.site,
|
|
@@ -61295,6 +61308,7 @@ function usePatrolEmailController() {
|
|
|
61295
61308
|
return;
|
|
61296
61309
|
}
|
|
61297
61310
|
try {
|
|
61311
|
+
await requireRecordReach(req, params.value.id);
|
|
61298
61312
|
const data = await _resend({
|
|
61299
61313
|
id: params.value.id,
|
|
61300
61314
|
createdBy: value.createdBy,
|
|
@@ -61322,6 +61336,7 @@ function usePatrolEmailController() {
|
|
|
61322
61336
|
return;
|
|
61323
61337
|
}
|
|
61324
61338
|
try {
|
|
61339
|
+
await requirePatrolEmailReach(req, value.site);
|
|
61325
61340
|
res.json(await _getAll(value));
|
|
61326
61341
|
return;
|
|
61327
61342
|
} catch (err) {
|
|
@@ -61341,7 +61356,7 @@ function usePatrolEmailController() {
|
|
|
61341
61356
|
return;
|
|
61342
61357
|
}
|
|
61343
61358
|
try {
|
|
61344
|
-
res.json({ data: await
|
|
61359
|
+
res.json({ data: await requireRecordReach(req, value.id) });
|
|
61345
61360
|
return;
|
|
61346
61361
|
} catch (err) {
|
|
61347
61362
|
logger114.log({ level: "error", message: `${err.message}` });
|
|
@@ -61360,6 +61375,7 @@ function usePatrolEmailController() {
|
|
|
61360
61375
|
return;
|
|
61361
61376
|
}
|
|
61362
61377
|
try {
|
|
61378
|
+
await requireRecordReach(req, value.id);
|
|
61363
61379
|
res.json({ message: await _deleteById(value.id) });
|
|
61364
61380
|
return;
|
|
61365
61381
|
} catch (err) {
|
|
@@ -86203,7 +86219,7 @@ function useUserControllerV2() {
|
|
|
86203
86219
|
return rejectValidation(error, next);
|
|
86204
86220
|
try {
|
|
86205
86221
|
const user = await _getUserByEmail(value);
|
|
86206
|
-
res.json(
|
|
86222
|
+
res.json(publicIdentity(user));
|
|
86207
86223
|
return;
|
|
86208
86224
|
} catch (err) {
|
|
86209
86225
|
logger202.log({ level: "error", message: `${err.message}` });
|