mirror of
https://github.com/lensapp/lens.git
synced 2025-05-20 05:10:56 +00:00
- Add distinction between `getInstance` and `getInstanceOrCreate` since it is not always possible to create an instance (since you might not know the correct arguments) - Remove all the `export const *Store = *Store.getInstance<*Store>();` calls as it defeats the purpose of `Singleton`. Plus with the typing changes the appropriate `*Store.getInstance()` is "short enough". - Special case the two extension export facades to not need to use `getInstanceOrCreate`. Plus since they are just facades it is always possible to create them. - Move some other types to be also `Singleton`'s: ExtensionLoader, ExtensionDiscovery, ThemeStore, LocalizationStore, ... - Fixed dev-run always using the same port with electron inspect - Update Store documentation with new recommendations about creating instances of singletons - Fix all unit tests to create their dependent singletons Signed-off-by: Sebastian Malton <sebastian@malton.name> |
||
|---|---|---|
| .. | ||
| images | ||
| anatomy.md | ||
| components.md | ||
| generator.md | ||
| kube-object-list-layout.md | ||
| main-extension.md | ||
| protocol-handlers.md | ||
| README.md | ||
| renderer-extension.md | ||
| stores.md | ||
| working-with-mobx.md | ||
Extension Guides
This section explains how to use specific Lens Extension APIs. It includes detailed guides and code samples. For introductory information about the Lens Extension API, please see Your First Extension.
Each guide or code sample includes the following:
- Clearly commented source code.
- Instructions for running the sample extension.
- An image showing the sample extension's appearance and usage.
- A listing of the Extension API being used.
- An explanation of the concepts relevant to the Extension.
Guides
| Guide | APIs |
|---|---|
| Generate new extension project | |
| Main process extension | LensMainExtension |
| Renderer process extension | LensRendererExtension |
| Stores | |
| Components | |
| KubeObjectListLayout | |
| Working with mobx | |
| Protocol Handlers |
Samples
| Sample | APIs |
|---|---|
| hello-world | LensMainExtension LensRendererExtension Component.Icon Component.IconProps |
| minikube | LensMainExtension Store.ClusterStore Store.workspaceStore |
| styling-css-modules-sample | LensMainExtension LensRendererExtension Component.Icon Component.IconProps |
| styling-emotion-sample | LensMainExtension LensRendererExtension Component.Icon Component.IconProps |
| styling-sass-sample | LensMainExtension LensRendererExtension Component.Icon Component.IconProps |
| custom-resource-page | LensRendererExtension K8sApi.KubeApi K8sApi.KubeObjectStore Component.KubeObjectListLayout Component.KubeObjectDetailsProps Component.IconProps |