Explorar el Código

HUE-5733 [editor] Fix js errors related to typed keywords

This also hides the debug output in the details panel for the categories where we’re not supposed to show any details.
Johan Ahlen hace 8 años
padre
commit
3d36b08e4a

+ 2 - 2
desktop/core/src/desktop/static/desktop/js/sqlAutocompleter3.js

@@ -368,9 +368,9 @@ var SqlAutocompleter3 = (function () {
       self.loadingKeywords(true);
       self.loadingKeywords(true);
       // Wait for the column reference type to be resolved to pick the right keywords
       // Wait for the column reference type to be resolved to pick the right keywords
       colRefDeferred.done(function (colRef) {
       colRefDeferred.done(function (colRef) {
-        var colRefKeywordSuggestions = self.keywords();
+        var colRefKeywordSuggestions = [];
         Object.keys(self.parseResult.suggestColRefKeywords).forEach(function (typeForKeywords) {
         Object.keys(self.parseResult.suggestColRefKeywords).forEach(function (typeForKeywords) {
-          if (SqlFunctions.matchesType(sourceType, [typeForKeywords], [colRef.type.toUpperCase()])) {
+          if (SqlFunctions.matchesType(self.snippet.type(), [typeForKeywords], [colRef.type.toUpperCase()])) {
             self.parseResult.suggestColRefKeywords[typeForKeywords].forEach(function (keyword) {
             self.parseResult.suggestColRefKeywords[typeForKeywords].forEach(function (keyword) {
               colRefKeywordSuggestions.push({
               colRefKeywordSuggestions.push({
                 value: self.parseResult.lowerCase ? keyword.toLowerCase() : keyword,
                 value: self.parseResult.lowerCase ? keyword.toLowerCase() : keyword,

+ 1 - 19
desktop/libs/notebook/src/notebook/templates/hue_ace_autocompleter.mako

@@ -55,9 +55,6 @@ from desktop.views import _ko
   </script>
   </script>
 
 
   <script type="text/html" id="autocomplete-details-keyword">
   <script type="text/html" id="autocomplete-details-keyword">
-    <div class="autocompleter-details">
-      <pre data-bind="text: ko.mapping.toJSON(details)"></pre>
-    </div>
   </script>
   </script>
 
 
   <script type="text/html" id="autocomplete-details-udf">
   <script type="text/html" id="autocomplete-details-udf">
@@ -71,9 +68,6 @@ from desktop.views import _ko
   </script>
   </script>
 
 
   <script type="text/html" id="autocomplete-details-database">
   <script type="text/html" id="autocomplete-details-database">
-    <div class="autocompleter-details">
-      <pre data-bind="text: ko.mapping.toJSON(details)"></pre>
-    </div>
   </script>
   </script>
 
 
   <script type="text/html" id="autocomplete-details-table">
   <script type="text/html" id="autocomplete-details-table">
@@ -120,15 +114,12 @@ from desktop.views import _ko
   </script>
   </script>
 
 
   <script type="text/html" id="autocomplete-details-variable">
   <script type="text/html" id="autocomplete-details-variable">
-    <div class="autocompleter-details">
-      <pre data-bind="text: ko.mapping.toJSON(details)"></pre>
-    </div>
   </script>
   </script>
 
 
   <script type="text/html" id="autocomplete-details-hdfs">
   <script type="text/html" id="autocomplete-details-hdfs">
     <div class="autocompleter-details">
     <div class="autocompleter-details">
       <div class="autocompleter-header"><i class="fa fa-fw" data-bind="css: { 'fa-folder-o': details.type === 'dir', 'fa-file-o': details.type !== 'dir' }"></i> <span data-bind="text: details.name"></span></div>
       <div class="autocompleter-header"><i class="fa fa-fw" data-bind="css: { 'fa-folder-o': details.type === 'dir', 'fa-file-o': details.type !== 'dir' }"></i> <span data-bind="text: details.name"></span></div>
-      <div class="autocompleter-details-contents" data-bind="template: { name: 'hdfs-details-content', data: { definition: details } }"><div>
+      <div class="autocompleter-details-contents" data-bind="template: { name: 'hdfs-details-content', data: { definition: details } }"></div>
     </div>
     </div>
   </script>
   </script>
 
 
@@ -176,21 +167,12 @@ from desktop.views import _ko
   </script>
   </script>
 
 
   <script type="text/html" id="autocomplete-details-value">
   <script type="text/html" id="autocomplete-details-value">
-    <div class="autocompleter-details">
-      <pre data-bind="text: ko.mapping.toJSON(details)"></pre>
-    </div>
   </script>
   </script>
 
 
   <script type="text/html" id="autocomplete-details-identifier">
   <script type="text/html" id="autocomplete-details-identifier">
-    <div class="autocompleter-details">
-      <pre data-bind="text: ko.mapping.toJSON(details)"></pre>
-    </div>
   </script>
   </script>
 
 
   <script type="text/html" id="autocomplete-details-cte">
   <script type="text/html" id="autocomplete-details-cte">
-    <div class="autocompleter-details">
-      <pre data-bind="text: ko.mapping.toJSON(details)"></pre>
-    </div>
   </script>
   </script>
 
 
   <script type="text/html" id="autocomplete-details-group-by">
   <script type="text/html" id="autocomplete-details-group-by">