Skip to content

Commit

Permalink
fix: expect the possibility of settingsobject being null (#4157)
Browse files Browse the repository at this point in the history
  • Loading branch information
adrians5j committed Jun 7, 2024
1 parent f5b2367 commit 38eee1c
Show file tree
Hide file tree
Showing 2 changed files with 20 additions and 14 deletions.
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import React from "react";
import React, { useCallback } from "react";
import { Bind } from "@webiny/form";
import { ButtonIcon, ButtonPrimary } from "@webiny/ui/Button";
import { AddPbWebsiteSettings } from "../AddPbWebsiteSettings";
Expand All @@ -10,14 +10,21 @@ const { Group, Element } = AddPbWebsiteSettings;

const Homepage = () => {
const { settings, editPage } = usePbWebsiteSettings();
const homePage = settings.pages?.home;

const editButtonClickHandler = useCallback(() => {
if (homePage) {
editPage(homePage);
}
}, [homePage]);

return (
<Bind name={"pages.home"}>
<PagesAutocomplete
label={"Homepage"}
description={`To set a different page, start typing its title and select it from the dropdown menu. Note that the page must be published in order to appear.`}
trailingIcon={
<ButtonPrimary small onClick={() => editPage(settings.pages.home)}>
<ButtonPrimary small disabled={!homePage} onClick={editButtonClickHandler}>
<ButtonIcon icon={<EditIcon />} />
Edit
</ButtonPrimary>
Expand All @@ -29,14 +36,21 @@ const Homepage = () => {

const NotFoundPage = () => {
const { settings, editPage } = usePbWebsiteSettings();
const notFoundPage = settings.pages?.notFound;

const editButtonClickHandler = useCallback(() => {
if (notFoundPage) {
editPage(notFoundPage);
}
}, [notFoundPage]);

return (
<Bind name={"pages.notFound"}>
<PagesAutocomplete
label={"Not found (404) page"}
description={`To set a different page, start typing its title and select it from the dropdown menu. Note that the page must be published in order to appear.`}
trailingIcon={
<ButtonPrimary small onClick={() => editPage(settings.pages.notFound)}>
<ButtonPrimary small disabled={!notFoundPage} onClick={editButtonClickHandler}>
<ButtonIcon icon={<EditIcon />} />
Edit
</ButtonPrimary>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,17 +27,9 @@ export function usePbWebsiteSettings() {
const [error, setError] = useState<PbErrorResponse | null>(null);

const { data, loading: queryInProgress } = useQuery<GetSettingsQueryResponse>(GET_SETTINGS);
const settings = get(
data,
"pageBuilder.getSettings.data",
{}
) as unknown as GetSettingsResponseData;

const defaultSettings = get(
data,
"pageBuilder.getDefaultSettings.data",
{}
) as unknown as GetSettingsResponseData;
const settings: Partial<GetSettingsResponseData> = data?.pageBuilder.getSettings.data || {};
const defaultSettings: Partial<GetSettingsResponseData> =
data?.pageBuilder.getDefaultSettings.data || {};

const [update, { loading: mutationInProgress }] = useMutation<
UpdateSettingsMutationResponse,
Expand Down

0 comments on commit 38eee1c

Please sign in to comment.