diff --git a/src/app/canvas/page.jsx b/src/app/canvas/page.jsx
index a2db74b..d7fdd28 100644
--- a/src/app/canvas/page.jsx
+++ b/src/app/canvas/page.jsx
@@ -56,6 +56,7 @@ import AdditionalColumnEdit from '@/components/canvas/modal/additionalfunction/m
import AdditionalBundleDelete from '@/components/canvas/modal/additionalfunction/moduleadditional/AdditionalBundleDelete'
import AdditionalBundleEdit from '@/components/canvas/modal/additionalfunction/moduleadditional/AdditionalBundleEdit'
import CanvasContextMenu from '@/components/canvas/CanvasContextMenu'
+import ColorSelect from '@/components/canvas/modal/colorselect/ColorSelect'
export default function CanvasPage() {
const modalOption = useRecoilValue(modalState);
@@ -131,7 +132,7 @@ export default function CanvasPage() {
{/* */}
{/* 오브젝트 배치*/}
-
+ {/* */}
{/* 표시변겅 */}
{/* */}
@@ -151,10 +152,10 @@ export default function CanvasPage() {
{/* */}
{/* 육지붕모듈 선택 */}
-
+ {/* */}
{/* 회로 및 가대설정 */}
-
+ {/* */}
{/* 모듈 부가기능 */}
@@ -174,6 +175,9 @@ export default function CanvasPage() {
{/* */}
{/* */}
{/* */}
+
+ {/* 색상 팝업 */}
+
diff --git a/src/components/canvas/modal/colorselect/ColorSelect.jsx b/src/components/canvas/modal/colorselect/ColorSelect.jsx
new file mode 100644
index 0000000..316c4dd
--- /dev/null
+++ b/src/components/canvas/modal/colorselect/ColorSelect.jsx
@@ -0,0 +1,26 @@
+import ColorPicker from "@/components/common/colorpicker/ColorPicker";
+import WithDraggable from "@/components/common/draggable/withDraggable";
+
+export default function ColorSelect (){
+ return(
+
+
+
+ )
+}
\ No newline at end of file
diff --git a/src/components/common/colorpicker/ColorPicker.jsx b/src/components/common/colorpicker/ColorPicker.jsx
index 757041e..da00a05 100644
--- a/src/components/common/colorpicker/ColorPicker.jsx
+++ b/src/components/common/colorpicker/ColorPicker.jsx
@@ -7,10 +7,29 @@ export default function ColorPicker() {
return (
<>
-
+
-
{color}
+
+
HEX
+
+ setColor(e.target.value)}/>
+
+
+
+
+
基本色
+
+
+
+
+
+
+
+
+
+
+
>
)
}
diff --git a/src/styles/_modal.scss b/src/styles/_modal.scss
index 9bd59e3..aaea5be 100644
--- a/src/styles/_modal.scss
+++ b/src/styles/_modal.scss
@@ -1505,7 +1505,7 @@ $alert-color: #101010;
width: 16px;
height: 16px;
&.pink{
- border: 2px solid #EA10AC;
+ border: 2px solid #ce1c9c;
background-color: #16417D;
}
&.white{
@@ -1514,4 +1514,81 @@ $alert-color: #101010;
}
}
}
+}
+
+// color setting
+.color-setting-wrap{
+ padding-bottom: 15px;
+ border-bottom: 1px solid #424242;
+ .color-tit{
+ font-size: 13px;
+ font-weight: 500;
+ color: #ffffff;
+ margin-bottom: 10px;
+ }
+ .color-picker{
+ .react-colorful{
+ width: 100%;
+ height: auto;
+ gap: 20px;
+ .react-colorful__pointer{
+ width: 15px;
+ height: 15px;
+ border: 4px solid #Fff;
+ }
+ .react-colorful__saturation{
+ border-radius: 2px;
+ height: 200px;
+ border-bottom: 5px solid #000;
+ }
+ .react-colorful__last-control{
+ border-radius: 2px;
+ height: 10px;
+ }
+ }
+ .hex-color-box{
+ display: flex;
+ align-items: center;
+ margin-top: 15px;
+ .color-box-tit{
+ font-size: 12px;
+ color: #fff;
+ font-weight: 500;
+ margin-right: 10px;
+ }
+ .color-hex-input{
+ width: 150px;
+ margin-right: 5px;
+ input{
+ width: 100%;
+ }
+ }
+ .color-box{
+ display: block;
+ width: 30px;
+ height: 30px;
+ border-radius: 4px;
+ }
+ }
+ .default-color-wrap{
+ margin-top: 25px;
+ .default-tit{
+ font-size: 12px;
+ font-weight: 500;
+ color: #fff;
+ margin-bottom: 10px;
+ }
+ .color-button-wrap{
+ display: grid;
+ grid-template-columns: repeat(8, 1fr);
+ gap: 21px;
+ .default-color{
+ display: block;
+ width: 100%;
+ height: 30px;
+ border-radius: 4px;
+ }
+ }
+ }
+ }
}
\ No newline at end of file