1- const requestApi = require ( ' ../../utils/fetchApi' ) ;
1+ const requestApi = require ( " ../../utils/fetchApi" ) ;
22const url = process . env . SERVICE_URL ;
3- const cardTemplate = require ( '../../utils/generateTemplate' ) ;
4- const Template = require ( "../../models/Template" ) ;
5- const getValidUrl = require ( '../../utils/validateUrl' ) ;
6-
7-
8- const getQuote = async ( quoteObj ) => {
9-
10- try {
11-
12- let { theme, animation, layout, quotesUrl} = quoteObj ;
13- let apiResponse ;
14-
15- let { customQuotesUrl, isValidUrl} = await getValidUrl ( quotesUrl ) ;
16-
17- if ( isValidUrl ) {
18- //url from params is valid, proceed to verfiy the data
19- apiResponse = await requestApi ( customQuotesUrl ) ;
20-
21- if ( apiResponse . length > 0 ) {
22- apiResponse = apiResponse [ Math . floor ( Math . random ( ) * Math . floor ( apiResponse . length ) ) ] ;
23- if ( ! apiResponse . quote && ! apiResponse . author ) {
24- apiResponse = await requestApi ( url ) ;
25- }
26- } else {
27- apiResponse = await requestApi ( url ) ;
28- }
29-
30- } else {
31- apiResponse = await requestApi ( url ) ;
32- }
33-
34- const template = new Template ( ) ;
35- template . setTheme ( theme ) ;
36- template . setData ( apiResponse ) ;
37- template . setAnimation ( animation ) ;
38- template . setLayout ( layout ) ;
39-
40- let svg = cardTemplate . generateTemplate ( template ) ;
41- return svg ;
42-
3+ const cardTemplate = require ( "../../utils/generateTemplate" ) ;
4+ const Template = require ( "../../models/Template" ) ;
5+ const getValidUrl = require ( "../../utils/validateUrl" ) ;
6+
7+ const getQuote = async ( quoteObj ) => {
8+ try {
9+ let { theme, animation, layout, quotesUrl } = quoteObj ;
10+ let apiResponse ;
11+
12+ let { customQuotesUrl, isValidUrl } = await getValidUrl ( quotesUrl ) ;
13+
14+ if ( isValidUrl ) {
15+ //url from params is valid, proceed to verfiy the data
16+ apiResponse = await requestApi ( customQuotesUrl ) ;
17+
18+ if ( apiResponse . length > 0 ) {
19+ apiResponse =
20+ apiResponse [
21+ Math . floor ( Math . random ( ) * Math . floor ( apiResponse . length ) )
22+ ] ;
23+ if ( ! apiResponse . quote && ! apiResponse . author ) {
24+ apiResponse = await requestApi ( url ) ;
4325 }
44- catch ( error ) {
45- throw error ;
26+ } else {
27+ apiResponse = await requestApi ( url ) ;
28+ }
29+ } else {
30+ apiResponse = await requestApi ( url ) ;
4631 }
47-
48- }
4932
50- module . exports = {
51- getQuote
52- }
33+ const template = new Template ( ) ;
34+ template . setTheme ( theme ) ;
35+ template . setData ( apiResponse ) ;
36+ template . setAnimation ( animation ) ;
37+ template . setLayout ( layout ) ;
38+
39+ let svg = cardTemplate . generateTemplate ( template ) ;
40+ return svg ;
41+ } catch ( error ) {
42+ throw error ;
43+ }
44+ } ;
45+
46+ module . exports = {
47+ getQuote,
48+ } ;
0 commit comments