mirror of
https://github.com/komodorio/helm-dashboard.git
synced 2026-03-24 11:48:04 +00:00
Filter installed charts by namespace (#101)
* filter by namespace * exists * Some improvements, one thing resolved * cleanup * merge * allow filtering by name * filter by namespace * changes * change url parameter name * keep filtered namespaces when refreshing and combine inpt and namespace filtering * Refactoring * Cleanup * Forced NS handle * remove else Co-authored-by: Andrei Pohilko <andrei.pokhilko@gmail.com>
This commit is contained in:
@@ -6,19 +6,21 @@ function loadChartsList() {
|
||||
$.getJSON("/api/helm/charts").fail(function (xhr) {
|
||||
reportError("Failed to get list of charts", xhr)
|
||||
}).done(function (data) {
|
||||
chartsCards.empty()
|
||||
chartsCards.empty().hide()
|
||||
$("#installedList .header h2 span").text(data.length)
|
||||
data.forEach(function (elm) {
|
||||
let card = buildChartCard(elm);
|
||||
chartsCards.append(card)
|
||||
})
|
||||
|
||||
filterInstalledList(chartsCards.find(".row"))
|
||||
chartsCards.show()
|
||||
if (!data.length) {
|
||||
$("#installedList .no-charts").show()
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
function buildChartCard(elm) {
|
||||
const card = $(`<div class="row m-0 py-4 bg-white rounded-1 b-shadow border-4 border-start">
|
||||
<div class="col-4 rel-name"><span class="link">release-name</span><div></div></div>
|
||||
@@ -28,21 +30,21 @@ function buildChartCard(elm) {
|
||||
<div class="col-1 rel-ns text-nowrap"><span>default</span><div>Namespace</div></div>
|
||||
<div class="col-1 rel-date text-nowrap"><span>today</span><div>Updated</div></div>
|
||||
</div>`)
|
||||
|
||||
|
||||
const chartName = elm.chart.substring(0, elm.chart.lastIndexOf("-"))
|
||||
$.getJSON("/api/helm/repo/search?name=" + chartName).fail(function (xhr) {
|
||||
reportError("Failed to get repo name for charts", xhr)
|
||||
}).done(function (data) {
|
||||
if(data.length > 0) {
|
||||
if (data.length > 0) {
|
||||
$.getJSON("/api/helm/charts/show?name=" + data[0].name).fail(function (xhr) {
|
||||
reportError("Failed to get list of charts", xhr)
|
||||
}).done(function (data) {
|
||||
if(data) {
|
||||
var res = data[0]
|
||||
if(res.icon) {
|
||||
if (data) {
|
||||
const res = data[0];
|
||||
if (res.icon) {
|
||||
card.find(".rel-name").attr("style", "background-image: url(" + res.icon + ")")
|
||||
}
|
||||
if(res.description) {
|
||||
if (res.description) {
|
||||
card.find(".rel-name div").text(res.description)
|
||||
}
|
||||
}
|
||||
@@ -57,6 +59,10 @@ function buildChartCard(elm) {
|
||||
card.find(".rel-chart span").text(elm.chart)
|
||||
card.find(".rel-date span").text(getAge(elm))
|
||||
|
||||
card.data("namespace", elm.namespace)
|
||||
card.data("name", elm.name)
|
||||
card.data("chart", elm.chart)
|
||||
|
||||
statusStyle(elm.status, card, card.find(".rel-status span"))
|
||||
|
||||
card.find("a").attr("href", '#context=' + getHashParam('context') + '&namespace=' + elm.namespace + '&name=' + elm.name)
|
||||
@@ -74,3 +80,6 @@ function buildChartCard(elm) {
|
||||
return card;
|
||||
}
|
||||
|
||||
$("#installedSearch").keyup(function () {
|
||||
filterInstalledList($("#installedList .body .row"))
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user