slonik-interceptor-preset
Slonik interceptor preset.
Motivation
Slonik functionality is extendable using interceptors. Each interceptor is contained in a separate package. Installing and configuring each interceptor becomes a tedious task when using Slonik across multiple projects. slonik-interceptor-preset
provides a factory function (createInterceptors
) for constructing a collection of selected interceptors.
slonik-interceptor-preset
installs these presets:
Name | Description |
---|---|
slonik-interceptor-field-name-transformation |
Transforms Slonik query result field names. |
slonik-interceptor-query-benchmarking |
Benchmarks Slonik queries. |
slonik-interceptor-query-logging |
Logs Slonik queries. |
slonik-interceptor-query-normalisation |
Normalises Slonik queries. |
Each interceptor can be selectively enabled/ disabled (see API).
API
;
/** * @property benchmarkQueries Dictates whether to enable the [query benchmarking interceptor](https://github.com/gajus/slonik-interceptor-query-benchmarking). (Default: false) * @property logQueries Dictates whether to enable the [query logging interceptor](https://github.com/gajus/slonik-interceptor-query-logging). (Default: true) * @property normaliseQueries Dictates whether to enable the [query normalisation interceptor](https://github.com/gajus/slonik-interceptor-query-normalisation). (Default: true) * @property transformFieldNames Dictates whether to enable the [field name transformation interceptor](https://github.com/gajus/slonik-interceptor-field-name-transformation). (Default: true) */type UserConfigurationType = | +benchmarkQueries: boolean +logQueries: boolean +normaliseQueries: boolean +transformFieldNames: boolean|; $ReadOnlyArray<InterceptorType>;
Example usage
;; const connection = ;