From 87f61b87939cb72afc7d72a7e84a3bd0ccb29511 Mon Sep 17 00:00:00 2001 From: sirlolcat Date: Sun, 5 Jun 2022 10:11:38 +0430 Subject: [PATCH] refactor: implement readable structure --- react-typescript/src/components/App.tsx | 5 +- .../src/components/{Item.tsx => Items.tsx} | 6 +-- .../src/components/StoreProvider.tsx | 20 ++++++++ react-typescript/src/hooks/useAllItems.ts | 8 ++++ react-typescript/src/hooks/useDayLoader.ts | 12 +++++ react-typescript/src/hooks/useItem.ts | 24 +++------- react-typescript/src/index.tsx | 5 +- react-typescript/src/model/EEvents.ts | 5 -- .../src/model/reducer/calculateQuality.ts | 48 ------------------- .../src/model/reducer/calculateSellIn.ts | 11 ----- .../src/model/reducer/getItemOnNextDay.ts | 11 +++++ react-typescript/src/model/reducer/index.ts | 27 ++--------- .../src/model/reducer/updateQuality.ts | 42 ++++++++++++++++ .../src/model/reducer/updateSellIn.ts | 13 +++++ react-typescript/src/model/storeContext.ts | 10 ++++ react-typescript/src/model/useStore.ts | 12 ++--- react-typescript/src/qualityCalculator.ts | 5 -- react-typescript/src/types/index.ts | 22 +++++++-- react-typescript/src/utils/clamp.ts | 5 ++ 19 files changed, 165 insertions(+), 126 deletions(-) rename react-typescript/src/components/{Item.tsx => Items.tsx} (66%) create mode 100644 react-typescript/src/components/StoreProvider.tsx create mode 100644 react-typescript/src/hooks/useAllItems.ts create mode 100644 react-typescript/src/hooks/useDayLoader.ts delete mode 100644 react-typescript/src/model/EEvents.ts delete mode 100644 react-typescript/src/model/reducer/calculateQuality.ts delete mode 100644 react-typescript/src/model/reducer/calculateSellIn.ts create mode 100644 react-typescript/src/model/reducer/getItemOnNextDay.ts create mode 100644 react-typescript/src/model/reducer/updateQuality.ts create mode 100644 react-typescript/src/model/reducer/updateSellIn.ts create mode 100644 react-typescript/src/model/storeContext.ts delete mode 100644 react-typescript/src/qualityCalculator.ts create mode 100644 react-typescript/src/utils/clamp.ts diff --git a/react-typescript/src/components/App.tsx b/react-typescript/src/components/App.tsx index 50c89f89..bef2a923 100644 --- a/react-typescript/src/components/App.tsx +++ b/react-typescript/src/components/App.tsx @@ -1,10 +1,13 @@ +import useDayLoader from '../hooks/useDayLoader'; import './App.css'; -import Items from './Item'; +import Items from './Items'; function App() { + const { loadNextDay } = useDayLoader(); return (
+
); } diff --git a/react-typescript/src/components/Item.tsx b/react-typescript/src/components/Items.tsx similarity index 66% rename from react-typescript/src/components/Item.tsx rename to react-typescript/src/components/Items.tsx index 448c1862..b0bfd4cc 100644 --- a/react-typescript/src/components/Item.tsx +++ b/react-typescript/src/components/Items.tsx @@ -1,15 +1,15 @@ -import useItem from "../hooks/useItem"; +import useAllItems from "../hooks/useAllItems"; import { TItem } from "../types" function Items() { - const { items, updateItem } = useItem(); + const { items } = useAllItems(); return (