Skip to content

Commit

Permalink
Merge pull request #1833 from terrestris/code-smells
Browse files Browse the repository at this point in the history
Fix several code smells detected by SonarQube
  • Loading branch information
marcjansen authored Feb 5, 2025
2 parents 6ccea15 + 8512706 commit 7380a37
Show file tree
Hide file tree
Showing 17 changed files with 30 additions and 29 deletions.
2 changes: 1 addition & 1 deletion src/bootstrap.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -150,7 +150,7 @@ enum LoadingErrorCode {
}

const client = ClientConfiguration.shogunBase !== false ? new SHOGunAPIClient({
url: ClientConfiguration.shogunBase || '/'
url: ClientConfiguration.shogunBase ?? '/'
}) : undefined;

const parser = new SHOGunApplicationUtil({
Expand Down
4 changes: 2 additions & 2 deletions src/components/ApplicationInfo/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -39,10 +39,10 @@ export const ApplicationInfo: React.FC<ApplicationInfoProps> = ({
const logoPath = useAppSelector(state => state.logoPath);
const appDescription = useAppSelector(state => state.description);

const [isVisible, setVisible] = useState<boolean>(false);
const [isVisible, setIsVisible] = useState<boolean>(false);

const toggleVisibility = () => {
setVisible(!isVisible);
setIsVisible(!isVisible);
};

let Opener;
Expand Down
4 changes: 2 additions & 2 deletions src/components/EditFeatureDrawer/EditFeatureForm/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -118,15 +118,15 @@ export const EditFeatureForm: React.FC<EditFeatureFormProps> = ({
if (Array.isArray(e)) {
return e;
}
return e && e.fileList;
return e?.fileList;
};
}

return (
<Form.Item
key={fieldCfg.propertyName}
name={fieldCfg.propertyName}
label={fieldCfg.displayName || fieldCfg.propertyName}
label={fieldCfg.displayName ?? fieldCfg.propertyName}
{...formItemProps}
>
{field}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -96,7 +96,7 @@ export const EditReferenceTable: React.FC<EditReferenceTableProps> = ({

const resolvePlaceholder = (record: EditReferenceDataType): string | number => {
if (!tablePropertyName) {
return record[defaultPropertyName] || '';
return record[defaultPropertyName] ?? '';
}

const regex = /{{(.*?)}}/g;
Expand Down
2 changes: 1 addition & 1 deletion src/components/Footer/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ export const Footer: React.FC<FooterProps> = ({
wrappedComponent: WrappedPluginComponent
} = plugin;

items.splice(plugin.integration?.insertionIndex || 0, 0,
items.splice(plugin.integration?.insertionIndex ?? 0, 0,
<WrappedPluginComponent
key={key}
/>
Expand Down
2 changes: 1 addition & 1 deletion src/components/Header/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ export const Header: React.FC<HeaderProps> = ({
wrappedComponent: WrappedPluginComponent
} = plugin;

items.splice(plugin.integration?.insertionIndex || 0, 0,
items.splice(plugin.integration?.insertionIndex ?? 0, 0,
<WrappedPluginComponent
key={key}
/>
Expand Down
2 changes: 1 addition & 1 deletion src/components/MapToolbar/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ import Toolbar, { ToolbarProps } from '../Toolbar';

import './index.less';

export type MapToolbarProps = React.HTMLAttributes<HTMLDivElement> & ToolbarProps & {};
export type MapToolbarProps = React.HTMLAttributes<HTMLDivElement> & ToolbarProps;

export const MapToolbar: React.FC = (): JSX.Element => {
const {
Expand Down
2 changes: 1 addition & 1 deletion src/components/PrintForm/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -186,7 +186,7 @@ export const PrintForm: React.FC<PrintFormProps> = ({
return;
}
let pManagerOpts: MapFishPrintV3ManagerOpts = {
url: ClientConfiguration.print?.url || '/print',
url: ClientConfiguration.print?.url ?? '/print',
map,
customPrintScales: map
?.getView()
Expand Down
6 changes: 3 additions & 3 deletions src/components/ToolMenu/Draw/Attributions/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ const AttributionDrawer: React.FC<AttributionDrawerProps> = ({
selectedFeature,
...passThroughProps
}) => {
const [isFormValid, setIsFormIsValid] = useState(true);
const [isFormValid, setIsFormValid] = useState(true);
const [availableFeatureCollectionAttributes, setAvailableFeatureCollectionAttributes] = useState<string[]>([]);
const [availableFeatureAttributes, setAvailableFeatureAttributes] = useState<string[]>([]);
const [, contextHolder] = notification.useNotification();
Expand Down Expand Up @@ -156,9 +156,9 @@ const AttributionDrawer: React.FC<AttributionDrawerProps> = ({
const onChange = async () => {
try {
await form.validateFields();
setIsFormIsValid(true);
setIsFormValid(true);
} catch (error) {
setIsFormIsValid(false);
setIsFormValid(false);
Logger.error(error);
}
};
Expand Down
4 changes: 2 additions & 2 deletions src/components/ToolMenu/FeatureInfo/FeatureInfoForm/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -44,10 +44,10 @@ export const FeatureInfoForm: React.FC<FeatureInfoFormProps> = ({
<Form.Item
key={fieldCfg.propertyName}
name={fieldCfg.propertyName}
label={fieldCfg.displayName || fieldCfg.propertyName}
label={fieldCfg.displayName ?? fieldCfg.propertyName}
>
<DisplayField
label={fieldCfg.displayName || fieldCfg.propertyName}
label={fieldCfg.displayName ?? fieldCfg.propertyName}
{...fieldCfg.fieldProps}
/>
</Form.Item>
Expand Down
2 changes: 1 addition & 1 deletion src/components/ToolMenu/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -239,7 +239,7 @@ export const ToolMenu: React.FC<ToolMenuProps> = ({
children: <WrappedPluginComponent />
};

panels.splice(insertionIndex || 0, 0, newItem);
panels.splice(insertionIndex ?? 0, 0, newItem);
}
});
}
Expand Down
6 changes: 3 additions & 3 deletions src/components/UploadDataModal/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -145,7 +145,7 @@ export const UploadDataModal: React.FC<UploadDataModalProps> = ({
};

const onBeforeFileUpload = (file: RcFile) => {
const maxSize = ClientConfiguration.geoserver?.upload?.limit || 200000000;
const maxSize = ClientConfiguration.geoserver?.upload?.limit ?? 200000000;
const fileType = file.type;
const fileSize = file.size;

Expand Down Expand Up @@ -338,8 +338,8 @@ export const UploadDataModal: React.FC<UploadDataModalProps> = ({

const splittedFileName = (file as RcFile).name.split('.');
const fileType = (file as RcFile).type;
const geoServerBaseUrl = ClientConfiguration.geoserver?.base || '/geoserver';
const workspace = ClientConfiguration.geoserver?.upload?.workspace || 'SHOGUN';
const geoServerBaseUrl = ClientConfiguration.geoserver?.base ?? '/geoserver';
const workspace = ClientConfiguration.geoserver?.upload?.workspace ?? 'SHOGUN';
const layerName = `${splittedFileName[0]}_${Date.now()}`.toUpperCase();

const uploadData = {
Expand Down
6 changes: 3 additions & 3 deletions src/components/UserMenu/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -93,15 +93,15 @@ export const UserMenu: React.FC = (): JSX.Element => {
className="item-username"
>
{
user.providerDetails?.username || user.authProviderId
user.providerDetails?.username ?? user.authProviderId
}
</span>
<br />
<span
className="item-fullname"
>
{
`${user.providerDetails?.firstName || ''} ${user.providerDetails?.lastName || ''}`
`${user.providerDetails?.firstName ?? ''} ${user.providerDetails?.lastName ?? ''}`
}
</span>
</div>
Expand Down Expand Up @@ -189,7 +189,7 @@ export const UserMenu: React.FC = (): JSX.Element => {
<UserChip
size="small"
imageSrc={getGravatarUrl({
email: user.providerDetails?.email || '',
email: user.providerDetails?.email ?? '',
size: 28
})}
userName={
Expand Down
2 changes: 1 addition & 1 deletion src/hooks/searchEngines/useNominatimSearchEngine.ts
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ export const useNominatimSearchEngine = () => {
bounded: viewBox ? 1 : undefined,
viewBox: viewBox ? viewBox?.toString() : undefined,
countryCodes: '',
nominatimBaseUrl: ClientConfiguration.search?.nominatimUrl || 'https://nominatim.openstreetmap.org/search?'
nominatimBaseUrl: ClientConfiguration.search?.nominatimUrl ?? 'https://nominatim.openstreetmap.org/search?'
});

const response = await executeNominatimSearch(value);
Expand Down
2 changes: 1 addition & 1 deletion src/hooks/useConvertImageUrl.ts
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ export const useConvertImageUrl = () => {

const imageUrlToBase64 = useCallback(async (url: string) => {
if (_isNil(url)) {
return Promise.reject();
return Promise.reject(new Error(`Passed url '${url}' is null or undefined`));
}

const response = await fetch(url, {
Expand Down
5 changes: 3 additions & 2 deletions src/hooks/useWriteWfsTransaction.ts
Original file line number Diff line number Diff line change
Expand Up @@ -151,8 +151,9 @@ export const useWriteWfsTransaction = () => {
const geometry = feature.getGeometry()?.clone();

if (geometry && !isEmpty(geometry.getExtent()) && allowedEditMode?.includes('EDIT_GEOMETRY')) {
feat.set(geomProperty?.name || 'geom', geometry);
feat.setGeometryName(geomProperty?.name || 'geom');
const geomPropName = geomProperty?.name ?? 'geom';
feat.set(geomPropName, geometry);
feat.setGeometryName(geomPropName);
}

if (opts.form) {
Expand Down
6 changes: 3 additions & 3 deletions src/store/legal/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -20,9 +20,9 @@ export const slice = createSlice({
reducers: {
setLegal: (state, action: PayloadAction<Legal>) => {
return {
contact: action.payload.contact || initialState.contact,
imprint: action.payload.imprint || initialState.imprint,
privacy: action.payload.privacy || initialState.privacy
contact: action.payload.contact ?? initialState.contact,
imprint: action.payload.imprint ?? initialState.imprint,
privacy: action.payload.privacy ?? initialState.privacy
};
}
}
Expand Down

0 comments on commit 7380a37

Please sign in to comment.