Rift.IO OSM R1 Initial Submission
[osm/UI.git] / skyquake / plugins / launchpad / src / nsCardPanel / nsCardPanel.jsx
diff --git a/skyquake/plugins/launchpad/src/nsCardPanel/nsCardPanel.jsx b/skyquake/plugins/launchpad/src/nsCardPanel/nsCardPanel.jsx
new file mode 100644 (file)
index 0000000..2b9b4c1
--- /dev/null
@@ -0,0 +1,48 @@
+import React from 'react';
+
+import DashboardCard from 'widgets/dashboard_card/dashboard_card.jsx';
+import LaunchpadCard from '../launchpad_card/launchpadCard.jsx';
+import LaunchpadFleetActions from'../launchpadFleetActions';
+
+export default class NsCardPanel extends React.Component {
+
+       onCloseCard(nsr_id) {
+               return () => {
+                       LaunchpadFleetActions.closeNsrCard(nsr_id);
+               }
+       }
+  findNsr(nsrs, nsr_id) {
+    nsrs.find()
+  }
+  render() {
+    const {nsrs, openedNsrIDs, ...props} = this.props;
+               return (
+      <DashboardCard className="nsCardPanel"
+          showHeader={true} title="NETWORK SERVICE DETAILS">
+                {
+                  openedNsrIDs.map((nsr_id, index) => {
+                      let nsr = nsrs.find(e => { return e.id == nsr_id; })
+                      if (nsr) {
+                        return  (
+                          <LaunchpadCard deleting={nsr.deleting}
+                                slideno={this.props.slideno}
+                                key={index}
+                                id={nsr_id}
+                                name={nsr.name}
+                                data={nsr.data}
+                                nsr={nsr}
+                                isActive={nsr["admin-status"] == "ENABLED"}
+                                closeButtonAction={this.onCloseCard(nsr.id)}/>
+                        );
+                      }
+                    }
+                  )
+                }
+        </DashboardCard>
+      );
+       }
+}
+NsCardPanel.defaultProps = {
+       nsrs: [],
+       slideno:0
+}