@selfcommunity/react-core 0.4.50-events.97 → 0.4.50-events.99
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/lib/cjs/hooks/useSCSubscribedEventsManager.js +4 -9
- package/lib/cjs/index.d.ts +2 -1
- package/lib/cjs/index.js +4 -2
- package/lib/cjs/utils/event.d.ts +8 -0
- package/lib/cjs/utils/event.js +29 -0
- package/lib/esm/hooks/useSCSubscribedEventsManager.js +5 -10
- package/lib/esm/index.d.ts +2 -1
- package/lib/esm/index.js +2 -1
- package/lib/esm/utils/event.d.ts +8 -0
- package/lib/esm/utils/event.js +25 -0
- package/lib/umd/react-core.js +1 -1
- package/package.json +6 -6
|
@@ -11,6 +11,7 @@ const SCPreferencesProvider_1 = require("../components/provider/SCPreferencesPro
|
|
|
11
11
|
const Errors_1 = require("../constants/Errors");
|
|
12
12
|
const Notification_1 = require("../constants/Notification");
|
|
13
13
|
const useSCCachingManager_1 = tslib_1.__importDefault(require("./useSCCachingManager"));
|
|
14
|
+
const event_1 = require("../utils/event");
|
|
14
15
|
/**
|
|
15
16
|
:::info
|
|
16
17
|
This custom hook is used to manage the events followed.
|
|
@@ -129,7 +130,7 @@ function useSCSubscribedEventsManager(user) {
|
|
|
129
130
|
});
|
|
130
131
|
}
|
|
131
132
|
else {
|
|
132
|
-
const requestConfig = !event.subscription_status
|
|
133
|
+
const requestConfig = !event.subscription_status || event.subscription_status === types_1.SCEventSubscriptionStatusType.INVITED
|
|
133
134
|
? {
|
|
134
135
|
url: api_services_1.Endpoints.SubscribeToEvent.url({ id: event.id }),
|
|
135
136
|
method: api_services_1.Endpoints.SubscribeToEvent.method,
|
|
@@ -148,11 +149,7 @@ function useSCSubscribedEventsManager(user) {
|
|
|
148
149
|
return Promise.reject(res);
|
|
149
150
|
}
|
|
150
151
|
updateCache([event.id]);
|
|
151
|
-
setData((prev) => getDataUpdated(prev, event.id,
|
|
152
|
-
? types_1.SCEventSubscriptionStatusType.REQUESTED
|
|
153
|
-
: event.subscription_status === types_1.SCEventSubscriptionStatusType.GOING
|
|
154
|
-
? types_1.SCEventSubscriptionStatusType.SUBSCRIBED
|
|
155
|
-
: types_1.SCEventSubscriptionStatusType.GOING));
|
|
152
|
+
setData((prev) => getDataUpdated(prev, event.id, (0, event_1.getEventStatus)(event, true)));
|
|
156
153
|
setUnLoading(event.id);
|
|
157
154
|
return Promise.resolve(res.data);
|
|
158
155
|
});
|
|
@@ -179,9 +176,7 @@ function useSCSubscribedEventsManager(user) {
|
|
|
179
176
|
return Promise.reject(res);
|
|
180
177
|
}
|
|
181
178
|
updateCache([event.id]);
|
|
182
|
-
setData((prev) => getDataUpdated(prev, event.id, event
|
|
183
|
-
? types_1.SCEventSubscriptionStatusType.SUBSCRIBED
|
|
184
|
-
: types_1.SCEventSubscriptionStatusType.NOT_GOING));
|
|
179
|
+
setData((prev) => getDataUpdated(prev, event.id, (0, event_1.getEventStatus)(event, false)));
|
|
185
180
|
setUnLoading(event.id);
|
|
186
181
|
return Promise.resolve(res.data);
|
|
187
182
|
});
|
package/lib/cjs/index.d.ts
CHANGED
|
@@ -76,6 +76,7 @@ import * as SCRoutes from './constants/Routes';
|
|
|
76
76
|
import * as UserUtils from './utils/user';
|
|
77
77
|
import getTheme from './themes/theme';
|
|
78
78
|
import { useIsComponentMountedRef, usePreviousValue, useIsomorphicLayoutEffect, useEffectOnce, useNoInitialEffect } from './utils/hooks';
|
|
79
|
+
import { getEventStatus } from './utils/event';
|
|
79
80
|
/**
|
|
80
81
|
* Constants:
|
|
81
82
|
* Locale, Preferences
|
|
@@ -85,4 +86,4 @@ import * as Preferences from './constants/Preferences';
|
|
|
85
86
|
/**
|
|
86
87
|
* List all exports
|
|
87
88
|
*/
|
|
88
|
-
export { SCUserContextType, SCFollowedCategoriesManagerType, SCContextProviderType, SCContextType, SCSettingsType, SCSessionType, SCSettingsManagerType, SCFollowedManagerType, SCFollowersManagerType, SCConnectionsManagerType, SCSubscribedIncubatorsManagerType, SCLocaleType, SCNotificationContextType, SCPreferencesContextType, SCThemeContextType, SCRoutingContextType, SCLocaleContextType, SCAlertMessagesContextType, SCThemeAvatarVariableType, SCThemeCategoryIconVariableType, SCThemeCategoryVariableType, SCThemeVariablesType, SCThemeType, SCSubscribedGroupsManagerType, SCSubscribedEventsManagerType, SCContext, SCUserContext, SCThemeContext, SCRoutingContext, SCLocaleContext, SCPreferencesContext, useSCContext, SCContextProvider, SCUserProvider, useSCUser, useSCPreferences, SCThemeProvider, useSCTheme, withSCTheme, getTheme, SCRoutingProvider, useSCRouting, SCLocaleProvider, useSCLocale, withSCLocale, SCPreferencesProvider, SCPreferences, SCFeatures, SCNotification, SCNotificationProvider, SCNotificationContext, useSCNotification, SCAlertMessagesProvider, SCAlertMessagesContext, useSCAlertMessages, Link, SCRoutes, SCCache, UserUtils, Locale, Preferences, useSCFetchUser, useSCFetchUserProviders, useSCFetchVote, useSCFetchFeedObject, useSCFetchCommentObject, useSCFetchCommentObjects, useSCFetchCustomAdv, useSCFetchTag, useSCFetchAddressingTagList, useSCFetchCategory, useSCFetchCategories, useSCFetchIncubator, useSCMediaClick, useSCFetchContributors, useSCFetchFeed, useIsComponentMountedRef, usePreviousValue, useIsomorphicLayoutEffect, useEffectOnce, useNoInitialEffect, useSCFetchPrivateMessageSnippets, useSCFetchBroadcastMessages, useSCFetchUserBlockedBy, useSCUserIsBlocked, useSCFetchGroup, useSCFetchGroups, useSCFetchEvent, useSCFetchEvents };
|
|
89
|
+
export { SCUserContextType, SCFollowedCategoriesManagerType, SCContextProviderType, SCContextType, SCSettingsType, SCSessionType, SCSettingsManagerType, SCFollowedManagerType, SCFollowersManagerType, SCConnectionsManagerType, SCSubscribedIncubatorsManagerType, SCLocaleType, SCNotificationContextType, SCPreferencesContextType, SCThemeContextType, SCRoutingContextType, SCLocaleContextType, SCAlertMessagesContextType, SCThemeAvatarVariableType, SCThemeCategoryIconVariableType, SCThemeCategoryVariableType, SCThemeVariablesType, SCThemeType, SCSubscribedGroupsManagerType, SCSubscribedEventsManagerType, SCContext, SCUserContext, SCThemeContext, SCRoutingContext, SCLocaleContext, SCPreferencesContext, useSCContext, SCContextProvider, SCUserProvider, useSCUser, useSCPreferences, SCThemeProvider, useSCTheme, withSCTheme, getTheme, SCRoutingProvider, useSCRouting, SCLocaleProvider, useSCLocale, withSCLocale, SCPreferencesProvider, SCPreferences, SCFeatures, SCNotification, SCNotificationProvider, SCNotificationContext, useSCNotification, SCAlertMessagesProvider, SCAlertMessagesContext, useSCAlertMessages, Link, SCRoutes, SCCache, UserUtils, getEventStatus, Locale, Preferences, useSCFetchUser, useSCFetchUserProviders, useSCFetchVote, useSCFetchFeedObject, useSCFetchCommentObject, useSCFetchCommentObjects, useSCFetchCustomAdv, useSCFetchTag, useSCFetchAddressingTagList, useSCFetchCategory, useSCFetchCategories, useSCFetchIncubator, useSCMediaClick, useSCFetchContributors, useSCFetchFeed, useIsComponentMountedRef, usePreviousValue, useIsomorphicLayoutEffect, useEffectOnce, useNoInitialEffect, useSCFetchPrivateMessageSnippets, useSCFetchBroadcastMessages, useSCFetchUserBlockedBy, useSCUserIsBlocked, useSCFetchGroup, useSCFetchGroups, useSCFetchEvent, useSCFetchEvents, };
|
package/lib/cjs/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
4
|
-
exports.useSCFetchEvents = exports.useSCFetchEvent = exports.useSCFetchGroups = exports.useSCFetchGroup = exports.useSCUserIsBlocked = exports.useSCFetchUserBlockedBy = exports.useSCFetchBroadcastMessages = exports.useSCFetchPrivateMessageSnippets = exports.useNoInitialEffect = exports.useEffectOnce = exports.useIsomorphicLayoutEffect = exports.usePreviousValue = exports.useIsComponentMountedRef = exports.useSCFetchFeed = void 0;
|
|
3
|
+
exports.useSCMediaClick = exports.useSCFetchIncubator = exports.useSCFetchCategories = exports.useSCFetchCategory = exports.useSCFetchAddressingTagList = exports.useSCFetchTag = exports.useSCFetchCustomAdv = exports.useSCFetchCommentObjects = exports.useSCFetchCommentObject = exports.useSCFetchFeedObject = exports.useSCFetchVote = exports.useSCFetchUserProviders = exports.useSCFetchUser = exports.Preferences = exports.Locale = exports.getEventStatus = exports.UserUtils = exports.SCCache = exports.SCRoutes = exports.Link = exports.useSCAlertMessages = exports.SCAlertMessagesContext = exports.SCAlertMessagesProvider = exports.useSCNotification = exports.SCNotificationContext = exports.SCNotificationProvider = exports.SCNotification = exports.SCFeatures = exports.SCPreferences = exports.SCPreferencesProvider = exports.withSCLocale = exports.useSCLocale = exports.SCLocaleProvider = exports.useSCRouting = exports.SCRoutingProvider = exports.getTheme = exports.withSCTheme = exports.useSCTheme = exports.SCThemeProvider = exports.useSCPreferences = exports.useSCUser = exports.SCUserProvider = exports.SCContextProvider = exports.useSCContext = exports.SCPreferencesContext = exports.SCLocaleContext = exports.SCRoutingContext = exports.SCThemeContext = exports.SCUserContext = exports.SCContext = void 0;
|
|
4
|
+
exports.useSCFetchEvents = exports.useSCFetchEvent = exports.useSCFetchGroups = exports.useSCFetchGroup = exports.useSCUserIsBlocked = exports.useSCFetchUserBlockedBy = exports.useSCFetchBroadcastMessages = exports.useSCFetchPrivateMessageSnippets = exports.useNoInitialEffect = exports.useEffectOnce = exports.useIsomorphicLayoutEffect = exports.usePreviousValue = exports.useIsComponentMountedRef = exports.useSCFetchFeed = exports.useSCFetchContributors = void 0;
|
|
5
5
|
const tslib_1 = require("tslib");
|
|
6
6
|
/**
|
|
7
7
|
* ContextProvider component
|
|
@@ -139,6 +139,8 @@ Object.defineProperty(exports, "usePreviousValue", { enumerable: true, get: func
|
|
|
139
139
|
Object.defineProperty(exports, "useIsomorphicLayoutEffect", { enumerable: true, get: function () { return hooks_1.useIsomorphicLayoutEffect; } });
|
|
140
140
|
Object.defineProperty(exports, "useEffectOnce", { enumerable: true, get: function () { return hooks_1.useEffectOnce; } });
|
|
141
141
|
Object.defineProperty(exports, "useNoInitialEffect", { enumerable: true, get: function () { return hooks_1.useNoInitialEffect; } });
|
|
142
|
+
const event_1 = require("./utils/event");
|
|
143
|
+
Object.defineProperty(exports, "getEventStatus", { enumerable: true, get: function () { return event_1.getEventStatus; } });
|
|
142
144
|
/**
|
|
143
145
|
* Constants:
|
|
144
146
|
* Locale, Preferences
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { SCEventSubscriptionStatusType, SCEventType } from '@selfcommunity/types';
|
|
2
|
+
/**
|
|
3
|
+
* Get event status
|
|
4
|
+
* @returns status or null
|
|
5
|
+
* @param event
|
|
6
|
+
* @param going
|
|
7
|
+
*/
|
|
8
|
+
export declare function getEventStatus(event: SCEventType, going: boolean): SCEventSubscriptionStatusType | null;
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getEventStatus = void 0;
|
|
4
|
+
const types_1 = require("@selfcommunity/types");
|
|
5
|
+
/**
|
|
6
|
+
* Get event status
|
|
7
|
+
* @returns status or null
|
|
8
|
+
* @param event
|
|
9
|
+
* @param going
|
|
10
|
+
*/
|
|
11
|
+
function getEventStatus(event, going) {
|
|
12
|
+
const { subscription_status: status, privacy } = event;
|
|
13
|
+
if (!status) {
|
|
14
|
+
return privacy === types_1.SCEventPrivacyType.PRIVATE ? types_1.SCEventSubscriptionStatusType.REQUESTED : types_1.SCEventSubscriptionStatusType.SUBSCRIBED;
|
|
15
|
+
}
|
|
16
|
+
switch (status) {
|
|
17
|
+
case types_1.SCEventSubscriptionStatusType.INVITED:
|
|
18
|
+
case types_1.SCEventSubscriptionStatusType.GOING:
|
|
19
|
+
case types_1.SCEventSubscriptionStatusType.NOT_GOING:
|
|
20
|
+
return types_1.SCEventSubscriptionStatusType.SUBSCRIBED;
|
|
21
|
+
case types_1.SCEventSubscriptionStatusType.SUBSCRIBED:
|
|
22
|
+
return going ? types_1.SCEventSubscriptionStatusType.GOING : types_1.SCEventSubscriptionStatusType.NOT_GOING;
|
|
23
|
+
case types_1.SCEventSubscriptionStatusType.REQUESTED:
|
|
24
|
+
return privacy === types_1.SCEventPrivacyType.PRIVATE ? null : types_1.SCEventSubscriptionStatusType.SUBSCRIBED;
|
|
25
|
+
default:
|
|
26
|
+
return null;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
exports.getEventStatus = getEventStatus;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Endpoints, http } from '@selfcommunity/api-services';
|
|
2
|
-
import {
|
|
2
|
+
import { SCEventSubscriptionStatusType, SCFeatureName, SCNotificationTopicType, SCNotificationTypologyType, } from '@selfcommunity/types';
|
|
3
3
|
import { Logger } from '@selfcommunity/utils';
|
|
4
4
|
import PubSub from 'pubsub-js';
|
|
5
5
|
import { useEffect, useMemo, useRef } from 'react';
|
|
@@ -8,6 +8,7 @@ import { useSCPreferences } from '../components/provider/SCPreferencesProvider';
|
|
|
8
8
|
import { SCOPE_SC_CORE } from '../constants/Errors';
|
|
9
9
|
import { SCNotificationMapping } from '../constants/Notification';
|
|
10
10
|
import useSCCachingManager from './useSCCachingManager';
|
|
11
|
+
import { getEventStatus } from '../utils/event';
|
|
11
12
|
/**
|
|
12
13
|
:::info
|
|
13
14
|
This custom hook is used to manage the events followed.
|
|
@@ -126,7 +127,7 @@ export default function useSCSubscribedEventsManager(user) {
|
|
|
126
127
|
});
|
|
127
128
|
}
|
|
128
129
|
else {
|
|
129
|
-
const requestConfig = !event.subscription_status
|
|
130
|
+
const requestConfig = !event.subscription_status || event.subscription_status === SCEventSubscriptionStatusType.INVITED
|
|
130
131
|
? {
|
|
131
132
|
url: Endpoints.SubscribeToEvent.url({ id: event.id }),
|
|
132
133
|
method: Endpoints.SubscribeToEvent.method,
|
|
@@ -145,11 +146,7 @@ export default function useSCSubscribedEventsManager(user) {
|
|
|
145
146
|
return Promise.reject(res);
|
|
146
147
|
}
|
|
147
148
|
updateCache([event.id]);
|
|
148
|
-
setData((prev) => getDataUpdated(prev, event.id, event
|
|
149
|
-
? SCEventSubscriptionStatusType.REQUESTED
|
|
150
|
-
: event.subscription_status === SCEventSubscriptionStatusType.GOING
|
|
151
|
-
? SCEventSubscriptionStatusType.SUBSCRIBED
|
|
152
|
-
: SCEventSubscriptionStatusType.GOING));
|
|
149
|
+
setData((prev) => getDataUpdated(prev, event.id, getEventStatus(event, true)));
|
|
153
150
|
setUnLoading(event.id);
|
|
154
151
|
return Promise.resolve(res.data);
|
|
155
152
|
});
|
|
@@ -176,9 +173,7 @@ export default function useSCSubscribedEventsManager(user) {
|
|
|
176
173
|
return Promise.reject(res);
|
|
177
174
|
}
|
|
178
175
|
updateCache([event.id]);
|
|
179
|
-
setData((prev) => getDataUpdated(prev, event.id, event
|
|
180
|
-
? SCEventSubscriptionStatusType.SUBSCRIBED
|
|
181
|
-
: SCEventSubscriptionStatusType.NOT_GOING));
|
|
176
|
+
setData((prev) => getDataUpdated(prev, event.id, getEventStatus(event, false)));
|
|
182
177
|
setUnLoading(event.id);
|
|
183
178
|
return Promise.resolve(res.data);
|
|
184
179
|
});
|
package/lib/esm/index.d.ts
CHANGED
|
@@ -76,6 +76,7 @@ import * as SCRoutes from './constants/Routes';
|
|
|
76
76
|
import * as UserUtils from './utils/user';
|
|
77
77
|
import getTheme from './themes/theme';
|
|
78
78
|
import { useIsComponentMountedRef, usePreviousValue, useIsomorphicLayoutEffect, useEffectOnce, useNoInitialEffect } from './utils/hooks';
|
|
79
|
+
import { getEventStatus } from './utils/event';
|
|
79
80
|
/**
|
|
80
81
|
* Constants:
|
|
81
82
|
* Locale, Preferences
|
|
@@ -85,4 +86,4 @@ import * as Preferences from './constants/Preferences';
|
|
|
85
86
|
/**
|
|
86
87
|
* List all exports
|
|
87
88
|
*/
|
|
88
|
-
export { SCUserContextType, SCFollowedCategoriesManagerType, SCContextProviderType, SCContextType, SCSettingsType, SCSessionType, SCSettingsManagerType, SCFollowedManagerType, SCFollowersManagerType, SCConnectionsManagerType, SCSubscribedIncubatorsManagerType, SCLocaleType, SCNotificationContextType, SCPreferencesContextType, SCThemeContextType, SCRoutingContextType, SCLocaleContextType, SCAlertMessagesContextType, SCThemeAvatarVariableType, SCThemeCategoryIconVariableType, SCThemeCategoryVariableType, SCThemeVariablesType, SCThemeType, SCSubscribedGroupsManagerType, SCSubscribedEventsManagerType, SCContext, SCUserContext, SCThemeContext, SCRoutingContext, SCLocaleContext, SCPreferencesContext, useSCContext, SCContextProvider, SCUserProvider, useSCUser, useSCPreferences, SCThemeProvider, useSCTheme, withSCTheme, getTheme, SCRoutingProvider, useSCRouting, SCLocaleProvider, useSCLocale, withSCLocale, SCPreferencesProvider, SCPreferences, SCFeatures, SCNotification, SCNotificationProvider, SCNotificationContext, useSCNotification, SCAlertMessagesProvider, SCAlertMessagesContext, useSCAlertMessages, Link, SCRoutes, SCCache, UserUtils, Locale, Preferences, useSCFetchUser, useSCFetchUserProviders, useSCFetchVote, useSCFetchFeedObject, useSCFetchCommentObject, useSCFetchCommentObjects, useSCFetchCustomAdv, useSCFetchTag, useSCFetchAddressingTagList, useSCFetchCategory, useSCFetchCategories, useSCFetchIncubator, useSCMediaClick, useSCFetchContributors, useSCFetchFeed, useIsComponentMountedRef, usePreviousValue, useIsomorphicLayoutEffect, useEffectOnce, useNoInitialEffect, useSCFetchPrivateMessageSnippets, useSCFetchBroadcastMessages, useSCFetchUserBlockedBy, useSCUserIsBlocked, useSCFetchGroup, useSCFetchGroups, useSCFetchEvent, useSCFetchEvents };
|
|
89
|
+
export { SCUserContextType, SCFollowedCategoriesManagerType, SCContextProviderType, SCContextType, SCSettingsType, SCSessionType, SCSettingsManagerType, SCFollowedManagerType, SCFollowersManagerType, SCConnectionsManagerType, SCSubscribedIncubatorsManagerType, SCLocaleType, SCNotificationContextType, SCPreferencesContextType, SCThemeContextType, SCRoutingContextType, SCLocaleContextType, SCAlertMessagesContextType, SCThemeAvatarVariableType, SCThemeCategoryIconVariableType, SCThemeCategoryVariableType, SCThemeVariablesType, SCThemeType, SCSubscribedGroupsManagerType, SCSubscribedEventsManagerType, SCContext, SCUserContext, SCThemeContext, SCRoutingContext, SCLocaleContext, SCPreferencesContext, useSCContext, SCContextProvider, SCUserProvider, useSCUser, useSCPreferences, SCThemeProvider, useSCTheme, withSCTheme, getTheme, SCRoutingProvider, useSCRouting, SCLocaleProvider, useSCLocale, withSCLocale, SCPreferencesProvider, SCPreferences, SCFeatures, SCNotification, SCNotificationProvider, SCNotificationContext, useSCNotification, SCAlertMessagesProvider, SCAlertMessagesContext, useSCAlertMessages, Link, SCRoutes, SCCache, UserUtils, getEventStatus, Locale, Preferences, useSCFetchUser, useSCFetchUserProviders, useSCFetchVote, useSCFetchFeedObject, useSCFetchCommentObject, useSCFetchCommentObjects, useSCFetchCustomAdv, useSCFetchTag, useSCFetchAddressingTagList, useSCFetchCategory, useSCFetchCategories, useSCFetchIncubator, useSCMediaClick, useSCFetchContributors, useSCFetchFeed, useIsComponentMountedRef, usePreviousValue, useIsomorphicLayoutEffect, useEffectOnce, useNoInitialEffect, useSCFetchPrivateMessageSnippets, useSCFetchBroadcastMessages, useSCFetchUserBlockedBy, useSCUserIsBlocked, useSCFetchGroup, useSCFetchGroups, useSCFetchEvent, useSCFetchEvents, };
|
package/lib/esm/index.js
CHANGED
|
@@ -72,6 +72,7 @@ import * as SCRoutes from './constants/Routes';
|
|
|
72
72
|
import * as UserUtils from './utils/user';
|
|
73
73
|
import getTheme from './themes/theme';
|
|
74
74
|
import { useIsComponentMountedRef, usePreviousValue, useIsomorphicLayoutEffect, useEffectOnce, useNoInitialEffect } from './utils/hooks';
|
|
75
|
+
import { getEventStatus } from './utils/event';
|
|
75
76
|
/**
|
|
76
77
|
* Constants:
|
|
77
78
|
* Locale, Preferences
|
|
@@ -81,4 +82,4 @@ import * as Preferences from './constants/Preferences';
|
|
|
81
82
|
/**
|
|
82
83
|
* List all exports
|
|
83
84
|
*/
|
|
84
|
-
export { SCContext, SCUserContext, SCThemeContext, SCRoutingContext, SCLocaleContext, SCPreferencesContext, useSCContext, SCContextProvider, SCUserProvider, useSCUser, useSCPreferences, SCThemeProvider, useSCTheme, withSCTheme, getTheme, SCRoutingProvider, useSCRouting, SCLocaleProvider, useSCLocale, withSCLocale, SCPreferencesProvider, SCPreferences, SCFeatures, SCNotification, SCNotificationProvider, SCNotificationContext, useSCNotification, SCAlertMessagesProvider, SCAlertMessagesContext, useSCAlertMessages, Link, SCRoutes, SCCache, UserUtils, Locale, Preferences, useSCFetchUser, useSCFetchUserProviders, useSCFetchVote, useSCFetchFeedObject, useSCFetchCommentObject, useSCFetchCommentObjects, useSCFetchCustomAdv, useSCFetchTag, useSCFetchAddressingTagList, useSCFetchCategory, useSCFetchCategories, useSCFetchIncubator, useSCMediaClick, useSCFetchContributors, useSCFetchFeed, useIsComponentMountedRef, usePreviousValue, useIsomorphicLayoutEffect, useEffectOnce, useNoInitialEffect, useSCFetchPrivateMessageSnippets, useSCFetchBroadcastMessages, useSCFetchUserBlockedBy, useSCUserIsBlocked, useSCFetchGroup, useSCFetchGroups, useSCFetchEvent, useSCFetchEvents };
|
|
85
|
+
export { SCContext, SCUserContext, SCThemeContext, SCRoutingContext, SCLocaleContext, SCPreferencesContext, useSCContext, SCContextProvider, SCUserProvider, useSCUser, useSCPreferences, SCThemeProvider, useSCTheme, withSCTheme, getTheme, SCRoutingProvider, useSCRouting, SCLocaleProvider, useSCLocale, withSCLocale, SCPreferencesProvider, SCPreferences, SCFeatures, SCNotification, SCNotificationProvider, SCNotificationContext, useSCNotification, SCAlertMessagesProvider, SCAlertMessagesContext, useSCAlertMessages, Link, SCRoutes, SCCache, UserUtils, getEventStatus, Locale, Preferences, useSCFetchUser, useSCFetchUserProviders, useSCFetchVote, useSCFetchFeedObject, useSCFetchCommentObject, useSCFetchCommentObjects, useSCFetchCustomAdv, useSCFetchTag, useSCFetchAddressingTagList, useSCFetchCategory, useSCFetchCategories, useSCFetchIncubator, useSCMediaClick, useSCFetchContributors, useSCFetchFeed, useIsComponentMountedRef, usePreviousValue, useIsomorphicLayoutEffect, useEffectOnce, useNoInitialEffect, useSCFetchPrivateMessageSnippets, useSCFetchBroadcastMessages, useSCFetchUserBlockedBy, useSCUserIsBlocked, useSCFetchGroup, useSCFetchGroups, useSCFetchEvent, useSCFetchEvents, };
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { SCEventSubscriptionStatusType, SCEventType } from '@selfcommunity/types';
|
|
2
|
+
/**
|
|
3
|
+
* Get event status
|
|
4
|
+
* @returns status or null
|
|
5
|
+
* @param event
|
|
6
|
+
* @param going
|
|
7
|
+
*/
|
|
8
|
+
export declare function getEventStatus(event: SCEventType, going: boolean): SCEventSubscriptionStatusType | null;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { SCEventPrivacyType, SCEventSubscriptionStatusType } from '@selfcommunity/types';
|
|
2
|
+
/**
|
|
3
|
+
* Get event status
|
|
4
|
+
* @returns status or null
|
|
5
|
+
* @param event
|
|
6
|
+
* @param going
|
|
7
|
+
*/
|
|
8
|
+
export function getEventStatus(event, going) {
|
|
9
|
+
const { subscription_status: status, privacy } = event;
|
|
10
|
+
if (!status) {
|
|
11
|
+
return privacy === SCEventPrivacyType.PRIVATE ? SCEventSubscriptionStatusType.REQUESTED : SCEventSubscriptionStatusType.SUBSCRIBED;
|
|
12
|
+
}
|
|
13
|
+
switch (status) {
|
|
14
|
+
case SCEventSubscriptionStatusType.INVITED:
|
|
15
|
+
case SCEventSubscriptionStatusType.GOING:
|
|
16
|
+
case SCEventSubscriptionStatusType.NOT_GOING:
|
|
17
|
+
return SCEventSubscriptionStatusType.SUBSCRIBED;
|
|
18
|
+
case SCEventSubscriptionStatusType.SUBSCRIBED:
|
|
19
|
+
return going ? SCEventSubscriptionStatusType.GOING : SCEventSubscriptionStatusType.NOT_GOING;
|
|
20
|
+
case SCEventSubscriptionStatusType.REQUESTED:
|
|
21
|
+
return privacy === SCEventPrivacyType.PRIVATE ? null : SCEventSubscriptionStatusType.SUBSCRIBED;
|
|
22
|
+
default:
|
|
23
|
+
return null;
|
|
24
|
+
}
|
|
25
|
+
}
|