feat(editor): add basis of role editor pane

This commit is contained in:
41666 2020-10-25 02:27:55 -04:00
parent c8adad6c81
commit 5fcac53be2
34 changed files with 524 additions and 8 deletions

View file

@ -0,0 +1 @@
package featureflags

View file

@ -0,0 +1,7 @@
load("//hack/bazel/js:react.bzl", "react_library")
package(default_visibility = ["//visibility:public"])
react_library(
name = "react",
)

View file

@ -0,0 +1,19 @@
import * as React from 'react';
export enum FeatureFlag {
AllowListsBlockLists = 'AllowListsBlockLists',
}
export class FeatureFlagProvider {
activeFlags: FeatureFlag[] = [];
constructor(flags: FeatureFlag[] = []) {
this.activeFlags = flags;
}
has(flag: FeatureFlag) {
return this.activeFlags.includes(flag);
}
}
export const FeatureFlagsContext = React.createContext(new FeatureFlagProvider());

View file

@ -0,0 +1 @@
export * from './FeatureFlags';

View file

@ -0,0 +1,12 @@
import * as React from 'react';
import { FeatureFlag, FeatureFlagProvider, FeatureFlagsContext } from './FeatureFlags';
export const FeatureFlagDecorator = (flags: FeatureFlag[]) => (
storyFn: () => React.ReactNode
) => {
return (
<FeatureFlagsContext.Provider value={new FeatureFlagProvider(flags)}>
{storyFn()}
</FeatureFlagsContext.Provider>
);
};

View file

@ -4,6 +4,4 @@ package(default_visibility = ["//visibility:public"])
react_library(
name = "withContext",
deps = [
],
)