@civet/core 1.4.3 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/AbortSignal.d.ts +16 -0
- package/dist/ChannelNotifier.d.ts +6 -0
- package/dist/ConfigProvider.d.ts +8 -0
- package/dist/DataProvider.d.ts +110 -0
- package/dist/Meta.d.ts +18 -0
- package/dist/Notifier.d.ts +6 -0
- package/dist/Resource.d.ts +20 -0
- package/dist/ResourceProvider.d.ts +5 -0
- package/dist/compose.d.ts +1 -0
- package/dist/context.d.ts +15 -0
- package/dist/createPlugin.d.ts +4 -0
- package/dist/main.d.ts +18 -0
- package/dist/main.js +1473 -0
- package/dist/uniqueIdentifier.d.ts +8 -0
- package/dist/useResource.d.ts +29 -0
- package/package.json +51 -48
- package/lib/AbortSignal.js +0 -76
- package/lib/ChannelNotifier.js +0 -47
- package/lib/ConfigProvider.js +0 -32
- package/lib/DataProvider.js +0 -222
- package/lib/Meta.js +0 -63
- package/lib/Notifier.js +0 -39
- package/lib/Resource.js +0 -81
- package/lib/compose.js +0 -21
- package/lib/context.js +0 -21
- package/lib/createPlugin.js +0 -44
- package/lib/index.js +0 -109
- package/lib/uniqueIdentifier.js +0 -41
- package/lib/useResource.js +0 -335
- package/src/AbortSignal.js +0 -68
- package/src/ChannelNotifier.js +0 -35
- package/src/ConfigProvider.jsx +0 -22
- package/src/DataProvider.js +0 -228
- package/src/Meta.js +0 -50
- package/src/Notifier.js +0 -21
- package/src/Resource.jsx +0 -68
- package/src/compose.js +0 -9
- package/src/context.js +0 -11
- package/src/createPlugin.js +0 -23
- package/src/index.js +0 -25
- package/src/uniqueIdentifier.js +0 -27
- package/src/useResource.js +0 -321
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { default as Notifier } from './Notifier';
|
|
2
|
+
export type AbortSignalProxy = {
|
|
3
|
+
listen: AbortSignal['listen'];
|
|
4
|
+
locked: AbortSignal['locked'];
|
|
5
|
+
aborted: AbortSignal['aborted'];
|
|
6
|
+
};
|
|
7
|
+
export default class AbortSignal {
|
|
8
|
+
notifier: Notifier<never[]>;
|
|
9
|
+
readonly locked: boolean;
|
|
10
|
+
readonly aborted: boolean;
|
|
11
|
+
constructor();
|
|
12
|
+
listen: (cb: () => void) => (() => void);
|
|
13
|
+
abort: () => void;
|
|
14
|
+
lock: () => void;
|
|
15
|
+
proxy: () => AbortSignalProxy;
|
|
16
|
+
}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export default class ChannelNotifier<TriggerArgs extends unknown[] = never[]> {
|
|
2
|
+
private channels;
|
|
3
|
+
subscribe: (channel: string, callback: (...args: TriggerArgs) => void) => (() => void);
|
|
4
|
+
isSubscribed: (channel: string, callback: (...args: TriggerArgs) => void) => boolean;
|
|
5
|
+
trigger: (channel: string, ...args: TriggerArgs) => void;
|
|
6
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { PropsWithChildren, ReactNode } from 'react';
|
|
2
|
+
import { GenericDataProvider } from './DataProvider';
|
|
3
|
+
/**
|
|
4
|
+
* Provides general configuration to its descendants using React's context API.
|
|
5
|
+
*/
|
|
6
|
+
export default function ConfigProvider<DataProviderI extends GenericDataProvider>({ dataProvider, children, }: PropsWithChildren<{
|
|
7
|
+
dataProvider: DataProviderI;
|
|
8
|
+
}>): ReactNode;
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
import { default as AbortSignal, AbortSignalProxy } from './AbortSignal';
|
|
3
|
+
import { default as ChannelNotifier } from './ChannelNotifier';
|
|
4
|
+
import { default as Meta, MetaLike, RawMeta } from './Meta';
|
|
5
|
+
export type RequestDetails<Query, Options> = {
|
|
6
|
+
name: string;
|
|
7
|
+
query: Query;
|
|
8
|
+
empty: boolean;
|
|
9
|
+
options: Options | undefined;
|
|
10
|
+
};
|
|
11
|
+
export type ResourceBaseContext<Item, Query, Options> = {
|
|
12
|
+
name: string;
|
|
13
|
+
query: Query;
|
|
14
|
+
options: Options | undefined;
|
|
15
|
+
request: string;
|
|
16
|
+
revision: string;
|
|
17
|
+
data: Item[];
|
|
18
|
+
meta: RawMeta;
|
|
19
|
+
error: Error | undefined;
|
|
20
|
+
isEmpty: boolean;
|
|
21
|
+
isIncomplete: boolean;
|
|
22
|
+
isInitial: boolean;
|
|
23
|
+
};
|
|
24
|
+
export type ResourceContextValue<DataProviderI extends GenericDataProvider, ItemI extends InferItem<DataProviderI> = InferItem<DataProviderI>, QueryI extends InferQuery<DataProviderI> = InferQuery<DataProviderI>, OptionsI extends InferOptions<DataProviderI> = InferOptions<DataProviderI>> = ResourceBaseContext<ItemI, QueryI, OptionsI> & {
|
|
25
|
+
dataProvider: DataProviderI;
|
|
26
|
+
isLoading: boolean;
|
|
27
|
+
isStale: boolean;
|
|
28
|
+
next: {
|
|
29
|
+
request: string;
|
|
30
|
+
revision: string;
|
|
31
|
+
};
|
|
32
|
+
notify: () => Promise<{
|
|
33
|
+
request: string;
|
|
34
|
+
revision: string;
|
|
35
|
+
}>;
|
|
36
|
+
};
|
|
37
|
+
export type ContextPlugin<PluginProps = unknown, PluginTypes = unknown> = (context: ResourceContextValue<GenericDataProvider>, props: PluginProps) => ResourceContextValue<GenericDataProvider> & PluginTypes;
|
|
38
|
+
export type UIPlugin<PluginProps = unknown, PluginTypes = unknown> = React.ComponentType<PluginProps & {
|
|
39
|
+
context: ResourceContextValue<GenericDataProvider>;
|
|
40
|
+
children: (context: ResourceContextValue<GenericDataProvider> & PluginTypes) => ReactNode | undefined;
|
|
41
|
+
}>;
|
|
42
|
+
export type Persistence = boolean | 'very';
|
|
43
|
+
export type GetCallback<Item> = (error: Error | undefined, done: boolean, result: Item[]) => void;
|
|
44
|
+
export type ContinuousGet<Item> = (callback: GetCallback<Item>,
|
|
45
|
+
/** @deprecated Use the `abortSignal` that is provided by `handleGet` instead. */
|
|
46
|
+
abortSignal: AbortSignalProxy) => void;
|
|
47
|
+
export default abstract class DataProvider<Item, Query, Options, Instance = unknown, CreateData = Item, CreateResult = void, UpdateData = Item, UpdateResult = void, PatchData = Partial<Item>, PatchResult = void, RemoveResult = void> {
|
|
48
|
+
readonly _inferItem: Item;
|
|
49
|
+
readonly _inferQuery: Query;
|
|
50
|
+
readonly _inferOptions: Options;
|
|
51
|
+
readonly _inferInstance: Instance;
|
|
52
|
+
readonly _inferCreateData: CreateData;
|
|
53
|
+
readonly _inferCreateResult: CreateResult;
|
|
54
|
+
readonly _inferUpdateData: UpdateData;
|
|
55
|
+
readonly _inferUpdateResult: UpdateResult;
|
|
56
|
+
readonly _inferPatchData: PatchData;
|
|
57
|
+
readonly _inferPatchResult: PatchResult;
|
|
58
|
+
readonly _inferRemoveResult: RemoveResult;
|
|
59
|
+
notifier: ChannelNotifier<never[]>;
|
|
60
|
+
readonly contextPlugins: ContextPlugin<unknown, unknown>[];
|
|
61
|
+
readonly uiPlugins: UIPlugin<unknown, unknown>[];
|
|
62
|
+
constructor();
|
|
63
|
+
extend(_extend: {
|
|
64
|
+
context: (plugin: ContextPlugin<unknown, unknown>) => void;
|
|
65
|
+
ui: (plugin: UIPlugin<unknown, unknown>) => void;
|
|
66
|
+
}): void;
|
|
67
|
+
createInstance(): Instance | undefined;
|
|
68
|
+
releaseInstance(_: Instance): void;
|
|
69
|
+
subscribe(resource: string, callback: () => void): () => void;
|
|
70
|
+
notify(resource: string): void;
|
|
71
|
+
get<ItemI extends Item = Item, QueryI extends Query = Query, OptionsI extends Options = Options>(resource: string, query: QueryI, options?: OptionsI, meta?: MetaLike<Instance>, abortSignal?: AbortSignal): Promise<ItemI[]>;
|
|
72
|
+
continuousGet<ItemI extends Item = Item, QueryI extends Query = Query, OptionsI extends Options = Options>(resource: string, query: QueryI, options: OptionsI | undefined, meta: MetaLike<Instance> | undefined, callback: GetCallback<ItemI>, abortSignal?: AbortSignal): void;
|
|
73
|
+
abstract handleGet(resource: string, query: Query, options: Options | undefined, meta: Meta<Instance>, abortSignal: AbortSignalProxy): Promise<Item[]> | Item[] | ContinuousGet<Item>;
|
|
74
|
+
create<CreateDataI extends CreateData = CreateData, CreateResultI extends CreateResult = CreateResult, OptionsI extends Options = Options>(resource: string, data: CreateDataI, options?: OptionsI, meta?: MetaLike<Instance>): Promise<CreateResultI>;
|
|
75
|
+
abstract handleCreate(resource: string, data: CreateData, options: Options | undefined, meta: Meta<Instance>): Promise<CreateResult> | CreateResult;
|
|
76
|
+
update<UpdateDataI extends UpdateData = UpdateData, UpdateResultI extends UpdateResult = UpdateResult, QueryI extends Query = Query, OptionsI extends Options = Options>(resource: string, query: QueryI, data: UpdateDataI, options?: OptionsI, meta?: MetaLike<Instance>): Promise<UpdateResultI>;
|
|
77
|
+
abstract handleUpdate(resource: string, query: Query, data: UpdateData, options: Options | undefined, meta: Meta<Instance>): Promise<UpdateResult> | UpdateResult;
|
|
78
|
+
patch<PatchDataI extends PatchData = PatchData, PatchResultI extends PatchResult = PatchResult, QueryI extends Query = Query, OptionsI extends Options = Options>(resource: string, query: QueryI, data: PatchDataI, options?: OptionsI, meta?: MetaLike<Instance>): Promise<PatchResultI>;
|
|
79
|
+
abstract handlePatch(resource: string, query: Query, data: PatchData, options: Options | undefined, meta: Meta<Instance>): Promise<PatchResult> | PatchResult;
|
|
80
|
+
remove<RemoveResultI extends RemoveResult = RemoveResult, QueryI extends Query = Query, OptionsI extends Options = Options>(resource: string, query: QueryI, options?: OptionsI, meta?: MetaLike<Instance>): Promise<RemoveResultI>;
|
|
81
|
+
abstract handleRemove(resource: string, query: Query, options: Options | undefined, meta: Meta<Instance>): Promise<RemoveResult> | RemoveResult;
|
|
82
|
+
compareRequests(nextRequestDetails: RequestDetails<Query, Options>, prevRequestDetails: RequestDetails<Query, Options>): boolean;
|
|
83
|
+
shouldPersist(nextRequestDetails: RequestDetails<Query, Options>, prevRequestDetails: RequestDetails<Query, Options>, persistent: Persistence, _context: ResourceBaseContext<Item, Query, Options>): boolean;
|
|
84
|
+
compareItemVersions(_item1: Item, _item2: Item): boolean;
|
|
85
|
+
getItemIdentifier(item: Item): string;
|
|
86
|
+
transition(nextContext: ResourceBaseContext<Item, Query, Options>, _prevContext: ResourceBaseContext<Item, Query, Options>): Item[];
|
|
87
|
+
recycleItems(nextContext: ResourceBaseContext<Item, Query, Options>, prevContext: ResourceBaseContext<Item, Query, Options>): Item[];
|
|
88
|
+
}
|
|
89
|
+
export declare const isDataProvider: (dataProvider: unknown) => boolean;
|
|
90
|
+
export type Constructor<Args extends any[], T> = new (...args: Args) => T;
|
|
91
|
+
export type DataProviderImplementation<DataProviderI extends GenericDataProvider, ConstructorArgs extends any[]> = Constructor<ConstructorArgs, DataProviderI & {
|
|
92
|
+
handleGet(resource: string, query: InferQuery<DataProviderI>, options: InferOptions<DataProviderI> | undefined, meta: Meta<InferInstance<DataProviderI>>, abortSignal: AbortSignalProxy): Promise<InferItem<DataProviderI>[]> | InferItem<DataProviderI>[] | ContinuousGet<InferItem<DataProviderI>>;
|
|
93
|
+
handleCreate(resource: string, data: InferCreateData<DataProviderI>, options: InferOptions<DataProviderI> | undefined, meta: Meta<InferInstance<DataProviderI>>): Promise<InferCreateResult<DataProviderI>> | InferCreateResult<DataProviderI>;
|
|
94
|
+
handleUpdate(resource: string, query: InferQuery<DataProviderI>, data: InferUpdateData<DataProviderI>, options: InferOptions<DataProviderI> | undefined, meta: Meta<InferInstance<DataProviderI>>): Promise<InferUpdateResult<DataProviderI>> | InferUpdateResult<DataProviderI>;
|
|
95
|
+
handlePatch(resource: string, query: InferQuery<DataProviderI>, data: InferPatchData<DataProviderI>, options: InferOptions<DataProviderI> | undefined, meta: Meta<InferInstance<DataProviderI>>): Promise<InferPatchResult<DataProviderI>> | InferPatchResult<DataProviderI>;
|
|
96
|
+
handleRemove(resource: string, query: InferQuery<DataProviderI>, options: InferOptions<DataProviderI> | undefined, meta: Meta<InferInstance<DataProviderI>>): Promise<InferRemoveResult<DataProviderI>> | InferRemoveResult<DataProviderI>;
|
|
97
|
+
}>;
|
|
98
|
+
export type GenericDataProvider = DataProvider<unknown, unknown, unknown, unknown, unknown, unknown, unknown, unknown, unknown, unknown, unknown>;
|
|
99
|
+
export type GenericDataProviderImplementation = DataProviderImplementation<GenericDataProvider, any[]>;
|
|
100
|
+
export type InferItem<DataProviderI extends GenericDataProvider> = DataProviderI['_inferItem'];
|
|
101
|
+
export type InferQuery<DataProviderI extends GenericDataProvider> = DataProviderI['_inferQuery'];
|
|
102
|
+
export type InferOptions<DataProviderI extends GenericDataProvider> = DataProviderI['_inferOptions'];
|
|
103
|
+
export type InferInstance<DataProviderI extends GenericDataProvider> = DataProviderI['_inferInstance'];
|
|
104
|
+
export type InferCreateData<DataProviderI extends GenericDataProvider> = DataProviderI['_inferCreateData'];
|
|
105
|
+
export type InferCreateResult<DataProviderI extends GenericDataProvider> = DataProviderI['_inferCreateResult'];
|
|
106
|
+
export type InferUpdateData<DataProviderI extends GenericDataProvider> = DataProviderI['_inferUpdateData'];
|
|
107
|
+
export type InferUpdateResult<DataProviderI extends GenericDataProvider> = DataProviderI['_inferUpdateResult'];
|
|
108
|
+
export type InferPatchData<DataProviderI extends GenericDataProvider> = DataProviderI['_inferPatchData'];
|
|
109
|
+
export type InferPatchResult<DataProviderI extends GenericDataProvider> = DataProviderI['_inferPatchResult'];
|
|
110
|
+
export type InferRemoveResult<DataProviderI extends GenericDataProvider> = DataProviderI['_inferRemoveResult'];
|
package/dist/Meta.d.ts
ADDED
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export type RawMeta = {
|
|
2
|
+
[key: string]: unknown;
|
|
3
|
+
};
|
|
4
|
+
export type MetaLike<Instance = unknown> = Meta<Instance> | RawMeta;
|
|
5
|
+
export default class Meta<Instance = unknown> {
|
|
6
|
+
data: RawMeta;
|
|
7
|
+
instance?: Instance;
|
|
8
|
+
constructor(base?: RawMeta, instance?: Instance);
|
|
9
|
+
clear: () => void;
|
|
10
|
+
delete: (key: string) => unknown;
|
|
11
|
+
entries: () => [string, unknown][];
|
|
12
|
+
get: (key: string) => unknown;
|
|
13
|
+
has: (key: string) => boolean;
|
|
14
|
+
keys: () => string[];
|
|
15
|
+
set: (key: string, value: unknown) => void;
|
|
16
|
+
values: () => unknown[];
|
|
17
|
+
commit: (prev: RawMeta, ignore?: string[]) => RawMeta;
|
|
18
|
+
}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export default class Notifier<TriggerArgs extends unknown[] = never[]> {
|
|
2
|
+
listeners: Set<(...args: TriggerArgs) => void>;
|
|
3
|
+
subscribe: (callback: (...args: TriggerArgs) => void) => (() => void);
|
|
4
|
+
isSubscribed: (callback: (...args: TriggerArgs) => void) => boolean;
|
|
5
|
+
trigger: (...args: TriggerArgs) => void;
|
|
6
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
import { GenericDataProvider, InferItem, InferOptions, InferQuery, Persistence } from './DataProvider';
|
|
3
|
+
/**
|
|
4
|
+
* Provides data based on the given request details and DataProvider.
|
|
5
|
+
* Context provider for the ResourceContext.
|
|
6
|
+
*
|
|
7
|
+
* Necessary configuration that is not directly specified is taken from the ConfigContext.
|
|
8
|
+
*
|
|
9
|
+
* The provided DataProvider must not be changed.
|
|
10
|
+
*/
|
|
11
|
+
export default function Resource<DataProviderI extends GenericDataProvider, ItemI extends InferItem<DataProviderI> = InferItem<DataProviderI>, QueryI extends InferQuery<DataProviderI> = InferQuery<DataProviderI>, OptionsI extends InferOptions<DataProviderI> = InferOptions<DataProviderI>>({ dataProvider, name, query, empty, options, persistent, children, ...rest }: {
|
|
12
|
+
dataProvider?: DataProviderI;
|
|
13
|
+
name: string;
|
|
14
|
+
query: QueryI;
|
|
15
|
+
empty?: boolean;
|
|
16
|
+
options?: OptionsI;
|
|
17
|
+
persistent?: Persistence;
|
|
18
|
+
children?: ReactNode;
|
|
19
|
+
[rest: string]: unknown;
|
|
20
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { PropsWithChildren, ReactNode } from 'react';
|
|
2
|
+
import { GenericDataProvider, InferItem, InferOptions, InferQuery, ResourceContextValue } from './DataProvider';
|
|
3
|
+
export default function ResourceProvider<DataProviderI extends GenericDataProvider, ItemI extends InferItem<DataProviderI> = InferItem<DataProviderI>, QueryI extends InferQuery<DataProviderI> = InferQuery<DataProviderI>, OptionsI extends InferOptions<DataProviderI> = InferOptions<DataProviderI>>({ resource, children, }: PropsWithChildren<{
|
|
4
|
+
resource: ResourceContextValue<DataProviderI, ItemI, QueryI, OptionsI>;
|
|
5
|
+
}>): ReactNode;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export default function compose<Arg>(...fn: ((arg: Arg) => Arg)[]): (arg: Arg) => Arg;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { ConsumerProps, ExoticComponent, ReactNode } from 'react';
|
|
2
|
+
import { GenericDataProvider, InferItem, InferOptions, InferQuery, ResourceContextValue } from './DataProvider';
|
|
3
|
+
export type ConfigContextValue<DataProviderI extends GenericDataProvider> = {
|
|
4
|
+
dataProvider?: DataProviderI;
|
|
5
|
+
};
|
|
6
|
+
export declare const ConfigContext: import('react').Context<ConfigContextValue<GenericDataProvider>>;
|
|
7
|
+
export declare const ConfigConsumer: ExoticComponent<GenericDataProvider> & {
|
|
8
|
+
<DataProviderI extends GenericDataProvider>(props: ConsumerProps<ConfigContextValue<DataProviderI>>): ReactNode;
|
|
9
|
+
};
|
|
10
|
+
export declare const useConfigContext: <DataProviderI extends GenericDataProvider>() => ConfigContextValue<DataProviderI>;
|
|
11
|
+
export declare const ResourceContext: import('react').Context<ResourceContextValue<GenericDataProvider>>;
|
|
12
|
+
export declare const ResourceConsumer: ExoticComponent<GenericDataProvider> & {
|
|
13
|
+
<DataProviderI extends GenericDataProvider, ItemI extends InferItem<DataProviderI> = InferItem<DataProviderI>, QueryI extends InferQuery<DataProviderI> = InferQuery<DataProviderI>, OptionsI extends InferOptions<DataProviderI> = InferOptions<DataProviderI>>(props: ConsumerProps<ResourceContextValue<DataProviderI, ItemI, QueryI, OptionsI>>): ReactNode;
|
|
14
|
+
};
|
|
15
|
+
export declare const useResourceContext: <DataProviderI extends GenericDataProvider, ItemI extends InferItem<DataProviderI> = InferItem<DataProviderI>, QueryI extends InferQuery<DataProviderI> = InferQuery<DataProviderI>, OptionsI extends InferOptions<DataProviderI> = InferOptions<DataProviderI>>() => ResourceContextValue<DataProviderI, ItemI, QueryI, OptionsI>;
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { Constructor, GenericDataProviderImplementation } from './DataProvider';
|
|
2
|
+
export type DataProviderImplementationWithPlugin<BaseDataProvider extends GenericDataProviderImplementation, PluginTypes> = Pick<BaseDataProvider, keyof BaseDataProvider> & Constructor<ConstructorParameters<BaseDataProvider>, InstanceType<BaseDataProvider> & PluginTypes>;
|
|
3
|
+
export type DataProviderPlugin<BaseDataProvider extends GenericDataProviderImplementation, PluginTypes> = <BaseDataProviderT extends BaseDataProvider>(baseDataProviderClass: BaseDataProviderT) => DataProviderImplementationWithPlugin<BaseDataProviderT, PluginTypes>;
|
|
4
|
+
export default function createPlugin<BaseDataProvider extends GenericDataProviderImplementation, PluginTypes>(plugin: (baseDataProviderClass: Pick<BaseDataProvider, keyof BaseDataProvider> & Constructor<any[], InstanceType<BaseDataProvider>>) => DataProviderImplementationWithPlugin<Pick<BaseDataProvider, keyof BaseDataProvider> & Constructor<any[], InstanceType<BaseDataProvider>>, PluginTypes>): DataProviderPlugin<BaseDataProvider, PluginTypes>;
|
package/dist/main.d.ts
ADDED
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { ConfigConsumer, ResourceConsumer, useConfigContext, useResourceContext } from './context';
|
|
2
|
+
export { default as AbortSignal } from './AbortSignal';
|
|
3
|
+
export type { AbortSignalProxy } from './AbortSignal';
|
|
4
|
+
export { default as ChannelNotifier } from './ChannelNotifier';
|
|
5
|
+
export { default as compose } from './compose';
|
|
6
|
+
export { default as ConfigProvider } from './ConfigProvider';
|
|
7
|
+
export type { ConfigContextValue } from './context';
|
|
8
|
+
export { default as createPlugin } from './createPlugin';
|
|
9
|
+
export type { DataProviderImplementationWithPlugin, DataProviderPlugin, } from './createPlugin';
|
|
10
|
+
export { default as DataProvider, isDataProvider } from './DataProvider';
|
|
11
|
+
export type { Constructor, ContextPlugin, ContinuousGet, DataProviderImplementation, GenericDataProvider, GenericDataProviderImplementation, GetCallback, InferCreateData, InferCreateResult, InferInstance, InferItem, InferOptions, InferPatchData, InferPatchResult, InferQuery, InferRemoveResult, InferUpdateData, InferUpdateResult, Persistence, RequestDetails, ResourceBaseContext, ResourceContextValue, UIPlugin, } from './DataProvider';
|
|
12
|
+
export { default as Meta } from './Meta';
|
|
13
|
+
export type { MetaLike, RawMeta } from './Meta';
|
|
14
|
+
export { default as Notifier } from './Notifier';
|
|
15
|
+
export { default as Resource } from './Resource';
|
|
16
|
+
export { default as ResourceProvider } from './ResourceProvider';
|
|
17
|
+
export { default as useResource } from './useResource';
|
|
18
|
+
export { ConfigConsumer, ResourceConsumer, useConfigContext, useResourceContext, };
|