@selfcommunity/react-ui 0.7.9-alpha.59 → 0.7.9-alpha.60

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.
@@ -80,6 +80,29 @@ function Group(inProps) {
80
80
  const [openAlert, setOpenAlert] = (0, react_1.useState)(false);
81
81
  // INTL
82
82
  const intl = (0, react_intl_1.useIntl)();
83
+ /**
84
+ * Get current translated status
85
+ */
86
+ const getStatus = (status) => {
87
+ let _status;
88
+ switch (status) {
89
+ case types_1.SCGroupSubscriptionStatusType.REQUESTED:
90
+ _status = react_1.default.createElement(react_intl_1.FormattedMessage, { defaultMessage: "ui.groupSubscribeButton.waitingApproval", id: "ui.groupSubscribeButton.waitingApproval" });
91
+ break;
92
+ case types_1.SCGroupSubscriptionStatusType.SUBSCRIBED:
93
+ _status = react_1.default.createElement(react_intl_1.FormattedMessage, { defaultMessage: "ui.groupSubscribeButton.enter", id: "ui.groupSubscribeButton.enter" });
94
+ break;
95
+ case types_1.SCGroupSubscriptionStatusType.INVITED:
96
+ _status = react_1.default.createElement(react_intl_1.FormattedMessage, { defaultMessage: "ui.groupSubscribeButton.accept", id: "ui.groupSubscribeButton.accept" });
97
+ break;
98
+ default:
99
+ scGroup.privacy === types_1.SCGroupPrivacyType.PUBLIC
100
+ ? (_status = react_1.default.createElement(react_intl_1.FormattedMessage, { defaultMessage: "ui.groupSubscribeButton.enter", id: "ui.groupSubscribeButton.enter" }))
101
+ : (_status = react_1.default.createElement(react_intl_1.FormattedMessage, { defaultMessage: "ui.groupSubscribeButton.requestAccess", id: "ui.groupSubscribeButton.requestAccess" }));
102
+ break;
103
+ }
104
+ return _status;
105
+ };
83
106
  /**
84
107
  * Render authenticated actions
85
108
  * @return {JSX.Element}
@@ -87,7 +110,7 @@ function Group(inProps) {
87
110
  function renderAuthenticatedActions() {
88
111
  return (react_1.default.createElement(material_1.Stack, { className: classes.actions, direction: "row", alignItems: "center", justifyContent: "center", spacing: 2 },
89
112
  isGroupAdmin && react_1.default.createElement(material_1.Icon, null, "face"),
90
- actionRedirect ? (react_1.default.createElement(material_1.Button, { size: "small", variant: "outlined", component: react_core_1.Link, to: scRoutingContext.url(react_core_1.SCRoutes.GROUP_ROUTE_NAME, scGroup) }, scGroup.privacy === types_1.SCGroupPrivacyType.PUBLIC || scGroup.subscription_status === types_1.SCGroupSubscriptionStatusType.SUBSCRIBED || isGroupAdmin ? (react_1.default.createElement(react_intl_1.FormattedMessage, { defaultMessage: "ui.groupSubscribeButton.enter", id: "ui.groupSubscribeButton.enter" })) : (react_1.default.createElement(react_intl_1.FormattedMessage, { defaultMessage: "ui.groupSubscribeButton.requestAccess", id: "ui.groupSubscribeButton.requestAccess" })))) : (react_1.default.createElement(GroupSubscribeButton_1.default, Object.assign({ group: group, groupId: groupId }, groupSubscribeButtonProps)))));
113
+ actionRedirect ? (react_1.default.createElement(material_1.Button, { size: "small", variant: "outlined", component: react_core_1.Link, to: scRoutingContext.url(react_core_1.SCRoutes.GROUP_ROUTE_NAME, scGroup) }, getStatus(scGroup.subscription_status))) : (react_1.default.createElement(GroupSubscribeButton_1.default, Object.assign({ group: group, groupId: groupId }, groupSubscribeButtonProps)))));
91
114
  }
92
115
  /**
93
116
  * Renders group object
@@ -78,6 +78,29 @@ export default function Group(inProps) {
78
78
  const [openAlert, setOpenAlert] = useState(false);
79
79
  // INTL
80
80
  const intl = useIntl();
81
+ /**
82
+ * Get current translated status
83
+ */
84
+ const getStatus = (status) => {
85
+ let _status;
86
+ switch (status) {
87
+ case SCGroupSubscriptionStatusType.REQUESTED:
88
+ _status = React.createElement(FormattedMessage, { defaultMessage: "ui.groupSubscribeButton.waitingApproval", id: "ui.groupSubscribeButton.waitingApproval" });
89
+ break;
90
+ case SCGroupSubscriptionStatusType.SUBSCRIBED:
91
+ _status = React.createElement(FormattedMessage, { defaultMessage: "ui.groupSubscribeButton.enter", id: "ui.groupSubscribeButton.enter" });
92
+ break;
93
+ case SCGroupSubscriptionStatusType.INVITED:
94
+ _status = React.createElement(FormattedMessage, { defaultMessage: "ui.groupSubscribeButton.accept", id: "ui.groupSubscribeButton.accept" });
95
+ break;
96
+ default:
97
+ scGroup.privacy === SCGroupPrivacyType.PUBLIC
98
+ ? (_status = React.createElement(FormattedMessage, { defaultMessage: "ui.groupSubscribeButton.enter", id: "ui.groupSubscribeButton.enter" }))
99
+ : (_status = React.createElement(FormattedMessage, { defaultMessage: "ui.groupSubscribeButton.requestAccess", id: "ui.groupSubscribeButton.requestAccess" }));
100
+ break;
101
+ }
102
+ return _status;
103
+ };
81
104
  /**
82
105
  * Render authenticated actions
83
106
  * @return {JSX.Element}
@@ -85,7 +108,7 @@ export default function Group(inProps) {
85
108
  function renderAuthenticatedActions() {
86
109
  return (React.createElement(Stack, { className: classes.actions, direction: "row", alignItems: "center", justifyContent: "center", spacing: 2 },
87
110
  isGroupAdmin && React.createElement(Icon, null, "face"),
88
- actionRedirect ? (React.createElement(Button, { size: "small", variant: "outlined", component: Link, to: scRoutingContext.url(SCRoutes.GROUP_ROUTE_NAME, scGroup) }, scGroup.privacy === SCGroupPrivacyType.PUBLIC || scGroup.subscription_status === SCGroupSubscriptionStatusType.SUBSCRIBED || isGroupAdmin ? (React.createElement(FormattedMessage, { defaultMessage: "ui.groupSubscribeButton.enter", id: "ui.groupSubscribeButton.enter" })) : (React.createElement(FormattedMessage, { defaultMessage: "ui.groupSubscribeButton.requestAccess", id: "ui.groupSubscribeButton.requestAccess" })))) : (React.createElement(GroupSubscribeButton, Object.assign({ group: group, groupId: groupId }, groupSubscribeButtonProps)))));
111
+ actionRedirect ? (React.createElement(Button, { size: "small", variant: "outlined", component: Link, to: scRoutingContext.url(SCRoutes.GROUP_ROUTE_NAME, scGroup) }, getStatus(scGroup.subscription_status))) : (React.createElement(GroupSubscribeButton, Object.assign({ group: group, groupId: groupId }, groupSubscribeButtonProps)))));
89
112
  }
90
113
  /**
91
114
  * Renders group object