Ver código fonte

[metastore] Add arrow icon with event to database list in the assist

Johan Ahlen 10 anos atrás
pai
commit
aeb229d349

+ 5 - 1
apps/metastore/src/metastore/templates/describe_table.mako

@@ -625,12 +625,16 @@ ${ assist.assistPanel() }
 
       self.initialize();
 
-      huePubSub.subscribe("assist.table.set", function (tableDef) {
+      huePubSub.subscribe("assist.table.selected", function (tableDef) {
         self.activeDatabase(tableDef.database);
         self.activeTable(tableDef.name)
         self.initialize();
       });
 
+      huePubSub.subscribe("assist.database.selected", function (databaseDef) {
+        console.log(databaseDef);
+      });
+
       self.refreshTableStats = function () {
         if (self.refreshingTableStats()) {
           return;

+ 5 - 1
desktop/core/src/desktop/static/desktop/js/assist/assistEntry.js

@@ -265,10 +265,14 @@
   AssistEntry.prototype.openItem = function () {
     var self = this;
     if (self.definition.isTable) {
-      huePubSub.publish("assist.table.set", {
+      huePubSub.publish("assist.table.selected", {
         database: self.databaseName,
         name: self.definition.name
       })
+    } else if (self.definition.isDatabase) {
+      huePubSub.publish("assist.database.selected", {
+        name: self.definition.name
+      })
     }
   };
 

+ 3 - 2
desktop/core/src/desktop/templates/assist.mako

@@ -137,7 +137,7 @@ from desktop.views import _ko
   </script>
 
   <script type="text/html" id="assist-entry-actions">
-    <div class="assist-actions" data-bind="css: { 'table-actions' : definition.isTable, 'column-actions': definition.isColumn } " style="opacity: 0">
+    <div class="assist-actions" data-bind="css: { 'table-actions' : definition.isTable, 'column-actions': definition.isColumn, 'database-actions' : definition.isDatabase } " style="opacity: 0">
       <a class="inactive-action" href="javascript:void(0)" data-bind="visible: definition.isTable && navigationSettings.showPreview, click: showPreview"><i class="fa fa-list" title="${_('Preview Sample data')}"></i></a>
       <span data-bind="visible: navigationSettings.showStats, component: { name: 'table-stats', params: {
           statsVisible: statsVisible,
@@ -215,7 +215,8 @@ from desktop.views import _ko
     </li>
     <li data-bind="visible: ! hasErrors()" >
       <ul class="assist-tables" data-bind="foreach: databases">
-        <li class="assist-table pointer">
+        <li class="assist-table pointer" data-bind="visibleOnHover: { selector: '.database-actions' }">
+          <!-- ko template: { name: 'assist-entry-actions' } --><!-- /ko -->
           <a class="assist-column-link assist-table-link" href="javascript: void(0);" data-bind="text: definition.name, click: function () { $parent.selectedDatabase($data) }"></a>
         </li>
       </ul>