@@ -61,7 +61,8 @@ export function makeRecordsCommand(): Command {
6161 where : opts . where as string | undefined ,
6262 orderBy : opts . orderBy as string | undefined ,
6363 } ) ;
64- const result = await db . _makeRequest < { value : unknown [ ] } > ( `/${ opts . table } ${ qs } ` ) ;
64+ const table = encodeURIComponent ( opts . table as string ) ;
65+ const result = await db . _makeRequest < { value : unknown [ ] } > ( `/${ table } ${ qs } ` ) ;
6566 if ( result . error ) {
6667 throw result . error ;
6768 }
@@ -82,11 +83,16 @@ export function makeRecordsCommand(): Command {
8283 const { db } = buildConnection ( globalOpts ) ;
8384 let data : Record < string , unknown > ;
8485 try {
85- data = JSON . parse ( opts . data ) as Record < string , unknown > ;
86+ const parsed : unknown = JSON . parse ( opts . data ) ;
87+ if ( typeof parsed !== "object" || parsed === null || Array . isArray ( parsed ) ) {
88+ throw new Error ( ) ;
89+ }
90+ data = parsed as Record < string , unknown > ;
8691 } catch {
8792 throw new Error ( "--data must be a valid JSON object" ) ;
8893 }
89- const result = await db . _makeRequest < unknown > ( `/${ opts . table } ` , {
94+ const table = encodeURIComponent ( opts . table as string ) ;
95+ const result = await db . _makeRequest < unknown > ( `/${ table } ` , {
9096 method : "POST" ,
9197 body : JSON . stringify ( data ) ,
9298 } ) ;
@@ -111,12 +117,17 @@ export function makeRecordsCommand(): Command {
111117 const { db } = buildConnection ( globalOpts ) ;
112118 let data : Record < string , unknown > ;
113119 try {
114- data = JSON . parse ( opts . data ) as Record < string , unknown > ;
120+ const parsed : unknown = JSON . parse ( opts . data ) ;
121+ if ( typeof parsed !== "object" || parsed === null || Array . isArray ( parsed ) ) {
122+ throw new Error ( ) ;
123+ }
124+ data = parsed as Record < string , unknown > ;
115125 } catch {
116126 throw new Error ( "--data must be a valid JSON object" ) ;
117127 }
118128 const qs = buildQueryString ( { where : opts . where as string | undefined } ) ;
119- const result = await db . _makeRequest < unknown > ( `/${ opts . table } ${ qs } ` , {
129+ const table = encodeURIComponent ( opts . table as string ) ;
130+ const result = await db . _makeRequest < unknown > ( `/${ table } ${ qs } ` , {
120131 method : "PATCH" ,
121132 body : JSON . stringify ( data ) ,
122133 } ) ;
@@ -139,7 +150,8 @@ export function makeRecordsCommand(): Command {
139150 try {
140151 const { db } = buildConnection ( globalOpts ) ;
141152 const qs = buildQueryString ( { where : opts . where as string | undefined } ) ;
142- const result = await db . _makeRequest < unknown > ( `/${ opts . table } ${ qs } ` , {
153+ const table = encodeURIComponent ( opts . table as string ) ;
154+ const result = await db . _makeRequest < unknown > ( `/${ table } ${ qs } ` , {
143155 method : "DELETE" ,
144156 } ) ;
145157 if ( result . error ) {
0 commit comments