Merge tag '2023.9.0' into merge-upstream

This commit is contained in:
riku6460
2023-09-25 12:43:07 +09:00
1235 changed files with 19016 additions and 13835 deletions

View File

@@ -4,14 +4,14 @@
*/
import * as WebSocket from 'ws';
import type { MiUser } from '@/models/entities/User.js';
import type { MiAccessToken } from '@/models/entities/AccessToken.js';
import type { MiUser } from '@/models/User.js';
import type { MiAccessToken } from '@/models/AccessToken.js';
import type { Packed } from '@/misc/json-schema.js';
import type { NoteReadService } from '@/core/NoteReadService.js';
import type { NotificationService } from '@/core/NotificationService.js';
import { bindThis } from '@/decorators.js';
import { CacheService } from '@/core/CacheService.js';
import { MiUserProfile } from '@/models/index.js';
import { MiUserProfile } from '@/models/_.js';
import type { ChannelsService } from './ChannelsService.js';
import type { EventEmitter } from 'events';
import type Channel from './channel.js';
@@ -20,6 +20,7 @@ import type { StreamEventEmitter, StreamMessages } from './types.js';
/**
* Main stream connection
*/
// eslint-disable-next-line import/no-default-export
export default class Connection {
public user?: MiUser;
public token?: MiAccessToken;
@@ -34,7 +35,7 @@ export default class Connection {
public userIdsWhoMeMuting: Set<string> = new Set();
public userIdsWhoBlockingMe: Set<string> = new Set();
public userIdsWhoMeMutingRenotes: Set<string> = new Set();
private fetchIntervalId: NodeJS.Timer | null = null;
private fetchIntervalId: NodeJS.Timeout | null = null;
constructor(
private channelsService: ChannelsService,

View File

@@ -4,11 +4,12 @@
*/
import { bindThis } from '@/decorators.js';
import type Connection from './index.js';
import type Connection from './Connection.js';
/**
* Stream channel
*/
// eslint-disable-next-line import/no-default-export
export default abstract class Channel {
protected connection: Connection;
public id: string;

View File

@@ -4,8 +4,8 @@
*/
import { Inject, Injectable } from '@nestjs/common';
import type { UserListJoiningsRepository, UserListsRepository } from '@/models/index.js';
import type { MiUser } from '@/models/entities/User.js';
import type { UserListJoiningsRepository, UserListsRepository } from '@/models/_.js';
import type { MiUser } from '@/models/User.js';
import { isUserRelated } from '@/misc/is-user-related.js';
import type { Packed } from '@/misc/json-schema.js';
import { NoteEntityService } from '@/core/entities/NoteEntityService.js';
@@ -19,7 +19,7 @@ class UserListChannel extends Channel {
public static requireCredential = false;
private listId: string;
public listUsers: MiUser['id'][] = [];
private listUsersClock: NodeJS.Timer;
private listUsersClock: NodeJS.Timeout;
constructor(
private userListsRepository: UserListsRepository,

View File

@@ -3,21 +3,21 @@
* SPDX-License-Identifier: AGPL-3.0-only
*/
import type { MiChannel } from '@/models/entities/Channel.js';
import type { MiUser } from '@/models/entities/User.js';
import type { MiUserProfile } from '@/models/entities/UserProfile.js';
import type { MiNote } from '@/models/entities/Note.js';
import type { MiAntenna } from '@/models/entities/Antenna.js';
import type { MiDriveFile } from '@/models/entities/DriveFile.js';
import type { MiDriveFolder } from '@/models/entities/DriveFolder.js';
import type { MiUserList } from '@/models/entities/UserList.js';
import type { MiAbuseUserReport } from '@/models/entities/AbuseUserReport.js';
import type { MiSignin } from '@/models/entities/Signin.js';
import type { MiPage } from '@/models/entities/Page.js';
import type { MiChannel } from '@/models/Channel.js';
import type { MiUser } from '@/models/User.js';
import type { MiUserProfile } from '@/models/UserProfile.js';
import type { MiNote } from '@/models/Note.js';
import type { MiAntenna } from '@/models/Antenna.js';
import type { MiDriveFile } from '@/models/DriveFile.js';
import type { MiDriveFolder } from '@/models/DriveFolder.js';
import type { MiUserList } from '@/models/UserList.js';
import type { MiAbuseUserReport } from '@/models/AbuseUserReport.js';
import type { MiSignin } from '@/models/Signin.js';
import type { MiPage } from '@/models/Page.js';
import type { Packed } from '@/misc/json-schema.js';
import type { MiWebhook } from '@/models/entities/Webhook.js';
import type { MiMeta } from '@/models/entities/Meta.js';
import { MiRole, MiRoleAssignment } from '@/models/index.js';
import type { MiWebhook } from '@/models/Webhook.js';
import type { MiMeta } from '@/models/Meta.js';
import { MiRole, MiRoleAssignment } from '@/models/_.js';
import type Emitter from 'strict-event-emitter-types';
import type { EventEmitter } from 'events';