Skip to content

Commit 345e900

Browse files
authored
Merge pull request #1589 from thunderstore-io/10-21-nimbus_packagelisting_make_report_button_hidden_when_no_currentuser
Nimbus packageListing useReportPackage fix
2 parents ed81119 + 29babf9 commit 345e900

File tree

3 files changed

+20
-11
lines changed

3 files changed

+20
-11
lines changed

apps/cyberstorm-remix/app/p/components/ReportPackage/ReportPackageForm.tsx

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { useReducer, useState } from "react";
1+
import { useReducer } from "react";
22

33
import {
44
Modal,
@@ -31,7 +31,6 @@ export interface ReportPackageFormProps {
3131
community: string;
3232
namespace: string;
3333
package: string;
34-
config: () => RequestConfig;
3534
}
3635

3736
interface ReportPackageFormFullProps extends ReportPackageFormProps {
@@ -41,7 +40,11 @@ interface ReportPackageFormFullProps extends ReportPackageFormProps {
4140
setIsSubmitted: (isSubmitted: boolean) => void;
4241
}
4342

44-
export function ReportPackageForm(props: ReportPackageFormFullProps) {
43+
export function ReportPackageForm(
44+
props: ReportPackageFormFullProps & {
45+
config: () => RequestConfig;
46+
}
47+
) {
4548
const {
4649
config,
4750
onOpenChange,

apps/cyberstorm-remix/app/p/components/ReportPackage/useReportPackage.tsx

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,12 @@ import {
77
import { ReportPackageButton } from "./ReportPackageButton";
88
import { ReportPackageModal } from "./ReportPackageModal";
99
import { ReportPackageSubmitted } from "./ReportPackageSubmitted";
10+
import { type RequestConfig } from "@thunderstore/thunderstore-api";
1011

11-
export function useReportPackage(formProps: Promise<ReportPackageFormProps>) {
12+
export function useReportPackage(formProps: {
13+
formPropsPromise: Promise<ReportPackageFormProps>;
14+
config: () => RequestConfig;
15+
}) {
1216
const [isOpen, setIsOpen] = useState(false);
1317
const [isSubmitted, setIsSubmitted] = useState(false);
1418
const [error, setError] = useState<string | null>(null);
@@ -23,7 +27,7 @@ export function useReportPackage(formProps: Promise<ReportPackageFormProps>) {
2327

2428
async function awaitAndSetProps() {
2529
if (!props) {
26-
setProps(await formProps);
30+
setProps(await formProps.formPropsPromise);
2731
}
2832
}
2933

@@ -34,7 +38,9 @@ export function useReportPackage(formProps: Promise<ReportPackageFormProps>) {
3438
const button = <ReportPackageButton onClick={() => onOpenChange(true)} />;
3539

3640
const extraProps = { error, onOpenChange, setError, setIsSubmitted };
37-
const form = props && <ReportPackageForm {...props} {...extraProps} />;
41+
const form = props && (
42+
<ReportPackageForm {...props} {...extraProps} config={formProps.config} />
43+
);
3844

3945
const done = (
4046
<ReportPackageSubmitted closeModal={() => onOpenChange(false)} />

apps/cyberstorm-remix/app/p/packageListing.tsx

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -181,14 +181,14 @@ export default function PackageListing() {
181181
const [isLiked, setIsLiked] = useState(false);
182182
const toast = useToast();
183183

184-
const { ReportPackageButton, ReportPackageModal } = useReportPackage(
185-
Promise.resolve(listing).then((listingData) => ({
184+
const { ReportPackageButton, ReportPackageModal } = useReportPackage({
185+
formPropsPromise: Promise.resolve(listing).then((listingData) => ({
186186
community: listingData.community_identifier,
187187
namespace: listingData.namespace,
188188
package: listingData.name,
189-
config,
190-
}))
191-
);
189+
})),
190+
config: config,
191+
});
192192

193193
const fetchAndSetRatedPackages = async () => {
194194
const rp = await dapper.getRatedPackages();

0 commit comments

Comments
 (0)