Initial commit - Event Planner application
This commit is contained in:
73
node_modules/kysely/dist/esm/plugin/immediate-value/immediate-value-plugin.d.ts
generated
vendored
Normal file
73
node_modules/kysely/dist/esm/plugin/immediate-value/immediate-value-plugin.d.ts
generated
vendored
Normal file
@@ -0,0 +1,73 @@
|
||||
import type { QueryResult } from '../../driver/database-connection.js';
|
||||
import type { RootOperationNode } from '../../query-compiler/query-compiler.js';
|
||||
import type { UnknownRow } from '../../util/type-utils.js';
|
||||
import type { KyselyPlugin, PluginTransformQueryArgs, PluginTransformResultArgs } from '../kysely-plugin.js';
|
||||
/**
|
||||
* Transforms all ValueNodes to immediate.
|
||||
*
|
||||
* WARNING! This should never be part of the public API. Users should never use this.
|
||||
* This is an internal helper.
|
||||
*
|
||||
* @internal
|
||||
*/
|
||||
export declare class ImmediateValuePlugin implements KyselyPlugin {
|
||||
#private;
|
||||
/**
|
||||
* This is called for each query before it is executed. You can modify the query by
|
||||
* transforming its {@link OperationNode} tree provided in {@link PluginTransformQueryArgs.node | args.node}
|
||||
* and returning the transformed tree. You'd usually want to use an {@link OperationNodeTransformer}
|
||||
* for this.
|
||||
*
|
||||
* If you need to pass some query-related data between this method and `transformResult` you
|
||||
* can use a `WeakMap` with {@link PluginTransformQueryArgs.queryId | args.queryId} as the key:
|
||||
*
|
||||
* ```ts
|
||||
* import type {
|
||||
* KyselyPlugin,
|
||||
* QueryResult,
|
||||
* RootOperationNode,
|
||||
* UnknownRow
|
||||
* } from 'kysely'
|
||||
*
|
||||
* interface MyData {
|
||||
* // ...
|
||||
* }
|
||||
* const data = new WeakMap<any, MyData>()
|
||||
*
|
||||
* const plugin = {
|
||||
* transformQuery(args: PluginTransformQueryArgs): RootOperationNode {
|
||||
* const something: MyData = {}
|
||||
*
|
||||
* // ...
|
||||
*
|
||||
* data.set(args.queryId, something)
|
||||
*
|
||||
* // ...
|
||||
*
|
||||
* return args.node
|
||||
* },
|
||||
*
|
||||
* async transformResult(args: PluginTransformResultArgs): Promise<QueryResult<UnknownRow>> {
|
||||
* // ...
|
||||
*
|
||||
* const something = data.get(args.queryId)
|
||||
*
|
||||
* // ...
|
||||
*
|
||||
* return args.result
|
||||
* }
|
||||
* } satisfies KyselyPlugin
|
||||
* ```
|
||||
*
|
||||
* You should use a `WeakMap` instead of a `Map` or some other strong references because `transformQuery`
|
||||
* is not always matched by a call to `transformResult` which would leave orphaned items in the map
|
||||
* and cause a memory leak.
|
||||
*/
|
||||
transformQuery(args: PluginTransformQueryArgs): RootOperationNode;
|
||||
/**
|
||||
* This method is called for each query after it has been executed. The result
|
||||
* of the query can be accessed through {@link PluginTransformResultArgs.result | args.result}.
|
||||
* You can modify the result and return the modifier result.
|
||||
*/
|
||||
transformResult(args: PluginTransformResultArgs): Promise<QueryResult<UnknownRow>>;
|
||||
}
|
||||
19
node_modules/kysely/dist/esm/plugin/immediate-value/immediate-value-plugin.js
generated
vendored
Normal file
19
node_modules/kysely/dist/esm/plugin/immediate-value/immediate-value-plugin.js
generated
vendored
Normal file
@@ -0,0 +1,19 @@
|
||||
/// <reference types="./immediate-value-plugin.d.ts" />
|
||||
import { ImmediateValueTransformer } from './immediate-value-transformer.js';
|
||||
/**
|
||||
* Transforms all ValueNodes to immediate.
|
||||
*
|
||||
* WARNING! This should never be part of the public API. Users should never use this.
|
||||
* This is an internal helper.
|
||||
*
|
||||
* @internal
|
||||
*/
|
||||
export class ImmediateValuePlugin {
|
||||
#transformer = new ImmediateValueTransformer();
|
||||
transformQuery(args) {
|
||||
return this.#transformer.transformNode(args.node, args.queryId);
|
||||
}
|
||||
transformResult(args) {
|
||||
return Promise.resolve(args.result);
|
||||
}
|
||||
}
|
||||
15
node_modules/kysely/dist/esm/plugin/immediate-value/immediate-value-transformer.d.ts
generated
vendored
Normal file
15
node_modules/kysely/dist/esm/plugin/immediate-value/immediate-value-transformer.d.ts
generated
vendored
Normal file
@@ -0,0 +1,15 @@
|
||||
import { OperationNodeTransformer } from '../../operation-node/operation-node-transformer.js';
|
||||
import type { PrimitiveValueListNode } from '../../operation-node/primitive-value-list-node.js';
|
||||
import { ValueNode } from '../../operation-node/value-node.js';
|
||||
/**
|
||||
* Transforms all ValueNodes to immediate.
|
||||
*
|
||||
* WARNING! This should never be part of the public API. Users should never use this.
|
||||
* This is an internal helper.
|
||||
*
|
||||
* @internal
|
||||
*/
|
||||
export declare class ImmediateValueTransformer extends OperationNodeTransformer {
|
||||
transformPrimitiveValueList(node: PrimitiveValueListNode): PrimitiveValueListNode;
|
||||
transformValue(node: ValueNode): ValueNode;
|
||||
}
|
||||
20
node_modules/kysely/dist/esm/plugin/immediate-value/immediate-value-transformer.js
generated
vendored
Normal file
20
node_modules/kysely/dist/esm/plugin/immediate-value/immediate-value-transformer.js
generated
vendored
Normal file
@@ -0,0 +1,20 @@
|
||||
/// <reference types="./immediate-value-transformer.d.ts" />
|
||||
import { OperationNodeTransformer } from '../../operation-node/operation-node-transformer.js';
|
||||
import { ValueListNode } from '../../operation-node/value-list-node.js';
|
||||
import { ValueNode } from '../../operation-node/value-node.js';
|
||||
/**
|
||||
* Transforms all ValueNodes to immediate.
|
||||
*
|
||||
* WARNING! This should never be part of the public API. Users should never use this.
|
||||
* This is an internal helper.
|
||||
*
|
||||
* @internal
|
||||
*/
|
||||
export class ImmediateValueTransformer extends OperationNodeTransformer {
|
||||
transformPrimitiveValueList(node) {
|
||||
return ValueListNode.create(node.values.map(ValueNode.createImmediate));
|
||||
}
|
||||
transformValue(node) {
|
||||
return ValueNode.createImmediate(node.value);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user