1
0
mirror of https://github.com/lensapp/lens.git synced 2025-05-20 05:10:56 +00:00
lens/open-lens/src/renderer/index.ts
Gabriel 8b69c12ed4 chore: extract @k8slens/notifications
Signed-off-by: Gabriel <gaccettola@mirantis.com>
2023-06-01 23:38:14 +02:00

95 lines
2.6 KiB
TypeScript

import "@k8slens/core/styles";
import "@k8slens/button/styles";
import "@k8slens/error-boundary/styles";
import "@k8slens/tooltip/styles";
import "@k8slens/resizing-anchor/styles";
import "@k8slens/icon/styles";
import "@k8slens/animate/styles";
import "@k8slens/notifications/styles";
import { runInAction } from "mobx";
import {
rendererExtensionApi as Renderer,
commonExtensionApi as Common,
registerLensCore,
metricsFeature,
} from "@k8slens/core/renderer";
import { autoRegister } from "@ogre-tools/injectable-extension-for-auto-registration";
import { registerFeature } from "@k8slens/feature-core";
import {
applicationFeature,
startApplicationInjectionToken
} from "@k8slens/application";
import { createContainer } from "@ogre-tools/injectable";
import { registerMobX } from "@ogre-tools/injectable-extension-for-mobx";
import { registerInjectableReact } from "@ogre-tools/injectable-react";
import { messagingFeatureForRenderer } from "@k8slens/messaging-for-renderer";
import { keyboardShortcutsFeature } from "@k8slens/keyboard-shortcuts";
import { reactApplicationFeature } from "@k8slens/react-application";
import { routingFeature } from "@k8slens/routing";
import { loggerFeature } from "@k8slens/logger";
import { animateFeature } from "@k8slens/animate";
import { clusterSidebarFeature } from "@k8slens/cluster-sidebar";
import { randomFeature } from "@k8slens/random";
import { kubeApiSpecificsFeature } from "@k8slens/kube-api-specifics";
import { notificationsFeature } from "@k8slens/notifications";
const environment = "renderer";
const di = createContainer(environment, {
detectCycles: false,
});
runInAction(() => {
registerMobX(di);
registerInjectableReact(di);
registerLensCore(di, environment);
registerFeature(
di,
loggerFeature,
);
registerFeature(
di,
applicationFeature,
messagingFeatureForRenderer,
keyboardShortcutsFeature,
reactApplicationFeature,
routingFeature,
metricsFeature,
animateFeature,
clusterSidebarFeature,
randomFeature,
kubeApiSpecificsFeature,
notificationsFeature,
);
autoRegister({
di,
targetModule: module,
getRequireContexts: () => [
require.context("./", true, CONTEXT_MATCHER_FOR_NON_FEATURES),
require.context("../common", true, CONTEXT_MATCHER_FOR_NON_FEATURES),
],
});
});
const startApplication = di.inject(startApplicationInjectionToken);
startApplication();
export {
React,
ReactDOM,
ReactRouter,
ReactRouterDom,
Mobx,
MobxReact,
} from "@k8slens/core/renderer";
export const LensExtensions = {
Renderer,
Common,
};