venue-react 1.0.0-2 → 1.0.0-4
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/index.d.mts +4 -1
- package/dist/index.d.ts +4 -1
- package/dist/index.js +11 -7
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +12 -8
- package/dist/index.mjs.map +1 -1
- package/package.json +2 -2
package/dist/index.d.mts
CHANGED
|
@@ -39,6 +39,9 @@ declare const useVenueDataClient: () => VenueDataClient;
|
|
|
39
39
|
|
|
40
40
|
declare const useGetList: <T extends FeatureType>(featureType: T, params?: FilterParams, options?: FeatureQueryOptions) => UseQueryResult<FeatureResponseMap[T][]>;
|
|
41
41
|
|
|
42
|
-
declare const useLiveRefresh: <T extends FeatureType>(featureType: T, refetchInterval?: number) =>
|
|
42
|
+
declare const useLiveRefresh: <T extends FeatureType>(featureType: T, refetchInterval?: number, autoStart?: boolean) => {
|
|
43
|
+
start: () => void;
|
|
44
|
+
stop: () => void;
|
|
45
|
+
};
|
|
43
46
|
|
|
44
47
|
export { type UseGetListParams, type UseGetListResult, type UseGetOneParams, type UseGetOneResult, VenueContext, type VenueContextValue, VenueProvider, type VenueProviderProps, useGetList, useLiveRefresh, useVenueContext, useVenueDataClient };
|
package/dist/index.d.ts
CHANGED
|
@@ -39,6 +39,9 @@ declare const useVenueDataClient: () => VenueDataClient;
|
|
|
39
39
|
|
|
40
40
|
declare const useGetList: <T extends FeatureType>(featureType: T, params?: FilterParams, options?: FeatureQueryOptions) => UseQueryResult<FeatureResponseMap[T][]>;
|
|
41
41
|
|
|
42
|
-
declare const useLiveRefresh: <T extends FeatureType>(featureType: T, refetchInterval?: number) =>
|
|
42
|
+
declare const useLiveRefresh: <T extends FeatureType>(featureType: T, refetchInterval?: number, autoStart?: boolean) => {
|
|
43
|
+
start: () => void;
|
|
44
|
+
stop: () => void;
|
|
45
|
+
};
|
|
43
46
|
|
|
44
47
|
export { type UseGetListParams, type UseGetListResult, type UseGetOneParams, type UseGetOneResult, VenueContext, type VenueContextValue, VenueProvider, type VenueProviderProps, useGetList, useLiveRefresh, useVenueContext, useVenueDataClient };
|
package/dist/index.js
CHANGED
|
@@ -90,17 +90,21 @@ var useGetList = (featureType, params = {}, options = {}) => {
|
|
|
90
90
|
|
|
91
91
|
// src/hooks/useLiveRefresh.ts
|
|
92
92
|
var import_react3 = require("react");
|
|
93
|
-
var useLiveRefresh = (featureType, refetchInterval = 5 * 60 * 1e3) => {
|
|
93
|
+
var useLiveRefresh = (featureType, refetchInterval = 5 * 60 * 1e3, autoStart = true) => {
|
|
94
94
|
const client = useVenueDataClient();
|
|
95
|
+
const start = (0, import_react3.useCallback)(() => {
|
|
96
|
+
client.registerObserver(featureType, refetchInterval);
|
|
97
|
+
}, [client, featureType, refetchInterval]);
|
|
98
|
+
const stop = (0, import_react3.useCallback)(() => {
|
|
99
|
+
client.destroyObserver(featureType);
|
|
100
|
+
}, [client, featureType]);
|
|
95
101
|
(0, import_react3.useEffect)(() => {
|
|
96
|
-
|
|
97
|
-
const unsubscribe = observer.subscribe(() => {
|
|
98
|
-
});
|
|
102
|
+
if (autoStart === true) start();
|
|
99
103
|
return () => {
|
|
100
|
-
|
|
104
|
+
stop();
|
|
101
105
|
};
|
|
102
|
-
}, [
|
|
103
|
-
return
|
|
106
|
+
}, [start, stop, autoStart]);
|
|
107
|
+
return { start, stop };
|
|
104
108
|
};
|
|
105
109
|
// Annotate the CommonJS export names for ESM import in node:
|
|
106
110
|
0 && (module.exports = {
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.ts","../src/VenueProvider.tsx","../src/VenueContext.tsx","../src/hooks/useVenueDataClient.ts","../src/hooks/useGetList.ts","../src/hooks/useLiveRefresh.ts"],"sourcesContent":["export { QueryObserver } from \"venue-js\"\n\n// Provider\nexport { VenueProvider } from \"./VenueProvider\"\n\n// Context\nexport { VenueContext, useVenueContext } from \"./VenueContext\"\n\n// Hooks\nexport { useVenueDataClient, useGetList, useLiveRefresh } from \"./hooks\"\n\n// Types\nexport type {\n VenueProviderProps,\n VenueContextValue,\n UseGetOneParams,\n UseGetListParams,\n UseGetOneResult,\n UseGetListResult,\n} from \"./types\"\n\n// Re-export venue-js types for convenience\nexport type {\n VenueDataClient,\n VenueClientOptions,\n FeatureType,\n FeatureResponseMap,\n FeaturePopulatedResponseMap,\n // IMDF Feature Types\n AmenityFeature,\n AnchorFeature,\n KioskFeature,\n LevelFeature,\n OccupantFeature,\n SectionFeature,\n UnitFeature,\n VenueFeature,\n // Non-IMDF Feature Types\n TaxonomyFeature,\n PromotionFeature,\n PrivilegeFeature,\n EventFeature,\n LabelFeature,\n} from \"venue-js\"\n","import React, { useMemo } from \"react\"\nimport { getDataClient } from \"venue-js\"\nimport { VenueContext } from \"./VenueContext\"\nimport type { VenueProviderProps, VenueContextValue } from \"./types\"\n\nexport const VenueProvider: React.FC<VenueProviderProps> = ({\n children,\n config,\n}) => {\n const client = useMemo(() => {\n const venueClient = getDataClient({\n ...config,\n queryClient: config.queryClient,\n })\n\n return venueClient\n }, [config])\n\n const contextValue: VenueContextValue = {\n client,\n }\n\n return (\n <VenueContext.Provider value={contextValue}>\n {children}\n </VenueContext.Provider>\n )\n}\n","import { createContext, useContext } from \"react\"\nimport type { VenueContextValue } from \"./types\"\n\nexport const VenueContext = createContext<VenueContextValue | undefined>(\n undefined\n)\n\nexport const useVenueContext = (): VenueContextValue => {\n const context = useContext(VenueContext)\n if (context === undefined) {\n throw new Error(\"useVenueContext must be used within a VenueProvider\")\n }\n return context\n}\n","import { useVenueContext } from \"../VenueContext\"\nimport type { VenueDataClient } from \"venue-js\"\n\nexport const useVenueDataClient = (): VenueDataClient => {\n const { client } = useVenueContext()\n return client\n}\n","import { useQuery, UseQueryResult } from \"@tanstack/react-query\"\nimport {\n type FeatureType,\n type FeatureResponseMap,\n type FilterParams,\n type FeatureQueryOptions,\n} from \"venue-js\"\nimport { useVenueDataClient } from \"./useVenueDataClient\"\n\nexport const useGetList = <T extends FeatureType>(\n featureType: T,\n params: FilterParams = {},\n options: FeatureQueryOptions = {}\n): UseQueryResult<FeatureResponseMap[T][]> => {\n const client = useVenueDataClient()\n const queryOptions = client.createFilterByTypeQueryOptions(\n featureType,\n params,\n options\n )\n\n // @ts-expect-error\n return useQuery<FeatureResponseMap[T][]>({\n ...queryOptions,\n ...options,\n })\n}\n","import { type FeatureType } from \"venue-js\"\nimport { useVenueDataClient } from \"./useVenueDataClient\"\nimport { useEffect } from \"react\"\n\nexport const useLiveRefresh = <T extends FeatureType>(\n featureType: T,\n refetchInterval = 5 * 60 * 1000\n) => {\n const client = useVenueDataClient()\n\n
|
|
1
|
+
{"version":3,"sources":["../src/index.ts","../src/VenueProvider.tsx","../src/VenueContext.tsx","../src/hooks/useVenueDataClient.ts","../src/hooks/useGetList.ts","../src/hooks/useLiveRefresh.ts"],"sourcesContent":["export { QueryObserver } from \"venue-js\"\n\n// Provider\nexport { VenueProvider } from \"./VenueProvider\"\n\n// Context\nexport { VenueContext, useVenueContext } from \"./VenueContext\"\n\n// Hooks\nexport { useVenueDataClient, useGetList, useLiveRefresh } from \"./hooks\"\n\n// Types\nexport type {\n VenueProviderProps,\n VenueContextValue,\n UseGetOneParams,\n UseGetListParams,\n UseGetOneResult,\n UseGetListResult,\n} from \"./types\"\n\n// Re-export venue-js types for convenience\nexport type {\n VenueDataClient,\n VenueClientOptions,\n FeatureType,\n FeatureResponseMap,\n FeaturePopulatedResponseMap,\n // IMDF Feature Types\n AmenityFeature,\n AnchorFeature,\n KioskFeature,\n LevelFeature,\n OccupantFeature,\n SectionFeature,\n UnitFeature,\n VenueFeature,\n // Non-IMDF Feature Types\n TaxonomyFeature,\n PromotionFeature,\n PrivilegeFeature,\n EventFeature,\n LabelFeature,\n} from \"venue-js\"\n","import React, { useMemo } from \"react\"\nimport { getDataClient } from \"venue-js\"\nimport { VenueContext } from \"./VenueContext\"\nimport type { VenueProviderProps, VenueContextValue } from \"./types\"\n\nexport const VenueProvider: React.FC<VenueProviderProps> = ({\n children,\n config,\n}) => {\n const client = useMemo(() => {\n const venueClient = getDataClient({\n ...config,\n queryClient: config.queryClient,\n })\n\n return venueClient\n }, [config])\n\n const contextValue: VenueContextValue = {\n client,\n }\n\n return (\n <VenueContext.Provider value={contextValue}>\n {children}\n </VenueContext.Provider>\n )\n}\n","import { createContext, useContext } from \"react\"\nimport type { VenueContextValue } from \"./types\"\n\nexport const VenueContext = createContext<VenueContextValue | undefined>(\n undefined\n)\n\nexport const useVenueContext = (): VenueContextValue => {\n const context = useContext(VenueContext)\n if (context === undefined) {\n throw new Error(\"useVenueContext must be used within a VenueProvider\")\n }\n return context\n}\n","import { useVenueContext } from \"../VenueContext\"\nimport type { VenueDataClient } from \"venue-js\"\n\nexport const useVenueDataClient = (): VenueDataClient => {\n const { client } = useVenueContext()\n return client\n}\n","import { useQuery, UseQueryResult } from \"@tanstack/react-query\"\nimport {\n type FeatureType,\n type FeatureResponseMap,\n type FilterParams,\n type FeatureQueryOptions,\n} from \"venue-js\"\nimport { useVenueDataClient } from \"./useVenueDataClient\"\n\nexport const useGetList = <T extends FeatureType>(\n featureType: T,\n params: FilterParams = {},\n options: FeatureQueryOptions = {}\n): UseQueryResult<FeatureResponseMap[T][]> => {\n const client = useVenueDataClient()\n const queryOptions = client.createFilterByTypeQueryOptions(\n featureType,\n params,\n options\n )\n\n // @ts-expect-error\n return useQuery<FeatureResponseMap[T][]>({\n ...queryOptions,\n ...options,\n })\n}\n","import { type FeatureType } from \"venue-js\"\nimport { useVenueDataClient } from \"./useVenueDataClient\"\nimport { useCallback, useEffect } from \"react\"\n\nexport const useLiveRefresh = <T extends FeatureType>(\n featureType: T,\n refetchInterval: number = 5 * 60 * 1000,\n autoStart: boolean = true\n) => {\n const client = useVenueDataClient()\n\n const start = useCallback(() => {\n client.registerObserver(featureType, refetchInterval)\n }, [client, featureType, refetchInterval])\n\n const stop = useCallback(() => {\n client.destroyObserver(featureType)\n }, [client, featureType])\n\n useEffect(() => {\n /** Keep internal queries active */\n if (autoStart === true) start()\n\n return () => {\n stop()\n }\n }, [start, stop, autoStart])\n\n\n return { start, stop }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAAAA,mBAA8B;;;ACA9B,IAAAC,gBAA+B;AAC/B,sBAA8B;;;ACD9B,mBAA0C;AAGnC,IAAM,mBAAe;AAAA,EAC1B;AACF;AAEO,IAAM,kBAAkB,MAAyB;AACtD,QAAM,cAAU,yBAAW,YAAY;AACvC,MAAI,YAAY,QAAW;AACzB,UAAM,IAAI,MAAM,qDAAqD;AAAA,EACvE;AACA,SAAO;AACT;;;ADUI;AAlBG,IAAM,gBAA8C,CAAC;AAAA,EAC1D;AAAA,EACA;AACF,MAAM;AACJ,QAAM,aAAS,uBAAQ,MAAM;AAC3B,UAAM,kBAAc,+BAAc;AAAA,MAChC,GAAG;AAAA,MACH,aAAa,OAAO;AAAA,IACtB,CAAC;AAED,WAAO;AAAA,EACT,GAAG,CAAC,MAAM,CAAC;AAEX,QAAM,eAAkC;AAAA,IACtC;AAAA,EACF;AAEA,SACE,4CAAC,aAAa,UAAb,EAAsB,OAAO,cAC3B,UACH;AAEJ;;;AExBO,IAAM,qBAAqB,MAAuB;AACvD,QAAM,EAAE,OAAO,IAAI,gBAAgB;AACnC,SAAO;AACT;;;ACNA,yBAAyC;AASlC,IAAM,aAAa,CACxB,aACA,SAAuB,CAAC,GACxB,UAA+B,CAAC,MACY;AAC5C,QAAM,SAAS,mBAAmB;AAClC,QAAM,eAAe,OAAO;AAAA,IAC1B;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAGA,aAAO,6BAAkC;AAAA,IACvC,GAAG;AAAA,IACH,GAAG;AAAA,EACL,CAAC;AACH;;;ACxBA,IAAAC,gBAAuC;AAEhC,IAAM,iBAAiB,CAC5B,aACA,kBAA0B,IAAI,KAAK,KACnC,YAAqB,SAClB;AACH,QAAM,SAAS,mBAAmB;AAElC,QAAM,YAAQ,2BAAY,MAAM;AAC9B,WAAO,iBAAiB,aAAa,eAAe;AAAA,EACtD,GAAG,CAAC,QAAQ,aAAa,eAAe,CAAC;AAEzC,QAAM,WAAO,2BAAY,MAAM;AAC7B,WAAO,gBAAgB,WAAW;AAAA,EACpC,GAAG,CAAC,QAAQ,WAAW,CAAC;AAExB,+BAAU,MAAM;AAEd,QAAI,cAAc,KAAM,OAAM;AAE9B,WAAO,MAAM;AACX,WAAK;AAAA,IACP;AAAA,EACF,GAAG,CAAC,OAAO,MAAM,SAAS,CAAC;AAG3B,SAAO,EAAE,OAAO,KAAK;AACvB;","names":["import_venue_js","import_react","import_react"]}
|
package/dist/index.mjs
CHANGED
|
@@ -59,18 +59,22 @@ var useGetList = (featureType, params = {}, options = {}) => {
|
|
|
59
59
|
};
|
|
60
60
|
|
|
61
61
|
// src/hooks/useLiveRefresh.ts
|
|
62
|
-
import { useEffect } from "react";
|
|
63
|
-
var useLiveRefresh = (featureType, refetchInterval = 5 * 60 * 1e3) => {
|
|
62
|
+
import { useCallback, useEffect } from "react";
|
|
63
|
+
var useLiveRefresh = (featureType, refetchInterval = 5 * 60 * 1e3, autoStart = true) => {
|
|
64
64
|
const client = useVenueDataClient();
|
|
65
|
+
const start = useCallback(() => {
|
|
66
|
+
client.registerObserver(featureType, refetchInterval);
|
|
67
|
+
}, [client, featureType, refetchInterval]);
|
|
68
|
+
const stop = useCallback(() => {
|
|
69
|
+
client.destroyObserver(featureType);
|
|
70
|
+
}, [client, featureType]);
|
|
65
71
|
useEffect(() => {
|
|
66
|
-
|
|
67
|
-
const unsubscribe = observer.subscribe(() => {
|
|
68
|
-
});
|
|
72
|
+
if (autoStart === true) start();
|
|
69
73
|
return () => {
|
|
70
|
-
|
|
74
|
+
stop();
|
|
71
75
|
};
|
|
72
|
-
}, [
|
|
73
|
-
return
|
|
76
|
+
}, [start, stop, autoStart]);
|
|
77
|
+
return { start, stop };
|
|
74
78
|
};
|
|
75
79
|
export {
|
|
76
80
|
QueryObserver,
|
package/dist/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.ts","../src/VenueProvider.tsx","../src/VenueContext.tsx","../src/hooks/useVenueDataClient.ts","../src/hooks/useGetList.ts","../src/hooks/useLiveRefresh.ts"],"sourcesContent":["export { QueryObserver } from \"venue-js\"\n\n// Provider\nexport { VenueProvider } from \"./VenueProvider\"\n\n// Context\nexport { VenueContext, useVenueContext } from \"./VenueContext\"\n\n// Hooks\nexport { useVenueDataClient, useGetList, useLiveRefresh } from \"./hooks\"\n\n// Types\nexport type {\n VenueProviderProps,\n VenueContextValue,\n UseGetOneParams,\n UseGetListParams,\n UseGetOneResult,\n UseGetListResult,\n} from \"./types\"\n\n// Re-export venue-js types for convenience\nexport type {\n VenueDataClient,\n VenueClientOptions,\n FeatureType,\n FeatureResponseMap,\n FeaturePopulatedResponseMap,\n // IMDF Feature Types\n AmenityFeature,\n AnchorFeature,\n KioskFeature,\n LevelFeature,\n OccupantFeature,\n SectionFeature,\n UnitFeature,\n VenueFeature,\n // Non-IMDF Feature Types\n TaxonomyFeature,\n PromotionFeature,\n PrivilegeFeature,\n EventFeature,\n LabelFeature,\n} from \"venue-js\"\n","import React, { useMemo } from \"react\"\nimport { getDataClient } from \"venue-js\"\nimport { VenueContext } from \"./VenueContext\"\nimport type { VenueProviderProps, VenueContextValue } from \"./types\"\n\nexport const VenueProvider: React.FC<VenueProviderProps> = ({\n children,\n config,\n}) => {\n const client = useMemo(() => {\n const venueClient = getDataClient({\n ...config,\n queryClient: config.queryClient,\n })\n\n return venueClient\n }, [config])\n\n const contextValue: VenueContextValue = {\n client,\n }\n\n return (\n <VenueContext.Provider value={contextValue}>\n {children}\n </VenueContext.Provider>\n )\n}\n","import { createContext, useContext } from \"react\"\nimport type { VenueContextValue } from \"./types\"\n\nexport const VenueContext = createContext<VenueContextValue | undefined>(\n undefined\n)\n\nexport const useVenueContext = (): VenueContextValue => {\n const context = useContext(VenueContext)\n if (context === undefined) {\n throw new Error(\"useVenueContext must be used within a VenueProvider\")\n }\n return context\n}\n","import { useVenueContext } from \"../VenueContext\"\nimport type { VenueDataClient } from \"venue-js\"\n\nexport const useVenueDataClient = (): VenueDataClient => {\n const { client } = useVenueContext()\n return client\n}\n","import { useQuery, UseQueryResult } from \"@tanstack/react-query\"\nimport {\n type FeatureType,\n type FeatureResponseMap,\n type FilterParams,\n type FeatureQueryOptions,\n} from \"venue-js\"\nimport { useVenueDataClient } from \"./useVenueDataClient\"\n\nexport const useGetList = <T extends FeatureType>(\n featureType: T,\n params: FilterParams = {},\n options: FeatureQueryOptions = {}\n): UseQueryResult<FeatureResponseMap[T][]> => {\n const client = useVenueDataClient()\n const queryOptions = client.createFilterByTypeQueryOptions(\n featureType,\n params,\n options\n )\n\n // @ts-expect-error\n return useQuery<FeatureResponseMap[T][]>({\n ...queryOptions,\n ...options,\n })\n}\n","import { type FeatureType } from \"venue-js\"\nimport { useVenueDataClient } from \"./useVenueDataClient\"\nimport { useEffect } from \"react\"\n\nexport const useLiveRefresh = <T extends FeatureType>(\n featureType: T,\n refetchInterval = 5 * 60 * 1000\n) => {\n const client = useVenueDataClient()\n\n
|
|
1
|
+
{"version":3,"sources":["../src/index.ts","../src/VenueProvider.tsx","../src/VenueContext.tsx","../src/hooks/useVenueDataClient.ts","../src/hooks/useGetList.ts","../src/hooks/useLiveRefresh.ts"],"sourcesContent":["export { QueryObserver } from \"venue-js\"\n\n// Provider\nexport { VenueProvider } from \"./VenueProvider\"\n\n// Context\nexport { VenueContext, useVenueContext } from \"./VenueContext\"\n\n// Hooks\nexport { useVenueDataClient, useGetList, useLiveRefresh } from \"./hooks\"\n\n// Types\nexport type {\n VenueProviderProps,\n VenueContextValue,\n UseGetOneParams,\n UseGetListParams,\n UseGetOneResult,\n UseGetListResult,\n} from \"./types\"\n\n// Re-export venue-js types for convenience\nexport type {\n VenueDataClient,\n VenueClientOptions,\n FeatureType,\n FeatureResponseMap,\n FeaturePopulatedResponseMap,\n // IMDF Feature Types\n AmenityFeature,\n AnchorFeature,\n KioskFeature,\n LevelFeature,\n OccupantFeature,\n SectionFeature,\n UnitFeature,\n VenueFeature,\n // Non-IMDF Feature Types\n TaxonomyFeature,\n PromotionFeature,\n PrivilegeFeature,\n EventFeature,\n LabelFeature,\n} from \"venue-js\"\n","import React, { useMemo } from \"react\"\nimport { getDataClient } from \"venue-js\"\nimport { VenueContext } from \"./VenueContext\"\nimport type { VenueProviderProps, VenueContextValue } from \"./types\"\n\nexport const VenueProvider: React.FC<VenueProviderProps> = ({\n children,\n config,\n}) => {\n const client = useMemo(() => {\n const venueClient = getDataClient({\n ...config,\n queryClient: config.queryClient,\n })\n\n return venueClient\n }, [config])\n\n const contextValue: VenueContextValue = {\n client,\n }\n\n return (\n <VenueContext.Provider value={contextValue}>\n {children}\n </VenueContext.Provider>\n )\n}\n","import { createContext, useContext } from \"react\"\nimport type { VenueContextValue } from \"./types\"\n\nexport const VenueContext = createContext<VenueContextValue | undefined>(\n undefined\n)\n\nexport const useVenueContext = (): VenueContextValue => {\n const context = useContext(VenueContext)\n if (context === undefined) {\n throw new Error(\"useVenueContext must be used within a VenueProvider\")\n }\n return context\n}\n","import { useVenueContext } from \"../VenueContext\"\nimport type { VenueDataClient } from \"venue-js\"\n\nexport const useVenueDataClient = (): VenueDataClient => {\n const { client } = useVenueContext()\n return client\n}\n","import { useQuery, UseQueryResult } from \"@tanstack/react-query\"\nimport {\n type FeatureType,\n type FeatureResponseMap,\n type FilterParams,\n type FeatureQueryOptions,\n} from \"venue-js\"\nimport { useVenueDataClient } from \"./useVenueDataClient\"\n\nexport const useGetList = <T extends FeatureType>(\n featureType: T,\n params: FilterParams = {},\n options: FeatureQueryOptions = {}\n): UseQueryResult<FeatureResponseMap[T][]> => {\n const client = useVenueDataClient()\n const queryOptions = client.createFilterByTypeQueryOptions(\n featureType,\n params,\n options\n )\n\n // @ts-expect-error\n return useQuery<FeatureResponseMap[T][]>({\n ...queryOptions,\n ...options,\n })\n}\n","import { type FeatureType } from \"venue-js\"\nimport { useVenueDataClient } from \"./useVenueDataClient\"\nimport { useCallback, useEffect } from \"react\"\n\nexport const useLiveRefresh = <T extends FeatureType>(\n featureType: T,\n refetchInterval: number = 5 * 60 * 1000,\n autoStart: boolean = true\n) => {\n const client = useVenueDataClient()\n\n const start = useCallback(() => {\n client.registerObserver(featureType, refetchInterval)\n }, [client, featureType, refetchInterval])\n\n const stop = useCallback(() => {\n client.destroyObserver(featureType)\n }, [client, featureType])\n\n useEffect(() => {\n /** Keep internal queries active */\n if (autoStart === true) start()\n\n return () => {\n stop()\n }\n }, [start, stop, autoStart])\n\n\n return { start, stop }\n}\n"],"mappings":";AAAA,SAAS,qBAAqB;;;ACA9B,SAAgB,eAAe;AAC/B,SAAS,qBAAqB;;;ACD9B,SAAS,eAAe,kBAAkB;AAGnC,IAAM,eAAe;AAAA,EAC1B;AACF;AAEO,IAAM,kBAAkB,MAAyB;AACtD,QAAM,UAAU,WAAW,YAAY;AACvC,MAAI,YAAY,QAAW;AACzB,UAAM,IAAI,MAAM,qDAAqD;AAAA,EACvE;AACA,SAAO;AACT;;;ADUI;AAlBG,IAAM,gBAA8C,CAAC;AAAA,EAC1D;AAAA,EACA;AACF,MAAM;AACJ,QAAM,SAAS,QAAQ,MAAM;AAC3B,UAAM,cAAc,cAAc;AAAA,MAChC,GAAG;AAAA,MACH,aAAa,OAAO;AAAA,IACtB,CAAC;AAED,WAAO;AAAA,EACT,GAAG,CAAC,MAAM,CAAC;AAEX,QAAM,eAAkC;AAAA,IACtC;AAAA,EACF;AAEA,SACE,oBAAC,aAAa,UAAb,EAAsB,OAAO,cAC3B,UACH;AAEJ;;;AExBO,IAAM,qBAAqB,MAAuB;AACvD,QAAM,EAAE,OAAO,IAAI,gBAAgB;AACnC,SAAO;AACT;;;ACNA,SAAS,gBAAgC;AASlC,IAAM,aAAa,CACxB,aACA,SAAuB,CAAC,GACxB,UAA+B,CAAC,MACY;AAC5C,QAAM,SAAS,mBAAmB;AAClC,QAAM,eAAe,OAAO;AAAA,IAC1B;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAGA,SAAO,SAAkC;AAAA,IACvC,GAAG;AAAA,IACH,GAAG;AAAA,EACL,CAAC;AACH;;;ACxBA,SAAS,aAAa,iBAAiB;AAEhC,IAAM,iBAAiB,CAC5B,aACA,kBAA0B,IAAI,KAAK,KACnC,YAAqB,SAClB;AACH,QAAM,SAAS,mBAAmB;AAElC,QAAM,QAAQ,YAAY,MAAM;AAC9B,WAAO,iBAAiB,aAAa,eAAe;AAAA,EACtD,GAAG,CAAC,QAAQ,aAAa,eAAe,CAAC;AAEzC,QAAM,OAAO,YAAY,MAAM;AAC7B,WAAO,gBAAgB,WAAW;AAAA,EACpC,GAAG,CAAC,QAAQ,WAAW,CAAC;AAExB,YAAU,MAAM;AAEd,QAAI,cAAc,KAAM,OAAM;AAE9B,WAAO,MAAM;AACX,WAAK;AAAA,IACP;AAAA,EACF,GAAG,CAAC,OAAO,MAAM,SAAS,CAAC;AAG3B,SAAO,EAAE,OAAO,KAAK;AACvB;","names":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "venue-react",
|
|
3
|
-
"version": "1.0.0-
|
|
3
|
+
"version": "1.0.0-4",
|
|
4
4
|
"main": "./dist/index.js",
|
|
5
5
|
"module": "./dist/index.mjs",
|
|
6
6
|
"types": "./dist/index.d.ts",
|
|
@@ -30,6 +30,6 @@
|
|
|
30
30
|
},
|
|
31
31
|
"dependencies": {
|
|
32
32
|
"@turf/boolean-within": "^7.2.0",
|
|
33
|
-
"venue-js": "1.0.0-
|
|
33
|
+
"venue-js": "1.0.0-3"
|
|
34
34
|
}
|
|
35
35
|
}
|