@@ -5,6 +5,7 @@ type SSAEvent = {
55 identityId : string ;
66 displayName : string ;
77 event : string ;
8+ urlSlug : string ;
89} ;
910
1011// Configure the Google Sheets client
@@ -21,11 +22,11 @@ const sheetsClient = sheets.sheets({ version: "v4", auth });
2122export const addNewRowToGoogleSheets = async ( SSAEvents : SSAEvent [ ] ) => {
2223 try {
2324 // Only execute this function if we have GOOGLESHEETS_SHEET_ID in the environment variables.
24- if ( ! process . env . GOOGLESHEETS_SHEET_ID ) {
25- return ;
26- }
25+ if ( ! process . env . GOOGLESHEETS_SHEET_ID ) return ;
26+
27+ const data = [ ] ;
2728 for ( const row of SSAEvents ) {
28- const { identityId, displayName, event } = row ;
29+ const { identityId, displayName, event, urlSlug } = row ;
2930
3031 const now = new Date ( ) ;
3132 const formattedDate = now . toISOString ( ) . split ( "T" ) [ 0 ] ;
@@ -38,19 +39,20 @@ export const addNewRowToGoogleSheets = async (SSAEvents: SSAEvent[]) => {
3839 displayName ,
3940 "TicTacToe" ,
4041 event ,
42+ urlSlug ,
4143 ] ;
42-
43- // @ts -ignore
44- await sheetsClient . spreadsheets . values . append ( {
45- spreadsheetId : process . env . GOOGLESHEETS_SHEET_ID ,
46- range : "Sheet1" ,
47- valueInputOption : "RAW" ,
48- insertDataOption : "INSERT_ROWS" ,
49- resource : {
50- values : [ dataRowToBeInsertedInGoogleSheets ] ,
51- } ,
52- } ) ;
44+ data . push ( dataRowToBeInsertedInGoogleSheets ) ;
5345 }
46+
47+ await sheetsClient . spreadsheets . values . append ( {
48+ spreadsheetId : process . env . GOOGLESHEETS_SHEET_ID ,
49+ range : process . env . GOOGLESHEETS_SHEET_RANGE || "Sheet1" ,
50+ valueInputOption : "RAW" ,
51+ insertDataOption : "INSERT_ROWS" ,
52+ requestBody : {
53+ values : [ ...data ] ,
54+ } ,
55+ } ) ;
5456 } catch ( error ) {
5557 console . error ( JSON . stringify ( error ) ) ;
5658 }
0 commit comments