Jelajahi Sumber

[frontend] Replace deprecated xlink:href with href in svg use elements

Johan Åhlén 2 tahun lalu
induk
melakukan
af6f4a63b9
31 mengubah file dengan 85 tambahan dan 85 penghapusan
  1. 4 4
      apps/filebrowser/src/filebrowser/templates/fb_components.mako
  2. 5 5
      apps/jobbrowser/src/jobbrowser/static/jobbrowser/js/impala_dagre.js
  3. 1 1
      apps/oozie/src/oozie/templates/editor2/bundle_editor.mako
  4. 1 1
      apps/oozie/src/oozie/templates/editor2/coordinator_editor.mako
  5. 1 1
      apps/oozie/src/oozie/templates/editor2/workflow_editor.mako
  6. 1 1
      apps/oozie/src/oozie/templates/navigation-bar.mako
  7. 1 1
      desktop/core/src/desktop/js/components/HueIcon.vue
  8. 1 1
      desktop/core/src/desktop/js/components/__snapshots__/HueIcon.test.ts.snap
  9. 1 1
      desktop/core/src/desktop/js/components/icons/vue/ChevronLeftIcon.ts
  10. 1 1
      desktop/core/src/desktop/js/components/icons/vue/ColumnIcon.ts
  11. 1 1
      desktop/core/src/desktop/js/components/icons/vue/ConnectorIcon.ts
  12. 1 1
      desktop/core/src/desktop/js/components/icons/vue/DatabaseIcon.ts
  13. 1 1
      desktop/core/src/desktop/js/components/icons/vue/DropDownIcon.ts
  14. 1 1
      desktop/core/src/desktop/js/components/icons/vue/DropRightIcon.ts
  15. 1 1
      desktop/core/src/desktop/js/components/icons/vue/SpinnerLargeIcon.ts
  16. 1 1
      desktop/core/src/desktop/js/components/icons/vue/SpinnerSmallIcon.ts
  17. 1 1
      desktop/core/src/desktop/js/components/icons/vue/TableIcon.ts
  18. 1 1
      desktop/core/src/desktop/js/components/icons/vue/ViewIcon.ts
  19. 30 30
      desktop/core/src/desktop/js/components/sidebar/HueSidebar.vue
  20. 1 1
      desktop/core/src/desktop/js/components/sidebar/Sidebar.vue
  21. 1 1
      desktop/core/src/desktop/js/jquery/plugins/jquery.filechooser.js
  22. 3 3
      desktop/core/src/desktop/js/ko/components/appSwitcher/ko.appSwitcher.js
  23. 1 1
      desktop/core/src/desktop/js/ko/components/assist/ko.assistDocumentsPanel.js
  24. 1 1
      desktop/core/src/desktop/js/ko/components/assist/ko.assistPanel.js
  25. 14 14
      desktop/core/src/desktop/templates/common_header.mako
  26. 3 3
      desktop/core/src/desktop/templates/document_browser.mako
  27. 2 2
      desktop/core/src/desktop/templates/hue_icons.mako
  28. 1 1
      desktop/core/src/desktop/templates/login.mako
  29. 1 1
      desktop/libs/dashboard/src/dashboard/templates/common_search.mako
  30. 1 1
      desktop/libs/notebook/src/notebook/templates/editor2.mako
  31. 1 1
      desktop/libs/notebook/src/notebook/templates/editor_components.mako

+ 4 - 4
apps/filebrowser/src/filebrowser/templates/fb_components.mako

@@ -43,25 +43,25 @@ else:
         %elif path.lower().find('gs://') == 0:
           <li style="padding-top: 12px">
             <span class="breadcrumb-link homeLink">
-              <svg class="hi"><use xlink:href='#hi-gs'></use></svg>
+              <svg class="hi"><use href='#hi-gs'></use></svg>
             </span>
           </li>
         %elif path.lower().find('adl:/') == 0:
           <li style="padding-top: 12px">
             <span class="breadcrumb-link homeLink">
-              <svg class="hi"><use xlink:href='#hi-adls'></use></svg>
+              <svg class="hi"><use href='#hi-adls'></use></svg>
             </span>
           </li>
         %elif path.lower().find('abfs://') == 0:
           <li style="padding-top: 12px">
             <span class="breadcrumb-link homeLink">
-              <svg class="hi"><use xlink:href='#hi-adls'></use></svg>
+              <svg class="hi"><use href='#hi-adls'></use></svg>
             </span>
           </li>
         %elif path.lower().find('ofs://') == 0:
           <li style="padding-top: 12px">
             <span class="breadcrumb-link homeLink">
-              <svg class="hi"><use xlink:href='#hi-ofs'></use></svg>
+              <svg class="hi"><use href='#hi-ofs'></use></svg>
             </span>
           </li>
         %else:

+ 5 - 5
apps/jobbrowser/src/jobbrowser/static/jobbrowser/js/impala_dagre.js

@@ -245,7 +245,7 @@ function impalaDagre(id) {
   function getIcon(icon) {
     var html = '';
     if (icon && icon.svg) {
-      html += '<svg class="hi"><use xlink:href="#'+ icon.svg +'"></use></svg>'
+      html += '<svg class="hi"><use href="#'+ icon.svg +'"></use></svg>'
     } else if (icon && icon.font) {
       html += "<div class='fa fa-fw valign-middle " + icon.font + "'></div>";
     }
@@ -507,7 +507,7 @@ function impalaDagre(id) {
     if (topNodes && topNodes.length) {
       var cpuTimelineSection = detailsContent.append('div').classed('details-section', true);
       var cpuTimelineTitle = cpuTimelineSection.append('header');
-      cpuTimelineTitle.append('svg').classed('hi', true).append('use').attr('xlink:href', '#hi-filter');
+      cpuTimelineTitle.append('svg').classed('hi', true).append('use').attr('href', '#hi-filter');
       var metricsMax = getMetricsMax() ? ' (' + ko.bindingHandlers.numberFormat.human(getMetricsMax(), 5) + ')' : '';
       cpuTimelineTitle.append('h5').text(window.I18n('Top Nodes') + metricsMax);
       var cpuTimelineSectionTable = cpuTimelineSection.append('table').classed('clickable ncolumn', true);
@@ -547,7 +547,7 @@ function impalaDagre(id) {
       var executionSum = sum(data, 'duration');
       var cpuTimelineSection = detailsContent.append('div').classed('details-section', true);
       var cpuTimelineTitle = cpuTimelineSection.append('header');
-      cpuTimelineTitle.append('svg').classed('hi', true).append('use').attr('xlink:href', icon);
+      cpuTimelineTitle.append('svg').classed('hi', true).append('use').attr('href', icon);
       cpuTimelineTitle.append('h5').text(title + ' (' + ko.bindingHandlers.numberFormat.human(executionSum, 5) + ')');
       cpuTimelineSection.node().appendChild($.parseXML(timeline).children[0]);
 
@@ -581,7 +581,7 @@ function impalaDagre(id) {
       var timelineSum = sum(timelineData, 'duration');
       var timelineSection = detailsContent.append('div').classed('details-section', true);
       var timelineTitle = timelineSection.append('header');
-      timelineTitle.append('svg').classed('hi', true).append('use').attr('xlink:href', '#hi-access-time');
+      timelineTitle.append('svg').classed('hi', true).append('use').attr('href', '#hi-access-time');
       timelineTitle.append('h5').text(window.I18n('Timeline') + ' (' + ko.bindingHandlers.numberFormat.human(timelineSum, 5) + ')');
       timelineSection.node().appendChild($.parseXML(timeline).children[0]);
 
@@ -599,7 +599,7 @@ function impalaDagre(id) {
     var metricsChildSections = metricsSection.selectAll('div').data(Object.keys(data.children));
 
     var metricsTitle = metricsSection.append('header');
-    metricsTitle.append('svg').classed('hi', true).append('use').attr('xlink:href', '#hi-bar-chart');
+    metricsTitle.append('svg').classed('hi', true).append('use').attr('href', '#hi-bar-chart');
     metricsTitle.append('h5').text(window.I18n('Metrics'));
 
     var metricsContent = metricsSection.append('table').classed('column metrics', true);

+ 1 - 1
apps/oozie/src/oozie/templates/editor2/bundle_editor.mako

@@ -65,7 +65,7 @@ ${ commonheader(_("Bundle Editor"), "Oozie", user, request) | n,unicode }
         %if is_embeddable:
           <li>
             <a href="javascript: void(0)" data-bind="publish: { 'assist.show.documents': 'oozie-bundle2' }">
-              <svg class="hi hi-fw hi-bigger"><use xlink:href="#hi-documents"></use></svg> ${ _('Bundles') }
+              <svg class="hi hi-fw hi-bigger"><use href="#hi-documents"></use></svg> ${ _('Bundles') }
             </a>
           </li>
         %endif

+ 1 - 1
apps/oozie/src/oozie/templates/editor2/coordinator_editor.mako

@@ -67,7 +67,7 @@ ${ commonheader(_("Coordinator Editor"), "Oozie", user, request) | n,unicode }
         %if is_embeddable:
           <li>
             <a href="javascript: void(0)" data-bind="publish: { 'assist.show.documents': 'oozie-coordinator2' }">
-              <svg class="hi hi-fw hi-bigger"><use xlink:href="#hi-documents"></use></svg> ${ _('Schedules') }
+              <svg class="hi hi-fw hi-bigger"><use href="#hi-documents"></use></svg> ${ _('Schedules') }
             </a>
           </li>
         %endif

+ 1 - 1
apps/oozie/src/oozie/templates/editor2/workflow_editor.mako

@@ -70,7 +70,7 @@ ${ commonheader(_("Workflow Editor"), "Oozie", user, request, "40px") | n,unicod
         %if is_embeddable:
           <li>
             <a href="javascript: void(0)" data-bind="publish: { 'assist.show.documents': 'oozie-workflow2' }">
-              <svg class="hi hi-fw hi-bigger"><use xlink:href="#hi-documents"></use></svg> ${ _('Workflows') }
+              <svg class="hi hi-fw hi-bigger"><use href="#hi-documents"></use></svg> ${ _('Workflows') }
             </a>
           </li>
         %endif

+ 1 - 1
apps/oozie/src/oozie/templates/navigation-bar.mako

@@ -79,7 +79,7 @@
                 </a>
                 % else:
                 <a title="${ _('Switch to the dashboard') }" href="${ is_embeddable and '/hue/jobbrowser/#!workflows' or getURL(section, dashboard, ENABLE_V2.get())}">
-                  <svg class="svg-app-icon"><use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#hi-oozie"></use></svg> ${ _('Oozie Editor') }
+                  <svg class="svg-app-icon"><use href="#hi-oozie"></use></svg> ${ _('Oozie Editor') }
                   <!-- ko component: { name: 'hue-favorite-app', params: { app: 'scheduler', interpreter: '${ getInterpreter(section) }' }} --><!-- /ko -->
                 </a>
                 % endif

+ 1 - 1
desktop/core/src/desktop/js/components/HueIcon.vue

@@ -18,7 +18,7 @@
 
 <template>
   <svg class="hue-icon">
-    <use :xlink:href="xlinkAttr" />
+    <use :href="xlinkAttr" />
   </svg>
 </template>
 

+ 1 - 1
desktop/core/src/desktop/js/components/__snapshots__/HueIcon.test.ts.snap

@@ -5,7 +5,7 @@ exports[`HueIcon.vue should render 1`] = `
   class="hue-icon"
 >
   <use
-    xlink:href="#hi-some-icon"
+    href="#hi-some-icon"
   />
 </svg>
 `;

+ 1 - 1
desktop/core/src/desktop/js/components/icons/vue/ChevronLeftIcon.ts

@@ -2,5 +2,5 @@ import { defineComponent } from 'vue';
 
 export default defineComponent({
   name: 'ChevronLeftIcon',
-  template: '<svg class="hi hi-fw"><use xlink:href="#hueChevronLeftSymbol" /></svg>'
+  template: '<svg class="hi hi-fw"><use href="#hueChevronLeftSymbol" /></svg>'
 });

+ 1 - 1
desktop/core/src/desktop/js/components/icons/vue/ColumnIcon.ts

@@ -2,5 +2,5 @@ import { defineComponent } from 'vue';
 
 export default defineComponent({
   name: 'ColumnIcon',
-  template: '<svg class="hi hi-fw"><use xlink:href="#hueColumnSymbol" /></svg>'
+  template: '<svg class="hi hi-fw"><use href="#hueColumnSymbol" /></svg>'
 });

+ 1 - 1
desktop/core/src/desktop/js/components/icons/vue/ConnectorIcon.ts

@@ -2,5 +2,5 @@ import { defineComponent } from 'vue';
 
 export default defineComponent({
   name: 'ConnectorIcon',
-  template: '<svg class="hi hi-fw"><use xlink:href="#hueConnectorSymbol" /></svg>'
+  template: '<svg class="hi hi-fw"><use href="#hueConnectorSymbol" /></svg>'
 });

+ 1 - 1
desktop/core/src/desktop/js/components/icons/vue/DatabaseIcon.ts

@@ -2,5 +2,5 @@ import { defineComponent } from 'vue';
 
 export default defineComponent({
   name: 'DatabaseIcon',
-  template: '<svg class="hi hi-fw"><use xlink:href="#hueDatabaseSymbol" /></svg>'
+  template: '<svg class="hi hi-fw"><use href="#hueDatabaseSymbol" /></svg>'
 });

+ 1 - 1
desktop/core/src/desktop/js/components/icons/vue/DropDownIcon.ts

@@ -2,5 +2,5 @@ import { defineComponent } from 'vue';
 
 export default defineComponent({
   name: 'DropDownIcon',
-  template: '<svg class="hi hi-fw"><use xlink:href="#hueDropDownSymbol" /></svg>'
+  template: '<svg class="hi hi-fw"><use href="#hueDropDownSymbol" /></svg>'
 });

+ 1 - 1
desktop/core/src/desktop/js/components/icons/vue/DropRightIcon.ts

@@ -2,5 +2,5 @@ import { defineComponent } from 'vue';
 
 export default defineComponent({
   name: 'DropRightIcon',
-  template: '<svg class="hi hi-fw"><use xlink:href="#hueDropRightSymbol" /></svg>'
+  template: '<svg class="hi hi-fw"><use href="#hueDropRightSymbol" /></svg>'
 });

+ 1 - 1
desktop/core/src/desktop/js/components/icons/vue/SpinnerLargeIcon.ts

@@ -2,5 +2,5 @@ import { defineComponent } from 'vue';
 
 export default defineComponent({
   name: 'SpinnerLargeIcon',
-  template: '<svg class="hi hi-fw"><use xlink:href="#hueSpinnerLargeSymbol" /></svg>'
+  template: '<svg class="hi hi-fw"><use href="#hueSpinnerLargeSymbol" /></svg>'
 });

+ 1 - 1
desktop/core/src/desktop/js/components/icons/vue/SpinnerSmallIcon.ts

@@ -2,5 +2,5 @@ import { defineComponent } from 'vue';
 
 export default defineComponent({
   name: 'SpinnerSmallIcon',
-  template: '<svg class="hi hi-fw"><use xlink:href="#hueSpinnerSmallSymbol" /></svg>'
+  template: '<svg class="hi hi-fw"><use href="#hueSpinnerSmallSymbol" /></svg>'
 });

+ 1 - 1
desktop/core/src/desktop/js/components/icons/vue/TableIcon.ts

@@ -2,5 +2,5 @@ import { defineComponent } from 'vue';
 
 export default defineComponent({
   name: 'TableIcon',
-  template: '<svg class="hi hi-fw"><use xlink:href="#hueTableSymbol" /></svg>'
+  template: '<svg class="hi hi-fw"><use href="#hueTableSymbol" /></svg>'
 });

+ 1 - 1
desktop/core/src/desktop/js/components/icons/vue/ViewIcon.ts

@@ -2,5 +2,5 @@ import { defineComponent } from 'vue';
 
 export default defineComponent({
   name: 'ViewIcon',
-  template: '<svg class="hi hi-fw"><use xlink:href="#hueViewSymbol" /></svg>'
+  template: '<svg class="hi hi-fw"><use href="#hueViewSymbol" /></svg>'
 });

+ 30 - 30
desktop/core/src/desktop/js/components/sidebar/HueSidebar.vue

@@ -76,54 +76,54 @@
   }
 
   const APP_ICON_INDEX: { [name: string]: string } = {
-    abfs: `<svg class="hi hi-fw"><use xlink:href="#hi-adls"></use></svg>`,
-    adls: `<svg class="hi hi-fw"><use xlink:href="#hi-adls"></use></svg>`,
-    dashboard: `<svg class="hi hi-fw"><use xlink:href="#hi-dashboard"></use></svg>`,
-    'data-browser': `<svg class="hi hi-fw"><use xlink:href="#hi-data-browser"></use></svg>`,
+    abfs: `<svg class="hi hi-fw"><use href="#hi-adls"></use></svg>`,
+    adls: `<svg class="hi hi-fw"><use href="#hi-adls"></use></svg>`,
+    dashboard: `<svg class="hi hi-fw"><use href="#hi-dashboard"></use></svg>`,
+    'data-browser': `<svg class="hi hi-fw"><use href="#hi-data-browser"></use></svg>`,
     default: `<i class="fa fa-fw fa-database"></i>`,
     'dist-cp': `<i class="fa fa-fw fa-files-o"></i>`,
-    documents: `<svg class="hi hi-fw"><use xlink:href="#hi-documents"></use></svg>`,
-    editor: `<svg class="hi hi-fw"><use xlink:href="#hi-editor"></use></svg>`,
+    documents: `<svg class="hi hi-fw"><use href="#hi-documents"></use></svg>`,
+    editor: `<svg class="hi hi-fw"><use href="#hi-editor"></use></svg>`,
     hbase: `<i class="fa fa-fw fa-th-large"></i>`,
     hdfs: `<i class="fa fa-fw fa-files-o"></i>`,
-    hive: `<svg class="hi hi-fw"><use xlink:href="#hi-hive"></use></svg>`,
-    impala: `<svg class="hi hi-fw"><use xlink:href="#hi-impala"></use></svg>`,
+    hive: `<svg class="hi hi-fw"><use href="#hi-hive"></use></svg>`,
+    impala: `<svg class="hi hi-fw"><use href="#hi-impala"></use></svg>`,
     importer: `<i class="fa fa-fw fa-cloud-upload"></i>`,
     indexes: `<i class="fa fa-fw fa-search-plus"></i>`,
-    jar: `<svg class="hi hi-fw"><use xlink:href="#hi-spark"></use></svg>`,
+    jar: `<svg class="hi hi-fw"><use href="#hi-spark"></use></svg>`,
     java: `<i class="fa fa-fw fa-file-code-o"></i>`,
-    'job-designer': `<svg class="hi hi-fw"><use xlink:href="#hi-job-designer"></use></svg>`,
+    'job-designer': `<svg class="hi hi-fw"><use href="#hi-job-designer"></use></svg>`,
     kafka: `<i class="fa fa-fw fa-sitemap"></i>`,
     mapreduce: `<i class="fa fa-fw fa-file-archive-o"></i>`,
-    markdown: `<svg class="hi hi-fw"><use xlink:href="#hi-markdown"></use></svg>`,
-    notebook: `<svg class="hi hi-fw"><use xlink:href="#hi-file-notebook"></use></svg>`,
-    oozie: `<svg class="hi hi-fw"><use xlink:href="#hi-oozie"></use></svg>`,
-    'oozie-bundle': `<svg class="hi hi-fw"><use xlink:href="#hi-oozie-bundle"></use></svg>`,
-    'oozie-coordinator': `<svg class="hi hi-fw"><use xlink:href="#hi-oozie-coordinator"></use></svg>`,
-    'oozie-workflow': `<svg class="hi hi-fw"><use xlink:href="#hi-oozie-workflow"></use></svg>`,
-    ofs: `<svg class="hi hi-fw"><use xlink:href="#hi-ofs"></use></svg>`,
-    gs: `<svg class="hi hi-fw"><use xlink:href="#hi-gs"></use></svg>`,
-    pig: `<svg class="hi hi-fw"><use xlink:href="#hi-pig"></use></svg>`,
-    py: `<svg class="hi hi-fw"><use xlink:href="#hi-py"></use></svg>`,
-    pyspark: `<svg class="hi hi-fw"><use xlink:href="#hi-spark"></use></svg>`,
+    markdown: `<svg class="hi hi-fw"><use href="#hi-markdown"></use></svg>`,
+    notebook: `<svg class="hi hi-fw"><use href="#hi-file-notebook"></use></svg>`,
+    oozie: `<svg class="hi hi-fw"><use href="#hi-oozie"></use></svg>`,
+    'oozie-bundle': `<svg class="hi hi-fw"><use href="#hi-oozie-bundle"></use></svg>`,
+    'oozie-coordinator': `<svg class="hi hi-fw"><use href="#hi-oozie-coordinator"></use></svg>`,
+    'oozie-workflow': `<svg class="hi hi-fw"><use href="#hi-oozie-workflow"></use></svg>`,
+    ofs: `<svg class="hi hi-fw"><use href="#hi-ofs"></use></svg>`,
+    gs: `<svg class="hi hi-fw"><use href="#hi-gs"></use></svg>`,
+    pig: `<svg class="hi hi-fw"><use href="#hi-pig"></use></svg>`,
+    py: `<svg class="hi hi-fw"><use href="#hi-py"></use></svg>`,
+    pyspark: `<svg class="hi hi-fw"><use href="#hi-spark"></use></svg>`,
     queries: `<i class="fa fa-fw fa-tasks"></i>`,
-    r: `<svg class="hi hi-fw"><use xlink:href="#hi-r"></use></svg>`,
+    r: `<svg class="hi hi-fw"><use href="#hi-r"></use></svg>`,
     report: `<i class="fa fa-fw fa-area-chart"></i>`,
     s3: `<i class="fa fa-fw fa-cubes"></i>`,
-    scala: `<svg class="hi hi-fw"><use xlink:href="#hi-scala"></use></svg>`,
-    scheduler: `<svg class="hi hi-fw"><use xlink:href="#hi-oozie"></use></svg>`,
+    scala: `<svg class="hi hi-fw"><use href="#hi-scala"></use></svg>`,
+    scheduler: `<svg class="hi hi-fw"><use href="#hi-oozie"></use></svg>`,
     security: `<i class="fa fa-fw fa-lock"></i>`,
     shell: `<i class="fa fa-fw fa-terminal"></i>`,
     solr: `<i class="fa fa-fw fa-search-plus"></i>`,
-    spark2: `<svg class="hi hi-fw"><use xlink:href="#hi-spark"></use></svg>`,
-    spark: `<svg class="hi hi-fw"><use xlink:href="#hi-spark"></use></svg>`,
-    sqoop1: `<svg class="hi hi-fw"><use xlink:href="#hi-sqoop"></use></svg>`,
-    sqoop: `<svg class="hi hi-fw"><use xlink:href="#hi-sqoop"></use></svg>`,
-    support: `<svg class="hi hi-fw"><use xlink:href="#hi-support"></use></svg>`,
+    spark2: `<svg class="hi hi-fw"><use href="#hi-spark"></use></svg>`,
+    spark: `<svg class="hi hi-fw"><use href="#hi-spark"></use></svg>`,
+    sqoop1: `<svg class="hi hi-fw"><use href="#hi-sqoop"></use></svg>`,
+    sqoop: `<svg class="hi hi-fw"><use href="#hi-sqoop"></use></svg>`,
+    support: `<svg class="hi hi-fw"><use href="#hi-support"></use></svg>`,
     tables: `<i class="fa fa-fw fa-database"></i>`,
     text: `<i class="fa fa-fw fa-i-cursor"></i>`,
     warehouses: `<i class="altus-icon altus-adb-cluster" style="margin: 0 1px 0 3px"></i>`,
-    workflows: `<svg class="hi hi-fw"><use xlink:href="#hi-oozie"></use></svg>`,
+    workflows: `<svg class="hi hi-fw"><use href="#hi-oozie"></use></svg>`,
     yarn: `<i class="fa fa-fw fa-tasks"></i>`
   };
 

+ 1 - 1
desktop/core/src/desktop/js/components/sidebar/Sidebar.vue

@@ -39,7 +39,7 @@
     <div class="sidebar-header">
       <a href="javascript:void(0);" @click="$emit('header-click', $event)">
         <svg>
-          <use xlink:href="#hi-sidebar-logo" />
+          <use href="#hi-sidebar-logo" />
         </svg>
       </a>
     </div>

+ 1 - 1
desktop/core/src/desktop/js/jquery/plugins/jquery.filechooser.js

@@ -350,7 +350,7 @@ Plugin.prototype.navigateTo = function (path) {
     //var filesysteminfo = self.options.filesysteminfo;
     const fs = _parent.options.filesysteminfo[_parent.options.fsSelected || 'hdfs'];
     const el = fs.icon.svg
-      ? '<svg class="hi"><use xlink:href="' + fs.icon.svg.home + '"></use></svg>'
+      ? '<svg class="hi"><use href="' + fs.icon.svg.home + '"></use></svg>'
       : '<i class="fa ' + fs.icon.home + '"></i> ' + fs.label.home;
     const _homelink = $('<a>')
       .addClass('nounderline')

+ 3 - 3
desktop/core/src/desktop/js/ko/components/appSwitcher/ko.appSwitcher.js

@@ -23,13 +23,13 @@ import { getAltusBaseUrl, getMowBaseUrl } from 'ko/components/appSwitcher/enviro
 
 const TEMPLATE = `
   <div class="hue-sidebar-header">
-    <a class="hue-app-switcher-trigger" data-bind="toggle: open"><svg class="show"><use xlink:href="#hi-app-picker"></use></svg></a>
-    <div class="hue-app-switcher-logo"><svg><use xlink:href="#hi-sidebar-logo"></use></svg></div>
+    <a class="hue-app-switcher-trigger" data-bind="toggle: open"><svg class="show"><use href="#hi-app-picker"></use></svg></a>
+    <div class="hue-app-switcher-logo"><svg><use href="#hi-sidebar-logo"></use></svg></div>
   </div>
 
   <div class="hue-app-switcher" data-bind="css: { 'open': open }">
     <div class="app-switcher-header">
-      <svg class="show"><use xlink:href="#hi-cdp-logo"></use></svg>
+      <svg class="show"><use href="#hi-cdp-logo"></use></svg>
       <a href="javascript: void(0);" class="close" data-bind="toggle: open">&times;</a></form>
     </div>
 

+ 1 - 1
desktop/core/src/desktop/js/ko/components/assist/ko.assistDocumentsPanel.js

@@ -157,7 +157,7 @@ const TEMPLATE = `
             <!-- /ko -->
             <li class="divider"></li>
             <li data-bind="css: { 'disabled': $data.isTrash() || $data.isTrashed() || !$data.canModify() }">
-              <a href="javascript:void(0);" data-bind="click: function () { $('.new-document-drop-down').removeClass('open'); huePubSub.publish('show.create.directory.modal', $data); }"><svg class="hi"><use xlink:href="#hi-folder"></use><use xlink:href="#hi-plus-addon"></use></svg> ${I18n(
+              <a href="javascript:void(0);" data-bind="click: function () { $('.new-document-drop-down').removeClass('open'); huePubSub.publish('show.create.directory.modal', $data); }"><svg class="hi"><use href="#hi-folder"></use><use href="#hi-plus-addon"></use></svg> ${I18n(
                 'New folder'
               )}</a>
             </li>

+ 1 - 1
desktop/core/src/desktop/js/ko/components/assist/ko.assistPanel.js

@@ -46,7 +46,7 @@ const TEMPLATE = `
     <div class="assist-panel-switches">
       <!-- ko foreach: availablePanels -->
       <div class="inactive-action assist-type-switch" data-bind="click: function () { $parent.visiblePanel($data); }, css: { 'blue': $parent.visiblePanel() === $data }, style: { 'float': rightAlignIcon ? 'right' : 'left' },  attr: { 'title': name }">
-        <!-- ko if: iconSvg --><span style="font-size:22px;"><svg class="hi"><use data-bind="attr: {'xlink:href': iconSvg }" xlink:href=''></use></svg></span><!-- /ko -->
+        <!-- ko if: iconSvg --><span style="font-size:22px;"><svg class="hi"><use data-bind="attr: {'href': iconSvg }" href=''></use></svg></span><!-- /ko -->
         <!-- ko if: !iconSvg --><i class="fa fa-fw valign-middle" data-bind="css: icon"></i><!-- /ko -->
       </div>
       <!-- /ko -->

+ 14 - 14
desktop/core/src/desktop/templates/common_header.mako

@@ -248,7 +248,7 @@ ${ hueIcons.symbols() }
             % endif
             % if is_adls_enabled:
             <li><a href="/${apps['filebrowser'].display_name}/view=adl:/">
-              <span class="fa fa-fw" style="font-size:20px;vertical-align: middle;"><svg class="hi"><use xlink:href='#hi-adls'></use></svg></span>${_('ADLS Browser')}</a>
+              <span class="fa fa-fw" style="font-size:20px;vertical-align: middle;"><svg class="hi"><use href='#hi-adls'></use></svg></span>${_('ADLS Browser')}</a>
             </li>
             % endif
           </ul>
@@ -269,7 +269,7 @@ ${ hueIcons.symbols() }
       <li class="hideMoreThan1380">
         % if is_adls_enabled:
           <a title="${_('ADLS Browser')}" data-rel="navigator-tooltip" href="/${apps['filebrowser'].display_name}/view=adl:/">
-            <span style="font-size:15px;vertical-align: middle;"><svg class="hi"><use xlink:href='#hi-adls'></use></svg></span>
+            <span style="font-size:15px;vertical-align: middle;"><svg class="hi"><use href='#hi-adls'></use></svg></span>
           </a>
         % endif
       </li>
@@ -325,7 +325,7 @@ ${ hueIcons.symbols() }
   </div>
     <a class="brand nav-tooltip pull-left" title="${_('About Hue')}" data-rel="navigator-tooltip" data-bind="hueLink: '/about'" href="javascript: void(0);">
       <svg style="margin-top: 2px; margin-left:8px;width: 60px;height: 16px;display: inline-block;">
-        <use xlink:href="#hi-logo"></use>
+        <use href="#hi-logo"></use>
       </svg>
     </a>
     % if user.is_authenticated and section != 'login':
@@ -340,16 +340,16 @@ ${ hueIcons.symbols() }
          <ul role="menu" class="dropdown-menu">
            % if 'beeswax' in apps:
              % if USE_NEW_EDITOR.get():
-             <li><a href="${ url('notebook:editor') }?type=hive"><svg class="svg-app-icon"><use xlink:href="#hi-hive"></use></svg> ${_('Hive')}</a></li>
+             <li><a href="${ url('notebook:editor') }?type=hive"><svg class="svg-app-icon"><use href="#hi-hive"></use></svg> ${_('Hive')}</a></li>
              % else:
-             <li><a href="/${apps['beeswax'].display_name}"><svg class="svg-app-icon"><use xlink:href="#hi-hive"></use></svg> ${_('Hive')}</a></li>
+             <li><a href="/${apps['beeswax'].display_name}"><svg class="svg-app-icon"><use href="#hi-hive"></use></svg> ${_('Hive')}</a></li>
              % endif
            % endif
            % if 'impala' in apps:
              % if USE_NEW_EDITOR.get(): ## impala requires beeswax anyway
-             <li><a href="${ url('notebook:editor') }?type=impala"><svg class="svg-app-icon"><use xlink:href="#hi-impala"></use></svg> ${_('Impala')}</a></li>
+             <li><a href="${ url('notebook:editor') }?type=impala"><svg class="svg-app-icon"><use href="#hi-impala"></use></svg> ${_('Impala')}</a></li>
              % else:
-             <li><a href="/${apps['impala'].display_name}"><svg class="svg-app-icon"><use xlink:href="#hi-impala"></use></svg> ${_('Impala')}</a></li>
+             <li><a href="/${apps['impala'].display_name}"><svg class="svg-app-icon"><use href="#hi-impala"></use></svg> ${_('Impala')}</a></li>
              % endif
            % endif
            % if 'rdbms' in apps:
@@ -361,28 +361,28 @@ ${ hueIcons.symbols() }
            % endif
            % if 'pig' in apps:
              % if USE_NEW_EDITOR.get() and False:
-             <li><a href="${ url('notebook:editor') }?type=pig"><svg class="svg-app-icon"><use xlink:href="#hi-pig"></use></svg> ${_('Pig')}</a></li>
+             <li><a href="${ url('notebook:editor') }?type=pig"><svg class="svg-app-icon"><use href="#hi-pig"></use></svg> ${_('Pig')}</a></li>
              % else:
-             <li><a href="/${apps['pig'].display_name}"><svg class="svg-app-icon"><use xlink:href="#hi-pig"></use></svg> ${_('Pig')}</a></li>
+             <li><a href="/${apps['pig'].display_name}"><svg class="svg-app-icon"><use href="#hi-pig"></use></svg> ${_('Pig')}</a></li>
              % endif
            % endif
            % if 'jobsub' in apps:
-             <li><a href="/${apps['jobsub'].display_name}"><svg class="svg-app-icon"><use xlink:href="#hi-job-designer"></use></svg> ${_('Job Designer')}</a></li>
+             <li><a href="/${apps['jobsub'].display_name}"><svg class="svg-app-icon"><use href="#hi-job-designer"></use></svg> ${_('Job Designer')}</a></li>
            % endif
          </ul>
        </li>
        % elif query_apps[1] == 1:
            % if 'beeswax' in apps:
              % if USE_NEW_EDITOR.get():
-             <li><a href="${ url('notebook:editor') }?type=hive"><svg class="svg-app-icon"><use xlink:href="#hi-hive"></use></svg> ${_('Hive')}</a></li>
+             <li><a href="${ url('notebook:editor') }?type=hive"><svg class="svg-app-icon"><use href="#hi-hive"></use></svg> ${_('Hive')}</a></li>
              % else:
-             <li><a href="/${apps['beeswax'].display_name}"><svg class="svg-app-icon"><use xlink:href="#hi-hive"></use></svg> ${_('Hive')}</a></li>
+             <li><a href="/${apps['beeswax'].display_name}"><svg class="svg-app-icon"><use href="#hi-hive"></use></svg> ${_('Hive')}</a></li>
              % endif
            % elif 'impala' in apps:
              % if USE_NEW_EDITOR.get(): ## impala requires beeswax anyway
-             <li><a href="${ url('notebook:editor') }?type=impala"><svg class="svg-app-icon"><use xlink:href="#hi-impala"></use></svg> ${_('Impala')}</a></li>
+             <li><a href="${ url('notebook:editor') }?type=impala"><svg class="svg-app-icon"><use href="#hi-impala"></use></svg> ${_('Impala')}</a></li>
              % else:
-             <li><a href="/${apps['impala'].display_name}"><svg class="svg-app-icon"><use xlink:href="#hi-impala"></use></svg> ${_('Impala')}</a></li>
+             <li><a href="/${apps['impala'].display_name}"><svg class="svg-app-icon"><use href="#hi-impala"></use></svg> ${_('Impala')}</a></li>
              % endif
            % else:
            <li><a href="/${apps[query_apps[0]].display_name}"><i class="fa fa-terminal hideMoreThan950"></i><span class="hide950">${apps[query_apps[0]].nice_name}</span></a></li>

+ 3 - 3
desktop/core/src/desktop/templates/document_browser.mako

@@ -85,7 +85,7 @@ else:
                 <!-- ko if: app === 'documents' -->
                 <div class="inline">
                   <span class="dropdown">
-                    <a class="btn" title="${_('New document')}" data-toggle="dropdown" data-bind="tooltip: { placement: 'bottom', delay: 750 }, css: { 'disabled': isTrash() || isTrashed() || ! canModify() }" href="javascript:void(0);" style="height: 20px"><svg class="hi"><use xlink:href="#hi-file"></use><use xlink:href="#hi-plus-addon"></use></svg></a>
+                    <a class="btn" title="${_('New document')}" data-toggle="dropdown" data-bind="tooltip: { placement: 'bottom', delay: 750 }, css: { 'disabled': isTrash() || isTrashed() || ! canModify() }" href="javascript:void(0);" style="height: 20px"><svg class="hi"><use href="#hi-file"></use><use href="#hi-plus-addon"></use></svg></a>
                     <ul class="dropdown-menu less-padding document-types" style="margin-top:10px; width: 175px;" role="menu">
                       % if 'beeswax' in apps:
                         <li>
@@ -156,7 +156,7 @@ else:
                       % endif
                       <li class="divider"></li>
                       <li data-bind="css: { 'disabled': isTrash() || isTrashed() || !canModify() }">
-                        <a href="javascript:void(0);" data-bind="click: function () {  huePubSub.publish('show.create.directory.modal', $data); }"><svg class="hi"><use xlink:href="#hi-folder"></use><use xlink:href="#hi-plus-addon"></use></svg> ${_('New folder')}</a>
+                        <a href="javascript:void(0);" data-bind="click: function () {  huePubSub.publish('show.create.directory.modal', $data); }"><svg class="hi"><use href="#hi-folder"></use><use href="#hi-plus-addon"></use></svg> ${_('New folder')}</a>
                       </li>
                     </ul>
                   </span>
@@ -226,7 +226,7 @@ else:
               <ul class="nav">
                 <li class="app-header">
                   <a href="/hue/useradmin">
-                    <svg class="hi"><use xlink:href="#hi-documents"></use></svg>
+                    <svg class="hi"><use href="#hi-documents"></use></svg>
                     <!-- ko component: { name: 'hue-favorite-app', params: { app: 'home' }} --><!-- /ko -->
                   </a>
                 </li>

File diff ditekan karena terlalu besar
+ 2 - 2
desktop/core/src/desktop/templates/hue_icons.mako


+ 1 - 1
desktop/core/src/desktop/templates/login.mako

@@ -43,7 +43,7 @@ ${ commonheader(_("Welcome to Hue"), "login", user, request, "50px", True, True)
 
       <div class="logo">
         <a href="https://gethue.com">
-          <svg style="height: 80px; width: 200px;"><use xlink:href="#hi-logo"></use></svg>
+          <svg style="height: 80px; width: 200px;"><use href="#hi-logo"></use></svg>
         </a>
       </div>
 

+ 1 - 1
desktop/libs/dashboard/src/dashboard/templates/common_search.mako

@@ -203,7 +203,7 @@ else:
           </li>
           <li>
             <a href="javascript:void(0);" data-bind="publish: { 'assist.show.documents': 'search-dashboard' }">
-              <svg class="hi hi-fw hi-bigger"><use xlink:href="#hi-documents"></use></svg> ${ _('Dashboards') }
+              <svg class="hi hi-fw hi-bigger"><use href="#hi-documents"></use></svg> ${ _('Dashboards') }
             </a>
           </li>
           <li data-bind="visible: columns().length != 0" class="divider"></li>

+ 1 - 1
desktop/libs/notebook/src/notebook/templates/editor2.mako

@@ -132,7 +132,7 @@ There is no bridge to KO for components using this integration. Example using in
         </li>
         <li>
           <a data-hue-analytics="editor:queries-button-click" href="javascript:void(0)" data-bind="publish: { 'assist.show.documents': editorMode() ? 'query-' + editorType() : editorType() }">
-            <svg class="hi hi-fw hi-bigger"><use xlink:href="#hi-documents"></use></svg> <span data-bind="text: editorMode() ? '${ _ko('Queries') }' : '${ _ko('Notebooks') }'"></span>
+            <svg class="hi hi-fw hi-bigger"><use href="#hi-documents"></use></svg> <span data-bind="text: editorMode() ? '${ _ko('Queries') }' : '${ _ko('Notebooks') }'"></span>
           </a>
         </li>
         <li>

+ 1 - 1
desktop/libs/notebook/src/notebook/templates/editor_components.mako

@@ -262,7 +262,7 @@ ${ sqlSyntaxDropdown.sqlSyntaxDropdown() }
         </li>
         <li>
           <a href="javascript:void(0)" data-bind="publish: { 'assist.show.documents': editorMode() ? 'query-' + editorType() : editorType() }">
-            <svg class="hi hi-fw hi-bigger"><use xlink:href="#hi-documents"></use></svg> <span data-bind="text: editorMode() ? '${ _ko('Queries') }' : '${ _ko('Notebooks') }'"></span>
+            <svg class="hi hi-fw hi-bigger"><use href="#hi-documents"></use></svg> <span data-bind="text: editorMode() ? '${ _ko('Queries') }' : '${ _ko('Notebooks') }'"></span>
           </a>
         </li>
         <li class="divider"></li>

Beberapa file tidak ditampilkan karena terlalu banyak file yang berubah dalam diff ini