Skip to content

Commit 5ff46c6

Browse files
committed
Improve docs
1 parent 379db40 commit 5ff46c6

File tree

2 files changed

+52
-12
lines changed

2 files changed

+52
-12
lines changed

packages/core/src/driver.ts

Lines changed: 26 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -284,7 +284,8 @@ class QueryConfig<T = EagerResult> {
284284
* Define the transformation will be applied to the Result before return from the
285285
* query method.
286286
*
287-
* @type {function<T>(result:Result): Promise<T>}
287+
* @type {ResultTransformer}
288+
* @see {@link resultTransformers} for provided implementations.
288289
*/
289290
this.resultTransformer = undefined
290291

@@ -401,9 +402,26 @@ class Driver {
401402
* @example
402403
* // Run a read query
403404
* const { keys, records, summary } = await driver.executeQuery(
404-
* 'MATCH (p:Person{ name: $name }) RETURN p',
405-
* { name: 'Person1'},
406-
* { routing: neo4j.routing.READERS})
405+
* 'MATCH (p:Person{ name: $name }) RETURN p',
406+
* { name: 'Person1'},
407+
* { routing: neo4j.routing.READERS})
408+
*
409+
* @example
410+
* // Run a read query return a Person Node
411+
* const person1 = await driver.executeQuery(
412+
* 'MATCH (p:Person{ name: $name }) RETURN p',
413+
* { name: 'Person1'},
414+
* {
415+
* resultTransformer: neo4j.resultTransformers.mappedResultTransformer({
416+
* map(record) {
417+
* return record.get('p')
418+
* },
419+
* collect(personArray) {
420+
* return personArray[0]
421+
* }
422+
* })
423+
* }
424+
* )
407425
*
408426
* @example
409427
* // these lines
@@ -439,6 +457,8 @@ class Driver {
439457
* @param {Object} parameters - Map with parameters to use in the query
440458
* @param {QueryConfig<T>} config - The query configuration
441459
* @returns {Promise<T>}
460+
*
461+
* @see {@link resultTransformers} for provided result transformers.
442462
*/
443463
async executeQuery<T> (query: Query, parameters?: any, config: QueryConfig<T> = {}): Promise<T> {
444464
const bookmarkManager = config.bookmarkManager === null ? undefined : (config.bookmarkManager ?? this.queryBookmarkManager)
@@ -798,6 +818,6 @@ function createHostNameResolver (config: any): ConfiguredCustomResolver {
798818
return new ConfiguredCustomResolver(config.resolver)
799819
}
800820

801-
export { Driver, READ, WRITE, routing, SessionConfig }
802-
export type { QueryConfig, RoutingControl }
821+
export { Driver, READ, WRITE, routing, SessionConfig, QueryConfig }
822+
export type { RoutingControl }
803823
export default Driver

packages/neo4j-driver-deno/lib/core/driver.ts

Lines changed: 26 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -284,7 +284,8 @@ class QueryConfig<T = EagerResult> {
284284
* Define the transformation will be applied to the Result before return from the
285285
* query method.
286286
*
287-
* @type {function<T>(result:Result): Promise<T>}
287+
* @type {ResultTransformer}
288+
* @see {@link resultTransformers} for provided implementations.
288289
*/
289290
this.resultTransformer = undefined
290291

@@ -401,9 +402,26 @@ class Driver {
401402
* @example
402403
* // Run a read query
403404
* const { keys, records, summary } = await driver.executeQuery(
404-
* 'MATCH (p:Person{ name: $name }) RETURN p',
405-
* { name: 'Person1'},
406-
* { routing: neo4j.routing.READERS})
405+
* 'MATCH (p:Person{ name: $name }) RETURN p',
406+
* { name: 'Person1'},
407+
* { routing: neo4j.routing.READERS})
408+
*
409+
* @example
410+
* // Run a read query return a Person Node
411+
* const person1 = await driver.executeQuery(
412+
* 'MATCH (p:Person{ name: $name }) RETURN p',
413+
* { name: 'Person1'},
414+
* {
415+
* resultTransformer: neo4j.resultTransformers.mappedResultTransformer({
416+
* map(record) {
417+
* return record.get('p')
418+
* },
419+
* collect(personArray) {
420+
* return personArray[0]
421+
* }
422+
* })
423+
* }
424+
* )
407425
*
408426
* @example
409427
* // these lines
@@ -439,6 +457,8 @@ class Driver {
439457
* @param {Object} parameters - Map with parameters to use in the query
440458
* @param {QueryConfig<T>} config - The query configuration
441459
* @returns {Promise<T>}
460+
*
461+
* @see {@link resultTransformers} for provided result transformers.
442462
*/
443463
async executeQuery<T> (query: Query, parameters?: any, config: QueryConfig<T> = {}): Promise<T> {
444464
const bookmarkManager = config.bookmarkManager === null ? undefined : (config.bookmarkManager ?? this.queryBookmarkManager)
@@ -798,6 +818,6 @@ function createHostNameResolver (config: any): ConfiguredCustomResolver {
798818
return new ConfiguredCustomResolver(config.resolver)
799819
}
800820

801-
export { Driver, READ, WRITE, routing, SessionConfig }
802-
export type { QueryConfig, RoutingControl }
821+
export { Driver, READ, WRITE, routing, SessionConfig, QueryConfig }
822+
export type { RoutingControl }
803823
export default Driver

0 commit comments

Comments
 (0)