Skip to content

Commit

Permalink
[EPM] fix updates available filter (#64957)
Browse files Browse the repository at this point in the history
* fix filter

* remove unneeded installationVersion from package

* use filter instead of reduce

* fix type error
  • Loading branch information
neptunian committed May 1, 2020
1 parent 523926f commit 856a820
Show file tree
Hide file tree
Showing 6 changed files with 23 additions and 12 deletions.
1 change: 0 additions & 1 deletion x-pack/plugins/ingest_manager/common/types/models/epm.ts
Original file line number Diff line number Diff line change
Expand Up @@ -205,7 +205,6 @@ export interface RegistryVarsEntry {
interface PackageAdditions {
title: string;
latestVersion: string;
installedVersion?: string;
assets: AssetsGroupedByServiceByType;
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,12 @@ const Text = styled.span`
type HeaderProps = PackageInfo & { iconType?: IconType };

export function Header(props: HeaderProps) {
const { iconType, name, title, version, installedVersion, latestVersion } = props;
const { iconType, name, title, version, latestVersion } = props;

let installedVersion;
if ('savedObject' in props) {
installedVersion = props.savedObject.attributes.version;
}
const hasWriteCapabilites = useCapabilities().write;
const { toListView } = useLinks();
const ADD_DATASOURCE_URI = useLink(`${EPM_PATH}/${name}-${version}/add-datasource`);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,10 @@ export function Detail() {
const packageInfo = response.data?.response;
const title = packageInfo?.title;
const name = packageInfo?.name;
const installedVersion = packageInfo?.installedVersion;
let installedVersion;
if (packageInfo && 'savedObject' in packageInfo) {
installedVersion = packageInfo.savedObject.attributes.version;
}
const status: InstallStatus = packageInfo?.status as any;

// track install status state
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -67,29 +67,34 @@ export function EPMHomePage() {
function InstalledPackages() {
const { data: allPackages, isLoading: isLoadingPackages } = useGetPackages();
const [selectedCategory, setSelectedCategory] = useState('');
const packages =
allPackages && allPackages.response && selectedCategory === ''
? allPackages.response.filter(pkg => pkg.status === 'installed')
: [];

const title = i18n.translate('xpack.ingestManager.epmList.installedTitle', {
defaultMessage: 'Installed integrations',
});

const allInstalledPackages =
allPackages && allPackages.response
? allPackages.response.filter(pkg => pkg.status === 'installed')
: [];

const updatablePackages = allInstalledPackages.filter(
item => 'savedObject' in item && item.version > item.savedObject.attributes.version
);

const categories = [
{
id: '',
title: i18n.translate('xpack.ingestManager.epmList.allFilterLinkText', {
defaultMessage: 'All',
}),
count: packages.length,
count: allInstalledPackages.length,
},
{
id: 'updates_available',
title: i18n.translate('xpack.ingestManager.epmList.updatesAvailableFilterLinkText', {
defaultMessage: 'Updates available',
}),
count: 0, // TODO: Update with real count when available
count: updatablePackages.length,
},
];

Expand All @@ -106,7 +111,7 @@ function InstalledPackages() {
isLoading={isLoadingPackages}
controls={controls}
title={title}
list={packages}
list={selectedCategory === 'updates_available' ? updatablePackages : allInstalledPackages}
/>
);
}
Expand Down Expand Up @@ -134,7 +139,6 @@ function AvailablePackages() {
},
...(categoriesRes ? categoriesRes.response : []),
];

const controls = categories ? (
<CategoryFacets
isLoading={isLoadingCategories}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -90,4 +90,5 @@ export {
DetailViewPanelName,
InstallStatus,
InstallationStatus,
Installable,
} from '../../../../common';
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,6 @@ export function createInstallableFrom<T>(
? {
...from,
status: InstallationStatus.installed,
installedVersion: savedObject.attributes.version,
savedObject,
}
: {
Expand Down

0 comments on commit 856a820

Please sign in to comment.