@trackunit/react-core-hooks 0.2.119 → 0.2.121

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/index.cjs.js CHANGED
@@ -421,6 +421,35 @@ const useSiteRuntime = () => {
421
421
  return { siteInfo };
422
422
  };
423
423
 
424
+ /**
425
+ * A hook to expose event runtime for React components
426
+ *
427
+ * @requires EventRuntime
428
+ * @returns {UseEventRuntime} eventRuntime
429
+ * @example
430
+ * import { useEventRuntime } from "@trackunit/react-core-hooks";
431
+ * const { eventInfo } = useEventRuntime();
432
+ * // use eventInfo to get events for instance.
433
+ * useEffect(() => {
434
+ * (async () => {
435
+ * if (eventInfo?.id) {
436
+ * getEventQuery({ variables: { eventId: eventInfo?.id } });
437
+ * }
438
+ * })();
439
+ * }, [getEventQuery, eventInfo]);
440
+ */
441
+ const useEventRuntime = () => {
442
+ const [eventInfo, setEventInfo] = React.useState();
443
+ React.useEffect(() => {
444
+ const getEventInfo = () => __awaiter(void 0, void 0, void 0, function* () {
445
+ const updatedEventInfo = yield irisAppRuntimeCore.EventRuntime.getEventInfo();
446
+ setEventInfo(updatedEventInfo);
447
+ });
448
+ getEventInfo();
449
+ }, []);
450
+ return { eventInfo };
451
+ };
452
+
424
453
  const UserSubscriptionContext = React__namespace.createContext(null);
425
454
  /**
426
455
  * This is a provider for the UserSubscriptionContext.
@@ -647,6 +676,7 @@ exports.useCurrentUserTimeZonePreference = useCurrentUserTimeZonePreference;
647
676
  exports.useCustomFieldRuntime = useCustomFieldRuntime;
648
677
  exports.useCustomFieldRuntimeForEntity = useCustomFieldRuntimeForEntity;
649
678
  exports.useEnvironment = useEnvironment;
679
+ exports.useEventRuntime = useEventRuntime;
650
680
  exports.useFilterBarContext = useFilterBarContext;
651
681
  exports.useGlobalSelection = useGlobalSelection;
652
682
  exports.useHasAccessTo = useHasAccessTo;
package/index.esm.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import * as React from 'react';
2
2
  import React__default, { createContext, useContext, useState, useEffect, useMemo } from 'react';
3
3
  import { jsx } from 'react/jsx-runtime';
4
- import { NavigationRuntime, AssetRuntime, CustomFieldRuntime, RestRuntime, SiteRuntime } from '@trackunit/iris-app-runtime-core';
4
+ import { NavigationRuntime, AssetRuntime, CustomFieldRuntime, RestRuntime, SiteRuntime, EventRuntime } from '@trackunit/iris-app-runtime-core';
5
5
  import { useLocation } from 'react-router-dom';
6
6
  import { filterByMultiple } from '@trackunit/shared-utils';
7
7
 
@@ -395,6 +395,35 @@ const useSiteRuntime = () => {
395
395
  return { siteInfo };
396
396
  };
397
397
 
398
+ /**
399
+ * A hook to expose event runtime for React components
400
+ *
401
+ * @requires EventRuntime
402
+ * @returns {UseEventRuntime} eventRuntime
403
+ * @example
404
+ * import { useEventRuntime } from "@trackunit/react-core-hooks";
405
+ * const { eventInfo } = useEventRuntime();
406
+ * // use eventInfo to get events for instance.
407
+ * useEffect(() => {
408
+ * (async () => {
409
+ * if (eventInfo?.id) {
410
+ * getEventQuery({ variables: { eventId: eventInfo?.id } });
411
+ * }
412
+ * })();
413
+ * }, [getEventQuery, eventInfo]);
414
+ */
415
+ const useEventRuntime = () => {
416
+ const [eventInfo, setEventInfo] = useState();
417
+ useEffect(() => {
418
+ const getEventInfo = () => __awaiter(void 0, void 0, void 0, function* () {
419
+ const updatedEventInfo = yield EventRuntime.getEventInfo();
420
+ setEventInfo(updatedEventInfo);
421
+ });
422
+ getEventInfo();
423
+ }, []);
424
+ return { eventInfo };
425
+ };
426
+
398
427
  const UserSubscriptionContext = React.createContext(null);
399
428
  /**
400
429
  * This is a provider for the UserSubscriptionContext.
@@ -598,4 +627,4 @@ const useCurrentUser = () => {
598
627
  return context;
599
628
  };
600
629
 
601
- export { AnalyticsContext, AnalyticsContextProvider, AssetSortingProvider, CurrentUserPreferenceProvider, CurrentUserProvider, EnvironmentContextProvider, FilterBarProvider, GlobalSelectionProvider, NavigationContextProvider, OemBrandingContextProvider, ToastProvider, TokenProvider, UserSubscriptionProvider, useAnalytics, useAssetRuntime, useAssetSorting, useCurrentUser, useCurrentUserLanguage, useCurrentUserSystemOfMeasurement, useCurrentUserTimeZonePreference, useCustomFieldRuntime, useCustomFieldRuntimeForEntity, useEnvironment, useFilterBarContext, useGlobalSelection, useHasAccessTo, useNavigateInHost, useOemBrandingContext, useRestRuntime, useSiteRuntime, useTextSearch, useToast, useToken, useURLSynchronization, useUserSubscription };
630
+ export { AnalyticsContext, AnalyticsContextProvider, AssetSortingProvider, CurrentUserPreferenceProvider, CurrentUserProvider, EnvironmentContextProvider, FilterBarProvider, GlobalSelectionProvider, NavigationContextProvider, OemBrandingContextProvider, ToastProvider, TokenProvider, UserSubscriptionProvider, useAnalytics, useAssetRuntime, useAssetSorting, useCurrentUser, useCurrentUserLanguage, useCurrentUserSystemOfMeasurement, useCurrentUserTimeZonePreference, useCustomFieldRuntime, useCustomFieldRuntimeForEntity, useEnvironment, useEventRuntime, useFilterBarContext, useGlobalSelection, useHasAccessTo, useNavigateInHost, useOemBrandingContext, useRestRuntime, useSiteRuntime, useTextSearch, useToast, useToken, useURLSynchronization, useUserSubscription };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@trackunit/react-core-hooks",
3
- "version": "0.2.119",
3
+ "version": "0.2.121",
4
4
  "repository": "https://github.com/Trackunit/manager",
5
5
  "license": "SEE LICENSE IN LICENSE.txt",
6
6
  "engines": {
package/src/index.d.ts CHANGED
@@ -11,6 +11,7 @@ export * from "./runtimes/useCustomFieldRuntime";
11
11
  export * from "./runtimes/useCustomFieldRuntimeForEntity";
12
12
  export * from "./runtimes/useRestRuntime";
13
13
  export * from "./runtimes/useSiteRuntime";
14
+ export * from "./runtimes/useEventRuntime";
14
15
  export * from "./subscription/UserSubscriptionProvider";
15
16
  export * from "./toast/ToastProvider";
16
17
  export * from "./token/TokenProvider";
@@ -0,0 +1,22 @@
1
+ import { EventInfo } from "@trackunit/iris-app-runtime-core";
2
+ export interface UseEventRuntime {
3
+ eventInfo: EventInfo | undefined;
4
+ }
5
+ /**
6
+ * A hook to expose event runtime for React components
7
+ *
8
+ * @requires EventRuntime
9
+ * @returns {UseEventRuntime} eventRuntime
10
+ * @example
11
+ * import { useEventRuntime } from "@trackunit/react-core-hooks";
12
+ * const { eventInfo } = useEventRuntime();
13
+ * // use eventInfo to get events for instance.
14
+ * useEffect(() => {
15
+ * (async () => {
16
+ * if (eventInfo?.id) {
17
+ * getEventQuery({ variables: { eventId: eventInfo?.id } });
18
+ * }
19
+ * })();
20
+ * }, [getEventQuery, eventInfo]);
21
+ */
22
+ export declare const useEventRuntime: () => UseEventRuntime;