import { FfmpegCommand } from 'fluent-ffmpeg'
-import { pick } from 'lodash'
import { logger, loggerTagsFactory } from '@server/helpers/logger'
+import { pick } from '@shared/core-utils'
import { AvailableEncoders, EncoderOptions } from '@shared/models'
import { buildStreamSuffix, getScaleFilter, StreamType } from './ffmpeg-commons'
import { getEncoderBuilderResult } from './ffmpeg-encoders'
-import { isArray } from 'lodash'
import { isPlaylistElementObjectValid, isPlaylistObjectValid } from '@server/helpers/custom-validators/activitypub/playlist'
+import { isArray } from '@server/helpers/custom-validators/misc'
import { logger, loggerTagsFactory } from '@server/helpers/logger'
import { doJSONRequest } from '@server/helpers/requests'
import { PlaylistElementObject, PlaylistObject } from '@shared/models'
import { readFileSync } from 'fs-extra'
-import { isArray, merge } from 'lodash'
+import { merge } from 'lodash'
import { createTransport, Transporter } from 'nodemailer'
import { join } from 'path'
+import { toArray } from '@server/helpers/custom-validators/misc'
import { root } from '@shared/core-utils'
import { EmailPayload } from '@shared/models'
import { SendEmailDefaultOptions } from '../../shared/models/server/emailer.model'
subjectPrefix: CONFIG.EMAIL.SUBJECT.PREFIX
})
- const toEmails = isArray(options.to)
- ? options.to
- : [ options.to ]
+ const toEmails = toArray(options.to)
for (const to of toEmails) {
const baseOptions: SendEmailDefaultOptions = {
-import { pick } from 'lodash'
import { Sequelize, Transaction } from 'sequelize'
+import { pick } from '@shared/core-utils'
import { AbstractVideoQueryBuilder } from './shared/abstract-video-query-builder'
import { VideoFileQueryBuilder } from './shared/video-file-query-builder'
import { VideoModelBuilder } from './shared/video-model-builder'
-import { Sequelize } from 'sequelize'
+import { Sequelize, Transaction } from 'sequelize'
import validator from 'validator'
import { exists } from '@server/helpers/custom-validators/misc'
import { WEBSERVER } from '@server/initializers/constants'
group?: string
having?: string
+
+ transaction?: Transaction
+ logging?: boolean
}
export class VideosIdListQueryBuilder extends AbstractRunQuery {
-import { pick } from 'lodash'
import { Sequelize } from 'sequelize'
+import { pick } from '@shared/core-utils'
import { VideoInclude } from '@shared/models'
import { AbstractVideoQueryBuilder } from './shared/abstract-video-query-builder'
import { VideoFileQueryBuilder } from './shared/video-file-query-builder'
-import { pick } from 'lodash'
+import { pick } from '@shared/core-utils'
import { HttpStatusCode, ResultList, VideoComment, VideoCommentThreads, VideoCommentThreadTree } from '@shared/models'
import { unwrapBody } from '../requests'
import { AbstractCommand, OverrideCommandOptions } from '../shared'