Chore: Fix all Typescript strict null errors (#26204)

* Chore: Fix typescript strict null errors

* Added new limit

* Fixed ts issue

* fixed tests

* trying to fix type inference

* Fixing more ts errors

* Revert tsconfig option

* Fix

* Fixed code

* More fixes

* fix tests

* Updated snapshot

* Chore: More ts strict null fixes

* More fixes in some really messed up azure config components

* More fixes, current count: 441

* 419

* More fixes

* Fixed invalid initial state in explore

* Fixing tests

* Fixed tests

* Explore fix

* More fixes

* Progress

* Sub 300

* Now at 218

* Progress

* Update

* Progress

* Updated tests

* at 159

* fixed tests

* Progress

* YAy blow 100! at 94

* 10,9,8,7,6,5,4,3,2,1... lift off

* Fixed tests

* Fixed more type errors

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
This commit is contained in:
Torkel Ödegaard
2020-07-10 12:46:59 +02:00
committed by GitHub
parent 3d98641a45
commit 8f78b0e7bc
72 changed files with 225 additions and 170 deletions

View File

@@ -36,7 +36,12 @@ const UserCreatePage: React.FC<UserCreatePageProps> = ({ navModel, updateLocatio
{({ register, errors }) => {
return (
<>
<Field label="Name" required invalid={!!errors.name} error={!!errors.name && 'Name is required'}>
<Field
label="Name"
required
invalid={!!errors.name}
error={errors.name ? 'Name is required' : undefined}
>
<Input name="name" ref={register({ required: true })} />
</Field>
@@ -51,7 +56,7 @@ const UserCreatePage: React.FC<UserCreatePageProps> = ({ navModel, updateLocatio
label="Password"
required
invalid={!!errors.password}
error={!!errors.password && 'Password is required and must contain at least 4 characters'}
error={errors.password ? 'Password is required and must contain at least 4 characters' : undefined}
>
<Input
type="password"

View File

@@ -24,7 +24,7 @@ export class UserLdapSyncInfo extends PureComponent<Props, State> {
const prevSyncSuccessful = ldapSyncInfo && ldapSyncInfo.prevSync;
const nextSyncSuccessful = ldapSyncInfo && ldapSyncInfo.nextSync;
const nextSyncTime = nextSyncSuccessful ? dateTimeFormat(ldapSyncInfo.nextSync, { format }) : '';
const prevSyncTime = prevSyncSuccessful ? dateTimeFormat(ldapSyncInfo.prevSync.started, { format }) : '';
const prevSyncTime = prevSyncSuccessful ? dateTimeFormat(ldapSyncInfo.prevSync!.started, { format }) : '';
const debugLDAPMappingURL = `${debugLDAPMappingBaseURL}?user=${user && user.login}`;
return (

View File

@@ -189,7 +189,7 @@ interface AddToOrgModalProps {
}
interface AddToOrgModalState {
selectedOrg: Organization;
selectedOrg: Organization | null;
role: OrgRole;
}
@@ -211,11 +211,13 @@ export class AddToOrgModal extends PureComponent<AddToOrgModalProps, AddToOrgMod
onAddUserToOrg = () => {
const { selectedOrg, role } = this.state;
this.props.onOrgAdd(selectedOrg.id, role);
this.props.onOrgAdd(selectedOrg!.id, role);
};
onCancel = () => {
this.props.onDismiss();
if (this.props.onDismiss) {
this.props.onDismiss();
}
};
render() {

View File

@@ -36,9 +36,9 @@ export class UserSyncInfo extends PureComponent<Props, State> {
const { syncInfo, disableSync } = this.props;
const { isSyncing } = this.state;
const nextSyncSuccessful = syncInfo && syncInfo.nextSync;
const nextSyncTime = nextSyncSuccessful ? dateTimeFormat(syncInfo.nextSync, { format }) : '';
const nextSyncTime = nextSyncSuccessful ? dateTimeFormat(syncInfo.nextSync!, { format }) : '';
const prevSyncSuccessful = syncInfo && syncInfo.prevSync;
const prevSyncTime = prevSyncSuccessful ? dateTimeFormat(syncInfo.prevSync, { format }) : '';
const prevSyncTime = prevSyncSuccessful ? dateTimeFormat(syncInfo.prevSync!, { format }) : '';
const isDisabled = isSyncing || disableSync;
return (