Fix Helm chart version comparison (#174)

Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
This commit is contained in:
Lauri Nevala authored and GitHub committed 2020-03-30 17:21:10 +03:00
1 parent 96641307dd
commit f0dd4095ac
4 files changed
+9 -7

No files matched your search

@@ -3,6 +3,7 @@ import { autobind } from "../../utils";
import { HelmChart, helmChartsApi } from "../../api/endpoints/helm-charts.api";
import { ItemStore } from "../../item.store";
import flatten from "lodash/flatten"
import compareVersions from 'compare-versions';
export interface IChartVersion {
repo: string;
@@ -23,11 +24,7 @@ export class HelmChartStore extends ItemStore<HelmChart> {
protected sortVersions = (versions: IChartVersion[]) => {
return versions.sort((first, second) => {
const firstVersion = first.version.replace(/[^\d.]/g, "").split(".").map(Number);
const secondVersion = second.version.replace(/[^\d.]/g, "").split(".").map(Number);
return firstVersion.every((version, index) => {
return version > secondVersion[index];
}) ? -1 : 0;
return compareVersions(second.version, first.version)
});
};
@@ -106,8 +106,7 @@ export class UpgradeChart extends React.Component<Props> {
themeName="outlined"
value={version}
options={versions}
formatOptionLabel={this.formatVersionLabel}
isOptionDisabled={({ value }: SelectOption<IChartVersion>) => value.version === currentVersion}
formatOptionLabel={this.formatVersionLabel}
onChange={({ value }: SelectOption) => this.version = value}
/>
</div>