Apply new eslint rules; default to prettier for styling

This commit is contained in:
DaneEveritt 2022-06-26 15:13:52 -04:00
parent f22cce8881
commit dc84af9937
No known key found for this signature in database
GPG key ID: EEA66103B3D71F53
218 changed files with 3876 additions and 3564 deletions

View file

@ -3,7 +3,7 @@ import Can from '@/components/elements/Can';
import { ServerError } from '@/components/elements/ScreenBlock';
export interface RequireServerPermissionProps {
permissions: string | string[]
permissions: string | string[];
}
const RequireServerPermission: React.FC<RequireServerPermissionProps> = ({ children, permissions }) => {
@ -11,10 +11,7 @@ const RequireServerPermission: React.FC<RequireServerPermissionProps> = ({ child
<Can
action={permissions}
renderOnError={
<ServerError
title={'Access Denied'}
message={'You do not have permission to access this page.'}
/>
<ServerError title={'Access Denied'} message={'You do not have permission to access this page.'} />
}
>
{children}

View file

@ -19,12 +19,14 @@ interface State {
type ExtendedComponentType<T> = (C: React.ComponentType<T>) => React.ComponentType<T & AsModalProps>;
// eslint-disable-next-line @typescript-eslint/ban-types
function asModal<P extends {}> (modalProps?: SettableModalProps | ((props: P) => SettableModalProps)): ExtendedComponentType<P> {
function asModal<P extends {}>(
modalProps?: SettableModalProps | ((props: P) => SettableModalProps)
): ExtendedComponentType<P> {
return function (Component) {
return class extends React.PureComponent <P & AsModalProps, State> {
return class extends React.PureComponent<P & AsModalProps, State> {
static displayName = `asModal(${Component.displayName})`;
constructor (props: P & AsModalProps) {
constructor(props: P & AsModalProps) {
super(props);
this.state = {
@ -34,7 +36,7 @@ function asModal<P extends {}> (modalProps?: SettableModalProps | ((props: P) =>
};
}
get computedModalProps (): Readonly<SettableModalProps & { visible: boolean }> {
get computedModalProps(): Readonly<SettableModalProps & { visible: boolean }> {
return {
...(typeof modalProps === 'function' ? modalProps(this.props) : modalProps),
...this.state.propOverrides,
@ -45,7 +47,7 @@ function asModal<P extends {}> (modalProps?: SettableModalProps | ((props: P) =>
/**
* @this {React.PureComponent<P & AsModalProps, State>}
*/
componentDidUpdate (prevProps: Readonly<P & AsModalProps>, prevState: Readonly<State>) {
componentDidUpdate(prevProps: Readonly<P & AsModalProps>, prevState: Readonly<State>) {
if (prevProps.visible && !this.props.visible) {
this.setState({ visible: false, propOverrides: {} });
} else if (!prevProps.visible && this.props.visible) {
@ -58,24 +60,27 @@ function asModal<P extends {}> (modalProps?: SettableModalProps | ((props: P) =>
dismiss = () => this.setState({ visible: false });
setPropOverrides: ModalContextValues['setPropOverrides'] = value => this.setState(state => ({
propOverrides: !value ? {} : (typeof value === 'function' ? value(state.propOverrides) : value),
}));
setPropOverrides: ModalContextValues['setPropOverrides'] = (value) =>
this.setState((state) => ({
propOverrides: !value ? {} : typeof value === 'function' ? value(state.propOverrides) : value,
}));
/**
* @this {React.PureComponent<P & AsModalProps, State>}
*/
render () {
render() {
if (!this.state.render) return null;
return (
<PortaledModal
appear
onDismissed={() => this.setState({ render: false }, () => {
if (typeof this.props.onModalDismissed === 'function') {
this.props.onModalDismissed();
}
})}
onDismissed={() =>
this.setState({ render: false }, () => {
if (typeof this.props.onModalDismissed === 'function') {
this.props.onModalDismissed();
}
})
}
{...this.computedModalProps}
>
<ModalContext.Provider
@ -84,7 +89,7 @@ function asModal<P extends {}> (modalProps?: SettableModalProps | ((props: P) =>
setPropOverrides: this.setPropOverrides.bind(this),
}}
>
<Component {...this.props}/>
<Component {...this.props} />
</ModalContext.Provider>
</PortaledModal>
);