Просмотр исходного кода

add methods for opening and closing Modal / switchcing Tabs etc

kaoritokashiki 5 лет назад
Родитель
Сommit
a00e265ca3
1 измененных файлов с 30 добавлено и 3 удалено
  1. 30 3
      src/client/js/services/PageAccessoriesContainer.js

+ 30 - 3
src/client/js/services/PageAccessoriesContainer.js

@@ -5,7 +5,7 @@ import { Container } from 'unstated';
  * @extends {Container} unstated Container
  */
 
-export default class PafeAccessoriesContainer extends Container {
+export default class PageAccessoriesContainer extends Container {
 
   constructor(appContainer) {
     super();
@@ -18,9 +18,36 @@ export default class PafeAccessoriesContainer extends Container {
       // Prevent unnecessary rendering
       activeComponents: new Set(['']),
     };
+    this.openPageAccessoriesModal = this.openPageAccessoriesModal.bind(this);
+    this.closePageAccessoriesModal = this.closePageAccessoriesModal.bind(this);
+    this.switchActiveTab = this.switchActiveTab.bind(this);
+  }
+
+  /**
+   * Workaround for the mangling in production build to break constructor.name
+   */
+  static getClassName() {
+    return 'PageAccessoriesContainer';
+  }
+
+
+  openPageAccessoriesModal() {
+    this.setState({
+      isPageAccessoriesModalShown: true,
+    });
+
+  }
+
+  closePageAccessoriesModal() {
+    this.setState({
+      isPageAccessoriesModalShown: false,
+    });
+  }
 
-    // this.openPageCreateModal = this.openPageCreateModal.bind(this);
-    // this.closePageCreateModal = this.closePageCreateModal.bind(this);
+  switchActiveTab(activeTab) {
+    this.setState({
+      activeTab, activeComponents: this.state.activeComponents.add(activeTab),
+    });
   }
 
 }