Эх сурвалжийг харах

HUE-4530 [indexer] Hook up EditorViewModel with the table indexer

Enrico Berti 9 жил өмнө
parent
commit
52653b170c

+ 17 - 0
desktop/libs/indexer/src/indexer/templates/indexer.mako

@@ -130,6 +130,9 @@ ${ assist.assistPanel() }
           <div style="margin: 10px">
           <!-- ko template: 'create-index-wizard' --><!-- /ko -->
           </div>
+
+          <div id="notebook"></div>
+
         </div>
       </div>
     </div>
@@ -680,6 +683,7 @@ ${ assist.assistPanel() }
 
       self.jobId = ko.observable();
       self.editorId = ko.observable();
+      self.editorVM = null;
 
       self.indexingStarted = ko.observable(false);
 
@@ -766,6 +770,19 @@ ${ assist.assistPanel() }
           self.showCreate(true);
           self.jobId(resp.handle.id);
           self.editorId(resp.history_id);
+          self.editorVM = new EditorViewModel(resp.history_uuid, '', {
+            user: '${ user.username }',
+            userId: ${ user.id },
+            languages: [{name: "Java SQL", type: "java"}],
+            snippetViewSettings: {
+              java : {
+                snippetIcon: 'fa-file-archive-o '
+              }
+            }
+          });
+          ko.cleanNode($("#notebook")[0]);
+          ko.applyBindings(self.editorVM, $("#notebook")[0]);
+          self.editorVM.openNotebook(resp.history_uuid);
           viewModel.isLoading(false);
         }).fail(function (xhr, textStatus, errorThrown) {
           $(document).trigger("error", xhr.responseText);

+ 11 - 9
desktop/libs/notebook/src/notebook/static/notebook/js/notebook.ko.js

@@ -1892,15 +1892,17 @@
 
     self.sqlSourceTypes = [];
 
-    $.each(options.languages, function (idx, language) {
-      var viewSettings = options.snippetViewSettings[language.type];
-      if (viewSettings && viewSettings.sqlDialect) {
-        self.sqlSourceTypes.push({
-          type: language.type,
-          name: language.name
-        })
-      }
-    });
+    if (options.languages && options.snippetViewSettings) {
+      $.each(options.languages, function (idx, language) {
+        var viewSettings = options.snippetViewSettings[language.type];
+        if (viewSettings && viewSettings.sqlDialect) {
+          self.sqlSourceTypes.push({
+            type: language.type,
+            name: language.name
+          })
+        }
+      });
+    }
 
     if (self.sqlSourceTypes.length > 0) {
       self.activeSqlSourceType = self.sqlSourceTypes[0].type;