summaryrefslogtreecommitdiff
path: root/packages
diff options
context:
space:
mode:
Diffstat (limited to 'packages')
-rw-r--r--packages/backend/src/@types/redis-lock.d.ts8
-rw-r--r--packages/backend/src/core/PushNotificationService.ts4
-rw-r--r--packages/backend/src/core/activitypub/type.ts4
-rw-r--r--packages/backend/src/server/api/endpoint-base.ts4
-rw-r--r--packages/shared/.eslintrc.js11
5 files changed, 25 insertions, 6 deletions
diff --git a/packages/backend/src/@types/redis-lock.d.ts b/packages/backend/src/@types/redis-lock.d.ts
new file mode 100644
index 0000000000..9242656a98
--- /dev/null
+++ b/packages/backend/src/@types/redis-lock.d.ts
@@ -0,0 +1,8 @@
+declare module 'redis-lock' {
+ import type Redis from 'ioredis';
+
+ type Lock = (lockName: string, timeout?: number, taskToPerform?: () => Promise<void>) => void;
+ function redisLock(client: Redis.Redis, retryDelay: number): Lock;
+
+ export = redisLock;
+}
diff --git a/packages/backend/src/core/PushNotificationService.ts b/packages/backend/src/core/PushNotificationService.ts
index 4b7ca5c968..545f86d764 100644
--- a/packages/backend/src/core/PushNotificationService.ts
+++ b/packages/backend/src/core/PushNotificationService.ts
@@ -9,7 +9,7 @@ import { MetaService } from '@/core/MetaService.js';
import { bindThis } from '@/decorators.js';
// Defined also packages/sw/types.ts#L13
-type pushNotificationsTypes = {
+type PushNotificationsTypes = {
'notification': Packed<'Notification'>;
'unreadAntennaNote': {
antenna: { id: string, name: string };
@@ -56,7 +56,7 @@ export class PushNotificationService {
}
@bindThis
- public async pushNotification<T extends keyof pushNotificationsTypes>(userId: string, type: T, body: pushNotificationsTypes[T]) {
+ public async pushNotification<T extends keyof PushNotificationsTypes>(userId: string, type: T, body: PushNotificationsTypes[T]) {
const meta = await this.metaService.fetch();
if (!meta.enableServiceWorker || meta.swPublicKey == null || meta.swPrivateKey == null) return;
diff --git a/packages/backend/src/core/activitypub/type.ts b/packages/backend/src/core/activitypub/type.ts
index 268bf99119..7f2ca9c05e 100644
--- a/packages/backend/src/core/activitypub/type.ts
+++ b/packages/backend/src/core/activitypub/type.ts
@@ -1,8 +1,8 @@
-export type obj = { [x: string]: any };
+export type Obj = { [x: string]: any };
export type ApObject = IObject | string | (IObject | string)[];
export interface IObject {
- '@context'?: string | string[] | obj | obj[];
+ '@context'?: string | string[] | Obj | Obj[];
type: string | string[];
id?: string;
name?: string | null;
diff --git a/packages/backend/src/server/api/endpoint-base.ts b/packages/backend/src/server/api/endpoint-base.ts
index 115526d997..ed283eb834 100644
--- a/packages/backend/src/server/api/endpoint-base.ts
+++ b/packages/backend/src/server/api/endpoint-base.ts
@@ -20,14 +20,14 @@ type File = {
};
// TODO: paramsの型をT['params']のスキーマ定義から推論する
-type executor<T extends IEndpointMeta, Ps extends Schema> =
+type Executor<T extends IEndpointMeta, Ps extends Schema> =
(params: SchemaType<Ps>, user: T['requireCredential'] extends true ? LocalUser : LocalUser | null, token: AccessToken | null, file?: File, cleanup?: () => any, ip?: string | null, headers?: Record<string, string> | null) =>
Promise<T['res'] extends undefined ? Response : SchemaType<NonNullable<T['res']>>>;
export abstract class Endpoint<T extends IEndpointMeta, Ps extends Schema> {
public exec: (params: any, user: T['requireCredential'] extends true ? LocalUser : LocalUser | null, token: AccessToken | null, file?: File, ip?: string | null, headers?: Record<string, string> | null) => Promise<any>;
- constructor(meta: T, paramDef: Ps, cb: executor<T, Ps>) {
+ constructor(meta: T, paramDef: Ps, cb: Executor<T, Ps>) {
const validate = ajv.compile(paramDef);
this.exec = (params: any, user: T['requireCredential'] extends true ? LocalUser : LocalUser | null, token: AccessToken | null, file?: File, ip?: string | null, headers?: Record<string, string> | null) => {
diff --git a/packages/shared/.eslintrc.js b/packages/shared/.eslintrc.js
index 6d38a9fb9f..7c979a93dc 100644
--- a/packages/shared/.eslintrc.js
+++ b/packages/shared/.eslintrc.js
@@ -77,6 +77,17 @@ module.exports = {
'@typescript-eslint/prefer-nullish-coalescing': [
'error',
],
+ '@typescript-eslint/naming-convention': [
+ 'error',
+ {
+ "selector": "typeLike",
+ "format": ["PascalCase"]
+ },
+ {
+ "selector": "typeParameter",
+ "format": []
+ }
+ ],
'import/no-unresolved': ['off'],
'import/no-default-export': ['warn'],
'import/order': ['warn', {