aboutsummaryrefslogtreecommitdiffhomepage
path: root/client/src/app/core/rest/rest-extractor.service.ts
diff options
context:
space:
mode:
authorChocobozzz <me@florianbigard.com>2021-08-17 14:42:53 +0200
committerChocobozzz <me@florianbigard.com>2021-08-18 08:35:06 +0200
commit9df52d660feb722404be00a50f3c8a612bec1c15 (patch)
treedde52880fa012874d24c60f64eb596b0a789cc8b /client/src/app/core/rest/rest-extractor.service.ts
parentadb8809d43648ea0a64d6845bb39aa3bd0e005a6 (diff)
downloadPeerTube-9df52d660feb722404be00a50f3c8a612bec1c15.tar.gz
PeerTube-9df52d660feb722404be00a50f3c8a612bec1c15.tar.zst
PeerTube-9df52d660feb722404be00a50f3c8a612bec1c15.zip
Migrate client to eslint
Diffstat (limited to 'client/src/app/core/rest/rest-extractor.service.ts')
-rw-r--r--client/src/app/core/rest/rest-extractor.service.ts26
1 files changed, 15 insertions, 11 deletions
diff --git a/client/src/app/core/rest/rest-extractor.service.ts b/client/src/app/core/rest/rest-extractor.service.ts
index 29a56ba39..dd4a78de5 100644
--- a/client/src/app/core/rest/rest-extractor.service.ts
+++ b/client/src/app/core/rest/rest-extractor.service.ts
@@ -13,15 +13,16 @@ export class RestExtractor {
13 return true 13 return true
14 } 14 }
15 15
16 applyToResultListData <T> (result: ResultList<T>, fun: Function, additionalArgs?: any[]): ResultList<T> { 16 applyToResultListData <T, A, U> (
17 result: ResultList<T>,
18 fun: (data: T, ...args: A[]) => U,
19 additionalArgs: A[] = []
20 ): ResultList<U> {
17 const data: T[] = result.data 21 const data: T[] = result.data
18 const newData: T[] = []
19
20 data.forEach(d => newData.push(fun.apply(this, [ d ].concat(additionalArgs))))
21 22
22 return { 23 return {
23 total: result.total, 24 total: result.total,
24 data: newData 25 data: data.map(d => fun.apply(this, [ d, ...additionalArgs ]))
25 } 26 }
26 } 27 }
27 28
@@ -29,8 +30,10 @@ export class RestExtractor {
29 return this.applyToResultListData(result, this.convertDateToHuman, [ fieldsToConvert ]) 30 return this.applyToResultListData(result, this.convertDateToHuman, [ fieldsToConvert ])
30 } 31 }
31 32
32 convertDateToHuman (target: { [ id: string ]: string }, fieldsToConvert: string[]) { 33 convertDateToHuman (target: any, fieldsToConvert: string[]) {
33 fieldsToConvert.forEach(field => target[field] = dateToHuman(target[field])) 34 fieldsToConvert.forEach(field => {
35 target[field] = dateToHuman(target[field])
36 })
34 37
35 return target 38 return target
36 } 39 }
@@ -46,7 +49,7 @@ export class RestExtractor {
46 errorMessage = err.error 49 errorMessage = err.error
47 } else if (err.status !== undefined) { 50 } else if (err.status !== undefined) {
48 // A server-side error occurred. 51 // A server-side error occurred.
49 if (err.error && err.error.errors) { 52 if (err.error?.errors) {
50 const errors = err.error.errors 53 const errors = err.error.errors
51 const errorsArray: string[] = [] 54 const errorsArray: string[] = []
52 55
@@ -55,9 +58,10 @@ export class RestExtractor {
55 }) 58 })
56 59
57 errorMessage = errorsArray.join('. ') 60 errorMessage = errorsArray.join('. ')
58 } else if (err.error && err.error.error) { 61 } else if (err.error?.error) {
59 errorMessage = err.error.error 62 errorMessage = err.error.error
60 } else if (err.status === HttpStatusCode.PAYLOAD_TOO_LARGE_413) { 63 } else if (err.status === HttpStatusCode.PAYLOAD_TOO_LARGE_413) {
64 // eslint-disable-next-line max-len
61 errorMessage = $localize`Media is too large for the server. Please contact you administrator if you want to increase the limit size.` 65 errorMessage = $localize`Media is too large for the server. Please contact you administrator if you want to increase the limit size.`
62 } else if (err.status === HttpStatusCode.TOO_MANY_REQUESTS_429) { 66 } else if (err.status === HttpStatusCode.TOO_MANY_REQUESTS_429) {
63 const secondsLeft = err.headers.get('retry-after') 67 const secondsLeft = err.headers.get('retry-after')
@@ -71,7 +75,7 @@ export class RestExtractor {
71 errorMessage = $localize`Server error. Please retry later.` 75 errorMessage = $localize`Server error. Please retry later.`
72 } 76 }
73 77
74 errorMessage = errorMessage ? errorMessage : 'Unknown error.' 78 errorMessage = errorMessage || 'Unknown error.'
75 console.error(`Backend returned code ${err.status}, errorMessage is: ${errorMessage}`) 79 console.error(`Backend returned code ${err.status}, errorMessage is: ${errorMessage}`)
76 } else { 80 } else {
77 console.error(err) 81 console.error(err)
@@ -93,7 +97,7 @@ export class RestExtractor {
93 } 97 }
94 98
95 redirectTo404IfNotFound (obj: { status: number }, type: 'video' | 'other', status = [ HttpStatusCode.NOT_FOUND_404 ]) { 99 redirectTo404IfNotFound (obj: { status: number }, type: 'video' | 'other', status = [ HttpStatusCode.NOT_FOUND_404 ]) {
96 if (obj && obj.status && status.indexOf(obj.status) !== -1) { 100 if (obj?.status && status.includes(obj.status)) {
97 // Do not use redirectService to avoid circular dependencies 101 // Do not use redirectService to avoid circular dependencies
98 this.router.navigate([ '/404' ], { state: { type, obj }, skipLocationChange: true }) 102 this.router.navigate([ '/404' ], { state: { type, obj }, skipLocationChange: true })
99 } 103 }