mirror of
https://github.com/lensapp/lens.git
synced 2025-05-20 05:10:56 +00:00
Fix allowed resources checks on GKE (#6657)
* Add check for incomplete SelfSubjectRulesReview to fix GKE Signed-off-by: Sebastian Malton <sebastian@malton.name> * Adding namespaced for KubeApiResource Signed-off-by: Sebastian Malton <sebastian@malton.name> * Refactoring of AuthorizationNamespaceReview Signed-off-by: Sebastian Malton <sebastian@malton.name> * Removing dead code Signed-off-by: Sebastian Malton <sebastian@malton.name> * Refactoring ListApiResources Signed-off-by: Sebastian Malton <sebastian@malton.name> * Extract ClusterContext into deps for KubeObjectStore to fix circular import Signed-off-by: Sebastian Malton <sebastian@malton.name> * Fix remaining type errors Signed-off-by: Sebastian Malton <sebastian@malton.name> * Fix crash in frame by consolidating setup into runnables Signed-off-by: Sebastian Malton <sebastian@malton.name> * Fix type errors and remove dead code Signed-off-by: Sebastian Malton <sebastian@malton.name> * Fix core resources not showing up Signed-off-by: Sebastian Malton <sebastian@malton.name> * Fix namespaces not being shown Signed-off-by: Sebastian Malton <sebastian@malton.name> * Simplify ClusterContext to remove something only NamespaceStore needs Signed-off-by: Sebastian Malton <sebastian@malton.name> * Make sure the public API doesn't change Signed-off-by: Sebastian Malton <sebastian@malton.name> * Fix lint Signed-off-by: Sebastian Malton <sebastian@malton.name> * Fixing namespace-select-filter tests Signed-off-by: Sebastian Malton <sebastian@malton.name> * Fix other tests requiring overrides Signed-off-by: Sebastian Malton <sebastian@malton.name> * Fix kludge in cluster-frame tests Signed-off-by: Sebastian Malton <sebastian@malton.name> * Fix remaining test failures Signed-off-by: Sebastian Malton <sebastian@malton.name> * Fix integration test due to incorrect casting Signed-off-by: Sebastian Malton <sebastian@malton.name> * Fix integration test and kube watches not working at all Signed-off-by: Sebastian Malton <sebastian@malton.name> * Fix secret details test Signed-off-by: Sebastian Malton <sebastian@malton.name> * Fix lint Signed-off-by: Sebastian Malton <sebastian@malton.name> * Fix non-ApplicationBuilder tests by adding overrides Signed-off-by: Sebastian Malton <sebastian@malton.name> * Fix crash due to trying to read hostedCluster too soon Signed-off-by: Sebastian Malton <sebastian@malton.name> * Fix crash due to timing issues - Make injectable phases more explicit for renderer Signed-off-by: Sebastian Malton <sebastian@malton.name> Signed-off-by: Sebastian Malton <sebastian@malton.name>
This commit is contained in:
1 parent
e36f3d2d70
commit
443081493b
196 files changed
+2379
-2146
No files matched your search
@@ -11,7 +11,8 @@ import { cssNames, autoBind } from "../../utils";
|
||||
import { Icon } from "../icon";
|
||||
import type { InputProps } from "./input";
|
||||
import { Input } from "./input";
|
||||
import { isMac } from "../../../common/vars";
|
||||
import { withInjectables } from "@ogre-tools/injectable-react";
|
||||
import isMacInjectable from "../../../common/vars/is-mac.injectable";
|
||||
|
||||
export interface SearchInputProps extends InputProps {
|
||||
compact?: boolean; // show only search-icon when not focused
|
||||
@@ -27,13 +28,17 @@ const defaultProps: Partial<SearchInputProps> = {
|
||||
placeholder: "Search...",
|
||||
};
|
||||
|
||||
interface Dependencies {
|
||||
isMac: boolean;
|
||||
}
|
||||
|
||||
@observer
|
||||
export class SearchInput extends React.Component<SearchInputProps> {
|
||||
class NonInjectedSearchInput extends React.Component<SearchInputProps & Dependencies> {
|
||||
static defaultProps = defaultProps as object;
|
||||
|
||||
private inputRef = createRef<Input>();
|
||||
|
||||
constructor(props: SearchInputProps) {
|
||||
constructor(props: SearchInputProps & Dependencies) {
|
||||
super(props);
|
||||
autoBind(this);
|
||||
}
|
||||
@@ -48,7 +53,7 @@ export class SearchInput extends React.Component<SearchInputProps> {
|
||||
}
|
||||
|
||||
onGlobalKey(evt: KeyboardEvent) {
|
||||
if (evt.key === "f" && (isMac ? evt.metaKey : evt.ctrlKey)) {
|
||||
if (evt.key === "f" && (this.props.isMac ? evt.metaKey : evt.ctrlKey)) {
|
||||
this.inputRef.current?.focus();
|
||||
}
|
||||
}
|
||||
@@ -71,7 +76,7 @@ export class SearchInput extends React.Component<SearchInputProps> {
|
||||
}
|
||||
|
||||
render() {
|
||||
const { className, compact, onClear, showClearIcon, bindGlobalFocusHotkey, value, ...inputProps } = this.props;
|
||||
const { className, compact, onClear, showClearIcon, bindGlobalFocusHotkey, value, isMac, ...inputProps } = this.props;
|
||||
let rightIcon = <Icon small material="search"/>;
|
||||
|
||||
if (showClearIcon && value) {
|
||||
@@ -97,3 +102,10 @@ export class SearchInput extends React.Component<SearchInputProps> {
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
export const SearchInput = withInjectables<Dependencies, SearchInputProps>(NonInjectedSearchInput, {
|
||||
getProps: (di, props) => ({
|
||||
...props,
|
||||
isMac: di.inject(isMacInjectable),
|
||||
}),
|
||||
});
|
||||
Reference in new issue
Block a user