Loading backend/src/repositories/build/common.ts +3 −1 Original line number Diff line number Diff line Loading @@ -15,7 +15,9 @@ export const validateBuild = (build: Build) => { throw new ConflictError('Socket'); } if (!eq(memory?.memoryGeneration, motherboard?.chipset.memoryGeneration)) { if ( !eq(memory?.memoryGeneration.id, motherboard?.chipset.memoryGeneration.id) ) { throw new ConflictError('MemoryGeneration'); } Loading frontend/src/components/CategoryView/CategoryView.tsx +1 −1 Original line number Diff line number Diff line Loading @@ -21,7 +21,7 @@ export function CategoryView({ id, name, view }: CategoryInputType) { <LinkButton name="Build" url={`category/${id}`} /> ) : ( <Button variant="contained" onClick={() => addCategory(id)}> {id === configuration.categoryId ? 'Chosen' : 'Choose'} {id === configuration.preset.categoryId ? 'Chosen' : 'Choose'} </Button> )} </li> Loading frontend/src/components/PresetView.tsx +2 −2 Original line number Diff line number Diff line Loading @@ -11,13 +11,13 @@ export function PresetView({ name, description, id, category, categoryId, }: Preset) { const admin = useRecoilValue(auth); const { addPresetAtributes } = useConfiguration(); const navigate = useNavigate(); function setEdit() { addPresetAtributes({ id, name, description, category }); addPresetAtributes({ id, name, description, categoryId }); navigate(`/presets/${buildId}`); } Loading frontend/src/hooks/configurationHook.ts +15 −39 Original line number Diff line number Diff line Loading @@ -43,9 +43,9 @@ export function useConfiguration() { onSuccess: (b: Build) => addConfigutation({ buildId: b.id, name: configuration.name ?? '', description: configuration.description ?? '', categoryId: configuration.categoryId ?? '', name: configuration.preset.name ?? '', description: configuration.preset.description ?? '', categoryId: configuration.preset.categoryId ?? '', }), }); Loading @@ -53,10 +53,9 @@ export function useConfiguration() { Build, ApiError, EditBuildType >([ 'editBuild', (editBuild: EditBuildType) => buildApi.update(editBuild.id, editBuild.data), ]); >(['editBuild'], (editBuild: EditBuildType) => buildApi.update(editBuild.id, editBuild.data) ); const { mutate: editConfiguration, isLoading: loadingEditConfig } = useMutation<Preset, ApiError, EditConfigType>( Loading Loading @@ -87,13 +86,12 @@ export function useConfiguration() { // if not add is edit function isAdd() { console.log(configuration); return ( configuration.preset?.id === undefined || configuration.id === undefined ); } function getIds() { function getIdsParts() { return { processorId: configuration.processor?.id ?? null, memoryId: configuration.memory?.id ?? null, Loading @@ -103,17 +101,18 @@ export function useConfiguration() { } function send() { if (!isAdd) { if (!isAdd()) { if (haveName()) { editConfiguration({ id: configuration.preset.id, data: { name: configuration.name, description: configuration.description, name: configuration.preset.name, description: configuration.preset.description, categoryId: configuration.preset.categoryId, }, }); } editBuildServer({ id: configuration.id, data: getIds() }); editBuildServer({ id: configuration.id, data: getIdsParts() }); reset(); return; } Loading @@ -122,12 +121,12 @@ export function useConfiguration() { return; } addBuildServer(getIds()); addBuildServer(getIdsParts()); reset(); } function addBuild(build: Build) { setConfiguration({ ...build }); setConfiguration({ ...configuration, ...build }); } function addNameDesc(nameDesc: Preset) { setConfiguration({ Loading @@ -141,42 +140,19 @@ export function useConfiguration() { } function addPresetAtributes(preset: Preset) { console.log(preset); console.log({ ...configuration, preset: { ...preset, categoryId: preset.category.id }, }); setConfiguration({ ...configuration, preset: { ...preset, categoryId: preset.category.id }, }); } function validateLocal(build: Build) { try { // validate extern() console.log(build); } catch (error) { if (error instanceof Conflict) { console.log(`invalid ${error.message}`); } } setConfiguration({ ...configuration, preset }); } function addMotherboard(motherboard: Motherboard) { validateLocal({ ...configuration, motherboard, id: '' }); setConfiguration({ ...configuration, motherboard }); } function addProcesor(processor: Processor) { validateLocal({ ...configuration, processor, id: '' }); setConfiguration({ ...configuration, processor }); } function addVideoCard(videoCard: VideoCard) { validateLocal({ ...configuration, videoCard, id: '' }); setConfiguration({ ...configuration, videoCard }); } function addMemory(memory: Memory) { validateLocal({ ...configuration, memory, id: '' }); setConfiguration({ ...configuration, memory }); } Loading frontend/src/pages/Presets/OneCategory.tsx +1 −1 Original line number Diff line number Diff line Loading @@ -24,7 +24,7 @@ export function OneCategory() { ) : ( <div className="presets__list"> <h1 className="presets__title">{category.name}</h1> {category.preset.map((preset) => ( {category.presets.map((preset) => ( <PresetView key={preset.id} {...preset} /> ))} </div> Loading Loading
backend/src/repositories/build/common.ts +3 −1 Original line number Diff line number Diff line Loading @@ -15,7 +15,9 @@ export const validateBuild = (build: Build) => { throw new ConflictError('Socket'); } if (!eq(memory?.memoryGeneration, motherboard?.chipset.memoryGeneration)) { if ( !eq(memory?.memoryGeneration.id, motherboard?.chipset.memoryGeneration.id) ) { throw new ConflictError('MemoryGeneration'); } Loading
frontend/src/components/CategoryView/CategoryView.tsx +1 −1 Original line number Diff line number Diff line Loading @@ -21,7 +21,7 @@ export function CategoryView({ id, name, view }: CategoryInputType) { <LinkButton name="Build" url={`category/${id}`} /> ) : ( <Button variant="contained" onClick={() => addCategory(id)}> {id === configuration.categoryId ? 'Chosen' : 'Choose'} {id === configuration.preset.categoryId ? 'Chosen' : 'Choose'} </Button> )} </li> Loading
frontend/src/components/PresetView.tsx +2 −2 Original line number Diff line number Diff line Loading @@ -11,13 +11,13 @@ export function PresetView({ name, description, id, category, categoryId, }: Preset) { const admin = useRecoilValue(auth); const { addPresetAtributes } = useConfiguration(); const navigate = useNavigate(); function setEdit() { addPresetAtributes({ id, name, description, category }); addPresetAtributes({ id, name, description, categoryId }); navigate(`/presets/${buildId}`); } Loading
frontend/src/hooks/configurationHook.ts +15 −39 Original line number Diff line number Diff line Loading @@ -43,9 +43,9 @@ export function useConfiguration() { onSuccess: (b: Build) => addConfigutation({ buildId: b.id, name: configuration.name ?? '', description: configuration.description ?? '', categoryId: configuration.categoryId ?? '', name: configuration.preset.name ?? '', description: configuration.preset.description ?? '', categoryId: configuration.preset.categoryId ?? '', }), }); Loading @@ -53,10 +53,9 @@ export function useConfiguration() { Build, ApiError, EditBuildType >([ 'editBuild', (editBuild: EditBuildType) => buildApi.update(editBuild.id, editBuild.data), ]); >(['editBuild'], (editBuild: EditBuildType) => buildApi.update(editBuild.id, editBuild.data) ); const { mutate: editConfiguration, isLoading: loadingEditConfig } = useMutation<Preset, ApiError, EditConfigType>( Loading Loading @@ -87,13 +86,12 @@ export function useConfiguration() { // if not add is edit function isAdd() { console.log(configuration); return ( configuration.preset?.id === undefined || configuration.id === undefined ); } function getIds() { function getIdsParts() { return { processorId: configuration.processor?.id ?? null, memoryId: configuration.memory?.id ?? null, Loading @@ -103,17 +101,18 @@ export function useConfiguration() { } function send() { if (!isAdd) { if (!isAdd()) { if (haveName()) { editConfiguration({ id: configuration.preset.id, data: { name: configuration.name, description: configuration.description, name: configuration.preset.name, description: configuration.preset.description, categoryId: configuration.preset.categoryId, }, }); } editBuildServer({ id: configuration.id, data: getIds() }); editBuildServer({ id: configuration.id, data: getIdsParts() }); reset(); return; } Loading @@ -122,12 +121,12 @@ export function useConfiguration() { return; } addBuildServer(getIds()); addBuildServer(getIdsParts()); reset(); } function addBuild(build: Build) { setConfiguration({ ...build }); setConfiguration({ ...configuration, ...build }); } function addNameDesc(nameDesc: Preset) { setConfiguration({ Loading @@ -141,42 +140,19 @@ export function useConfiguration() { } function addPresetAtributes(preset: Preset) { console.log(preset); console.log({ ...configuration, preset: { ...preset, categoryId: preset.category.id }, }); setConfiguration({ ...configuration, preset: { ...preset, categoryId: preset.category.id }, }); } function validateLocal(build: Build) { try { // validate extern() console.log(build); } catch (error) { if (error instanceof Conflict) { console.log(`invalid ${error.message}`); } } setConfiguration({ ...configuration, preset }); } function addMotherboard(motherboard: Motherboard) { validateLocal({ ...configuration, motherboard, id: '' }); setConfiguration({ ...configuration, motherboard }); } function addProcesor(processor: Processor) { validateLocal({ ...configuration, processor, id: '' }); setConfiguration({ ...configuration, processor }); } function addVideoCard(videoCard: VideoCard) { validateLocal({ ...configuration, videoCard, id: '' }); setConfiguration({ ...configuration, videoCard }); } function addMemory(memory: Memory) { validateLocal({ ...configuration, memory, id: '' }); setConfiguration({ ...configuration, memory }); } Loading
frontend/src/pages/Presets/OneCategory.tsx +1 −1 Original line number Diff line number Diff line Loading @@ -24,7 +24,7 @@ export function OneCategory() { ) : ( <div className="presets__list"> <h1 className="presets__title">{category.name}</h1> {category.preset.map((preset) => ( {category.presets.map((preset) => ( <PresetView key={preset.id} {...preset} /> ))} </div> Loading