From 2b02c520e66ea452687cab39401b371711caa9ed Mon Sep 17 00:00:00 2001 From: Chocobozzz Date: Tue, 11 May 2021 11:27:40 +0200 Subject: Cleanup shared models --- shared/extra-utils/index.ts | 16 ++- shared/models/nodeinfo/index.d.ts | 117 --------------------- shared/models/nodeinfo/index.ts | 1 + shared/models/nodeinfo/nodeinfo.model.ts | 117 +++++++++++++++++++++ shared/models/overviews/index.ts | 2 +- shared/models/overviews/videos-overview.model.ts | 24 +++++ shared/models/overviews/videos-overview.ts | 24 ----- shared/models/redundancy/index.ts | 3 +- shared/models/videos/change-ownership/index.ts | 3 + .../video-change-ownership-accept.model.ts | 3 + .../video-change-ownership-create.model.ts | 3 + .../video-change-ownership.model.ts | 17 +++ shared/models/videos/comment/index.ts | 1 + .../models/videos/comment/video-comment.model.ts | 46 ++++++++ shared/models/videos/index.ts | 12 +-- .../videos/video-change-ownership-accept.model.ts | 3 - .../videos/video-change-ownership-create.model.ts | 3 - .../models/videos/video-change-ownership.model.ts | 17 --- shared/models/videos/video-comment.model.ts | 46 -------- shared/models/videos/video-file-metadata.model.ts | 13 +++ shared/models/videos/video-file-metadata.ts | 13 --- shared/models/videos/video-file.model.ts | 2 +- 22 files changed, 251 insertions(+), 235 deletions(-) delete mode 100644 shared/models/nodeinfo/index.d.ts create mode 100644 shared/models/nodeinfo/index.ts create mode 100644 shared/models/nodeinfo/nodeinfo.model.ts create mode 100644 shared/models/overviews/videos-overview.model.ts delete mode 100644 shared/models/overviews/videos-overview.ts create mode 100644 shared/models/videos/change-ownership/index.ts create mode 100644 shared/models/videos/change-ownership/video-change-ownership-accept.model.ts create mode 100644 shared/models/videos/change-ownership/video-change-ownership-create.model.ts create mode 100644 shared/models/videos/change-ownership/video-change-ownership.model.ts create mode 100644 shared/models/videos/comment/index.ts create mode 100644 shared/models/videos/comment/video-comment.model.ts delete mode 100644 shared/models/videos/video-change-ownership-accept.model.ts delete mode 100644 shared/models/videos/video-change-ownership-create.model.ts delete mode 100644 shared/models/videos/video-change-ownership.model.ts delete mode 100644 shared/models/videos/video-comment.model.ts create mode 100644 shared/models/videos/video-file-metadata.model.ts delete mode 100644 shared/models/videos/video-file-metadata.ts (limited to 'shared') diff --git a/shared/extra-utils/index.ts b/shared/extra-utils/index.ts index 898a92d43..720db19cb 100644 --- a/shared/extra-utils/index.ts +++ b/shared/extra-utils/index.ts @@ -1,15 +1,24 @@ export * from './bulk/bulk' + export * from './cli/cli' + export * from './feeds/feeds' + export * from './mock-servers/mock-instances-index' -export * from './miscs/miscs' + +export * from './miscs/email' export * from './miscs/sql' +export * from './miscs/miscs' export * from './miscs/stubs' + export * from './moderation/abuses' export * from './plugins/mock-blocklist' + export * from './requests/check-api-params' export * from './requests/requests' + export * from './search/videos' + export * from './server/activitypub' export * from './server/clients' export * from './server/config' @@ -18,9 +27,14 @@ export * from './server/follows' export * from './server/jobs' export * from './server/plugins' export * from './server/servers' + export * from './users/accounts' +export * from './users/blocklist' export * from './users/login' +export * from './users/user-notifications' +export * from './users/user-subscriptions' export * from './users/users' + export * from './videos/live' export * from './videos/services' export * from './videos/video-blacklist' diff --git a/shared/models/nodeinfo/index.d.ts b/shared/models/nodeinfo/index.d.ts deleted file mode 100644 index 336cb66d2..000000000 --- a/shared/models/nodeinfo/index.d.ts +++ /dev/null @@ -1,117 +0,0 @@ -/** - * NodeInfo schema version 2.0. - */ -export interface HttpNodeinfoDiasporaSoftwareNsSchema20 { - /** - * The schema version, must be 2.0. - */ - version: '2.0' - /** - * Metadata about server software in use. - */ - software: { - /** - * The canonical name of this server software. - */ - name: string - /** - * The version of this server software. - */ - version: string - } - /** - * The protocols supported on this server. - */ - protocols: ( - | 'activitypub' - | 'buddycloud' - | 'dfrn' - | 'diaspora' - | 'libertree' - | 'ostatus' - | 'pumpio' - | 'tent' - | 'xmpp' - | 'zot')[] - /** - * The third party sites this server can connect to via their application API. - */ - services: { - /** - * The third party sites this server can retrieve messages from for combined display with regular traffic. - */ - inbound: ('atom1.0' | 'gnusocial' | 'imap' | 'pnut' | 'pop3' | 'pumpio' | 'rss2.0' | 'twitter')[] - /** - * The third party sites this server can publish messages to on the behalf of a user. - */ - outbound: ( - | 'atom1.0' - | 'blogger' - | 'buddycloud' - | 'diaspora' - | 'dreamwidth' - | 'drupal' - | 'facebook' - | 'friendica' - | 'gnusocial' - | 'google' - | 'insanejournal' - | 'libertree' - | 'linkedin' - | 'livejournal' - | 'mediagoblin' - | 'myspace' - | 'pinterest' - | 'pnut' - | 'posterous' - | 'pumpio' - | 'redmatrix' - | 'rss2.0' - | 'smtp' - | 'tent' - | 'tumblr' - | 'twitter' - | 'wordpress' - | 'xmpp')[] - } - /** - * Whether this server allows open self-registration. - */ - openRegistrations: boolean - /** - * Usage statistics for this server. - */ - usage: { - /** - * statistics about the users of this server. - */ - users: { - /** - * The total amount of on this server registered users. - */ - total?: number - /** - * The amount of users that signed in at least once in the last 180 days. - */ - activeHalfyear?: number - /** - * The amount of users that signed in at least once in the last 30 days. - */ - activeMonth?: number - } - /** - * The amount of posts that were made by users that are registered on this server. - */ - localPosts?: number - /** - * The amount of comments that were made by users that are registered on this server. - */ - localComments?: number - } - /** - * Free form key value pairs for software specific values. Clients should not rely on any specific key present. - */ - metadata: { - [k: string]: any - } -} diff --git a/shared/models/nodeinfo/index.ts b/shared/models/nodeinfo/index.ts new file mode 100644 index 000000000..faa64302a --- /dev/null +++ b/shared/models/nodeinfo/index.ts @@ -0,0 +1 @@ +export * from './nodeinfo.model' diff --git a/shared/models/nodeinfo/nodeinfo.model.ts b/shared/models/nodeinfo/nodeinfo.model.ts new file mode 100644 index 000000000..336cb66d2 --- /dev/null +++ b/shared/models/nodeinfo/nodeinfo.model.ts @@ -0,0 +1,117 @@ +/** + * NodeInfo schema version 2.0. + */ +export interface HttpNodeinfoDiasporaSoftwareNsSchema20 { + /** + * The schema version, must be 2.0. + */ + version: '2.0' + /** + * Metadata about server software in use. + */ + software: { + /** + * The canonical name of this server software. + */ + name: string + /** + * The version of this server software. + */ + version: string + } + /** + * The protocols supported on this server. + */ + protocols: ( + | 'activitypub' + | 'buddycloud' + | 'dfrn' + | 'diaspora' + | 'libertree' + | 'ostatus' + | 'pumpio' + | 'tent' + | 'xmpp' + | 'zot')[] + /** + * The third party sites this server can connect to via their application API. + */ + services: { + /** + * The third party sites this server can retrieve messages from for combined display with regular traffic. + */ + inbound: ('atom1.0' | 'gnusocial' | 'imap' | 'pnut' | 'pop3' | 'pumpio' | 'rss2.0' | 'twitter')[] + /** + * The third party sites this server can publish messages to on the behalf of a user. + */ + outbound: ( + | 'atom1.0' + | 'blogger' + | 'buddycloud' + | 'diaspora' + | 'dreamwidth' + | 'drupal' + | 'facebook' + | 'friendica' + | 'gnusocial' + | 'google' + | 'insanejournal' + | 'libertree' + | 'linkedin' + | 'livejournal' + | 'mediagoblin' + | 'myspace' + | 'pinterest' + | 'pnut' + | 'posterous' + | 'pumpio' + | 'redmatrix' + | 'rss2.0' + | 'smtp' + | 'tent' + | 'tumblr' + | 'twitter' + | 'wordpress' + | 'xmpp')[] + } + /** + * Whether this server allows open self-registration. + */ + openRegistrations: boolean + /** + * Usage statistics for this server. + */ + usage: { + /** + * statistics about the users of this server. + */ + users: { + /** + * The total amount of on this server registered users. + */ + total?: number + /** + * The amount of users that signed in at least once in the last 180 days. + */ + activeHalfyear?: number + /** + * The amount of users that signed in at least once in the last 30 days. + */ + activeMonth?: number + } + /** + * The amount of posts that were made by users that are registered on this server. + */ + localPosts?: number + /** + * The amount of comments that were made by users that are registered on this server. + */ + localComments?: number + } + /** + * Free form key value pairs for software specific values. Clients should not rely on any specific key present. + */ + metadata: { + [k: string]: any + } +} diff --git a/shared/models/overviews/index.ts b/shared/models/overviews/index.ts index 376609efa..468507c6b 100644 --- a/shared/models/overviews/index.ts +++ b/shared/models/overviews/index.ts @@ -1 +1 @@ -export * from './videos-overview' +export * from './videos-overview.model' diff --git a/shared/models/overviews/videos-overview.model.ts b/shared/models/overviews/videos-overview.model.ts new file mode 100644 index 000000000..0f3cb4a52 --- /dev/null +++ b/shared/models/overviews/videos-overview.model.ts @@ -0,0 +1,24 @@ +import { Video, VideoChannelSummary, VideoConstant } from '../videos' + +export interface ChannelOverview { + channel: VideoChannelSummary + videos: Video[] +} + +export interface CategoryOverview { + category: VideoConstant + videos: Video[] +} + +export interface TagOverview { + tag: string + videos: Video[] +} + +export interface VideosOverview { + channels: ChannelOverview[] + + categories: CategoryOverview[] + + tags: TagOverview[] +} diff --git a/shared/models/overviews/videos-overview.ts b/shared/models/overviews/videos-overview.ts deleted file mode 100644 index 0f3cb4a52..000000000 --- a/shared/models/overviews/videos-overview.ts +++ /dev/null @@ -1,24 +0,0 @@ -import { Video, VideoChannelSummary, VideoConstant } from '../videos' - -export interface ChannelOverview { - channel: VideoChannelSummary - videos: Video[] -} - -export interface CategoryOverview { - category: VideoConstant - videos: Video[] -} - -export interface TagOverview { - tag: string - videos: Video[] -} - -export interface VideosOverview { - channels: ChannelOverview[] - - categories: CategoryOverview[] - - tags: TagOverview[] -} diff --git a/shared/models/redundancy/index.ts b/shared/models/redundancy/index.ts index 649cc489f..641a5d625 100644 --- a/shared/models/redundancy/index.ts +++ b/shared/models/redundancy/index.ts @@ -1,3 +1,4 @@ -export * from './videos-redundancy-strategy.model' export * from './video-redundancies-filters.model' +export * from './video-redundancy-config-filter.type' export * from './video-redundancy.model' +export * from './videos-redundancy-strategy.model' diff --git a/shared/models/videos/change-ownership/index.ts b/shared/models/videos/change-ownership/index.ts new file mode 100644 index 000000000..a942fb2cd --- /dev/null +++ b/shared/models/videos/change-ownership/index.ts @@ -0,0 +1,3 @@ +export * from './video-change-ownership-accept.model' +export * from './video-change-ownership-create.model' +export * from './video-change-ownership.model' diff --git a/shared/models/videos/change-ownership/video-change-ownership-accept.model.ts b/shared/models/videos/change-ownership/video-change-ownership-accept.model.ts new file mode 100644 index 000000000..f27247633 --- /dev/null +++ b/shared/models/videos/change-ownership/video-change-ownership-accept.model.ts @@ -0,0 +1,3 @@ +export interface VideoChangeOwnershipAccept { + channelId: number +} diff --git a/shared/models/videos/change-ownership/video-change-ownership-create.model.ts b/shared/models/videos/change-ownership/video-change-ownership-create.model.ts new file mode 100644 index 000000000..40fcca285 --- /dev/null +++ b/shared/models/videos/change-ownership/video-change-ownership-create.model.ts @@ -0,0 +1,3 @@ +export interface VideoChangeOwnershipCreate { + username: string +} diff --git a/shared/models/videos/change-ownership/video-change-ownership.model.ts b/shared/models/videos/change-ownership/video-change-ownership.model.ts new file mode 100644 index 000000000..3d31cad0a --- /dev/null +++ b/shared/models/videos/change-ownership/video-change-ownership.model.ts @@ -0,0 +1,17 @@ +import { Account } from '../../actors' +import { Video } from '../video.model' + +export interface VideoChangeOwnership { + id: number + status: VideoChangeOwnershipStatus + initiatorAccount: Account + nextOwnerAccount: Account + video: Video + createdAt: Date +} + +export const enum VideoChangeOwnershipStatus { + WAITING = 'WAITING', + ACCEPTED = 'ACCEPTED', + REFUSED = 'REFUSED' +} diff --git a/shared/models/videos/comment/index.ts b/shared/models/videos/comment/index.ts new file mode 100644 index 000000000..7b9261a36 --- /dev/null +++ b/shared/models/videos/comment/index.ts @@ -0,0 +1 @@ +export * from './video-comment.model' diff --git a/shared/models/videos/comment/video-comment.model.ts b/shared/models/videos/comment/video-comment.model.ts new file mode 100644 index 000000000..79c0e4c0a --- /dev/null +++ b/shared/models/videos/comment/video-comment.model.ts @@ -0,0 +1,46 @@ +import { Account } from '../../actors' + +export interface VideoComment { + id: number + url: string + text: string + threadId: number + inReplyToCommentId: number + videoId: number + createdAt: Date | string + updatedAt: Date | string + deletedAt: Date | string + isDeleted: boolean + totalRepliesFromVideoAuthor: number + totalReplies: number + account: Account +} + +export interface VideoCommentAdmin { + id: number + url: string + text: string + + threadId: number + inReplyToCommentId: number + + createdAt: Date | string + updatedAt: Date | string + + account: Account + + video: { + id: number + uuid: string + name: string + } +} + +export interface VideoCommentThreadTree { + comment: VideoComment + children: VideoCommentThreadTree[] +} + +export interface VideoCommentCreate { + text: string +} diff --git a/shared/models/videos/index.ts b/shared/models/videos/index.ts index fac3e0b2f..64f2c9df6 100644 --- a/shared/models/videos/index.ts +++ b/shared/models/videos/index.ts @@ -1,6 +1,8 @@ export * from './blacklist' export * from './caption' +export * from './change-ownership' export * from './channel' +export * from './comment' export * from './live' export * from './import' export * from './playlist' @@ -10,17 +12,11 @@ export * from './nsfw-policy.type' export * from './thumbnail.type' -export * from './video-change-ownership-accept.model' -export * from './video-change-ownership-create.model' -export * from './video-change-ownership.model' - -export * from './video-comment.model' export * from './video-constant.model' export * from './video-create.model' -export * from './video-file-metadata' -export * from './video-file.model' -export * from './live/live-video.model' +export * from './video-file-metadata.model' +export * from './video-file.model' export * from './video-privacy.enum' export * from './video-query.type' diff --git a/shared/models/videos/video-change-ownership-accept.model.ts b/shared/models/videos/video-change-ownership-accept.model.ts deleted file mode 100644 index f27247633..000000000 --- a/shared/models/videos/video-change-ownership-accept.model.ts +++ /dev/null @@ -1,3 +0,0 @@ -export interface VideoChangeOwnershipAccept { - channelId: number -} diff --git a/shared/models/videos/video-change-ownership-create.model.ts b/shared/models/videos/video-change-ownership-create.model.ts deleted file mode 100644 index 40fcca285..000000000 --- a/shared/models/videos/video-change-ownership-create.model.ts +++ /dev/null @@ -1,3 +0,0 @@ -export interface VideoChangeOwnershipCreate { - username: string -} diff --git a/shared/models/videos/video-change-ownership.model.ts b/shared/models/videos/video-change-ownership.model.ts deleted file mode 100644 index 669c7f3e7..000000000 --- a/shared/models/videos/video-change-ownership.model.ts +++ /dev/null @@ -1,17 +0,0 @@ -import { Account } from '../actors' -import { Video } from './video.model' - -export interface VideoChangeOwnership { - id: number - status: VideoChangeOwnershipStatus - initiatorAccount: Account - nextOwnerAccount: Account - video: Video - createdAt: Date -} - -export const enum VideoChangeOwnershipStatus { - WAITING = 'WAITING', - ACCEPTED = 'ACCEPTED', - REFUSED = 'REFUSED' -} diff --git a/shared/models/videos/video-comment.model.ts b/shared/models/videos/video-comment.model.ts deleted file mode 100644 index 9730a3f76..000000000 --- a/shared/models/videos/video-comment.model.ts +++ /dev/null @@ -1,46 +0,0 @@ -import { Account } from '../actors' - -export interface VideoComment { - id: number - url: string - text: string - threadId: number - inReplyToCommentId: number - videoId: number - createdAt: Date | string - updatedAt: Date | string - deletedAt: Date | string - isDeleted: boolean - totalRepliesFromVideoAuthor: number - totalReplies: number - account: Account -} - -export interface VideoCommentAdmin { - id: number - url: string - text: string - - threadId: number - inReplyToCommentId: number - - createdAt: Date | string - updatedAt: Date | string - - account: Account - - video: { - id: number - uuid: string - name: string - } -} - -export interface VideoCommentThreadTree { - comment: VideoComment - children: VideoCommentThreadTree[] -} - -export interface VideoCommentCreate { - text: string -} diff --git a/shared/models/videos/video-file-metadata.model.ts b/shared/models/videos/video-file-metadata.model.ts new file mode 100644 index 000000000..8f527c0a7 --- /dev/null +++ b/shared/models/videos/video-file-metadata.model.ts @@ -0,0 +1,13 @@ +export class VideoFileMetadata { + streams: { [x: string]: any, [x: number]: any }[] + format: { [x: string]: any, [x: number]: any } + chapters: any[] + + constructor (hash: { chapters: any[], format: any, streams: any[] }) { + this.chapters = hash.chapters + this.format = hash.format + this.streams = hash.streams + + delete this.format.filename + } +} diff --git a/shared/models/videos/video-file-metadata.ts b/shared/models/videos/video-file-metadata.ts deleted file mode 100644 index 8f527c0a7..000000000 --- a/shared/models/videos/video-file-metadata.ts +++ /dev/null @@ -1,13 +0,0 @@ -export class VideoFileMetadata { - streams: { [x: string]: any, [x: number]: any }[] - format: { [x: string]: any, [x: number]: any } - chapters: any[] - - constructor (hash: { chapters: any[], format: any, streams: any[] }) { - this.chapters = hash.chapters - this.format = hash.format - this.streams = hash.streams - - delete this.format.filename - } -} diff --git a/shared/models/videos/video-file.model.ts b/shared/models/videos/video-file.model.ts index 1e830b19c..28fce0aaf 100644 --- a/shared/models/videos/video-file.model.ts +++ b/shared/models/videos/video-file.model.ts @@ -1,5 +1,5 @@ import { VideoConstant } from './video-constant.model' -import { VideoFileMetadata } from './video-file-metadata' +import { VideoFileMetadata } from './video-file-metadata.model' import { VideoResolution } from './video-resolution.enum' export interface VideoFile { -- cgit v1.2.3