0.1.8 #11
@@ -7,11 +7,6 @@ import type { Merge, StaticType } from "./types.js"
|
||||
export class Reffuse extends ReffuseHelpers.make() {}
|
||||
|
||||
|
||||
export const make = <
|
||||
Class extends ReffuseHelpers.ReffuseHelpersClass<unknown>
|
||||
>(class_: Class): InstanceType<Class> =>
|
||||
new class_() as any
|
||||
|
||||
export const withContexts = <R2 extends Array<unknown>>(
|
||||
...contexts: [...{ [K in keyof R2]: ReffuseContext.ReffuseContext<R2[K]> }]
|
||||
) => (
|
||||
|
||||
@@ -428,20 +428,26 @@ export interface ReffuseHelpers<R> extends Pipeable.Pipeable {}
|
||||
|
||||
ReffuseHelpers.prototype.pipe = function pipe() {
|
||||
return Pipeable.pipeArguments(this, arguments)
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
export interface ReffuseHelpersClass<R> extends Pipeable.Pipeable {
|
||||
new(): ReffuseHelpers<R>
|
||||
make<Self>(this: new () => Self): Self
|
||||
readonly contexts: readonly ReffuseContext.ReffuseContext<R>[]
|
||||
}
|
||||
|
||||
(ReffuseHelpers as ReffuseHelpersClass<any>).make = function make() {
|
||||
return new this()
|
||||
};
|
||||
|
||||
(ReffuseHelpers as ReffuseHelpersClass<any>).pipe = function pipe() {
|
||||
return Pipeable.pipeArguments(this, arguments)
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
export const make = (): ReffuseHelpersClass<never> =>
|
||||
export const make = (): ReffuseHelpersClass<never> => (
|
||||
class extends (ReffuseHelpers<never> as ReffuseHelpersClass<never>) {
|
||||
static readonly contexts = []
|
||||
}
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user