You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
28 lines
1.0 KiB
28 lines
1.0 KiB
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
import { createUseLdo } from "./methods/useLdo";
|
|
import {
|
|
createConnectedLdoDataset,
|
|
type ConnectedPlugin,
|
|
} from "@ldo/connected";
|
|
import { createUseMatchObject } from "./methods/useMatchObject";
|
|
import { createUseMatchSubject } from "./methods/useMatchSubject";
|
|
import { createUseResource } from "./methods/useResource";
|
|
import { createUseSubject } from "./methods/useSubject";
|
|
import { createUseSubscribeToResource } from "./methods/useSubscribeToResource";
|
|
|
|
export function createLdoReactMethods<
|
|
Plugins extends ConnectedPlugin<any, any, any, any>[],
|
|
>(plugins: Plugins) {
|
|
const dataset = createConnectedLdoDataset(plugins);
|
|
dataset.setMaxListeners(1000);
|
|
|
|
return {
|
|
dataset,
|
|
useLdo: createUseLdo(dataset),
|
|
useMatchObject: createUseMatchObject(dataset),
|
|
useMatchSubject: createUseMatchSubject(dataset),
|
|
useResource: createUseResource(dataset),
|
|
useSubject: createUseSubject(dataset),
|
|
useSubscribeToResource: createUseSubscribeToResource(dataset),
|
|
};
|
|
}
|
|
|