From 4e00fbbd7f676e7659962fcb937b069d04c82b4a Mon Sep 17 00:00:00 2001 From: Ashley Harrison Date: Tue, 10 Jan 2023 10:29:07 +0000 Subject: [PATCH] Navigation: Allow overriding icons in nav settings (#61160) expose k6 icon, allow overriding icon in nav settings, override connections + k6 --- packages/grafana-data/src/types/icon.ts | 1 + .../src/components/Icon/cached.json | 1 + .../src/components/Icon/iconBundle.ts | 338 +++++++++--------- pkg/services/navtree/navtreeimpl/applinks.go | 7 +- pkg/services/navtree/navtreeimpl/navtree.go | 1 + public/img/icons/unicons/k6.svg | 5 + 6 files changed, 183 insertions(+), 170 deletions(-) create mode 100644 public/img/icons/unicons/k6.svg diff --git a/packages/grafana-data/src/types/icon.ts b/packages/grafana-data/src/types/icon.ts index 3bae630b1b3..c58967fa1dc 100644 --- a/packages/grafana-data/src/types/icon.ts +++ b/packages/grafana-data/src/types/icon.ts @@ -127,6 +127,7 @@ export const availableIconsIndex = { import: true, info: true, 'info-circle': true, + k6: true, 'key-skeleton-alt': true, keyboard: true, 'layer-group': true, diff --git a/packages/grafana-ui/src/components/Icon/cached.json b/packages/grafana-ui/src/components/Icon/cached.json index 51a313cf3f8..401d8c5f8b6 100644 --- a/packages/grafana-ui/src/components/Icon/cached.json +++ b/packages/grafana-ui/src/components/Icon/cached.json @@ -73,6 +73,7 @@ "unicons/import", "unicons/info", "unicons/info-circle", + "unicons/k6", "unicons/key-skeleton-alt", "unicons/keyboard", "unicons/link", diff --git a/packages/grafana-ui/src/components/Icon/iconBundle.ts b/packages/grafana-ui/src/components/Icon/iconBundle.ts index 269eb2ffd72..27d94baa194 100644 --- a/packages/grafana-ui/src/components/Icon/iconBundle.ts +++ b/packages/grafana-ui/src/components/Icon/iconBundle.ts @@ -81,90 +81,91 @@ import u1070 from '../../../../../public/img/icons/unicons/home-alt.svg'; import u1071 from '../../../../../public/img/icons/unicons/import.svg'; import u1072 from '../../../../../public/img/icons/unicons/info.svg'; import u1073 from '../../../../../public/img/icons/unicons/info-circle.svg'; -import u1074 from '../../../../../public/img/icons/unicons/key-skeleton-alt.svg'; -import u1075 from '../../../../../public/img/icons/unicons/keyboard.svg'; -import u1076 from '../../../../../public/img/icons/unicons/link.svg'; -import u1077 from '../../../../../public/img/icons/unicons/list-ul.svg'; -import u1078 from '../../../../../public/img/icons/unicons/lock.svg'; -import u1079 from '../../../../../public/img/icons/unicons/minus.svg'; -import u1080 from '../../../../../public/img/icons/unicons/minus-circle.svg'; -import u1081 from '../../../../../public/img/icons/unicons/mobile-android.svg'; -import u1082 from '../../../../../public/img/icons/unicons/monitor.svg'; -import u1083 from '../../../../../public/img/icons/unicons/pause.svg'; -import u1084 from '../../../../../public/img/icons/unicons/pen.svg'; -import u1085 from '../../../../../public/img/icons/unicons/play.svg'; -import u1086 from '../../../../../public/img/icons/unicons/plug.svg'; -import u1087 from '../../../../../public/img/icons/unicons/plus.svg'; -import u1088 from '../../../../../public/img/icons/unicons/plus-circle.svg'; -import u1089 from '../../../../../public/img/icons/unicons/power.svg'; -import u1090 from '../../../../../public/img/icons/unicons/presentation-play.svg'; -import u1091 from '../../../../../public/img/icons/unicons/process.svg'; -import u1092 from '../../../../../public/img/icons/unicons/question-circle.svg'; -import u1093 from '../../../../../public/img/icons/unicons/repeat.svg'; -import u1094 from '../../../../../public/img/icons/unicons/rocket.svg'; -import u1095 from '../../../../../public/img/icons/unicons/save.svg'; -import u1096 from '../../../../../public/img/icons/unicons/search.svg'; -import u1097 from '../../../../../public/img/icons/unicons/search-minus.svg'; -import u1098 from '../../../../../public/img/icons/unicons/search-plus.svg'; -import u1099 from '../../../../../public/img/icons/unicons/share-alt.svg'; -import u1100 from '../../../../../public/img/icons/unicons/shield.svg'; -import u1101 from '../../../../../public/img/icons/unicons/signal.svg'; -import u1102 from '../../../../../public/img/icons/unicons/signin.svg'; -import u1103 from '../../../../../public/img/icons/unicons/signout.svg'; -import u1104 from '../../../../../public/img/icons/unicons/sitemap.svg'; -import u1105 from '../../../../../public/img/icons/unicons/slack.svg'; -import u1106 from '../../../../../public/img/icons/unicons/sliders-v-alt.svg'; -import u1107 from '../../../../../public/img/icons/unicons/sort-amount-down.svg'; -import u1108 from '../../../../../public/img/icons/unicons/sort-amount-up.svg'; -import u1109 from '../../../../../public/img/icons/unicons/square-shape.svg'; -import u1110 from '../../../../../public/img/icons/unicons/star.svg'; -import u1111 from '../../../../../public/img/icons/unicons/step-backward.svg'; -import u1112 from '../../../../../public/img/icons/unicons/sync.svg'; -import u1113 from '../../../../../public/img/icons/unicons/table.svg'; -import u1114 from '../../../../../public/img/icons/unicons/tag-alt.svg'; -import u1115 from '../../../../../public/img/icons/unicons/times.svg'; -import u1116 from '../../../../../public/img/icons/unicons/trash-alt.svg'; -import u1117 from '../../../../../public/img/icons/unicons/unlock.svg'; -import u1118 from '../../../../../public/img/icons/unicons/upload.svg'; -import u1119 from '../../../../../public/img/icons/unicons/user.svg'; -import u1120 from '../../../../../public/img/icons/unicons/users-alt.svg'; -import u1121 from '../../../../../public/img/icons/unicons/wrap-text.svg'; -import u1122 from '../../../../../public/img/icons/unicons/cloud-upload.svg'; -import u1123 from '../../../../../public/img/icons/unicons/credit-card.svg'; -import u1124 from '../../../../../public/img/icons/unicons/file-copy-alt.svg'; -import u1125 from '../../../../../public/img/icons/unicons/fire.svg'; -import u1126 from '../../../../../public/img/icons/unicons/hourglass.svg'; -import u1127 from '../../../../../public/img/icons/unicons/layer-group.svg'; -import u1128 from '../../../../../public/img/icons/unicons/line-alt.svg'; -import u1129 from '../../../../../public/img/icons/unicons/list-ui-alt.svg'; -import u1130 from '../../../../../public/img/icons/unicons/message.svg'; -import u1131 from '../../../../../public/img/icons/unicons/palette.svg'; -import u1132 from '../../../../../public/img/icons/unicons/percentage.svg'; -import u1133 from '../../../../../public/img/icons/unicons/shield-exclamation.svg'; -import u1134 from '../../../../../public/img/icons/unicons/plus-square.svg'; -import u1135 from '../../../../../public/img/icons/unicons/x.svg'; -import u1136 from '../../../../../public/img/icons/unicons/capture.svg'; -import u1137 from '../../../../../public/img/icons/custom/gf-grid.svg'; -import u1138 from '../../../../../public/img/icons/custom/gf-landscape.svg'; -import u1139 from '../../../../../public/img/icons/custom/gf-layout-simple.svg'; -import u1140 from '../../../../../public/img/icons/custom/gf-portrait.svg'; -import u1141 from '../../../../../public/img/icons/custom/gf-bar-alignment-after.svg'; -import u1142 from '../../../../../public/img/icons/custom/gf-bar-alignment-before.svg'; -import u1143 from '../../../../../public/img/icons/custom/gf-bar-alignment-center.svg'; -import u1144 from '../../../../../public/img/icons/custom/gf-interpolation-linear.svg'; -import u1145 from '../../../../../public/img/icons/custom/gf-interpolation-smooth.svg'; -import u1146 from '../../../../../public/img/icons/custom/gf-interpolation-step-after.svg'; -import u1147 from '../../../../../public/img/icons/custom/gf-interpolation-step-before.svg'; -import u1148 from '../../../../../public/img/icons/custom/gf-logs.svg'; -import u1149 from '../../../../../public/img/icons/custom/gf-movepane-left.svg'; -import u1150 from '../../../../../public/img/icons/custom/gf-movepane-right.svg'; -import u1151 from '../../../../../public/img/icons/mono/favorite.svg'; -import u1152 from '../../../../../public/img/icons/mono/grafana.svg'; -import u1153 from '../../../../../public/img/icons/mono/heart.svg'; -import u1154 from '../../../../../public/img/icons/mono/heart-break.svg'; -import u1155 from '../../../../../public/img/icons/mono/panel-add.svg'; -import u1156 from '../../../../../public/img/icons/mono/library-panel.svg'; -import u1157 from '../../../../../public/img/icons/unicons/record-audio.svg'; +import u1074 from '../../../../../public/img/icons/unicons/k6.svg'; +import u1075 from '../../../../../public/img/icons/unicons/key-skeleton-alt.svg'; +import u1076 from '../../../../../public/img/icons/unicons/keyboard.svg'; +import u1077 from '../../../../../public/img/icons/unicons/link.svg'; +import u1078 from '../../../../../public/img/icons/unicons/list-ul.svg'; +import u1079 from '../../../../../public/img/icons/unicons/lock.svg'; +import u1080 from '../../../../../public/img/icons/unicons/minus.svg'; +import u1081 from '../../../../../public/img/icons/unicons/minus-circle.svg'; +import u1082 from '../../../../../public/img/icons/unicons/mobile-android.svg'; +import u1083 from '../../../../../public/img/icons/unicons/monitor.svg'; +import u1084 from '../../../../../public/img/icons/unicons/pause.svg'; +import u1085 from '../../../../../public/img/icons/unicons/pen.svg'; +import u1086 from '../../../../../public/img/icons/unicons/play.svg'; +import u1087 from '../../../../../public/img/icons/unicons/plug.svg'; +import u1088 from '../../../../../public/img/icons/unicons/plus.svg'; +import u1089 from '../../../../../public/img/icons/unicons/plus-circle.svg'; +import u1090 from '../../../../../public/img/icons/unicons/power.svg'; +import u1091 from '../../../../../public/img/icons/unicons/presentation-play.svg'; +import u1092 from '../../../../../public/img/icons/unicons/process.svg'; +import u1093 from '../../../../../public/img/icons/unicons/question-circle.svg'; +import u1094 from '../../../../../public/img/icons/unicons/repeat.svg'; +import u1095 from '../../../../../public/img/icons/unicons/rocket.svg'; +import u1096 from '../../../../../public/img/icons/unicons/save.svg'; +import u1097 from '../../../../../public/img/icons/unicons/search.svg'; +import u1098 from '../../../../../public/img/icons/unicons/search-minus.svg'; +import u1099 from '../../../../../public/img/icons/unicons/search-plus.svg'; +import u1100 from '../../../../../public/img/icons/unicons/share-alt.svg'; +import u1101 from '../../../../../public/img/icons/unicons/shield.svg'; +import u1102 from '../../../../../public/img/icons/unicons/signal.svg'; +import u1103 from '../../../../../public/img/icons/unicons/signin.svg'; +import u1104 from '../../../../../public/img/icons/unicons/signout.svg'; +import u1105 from '../../../../../public/img/icons/unicons/sitemap.svg'; +import u1106 from '../../../../../public/img/icons/unicons/slack.svg'; +import u1107 from '../../../../../public/img/icons/unicons/sliders-v-alt.svg'; +import u1108 from '../../../../../public/img/icons/unicons/sort-amount-down.svg'; +import u1109 from '../../../../../public/img/icons/unicons/sort-amount-up.svg'; +import u1110 from '../../../../../public/img/icons/unicons/square-shape.svg'; +import u1111 from '../../../../../public/img/icons/unicons/star.svg'; +import u1112 from '../../../../../public/img/icons/unicons/step-backward.svg'; +import u1113 from '../../../../../public/img/icons/unicons/sync.svg'; +import u1114 from '../../../../../public/img/icons/unicons/table.svg'; +import u1115 from '../../../../../public/img/icons/unicons/tag-alt.svg'; +import u1116 from '../../../../../public/img/icons/unicons/times.svg'; +import u1117 from '../../../../../public/img/icons/unicons/trash-alt.svg'; +import u1118 from '../../../../../public/img/icons/unicons/unlock.svg'; +import u1119 from '../../../../../public/img/icons/unicons/upload.svg'; +import u1120 from '../../../../../public/img/icons/unicons/user.svg'; +import u1121 from '../../../../../public/img/icons/unicons/users-alt.svg'; +import u1122 from '../../../../../public/img/icons/unicons/wrap-text.svg'; +import u1123 from '../../../../../public/img/icons/unicons/cloud-upload.svg'; +import u1124 from '../../../../../public/img/icons/unicons/credit-card.svg'; +import u1125 from '../../../../../public/img/icons/unicons/file-copy-alt.svg'; +import u1126 from '../../../../../public/img/icons/unicons/fire.svg'; +import u1127 from '../../../../../public/img/icons/unicons/hourglass.svg'; +import u1128 from '../../../../../public/img/icons/unicons/layer-group.svg'; +import u1129 from '../../../../../public/img/icons/unicons/line-alt.svg'; +import u1130 from '../../../../../public/img/icons/unicons/list-ui-alt.svg'; +import u1131 from '../../../../../public/img/icons/unicons/message.svg'; +import u1132 from '../../../../../public/img/icons/unicons/palette.svg'; +import u1133 from '../../../../../public/img/icons/unicons/percentage.svg'; +import u1134 from '../../../../../public/img/icons/unicons/shield-exclamation.svg'; +import u1135 from '../../../../../public/img/icons/unicons/plus-square.svg'; +import u1136 from '../../../../../public/img/icons/unicons/x.svg'; +import u1137 from '../../../../../public/img/icons/unicons/capture.svg'; +import u1138 from '../../../../../public/img/icons/custom/gf-grid.svg'; +import u1139 from '../../../../../public/img/icons/custom/gf-landscape.svg'; +import u1140 from '../../../../../public/img/icons/custom/gf-layout-simple.svg'; +import u1141 from '../../../../../public/img/icons/custom/gf-portrait.svg'; +import u1142 from '../../../../../public/img/icons/custom/gf-bar-alignment-after.svg'; +import u1143 from '../../../../../public/img/icons/custom/gf-bar-alignment-before.svg'; +import u1144 from '../../../../../public/img/icons/custom/gf-bar-alignment-center.svg'; +import u1145 from '../../../../../public/img/icons/custom/gf-interpolation-linear.svg'; +import u1146 from '../../../../../public/img/icons/custom/gf-interpolation-smooth.svg'; +import u1147 from '../../../../../public/img/icons/custom/gf-interpolation-step-after.svg'; +import u1148 from '../../../../../public/img/icons/custom/gf-interpolation-step-before.svg'; +import u1149 from '../../../../../public/img/icons/custom/gf-logs.svg'; +import u1150 from '../../../../../public/img/icons/custom/gf-movepane-left.svg'; +import u1151 from '../../../../../public/img/icons/custom/gf-movepane-right.svg'; +import u1152 from '../../../../../public/img/icons/mono/favorite.svg'; +import u1153 from '../../../../../public/img/icons/mono/grafana.svg'; +import u1154 from '../../../../../public/img/icons/mono/heart.svg'; +import u1155 from '../../../../../public/img/icons/mono/heart-break.svg'; +import u1156 from '../../../../../public/img/icons/mono/panel-add.svg'; +import u1157 from '../../../../../public/img/icons/mono/library-panel.svg'; +import u1158 from '../../../../../public/img/icons/unicons/record-audio.svg'; // do not edit this list directly // the list of icons live here: @grafana/ui/components/Icon/cached.json @@ -261,90 +262,91 @@ export function initIconCache() { cacheItem(u1071, 'unicons/import.svg'); cacheItem(u1072, 'unicons/info.svg'); cacheItem(u1073, 'unicons/info-circle.svg'); - cacheItem(u1074, 'unicons/key-skeleton-alt.svg'); - cacheItem(u1075, 'unicons/keyboard.svg'); - cacheItem(u1076, 'unicons/link.svg'); - cacheItem(u1077, 'unicons/list-ul.svg'); - cacheItem(u1078, 'unicons/lock.svg'); - cacheItem(u1079, 'unicons/minus.svg'); - cacheItem(u1080, 'unicons/minus-circle.svg'); - cacheItem(u1081, 'unicons/mobile-android.svg'); - cacheItem(u1082, 'unicons/monitor.svg'); - cacheItem(u1083, 'unicons/pause.svg'); - cacheItem(u1084, 'unicons/pen.svg'); - cacheItem(u1085, 'unicons/play.svg'); - cacheItem(u1086, 'unicons/plug.svg'); - cacheItem(u1087, 'unicons/plus.svg'); - cacheItem(u1088, 'unicons/plus-circle.svg'); - cacheItem(u1089, 'unicons/power.svg'); - cacheItem(u1090, 'unicons/presentation-play.svg'); - cacheItem(u1091, 'unicons/process.svg'); - cacheItem(u1092, 'unicons/question-circle.svg'); - cacheItem(u1093, 'unicons/repeat.svg'); - cacheItem(u1094, 'unicons/rocket.svg'); - cacheItem(u1095, 'unicons/save.svg'); - cacheItem(u1096, 'unicons/search.svg'); - cacheItem(u1097, 'unicons/search-minus.svg'); - cacheItem(u1098, 'unicons/search-plus.svg'); - cacheItem(u1099, 'unicons/share-alt.svg'); - cacheItem(u1100, 'unicons/shield.svg'); - cacheItem(u1101, 'unicons/signal.svg'); - cacheItem(u1102, 'unicons/signin.svg'); - cacheItem(u1103, 'unicons/signout.svg'); - cacheItem(u1104, 'unicons/sitemap.svg'); - cacheItem(u1105, 'unicons/slack.svg'); - cacheItem(u1106, 'unicons/sliders-v-alt.svg'); - cacheItem(u1107, 'unicons/sort-amount-down.svg'); - cacheItem(u1108, 'unicons/sort-amount-up.svg'); - cacheItem(u1109, 'unicons/square-shape.svg'); - cacheItem(u1110, 'unicons/star.svg'); - cacheItem(u1111, 'unicons/step-backward.svg'); - cacheItem(u1112, 'unicons/sync.svg'); - cacheItem(u1113, 'unicons/table.svg'); - cacheItem(u1114, 'unicons/tag-alt.svg'); - cacheItem(u1115, 'unicons/times.svg'); - cacheItem(u1116, 'unicons/trash-alt.svg'); - cacheItem(u1117, 'unicons/unlock.svg'); - cacheItem(u1118, 'unicons/upload.svg'); - cacheItem(u1119, 'unicons/user.svg'); - cacheItem(u1120, 'unicons/users-alt.svg'); - cacheItem(u1121, 'unicons/wrap-text.svg'); - cacheItem(u1122, 'unicons/cloud-upload.svg'); - cacheItem(u1123, 'unicons/credit-card.svg'); - cacheItem(u1124, 'unicons/file-copy-alt.svg'); - cacheItem(u1125, 'unicons/fire.svg'); - cacheItem(u1126, 'unicons/hourglass.svg'); - cacheItem(u1127, 'unicons/layer-group.svg'); - cacheItem(u1128, 'unicons/line-alt.svg'); - cacheItem(u1129, 'unicons/list-ui-alt.svg'); - cacheItem(u1130, 'unicons/message.svg'); - cacheItem(u1131, 'unicons/palette.svg'); - cacheItem(u1132, 'unicons/percentage.svg'); - cacheItem(u1133, 'unicons/shield-exclamation.svg'); - cacheItem(u1134, 'unicons/plus-square.svg'); - cacheItem(u1135, 'unicons/x.svg'); - cacheItem(u1136, 'unicons/capture.svg'); - cacheItem(u1137, 'custom/gf-grid.svg'); - cacheItem(u1138, 'custom/gf-landscape.svg'); - cacheItem(u1139, 'custom/gf-layout-simple.svg'); - cacheItem(u1140, 'custom/gf-portrait.svg'); - cacheItem(u1141, 'custom/gf-bar-alignment-after.svg'); - cacheItem(u1142, 'custom/gf-bar-alignment-before.svg'); - cacheItem(u1143, 'custom/gf-bar-alignment-center.svg'); - cacheItem(u1144, 'custom/gf-interpolation-linear.svg'); - cacheItem(u1145, 'custom/gf-interpolation-smooth.svg'); - cacheItem(u1146, 'custom/gf-interpolation-step-after.svg'); - cacheItem(u1147, 'custom/gf-interpolation-step-before.svg'); - cacheItem(u1148, 'custom/gf-logs.svg'); - cacheItem(u1149, 'custom/gf-movepane-left.svg'); - cacheItem(u1150, 'custom/gf-movepane-right.svg'); - cacheItem(u1151, 'mono/favorite.svg'); - cacheItem(u1152, 'mono/grafana.svg'); - cacheItem(u1153, 'mono/heart.svg'); - cacheItem(u1154, 'mono/heart-break.svg'); - cacheItem(u1155, 'mono/panel-add.svg'); - cacheItem(u1156, 'mono/library-panel.svg'); - cacheItem(u1157, 'unicons/record-audio.svg'); + cacheItem(u1074, 'unicons/k6.svg'); + cacheItem(u1075, 'unicons/key-skeleton-alt.svg'); + cacheItem(u1076, 'unicons/keyboard.svg'); + cacheItem(u1077, 'unicons/link.svg'); + cacheItem(u1078, 'unicons/list-ul.svg'); + cacheItem(u1079, 'unicons/lock.svg'); + cacheItem(u1080, 'unicons/minus.svg'); + cacheItem(u1081, 'unicons/minus-circle.svg'); + cacheItem(u1082, 'unicons/mobile-android.svg'); + cacheItem(u1083, 'unicons/monitor.svg'); + cacheItem(u1084, 'unicons/pause.svg'); + cacheItem(u1085, 'unicons/pen.svg'); + cacheItem(u1086, 'unicons/play.svg'); + cacheItem(u1087, 'unicons/plug.svg'); + cacheItem(u1088, 'unicons/plus.svg'); + cacheItem(u1089, 'unicons/plus-circle.svg'); + cacheItem(u1090, 'unicons/power.svg'); + cacheItem(u1091, 'unicons/presentation-play.svg'); + cacheItem(u1092, 'unicons/process.svg'); + cacheItem(u1093, 'unicons/question-circle.svg'); + cacheItem(u1094, 'unicons/repeat.svg'); + cacheItem(u1095, 'unicons/rocket.svg'); + cacheItem(u1096, 'unicons/save.svg'); + cacheItem(u1097, 'unicons/search.svg'); + cacheItem(u1098, 'unicons/search-minus.svg'); + cacheItem(u1099, 'unicons/search-plus.svg'); + cacheItem(u1100, 'unicons/share-alt.svg'); + cacheItem(u1101, 'unicons/shield.svg'); + cacheItem(u1102, 'unicons/signal.svg'); + cacheItem(u1103, 'unicons/signin.svg'); + cacheItem(u1104, 'unicons/signout.svg'); + cacheItem(u1105, 'unicons/sitemap.svg'); + cacheItem(u1106, 'unicons/slack.svg'); + cacheItem(u1107, 'unicons/sliders-v-alt.svg'); + cacheItem(u1108, 'unicons/sort-amount-down.svg'); + cacheItem(u1109, 'unicons/sort-amount-up.svg'); + cacheItem(u1110, 'unicons/square-shape.svg'); + cacheItem(u1111, 'unicons/star.svg'); + cacheItem(u1112, 'unicons/step-backward.svg'); + cacheItem(u1113, 'unicons/sync.svg'); + cacheItem(u1114, 'unicons/table.svg'); + cacheItem(u1115, 'unicons/tag-alt.svg'); + cacheItem(u1116, 'unicons/times.svg'); + cacheItem(u1117, 'unicons/trash-alt.svg'); + cacheItem(u1118, 'unicons/unlock.svg'); + cacheItem(u1119, 'unicons/upload.svg'); + cacheItem(u1120, 'unicons/user.svg'); + cacheItem(u1121, 'unicons/users-alt.svg'); + cacheItem(u1122, 'unicons/wrap-text.svg'); + cacheItem(u1123, 'unicons/cloud-upload.svg'); + cacheItem(u1124, 'unicons/credit-card.svg'); + cacheItem(u1125, 'unicons/file-copy-alt.svg'); + cacheItem(u1126, 'unicons/fire.svg'); + cacheItem(u1127, 'unicons/hourglass.svg'); + cacheItem(u1128, 'unicons/layer-group.svg'); + cacheItem(u1129, 'unicons/line-alt.svg'); + cacheItem(u1130, 'unicons/list-ui-alt.svg'); + cacheItem(u1131, 'unicons/message.svg'); + cacheItem(u1132, 'unicons/palette.svg'); + cacheItem(u1133, 'unicons/percentage.svg'); + cacheItem(u1134, 'unicons/shield-exclamation.svg'); + cacheItem(u1135, 'unicons/plus-square.svg'); + cacheItem(u1136, 'unicons/x.svg'); + cacheItem(u1137, 'unicons/capture.svg'); + cacheItem(u1138, 'custom/gf-grid.svg'); + cacheItem(u1139, 'custom/gf-landscape.svg'); + cacheItem(u1140, 'custom/gf-layout-simple.svg'); + cacheItem(u1141, 'custom/gf-portrait.svg'); + cacheItem(u1142, 'custom/gf-bar-alignment-after.svg'); + cacheItem(u1143, 'custom/gf-bar-alignment-before.svg'); + cacheItem(u1144, 'custom/gf-bar-alignment-center.svg'); + cacheItem(u1145, 'custom/gf-interpolation-linear.svg'); + cacheItem(u1146, 'custom/gf-interpolation-smooth.svg'); + cacheItem(u1147, 'custom/gf-interpolation-step-after.svg'); + cacheItem(u1148, 'custom/gf-interpolation-step-before.svg'); + cacheItem(u1149, 'custom/gf-logs.svg'); + cacheItem(u1150, 'custom/gf-movepane-left.svg'); + cacheItem(u1151, 'custom/gf-movepane-right.svg'); + cacheItem(u1152, 'mono/favorite.svg'); + cacheItem(u1153, 'mono/grafana.svg'); + cacheItem(u1154, 'mono/heart.svg'); + cacheItem(u1155, 'mono/heart-break.svg'); + cacheItem(u1156, 'mono/panel-add.svg'); + cacheItem(u1157, 'mono/library-panel.svg'); + cacheItem(u1158, 'unicons/record-audio.svg'); // do not edit this list directly // the list of icons live here: @grafana/ui/components/Icon/cached.json } diff --git a/pkg/services/navtree/navtreeimpl/applinks.go b/pkg/services/navtree/navtreeimpl/applinks.go index 1f63cdde59f..7d736fcc4d7 100644 --- a/pkg/services/navtree/navtreeimpl/applinks.go +++ b/pkg/services/navtree/navtreeimpl/applinks.go @@ -187,6 +187,9 @@ func (s *ServiceImpl) addPluginToSection(c *models.ReqContext, treeRoot *navtree if len(navConfig.Text) > 0 { appLink.Text = navConfig.Text } + if len(navConfig.Icon) > 0 { + appLink.Icon = navConfig.Icon + } } if sectionID == navtree.NavIDRoot { @@ -262,8 +265,8 @@ func (s *ServiceImpl) readNavigationSettings() { "grafana-incident-app": {SectionID: navtree.NavIDAlertsAndIncidents, SortWeight: 2, Text: "Incident"}, "grafana-ml-app": {SectionID: navtree.NavIDAlertsAndIncidents, SortWeight: 3, Text: "Machine Learning"}, "grafana-cloud-link-app": {SectionID: navtree.NavIDCfg}, - "grafana-easystart-app": {SectionID: navtree.NavIDRoot, SortWeight: navtree.WeightSavedItems + 1, Text: "Connections"}, - "grafana-k6-app": {SectionID: navtree.NavIDRoot, SortWeight: navtree.WeightAlertsAndIncidents + 1, Text: "Performance testing"}, + "grafana-easystart-app": {SectionID: navtree.NavIDRoot, SortWeight: navtree.WeightSavedItems + 1, Text: "Connections", Icon: "adjust-circle"}, + "grafana-k6-app": {SectionID: navtree.NavIDRoot, SortWeight: navtree.WeightAlertsAndIncidents + 1, Text: "Performance testing", Icon: "k6"}, } s.navigationAppPathConfig = map[string]NavigationAppConfig{ diff --git a/pkg/services/navtree/navtreeimpl/navtree.go b/pkg/services/navtree/navtreeimpl/navtree.go index 73df6e82de1..d738b496ddd 100644 --- a/pkg/services/navtree/navtreeimpl/navtree.go +++ b/pkg/services/navtree/navtreeimpl/navtree.go @@ -46,6 +46,7 @@ type NavigationAppConfig struct { SectionID string SortWeight int64 Text string + Icon string } func ProvideService(cfg *setting.Cfg, accessControl ac.AccessControl, pluginStore plugins.Store, pluginSettings pluginsettings.Service, starService star.Service, features *featuremgmt.FeatureManager, dashboardService dashboards.DashboardService, accesscontrolService ac.Service, kvStore kvstore.KVStore, apiKeyService apikey.Service, queryLibraryService querylibrary.HTTPService) navtree.Service { diff --git a/public/img/icons/unicons/k6.svg b/public/img/icons/unicons/k6.svg new file mode 100644 index 00000000000..26107f6960d --- /dev/null +++ b/public/img/icons/unicons/k6.svg @@ -0,0 +1,5 @@ + + + + +