diff --git a/src/assets/data/apis/sampleAPI.json b/src/assets/data/apis/sampleAPI.json deleted file mode 100644 index 8e092f3..0000000 --- a/src/assets/data/apis/sampleAPI.json +++ /dev/null @@ -1,131 +0,0 @@ -{ - "baseUrl": "/api/v1/users", - "endpoints": { - "UserView": { - "method": "GET", - "url": "/api/v1/users/find-users", - "dataPath": "data.data.result", - "paramFormat": "query", - "paramMapping": ["search_type", "search_key"] - }, - "UserInfoView": { - "method": "GET", - "url": "/api/v1/users/basicinfo", - "dataPath": "data.data", - "paramFormat": "query", - "paramMapping": ["guid"] - }, - "UserChangeNickName": { - "method": "PUT", - "url": "/api/v1/users/change-nickname", - "dataPath": null, - "paramFormat": "body", - "paramMapping": ["guid", "nickname"] - }, - "UserChangeAdminLevel": { - "method": "PUT", - "url": "/api/v1/users/change-level", - "dataPath": null, - "paramFormat": "body", - "paramMapping": ["guid", "level"] - }, - "UserKick": { - "method": "PUT", - "url": "/api/v1/users/user-kick", - "dataPath": "data", - "paramFormat": "body", - "paramMapping": ["guid"] - }, - "UserAvatarView": { - "method": "GET", - "url": "/api/v1/users/avatarinfo", - "dataPath": "data.data", - "paramFormat": "query", - "paramMapping": ["guid"] - }, - "UserClothView": { - "method": "GET", - "url": "/api/v1/users/clothinfo", - "dataPath": "data.data", - "paramFormat": "query", - "paramMapping": ["guid"] - }, - "UserToolView": { - "method": "GET", - "url": "/api/v1/users/toolslot", - "dataPath": "data.data", - "paramFormat": "query", - "paramMapping": ["guid"] - }, - "UserInventoryView": { - "method": "GET", - "url": "/api/v1/users/inventory", - "dataPath": "data.data", - "paramFormat": "query", - "paramMapping": ["guid"] - }, - "UserInventoryItemDelete": { - "method": "DELETE", - "url": "/api/v1/users/inventory/delete/item", - "dataPath": "data", - "paramFormat": "body", - "paramMapping": ["guid", "inventory_id"] - }, - "UserTattooView": { - "method": "GET", - "url": "/api/v1/users/tattoo", - "dataPath": "data.data", - "paramFormat": "query", - "paramMapping": ["guid"] - }, - "UserQuestView": { - "method": "GET", - "url": "/api/v1/users/quest", - "dataPath": "data.data", - "paramFormat": "query", - "paramMapping": ["guid"] - }, - "UserFriendListView": { - "method": "GET", - "url": "/api/v1/users/friendlist", - "dataPath": "data.data", - "paramFormat": "query", - "paramMapping": ["guid"] - }, - "UserMailView": { - "method": "POST", - "url": "/api/v1/users/mail", - "dataPath": "data.data", - "paramFormat": "body", - "paramMapping": ["guid", "page", "limit"] - }, - "UserMailDelete": { - "method": "DELETE", - "url": "/api/v1/users/mail/delete", - "dataPath": "data", - "paramFormat": "body", - "paramMapping": ["mail_id"] - }, - "UserMailItemDelete": { - "method": "DELETE", - "url": "/api/v1/users/mail/delete/item", - "dataPath": "data", - "paramFormat": "body", - "paramMapping": ["mail_id", "item_id"] - }, - "UserMailDetailView": { - "method": "GET", - "url": "/api/v1/users/mail/:id", - "dataPath": "data.data", - "paramFormat": "path", - "paramMapping": ["id"] - }, - "UserMyhomeView": { - "method": "GET", - "url": "/api/v1/users/myhome", - "dataPath": "data.data", - "paramFormat": "query", - "paramMapping": ["guid"] - } - } -} \ No newline at end of file diff --git a/src/components/common/Layout/DetailGrid.js b/src/components/common/Layout/DetailGrid.js index 1a9ebb1..34556ad 100644 --- a/src/components/common/Layout/DetailGrid.js +++ b/src/components/common/Layout/DetailGrid.js @@ -4,6 +4,7 @@ import styled from 'styled-components'; import dayjs from 'dayjs'; import { AnimatedTabs } from '../index'; const { RangePicker } = DatePicker; +const { TextArea } = Input; /** * 위치 지정 가능한 그리드 형태 상세 정보 표시 컴포넌트 @@ -51,12 +52,15 @@ const DetailGrid = ({ items, formData, onChange, disabled = false, columns = 4 } handler, min, max, + step, format, required, showTime, tabItems, activeKey, - onTabChange + onTabChange, + maxLength, + rows: textareaRows } = item; // 현재 값 가져오기 (formData에서 또는 항목에서) @@ -85,10 +89,35 @@ const DetailGrid = ({ items, formData, onChange, disabled = false, columns = 4 } value={currentValue} min={min} max={max} + step={step || 1} onChange={(value) => onChange(key, value, handler)} placeholder={placeholder || `${label} 입력`} />; + case 'display': + return ; + + case 'textarea': + return