|
|
@@ -13,12 +13,20 @@ const logger = loggerFactory('growi:SlackBotSettings');
|
|
|
|
|
|
const CustomBotWithProxySettings = (props) => {
|
|
|
const {
|
|
|
- appContainer, slackAppIntegrations, proxyServerUri, onClickAddSlackWorkspaceBtn,
|
|
|
+ appContainer, slackAppIntegrations, proxyServerUri, onClickAddSlackWorkspaceBtn, connectionStatuses,
|
|
|
} = props;
|
|
|
const [newProxyServerUri, setNewProxyServerUri] = useState();
|
|
|
const [integrationIdToDelete, setIntegrationIdToDelete] = useState(null);
|
|
|
const { t } = useTranslation();
|
|
|
|
|
|
+ let workspaceNames;
|
|
|
+ if (connectionStatuses != null) {
|
|
|
+ const workspaceNameObjects = Object.values(connectionStatuses);
|
|
|
+ workspaceNames = workspaceNameObjects.map((w) => {
|
|
|
+ return w.workspaceName;
|
|
|
+ });
|
|
|
+ }
|
|
|
+
|
|
|
useEffect(() => {
|
|
|
if (proxyServerUri != null) {
|
|
|
setNewProxyServerUri(proxyServerUri);
|
|
|
@@ -113,7 +121,7 @@ const CustomBotWithProxySettings = (props) => {
|
|
|
|
|
|
<h2 className="admin-setting-header">{t('admin:slack_integration.integration_procedure')}</h2>
|
|
|
<div className="mx-3">
|
|
|
- {slackAppIntegrations.map((slackAppIntegration) => {
|
|
|
+ {slackAppIntegrations.map((slackAppIntegration, i) => {
|
|
|
const { tokenGtoP, tokenPtoG } = slackAppIntegration;
|
|
|
return (
|
|
|
<React.Fragment key={slackAppIntegration._id}>
|
|
|
@@ -127,6 +135,7 @@ const CustomBotWithProxySettings = (props) => {
|
|
|
{t('admin:slack_integration.delete')}
|
|
|
</button>
|
|
|
</div>
|
|
|
+ {workspaceNames[i] == null && (<>Settings #{i + 1} <span className="text-danger">{t('admin:slack_integration.integration_failed')}</span></>)}
|
|
|
<WithProxyAccordions
|
|
|
botType="customBotWithProxy"
|
|
|
slackAppIntegrationId={slackAppIntegration._id}
|
|
|
@@ -161,6 +170,7 @@ const CustomBotWithProxySettingsWrapper = withUnstatedContainers(CustomBotWithPr
|
|
|
|
|
|
CustomBotWithProxySettings.defaultProps = {
|
|
|
slackAppIntegrations: [],
|
|
|
+ connectionStatuses: null,
|
|
|
};
|
|
|
|
|
|
CustomBotWithProxySettings.propTypes = {
|
|
|
@@ -169,6 +179,7 @@ CustomBotWithProxySettings.propTypes = {
|
|
|
proxyServerUri: PropTypes.string,
|
|
|
onClickAddSlackWorkspaceBtn: PropTypes.func,
|
|
|
fetchSlackIntegrationData: PropTypes.func,
|
|
|
+ connectionStatuses: PropTypes.object,
|
|
|
};
|
|
|
|
|
|
export default CustomBotWithProxySettingsWrapper;
|