@selfcommunity/react-templates 0.5.0-alpha.3 → 0.5.0-alpha.31
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/components/Category/Category.js +1 -2
- package/lib/cjs/components/Category/Skeleton.js +1 -2
- package/lib/cjs/components/CategoryFeed/CategoryFeed.js +18 -7
- package/lib/cjs/components/CategoryFeed/Skeleton.js +2 -2
- package/lib/cjs/components/Event/Event.js +1 -2
- package/lib/cjs/components/Event/Skeleton.js +1 -2
- package/lib/cjs/components/EventFeed/EventFeed.js +37 -26
- package/lib/cjs/components/EventFeed/Skeleton.js +2 -2
- package/lib/cjs/components/ExploreFeed/ExploreFeed.js +8 -7
- package/lib/cjs/components/ExploreFeed/Skeleton.js +2 -2
- package/lib/cjs/components/FeedObjectDetail/FeedObjectDetail.js +5 -4
- package/lib/cjs/components/FeedObjectDetail/Skeleton.js +1 -2
- package/lib/cjs/components/Group/Group.js +1 -2
- package/lib/cjs/components/Group/Skeleton.js +1 -2
- package/lib/cjs/components/GroupFeed/GroupFeed.js +30 -18
- package/lib/cjs/components/GroupFeed/Skeleton.js +2 -2
- package/lib/cjs/components/Lesson/Lesson.js +2 -3
- package/lib/cjs/components/LoyaltyProgramDetail/LoyaltyProgramDetail.js +2 -4
- package/lib/cjs/components/LoyaltyProgramDetail/PointsList.js +1 -2
- package/lib/cjs/components/LoyaltyProgramDetail/PrizeItemSkeleton.js +1 -2
- package/lib/cjs/components/LoyaltyProgramDetail/Skeleton.js +1 -2
- package/lib/cjs/components/MainFeed/MainFeed.js +8 -7
- package/lib/cjs/components/MainFeed/Skeleton.js +2 -2
- package/lib/cjs/components/NotificationFeed/NotificationFeed.js +2 -2
- package/lib/cjs/components/NotificationFeed/Skeleton.js +2 -2
- package/lib/cjs/components/UserFeed/Skeleton.js +2 -2
- package/lib/cjs/components/UserFeed/UserFeed.js +7 -6
- package/lib/cjs/components/UserProfile/Skeleton.js +1 -2
- package/lib/cjs/components/UserProfile/UserProfile.js +6 -4
- package/lib/esm/components/Category/Category.js +1 -2
- package/lib/esm/components/Category/Skeleton.js +1 -2
- package/lib/esm/components/CategoryFeed/CategoryFeed.js +20 -9
- package/lib/esm/components/CategoryFeed/Skeleton.js +1 -1
- package/lib/esm/components/Event/Event.js +1 -2
- package/lib/esm/components/Event/Skeleton.js +1 -2
- package/lib/esm/components/EventFeed/EventFeed.js +37 -26
- package/lib/esm/components/EventFeed/Skeleton.js +1 -1
- package/lib/esm/components/ExploreFeed/ExploreFeed.js +7 -6
- package/lib/esm/components/ExploreFeed/Skeleton.js +1 -1
- package/lib/esm/components/FeedObjectDetail/FeedObjectDetail.js +5 -4
- package/lib/esm/components/FeedObjectDetail/Skeleton.js +1 -2
- package/lib/esm/components/Group/Group.js +1 -2
- package/lib/esm/components/Group/Skeleton.js +1 -2
- package/lib/esm/components/GroupFeed/GroupFeed.js +31 -19
- package/lib/esm/components/GroupFeed/Skeleton.js +1 -1
- package/lib/esm/components/Lesson/Lesson.js +1 -2
- package/lib/esm/components/LoyaltyProgramDetail/LoyaltyProgramDetail.js +1 -3
- package/lib/esm/components/LoyaltyProgramDetail/PointsList.js +1 -2
- package/lib/esm/components/LoyaltyProgramDetail/PrizeItemSkeleton.js +1 -2
- package/lib/esm/components/LoyaltyProgramDetail/Skeleton.js +1 -2
- package/lib/esm/components/MainFeed/MainFeed.js +7 -6
- package/lib/esm/components/MainFeed/Skeleton.js +1 -1
- package/lib/esm/components/NotificationFeed/NotificationFeed.js +1 -1
- package/lib/esm/components/NotificationFeed/Skeleton.js +1 -1
- package/lib/esm/components/UserFeed/Skeleton.js +1 -1
- package/lib/esm/components/UserFeed/UserFeed.js +6 -5
- package/lib/esm/components/UserProfile/Skeleton.js +1 -2
- package/lib/esm/components/UserProfile/UserProfile.js +6 -4
- package/lib/umd/{c473ce30406a3dad83e1.eot → 30b299174b4fa1fb9ce8.eot} +0 -0
- package/lib/umd/{b6dbec3d5816ff8baef1.woff → 3b49304a98beb1239bc7.ttf} +0 -0
- package/lib/umd/589.js +2 -0
- package/lib/umd/738.js +1 -1
- package/lib/umd/73cbb3dbfaa3ddd4df47.js +2 -0
- package/lib/umd/73cbb3dbfaa3ddd4df47.js.LICENSE.txt +21 -0
- package/lib/umd/ab247f43e550f5f6d0f8.woff2 +0 -0
- package/lib/umd/{ba74e493633796d551d1.ttf → ce10db0c87e7112cb315.woff} +0 -0
- package/lib/umd/{6158171e38cbff3c3340.svg → fff8590360ed9eed64ae.svg} +75 -69
- package/lib/umd/react-templates.js +1 -1
- package/package.json +9 -6
- package/lib/umd/60a7fdeaadfe844bc015.woff2 +0 -0
- package/lib/umd/916.js +0 -2
- /package/lib/umd/{916.js.LICENSE.txt → 589.js.LICENSE.txt} +0 -0
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
const tslib_1 = require("tslib");
|
|
4
4
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
-
const styles_1 = require("@mui/material/styles");
|
|
6
5
|
const material_1 = require("@mui/material");
|
|
7
6
|
const react_ui_1 = require("@selfcommunity/react-ui");
|
|
8
7
|
const CategoryFeed_1 = tslib_1.__importDefault(require("../CategoryFeed"));
|
|
@@ -15,7 +14,7 @@ const classes = {
|
|
|
15
14
|
root: `${constants_1.PREFIX}-root`,
|
|
16
15
|
feed: `${constants_1.PREFIX}-feed`
|
|
17
16
|
};
|
|
18
|
-
const Root = (0,
|
|
17
|
+
const Root = (0, material_1.styled)(material_1.Box, {
|
|
19
18
|
name: constants_1.PREFIX,
|
|
20
19
|
slot: 'Root'
|
|
21
20
|
})(() => ({}));
|
|
@@ -3,14 +3,13 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
const tslib_1 = require("tslib");
|
|
4
4
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
5
|
const material_1 = require("@mui/material");
|
|
6
|
-
const styles_1 = require("@mui/material/styles");
|
|
7
6
|
const Skeleton_1 = tslib_1.__importDefault(require("../CategoryFeed/Skeleton"));
|
|
8
7
|
const react_ui_1 = require("@selfcommunity/react-ui");
|
|
9
8
|
const constants_1 = require("./constants");
|
|
10
9
|
const classes = {
|
|
11
10
|
root: `${constants_1.PREFIX}-skeleton-root`
|
|
12
11
|
};
|
|
13
|
-
const Root = (0,
|
|
12
|
+
const Root = (0, material_1.styled)(material_1.Box, {
|
|
14
13
|
name: constants_1.PREFIX,
|
|
15
14
|
slot: 'SkeletonRoot'
|
|
16
15
|
})(() => ({}));
|
|
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
const tslib_1 = require("tslib");
|
|
4
4
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
5
|
const react_1 = require("react");
|
|
6
|
-
const
|
|
6
|
+
const material_1 = require("@mui/material");
|
|
7
7
|
const react_ui_1 = require("@selfcommunity/react-ui");
|
|
8
8
|
const api_services_1 = require("@selfcommunity/api-services");
|
|
9
9
|
const react_core_1 = require("@selfcommunity/react-core");
|
|
@@ -17,7 +17,7 @@ const constants_1 = require("./constants");
|
|
|
17
17
|
const classes = {
|
|
18
18
|
root: `${constants_1.PREFIX}-root`
|
|
19
19
|
};
|
|
20
|
-
const Root = (0,
|
|
20
|
+
const Root = (0, material_1.styled)(react_ui_1.Feed, {
|
|
21
21
|
name: constants_1.PREFIX,
|
|
22
22
|
slot: 'Root'
|
|
23
23
|
})(() => ({}));
|
|
@@ -64,6 +64,7 @@ const WIDGETS = [
|
|
|
64
64
|
* @param inProps
|
|
65
65
|
*/
|
|
66
66
|
function CategoryFeed(inProps) {
|
|
67
|
+
var _a;
|
|
67
68
|
// PROPS
|
|
68
69
|
const props = (0, system_1.useThemeProps)({
|
|
69
70
|
props: inProps,
|
|
@@ -73,17 +74,24 @@ function CategoryFeed(inProps) {
|
|
|
73
74
|
// CONTEXT
|
|
74
75
|
const scRoutingContext = (0, react_core_1.useSCRouting)();
|
|
75
76
|
const scUserContext = (0, react_core_1.useSCUser)();
|
|
77
|
+
const { preferences, features } = (0, react_core_1.useSCPreferences)();
|
|
76
78
|
const { enqueueSnackbar } = (0, notistack_1.useSnackbar)();
|
|
77
79
|
// REF
|
|
78
80
|
const feedRef = (0, react_1.useRef)();
|
|
79
81
|
// Hooks
|
|
80
82
|
const { scCategory } = (0, react_core_1.useSCFetchCategory)({ id: categoryId, category });
|
|
83
|
+
const isPaymentsEnabled = (0, react_1.useMemo)(() => preferences &&
|
|
84
|
+
features &&
|
|
85
|
+
features.includes(types_1.SCFeatureName.PAYMENTS) &&
|
|
86
|
+
react_core_1.SCPreferences.CONFIGURATIONS_PAYMENTS_ENABLED in preferences &&
|
|
87
|
+
preferences[react_core_1.SCPreferences.CONFIGURATIONS_PAYMENTS_ENABLED].value, [preferences]);
|
|
81
88
|
// HANDLERS
|
|
82
89
|
const handleComposerSuccess = (feedObject) => {
|
|
83
90
|
// Not insert if the category does not match
|
|
84
91
|
if (feedObject.categories.findIndex((c) => c.id === scCategory.id) === -1) {
|
|
85
|
-
|
|
86
|
-
|
|
92
|
+
const messageId = feedObject.scheduled_at ? 'ui.composer.scheduled.success' : 'ui.composerIconButton.composer.success';
|
|
93
|
+
enqueueSnackbar((0, jsx_runtime_1.jsx)(react_intl_1.FormattedMessage, { id: messageId, defaultMessage: messageId }), {
|
|
94
|
+
action: () => ((0, jsx_runtime_1.jsx)(react_core_1.Link, Object.assign({ to: scRoutingContext.url(react_core_1.SCRoutes[`${feedObject.type.toUpperCase()}_ROUTE_NAME`], react_ui_1.ContributionUtils.getRouteData(feedObject)) }, { children: (0, jsx_runtime_1.jsx)(react_intl_1.FormattedMessage, { id: "ui.composerIconButton.composer.viewContribute", defaultMessage: "ui.composerIconButton.composer.viewContribute" }) }))),
|
|
87
95
|
variant: 'success',
|
|
88
96
|
autoHideDuration: 7000
|
|
89
97
|
});
|
|
@@ -93,10 +101,10 @@ function CategoryFeed(inProps) {
|
|
|
93
101
|
const feedUnit = {
|
|
94
102
|
type: feedObject.type,
|
|
95
103
|
[feedObject.type]: feedObject,
|
|
96
|
-
|
|
104
|
+
seen: false,
|
|
97
105
|
has_boost: false
|
|
98
106
|
};
|
|
99
|
-
feedRef && feedRef.current && feedRef.current.addFeedData(feedUnit, true);
|
|
107
|
+
!feedObject.draft && feedRef && feedRef.current && feedRef.current.addFeedData(feedUnit, true);
|
|
100
108
|
};
|
|
101
109
|
// WIDGETS
|
|
102
110
|
const _widgets = (0, react_1.useMemo)(() => widgets.map((w) => {
|
|
@@ -108,11 +116,14 @@ function CategoryFeed(inProps) {
|
|
|
108
116
|
if (!scCategory) {
|
|
109
117
|
return (0, jsx_runtime_1.jsx)(index_1.CategoryFeedSkeleton, {});
|
|
110
118
|
}
|
|
119
|
+
else if (scCategory && isPaymentsEnabled && !scCategory.followed && !scCategory.payment_order && ((_a = scCategory.paywalls) === null || _a === void 0 ? void 0 : _a.length) > 0) {
|
|
120
|
+
return (0, jsx_runtime_1.jsx)(react_ui_1.HiddenPurchasableContent, {});
|
|
121
|
+
}
|
|
111
122
|
return ((0, jsx_runtime_1.jsx)(Root, Object.assign({ id: id, className: (0, classnames_1.default)(classes.root, className), ref: feedRef, endpoint: Object.assign(Object.assign({}, api_services_1.Endpoints.CategoryFeed), { url: () => api_services_1.Endpoints.CategoryFeed.url({ id: scCategory.id }) }), widgets: _widgets, ItemComponent: react_ui_1.FeedObject, itemPropsGenerator: (scUser, item) => ({
|
|
112
123
|
feedObject: item[item.type],
|
|
113
124
|
feedObjectType: item.type,
|
|
114
125
|
feedObjectActivities: item.activities ? item.activities : null,
|
|
115
|
-
markRead: scUser ? !item.
|
|
126
|
+
markRead: scUser ? !item.seen : null
|
|
116
127
|
}), itemIdGenerator: (item) => item[item.type].id, ItemProps: FeedObjectProps, ItemSkeleton: react_ui_1.FeedObjectSkeleton, ItemSkeletonProps: {
|
|
117
128
|
template: react_ui_1.SCFeedObjectTemplateType.PREVIEW
|
|
118
129
|
}, FeedSidebarProps: FeedSidebarProps, HeaderComponent: (0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: ((scCategory.content_only_staff && react_core_1.UserUtils.isStaff(scUserContext.user)) || !scCategory.content_only_staff) && ((0, jsx_runtime_1.jsx)(react_ui_1.InlineComposerWidget, { onSuccess: handleComposerSuccess, defaultValue: { categories: [scCategory] }, feedType: types_1.SCFeedTypologyType.CATEGORY })) }), CustomAdvProps: { categoriesId: [scCategory.id] }, enabledCustomAdvPositions: [
|
|
@@ -3,13 +3,13 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
const tslib_1 = require("tslib");
|
|
4
4
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
5
|
const react_1 = tslib_1.__importDefault(require("react"));
|
|
6
|
-
const
|
|
6
|
+
const material_1 = require("@mui/material");
|
|
7
7
|
const react_ui_1 = require("@selfcommunity/react-ui");
|
|
8
8
|
const constants_1 = require("./constants");
|
|
9
9
|
const classes = {
|
|
10
10
|
root: `${constants_1.PREFIX}-skeleton-root`
|
|
11
11
|
};
|
|
12
|
-
const Root = (0,
|
|
12
|
+
const Root = (0, material_1.styled)(react_ui_1.FeedSkeleton, {
|
|
13
13
|
name: constants_1.PREFIX,
|
|
14
14
|
slot: 'SkeletonRoot'
|
|
15
15
|
})(() => ({}));
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
const tslib_1 = require("tslib");
|
|
4
4
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
-
const styles_1 = require("@mui/material/styles");
|
|
6
5
|
const material_1 = require("@mui/material");
|
|
7
6
|
const react_ui_1 = require("@selfcommunity/react-ui");
|
|
8
7
|
const react_core_1 = require("@selfcommunity/react-core");
|
|
@@ -16,7 +15,7 @@ const classes = {
|
|
|
16
15
|
root: `${constants_1.PREFIX}-root`,
|
|
17
16
|
feed: `${constants_1.PREFIX}-feed`
|
|
18
17
|
};
|
|
19
|
-
const Root = (0,
|
|
18
|
+
const Root = (0, material_1.styled)(material_1.Box, {
|
|
20
19
|
name: constants_1.PREFIX,
|
|
21
20
|
slot: 'Root'
|
|
22
21
|
})(() => ({}));
|
|
@@ -3,14 +3,13 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
const tslib_1 = require("tslib");
|
|
4
4
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
5
|
const material_1 = require("@mui/material");
|
|
6
|
-
const styles_1 = require("@mui/material/styles");
|
|
7
6
|
const Skeleton_1 = tslib_1.__importDefault(require("../EventFeed/Skeleton"));
|
|
8
7
|
const react_ui_1 = require("@selfcommunity/react-ui");
|
|
9
8
|
const constants_1 = require("./constants");
|
|
10
9
|
const classes = {
|
|
11
10
|
root: `${constants_1.PREFIX}-skeleton-root`
|
|
12
11
|
};
|
|
13
|
-
const Root = (0,
|
|
12
|
+
const Root = (0, material_1.styled)(material_1.Box, {
|
|
14
13
|
name: constants_1.PREFIX,
|
|
15
14
|
slot: 'SkeletonRoot'
|
|
16
15
|
})(() => ({}));
|
|
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
const tslib_1 = require("tslib");
|
|
4
4
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
5
|
const react_1 = require("react");
|
|
6
|
-
const
|
|
6
|
+
const material_1 = require("@mui/material");
|
|
7
7
|
const react_ui_1 = require("@selfcommunity/react-ui");
|
|
8
8
|
const api_services_1 = require("@selfcommunity/api-services");
|
|
9
9
|
const react_core_1 = require("@selfcommunity/react-core");
|
|
@@ -14,11 +14,10 @@ const react_intl_1 = require("react-intl");
|
|
|
14
14
|
const notistack_1 = require("notistack");
|
|
15
15
|
const constants_1 = require("./constants");
|
|
16
16
|
const Skeleton_1 = tslib_1.__importDefault(require("./Skeleton"));
|
|
17
|
-
const material_1 = require("@mui/material");
|
|
18
17
|
const classes = {
|
|
19
18
|
root: `${constants_1.PREFIX}-root`
|
|
20
19
|
};
|
|
21
|
-
const Root = (0,
|
|
20
|
+
const Root = (0, material_1.styled)(react_ui_1.Feed, {
|
|
22
21
|
name: constants_1.PREFIX,
|
|
23
22
|
slot: 'Root'
|
|
24
23
|
})(() => ({}));
|
|
@@ -84,18 +83,33 @@ function EventFeed(inProps) {
|
|
|
84
83
|
name: constants_1.PREFIX
|
|
85
84
|
});
|
|
86
85
|
const { id = 'event_feed', className, event, eventId, widgets = WIDGETS, FeedObjectProps = {}, FeedSidebarProps = null, FeedProps = {} } = props;
|
|
86
|
+
// STATUS
|
|
87
|
+
const [status, setStatus] = (0, react_1.useState)(undefined);
|
|
87
88
|
// CONTEXT
|
|
88
89
|
const scRoutingContext = (0, react_core_1.useSCRouting)();
|
|
89
90
|
const scUserContext = (0, react_core_1.useSCUser)();
|
|
91
|
+
const scEventsManager = scUserContext.managers.events;
|
|
90
92
|
const { enqueueSnackbar } = (0, notistack_1.useSnackbar)();
|
|
93
|
+
const { scEvent } = (0, react_core_1.useSCFetchEvent)({ id: eventId, event });
|
|
91
94
|
// REF
|
|
92
95
|
const feedRef = (0, react_1.useRef)();
|
|
93
|
-
//
|
|
94
|
-
const
|
|
96
|
+
// CONST
|
|
97
|
+
const authUserId = scUserContext.user ? scUserContext.user.id : null;
|
|
98
|
+
(0, react_1.useEffect)(() => {
|
|
99
|
+
var _a;
|
|
100
|
+
/**
|
|
101
|
+
* Call scEventsManager.subscriptionStatus inside an effect
|
|
102
|
+
* to avoid warning rendering child during update parent state
|
|
103
|
+
*/
|
|
104
|
+
if (authUserId) {
|
|
105
|
+
setStatus((_a = scEventsManager === null || scEventsManager === void 0 ? void 0 : scEventsManager.subscriptionStatus) === null || _a === void 0 ? void 0 : _a.call(scEventsManager, scEvent));
|
|
106
|
+
}
|
|
107
|
+
}, [authUserId, scEventsManager === null || scEventsManager === void 0 ? void 0 : scEventsManager.subscriptionStatus, scEvent]);
|
|
95
108
|
// HANDLERS
|
|
96
109
|
const handleComposerSuccess = (feedObject) => {
|
|
97
110
|
var _a;
|
|
98
|
-
|
|
111
|
+
const messageId = feedObject.scheduled_at ? 'ui.composer.scheduled.success' : 'ui.composerIconButton.composer.success';
|
|
112
|
+
enqueueSnackbar((0, jsx_runtime_1.jsx)(react_intl_1.FormattedMessage, { id: messageId, defaultMessage: messageId }), {
|
|
99
113
|
action: () => ((0, jsx_runtime_1.jsx)(react_core_1.Link, Object.assign({ to: scRoutingContext.url(react_core_1.SCRoutes[`${feedObject.type.toUpperCase()}_ROUTE_NAME`], react_ui_1.ContributionUtils.getRouteData(feedObject)) }, { children: (0, jsx_runtime_1.jsx)(react_intl_1.FormattedMessage, { id: "ui.composerIconButton.composer.viewContribute", defaultMessage: "ui.composerIconButton.composer.viewContribute" }) }))),
|
|
100
114
|
variant: 'success',
|
|
101
115
|
autoHideDuration: 7000
|
|
@@ -105,10 +119,10 @@ function EventFeed(inProps) {
|
|
|
105
119
|
const feedUnit = {
|
|
106
120
|
type: feedObject.type,
|
|
107
121
|
[feedObject.type]: feedObject,
|
|
108
|
-
|
|
122
|
+
seen: false,
|
|
109
123
|
has_boost: false
|
|
110
124
|
};
|
|
111
|
-
feedRef && feedRef.current && feedRef.current.addFeedData(feedUnit, true);
|
|
125
|
+
!feedObject.draft && feedRef && feedRef.current && feedRef.current.addFeedData(feedUnit, true);
|
|
112
126
|
}
|
|
113
127
|
};
|
|
114
128
|
// WIDGETS
|
|
@@ -119,35 +133,32 @@ function EventFeed(inProps) {
|
|
|
119
133
|
return w;
|
|
120
134
|
}), [widgets, scEvent]);
|
|
121
135
|
if (scUserContext.user === undefined ||
|
|
136
|
+
(scUserContext.user && status === undefined) ||
|
|
122
137
|
!scEvent ||
|
|
123
|
-
(scUserContext.user &&
|
|
124
|
-
((scEvent.privacy === types_1.SCEventPrivacyType.PUBLIC && !scEvent.subscription_status) ||
|
|
125
|
-
scEvent.subscription_status === types_1.SCEventSubscriptionStatusType.INVITED)) ||
|
|
138
|
+
(scUserContext.user && scEvent.privacy === types_1.SCEventPrivacyType.PUBLIC && !status) ||
|
|
126
139
|
(scEvent && ((eventId !== undefined && scEvent.id !== eventId) || (event && scEvent.id !== event.id)))) {
|
|
127
140
|
return (0, jsx_runtime_1.jsx)(Skeleton_1.default, {});
|
|
128
141
|
}
|
|
129
142
|
else if (scEvent.privacy === types_1.SCEventPrivacyType.PRIVATE &&
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
143
|
+
(status === types_1.SCEventSubscriptionStatusType.INVITED ||
|
|
144
|
+
(status !== types_1.SCEventSubscriptionStatusType.SUBSCRIBED &&
|
|
145
|
+
status !== types_1.SCEventSubscriptionStatusType.GOING &&
|
|
146
|
+
status !== types_1.SCEventSubscriptionStatusType.NOT_GOING))) {
|
|
133
147
|
return ((0, jsx_runtime_1.jsx)(material_1.Box, Object.assign({ mt: 2 }, { children: (0, jsx_runtime_1.jsx)(react_ui_1.EventInfoWidget, { className: classes.root, event: scEvent }) })));
|
|
134
148
|
}
|
|
135
|
-
return ((0, jsx_runtime_1.jsx)(Root, Object.assign({ className: (0, classnames_1.default)(classes.root, className), id: id, ref: feedRef, endpoint: Object.assign(Object.assign({}, api_services_1.Endpoints.GetEventFeed), { url: () => api_services_1.Endpoints.GetEventFeed.url({ id: scEvent.id }) }), widgets: _widgets, ItemComponent: react_ui_1.FeedObject, itemPropsGenerator: (scUser, item) => {
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
markRead: scUser ? !((_a = item === null || item === void 0 ? void 0 : item.seen_by_id) === null || _a === void 0 ? void 0 : _a.includes(scUser.id)) : null
|
|
142
|
-
});
|
|
143
|
-
}, itemIdGenerator: (item) => item[item.type].id, ItemProps: FeedObjectProps, ItemSkeleton: react_ui_1.FeedObjectSkeleton, ItemSkeletonProps: {
|
|
149
|
+
return ((0, jsx_runtime_1.jsx)(Root, Object.assign({ className: (0, classnames_1.default)(classes.root, className), id: id, ref: feedRef, endpoint: Object.assign(Object.assign({}, api_services_1.Endpoints.GetEventFeed), { url: () => api_services_1.Endpoints.GetEventFeed.url({ id: scEvent.id }) }), widgets: _widgets, ItemComponent: react_ui_1.FeedObject, itemPropsGenerator: (scUser, item) => ({
|
|
150
|
+
feedObject: item[item.type],
|
|
151
|
+
feedObjectType: item.type,
|
|
152
|
+
feedObjectActivities: item.activities ? item.activities : null,
|
|
153
|
+
markRead: scUser ? !(item === null || item === void 0 ? void 0 : item.seen) : null
|
|
154
|
+
}), itemIdGenerator: (item) => item[item.type].id, ItemProps: FeedObjectProps, ItemSkeleton: react_ui_1.FeedObjectSkeleton, ItemSkeletonProps: {
|
|
144
155
|
template: react_ui_1.SCFeedObjectTemplateType.PREVIEW
|
|
145
156
|
}, FeedSidebarProps: FeedSidebarProps, HeaderComponent: (0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(react_ui_1.EventInfoWidget, { className: classes.root, event: scEvent }), Boolean(scEvent &&
|
|
146
157
|
((!scUserContext.user && scEvent.privacy === types_1.SCEventPrivacyType.PUBLIC) ||
|
|
147
158
|
(scUserContext.user &&
|
|
148
|
-
(
|
|
149
|
-
|
|
150
|
-
|
|
159
|
+
(status === types_1.SCEventSubscriptionStatusType.SUBSCRIBED ||
|
|
160
|
+
status === types_1.SCEventSubscriptionStatusType.GOING ||
|
|
161
|
+
status === types_1.SCEventSubscriptionStatusType.NOT_GOING)))) && ((0, jsx_runtime_1.jsx)(react_ui_1.InlineComposerWidget, { onSuccess: handleComposerSuccess, defaultValue: { event: scEvent }, label: (0, jsx_runtime_1.jsx)(react_intl_1.FormattedMessage, { id: "templates.eventFeed.composer.label", defaultMessage: "templates.eventFeed.composer.label" }), feedType: types_1.SCFeedTypologyType.EVENT }))] }), CustomAdvProps: { position: types_1.SCCustomAdvPosition.POSITION_FEED, groupsId: [scEvent.id] }, enabledCustomAdvPositions: [
|
|
151
162
|
types_1.SCCustomAdvPosition.POSITION_FEED_SIDEBAR,
|
|
152
163
|
types_1.SCCustomAdvPosition.POSITION_FEED,
|
|
153
164
|
types_1.SCCustomAdvPosition.POSITION_BELOW_TOPBAR
|
|
@@ -3,13 +3,13 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
const tslib_1 = require("tslib");
|
|
4
4
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
5
|
const react_1 = tslib_1.__importDefault(require("react"));
|
|
6
|
-
const
|
|
6
|
+
const material_1 = require("@mui/material");
|
|
7
7
|
const react_ui_1 = require("@selfcommunity/react-ui");
|
|
8
8
|
const constants_1 = require("./constants");
|
|
9
9
|
const classes = {
|
|
10
10
|
root: `${constants_1.PREFIX}-skeleton-root`
|
|
11
11
|
};
|
|
12
|
-
const Root = (0,
|
|
12
|
+
const Root = (0, material_1.styled)(react_ui_1.FeedSkeleton, {
|
|
13
13
|
name: constants_1.PREFIX,
|
|
14
14
|
slot: 'SkeletonRoot'
|
|
15
15
|
})(() => ({}));
|
|
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
const tslib_1 = require("tslib");
|
|
4
4
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
5
|
const react_1 = require("react");
|
|
6
|
-
const
|
|
6
|
+
const material_1 = require("@mui/material");
|
|
7
7
|
const react_ui_1 = require("@selfcommunity/react-ui");
|
|
8
8
|
const api_services_1 = require("@selfcommunity/api-services");
|
|
9
9
|
const system_1 = require("@mui/system");
|
|
@@ -16,7 +16,7 @@ const react_core_1 = require("@selfcommunity/react-core");
|
|
|
16
16
|
const classes = {
|
|
17
17
|
root: `${constants_1.PREFIX}-root`
|
|
18
18
|
};
|
|
19
|
-
const Root = (0,
|
|
19
|
+
const Root = (0, material_1.styled)(react_ui_1.Feed, {
|
|
20
20
|
name: constants_1.PREFIX,
|
|
21
21
|
slot: 'Root'
|
|
22
22
|
})(() => ({}));
|
|
@@ -90,7 +90,8 @@ function ExploreFeed(inProps) {
|
|
|
90
90
|
const feedRef = (0, react_1.useRef)();
|
|
91
91
|
// HANDLERS
|
|
92
92
|
const handleComposerSuccess = (feedObject) => {
|
|
93
|
-
|
|
93
|
+
const messageId = feedObject.scheduled_at ? 'ui.composer.scheduled.success' : 'ui.inlineComposerWidget.success';
|
|
94
|
+
enqueueSnackbar((0, jsx_runtime_1.jsx)(react_intl_1.FormattedMessage, { id: messageId, defaultMessage: messageId }), {
|
|
94
95
|
variant: 'success',
|
|
95
96
|
autoHideDuration: 3000
|
|
96
97
|
});
|
|
@@ -98,10 +99,10 @@ function ExploreFeed(inProps) {
|
|
|
98
99
|
const feedUnit = {
|
|
99
100
|
type: feedObject.type,
|
|
100
101
|
[feedObject.type]: feedObject,
|
|
101
|
-
|
|
102
|
+
seen: false,
|
|
102
103
|
has_boost: false
|
|
103
104
|
};
|
|
104
|
-
feedRef && feedRef.current && feedRef.current.addFeedData(feedUnit, true);
|
|
105
|
+
!feedObject.draft && feedRef && feedRef.current && feedRef.current.addFeedData(feedUnit, true);
|
|
105
106
|
};
|
|
106
107
|
const handleAddGenerationContent = (feedObjects) => {
|
|
107
108
|
if (feedRef && feedRef.current) {
|
|
@@ -111,7 +112,7 @@ function ExploreFeed(inProps) {
|
|
|
111
112
|
const feedUnit = {
|
|
112
113
|
type: feedObject.type,
|
|
113
114
|
[feedObject.type]: feedObject,
|
|
114
|
-
|
|
115
|
+
seen: false,
|
|
115
116
|
has_boost: false
|
|
116
117
|
};
|
|
117
118
|
feedRef.current.addFeedData(feedUnit, true);
|
|
@@ -127,7 +128,7 @@ function ExploreFeed(inProps) {
|
|
|
127
128
|
feedObject: item[item.type],
|
|
128
129
|
feedObjectType: item.type,
|
|
129
130
|
feedObjectActivities: item.activities ? item.activities : null,
|
|
130
|
-
markRead: scUser ? !item.
|
|
131
|
+
markRead: scUser ? !item.seen : null
|
|
131
132
|
}), itemIdGenerator: (item) => item[item.type].id, ItemProps: FeedObjectProps, ItemSkeleton: react_ui_1.FeedObjectSkeleton, ItemSkeletonProps: {
|
|
132
133
|
template: react_ui_1.SCFeedObjectTemplateType.PREVIEW
|
|
133
134
|
}, HeaderComponent: (0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(react_ui_1.InlineComposerWidget, { onSuccess: handleComposerSuccess }), react_core_1.UserUtils.isAdmin(scUserContext.user) && (0, jsx_runtime_1.jsx)(react_ui_1.OnBoardingWidget, { onGeneratedContent: handleAddGenerationContent })] }), FeedSidebarProps: FeedSidebarProps, enabledCustomAdvPositions: [
|
|
@@ -3,13 +3,13 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
const tslib_1 = require("tslib");
|
|
4
4
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
5
|
const react_1 = tslib_1.__importDefault(require("react"));
|
|
6
|
-
const
|
|
6
|
+
const material_1 = require("@mui/material");
|
|
7
7
|
const react_ui_1 = require("@selfcommunity/react-ui");
|
|
8
8
|
const constants_1 = require("./constants");
|
|
9
9
|
const classes = {
|
|
10
10
|
root: `${constants_1.PREFIX}-skeleton-root`
|
|
11
11
|
};
|
|
12
|
-
const Root = (0,
|
|
12
|
+
const Root = (0, material_1.styled)(react_ui_1.FeedSkeleton, {
|
|
13
13
|
name: constants_1.PREFIX,
|
|
14
14
|
slot: 'SkeletonRoot'
|
|
15
15
|
})(() => ({}));
|
|
@@ -3,7 +3,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
const tslib_1 = require("tslib");
|
|
4
4
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
5
|
const react_1 = require("react");
|
|
6
|
-
const styles_1 = require("@mui/material/styles");
|
|
7
6
|
const material_1 = require("@mui/material");
|
|
8
7
|
const react_ui_1 = require("@selfcommunity/react-ui");
|
|
9
8
|
const Skeleton_1 = tslib_1.__importDefault(require("./Skeleton"));
|
|
@@ -16,7 +15,7 @@ const constants_1 = require("./constants");
|
|
|
16
15
|
const classes = {
|
|
17
16
|
root: `${constants_1.PREFIX}-root`
|
|
18
17
|
};
|
|
19
|
-
const Root = (0,
|
|
18
|
+
const Root = (0, material_1.styled)(material_1.Box, {
|
|
20
19
|
name: constants_1.PREFIX,
|
|
21
20
|
slot: 'Root'
|
|
22
21
|
})(() => ({}));
|
|
@@ -57,8 +56,10 @@ function FeedObjectDetail(inProps) {
|
|
|
57
56
|
const scUserContext = (0, react_core_1.useSCUser)();
|
|
58
57
|
const scPreferences = (0, react_core_1.useSCPreferences)();
|
|
59
58
|
// RETRIVE OBJECTS
|
|
60
|
-
const { obj,
|
|
59
|
+
const { obj, error } = (0, react_core_1.useSCFetchFeedObject)({ id: feedObjectId, feedObject, feedObjectType });
|
|
61
60
|
const [comments, setComments] = (0, react_1.useState)([]);
|
|
61
|
+
const commentsEnabled = react_core_1.SCPreferences.CONFIGURATIONS_COMMENTS_ENABLED in scPreferences.preferences &&
|
|
62
|
+
scPreferences.preferences[react_core_1.SCPreferences.CONFIGURATIONS_COMMENTS_ENABLED].value;
|
|
62
63
|
/**
|
|
63
64
|
* Compute preferences
|
|
64
65
|
*/
|
|
@@ -97,6 +98,6 @@ function FeedObjectDetail(inProps) {
|
|
|
97
98
|
if (!obj) {
|
|
98
99
|
return (0, jsx_runtime_1.jsx)(Skeleton_1.default, {});
|
|
99
100
|
}
|
|
100
|
-
return ((0, jsx_runtime_1.jsx)(Root, Object.assign({ id: id, className: (0, classnames_1.default)(classes.root, className) }, { children: (0, jsx_runtime_1.jsxs)(material_1.Grid, Object.assign({ container: true, spacing: 2 }, { children: [(0, jsx_runtime_1.jsxs)(material_1.Grid, Object.assign({ item: true, xs: 12, md: 7 }, { children: [(0, jsx_runtime_1.jsx)(react_ui_1.FeedObject, Object.assign({}, FeedObjectProps, { feedObject: obj, template: react_ui_1.SCFeedObjectTemplateType.DETAIL, onReply: handleReply })), renderAdvertising(), (0, jsx_runtime_1.jsx)(react_ui_1.CommentsFeedObject, Object.assign({ showTitle: true, feedObject: obj, comments: comments }, CommentsFeedObjectProps), `comments_${obj.id}`)] })), (0, jsx_runtime_1.jsx)(material_1.Grid, Object.assign({ item: true, xs: 12, md: 5 }, { children: (0, jsx_runtime_1.jsx)(material_1.Hidden, Object.assign({ mdDown: true }, { children: (0, jsx_runtime_1.jsx)(react_ui_1.StickyBox, Object.assign({}, FeedSidebarProps, { children: (0, jsx_runtime_1.jsx)(react_ui_1.RelatedFeedObjectsWidget, Object.assign({ feedObject: obj, feedObjectId: obj.id }, RelatedFeedObjectProps), `related_${obj.id}`) })) })) }))] })) })));
|
|
101
|
+
return ((0, jsx_runtime_1.jsx)(Root, Object.assign({ id: id, className: (0, classnames_1.default)(classes.root, className) }, { children: (0, jsx_runtime_1.jsxs)(material_1.Grid, Object.assign({ container: true, spacing: 2 }, { children: [(0, jsx_runtime_1.jsxs)(material_1.Grid, Object.assign({ item: true, xs: 12, md: 7 }, { children: [(0, jsx_runtime_1.jsx)(react_ui_1.FeedObject, Object.assign({}, FeedObjectProps, { feedObject: obj, template: react_ui_1.SCFeedObjectTemplateType.DETAIL, onReply: handleReply })), renderAdvertising(), commentsEnabled && ((0, jsx_runtime_1.jsx)(react_ui_1.CommentsFeedObject, Object.assign({ showTitle: true, feedObject: obj, comments: comments }, CommentsFeedObjectProps), `comments_${obj.id}`))] })), (0, jsx_runtime_1.jsx)(material_1.Grid, Object.assign({ item: true, xs: 12, md: 5 }, { children: (0, jsx_runtime_1.jsx)(material_1.Hidden, Object.assign({ mdDown: true }, { children: (0, jsx_runtime_1.jsx)(react_ui_1.StickyBox, Object.assign({}, FeedSidebarProps, { children: (0, jsx_runtime_1.jsx)(react_ui_1.RelatedFeedObjectsWidget, Object.assign({ feedObject: obj, feedObjectId: obj.id }, RelatedFeedObjectProps), `related_${obj.id}`) })) })) }))] })) })));
|
|
101
102
|
}
|
|
102
103
|
exports.default = FeedObjectDetail;
|
|
@@ -3,12 +3,11 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
4
4
|
const react_ui_1 = require("@selfcommunity/react-ui");
|
|
5
5
|
const material_1 = require("@mui/material");
|
|
6
|
-
const styles_1 = require("@mui/material/styles");
|
|
7
6
|
const constants_1 = require("./constants");
|
|
8
7
|
const classes = {
|
|
9
8
|
root: `${constants_1.PREFIX}-skeleton-root`
|
|
10
9
|
};
|
|
11
|
-
const Root = (0,
|
|
10
|
+
const Root = (0, material_1.styled)(material_1.Box, {
|
|
12
11
|
name: constants_1.PREFIX,
|
|
13
12
|
slot: 'SkeletonRoot'
|
|
14
13
|
})(() => ({}));
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
const tslib_1 = require("tslib");
|
|
4
4
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
-
const styles_1 = require("@mui/material/styles");
|
|
6
5
|
const material_1 = require("@mui/material");
|
|
7
6
|
const react_ui_1 = require("@selfcommunity/react-ui");
|
|
8
7
|
const react_core_1 = require("@selfcommunity/react-core");
|
|
@@ -15,7 +14,7 @@ const classes = {
|
|
|
15
14
|
root: `${constants_1.PREFIX}-root`,
|
|
16
15
|
feed: `${constants_1.PREFIX}-feed`
|
|
17
16
|
};
|
|
18
|
-
const Root = (0,
|
|
17
|
+
const Root = (0, material_1.styled)(material_1.Box, {
|
|
19
18
|
name: constants_1.PREFIX,
|
|
20
19
|
slot: 'Root'
|
|
21
20
|
})(() => ({}));
|
|
@@ -3,14 +3,13 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
const tslib_1 = require("tslib");
|
|
4
4
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
5
|
const material_1 = require("@mui/material");
|
|
6
|
-
const styles_1 = require("@mui/material/styles");
|
|
7
6
|
const Skeleton_1 = tslib_1.__importDefault(require("../GroupFeed/Skeleton"));
|
|
8
7
|
const react_ui_1 = require("@selfcommunity/react-ui");
|
|
9
8
|
const constants_1 = require("./constants");
|
|
10
9
|
const classes = {
|
|
11
10
|
root: `${constants_1.PREFIX}-skeleton-root`
|
|
12
11
|
};
|
|
13
|
-
const Root = (0,
|
|
12
|
+
const Root = (0, material_1.styled)(material_1.Box, {
|
|
14
13
|
name: constants_1.PREFIX,
|
|
15
14
|
slot: 'SkeletonRoot'
|
|
16
15
|
})(() => ({}));
|
|
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
const tslib_1 = require("tslib");
|
|
4
4
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
5
|
const react_1 = require("react");
|
|
6
|
-
const
|
|
6
|
+
const material_1 = require("@mui/material");
|
|
7
7
|
const react_ui_1 = require("@selfcommunity/react-ui");
|
|
8
8
|
const api_services_1 = require("@selfcommunity/api-services");
|
|
9
9
|
const react_core_1 = require("@selfcommunity/react-core");
|
|
@@ -17,7 +17,7 @@ const Skeleton_1 = tslib_1.__importDefault(require("./Skeleton"));
|
|
|
17
17
|
const classes = {
|
|
18
18
|
root: `${constants_1.PREFIX}-root`
|
|
19
19
|
};
|
|
20
|
-
const Root = (0,
|
|
20
|
+
const Root = (0, material_1.styled)(react_ui_1.Feed, {
|
|
21
21
|
name: constants_1.PREFIX,
|
|
22
22
|
slot: 'Root'
|
|
23
23
|
})(() => ({}));
|
|
@@ -69,18 +69,33 @@ function GroupFeed(inProps) {
|
|
|
69
69
|
name: constants_1.PREFIX
|
|
70
70
|
});
|
|
71
71
|
const { id = 'group_feed', className, group, groupId, widgets = WIDGETS, FeedObjectProps = {}, FeedSidebarProps = null, FeedProps = {} } = props;
|
|
72
|
+
// STATUS
|
|
73
|
+
const [status, setStatus] = (0, react_1.useState)(undefined);
|
|
72
74
|
// CONTEXT
|
|
73
75
|
const scRoutingContext = (0, react_core_1.useSCRouting)();
|
|
76
|
+
const scUserContext = (0, react_core_1.useSCUser)();
|
|
77
|
+
const scGroupsManager = scUserContext.managers.groups;
|
|
74
78
|
const { enqueueSnackbar } = (0, notistack_1.useSnackbar)();
|
|
79
|
+
const { scGroup } = (0, react_core_1.useSCFetchGroup)({ id: groupId, group });
|
|
75
80
|
// REF
|
|
76
81
|
const feedRef = (0, react_1.useRef)();
|
|
77
|
-
//
|
|
78
|
-
const
|
|
82
|
+
// CONST
|
|
83
|
+
const authUserId = scUserContext.user ? scUserContext.user.id : null;
|
|
84
|
+
(0, react_1.useEffect)(() => {
|
|
85
|
+
/**
|
|
86
|
+
* Call scGroupsManager.subscriptionStatus inside an effect
|
|
87
|
+
* to avoid warning rendering child during update parent state
|
|
88
|
+
*/
|
|
89
|
+
if (authUserId) {
|
|
90
|
+
setStatus(scGroupsManager.subscriptionStatus(scGroup));
|
|
91
|
+
}
|
|
92
|
+
}, [authUserId, scGroupsManager.subscriptionStatus, scGroup]);
|
|
79
93
|
// HANDLERS
|
|
80
94
|
const handleComposerSuccess = (feedObject) => {
|
|
81
95
|
var _a;
|
|
82
|
-
|
|
83
|
-
|
|
96
|
+
const messageId = feedObject.scheduled_at ? 'ui.composer.scheduled.success' : 'ui.composerIconButton.composer.success';
|
|
97
|
+
enqueueSnackbar((0, jsx_runtime_1.jsx)(react_intl_1.FormattedMessage, { id: messageId, defaultMessage: messageId }), {
|
|
98
|
+
action: () => ((0, jsx_runtime_1.jsx)(react_core_1.Link, Object.assign({ to: scRoutingContext.url(react_core_1.SCRoutes[`${feedObject.type.toUpperCase()}_ROUTE_NAME`], react_ui_1.ContributionUtils.getRouteData(feedObject)) }, { children: (0, jsx_runtime_1.jsx)(react_intl_1.FormattedMessage, { id: "ui.composerIconButton.composer.viewContribute", defaultMessage: "ui.composerIconButton.composer.viewContribute" }) }))),
|
|
84
99
|
variant: 'success',
|
|
85
100
|
autoHideDuration: 7000
|
|
86
101
|
});
|
|
@@ -89,10 +104,10 @@ function GroupFeed(inProps) {
|
|
|
89
104
|
const feedUnit = {
|
|
90
105
|
type: feedObject.type,
|
|
91
106
|
[feedObject.type]: feedObject,
|
|
92
|
-
|
|
107
|
+
seen: false,
|
|
93
108
|
has_boost: false
|
|
94
109
|
};
|
|
95
|
-
feedRef && feedRef.current && feedRef.current.addFeedData(feedUnit, true);
|
|
110
|
+
!feedObject.draft && feedRef && feedRef.current && feedRef.current.addFeedData(feedUnit, true);
|
|
96
111
|
}
|
|
97
112
|
};
|
|
98
113
|
// WIDGETS
|
|
@@ -105,18 +120,15 @@ function GroupFeed(inProps) {
|
|
|
105
120
|
if (!scGroup) {
|
|
106
121
|
return (0, jsx_runtime_1.jsx)(Skeleton_1.default, {});
|
|
107
122
|
}
|
|
108
|
-
else if (scGroup &&
|
|
123
|
+
else if (scGroup && status !== types_1.SCGroupSubscriptionStatusType.SUBSCRIBED) {
|
|
109
124
|
return (0, jsx_runtime_1.jsx)(react_ui_1.GroupInfoWidget, { className: classes.root, groupId: scGroup === null || scGroup === void 0 ? void 0 : scGroup.id });
|
|
110
125
|
}
|
|
111
|
-
return ((0, jsx_runtime_1.jsx)(Root, Object.assign({ className: (0, classnames_1.default)(classes.root, className), id: id, ref: feedRef, endpoint: Object.assign(Object.assign({}, api_services_1.Endpoints.GetGroupFeed), { url: () => api_services_1.Endpoints.GetGroupFeed.url({ id: scGroup.id }) }), widgets: _widgets, ItemComponent: react_ui_1.FeedObject, itemPropsGenerator: (scUser, item) => {
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
markRead: scUser ? !((_a = item === null || item === void 0 ? void 0 : item.seen_by_id) === null || _a === void 0 ? void 0 : _a.includes(scUser.id)) : null
|
|
118
|
-
});
|
|
119
|
-
}, itemIdGenerator: (item) => item[item.type].id, ItemProps: FeedObjectProps, ItemSkeleton: react_ui_1.FeedObjectSkeleton, ItemSkeletonProps: {
|
|
126
|
+
return ((0, jsx_runtime_1.jsx)(Root, Object.assign({ className: (0, classnames_1.default)(classes.root, className), id: id, ref: feedRef, endpoint: Object.assign(Object.assign({}, api_services_1.Endpoints.GetGroupFeed), { url: () => api_services_1.Endpoints.GetGroupFeed.url({ id: scGroup.id }) }), widgets: _widgets, ItemComponent: react_ui_1.FeedObject, itemPropsGenerator: (scUser, item) => ({
|
|
127
|
+
feedObject: item[item.type],
|
|
128
|
+
feedObjectType: item.type,
|
|
129
|
+
feedObjectActivities: item.activities ? item.activities : null,
|
|
130
|
+
markRead: scUser ? !(item === null || item === void 0 ? void 0 : item.seen) : null
|
|
131
|
+
}), itemIdGenerator: (item) => item[item.type].id, ItemProps: FeedObjectProps, ItemSkeleton: react_ui_1.FeedObjectSkeleton, ItemSkeletonProps: {
|
|
120
132
|
template: react_ui_1.SCFeedObjectTemplateType.PREVIEW
|
|
121
133
|
}, FeedSidebarProps: FeedSidebarProps, HeaderComponent: scGroup &&
|
|
122
134
|
scGroup.subscription_status === types_1.SCGroupSubscriptionStatusType.SUBSCRIBED && ((0, jsx_runtime_1.jsx)(react_ui_1.InlineComposerWidget, { onSuccess: handleComposerSuccess, defaultValue: { group: scGroup }, label: (0, jsx_runtime_1.jsx)(react_intl_1.FormattedMessage, { id: "templates.groupFeed.composer.label", defaultMessage: "templates.groupFeed.composer.label" }), feedType: types_1.SCFeedTypologyType.GROUP })), CustomAdvProps: { position: types_1.SCCustomAdvPosition.POSITION_FEED, groupsId: [scGroup.id] }, enabledCustomAdvPositions: [
|
|
@@ -3,13 +3,13 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
const tslib_1 = require("tslib");
|
|
4
4
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
5
|
const react_1 = tslib_1.__importDefault(require("react"));
|
|
6
|
-
const
|
|
6
|
+
const material_1 = require("@mui/material");
|
|
7
7
|
const react_ui_1 = require("@selfcommunity/react-ui");
|
|
8
8
|
const constants_1 = require("./constants");
|
|
9
9
|
const classes = {
|
|
10
10
|
root: `${constants_1.PREFIX}-skeleton-root`
|
|
11
11
|
};
|
|
12
|
-
const Root = (0,
|
|
12
|
+
const Root = (0, material_1.styled)(react_ui_1.FeedSkeleton, {
|
|
13
13
|
name: constants_1.PREFIX,
|
|
14
14
|
slot: 'SkeletonRoot'
|
|
15
15
|
})(() => ({}));
|
|
@@ -3,7 +3,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
const tslib_1 = require("tslib");
|
|
4
4
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
5
|
const react_1 = require("react");
|
|
6
|
-
const styles_1 = require("@mui/material/styles");
|
|
7
6
|
const system_1 = require("@mui/system");
|
|
8
7
|
const material_1 = require("@mui/material");
|
|
9
8
|
const constants_1 = require("./constants");
|
|
@@ -24,12 +23,12 @@ const classes = {
|
|
|
24
23
|
previewInfo: `${constants_1.PREFIX}-preview-info`,
|
|
25
24
|
button: `${constants_1.PREFIX}-button`
|
|
26
25
|
};
|
|
27
|
-
const Root = (0,
|
|
26
|
+
const Root = (0, material_1.styled)(material_1.Box, {
|
|
28
27
|
name: constants_1.PREFIX,
|
|
29
28
|
slot: 'Root',
|
|
30
29
|
overridesResolver: (_props, styles) => [styles.root]
|
|
31
30
|
})(() => ({}));
|
|
32
|
-
const Container = (0,
|
|
31
|
+
const Container = (0, material_1.styled)(material_1.Box, {
|
|
33
32
|
name: constants_1.PREFIX,
|
|
34
33
|
slot: 'ContainerRoot',
|
|
35
34
|
overridesResolver: (_props, styles) => styles.containerRoot,
|