Răsfoiți Sursa

add dummy for error

yusuketk 5 ani în urmă
părinte
comite
7abcf99c17
28 a modificat fișierele cu 156 adăugiri și 106 ștergeri
  1. 4 1
      src/client/js/components/Admin/App/AppSettingsPage.jsx
  2. 7 3
      src/client/js/components/Admin/Customize/Customize.jsx
  3. 8 4
      src/client/js/components/Admin/ImportDataPage.jsx
  4. 7 3
      src/client/js/components/Admin/MarkdownSetting/MarkDownSetting.jsx
  5. 7 3
      src/client/js/components/Admin/Notification/NotificationSetting.jsx
  6. 12 3
      src/client/js/components/Admin/Security/BasicSecuritySetting.jsx
  7. 7 3
      src/client/js/components/Admin/Security/GitHubSecuritySetting.jsx
  8. 7 3
      src/client/js/components/Admin/Security/GoogleSecuritySetting.jsx
  9. 7 3
      src/client/js/components/Admin/Security/LdapSecuritySetting.jsx
  10. 7 3
      src/client/js/components/Admin/Security/LocalSecuritySetting.jsx
  11. 7 2
      src/client/js/components/Admin/Security/OidcSecuritySetting.jsx
  12. 7 3
      src/client/js/components/Admin/Security/SamlSecuritySetting.jsx
  13. 10 3
      src/client/js/components/Admin/Security/SecurityManagement.jsx
  14. 10 2
      src/client/js/components/Admin/Security/TwitterSecuritySetting.jsx
  15. 1 0
      src/client/js/services/AdminAppContainer.js
  16. 1 0
      src/client/js/services/AdminBasicSecurityContainer.js
  17. 1 0
      src/client/js/services/AdminCustomizeContainer.js
  18. 1 0
      src/client/js/services/AdminGeneralSecurityContainer.js
  19. 1 0
      src/client/js/services/AdminGitHubSecurityContainer.js
  20. 1 0
      src/client/js/services/AdminGoogleSecurityContainer.js
  21. 12 17
      src/client/js/services/AdminImportContainer.js
  22. 1 0
      src/client/js/services/AdminLdapSecurityContainer.js
  23. 1 0
      src/client/js/services/AdminLocalSecurityContainer.js
  24. 13 25
      src/client/js/services/AdminMarkDownContainer.js
  25. 13 25
      src/client/js/services/AdminNotificationContainer.js
  26. 1 0
      src/client/js/services/AdminOidcSecurityContainer.js
  27. 1 0
      src/client/js/services/AdminSamlSecurityContainer.js
  28. 1 0
      src/client/js/services/AdminTwitterSecurityContainer.js

+ 4 - 1
src/client/js/components/Admin/App/AppSettingsPage.jsx

@@ -34,7 +34,10 @@ function AppSettingsPage(props) {
       catch (err) {
         toastError(err);
         logger.error(err);
-        props.adminAppContainer.setState({ title: props.adminAppContainer.dummyTitleForError, retrieveError: err[0].message });
+        props.adminAppContainer.setState({
+          title: props.adminAppContainer.dummyTitleForError,
+          retrieveError: err[0].message,
+        });
       }
     })();
   }

+ 7 - 3
src/client/js/components/Admin/Customize/Customize.jsx

@@ -36,16 +36,20 @@ function Customize(props) {
   const { adminCustomizeContainer } = props;
 
   if (adminCustomizeContainer.state.currentTheme === adminCustomizeContainer.dummyCurrentTheme) {
-    throw new Promise(async() => {
+    throw (async() => {
       try {
         await adminCustomizeContainer.retrieveCustomizeData();
       }
       catch (err) {
         toastError(err);
-        adminCustomizeContainer.setState({ retrieveError: err.message });
+        adminCustomizeContainer.setState({ currentTheme: adminCustomizeContainer.dummyCurrentThemeForError, retrieveError: err[0].message });
         logger.error(err);
       }
-    });
+    })();
+  }
+
+  if (adminCustomizeContainer.state.currentTheme === adminCustomizeContainer.dummyCurrentThemeForError) {
+    throw new Error(adminCustomizeContainer.state.retrieveError);
   }
 
   return (

+ 8 - 4
src/client/js/components/Admin/ImportDataPage.jsx

@@ -29,16 +29,20 @@ function ImportDataPage(props) {
   const { adminImportContainer } = props;
 
   if (adminImportContainer.state.esaTeamName === adminImportContainer.dummyEsaTeamName) {
-    throw new Promise(async() => {
+    throw (async() => {
       try {
-        await props.adminImportContainer.retrieveImportSettingsData();
+        await adminImportContainer.retrieveImportSettingsData();
       }
       catch (err) {
         toastError(err);
-        props.adminImportContainer.setState({ retrieveError: err.message });
+        adminImportContainer.setState({ esaTeamName: adminImportContainer.dummyEsaTeamNameForError, retrieveError: err[0].message });
         logger.error(err);
       }
-    });
+    })();
+  }
+
+  if (adminImportContainer.state.esaTeamName === adminImportContainer.dummyEsaTeamNameForError) {
+    throw new Error(adminImportContainer.state.retrieveError);
   }
 
   return <ImportDataPageContents />;

+ 7 - 3
src/client/js/components/Admin/MarkdownSetting/MarkDownSetting.jsx

@@ -29,16 +29,20 @@ function MarkdownSetting(props) {
   const { adminMarkDownContainer } = props;
 
   if (adminMarkDownContainer.state.isEnabledLinebreaks === adminMarkDownContainer.dummyIsEnabledLinebreaks) {
-    throw new Promise(async() => {
+    throw (async() => {
       try {
         await adminMarkDownContainer.retrieveMarkdownData();
       }
       catch (err) {
         toastError(err);
-        adminMarkDownContainer.setState({ retrieveError: err.message });
+        adminMarkDownContainer.setState({ isEnabledLinebreaks: adminMarkDownContainer.dummyIsEnabledLinebreaksForError, retrieveError: err[0].message });
         logger.error(err);
       }
-    });
+    })();
+  }
+
+  if (adminMarkDownContainer.state.isEnabledLinebreaks === adminMarkDownContainer.dummyIsEnabledLinebreaksForError) {
+    throw new Error(adminMarkDownContainer.state.retrieveError);
   }
 
   return <MarkDownSettingContents />;

+ 7 - 3
src/client/js/components/Admin/Notification/NotificationSetting.jsx

@@ -29,16 +29,20 @@ function NotificationSettingWithContainerWithSuspense(props) {
 function NotificationSetting(props) {
   const { adminNotificationContainer } = props;
   if (adminNotificationContainer.state.webhookUrl === adminNotificationContainer.dummyWebhookUrl) {
-    throw new Promise(async() => {
+    throw (async() => {
       try {
         await adminNotificationContainer.retrieveNotificationData();
       }
       catch (err) {
         toastError(err);
-        adminNotificationContainer.setState({ retrieveError: err });
+        adminNotificationContainer.setState({ webhookUrl: adminNotificationContainer.dummyWebhookUrlForError, retrieveError: err[0].message });
         logger.error(err);
       }
-    });
+    })();
+  }
+
+  if (adminNotificationContainer.state.webhookUrl === adminNotificationContainer.dummyWebhookUrlForError) {
+    throw new Error(adminNotificationContainer.state.retrieveError);
   }
 
   return <NotificationSettingContents />;

+ 12 - 3
src/client/js/components/Admin/Security/BasicSecuritySetting.jsx

@@ -12,15 +12,24 @@ import BasicSecurityManagementContents from './BasicSecuritySettingContents';
 function BasicSecurityManagement(props) {
   const { adminBasicSecurityContainer } = props;
   if (adminBasicSecurityContainer.state.isSameUsernameTreatedAsIdenticalUser === adminBasicSecurityContainer.dummyIsSameUsernameTreatedAsIdenticalUser) {
-    throw new Promise(async() => {
+    throw (async() => {
       try {
         await adminBasicSecurityContainer.retrieveSecurityData();
       }
       catch (err) {
-        adminBasicSecurityContainer.setState({ retrieveError: err.message });
+        adminBasicSecurityContainer.setState({
+          isSameUsernameTreatedAsIdenticalUser: adminBasicSecurityContainer.dummyIsSameUsernameTreatedAsIdenticalUser,
+          retrieveError: err.message,
+        });
         toastError(err);
       }
-    });
+    })();
+  }
+
+  if (
+    adminBasicSecurityContainer.state.isSameUsernameTreatedAsIdenticalUser === adminBasicSecurityContainer.dummyIsSameUsernameTreatedAsIdenticalUserForError
+  ) {
+    throw new Error(adminBasicSecurityContainer.state.retrieveError);
   }
 
   return <BasicSecurityManagementContents />;

+ 7 - 3
src/client/js/components/Admin/Security/GitHubSecuritySetting.jsx

@@ -13,15 +13,19 @@ function GitHubSecurityManagement(props) {
 
   const { adminGitHubSecurityContainer } = props;
   if (adminGitHubSecurityContainer.state.githubClientId === adminGitHubSecurityContainer.dummyGithubClientId) {
-    throw new Promise(async() => {
+    throw (async() => {
       try {
         await adminGitHubSecurityContainer.retrieveSecurityData();
       }
       catch (err) {
         toastError(err);
-        adminGitHubSecurityContainer.setState({ retrieveError: err });
+        adminGitHubSecurityContainer.setState({ githubClientId: adminGitHubSecurityContainer.dummyGithubClientIdForError, retrieveError: err });
       }
-    });
+    })();
+  }
+
+  if (adminGitHubSecurityContainer.state.githubClientId === adminGitHubSecurityContainer.dummyGithubClientIdForError) {
+    throw new Error(adminGitHubSecurityContainer.state.retrieveError);
   }
 
   return <GitHubSecuritySettingContents />;

+ 7 - 3
src/client/js/components/Admin/Security/GoogleSecuritySetting.jsx

@@ -12,15 +12,19 @@ function GoogleSecurityManagement(props) {
 
   const { adminGoogleSecurityContainer } = props;
   if (adminGoogleSecurityContainer.state.googleClientId === adminGoogleSecurityContainer.dummyGoogleClientId) {
-    throw new Promise(async() => {
+    throw (async() => {
       try {
         await adminGoogleSecurityContainer.retrieveSecurityData();
       }
       catch (err) {
         toastError(err);
-        adminGoogleSecurityContainer.setState({ retrieveError: err.message });
+        adminGoogleSecurityContainer.setState({ googleClientId: adminGoogleSecurityContainer.dummyGoogleClientIdForError, retrieveError: err[0].message });
       }
-    });
+    })();
+  }
+
+  if (adminGoogleSecurityContainer.state.googleClientId === adminGoogleSecurityContainer.dummyGoogleClientIdForError) {
+    throw new Error(adminGoogleSecurityContainer.state.retrieveError);
   }
 
   return <GoogleSecurityManagementContents />;

+ 7 - 3
src/client/js/components/Admin/Security/LdapSecuritySetting.jsx

@@ -12,15 +12,19 @@ function LdapSecuritySetting(props) {
 
   const { adminLdapSecurityContainer } = props;
   if (adminLdapSecurityContainer.state.serverUrl === adminLdapSecurityContainer.dummyServerUrl) {
-    throw new Promise(async() => {
+    throw (async() => {
       try {
         await adminLdapSecurityContainer.retrieveSecurityData();
       }
       catch (err) {
         toastError(err);
-        adminLdapSecurityContainer.setState({ retrieveError: err.message });
+        adminLdapSecurityContainer.setState({ serverUrl: adminLdapSecurityContainer.dummyServerUrlForError, retrieveError: err[0].message });
       }
-    });
+    })();
+  }
+
+  if (adminLdapSecurityContainer.state.serverUrl === adminLdapSecurityContainer.dummyServerUrlForError) {
+    throw new Error(adminLdapSecurityContainer.state.retrieveError);
   }
 
   return <LdapSecuritySettingContents />;

+ 7 - 3
src/client/js/components/Admin/Security/LocalSecuritySetting.jsx

@@ -13,15 +13,19 @@ function LocalSecuritySetting(props) {
 
   const { adminLocalSecurityContainer } = props;
   if (adminLocalSecurityContainer.state.registrationMode === adminLocalSecurityContainer.dummyRegistrationMode) {
-    throw new Promise(async() => {
+    throw (async() => {
       try {
         await adminLocalSecurityContainer.retrieveSecurityData();
       }
       catch (err) {
         toastError(err);
-        adminLocalSecurityContainer.setState({ retrieveError: err.message });
+        adminLocalSecurityContainer.setState({ registrationMode: adminLocalSecurityContainer.dummyRegistrationModeForError, retrieveError: err[0].message });
       }
-    });
+    })();
+  }
+
+  if (adminLocalSecurityContainer.state.registrationMode === adminLocalSecurityContainer.dummyRegistrationModeForError) {
+    throw new Error(adminLocalSecurityContainer.state.retrieveError);
   }
 
   return <LocalSecuritySettingContents />;

+ 7 - 2
src/client/js/components/Admin/Security/OidcSecuritySetting.jsx

@@ -13,14 +13,19 @@ function OidcSecurityManagement(props) {
 
   const { adminOidcSecurityContainer } = props;
   if (adminOidcSecurityContainer.state.oidcProviderName === adminOidcSecurityContainer.dummyOidcProviderName) {
-    throw new Promise(async() => {
+    throw (async() => {
       try {
         await adminOidcSecurityContainer.retrieveSecurityData();
       }
       catch (err) {
         toastError(err);
+        adminOidcSecurityContainer.setState({ oidcProviderName: adminOidcSecurityContainer.dummyOidcProviderNameForError, retrieveError: err[0].message });
       }
-    });
+    })();
+  }
+
+  if (adminOidcSecurityContainer.state.oidcProviderName === adminOidcSecurityContainer.dummyOidcProviderNameForError) {
+    throw new Error(adminOidcSecurityContainer.state.retrieveError);
   }
 
   return <OidcSecurityManagementContents />;

+ 7 - 3
src/client/js/components/Admin/Security/SamlSecuritySetting.jsx

@@ -13,15 +13,19 @@ function SamlSecurityManagement(props) {
 
   const { adminSamlSecurityContainer } = props;
   if (adminSamlSecurityContainer.state.samlEntryPoint === adminSamlSecurityContainer.dummySamlEntryPoint) {
-    throw new Promise(async() => {
+    throw (async() => {
       try {
         await adminSamlSecurityContainer.retrieveSecurityData();
       }
       catch (err) {
         toastError(err);
-        adminSamlSecurityContainer.setState({ retrieveError: err.message });
+        adminSamlSecurityContainer.setState({ samlEntryPoint: adminSamlSecurityContainer.dummySamlEntryPointForError, retrieveError: err[0].message });
       }
-    });
+    })();
+  }
+
+  if (adminSamlSecurityContainer.state.samlEntryPoint === adminSamlSecurityContainer.dummySamlEntryPointForError) {
+    throw new Error(adminSamlSecurityContainer.state.retrieveError);
   }
 
   return <SamlSecuritySettingContents />;

+ 10 - 3
src/client/js/components/Admin/Security/SecurityManagement.jsx

@@ -11,15 +11,22 @@ function SecurityManagement(props) {
   const { adminGeneralSecurityContainer } = props;
 
   if (adminGeneralSecurityContainer.state.currentRestrictGuestMode === adminGeneralSecurityContainer.dummyCurrentRestrictGuestMode) {
-    throw new Promise(async() => {
+    throw (async() => {
       try {
         await adminGeneralSecurityContainer.retrieveSecurityData();
       }
       catch (err) {
         toastError(err);
-        adminGeneralSecurityContainer.setState({ retrieveError: err.message });
+        adminGeneralSecurityContainer.setState({
+          currentRestrictGuestMode: adminGeneralSecurityContainer.dummyCurrentRestrictGuestModeForError,
+          retrieveError: err.message,
+        });
       }
-    });
+    })();
+  }
+
+  if (adminGeneralSecurityContainer.state.currentRestrictGuestMode === adminGeneralSecurityContainer.dummyCurrentRestrictGuestModeForError) {
+    throw new Error(adminGeneralSecurityContainer.state.retrieveError);
   }
 
   return <SecurityManagementContents />;

+ 10 - 2
src/client/js/components/Admin/Security/TwitterSecuritySetting.jsx

@@ -13,14 +13,22 @@ function TwitterSecurityManagement(props) {
 
   const { adminTwitterSecurityContainer } = props;
   if (adminTwitterSecurityContainer.state.twitterConsumerKey === adminTwitterSecurityContainer.dummyTwitterConsumerKey) {
-    throw new Promise(async() => {
+    throw (async() => {
       try {
         await adminTwitterSecurityContainer.retrieveSecurityData();
       }
       catch (err) {
         toastError(err);
+        adminTwitterSecurityContainer.setState({
+          twitterConsumerKey: adminTwitterSecurityContainer.dummyTwitterConsumerKeyForError,
+          retrieveError: err[0].message,
+        });
       }
-    });
+    })();
+  }
+
+  if (adminTwitterSecurityContainer.state.twitterConsumerKey === adminTwitterSecurityContainer.dummyTwitterConsumerKeyForError) {
+    throw new Error(adminTwitterSecurityContainer.state.retrieveError);
   }
 
   return <TwitterSecuritySettingContents />;

+ 1 - 0
src/client/js/services/AdminAppContainer.js

@@ -13,6 +13,7 @@ export default class AdminAppContainer extends Container {
     this.dummyTitle = 0;
 
     this.state = {
+      retrieveError: null,
       // set dummy value tile for using suspense
       title: this.dummyTitle,
       confidential: '',

+ 1 - 0
src/client/js/services/AdminBasicSecurityContainer.js

@@ -16,6 +16,7 @@ export default class AdminBasicSecurityContainer extends Container {
 
     this.appContainer = appContainer;
     this.dummyIsSameUsernameTreatedAsIdenticalUser = 0;
+    this.dummyIsSameUsernameTreatedAsIdenticalUserForError = 1;
 
     this.state = {
       retrieveError: null,

+ 1 - 0
src/client/js/services/AdminCustomizeContainer.js

@@ -18,6 +18,7 @@ export default class AdminCustomizeContainer extends Container {
 
     this.appContainer = appContainer;
     this.dummyCurrentTheme = 0;
+    this.dummyCurrentThemeForError = 1;
 
     this.state = {
       retrieveError: null,

+ 1 - 0
src/client/js/services/AdminGeneralSecurityContainer.js

@@ -14,6 +14,7 @@ export default class AdminGeneralSecurityContainer extends Container {
 
     this.appContainer = appContainer;
     this.dummyCurrentRestrictGuestMode = 0;
+    this.dummyCurrentRestrictGuestModeForError = 1;
 
     this.state = {
       retrieveError: null,

+ 1 - 0
src/client/js/services/AdminGitHubSecurityContainer.js

@@ -18,6 +18,7 @@ export default class AdminGitHubSecurityContainer extends Container {
 
     this.appContainer = appContainer;
     this.dummyGithubClientId = 0;
+    this.dummyGithubClientIdForError = 1;
 
     this.state = {
       retrieveError: null,

+ 1 - 0
src/client/js/services/AdminGoogleSecurityContainer.js

@@ -18,6 +18,7 @@ export default class AdminGoogleSecurityContainer extends Container {
 
     this.appContainer = appContainer;
     this.dummyGoogleClientId = 0;
+    this.dummyGoogleClientIdForError = 1;
 
     this.state = {
       retrieveError: null,

+ 12 - 17
src/client/js/services/AdminImportContainer.js

@@ -17,6 +17,7 @@ export default class AdminImportContainer extends Container {
 
     this.appContainer = appContainer;
     this.dummyEsaTeamName = 0;
+    this.dummyEsaTeamNameForError = 1;
 
     this.state = {
       retrieveError: null,
@@ -47,23 +48,17 @@ export default class AdminImportContainer extends Container {
    * retrieve app sttings data
    */
   async retrieveImportSettingsData() {
-    try {
-      const response = await this.appContainer.apiv3.get('/import/');
-      const {
-        importSettingsParams,
-      } = response.data;
-
-      this.setState({
-        esaTeamName: importSettingsParams.esaTeamName,
-        esaAccessToken: importSettingsParams.esaAccessToken,
-        qiitaTeamName: importSettingsParams.qiitaTeamName,
-        qiitaAccessToken: importSettingsParams.qiitaAccessToken,
-      });
-    }
-    catch (err) {
-      logger.error(err);
-      toastError(new Error('Failed to fetch data'));
-    }
+    const response = await this.appContainer.apiv3.get('/import/');
+    const {
+      importSettingsParams,
+    } = response.data;
+
+    this.setState({
+      esaTeamName: importSettingsParams.esaTeamName,
+      esaAccessToken: importSettingsParams.esaAccessToken,
+      qiitaTeamName: importSettingsParams.qiitaTeamName,
+      qiitaAccessToken: importSettingsParams.qiitaAccessToken,
+    });
   }
 
   handleInputValue(event) {

+ 1 - 0
src/client/js/services/AdminLdapSecurityContainer.js

@@ -16,6 +16,7 @@ export default class AdminLdapSecurityContainer extends Container {
 
     this.appContainer = appContainer;
     this.dummyServerUrl = 0;
+    this.dummyServerUrlForError = 1;
 
     this.state = {
       retrieveError: null,

+ 1 - 0
src/client/js/services/AdminLocalSecurityContainer.js

@@ -14,6 +14,7 @@ export default class AdminLocalSecurityContainer extends Container {
 
     this.appContainer = appContainer;
     this.dummyRegistrationMode = 0;
+    this.dummyRegistrationModeForError = 1;
 
     this.state = {
       retrieveError: null,

+ 13 - 25
src/client/js/services/AdminMarkDownContainer.js

@@ -1,11 +1,5 @@
 import { Container } from 'unstated';
 
-import loggerFactory from '@alias/logger';
-
-import { toastError } from '../util/apiNotification';
-
-const logger = loggerFactory('growi:services:AdminMarkdownContainer');
-
 /**
  * Service container for admin markdown setting page (MarkDownSetting.jsx)
  * @extends {Container} unstated Container
@@ -17,6 +11,7 @@ export default class AdminMarkDownContainer extends Container {
 
     this.appContainer = appContainer;
     this.dummyIsEnabledLinebreaks = 0;
+    this.dummyIsEnabledLinebreaksForError = 1;
 
     this.state = {
       retrieveError: null,
@@ -45,26 +40,19 @@ export default class AdminMarkDownContainer extends Container {
    * retrieve markdown data
    */
   async retrieveMarkdownData() {
-    try {
-      const response = await this.appContainer.apiv3.get('/markdown-setting/');
-      const { markdownParams } = response.data;
-
-      this.setState({
-        isEnabledLinebreaks: markdownParams.isEnabledLinebreaks,
-        isEnabledLinebreaksInComments: markdownParams.isEnabledLinebreaksInComments,
-        pageBreakSeparator: markdownParams.pageBreakSeparator,
-        pageBreakCustomSeparator: markdownParams.pageBreakCustomSeparator || '',
-        isEnabledXss: markdownParams.isEnabledXss,
-        xssOption: markdownParams.xssOption,
-        tagWhiteList: markdownParams.tagWhiteList || '',
-        attrWhiteList: markdownParams.attrWhiteList || '',
-      });
+    const response = await this.appContainer.apiv3.get('/markdown-setting/');
+    const { markdownParams } = response.data;
 
-    }
-    catch (err) {
-      logger.error(err);
-      toastError(new Error('Failed to fetch data'));
-    }
+    this.setState({
+      isEnabledLinebreaks: markdownParams.isEnabledLinebreaks,
+      isEnabledLinebreaksInComments: markdownParams.isEnabledLinebreaksInComments,
+      pageBreakSeparator: markdownParams.pageBreakSeparator,
+      pageBreakCustomSeparator: markdownParams.pageBreakCustomSeparator || '',
+      isEnabledXss: markdownParams.isEnabledXss,
+      xssOption: markdownParams.xssOption,
+      tagWhiteList: markdownParams.tagWhiteList || '',
+      attrWhiteList: markdownParams.attrWhiteList || '',
+    });
   }
 
   /**

+ 13 - 25
src/client/js/services/AdminNotificationContainer.js

@@ -1,11 +1,5 @@
 import { Container } from 'unstated';
 
-import loggerFactory from '@alias/logger';
-
-import { toastError } from '../util/apiNotification';
-
-const logger = loggerFactory('growi:services:AdminNotificationContainer');
-
 /**
  * Service container for admin Notification setting page (NotificationSetting.jsx)
  * @extends {Container} unstated Container
@@ -17,6 +11,7 @@ export default class AdminNotificationContainer extends Container {
 
     this.appContainer = appContainer;
     this.dummyWebhookUrl = 0;
+    this.dummyWebhookUrlForError = 1;
 
     this.state = {
       retrieveError: null,
@@ -43,25 +38,18 @@ export default class AdminNotificationContainer extends Container {
    * Retrieve notificationData
    */
   async retrieveNotificationData() {
-    try {
-      const response = await this.appContainer.apiv3.get('/notification-setting/');
-      const { notificationParams } = response.data;
-
-      this.setState({
-        webhookUrl: notificationParams.webhookUrl,
-        isIncomingWebhookPrioritized: notificationParams.isIncomingWebhookPrioritized,
-        slackToken: notificationParams.slackToken,
-        userNotifications: notificationParams.userNotifications,
-        isNotificationForOwnerPageEnabled: notificationParams.isNotificationForOwnerPageEnabled,
-        isNotificationForGroupPageEnabled: notificationParams.isNotificationForGroupPageEnabled,
-        globalNotifications: notificationParams.globalNotifications,
-      });
-
-    }
-    catch (err) {
-      logger.error(err);
-      toastError(new Error('Failed to fetch data'));
-    }
+    const response = await this.appContainer.apiv3.get('/notification-setting/');
+    const { notificationParams } = response.data;
+
+    this.setState({
+      webhookUrl: notificationParams.webhookUrl,
+      isIncomingWebhookPrioritized: notificationParams.isIncomingWebhookPrioritized,
+      slackToken: notificationParams.slackToken,
+      userNotifications: notificationParams.userNotifications,
+      isNotificationForOwnerPageEnabled: notificationParams.isNotificationForOwnerPageEnabled,
+      isNotificationForGroupPageEnabled: notificationParams.isNotificationForGroupPageEnabled,
+      globalNotifications: notificationParams.globalNotifications,
+    });
   }
 
   /**

+ 1 - 0
src/client/js/services/AdminOidcSecurityContainer.js

@@ -18,6 +18,7 @@ export default class AdminOidcSecurityContainer extends Container {
 
     this.appContainer = appContainer;
     this.dummyOidcProviderName = 0;
+    this.dummyOidcProviderNameForError = 1;
 
     this.state = {
       retrieveError: null,

+ 1 - 0
src/client/js/services/AdminSamlSecurityContainer.js

@@ -19,6 +19,7 @@ export default class AdminSamlSecurityContainer extends Container {
 
     this.appContainer = appContainer;
     this.dummySamlEntryPoint = 0;
+    this.dummySamlEntryPointForError = 1;
 
     this.state = {
       retrieveError: null,

+ 1 - 0
src/client/js/services/AdminTwitterSecurityContainer.js

@@ -18,6 +18,7 @@ export default class AdminTwitterSecurityContainer extends Container {
 
     this.appContainer = appContainer;
     this.dummyTwitterConsumerKey = 0;
+    this.dummyTwitterConsumerKeyForError = 1;
 
     this.state = {
       callbackUrl: urljoin(pathUtils.removeTrailingSlash(appContainer.config.crowi.url), '/passport/twitter/callback'),