1
0
mirror of https://github.com/lensapp/lens.git synced 2025-05-20 05:10:56 +00:00
lens/src/renderer/components/+helm-releases/release-details/release.injectable.ts
Sebastian Malton 76f48df56b
Fix rerendering of KubeObject views every 30s (#4801)
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
2022-02-03 09:11:28 -05:00

31 lines
949 B
TypeScript

/**
* Copyright (c) OpenLens Authors. All rights reserved.
* Licensed under MIT License. See LICENSE in root directory for more information.
*/
import { getInjectable, lifecycleEnum } from "@ogre-tools/injectable";
import { matches } from "lodash/fp";
import releasesInjectable from "../releases.injectable";
import releaseRouteParametersInjectable from "./release-route-parameters.injectable";
import { computed } from "mobx";
const releaseInjectable = getInjectable({
instantiate: (di) => {
const releases = di.inject(releasesInjectable);
const releaseRouteParameters = di.inject(releaseRouteParametersInjectable);
return computed(() => {
const { name, namespace } = releaseRouteParameters.get();
if (!name || !namespace) {
return null;
}
return releases.value.get().find(matches({ name, namespace }));
});
},
lifecycle: lifecycleEnum.singleton,
});
export default releaseInjectable;