X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=server%2Fmodels%2Futils.ts;h=1606453e0e45212e04cf9591dc119415ea0f1816;hb=ba75d268596bc7b289bacf1cc4cb53493d6ad444;hp=1bf61d2a693021aff86a88732587dfabe3ccd87b;hpb=792dbaf07f83fbe3f1d209cd9edf190442c7d2f3;p=github%2FChocobozzz%2FPeerTube.git diff --git a/server/models/utils.ts b/server/models/utils.ts index 1bf61d2a6..1606453e0 100644 --- a/server/models/utils.ts +++ b/server/models/utils.ts @@ -14,22 +14,23 @@ function getSort (value: string) { return [ field, direction ] } -function addMethodsToModel (model: any, classMethods: Function[], instanceMethods: Function[] = []) { - classMethods.forEach(m => model[m.name] = m) - instanceMethods.forEach(m => model.prototype[m.name] = m) -} - function getSortOnModel (model: any, value: string) { let sort = getSort(value) - if (model) return [ { model: model }, sort[0], sort[1] ] + if (model) return [ model, sort[0], sort[1] ] return sort } +function throwIfNotValid (value: any, validator: (value: any) => boolean, fieldName = 'value') { + if (validator(value) === false) { + throw new Error(`"${value}" is not a valid ${fieldName}.`) + } +} + // --------------------------------------------------------------------------- export { - addMethodsToModel, getSort, - getSortOnModel + getSortOnModel, + throwIfNotValid }