Last active
July 8, 2025 15:46
-
-
Save trevorparscal/e92e430405a85dd48a6d5edda15c248f to your computer and use it in GitHub Desktop.
Get the plain text of a SurrealDB prepared query
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import { jsonify } from 'surrealdb'; | |
/** | |
* Get the plain text of a SurrealDB prepared query. | |
* | |
* @param query Query to get text for | |
* @return Plain text of prepared query | |
*/ | |
export function stringifyPreparedQuery( query: PreparedQuery ) { | |
const [ text, bindings ] = decodeCbor( query.build() ); | |
let interpolatedQuery = text.trim(); | |
for ( const [ k, v ] of Object.entries( bindings ) ) { | |
interpolatedQuery = interpolatedQuery.replace( | |
`$${k}`, | |
JSON.stringify( jsonify( v ) ) | |
); | |
} | |
return interpolatedQuery; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment