This commit is contained in:
PhilReact 2025-06-21 08:47:08 +03:00
parent a11bda3b58
commit a18f9de6d6
3 changed files with 12 additions and 3 deletions

View File

@ -57,7 +57,7 @@ export const MultiPublishDialogComponent = () => {
complete: state.complete
}));
const { publishStatus, setPublishStatusByKey } = usePublishStatusStore();
const { publishStatus, setPublishStatusByKey, reset: resetStatusStore } = usePublishStatusStore();
const resourcesToPublish = useMemo(() => {
return resources.filter((item) =>
@ -88,8 +88,10 @@ export const MultiPublishDialogComponent = () => {
{ action: 'PUBLISH_MULTIPLE_QDN_RESOURCES', resources: resourcesToPublish },
timeout
);
complete(result);
reset();
resetStatusStore()
} catch (error: any) {
const unPublished = error?.error?.unsuccessfulPublishes;
const failedPublishes: QortalGetMetadata[] = [];

View File

@ -275,6 +275,8 @@ interface StoredPublish {
const publishMultipleResources = useCallback(async (resources: ResourceToPublish[]): Promise<Error | QortalGetMetadata[]> => {
return new Promise(async (resolve, reject) => {
const store = useMultiplePublishStore.getState();
const storeStatus = usePublishStatusStore.getState();
store.setPublishResources(resources);
store.setIsPublishing(true);
store.setCompletionResolver(resolve);
@ -291,7 +293,10 @@ const publishMultipleResources = useCallback(async (resources: ResourceToPublish
action: "PUBLISH_MULTIPLE_QDN_RESOURCES",
resources
}, lengthOfTimeout);
store.complete(result);
store.reset()
storeStatus.reset()
} catch (error: any) {
const unPublished = error?.error?.unsuccessfulPublishes;
const failedPublishes: QortalGetMetadata[] = []

View File

@ -94,9 +94,9 @@ type PublishStatusStore = {
publishStatus: Record<string, PublishStatus>;
getPublishStatusByKey: (key: string) => PublishStatus | undefined;
setPublishStatusByKey: (key: string, update: Partial<PublishStatus>) => void;
reset: () => void;
};
export const usePublishStatusStore = create<PublishStatusStore>((set, get) => ({
publishStatus: {},
@ -134,4 +134,6 @@ export const usePublishStatusStore = create<PublishStatusStore>((set, get) => ({
},
});
},
reset: () => set({ publishStatus: {} })
}));