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.
36 lines
1.1 KiB
36 lines
1.1 KiB
import { createDatasetFactory } from "@ldo/dataset";
|
|
import { ConnectedLdoDataset } from "./ConnectedLdoDataset";
|
|
import type { ConnectedPlugin } from "./ConnectedPlugin";
|
|
import { createTransactionDatasetFactory } from "@ldo/subscribable-dataset";
|
|
|
|
/**
|
|
* Creates a ConnectedLdoDataset
|
|
* @param plugins - An array of plugins for platforms to connect to
|
|
* @returns - A ConnectedLdoDataset
|
|
*
|
|
* @example
|
|
* ```typescript
|
|
* import { createConnectedLdoDataset } from "@ldo/connected";
|
|
*
|
|
* // At least one plugin needs to be provided to a ConnectedLdoDataset. In this
|
|
* // example we'll use both the Solid and NextGraph plugins.
|
|
* import { solidConnectedPlugin } from "@ldo/connected-solid";
|
|
* import { nextGraphConnectedPlugin } from "@ldo/connected-nextgraph";
|
|
*
|
|
* // ...
|
|
*
|
|
* const connectedLdoDataset = createConnectedLdoDataset([
|
|
* solidConnectedPlugin,
|
|
* nextGraphConnectedPlugin
|
|
* ]);
|
|
* ```
|
|
*/
|
|
export function createConnectedLdoDataset<Plugins extends ConnectedPlugin[]>(
|
|
plugins: Plugins,
|
|
): ConnectedLdoDataset<Plugins> {
|
|
return new ConnectedLdoDataset(
|
|
plugins,
|
|
createDatasetFactory(),
|
|
createTransactionDatasetFactory(),
|
|
);
|
|
}
|
|
|