eslint-config: add de-morgan

This commit is contained in:
undefined committed 2025-02-16 00:16:43 +08:00
1 parent 92afe8abef
commit 81d69adfb0
10 files changed
+19 -19

No files matched your search

+2 -4
View File
@@ -275,8 +275,7 @@ class DiscussionDetailHandler extends DiscussionHandler {
@param('drid', Types.ObjectId)
async postDeleteReply(domainId: string, drid: ObjectId) {
const deleteBy = this.user.own(this.drdoc) ? 'self' : this.user.own(this.ddoc) ? 'DiscussionOwner' : 'Admin';
if (!(this.user.own(this.ddoc)
&& this.user.hasPerm(PERM.PERM_DELETE_DISCUSSION_REPLY_SELF_DISCUSSION))) {
if (!this.user.own(this.ddoc) || !this.user.hasPerm(PERM.PERM_DELETE_DISCUSSION_REPLY_SELF_DISCUSSION)) {
if (!this.user.own(this.drdoc)) {
this.checkPerm(PERM.PERM_DELETE_DISCUSSION_REPLY);
} else this.checkPerm(PERM.PERM_DELETE_DISCUSSION_REPLY_SELF);
@@ -316,8 +315,7 @@ class DiscussionDetailHandler extends DiscussionHandler {
@param('drrid', Types.ObjectId)
async postDeleteTailReply(domainId: string, drid: ObjectId, drrid: ObjectId) {
const deleteBy = this.user.own(this.drrdoc) ? 'self' : 'Admin';
if (!(this.user.own(this.drrdoc)
&& this.user.hasPerm(PERM.PERM_DELETE_DISCUSSION_REPLY_SELF))) {
if (!this.user.own(this.drrdoc) || !this.user.hasPerm(PERM.PERM_DELETE_DISCUSSION_REPLY_SELF)) {
this.checkPerm(PERM.PERM_DELETE_DISCUSSION_REPLY);
}
const msg = JSON.stringify({
+1 -1
View File
@@ -411,7 +411,7 @@ class RecordDetailConnectionHandler extends ConnectionHandler {
rdoc.compilerTexts = [];
}
if (!(rdoc.contest && this.user._id === rdoc.uid)) {
if (!rdoc.contest || this.user._id !== rdoc.uid) {
if (!problem.canViewBy(pdoc, this.user)) throw new PermissionError(PERM.PERM_VIEW_PROBLEM_HIDDEN);
}
+4 -4
View File
@@ -275,15 +275,15 @@ export function flushNodes(domainId: string) {
export async function getVnode(domainId: string, type: number, id: string, uid?: number) {
if (type === document.TYPE_PROBLEM) {
const pdoc = await problem.get(domainId, Number.isSafeInteger(+id) ? +id : id, problem.PROJECTION_LIST);
if (!pdoc) throw new DiscussionNodeNotFoundError(id);
if (!pdoc) throw new DiscussionNodeNotFoundError(`problem/${id}`);
return { ...pdoc, type, id: pdoc.docId };
}
if ([document.TYPE_CONTEST, document.TYPE_TRAINING].includes(type as any)) {
const model = type === document.TYPE_TRAINING ? training : contest;
if (!ObjectId.isValid(id)) throw new DiscussionNodeNotFoundError(id);
if (!ObjectId.isValid(id)) throw new DiscussionNodeNotFoundError(`contest/${id}`);
const _id = new ObjectId(id);
const tdoc = await model.get(domainId, _id);
if (!tdoc) throw new DiscussionNodeNotFoundError(id);
if (!tdoc) throw new DiscussionNodeNotFoundError(`contest/${id}`);
if (uid) {
const tsdoc = await model.getStatus(domainId, _id, uid);
tdoc.attend = tsdoc?.attend || tsdoc?.enroll;
@@ -320,7 +320,7 @@ export async function getListVnodes(domainId: string, ddocs: any, getHidden = fa
export function checkVNodeVisibility(type: number, vnode: any, user: User) {
if (type === document.TYPE_PROBLEM) {
if (vnode.hidden && !(user.own(vnode) || user.hasPerm(PERM.PERM_VIEW_PROBLEM_HIDDEN))) return false;
if (vnode.hidden && !user.own(vnode) && !user.hasPerm(PERM.PERM_VIEW_PROBLEM_HIDDEN)) return false;
}
if ([document.TYPE_CONTEST, document.TYPE_TRAINING].includes(type as any)) {
if (!user.own(vnode) && vnode.assign?.length && !Set.intersection(vnode.assign, user.group).size) return false;
+1 -1
View File
@@ -396,7 +396,7 @@ export class ProblemModel {
// TODO enhance
if (pdocs.length !== pids.length) {
for (const pid of pids) {
if (!(r[pid] || l[pid])) {
if (!r[pid] && !l[pid]) {
if (doThrow) throw new ProblemNotFoundError(domainId, pid);
if (!indexByDocIdOnly) r[pid] = { ...ProblemModel.default, domainId, pid: pid.toString() };
}
+1 -2
View File
@@ -123,8 +123,7 @@ export class ConnectionHandler extends ConnectionHandlerOriginal {
}
onerror(err: HydroError) {
if (!(err instanceof NotFoundError)
&& !((err instanceof PrivilegeError || err instanceof PermissionError) && this.user?._id === 0)) {
if (![NotFoundError, PrivilegeError, PermissionError].some((i) => err instanceof i) || this.user?._id !== 0) {
logger.error(`Path:${this.request.path}, User:${this.user?._id}(${this.user?.uname})`);
logger.error(err);
}
+2 -2
View File
@@ -154,11 +154,11 @@ export default class Watcher extends Service {
for (const filename in require.cache) {
const module = require.cache[filename];
const plugin = unwrapExports(module.exports);
if (!(typeof plugin === 'object' && plugin && 'apply' in plugin)) continue;
if (typeof plugin !== 'object' || !plugin || !('apply' in plugin)) continue;
const runtime = this.ctx.registry.get(plugin);
if (!runtime || this.declined.has(filename)) continue;
pending.set(filename, runtime);
if (!(plugin && 'sideEffect' in plugin && plugin['sideEffect'])) this.declined.add(filename);
if (!plugin || !('sideEffect' in plugin) || !plugin['sideEffect']) this.declined.add(filename);
}
for (const [filename, runtime] of pending) {