@@ -2,6 +2,7 @@ import { __, sprintf } from '../../../Utils/i18nwrap'
22import bitsFetch from '../../../Utils/bitsFetch'
33import { deepCopy } from '../../../Utils/Helpers'
44import { handleAuthData } from '../GlobalIntegrationHelper'
5+ import { create } from 'mutative'
56
67export const handleInput = (
78 e ,
@@ -43,8 +44,7 @@ export const spreadSheetChange = (sheetConf, formID, setSheetConf, setIsLoading,
4344 if ( ! newConf ?. default ?. worksheets ?. [ sheetConf . spreadsheetId ] ) {
4445 refreshWorksheets ( formID , newConf , setSheetConf , setIsLoading , setSnackbar )
4546 } else if ( Object . keys ( newConf ?. default ?. worksheets ?. [ sheetConf . spreadsheetId ] ) . length === 1 ) {
46- newConf . worksheetName =
47- newConf ?. default ?. worksheets ?. [ sheetConf . spreadsheetId ] [ 0 ] . properties . title
47+ newConf . worksheetName = newConf ?. default ?. worksheets ?. [ sheetConf . spreadsheetId ] [ 0 ] . properties . title
4848
4949 if ( ! newConf ?. default ?. worksheets ?. headers ?. [ newConf . worksheetName ] ) {
5050 refreshWorksheetHeaders ( formID , newConf , setSheetConf , setIsLoading , setSnackbar )
@@ -67,7 +67,9 @@ export const worksheetChange = (sheetConf, formID, setSheetConf, setIsLoading, s
6767}
6868
6969export const refreshSpreadsheets = ( formID , sheetConf , setSheetConf , setIsLoading , setSnackbar ) => {
70- const isCustomAuth = ! sheetConf . tokenDetails ?. selectedAuthType || sheetConf . tokenDetails . selectedAuthType === 'Custom Authorization'
70+ const isCustomAuth =
71+ ! sheetConf . tokenDetails ?. selectedAuthType ||
72+ sheetConf . tokenDetails . selectedAuthType === 'Custom Authorization'
7173 const refreshModulesRequestParams = {
7274 formID,
7375 id : sheetConf . id ,
@@ -79,7 +81,7 @@ export const refreshSpreadsheets = (formID, sheetConf, setSheetConf, setIsLoadin
7981
8082 setIsLoading ( true )
8183 bitsFetch ( refreshModulesRequestParams , 'gsheet_refresh_spreadsheets' )
82- . then ( ( result ) => {
84+ . then ( result => {
8385 if ( result && result . success ) {
8486 const newConf = { ...sheetConf }
8587 if ( ! newConf . default ) {
@@ -127,7 +129,7 @@ export const refreshWorksheets = (formID, sheetConf, setSheetConf, setIsLoading,
127129 tokenDetails : sheetConf . tokenDetails
128130 }
129131 bitsFetch ( refreshSpreadsheetsRequestParams , 'gsheet_refresh_worksheets' )
130- . then ( ( result ) => {
132+ . then ( result => {
131133 if ( result && result . success ) {
132134 const newConf = { ...sheetConf }
133135 if ( result . data . worksheets ) {
@@ -153,20 +155,16 @@ export const refreshWorksheets = (formID, sheetConf, setSheetConf, setIsLoading,
153155 . catch ( ( ) => setIsLoading ( false ) )
154156}
155157
156- export const refreshWorksheetHeaders = (
157- formID ,
158- sheetConf ,
159- setSheetConf ,
160- setIsLoading ,
161- setSnackbar
162- ) => {
158+ export const refreshWorksheetHeaders = ( formID , sheetConf , setSheetConf , setIsLoading , setSnackbar ) => {
163159 const { spreadsheetId, worksheetName, header, headerRow } = sheetConf
164160 if ( ! spreadsheetId && ! worksheetName && ! header && ! headerRow ) {
165161 return
166162 }
167163
168164 setIsLoading ( true )
169- const isCustomAuth = ! sheetConf . tokenDetails ?. selectedAuthType || sheetConf . tokenDetails . selectedAuthType === 'Custom Authorization'
165+ const isCustomAuth =
166+ ! sheetConf . tokenDetails ?. selectedAuthType ||
167+ sheetConf . tokenDetails . selectedAuthType === 'Custom Authorization'
170168 const refreshWorksheetHeadersRequestParams = {
171169 formID,
172170 spreadsheetId,
@@ -179,7 +177,7 @@ export const refreshWorksheetHeaders = (
179177 }
180178
181179 bitsFetch ( refreshWorksheetHeadersRequestParams , 'gsheet_refresh_worksheet_headers' )
182- . then ( ( result ) => {
180+ . then ( result => {
183181 if ( result && result . success ) {
184182 const newConf = { ...sheetConf }
185183 if ( result . data . worksheet_headers ?. length > 0 ) {
@@ -224,8 +222,7 @@ export const refreshWorksheetHeaders = (
224222}
225223
226224export const handleAuthorize = ( confTmp , selectedAuthType , setError , setIsLoading ) => {
227-
228- let clientId = '' ;
225+ let clientId = ''
229226 if ( selectedAuthType === 'One Click Authorization' ) {
230227 clientId = confTmp . oneClickAuthCredentials . clientId
231228 } else if ( selectedAuthType === 'Custom Authorization' ) {
@@ -243,8 +240,9 @@ export const handleAuthorize = (confTmp, selectedAuthType, setError, setIsLoadin
243240
244241 const scopes = 'https://www.googleapis.com/auth/drive'
245242 // eslint-disable-next-line no-undef
246- const redirectURI = 'https://auth-apps.bitapps.pro/redirect/v2' ;
247- const finalRedirectUri = selectedAuthType === 'One Click Authorization' ? redirectURI : `${ btcbi . api . base } /redirect`
243+ const redirectURI = 'https://auth-apps.bitapps.pro/redirect/v2'
244+ const finalRedirectUri =
245+ selectedAuthType === 'One Click Authorization' ? redirectURI : `${ btcbi . api . base } /redirect`
248246
249247 const { href, hash } = window . location
250248 const stateUrl = hash ? href . replace ( hash , '#/auth-response/' ) : `${ href } #/auth-response/`
@@ -259,38 +257,71 @@ export const handleAuthorize = (confTmp, selectedAuthType, setError, setIsLoadin
259257 }
260258 } , 500 )
261259 }
262-
263260}
264261
265- export const tokenHelper = async ( authInfo , confTmp , setConf , selectedAuthType , authData , setAuthData , setIsLoading , setSnackbar ) => {
262+ export const tokenHelper = async (
263+ authInfo ,
264+ confTmp ,
265+ setConf ,
266+ setIsAuthorized ,
267+ selectedAuthType ,
268+ authData ,
269+ setAuthData ,
270+ setIsLoading ,
271+ setSnackbar
272+ ) => {
266273 if ( ! selectedAuthType ) {
267274 return
268275 }
269276 const tokenRequestParams = { }
270- tokenRequestParams . code = authInfo . code || '' ;
271- tokenRequestParams . clientId = selectedAuthType === 'One Click Authorization' ? confTmp . oneClickAuthCredentials . clientId : confTmp . clientId
272- tokenRequestParams . clientSecret = selectedAuthType === 'One Click Authorization' ? confTmp . oneClickAuthCredentials . clientSecret : confTmp . clientSecret
277+ tokenRequestParams . code = authInfo . code || ''
278+ tokenRequestParams . clientId =
279+ selectedAuthType === 'One Click Authorization'
280+ ? confTmp . oneClickAuthCredentials . clientId
281+ : confTmp . clientId
282+ tokenRequestParams . clientSecret =
283+ selectedAuthType === 'One Click Authorization'
284+ ? confTmp . oneClickAuthCredentials . clientSecret
285+ : confTmp . clientSecret
273286 // eslint-disable-next-line no-undef
274- const redirectURI = 'https://auth-apps.bitapps.pro/redirect/v2' ;
275- tokenRequestParams . redirectURI = selectedAuthType === 'One Click Authorization' ? redirectURI : `${ btcbi . api . base } /redirect`
287+ const redirectURI = 'https://auth-apps.bitapps.pro/redirect/v2'
288+ tokenRequestParams . redirectURI =
289+ selectedAuthType === 'One Click Authorization' ? redirectURI : `${ btcbi . api . base } /redirect`
276290
277291 setIsLoading ( true )
278292 await bitsFetch ( tokenRequestParams , 'gsheet_generate_token' )
279293 . then ( result => result )
280294 . then ( async result => {
281295 if ( result && result . success ) {
282- const userInfo = await fetchUserInfo ( result . data )
296+ // const userInfo = await fetchUserInfo(result.data)
297+ // if (userInfo) {
298+ // const newConf = { ...confTmp }
299+ // result.data.selectedAuthType = selectedAuthType
300+ // await handleAuthData(newConf.type, result.data, userInfo, setAuthData);
301+ // newConf.setisAuthorized = true
302+ // setConf(newConf)
303+ // setSnackbar({ show: true, msg: __('Authorized Successfully', 'bigt-integrations') })
304+ // }
283305
284- if ( userInfo ) {
285- const newConf = { ...confTmp }
286- result . data . selectedAuthType = selectedAuthType
287- await handleAuthData ( newConf . type , result . data , userInfo , setAuthData ) ;
288- newConf . setisAuthorized = true
289- setConf ( newConf )
290- setSnackbar ( { show : true , msg : __ ( 'Authorized Successfully' , 'bigt-integrations' ) } )
291- }
292- } else if ( ( result && result . data && result . data . data ) || ( ! result . success && typeof result . data === 'string' ) ) {
293- setSnackbar ( { show : true , msg : `${ __ ( 'Authorization failed Cause:' , 'bit-integrations' ) } ${ result . data . data || result . data } . ${ __ ( 'please try again' , 'bit-integrations' ) } ` } )
306+ setConf ( prevConf =>
307+ create ( prevConf , draftConf => {
308+ draftConf . tokenDetails = result . data
309+ } )
310+ )
311+
312+ setIsAuthorized ( true )
313+ setSnackbar ( {
314+ show : true ,
315+ msg : __ ( 'Authorized Successfully' , 'bit-integrations' )
316+ } )
317+ } else if (
318+ ( result && result . data && result . data . data ) ||
319+ ( ! result . success && typeof result . data === 'string' )
320+ ) {
321+ setSnackbar ( {
322+ show : true ,
323+ msg : `${ __ ( 'Authorization failed Cause:' , 'bit-integrations' ) } ${ result . data . data || result . data } . ${ __ ( 'please try again' , 'bit-integrations' ) } `
324+ } )
294325 } else {
295326 setSnackbar ( {
296327 show : true ,
@@ -301,9 +332,9 @@ export const tokenHelper = async (authInfo, confTmp, setConf, selectedAuthType,
301332 } )
302333}
303334
304- export const checkMappedFields = ( sheetconf ) => {
335+ export const checkMappedFields = sheetconf => {
305336 const mappedFleld = sheetconf . field_map
306- ? sheetconf . field_map . filter ( ( mapped ) => ! mapped . formField && ! mapped . googleSheetField )
337+ ? sheetconf . field_map . filter ( mapped => ! mapped . formField && ! mapped . googleSheetField )
307338 : [ ]
308339 if ( mappedFleld . length > 0 ) {
309340 return false
@@ -312,18 +343,17 @@ export const checkMappedFields = (sheetconf) => {
312343}
313344
314345async function fetchUserInfo ( tokenResponse ) {
315- const accessToken = tokenResponse . access_token ;
346+ const accessToken = tokenResponse . access_token
316347
317348 try {
318349 const userInfoResponse = await fetch ( 'https://www.googleapis.com/drive/v3/about?fields=user' , {
319350 headers : {
320- Authorization : `Bearer ${ accessToken } ` ,
321- } ,
322- } ) ;
323- const userInfo = await userInfoResponse . json ( ) ;
324- return userInfo ;
351+ Authorization : `Bearer ${ accessToken } `
352+ }
353+ } )
354+ const userInfo = await userInfoResponse . json ( )
355+ return userInfo
325356 } catch ( error ) {
326- console . error ( 'Error fetching user info:' , error ) ;
357+ console . error ( 'Error fetching user info:' , error )
327358 }
328359}
329-
0 commit comments