chore: Remove the utils

This commit is contained in:
J H
2024-03-18 14:31:01 -06:00
parent 8e2dc8b3ee
commit 5f40fd6038
28 changed files with 424 additions and 543 deletions

View File

@@ -1,15 +1,10 @@
import { Config, ExtractConfigType } from "../config/builder/config"
import { SDKManifest } from "../manifest/ManifestTypes"
import { ActionMetadata, ActionResult, Effects, ExportedAction } from "../types"
import { createUtils } from "../util"
import { Utils } from "../util/utils"
export type MaybeFn<Manifest extends SDKManifest, Store, Value> =
| Value
| ((options: {
effects: Effects
utils: Utils<Manifest, Store>
}) => Promise<Value> | Value)
| ((options: { effects: Effects }) => Promise<Value> | Value)
export class CreatedAction<
Manifest extends SDKManifest,
Store,
@@ -27,7 +22,6 @@ export class CreatedAction<
>,
readonly fn: (options: {
effects: Effects
utils: Utils<Manifest, Store>
input: Type
}) => Promise<ActionResult>,
readonly input: Config<Type, Store>,
@@ -44,11 +38,7 @@ export class CreatedAction<
Type extends Record<string, any> = ExtractConfigType<ConfigType>,
>(
metaData: MaybeFn<Manifest, Store, Omit<ActionMetadata, "input">>,
fn: (options: {
effects: Effects
utils: Utils<Manifest, Store>
input: Type
}) => Promise<ActionResult>,
fn: (options: { effects: Effects; input: Type }) => Promise<ActionResult>,
inputConfig: Config<Type, Store> | Config<Type, never>,
) {
return new CreatedAction<Manifest, Store, ConfigType, Type>(
@@ -61,7 +51,6 @@ export class CreatedAction<
exportedAction: ExportedAction = ({ effects, input }) => {
return this.fn({
effects,
utils: createUtils(effects),
input: this.validator.unsafeCast(input),
})
}
@@ -69,21 +58,17 @@ export class CreatedAction<
run = async ({ effects, input }: { effects: Effects; input?: Type }) => {
return this.fn({
effects,
utils: createUtils(effects),
input: this.validator.unsafeCast(input),
})
}
async metaData(options: { effects: Effects; utils: Utils<Manifest, Store> }) {
async metaData(options: { effects: Effects }) {
if (this.myMetaData instanceof Function)
return await this.myMetaData(options)
return this.myMetaData
}
async ActionMetadata(options: {
effects: Effects
utils: Utils<Manifest, Store>
}): Promise<ActionMetadata> {
async ActionMetadata(options: { effects: Effects }): Promise<ActionMetadata> {
return {
...(await this.metaData(options)),
input: await this.input.build(options),
@@ -93,7 +78,6 @@ export class CreatedAction<
async getConfig({ effects }: { effects: Effects }) {
return this.input.build({
effects,
utils: createUtils(effects) as any,
})
}
}