From 84e2a186b9e17306517e570c5ecdeeed650fe340 Mon Sep 17 00:00:00 2001 From: behnamrhp Date: Tue, 30 May 2023 13:36:36 +0300 Subject: [PATCH] closes#156@4.5h [FEAT]: complete ui and ui logic of create place --- .../data/response-object/getPlacesRO.ts | 2 +- .../components/inputs/select-box/InputBox.tsx | 8 +- src/driven/utils/constants/staticMessages.ts | 1 + .../places/common/hooks/useGetPlaceList.ts | 79 +++++++++++++++++++ .../places/create-place/infra/CreatePlace.tsx | 18 ++++- .../create-place/model/createPlaceModel.ts | 14 ++++ .../model/getValidOptionsOfSelectBox.ts | 66 ++++++++++++++++ .../places/create-place/model/protocols.ts | 18 +++++ .../create-place/view/CreatePlaceView.tsx | 36 ++++++--- .../core/places/create-place/view/protocol.ts | 19 ++++- .../create-place/viewmodel/createPlaceVM.ts | 63 ++++++++++++--- .../create-place/viewmodel/protocols.ts | 12 +++ .../places/places-list/infra/PlacesList.tsx | 71 +---------------- 13 files changed, 307 insertions(+), 100 deletions(-) create mode 100644 src/driving/application/core/places/common/hooks/useGetPlaceList.ts create mode 100644 src/driving/application/core/places/create-place/model/createPlaceModel.ts create mode 100644 src/driving/application/core/places/create-place/model/getValidOptionsOfSelectBox.ts create mode 100644 src/driving/application/core/places/create-place/model/protocols.ts create mode 100644 src/driving/application/core/places/create-place/viewmodel/protocols.ts diff --git a/src/business-logic/core/places/get-places/data/response-object/getPlacesRO.ts b/src/business-logic/core/places/get-places/data/response-object/getPlacesRO.ts index 1b63fe6..9364a07 100644 --- a/src/business-logic/core/places/get-places/data/response-object/getPlacesRO.ts +++ b/src/business-logic/core/places/get-places/data/response-object/getPlacesRO.ts @@ -7,7 +7,7 @@ const getPlacesRO = (placesResponse: GetPlacesResponse): GetPlacesRO => { id: placeResponse._id, placeType: placeResponse.place_type, name: placeResponse.name, - parentId: placeResponse.place_type, + parentId: placeResponse.parent_id, availableServices: placeResponse.available_services, createdAt: placeResponse.createdAt, updatedAt: placeResponse.updatedAt, diff --git a/src/driven/utils/components/inputs/select-box/InputBox.tsx b/src/driven/utils/components/inputs/select-box/InputBox.tsx index b2dae69..434f27b 100644 --- a/src/driven/utils/components/inputs/select-box/InputBox.tsx +++ b/src/driven/utils/components/inputs/select-box/InputBox.tsx @@ -8,7 +8,8 @@ interface IInputBox extends IInputWrapper { state: { value: { value: ValueType; label: string }; options: { value: ValueType; label: string }[]; - setValue: (newValue: ValueType) => void; + setValue: (newValue: ValueType, label: string) => void; + isLoading?: boolean; }; } @@ -20,10 +21,13 @@ export default function InputBox(props: IInputBox) {