@atproto/ozone 0.0.16 → 0.0.17-next.1
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/api/util.d.ts +10 -0
- package/dist/auth-verifier.d.ts +8 -12
- package/dist/communication-service/template.d.ts +2 -2
- package/dist/config/config.d.ts +6 -0
- package/dist/config/env.d.ts +3 -2
- package/dist/config/secrets.d.ts +0 -2
- package/dist/context.d.ts +6 -0
- package/dist/daemon/blob-diverter.d.ts +26 -0
- package/dist/daemon/event-pusher.d.ts +6 -0
- package/dist/daemon/index.d.ts +1 -0
- package/dist/db/index.js +21 -1
- package/dist/db/index.js.map +3 -3
- package/dist/db/migrations/20240228T003647759Z-add-label-sigs.d.ts +3 -0
- package/dist/db/migrations/index.d.ts +1 -0
- package/dist/db/schema/index.d.ts +2 -1
- package/dist/db/schema/label.d.ts +4 -0
- package/dist/db/schema/moderation_event.d.ts +1 -1
- package/dist/db/schema/moderation_subject_status.d.ts +2 -2
- package/dist/db/schema/signing_key.d.ts +9 -0
- package/dist/index.js +10400 -10313
- package/dist/index.js.map +3 -3
- package/dist/lexicon/index.d.ts +55 -27
- package/dist/lexicon/lexicons.d.ts +5046 -4757
- package/dist/lexicon/types/app/bsky/actor/defs.d.ts +23 -1
- package/dist/lexicon/types/app/bsky/embed/record.d.ts +2 -1
- package/dist/lexicon/types/app/bsky/feed/defs.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/graph/defs.d.ts +3 -0
- package/dist/lexicon/types/app/bsky/labeler/defs.d.ts +41 -0
- package/dist/lexicon/types/app/bsky/labeler/getServices.d.ts +36 -0
- package/dist/lexicon/types/app/bsky/labeler/service.d.ts +14 -0
- package/dist/lexicon/types/com/atproto/admin/defs.d.ts +0 -304
- package/dist/lexicon/types/com/atproto/label/defs.d.ts +23 -0
- package/dist/lexicon/types/{com/atproto/admin/createCommunicationTemplate.d.ts → tools/ozone/communication/createTemplate.d.ts} +2 -2
- package/dist/lexicon/types/tools/ozone/communication/defs.d.ts +14 -0
- package/dist/lexicon/types/{com/atproto/admin/listCommunicationTemplates.d.ts → tools/ozone/communication/listTemplates.d.ts} +2 -2
- package/dist/lexicon/types/{com/atproto/admin/updateCommunicationTemplate.d.ts → tools/ozone/communication/updateTemplate.d.ts} +2 -2
- package/dist/lexicon/types/tools/ozone/moderation/defs.d.ts +269 -0
- package/dist/lexicon/types/{com/atproto/admin/emitModerationEvent.d.ts → tools/ozone/moderation/emitEvent.d.ts} +5 -4
- package/dist/lexicon/types/{com/atproto/admin/getModerationEvent.d.ts → tools/ozone/moderation/getEvent.d.ts} +2 -2
- package/dist/lexicon/types/{com/atproto/admin → tools/ozone/moderation}/getRecord.d.ts +2 -2
- package/dist/lexicon/types/{com/atproto/admin → tools/ozone/moderation}/getRepo.d.ts +2 -2
- package/dist/lexicon/types/{com/atproto/admin/queryModerationEvents.d.ts → tools/ozone/moderation/queryEvents.d.ts} +2 -2
- package/dist/lexicon/types/{com/atproto/admin/queryModerationStatuses.d.ts → tools/ozone/moderation/queryStatuses.d.ts} +2 -2
- package/dist/lexicon/types/{com/atproto/admin → tools/ozone/moderation}/searchRepos.d.ts +2 -2
- package/dist/mod-service/index.d.ts +16 -15
- package/dist/mod-service/subject.d.ts +1 -1
- package/dist/mod-service/types.d.ts +2 -2
- package/dist/mod-service/util.d.ts +6 -0
- package/dist/mod-service/views.d.ts +9 -3
- package/dist/sequencer/sequencer.d.ts +6 -4
- package/dist/util.d.ts +2 -0
- package/package.json +9 -8
- package/src/api/{admin/createCommunicationTemplate.ts → communication/createTemplate.ts} +2 -2
- package/src/api/{admin/deleteCommunicationTemplate.ts → communication/deleteTemplate.ts} +2 -2
- package/src/api/{admin/listCommunicationTemplates.ts → communication/listTemplates.ts} +2 -2
- package/src/api/{admin/updateCommunicationTemplate.ts → communication/updateTemplate.ts} +2 -2
- package/src/api/index.ts +21 -21
- package/src/api/{temp → label}/fetchLabels.ts +5 -3
- package/src/api/label/queryLabels.ts +4 -2
- package/src/api/moderation/emitEvent.ts +218 -0
- package/src/api/{admin/getModerationEvent.ts → moderation/getEvent.ts} +2 -2
- package/src/api/{admin → moderation}/getRecord.ts +3 -3
- package/src/api/{admin → moderation}/getRepo.ts +3 -3
- package/src/api/{admin/queryModerationEvents.ts → moderation/queryEvents.ts} +3 -3
- package/src/api/{admin/queryModerationStatuses.ts → moderation/queryStatuses.ts} +3 -3
- package/src/api/{admin → moderation}/searchRepos.ts +2 -2
- package/src/api/proxied.ts +8 -8
- package/src/api/{moderation → report}/createReport.ts +2 -3
- package/src/api/util.ts +119 -0
- package/src/auth-verifier.ts +20 -30
- package/src/communication-service/template.ts +2 -2
- package/src/config/config.ts +24 -7
- package/src/config/env.ts +6 -4
- package/src/config/secrets.ts +0 -6
- package/src/context.ts +36 -12
- package/src/daemon/blob-diverter.ts +150 -0
- package/src/daemon/context.ts +11 -7
- package/src/daemon/event-pusher.ts +58 -15
- package/src/daemon/index.ts +1 -0
- package/src/db/migrations/20240228T003647759Z-add-label-sigs.ts +25 -0
- package/src/db/migrations/index.ts +1 -0
- package/src/db/schema/index.ts +2 -0
- package/src/db/schema/label.ts +3 -0
- package/src/db/schema/moderation_event.ts +11 -11
- package/src/db/schema/moderation_subject_status.ts +7 -2
- package/src/db/schema/signing_key.ts +10 -0
- package/src/lexicon/index.ts +200 -137
- package/src/lexicon/lexicons.ts +6310 -6012
- package/src/lexicon/types/app/bsky/actor/defs.ts +57 -1
- package/src/lexicon/types/app/bsky/embed/record.ts +2 -0
- package/src/lexicon/types/app/bsky/feed/defs.ts +1 -0
- package/src/lexicon/types/app/bsky/graph/defs.ts +3 -0
- package/src/lexicon/types/app/bsky/labeler/defs.ts +93 -0
- package/src/lexicon/types/app/bsky/labeler/getServices.ts +51 -0
- package/src/lexicon/types/app/bsky/labeler/service.ts +31 -0
- package/src/lexicon/types/com/atproto/admin/defs.ts +0 -694
- package/src/lexicon/types/com/atproto/label/defs.ts +78 -0
- package/src/lexicon/types/{com/atproto/admin/createCommunicationTemplate.ts → tools/ozone/communication/createTemplate.ts} +2 -2
- package/src/lexicon/types/tools/ozone/communication/defs.ts +35 -0
- package/src/lexicon/types/{com/atproto/admin/listCommunicationTemplates.ts → tools/ozone/communication/listTemplates.ts} +2 -2
- package/src/lexicon/types/{com/atproto/admin/updateCommunicationTemplate.ts → tools/ozone/communication/updateTemplate.ts} +2 -2
- package/src/lexicon/types/tools/ozone/moderation/defs.ts +641 -0
- package/src/lexicon/types/{com/atproto/admin/emitModerationEvent.ts → tools/ozone/moderation/emitEvent.ts} +15 -14
- package/src/lexicon/types/{com/atproto/admin/getModerationEvent.ts → tools/ozone/moderation/getEvent.ts} +2 -2
- package/src/lexicon/types/{com/atproto/admin → tools/ozone/moderation}/getRecord.ts +2 -2
- package/src/lexicon/types/{com/atproto/admin → tools/ozone/moderation}/getRepo.ts +2 -2
- package/src/lexicon/types/{com/atproto/admin/queryModerationEvents.ts → tools/ozone/moderation/queryEvents.ts} +3 -3
- package/src/lexicon/types/{com/atproto/admin/queryModerationStatuses.ts → tools/ozone/moderation/queryStatuses.ts} +2 -2
- package/src/lexicon/types/{com/atproto/admin → tools/ozone/moderation}/searchRepos.ts +2 -2
- package/src/mod-service/index.ts +46 -50
- package/src/mod-service/lang.ts +1 -1
- package/src/mod-service/status.ts +60 -41
- package/src/mod-service/subject.ts +1 -1
- package/src/mod-service/types.ts +10 -10
- package/src/mod-service/util.ts +49 -5
- package/src/mod-service/views.ts +45 -18
- package/src/sequencer/sequencer.ts +12 -11
- package/src/util.ts +21 -0
- package/tests/__snapshots__/blob-divert.test.ts.snap +22 -0
- package/tests/__snapshots__/get-record.test.ts.snap +14 -6
- package/tests/__snapshots__/get-repo.test.ts.snap +7 -3
- package/tests/__snapshots__/moderation-events.test.ts.snap +8 -8
- package/tests/__snapshots__/moderation-statuses.test.ts.snap +6 -6
- package/tests/_util.ts +5 -0
- package/tests/blob-divert.test.ts +87 -0
- package/tests/communication-templates.test.ts +33 -37
- package/tests/db.test.ts +6 -6
- package/tests/get-record.test.ts +22 -12
- package/tests/get-repo.test.ts +33 -21
- package/tests/moderation-appeals.test.ts +39 -67
- package/tests/moderation-events.test.ts +99 -142
- package/tests/moderation-status-tags.test.ts +20 -37
- package/tests/moderation-statuses.test.ts +132 -65
- package/tests/moderation.test.ts +147 -301
- package/tests/query-labels.test.ts +86 -10
- package/tests/repo-search.test.ts +18 -11
- package/tests/sequencer.test.ts +6 -3
- package/dist/api/admin/util.d.ts +0 -5
- package/dist/api/moderation/util.d.ts +0 -4
- package/src/api/admin/emitModerationEvent.ts +0 -170
- package/src/api/admin/util.ts +0 -54
- package/src/api/moderation/util.ts +0 -67
- /package/dist/api/{admin/createCommunicationTemplate.d.ts → communication/createTemplate.d.ts} +0 -0
- /package/dist/api/{admin/deleteCommunicationTemplate.d.ts → communication/deleteTemplate.d.ts} +0 -0
- /package/dist/api/{admin/emitModerationEvent.d.ts → communication/listTemplates.d.ts} +0 -0
- /package/dist/api/{admin/getModerationEvent.d.ts → communication/updateTemplate.d.ts} +0 -0
- /package/dist/api/{temp → label}/fetchLabels.d.ts +0 -0
- /package/dist/api/{admin/getRecord.d.ts → moderation/emitEvent.d.ts} +0 -0
- /package/dist/api/{admin/getRepo.d.ts → moderation/getEvent.d.ts} +0 -0
- /package/dist/api/{admin/listCommunicationTemplates.d.ts → moderation/getRecord.d.ts} +0 -0
- /package/dist/api/{admin/queryModerationEvents.d.ts → moderation/getRepo.d.ts} +0 -0
- /package/dist/api/{admin/queryModerationStatuses.d.ts → moderation/queryEvents.d.ts} +0 -0
- /package/dist/api/{admin/searchRepos.d.ts → moderation/queryStatuses.d.ts} +0 -0
- /package/dist/api/{admin/updateCommunicationTemplate.d.ts → moderation/searchRepos.d.ts} +0 -0
- /package/dist/api/{moderation → report}/createReport.d.ts +0 -0
- /package/dist/lexicon/types/{com/atproto/admin/deleteCommunicationTemplate.d.ts → tools/ozone/communication/deleteTemplate.d.ts} +0 -0
- /package/src/lexicon/types/{com/atproto/admin/deleteCommunicationTemplate.ts → tools/ozone/communication/deleteTemplate.ts} +0 -0
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { InputSchema as ReportInput } from '../lexicon/types/com/atproto/moderation/createReport';
|
|
2
|
+
import { AccountView } from '../lexicon/types/com/atproto/admin/defs';
|
|
3
|
+
import { RepoView, RepoViewDetail } from '../lexicon/types/tools/ozone/moderation/defs';
|
|
4
|
+
import AppContext from '../context';
|
|
5
|
+
export declare const getPdsAccountInfo: (ctx: AppContext, did: string) => Promise<AccountView | null>;
|
|
6
|
+
export declare const addAccountInfoToRepoViewDetail: (repoView: RepoViewDetail, accountInfo: AccountView | null, includeEmail?: boolean) => RepoViewDetail;
|
|
7
|
+
export declare const addAccountInfoToRepoView: (repoView: RepoView, accountInfo: AccountView | null, includeEmail?: boolean) => RepoView;
|
|
8
|
+
export declare const getReasonType: (reasonType: ReportInput['reasonType']) => string | boolean;
|
|
9
|
+
export declare const getEventType: (type: string) => "tools.ozone.moderation.defs#modEventTakedown" | "tools.ozone.moderation.defs#modEventAcknowledge" | "tools.ozone.moderation.defs#modEventEscalate" | "tools.ozone.moderation.defs#modEventComment" | "tools.ozone.moderation.defs#modEventLabel" | "tools.ozone.moderation.defs#modEventReport" | "tools.ozone.moderation.defs#modEventMute" | "tools.ozone.moderation.defs#modEventReverseTakedown" | "tools.ozone.moderation.defs#modEventEmail" | "tools.ozone.moderation.defs#modEventResolveAppeal" | "tools.ozone.moderation.defs#modEventTag";
|
|
10
|
+
export declare const getReviewState: (reviewState?: string) => "tools.ozone.moderation.defs#reviewOpen" | "tools.ozone.moderation.defs#reviewEscalated" | "tools.ozone.moderation.defs#reviewClosed" | "tools.ozone.moderation.defs#reviewNone" | undefined;
|
package/dist/auth-verifier.d.ts
CHANGED
|
@@ -3,15 +3,15 @@ import { IdResolver } from '@atproto/identity';
|
|
|
3
3
|
type ReqCtx = {
|
|
4
4
|
req: express.Request;
|
|
5
5
|
};
|
|
6
|
-
type
|
|
6
|
+
export type AdminTokenOutput = {
|
|
7
7
|
credentials: {
|
|
8
|
-
type: '
|
|
9
|
-
isAdmin:
|
|
10
|
-
isModerator:
|
|
8
|
+
type: 'admin_token';
|
|
9
|
+
isAdmin: true;
|
|
10
|
+
isModerator: true;
|
|
11
11
|
isTriage: true;
|
|
12
12
|
};
|
|
13
13
|
};
|
|
14
|
-
type ModeratorOutput = {
|
|
14
|
+
export type ModeratorOutput = {
|
|
15
15
|
credentials: {
|
|
16
16
|
type: 'moderator';
|
|
17
17
|
aud: string;
|
|
@@ -43,8 +43,6 @@ export type AuthVerifierOpts = {
|
|
|
43
43
|
moderators: string[];
|
|
44
44
|
triage: string[];
|
|
45
45
|
adminPassword: string;
|
|
46
|
-
moderatorPassword: string;
|
|
47
|
-
triagePassword: string;
|
|
48
46
|
};
|
|
49
47
|
export declare class AuthVerifier {
|
|
50
48
|
idResolver: IdResolver;
|
|
@@ -53,15 +51,13 @@ export declare class AuthVerifier {
|
|
|
53
51
|
moderators: string[];
|
|
54
52
|
triage: string[];
|
|
55
53
|
private adminPassword;
|
|
56
|
-
private moderatorPassword;
|
|
57
|
-
private triagePassword;
|
|
58
54
|
constructor(idResolver: IdResolver, opts: AuthVerifierOpts);
|
|
59
|
-
|
|
55
|
+
modOrAdminToken: (reqCtx: ReqCtx) => Promise<ModeratorOutput | AdminTokenOutput>;
|
|
60
56
|
moderator: (reqCtx: ReqCtx) => Promise<ModeratorOutput>;
|
|
61
57
|
standard: (reqCtx: ReqCtx) => Promise<StandardOutput>;
|
|
62
58
|
standardOptional: (reqCtx: ReqCtx) => Promise<StandardOutput | NullOutput>;
|
|
63
|
-
|
|
64
|
-
|
|
59
|
+
standardOptionalOrAdminToken: (reqCtx: ReqCtx) => Promise<StandardOutput | AdminTokenOutput | NullOutput>;
|
|
60
|
+
adminToken: (reqCtx: ReqCtx) => Promise<AdminTokenOutput>;
|
|
65
61
|
nullCreds(): NullOutput;
|
|
66
62
|
}
|
|
67
63
|
export declare const getJwtStrFromReq: (req: express.Request) => string | null;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import Database from '../db';
|
|
2
2
|
import { Selectable } from 'kysely';
|
|
3
3
|
import { CommunicationTemplate } from '../db/schema/communication_template';
|
|
4
|
-
import {
|
|
4
|
+
import { TemplateView } from '../lexicon/types/tools/ozone/communication/defs';
|
|
5
5
|
export type CommunicationTemplateServiceCreator = (db: Database) => CommunicationTemplateService;
|
|
6
6
|
export declare class CommunicationTemplateService {
|
|
7
7
|
db: Database;
|
|
@@ -14,5 +14,5 @@ export declare class CommunicationTemplateService {
|
|
|
14
14
|
}): Promise<Selectable<CommunicationTemplate>>;
|
|
15
15
|
update(id: number, { name, contentMarkdown, subject, disabled, updatedAt, lastUpdatedBy, }: Partial<Omit<Selectable<CommunicationTemplate>, 'id' | 'createdAt'>>): Promise<Selectable<CommunicationTemplate>>;
|
|
16
16
|
delete(id: number): Promise<void>;
|
|
17
|
-
view(template: Selectable<CommunicationTemplate>):
|
|
17
|
+
view(template: Selectable<CommunicationTemplate>): TemplateView;
|
|
18
18
|
}
|
package/dist/config/config.d.ts
CHANGED
|
@@ -7,6 +7,7 @@ export type OzoneConfig = {
|
|
|
7
7
|
pds: PdsConfig | null;
|
|
8
8
|
cdn: CdnConfig;
|
|
9
9
|
identity: IdentityConfig;
|
|
10
|
+
blobDivert: BlobDivertConfig | null;
|
|
10
11
|
access: AccessConfig;
|
|
11
12
|
};
|
|
12
13
|
export type ServiceConfig = {
|
|
@@ -16,6 +17,10 @@ export type ServiceConfig = {
|
|
|
16
17
|
version?: string;
|
|
17
18
|
devMode?: boolean;
|
|
18
19
|
};
|
|
20
|
+
export type BlobDivertConfig = {
|
|
21
|
+
url: string;
|
|
22
|
+
adminPassword: string;
|
|
23
|
+
};
|
|
19
24
|
export type DatabaseConfig = {
|
|
20
25
|
postgresUrl: string;
|
|
21
26
|
postgresSchema?: string;
|
|
@@ -26,6 +31,7 @@ export type DatabaseConfig = {
|
|
|
26
31
|
export type AppviewConfig = {
|
|
27
32
|
url: string;
|
|
28
33
|
did: string;
|
|
34
|
+
pushEvents: boolean;
|
|
29
35
|
};
|
|
30
36
|
export type PdsConfig = {
|
|
31
37
|
url: string;
|
package/dist/config/env.d.ts
CHANGED
|
@@ -8,6 +8,7 @@ export type OzoneEnvironment = {
|
|
|
8
8
|
serverDid?: string;
|
|
9
9
|
appviewUrl?: string;
|
|
10
10
|
appviewDid?: string;
|
|
11
|
+
appviewPushEvents?: boolean;
|
|
11
12
|
pdsUrl?: string;
|
|
12
13
|
pdsDid?: string;
|
|
13
14
|
dbPostgresUrl?: string;
|
|
@@ -21,7 +22,7 @@ export type OzoneEnvironment = {
|
|
|
21
22
|
moderatorDids: string[];
|
|
22
23
|
triageDids: string[];
|
|
23
24
|
adminPassword?: string;
|
|
24
|
-
moderatorPassword?: string;
|
|
25
|
-
triagePassword?: string;
|
|
26
25
|
signingKeyHex?: string;
|
|
26
|
+
blobDivertUrl?: string;
|
|
27
|
+
blobDivertAdminPassword?: string;
|
|
27
28
|
};
|
package/dist/config/secrets.d.ts
CHANGED
package/dist/context.d.ts
CHANGED
|
@@ -8,6 +8,7 @@ import { ModerationServiceCreator } from './mod-service';
|
|
|
8
8
|
import { BackgroundQueue } from './background';
|
|
9
9
|
import Sequencer from './sequencer/sequencer';
|
|
10
10
|
import { CommunicationTemplateServiceCreator } from './communication-service/template';
|
|
11
|
+
import { BlobDiverter } from './daemon/blob-diverter';
|
|
11
12
|
import { AuthVerifier } from './auth-verifier';
|
|
12
13
|
import { ImageInvalidator } from './image-invalidator';
|
|
13
14
|
export type AppContextOptions = {
|
|
@@ -17,7 +18,9 @@ export type AppContextOptions = {
|
|
|
17
18
|
communicationTemplateService: CommunicationTemplateServiceCreator;
|
|
18
19
|
appviewAgent: AtpAgent;
|
|
19
20
|
pdsAgent: AtpAgent | undefined;
|
|
21
|
+
blobDiverter?: BlobDiverter;
|
|
20
22
|
signingKey: Keypair;
|
|
23
|
+
signingKeyId: number;
|
|
21
24
|
idResolver: IdResolver;
|
|
22
25
|
imgInvalidator?: ImageInvalidator;
|
|
23
26
|
backgroundQueue: BackgroundQueue;
|
|
@@ -33,10 +36,12 @@ export declare class AppContext {
|
|
|
33
36
|
get db(): Database;
|
|
34
37
|
get cfg(): OzoneConfig;
|
|
35
38
|
get modService(): ModerationServiceCreator;
|
|
39
|
+
get blobDiverter(): BlobDiverter | undefined;
|
|
36
40
|
get communicationTemplateService(): CommunicationTemplateServiceCreator;
|
|
37
41
|
get appviewAgent(): AtpAgent;
|
|
38
42
|
get pdsAgent(): AtpAgent | undefined;
|
|
39
43
|
get signingKey(): Keypair;
|
|
44
|
+
get signingKeyId(): number;
|
|
40
45
|
get plcClient(): plc.Client;
|
|
41
46
|
get idResolver(): IdResolver;
|
|
42
47
|
get backgroundQueue(): BackgroundQueue;
|
|
@@ -57,5 +62,6 @@ export declare class AppContext {
|
|
|
57
62
|
authorization: string;
|
|
58
63
|
};
|
|
59
64
|
}>;
|
|
65
|
+
devOverride(overrides: Partial<AppContextOptions>): void;
|
|
60
66
|
}
|
|
61
67
|
export default AppContext;
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
import { IdResolver } from '@atproto/identity';
|
|
3
|
+
import { Readable } from 'stream';
|
|
4
|
+
import Database from '../db';
|
|
5
|
+
import { BlobDivertConfig } from '../config';
|
|
6
|
+
export declare class BlobDiverter {
|
|
7
|
+
db: Database;
|
|
8
|
+
serviceConfig: BlobDivertConfig;
|
|
9
|
+
idResolver: IdResolver;
|
|
10
|
+
constructor(db: Database, services: {
|
|
11
|
+
idResolver: IdResolver;
|
|
12
|
+
serviceConfig: BlobDivertConfig;
|
|
13
|
+
});
|
|
14
|
+
private getBlob;
|
|
15
|
+
sendImage({ url, imageStream, contentType, }: {
|
|
16
|
+
url: string;
|
|
17
|
+
imageStream: Readable;
|
|
18
|
+
contentType: string;
|
|
19
|
+
}): Promise<boolean>;
|
|
20
|
+
private uploadBlob;
|
|
21
|
+
uploadBlobOnService({ subjectDid, subjectUri, subjectBlobCids, }: {
|
|
22
|
+
subjectDid: string;
|
|
23
|
+
subjectUri: string;
|
|
24
|
+
subjectBlobCids: string[];
|
|
25
|
+
}): Promise<boolean>;
|
|
26
|
+
}
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
2
|
import AtpAgent from '@atproto/api';
|
|
3
3
|
import Database from '../db';
|
|
4
|
+
import { RepoPushEventType } from '../db/schema/repo_push_event';
|
|
5
|
+
import { BlobPushEvent } from '../db/schema/blob_push_event';
|
|
6
|
+
import { Insertable, Selectable } from 'kysely';
|
|
4
7
|
type PollState = {
|
|
5
8
|
timer?: NodeJS.Timer;
|
|
6
9
|
promise: Promise<void>;
|
|
@@ -34,6 +37,7 @@ export declare class EventPusher {
|
|
|
34
37
|
};
|
|
35
38
|
});
|
|
36
39
|
start(): void;
|
|
40
|
+
get takedowns(): RepoPushEventType[];
|
|
37
41
|
poll(state: PollState, fn: () => Promise<void>): void;
|
|
38
42
|
processAll(): Promise<void>;
|
|
39
43
|
destroy(): Promise<void>;
|
|
@@ -44,5 +48,7 @@ export declare class EventPusher {
|
|
|
44
48
|
attemptRepoEvent(id: number): Promise<void>;
|
|
45
49
|
attemptRecordEvent(id: number): Promise<void>;
|
|
46
50
|
attemptBlobEvent(id: number): Promise<void>;
|
|
51
|
+
markBlobEventAttempt(dbTxn: Database, event: Selectable<BlobPushEvent>, succeeded: boolean): Promise<void>;
|
|
52
|
+
logBlobPushEvent(blobValues: Insertable<BlobPushEvent>[], takedownRef?: string | null): Promise<import("kysely").Selection<import("../db/schema").DatabaseSchemaType, "blob_push_event", "id" | "subjectDid" | "subjectUri" | "eventType" | "subjectBlobCid">[]>;
|
|
47
53
|
}
|
|
48
54
|
export {};
|
package/dist/daemon/index.d.ts
CHANGED
|
@@ -2,6 +2,7 @@ import { OzoneConfig, OzoneSecrets } from '../config';
|
|
|
2
2
|
import DaemonContext from './context';
|
|
3
3
|
import { AppContextOptions } from '../context';
|
|
4
4
|
export { EventPusher } from './event-pusher';
|
|
5
|
+
export { BlobDiverter } from './blob-diverter';
|
|
5
6
|
export { EventReverser } from './event-reverser';
|
|
6
7
|
export declare class OzoneDaemon {
|
|
7
8
|
ctx: DaemonContext;
|
package/dist/db/index.js
CHANGED
|
@@ -33784,7 +33784,8 @@ __export(migrations_exports, {
|
|
|
33784
33784
|
_20231219T205730722Z: () => T205730722Z_init_exports,
|
|
33785
33785
|
_20240116T085607200Z: () => T085607200Z_communication_template_exports,
|
|
33786
33786
|
_20240201T051104136Z: () => T051104136Z_mod_event_blobs_exports,
|
|
33787
|
-
_20240208T213404429Z: () => T213404429Z_add_tags_column_to_moderation_subject_exports
|
|
33787
|
+
_20240208T213404429Z: () => T213404429Z_add_tags_column_to_moderation_subject_exports,
|
|
33788
|
+
_20240228T003647759Z: () => T003647759Z_add_label_sigs_exports
|
|
33788
33789
|
});
|
|
33789
33790
|
|
|
33790
33791
|
// src/db/migrations/20231219T205730722Z-init.ts
|
|
@@ -33873,6 +33874,25 @@ async function down4(db) {
|
|
|
33873
33874
|
await db.schema.alterTable("moderation_subject_status").dropColumn("tags").execute();
|
|
33874
33875
|
}
|
|
33875
33876
|
|
|
33877
|
+
// src/db/migrations/20240228T003647759Z-add-label-sigs.ts
|
|
33878
|
+
var T003647759Z_add_label_sigs_exports = {};
|
|
33879
|
+
__export(T003647759Z_add_label_sigs_exports, {
|
|
33880
|
+
down: () => down5,
|
|
33881
|
+
up: () => up5
|
|
33882
|
+
});
|
|
33883
|
+
async function up5(db) {
|
|
33884
|
+
await db.schema.alterTable("label").addColumn("exp", "varchar").execute();
|
|
33885
|
+
await db.schema.alterTable("label").addColumn("sig", sql`bytea`).execute();
|
|
33886
|
+
await db.schema.alterTable("label").addColumn("signingKeyId", "integer").execute();
|
|
33887
|
+
await db.schema.createTable("signing_key").addColumn("id", "serial", (col) => col.primaryKey()).addColumn("key", "varchar", (col) => col.notNull().unique()).execute();
|
|
33888
|
+
}
|
|
33889
|
+
async function down5(db) {
|
|
33890
|
+
await db.schema.dropTable("signing_key");
|
|
33891
|
+
await db.schema.alterTable("label").dropColumn("exp").execute();
|
|
33892
|
+
await db.schema.alterTable("label").dropColumn("sig").execute();
|
|
33893
|
+
await db.schema.alterTable("label").dropColumn("signingKey").execute();
|
|
33894
|
+
}
|
|
33895
|
+
|
|
33876
33896
|
// src/db/migrations/provider.ts
|
|
33877
33897
|
var CtxMigrationProvider = class {
|
|
33878
33898
|
constructor(migrations, ctx) {
|