🚨chore: Sync Sass

기본 설정 모달 > 모듈 퍼블 수정
This commit is contained in:
minsik 2024-11-26 18:37:51 +09:00
parent 5d8837b1c4
commit ccabc80552
7 changed files with 2009 additions and 2000 deletions

View File

@ -32,6 +32,16 @@ export default function Module({}) {
}, },
], ],
} }
const surfaceTypes = [
{ id: 1, name: 'Ⅱ', value: 'Ⅱ' },
{ id: 2, name: 'Ⅲ ∙ Ⅳ', value: 'Ⅲ ∙ Ⅳ' },
]
const fiftingHeights = Array.from({ length: 16 }).map((data, index) => {
return { id: index, name: index + 5, value: index + 5 }
})
const windSpeeds = Array.from({ length: 7 }).map((data, index) => {
return { id: index, name: index * 2 + 30, value: index * 2 + 30 }
})
return ( return (
<> <>
<div className="module-table-flex-wrap mb10"> <div className="module-table-flex-wrap mb10">
@ -47,11 +57,13 @@ export default function Module({}) {
<table> <table>
<thead> <thead>
<tr> <tr>
{moduleData.header.map((data) => ( {moduleData.header.map((header) => {
<th key={data.prop} style={{ width: data.width ? data.width : '' }}> return (
{data.name} <th key={header.prop} style={{ width: header.width ? header.width + 'px' : '' }}>
{header.name}
</th> </th>
))} )
})}
</tr> </tr>
</thead> </thead>
<tbody> <tbody>
@ -88,16 +100,85 @@ export default function Module({}) {
</div> </div>
</div> </div>
</div> </div>
<div className="module-table-box"> <div className="module-table-box none-flex">
<div className="module-table-inner">
<div className="module-table-tit">{getMessage('modal.module.basic.setting.module.stuff.info')}</div>
<div className="eaves-keraba-table">
<div className="eaves-keraba-item">
<div className="eaves-keraba-th">{getMessage('modal.module.basic.setting.module.surface.type')}</div>
<div className="eaves-keraba-td">
<div className="outline-form">
<div className="grid-select" style={{ width: '95.77px', flex: 'none' }}>
<QSelectBox title={'Ⅲ ∙ Ⅳ'} options={surfaceTypes} />
</div>
</div>
</div>
</div>
<div className="eaves-keraba-item">
<div className="eaves-keraba-th">{getMessage('modal.module.basic.setting.module.fitting.height')}</div>
<div className="eaves-keraba-td">
<div className="outline-form">
<div className="grid-select mr10">
<QSelectBox title={'13'} options={fiftingHeights} />
</div>
<span className="thin">mm</span>
</div>
</div>
</div>
<div className="eaves-keraba-item">
<div className="eaves-keraba-th">{getMessage('modal.module.basic.setting.module.standard.wind.speed')}</div>
<div className="eaves-keraba-td">
<div className="outline-form">
<div className="grid-select mr10">
<QSelectBox title={'32'} options={windSpeeds} />
</div>
<span className="thin">m/s</span>
</div>
</div>
</div>
<div className="eaves-keraba-item">
<div className="eaves-keraba-th">{getMessage('modal.module.basic.setting.module.standard.snowfall.amount')}</div>
<div className="eaves-keraba-td">
<div className="outline-form">
<div className="grid-select mr10">
<input type="text" className="input-origin block" />
</div>
<span className="thin">mm</span>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div className="module-table-box mb10">
<div className="module-box-tab"> <div className="module-box-tab">
<button className="module-btn act">スレート</button> <button className="module-btn act">屋根材1</button>
<button className="module-btn">平板瓦</button> <button className="module-btn">屋根材2</button>
<button className="module-btn">53A</button> <button className="module-btn">屋根材3</button>
<button className="module-btn">53A</button> <button className="module-btn">屋根材4</button>
</div> </div>
<div className="module-table-inner"> <div className="module-table-inner">
<div className="module-table-tit">{getMessage('modal.module.basic.setting.module.roof.material')}: スレーツ4)</div> <div className="module-table-flex-wrap tab2">
<div className="module-flex-item">
<div className="module-flex-item-tit">{getMessage('modal.module.basic.setting.module.roof.material')}スレーツ4</div>
<div className="eaves-keraba-table"> <div className="eaves-keraba-table">
<div className="eaves-keraba-item">
<div className="eaves-keraba-th">{getMessage('modal.module.basic.setting.module.rafter.margin')}</div>
<div className="eaves-keraba-td">
<div className="keraba-flex">
<div className="grid-select">
<QSelectBox title={'455'} option={SelectOption01} />
</div>
<div className="outline-form">
<span>垂木の間隔</span>
<div className="grid-select">
<QSelectBox title={'455'} option={SelectOption01} />
</div>
</div>
</div>
</div>
</div>
<div className="eaves-keraba-item"> <div className="eaves-keraba-item">
<div className="eaves-keraba-th">{getMessage('modal.module.basic.setting.module.trestle.maker')}</div> <div className="eaves-keraba-th">{getMessage('modal.module.basic.setting.module.trestle.maker')}</div>
<div className="eaves-keraba-td"> <div className="eaves-keraba-td">
@ -118,62 +199,21 @@ export default function Module({}) {
<div className="eaves-keraba-th">{getMessage('modal.module.basic.setting.module.under.roof')}</div> <div className="eaves-keraba-th">{getMessage('modal.module.basic.setting.module.under.roof')}</div>
<div className="eaves-keraba-td"> <div className="eaves-keraba-td">
<div className="grid-select"> <div className="grid-select">
<QSelectBox title={'構造溶合板 12mm以上'} option={SelectOption01} /> <QSelectBox title={'構造用合板12mm以上 又はOSB12mm以上'} option={SelectOption01} />
</div> </div>
</div> </div>
</div> </div>
</div> </div>
</div> </div>
<div className="module-flex-item non-flex">
<div className="flex-item-btn-wrap">
<button className="btn-frame roof blue">標準施工(I)</button>
<button className="btn-frame roof white">多設施工</button>
<button className="btn-frame roof">標準施工</button>
<button className="btn-frame roof">多設施工II</button>
<button className="btn-frame roof">強化施工</button>
</div> </div>
</div> <div className="grid-check-form">
<div className="module-table-box mb10">
<div className="module-table-inner">
<div className="module-table-flex-wrap">
<div className="outline-form">
<span className="mr10">{getMessage('modal.module.basic.setting.module.cotton.classification')}</span>
<div className="grid-select">
<QSelectBox title={'Ⅲ ∙ Ⅳ'} option={SelectOption01} />
</div>
</div>
<div className="outline-form">
<span className="mr10">{getMessage('modal.module.basic.setting.module.fitting.height')}</span>
<div className="grid-select">
<QSelectBox title={'13'} option={SelectOption01} />
</div>
</div>
<div className="outline-form">
<span className="mr10">{getMessage('modal.module.basic.setting.module.standard.wind.speed')}</span>
<div className="grid-select">
<QSelectBox title={'32'} option={SelectOption01} />
</div>
</div>
<div className="outline-form">
<span className="mr10">{getMessage('modal.module.basic.setting.module.standard.snowfall.amount')}</span>
<div className="grid-select">
<QSelectBox title={'15'} option={SelectOption01} />
</div>
</div>
</div>
</div>
</div>
<div className="module-table-box mb15">
<div className="warning-guide">
<div className="warning">
{getMessage('modal.module.basic.setting.module.setting.info1')}
<br />
{getMessage('modal.module.basic.setting.module.setting.info2')}
<br />
</div>
</div>
</div>
<div className="modal-btn-wrap mb15">
<button className="btn-frame roof blue">{getMessage('modal.module.basic.setting.module.standard.construction')}(1)</button>
<button className="btn-frame roof white">{getMessage('modal.module.basic.setting.module.standard.construction')}</button>
<button className="btn-frame roof">{getMessage('modal.module.basic.setting.module.enforce.construction')}</button>
<button className="btn-frame roof">{getMessage('modal.module.basic.setting.module.multiple.construction')}</button>
<button className="btn-frame roof blue">{getMessage('modal.module.basic.setting.module.multiple.construction')}II</button>
</div>
<div className="grid-check-form border">
<div className="d-check-box pop"> <div className="d-check-box pop">
<input type="checkbox" id="ch01" /> <input type="checkbox" id="ch01" />
<label htmlFor="ch01">{getMessage('modal.module.basic.setting.module.eaves.bar.fitting')}</label> <label htmlFor="ch01">{getMessage('modal.module.basic.setting.module.eaves.bar.fitting')}</label>
@ -183,6 +223,23 @@ export default function Module({}) {
<label htmlFor="ch02">{getMessage('modal.module.basic.setting.module.blind.metal.fitting')}</label> <label htmlFor="ch02">{getMessage('modal.module.basic.setting.module.blind.metal.fitting')}</label>
</div> </div>
</div> </div>
</div>
</div>
</div>
</div>
<div className="module-bottom">
<div className="module-table-box ">
<div className="warning-guide">
<div className="warning">
{getMessage('modal.module.basic.setting.module.setting.info1')}
<br />
{getMessage('modal.module.basic.setting.module.setting.info2')}
</div>
</div>
</div>
{/* 설정 오류시 노출 */}
<div className="reset-word"> 施工方法が選択できません 基準風速または基準積雪量を確認してください</div>
</div>
</> </>
) )
} }

View File

@ -86,12 +86,14 @@
"modal.module.basic.setting.orientation.setting.angle.passivity": "角度を直接入力", "modal.module.basic.setting.orientation.setting.angle.passivity": "角度を直接入力",
"modal.module.basic.setting.module.roof.material": "屋根材", "modal.module.basic.setting.module.roof.material": "屋根材",
"modal.module.basic.setting.module.trestle.maker": "架台メーカー", "modal.module.basic.setting.module.trestle.maker": "架台メーカー",
"modal.module.basic.setting.module.rafter.margin": "マンドンピッチ",
"modal.module.basic.setting.module.construction.method": "工法", "modal.module.basic.setting.module.construction.method": "工法",
"modal.module.basic.setting.module.under.roof": "屋根の下", "modal.module.basic.setting.module.under.roof": "屋根の下",
"modal.module.basic.setting.module.setting": "モジュールの選択", "modal.module.basic.setting.module.setting": "モジュールの選択",
"modal.module.basic.setting.module.setting.info1": "※勾配の 範囲には制限があります。屋根傾斜が2.5値未満、10値を超える場合には施工が可能か 施工マニュアルを確認してください。", "modal.module.basic.setting.module.setting.info1": "※勾配の 範囲には制限があります。屋根傾斜が2.5値未満、10値を超える場合には施工が可能か 施工マニュアルを確認してください。",
"modal.module.basic.setting.module.setting.info2": "モジュール配置時は、施工マニュアルに記載されている<モジュール配置条件>を必ず確認してください", "modal.module.basic.setting.module.setting.info2": "モジュール配置時は、施工マニュアルに記載されている<モジュール配置条件>を必ず確認してください",
"modal.module.basic.setting.module.cotton.classification": "綿調道区分", "modal.module.basic.setting.module.stuff.info": "商品情報",
"modal.module.basic.setting.module.surface.type": "면조도구분(JA)",
"modal.module.basic.setting.module.fitting.height": "設置高さ", "modal.module.basic.setting.module.fitting.height": "設置高さ",
"modal.module.basic.setting.module.standard.wind.speed": "基準風速", "modal.module.basic.setting.module.standard.wind.speed": "基準風速",
"modal.module.basic.setting.module.standard.snowfall.amount": "基準積雪量", "modal.module.basic.setting.module.standard.snowfall.amount": "基準積雪量",

View File

@ -89,12 +89,14 @@
"modal.module.basic.setting.orientation.setting.angle.passivity": "각도를 직접 입력", "modal.module.basic.setting.orientation.setting.angle.passivity": "각도를 직접 입력",
"modal.module.basic.setting.module.roof.material": "지붕재", "modal.module.basic.setting.module.roof.material": "지붕재",
"modal.module.basic.setting.module.trestle.maker": "가대메이거", "modal.module.basic.setting.module.trestle.maker": "가대메이거",
"modal.module.basic.setting.module.rafter.margin": "서까래 간격",
"modal.module.basic.setting.module.construction.method": "공법", "modal.module.basic.setting.module.construction.method": "공법",
"modal.module.basic.setting.module.under.roof": "지붕밑바탕", "modal.module.basic.setting.module.under.roof": "지붕밑바탕",
"modal.module.basic.setting.module.setting": "모듈 설정", "modal.module.basic.setting.module.setting": "모듈 선택",
"modal.module.basic.setting.module.setting.info1": "※ 구배의 범위에는 제한이 있습니다. 지붕경사가 2.5치 미만, 10치를 초과하는 경우에는 시공이 가능한지 시공 매뉴얼을 확인해주십시오.", "modal.module.basic.setting.module.setting.info1": "※ 구배의 범위에는 제한이 있습니다. 지붕경사가 2.5치 미만, 10치를 초과하는 경우에는 시공이 가능한지 시공 매뉴얼을 확인해주십시오.",
"modal.module.basic.setting.module.setting.info2": "※ 모듈 배치 시에는 시공 매뉴얼에 기재된 <모듈 배치 조건>을 반드시 확인해주십시오.", "modal.module.basic.setting.module.setting.info2": "※ 모듈 배치 시에는 시공 매뉴얼에 기재된 <모듈 배치 조건>을 반드시 확인해주십시오.",
"modal.module.basic.setting.module.cotton.classification": "면조도구분", "modal.module.basic.setting.module.stuff.info": "물건정보",
"modal.module.basic.setting.module.surface.type": "면조도구분",
"modal.module.basic.setting.module.fitting.height": "설치높이", "modal.module.basic.setting.module.fitting.height": "설치높이",
"modal.module.basic.setting.module.standard.wind.speed": "기준 풍속", "modal.module.basic.setting.module.standard.wind.speed": "기준 풍속",
"modal.module.basic.setting.module.standard.snowfall.amount": "기준 적설량", "modal.module.basic.setting.module.standard.snowfall.amount": "기준 적설량",

View File

@ -59,6 +59,46 @@
.ag-icon-filter::before{ .ag-icon-filter::before{
color: #fff; color: #fff;
} }
.ag-body-vertical-scroll{
width: 4px !important;
max-width: 4px !important;
min-width: 4px !important;
.ag-body-vertical-scroll-viewport{
width: 4px !important;
max-width: 4px !important;
min-width: 4px !important;
&::-webkit-scrollbar {
width: 4px;
background-color: transparent;
}
&::-webkit-scrollbar-thumb {
background-color: #C1CCD7;
}
&::-webkit-scrollbar-track {
background-color: transparent;
}
}
}
.ag-body-horizontal-scroll{
height: 4px !important;
max-height: 4px !important;
min-height: 4px !important;
.ag-body-horizontal-scroll-viewport{
height: 4px !important;
max-height: 4px !important;
min-height: 4px !important;
&::-webkit-scrollbar {
height: 4px;
background-color: transparent;
}
&::-webkit-scrollbar-thumb {
background-color: #C1CCD7;
}
&::-webkit-scrollbar-track {
background-color: transparent;
}
}
}
} }
.copy-ico-wrap{ .copy-ico-wrap{
display: flex; display: flex;

View File

@ -5,24 +5,12 @@ $pop-normal-size: 12px;
$alert-color: #101010; $alert-color: #101010;
@keyframes mountpop{ @keyframes mountpop{
from { from{opacity: 0; scale: 0.95;}
opacity: 0; to{opacity: 1; scale: 1;}
scale: 0.95;
}
to {
opacity: 1;
scale: 1;
}
} }
@keyframes unmountpop{ @keyframes unmountpop{
from { from{opacity: 1; scale: 1;}
opacity: 1; to{opacity: 0; scale: 0.95;}
scale: 1;
}
to {
opacity: 0;
scale: 0.95;
}
} }
.normal-font{ .normal-font{
@ -94,10 +82,10 @@ $alert-color: #101010;
width: 800px; width: 800px;
} }
&.mount{ &.mount{
animation: mountpop 0.17s ease-in-out forwards; animation: mountpop .17s ease-in-out forwards;
} }
&.unmount{ &.unmount{
animation: unmountpop 0.17s ease-in-out forwards; animation: unmountpop .17s ease-in-out forwards;
} }
&.alert{ &.alert{
position: absolute; position: absolute;
@ -202,7 +190,7 @@ $alert-color: #101010;
} }
} }
.outer-line-wrap{ .outer-line-wrap{
border-top: 1px solid #3c3c3c; border-top: 1px solid #3C3C3C;
margin-top: 10px; margin-top: 10px;
padding-top: 15px; padding-top: 15px;
margin-bottom: 15px; margin-bottom: 15px;
@ -224,7 +212,7 @@ $alert-color: #101010;
.adsorption-point{ .adsorption-point{
display: flex; display: flex;
align-items: center; align-items: center;
background-color: #3a3a3a; background-color: #3A3A3A;
border-radius: 3px; border-radius: 3px;
padding-left: 11px; padding-left: 11px;
overflow: hidden; overflow: hidden;
@ -245,7 +233,7 @@ $alert-color: #101010;
&.act{ &.act{
i{ i{
color: $pop-color; color: $pop-color;
background-color: #1083e3; background-color: #1083E3;
} }
} }
} }
@ -265,7 +253,7 @@ $alert-color: #101010;
display: flex; display: flex;
align-items: center; align-items: center;
background-color: transparent; background-color: transparent;
border: 1px solid #3d3d3d; border: 1px solid #3D3D3D;
border-radius: 2px; border-radius: 2px;
padding: 15px 10px; padding: 15px 10px;
gap: 20px; gap: 20px;
@ -292,9 +280,7 @@ $alert-color: #101010;
} }
} }
.select-form{ .select-form{
.sort-select { .sort-select{width: 100%;}
width: 100%;
}
} }
.grid-select{ .grid-select{
flex: 1; flex: 1;
@ -339,6 +325,7 @@ $alert-color: #101010;
color: $pop-color; color: $pop-color;
font-weight: $pop-normal-weight; font-weight: $pop-normal-weight;
padding-bottom: 15px; padding-bottom: 15px;
} }
.grid-direction{ .grid-direction{
display: flex; display: flex;
@ -355,17 +342,11 @@ $alert-color: #101010;
background-position: center; background-position: center;
background-size: 16px 15px; background-size: 16px 15px;
border-radius: 50%; border-radius: 50%;
transition: all 0.15s ease-in-out; transition: all .15s ease-in-out;
opacity: 0.6; opacity: 0.6;
&.down { &.down{transform: rotate(180deg);}
transform: rotate(180deg); &.left{transform: rotate(-90deg);}
} &.right{transform: rotate(90deg);}
&.left {
transform: rotate(-90deg);
}
&.right {
transform: rotate(90deg);
}
&:hover, &:hover,
&.act{ &.act{
opacity: 1; opacity: 1;
@ -451,11 +432,10 @@ $alert-color: #101010;
} }
&.light{ &.light{
padding: 0; padding: 0;
th, th,td{
td {
color: $alert-color; color: $alert-color;
border-bottom: none; border-bottom: none;
border-top: 1px solid #efefef; border-top: 1px solid #EFEFEF;
} }
th{ th{
padding: 14px 0; padding: 14px 0;
@ -501,6 +481,7 @@ $alert-color: #101010;
color: $pop-color; color: $pop-color;
font-weight: $pop-normal-weight; font-weight: $pop-normal-weight;
} }
} }
.img-edit-wrap{ .img-edit-wrap{
@ -516,7 +497,7 @@ $alert-color: #101010;
background-color: #fff; background-color: #fff;
border-radius: 2px; border-radius: 2px;
cursor: pointer; cursor: pointer;
transition: all 0.15s ease-in-out; transition: all .15s ease-in-out;
.img-edit{ .img-edit{
width: 16px; width: 16px;
height: 16px; height: 16px;
@ -536,6 +517,7 @@ $alert-color: #101010;
margin-left: 10px; margin-left: 10px;
input{ input{
flex: 1; flex: 1;
} }
.img-check{ .img-check{
flex: none; flex: none;
@ -561,12 +543,8 @@ $alert-color: #101010;
background-repeat: no-repeat; background-repeat: no-repeat;
background-position: center; background-position: center;
background-size: cover; background-size: cover;
&.fail { &.fail{background-image: url(../../public/static/images/canvas/img_check_fail.svg);}
background-image: url(../../public/static/images/canvas/img_check_fail.svg); &.success{background-image: url(../../public/static/images/canvas/img_check_success.svg);}
}
&.success {
background-image: url(../../public/static/images/canvas/img_check_success.svg);
}
} }
} }
@ -646,7 +624,7 @@ $alert-color: #101010;
align-items: center; align-items: center;
justify-content: center; justify-content: center;
width: 50%; width: 50%;
background-color: #3d3d3d; background-color: #3D3D3D;
border-radius: 2px ; border-radius: 2px ;
} }
} }
@ -654,7 +632,7 @@ $alert-color: #101010;
// 외벽선 속성 설정 // 외벽선 속성 설정
.properties-guide{ .properties-guide{
font-size: $pop-normal-size; font-size: $pop-normal-size;
color: #aaa; color: #AAA;
font-weight: $pop-normal-weight; font-weight: $pop-normal-weight;
margin-bottom: 14px; margin-bottom: 14px;
} }
@ -683,17 +661,17 @@ $alert-color: #101010;
color: #fff; color: #fff;
font-weight: 700; font-weight: 700;
border-radius: 2px; border-radius: 2px;
transition: all 0.15s ease-in-out; transition: all .15s ease-in-out;
&.green{ &.green{
background-color: #305941; background-color: #305941;
border: 1px solid #45cd7d; border: 1px solid #45CD7D;
&:hover{ &:hover{
background-color: #3a6b4e; background-color: #3a6b4e;
} }
} }
&.blue{ &.blue{
background-color: #2e5360; background-color: #2E5360;
border: 1px solid #3fbae6; border: 1px solid #3FBAE6;
&:hover{ &:hover{
background-color: #365f6e; background-color: #365f6e;
} }
@ -715,8 +693,8 @@ $alert-color: #101010;
justify-content: center; justify-content: center;
width: 100%; width: 100%;
padding: 13px; padding: 13px;
background-color: #3d3d3d; background-color: #3D3D3D;
transition: background 0.15s ease-in-out; transition: background .15s ease-in-out;
img{ img{
max-width: 100%; max-width: 100%;
} }
@ -727,17 +705,13 @@ $alert-color: #101010;
color: $pop-color; color: $pop-color;
margin-top: 10px; margin-top: 10px;
text-align: center; text-align: center;
transition: color 0.15s ease-in-out; transition: color .15s ease-in-out;
} }
.shape-menu-box{ .shape-menu-box{
&.act, &.act,
&:hover{ &:hover{
.shape-box { .shape-box{background-color: #008BFF;}
background-color: #008bff; .shape-title{color: #008BFF;}
}
.shape-title {
color: #008bff;
}
} }
} }
} }
@ -752,7 +726,7 @@ $alert-color: #101010;
} }
.discrimination-box{ .discrimination-box{
padding: 16px 12px; padding: 16px 12px;
border: 1px solid #3d3d3d; border: 1px solid #3D3D3D;
border-radius: 2px; border-radius: 2px;
} }
@ -785,12 +759,12 @@ $alert-color: #101010;
align-items: center; align-items: center;
justify-content: center; justify-content: center;
padding: 5px; padding: 5px;
background-color: #3d3d3d; background-color: #3D3D3D;
border: 1px solid #3d3d3d; border: 1px solid #3D3D3D;
border-radius: 2px; border-radius: 2px;
cursor: pointer; cursor: pointer;
&.act{ &.act{
border: 1px solid #ed0004; border: 1px solid #ED0004;
} }
} }
&:last-child{ &:last-child{
@ -889,7 +863,7 @@ $alert-color: #101010;
border: 1px solid #646464; border: 1px solid #646464;
border-radius: 2px; border-radius: 2px;
padding: 0 10px; padding: 0 10px;
transition: all 0.15s ease-in-out; transition: all .15s ease-in-out;
i{ i{
height: 15px; height: 15px;
display: block; display: block;
@ -897,7 +871,7 @@ $alert-color: #101010;
background-repeat: no-repeat; background-repeat: no-repeat;
background-position: center; background-position: center;
background-size: cover; background-size: cover;
transition: all 0.15s ease-in-out; transition: all .15s ease-in-out;
&.allocation01{ &.allocation01{
background-image: url(../../public/static/images/canvas/allocation_icon01_white.svg); background-image: url(../../public/static/images/canvas/allocation_icon01_white.svg);
width: 15px; width: 15px;
@ -950,9 +924,7 @@ $alert-color: #101010;
height: 34px; height: 34px;
background-color: #373737; background-color: #373737;
border: 1px solid #676767; border: 1px solid #676767;
transition: transition: background .15s ease-in-out, border .15s ease-in-out;
background 0.15s ease-in-out,
border 0.15s ease-in-out;
.shape-box{ .shape-box{
display: flex; display: flex;
justify-content: center; justify-content: center;
@ -964,8 +936,8 @@ $alert-color: #101010;
} }
&.act, &.act,
&:hover{ &:hover{
border-color: #008bff; border-color: #008BFF;
background-color: #008bff; background-color: #008BFF;
} }
} }
} }
@ -980,27 +952,18 @@ $alert-color: #101010;
.library-btn{ .library-btn{
width: 100%; width: 100%;
height: 34px; height: 34px;
border: 1px solid #6c6c6c; border: 1px solid #6C6C6C;
border-radius: 2px; border-radius: 2px;
background-color: #373737; background-color: #373737;
background-repeat: no-repeat; background-repeat: no-repeat;
background-position: center; background-position: center;
transition: all 0.15s ease-in-out; transition: all .15s ease-in-out;
&.ico01 { &.ico01{background-image: url(../../public/static/images/canvas/shape_labrary01.svg); background-size: 19px 18px;}
background-image: url(../../public/static/images/canvas/shape_labrary01.svg); &.ico02{background-image: url(../../public/static/images/canvas/shape_labrary02.svg); background-size: 15px 20px;}
background-size: 19px 18px; &.ico03{background-image: url(../../public/static/images/canvas/shape_labrary03.svg); background-size: 19px 16px;}
}
&.ico02 {
background-image: url(../../public/static/images/canvas/shape_labrary02.svg);
background-size: 15px 20px;
}
&.ico03 {
background-image: url(../../public/static/images/canvas/shape_labrary03.svg);
background-size: 19px 16px;
}
&:hover{ &:hover{
border-color: #1083e3; border-color: #1083E3;
background-color: #1083e3; background-color: #1083E3;
} }
} }
} }
@ -1086,27 +1049,11 @@ $alert-color: #101010;
position: absolute; position: absolute;
font-size: 12px; font-size: 12px;
font-weight: 500; font-weight: 500;
color: #b1b1b1; color: #B1B1B1;
&.top { &.top{top: 0; left: 50%; transform: translateX(-50%);}
top: 0; &.right{top: 50%; right: 0; transform: translateY(-50%);}
left: 50%; &.bottom{bottom: 0; left: 50%; transform: translateX(-50%);}
transform: translateX(-50%); &.left{top: 50%; left: 0; transform: translateY(-50%);}
}
&.right {
top: 50%;
right: 0;
transform: translateY(-50%);
}
&.bottom {
bottom: 0;
left: 50%;
transform: translateX(-50%);
}
&.left {
top: 50%;
left: 0;
transform: translateY(-50%);
}
} }
.plane-btn{ .plane-btn{
position: absolute; position: absolute;
@ -1118,27 +1065,11 @@ $alert-color: #101010;
background-repeat: no-repeat; background-repeat: no-repeat;
background-position: center; background-position: center;
border-radius: 50%; border-radius: 50%;
transition: all 0.15s ease-in-out; transition: all .15s ease-in-out;
&.up { &.up{top: 22px; left: 50%; transform: translateX(-50%);}
top: 22px; &.right{top: 50%; right: 32px; transform: translateY(-50%) rotate(90deg);}
left: 50%; &.down{bottom: 22px; left: 50%; transform: translateX(-50%) rotate(180deg);}
transform: translateX(-50%); &.left{top: 50%; left: 32px; transform: translateY(-50%) rotate(270deg);}
}
&.right {
top: 50%;
right: 32px;
transform: translateY(-50%) rotate(90deg);
}
&.down {
bottom: 22px;
left: 50%;
transform: translateX(-50%) rotate(180deg);
}
&.left {
top: 50%;
left: 32px;
transform: translateY(-50%) rotate(270deg);
}
&:hover, &:hover,
&.act{ &.act{
background-color: #fff; background-color: #fff;
@ -1204,7 +1135,7 @@ $alert-color: #101010;
.warning{ .warning{
font-size: $pop-normal-size; font-size: $pop-normal-size;
font-weight: $pop-normal-weight; font-weight: $pop-normal-weight;
color: #ffafaf; color: #FFAFAF;
} }
// 속성 변경 // 속성 변경
@ -1260,157 +1191,37 @@ $alert-color: #101010;
top: 12.5px; top: 12.5px;
left: 50%; left: 50%;
font-size: 11px; font-size: 11px;
color: #8b8b8b; color: #8B8B8B;
font-weight: 500; font-weight: 500;
-webkit-user-select: none; -webkit-user-select: none;
-moz-user-select: none; -moz-user-select: none;
-ms-use-select: none; -ms-use-select: none;
user-select: none; user-select: none;
} }
&:nth-child(1) { &:nth-child(1) { transform: rotate(180deg) translate(-50%, -50%); i{transform: translateX(-50%) rotate(180deg);}}
transform: rotate(180deg) translate(-50%, -50%); &:nth-child(2) { transform: rotate(195deg) translate(-50%, -50%); i{transform: translateX(-50%) rotate(165deg);}}
i { &:nth-child(3) { transform: rotate(210deg) translate(-50%, -50%); i{transform: translateX(-50%) rotate(150deg);}}
transform: translateX(-50%) rotate(180deg); &:nth-child(4) { transform: rotate(225deg) translate(-50%, -50%); i{transform: translateX(-50%) rotate(135deg);}}
} &:nth-child(5) { transform: rotate(240deg) translate(-50%, -50%); i{transform: translateX(-50%) rotate(120deg);}}
} &:nth-child(6) { transform: rotate(255deg) translate(-50%, -50%); i{transform: translateX(-50%) rotate(105deg);}}
&:nth-child(2) { &:nth-child(7) { transform: rotate(270deg) translate(-50%, -50%); i{transform: translateX(-50%) rotate(90deg);}}
transform: rotate(195deg) translate(-50%, -50%); &:nth-child(8) { transform: rotate(285deg) translate(-50%, -50%); i{transform: translateX(-50%) rotate(75deg);}}
i { &:nth-child(9) { transform: rotate(300deg) translate(-50%, -50%); i{transform: translateX(-50%) rotate(60deg);}}
transform: translateX(-50%) rotate(165deg); &:nth-child(10) { transform: rotate(315deg) translate(-50%, -50%); i{transform: translateX(-50%) rotate(45deg);}}
} &:nth-child(11) { transform: rotate(330deg) translate(-50%, -50%); i{transform: translateX(-50%) rotate(30deg);}}
} &:nth-child(12) { transform: rotate(345deg) translate(-50%, -50%); i{transform: translateX(-50%) rotate(15deg);}}
&:nth-child(3) { &:nth-child(13) { transform: rotate(0deg) translate(-50%, -50%); i{transform: translateX(-50%) rotate(0deg);}}
transform: rotate(210deg) translate(-50%, -50%); &:nth-child(14) { transform: rotate(15deg) translate(-50%, -50%); i{transform: translateX(-50%) rotate(-15deg);}}
i { &:nth-child(15) { transform: rotate(30deg) translate(-50%, -50%); i{transform: translateX(-50%) rotate(-30deg);}}
transform: translateX(-50%) rotate(150deg); &:nth-child(16) { transform: rotate(45deg) translate(-50%, -50%); i{transform: translateX(-50%) rotate(-45deg);}}
} &:nth-child(17) { transform: rotate(60deg) translate(-50%, -50%); i{transform: translateX(-50%) rotate(-60deg);}}
} &:nth-child(18) { transform: rotate(75deg) translate(-50%, -50%); i{transform: translateX(-50%) rotate(-75deg);}}
&:nth-child(4) { &:nth-child(19) { transform: rotate(90deg) translate(-50%, -50%); i{transform: translateX(-50%) rotate(-90deg);}}
transform: rotate(225deg) translate(-50%, -50%); &:nth-child(20) { transform: rotate(105deg) translate(-50%, -50%); i{transform: translateX(-50%) rotate(-105deg);}}
i { &:nth-child(21) { transform: rotate(120deg) translate(-50%, -50%); i{transform: translateX(-50%) rotate(-120deg);}}
transform: translateX(-50%) rotate(135deg); &:nth-child(22) { transform: rotate(135deg) translate(-50%, -50%); i{transform: translateX(-50%) rotate(-135deg);}}
} &:nth-child(23) { transform: rotate(150deg) translate(-50%, -50%); i{transform: translateX(-50%) rotate(-150deg);}}
} &:nth-child(24) { transform: rotate(165deg) translate(-50%, -50%); i{transform: translateX(-50%) rotate(-165deg);}}
&:nth-child(5) {
transform: rotate(240deg) translate(-50%, -50%);
i {
transform: translateX(-50%) rotate(120deg);
}
}
&:nth-child(6) {
transform: rotate(255deg) translate(-50%, -50%);
i {
transform: translateX(-50%) rotate(105deg);
}
}
&:nth-child(7) {
transform: rotate(270deg) translate(-50%, -50%);
i {
transform: translateX(-50%) rotate(90deg);
}
}
&:nth-child(8) {
transform: rotate(285deg) translate(-50%, -50%);
i {
transform: translateX(-50%) rotate(75deg);
}
}
&:nth-child(9) {
transform: rotate(300deg) translate(-50%, -50%);
i {
transform: translateX(-50%) rotate(60deg);
}
}
&:nth-child(10) {
transform: rotate(315deg) translate(-50%, -50%);
i {
transform: translateX(-50%) rotate(45deg);
}
}
&:nth-child(11) {
transform: rotate(330deg) translate(-50%, -50%);
i {
transform: translateX(-50%) rotate(30deg);
}
}
&:nth-child(12) {
transform: rotate(345deg) translate(-50%, -50%);
i {
transform: translateX(-50%) rotate(15deg);
}
}
&:nth-child(13) {
transform: rotate(0deg) translate(-50%, -50%);
i {
transform: translateX(-50%) rotate(0deg);
}
}
&:nth-child(14) {
transform: rotate(15deg) translate(-50%, -50%);
i {
transform: translateX(-50%) rotate(-15deg);
}
}
&:nth-child(15) {
transform: rotate(30deg) translate(-50%, -50%);
i {
transform: translateX(-50%) rotate(-30deg);
}
}
&:nth-child(16) {
transform: rotate(45deg) translate(-50%, -50%);
i {
transform: translateX(-50%) rotate(-45deg);
}
}
&:nth-child(17) {
transform: rotate(60deg) translate(-50%, -50%);
i {
transform: translateX(-50%) rotate(-60deg);
}
}
&:nth-child(18) {
transform: rotate(75deg) translate(-50%, -50%);
i {
transform: translateX(-50%) rotate(-75deg);
}
}
&:nth-child(19) {
transform: rotate(90deg) translate(-50%, -50%);
i {
transform: translateX(-50%) rotate(-90deg);
}
}
&:nth-child(20) {
transform: rotate(105deg) translate(-50%, -50%);
i {
transform: translateX(-50%) rotate(-105deg);
}
}
&:nth-child(21) {
transform: rotate(120deg) translate(-50%, -50%);
i {
transform: translateX(-50%) rotate(-120deg);
}
}
&:nth-child(22) {
transform: rotate(135deg) translate(-50%, -50%);
i {
transform: translateX(-50%) rotate(-135deg);
}
}
&:nth-child(23) {
transform: rotate(150deg) translate(-50%, -50%);
i {
transform: translateX(-50%) rotate(-150deg);
}
}
&:nth-child(24) {
transform: rotate(165deg) translate(-50%, -50%);
i {
transform: translateX(-50%) rotate(-165deg);
}
}
&.act{ &.act{
&::after{ &::after{
content: ''; content: '';
@ -1464,13 +1275,13 @@ $alert-color: #101010;
border-radius: 2px; border-radius: 2px;
background-color: transparent; background-color: transparent;
font-size: 12px; font-size: 12px;
color: #aaa; color: #AAA;
text-align: center; text-align: center;
cursor: default; cursor: default;
transition: all 0.15s ease-in-out; transition: all .15s ease-in-out;
&.act{ &.act{
background-color: #1083e3; background-color: #1083E3;
border: 1px solid #1083e3; border: 1px solid #1083E3;
color: #fff; color: #fff;
font-weight: 500; font-weight: 500;
} }
@ -1483,7 +1294,7 @@ $alert-color: #101010;
background-position: center; background-position: center;
background-size: cover; background-size: cover;
background-image: url(../../public/static/images/canvas/module_tab_arr.svg); background-image: url(../../public/static/images/canvas/module_tab_arr.svg);
transition: all 0.15s ease-in-out; transition: all .15s ease-in-out;
&.act{ &.act{
background-image: url(../../public/static/images/canvas/module_tab_arr_white.svg); background-image: url(../../public/static/images/canvas/module_tab_arr_white.svg);
} }
@ -1509,16 +1320,14 @@ $alert-color: #101010;
transform: translateX(-50%); transform: translateX(-50%);
width: 1px; width: 1px;
height: 6px; height: 6px;
background-color: #8b8b8b; background-color: #8B8B8B;
} }
} }
i{ i{
top: 32px; top: 32px;
} }
&.act{ &.act{
i { i{color: #8B8B8B;}
color: #8b8b8b;
}
} }
} }
} }
@ -1550,7 +1359,7 @@ $alert-color: #101010;
height: 30px; height: 30px;
font-size: 12px; font-size: 12px;
font-weight: 400; font-weight: 400;
transition: all 0.15s ease-in-out; transition: all .15s ease-in-out;
&:first-child{ &:first-child{
border-left: 1px solid #505050; border-left: 1px solid #505050;
} }
@ -1564,7 +1373,7 @@ $alert-color: #101010;
.module-table-box{ .module-table-box{
flex: 1; flex: 1;
background-color: #3d3d3d; background-color: #3D3D3D;
border-radius: 2px; border-radius: 2px;
.module-table-inner{ .module-table-inner{
padding: 10px; padding: 10px;
@ -1577,7 +1386,7 @@ $alert-color: #101010;
padding: 10px 0; padding: 10px 0;
font-size: 12px; font-size: 12px;
color: #fff; color: #fff;
border-bottom: 1px solid #4d4d4d; border-bottom: 1px solid #4D4D4D;
} }
.eaves-keraba-table{ .eaves-keraba-table{
width: 100%; width: 100%;
@ -1600,7 +1409,7 @@ $alert-color: #101010;
.warning-guide{ .warning-guide{
padding: 20px; padding: 20px;
.warning{ .warning{
color: #ffcaca; color: #FFCACA;
max-height: 55px; max-height: 55px;
overflow-y: auto; overflow-y: auto;
padding-right: 30px; padding-right: 30px;
@ -1609,7 +1418,7 @@ $alert-color: #101010;
background-color: transparent; background-color: transparent;
} }
&::-webkit-scrollbar-thumb { &::-webkit-scrollbar-thumb {
background-color: #d9d9d9; background-color: #D9D9D9;
} }
&::-webkit-scrollbar-track { &::-webkit-scrollbar-track {
background-color: transparent; background-color: transparent;
@ -1620,7 +1429,7 @@ $alert-color: #101010;
.module-self-table{ .module-self-table{
display: table; display: table;
border-top: 1px solid #4d4d4d; border-top: 1px solid #4D4D4D;
border-collapse: collapse; border-collapse: collapse;
width: 100%; width: 100%;
.self-table-item{ .self-table-item{
@ -1629,7 +1438,7 @@ $alert-color: #101010;
.self-item-th{ .self-item-th{
display: table-cell; display: table-cell;
vertical-align: middle; vertical-align: middle;
border-bottom: 1px solid #4d4d4d; border-bottom: 1px solid #4D4D4D;
} }
.self-item-th{ .self-item-th{
width: 60px; width: 60px;
@ -1657,7 +1466,7 @@ $alert-color: #101010;
.hexagonal-wrap{ .hexagonal-wrap{
.hexagonal-item{ .hexagonal-item{
padding: 15px 0; padding: 15px 0;
border-bottom: 1px solid #4d4d4d; border-bottom: 1px solid #4D4D4D;
&:first-child{ &:first-child{
padding-top: 0; padding-top: 0;
} }
@ -1695,7 +1504,7 @@ $alert-color: #101010;
background-color: transparent; background-color: transparent;
} }
&::-webkit-scrollbar-thumb { &::-webkit-scrollbar-thumb {
background-color: #d9d9d9; background-color: #D9D9D9;
} }
&::-webkit-scrollbar-track { &::-webkit-scrollbar-track {
background-color: transparent; background-color: transparent;
@ -1713,7 +1522,7 @@ $alert-color: #101010;
gap: 5px; gap: 5px;
min-height: 60px; min-height: 60px;
padding: 12px; padding: 12px;
border: 1px solid rgba(255, 255, 255, 0.2); border: 1px solid rgba(255, 255, 255, 0.20);
span{ span{
display: inline-flex; display: inline-flex;
align-items: center; align-items: center;
@ -1746,7 +1555,7 @@ $alert-color: #101010;
background-color: transparent; background-color: transparent;
} }
&::-webkit-scrollbar-thumb { &::-webkit-scrollbar-thumb {
background-color: #d9d9d9; background-color: #D9D9D9;
} }
&::-webkit-scrollbar-track { &::-webkit-scrollbar-track {
background-color: transparent; background-color: transparent;
@ -1805,10 +1614,10 @@ $alert-color: #101010;
height: 16px; height: 16px;
&.pink{ &.pink{
border: 2px solid #ce1c9c; border: 2px solid #ce1c9c;
background-color: #16417d; background-color: #16417D;
} }
&.white{ &.white{
border: 2px solid #fff; border: 2px solid #FFF;
background-color: #001027; background-color: #001027;
} }
} }
@ -1833,7 +1642,7 @@ $alert-color: #101010;
.react-colorful__pointer{ .react-colorful__pointer{
width: 15px; width: 15px;
height: 15px; height: 15px;
border: 4px solid #fff; border: 4px solid #Fff;
} }
.react-colorful__saturation{ .react-colorful__saturation{
border-radius: 2px; border-radius: 2px;
@ -1923,6 +1732,7 @@ $alert-color: #101010;
min-height: 80px; min-height: 80px;
background-color: #fff; background-color: #fff;
} }
} }
// 치수선 설정 // 치수선 설정
@ -2042,22 +1852,10 @@ $alert-color: #101010;
border-radius: 50%; border-radius: 50%;
} }
} }
&:nth-child(1) { &:nth-child(1){ top: 0; left: 0; }
top: 0; &:nth-child(2){ top: 0; right: 0; }
left: 0; &:nth-child(3){ bottom: 0; left: 0; }
} &:nth-child(4){ bottom: 0; right: 0; }
&:nth-child(2) {
top: 0;
right: 0;
}
&:nth-child(3) {
bottom: 0;
left: 0;
}
&:nth-child(4) {
bottom: 0;
right: 0;
}
} }
.size-box{ .size-box{
position: absolute; position: absolute;
@ -2129,3 +1927,81 @@ $alert-color: #101010;
} }
border-bottom: 1px solid #424242; border-bottom: 1px solid #424242;
} }
// 지붕모듈선택 변경
.module-table-box{
&.none-flex{
flex: none;
width: 230px;
}
}
.module-table-flex-wrap{
&.tab2{
margin-top: 10px;
gap: 15px;
}
.module-flex-item{
flex: 1;
.module-flex-item-tit{
font-size: 12px;
font-weight: 500;
color: #fff;
padding-bottom: 10px;
border-bottom: 1px solid #4D4D4D;
}
.flex-item-btn-wrap{
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 8px;
margin-bottom: 24px;
}
&.non-flex{
display: flex;
flex-direction: column;
justify-content: flex-end;
flex: none;
width: 260px;
}
}
}
.module-table-box{
.module-table-inner{
.module-table-flex-wrap{
&.tab2{
.eaves-keraba-table{
.eaves-keraba-th{
width: 90px;
}
.eaves-keraba-td{
padding-left: 0;
padding-bottom: 5px;
}
}
}
}
}
}
.keraba-flex{
display: flex;
align-items: center;
.grid-select{
flex: none;
width: 110px;
}
.outline-form{
justify-content: flex-end;
}
}
.module-bottom{
padding-bottom: 15px;
border-bottom: 1px solid #4D4D4D;
}
.reset-word{
font-size: 12px;
color: #FFCACA;
font-weight: 400;
margin-top: 10px;
}

View File

@ -226,8 +226,8 @@ button{
border: 1px solid #484848; border: 1px solid #484848;
color: #fff; color: #fff;
&.blue{ &.blue{
background-color: #414E6C; background-color: #4C6FBF;
border: 1px solid #414E6C; border: 1px solid #4C6FBF;
&:hover{ &:hover{
background-color: #414E6C; background-color: #414E6C;
border: 1px solid #414E6C; border: 1px solid #414E6C;

View File

@ -337,3 +337,35 @@
} }
} }
} }
// 견적 복사
.estimate-copy-info-item{
margin-bottom: 20px;
&:last-child{
margin-bottom: 0;
}
.estimate-copy-info-tit{
font-size: 13px;
color: #101010;
font-weight: 500;
margin-bottom: 10px;
}
.estimate-copy-info-box{
display: flex;
gap: 5px;
.estimate-copy-sel{
flex: 1 1 auto;
}
.estimate-copy-id{
flex: none;
display: flex;
align-items: center;
justify-content: center;
width: 150px;
background-color: #FAFAFA;
border: 1px solid #EEEEEE;
font-size: 13px;
color: #999;
}
}
}