--- src/main/webapp/WEB-INF/jsp/web/com/webCommonHeader.jsp
+++ src/main/webapp/WEB-INF/jsp/web/com/webCommonHeader.jsp
... | ... | @@ -66,114 +66,139 @@ |
| 66 | 66 |
|
| 67 | 67 |
<!-- ============== header ============== --> |
| 68 | 68 |
<header class="header"> |
| 69 |
- <div class="header_top"> |
|
| 70 |
- <div class="inner"> |
|
| 71 |
- <div class="area_left"></div> |
|
| 72 |
- <ul class="user_menu"> |
|
| 73 |
- <li><a href="#">본인인증</a></li> |
|
| 74 |
- <li><a href="#">마이페이지</a></li> |
|
| 75 |
- </ul> |
|
| 76 |
- </div> |
|
| 77 |
- </div> |
|
| 78 | 69 |
<div class="header_container"> |
| 79 | 70 |
<div class="inner"> |
| 80 |
- <h1 class="logo"><a href="#"><img src="/publish/usr/images/common/logo.png" alt=""></a></h1> |
|
| 71 |
+ <h1 class="logo"><a href="/web/main/mainPage.do"><img src="/publish/usr/images/common/logo.png" alt=""></a></h1> |
|
| 81 | 72 |
<nav> |
| 82 | 73 |
<ul class="gnb"> |
| 83 | 74 |
<li> |
| 84 |
- <a href="#" class="depth01">menu1</a> |
|
| 75 |
+ <a href="#" class="depth01">COMPANY</a> |
|
| 85 | 76 |
<div class="depth02_container"> |
| 86 |
- <!-- <div class="title_wrap"> |
|
| 87 |
- <h2>menu1</h2> |
|
| 88 |
- </div> --> |
|
| 89 | 77 |
<ul class="depth02_ul"> |
| 90 |
- <li> |
|
| 91 |
- <a href="#" class="depth02">메뉴1이름</a> |
|
| 92 |
- <ul class="depth03_ul"> |
|
| 93 |
- <li><a href="#" class="depth03">deptn03메뉴</a></li> |
|
| 94 |
- <li><a href="#" class="depth03">deptn03메뉴</a></li> |
|
| 95 |
- <li><a href="#" class="depth03">deptn03메뉴</a></li> |
|
| 96 |
- <li><a href="#" class="depth03">deptn03메뉴</a></li> |
|
| 97 |
- </ul> |
|
| 98 |
- </li> |
|
| 99 |
- <li><a href="#" class="depth02">메뉴1이름</a></li> |
|
| 100 |
- <li><a href="#" class="depth02">메뉴1이름</a></li> |
|
| 101 |
- <li><a href="#" class="depth02">메뉴1이름</a></li> |
|
| 78 |
+ <li><a href="/web/content.do?proFn=999110005" class="depth02">설립배경</a></li> |
|
| 79 |
+ <li><a href="/publish/usr/company/history.html" class="depth02">연혁</a></li> |
|
| 80 |
+ <li><a href="/web/content.do?proFn=999130001" class="depth02">조직도</a></li> |
|
| 81 |
+ <li><a href="/web/content.do?proFn=999140001" class="depth02">오시는길</a></li> |
|
| 102 | 82 |
</ul> |
| 103 | 83 |
</div> |
| 104 | 84 |
</li> |
| 105 | 85 |
<li> |
| 106 |
- <a href="#" class="depth01">menu1</a> |
|
| 86 |
+ <a href="#" class="depth01">Platform Tech</a> |
|
| 107 | 87 |
<div class="depth02_container"> |
| 108 | 88 |
<ul class="depth02_ul"> |
| 109 |
- <li> |
|
| 110 |
- <a href="#" class="depth02">메뉴2이름</a> |
|
| 111 |
- <ul class="depth03_ul"> |
|
| 112 |
- <li><a href="#" class="depth03">deptn03메뉴</a></li> |
|
| 113 |
- <li><a href="#" class="depth03">deptn03메뉴</a></li> |
|
| 114 |
- <li><a href="#" class="depth03">deptn03메뉴</a></li> |
|
| 115 |
- <li><a href="#" class="depth03">deptn03메뉴</a></li> |
|
| 116 |
- </ul> |
|
| 117 |
- </li> |
|
| 118 |
- <li><a href="#" class="depth02">메뉴2이름</a></li> |
|
| 119 |
- <li><a href="#" class="depth02">메뉴2이름</a></li> |
|
| 120 |
- <li><a href="#" class="depth02">메뉴2이름</a></li> |
|
| 89 |
+ <li><a href="/publish/usr/platform_tech/background.html" class="depth02">연구배경</a></li> |
|
| 90 |
+ <li><a href="/publish/usr/platform_tech/autophagy.html" class="depth02">Organelle Selective Autophagy </a></li> |
|
| 121 | 91 |
</ul> |
| 122 | 92 |
</div> |
| 123 | 93 |
</li> |
| 124 | 94 |
<li> |
| 125 |
- <a href="#" class="depth01">menu1</a> |
|
| 95 |
+ <a href="#" class="depth01">Major Result</a> |
|
| 126 | 96 |
<div class="depth02_container"> |
| 127 |
- <!-- <div class="title_wrap"> |
|
| 128 |
- <h2>menu1</h2> |
|
| 129 |
- </div> --> |
|
| 130 | 97 |
<ul class="depth02_ul"> |
| 131 |
- <li> |
|
| 132 |
- <a href="#" class="depth02">메뉴3이름</a> |
|
| 133 |
- <ul class="depth03_ul"> |
|
| 134 |
- <li><a href="#" class="depth03">deptn03메뉴</a></li> |
|
| 135 |
- <li><a href="#" class="depth03">deptn03메뉴</a></li> |
|
| 136 |
- <li><a href="#" class="depth03">deptn03메뉴</a></li> |
|
| 137 |
- <li><a href="#" class="depth03">deptn03메뉴</a></li> |
|
| 138 |
- </ul> |
|
| 139 |
- </li> |
|
| 140 |
- <li><a href="#" class="depth02">메뉴3이름</a></li> |
|
| 141 |
- <li><a href="#" class="depth02">메뉴3이름</a></li> |
|
| 142 |
- <li><a href="#" class="depth02">메뉴3이름</a></li> |
|
| 143 |
- </ul> |
|
| 144 |
- </div> |
|
| 145 |
- </li> |
|
| 146 |
- <li> |
|
| 147 |
- <a href="#" class="depth01">menu1</a> |
|
| 148 |
- <div class="depth02_container"> |
|
| 149 |
- <!-- <div class="title_wrap"> |
|
| 150 |
- <h2>menu1</h2> |
|
| 151 |
- </div> --> |
|
| 152 |
- <ul class="depth02_ul"> |
|
| 153 |
- <li> |
|
| 154 |
- <a href="#" class="depth02">메뉴4이름</a> |
|
| 155 |
- <ul class="depth03_ul"> |
|
| 156 |
- <li><a href="#" class="depth03">deptn03메뉴</a></li> |
|
| 157 |
- <li><a href="#" class="depth03">deptn03메뉴</a></li> |
|
| 158 |
- <li><a href="#" class="depth03">deptn03메뉴</a></li> |
|
| 159 |
- <li><a href="#" class="depth03">deptn03메뉴</a></li> |
|
| 160 |
- </ul> |
|
| 161 |
- </li> |
|
| 162 |
- <li><a href="#" class="depth02">메뉴4이름</a></li> |
|
| 163 |
- <li><a href="#" class="depth02">메뉴4이름</a></li> |
|
| 164 |
- <li><a href="#" class="depth02">메뉴4이름</a></li> |
|
| 98 |
+ <li><a href="/publish/usr/major_result/mitophagy.html" class="depth02">Mitophagy</a></li> |
|
| 99 |
+ <li><a href="/publish/usr/major_result/pexophagy.html" class="depth02">Pexophagy</a></li> |
|
| 100 |
+ <li><a href="/publish/usr/major_result/melanophagy.html" class="depth02">Melanophagy</a></li> |
|
| 101 |
+ <li><a href="/publish/usr/major_result/ciliogenesis.html" class="depth02">Ciliogenesis</a></li> |
|
| 102 |
+ <li><a href="/publish/usr/major_result/anticancer.html" class="depth02">Anti Cancer</a></li> |
|
| 103 |
+ <li><a href="/publish/usr/major_result/pipeline.html" class="depth02">Pipeline Summary</a></li> |
|
| 104 |
+ <li><a href="/publish/usr/major_result/rd.html" class="depth02">R&D</a></li> |
|
| 165 | 105 |
</ul> |
| 166 | 106 |
</div> |
| 167 | 107 |
</li> |
| 168 | 108 |
</ul> |
| 169 | 109 |
</nav> |
| 110 |
+ |
|
| 111 |
+ <nav class="mobile_nav"> |
|
| 112 |
+ <div class="mobile_nav_top"> |
|
| 113 |
+ <h1 class="logo"><a href="/web/main/mainPage.do"><img src="/publish/usr/images/common/logo.png" alt=""></a></h1> |
|
| 114 |
+ <button type="button" class="btn_close"><i class="icon close"></i></button> |
|
| 115 |
+ </div> |
|
| 116 |
+ <ul class="gnb"> |
|
| 117 |
+ <li> |
|
| 118 |
+ <button type="button" class="depth01">Company <i class="icon arrow bottom"></i></button> |
|
| 119 |
+ <ul class="depth02_ul"> |
|
| 120 |
+ <li><a href="/web/content.do?proFn=999110000" class="depth02">설립배경</a></li> |
|
| 121 |
+ <li><a href="/publish/usr/company/history.html" class="depth02">연혁</a></li> |
|
| 122 |
+ <li><a href="/web/content.do?proFn=999130000" class="depth02">조직도</a></li> |
|
| 123 |
+ <li><a href="/web/content.do?proFn=999140000" class="depth02">오시는길</a></li> |
|
| 124 |
+ </ul> |
|
| 125 |
+ </li> |
|
| 126 |
+ <li> |
|
| 127 |
+ <button type="button" class="depth01">Platform Tech <i class="icon arrow bottom"></i></button> |
|
| 128 |
+ <ul class="depth02_ul"> |
|
| 129 |
+ <li><a href="/publish/usr/platform_tech/background.html" class="depth02">연구배경</a></li> |
|
| 130 |
+ <li><a href="/publish/usr/platform_tech/autophagy.html" class="depth02">Organelle Selective Autophagy </a></li> |
|
| 131 |
+ </ul> |
|
| 132 |
+ </li> |
|
| 133 |
+ <li> |
|
| 134 |
+ <button type="button" class="depth01">Major Result <i class="icon arrow bottom"></i></button> |
|
| 135 |
+ <ul class="depth02_ul"> |
|
| 136 |
+ <li><a href="/publish/usr/major_result/mitophagy.html" class="depth02">Mitophagy</a></li> |
|
| 137 |
+ <li><a href="/publish/usr/major_result/pexophagy.html" class="depth02">Pexophagy</a></li> |
|
| 138 |
+ <li><a href="/publish/usr/major_result/melanophagy.html" class="depth02">Melanophagy</a></li> |
|
| 139 |
+ <li><a href="/publish/usr/major_result/ciliogenesis.html" class="depth02">Ciliogenesis</a></li> |
|
| 140 |
+ <li><a href="/publish/usr/major_result/anticancer.html" class="depth02">Anti Cancer</a></li> |
|
| 141 |
+ <li><a href="/publish/usr/major_result/pipeline.html" class="depth02">Pipeline Summary</a></li> |
|
| 142 |
+ <li><a href="/publish/usr/major_result/rd.html" class="depth02">R&D</a></li> |
|
| 143 |
+ </ul> |
|
| 144 |
+ </li> |
|
| 145 |
+ </ul> |
|
| 146 |
+ </nav> |
|
| 147 |
+ |
|
| 148 |
+ <nav class="sitemap"> |
|
| 149 |
+ <div class="sitemap_top inner"> |
|
| 150 |
+ <h1 class="logo"><a href="/web/main/mainPage.do"><img src="/publish/usr/images/common/logo.png" alt=""></a></h1> |
|
| 151 |
+ <button type="button" class="btn_close"><i class="icon close"></i></button> |
|
| 152 |
+ </div> |
|
| 153 |
+ <div class="inner"> |
|
| 154 |
+ <ul class="sitemenu"> |
|
| 155 |
+ <li> |
|
| 156 |
+ <a href="#" class="depth01">Company</a> |
|
| 157 |
+ <ul class="depth02_ul"> |
|
| 158 |
+ <li><a href="/web/content.do?proFn=999110000" class="depth02">설립배경</a></li> |
|
| 159 |
+ <li><a href="/publish/usr/company/history.html" class="depth02">연혁</a></li> |
|
| 160 |
+ <li><a href="/web/content.do?proFn=999130000" class="depth02">조직도</a></li> |
|
| 161 |
+ <li><a href="/web/content.do?proFn=999140000" class="depth02">오시는길</a></li> |
|
| 162 |
+ </ul> |
|
| 163 |
+ </li> |
|
| 164 |
+ <li> |
|
| 165 |
+ <a href="#" class="depth01">Platform Tech</a> |
|
| 166 |
+ <ul class="depth02_ul"> |
|
| 167 |
+ <li><a href="/publish/usr/platform_tech/background.html" class="depth02">연구배경</a></li> |
|
| 168 |
+ <li><a href="/publish/usr/platform_tech/autophagy.html" class="depth02">Organelle Selective Autophagy </a></li> |
|
| 169 |
+ </ul> |
|
| 170 |
+ </li> |
|
| 171 |
+ <li> |
|
| 172 |
+ <a href="#" class="depth01">Major Result</a> |
|
| 173 |
+ <ul class="depth02_ul"> |
|
| 174 |
+ <li><a href="/publish/usr/major_result/mitophagy.html" class="depth02">Mitophagy</a></li> |
|
| 175 |
+ <li><a href="/publish/usr/major_result/pexophagy.html" class="depth02">Pexophagy</a></li> |
|
| 176 |
+ <li><a href="/publish/usr/major_result/melanophagy.html" class="depth02">Melanophagy</a></li> |
|
| 177 |
+ <li><a href="/publish/usr/major_result/ciliogenesis.html" class="depth02">Ciliogenesis</a></li> |
|
| 178 |
+ <li><a href="/publish/usr/major_result/anticancer.html" class="depth02">Anti Cancer</a></li> |
|
| 179 |
+ <li><a href="/publish/usr/major_result/pipeline.html" class="depth02">Pipeline Summary</a></li> |
|
| 180 |
+ <li><a href="/publish/usr/major_result/rd.html" class="depth02">R&D</a></li> |
|
| 181 |
+ </ul> |
|
| 182 |
+ </li> |
|
| 183 |
+ </ul> |
|
| 184 |
+ </div> |
|
| 185 |
+ </nav> |
|
| 186 |
+ |
|
| 187 |
+ |
|
| 170 | 188 |
<ul class="header_util"> |
| 171 | 189 |
<!-- <li><button type="button" class=""><i></i></button></li> --> |
| 172 |
- <li><button type="button" class="btn_search" title="전체메뉴 보기"><i></i></button></li> |
|
| 190 |
+ <!-- <li><button type="button" class="btn_search" title="전체메뉴 보기"><i></i></button></li> --> |
|
| 191 |
+ <li> |
|
| 192 |
+ <div class="lang_switch"> |
|
| 193 |
+ <i class="icon lang"></i> |
|
| 194 |
+ <button type="button" class="active">KOR</button> |
|
| 195 |
+ <button type="button" class="">ENG</button> |
|
| 196 |
+ </div> |
|
| 197 |
+ </li> |
|
| 173 | 198 |
<li><button type="button" class="btn_sitemap" title="전체메뉴 보기"><i></i></button></li> |
| 174 | 199 |
</ul> |
| 175 | 200 |
</div> |
| 176 | 201 |
|
| 177 | 202 |
</div> |
| 178 | 203 |
</header> |
| 179 |
-<!-- ============== header 끝 ============== -->(No newline at end of file) |
|
| 204 |
+<!-- ============== header 끝 ============== --> |
--- src/main/webapp/WEB-INF/jsp/web/com/webLayout.jsp
+++ src/main/webapp/WEB-INF/jsp/web/com/webLayout.jsp
... | ... | @@ -25,30 +25,25 @@ |
| 25 | 25 |
<meta http-equiv="Content-Security-Policy" content="default-src * self blob: data: gap:; style-src * self 'unsafe-inline' blob: data: gap:; script-src * 'self' 'unsafe-eval' 'unsafe-inline' blob: data: gap:; object-src * 'self' blob: data: gap:; img-src * self 'unsafe-inline' blob: data: gap:; connect-src self * 'unsafe-inline' blob: data: gap:; frame-src * self blob: data: gap:;"> |
| 26 | 26 |
|
| 27 | 27 |
<!-- css --> |
| 28 |
-<link rel="stylesheet" href="/publish/common/css/reset.css"> |
|
| 29 |
-<link rel="stylesheet" href="/publish/common/css/font.css"> |
|
| 30 |
-<link rel="stylesheet" href="/publish/usr/layout/layout.css"> |
|
| 31 |
-<link rel="stylesheet" href="/publish/usr/css/common.css"> |
|
| 32 |
-<link rel="stylesheet" href="/publish/usr/css/button.css"> |
|
| 33 |
-<link rel="stylesheet" href="/publish/usr/css/tab.css"> |
|
| 34 |
-<link rel="stylesheet" href="/publish/usr/css/table.css"> |
|
| 35 |
-<link rel="stylesheet" href="/publish/usr/css/calendar.css"> |
|
| 36 |
-<link rel="stylesheet" href="/publish/usr/css/popup.css"> |
|
| 37 |
-<!-- //css --> |
|
| 28 |
+ <link rel="stylesheet" href="/css/reset.css"> |
|
| 29 |
+ <link rel="stylesheet" href="/css/font.css"> |
|
| 30 |
+ <link rel="stylesheet" href="/publish/usr/layout/layout.css"> |
|
| 31 |
+ <link rel="stylesheet" href="/publish/usr/css/common.css"> |
|
| 32 |
+ <link rel="stylesheet" href="/publish/usr/css/style.css"> |
|
| 33 |
+ <link rel="stylesheet" href="/publish/usr/css/content.css"> |
|
| 34 |
+ <!-- //css --> |
|
| 38 | 35 |
|
| 39 |
-<!-- script --> |
|
| 40 |
-<script src="/publish/common/script/jquery-3.5.0.js"></script> |
|
| 41 |
-<script src="/publish/usr/layout/layout.js"></script> |
|
| 42 |
-<script src="/publish/usr/script/tab.js"></script> |
|
| 43 |
-<script src="/publish/usr/script/popup.js"></script> |
|
| 44 |
-<script src="/publish/usr/script/content.js"></script> |
|
| 45 |
-<script src="/publish/usr/script/toggleCalendar.js"></script> |
|
| 46 |
-<!-- //script --> |
|
| 36 |
+ <!-- script --> |
|
| 37 |
+ <script src="/js/jquery-3.5.0.js"></script> |
|
| 38 |
+ <script src="/publish/usr/script/common.js"></script> |
|
| 39 |
+ <script src="/publish/usr/layout/layout.js"></script> |
|
| 40 |
+ <script src="/publish/usr/script/content.js"></script> |
|
| 41 |
+ <!-- //script --> |
|
| 47 | 42 |
|
| 48 | 43 |
<!-- 캘린더 --> |
| 49 |
-<script type="module" src="/publish/common/script/plugin/datapicker/duet.esm.js"></script> |
|
| 44 |
+<!-- <script type="module" src="/publish/common/script/plugin/datapicker/duet.esm.js"></script> |
|
| 50 | 45 |
<script nomodule src="/publish/common/script/plugin/datapicker/duet.js"></script> |
| 51 |
-<link rel="stylesheet" href="/publish/common/script/plugin/datapicker/default.css"> |
|
| 46 |
+<link rel="stylesheet" href="/publish/common/script/plugin/datapicker/default.css"> --> |
|
| 52 | 47 |
|
| 53 | 48 |
<!-- <link rel="stylesheet" href="/kofair_case_seed/css/reset.css"> |
| 54 | 49 |
<link rel="stylesheet" href="/kofair_case_seed/css/font.css"> |
... | ... | @@ -94,49 +89,6 @@ |
| 94 | 89 |
<script src="/kofair_case_seed/usr/scripts/info.js"></script> --> |
| 95 | 90 |
</c:if> |
| 96 | 91 |
|
| 97 |
- <!-- 본인인증 --> |
|
| 98 |
- <c:if test="${
|
|
| 99 |
- fn:contains(URL , '/web/user/mypage/case/01/168/myCheck.do') |
|
| 100 |
- }"> |
|
| 101 |
- <link rel="stylesheet" href="/kofair_case_seed/usr/style/mypage.css"> |
|
| 102 |
- <script src="/kofair_case_seed/usr/scripts/ui.js"></script> |
|
| 103 |
- <script src="/kofair_case_seed/usr/scripts/mypage.js"></script> |
|
| 104 |
- </c:if> |
|
| 105 |
- |
|
| 106 |
- <!-- 분쟁조정 신청 --> |
|
| 107 |
- <c:if test="${
|
|
| 108 |
- fn:contains(URL, '/web/user') |
|
| 109 |
- && fn:contains(URL, 'mediationStep') |
|
| 110 |
- || fn:contains(URL, '/web/user/mediation/case/01/154/mediationApp.do') |
|
| 111 |
- && fn:contains(URL, '.do') |
|
| 112 |
- }"> |
|
| 113 |
- <link rel="stylesheet" href="/kofair_case_seed/usr/style/popup.css"> |
|
| 114 |
- <link rel="stylesheet" href="/kofair_case_seed/usr/style/request.css"> |
|
| 115 |
- <script src="/kofair_case_seed/usr/scripts/popup.js"></script> |
|
| 116 |
- <script src="/kofair_case_seed/usr/scripts/ui.js"></script> |
|
| 117 |
- <script src="/kofair_case_seed/usr/scripts/request.js"></script> |
|
| 118 |
- |
|
| 119 |
- <!-- 달력 --> |
|
| 120 |
- <link rel="stylesheet" href="/kofair_case_seed/script/plugin/datapicker/default.css"> |
|
| 121 |
- <script src="/kofair_case_seed/script/plugin/datapicker/duet.js"></script> |
|
| 122 |
- <script type="module" src="/kofair_case_seed/script/plugin/datapicker/duet.esm.js"></script> |
|
| 123 |
- <script src="/kofair_case_seed/script/plugin/datapicker/duet.system.js"></script> |
|
| 124 |
- |
|
| 125 |
- </c:if> |
|
| 126 |
- |
|
| 127 |
- <!-- 분쟁조정 사건조회 --> |
|
| 128 |
- <c:if test="${
|
|
| 129 |
- fn:contains(URL, '/web/user') |
|
| 130 |
- && fn:contains(URL, 'mediationStep') |
|
| 131 |
- || fn:contains(URL, '/web/user/mediation/case/01/155/') |
|
| 132 |
- || fn:contains(URL, '/web/user/mediation/case/02/155/') |
|
| 133 |
- || fn:contains(URL, '/web/user/mediation/case/03/155/') |
|
| 134 |
- && fn:contains(URL, '.do') |
|
| 135 |
- }"> |
|
| 136 |
- <link rel="stylesheet" href="/kofair_case_seed/usr/style/request.css"> |
|
| 137 |
- <script src="/kofair_case_seed/usr/scripts/request.js"></script> |
|
| 138 |
- |
|
| 139 |
- </c:if> |
|
| 140 | 92 |
|
| 141 | 93 |
|
| 142 | 94 |
<decorator:head /> |
... | ... | @@ -161,8 +113,7 @@ |
| 161 | 113 |
<c:when test="${!fn:contains(URL , 'main/mainPage.do')}">
|
| 162 | 114 |
<%-- 서브제목 --%> |
| 163 | 115 |
<div class="container sub" id="container"> |
| 164 |
- <c:import url="/web/com/subVisual.do"></c:import> |
|
| 165 |
- <div class="inner"> |
|
| 116 |
+ <%-- <c:import url="/web/com/subVisual.do"></c:import> --%> |
|
| 166 | 117 |
<%-- 좌측메뉴 --%> |
| 167 | 118 |
<c:if test="${
|
| 168 | 119 |
!fn:contains(URL , '/web/user/mypage/case/01/168/myCheck.do') && |
... | ... | @@ -170,8 +121,8 @@ |
| 170 | 121 |
}"> |
| 171 | 122 |
<c:import url="/web/com/leftMenu.do"></c:import> |
| 172 | 123 |
</c:if> |
| 124 |
+ <%-- <c:import url="/web/com/naviWrap.do"></c:import> --%> |
|
| 173 | 125 |
<decorator:body /> |
| 174 |
- </div> |
|
| 175 | 126 |
</div> |
| 176 | 127 |
</c:when> |
| 177 | 128 |
<c:otherwise> |
--- src/main/webapp/WEB-INF/jsp/web/main/mainPage.jsp
+++ src/main/webapp/WEB-INF/jsp/web/main/mainPage.jsp
... | ... | @@ -175,313 +175,60 @@ |
| 175 | 175 |
|
| 176 | 176 |
<!-- ============== 메인비주얼 ============== --> |
| 177 | 177 |
<div class="main_visual"> |
| 178 |
- <div class="inner"> |
|
| 179 | 178 |
<div class="visual_slide swiper"> |
| 180 | 179 |
<div class="swiper-wrapper"> |
| 181 |
- <a href="#" class="swiper-slide">1</a> |
|
| 182 |
- <a href="#" class="swiper-slide">2</a> |
|
| 183 |
- <a href="#" class="swiper-slide">3</a> |
|
| 180 |
+ <a href="#" class="swiper-slide"></a> |
|
| 181 |
+ <a href="#" class="swiper-slide"></a> |
|
| 182 |
+ <a href="#" class="swiper-slide"></a> |
|
| 184 | 183 |
</div> |
| 185 | 184 |
</div> |
| 186 |
- </div> |
|
| 185 |
+ |
|
| 186 |
+ <div class="contents"> |
|
| 187 |
+ <div class="inner"> |
|
| 188 |
+ <div class="text_area"> |
|
| 189 |
+ <b class="title">ORGASIS <span class="line">Organellostasis</span></b> |
|
| 190 |
+ <span class="summary"> |
|
| 191 |
+ 현 약물의 구조적 한계를 극복하는 선택적·자발적 세포소기관<br> |
|
| 192 |
+ 항상성 기반 치료 기전 |
|
| 193 |
+ </span> |
|
| 194 |
+ <div class="slide_pagination"> |
|
| 195 |
+ |
|
| 196 |
+ </div> |
|
| 197 |
+ </div> |
|
| 198 |
+ <ul class="box_contents"> |
|
| 199 |
+ <li class="box purple"> |
|
| 200 |
+ <a href="#"> |
|
| 201 |
+ <b class="title">ORGanelle homeostASIS</b> |
|
| 202 |
+ <span class="summary">현 약물(유전자, 항체 치료제 등)의 한계점을 극복하는 선택적, 자발적 항상성 작용기전 기반의 새로운 신약후보물질의 오아시스</span> |
|
| 203 |
+ </a> |
|
| 204 |
+ </li> |
|
| 205 |
+ <li class="box blue"> |
|
| 206 |
+ <a href="#"> |
|
| 207 |
+ <b class="title">ORGASIS Platform Tech</b> |
|
| 208 |
+ <span class="summary"> |
|
| 209 |
+ 병인, 스트레스, 노화 등 내/외부 자극은 세포 소기관의 손상시키고 |
|
| 210 |
+ 이들의 항상성을 유지하는 autophagy의 활성이 감소되거나 결핍되어 |
|
| 211 |
+ 다양한 질환으로 나타나게 됩니다. |
|
| 212 |
+ </span> |
|
| 213 |
+ </a> |
|
| 214 |
+ </li> |
|
| 215 |
+ <li class="box skyblue"> |
|
| 216 |
+ <a href="#"> |
|
| 217 |
+ <b class="title">ORGASIS Major Result</b> |
|
| 218 |
+ <span class="summary"> |
|
| 219 |
+ ORGASIS는 손상된 소기관과 노폐물의 |
|
| 220 |
+ 선택적 자가포식 선별기술을 활용한 질환별 맞춤형 신약개발을 통하여 |
|
| 221 |
+ 인류의 건강한 미래와 보다 나은 삶에 기여하고자 합니다 |
|
| 222 |
+ </span> |
|
| 223 |
+ </a> |
|
| 224 |
+ </li> |
|
| 225 |
+ </ul> |
|
| 226 |
+ </div> |
|
| 227 |
+ </div> |
|
| 187 | 228 |
</div> |
| 188 | 229 |
<!-- ============== 메인비주얼 끝 ============== --> |
| 189 | 230 |
|
| 190 |
-<!-- ============== section01 ============== --> |
|
| 191 | 231 |
|
| 192 |
-<section class="section section01"> |
|
| 193 |
- <div class="inner"> |
|
| 194 |
- |
|
| 195 |
- <!-- ======= 이번달 교육일정 ======= --> |
|
| 196 |
- <div class="sch_cont"> |
|
| 197 |
- <div class="title_wrap"> |
|
| 198 |
- <h2 class="main_title">이번달 교육 일정</h2> |
|
| 199 |
- </div> |
|
| 200 |
- <div class="cont_wrap"> |
|
| 201 |
- <ul class="tabs"> |
|
| 202 |
- <li> |
|
| 203 |
- <button type="button" class="tab active" title="활성화됨">전체</button> |
|
| 204 |
- <div class="tab_content"> |
|
| 205 |
- <div class="sch_title"> |
|
| 206 |
- <strong class="current_date">2025년 08월</strong> |
|
| 207 |
- </div> |
|
| 208 |
- <ul class="list"> |
|
| 209 |
- <li> |
|
| 210 |
- <a href="#"> |
|
| 211 |
- <div class="list_left"> |
|
| 212 |
- <p class="title"> |
|
| 213 |
- <em class="status green">접수중</em> |
|
| 214 |
- 상표권 위조상품 기소유예 |
|
| 215 |
- </p> |
|
| 216 |
- <ul class="list_info"> |
|
| 217 |
- <li><p><em>· 접수기간</em>2025-08-18 ~ 2025-08-20</p></li> |
|
| 218 |
- <li><p><em>· 교육기간</em>2025-08-18 ~ 2025-08-20</p></li> |
|
| 219 |
- </ul> |
|
| 220 |
- </div> |
|
| 221 |
- <span class="text_move">교육신청하기<i></i></span> |
|
| 222 |
- </a> |
|
| 223 |
- </li> |
|
| 224 |
- <li> |
|
| 225 |
- <a href="#"> |
|
| 226 |
- <div class="list_left"> |
|
| 227 |
- <p class="title"> |
|
| 228 |
- <em class="status gray">마감</em> |
|
| 229 |
- 상표권 위조상품 기소유예 |
|
| 230 |
- </p> |
|
| 231 |
- <ul class="list_info"> |
|
| 232 |
- <li><p><em>· 접수기간</em>2025-08-18 ~ 2025-08-20</p></li> |
|
| 233 |
- <li><p><em>· 교육기간</em>2025-08-18 ~ 2025-08-20</p></li> |
|
| 234 |
- </ul> |
|
| 235 |
- </div> |
|
| 236 |
- <span class="text_move">교육신청하기<i></i></span> |
|
| 237 |
- </a> |
|
| 238 |
- </li> |
|
| 239 |
- <li> |
|
| 240 |
- <a href="#"> |
|
| 241 |
- <div class="list_left"> |
|
| 242 |
- <p class="title"> |
|
| 243 |
- <em class="status gray">마감</em> |
|
| 244 |
- 상표권 위조상품 기소유예 |
|
| 245 |
- </p> |
|
| 246 |
- <ul class="list_info"> |
|
| 247 |
- <li><p><em>· 접수기간</em>2025-08-18 ~ 2025-08-20</p></li> |
|
| 248 |
- <li><p><em>· 교육기간</em>2025-08-18 ~ 2025-08-20</p></li> |
|
| 249 |
- </ul> |
|
| 250 |
- </div> |
|
| 251 |
- <span class="text_move">교육신청하기<i></i></span> |
|
| 252 |
- </a> |
|
| 253 |
- </li> |
|
| 254 |
- </ul> |
|
| 255 |
- <a href="#" class="btn_more" title="더보기">자세히보기<i></i></a> |
|
| 256 |
- </div> |
|
| 257 |
- </li> |
|
| 258 |
- <li> |
|
| 259 |
- <button type="button" class="tab" title="비활성화됨">기소유예 교육</button> |
|
| 260 |
- <div class="tab_content"> |
|
| 261 |
- <div class="sch_title"> |
|
| 262 |
- <strong class="current_date">2025년 08월</strong> |
|
| 263 |
- </div> |
|
| 264 |
- <ul class="list"> |
|
| 265 |
- <li> |
|
| 266 |
- <a href="#"> |
|
| 267 |
- <div class="list_left"> |
|
| 268 |
- <p class="title"> |
|
| 269 |
- <em class="status green">접수중</em> |
|
| 270 |
- 상표권 위조상품 기소유예 |
|
| 271 |
- </p> |
|
| 272 |
- <ul class="list_info"> |
|
| 273 |
- <li><p><em>· 접수기간</em>2025-08-18 ~ 2025-08-20</p></li> |
|
| 274 |
- <li><p><em>· 교육기간</em>2025-08-18 ~ 2025-08-20</p></li> |
|
| 275 |
- </ul> |
|
| 276 |
- </div> |
|
| 277 |
- <span class="text_move">교육신청하기<i></i></span> |
|
| 278 |
- </a> |
|
| 279 |
- </li> |
|
| 280 |
- <li> |
|
| 281 |
- <a href="#"> |
|
| 282 |
- <div class="list_left"> |
|
| 283 |
- <p class="title"> |
|
| 284 |
- <em class="status gray">마감</em> |
|
| 285 |
- 상표권 위조상품 기소유예 |
|
| 286 |
- </p> |
|
| 287 |
- <ul class="list_info"> |
|
| 288 |
- <li><p><em>· 접수기간</em>2025-08-18 ~ 2025-08-20</p></li> |
|
| 289 |
- <li><p><em>· 교육기간</em>2025-08-18 ~ 2025-08-20</p></li> |
|
| 290 |
- </ul> |
|
| 291 |
- </div> |
|
| 292 |
- <span class="text_move">교육신청하기<i></i></span> |
|
| 293 |
- </a> |
|
| 294 |
- </li> |
|
| 295 |
- <li> |
|
| 296 |
- <a href="#"> |
|
| 297 |
- <div class="list_left"> |
|
| 298 |
- <p class="title"> |
|
| 299 |
- <em class="status gray">마감</em> |
|
| 300 |
- 상표권 위조상품 기소유예 |
|
| 301 |
- </p> |
|
| 302 |
- <ul class="list_info"> |
|
| 303 |
- <li><p><em>· 접수기간</em>2025-08-18 ~ 2025-08-20</p></li> |
|
| 304 |
- <li><p><em>· 교육기간</em>2025-08-18 ~ 2025-08-20</p></li> |
|
| 305 |
- </ul> |
|
| 306 |
- </div> |
|
| 307 |
- <span class="text_move">교육신청하기<i></i></span> |
|
| 308 |
- </a> |
|
| 309 |
- </li> |
|
| 310 |
- </ul> |
|
| 311 |
- <a href="#" class="btn_more" title="더보기">자세히보기<i></i></a> |
|
| 312 |
- </div> |
|
| 313 |
- </li> |
|
| 314 |
- </ul> |
|
| 315 |
- </div> |
|
| 316 |
- </div> |
|
| 317 |
- <!-- ======= 이번달 교육일정 끝 ======= --> |
|
| 318 |
- |
|
| 319 |
- <!-- ======= 알림판 ======= --> |
|
| 320 |
- <div class="allim_cont"> |
|
| 321 |
- <div class="allim_slide swiper"> |
|
| 322 |
- <div class="swiper-wrapper"> |
|
| 323 |
- <a href="#" class="swiper-slide">1</a> |
|
| 324 |
- <a href="#" class="swiper-slide">2</a> |
|
| 325 |
- <a href="#" class="swiper-slide">3</a> |
|
| 326 |
- </div> |
|
| 327 |
- </div> |
|
| 328 |
- <div class="allim_bottom"> |
|
| 329 |
- <p class="title">알림판</p> |
|
| 330 |
- <div class="allim_util"> |
|
| 331 |
- <p><em class="current_num">4</em>/5</p> |
|
| 332 |
- <div class="btn_wrap"> |
|
| 333 |
- <button type="button" class="btn_prev"><i></i></button> |
|
| 334 |
- <button type="button" class="btn_pause"><i></i></button> |
|
| 335 |
- <button type="button" class="btn_play hide"><i></i></button> |
|
| 336 |
- <button type="button" class="btn_next"><i></i></button> |
|
| 337 |
- </div> |
|
| 338 |
- </div> |
|
| 339 |
- </div> |
|
| 340 |
- </div> |
|
| 341 |
- <!-- ======= 알림판 끝 ======= --> |
|
| 342 |
- |
|
| 343 |
- </div> |
|
| 344 |
-</section> |
|
| 345 |
- |
|
| 346 |
-<!-- ============== section01 끝============== --> |
|
| 347 |
- |
|
| 348 |
-<!-- ============== section02 ============== --> |
|
| 349 |
-<section class="section section02"> |
|
| 350 |
- <div class="inner"> |
|
| 351 |
- <div class="title_wrap"> |
|
| 352 |
- <h2 class="main_title">NOTICE</h2> |
|
| 353 |
- |
|
| 354 |
- </div> |
|
| 355 |
- <div class="cont_wrap"> |
|
| 356 |
- <ul class="tabs"> |
|
| 357 |
- <li> |
|
| 358 |
- <button type="button" class="tab active" title="활성화됨">전체</button> |
|
| 359 |
- <div class="tab_content"> |
|
| 360 |
- <ul class="card_list"> |
|
| 361 |
- <li class="part_notice"> |
|
| 362 |
- <a href="#"> |
|
| 363 |
- <span class="part"><i></i>공지사항</span> |
|
| 364 |
- <span class="title">2025년 하반기 의약품 허가 특허 연계제도 교육 모집 공고</span> |
|
| 365 |
- <span class="summary">2025년 하반기 의약품 허가특허연계제도 교육을 실시하오니 관심 있는 분들의 많은 참여 바랍니다. 가. 교육명: 2025년도 하반기 의약품 허가특허연계제도 교육</span> |
|
| 366 |
- <ul class="list_util"> |
|
| 367 |
- <li><i class="icon calendar"></i>2025-08-19</li> |
|
| 368 |
- <li><i class="icon writer"></i>관리자</li> |
|
| 369 |
- <li><i class="icon view"></i>434</li> |
|
| 370 |
- </ul> |
|
| 371 |
- </a> |
|
| 372 |
- </li> |
|
| 373 |
- <li class="part_data"> |
|
| 374 |
- <a href="#"> |
|
| 375 |
- <span class="part"><i></i>교육자료실</span> |
|
| 376 |
- <span class="title">2025년 하반기 의약품 허가 특허 연계제도 교육 모집 공고</span> |
|
| 377 |
- <span class="summary">2025년 하반기 의약품 허가특허연계제도 교육을 실시하오니 관심 있는 분들의 많은 참여 바랍니다. 가. 교육명: 2025년도 하반기 의약품 허가특허연계제도 교육</span> |
|
| 378 |
- <ul class="list_util"> |
|
| 379 |
- <li><i class="icon calendar"></i>2025-08-19</li> |
|
| 380 |
- <li><i class="icon writer"></i>관리자</li> |
|
| 381 |
- <li><i class="icon view"></i>434</li> |
|
| 382 |
- </ul> |
|
| 383 |
- </a> |
|
| 384 |
- </li> |
|
| 385 |
- <li class="part_data"> |
|
| 386 |
- <a href="#"> |
|
| 387 |
- <span class="part"><i></i>교육자료실</span> |
|
| 388 |
- <span class="title">2025년 하반기 의약품 허가 특허 연계제도 교육 모집 공고</span> |
|
| 389 |
- <span class="summary">2025년 하반기 의약품 허가특허연계제도 교육을 실시하오니 관심 있는 분들의 많은 참여 바랍니다. 가. 교육명: 2025년도 하반기 의약품 허가특허연계제도 교육</span> |
|
| 390 |
- <ul class="list_util"> |
|
| 391 |
- <li><i class="icon calendar"></i>2025-08-19</li> |
|
| 392 |
- <li><i class="icon writer"></i>관리자</li> |
|
| 393 |
- <li><i class="icon view"></i>434</li> |
|
| 394 |
- </ul> |
|
| 395 |
- </a> |
|
| 396 |
- </li> |
|
| 397 |
- <li class="part_data"> |
|
| 398 |
- <a href="#"> |
|
| 399 |
- <span class="part"><i></i>교육자료실</span> |
|
| 400 |
- <span class="title">2025년 하반기 의약품 허가 특허 연계제도 교육 모집 공고</span> |
|
| 401 |
- <span class="summary">2025년 하반기 의약품 허가특허연계제도 교육을 실시하오니 관심 있는 분들의 많은 참여 바랍니다. 가. 교육명: 2025년도 하반기 의약품 허가특허연계제도 교육</span> |
|
| 402 |
- <ul class="list_util"> |
|
| 403 |
- <li><i class="icon calendar"></i>2025-08-19</li> |
|
| 404 |
- <li><i class="icon writer"></i>관리자</li> |
|
| 405 |
- <li><i class="icon view"></i>434</li> |
|
| 406 |
- </ul> |
|
| 407 |
- </a> |
|
| 408 |
- </li> |
|
| 409 |
- </ul> |
|
| 410 |
- <a href="#" class="btn_more" title="더보기">자세히보기<i></i></a> |
|
| 411 |
- </div> |
|
| 412 |
- </li> |
|
| 413 |
- <li> |
|
| 414 |
- <button type="button" class="tab" title="비활성화됨">기소유예 교육</button> |
|
| 415 |
- <div class="tab_content"> |
|
| 416 |
- <a href="#" class="btn_more" title="더보기">자세히보기<i></i></a> |
|
| 417 |
- </div> |
|
| 418 |
- </li> |
|
| 419 |
- </ul> |
|
| 420 |
- </div> |
|
| 421 |
- </div> |
|
| 422 |
-</section> |
|
| 423 |
-<!-- ============== section02 끝============== --> |
|
| 424 |
- |
|
| 425 |
-<!-- ============== section03 ============== --> |
|
| 426 |
-<section class="section section03"> |
|
| 427 |
- <div class="inner"> |
|
| 428 |
- <div class="faq_cont"> |
|
| 429 |
- <div class="title_wrap"> |
|
| 430 |
- <h2 class="main_title">자주묻는 질문</h2> |
|
| 431 |
- <a href="#" class="btn_more" title="더보기">자세히보기<i></i></a> |
|
| 432 |
- </div> |
|
| 433 |
- <ul class="box_list"> |
|
| 434 |
- <li> |
|
| 435 |
- <a href="#"> |
|
| 436 |
- <span class="question"> |
|
| 437 |
- <em>Q.</em>조정제도가 무엇이며, 어떤 장점이 있나요? |
|
| 438 |
- </span> |
|
| 439 |
- <span class="answer"> |
|
| 440 |
- <em>A.</em><span>조정이란 전문가로 구성된 조정위원들의 의견을 바탕으로 양당사자간에 충분한 대화 및 의견조율을 통해 분쟁을 자율적으로 해결하는 제도입니다. 통상 산업재산권 분쟁은 대부분 조정을 통해 해결이 가능함에도 불구하고 심판이나 소송으로 진행될 경우 많은 비용과 시간이 투입되게 되어 불필요한 사회적 비용이 발생하게 됩니다. 또한 우리 위원회를 통해 조정절차를 거쳐 조정이 성립되게 되면 양당사자에게 조정조서가 발급되고 |
|
| 441 |
- 조정조서는 재판상 화해와 같은 효력을 갖게 됩니다. 조정은 3개월이내에 분쟁을 종결 지을 수 있고, 절차 진행에 비용이 전혀 들지 않습니다. 또한 모든 절차는 비공개로 |
|
| 442 |
- 진행되어 보안을 유지할 수 있는 장점이 있습니다.</span> |
|
| 443 |
- </span> |
|
| 444 |
- </a> |
|
| 445 |
- </li> |
|
| 446 |
- <li> |
|
| 447 |
- <a href="#"> |
|
| 448 |
- <span class="question"> |
|
| 449 |
- <em>Q.</em>조정신청은 어떻게 하나요? |
|
| 450 |
- </span> |
|
| 451 |
- </a> |
|
| 452 |
- </li> |
|
| 453 |
- <li> |
|
| 454 |
- <a href="#"> |
|
| 455 |
- <span class="question"> |
|
| 456 |
- <em>Q.</em>조정비용은 얼마인가요? |
|
| 457 |
- </span> |
|
| 458 |
- </a> |
|
| 459 |
- </li> |
|
| 460 |
- <li> |
|
| 461 |
- <a href="#"> |
|
| 462 |
- <span class="question"> |
|
| 463 |
- <em>Q.</em>조정대상은 무엇입니까? |
|
| 464 |
- </span> |
|
| 465 |
- </a> |
|
| 466 |
- </li> |
|
| 467 |
- </ul> |
|
| 468 |
- </div> |
|
| 469 |
- <div class="qna_cont"> |
|
| 470 |
- <div class="title_wrap"> |
|
| 471 |
- <h2 class="main_title">Q&A</h2> |
|
| 472 |
- </div> |
|
| 473 |
- <div class="cont_wrap"> |
|
| 474 |
- <p class="title">교육문의</p> |
|
| 475 |
- <span class="summary"> |
|
| 476 |
- 교육과정의 신청 방법, 이수 기준 등에 대해 궁금한 사항을 안내해드립니다. |
|
| 477 |
- </span> |
|
| 478 |
- <strong>02-2183-5880</strong> |
|
| 479 |
- <span class="info">평일 <em>09:00 ~ 18:00</em> / 토,일 공휴일 휴무</span> |
|
| 480 |
- </div> |
|
| 481 |
- </div> |
|
| 482 |
- </div> |
|
| 483 |
-</section> |
|
| 484 |
-<!-- ============== section03 끝============== --> |
|
| 485 | 232 |
|
| 486 | 233 |
|
| 487 | 234 |
<c:if test="${fn:length(popupList) > 0}" >
|
--- src/main/webapp/publish/adm/css/calendar.css
+++ src/main/webapp/publish/adm/css/calendar.css
... | ... | @@ -1,20 +1,20 @@ |
| 1 |
-button.duet-date__toggle{height:100%;top:0;}
|
|
| 2 |
-*[class*="endDate"] .duet-date__dialog{left:auto;right:0;}
|
|
| 3 |
- |
|
| 4 |
-.wrap .duet-date__dialog-content{padding:30px 20px;border-radius:16px;;}
|
|
| 5 |
-.wrap .duet-date__dialog-content *{font-family:'pretendard';}
|
|
| 6 |
-.wrap .duet-date__mobile{display:none;}
|
|
| 7 |
-.wrap .duet-date__header{gap:12px;}
|
|
| 8 |
-.wrap .duet-date__header>div.duet-date__nav{display:none;}
|
|
| 9 |
-.wrap .duet-date__header>div:first-child .duet-date__select{width:100%;}
|
|
| 10 |
-.wrap .duet-date__select{width:45%;}
|
|
| 11 |
-.wrap .duet-date__select-label{width:100%;border:0;background-color:#EDF0F5;}
|
|
| 12 |
- |
|
| 13 |
-.wrap .duet-date__table tr{background:#fff;border-bottom:0;}
|
|
| 14 |
-.wrap .duet-date__table-header,.wrap .duet-date__cell,.wrap .duet-date__day,.wrap .list_top .search_area .duet-date__day{width:36px !important;height:36px !important;border-bottom:3px solid transparent;line-height:1;}
|
|
| 15 |
-.wrap .duet-date__day:hover::before,.wrap .duet-date__day.is-today::before,.wrap .duet-date__day[aria-pressed=true],.wrap .duet-date__day:focus{background:var(--secondary-color) !important;font-weight:bold !important;color:#fff !important;border-radius:100% !important;border-bottom:0 !important;}
|
|
| 16 |
-.wrap .duet-date__day.is-today{font-weight:500;color:var(--secondary-color);background:#fff;border:0;border-bottom:3px solid var(--secondary-color);border-radius:0;box-shadow:none;}
|
|
| 17 |
-.wrap .duet-date__day.is-today::before{display:none;}
|
|
| 18 |
- |
|
| 19 |
-.duet-date__row td:first-child button{color:var(--red-color);}
|
|
| 1 |
+button.duet-date__toggle{height:100%;top:0;}
|
|
| 2 |
+*[class*="endDate"] .duet-date__dialog{left:auto;right:0;}
|
|
| 3 |
+ |
|
| 4 |
+.wrap .duet-date__dialog-content{padding:30px 20px;border-radius:16px;;}
|
|
| 5 |
+.wrap .duet-date__dialog-content *{font-family:'pretendard';}
|
|
| 6 |
+.wrap .duet-date__mobile{display:none;}
|
|
| 7 |
+.wrap .duet-date__header{gap:12px;}
|
|
| 8 |
+.wrap .duet-date__header>div.duet-date__nav{display:none;}
|
|
| 9 |
+.wrap .duet-date__header>div:first-child .duet-date__select{width:100%;}
|
|
| 10 |
+.wrap .duet-date__select{width:45%;}
|
|
| 11 |
+.wrap .duet-date__select-label{width:100%;border:0;background-color:#EDF0F5;}
|
|
| 12 |
+ |
|
| 13 |
+.wrap .duet-date__table tr{background:#fff;border-bottom:0;}
|
|
| 14 |
+.wrap .duet-date__table-header,.wrap .duet-date__cell,.wrap .duet-date__day,.wrap .list_top .search_area .duet-date__day{width:36px !important;height:36px !important;border-bottom:3px solid transparent;line-height:1;}
|
|
| 15 |
+.wrap .duet-date__day:hover::before,.wrap .duet-date__day.is-today::before,.wrap .duet-date__day[aria-pressed=true],.wrap .duet-date__day:focus{background:var(--secondary-color) !important;font-weight:bold !important;color:#fff !important;border-radius:100% !important;border-bottom:0 !important;}
|
|
| 16 |
+.wrap .duet-date__day.is-today{font-weight:500;color:var(--secondary-color);background:#fff;border:0;border-bottom:3px solid var(--secondary-color);border-radius:0;box-shadow:none;}
|
|
| 17 |
+.wrap .duet-date__day.is-today::before{display:none;}
|
|
| 18 |
+ |
|
| 19 |
+.duet-date__row td:first-child button{color:var(--red-color);}
|
|
| 20 | 20 |
.duet-date__row td:last-child button{color:var(--primary-color);} (No newline at end of file)
|
--- src/main/webapp/publish/adm/css/common.css
+++ src/main/webapp/publish/adm/css/common.css
... | ... | @@ -1,51 +1,51 @@ |
| 1 |
-@charset "utf-8"; |
|
| 2 |
- |
|
| 3 |
-:root{
|
|
| 4 |
- --primary-color: #2557B4; |
|
| 5 |
- --primary-color-hover: #214EA2; |
|
| 6 |
- --primary-light-color: #F4F7FB; |
|
| 7 |
- --primary-light-color-hover: #DCE4F3; |
|
| 8 |
- --primary-lighter-color: #E9EEF8; |
|
| 9 |
- --primary-lighter-color-hover: #CFDAEF; |
|
| 10 |
- --primary-dark-color: #1C4187; |
|
| 11 |
- --primary-dark-color-hover: #16346C; |
|
| 12 |
- |
|
| 13 |
- --secondary-color: #F86A3C; |
|
| 14 |
- --secondary-color-hover: #DF5F36; |
|
| 15 |
- --secondary-light-color: #FFF8F5; |
|
| 16 |
- --secondary-light-color-hover: #FEE7E0; |
|
| 17 |
- --secondary-dark-color: #BA502D; |
|
| 18 |
- --secondary-dark-color-hover: #954024; |
|
| 19 |
- |
|
| 20 |
- --red-color: #e81717; |
|
| 21 |
- --red-color-hover: #d11515; |
|
| 22 |
- --red-light-color: #fde8e8; |
|
| 23 |
- --red-light-color-hover: #fee9e2; |
|
| 24 |
- |
|
| 25 |
- --green-color: #289C77; |
|
| 26 |
- --green-color-hover: #067b14; |
|
| 27 |
- |
|
| 28 |
- --gray-color: #81899C; |
|
| 29 |
- --gray-color-hover: #676e80; |
|
| 30 |
- --lightgray-color: #D5D9E3; |
|
| 31 |
- --lightgray-color-hover: #BFC3CD; |
|
| 32 |
- |
|
| 33 |
- --primary-title-font:'Pretendard'; |
|
| 34 |
- --secondary-title-font:'Gmarket Sans TTF'; |
|
| 35 |
- |
|
| 36 |
- --primary-title-color:#1B1C2B; |
|
| 37 |
- --secondary-title-color:#252836; |
|
| 38 |
- --body-text-color:#313337; |
|
| 39 |
- |
|
| 40 |
- --disable-fill-bg-color:#EAEBEF; |
|
| 41 |
- --disable-fill-line-color:#D3D7DE; |
|
| 42 |
- --disable-fill-text-color:#8D9098; |
|
| 43 |
- |
|
| 44 |
- --default-line-color:#d3d7de; |
|
| 45 |
- --disable-line-bg-color:#F5F6F7; |
|
| 46 |
- --disable-line-border-color:#eaebef; |
|
| 47 |
- --disable-line-text-color:#bcc0ca; |
|
| 48 |
-} |
|
| 49 |
- |
|
| 50 |
- |
|
| 51 |
- |
|
| 1 |
+@charset "utf-8"; |
|
| 2 |
+ |
|
| 3 |
+:root{
|
|
| 4 |
+ --primary-color: #2557B4; |
|
| 5 |
+ --primary-color-hover: #214EA2; |
|
| 6 |
+ --primary-light-color: #F4F7FB; |
|
| 7 |
+ --primary-light-color-hover: #DCE4F3; |
|
| 8 |
+ --primary-lighter-color: #E9EEF8; |
|
| 9 |
+ --primary-lighter-color-hover: #CFDAEF; |
|
| 10 |
+ --primary-dark-color: #1C4187; |
|
| 11 |
+ --primary-dark-color-hover: #16346C; |
|
| 12 |
+ |
|
| 13 |
+ --secondary-color: #F86A3C; |
|
| 14 |
+ --secondary-color-hover: #DF5F36; |
|
| 15 |
+ --secondary-light-color: #FFF8F5; |
|
| 16 |
+ --secondary-light-color-hover: #FEE7E0; |
|
| 17 |
+ --secondary-dark-color: #BA502D; |
|
| 18 |
+ --secondary-dark-color-hover: #954024; |
|
| 19 |
+ |
|
| 20 |
+ --red-color: #e81717; |
|
| 21 |
+ --red-color-hover: #d11515; |
|
| 22 |
+ --red-light-color: #fde8e8; |
|
| 23 |
+ --red-light-color-hover: #fee9e2; |
|
| 24 |
+ |
|
| 25 |
+ --green-color: #289C77; |
|
| 26 |
+ --green-color-hover: #067b14; |
|
| 27 |
+ |
|
| 28 |
+ --gray-color: #81899C; |
|
| 29 |
+ --gray-color-hover: #676e80; |
|
| 30 |
+ --lightgray-color: #D5D9E3; |
|
| 31 |
+ --lightgray-color-hover: #BFC3CD; |
|
| 32 |
+ |
|
| 33 |
+ --primary-title-font:'Pretendard'; |
|
| 34 |
+ --secondary-title-font:'Gmarket Sans TTF'; |
|
| 35 |
+ |
|
| 36 |
+ --primary-title-color:#1B1C2B; |
|
| 37 |
+ --secondary-title-color:#252836; |
|
| 38 |
+ --body-text-color:#313337; |
|
| 39 |
+ |
|
| 40 |
+ --disable-fill-bg-color:#EAEBEF; |
|
| 41 |
+ --disable-fill-line-color:#D3D7DE; |
|
| 42 |
+ --disable-fill-text-color:#8D9098; |
|
| 43 |
+ |
|
| 44 |
+ --default-line-color:#d3d7de; |
|
| 45 |
+ --disable-line-bg-color:#F5F6F7; |
|
| 46 |
+ --disable-line-border-color:#eaebef; |
|
| 47 |
+ --disable-line-text-color:#bcc0ca; |
|
| 48 |
+} |
|
| 49 |
+ |
|
| 50 |
+ |
|
| 51 |
+ |
--- src/main/webapp/publish/adm/css/dashboard.css
+++ src/main/webapp/publish/adm/css/dashboard.css
... | ... | @@ -1,114 +1,114 @@ |
| 1 |
-/* 공통 */ |
|
| 2 |
-.dashboard .box_title{width:100%;font-size:20px;font-weight:700;}
|
|
| 3 |
-.dashboard .box_wrap{display:flex;flex-wrap:wrap;justify-content:flex-start;padding:40px;box-sizing:border-box;gap:30px;}
|
|
| 4 |
-.dashboard .box{width:calc((100%/3) - 20px);height:auto;border-radius:5px;border:5px solid #EFF2F9;background:#fff;}
|
|
| 5 |
-.dashboard .box_tit{display:flex;height:60px;align-items:center;justify-content:space-between;padding:0 25px;border-bottom:1px solid #E6E8EB;box-sizing: border-box;}
|
|
| 6 |
-.dashboard .box_tit p{font-size:20px;font-weight:bold;letter-spacing:-0.5px;color:#333;}
|
|
| 7 |
-.dashboard .box_tit .btn_plus{display:flex;font-size:16px;font-weight:300;color:#aaa;letter-spacing:-0.5px;align-items:center;gap:8px;}
|
|
| 8 |
-.dashboard .box_tit .btn_plus i{display:inline-block;width:14px;height:14px;background:url(/publish/adm/images/component/icon_plus.png) no-repeat center center;margin:-2px 0 0 0;transition:all .5s;}
|
|
| 9 |
-.dashboard .box_tit .btn_plus:hover{color:#666;font-weight:400;}
|
|
| 10 |
-.dashboard .box_tit .btn_plus:hover i{transform:rotate(90deg);}
|
|
| 11 |
-.dashboard .box_cont{position:relative;height:calc(100% - 60px);padding:20px 25px;box-sizing:border-box;}
|
|
| 12 |
-/* //공통 */ |
|
| 13 |
- |
|
| 14 |
-/* 오늘 사용자 현황 */ |
|
| 15 |
-.today_box{display: flex; justify-content: space-between; align-items: center;}
|
|
| 16 |
-.today_box .today_status{text-align: center; width: calc((100% - 80px)/3);}
|
|
| 17 |
-.today_box p{font-size: 16px; font-weight: 300; margin-top: 12px;}
|
|
| 18 |
-.today_box .today_status i{display: block; width: 84px; height: 84px; background-color: #E8ECF4; border-radius: 100%; margin: 23px auto; background-repeat: no-repeat; background-position: center;}
|
|
| 19 |
-/* .today_box .status01 i{background-image: url(/publish/adm/images/dashboard/icon_today01.png);}
|
|
| 20 |
-.today_box .status02 i{background-image: url(/publish/adm/images/dashboard/icon_today02.png);}
|
|
| 21 |
-.today_box .status03 i{background-image: url(/publish/adm/images/dashboard/icon_today03.png);} */
|
|
| 22 |
-.today_box span{font-size: 24px; font-weight: bold;}
|
|
| 23 |
-/* .today_box .status_pcs{width: 24px; height: 9px; background-image: url(/publish/adm/images/dashboard/icon_today_pcs.png);} */
|
|
| 24 |
-/* //오늘 사용자 현황 */ |
|
| 25 |
- |
|
| 26 |
-/* 시스템관리 */ |
|
| 27 |
-.system_box{display: flex; flex-wrap: wrap; justify-content: space-between;}
|
|
| 28 |
-.system_box a{position: relative; display: flex; flex-flow: column; width: calc((100% - 10px)/2); height: 90px; justify-content: center; align-items: flex-start; border-radius: 10px; background-color: #666; margin: 5px 0; padding: 0 20px; box-sizing: border-box; background-repeat: no-repeat; background-position: calc(100% - 20px) center; box-shadow: 0 0 5px rgba(0,0,0,0.3); transition: background-color 0.2s ease-in-out;}
|
|
| 29 |
-.system_box a:hover{transition: background-color 0.2s ease-in-out;}
|
|
| 30 |
-.system_box .system01{background-color: #7991C3;/* background-image: url(/publish/adm/images/dashboard/icon_system01.png); */}
|
|
| 31 |
-.system_box .system01:hover{background-color: #6281c4;}
|
|
| 32 |
-.system_box .system02{background-color: #2C3B5B;/* background-image: url(/publish/adm/images/dashboard/icon_system02.png); */}
|
|
| 33 |
-.system_box .system02:hover{background-color: #1F2D4A;}
|
|
| 34 |
-.system_box .system03{background-color: #2557B4;/* background-image: url(/publish/adm/images/dashboard/icon_system03.png); */}
|
|
| 35 |
-.system_box .system03:hover{background-color: #18418D;}
|
|
| 36 |
-.system_box .system04{background-color: #F86A3C;/* background-image: url(/publish/adm/images/dashboard/icon_system04.png); */}
|
|
| 37 |
-.system_box .system04:hover{background-color: rgb(241, 85, 33);}
|
|
| 38 |
-.system_box a::before{position: absolute; content: ""; width: 58px; height: 58px; background-color: rgba(255,255,255,0.3); border-radius: 100%; right: -5px; bottom: -5px;}
|
|
| 39 |
-.system_box p{font-size: 18px; font-weight: 400; color: #fff; letter-spacing: -0.5px; width: calc(100% - 40px); line-height: 1.3;}
|
|
| 40 |
-.system_box span{display: block; font-size: 15px; font-weight: 300; color: #fff; padding-top: 10px;}
|
|
| 41 |
-/* //시스템관리 */ |
|
| 42 |
- |
|
| 43 |
-/* 2021 신청 처리현황 */ |
|
| 44 |
-.dashboard .box_cont.ds_box{padding-top:27px;}
|
|
| 45 |
-.ds_box .chartType01 li{display: flex; justify-content: space-between; align-items: center; margin-bottom: 22px;}
|
|
| 46 |
-.ds_box .chartType01 li:last-child{margin-bottom: 0;}
|
|
| 47 |
-.ds_box .chartType01 p{font-size: 15px; font-weight: 400; width: auto; min-width:30px; text-align: right;}
|
|
| 48 |
-.ds_box .chartType01 p:first-child{margin:0 10px 0 0;}
|
|
| 49 |
-.ds_box .chartType01 .chart_wrap{width: calc(100% - 100px); height: 15px; background-color: #f1eeed; border-radius: 10px; box-shadow: inset 3px 2px 3px rgba(0,0,0,0.15); overflow: hidden;}
|
|
| 50 |
-.ds_box .chartType01 .chart_wrap div{width: 50%; height: 100%; background-color: #3A3C41; border-radius: 10px; box-shadow: inset 3px 2px 3px rgba(0,0,0,0.15);}
|
|
| 51 |
-.ds_box .chartType01 li:first-child .chart_wrap div{background-color: #428ef6;}
|
|
| 52 |
-.ds_box .chartType01 li:nth-child(2) .chart_wrap div{background-color: #fc6d38;}
|
|
| 53 |
-.ds_box .chartType01 li:nth-child(3) .chart_wrap div{background-color: #f7be0f;}
|
|
| 54 |
-.ds_box .chartType01 li:nth-child(4) .chart_wrap div{background-color: #ad65eb;}
|
|
| 55 |
-.ds_box .chartType01 li:last-child .chart_wrap div{background-color: #41b691;}
|
|
| 56 |
-.ds_box .case_number{color:#3A3C41; white-space:nowrap;}
|
|
| 57 |
-.ds_box .case_number span{font-weight:600;}
|
|
| 58 |
-.ds_box .chart_num{display: flex; width: calc(100% - 100px); justify-content: space-between; margin-left: auto; margin:15px auto 0 auto; color:#666;}
|
|
| 59 |
-/* //2021 신청 처리현황 */ |
|
| 60 |
- |
|
| 61 |
-/* 대시보드 리스트 */ |
|
| 62 |
-.dashboard_list li{display:flex;font-weight:300;letter-spacing:-0.5px;border-bottom:1px solid #e5e5e5;padding:0 0 8px 0;margin:0 0 12px 0;justify-content:space-between;}
|
|
| 63 |
-.dashboard_list li:last-child{border-bottom:0;margin:0;padding:0;}
|
|
| 64 |
-.dashboard_list li p,.notice_box li a{padding:0 5px;box-sizing:border-box;}
|
|
| 65 |
-.dashboard_list li:hover p,.dashboard_list li:hover a{color:#222;font-weight:400;}
|
|
| 66 |
-.dashboard_list li a{width:98%;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;font-size:17px;color:#222;}
|
|
| 67 |
-.dashboard_list .list_tit{display:inline-block;width:calc(100% - 170px);white-space:nowrap;text-overflow:ellipsis;overflow:hidden;}
|
|
| 68 |
-.dashboard_list .list_tit img{display:inline-block;vertical-align:text-top;}
|
|
| 69 |
-.dashboard_list .list_writer,.dashboard_list .list_date{font-size:16px;color:#777777;}
|
|
| 70 |
-.dashboard_list .list_writer{width:60px;max-width:60px;text-align: right;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;}
|
|
| 71 |
-.dashboard_list .list_date{width: 100px; text-align: right;}
|
|
| 72 |
- |
|
| 73 |
-.dashboard_list.status{display:flex;flex-wrap:wrap;}
|
|
| 74 |
-.dashboard_list.status li{width:100%;align-items:center;gap:8px;}
|
|
| 75 |
- |
|
| 76 |
-.dashboard_list .status{display:flex;min-width:75px;min-height:27px;height: 27px;font-size: 14px;font-weight:500;padding:0 12px;border-radius:28px;justify-content:center;align-items:center;transition: all 0.3s;}
|
|
| 77 |
-.dashboard_list .line.gray{border:1px solid #c1c5ce;color:#616576;}
|
|
| 78 |
-.dashboard_list .line.blue{border:1px solid #2557B4;color:#2557B4;}
|
|
| 79 |
-.dashboard_list .line.orange{border:1px solid #F86A3C;color:#F86A3C;}
|
|
| 80 |
-.dashboard_list .fill.gray{background:#e4e7ee;color:#616576;}
|
|
| 81 |
-.dashboard_list .fill.green{background:#d9f0e9;color:#289c77;}
|
|
| 82 |
-.dashboard_list .fill.purple{background:#f3e8fc;color:#ad65eb;}
|
|
| 83 |
- |
|
| 84 |
-.dashboard_list li:hover .line.gray{border:1px solid #c1c5ce;background:#F5F6F7;color:#616576;}
|
|
| 85 |
-.dashboard_list li:hover .line.blue{border:1px solid #2557B4;background:#F4F7FB;color:#2557B4;}
|
|
| 86 |
-.dashboard_list li:hover .line.orange{border:1px solid #F86A3C;background:#FEF0EC;color:#F86A3C;}
|
|
| 87 |
-.dashboard_list li:hover .fill.gray{background:#d2d6df;color:#494c59;}
|
|
| 88 |
-.dashboard_list li:hover .fill.green{background:#C1E8DC;color:#177C5C;}
|
|
| 89 |
-.dashboard_list li:hover .fill.purple{background:#EDD8FE;color:#9747DD;}
|
|
| 90 |
- |
|
| 91 |
-/* //대시보드 리스트 */ |
|
| 92 |
- |
|
| 93 |
-/* 차트 */ |
|
| 94 |
-.chart_box{text-align: center;}
|
|
| 95 |
-.chart_box img{box-sizing: border-box; width: 100%; height: 100%;}/* 나중에 차트 추가하고 지울 것 */
|
|
| 96 |
-/* //차트 */ |
|
| 97 |
- |
|
| 98 |
-@media all and (max-width:1600px){
|
|
| 99 |
- |
|
| 100 |
- /* 공통 */ |
|
| 101 |
- .dashboard .box{width: calc((100% - 30px)/2);}
|
|
| 102 |
- /* //공통 */ |
|
| 103 |
- |
|
| 104 |
-} |
|
| 105 |
- |
|
| 106 |
-@media all and (max-width:1300px){
|
|
| 107 |
- |
|
| 108 |
- /* 시스템관리 */ |
|
| 109 |
- .system_box a{background-size: 35px;}
|
|
| 110 |
- .system_box .system01{background-size: 33px;}
|
|
| 111 |
- .system_box .system04{background-size: 30px;}
|
|
| 112 |
- /* //시스템관리 */ |
|
| 113 |
- |
|
| 1 |
+/* 공통 */ |
|
| 2 |
+.dashboard .box_title{width:100%;font-size:20px;font-weight:700;}
|
|
| 3 |
+.dashboard .box_wrap{display:flex;flex-wrap:wrap;justify-content:flex-start;padding:40px;box-sizing:border-box;gap:30px;}
|
|
| 4 |
+.dashboard .box{width:calc((100%/3) - 20px);height:auto;border-radius:5px;border:5px solid #EFF2F9;background:#fff;}
|
|
| 5 |
+.dashboard .box_tit{display:flex;height:60px;align-items:center;justify-content:space-between;padding:0 25px;border-bottom:1px solid #E6E8EB;box-sizing: border-box;}
|
|
| 6 |
+.dashboard .box_tit p{font-size:20px;font-weight:bold;letter-spacing:-0.5px;color:#333;}
|
|
| 7 |
+.dashboard .box_tit .btn_plus{display:flex;font-size:16px;font-weight:300;color:#aaa;letter-spacing:-0.5px;align-items:center;gap:8px;}
|
|
| 8 |
+.dashboard .box_tit .btn_plus i{display:inline-block;width:14px;height:14px;background:url(../images/component/icon_plus.png) no-repeat center center;margin:-2px 0 0 0;transition:all .5s;}
|
|
| 9 |
+.dashboard .box_tit .btn_plus:hover{color:#666;font-weight:400;}
|
|
| 10 |
+.dashboard .box_tit .btn_plus:hover i{transform:rotate(90deg);}
|
|
| 11 |
+.dashboard .box_cont{position:relative;height:calc(100% - 60px);padding:20px 25px;box-sizing:border-box;}
|
|
| 12 |
+/* //공통 */ |
|
| 13 |
+ |
|
| 14 |
+/* 오늘 사용자 현황 */ |
|
| 15 |
+.today_box{display: flex; justify-content: space-between; align-items: center;}
|
|
| 16 |
+.today_box .today_status{text-align: center; width: calc((100% - 80px)/3);}
|
|
| 17 |
+.today_box p{font-size: 16px; font-weight: 300; margin-top: 12px;}
|
|
| 18 |
+.today_box .today_status i{display: block; width: 84px; height: 84px; background-color: #E8ECF4; border-radius: 100%; margin: 23px auto; background-repeat: no-repeat; background-position: center;}
|
|
| 19 |
+.today_box .status01 i{background-image: url(../image/dashboard/icon_today01.png);}
|
|
| 20 |
+.today_box .status02 i{background-image: url(../image/dashboard/icon_today02.png);}
|
|
| 21 |
+.today_box .status03 i{background-image: url(../image/dashboard/icon_today03.png);}
|
|
| 22 |
+.today_box span{font-size: 24px; font-weight: bold;}
|
|
| 23 |
+.today_box .status_pcs{width: 24px; height: 9px; background-image: url(../image/dashboard/icon_today_pcs.png);}
|
|
| 24 |
+/* //오늘 사용자 현황 */ |
|
| 25 |
+ |
|
| 26 |
+/* 시스템관리 */ |
|
| 27 |
+.system_box{display: flex; flex-wrap: wrap; justify-content: space-between;}
|
|
| 28 |
+.system_box a{position: relative; display: flex; flex-flow: column; width: calc((100% - 10px)/2); height: 90px; justify-content: center; align-items: flex-start; border-radius: 10px; background-color: #666; margin: 5px 0; padding: 0 20px; box-sizing: border-box; background-repeat: no-repeat; background-position: calc(100% - 20px) center; box-shadow: 0 0 5px rgba(0,0,0,0.3); transition: background-color 0.2s ease-in-out;}
|
|
| 29 |
+.system_box a:hover{transition: background-color 0.2s ease-in-out;}
|
|
| 30 |
+.system_box .system01{background-color: #7991C3; background-image: url(../image/dashboard/icon_system01.png);}
|
|
| 31 |
+.system_box .system01:hover{background-color: #6281c4;}
|
|
| 32 |
+.system_box .system02{background-color: #2C3B5B; background-image: url(../image/dashboard/icon_system02.png);}
|
|
| 33 |
+.system_box .system02:hover{background-color: #1F2D4A;}
|
|
| 34 |
+.system_box .system03{background-color: #2557B4; background-image: url(../image/dashboard/icon_system03.png);}
|
|
| 35 |
+.system_box .system03:hover{background-color: #18418D;}
|
|
| 36 |
+.system_box .system04{background-color: #F86A3C; background-image: url(../image/dashboard/icon_system04.png);}
|
|
| 37 |
+.system_box .system04:hover{background-color: rgb(241, 85, 33);}
|
|
| 38 |
+.system_box a::before{position: absolute; content: ""; width: 58px; height: 58px; background-color: rgba(255,255,255,0.3); border-radius: 100%; right: -5px; bottom: -5px;}
|
|
| 39 |
+.system_box p{font-size: 18px; font-weight: 400; color: #fff; letter-spacing: -0.5px; width: calc(100% - 40px); line-height: 1.3;}
|
|
| 40 |
+.system_box span{display: block; font-size: 15px; font-weight: 300; color: #fff; padding-top: 10px;}
|
|
| 41 |
+/* //시스템관리 */ |
|
| 42 |
+ |
|
| 43 |
+/* 2021 신청 처리현황 */ |
|
| 44 |
+.dashboard .box_cont.ds_box{padding-top:27px;}
|
|
| 45 |
+.ds_box .chartType01 li{display: flex; justify-content: space-between; align-items: center; margin-bottom: 22px;}
|
|
| 46 |
+.ds_box .chartType01 li:last-child{margin-bottom: 0;}
|
|
| 47 |
+.ds_box .chartType01 p{font-size: 15px; font-weight: 400; width: auto; min-width:30px; text-align: right;}
|
|
| 48 |
+.ds_box .chartType01 p:first-child{margin:0 10px 0 0;}
|
|
| 49 |
+.ds_box .chartType01 .chart_wrap{width: calc(100% - 100px); height: 15px; background-color: #f1eeed; border-radius: 10px; box-shadow: inset 3px 2px 3px rgba(0,0,0,0.15); overflow: hidden;}
|
|
| 50 |
+.ds_box .chartType01 .chart_wrap div{width: 50%; height: 100%; background-color: #3A3C41; border-radius: 10px; box-shadow: inset 3px 2px 3px rgba(0,0,0,0.15);}
|
|
| 51 |
+.ds_box .chartType01 li:first-child .chart_wrap div{background-color: #428ef6;}
|
|
| 52 |
+.ds_box .chartType01 li:nth-child(2) .chart_wrap div{background-color: #fc6d38;}
|
|
| 53 |
+.ds_box .chartType01 li:nth-child(3) .chart_wrap div{background-color: #f7be0f;}
|
|
| 54 |
+.ds_box .chartType01 li:nth-child(4) .chart_wrap div{background-color: #ad65eb;}
|
|
| 55 |
+.ds_box .chartType01 li:last-child .chart_wrap div{background-color: #41b691;}
|
|
| 56 |
+.ds_box .case_number{color:#3A3C41; white-space:nowrap;}
|
|
| 57 |
+.ds_box .case_number span{font-weight:600;}
|
|
| 58 |
+.ds_box .chart_num{display: flex; width: calc(100% - 100px); justify-content: space-between; margin-left: auto; margin:15px auto 0 auto; color:#666;}
|
|
| 59 |
+/* //2021 신청 처리현황 */ |
|
| 60 |
+ |
|
| 61 |
+/* 대시보드 리스트 */ |
|
| 62 |
+.dashboard_list li{display:flex;font-weight:300;letter-spacing:-0.5px;border-bottom:1px solid #e5e5e5;padding:0 0 8px 0;margin:0 0 12px 0;justify-content:space-between;}
|
|
| 63 |
+.dashboard_list li:last-child{border-bottom:0;margin:0;padding:0;}
|
|
| 64 |
+.dashboard_list li p,.notice_box li a{padding:0 5px;box-sizing:border-box;}
|
|
| 65 |
+.dashboard_list li:hover p,.dashboard_list li:hover a{color:#222;font-weight:400;}
|
|
| 66 |
+.dashboard_list li a{width:98%;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;font-size:17px;color:#222;}
|
|
| 67 |
+.dashboard_list .list_tit{display:inline-block;width:calc(100% - 170px);white-space:nowrap;text-overflow:ellipsis;overflow:hidden;}
|
|
| 68 |
+.dashboard_list .list_tit img{display:inline-block;vertical-align:text-top;}
|
|
| 69 |
+.dashboard_list .list_writer,.dashboard_list .list_date{font-size:16px;color:#777777;}
|
|
| 70 |
+.dashboard_list .list_writer{width:60px;max-width:60px;text-align: right;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;}
|
|
| 71 |
+.dashboard_list .list_date{width: 100px; text-align: right;}
|
|
| 72 |
+ |
|
| 73 |
+.dashboard_list.status{display:flex;flex-wrap:wrap;}
|
|
| 74 |
+.dashboard_list.status li{width:100%;align-items:center;gap:8px;}
|
|
| 75 |
+ |
|
| 76 |
+.dashboard_list .status{display:flex;min-width:75px;height: 27px;font-size: 14px;font-weight:500;padding:0 12px;border-radius:28px;justify-content:center;align-items:center;transition: all 0.3s;}
|
|
| 77 |
+.dashboard_list .line.gray{border:1px solid #c1c5ce;color:#616576;}
|
|
| 78 |
+.dashboard_list .line.blue{border:1px solid #2557B4;color:#2557B4;}
|
|
| 79 |
+.dashboard_list .line.orange{border:1px solid #F86A3C;color:#F86A3C;}
|
|
| 80 |
+.dashboard_list .fill.gray{background:#e4e7ee;color:#616576;}
|
|
| 81 |
+.dashboard_list .fill.green{background:#d9f0e9;color:#289c77;}
|
|
| 82 |
+.dashboard_list .fill.purple{background:#f3e8fc;color:#ad65eb;}
|
|
| 83 |
+ |
|
| 84 |
+.dashboard_list li:hover .line.gray{border:1px solid #c1c5ce;background:#F5F6F7;color:#616576;}
|
|
| 85 |
+.dashboard_list li:hover .line.blue{border:1px solid #2557B4;background:#F4F7FB;color:#2557B4;}
|
|
| 86 |
+.dashboard_list li:hover .line.orange{border:1px solid #F86A3C;background:#FEF0EC;color:#F86A3C;}
|
|
| 87 |
+.dashboard_list li:hover .fill.gray{background:#d2d6df;color:#494c59;}
|
|
| 88 |
+.dashboard_list li:hover .fill.green{background:#C1E8DC;color:#177C5C;}
|
|
| 89 |
+.dashboard_list li:hover .fill.purple{background:#EDD8FE;color:#9747DD;}
|
|
| 90 |
+ |
|
| 91 |
+/* //대시보드 리스트 */ |
|
| 92 |
+ |
|
| 93 |
+/* 차트 */ |
|
| 94 |
+.chart_box{text-align: center;}
|
|
| 95 |
+.chart_box img{box-sizing: border-box; width: 100%; height: 100%;}/* 나중에 차트 추가하고 지울 것 */
|
|
| 96 |
+/* //차트 */ |
|
| 97 |
+ |
|
| 98 |
+@media all and (max-width:1600px){
|
|
| 99 |
+ |
|
| 100 |
+ /* 공통 */ |
|
| 101 |
+ .dashboard .box{width: calc((100% - 30px)/2);}
|
|
| 102 |
+ /* //공통 */ |
|
| 103 |
+ |
|
| 104 |
+} |
|
| 105 |
+ |
|
| 106 |
+@media all and (max-width:1300px){
|
|
| 107 |
+ |
|
| 108 |
+ /* 시스템관리 */ |
|
| 109 |
+ .system_box a{background-size: 35px;}
|
|
| 110 |
+ .system_box .system01{background-size: 33px;}
|
|
| 111 |
+ .system_box .system04{background-size: 30px;}
|
|
| 112 |
+ /* //시스템관리 */ |
|
| 113 |
+ |
|
| 114 | 114 |
}(No newline at end of file) |
--- src/main/webapp/publish/adm/css/icon.css
+++ src/main/webapp/publish/adm/css/icon.css
... | ... | @@ -1,18 +1,18 @@ |
| 1 |
-@charset "utf-8"; |
|
| 2 |
- |
|
| 3 |
-.icon{display:inline-block;width:100%;height:100%;vertical-align:middle;;}
|
|
| 4 |
- |
|
| 5 |
-.icon.excel{width:40px;height:40px;background:url(/publish/adm/images/component/icon_excel.png) no-repeat center center;}
|
|
| 6 |
-.icon.excel.download{background:url(/publish/adm/images/component/icon_excel_download.png) no-repeat center center;}
|
|
| 7 |
-.icon.excel.upload{background:url(/publish/adm/images/component/icon_excel_upload.png) no-repeat center center;background-size:contain;}
|
|
| 8 |
- |
|
| 9 |
-.icon.file{width:20px;height:20px;background:url(/publish/adm/images/component/icon_file.png) no-repeat center center;}
|
|
| 10 |
-.icon.file.blue{background:url(/publish/adm/images/component/icon_file_blue.png) no-repeat center center;}
|
|
| 11 |
-.icon.file_bg{width:60px;height:60px;background:url(/publish/adm/images/component/icon_file_table.png) no-repeat center center;}
|
|
| 12 |
- |
|
| 13 |
-.icon.delete{width:30px;height:30px;background:url(/publish/adm/images/component/icon_x.png) no-repeat center;}
|
|
| 14 |
-.icon.delete.red{background:url(/publish/adm/images/component/icon_x_red.png) no-repeat center;}
|
|
| 15 |
- |
|
| 16 |
-.icon.x{width:30px;height:30px;background:url(/publish/adm/images/component/icon_x.png) no-repeat center;}
|
|
| 17 |
-.icon.x.white{background:url(/publish/adm/images/component/icon_x_white.png) no-repeat center;}
|
|
| 18 |
-.icon.x.red{background:url(/publish/adm/images/component/icon_x_red.png) no-repeat center;} (No newline at end of file)
|
|
| 1 |
+@charset "utf-8"; |
|
| 2 |
+ |
|
| 3 |
+.icon{display:inline-block;width:100%;height:100%;vertical-align:middle;;}
|
|
| 4 |
+ |
|
| 5 |
+.icon.excel{width:40px;height:40px;background:url(../images/component/icon_excel.png) no-repeat center center;}
|
|
| 6 |
+.icon.excel.download{background:url(../images/component/icon_excel_download.png) no-repeat center center;}
|
|
| 7 |
+.icon.excel.upload{background:url(../images/component/icon_excel_upload.png) no-repeat center center;background-size:contain;}
|
|
| 8 |
+ |
|
| 9 |
+.icon.file{width:20px;height:20px;background:url(../images/component/icon_file.png) no-repeat center center;}
|
|
| 10 |
+.icon.file.blue{background:url(../images/component/icon_file_blue.png) no-repeat center center;}
|
|
| 11 |
+.icon.file_bg{width:60px;height:60px;background:url(../images/component/icon_file_table.png) no-repeat center center;}
|
|
| 12 |
+ |
|
| 13 |
+.icon.delete{width:30px;height:30px;background:url(../images/component/icon_x.png) no-repeat center;}
|
|
| 14 |
+.icon.delete.red{background:url(../images/component/icon_x_red.png) no-repeat center;}
|
|
| 15 |
+ |
|
| 16 |
+.icon.x{width:30px;height:30px;background:url(../images/component/icon_x.png) no-repeat center;}
|
|
| 17 |
+.icon.x.white{background:url(../images/component/icon_x_white.png) no-repeat center;}
|
|
| 18 |
+.icon.x.red{background:url(../images/component/icon_x_red.png) no-repeat center;} (No newline at end of file)
|
--- src/main/webapp/publish/adm/css/popup.css
+++ src/main/webapp/publish/adm/css/popup.css
... | ... | @@ -1,23 +1,23 @@ |
| 1 |
-@charset "utf-8"; |
|
| 2 |
- |
|
| 3 |
-.popup_title_area{display:flex;width:100%;height:50px;padding:0 20px;background:#000;align-items:center;justify-content:space-between;}
|
|
| 4 |
-h1.popup_title{font-size:18px;font-weight:600;color:#fff;}
|
|
| 5 |
-.popup_title_wrap{display:flex;align-items:center;justify-content:space-between;}
|
|
| 6 |
-.popup_title_wrap h2{font-size:16px;font-weight:600;color:var(--primary-title-color);}
|
|
| 7 |
- |
|
| 8 |
-.popup_content{padding:30px 20px;}
|
|
| 9 |
- |
|
| 10 |
-.popup .search_area.box{padding:0 10px;font-size:14px;}
|
|
| 11 |
-.popup .search_item{padding:4px 0;}
|
|
| 12 |
- |
|
| 13 |
-.popup .input{height:30px;}
|
|
| 14 |
-.popup select,.popup .select{height:30px;border:1px solid var(--default-line-color);border-radius:5px;padding:0 32px 0 12px;background:#fff url(/publish/adm/images/component/icon_arrow_down.png) no-repeat calc(100% - 4px) center;}
|
|
| 15 |
- |
|
| 16 |
-.popup .radio_wrap,.popup .checkbox_wrap{gap:8px;}
|
|
| 17 |
-.popup .radio_item,.popup .checkbox_item{font-size:14px;}
|
|
| 18 |
- |
|
| 19 |
-.popup_title_wrap+.table{margin:12px 0 40px 0;}
|
|
| 20 |
-.popup.table_type_cols thead>tr>th,.popup.table_type_cols tbody>tr>td{height:40px;font-size:15px;}
|
|
| 21 |
-.popup.table_type_rows tbody>tr>th, .popup.table_type_rows tbody>tr>td{height:40px;font-size:15px;padding:8px 12px;}
|
|
| 22 |
- |
|
| 23 |
-.popup .page a{width:32px;height:32px;} (No newline at end of file)
|
|
| 1 |
+@charset "utf-8"; |
|
| 2 |
+ |
|
| 3 |
+.popup_title_area{display:flex;width:100%;height:50px;padding:0 20px;background:#000;align-items:center;justify-content:space-between;}
|
|
| 4 |
+h1.popup_title{font-size:18px;font-weight:600;color:#fff;}
|
|
| 5 |
+.popup_title_wrap{display:flex;align-items:center;justify-content:space-between;}
|
|
| 6 |
+.popup_title_wrap h2{font-size:16px;font-weight:600;color:var(--primary-title-color);}
|
|
| 7 |
+ |
|
| 8 |
+.popup_content{padding:30px 20px;}
|
|
| 9 |
+ |
|
| 10 |
+.search_area.box{padding:0 10px;font-size:14px;}
|
|
| 11 |
+.search_item{padding:4px 0;}
|
|
| 12 |
+ |
|
| 13 |
+.input{height:30px;}
|
|
| 14 |
+select, .select{height:30px;border:1px solid var(--default-line-color);border-radius:5px;padding:0 32px 0 12px;background:#fff url(../images/component/icon_arrow_down.png) no-repeat calc(100% - 4px) center;}
|
|
| 15 |
+ |
|
| 16 |
+.radio_wrap,.checkbox_wrap{gap:8px;}
|
|
| 17 |
+.radio_item, .checkbox_item{font-size:14px;}
|
|
| 18 |
+ |
|
| 19 |
+.popup_title_wrap+.table{margin:12px 0 40px 0;}
|
|
| 20 |
+.popup.table_type_cols thead>tr>th,.popup.table_type_cols tbody>tr>td{height:40px;font-size:15px;}
|
|
| 21 |
+.popup.table_type_rows tbody>tr>th, .popup.table_type_rows tbody>tr>td{height:40px;font-size:15px;padding:8px 12px;}
|
|
| 22 |
+ |
|
| 23 |
+.page a{width:32px;height:32px;} (No newline at end of file)
|
--- src/main/webapp/publish/adm/css/style.css
+++ src/main/webapp/publish/adm/css/style.css
... | ... | @@ -1,131 +1,122 @@ |
| 1 |
-@charset "utf-8"; |
|
| 2 |
-@import url(/publish/adm/css/style.css); /* 간격 css */ |
|
| 3 |
-@import url(/publish/adm/css/icon.css); |
|
| 4 |
- |
|
| 5 |
-/* 폰트 */ |
|
| 6 |
-.fwLg{font-weight: 300 !important}
|
|
| 7 |
-.fwRg{font-weight: 400 !important}
|
|
| 8 |
-.fwMd{font-weight: 500 !important}
|
|
| 9 |
-.fwBold{font-weight: 700 !important}
|
|
| 10 |
- |
|
| 11 |
-.sub_font{font-family:var(--secondary-title-font);}
|
|
| 12 |
- |
|
| 13 |
-.show{display:block !important;}
|
|
| 14 |
-.hide{display:none !important;}
|
|
| 15 |
- |
|
| 16 |
-.text_left{text-align:left;}
|
|
| 17 |
-.text_right{text-align:right;}
|
|
| 18 |
-.text_center{text-align:center;}
|
|
| 19 |
- |
|
| 20 |
-.input{height:34px;background:#fff;border:1px solid var(--default-line-color);border-radius:5px;padding:0 12px;}
|
|
| 21 |
-input[type="checkbox"].checkbox{width:20px;height:20px;border:1px solid var(--default-line-color);}
|
|
| 22 |
-textarea, .testarea{background:#fff;border:1px solid var(--default-line-color);border-radius:5px;padding:8px 12px;}
|
|
| 23 |
-select, .select{height:34px;border:1px solid var(--default-line-color);border-radius:5px;padding:0 32px 0 12px;background:#fff url(/publish/adm/images/component/icon_arrow_down.png) no-repeat calc(100% - 4px) center;}
|
|
| 24 |
- |
|
| 25 |
-.email_wrap{display:flex;gap:8px;align-items:center;}
|
|
| 26 |
-.email_wrap .input{width:160px;}
|
|
| 27 |
-.email_wrap .select{width:160px;}
|
|
| 28 |
- |
|
| 29 |
-.radio_wrap,.checkbox_wrap{display:flex;align-items:center;gap:16px;}
|
|
| 30 |
-.radio_wrap.column,.checkbox_wrap.column{flex-direction:column;align-items:flex-start;gap:4px;}
|
|
| 31 |
-.radio_item,.checkbox_item{display:flex;align-items:center;gap:4px;font-size:16px;}
|
|
| 32 |
- |
|
| 33 |
-.input_mix_wrap{display:flex;gap:8px;align-items:center;}
|
|
| 34 |
- |
|
| 35 |
-.address_wrap{display:flex;flex-direction:column;gap:8px;}
|
|
| 36 |
-.address_row{display:flex;gap:8px;}
|
|
| 37 |
-.input_post{width:calc(50% - 105px);}
|
|
| 38 |
-.adr_default{width:60%;}
|
|
| 39 |
-.adr_detail{width:40%;}
|
|
| 40 |
- |
|
| 41 |
-.input_desc_wrap{display:flex;width:100%;gap:12px;}
|
|
| 42 |
-.input_desc_wrap.column{flex-direction:column;gap:0;margin:8px 0 0 0;}
|
|
| 43 |
-.input_desc_wrap .input_desc{margin:0;}
|
|
| 44 |
- |
|
| 45 |
-.input_desc{font-size:14px;font-weight:400;color:#666;margin:0 0 0 8px;}
|
|
| 46 |
-.input_desc.red{color:var(--red-color);}
|
|
| 47 |
-.input_desc.blue{color:var(--primary-color);}
|
|
| 48 |
- |
|
| 49 |
-.calendar_wrap{display:flex;align-items:center;gap:8px;}
|
|
| 50 |
-.calendar{width:140px;background:#fff url(/publish/adm/images/component/icon_calendar.png) no-repeat calc(100% - 8px) center;}
|
|
| 51 |
- |
|
| 52 |
-.time_layer_wrap{position:relative;}
|
|
| 53 |
-.time_input{width:110px;background:#fff url(/publish/adm/images/component/icon_clock.png) no-repeat calc(100% - 8px) center;}
|
|
| 54 |
-.time_layer{position:absolute;width:230px;padding:20px;border-radius:16px;background:#fff;box-shadow:0 0 10px rgba(0,0,0,0.1);top:calc(100% + 4px);left:0;transform:scale(0.96) translateZ(0) translateY(-20px);opacity:0;transition: transform 300ms ease, opacity 300ms ease, visibility 300ms ease;}
|
|
| 55 |
-.time_layer.active{transform:scale(1.0001) translateZ(0) translateY(0);opacity:1;}
|
|
| 56 |
-.time_layer .title{display:block;font-size:16px;font-weight:bold;color:var(--primary-title-color);text-align:left;padding:0 0 8px 0;}
|
|
| 57 |
-.time_wrap{display:flex;gap:8px;align-items:center;}
|
|
| 58 |
-.time_select{width:73px;background-color:#edf0f5;border:0;}
|
|
| 59 |
-.time_layer button{width:100%;margin:12px 0 0 0;}
|
|
| 60 |
- |
|
| 61 |
-/* 검색영역 */ |
|
| 62 |
-.search_area{display:flex;align-items:flex-end;justify-content:space-between;}
|
|
| 63 |
-.search_area.box{padding:0 20px;margin:0 0 40px 0;border:1px solid #cdd5e6;border-radius:10px;background:#eff2f9;flex-direction:column;}
|
|
| 64 |
- |
|
| 65 |
-.search_item{display:flex;width:100%;padding:8px 0;align-items:center;border-bottom:1px solid #cdd5e6;}
|
|
| 66 |
-.search_item:last-child{border-bottom:0;}
|
|
| 67 |
-.search_title{position:relative;min-width:120px;padding:0 0 0 12px;}
|
|
| 68 |
-.search_title::after{position:absolute;content:"";width:4px;height:4px;background:var(--primary-color);border-radius:100%;left:0;top:9px;}
|
|
| 69 |
-.search_title+.form_wrap{width:calc(100% - 120px);}
|
|
| 70 |
- |
|
| 71 |
-.search_select{min-width:120px;}
|
|
| 72 |
-.search_input{min-width:300px;}
|
|
| 73 |
- |
|
| 74 |
-.search_left .total_number{font-size:14px;color:var(--body-text-color);}
|
|
| 75 |
-.search_left .total_number b{font-size:16px;font-weight:bold;color:var(--primary-color);}
|
|
| 76 |
-.search_right{display:flex;gap:10px;align-items:center;}
|
|
| 77 |
-.search_select{min-width:120px;height:34px;}
|
|
| 78 |
-.search_input{min-width:150px;}
|
|
| 79 |
-.search_right button{height:34px;padding:0 12px;font-size:16px;font-weight:400;}
|
|
| 80 |
-.search_right .btn_search{background:var(--primary-color);color:#fff;}
|
|
| 81 |
-.search_right .btn_reset{background:var(--gray-color);color:#fff;}
|
|
| 82 |
- |
|
| 83 |
-/* 상태 */ |
|
| 84 |
-.status{min-height:34px;font-size:16px;font-weight:500;border-radius:100px;padding:3px 12px;}
|
|
| 85 |
- |
|
| 86 |
-.status.line.blue{border:1px solid #135add;color:#135add;background:#fff;}
|
|
| 87 |
-.status.line.gray{border:1px solid #d1d6df;color:#858B97;background:#eff0f2;}
|
|
| 88 |
-.status.line.orange{border:1px solid #df5f36;color:#df5f36;background:#fff;}
|
|
| 89 |
- |
|
| 90 |
-.status.fill.blue{background:#E9EEF8;color:#2557B4;}
|
|
| 91 |
-.status.fill.gray{background:#E4E7EE;color:#616576;}
|
|
| 92 |
-.status.fill.orange{background:#FEF0EC;color:#F86A3C;}
|
|
| 93 |
- |
|
| 94 |
-.status.text{position:relative;padding:0;}
|
|
| 95 |
-.status.text::after{position:absolute;content:"";width:100%;height:5px;opacity:0.2;left:0;bottom:2px;}
|
|
| 96 |
-.status.text.blue{color:#135add;}
|
|
| 97 |
-.status.text.blue::after{background:#135add;}
|
|
| 98 |
-.status.text.gray{color:#858B97;}
|
|
| 99 |
-.status.text.gray::after{background:#858B97;}
|
|
| 100 |
- |
|
| 101 |
-.file_list{display:flex;flex-direction:column;gap:4px;}
|
|
| 102 |
-.file_list a{display:flex;gap:4px;align-items:center;}
|
|
| 103 |
- |
|
| 104 |
-.file_list.box{padding:15px 35px;margin:40px 0 0 0;background:#f5f7f9;border-radius:15px;gap:10px;}
|
|
| 105 |
-.file_list.box a{gap:8px;font-size:18px;color:var(--body-text-color);text-decoration:none;}
|
|
| 106 |
- |
|
| 107 |
- |
|
| 108 |
-/* 갤러리 리스트 */ |
|
| 109 |
-.gallery_list{display:flex;border-top:2px solid var(--primary-color);border-bottom:1px solid var(--lightgray-color);margin:12px 0 40px 0;padding:40px 0;gap:20px;flex-wrap:wrap;}
|
|
| 110 |
-.gallery_list>li{width:calc((100%/4) - 15px);}
|
|
| 111 |
-.gallery_list a{position:relative;width:100%;border:1px solid #E2E7EF;}
|
|
| 112 |
-.gallery_list .status{position:absolute;display:flex;min-height:30px;font-size:16px;letter-spacing:0.3px;padding:2px 8px;right:12px;top:12px;border-radius:8px;justify-content:center;align-items:center;}
|
|
| 113 |
-.gallery_list .primary{background:var(--primary-color);color:#fff;}
|
|
| 114 |
-.gallery_list .gray{background:var(--gray-color);color:#fff;}
|
|
| 115 |
-.gallery_list .images_area{display:flex;width:100%;height:180px;background:#f2f4f7;overflow:hidden;justify-content:center;align-items:center;}
|
|
| 116 |
-.gallery_list .images_area img{max-width:100%;max-height:100%;object-fit:contain;}
|
|
| 117 |
-.gallery_list .list_content{padding:20px;}
|
|
| 118 |
-.gallery_list .list_title{ text-overflow: ellipsis;overflow: hidden;display: -webkit-box;-webkit-box-orient: vertical;-webkit-line-clamp: 2;font-size:18px;font-weight:600;color:var(--primary-title-color);}
|
|
| 119 |
-.gallery_list .list_info{display:flex;font-size:14px;font-weight:400;color:#636469;margin:20px 0 0 0;}
|
|
| 120 |
-.gallery_list .list_info li{position:relative;padding:0 10px;}
|
|
| 121 |
-.gallery_list .list_info li:first-child{padding:0 10px 0 0;}
|
|
| 122 |
-.gallery_list .list_info li::after{position:absolute;content:"";width:1px;height:10px;background:#636469;right:0;top:6px;}
|
|
| 123 |
-.gallery_list .list_info li:last-child::after{display:none;}
|
|
| 124 |
- |
|
| 125 |
-/* 메뉴관리 */ |
|
| 126 |
-.menu_container{display:flex;justify-content:space-between;gap:40px;}
|
|
| 127 |
-.menu_list_content{width:280px;}
|
|
| 128 |
-.menu_list_content .btn_wrap{margin:0 0 12px 0;}
|
|
| 129 |
-.menu_list{width:100%;border:1px solid var(--lightgray-color);border-radius:8px;overflow:auto;}
|
|
| 130 |
- |
|
| 131 |
-.menu_detail{width:calc(100% - 280px);}
|
|
| 1 |
+@charset "utf-8"; |
|
| 2 |
+@import url(../../../css/style.css); /* 간격 css */ |
|
| 3 |
+@import url(../css/icon.css); |
|
| 4 |
+ |
|
| 5 |
+/* 폰트 */ |
|
| 6 |
+.fwLg{font-weight: 300 !important}
|
|
| 7 |
+.fwRg{font-weight: 400 !important}
|
|
| 8 |
+.fwMd{font-weight: 500 !important}
|
|
| 9 |
+.fwBold{font-weight: 700 !important}
|
|
| 10 |
+ |
|
| 11 |
+.sub_font{font-family:var(--secondary-title-font);}
|
|
| 12 |
+ |
|
| 13 |
+.show{display:block !important;}
|
|
| 14 |
+.hide{display:none !important;}
|
|
| 15 |
+ |
|
| 16 |
+.text_left{text-align:left;}
|
|
| 17 |
+.text_right{text-align:right;}
|
|
| 18 |
+.text_center{text-align:center;}
|
|
| 19 |
+ |
|
| 20 |
+.input{height:34px;background:#fff;border:1px solid var(--default-line-color);border-radius:5px;padding:0 12px;}
|
|
| 21 |
+input[type="checkbox"].checkbox{width:20px;height:20px;border:1px solid var(--default-line-color);}
|
|
| 22 |
+textarea, .testarea{background:#fff;border:1px solid var(--default-line-color);border-radius:5px;padding:0 12px;}
|
|
| 23 |
+select, .select{height:34px;border:1px solid var(--default-line-color);border-radius:5px;padding:0 32px 0 12px;background:#fff url(../images/component/icon_arrow_down.png) no-repeat calc(100% - 4px) center;}
|
|
| 24 |
+ |
|
| 25 |
+.email_wrap{display:flex;gap:8px;align-items:center;}
|
|
| 26 |
+.email_wrap .input{width:160px;}
|
|
| 27 |
+.email_wrap .select{width:160px;}
|
|
| 28 |
+ |
|
| 29 |
+.radio_wrap,.checkbox_wrap{display:flex;align-items:center;gap:16px;}
|
|
| 30 |
+.radio_item,.checkbox_item{display:flex;align-items:center;gap:4px;font-size:16px;}
|
|
| 31 |
+ |
|
| 32 |
+.input_mix_wrap{display:flex;gap:8px;align-items:center;}
|
|
| 33 |
+ |
|
| 34 |
+.address_wrap{display:flex;flex-direction:column;gap:8px;}
|
|
| 35 |
+.address_row{display:flex;gap:8px;}
|
|
| 36 |
+.input_post{width:calc(50% - 105px);}
|
|
| 37 |
+.adr_default{width:60%;}
|
|
| 38 |
+.adr_detail{width:40%;}
|
|
| 39 |
+ |
|
| 40 |
+.input_desc_wrap{display:flex;width:100%;gap:12px;}
|
|
| 41 |
+.input_desc_wrap.column{flex-direction:column;gap:0;margin:8px 0 0 0;}
|
|
| 42 |
+.input_desc_wrap .input_desc{margin:0;}
|
|
| 43 |
+ |
|
| 44 |
+.input_desc{font-size:14px;font-weight:400;color:#666;margin:0 0 0 8px;}
|
|
| 45 |
+.input_desc.red{color:var(--red-color);}
|
|
| 46 |
+.input_desc.blue{color:var(--primary-color);}
|
|
| 47 |
+ |
|
| 48 |
+.calendar_wrap{display:flex;align-items:center;gap:8px;}
|
|
| 49 |
+.calendar{width:140px;background:#fff url(../images/component/icon_calendar.png) no-repeat calc(100% - 8px) center;}
|
|
| 50 |
+ |
|
| 51 |
+.time_layer_wrap{position:relative;}
|
|
| 52 |
+.time_input{width:110px;background:#fff url(../images/component/icon_clock.png) no-repeat calc(100% - 8px) center;}
|
|
| 53 |
+.time_layer{position:absolute;width:230px;padding:20px;border-radius:16px;background:#fff;box-shadow:0 0 10px rgba(0,0,0,0.1);top:calc(100% + 4px);left:0;transform:scale(0.96) translateZ(0) translateY(-20px);opacity:0;transition: transform 300ms ease, opacity 300ms ease, visibility 300ms ease;}
|
|
| 54 |
+.time_layer.active{transform:scale(1.0001) translateZ(0) translateY(0);opacity:1;}
|
|
| 55 |
+.time_layer .title{display:block;font-size:16px;font-weight:bold;color:var(--primary-title-color);text-align:left;padding:0 0 8px 0;}
|
|
| 56 |
+.time_wrap{display:flex;gap:8px;align-items:center;}
|
|
| 57 |
+.time_select{width:73px;background-color:#edf0f5;border:0;}
|
|
| 58 |
+.time_layer button{width:100%;margin:12px 0 0 0;}
|
|
| 59 |
+ |
|
| 60 |
+/* 검색영역 */ |
|
| 61 |
+.search_area{display:flex;align-items:flex-end;justify-content:space-between;}
|
|
| 62 |
+.search_area.box{padding:0 20px;margin:0 0 40px 0;border:1px solid #cdd5e6;border-radius:10px;background:#eff2f9;flex-direction:column;}
|
|
| 63 |
+ |
|
| 64 |
+.search_item{display:flex;width:100%;padding:8px 0;align-items:center;border-bottom:1px solid #cdd5e6;}
|
|
| 65 |
+.search_item:last-child{border-bottom:0;}
|
|
| 66 |
+.search_title{position:relative;min-width:120px;padding:0 0 0 12px;}
|
|
| 67 |
+.search_title::after{position:absolute;content:"";width:4px;height:4px;background:var(--primary-color);border-radius:100%;left:0;top:9px;}
|
|
| 68 |
+.search_title+.form_wrap{width:calc(100% - 120px);}
|
|
| 69 |
+ |
|
| 70 |
+.search_select{min-width:120px;}
|
|
| 71 |
+.search_input{min-width:300px;}
|
|
| 72 |
+ |
|
| 73 |
+.search_left .total_number{font-size:14px;color:var(--body-text-color);}
|
|
| 74 |
+.search_left .total_number b{font-size:16px;font-weight:bold;color:var(--primary-color);}
|
|
| 75 |
+.search_right{display:flex;gap:10px;align-items:center;}
|
|
| 76 |
+.search_select{min-width:120px;}
|
|
| 77 |
+.search_input{min-width:150px;}
|
|
| 78 |
+.search_right button{height:34px;padding:0 12px;font-size:16px;font-weight:400;}
|
|
| 79 |
+.search_right .btn_search{background:var(--primary-color);color:#fff;}
|
|
| 80 |
+.search_right .btn_reset{background:var(--gray-color);color:#fff;}
|
|
| 81 |
+ |
|
| 82 |
+/* 상태 */ |
|
| 83 |
+.status{min-height:34px;font-size:16px;font-weight:500;border-radius:100px;padding:3px 12px;}
|
|
| 84 |
+ |
|
| 85 |
+.status.line.blue{border:1px solid #135add;color:#135add;background:#fff;}
|
|
| 86 |
+.status.line.gray{border:1px solid #d1d6df;color:#858B97;background:#eff0f2;}
|
|
| 87 |
+.status.line.orange{border:1px solid #df5f36;color:#df5f36;background:#fff;}
|
|
| 88 |
+ |
|
| 89 |
+.status.fill.blue{background:#E9EEF8;color:#2557B4;}
|
|
| 90 |
+.status.fill.gray{background:#E4E7EE;color:#616576;}
|
|
| 91 |
+.status.fill.orange{background:#FEF0EC;color:#F86A3C;}
|
|
| 92 |
+ |
|
| 93 |
+.status.text{position:relative;padding:0;}
|
|
| 94 |
+.status.text::after{position:absolute;content:"";width:100%;height:5px;opacity:0.2;left:0;bottom:2px;}
|
|
| 95 |
+.status.text.blue{color:#135add;}
|
|
| 96 |
+.status.text.blue::after{background:#135add;}
|
|
| 97 |
+.status.text.gray{color:#858B97;}
|
|
| 98 |
+.status.text.gray::after{background:#858B97;}
|
|
| 99 |
+ |
|
| 100 |
+.file_list{display:flex;flex-direction:column;gap:4px;}
|
|
| 101 |
+.file_list a{display:flex;gap:4px;align-items:center;}
|
|
| 102 |
+ |
|
| 103 |
+.file_list.box{padding:15px 35px;margin:40px 0 0 0;background:#f5f7f9;border-radius:15px;gap:10px;}
|
|
| 104 |
+.file_list.box a{gap:8px;font-size:18px;color:var(--body-text-color);text-decoration:none;}
|
|
| 105 |
+ |
|
| 106 |
+ |
|
| 107 |
+/* 갤러리 리스트 */ |
|
| 108 |
+.gallery_list{display:flex;margin:12px 0 0 0;gap:20px;flex-wrap:wrap;}
|
|
| 109 |
+.gallery_list>li{width:calc((100%/3) - 14px);}
|
|
| 110 |
+.gallery_list a{position:relative;border:1px solid #E2E7EF;}
|
|
| 111 |
+.gallery_list .status{position:absolute;display:flex;min-height:30px;font-size:16px;letter-spacing:0.3px;padding:2px 8px;right:12px;top:12px;border-radius:8px;justify-content:center;align-items:center;}
|
|
| 112 |
+.gallery_list .primary{background:var(--primary-color);color:#fff;}
|
|
| 113 |
+.gallery_list .gray{background:var(--gray-color);color:#fff;}
|
|
| 114 |
+.gallery_list .images_area{display:flex;width:100%;height:180px;background:#f2f4f7;overflow:hidden;justify-content:center;align-items:center;}
|
|
| 115 |
+.gallery_list .images_area img{max-width:100%;max-height:100%;object-fit:contain;}
|
|
| 116 |
+.gallery_list .list_content{padding:20px;}
|
|
| 117 |
+.gallery_list .list_title{ text-overflow: ellipsis;overflow: hidden;display: -webkit-box;-webkit-box-orient: vertical;-webkit-line-clamp: 2;font-size:18px;font-weight:600;color:var(--primary-title-color);}
|
|
| 118 |
+.gallery_list .list_info{display:flex;font-size:14px;font-weight:400;color:#636469;margin:20px 0 0 0;}
|
|
| 119 |
+.gallery_list .list_info li{position:relative;padding:0 10px;}
|
|
| 120 |
+.gallery_list .list_info li:first-child{padding:0 10px 0 0;}
|
|
| 121 |
+.gallery_list .list_info li::after{position:absolute;content:"";width:1px;height:10px;background:#636469;right:0;top:6px;}
|
|
| 122 |
+.gallery_list .list_info li:last-child::after{display:none;} (No newline at end of file)
|
--- src/main/webapp/publish/adm/css/tab.css
+++ src/main/webapp/publish/adm/css/tab.css
... | ... | @@ -1,24 +1,24 @@ |
| 1 |
-@charset "utf-8"; |
|
| 2 |
- |
|
| 3 |
-.tabs{display:flex;width:100%;margin:0 0 40px 0;}
|
|
| 4 |
- |
|
| 5 |
-.tabs.tab02 li{width:calc(100%/2);}
|
|
| 6 |
-.tabs.tab03 li{width:calc(100%/3);}
|
|
| 7 |
-.tabs.tab04 li{width:calc(100%/4);}
|
|
| 8 |
-.tabs.tab05 li{width:calc(100%/5);}
|
|
| 9 |
-.tabs.tab06 li{width:calc(100%/6);}
|
|
| 10 |
- |
|
| 11 |
-.tabs.fill{background:#EFF2F9;border-radius:10px;padding:0 20px;}
|
|
| 12 |
-.tabs.fill .tab{width:100%;min-width:180px;height:60px;font-size:20px;font-weight:500;color:#8F96A6;}
|
|
| 13 |
-.tabs.fill .tab.active{border-bottom:3px solid var(--primary-color);font-weight:600;color:var(--primary-color);}
|
|
| 14 |
- |
|
| 15 |
-/* .tabs.line{border-bottom:2px solid var(--primary-color);border-top:1px solid #CED3DE;border-radius:10px 10px 0 0;overflow:hidden;} */
|
|
| 16 |
-.tabs.line{border:1px solid #ced3de;border-bottom:2px solid var(--primary-color);border-radius:10px 10px 0 0;}
|
|
| 17 |
-.tabs.line .tab{position:relative;width:100%;height:50px;font-size:18px;border-right:1px solid #ced3de;}
|
|
| 18 |
-.tabs.line .tab.active{background:#E9EEF8;color:var(--primary-color);font-weight:600;border-radius:10px 10px 0 0;}
|
|
| 19 |
-.tabs.line .tab.active::after{position:absolute;content:"";width:calc(100% + 2px);height:calc(100% + 2px);left:-1px;top:-1px;border:2px solid var(--primary-color);border-bottom:0;border-radius:10px 10px 0 0;}
|
|
| 20 |
-.tabs.line :last-child .tab{border-right:0;}
|
|
| 21 |
- |
|
| 22 |
- |
|
| 23 |
-.tab_content{display:none;}
|
|
| 1 |
+@charset "utf-8"; |
|
| 2 |
+ |
|
| 3 |
+.tabs{display:flex;width:100%;margin:0 0 40px 0;}
|
|
| 4 |
+ |
|
| 5 |
+.tabs.tab02 li{width:calc(100%/2);}
|
|
| 6 |
+.tabs.tab03 li{width:calc(100%/3);}
|
|
| 7 |
+.tabs.tab04 li{width:calc(100%/4);}
|
|
| 8 |
+.tabs.tab05 li{width:calc(100%/5);}
|
|
| 9 |
+.tabs.tab06 li{width:calc(100%/6);}
|
|
| 10 |
+ |
|
| 11 |
+.tabs.fill{background:#EFF2F9;border-radius:10px;padding:0 20px;}
|
|
| 12 |
+.tabs.fill .tab{width:100%;min-width:180px;height:60px;font-size:20px;font-weight:500;color:#8F96A6;}
|
|
| 13 |
+.tabs.fill .tab.active{border-bottom:3px solid var(--primary-color);font-weight:600;color:var(--primary-color);}
|
|
| 14 |
+ |
|
| 15 |
+/* .tabs.line{border-bottom:2px solid var(--primary-color);border-top:1px solid #CED3DE;border-radius:10px 10px 0 0;overflow:hidden;} */
|
|
| 16 |
+.tabs.line{border:1px solid #ced3de;border-bottom:2px solid var(--primary-color);border-radius:10px 10px 0 0;}
|
|
| 17 |
+.tabs.line .tab{position:relative;width:100%;height:50px;font-size:18px;border-right:1px solid #ced3de;}
|
|
| 18 |
+.tabs.line .tab.active{background:#E9EEF8;color:var(--primary-color);font-weight:600;border-radius:10px 10px 0 0;}
|
|
| 19 |
+.tabs.line .tab.active::after{position:absolute;content:"";width:calc(100% + 2px);height:calc(100% + 2px);left:-1px;top:-1px;border:2px solid var(--primary-color);border-bottom:0;border-radius:10px 10px 0 0;}
|
|
| 20 |
+.tabs.line :last-child .tab{border-right:0;}
|
|
| 21 |
+ |
|
| 22 |
+ |
|
| 23 |
+.tab_content{display:none;}
|
|
| 24 | 24 |
.tab_content.active{display:block;} (No newline at end of file)
|
--- src/main/webapp/publish/adm/css/table.css
+++ src/main/webapp/publish/adm/css/table.css
... | ... | @@ -1,43 +1,41 @@ |
| 1 |
-@charset "utf-8"; |
|
| 2 |
- |
|
| 3 |
-.table{border-top:2px solid var(--primary-color);margin:0 0 40px 0;}
|
|
| 4 |
-.content_title.h4+.table{margin:0 0 20px 0;}
|
|
| 5 |
-.content_title.h5+.table{margin:12px 0 40px 0;}
|
|
| 6 |
- |
|
| 7 |
-.table table{table-layout:fixed;width:100%;}
|
|
| 8 |
-.table .mobile_show,.table .mobile_hide{display:none;}
|
|
| 9 |
-.table .required{color:var(--red-color);margin:0 4px 0 0;}
|
|
| 10 |
- |
|
| 11 |
-.table td.visible{overflow:visible !important;}
|
|
| 12 |
- |
|
| 13 |
-.table_type_cols{margin:12px 0 40px 0;}
|
|
| 14 |
-.table_type_cols tr{border-bottom:1px solid #DEE6F4;}
|
|
| 15 |
-.table_type_cols th,.table_type_cols td{padding:4px 8px;font-size:16px;text-align:center;box-sizing:border-box;}
|
|
| 16 |
-.table_type_cols thead>tr>th{height:50px;font-weight:500;color:#25272A;background:#eff2f9;}
|
|
| 17 |
-.table_type_cols tbody>tr>td{height:50px;font-weight:400;color:#444;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;}
|
|
| 18 |
-.table_type_cols .text_left a{width:100%;text-align:left;}
|
|
| 19 |
- |
|
| 20 |
- |
|
| 21 |
-.table_type_rows{margin:30px 0;}
|
|
| 22 |
-.table_type_rows tr{border-bottom:1px solid #e2e7ef;}
|
|
| 23 |
-.table_type_rows tbody>tr>th,.table_type_rows tbody>tr>td{height:50px;padding:12px 20px;font-size:16px;color:#25272A;text-align:left;box-sizing:border-box;}
|
|
| 24 |
-.table_type_rows tbody>tr>th{font-weight:500;background:#F2F3F5;}
|
|
| 25 |
-.table_type_rows tbody>tr>td{font-weight:400;}
|
|
| 26 |
- |
|
| 27 |
-.file_top{display:flex;justify-content:space-between;align-items:flex-end;}
|
|
| 28 |
-.file_table{height:150px;margin:12px 0 0 0;border:1px solid var(--lightgray-color);border-radius:8px;}
|
|
| 29 |
-.file_table table{table-layout:fixed;width:100%;border-collapse: collapse;}
|
|
| 30 |
-.file_table tbody{width:100%;max-height:150px;overflow-y:auto;}
|
|
| 31 |
-.file_table th{height:36px;font-size:14px;color:#222;padding:0 8px;text-align:center;}
|
|
| 32 |
-.file_table tbody>tr>td{height:36px;font-size:14px;color:#444;padding:0 8px;text-align:center;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;}
|
|
| 33 |
-.file_table .btn_delete{width:28px;}
|
|
| 34 |
-.file_table .btn_delete i{width:100%;height:100%;}
|
|
| 35 |
- |
|
| 36 |
-.file_table.before_file_table table{height:100%;}
|
|
| 37 |
-.file_table.before_file_table thead{opacity:0.3;}
|
|
| 38 |
-.file_table.before_file_table tbody{background:#EFF0F4;}
|
|
| 39 |
-.file_table.before_file_table tbody tr{height:100%;border:0;text-align:center;}
|
|
| 40 |
-.file_table.before_file_table p{font-size:14px;}
|
|
| 41 |
-.file_table.before_file_table b{color:var(--primary-color);}
|
|
| 42 |
- |
|
| 43 |
- |
|
| 1 |
+@charset "utf-8"; |
|
| 2 |
+ |
|
| 3 |
+.table{border-top:2px solid var(--primary-color);margin:0 0 40px 0;}
|
|
| 4 |
+.content_title.h4+.table{margin:0 0 20px 0;}
|
|
| 5 |
+.content_title.h5+.table{margin:12px 0 40px 0;}
|
|
| 6 |
+ |
|
| 7 |
+.table table{table-layout:fixed;width:100%;}
|
|
| 8 |
+.table .mobile_show,.table .mobile_hide{display:none;}
|
|
| 9 |
+.table .required{color:var(--red-color);margin:0 4px 0 0;}
|
|
| 10 |
+ |
|
| 11 |
+.table td.visible{overflow:visible !important;}
|
|
| 12 |
+ |
|
| 13 |
+.table_type_cols{margin:12px 0 40px 0;}
|
|
| 14 |
+.table_type_cols tr{border-bottom:1px solid #DEE6F4;}
|
|
| 15 |
+.table_type_cols th,.table_type_cols td{padding:4px 8px;font-size:16px;text-align:center;box-sizing:border-box;}
|
|
| 16 |
+.table_type_cols thead>tr>th{height:50px;font-weight:500;color:#25272A;background:#eff2f9;}
|
|
| 17 |
+.table_type_cols tbody>tr>td{height:50px;font-weight:400;color:#444;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;}
|
|
| 18 |
+.table_type_cols .text_left a{width:100%;text-align:left;}
|
|
| 19 |
+ |
|
| 20 |
+ |
|
| 21 |
+.table_type_rows{margin:30px 0;}
|
|
| 22 |
+.table_type_rows tr{border-bottom:1px solid #e2e7ef;}
|
|
| 23 |
+.table_type_rows tbody>tr>th,.table_type_rows tbody>tr>td{height:50px;padding:12px 20px;font-size:16px;color:#25272A;text-align:left;box-sizing:border-box;}
|
|
| 24 |
+.table_type_rows tbody>tr>th{font-weight:500;background:#F2F3F5;}
|
|
| 25 |
+.table_type_rows tbody>tr>td{font-weight:400;}
|
|
| 26 |
+ |
|
| 27 |
+.file_top{display:flex;justify-content:space-between;align-items:flex-end;}
|
|
| 28 |
+.file_table{height:150px;margin:12px 0 0 0;border:1px solid var(--lightgray-color);border-radius:8px;}
|
|
| 29 |
+.file_table table{table-layout:fixed;width:100%;border-collapse: collapse;}
|
|
| 30 |
+.file_table tbody{width:100%;max-height:150px;overflow-y:auto;}
|
|
| 31 |
+.file_table th{height:36px;font-size:14px;color:#222;padding:0 8px;text-align:center;}
|
|
| 32 |
+.file_table tbody>tr>td{height:36px;font-size:14px;color:#444;padding:0 8px;text-align:center;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;}
|
|
| 33 |
+ |
|
| 34 |
+.file_table.before_file_table table{height:100%;}
|
|
| 35 |
+.file_table.before_file_table thead{opacity:0.3;}
|
|
| 36 |
+.file_table.before_file_table tbody{background:#EFF0F4;}
|
|
| 37 |
+.file_table.before_file_table tbody tr{height:100%;border:0;text-align:center;}
|
|
| 38 |
+.file_table.before_file_table p{font-size:14px;}
|
|
| 39 |
+.file_table.before_file_table b{color:var(--primary-color);}
|
|
| 40 |
+ |
|
| 41 |
+ |
--- src/main/webapp/publish/adm/guide/guide.css
+++ src/main/webapp/publish/adm/guide/guide.css
... | ... | @@ -1,86 +1,86 @@ |
| 1 |
-/* =============================== |
|
| 2 |
- IMPORTS |
|
| 3 |
-=============================== */ |
|
| 4 |
-@import url(../../../css/reset.css); |
|
| 5 |
-@import url(../css/common.css); |
|
| 6 |
-@import url(../css/button.css); |
|
| 7 |
-@import url(../css/style.css); |
|
| 8 |
- |
|
| 9 |
- |
|
| 10 |
-body{font-family:'Pretendard','Noto Sans KR',sans-serif;background:#f5f6fa;color:#333;}
|
|
| 11 |
- |
|
| 12 |
-/* =============================== |
|
| 13 |
- GUIDE WRAP & SECTIONS |
|
| 14 |
-=============================== */ |
|
| 15 |
-.guide_wrap{max-width:1200px;margin:60px auto;background:#fff;border-radius:16px;box-shadow:0 4px 10px rgba(0,0,0,0.08);padding:40px 50px;}
|
|
| 16 |
-.guide_wrap h1{font-size:26px;margin-bottom:25px;font-weight:700;color:#222;}
|
|
| 17 |
- |
|
| 18 |
-.guide_section{margin:60px 0;}
|
|
| 19 |
-.guide_section h2{font-size:22px;font-weight:600;}
|
|
| 20 |
-.guide_section h3{font-size:20px;font-weight:500;color:#0072ff;margin:40px 0 12px 0;}
|
|
| 21 |
- |
|
| 22 |
-/* =============================== |
|
| 23 |
- GUIDE INFO |
|
| 24 |
-=============================== */ |
|
| 25 |
-.guide_info{background:#fafafa;border:1px solid #eee;padding:15px 20px;border-radius:10px;margin-bottom:25px;}
|
|
| 26 |
-.guide_info ul{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:15px 30px;}
|
|
| 27 |
- |
|
| 28 |
-/* =============================== |
|
| 29 |
- FILTER BUTTONS |
|
| 30 |
-=============================== */ |
|
| 31 |
-.filter_wrap{margin-bottom:15px;display:flex;gap:8px;}
|
|
| 32 |
-.filter_btn{padding:8px 16px;border:1px solid #ccc;background:#fff;border-radius:6px;font-size:14px;cursor:pointer;transition:.2s;}
|
|
| 33 |
-.filter_btn:hover{background:#f0f0f0;}
|
|
| 34 |
-.filter_btn.active{background:#0072ff;border-color:#0072ff;color:#fff;}
|
|
| 35 |
- |
|
| 36 |
-/* =============================== |
|
| 37 |
- TABLE GUIDE |
|
| 38 |
-=============================== */ |
|
| 39 |
-.tb_guide{width:100%;border-collapse:collapse;font-size:14px;}
|
|
| 40 |
-.tb_guide th,.tb_guide td{border:1px solid #ddd;padding:10px 12px;text-align:center;}
|
|
| 41 |
-.tb_guide th{background:#f9f9f9;font-weight:600;}
|
|
| 42 |
-.tb_guide a{color:#0072ff;text-decoration:none;}
|
|
| 43 |
-.tb_guide a:hover{text-decoration:underline;}
|
|
| 44 |
- |
|
| 45 |
-/* STATUS COLORS */ |
|
| 46 |
-.done{color:#198754;font-weight:600;}
|
|
| 47 |
-.ing{color:#e67e22;font-weight:600;}
|
|
| 48 |
-.wait{color:#aaa;font-weight:600;}
|
|
| 49 |
- |
|
| 50 |
-/* =============================== |
|
| 51 |
- BUTTON GUIDE |
|
| 52 |
-=============================== */ |
|
| 53 |
-.btn_wrap{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:25px;justify-content:flex-start;}
|
|
| 54 |
-.btn{border-radius:6px;font-size:14px;cursor:pointer;font-weight:500;border:none;transition:.2s;}
|
|
| 55 |
-.btn_default{background:#fff;border:1px solid #ccc;color:#333;}.btn_default:hover{background:#f8f8f8;}
|
|
| 56 |
-.btn_primary{background:#0072ff;color:#fff;}.btn_primary:hover{background:#005edc;}
|
|
| 57 |
-.btn_danger{background:#e74c3c;color:#fff;}.btn_danger:hover{background:#c0392b;}
|
|
| 58 |
-.btn_warning{background:#f39c12;color:#fff;}.btn_warning:hover{background:#e67e22;}
|
|
| 59 |
-.btn_sub{background:#6c757d;color:#fff;}.btn_sub:hover{background:#5a6268;}
|
|
| 60 |
-.btn_sm{padding:5px 10px;font-size:13px;}.btn_md{padding:8px 16px;font-size:14px;}.btn_lg{padding:12px 24px;font-size:16px;}
|
|
| 61 |
- |
|
| 62 |
-/* =============================== |
|
| 63 |
- FORM ELEMENTS |
|
| 64 |
-=============================== */ |
|
| 65 |
-.form_wrap{display:flex;flex-direction:column;gap:10px;margin-bottom:25px;}
|
|
| 66 |
-input[type="text"],input[type="email"],input[type="password"],textarea,select{border:1px solid #ccc;border-radius:6px;padding:8px 12px;font-size:14px;width:100%;transition:.2s;}
|
|
| 67 |
-input:focus,textarea:focus,select:focus{border-color:#0072ff;box-shadow:0 0 0 2px rgba(0,114,255,0.1);outline:none;}
|
|
| 68 |
-textarea{min-height:100px;resize:vertical;}
|
|
| 69 |
- |
|
| 70 |
-.form_wrap.email_wrap{gap:8px;justify-content:flex-start;flex-direction:row;}
|
|
| 71 |
-.form_wrap.radio_wrap, .form_wrap.checkbox_wrap{flex-direction:row;}
|
|
| 72 |
-.form_wrap .input_post{width:calc(48% - 105px);}
|
|
| 73 |
- |
|
| 74 |
-/* =============================== |
|
| 75 |
- COLOR GUIDE |
|
| 76 |
-=============================== */ |
|
| 77 |
-.color_guide{display:flex;flex-wrap:wrap;gap:12px;}
|
|
| 78 |
-.color_box{width:120px;border-radius:6px;overflow:hidden;text-align:center;font-size:12px;border:1px solid #ddd;}
|
|
| 79 |
-.color_box .sample{height:50px;}.color_box .code{padding:6px;background:#fafafa;}
|
|
| 80 |
-.status_wrap{margin:60px 0 0 0;}
|
|
| 81 |
-.status_wrap span{margin:0 16px 0 0;}
|
|
| 82 |
- |
|
| 83 |
-/* =============================== |
|
| 84 |
- RESPONSIVE |
|
| 85 |
-=============================== */ |
|
| 86 |
-@media (max-width:768px){.guide_wrap{padding:20px;}.guide_info ul{flex-direction:column;}.tb_guide th,.tb_guide td{font-size:12px;padding:8px;}}
|
|
| 1 |
+/* =============================== |
|
| 2 |
+ IMPORTS |
|
| 3 |
+=============================== */ |
|
| 4 |
+@import url(../../../css/reset.css); |
|
| 5 |
+@import url(../css/common.css); |
|
| 6 |
+@import url(../css/button.css); |
|
| 7 |
+@import url(../css/style.css); |
|
| 8 |
+ |
|
| 9 |
+ |
|
| 10 |
+body{font-family:'Pretendard','Noto Sans KR',sans-serif;background:#f5f6fa;color:#333;}
|
|
| 11 |
+ |
|
| 12 |
+/* =============================== |
|
| 13 |
+ GUIDE WRAP & SECTIONS |
|
| 14 |
+=============================== */ |
|
| 15 |
+.guide_wrap{max-width:1200px;margin:60px auto;background:#fff;border-radius:16px;box-shadow:0 4px 10px rgba(0,0,0,0.08);padding:40px 50px;}
|
|
| 16 |
+.guide_wrap h1{font-size:26px;margin-bottom:25px;font-weight:700;color:#222;}
|
|
| 17 |
+ |
|
| 18 |
+.guide_section{margin:60px 0;}
|
|
| 19 |
+.guide_section h2{font-size:22px;font-weight:600;}
|
|
| 20 |
+.guide_section h3{font-size:20px;font-weight:500;color:#0072ff;margin:40px 0 12px 0;}
|
|
| 21 |
+ |
|
| 22 |
+/* =============================== |
|
| 23 |
+ GUIDE INFO |
|
| 24 |
+=============================== */ |
|
| 25 |
+.guide_info{background:#fafafa;border:1px solid #eee;padding:15px 20px;border-radius:10px;margin-bottom:25px;}
|
|
| 26 |
+.guide_info ul{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:15px 30px;}
|
|
| 27 |
+ |
|
| 28 |
+/* =============================== |
|
| 29 |
+ FILTER BUTTONS |
|
| 30 |
+=============================== */ |
|
| 31 |
+.filter_wrap{margin-bottom:15px;display:flex;gap:8px;}
|
|
| 32 |
+.filter_btn{padding:8px 16px;border:1px solid #ccc;background:#fff;border-radius:6px;font-size:14px;cursor:pointer;transition:.2s;}
|
|
| 33 |
+.filter_btn:hover{background:#f0f0f0;}
|
|
| 34 |
+.filter_btn.active{background:#0072ff;border-color:#0072ff;color:#fff;}
|
|
| 35 |
+ |
|
| 36 |
+/* =============================== |
|
| 37 |
+ TABLE GUIDE |
|
| 38 |
+=============================== */ |
|
| 39 |
+.tb_guide{width:100%;border-collapse:collapse;font-size:14px;}
|
|
| 40 |
+.tb_guide th,.tb_guide td{border:1px solid #ddd;padding:10px 12px;text-align:center;}
|
|
| 41 |
+.tb_guide th{background:#f9f9f9;font-weight:600;}
|
|
| 42 |
+.tb_guide a{color:#0072ff;text-decoration:none;}
|
|
| 43 |
+.tb_guide a:hover{text-decoration:underline;}
|
|
| 44 |
+ |
|
| 45 |
+/* STATUS COLORS */ |
|
| 46 |
+.done{color:#198754;font-weight:600;}
|
|
| 47 |
+.ing{color:#e67e22;font-weight:600;}
|
|
| 48 |
+.wait{color:#aaa;font-weight:600;}
|
|
| 49 |
+ |
|
| 50 |
+/* =============================== |
|
| 51 |
+ BUTTON GUIDE |
|
| 52 |
+=============================== */ |
|
| 53 |
+.btn_wrap{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:25px;justify-content:flex-start;}
|
|
| 54 |
+.btn{border-radius:6px;font-size:14px;cursor:pointer;font-weight:500;border:none;transition:.2s;}
|
|
| 55 |
+.btn_default{background:#fff;border:1px solid #ccc;color:#333;}.btn_default:hover{background:#f8f8f8;}
|
|
| 56 |
+.btn_primary{background:#0072ff;color:#fff;}.btn_primary:hover{background:#005edc;}
|
|
| 57 |
+.btn_danger{background:#e74c3c;color:#fff;}.btn_danger:hover{background:#c0392b;}
|
|
| 58 |
+.btn_warning{background:#f39c12;color:#fff;}.btn_warning:hover{background:#e67e22;}
|
|
| 59 |
+.btn_sub{background:#6c757d;color:#fff;}.btn_sub:hover{background:#5a6268;}
|
|
| 60 |
+.btn_sm{padding:5px 10px;font-size:13px;}.btn_md{padding:8px 16px;font-size:14px;}.btn_lg{padding:12px 24px;font-size:16px;}
|
|
| 61 |
+ |
|
| 62 |
+/* =============================== |
|
| 63 |
+ FORM ELEMENTS |
|
| 64 |
+=============================== */ |
|
| 65 |
+.form_wrap{display:flex;flex-direction:column;gap:10px;margin-bottom:25px;}
|
|
| 66 |
+input[type="text"],input[type="email"],input[type="password"],textarea,select{border:1px solid #ccc;border-radius:6px;padding:8px 12px;font-size:14px;width:100%;transition:.2s;}
|
|
| 67 |
+input:focus,textarea:focus,select:focus{border-color:#0072ff;box-shadow:0 0 0 2px rgba(0,114,255,0.1);outline:none;}
|
|
| 68 |
+textarea{min-height:100px;resize:vertical;}
|
|
| 69 |
+ |
|
| 70 |
+.form_wrap.email_wrap{gap:8px;justify-content:flex-start;flex-direction:row;}
|
|
| 71 |
+.form_wrap.radio_wrap, .form_wrap.checkbox_wrap{flex-direction:row;}
|
|
| 72 |
+.form_wrap .input_post{width:calc(48% - 105px);}
|
|
| 73 |
+ |
|
| 74 |
+/* =============================== |
|
| 75 |
+ COLOR GUIDE |
|
| 76 |
+=============================== */ |
|
| 77 |
+.color_guide{display:flex;flex-wrap:wrap;gap:12px;}
|
|
| 78 |
+.color_box{width:120px;border-radius:6px;overflow:hidden;text-align:center;font-size:12px;border:1px solid #ddd;}
|
|
| 79 |
+.color_box .sample{height:50px;}.color_box .code{padding:6px;background:#fafafa;}
|
|
| 80 |
+.status_wrap{margin:60px 0 0 0;}
|
|
| 81 |
+.status_wrap span{margin:0 16px 0 0;}
|
|
| 82 |
+ |
|
| 83 |
+/* =============================== |
|
| 84 |
+ RESPONSIVE |
|
| 85 |
+=============================== */ |
|
| 86 |
+@media (max-width:768px){.guide_wrap{padding:20px;}.guide_info ul{flex-direction:column;}.tb_guide th,.tb_guide td{font-size:12px;padding:8px;}}
|
--- src/main/webapp/publish/adm/guide/guide.html
+++ src/main/webapp/publish/adm/guide/guide.html
... | ... | @@ -1,272 +1,272 @@ |
| 1 |
-<!DOCTYPE html> |
|
| 2 |
-<html lang="ko"> |
|
| 3 |
- |
|
| 4 |
-<head> |
|
| 5 |
- <meta charset="UTF-8" /> |
|
| 6 |
- <title>퍼블리싱 가이드 | 베이스 프로젝트 제작</title> |
|
| 7 |
- <link rel="stylesheet" href="./guide.css" /> |
|
| 8 |
- <script src="https://code.jquery.com/jquery-3.7.1.min.js"></script> |
|
| 9 |
- <script src="./guide.js"></script> |
|
| 10 |
-</head> |
|
| 11 |
- |
|
| 12 |
-<body> |
|
| 13 |
- <div class="guide_wrap"> |
|
| 14 |
- <h1>퍼블리싱 가이드</h1> |
|
| 15 |
- |
|
| 16 |
- <div class="guide_info"> |
|
| 17 |
- <ul> |
|
| 18 |
- <li><strong>프로젝트명 :</strong> 베이스 프로젝트 제작</li> |
|
| 19 |
- <li><strong>담당자 :</strong> 정수빈</li> |
|
| 20 |
- <li><strong>작성일 :</strong> 2025-11-07</li> |
|
| 21 |
- <li><strong>파일경로 :</strong> /publish/</li> |
|
| 22 |
- </ul> |
|
| 23 |
- </div> |
|
| 24 |
- |
|
| 25 |
- <div class="filter_wrap"> |
|
| 26 |
- <button class="filter_btn active" data-filter="all">전체보기</button> |
|
| 27 |
- <button class="filter_btn" data-filter="done">완료</button> |
|
| 28 |
- <button class="filter_btn" data-filter="ing">작업중</button> |
|
| 29 |
- <button class="filter_btn" data-filter="wait">대기</button> |
|
| 30 |
- </div> |
|
| 31 |
- |
|
| 32 |
- <table class="tb_guide"> |
|
| 33 |
- <thead> |
|
| 34 |
- <tr> |
|
| 35 |
- <th scope="col">No</th> |
|
| 36 |
- <th scope="col">1Depth</th> |
|
| 37 |
- <th scope="col">2Depth</th> |
|
| 38 |
- <th scope="col">페이지명</th> |
|
| 39 |
- <th scope="col">파일명</th> |
|
| 40 |
- <th scope="col">상태</th> |
|
| 41 |
- <th scope="col">비고</th> |
|
| 42 |
- </tr> |
|
| 43 |
- </thead> |
|
| 44 |
- <tbody> |
|
| 45 |
- |
|
| 46 |
- <tr> |
|
| 47 |
- <td></td> |
|
| 48 |
- <td>공통</td> |
|
| 49 |
- <td>-</td> |
|
| 50 |
- <td><a href="../layout/_leftmenu.html" target="_blank" title="새창 열림">메뉴</a></td> |
|
| 51 |
- <td>/layout/_leftmenu.html</td> |
|
| 52 |
- <td class="ing">작업중</td> |
|
| 53 |
- <td>-</td> |
|
| 54 |
- </tr> |
|
| 55 |
- |
|
| 56 |
- <tr> |
|
| 57 |
- <td></td> |
|
| 58 |
- <td>공통</td> |
|
| 59 |
- <td>-</td> |
|
| 60 |
- <td><a href="../layout/_userinfo.html" target="_blank" title="새창 열림">상단 사용자 정보</a></td> |
|
| 61 |
- <td>/layout/_sidemenu.html</td> |
|
| 62 |
- <td class="done">완료</td> |
|
| 63 |
- <td>-</td> |
|
| 64 |
- </tr> |
|
| 65 |
- |
|
| 66 |
- <tr> |
|
| 67 |
- <td></td> |
|
| 68 |
- <td>공통</td> |
|
| 69 |
- <td>-</td> |
|
| 70 |
- <td><a href="../layout/_footer.html" target="_blank" title="새창 열림">푸터</a></td> |
|
| 71 |
- <td>/layout/_footer.html</td> |
|
| 72 |
- <td class="done">완료</td> |
|
| 73 |
- <td>-</td> |
|
| 74 |
- </tr> |
|
| 75 |
- |
|
| 76 |
- <tr> |
|
| 77 |
- <td></td> |
|
| 78 |
- <td>공통</td> |
|
| 79 |
- <td>-</td> |
|
| 80 |
- <td><a href="../layout/_sub_title.html" target="_blank" title="새창 열림">콘텐츠 타이틀</a></td> |
|
| 81 |
- <td>/layout/_sub_title.html</td> |
|
| 82 |
- <td class="done">완료</td> |
|
| 83 |
- <td>-</td> |
|
| 84 |
- </tr> |
|
| 85 |
- |
|
| 86 |
- <tr> |
|
| 87 |
- <td></td> |
|
| 88 |
- <td>메인</td> |
|
| 89 |
- <td>-</td> |
|
| 90 |
- <td><a href="../index.html" target="_blank" title="새창 열림">메인 페이지</a></td> |
|
| 91 |
- <td>main.html</td> |
|
| 92 |
- <td class="done">완료</td> |
|
| 93 |
- <td>-</td> |
|
| 94 |
- </tr> |
|
| 95 |
- |
|
| 96 |
- <tr> |
|
| 97 |
- <td></td> |
|
| 98 |
- <td>리스트</td> |
|
| 99 |
- <td>-</td> |
|
| 100 |
- <td><a href="../menu1/list.html" target="_blank" title="새창 열림">리스트</a></td> |
|
| 101 |
- <td>/menu1/list.html</td> |
|
| 102 |
- <td class="ing">작업중</td> |
|
| 103 |
- <td>-</td> |
|
| 104 |
- </tr> |
|
| 105 |
- |
|
| 106 |
- <tr> |
|
| 107 |
- <td></td> |
|
| 108 |
- <td>리스트 상세</td> |
|
| 109 |
- <td>-</td> |
|
| 110 |
- <td><a href="../menu1/list_view.html" target="_blank" title="새창 열림">리스트 상세</a></td> |
|
| 111 |
- <td>/menu1/list_view.html</td> |
|
| 112 |
- <td class="wait">대기</td> |
|
| 113 |
- <td>-</td> |
|
| 114 |
- </tr> |
|
| 115 |
- |
|
| 116 |
- <tr> |
|
| 117 |
- <td></td> |
|
| 118 |
- <td>리스트 등록</td> |
|
| 119 |
- <td>-</td> |
|
| 120 |
- <td><a href="../menu1/list_reg.html" target="_blank" title="새창 열림">리스트 등록</a></td> |
|
| 121 |
- <td>/menu1/list.html</td> |
|
| 122 |
- <td class="done">완료</td> |
|
| 123 |
- <td>-</td> |
|
| 124 |
- </tr> |
|
| 125 |
- |
|
| 126 |
- |
|
| 127 |
- </tbody> |
|
| 128 |
- </table> |
|
| 129 |
- |
|
| 130 |
- <!-- BUTTON --> |
|
| 131 |
- <section class="guide_section"> |
|
| 132 |
- <h2>Button (버튼)</h2> |
|
| 133 |
- |
|
| 134 |
- <h3>Filled Button</h3> |
|
| 135 |
- <div class="btn_wrap"> |
|
| 136 |
- <button class="btn fill primary small">Primary</button> |
|
| 137 |
- <button class="btn fill secondary small">Secondary</button> |
|
| 138 |
- <button class="btn fill red small">Red</button> |
|
| 139 |
- <button class="btn fill green small">Green</button> |
|
| 140 |
- <button class="btn fill gray small">Gray</button> |
|
| 141 |
- </div> |
|
| 142 |
- |
|
| 143 |
- <h3>Line Button</h3> |
|
| 144 |
- <div class="btn_wrap"> |
|
| 145 |
- <button class="btn line primary small">Primary</button> |
|
| 146 |
- <button class="btn line secondary small">Secondary</button> |
|
| 147 |
- <button class="btn line red small">Red</button> |
|
| 148 |
- <button class="btn line gray small">Gray</button> |
|
| 149 |
- </div> |
|
| 150 |
- |
|
| 151 |
- <h3>Size Variation</h3> |
|
| 152 |
- <div class="btn_wrap"> |
|
| 153 |
- <button class="btn fill gray xssmall">xssmall</button> |
|
| 154 |
- <button class="btn fill gray ssmall">ssmall</button> |
|
| 155 |
- <button class="btn fill gray small">small</button> |
|
| 156 |
- <button class="btn fill gray medium">medium</button> |
|
| 157 |
- <button class="btn fill gray large">large</button> |
|
| 158 |
- <button class="btn fill gray xlarge">xlarge</button> |
|
| 159 |
- </div> |
|
| 160 |
- </section> |
|
| 161 |
- |
|
| 162 |
- <!-- INPUT --> |
|
| 163 |
- <section class="guide_section"> |
|
| 164 |
- <h2>Input / Textarea / Select</h2> |
|
| 165 |
- |
|
| 166 |
- <h3>Input</h3> |
|
| 167 |
- <div class="form_wrap"> |
|
| 168 |
- <input type="text" class="input w50per" placeholder="제목을 입력해주세요."> |
|
| 169 |
- <span class="input_desc">* 필수입력 항목입니다.</span> |
|
| 170 |
- </div> |
|
| 171 |
- |
|
| 172 |
- <h3>Textarea</h3> |
|
| 173 |
- <div class="form_wrap"> |
|
| 174 |
- <textarea name="" id="" class="textarea w100per" rows="5"></textarea> |
|
| 175 |
- <div class="input_desc_wrap column"> |
|
| 176 |
- <span class="input_desc red">* 필수입력 항목입니다.</span> |
|
| 177 |
- <span class="input_desc blue">* 필수입력 항목입니다.</span> |
|
| 178 |
- </div> |
|
| 179 |
- </div> |
|
| 180 |
- |
|
| 181 |
- <h3>Email</h3> |
|
| 182 |
- <div class="form_wrap email_wrap"> |
|
| 183 |
- <input type="text" class="input email emain_id"><span class="text_split">@</span><input type="text" class="input email email_domain"> |
|
| 184 |
- <select name="" id="" class="select"> |
|
| 185 |
- <option value="">gmail.com</option> |
|
| 186 |
- <option value="">naver.com</option> |
|
| 187 |
- <option value="">kakao.com</option> |
|
| 188 |
- <option value="">직접입력</option> |
|
| 189 |
- </select> |
|
| 190 |
- </div> |
|
| 191 |
- |
|
| 192 |
- <h3>Address</h3> |
|
| 193 |
- <div class="form_wrap address_wrap"> |
|
| 194 |
- <div class="address_row"> |
|
| 195 |
- <input type="text" class="input input_post readonly" readonly><button type="button" class="btn medium line primary">우편번호 찾기</button> |
|
| 196 |
- </div> |
|
| 197 |
- <div class="address_row"> |
|
| 198 |
- <input type="text" class="input adr_default readonly" readonly> |
|
| 199 |
- <input type="text" class="input adr_detail"> |
|
| 200 |
- </div> |
|
| 201 |
- <span class="input_desc red">* 필수입력 항목입니다.</span> |
|
| 202 |
- </div> |
|
| 203 |
- </section> |
|
| 204 |
- |
|
| 205 |
- <!-- RADIO / CHECKBOX --> |
|
| 206 |
- <section class="guide_section"> |
|
| 207 |
- <h2>Checkbox / Radio</h2> |
|
| 208 |
- |
|
| 209 |
- <h3>Checkbox</h3> |
|
| 210 |
- <div class="form_wrap radio_wrap"> |
|
| 211 |
- <label for="man" class="radio_item"> |
|
| 212 |
- <input type="radio" name="jender" id="man"> |
|
| 213 |
- <span>남성</span> |
|
| 214 |
- </label> |
|
| 215 |
- <label for="woman" class="radio_item"> |
|
| 216 |
- <input type="radio" name="jender" id="woman"> |
|
| 217 |
- <span>여성</span> |
|
| 218 |
- </label> |
|
| 219 |
- <span class="input_desc red">* 필수입력 항목입니다.</span> |
|
| 220 |
- </div> |
|
| 221 |
- |
|
| 222 |
- <h3>Radio</h3> |
|
| 223 |
- <div class="form_wrap checkbox_wrap"> |
|
| 224 |
- <label for="check_all" class="checkbox_item"> |
|
| 225 |
- <input type="checkbox" name="check" id="check_all"> |
|
| 226 |
- <span>전체</span> |
|
| 227 |
- </label> |
|
| 228 |
- <label for="check_1" class="checkbox_item"> |
|
| 229 |
- <input type="checkbox" name="check" id="check_1"> |
|
| 230 |
- <span>항목1</span> |
|
| 231 |
- </label> |
|
| 232 |
- <label for="check_2" class="checkbox_item"> |
|
| 233 |
- <input type="checkbox" name="check" id="check_2"> |
|
| 234 |
- <span>항목2</span> |
|
| 235 |
- </label> |
|
| 236 |
- <label for="check_3" class="checkbox_item"> |
|
| 237 |
- <input type="checkbox" name="check" id="check_3"> |
|
| 238 |
- <span>항목3</span> |
|
| 239 |
- </label> |
|
| 240 |
- </div> |
|
| 241 |
- </section> |
|
| 242 |
- |
|
| 243 |
- <!-- STATUS --> |
|
| 244 |
- <section class="guide_section"> |
|
| 245 |
- <h2>Status</h2> |
|
| 246 |
- <div class="status_wrap"> |
|
| 247 |
- <span class="status line blue">진행중</span> |
|
| 248 |
- <span class="status line gray">완료</span> |
|
| 249 |
- <span class="status text blue">접수</span> |
|
| 250 |
- <span class="status text gray">마감</span> |
|
| 251 |
- </div> |
|
| 252 |
- </section> |
|
| 253 |
- |
|
| 254 |
- <!-- PAGINATION --> |
|
| 255 |
- <section class="guide_section"> |
|
| 256 |
- <h2>Pagination (페이지)</h2> |
|
| 257 |
- <div class="page"> |
|
| 258 |
- <a href="#" class="btn_page btn_first"><i></i></a> |
|
| 259 |
- <a href="#" class="btn_page btn_prev"><i></i></a> |
|
| 260 |
- <a href="#" class="active">1</a> |
|
| 261 |
- <a href="#">2</a> |
|
| 262 |
- <a href="#">3</a> |
|
| 263 |
- <a href="#" class="btn_page btn_next"><i></i></a> |
|
| 264 |
- <a href="#" class="btn_page btn_last"><i></i></a> |
|
| 265 |
- </div> |
|
| 266 |
- </section> |
|
| 267 |
- |
|
| 268 |
- |
|
| 269 |
- </div> |
|
| 270 |
-</body> |
|
| 271 |
- |
|
| 1 |
+<!DOCTYPE html> |
|
| 2 |
+<html lang="ko"> |
|
| 3 |
+ |
|
| 4 |
+<head> |
|
| 5 |
+ <meta charset="UTF-8" /> |
|
| 6 |
+ <title>퍼블리싱 가이드 | 베이스 프로젝트 제작</title> |
|
| 7 |
+ <link rel="stylesheet" href="./guide.css" /> |
|
| 8 |
+ <script src="https://code.jquery.com/jquery-3.7.1.min.js"></script> |
|
| 9 |
+ <script src="./guide.js"></script> |
|
| 10 |
+</head> |
|
| 11 |
+ |
|
| 12 |
+<body> |
|
| 13 |
+ <div class="guide_wrap"> |
|
| 14 |
+ <h1>퍼블리싱 가이드</h1> |
|
| 15 |
+ |
|
| 16 |
+ <div class="guide_info"> |
|
| 17 |
+ <ul> |
|
| 18 |
+ <li><strong>프로젝트명 :</strong> 베이스 프로젝트 제작</li> |
|
| 19 |
+ <li><strong>담당자 :</strong> 정수빈</li> |
|
| 20 |
+ <li><strong>작성일 :</strong> 2025-11-07</li> |
|
| 21 |
+ <li><strong>파일경로 :</strong> /publish/</li> |
|
| 22 |
+ </ul> |
|
| 23 |
+ </div> |
|
| 24 |
+ |
|
| 25 |
+ <div class="filter_wrap"> |
|
| 26 |
+ <button class="filter_btn active" data-filter="all">전체보기</button> |
|
| 27 |
+ <button class="filter_btn" data-filter="done">완료</button> |
|
| 28 |
+ <button class="filter_btn" data-filter="ing">작업중</button> |
|
| 29 |
+ <button class="filter_btn" data-filter="wait">대기</button> |
|
| 30 |
+ </div> |
|
| 31 |
+ |
|
| 32 |
+ <table class="tb_guide"> |
|
| 33 |
+ <thead> |
|
| 34 |
+ <tr> |
|
| 35 |
+ <th scope="col">No</th> |
|
| 36 |
+ <th scope="col">1Depth</th> |
|
| 37 |
+ <th scope="col">2Depth</th> |
|
| 38 |
+ <th scope="col">페이지명</th> |
|
| 39 |
+ <th scope="col">파일명</th> |
|
| 40 |
+ <th scope="col">상태</th> |
|
| 41 |
+ <th scope="col">비고</th> |
|
| 42 |
+ </tr> |
|
| 43 |
+ </thead> |
|
| 44 |
+ <tbody> |
|
| 45 |
+ |
|
| 46 |
+ <tr> |
|
| 47 |
+ <td></td> |
|
| 48 |
+ <td>공통</td> |
|
| 49 |
+ <td>-</td> |
|
| 50 |
+ <td><a href="../layout/_leftmenu.html" target="_blank" title="새창 열림">메뉴</a></td> |
|
| 51 |
+ <td>/layout/_leftmenu.html</td> |
|
| 52 |
+ <td class="ing">작업중</td> |
|
| 53 |
+ <td>-</td> |
|
| 54 |
+ </tr> |
|
| 55 |
+ |
|
| 56 |
+ <tr> |
|
| 57 |
+ <td></td> |
|
| 58 |
+ <td>공통</td> |
|
| 59 |
+ <td>-</td> |
|
| 60 |
+ <td><a href="../layout/_userinfo.html" target="_blank" title="새창 열림">상단 사용자 정보</a></td> |
|
| 61 |
+ <td>/layout/_sidemenu.html</td> |
|
| 62 |
+ <td class="done">완료</td> |
|
| 63 |
+ <td>-</td> |
|
| 64 |
+ </tr> |
|
| 65 |
+ |
|
| 66 |
+ <tr> |
|
| 67 |
+ <td></td> |
|
| 68 |
+ <td>공통</td> |
|
| 69 |
+ <td>-</td> |
|
| 70 |
+ <td><a href="../layout/_footer.html" target="_blank" title="새창 열림">푸터</a></td> |
|
| 71 |
+ <td>/layout/_footer.html</td> |
|
| 72 |
+ <td class="done">완료</td> |
|
| 73 |
+ <td>-</td> |
|
| 74 |
+ </tr> |
|
| 75 |
+ |
|
| 76 |
+ <tr> |
|
| 77 |
+ <td></td> |
|
| 78 |
+ <td>공통</td> |
|
| 79 |
+ <td>-</td> |
|
| 80 |
+ <td><a href="../layout/_sub_title.html" target="_blank" title="새창 열림">콘텐츠 타이틀</a></td> |
|
| 81 |
+ <td>/layout/_sub_title.html</td> |
|
| 82 |
+ <td class="done">완료</td> |
|
| 83 |
+ <td>-</td> |
|
| 84 |
+ </tr> |
|
| 85 |
+ |
|
| 86 |
+ <tr> |
|
| 87 |
+ <td></td> |
|
| 88 |
+ <td>메인</td> |
|
| 89 |
+ <td>-</td> |
|
| 90 |
+ <td><a href="../index.html" target="_blank" title="새창 열림">메인 페이지</a></td> |
|
| 91 |
+ <td>main.html</td> |
|
| 92 |
+ <td class="done">완료</td> |
|
| 93 |
+ <td>-</td> |
|
| 94 |
+ </tr> |
|
| 95 |
+ |
|
| 96 |
+ <tr> |
|
| 97 |
+ <td></td> |
|
| 98 |
+ <td>리스트</td> |
|
| 99 |
+ <td>-</td> |
|
| 100 |
+ <td><a href="../menu1/list.html" target="_blank" title="새창 열림">리스트</a></td> |
|
| 101 |
+ <td>/menu1/list.html</td> |
|
| 102 |
+ <td class="ing">작업중</td> |
|
| 103 |
+ <td>-</td> |
|
| 104 |
+ </tr> |
|
| 105 |
+ |
|
| 106 |
+ <tr> |
|
| 107 |
+ <td></td> |
|
| 108 |
+ <td>리스트 상세</td> |
|
| 109 |
+ <td>-</td> |
|
| 110 |
+ <td><a href="../menu1/list_view.html" target="_blank" title="새창 열림">리스트 상세</a></td> |
|
| 111 |
+ <td>/menu1/list_view.html</td> |
|
| 112 |
+ <td class="wait">대기</td> |
|
| 113 |
+ <td>-</td> |
|
| 114 |
+ </tr> |
|
| 115 |
+ |
|
| 116 |
+ <tr> |
|
| 117 |
+ <td></td> |
|
| 118 |
+ <td>리스트 등록</td> |
|
| 119 |
+ <td>-</td> |
|
| 120 |
+ <td><a href="../menu1/list_reg.html" target="_blank" title="새창 열림">리스트 등록</a></td> |
|
| 121 |
+ <td>/menu1/list.html</td> |
|
| 122 |
+ <td class="done">완료</td> |
|
| 123 |
+ <td>-</td> |
|
| 124 |
+ </tr> |
|
| 125 |
+ |
|
| 126 |
+ |
|
| 127 |
+ </tbody> |
|
| 128 |
+ </table> |
|
| 129 |
+ |
|
| 130 |
+ <!-- BUTTON --> |
|
| 131 |
+ <section class="guide_section"> |
|
| 132 |
+ <h2>Button (버튼)</h2> |
|
| 133 |
+ |
|
| 134 |
+ <h3>Filled Button</h3> |
|
| 135 |
+ <div class="btn_wrap"> |
|
| 136 |
+ <button class="btn fill primary small">Primary</button> |
|
| 137 |
+ <button class="btn fill secondary small">Secondary</button> |
|
| 138 |
+ <button class="btn fill red small">Red</button> |
|
| 139 |
+ <button class="btn fill green small">Green</button> |
|
| 140 |
+ <button class="btn fill gray small">Gray</button> |
|
| 141 |
+ </div> |
|
| 142 |
+ |
|
| 143 |
+ <h3>Line Button</h3> |
|
| 144 |
+ <div class="btn_wrap"> |
|
| 145 |
+ <button class="btn line primary small">Primary</button> |
|
| 146 |
+ <button class="btn line secondary small">Secondary</button> |
|
| 147 |
+ <button class="btn line red small">Red</button> |
|
| 148 |
+ <button class="btn line gray small">Gray</button> |
|
| 149 |
+ </div> |
|
| 150 |
+ |
|
| 151 |
+ <h3>Size Variation</h3> |
|
| 152 |
+ <div class="btn_wrap"> |
|
| 153 |
+ <button class="btn fill gray xssmall">xssmall</button> |
|
| 154 |
+ <button class="btn fill gray ssmall">ssmall</button> |
|
| 155 |
+ <button class="btn fill gray small">small</button> |
|
| 156 |
+ <button class="btn fill gray medium">medium</button> |
|
| 157 |
+ <button class="btn fill gray large">large</button> |
|
| 158 |
+ <button class="btn fill gray xlarge">xlarge</button> |
|
| 159 |
+ </div> |
|
| 160 |
+ </section> |
|
| 161 |
+ |
|
| 162 |
+ <!-- INPUT --> |
|
| 163 |
+ <section class="guide_section"> |
|
| 164 |
+ <h2>Input / Textarea / Select</h2> |
|
| 165 |
+ |
|
| 166 |
+ <h3>Input</h3> |
|
| 167 |
+ <div class="form_wrap"> |
|
| 168 |
+ <input type="text" class="input w50per" placeholder="제목을 입력해주세요."> |
|
| 169 |
+ <span class="input_desc">* 필수입력 항목입니다.</span> |
|
| 170 |
+ </div> |
|
| 171 |
+ |
|
| 172 |
+ <h3>Textarea</h3> |
|
| 173 |
+ <div class="form_wrap"> |
|
| 174 |
+ <textarea name="" id="" class="textarea w100per" rows="5"></textarea> |
|
| 175 |
+ <div class="input_desc_wrap column"> |
|
| 176 |
+ <span class="input_desc red">* 필수입력 항목입니다.</span> |
|
| 177 |
+ <span class="input_desc blue">* 필수입력 항목입니다.</span> |
|
| 178 |
+ </div> |
|
| 179 |
+ </div> |
|
| 180 |
+ |
|
| 181 |
+ <h3>Email</h3> |
|
| 182 |
+ <div class="form_wrap email_wrap"> |
|
| 183 |
+ <input type="text" class="input email emain_id"><span class="text_split">@</span><input type="text" class="input email email_domain"> |
|
| 184 |
+ <select name="" id="" class="select"> |
|
| 185 |
+ <option value="">gmail.com</option> |
|
| 186 |
+ <option value="">naver.com</option> |
|
| 187 |
+ <option value="">kakao.com</option> |
|
| 188 |
+ <option value="">직접입력</option> |
|
| 189 |
+ </select> |
|
| 190 |
+ </div> |
|
| 191 |
+ |
|
| 192 |
+ <h3>Address</h3> |
|
| 193 |
+ <div class="form_wrap address_wrap"> |
|
| 194 |
+ <div class="address_row"> |
|
| 195 |
+ <input type="text" class="input input_post readonly" readonly><button type="button" class="btn medium line primary">우편번호 찾기</button> |
|
| 196 |
+ </div> |
|
| 197 |
+ <div class="address_row"> |
|
| 198 |
+ <input type="text" class="input adr_default readonly" readonly> |
|
| 199 |
+ <input type="text" class="input adr_detail"> |
|
| 200 |
+ </div> |
|
| 201 |
+ <span class="input_desc red">* 필수입력 항목입니다.</span> |
|
| 202 |
+ </div> |
|
| 203 |
+ </section> |
|
| 204 |
+ |
|
| 205 |
+ <!-- RADIO / CHECKBOX --> |
|
| 206 |
+ <section class="guide_section"> |
|
| 207 |
+ <h2>Checkbox / Radio</h2> |
|
| 208 |
+ |
|
| 209 |
+ <h3>Checkbox</h3> |
|
| 210 |
+ <div class="form_wrap radio_wrap"> |
|
| 211 |
+ <label for="man" class="radio_item"> |
|
| 212 |
+ <input type="radio" name="jender" id="man"> |
|
| 213 |
+ <span>남성</span> |
|
| 214 |
+ </label> |
|
| 215 |
+ <label for="woman" class="radio_item"> |
|
| 216 |
+ <input type="radio" name="jender" id="woman"> |
|
| 217 |
+ <span>여성</span> |
|
| 218 |
+ </label> |
|
| 219 |
+ <span class="input_desc red">* 필수입력 항목입니다.</span> |
|
| 220 |
+ </div> |
|
| 221 |
+ |
|
| 222 |
+ <h3>Radio</h3> |
|
| 223 |
+ <div class="form_wrap checkbox_wrap"> |
|
| 224 |
+ <label for="check_all" class="checkbox_item"> |
|
| 225 |
+ <input type="checkbox" name="check" id="check_all"> |
|
| 226 |
+ <span>전체</span> |
|
| 227 |
+ </label> |
|
| 228 |
+ <label for="check_1" class="checkbox_item"> |
|
| 229 |
+ <input type="checkbox" name="check" id="check_1"> |
|
| 230 |
+ <span>항목1</span> |
|
| 231 |
+ </label> |
|
| 232 |
+ <label for="check_2" class="checkbox_item"> |
|
| 233 |
+ <input type="checkbox" name="check" id="check_2"> |
|
| 234 |
+ <span>항목2</span> |
|
| 235 |
+ </label> |
|
| 236 |
+ <label for="check_3" class="checkbox_item"> |
|
| 237 |
+ <input type="checkbox" name="check" id="check_3"> |
|
| 238 |
+ <span>항목3</span> |
|
| 239 |
+ </label> |
|
| 240 |
+ </div> |
|
| 241 |
+ </section> |
|
| 242 |
+ |
|
| 243 |
+ <!-- STATUS --> |
|
| 244 |
+ <section class="guide_section"> |
|
| 245 |
+ <h2>Status</h2> |
|
| 246 |
+ <div class="status_wrap"> |
|
| 247 |
+ <span class="status line blue">진행중</span> |
|
| 248 |
+ <span class="status line gray">완료</span> |
|
| 249 |
+ <span class="status text blue">접수</span> |
|
| 250 |
+ <span class="status text gray">마감</span> |
|
| 251 |
+ </div> |
|
| 252 |
+ </section> |
|
| 253 |
+ |
|
| 254 |
+ <!-- PAGINATION --> |
|
| 255 |
+ <section class="guide_section"> |
|
| 256 |
+ <h2>Pagination (페이지)</h2> |
|
| 257 |
+ <div class="page"> |
|
| 258 |
+ <a href="#" class="btn_page btn_first"><i></i></a> |
|
| 259 |
+ <a href="#" class="btn_page btn_prev"><i></i></a> |
|
| 260 |
+ <a href="#" class="active">1</a> |
|
| 261 |
+ <a href="#">2</a> |
|
| 262 |
+ <a href="#">3</a> |
|
| 263 |
+ <a href="#" class="btn_page btn_next"><i></i></a> |
|
| 264 |
+ <a href="#" class="btn_page btn_last"><i></i></a> |
|
| 265 |
+ </div> |
|
| 266 |
+ </section> |
|
| 267 |
+ |
|
| 268 |
+ |
|
| 269 |
+ </div> |
|
| 270 |
+</body> |
|
| 271 |
+ |
|
| 272 | 272 |
</html>(No newline at end of file) |
--- src/main/webapp/publish/adm/guide/guide.js
+++ src/main/webapp/publish/adm/guide/guide.js
... | ... | @@ -1,27 +1,27 @@ |
| 1 |
-$(function(){
|
|
| 2 |
- // 자동 번호 |
|
| 3 |
- $(".tb_guide tbody tr").each(function(idx){
|
|
| 4 |
- $(this).find("td:first").text(idx + 1);
|
|
| 5 |
- }); |
|
| 6 |
- |
|
| 7 |
- // 완료 행 강조 |
|
| 8 |
- $(".done").closest("tr").addClass("done-row");
|
|
| 9 |
- |
|
| 10 |
- // 필터 버튼 클릭 |
|
| 11 |
- $(".filter_btn").on("click", function(){
|
|
| 12 |
- const filter = $(this).data("filter");
|
|
| 13 |
- |
|
| 14 |
- $(".filter_btn").removeClass("active");
|
|
| 15 |
- $(this).addClass("active");
|
|
| 16 |
- |
|
| 17 |
- if(filter === "all"){
|
|
| 18 |
- $(".tb_guide tbody tr").show();
|
|
| 19 |
- } else {
|
|
| 20 |
- $(".tb_guide tbody tr").hide();
|
|
| 21 |
- $(".tb_guide tbody tr").has("." + filter).show();
|
|
| 22 |
- } |
|
| 23 |
- }); |
|
| 24 |
- |
|
| 25 |
- // 완료된 페이지 강조 효과 |
|
| 26 |
- $(".done").closest("tr").css("background","#f8fff9");
|
|
| 27 |
-}); |
|
| 1 |
+$(function(){
|
|
| 2 |
+ // 자동 번호 |
|
| 3 |
+ $(".tb_guide tbody tr").each(function(idx){
|
|
| 4 |
+ $(this).find("td:first").text(idx + 1);
|
|
| 5 |
+ }); |
|
| 6 |
+ |
|
| 7 |
+ // 완료 행 강조 |
|
| 8 |
+ $(".done").closest("tr").addClass("done-row");
|
|
| 9 |
+ |
|
| 10 |
+ // 필터 버튼 클릭 |
|
| 11 |
+ $(".filter_btn").on("click", function(){
|
|
| 12 |
+ const filter = $(this).data("filter");
|
|
| 13 |
+ |
|
| 14 |
+ $(".filter_btn").removeClass("active");
|
|
| 15 |
+ $(this).addClass("active");
|
|
| 16 |
+ |
|
| 17 |
+ if(filter === "all"){
|
|
| 18 |
+ $(".tb_guide tbody tr").show();
|
|
| 19 |
+ } else {
|
|
| 20 |
+ $(".tb_guide tbody tr").hide();
|
|
| 21 |
+ $(".tb_guide tbody tr").has("." + filter).show();
|
|
| 22 |
+ } |
|
| 23 |
+ }); |
|
| 24 |
+ |
|
| 25 |
+ // 완료된 페이지 강조 효과 |
|
| 26 |
+ $(".done").closest("tr").css("background","#f8fff9");
|
|
| 27 |
+}); |
--- src/main/webapp/publish/adm/images/login/login.jpg
| Binary file is not shown |
--- src/main/webapp/publish/adm/images/login/login_bg_left.png
| Binary file is not shown |
--- src/main/webapp/publish/adm/images/login/login_bg_right.png
| Binary file is not shown |
--- src/main/webapp/publish/adm/index.html
+++ src/main/webapp/publish/adm/index.html
... | ... | @@ -1,253 +1,253 @@ |
| 1 |
-<!DOCTYPE html> |
|
| 2 |
-<html lang="ko"> |
|
| 3 |
- |
|
| 4 |
-<head> |
|
| 5 |
- <meta charset="UTF-8"> |
|
| 6 |
- <meta http-equiv="X-UA-Compatible" content="IE=edge"> |
|
| 7 |
- <meta name="viewport" content="width=device-width, initial-scale=1.0"> |
|
| 8 |
- <title>대시보드</title> |
|
| 9 |
- |
|
| 10 |
- <!-- css --> |
|
| 11 |
- <link rel="stylesheet" href="../../css/reset.css"> |
|
| 12 |
- <link rel="stylesheet" href="../../css/font.css"> |
|
| 13 |
- <link rel="stylesheet" href="./css/common.css"> |
|
| 14 |
- <link rel="stylesheet" href="./layout/layout.css"> |
|
| 15 |
- <link rel="stylesheet" href="./css/dashboard.css"> |
|
| 16 |
- |
|
| 17 |
- <!-- script --> |
|
| 18 |
- <script src="../../js/jquery-3.5.0.js"></script> |
|
| 19 |
- <script src="./layout/layout.js"></script> |
|
| 20 |
- <script src="./script/common.js"></script> |
|
| 21 |
- |
|
| 22 |
- |
|
| 23 |
- |
|
| 24 |
-</head> |
|
| 25 |
- |
|
| 26 |
-<body> |
|
| 27 |
- <div class="wrap"> |
|
| 28 |
- |
|
| 29 |
- <div data-include-path="./layout/_leftmenu.html"></div> |
|
| 30 |
- |
|
| 31 |
- <!-- top_utill+cont --> |
|
| 32 |
- <div class="container dashboard" id="container"> |
|
| 33 |
- |
|
| 34 |
- <div data-include-path="./layout/_userinfo.html"></div> |
|
| 35 |
- |
|
| 36 |
- <!-- cont --> |
|
| 37 |
- <div class="box_wrap"> |
|
| 38 |
- <div class="box"> |
|
| 39 |
- <div class="box_tit"> |
|
| 40 |
- <p>오늘의 교육 진행 현황</p> |
|
| 41 |
- </div> |
|
| 42 |
- <div class="box_cont today_box"> |
|
| 43 |
- <div class="today_status status01"> |
|
| 44 |
- <p>교육접수</p> |
|
| 45 |
- <i></i> |
|
| 46 |
- <span>18</span> |
|
| 47 |
- </div> |
|
| 48 |
- <i class="status_pcs"></i> |
|
| 49 |
- <div class="today_status status02"> |
|
| 50 |
- <p>교육진행</p> |
|
| 51 |
- <i></i> |
|
| 52 |
- <span>18</span> |
|
| 53 |
- </div> |
|
| 54 |
- <i class="status_pcs"></i> |
|
| 55 |
- <div class="today_status status03"> |
|
| 56 |
- <p>교육완료</p> |
|
| 57 |
- <i></i> |
|
| 58 |
- <span>18</span> |
|
| 59 |
- </div> |
|
| 60 |
- </div> |
|
| 61 |
- </div> |
|
| 62 |
- <div class="box"> |
|
| 63 |
- <div class="box_tit"> |
|
| 64 |
- <p>교육관리</p> |
|
| 65 |
- </div> |
|
| 66 |
- <div class="box_cont system_box"> |
|
| 67 |
- <a href="#" class="btn_system system01"> |
|
| 68 |
- <p>교육 일정관리</p> |
|
| 69 |
- <span>바로가기 ></span> |
|
| 70 |
- </a> |
|
| 71 |
- <a href="#" class="btn_system system02"> |
|
| 72 |
- <p>고육 종료관리</p> |
|
| 73 |
- <span>바로가기 ></span> |
|
| 74 |
- </a> |
|
| 75 |
- <a href="#" class="btn_system system03"> |
|
| 76 |
- <p>교육 신청관리</p> |
|
| 77 |
- <span>바로가기 ></span> |
|
| 78 |
- </a> |
|
| 79 |
- <a href="#" class="btn_system system04"> |
|
| 80 |
- <p>교육 강사관리</p> |
|
| 81 |
- <span>바로가기 ></span> |
|
| 82 |
- </a> |
|
| 83 |
- </div> |
|
| 84 |
- </div> |
|
| 85 |
- <div class="box"> |
|
| 86 |
- <div class="box_tit"> |
|
| 87 |
- <p>교육건수</p> |
|
| 88 |
- </div> |
|
| 89 |
- <div class="box_cont ds_box"> |
|
| 90 |
- <ul class="chartType01"> |
|
| 91 |
- <li> |
|
| 92 |
- <p>접수</p> |
|
| 93 |
- <div class="chart_wrap"> |
|
| 94 |
- <div></div> |
|
| 95 |
- </div> |
|
| 96 |
- <p class="case_number"><span>30</span>건</p> |
|
| 97 |
- </li> |
|
| 98 |
- <li> |
|
| 99 |
- <p>승인</p> |
|
| 100 |
- <div class="chart_wrap"> |
|
| 101 |
- <div></div> |
|
| 102 |
- </div> |
|
| 103 |
- <p class="case_number"><span>30</span>건</p> |
|
| 104 |
- </li> |
|
| 105 |
- <li> |
|
| 106 |
- <p>진행</p> |
|
| 107 |
- <div class="chart_wrap"> |
|
| 108 |
- <div></div> |
|
| 109 |
- </div> |
|
| 110 |
- <p class="case_number"><span>30</span>건</p> |
|
| 111 |
- </li> |
|
| 112 |
- <li> |
|
| 113 |
- <p>대기</p> |
|
| 114 |
- <div class="chart_wrap"> |
|
| 115 |
- <div></div> |
|
| 116 |
- </div> |
|
| 117 |
- <p class="case_number"><span>30</span>건</p> |
|
| 118 |
- </li> |
|
| 119 |
- <li> |
|
| 120 |
- <p>완료</p> |
|
| 121 |
- <div class="chart_wrap"> |
|
| 122 |
- <div></div> |
|
| 123 |
- </div> |
|
| 124 |
- <p class="case_number"><span>30</span>건</p> |
|
| 125 |
- </li> |
|
| 126 |
- </ul> |
|
| 127 |
- |
|
| 128 |
- <ul class="chart_num"> |
|
| 129 |
- <li>0</li> |
|
| 130 |
- <li>10</li> |
|
| 131 |
- <li>20</li> |
|
| 132 |
- <li>30</li> |
|
| 133 |
- <li>40</li> |
|
| 134 |
- </ul> |
|
| 135 |
- |
|
| 136 |
- </div> |
|
| 137 |
- </div> |
|
| 138 |
- <div class="box"> |
|
| 139 |
- <div class="box_tit"> |
|
| 140 |
- <p>교육신청현황</p> |
|
| 141 |
- <button type="button" class="btn_plus">더보기 <i class="icon plus"></i></button> |
|
| 142 |
- </div> |
|
| 143 |
- <div class="box_cont"> |
|
| 144 |
- <ul class="dashboard_list"> |
|
| 145 |
- <li> |
|
| 146 |
- <a href="#" class="list_tit">· 상표권 교육조건부 기소유예</a> |
|
| 147 |
- <p class="list_writer">admin</p> |
|
| 148 |
- <p class="list_date">2025-08-08</p> |
|
| 149 |
- </li> |
|
| 150 |
- <li> |
|
| 151 |
- <a href="#" class="list_tit">· 상표권 교육조건부 기소유예</a> |
|
| 152 |
- <p class="list_writer">admin</p> |
|
| 153 |
- <p class="list_date">2025-08-08</p> |
|
| 154 |
- </li> |
|
| 155 |
- <li> |
|
| 156 |
- <a href="#" class="list_tit">· 상표권 교육조건부 기소유예</a> |
|
| 157 |
- <p class="list_writer">admin</p> |
|
| 158 |
- <p class="list_date">2025-08-08</p> |
|
| 159 |
- </li> |
|
| 160 |
- <li> |
|
| 161 |
- <a href="#" class="list_tit">· 상표권 교육조건부 기소유예</a> |
|
| 162 |
- <p class="list_writer">admin</p> |
|
| 163 |
- <p class="list_date">2025-08-08</p> |
|
| 164 |
- </li> |
|
| 165 |
- <li> |
|
| 166 |
- <a href="#" class="list_tit">· 상표권 교육조건부 기소유예</a> |
|
| 167 |
- <p class="list_writer">admin</p> |
|
| 168 |
- <p class="list_date">2025-08-08</p> |
|
| 169 |
- </li> |
|
| 170 |
- </div> |
|
| 171 |
- </div> |
|
| 172 |
- <div class="box"> |
|
| 173 |
- <div class="box_tit"> |
|
| 174 |
- <p>교육진행현황</p> |
|
| 175 |
- <button type="button" class="btn_plus">더보기 <i class="icon plus"></i></button> |
|
| 176 |
- </div> |
|
| 177 |
- <div class="box_cont"> |
|
| 178 |
- <ul class="dashboard_list status"> |
|
| 179 |
- <li> |
|
| 180 |
- <a href="#" class="list_tit">· <img src="../adm/images/component/icon_new.png" class="icon_new"> 상표권 교육조건부 기소유예</a> |
|
| 181 |
- <p class="list_writer">admin</p> |
|
| 182 |
- <p class="status line gray">배정완료</p> |
|
| 183 |
- </li> |
|
| 184 |
- <li> |
|
| 185 |
- <a href="#" class="list_tit">· 상표권 교육조건부 기소유예</a> |
|
| 186 |
- <p class="list_writer">admin</p> |
|
| 187 |
- <p class="status line blue">승인요청</p> |
|
| 188 |
- </li> |
|
| 189 |
- <li> |
|
| 190 |
- <a href="#" class="list_tit">· 상표권 교육조건부 기소유예</a> |
|
| 191 |
- <p class="list_writer">admin</p> |
|
| 192 |
- <p class="status line orange">대기중</p> |
|
| 193 |
- </li> |
|
| 194 |
- <li> |
|
| 195 |
- <a href="#" class="list_tit">· 상표권 교육조건부 기소유예</a> |
|
| 196 |
- <p class="list_writer">admin</p> |
|
| 197 |
- <p class="status line gray">배정완료</p> |
|
| 198 |
- </li> |
|
| 199 |
- <li> |
|
| 200 |
- <a href="#" class="list_tit">· 상표권 교육조건부 기소유예</a> |
|
| 201 |
- <p class="list_writer">admin</p> |
|
| 202 |
- <p class="status line gray">배정완료</p> |
|
| 203 |
- </li> |
|
| 204 |
- </div> |
|
| 205 |
- </div> |
|
| 206 |
- <div class="box"> |
|
| 207 |
- <div class="box_tit"> |
|
| 208 |
- <p>교육종료현황</p> |
|
| 209 |
- <button type="button" class="btn_plus">더보기 <i class="icon plus"></i></button> |
|
| 210 |
- </div> |
|
| 211 |
- <div class="box_cont"> |
|
| 212 |
- <ul class="dashboard_list status"> |
|
| 213 |
- <li> |
|
| 214 |
- <a href="#" class="list_tit">· 인사교육 프로그램 교재의 저작물</a> |
|
| 215 |
- <p class="list_writer">admin</p> |
|
| 216 |
- <p class="status fill gray">보고완료</p> |
|
| 217 |
- </li> |
|
| 218 |
- <li> |
|
| 219 |
- <a href="#" class="list_tit">· 음악저작물 제작 및 이용에 따른</a> |
|
| 220 |
- <p class="list_writer">admin</p> |
|
| 221 |
- <p class="status fill green">설문진행</p> |
|
| 222 |
- </li> |
|
| 223 |
- <li> |
|
| 224 |
- <a href="#" class="list_tit">· 부주의에 의한 성명표시권 침해</a> |
|
| 225 |
- <p class="list_writer">admin</p> |
|
| 226 |
- <p class="status fill purple">비용지급</p> |
|
| 227 |
- </li> |
|
| 228 |
- <li> |
|
| 229 |
- <a href="#" class="list_tit">· 학위논문에서의 정당한 인용의 문제</a> |
|
| 230 |
- <p class="list_writer">admin</p> |
|
| 231 |
- <p class="status fill gray">보고완료</p> |
|
| 232 |
- </li> |
|
| 233 |
- <li> |
|
| 234 |
- <a href="#" class="list_tit">· 저작물 이용허락 요청 후 무단이용</a> |
|
| 235 |
- <p class="list_writer">admin</p> |
|
| 236 |
- <p class="status fill gray">보고완료</p> |
|
| 237 |
- </li> |
|
| 238 |
- </div> |
|
| 239 |
- </div> |
|
| 240 |
- </div> |
|
| 241 |
- <!-- //cont --> |
|
| 242 |
- |
|
| 243 |
- |
|
| 244 |
- <div data-include-path="./layout/_footer.html"></div> |
|
| 245 |
- |
|
| 246 |
- </div> |
|
| 247 |
- <!-- //top_utill+cont --> |
|
| 248 |
- |
|
| 249 |
- </div> |
|
| 250 |
- |
|
| 251 |
-</body> |
|
| 252 |
- |
|
| 1 |
+<!DOCTYPE html> |
|
| 2 |
+<html lang="ko"> |
|
| 3 |
+ |
|
| 4 |
+<head> |
|
| 5 |
+ <meta charset="UTF-8"> |
|
| 6 |
+ <meta http-equiv="X-UA-Compatible" content="IE=edge"> |
|
| 7 |
+ <meta name="viewport" content="width=device-width, initial-scale=1.0"> |
|
| 8 |
+ <title>대시보드</title> |
|
| 9 |
+ |
|
| 10 |
+ <!-- css --> |
|
| 11 |
+ <link rel="stylesheet" href="../../css/reset.css"> |
|
| 12 |
+ <link rel="stylesheet" href="../../css/font.css"> |
|
| 13 |
+ <link rel="stylesheet" href="./css/common.css"> |
|
| 14 |
+ <link rel="stylesheet" href="./layout/layout.css"> |
|
| 15 |
+ <link rel="stylesheet" href="./css/dashboard.css"> |
|
| 16 |
+ |
|
| 17 |
+ <!-- script --> |
|
| 18 |
+ <script src="../../js/jquery-3.5.0.js"></script> |
|
| 19 |
+ <script src="./layout/layout.js"></script> |
|
| 20 |
+ <script src="./script/common.js"></script> |
|
| 21 |
+ |
|
| 22 |
+ |
|
| 23 |
+ |
|
| 24 |
+</head> |
|
| 25 |
+ |
|
| 26 |
+<body> |
|
| 27 |
+ <div class="wrap"> |
|
| 28 |
+ |
|
| 29 |
+ <div data-include-path="./layout/_leftmenu.html"></div> |
|
| 30 |
+ |
|
| 31 |
+ <!-- top_utill+cont --> |
|
| 32 |
+ <div class="container dashboard" id="container"> |
|
| 33 |
+ |
|
| 34 |
+ <div data-include-path="./layout/_userinfo.html"></div> |
|
| 35 |
+ |
|
| 36 |
+ <!-- cont --> |
|
| 37 |
+ <div class="box_wrap"> |
|
| 38 |
+ <div class="box"> |
|
| 39 |
+ <div class="box_tit"> |
|
| 40 |
+ <p>오늘의 교육 진행 현황</p> |
|
| 41 |
+ </div> |
|
| 42 |
+ <div class="box_cont today_box"> |
|
| 43 |
+ <div class="today_status status01"> |
|
| 44 |
+ <p>교육접수</p> |
|
| 45 |
+ <i></i> |
|
| 46 |
+ <span>18</span> |
|
| 47 |
+ </div> |
|
| 48 |
+ <i class="status_pcs"></i> |
|
| 49 |
+ <div class="today_status status02"> |
|
| 50 |
+ <p>교육진행</p> |
|
| 51 |
+ <i></i> |
|
| 52 |
+ <span>18</span> |
|
| 53 |
+ </div> |
|
| 54 |
+ <i class="status_pcs"></i> |
|
| 55 |
+ <div class="today_status status03"> |
|
| 56 |
+ <p>교육완료</p> |
|
| 57 |
+ <i></i> |
|
| 58 |
+ <span>18</span> |
|
| 59 |
+ </div> |
|
| 60 |
+ </div> |
|
| 61 |
+ </div> |
|
| 62 |
+ <div class="box"> |
|
| 63 |
+ <div class="box_tit"> |
|
| 64 |
+ <p>교육관리</p> |
|
| 65 |
+ </div> |
|
| 66 |
+ <div class="box_cont system_box"> |
|
| 67 |
+ <a href="#" class="btn_system system01"> |
|
| 68 |
+ <p>교육 일정관리</p> |
|
| 69 |
+ <span>바로가기 ></span> |
|
| 70 |
+ </a> |
|
| 71 |
+ <a href="#" class="btn_system system02"> |
|
| 72 |
+ <p>고육 종료관리</p> |
|
| 73 |
+ <span>바로가기 ></span> |
|
| 74 |
+ </a> |
|
| 75 |
+ <a href="#" class="btn_system system03"> |
|
| 76 |
+ <p>교육 신청관리</p> |
|
| 77 |
+ <span>바로가기 ></span> |
|
| 78 |
+ </a> |
|
| 79 |
+ <a href="#" class="btn_system system04"> |
|
| 80 |
+ <p>교육 강사관리</p> |
|
| 81 |
+ <span>바로가기 ></span> |
|
| 82 |
+ </a> |
|
| 83 |
+ </div> |
|
| 84 |
+ </div> |
|
| 85 |
+ <div class="box"> |
|
| 86 |
+ <div class="box_tit"> |
|
| 87 |
+ <p>교육건수</p> |
|
| 88 |
+ </div> |
|
| 89 |
+ <div class="box_cont ds_box"> |
|
| 90 |
+ <ul class="chartType01"> |
|
| 91 |
+ <li> |
|
| 92 |
+ <p>접수</p> |
|
| 93 |
+ <div class="chart_wrap"> |
|
| 94 |
+ <div></div> |
|
| 95 |
+ </div> |
|
| 96 |
+ <p class="case_number"><span>30</span>건</p> |
|
| 97 |
+ </li> |
|
| 98 |
+ <li> |
|
| 99 |
+ <p>승인</p> |
|
| 100 |
+ <div class="chart_wrap"> |
|
| 101 |
+ <div></div> |
|
| 102 |
+ </div> |
|
| 103 |
+ <p class="case_number"><span>30</span>건</p> |
|
| 104 |
+ </li> |
|
| 105 |
+ <li> |
|
| 106 |
+ <p>진행</p> |
|
| 107 |
+ <div class="chart_wrap"> |
|
| 108 |
+ <div></div> |
|
| 109 |
+ </div> |
|
| 110 |
+ <p class="case_number"><span>30</span>건</p> |
|
| 111 |
+ </li> |
|
| 112 |
+ <li> |
|
| 113 |
+ <p>대기</p> |
|
| 114 |
+ <div class="chart_wrap"> |
|
| 115 |
+ <div></div> |
|
| 116 |
+ </div> |
|
| 117 |
+ <p class="case_number"><span>30</span>건</p> |
|
| 118 |
+ </li> |
|
| 119 |
+ <li> |
|
| 120 |
+ <p>완료</p> |
|
| 121 |
+ <div class="chart_wrap"> |
|
| 122 |
+ <div></div> |
|
| 123 |
+ </div> |
|
| 124 |
+ <p class="case_number"><span>30</span>건</p> |
|
| 125 |
+ </li> |
|
| 126 |
+ </ul> |
|
| 127 |
+ |
|
| 128 |
+ <ul class="chart_num"> |
|
| 129 |
+ <li>0</li> |
|
| 130 |
+ <li>10</li> |
|
| 131 |
+ <li>20</li> |
|
| 132 |
+ <li>30</li> |
|
| 133 |
+ <li>40</li> |
|
| 134 |
+ </ul> |
|
| 135 |
+ |
|
| 136 |
+ </div> |
|
| 137 |
+ </div> |
|
| 138 |
+ <div class="box"> |
|
| 139 |
+ <div class="box_tit"> |
|
| 140 |
+ <p>교육신청현황</p> |
|
| 141 |
+ <button type="button" class="btn_plus">더보기 <i class="icon plus"></i></button> |
|
| 142 |
+ </div> |
|
| 143 |
+ <div class="box_cont"> |
|
| 144 |
+ <ul class="dashboard_list"> |
|
| 145 |
+ <li> |
|
| 146 |
+ <a href="#" class="list_tit">· 상표권 교육조건부 기소유예</a> |
|
| 147 |
+ <p class="list_writer">admin</p> |
|
| 148 |
+ <p class="list_date">2025-08-08</p> |
|
| 149 |
+ </li> |
|
| 150 |
+ <li> |
|
| 151 |
+ <a href="#" class="list_tit">· 상표권 교육조건부 기소유예</a> |
|
| 152 |
+ <p class="list_writer">admin</p> |
|
| 153 |
+ <p class="list_date">2025-08-08</p> |
|
| 154 |
+ </li> |
|
| 155 |
+ <li> |
|
| 156 |
+ <a href="#" class="list_tit">· 상표권 교육조건부 기소유예</a> |
|
| 157 |
+ <p class="list_writer">admin</p> |
|
| 158 |
+ <p class="list_date">2025-08-08</p> |
|
| 159 |
+ </li> |
|
| 160 |
+ <li> |
|
| 161 |
+ <a href="#" class="list_tit">· 상표권 교육조건부 기소유예</a> |
|
| 162 |
+ <p class="list_writer">admin</p> |
|
| 163 |
+ <p class="list_date">2025-08-08</p> |
|
| 164 |
+ </li> |
|
| 165 |
+ <li> |
|
| 166 |
+ <a href="#" class="list_tit">· 상표권 교육조건부 기소유예</a> |
|
| 167 |
+ <p class="list_writer">admin</p> |
|
| 168 |
+ <p class="list_date">2025-08-08</p> |
|
| 169 |
+ </li> |
|
| 170 |
+ </div> |
|
| 171 |
+ </div> |
|
| 172 |
+ <div class="box"> |
|
| 173 |
+ <div class="box_tit"> |
|
| 174 |
+ <p>교육진행현황</p> |
|
| 175 |
+ <button type="button" class="btn_plus">더보기 <i class="icon plus"></i></button> |
|
| 176 |
+ </div> |
|
| 177 |
+ <div class="box_cont"> |
|
| 178 |
+ <ul class="dashboard_list status"> |
|
| 179 |
+ <li> |
|
| 180 |
+ <a href="#" class="list_tit">· <img src="../adm/images/component/icon_new.png" class="icon_new"> 상표권 교육조건부 기소유예</a> |
|
| 181 |
+ <p class="list_writer">admin</p> |
|
| 182 |
+ <p class="status line gray">배정완료</p> |
|
| 183 |
+ </li> |
|
| 184 |
+ <li> |
|
| 185 |
+ <a href="#" class="list_tit">· 상표권 교육조건부 기소유예</a> |
|
| 186 |
+ <p class="list_writer">admin</p> |
|
| 187 |
+ <p class="status line blue">승인요청</p> |
|
| 188 |
+ </li> |
|
| 189 |
+ <li> |
|
| 190 |
+ <a href="#" class="list_tit">· 상표권 교육조건부 기소유예</a> |
|
| 191 |
+ <p class="list_writer">admin</p> |
|
| 192 |
+ <p class="status line orange">대기중</p> |
|
| 193 |
+ </li> |
|
| 194 |
+ <li> |
|
| 195 |
+ <a href="#" class="list_tit">· 상표권 교육조건부 기소유예</a> |
|
| 196 |
+ <p class="list_writer">admin</p> |
|
| 197 |
+ <p class="status line gray">배정완료</p> |
|
| 198 |
+ </li> |
|
| 199 |
+ <li> |
|
| 200 |
+ <a href="#" class="list_tit">· 상표권 교육조건부 기소유예</a> |
|
| 201 |
+ <p class="list_writer">admin</p> |
|
| 202 |
+ <p class="status line gray">배정완료</p> |
|
| 203 |
+ </li> |
|
| 204 |
+ </div> |
|
| 205 |
+ </div> |
|
| 206 |
+ <div class="box"> |
|
| 207 |
+ <div class="box_tit"> |
|
| 208 |
+ <p>교육종료현황</p> |
|
| 209 |
+ <button type="button" class="btn_plus">더보기 <i class="icon plus"></i></button> |
|
| 210 |
+ </div> |
|
| 211 |
+ <div class="box_cont"> |
|
| 212 |
+ <ul class="dashboard_list status"> |
|
| 213 |
+ <li> |
|
| 214 |
+ <a href="#" class="list_tit">· 인사교육 프로그램 교재의 저작물</a> |
|
| 215 |
+ <p class="list_writer">admin</p> |
|
| 216 |
+ <p class="status fill gray">보고완료</p> |
|
| 217 |
+ </li> |
|
| 218 |
+ <li> |
|
| 219 |
+ <a href="#" class="list_tit">· 음악저작물 제작 및 이용에 따른</a> |
|
| 220 |
+ <p class="list_writer">admin</p> |
|
| 221 |
+ <p class="status fill green">설문진행</p> |
|
| 222 |
+ </li> |
|
| 223 |
+ <li> |
|
| 224 |
+ <a href="#" class="list_tit">· 부주의에 의한 성명표시권 침해</a> |
|
| 225 |
+ <p class="list_writer">admin</p> |
|
| 226 |
+ <p class="status fill purple">비용지급</p> |
|
| 227 |
+ </li> |
|
| 228 |
+ <li> |
|
| 229 |
+ <a href="#" class="list_tit">· 학위논문에서의 정당한 인용의 문제</a> |
|
| 230 |
+ <p class="list_writer">admin</p> |
|
| 231 |
+ <p class="status fill gray">보고완료</p> |
|
| 232 |
+ </li> |
|
| 233 |
+ <li> |
|
| 234 |
+ <a href="#" class="list_tit">· 저작물 이용허락 요청 후 무단이용</a> |
|
| 235 |
+ <p class="list_writer">admin</p> |
|
| 236 |
+ <p class="status fill gray">보고완료</p> |
|
| 237 |
+ </li> |
|
| 238 |
+ </div> |
|
| 239 |
+ </div> |
|
| 240 |
+ </div> |
|
| 241 |
+ <!-- //cont --> |
|
| 242 |
+ |
|
| 243 |
+ |
|
| 244 |
+ <div data-include-path="./layout/_footer.html"></div> |
|
| 245 |
+ |
|
| 246 |
+ </div> |
|
| 247 |
+ <!-- //top_utill+cont --> |
|
| 248 |
+ |
|
| 249 |
+ </div> |
|
| 250 |
+ |
|
| 251 |
+</body> |
|
| 252 |
+ |
|
| 253 | 253 |
</html>(No newline at end of file) |
--- src/main/webapp/publish/adm/layout/_sub_title.html
+++ src/main/webapp/publish/adm/layout/_sub_title.html
... | ... | @@ -1,8 +1,8 @@ |
| 1 |
-<div class="content_title"> |
|
| 2 |
- <h3>상표권 교육조건부 기소유예 교육 대상자 목록</h3> |
|
| 3 |
- <ol class="breadcrumb"> |
|
| 4 |
- <li><a href="#" class="home" title="메인으로 이동"><i></i></a></li> |
|
| 5 |
- <li><a href="#">depth01</a></li> |
|
| 6 |
- <li><strong class="current_location">depth02</strong></li> |
|
| 7 |
- </ol> |
|
| 1 |
+<div class="content_title"> |
|
| 2 |
+ <h3>상표권 교육조건부 기소유예 교육 대상자 목록</h3> |
|
| 3 |
+ <ol class="breadcrumb"> |
|
| 4 |
+ <li><a href="#" class="home" title="메인으로 이동"><i></i></a></li> |
|
| 5 |
+ <li><a href="#">depth01</a></li> |
|
| 6 |
+ <li><strong class="current_location">depth02</strong></li> |
|
| 7 |
+ </ol> |
|
| 8 | 8 |
</div>(No newline at end of file) |
--- src/main/webapp/publish/adm/layout/_userinfo.html
+++ src/main/webapp/publish/adm/layout/_userinfo.html
... | ... | @@ -1,38 +1,38 @@ |
| 1 |
- <!-- top_utill --> |
|
| 2 |
- <div class="top_util"> |
|
| 3 |
- |
|
| 4 |
- <ul class="user_util"> |
|
| 5 |
- <li class="final_date"> |
|
| 6 |
- <i></i> |
|
| 7 |
- <p>최종접속일시 : </p><span>2025-05-05 16:00:00</span> |
|
| 8 |
- </li> |
|
| 9 |
- <li class="ip"> |
|
| 10 |
- <i></i> |
|
| 11 |
- <p>IP : 218.123.45.678</p> |
|
| 12 |
- </li> |
|
| 13 |
- <li class="time_out"> |
|
| 14 |
- <i></i> |
|
| 15 |
- <p>로그인 타임아웃 : <span class="view_timer" id="ViewTimer">55분 20초</span></p> |
|
| 16 |
- <button type="button" class="btn_extend">연장</button> |
|
| 17 |
- </li> |
|
| 18 |
- </ul> |
|
| 19 |
- |
|
| 20 |
- <div class="user_info"> |
|
| 21 |
- <div class="area_right"> |
|
| 22 |
- <ul class="user_info_ul"> |
|
| 23 |
- <li> |
|
| 24 |
- <select name="" id=""> |
|
| 25 |
- <option value="">관리팀</option> |
|
| 26 |
- <option value="">관리팀2</option> |
|
| 27 |
- </select> |
|
| 28 |
- </li> |
|
| 29 |
- <li> |
|
| 30 |
- 슈퍼관리자(honggildong235) |
|
| 31 |
- </li> |
|
| 32 |
- </ul> |
|
| 33 |
- <button type="button" class="btn btn_logout">로그아웃</button> |
|
| 34 |
- </div> |
|
| 35 |
- </div> |
|
| 36 |
- |
|
| 37 |
-</div> |
|
| 1 |
+ <!-- top_utill --> |
|
| 2 |
+ <div class="top_util"> |
|
| 3 |
+ |
|
| 4 |
+ <ul class="user_util"> |
|
| 5 |
+ <li class="final_date"> |
|
| 6 |
+ <i></i> |
|
| 7 |
+ <p>최종접속일시 : </p><span>2025-05-05 16:00:00</span> |
|
| 8 |
+ </li> |
|
| 9 |
+ <li class="ip"> |
|
| 10 |
+ <i></i> |
|
| 11 |
+ <p>IP : 218.123.45.678</p> |
|
| 12 |
+ </li> |
|
| 13 |
+ <li class="time_out"> |
|
| 14 |
+ <i></i> |
|
| 15 |
+ <p>로그인 타임아웃 : <span class="view_timer" id="ViewTimer">55분 20초</span></p> |
|
| 16 |
+ <button type="button" class="btn_extend">연장</button> |
|
| 17 |
+ </li> |
|
| 18 |
+ </ul> |
|
| 19 |
+ |
|
| 20 |
+ <div class="user_info"> |
|
| 21 |
+ <div class="area_right"> |
|
| 22 |
+ <ul class="user_info_ul"> |
|
| 23 |
+ <li> |
|
| 24 |
+ <select name="" id=""> |
|
| 25 |
+ <option value="">관리팀</option> |
|
| 26 |
+ <option value="">관리팀2</option> |
|
| 27 |
+ </select> |
|
| 28 |
+ </li> |
|
| 29 |
+ <li> |
|
| 30 |
+ 슈퍼관리자(honggildong235) |
|
| 31 |
+ </li> |
|
| 32 |
+ </ul> |
|
| 33 |
+ <button type="button" class="btn btn_logout">로그아웃</button> |
|
| 34 |
+ </div> |
|
| 35 |
+ </div> |
|
| 36 |
+ |
|
| 37 |
+</div> |
|
| 38 | 38 |
<!-- //top_utill -->(No newline at end of file) |
--- src/main/webapp/publish/adm/layout/layout.css
+++ src/main/webapp/publish/adm/layout/layout.css
... | ... | @@ -1,278 +1,276 @@ |
| 1 |
-.wrap{width:100%;height:100%;position:relative;display:flex;font-family:var(--primary-title-font);align-items:stretch;min-width:1240px;}
|
|
| 2 |
-.container{width:calc(100% - 280px);}
|
|
| 3 |
-.content_wrap{position:relative;height:calc(100% - 100px);padding:0 48px;margin:0 0 60px 0;}
|
|
| 4 |
- |
|
| 5 |
-.content_title{display:flex;align-items:center;justify-content:space-between;}
|
|
| 6 |
-.content_title h3{position:relative;padding:0 0 0 20px;margin:0 0 40px 0;;font-size:26px;font-weight:bold;color:var(--primary-title-color);}
|
|
| 7 |
-.content_title h3::before{position:absolute;content:"";width:6px;height:27px;background:var(--primary-color);left:0;top:8px;}
|
|
| 8 |
-.content_title h4{position:relative;padding:0 0 0 20px;margin:0 0 12px 0;;font-size:20px;font-weight:bold;color:var(--primary-title-color);}
|
|
| 9 |
-.content_title h4::before{position:absolute;content:"";width:10px;height:10px;border:3px solid var(--primary-color);border-radius:100%;left:0;top:10px;}
|
|
| 10 |
-.content_title h5{position:relative;padding:0;margin:0;font-size:18px;font-weight:bold;color:var(--primary-color);}
|
|
| 11 |
- |
|
| 12 |
-.breadcrumb{display:flex;font-size:14px;color:#636469;gap:8px;align-items:center;}
|
|
| 13 |
-.breadcrumb a{position:relative;display:flex;height:24px;padding:0 8px;align-items:center;}
|
|
| 14 |
-.breadcrumb a::after{position:absolute;width:24px;height:24px;content:"";background:url(../images/component/icon_arrow_right_gray_24.png) no-repeat right center;right:-16px;top:1px;}
|
|
| 15 |
-.breadcrumb .home i{display:flex;width:24px;height:24px;background:url(../images/component/icon_home.png) no-repeat center center;}
|
|
| 16 |
-.breadcrumb .current_location{height:24px;padding:0 0 0 8px;color:var(--primary-color);}
|
|
| 17 |
- |
|
| 18 |
-/* leftmenu */ |
|
| 19 |
-.menu_wrap{width:280px;min-height:100vh;background-color: #2557b4; box-shadow: 5px 0 10px rgba(0,0,0,0.1); z-index: 1; transition: width 0.3s linear; border-radius: 0 35px 35px 0;}
|
|
| 20 |
-.menu_wrap .logo{width: 100%; height: 100px; text-align: center; border-bottom: 1px solid #688DD0;}
|
|
| 21 |
-.menu_wrap .logo a{height: 100%; display: flex; justify-content: center; align-items: center;}
|
|
| 22 |
-.menu_wrap .logo img{margin-left: -15px;}
|
|
| 23 |
-.depth01{position: relative; border-bottom: 1px solid #688DD0;}
|
|
| 24 |
-.menu_title{width: 100%; height: 50px; padding: 0 20px; text-align: left; font-size: 18px; font-weight: 500; color: #fff; background-image: url(../images/common/icon_leftmenu_open.png); background-repeat: no-repeat; background-position: calc(100% - 20px) center; transition:all .3s;}
|
|
| 25 |
-.menu_title:not(:has(+ .depth02 li)) {background-image: none !important;padding-right: 0 !important;}
|
|
| 26 |
-.menu_title:hover{background-color:#1A499F;}
|
|
| 27 |
-.depth01.on .menu_title{background:#fff; color: #2557b4; font-weight:600; background-image: url(../images/common/icon_leftmenu_on.png); background-repeat: no-repeat; background-position: calc(100% - 20px) center;}
|
|
| 28 |
-.depth02{height: 100%; padding: 8px 0; background-color: #16459A;}
|
|
| 29 |
-.depth02 li a{display: flex; align-items: center; width: 100%; height: 40px; padding: 0 5px 0 32px; font-size: 16px; font-weight: 300; color: #8BA2CD; box-sizing: border-box; position: relative;}
|
|
| 30 |
-.depth02 li a::before{position: absolute; content: ""; left: 0; font-size: 20px;}
|
|
| 31 |
-.depth02 li a:hover,.depth02 li.on a{color: #fff; font-weight: 400;}
|
|
| 32 |
-/* //leftmenu */ |
|
| 33 |
- |
|
| 34 |
-/* top_util */ |
|
| 35 |
-.top_util{display:flex;width:100%;height:100px;justify-content:space-between;background:#fff;padding:0 48px;box-sizing:border-box;align-items:center;}
|
|
| 36 |
-.user,.user_info,.alram{display:flex;align-items:center;}
|
|
| 37 |
- |
|
| 38 |
-.user_util{display:flex;gap:36px;}
|
|
| 39 |
-.user_util li{display:flex;align-items:center;gap:4px;}
|
|
| 40 |
-.user_util *{display:inline-block;vertical-align:middle;font-size:14px;color:#666666;letter-spacing:-0.5px;}
|
|
| 41 |
-.user_util i{width:20px;height:20px;margin:0 2px 0 0;}
|
|
| 42 |
-.user_util .time_out i{background:url(../images/component/icon_clock.png) no-repeat center;}
|
|
| 43 |
-.user_util .final_date i{background:url(../images/component/icon_calendar.png) no-repeat center;}
|
|
| 44 |
-.user_util .ip i{background:url(../images/component/icon_ip.png) no-repeat center;}
|
|
| 45 |
-.user_util .time_out #ViewTimer font,.user_util .time_out .view_timer{color:#F86A3C;font-weight:bold;vertical-align:bottom;}
|
|
| 46 |
-.user_util .btn_extend{width:45px;height:26px;border:1px solid #F86A3C;color:#f86a3c;background:#FFF1EC;border-radius:5px;margin:0 0 0 4px;font-weight:600;transition:all 0.3s;}
|
|
| 47 |
-.user_util .btn_extend:hover{background:#F86A3C;color:#fff;}
|
|
| 48 |
- |
|
| 49 |
-.top_util .area_right{position:relative;display:flex;width:auto;background:#fff;transition:width 0.3s linear;gap:12px;}
|
|
| 50 |
-.user_info_ul{display:inline-flex;height:38px;padding:0 20px 0 0;border-radius:35px;background:#f4f5f6;align-items:center;}
|
|
| 51 |
-.user_info_ul li{position:relative;display:inline-flex;align-items:center;line-height:1.8;}
|
|
| 52 |
-.user_info_ul li:first-child{margin:0 20px 0 0;}
|
|
| 53 |
-.user_info_ul li:first-child:after{position:absolute;content:"";width:1px;height:15px;background:#d5d5d5;right:0;}
|
|
| 54 |
-.user_info_ul select{width:145px;padding:0 0 0 20px;font-size:16px;border:0;background:transparent url(../images/component/icon_arrow_down.png) no-repeat calc(100% - 20px) center;}
|
|
| 55 |
-.btn_logout{width:auto;height:38px;padding:8px 17px;font-size:16px;color:#fff;border-radius:40px;background:var(--gray-color);transition: all 0.3s;}
|
|
| 56 |
-.btn_logout:hover{background:var(--gray-color-hover);}
|
|
| 57 |
-/* //top_util */ |
|
| 58 |
- |
|
| 59 |
-/* footer */ |
|
| 60 |
-.footer{display:flex;width:calc(100% - 90px);padding:60px 0;border-top:1px solid #D7D9DF;margin:0 auto;box-sizing:border-box;align-items:center;gap:40px;}
|
|
| 61 |
-.footer h1{margin:-14px 0 0 0;}
|
|
| 62 |
-.footer address{font-size:14px;color:#959698;line-height:1.5;}
|
|
| 63 |
-.footer address span{font-weight:600;margin:0 10px;}
|
|
| 64 |
-/* //footer */ |
|
| 65 |
- |
|
| 66 |
-@media all and (max-width:1440px){
|
|
| 67 |
- |
|
| 68 |
- /* leftmenu */ |
|
| 69 |
- .area_left{width: 240px;}
|
|
| 70 |
- .area_left .logo img{width: 75%;}
|
|
| 71 |
- |
|
| 72 |
- .menu_tit{padding:0 12px;font-size:16px;}
|
|
| 73 |
- .depth02 li a{font-size:14px;}
|
|
| 74 |
- /* //leftmenu */ |
|
| 75 |
- |
|
| 76 |
- /* top_util */ |
|
| 77 |
- .area_right{width: calc(100% - 240px);}
|
|
| 78 |
- |
|
| 79 |
- .top_util{padding: 0 20px;}
|
|
| 80 |
- .alram{margin-left: -15px;}
|
|
| 81 |
- .user_util{padding: 8px 0;gap:8px;}
|
|
| 82 |
- |
|
| 83 |
- .user_util *{font-size: 14px;}
|
|
| 84 |
- .user .user_id{width: calc(100% - 130px);}
|
|
| 85 |
- |
|
| 86 |
- .user_info_ul li{font-size:14px;}
|
|
| 87 |
- .user_info_ul select{width:120px;font-size:14px;}
|
|
| 88 |
- |
|
| 89 |
- /* //top_util */ |
|
| 90 |
- |
|
| 91 |
- footer{padding: 31px 20px;}
|
|
| 92 |
-} |
|
| 93 |
- |
|
| 94 |
-/* 간격 */ |
|
| 95 |
-.p0 {padding: 0px!important;}
|
|
| 96 |
-.p5 {padding: 5px!important;}
|
|
| 97 |
- |
|
| 98 |
-.pt5 {padding-top: 5px!important;}
|
|
| 99 |
-.pt10 {padding-top: 10px!important;}
|
|
| 100 |
-.pt15 {padding-top: 15px!important;}
|
|
| 101 |
-.pt20 {padding-top: 20px!important;}
|
|
| 102 |
-.pt25 {padding-top: 25px!important;}
|
|
| 103 |
-.pt30 {padding-top: 30px!important;}
|
|
| 104 |
-.pt35 {padding-top: 35px!important;}
|
|
| 105 |
-.pt40 {padding-top: 40px!important;}
|
|
| 106 |
-.pt45 {padding-top: 45px!important;}
|
|
| 107 |
-.pt50 {padding-top: 50px!important;}
|
|
| 108 |
- |
|
| 109 |
-.pr0 {padding-right: 0px!important;}
|
|
| 110 |
-.pr20 {padding-right: 20px!important;}
|
|
| 111 |
- |
|
| 112 |
-.pb5 {padding-bottom: 5px!important;}
|
|
| 113 |
-.pb10 {padding-bottom: 10px!important;}
|
|
| 114 |
-.pb15 {padding-bottom: 15px!important;}
|
|
| 115 |
-.pb20 {padding-bottom: 20px!important;}
|
|
| 116 |
-.pb25 {padding-bottom: 25px!important;}
|
|
| 117 |
-.pb30 {padding-bottom: 30px!important;}
|
|
| 118 |
-.pb35 {padding-bottom: 35px!important;}
|
|
| 119 |
-.pb40 {padding-bottom: 40px!important;}
|
|
| 120 |
-.pb45 {padding-bottom: 45px!important;}
|
|
| 121 |
-.pb50 {padding-bottom: 50px!important;}
|
|
| 122 |
- |
|
| 123 |
-.pl0 {padding-left: 0px!important;}
|
|
| 124 |
-.pl15 {padding-left: 15px!important;}
|
|
| 125 |
-.pl20 {padding-left: 20px!important;}
|
|
| 126 |
- |
|
| 127 |
-.m20 {margin: 20px!important;}
|
|
| 128 |
- |
|
| 129 |
-.mt-1 {margin-top: -1px!important;}
|
|
| 130 |
-.mt0 {margin-top: 0px!important;}
|
|
| 131 |
-.mt5 {margin-top: 5px!important;}
|
|
| 132 |
-.mt10 {margin-top: 10px!important;}
|
|
| 133 |
-.mt15 {margin-top: 15px!important;}
|
|
| 134 |
-.mt20 {margin-top: 20px!important;}
|
|
| 135 |
-.mt25 {margin-top: 25px!important;}
|
|
| 136 |
-.mt30 {margin-top: 30px!important;}
|
|
| 137 |
-.mt35 {margin-top: 35px!important;}
|
|
| 138 |
-.mt40 {margin-top: 40px!important;}
|
|
| 139 |
-.mt45 {margin-top: 45px!important;}
|
|
| 140 |
-.mt50 {margin-top: 50px!important;}
|
|
| 141 |
-.mt60 {margin-top: 60px!important;}
|
|
| 142 |
-.mt70 {margin-top: 70px!important;}
|
|
| 143 |
-.mt80 {margin-top: 80px!important;}
|
|
| 144 |
-.mt90 {margin-top: 90px!important;}
|
|
| 145 |
-.mt100 {margin-top: 100px!important;}
|
|
| 146 |
- |
|
| 147 |
-.mr0 {margin-right: 0px!important;}
|
|
| 148 |
-.mr3 {margin-right: 3px!important;}
|
|
| 149 |
-.mr5 {margin-right: 5px!important;}
|
|
| 150 |
-.mr10 {margin-right: 10px!important;}
|
|
| 151 |
-.mr15 {margin-right: 15px!important;}
|
|
| 152 |
-.mr20 {margin-right: 20px!important;}
|
|
| 153 |
-.mr25 {margin-right: 25px!important;}
|
|
| 154 |
-.mr30 {margin-right: 30px!important;}
|
|
| 155 |
-.mr35 {margin-right: 35px!important;}
|
|
| 156 |
-.mr40 {margin-right: 40px!important;}
|
|
| 157 |
-.mr45 {margin-right: 45px!important;}
|
|
| 158 |
-.mr50 {margin-right: 50px!important;}
|
|
| 159 |
-.mr60 {margin-right: 60px!important;}
|
|
| 160 |
-.mr70 {margin-right: 70px!important;}
|
|
| 161 |
-.mr80 {margin-right: 80px!important;}
|
|
| 162 |
-.mr90 {margin-right: 90px!important;}
|
|
| 163 |
-.mr100 {margin-right: 100px!important;}
|
|
| 164 |
- |
|
| 165 |
-.mb-4 {margin-bottom: -4px!important;}
|
|
| 166 |
-.mb0 {margin-bottom: 0px!important;}
|
|
| 167 |
-.mb1 {margin-bottom: 1px!important;}
|
|
| 168 |
-.mb5 {margin-bottom: 5px!important;}
|
|
| 169 |
-.mb10 {margin-bottom: 10px!important;}
|
|
| 170 |
-.mb15 {margin-bottom: 15px!important;}
|
|
| 171 |
-.mb18 {margin-bottom: 18px!important;}
|
|
| 172 |
-.mb20 {margin-bottom: 20px!important;}
|
|
| 173 |
-.mb25 {margin-bottom: 25px!important;}
|
|
| 174 |
-.mb30 {margin-bottom: 30px!important;}
|
|
| 175 |
-.mb35 {margin-bottom: 35px!important;}
|
|
| 176 |
-.mb40 {margin-bottom: 40px!important;}
|
|
| 177 |
-.mb45 {margin-bottom: 45px!important;}
|
|
| 178 |
-.mb50 {margin-bottom: 50px!important;}
|
|
| 179 |
-.mb60 {margin-bottom: 60px!important;}
|
|
| 180 |
-.mb70 {margin-bottom: 70px!important;}
|
|
| 181 |
-.mb80 {margin-bottom: 80px!important;}
|
|
| 182 |
-.mb90 {margin-bottom: 90px!important;}
|
|
| 183 |
-.mb100 {margin-bottom: 100px!important;}
|
|
| 184 |
- |
|
| 185 |
-.ml0 {margin-left: 0px!important;}
|
|
| 186 |
-.ml5 {margin-left: 5px!important;}
|
|
| 187 |
-.ml10 {margin-left: 10px!important;}
|
|
| 188 |
-.ml15 {margin-left: 15px!important;}
|
|
| 189 |
-.ml20 {margin-left: 20px!important;}
|
|
| 190 |
-.ml25 {margin-left: 25px!important;}
|
|
| 191 |
-.ml30 {margin-left: 30px!important;}
|
|
| 192 |
-.ml35 {margin-left: 35px!important;}
|
|
| 193 |
-.ml40 {margin-left: 40px!important;}
|
|
| 194 |
-.ml45 {margin-left: 45px!important;}
|
|
| 195 |
-.ml50 {margin-left: 50px!important;}
|
|
| 196 |
-.ml60 {margin-left: 60px!important;}
|
|
| 197 |
-.ml70 {margin-left: 70px!important;}
|
|
| 198 |
-.ml80 {margin-left: 80px!important;}
|
|
| 199 |
-.ml90 {margin-left: 90px!important;}
|
|
| 200 |
-.ml100 {margin-left: 100px!important;}
|
|
| 201 |
- |
|
| 202 |
-/* 너비, 높이 */ |
|
| 203 |
-.w100per {width: 100% !important;}
|
|
| 204 |
-.w99per {width: 99%;}
|
|
| 205 |
-.w95per {width: 95%;}
|
|
| 206 |
-.w90per {width: 90%;}
|
|
| 207 |
-.w85per {width: 85%;}
|
|
| 208 |
-.w80per {width: 80%;}
|
|
| 209 |
-.w75per {width: 75%;}
|
|
| 210 |
-.w70per {width: 70%;}
|
|
| 211 |
-.w65per {width: 65%;}
|
|
| 212 |
-.w60per {width: 60%;}
|
|
| 213 |
-.w50per {width: 50%;}
|
|
| 214 |
-.w55per {width: 55%;}
|
|
| 215 |
-.w45per {width: 45%;}
|
|
| 216 |
-.w40per {width: 40%;}
|
|
| 217 |
-.w35per {width: 35%;}
|
|
| 218 |
-.w33per {width: 33.3333333%;}
|
|
| 219 |
-.w30per {width: 30%;}
|
|
| 220 |
-.w25per {width: 25%;}
|
|
| 221 |
-.w20per {width: 20%;}
|
|
| 222 |
-.w19per {width: 19%;}
|
|
| 223 |
-.w18per {width: 18%;}
|
|
| 224 |
-.w17per {width: 17%;}
|
|
| 225 |
-.w16per {width: 16%;}
|
|
| 226 |
-.w15per {width: 15%;}
|
|
| 227 |
-.w14per {width: 14%;}
|
|
| 228 |
-.w13per {width: 13%;}
|
|
| 229 |
-.w12per {width: 12%;}
|
|
| 230 |
-.w11per {width: 11%;}
|
|
| 231 |
-.w10per {width: 10%;}
|
|
| 232 |
-.w9per {width: 9%;}
|
|
| 233 |
-.w8per {width: 8%;}
|
|
| 234 |
-.w7per {width: 7%;}
|
|
| 235 |
-.w6per {width: 6%;}
|
|
| 236 |
-.w5per {width: 5%;}
|
|
| 237 |
-.w4per {width: 4%;}
|
|
| 238 |
-.w3per {width: 3%;}
|
|
| 239 |
-.w2per {width: 2%;}
|
|
| 240 |
-.w1per {width: 1%;}
|
|
| 241 |
- |
|
| 242 |
-.w5 {width: 5px;}
|
|
| 243 |
-.w10 {width: 10px;}
|
|
| 244 |
-.w15 {width: 15px;}
|
|
| 245 |
-.w20 {width: 20px;}
|
|
| 246 |
-.w25 {width: 25px;}
|
|
| 247 |
-.w30 {width: 30px;}
|
|
| 248 |
-.w35 {width: 35px;}
|
|
| 249 |
-.w40 {width: 40px;}
|
|
| 250 |
-.w45 {width: 45px;}
|
|
| 251 |
-.w50 {width: 50px;}
|
|
| 252 |
-.w55 {width: 55px;}
|
|
| 253 |
-.w60 {width: 60px;}
|
|
| 254 |
-.w70 {width: 70px;}
|
|
| 255 |
-.w80 {width: 80px;}
|
|
| 256 |
-.w90 {width: 90px;}
|
|
| 257 |
-.w100 {width: 100px;}
|
|
| 258 |
-.w110 {width: 110px;}
|
|
| 259 |
-.w120 {width: 120px;}
|
|
| 260 |
-.w130 {width: 130px;}
|
|
| 261 |
-.w140 {width: 140px;}
|
|
| 262 |
-.w150 {width: 150px;}
|
|
| 263 |
-.w160 {width: 160px;}
|
|
| 264 |
-.w170 {width: 170px;}
|
|
| 265 |
-.w180 {width: 180px;}
|
|
| 266 |
-.w190 {width: 190px;}
|
|
| 267 |
-.w200 {width: 200px;}
|
|
| 268 |
-.w250 {width: 250px;}
|
|
| 269 |
-.w300 {width: 300px;}
|
|
| 270 |
-.w325 {width: 325px;}
|
|
| 271 |
-.w350 {width: 350px;}
|
|
| 272 |
-.w400 {width: 400px;}
|
|
| 273 |
-.w500 {width: 500px;}
|
|
| 274 |
- |
|
| 275 |
-.mw100 {min-width: 100px;}
|
|
| 276 |
- |
|
| 277 |
-.h100 {height: 100px;}
|
|
| 1 |
+.wrap{width:100%;height:100%;position:relative;display:flex;font-family:var(--primary-title-font);align-items:stretch;min-width:1240px;}
|
|
| 2 |
+.container{width:calc(100% - 280px);}
|
|
| 3 |
+.content_wrap{position:relative;padding:0 48px;margin:0 0 60px 0;}
|
|
| 4 |
+ |
|
| 5 |
+.content_title{display:flex;align-items:center;justify-content:space-between;}
|
|
| 6 |
+.content_title h3{position:relative;padding:0 0 0 20px;margin:0 0 40px 0;;font-size:26px;font-weight:bold;color:var(--primary-title-color);}
|
|
| 7 |
+.content_title h3::before{position:absolute;content:"";width:6px;height:27px;background:var(--primary-color);left:0;top:8px;}
|
|
| 8 |
+.content_title h4{position:relative;padding:0 0 0 20px;margin:0 0 12px 0;;font-size:20px;font-weight:bold;color:var(--primary-title-color);}
|
|
| 9 |
+.content_title h4::before{position:absolute;content:"";width:10px;height:10px;border:3px solid var(--primary-color);border-radius:100%;left:0;top:10px;}
|
|
| 10 |
+.content_title h5{position:relative;padding:0;margin:0;font-size:18px;font-weight:bold;color:var(--primary-color);}
|
|
| 11 |
+ |
|
| 12 |
+.breadcrumb{display:flex;font-size:14px;color:#636469;gap:8px;align-items:center;}
|
|
| 13 |
+.breadcrumb a{position:relative;display:flex;height:24px;padding:0 8px;align-items:center;}
|
|
| 14 |
+.breadcrumb a::after{position:absolute;width:24px;height:24px;content:"";background:url(../images/component/icon_arrow_right_gray_24.png) no-repeat right center;right:-16px;top:1px;}
|
|
| 15 |
+.breadcrumb .home i{display:flex;width:24px;height:24px;background:url(../images/component/icon_home.png) no-repeat center center;}
|
|
| 16 |
+.breadcrumb .current_location{height:24px;padding:0 0 0 8px;color:var(--primary-color);}
|
|
| 17 |
+ |
|
| 18 |
+/* leftmenu */ |
|
| 19 |
+.menu_wrap{width:280px;min-height:100vh;background-color: #2557b4; box-shadow: 5px 0 10px rgba(0,0,0,0.1); z-index: 1; transition: width 0.3s linear; border-radius: 0 35px 35px 0;}
|
|
| 20 |
+.menu_wrap .logo{width: 100%; height: 100px; text-align: center; border-bottom: 1px solid #688DD0;}
|
|
| 21 |
+.menu_wrap .logo a{height: 100%; display: flex; justify-content: center; align-items: center;}
|
|
| 22 |
+.menu_wrap .logo img{margin-left: -15px;}
|
|
| 23 |
+.depth01{position: relative; border-bottom: 1px solid #688DD0;}
|
|
| 24 |
+.menu_title{width: 100%; height: 50px; padding: 0 20px; text-align: left; font-size: 18px; font-weight: 500; color: #fff; background-image: url(../images/common/icon_leftmenu_open.png); background-repeat: no-repeat; background-position: calc(100% - 20px) center;}
|
|
| 25 |
+.depth01.on .menu_title{background:#fff; color: #2557b4; font-weight:600; background-image: url(../images/common/icon_leftmenu_on.png); background-repeat: no-repeat; background-position: calc(100% - 20px) center;}
|
|
| 26 |
+.depth02{height: 100%; padding: 8px 0; background-color: #16459A;}
|
|
| 27 |
+.depth02 li a{display: flex; align-items: center; width: 100%; height: 40px; padding: 0 5px 0 32px; font-size: 16px; font-weight: 300; color: #8BA2CD; box-sizing: border-box; position: relative;}
|
|
| 28 |
+.depth02 li a::before{position: absolute; content: ""; left: 0; font-size: 20px;}
|
|
| 29 |
+.depth02 li a:hover,.depth02 li.on a{color: #fff; font-weight: 400;}
|
|
| 30 |
+/* //leftmenu */ |
|
| 31 |
+ |
|
| 32 |
+/* top_util */ |
|
| 33 |
+.top_util{display:flex;width:100%;height:100px;justify-content:space-between;background:#fff;padding:0 48px;box-sizing:border-box;align-items:center;}
|
|
| 34 |
+.user,.user_info,.alram{display:flex;align-items:center;}
|
|
| 35 |
+ |
|
| 36 |
+.user_util{display:flex;gap:36px;}
|
|
| 37 |
+.user_util li{display:flex;align-items:center;gap:4px;}
|
|
| 38 |
+.user_util *{display:inline-block;vertical-align:middle;font-size:14px;color:#666666;letter-spacing:-0.5px;}
|
|
| 39 |
+.user_util i{width:20px;height:20px;margin:0 2px 0 0;}
|
|
| 40 |
+.user_util .time_out i{background:url(../images/component/icon_clock.png) no-repeat center;}
|
|
| 41 |
+.user_util .final_date i{background:url(../images/component/icon_calendar.png) no-repeat center;}
|
|
| 42 |
+.user_util .ip i{background:url(../images/component/icon_ip.png) no-repeat center;}
|
|
| 43 |
+.user_util .time_out #ViewTimer font,.user_util .time_out .view_timer{color:#F86A3C;font-weight:bold;vertical-align:bottom;}
|
|
| 44 |
+.user_util .btn_extend{width:45px;height:26px;border:1px solid #F86A3C;color:#f86a3c;background:#FFF1EC;border-radius:5px;margin:0 0 0 4px;font-weight:600;transition:all 0.3s;}
|
|
| 45 |
+.user_util .btn_extend:hover{background:#F86A3C;color:#fff;}
|
|
| 46 |
+ |
|
| 47 |
+.top_util .area_right{position:relative;display:flex;width:auto;background:#fff;transition:width 0.3s linear;gap:12px;}
|
|
| 48 |
+.user_info_ul{display:inline-flex;height:38px;padding:0 20px 0 0;border-radius:35px;background:#f4f5f6;align-items:center;}
|
|
| 49 |
+.user_info_ul li{position:relative;display:inline-flex;align-items:center;line-height:1.8;}
|
|
| 50 |
+.user_info_ul li:first-child{margin:0 20px 0 0;}
|
|
| 51 |
+.user_info_ul li:first-child:after{position:absolute;content:"";width:1px;height:15px;background:#d5d5d5;right:0;}
|
|
| 52 |
+.user_info_ul select{width:145px;padding:0 0 0 20px;font-size:16px;border:0;background:transparent url(../images/component/icon_arrow_down.png) no-repeat calc(100% - 20px) center;}
|
|
| 53 |
+.btn_logout{width:auto;height:38px;padding:8px 17px;font-size:16px;color:#fff;border-radius:40px;background:var(--gray-color);transition: all 0.3s;}
|
|
| 54 |
+.btn_logout:hover{background:var(--gray-color-hover);}
|
|
| 55 |
+/* //top_util */ |
|
| 56 |
+ |
|
| 57 |
+/* footer */ |
|
| 58 |
+.footer{display:flex;width:calc(100% - 90px);padding:60px 0;border-top:1px solid #D7D9DF;margin:0 auto;box-sizing:border-box;align-items:center;gap:40px;}
|
|
| 59 |
+.footer h1{margin:-14px 0 0 0;}
|
|
| 60 |
+.footer address{font-size:14px;color:#959698;line-height:1.5;}
|
|
| 61 |
+.footer address span{font-weight:600;margin:0 10px;}
|
|
| 62 |
+/* //footer */ |
|
| 63 |
+ |
|
| 64 |
+@media all and (max-width:1440px){
|
|
| 65 |
+ |
|
| 66 |
+ /* leftmenu */ |
|
| 67 |
+ .area_left{width: 240px;}
|
|
| 68 |
+ .area_left .logo img{width: 75%;}
|
|
| 69 |
+ |
|
| 70 |
+ .menu_tit{padding:0 12px;font-size:16px;}
|
|
| 71 |
+ .depth02 li a{font-size:14px;}
|
|
| 72 |
+ /* //leftmenu */ |
|
| 73 |
+ |
|
| 74 |
+ /* top_util */ |
|
| 75 |
+ .area_right{width: calc(100% - 240px);}
|
|
| 76 |
+ |
|
| 77 |
+ .top_util{padding: 0 20px;}
|
|
| 78 |
+ .alram{margin-left: -15px;}
|
|
| 79 |
+ .user_util{padding: 8px 0;gap:8px;}
|
|
| 80 |
+ |
|
| 81 |
+ .user_util *{font-size: 14px;}
|
|
| 82 |
+ .user .user_id{width: calc(100% - 130px);}
|
|
| 83 |
+ |
|
| 84 |
+ .user_info_ul li{font-size:14px;}
|
|
| 85 |
+ .user_info_ul select{width:120px;font-size:14px;}
|
|
| 86 |
+ |
|
| 87 |
+ /* //top_util */ |
|
| 88 |
+ |
|
| 89 |
+ footer{padding: 31px 20px;}
|
|
| 90 |
+} |
|
| 91 |
+ |
|
| 92 |
+/* 간격 */ |
|
| 93 |
+.p0 {padding: 0px!important;}
|
|
| 94 |
+.p5 {padding: 5px!important;}
|
|
| 95 |
+ |
|
| 96 |
+.pt5 {padding-top: 5px!important;}
|
|
| 97 |
+.pt10 {padding-top: 10px!important;}
|
|
| 98 |
+.pt15 {padding-top: 15px!important;}
|
|
| 99 |
+.pt20 {padding-top: 20px!important;}
|
|
| 100 |
+.pt25 {padding-top: 25px!important;}
|
|
| 101 |
+.pt30 {padding-top: 30px!important;}
|
|
| 102 |
+.pt35 {padding-top: 35px!important;}
|
|
| 103 |
+.pt40 {padding-top: 40px!important;}
|
|
| 104 |
+.pt45 {padding-top: 45px!important;}
|
|
| 105 |
+.pt50 {padding-top: 50px!important;}
|
|
| 106 |
+ |
|
| 107 |
+.pr0 {padding-right: 0px!important;}
|
|
| 108 |
+.pr20 {padding-right: 20px!important;}
|
|
| 109 |
+ |
|
| 110 |
+.pb5 {padding-bottom: 5px!important;}
|
|
| 111 |
+.pb10 {padding-bottom: 10px!important;}
|
|
| 112 |
+.pb15 {padding-bottom: 15px!important;}
|
|
| 113 |
+.pb20 {padding-bottom: 20px!important;}
|
|
| 114 |
+.pb25 {padding-bottom: 25px!important;}
|
|
| 115 |
+.pb30 {padding-bottom: 30px!important;}
|
|
| 116 |
+.pb35 {padding-bottom: 35px!important;}
|
|
| 117 |
+.pb40 {padding-bottom: 40px!important;}
|
|
| 118 |
+.pb45 {padding-bottom: 45px!important;}
|
|
| 119 |
+.pb50 {padding-bottom: 50px!important;}
|
|
| 120 |
+ |
|
| 121 |
+.pl0 {padding-left: 0px!important;}
|
|
| 122 |
+.pl15 {padding-left: 15px!important;}
|
|
| 123 |
+.pl20 {padding-left: 20px!important;}
|
|
| 124 |
+ |
|
| 125 |
+.m20 {margin: 20px!important;}
|
|
| 126 |
+ |
|
| 127 |
+.mt-1 {margin-top: -1px!important;}
|
|
| 128 |
+.mt0 {margin-top: 0px!important;}
|
|
| 129 |
+.mt5 {margin-top: 5px!important;}
|
|
| 130 |
+.mt10 {margin-top: 10px!important;}
|
|
| 131 |
+.mt15 {margin-top: 15px!important;}
|
|
| 132 |
+.mt20 {margin-top: 20px!important;}
|
|
| 133 |
+.mt25 {margin-top: 25px!important;}
|
|
| 134 |
+.mt30 {margin-top: 30px!important;}
|
|
| 135 |
+.mt35 {margin-top: 35px!important;}
|
|
| 136 |
+.mt40 {margin-top: 40px!important;}
|
|
| 137 |
+.mt45 {margin-top: 45px!important;}
|
|
| 138 |
+.mt50 {margin-top: 50px!important;}
|
|
| 139 |
+.mt60 {margin-top: 60px!important;}
|
|
| 140 |
+.mt70 {margin-top: 70px!important;}
|
|
| 141 |
+.mt80 {margin-top: 80px!important;}
|
|
| 142 |
+.mt90 {margin-top: 90px!important;}
|
|
| 143 |
+.mt100 {margin-top: 100px!important;}
|
|
| 144 |
+ |
|
| 145 |
+.mr0 {margin-right: 0px!important;}
|
|
| 146 |
+.mr3 {margin-right: 3px!important;}
|
|
| 147 |
+.mr5 {margin-right: 5px!important;}
|
|
| 148 |
+.mr10 {margin-right: 10px!important;}
|
|
| 149 |
+.mr15 {margin-right: 15px!important;}
|
|
| 150 |
+.mr20 {margin-right: 20px!important;}
|
|
| 151 |
+.mr25 {margin-right: 25px!important;}
|
|
| 152 |
+.mr30 {margin-right: 30px!important;}
|
|
| 153 |
+.mr35 {margin-right: 35px!important;}
|
|
| 154 |
+.mr40 {margin-right: 40px!important;}
|
|
| 155 |
+.mr45 {margin-right: 45px!important;}
|
|
| 156 |
+.mr50 {margin-right: 50px!important;}
|
|
| 157 |
+.mr60 {margin-right: 60px!important;}
|
|
| 158 |
+.mr70 {margin-right: 70px!important;}
|
|
| 159 |
+.mr80 {margin-right: 80px!important;}
|
|
| 160 |
+.mr90 {margin-right: 90px!important;}
|
|
| 161 |
+.mr100 {margin-right: 100px!important;}
|
|
| 162 |
+ |
|
| 163 |
+.mb-4 {margin-bottom: -4px!important;}
|
|
| 164 |
+.mb0 {margin-bottom: 0px!important;}
|
|
| 165 |
+.mb1 {margin-bottom: 1px!important;}
|
|
| 166 |
+.mb5 {margin-bottom: 5px!important;}
|
|
| 167 |
+.mb10 {margin-bottom: 10px!important;}
|
|
| 168 |
+.mb15 {margin-bottom: 15px!important;}
|
|
| 169 |
+.mb18 {margin-bottom: 18px!important;}
|
|
| 170 |
+.mb20 {margin-bottom: 20px!important;}
|
|
| 171 |
+.mb25 {margin-bottom: 25px!important;}
|
|
| 172 |
+.mb30 {margin-bottom: 30px!important;}
|
|
| 173 |
+.mb35 {margin-bottom: 35px!important;}
|
|
| 174 |
+.mb40 {margin-bottom: 40px!important;}
|
|
| 175 |
+.mb45 {margin-bottom: 45px!important;}
|
|
| 176 |
+.mb50 {margin-bottom: 50px!important;}
|
|
| 177 |
+.mb60 {margin-bottom: 60px!important;}
|
|
| 178 |
+.mb70 {margin-bottom: 70px!important;}
|
|
| 179 |
+.mb80 {margin-bottom: 80px!important;}
|
|
| 180 |
+.mb90 {margin-bottom: 90px!important;}
|
|
| 181 |
+.mb100 {margin-bottom: 100px!important;}
|
|
| 182 |
+ |
|
| 183 |
+.ml0 {margin-left: 0px!important;}
|
|
| 184 |
+.ml5 {margin-left: 5px!important;}
|
|
| 185 |
+.ml10 {margin-left: 10px!important;}
|
|
| 186 |
+.ml15 {margin-left: 15px!important;}
|
|
| 187 |
+.ml20 {margin-left: 20px!important;}
|
|
| 188 |
+.ml25 {margin-left: 25px!important;}
|
|
| 189 |
+.ml30 {margin-left: 30px!important;}
|
|
| 190 |
+.ml35 {margin-left: 35px!important;}
|
|
| 191 |
+.ml40 {margin-left: 40px!important;}
|
|
| 192 |
+.ml45 {margin-left: 45px!important;}
|
|
| 193 |
+.ml50 {margin-left: 50px!important;}
|
|
| 194 |
+.ml60 {margin-left: 60px!important;}
|
|
| 195 |
+.ml70 {margin-left: 70px!important;}
|
|
| 196 |
+.ml80 {margin-left: 80px!important;}
|
|
| 197 |
+.ml90 {margin-left: 90px!important;}
|
|
| 198 |
+.ml100 {margin-left: 100px!important;}
|
|
| 199 |
+ |
|
| 200 |
+/* 너비, 높이 */ |
|
| 201 |
+.w100per {width: 100% !important;}
|
|
| 202 |
+.w99per {width: 99%;}
|
|
| 203 |
+.w95per {width: 95%;}
|
|
| 204 |
+.w90per {width: 90%;}
|
|
| 205 |
+.w85per {width: 85%;}
|
|
| 206 |
+.w80per {width: 80%;}
|
|
| 207 |
+.w75per {width: 75%;}
|
|
| 208 |
+.w70per {width: 70%;}
|
|
| 209 |
+.w65per {width: 65%;}
|
|
| 210 |
+.w60per {width: 60%;}
|
|
| 211 |
+.w50per {width: 50%;}
|
|
| 212 |
+.w55per {width: 55%;}
|
|
| 213 |
+.w45per {width: 45%;}
|
|
| 214 |
+.w40per {width: 40%;}
|
|
| 215 |
+.w35per {width: 35%;}
|
|
| 216 |
+.w33per {width: 33.3333333%;}
|
|
| 217 |
+.w30per {width: 30%;}
|
|
| 218 |
+.w25per {width: 25%;}
|
|
| 219 |
+.w20per {width: 20%;}
|
|
| 220 |
+.w19per {width: 19%;}
|
|
| 221 |
+.w18per {width: 18%;}
|
|
| 222 |
+.w17per {width: 17%;}
|
|
| 223 |
+.w16per {width: 16%;}
|
|
| 224 |
+.w15per {width: 15%;}
|
|
| 225 |
+.w14per {width: 14%;}
|
|
| 226 |
+.w13per {width: 13%;}
|
|
| 227 |
+.w12per {width: 12%;}
|
|
| 228 |
+.w11per {width: 11%;}
|
|
| 229 |
+.w10per {width: 10%;}
|
|
| 230 |
+.w9per {width: 9%;}
|
|
| 231 |
+.w8per {width: 8%;}
|
|
| 232 |
+.w7per {width: 7%;}
|
|
| 233 |
+.w6per {width: 6%;}
|
|
| 234 |
+.w5per {width: 5%;}
|
|
| 235 |
+.w4per {width: 4%;}
|
|
| 236 |
+.w3per {width: 3%;}
|
|
| 237 |
+.w2per {width: 2%;}
|
|
| 238 |
+.w1per {width: 1%;}
|
|
| 239 |
+ |
|
| 240 |
+.w5 {width: 5px;}
|
|
| 241 |
+.w10 {width: 10px;}
|
|
| 242 |
+.w15 {width: 15px;}
|
|
| 243 |
+.w20 {width: 20px;}
|
|
| 244 |
+.w25 {width: 25px;}
|
|
| 245 |
+.w30 {width: 30px;}
|
|
| 246 |
+.w35 {width: 35px;}
|
|
| 247 |
+.w40 {width: 40px;}
|
|
| 248 |
+.w45 {width: 45px;}
|
|
| 249 |
+.w50 {width: 50px;}
|
|
| 250 |
+.w55 {width: 55px;}
|
|
| 251 |
+.w60 {width: 60px;}
|
|
| 252 |
+.w70 {width: 70px;}
|
|
| 253 |
+.w80 {width: 80px;}
|
|
| 254 |
+.w90 {width: 90px;}
|
|
| 255 |
+.w100 {width: 100px;}
|
|
| 256 |
+.w110 {width: 110px;}
|
|
| 257 |
+.w120 {width: 120px;}
|
|
| 258 |
+.w130 {width: 130px;}
|
|
| 259 |
+.w140 {width: 140px;}
|
|
| 260 |
+.w150 {width: 150px;}
|
|
| 261 |
+.w160 {width: 160px;}
|
|
| 262 |
+.w170 {width: 170px;}
|
|
| 263 |
+.w180 {width: 180px;}
|
|
| 264 |
+.w190 {width: 190px;}
|
|
| 265 |
+.w200 {width: 200px;}
|
|
| 266 |
+.w250 {width: 250px;}
|
|
| 267 |
+.w300 {width: 300px;}
|
|
| 268 |
+.w325 {width: 325px;}
|
|
| 269 |
+.w350 {width: 350px;}
|
|
| 270 |
+.w400 {width: 400px;}
|
|
| 271 |
+.w500 {width: 500px;}
|
|
| 272 |
+ |
|
| 273 |
+.mw100 {min-width: 100px;}
|
|
| 274 |
+ |
|
| 275 |
+.h100 {height: 100px;}
|
|
| 278 | 276 |
.h100per {height: 100%;} (No newline at end of file)
|
--- src/main/webapp/publish/adm/layout/layout.js
+++ src/main/webapp/publish/adm/layout/layout.js
... | ... | @@ -1,58 +1,22 @@ |
| 1 |
-$(function () {
|
|
| 2 |
- |
|
| 3 |
- // depth02 없는 메뉴에 no-depth 추가 |
|
| 4 |
- $(".depth01").each(function () {
|
|
| 5 |
- var $submenu = $(this).find(".depth02");
|
|
| 6 |
- if ($submenu.length == 0 || $submenu.find("li").length == 0) {
|
|
| 7 |
- $(this).addClass("no-depth");
|
|
| 8 |
- } |
|
| 9 |
- }); |
|
| 10 |
- |
|
| 11 |
- $(".depth02").slideUp(0);
|
|
| 12 |
- setTimeout(function(){
|
|
| 13 |
- $(".on .depth02").slideDown(0);
|
|
| 14 |
- },100) |
|
| 15 |
- |
|
| 16 |
- $(".depth01.on").each(function () {
|
|
| 17 |
- var $submenu = $(this).find(".depth02");
|
|
| 18 |
- if ($submenu.find("li").length > 0) {
|
|
| 19 |
- $submenu.slideDown(0); |
|
| 20 |
- $(this).find(".menu_title").attr("title", "하위메뉴 닫기");
|
|
| 21 |
- } |
|
| 22 |
- }); |
|
| 23 |
- |
|
| 24 |
- $(".menu_title").on("click", function () {
|
|
| 25 |
- |
|
| 26 |
- var $parent = $(this).closest(".depth01");
|
|
| 27 |
- var $submenu = $parent.find(".depth02");
|
|
| 28 |
- var hasDepth02 = $submenu.find("li").length > 0;
|
|
| 29 |
- var url = "/cmm/main/mainPage.do"; |
|
| 30 |
- var titleText = $(this).text().trim().toLowerCase(); |
|
| 31 |
- |
|
| 32 |
- // dashboard는 무조건 바로 이동 |
|
| 33 |
- if (titleText === "dashboard") {
|
|
| 34 |
- if (url) location.href = url; |
|
| 35 |
- return; |
|
| 36 |
- } |
|
| 37 |
- |
|
| 38 |
- // depth02 없는 메뉴는 바로 이동 |
|
| 39 |
- if (!hasDepth02) {
|
|
| 40 |
- // if (url) location.href = url; |
|
| 41 |
- return; |
|
| 42 |
- } |
|
| 43 |
- |
|
| 44 |
- // depth02 있는 경우 슬라이드 |
|
| 45 |
- if ($parent.hasClass("on")) {
|
|
| 46 |
- $submenu.slideUp(300); |
|
| 47 |
- $parent.removeClass("on");
|
|
| 48 |
- $(this).attr("title", "하위메뉴 열기");
|
|
| 49 |
- } else {
|
|
| 50 |
- $(".depth01").removeClass("on").find(".depth02").slideUp(300);
|
|
| 51 |
- $(".menu_title").attr("title", "하위메뉴 열기");
|
|
| 52 |
- $parent.addClass("on");
|
|
| 53 |
- $submenu.slideDown(300); |
|
| 54 |
- $(this).attr("title", "하위메뉴 닫기");
|
|
| 55 |
- } |
|
| 56 |
- }); |
|
| 57 |
- |
|
| 58 |
-}); |
|
| 1 |
+$(function () {
|
|
| 2 |
+ $(".depth02").slideUp(0); // 메뉴 다 닫힘.
|
|
| 3 |
+ $(".depth02.on").slideDown(0); //
|
|
| 4 |
+ |
|
| 5 |
+ /* 메뉴 클릭 시 하위메뉴 열림 */ |
|
| 6 |
+ $(".menu_title").click(function () {
|
|
| 7 |
+ var dep01 = $(this).parent(".depth01");
|
|
| 8 |
+ var dep02 = $(this).next(".depth02");
|
|
| 9 |
+ if (dep01.is(".on") == true) {
|
|
| 10 |
+ dep02.slideUp(500); |
|
| 11 |
+ dep01.removeClass("on");
|
|
| 12 |
+ $(this).attr("title", "하위메뉴 열기");
|
|
| 13 |
+ } else {
|
|
| 14 |
+ dep02.slideDown(500); |
|
| 15 |
+ dep01.siblings(".depth01").removeClass("on");
|
|
| 16 |
+ dep01.addClass("on");
|
|
| 17 |
+ $(this).parent(".depth01").siblings().find(".depth02").slideUp(500);
|
|
| 18 |
+ $(this).attr("title", "하위메뉴 닫기");
|
|
| 19 |
+ } |
|
| 20 |
+ }); |
|
| 21 |
+ /* //메뉴 클릭 시 하위메뉴 열림 */ |
|
| 22 |
+})(No newline at end of file) |
--- src/main/webapp/publish/adm/login/login.css
+++ src/main/webapp/publish/adm/login/login.css
... | ... | @@ -1,17 +1,14 @@ |
| 1 |
-@charset "utf-8"; |
|
| 2 |
- |
|
| 3 |
-/* 로그인 */ |
|
| 4 |
-*{font-family:var(--primary-title-font);}
|
|
| 5 |
-.login_container{display:flex;width:100%;min-width:1240px;height:100vh;justify-content:center;align-items:center;padding:50px 0;box-sizing:border-box;background-color:#fbf9f7;background-image:url(/publish/adm/login/images/login_bg_left.png), url(/publish/adm/login/images/login_bg_right.png);background-position:left bottom, right top; background-repeat:no-repeat;}
|
|
| 6 |
-.login_content{display: flex; width: 1000px; height: 584px; background-color: #fff; border-radius: 30px; overflow: hidden; box-shadow: 0 0 15px rgba(0,0,0,0.2);}
|
|
| 7 |
-.login_content .left,.login_content .right{width: 50%;}
|
|
| 8 |
-.login_content .left{display: flex; flex-direction:column; justify-content: center; align-items: center; background-image: url(/publish/adm/login/images/login.jpg); background-repeat: no-repeat;}
|
|
| 9 |
-.login_content .left img{margin:50px 0 10px 0;}
|
|
| 10 |
-.login_content .right{position:relative;display:flex;justify-content:center;align-items:center;box-sizing: border-box;}
|
|
| 11 |
-.login_form_wrap{width:75%;}
|
|
| 12 |
-.login_form_wrap h2{position:relative;font-size:34px;font-weight:600;color:var(--primary-color);margin:0 0 32px 0;}
|
|
| 13 |
-.login_form{display:flex;margin:0 0 8px 0;flex-direction:column;gap:32px;}
|
|
| 14 |
-.login_form li{display:flex;flex-direction:column;gap:8px;}
|
|
| 15 |
-.login_form input{height:44px;}
|
|
| 16 |
-.btn_wrap{display:block;margin:40px 0 0 0;}
|
|
| 17 |
- |
|
| 1 |
+@charset "utf-8"; |
|
| 2 |
+ |
|
| 3 |
+/* 로그인 */ |
|
| 4 |
+.login_container{display:flex;width:100%;min-width:1240px;height:100vh;justify-content:center;align-items:center;padding:50px 0;box-sizing:border-box;background-color:#fbf9f7;background-image:url(/publish/adm/login/images/login_bg_left.png), url(/publish/adm/login/images/login_bg_right.png);background-position:left bottom, right top; background-repeat:no-repeat;}
|
|
| 5 |
+.login_content{display: flex; width: 1000px; height: 584px; background-color: #fff; border-radius: 30px; overflow: hidden; box-shadow: 0 0 15px rgba(0,0,0,0.2);}
|
|
| 6 |
+.login_content .left,.login_content .right{width: 50%;}
|
|
| 7 |
+.login_content .left{display: flex; flex-direction:column; justify-content: center; align-items: center; background-image: url(/publish/adm/login/images/login.jpg); background-repeat: no-repeat;}
|
|
| 8 |
+.login_content .left img{margin:50px 0 10px 0;}
|
|
| 9 |
+.login_content .right{position: relative; padding: 80px 50px 0 90px; box-sizing: border-box;}
|
|
| 10 |
+.login_content h2{position:relative;font-size:34px;font-weight:600;color:var(--primary-color);margin:0 0 32px 0;}
|
|
| 11 |
+.login_form{display:flex;margin:0 0 8px 0;flex-direction:column;gap:32px;}
|
|
| 12 |
+.login_form li{display:flex;flex-direction:column;gap:8px;}
|
|
| 13 |
+.btn_wrap{margin:40px 0 0 0;}
|
|
| 14 |
+ |
--- src/main/webapp/publish/adm/login/login.html
+++ src/main/webapp/publish/adm/login/login.html
... | ... | @@ -1,73 +1,73 @@ |
| 1 |
-<!DOCTYPE html> |
|
| 2 |
-<html lang="ko"> |
|
| 3 |
- |
|
| 4 |
-<head> |
|
| 5 |
- <meta charset="UTF-8"> |
|
| 6 |
- <meta name="viewport" content="width=device-width, initial-scale=1.0"> |
|
| 7 |
- <title>로그인</title> |
|
| 8 |
- |
|
| 9 |
- <!-- css --> |
|
| 10 |
- <link rel="stylesheet" href="../../../css/reset.css"> |
|
| 11 |
- <link rel="stylesheet" href="../../../css/font.css"> |
|
| 12 |
- <link rel="stylesheet" href="../css/common.css"> |
|
| 13 |
- <link rel="stylesheet" href="../css/style.css"> |
|
| 14 |
- <link rel="stylesheet" href="../css/button.css"> |
|
| 15 |
- <link rel="stylesheet" href="../css/tab.css"> |
|
| 16 |
- <link rel="stylesheet" href="../css/table.css"> |
|
| 17 |
- <link rel="stylesheet" href="../css/calendar.css"> |
|
| 18 |
- <link rel="stylesheet" href="../login/login.css" /> |
|
| 19 |
- <!-- //css --> |
|
| 20 |
- |
|
| 21 |
- <!-- script --> |
|
| 22 |
- <script src="../../../js/jquery-3.5.0.js"></script> |
|
| 23 |
- <!-- //script --> |
|
| 24 |
- |
|
| 25 |
- |
|
| 26 |
-</head> |
|
| 27 |
- |
|
| 28 |
-<body> |
|
| 29 |
- |
|
| 30 |
- <div class="login_container"> |
|
| 31 |
- |
|
| 32 |
- <div class="login_content"> |
|
| 33 |
- |
|
| 34 |
- <div class="left"> |
|
| 35 |
- <h1 class="logo"><img src="" alt="">logo</h1> |
|
| 36 |
- </div> |
|
| 37 |
- <div class="right"> |
|
| 38 |
- |
|
| 39 |
- <div class="login_form_wrap"> |
|
| 40 |
- <h2>로그인</h2> |
|
| 41 |
- <ul class="login_form"> |
|
| 42 |
- <li> |
|
| 43 |
- <strong>아이디</strong> |
|
| 44 |
- <input type="text" id="id_text" name="id_text" class="input w100per" maxlength="15" placeholder="아이디를 입력해주세요"> |
|
| 45 |
- </li> |
|
| 46 |
- <li> |
|
| 47 |
- <strong>비밀번호</strong> |
|
| 48 |
- <input type="password" autocomplete="off" id="password_text" name="password_text" class="input w100per" value="<c:out value='${password}'/>" placeholder="비밀번호를 입력해주세요." onkeydown="javascript:if (event.keyCode == 13) { actionLogin();return false; }">
|
|
| 49 |
- </li> |
|
| 50 |
- </ul> |
|
| 51 |
- <div class="form_wrap checkbox_wrap column"> |
|
| 52 |
- <label for="checkId" class="checkbox_item"> |
|
| 53 |
- <input type="checkbox" id="checkId" name="checkId"> |
|
| 54 |
- <span>아이디 저장</span> |
|
| 55 |
- </label> |
|
| 56 |
- </div> |
|
| 57 |
- |
|
| 58 |
- <div class="btn_wrap"> |
|
| 59 |
- <button type="button" class="btn fill primary xlarge w100per" id="login_submit" onclick="javascript:actionLogin();return false;">로그인</button> |
|
| 60 |
- </div> |
|
| 61 |
- |
|
| 62 |
- </div> |
|
| 63 |
- |
|
| 64 |
- </div> |
|
| 65 |
- |
|
| 66 |
- </div> |
|
| 67 |
- |
|
| 68 |
- </div> |
|
| 69 |
- |
|
| 70 |
- |
|
| 71 |
-</body> |
|
| 72 |
- |
|
| 1 |
+<!DOCTYPE html> |
|
| 2 |
+<html lang="ko"> |
|
| 3 |
+ |
|
| 4 |
+<head> |
|
| 5 |
+ <meta charset="UTF-8"> |
|
| 6 |
+ <meta name="viewport" content="width=device-width, initial-scale=1.0"> |
|
| 7 |
+ <title>로그인</title> |
|
| 8 |
+ |
|
| 9 |
+ <!-- css --> |
|
| 10 |
+ <link rel="stylesheet" href="../../../css/reset.css"> |
|
| 11 |
+ <link rel="stylesheet" href="../../../css/font.css"> |
|
| 12 |
+ <link rel="stylesheet" href="../css/common.css"> |
|
| 13 |
+ <link rel="stylesheet" href="../css/style.css"> |
|
| 14 |
+ <link rel="stylesheet" href="../css/button.css"> |
|
| 15 |
+ <link rel="stylesheet" href="../css/tab.css"> |
|
| 16 |
+ <link rel="stylesheet" href="../css/table.css"> |
|
| 17 |
+ <link rel="stylesheet" href="../css/calendar.css"> |
|
| 18 |
+ <link rel="stylesheet" href="../login/login.css" /> |
|
| 19 |
+ <!-- //css --> |
|
| 20 |
+ |
|
| 21 |
+ <!-- script --> |
|
| 22 |
+ <script src="../../../js/jquery-3.5.0.js"></script> |
|
| 23 |
+ <!-- //script --> |
|
| 24 |
+ |
|
| 25 |
+ |
|
| 26 |
+</head> |
|
| 27 |
+ |
|
| 28 |
+<body> |
|
| 29 |
+ |
|
| 30 |
+ <div class="login_container"> |
|
| 31 |
+ |
|
| 32 |
+ <div class="login_content"> |
|
| 33 |
+ |
|
| 34 |
+ <div class="left"> |
|
| 35 |
+ <h1 class="logo"><img src="" alt="">logo</h1> |
|
| 36 |
+ </div> |
|
| 37 |
+ <div class="right"> |
|
| 38 |
+ |
|
| 39 |
+ <div class="login_form_wrap"> |
|
| 40 |
+ <h2>로그인</h2> |
|
| 41 |
+ <ul class="login_form"> |
|
| 42 |
+ <li> |
|
| 43 |
+ <strong>아이디</strong> |
|
| 44 |
+ <input type="text" id="id_text" name="id_text" class="input w100per" maxlength="15" placeholder="아이디를 입력해주세요"> |
|
| 45 |
+ </li> |
|
| 46 |
+ <li> |
|
| 47 |
+ <strong>비밀번호</strong> |
|
| 48 |
+ <input type="password" autocomplete="off" id="password_text" name="password_text" class="input w100per" value="<c:out value='${password}'/>" placeholder="비밀번호를 입력해주세요." onkeydown="javascript:if (event.keyCode == 13) { actionLogin();return false; }">
|
|
| 49 |
+ </li> |
|
| 50 |
+ </ul> |
|
| 51 |
+ <div class="form_wrap checkbox_wrap column"> |
|
| 52 |
+ <label for="checkId" class="checkbox_item"> |
|
| 53 |
+ <input type="checkbox" id="checkId" name="checkId"> |
|
| 54 |
+ <span>아이디 저장</span> |
|
| 55 |
+ </label> |
|
| 56 |
+ </div> |
|
| 57 |
+ |
|
| 58 |
+ <div class="btn_wrap"> |
|
| 59 |
+ <button type="button" class="btn fill primary xlarge w100per" id="login_submit" onclick="javascript:actionLogin();return false;">로그인</button> |
|
| 60 |
+ </div> |
|
| 61 |
+ |
|
| 62 |
+ </div> |
|
| 63 |
+ |
|
| 64 |
+ </div> |
|
| 65 |
+ |
|
| 66 |
+ </div> |
|
| 67 |
+ |
|
| 68 |
+ </div> |
|
| 69 |
+ |
|
| 70 |
+ |
|
| 71 |
+</body> |
|
| 72 |
+ |
|
| 73 | 73 |
</html>(No newline at end of file) |
--- src/main/webapp/publish/adm/script/common.js
+++ src/main/webapp/publish/adm/script/common.js
... | ... | @@ -1,43 +1,43 @@ |
| 1 |
-// include 완료 후 여러 js 파일 순서대로 실행 |
|
| 2 |
-window.addEventListener('DOMContentLoaded', function () {
|
|
| 3 |
- const includeTargets = document.querySelectorAll('[data-include-path]');
|
|
| 4 |
- let includeCount = 0; |
|
| 5 |
- |
|
| 6 |
- includeTargets.forEach(el => {
|
|
| 7 |
- const includePath = el.dataset.includePath; |
|
| 8 |
- const xhttp = new XMLHttpRequest(); |
|
| 9 |
- |
|
| 10 |
- xhttp.onreadystatechange = function () {
|
|
| 11 |
- if (this.readyState === 4 && this.status === 200) {
|
|
| 12 |
- el.outerHTML = this.responseText; |
|
| 13 |
- includeCount++; |
|
| 14 |
- |
|
| 15 |
- // 모든 include 완료 시점 |
|
| 16 |
- if (includeCount === includeTargets.length) {
|
|
| 17 |
- loadScriptsSequentially([ |
|
| 18 |
- '../layout/layout.js', |
|
| 19 |
- '../script/tab.js', |
|
| 20 |
- '../script/popup.js', |
|
| 21 |
- '../script/content.js', |
|
| 22 |
- '../script/toggleCalendar.js' |
|
| 23 |
- ]); |
|
| 24 |
- } |
|
| 25 |
- } |
|
| 26 |
- }; |
|
| 27 |
- |
|
| 28 |
- xhttp.open('GET', includePath, true);
|
|
| 29 |
- xhttp.send(); |
|
| 30 |
- }); |
|
| 31 |
- |
|
| 32 |
- // 스크립트 순서대로 로드하는 함수 |
|
| 33 |
- function loadScriptsSequentially(scripts) {
|
|
| 34 |
- if (!scripts.length) return; |
|
| 35 |
- const src = scripts.shift(); |
|
| 36 |
- const script = document.createElement('script');
|
|
| 37 |
- script.src = src; |
|
| 38 |
- script.onload = () => loadScriptsSequentially(scripts); |
|
| 39 |
- document.body.appendChild(script); |
|
| 40 |
- } |
|
| 41 |
- |
|
| 42 |
- |
|
| 43 |
-}); |
|
| 1 |
+// include 완료 후 여러 js 파일 순서대로 실행 |
|
| 2 |
+window.addEventListener('DOMContentLoaded', function () {
|
|
| 3 |
+ const includeTargets = document.querySelectorAll('[data-include-path]');
|
|
| 4 |
+ let includeCount = 0; |
|
| 5 |
+ |
|
| 6 |
+ includeTargets.forEach(el => {
|
|
| 7 |
+ const includePath = el.dataset.includePath; |
|
| 8 |
+ const xhttp = new XMLHttpRequest(); |
|
| 9 |
+ |
|
| 10 |
+ xhttp.onreadystatechange = function () {
|
|
| 11 |
+ if (this.readyState === 4 && this.status === 200) {
|
|
| 12 |
+ el.outerHTML = this.responseText; |
|
| 13 |
+ includeCount++; |
|
| 14 |
+ |
|
| 15 |
+ // 모든 include 완료 시점 |
|
| 16 |
+ if (includeCount === includeTargets.length) {
|
|
| 17 |
+ loadScriptsSequentially([ |
|
| 18 |
+ '../layout/layout.js', |
|
| 19 |
+ '../script/tab.js', |
|
| 20 |
+ '../script/popup.js', |
|
| 21 |
+ '../script/content.js', |
|
| 22 |
+ '../script/toggleCalendar.js' |
|
| 23 |
+ ]); |
|
| 24 |
+ } |
|
| 25 |
+ } |
|
| 26 |
+ }; |
|
| 27 |
+ |
|
| 28 |
+ xhttp.open('GET', includePath, true);
|
|
| 29 |
+ xhttp.send(); |
|
| 30 |
+ }); |
|
| 31 |
+ |
|
| 32 |
+ // 스크립트 순서대로 로드하는 함수 |
|
| 33 |
+ function loadScriptsSequentially(scripts) {
|
|
| 34 |
+ if (!scripts.length) return; |
|
| 35 |
+ const src = scripts.shift(); |
|
| 36 |
+ const script = document.createElement('script');
|
|
| 37 |
+ script.src = src; |
|
| 38 |
+ script.onload = () => loadScriptsSequentially(scripts); |
|
| 39 |
+ document.body.appendChild(script); |
|
| 40 |
+ } |
|
| 41 |
+ |
|
| 42 |
+ |
|
| 43 |
+}); |
--- src/main/webapp/publish/adm/script/content.js
+++ src/main/webapp/publish/adm/script/content.js
... | ... | @@ -1,56 +1,56 @@ |
| 1 |
-$(function () {
|
|
| 2 |
- toggleTimeLayer(); |
|
| 3 |
-}); |
|
| 4 |
- |
|
| 5 |
-function toggleTimeLayer() {
|
|
| 6 |
- |
|
| 7 |
- // 시/분 select 옵션 생성 |
|
| 8 |
- $(".time_layer_wrap").each(function () {
|
|
| 9 |
- const $wrap = $(this); |
|
| 10 |
- createOptions($wrap.find(".hour"), 24, "");
|
|
| 11 |
- createOptions($wrap.find(".minute"), 60, "");
|
|
| 12 |
- }); |
|
| 13 |
- |
|
| 14 |
- /** 공통 옵션 생성 함수 */ |
|
| 15 |
- function createOptions($select, max, unit) {
|
|
| 16 |
- $select.empty(); |
|
| 17 |
- $select.append(`<option value="">${unit}</option>`);
|
|
| 18 |
- |
|
| 19 |
- for (let i = 0; i < max; i++) {
|
|
| 20 |
- const num = i < 10 ? "0" + i : i; |
|
| 21 |
- $select.append(`<option value="${num}">${num}${unit}</option>`);
|
|
| 22 |
- } |
|
| 23 |
- } |
|
| 24 |
- |
|
| 25 |
- // input 클릭 → 레이어 열기/닫기 |
|
| 26 |
- $(".time_input").on("click", function () {
|
|
| 27 |
- const $wrap = $(this).closest(".time_layer_wrap");
|
|
| 28 |
- const $layer = $wrap.find(".time_layer");
|
|
| 29 |
- |
|
| 30 |
- $(".time_layer").not($layer).removeClass("active"); // 다른 레이어 닫기
|
|
| 31 |
- $layer.toggleClass("active");
|
|
| 32 |
- }); |
|
| 33 |
- |
|
| 34 |
- // "확인" 버튼 클릭 → 값 적용 |
|
| 35 |
- $(".time_layer .btn").on("click", function () {
|
|
| 36 |
- const $wrap = $(this).closest(".time_layer_wrap");
|
|
| 37 |
- const hour = $wrap.find(".hour").val();
|
|
| 38 |
- const minute = $wrap.find(".minute").val();
|
|
| 39 |
- |
|
| 40 |
- if (hour === "" || minute === "") {
|
|
| 41 |
- alert("시간과 분을 모두 선택해주세요.");
|
|
| 42 |
- return; |
|
| 43 |
- } |
|
| 44 |
- |
|
| 45 |
- $wrap.find(".time_input").val(`${hour}:${minute}`);
|
|
| 46 |
- $wrap.find(".time_layer").removeClass("active");
|
|
| 47 |
- }); |
|
| 48 |
- |
|
| 49 |
- // 외부 클릭 시 레이어 닫기 |
|
| 50 |
- $(document).on("click", function (e) {
|
|
| 51 |
- if (!$(e.target).closest(".time_layer_wrap").length) {
|
|
| 52 |
- $(".time_layer").removeClass("active");
|
|
| 53 |
- } |
|
| 54 |
- }); |
|
| 55 |
- |
|
| 56 |
-} |
|
| 1 |
+$(function () {
|
|
| 2 |
+ toggleTimeLayer(); |
|
| 3 |
+}); |
|
| 4 |
+ |
|
| 5 |
+function toggleTimeLayer() {
|
|
| 6 |
+ |
|
| 7 |
+ // 시/분 select 옵션 생성 |
|
| 8 |
+ $(".time_layer_wrap").each(function () {
|
|
| 9 |
+ const $wrap = $(this); |
|
| 10 |
+ createOptions($wrap.find(".hour"), 24, "");
|
|
| 11 |
+ createOptions($wrap.find(".minute"), 60, "");
|
|
| 12 |
+ }); |
|
| 13 |
+ |
|
| 14 |
+ /** 공통 옵션 생성 함수 */ |
|
| 15 |
+ function createOptions($select, max, unit) {
|
|
| 16 |
+ $select.empty(); |
|
| 17 |
+ $select.append(`<option value="">${unit}</option>`);
|
|
| 18 |
+ |
|
| 19 |
+ for (let i = 0; i < max; i++) {
|
|
| 20 |
+ const num = i < 10 ? "0" + i : i; |
|
| 21 |
+ $select.append(`<option value="${num}">${num}${unit}</option>`);
|
|
| 22 |
+ } |
|
| 23 |
+ } |
|
| 24 |
+ |
|
| 25 |
+ // input 클릭 → 레이어 열기/닫기 |
|
| 26 |
+ $(".time_input").on("click", function () {
|
|
| 27 |
+ const $wrap = $(this).closest(".time_layer_wrap");
|
|
| 28 |
+ const $layer = $wrap.find(".time_layer");
|
|
| 29 |
+ |
|
| 30 |
+ $(".time_layer").not($layer).removeClass("active"); // 다른 레이어 닫기
|
|
| 31 |
+ $layer.toggleClass("active");
|
|
| 32 |
+ }); |
|
| 33 |
+ |
|
| 34 |
+ // "확인" 버튼 클릭 → 값 적용 |
|
| 35 |
+ $(".time_layer .btn").on("click", function () {
|
|
| 36 |
+ const $wrap = $(this).closest(".time_layer_wrap");
|
|
| 37 |
+ const hour = $wrap.find(".hour").val();
|
|
| 38 |
+ const minute = $wrap.find(".minute").val();
|
|
| 39 |
+ |
|
| 40 |
+ if (hour === "" || minute === "") {
|
|
| 41 |
+ alert("시간과 분을 모두 선택해주세요.");
|
|
| 42 |
+ return; |
|
| 43 |
+ } |
|
| 44 |
+ |
|
| 45 |
+ $wrap.find(".time_input").val(`${hour}:${minute}`);
|
|
| 46 |
+ $wrap.find(".time_layer").removeClass("active");
|
|
| 47 |
+ }); |
|
| 48 |
+ |
|
| 49 |
+ // 외부 클릭 시 레이어 닫기 |
|
| 50 |
+ $(document).on("click", function (e) {
|
|
| 51 |
+ if (!$(e.target).closest(".time_layer_wrap").length) {
|
|
| 52 |
+ $(".time_layer").removeClass("active");
|
|
| 53 |
+ } |
|
| 54 |
+ }); |
|
| 55 |
+ |
|
| 56 |
+} |
--- src/main/webapp/publish/adm/script/popup.js
+++ src/main/webapp/publish/adm/script/popup.js
... | ... | @@ -1,16 +1,16 @@ |
| 1 |
-function windowOpenPopup(url, title, w, h) {
|
|
| 2 |
- // 현재 모니터에서 팝업 위치 계산 |
|
| 3 |
- var left = window.screenLeft + (window.innerWidth - w) / 2; |
|
| 4 |
- var top = window.screenTop + (window.innerHeight - h) / 2; |
|
| 5 |
- |
|
| 6 |
- var popup = window.open( |
|
| 7 |
- url, |
|
| 8 |
- title, |
|
| 9 |
- "width=" + w + |
|
| 10 |
- ",height=" + h + |
|
| 11 |
- ",left=" + left + |
|
| 12 |
- ",top=" + top + |
|
| 13 |
- ",scrollbars=yes,resizable=yes" |
|
| 14 |
- ); |
|
| 15 |
- |
|
| 16 |
-} |
|
| 1 |
+function windowOpenPopup(url, title, w, h) {
|
|
| 2 |
+ // 현재 모니터에서 팝업 위치 계산 |
|
| 3 |
+ var left = window.screenLeft + (window.innerWidth - w) / 2; |
|
| 4 |
+ var top = window.screenTop + (window.innerHeight - h) / 2; |
|
| 5 |
+ |
|
| 6 |
+ var popup = window.open( |
|
| 7 |
+ url, |
|
| 8 |
+ title, |
|
| 9 |
+ "width=" + w + |
|
| 10 |
+ ",height=" + h + |
|
| 11 |
+ ",left=" + left + |
|
| 12 |
+ ",top=" + top + |
|
| 13 |
+ ",scrollbars=yes,resizable=yes" |
|
| 14 |
+ ); |
|
| 15 |
+ |
|
| 16 |
+} |
--- src/main/webapp/publish/adm/script/tab.js
+++ src/main/webapp/publish/adm/script/tab.js
... | ... | @@ -1,10 +1,10 @@ |
| 1 |
-$(function () {
|
|
| 2 |
- |
|
| 3 |
- $(".tab").on("click", function () {
|
|
| 4 |
- const $this = $(this); |
|
| 5 |
- const tabIndex = $this.closest("li").index(); // 현재 탭의 순서 (0부터 시작)
|
|
| 6 |
- $this.addClass("active").closest("li").siblings().find(".tab").removeClass("active");
|
|
| 7 |
- $(".tab_content").eq(tabIndex).addClass("active").siblings(".tab_content").removeClass("active");
|
|
| 8 |
- }); |
|
| 9 |
- |
|
| 10 |
-}); |
|
| 1 |
+$(function () {
|
|
| 2 |
+ |
|
| 3 |
+ $(".tab").on("click", function () {
|
|
| 4 |
+ const $this = $(this); |
|
| 5 |
+ const tabIndex = $this.closest("li").index(); // 현재 탭의 순서 (0부터 시작)
|
|
| 6 |
+ $this.addClass("active").closest("li").siblings().find(".tab").removeClass("active");
|
|
| 7 |
+ $(".tab_content").eq(tabIndex).addClass("active").siblings(".tab_content").removeClass("active");
|
|
| 8 |
+ }); |
|
| 9 |
+ |
|
| 10 |
+}); |
--- src/main/webapp/publish/adm/script/toggleCalendar.js
+++ src/main/webapp/publish/adm/script/toggleCalendar.js
... | ... | @@ -1,220 +1,220 @@ |
| 1 |
-$(window).on('load', function () {
|
|
| 2 |
- // DOM 로드 후 initDatePickers 를 실행합니다. |
|
| 3 |
- // setTimeout을 짧게 둔 이유: duet-date-picker 같은 웹컴포넌트가 |
|
| 4 |
- // 브라우저에서 hydrate(초기화) 되는 시점과 맞추기 위함입니다. |
|
| 5 |
- setTimeout(initDatePickers, 10); |
|
| 6 |
-}); |
|
| 7 |
- |
|
| 8 |
-// =================================================================== |
|
| 9 |
-// initDatePickers |
|
| 10 |
-// - 페이지 내 모든 .startDate / .endDate 요소를 찾아 순번 붙이고 |
|
| 11 |
-// duet-date-picker 관련 기능(포맷, 로컬, 키보드 입력, validation 등)을 바인딩합니다. |
|
| 12 |
-// - 동적으로 요소가 추가된 경우(예: AJAX) initDatePickers()를 |
|
| 13 |
-// 다시 호출하면 새로 추가된 요소에도 자동 적용됩니다. |
|
| 14 |
-// =================================================================== |
|
| 15 |
-function initDatePickers() {
|
|
| 16 |
- // start / end picker들을 쿼리합니다. |
|
| 17 |
- const startPickers = $(".startDate");
|
|
| 18 |
- const endPickers = $(".endDate");
|
|
| 19 |
- |
|
| 20 |
- // --------------------------------------------------------------- |
|
| 21 |
- // 1) 각 start/end에 1부터 순번 부여 |
|
| 22 |
- // .startDate -> .startDate1, .startDate2 ... |
|
| 23 |
- // 내부 duet-date__input에도 id(startDate1, ...)를 부여 (필요시) |
|
| 24 |
- // --------------------------------------------------------------- |
|
| 25 |
- startPickers.each(function (idx, itm) {
|
|
| 26 |
- $(itm).removeClass("startDate").addClass("startDate" + (idx + 1));
|
|
| 27 |
- // 내부 input id 셋팅: 스크린리더 또는 라벨 연결에 유용 |
|
| 28 |
- $(itm).find(".duet-date__input").attr("id", "startDate" + (idx + 1));
|
|
| 29 |
- $(itm).find("input[type=hidden]").attr("name","startDate"+(idx+1)+"_submit");
|
|
| 30 |
- }); |
|
| 31 |
- endPickers.each(function (idx, itm) {
|
|
| 32 |
- $(itm).removeClass("endDate").addClass("endDate" + (idx + 1));
|
|
| 33 |
- $(itm).find(".duet-date__input").attr("id", "endDate" + (idx + 1));
|
|
| 34 |
- $(itm).find("input[type=hidden]").attr("name","startDate"+(idx+1)+"_submit");
|
|
| 35 |
- }); |
|
| 36 |
- |
|
| 37 |
- // 총 페어 개수는 start / end 중 큰 쪽 기준으로 반복합니다. |
|
| 38 |
- const total = Math.max(startPickers.length, endPickers.length); |
|
| 39 |
- |
|
| 40 |
- // 각 인덱스별로 duet-date-picker 쌍에 기능을 적용합니다. |
|
| 41 |
- for (let i = 1; i <= total; i++) {
|
|
| 42 |
- const startEl = document.querySelector(".startDate" + i);
|
|
| 43 |
- const endEl = document.querySelector(".endDate" + i);
|
|
| 44 |
- |
|
| 45 |
- // ---------------------------------------------------------------- |
|
| 46 |
- // 날짜 포맷 설정 (duet 라이브러리의 dateAdapter에 연결) |
|
| 47 |
- // - parse: 문자열 -> Date |
|
| 48 |
- // - format: Date -> "YYYY.MM.DD" |
|
| 49 |
- // ---------------------------------------------------------------- |
|
| 50 |
- function setDateAdapter(target) {
|
|
| 51 |
- if (!target) return; |
|
| 52 |
- target.dateAdapter = {
|
|
| 53 |
- parse(value = "", createDate) {
|
|
| 54 |
- const parts = value.split(".");
|
|
| 55 |
- if (parts.length !== 3) return null; // 포맷이 아니면 null |
|
| 56 |
- const [y, m, d] = parts.map(Number); |
|
| 57 |
- return createDate(y, m - 1, d); // month는 0-base |
|
| 58 |
- }, |
|
| 59 |
- format(date) {
|
|
| 60 |
- return `${date.getFullYear()}.${String(date.getMonth() + 1).padStart(2, "0")}.${String(date.getDate()).padStart(2, "0")}`;
|
|
| 61 |
- }, |
|
| 62 |
- }; |
|
| 63 |
- } |
|
| 64 |
- |
|
| 65 |
- // ---------------------------------------------------------------- |
|
| 66 |
- // 한글 로컬라이제이션 설정 |
|
| 67 |
- // ---------------------------------------------------------------- |
|
| 68 |
- function setLocalization(target, type) {
|
|
| 69 |
- if (!target) return; |
|
| 70 |
- target.localization = {
|
|
| 71 |
- placeholder: type === "start" ? "시작일 선택" : "종료일 선택", |
|
| 72 |
- buttonLabel: "달력 열기", |
|
| 73 |
- selectedDateMessage: "선택된 날짜:", |
|
| 74 |
- prevMonthLabel: "이전 달", |
|
| 75 |
- nextMonthLabel: "다음 달", |
|
| 76 |
- monthSelectLabel: "월 선택", |
|
| 77 |
- yearSelectLabel: "연도 선택", |
|
| 78 |
- closeLabel: "닫기", |
|
| 79 |
- calendarHeading: "날짜 선택", |
|
| 80 |
- dayNames: ["일", "월", "화", "수", "목", "금", "토"], |
|
| 81 |
- monthNames: ["1월","2월","3월","4월","5월","6월","7월","8월","9월","10월","11월","12월"], |
|
| 82 |
- monthNamesShort: ["1월","2월","3월","4월","5월","6월","7월","8월","9월","10월","11월","12월"], |
|
| 83 |
- }; |
|
| 84 |
- } |
|
| 85 |
- |
|
| 86 |
- // ---------------------------------------------------------------- |
|
| 87 |
- // 키보드 입력 지원 (숫자만 받아서 자동으로 yyyy.mm.dd 포맷으로 만듦) |
|
| 88 |
- // - duet-date-picker.value, .duet-date__input.value, hidden.value 를 모두 동기화 |
|
| 89 |
- // - 입력 중에는 포맷을 점진적으로 적용(input 이벤트) |
|
| 90 |
- // - blur 시 유효성 검사를 통해 값 확정 |
|
| 91 |
- // ---------------------------------------------------------------- |
|
| 92 |
- function enableKeyboardInput(target) {
|
|
| 93 |
- if (!target) return; |
|
| 94 |
- const input = target.querySelector(".duet-date__input");
|
|
| 95 |
- const hidden = target.querySelector('input[type="hidden"]');
|
|
| 96 |
- |
|
| 97 |
- if (!input) return; |
|
| 98 |
- |
|
| 99 |
- // 입력 도중 포맷 해주는 로직 |
|
| 100 |
- input.addEventListener("input", function (e) {
|
|
| 101 |
- let val = e.target.value.replace(/[^0-9]/g, ""); // 숫자만 |
|
| 102 |
- // 자동으로 20251107 -> 2025.11.07 형태로 변환 |
|
| 103 |
- if (val.length > 4 && val.length <= 6) {
|
|
| 104 |
- val = val.replace(/(\d{4})(\d+)/, "$1.$2");
|
|
| 105 |
- } else if (val.length > 6) {
|
|
| 106 |
- val = val.replace(/(\d{4})(\d{2})(\d+)/, "$1.$2.$3");
|
|
| 107 |
- } |
|
| 108 |
- e.target.value = val; |
|
| 109 |
- |
|
| 110 |
- // 형식이 완성되면 duet 컴포넌트 value + hidden 동기화 |
|
| 111 |
- if (/^\d{4}\.\d{2}\.\d{2}$/.test(val)) {
|
|
| 112 |
- if (hidden) hidden.value = val; |
|
| 113 |
- // duet-date-picker 자체 value에 반영 (컴포넌트에 따라 내부 업데이트 트리거) |
|
| 114 |
- try { target.value = val; } catch (err) { /* 안정성: 일부 환경에서 읽기전용일 수 있음 */ }
|
|
| 115 |
- } |
|
| 116 |
- }); |
|
| 117 |
- |
|
| 118 |
- // blur 시 최종 확인(잘못된 형식이면 초기화) |
|
| 119 |
- input.addEventListener("blur", function (e) {
|
|
| 120 |
- const val = e.target.value; |
|
| 121 |
- if (/^\d{4}\.\d{2}\.\d{2}$/.test(val)) {
|
|
| 122 |
- if (hidden) hidden.value = val; |
|
| 123 |
- try { target.value = val; } catch (err) {}
|
|
| 124 |
- } else if (val.trim() !== "") {
|
|
| 125 |
- // 비어있지 않은데 형식이 맞지 않으면 사용자에게 알리고 초기화 |
|
| 126 |
- alert("날짜 형식은 YYYY.MM.DD 입니다.");
|
|
| 127 |
- e.target.value = ""; |
|
| 128 |
- if (hidden) hidden.value = ""; |
|
| 129 |
- try { target.value = ""; } catch (err) {}
|
|
| 130 |
- } |
|
| 131 |
- }); |
|
| 132 |
- } |
|
| 133 |
- |
|
| 134 |
- // ---------------------------------------------------------------- |
|
| 135 |
- // duetClose 이벤트 바인딩 |
|
| 136 |
- // - 달력에서 선택 후 닫힐 때 실행됨 |
|
| 137 |
- // - 이때도 input + hidden 동기화 |
|
| 138 |
- // ---------------------------------------------------------------- |
|
| 139 |
- function bindCloseEvent(target) {
|
|
| 140 |
- if (!target) return; |
|
| 141 |
- const input = target.querySelector(".duet-date__input");
|
|
| 142 |
- const hidden = target.querySelector('input[type="hidden"]');
|
|
| 143 |
- |
|
| 144 |
- // duet 컴포넌트이므로 커스텀 이벤트 duetClose를 사용 |
|
| 145 |
- target.addEventListener("duetClose", function (e) {
|
|
| 146 |
- const val = e.target.value; |
|
| 147 |
- if (val) {
|
|
| 148 |
- if (input) input.value = val; |
|
| 149 |
- if (hidden) hidden.value = val; |
|
| 150 |
- } |
|
| 151 |
- }); |
|
| 152 |
- } |
|
| 153 |
- |
|
| 154 |
- // ---------------------------------------------------------------- |
|
| 155 |
- // 시작/종료 유효성 검사 |
|
| 156 |
- // - endEl 이 없으면 검사 스킵 |
|
| 157 |
- // - duetChange 시 (값이 확정될 때) 검사 |
|
| 158 |
- // ---------------------------------------------------------------- |
|
| 159 |
- function bindDateValidation(startEl, endEl) {
|
|
| 160 |
- if (!startEl || !endEl) return; |
|
| 161 |
- const startInput = startEl.querySelector(".duet-date__input");
|
|
| 162 |
- const endInput = endEl.querySelector(".duet-date__input");
|
|
| 163 |
- |
|
| 164 |
- if (startEl) {
|
|
| 165 |
- startEl.addEventListener("duetChange", function () {
|
|
| 166 |
- const sVal = (startInput?.value || "").replace(/\./g, ""); |
|
| 167 |
- const eVal = (endInput?.value || "").replace(/\./g, ""); |
|
| 168 |
- if (sVal && eVal && sVal > eVal) {
|
|
| 169 |
- alert("시작일은 종료일보다 클 수 없습니다.");
|
|
| 170 |
- if (startInput) startInput.value = ""; |
|
| 171 |
- try { startEl.value = ""; } catch (err) {}
|
|
| 172 |
- } |
|
| 173 |
- }); |
|
| 174 |
- } |
|
| 175 |
- |
|
| 176 |
- if (endEl) {
|
|
| 177 |
- endEl.addEventListener("duetChange", function () {
|
|
| 178 |
- const sVal = (startInput?.value || "").replace(/\./g, ""); |
|
| 179 |
- const eVal = (endInput?.value || "").replace(/\./g, ""); |
|
| 180 |
- if (sVal && eVal && eVal < sVal) {
|
|
| 181 |
- alert("종료일은 시작일보다 작을 수 없습니다.");
|
|
| 182 |
- if (endInput) endInput.value = ""; |
|
| 183 |
- try { endEl.value = ""; } catch (err) {}
|
|
| 184 |
- } |
|
| 185 |
- }); |
|
| 186 |
- } |
|
| 187 |
- } |
|
| 188 |
- |
|
| 189 |
- // ---------------------------------------------------------------- |
|
| 190 |
- // 모든 기능 적용 |
|
| 191 |
- // - setDateAdapter / setLocalization 은 duet 컴포넌트 내부 동작을 위해 필수 |
|
| 192 |
- // - enableKeyboardInput / bindCloseEvent 은 우리가 추가한 동기화 로직 |
|
| 193 |
- // - bindDateValidation 은 쌍이 있을 때만 적용 |
|
| 194 |
- // ---------------------------------------------------------------- |
|
| 195 |
- setDateAdapter(startEl); |
|
| 196 |
- setDateAdapter(endEl); |
|
| 197 |
- |
|
| 198 |
- setLocalization(startEl, "start"); |
|
| 199 |
- setLocalization(endEl, "end"); |
|
| 200 |
- |
|
| 201 |
- enableKeyboardInput(startEl); |
|
| 202 |
- enableKeyboardInput(endEl); |
|
| 203 |
- |
|
| 204 |
- bindCloseEvent(startEl); |
|
| 205 |
- bindCloseEvent(endEl); |
|
| 206 |
- |
|
| 207 |
- bindDateValidation(startEl, endEl); |
|
| 208 |
- } |
|
| 209 |
-} |
|
| 210 |
- |
|
| 211 |
-// =================================================================== |
|
| 212 |
-// 사용/주의사항 |
|
| 213 |
-// 1) 동적 추가: AJAX나 JS로 duet-date-picker 를 추가한 경우, |
|
| 214 |
-// 추가 후 initDatePickers() 를 다시 호출하면 자동으로 바인딩됩니다. |
|
| 215 |
-// 2) duet-date-picker 내부 구조가 달라지면 (예: .duet-date__input 클래스 변경) |
|
| 216 |
-// 선택자(input / hidden)들을 그에 맞게 수정해야 합니다. |
|
| 217 |
-// 3) monthNames 배열은 12개로 반드시 채워야 합니다 (렌더링 에러 방지). |
|
| 218 |
-// 4) 일부 duet-date-picker 구현은 target.value 가 읽기전용일 수 있습니다. |
|
| 219 |
-// 그 경우 try/catch로 보호해두었습니다(오류 무시). |
|
| 220 |
-// =================================================================== |
|
| 1 |
+$(window).on('load', function () {
|
|
| 2 |
+ // DOM 로드 후 initDatePickers 를 실행합니다. |
|
| 3 |
+ // setTimeout을 짧게 둔 이유: duet-date-picker 같은 웹컴포넌트가 |
|
| 4 |
+ // 브라우저에서 hydrate(초기화) 되는 시점과 맞추기 위함입니다. |
|
| 5 |
+ setTimeout(initDatePickers, 10); |
|
| 6 |
+}); |
|
| 7 |
+ |
|
| 8 |
+// =================================================================== |
|
| 9 |
+// initDatePickers |
|
| 10 |
+// - 페이지 내 모든 .startDate / .endDate 요소를 찾아 순번 붙이고 |
|
| 11 |
+// duet-date-picker 관련 기능(포맷, 로컬, 키보드 입력, validation 등)을 바인딩합니다. |
|
| 12 |
+// - 동적으로 요소가 추가된 경우(예: AJAX) initDatePickers()를 |
|
| 13 |
+// 다시 호출하면 새로 추가된 요소에도 자동 적용됩니다. |
|
| 14 |
+// =================================================================== |
|
| 15 |
+function initDatePickers() {
|
|
| 16 |
+ // start / end picker들을 쿼리합니다. |
|
| 17 |
+ const startPickers = $(".startDate");
|
|
| 18 |
+ const endPickers = $(".endDate");
|
|
| 19 |
+ |
|
| 20 |
+ // --------------------------------------------------------------- |
|
| 21 |
+ // 1) 각 start/end에 1부터 순번 부여 |
|
| 22 |
+ // .startDate -> .startDate1, .startDate2 ... |
|
| 23 |
+ // 내부 duet-date__input에도 id(startDate1, ...)를 부여 (필요시) |
|
| 24 |
+ // --------------------------------------------------------------- |
|
| 25 |
+ startPickers.each(function (idx, itm) {
|
|
| 26 |
+ $(itm).removeClass("startDate").addClass("startDate" + (idx + 1));
|
|
| 27 |
+ // 내부 input id 셋팅: 스크린리더 또는 라벨 연결에 유용 |
|
| 28 |
+ $(itm).find(".duet-date__input").attr("id", "startDate" + (idx + 1));
|
|
| 29 |
+ $(itm).find("input[type=hidden]").attr("name","startDate"+(idx+1)+"_submit");
|
|
| 30 |
+ }); |
|
| 31 |
+ endPickers.each(function (idx, itm) {
|
|
| 32 |
+ $(itm).removeClass("endDate").addClass("endDate" + (idx + 1));
|
|
| 33 |
+ $(itm).find(".duet-date__input").attr("id", "endDate" + (idx + 1));
|
|
| 34 |
+ $(itm).find("input[type=hidden]").attr("name","startDate"+(idx+1)+"_submit");
|
|
| 35 |
+ }); |
|
| 36 |
+ |
|
| 37 |
+ // 총 페어 개수는 start / end 중 큰 쪽 기준으로 반복합니다. |
|
| 38 |
+ const total = Math.max(startPickers.length, endPickers.length); |
|
| 39 |
+ |
|
| 40 |
+ // 각 인덱스별로 duet-date-picker 쌍에 기능을 적용합니다. |
|
| 41 |
+ for (let i = 1; i <= total; i++) {
|
|
| 42 |
+ const startEl = document.querySelector(".startDate" + i);
|
|
| 43 |
+ const endEl = document.querySelector(".endDate" + i);
|
|
| 44 |
+ |
|
| 45 |
+ // ---------------------------------------------------------------- |
|
| 46 |
+ // 날짜 포맷 설정 (duet 라이브러리의 dateAdapter에 연결) |
|
| 47 |
+ // - parse: 문자열 -> Date |
|
| 48 |
+ // - format: Date -> "YYYY.MM.DD" |
|
| 49 |
+ // ---------------------------------------------------------------- |
|
| 50 |
+ function setDateAdapter(target) {
|
|
| 51 |
+ if (!target) return; |
|
| 52 |
+ target.dateAdapter = {
|
|
| 53 |
+ parse(value = "", createDate) {
|
|
| 54 |
+ const parts = value.split(".");
|
|
| 55 |
+ if (parts.length !== 3) return null; // 포맷이 아니면 null |
|
| 56 |
+ const [y, m, d] = parts.map(Number); |
|
| 57 |
+ return createDate(y, m - 1, d); // month는 0-base |
|
| 58 |
+ }, |
|
| 59 |
+ format(date) {
|
|
| 60 |
+ return `${date.getFullYear()}.${String(date.getMonth() + 1).padStart(2, "0")}.${String(date.getDate()).padStart(2, "0")}`;
|
|
| 61 |
+ }, |
|
| 62 |
+ }; |
|
| 63 |
+ } |
|
| 64 |
+ |
|
| 65 |
+ // ---------------------------------------------------------------- |
|
| 66 |
+ // 한글 로컬라이제이션 설정 |
|
| 67 |
+ // ---------------------------------------------------------------- |
|
| 68 |
+ function setLocalization(target, type) {
|
|
| 69 |
+ if (!target) return; |
|
| 70 |
+ target.localization = {
|
|
| 71 |
+ placeholder: type === "start" ? "시작일 선택" : "종료일 선택", |
|
| 72 |
+ buttonLabel: "달력 열기", |
|
| 73 |
+ selectedDateMessage: "선택된 날짜:", |
|
| 74 |
+ prevMonthLabel: "이전 달", |
|
| 75 |
+ nextMonthLabel: "다음 달", |
|
| 76 |
+ monthSelectLabel: "월 선택", |
|
| 77 |
+ yearSelectLabel: "연도 선택", |
|
| 78 |
+ closeLabel: "닫기", |
|
| 79 |
+ calendarHeading: "날짜 선택", |
|
| 80 |
+ dayNames: ["일", "월", "화", "수", "목", "금", "토"], |
|
| 81 |
+ monthNames: ["1월","2월","3월","4월","5월","6월","7월","8월","9월","10월","11월","12월"], |
|
| 82 |
+ monthNamesShort: ["1월","2월","3월","4월","5월","6월","7월","8월","9월","10월","11월","12월"], |
|
| 83 |
+ }; |
|
| 84 |
+ } |
|
| 85 |
+ |
|
| 86 |
+ // ---------------------------------------------------------------- |
|
| 87 |
+ // 키보드 입력 지원 (숫자만 받아서 자동으로 yyyy.mm.dd 포맷으로 만듦) |
|
| 88 |
+ // - duet-date-picker.value, .duet-date__input.value, hidden.value 를 모두 동기화 |
|
| 89 |
+ // - 입력 중에는 포맷을 점진적으로 적용(input 이벤트) |
|
| 90 |
+ // - blur 시 유효성 검사를 통해 값 확정 |
|
| 91 |
+ // ---------------------------------------------------------------- |
|
| 92 |
+ function enableKeyboardInput(target) {
|
|
| 93 |
+ if (!target) return; |
|
| 94 |
+ const input = target.querySelector(".duet-date__input");
|
|
| 95 |
+ const hidden = target.querySelector('input[type="hidden"]');
|
|
| 96 |
+ |
|
| 97 |
+ if (!input) return; |
|
| 98 |
+ |
|
| 99 |
+ // 입력 도중 포맷 해주는 로직 |
|
| 100 |
+ input.addEventListener("input", function (e) {
|
|
| 101 |
+ let val = e.target.value.replace(/[^0-9]/g, ""); // 숫자만 |
|
| 102 |
+ // 자동으로 20251107 -> 2025.11.07 형태로 변환 |
|
| 103 |
+ if (val.length > 4 && val.length <= 6) {
|
|
| 104 |
+ val = val.replace(/(\d{4})(\d+)/, "$1.$2");
|
|
| 105 |
+ } else if (val.length > 6) {
|
|
| 106 |
+ val = val.replace(/(\d{4})(\d{2})(\d+)/, "$1.$2.$3");
|
|
| 107 |
+ } |
|
| 108 |
+ e.target.value = val; |
|
| 109 |
+ |
|
| 110 |
+ // 형식이 완성되면 duet 컴포넌트 value + hidden 동기화 |
|
| 111 |
+ if (/^\d{4}\.\d{2}\.\d{2}$/.test(val)) {
|
|
| 112 |
+ if (hidden) hidden.value = val; |
|
| 113 |
+ // duet-date-picker 자체 value에 반영 (컴포넌트에 따라 내부 업데이트 트리거) |
|
| 114 |
+ try { target.value = val; } catch (err) { /* 안정성: 일부 환경에서 읽기전용일 수 있음 */ }
|
|
| 115 |
+ } |
|
| 116 |
+ }); |
|
| 117 |
+ |
|
| 118 |
+ // blur 시 최종 확인(잘못된 형식이면 초기화) |
|
| 119 |
+ input.addEventListener("blur", function (e) {
|
|
| 120 |
+ const val = e.target.value; |
|
| 121 |
+ if (/^\d{4}\.\d{2}\.\d{2}$/.test(val)) {
|
|
| 122 |
+ if (hidden) hidden.value = val; |
|
| 123 |
+ try { target.value = val; } catch (err) {}
|
|
| 124 |
+ } else if (val.trim() !== "") {
|
|
| 125 |
+ // 비어있지 않은데 형식이 맞지 않으면 사용자에게 알리고 초기화 |
|
| 126 |
+ alert("날짜 형식은 YYYY.MM.DD 입니다.");
|
|
| 127 |
+ e.target.value = ""; |
|
| 128 |
+ if (hidden) hidden.value = ""; |
|
| 129 |
+ try { target.value = ""; } catch (err) {}
|
|
| 130 |
+ } |
|
| 131 |
+ }); |
|
| 132 |
+ } |
|
| 133 |
+ |
|
| 134 |
+ // ---------------------------------------------------------------- |
|
| 135 |
+ // duetClose 이벤트 바인딩 |
|
| 136 |
+ // - 달력에서 선택 후 닫힐 때 실행됨 |
|
| 137 |
+ // - 이때도 input + hidden 동기화 |
|
| 138 |
+ // ---------------------------------------------------------------- |
|
| 139 |
+ function bindCloseEvent(target) {
|
|
| 140 |
+ if (!target) return; |
|
| 141 |
+ const input = target.querySelector(".duet-date__input");
|
|
| 142 |
+ const hidden = target.querySelector('input[type="hidden"]');
|
|
| 143 |
+ |
|
| 144 |
+ // duet 컴포넌트이므로 커스텀 이벤트 duetClose를 사용 |
|
| 145 |
+ target.addEventListener("duetClose", function (e) {
|
|
| 146 |
+ const val = e.target.value; |
|
| 147 |
+ if (val) {
|
|
| 148 |
+ if (input) input.value = val; |
|
| 149 |
+ if (hidden) hidden.value = val; |
|
| 150 |
+ } |
|
| 151 |
+ }); |
|
| 152 |
+ } |
|
| 153 |
+ |
|
| 154 |
+ // ---------------------------------------------------------------- |
|
| 155 |
+ // 시작/종료 유효성 검사 |
|
| 156 |
+ // - endEl 이 없으면 검사 스킵 |
|
| 157 |
+ // - duetChange 시 (값이 확정될 때) 검사 |
|
| 158 |
+ // ---------------------------------------------------------------- |
|
| 159 |
+ function bindDateValidation(startEl, endEl) {
|
|
| 160 |
+ if (!startEl || !endEl) return; |
|
| 161 |
+ const startInput = startEl.querySelector(".duet-date__input");
|
|
| 162 |
+ const endInput = endEl.querySelector(".duet-date__input");
|
|
| 163 |
+ |
|
| 164 |
+ if (startEl) {
|
|
| 165 |
+ startEl.addEventListener("duetChange", function () {
|
|
| 166 |
+ const sVal = (startInput?.value || "").replace(/\./g, ""); |
|
| 167 |
+ const eVal = (endInput?.value || "").replace(/\./g, ""); |
|
| 168 |
+ if (sVal && eVal && sVal > eVal) {
|
|
| 169 |
+ alert("시작일은 종료일보다 클 수 없습니다.");
|
|
| 170 |
+ if (startInput) startInput.value = ""; |
|
| 171 |
+ try { startEl.value = ""; } catch (err) {}
|
|
| 172 |
+ } |
|
| 173 |
+ }); |
|
| 174 |
+ } |
|
| 175 |
+ |
|
| 176 |
+ if (endEl) {
|
|
| 177 |
+ endEl.addEventListener("duetChange", function () {
|
|
| 178 |
+ const sVal = (startInput?.value || "").replace(/\./g, ""); |
|
| 179 |
+ const eVal = (endInput?.value || "").replace(/\./g, ""); |
|
| 180 |
+ if (sVal && eVal && eVal < sVal) {
|
|
| 181 |
+ alert("종료일은 시작일보다 작을 수 없습니다.");
|
|
| 182 |
+ if (endInput) endInput.value = ""; |
|
| 183 |
+ try { endEl.value = ""; } catch (err) {}
|
|
| 184 |
+ } |
|
| 185 |
+ }); |
|
| 186 |
+ } |
|
| 187 |
+ } |
|
| 188 |
+ |
|
| 189 |
+ // ---------------------------------------------------------------- |
|
| 190 |
+ // 모든 기능 적용 |
|
| 191 |
+ // - setDateAdapter / setLocalization 은 duet 컴포넌트 내부 동작을 위해 필수 |
|
| 192 |
+ // - enableKeyboardInput / bindCloseEvent 은 우리가 추가한 동기화 로직 |
|
| 193 |
+ // - bindDateValidation 은 쌍이 있을 때만 적용 |
|
| 194 |
+ // ---------------------------------------------------------------- |
|
| 195 |
+ setDateAdapter(startEl); |
|
| 196 |
+ setDateAdapter(endEl); |
|
| 197 |
+ |
|
| 198 |
+ setLocalization(startEl, "start"); |
|
| 199 |
+ setLocalization(endEl, "end"); |
|
| 200 |
+ |
|
| 201 |
+ enableKeyboardInput(startEl); |
|
| 202 |
+ enableKeyboardInput(endEl); |
|
| 203 |
+ |
|
| 204 |
+ bindCloseEvent(startEl); |
|
| 205 |
+ bindCloseEvent(endEl); |
|
| 206 |
+ |
|
| 207 |
+ bindDateValidation(startEl, endEl); |
|
| 208 |
+ } |
|
| 209 |
+} |
|
| 210 |
+ |
|
| 211 |
+// =================================================================== |
|
| 212 |
+// 사용/주의사항 |
|
| 213 |
+// 1) 동적 추가: AJAX나 JS로 duet-date-picker 를 추가한 경우, |
|
| 214 |
+// 추가 후 initDatePickers() 를 다시 호출하면 자동으로 바인딩됩니다. |
|
| 215 |
+// 2) duet-date-picker 내부 구조가 달라지면 (예: .duet-date__input 클래스 변경) |
|
| 216 |
+// 선택자(input / hidden)들을 그에 맞게 수정해야 합니다. |
|
| 217 |
+// 3) monthNames 배열은 12개로 반드시 채워야 합니다 (렌더링 에러 방지). |
|
| 218 |
+// 4) 일부 duet-date-picker 구현은 target.value 가 읽기전용일 수 있습니다. |
|
| 219 |
+// 그 경우 try/catch로 보호해두었습니다(오류 무시). |
|
| 220 |
+// =================================================================== |
--- src/main/webapp/publish/common/css/reset.css
+++ src/main/webapp/publish/common/css/reset.css
... | ... | @@ -1,210 +1,210 @@ |
| 1 |
-/* ======================================================================== |
|
| 2 |
- reset.css — 2025 |
|
| 3 |
- 작성자: 정수빈 |
|
| 4 |
- 날짜: 2025-10-17 |
|
| 5 |
- ======================================================================== */ |
|
| 6 |
- |
|
| 7 |
-/* box-sizing & 기본 리셋 */ |
|
| 8 |
-*, *::before, *::after {
|
|
| 9 |
- box-sizing: border-box; |
|
| 10 |
- margin: 0; |
|
| 11 |
- padding: 0; |
|
| 12 |
-} |
|
| 13 |
- |
|
| 14 |
-/* HTML5 요소 기본 표시 보장 */ |
|
| 15 |
-article, aside, details, figcaption, figure, |
|
| 16 |
-footer, header, hgroup, menu, nav, section, main {
|
|
| 17 |
- display: block; |
|
| 18 |
-} |
|
| 19 |
- |
|
| 20 |
-/* root 설정 */ |
|
| 21 |
-html {
|
|
| 22 |
- scroll-behavior: smooth; |
|
| 23 |
- -webkit-text-size-adjust: 100%; |
|
| 24 |
- font-size: 16px; |
|
| 25 |
-} |
|
| 26 |
- |
|
| 27 |
-body {
|
|
| 28 |
- min-height: 100vh; |
|
| 29 |
- line-height: 1.5; |
|
| 30 |
- font-family: 'Noto Sans KR', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif; |
|
| 31 |
- -webkit-font-smoothing: antialiased; |
|
| 32 |
- -moz-osx-font-smoothing: grayscale; |
|
| 33 |
- letter-spacing: -0.35px; |
|
| 34 |
- color: #222; |
|
| 35 |
- background-color: #fff; |
|
| 36 |
-} |
|
| 37 |
- |
|
| 38 |
-/* 텍스트 요소 */ |
|
| 39 |
-h1, h2, h3, h4, h5, h6, p {
|
|
| 40 |
- font-weight: inherit; |
|
| 41 |
- font-size: inherit; |
|
| 42 |
- color: inherit; |
|
| 43 |
- margin: 0; |
|
| 44 |
- padding: 0; |
|
| 45 |
-} |
|
| 46 |
- |
|
| 47 |
-a {
|
|
| 48 |
- color: inherit; |
|
| 49 |
- text-decoration: none; |
|
| 50 |
- display: inline-block; |
|
| 51 |
-} |
|
| 52 |
-a:focus-visible {
|
|
| 53 |
- outline: 2px solid #222; |
|
| 54 |
- outline-offset: 3px; |
|
| 55 |
-} |
|
| 56 |
- |
|
| 57 |
-/* 리스트 */ |
|
| 58 |
-ol, ul {
|
|
| 59 |
- list-style: none; |
|
| 60 |
-} |
|
| 61 |
- |
|
| 62 |
-/* 이미지 및 미디어 */ |
|
| 63 |
-img, picture, video, canvas, svg {
|
|
| 64 |
- display: block; |
|
| 65 |
- max-width: 100%; |
|
| 66 |
- height: auto; |
|
| 67 |
- border: 0; |
|
| 68 |
- font-size: 0; |
|
| 69 |
-} |
|
| 70 |
- |
|
| 71 |
-/* 표 */ |
|
| 72 |
-table {
|
|
| 73 |
- border-collapse: collapse; |
|
| 74 |
- border-spacing: 0; |
|
| 75 |
- table-layout: fixed; |
|
| 76 |
- width: 100%; |
|
| 77 |
-} |
|
| 78 |
- |
|
| 79 |
-/* 폼 요소 */ |
|
| 80 |
-button, input, select, textarea {
|
|
| 81 |
- font: inherit; |
|
| 82 |
- color: inherit; |
|
| 83 |
- border: none; |
|
| 84 |
- background: none; |
|
| 85 |
- margin: 0; |
|
| 86 |
- padding: 0; |
|
| 87 |
- vertical-align: middle; |
|
| 88 |
- |
|
| 89 |
- appearance: none; |
|
| 90 |
-} |
|
| 91 |
- |
|
| 92 |
-/* 라디오, 체크박스는 appearance 제거 금지 (기본 표시 유지) */ |
|
| 93 |
-input[type="radio"], |
|
| 94 |
-input[type="checkbox"] {
|
|
| 95 |
- appearance: auto; |
|
| 96 |
- -webkit-appearance: auto; |
|
| 97 |
- -moz-appearance: auto; |
|
| 98 |
- display: inline-block; |
|
| 99 |
- width: auto; |
|
| 100 |
- height: auto; |
|
| 101 |
- cursor: pointer; |
|
| 102 |
- vertical-align: middle; |
|
| 103 |
-} |
|
| 104 |
- |
|
| 105 |
-button {
|
|
| 106 |
- cursor: pointer; |
|
| 107 |
- background: transparent; |
|
| 108 |
-} |
|
| 109 |
- |
|
| 110 |
-input::placeholder, |
|
| 111 |
-textarea::placeholder {
|
|
| 112 |
- color: #777; |
|
| 113 |
- font-weight: 400; |
|
| 114 |
- font-size:14px; |
|
| 115 |
-} |
|
| 116 |
- |
|
| 117 |
-input:disabled, |
|
| 118 |
-input:read-only, |
|
| 119 |
-textarea:disabled, |
|
| 120 |
-textarea:read-only, |
|
| 121 |
-select:disabled, |
|
| 122 |
-select:read-only |
|
| 123 |
-input.readonly, |
|
| 124 |
-textarea.readonly, |
|
| 125 |
-select.readonly{
|
|
| 126 |
- background-color: var(--disable-fill-bg-color) !important; |
|
| 127 |
- color: var(--disable-fill-text-color) !important; |
|
| 128 |
- border: 1px solid var(--disable-fill-line-color) !important; |
|
| 129 |
- cursor: not-allowed; |
|
| 130 |
-} |
|
| 131 |
- |
|
| 132 |
-/* 접근성 - label 숨김 처리 */ |
|
| 133 |
-caption,.caption, .label, .sr-only, .visually-hidden {
|
|
| 134 |
- position: absolute; |
|
| 135 |
- width: 1px; |
|
| 136 |
- height: 1px; |
|
| 137 |
- padding: 0; |
|
| 138 |
- margin: -1px; |
|
| 139 |
- overflow: hidden; |
|
| 140 |
- clip: rect(0, 0, 0, 0); |
|
| 141 |
- white-space: nowrap; |
|
| 142 |
- border: 0; |
|
| 143 |
-} |
|
| 144 |
- |
|
| 145 |
-/* 스크롤바 커스터마이징 */ |
|
| 146 |
-::-webkit-scrollbar {
|
|
| 147 |
- width: 7px; |
|
| 148 |
- height: 7px; |
|
| 149 |
-} |
|
| 150 |
-::-webkit-scrollbar-thumb {
|
|
| 151 |
- background: #adadad; |
|
| 152 |
- border-radius: 10px; |
|
| 153 |
-} |
|
| 154 |
-::-webkit-scrollbar-track {
|
|
| 155 |
- background: transparent; |
|
| 156 |
-} |
|
| 157 |
- |
|
| 158 |
-/* 인용, 기타 */ |
|
| 159 |
-blockquote, q {
|
|
| 160 |
- quotes: none; |
|
| 161 |
-} |
|
| 162 |
-blockquote::before, blockquote::after, |
|
| 163 |
-q::before, q::after {
|
|
| 164 |
- content: ''; |
|
| 165 |
-} |
|
| 166 |
- |
|
| 167 |
-/* 폼 예외 처리 */ |
|
| 168 |
-input[type="search"]::-webkit-search-cancel-button, |
|
| 169 |
-input[type="search"]::-webkit-search-decoration {
|
|
| 170 |
- appearance: none; |
|
| 171 |
-} |
|
| 172 |
- |
|
| 173 |
-/* 주소, 이탤릭 등 */ |
|
| 174 |
-address, em, i {
|
|
| 175 |
- font-style: normal; |
|
| 176 |
-} |
|
| 177 |
- |
|
| 178 |
-/* hr */ |
|
| 179 |
-hr {
|
|
| 180 |
- border: none; |
|
| 181 |
- height: 1px; |
|
| 182 |
- background: #e0e0e0; |
|
| 183 |
- margin: 0; |
|
| 184 |
-} |
|
| 185 |
- |
|
| 186 |
-/* 텍스트영역 기본 */ |
|
| 187 |
-textarea {
|
|
| 188 |
- resize: vertical; |
|
| 189 |
- color: #333; |
|
| 190 |
-} |
|
| 191 |
- |
|
| 192 |
-/* 접근성: 모션 줄이기 선호 시 */ |
|
| 193 |
-@media (prefers-reduced-motion: reduce) {
|
|
| 194 |
- *, *::before, *::after {
|
|
| 195 |
- animation-duration: 0.001ms !important; |
|
| 196 |
- transition-duration: 0.001ms !important; |
|
| 197 |
- scroll-behavior: auto !important; |
|
| 198 |
- } |
|
| 199 |
-} |
|
| 200 |
- |
|
| 201 |
-/* 다크모드 기본 대응 */ |
|
| 202 |
-@media (prefers-color-scheme: dark) {
|
|
| 203 |
- body {
|
|
| 204 |
- color: #e6e6e6; |
|
| 205 |
- background-color: #111; |
|
| 206 |
- } |
|
| 207 |
- ::-webkit-scrollbar-thumb {
|
|
| 208 |
- background: #666; |
|
| 209 |
- } |
|
| 210 |
-} |
|
| 1 |
+/* ======================================================================== |
|
| 2 |
+ reset.css — 2025 |
|
| 3 |
+ 작성자: 정수빈 |
|
| 4 |
+ 날짜: 2025-10-17 |
|
| 5 |
+ ======================================================================== */ |
|
| 6 |
+ |
|
| 7 |
+/* box-sizing & 기본 리셋 */ |
|
| 8 |
+*, *::before, *::after {
|
|
| 9 |
+ box-sizing: border-box; |
|
| 10 |
+ margin: 0; |
|
| 11 |
+ padding: 0; |
|
| 12 |
+} |
|
| 13 |
+ |
|
| 14 |
+/* HTML5 요소 기본 표시 보장 */ |
|
| 15 |
+article, aside, details, figcaption, figure, |
|
| 16 |
+footer, header, hgroup, menu, nav, section, main {
|
|
| 17 |
+ display: block; |
|
| 18 |
+} |
|
| 19 |
+ |
|
| 20 |
+/* root 설정 */ |
|
| 21 |
+html {
|
|
| 22 |
+ scroll-behavior: smooth; |
|
| 23 |
+ -webkit-text-size-adjust: 100%; |
|
| 24 |
+ font-size: 16px; |
|
| 25 |
+} |
|
| 26 |
+ |
|
| 27 |
+body {
|
|
| 28 |
+ min-height: 100vh; |
|
| 29 |
+ line-height: 1.5; |
|
| 30 |
+ font-family: 'Noto Sans KR', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif; |
|
| 31 |
+ -webkit-font-smoothing: antialiased; |
|
| 32 |
+ -moz-osx-font-smoothing: grayscale; |
|
| 33 |
+ letter-spacing: -0.35px; |
|
| 34 |
+ color: #222; |
|
| 35 |
+ background-color: #fff; |
|
| 36 |
+} |
|
| 37 |
+ |
|
| 38 |
+/* 텍스트 요소 */ |
|
| 39 |
+h1, h2, h3, h4, h5, h6, p {
|
|
| 40 |
+ font-weight: inherit; |
|
| 41 |
+ font-size: inherit; |
|
| 42 |
+ color: inherit; |
|
| 43 |
+ margin: 0; |
|
| 44 |
+ padding: 0; |
|
| 45 |
+} |
|
| 46 |
+ |
|
| 47 |
+a {
|
|
| 48 |
+ color: inherit; |
|
| 49 |
+ text-decoration: none; |
|
| 50 |
+ display: inline-block; |
|
| 51 |
+} |
|
| 52 |
+a:focus-visible {
|
|
| 53 |
+ outline: 2px solid #222; |
|
| 54 |
+ outline-offset: 3px; |
|
| 55 |
+} |
|
| 56 |
+ |
|
| 57 |
+/* 리스트 */ |
|
| 58 |
+ol, ul {
|
|
| 59 |
+ list-style: none; |
|
| 60 |
+} |
|
| 61 |
+ |
|
| 62 |
+/* 이미지 및 미디어 */ |
|
| 63 |
+img, picture, video, canvas, svg {
|
|
| 64 |
+ display: block; |
|
| 65 |
+ max-width: 100%; |
|
| 66 |
+ height: auto; |
|
| 67 |
+ border: 0; |
|
| 68 |
+ font-size: 0; |
|
| 69 |
+} |
|
| 70 |
+ |
|
| 71 |
+/* 표 */ |
|
| 72 |
+table {
|
|
| 73 |
+ border-collapse: collapse; |
|
| 74 |
+ border-spacing: 0; |
|
| 75 |
+ table-layout: fixed; |
|
| 76 |
+ width: 100%; |
|
| 77 |
+} |
|
| 78 |
+ |
|
| 79 |
+/* 폼 요소 */ |
|
| 80 |
+button, input, select, textarea {
|
|
| 81 |
+ font: inherit; |
|
| 82 |
+ color: inherit; |
|
| 83 |
+ border: none; |
|
| 84 |
+ background: none; |
|
| 85 |
+ margin: 0; |
|
| 86 |
+ padding: 0; |
|
| 87 |
+ vertical-align: middle; |
|
| 88 |
+ |
|
| 89 |
+ appearance: none; |
|
| 90 |
+} |
|
| 91 |
+ |
|
| 92 |
+/* 라디오, 체크박스는 appearance 제거 금지 (기본 표시 유지) */ |
|
| 93 |
+input[type="radio"], |
|
| 94 |
+input[type="checkbox"] {
|
|
| 95 |
+ appearance: auto; |
|
| 96 |
+ -webkit-appearance: auto; |
|
| 97 |
+ -moz-appearance: auto; |
|
| 98 |
+ display: inline-block; |
|
| 99 |
+ width: auto; |
|
| 100 |
+ height: auto; |
|
| 101 |
+ cursor: pointer; |
|
| 102 |
+ vertical-align: middle; |
|
| 103 |
+} |
|
| 104 |
+ |
|
| 105 |
+button {
|
|
| 106 |
+ cursor: pointer; |
|
| 107 |
+ background: transparent; |
|
| 108 |
+} |
|
| 109 |
+ |
|
| 110 |
+input::placeholder, |
|
| 111 |
+textarea::placeholder {
|
|
| 112 |
+ color: #777; |
|
| 113 |
+ font-weight: 400; |
|
| 114 |
+ font-size:14px; |
|
| 115 |
+} |
|
| 116 |
+ |
|
| 117 |
+input:disabled, |
|
| 118 |
+input:read-only, |
|
| 119 |
+textarea:disabled, |
|
| 120 |
+textarea:read-only, |
|
| 121 |
+select:disabled, |
|
| 122 |
+select:read-only |
|
| 123 |
+input.readonly, |
|
| 124 |
+textarea.readonly, |
|
| 125 |
+select.readonly{
|
|
| 126 |
+ background-color: var(--disable-fill-bg-color) !important; |
|
| 127 |
+ color: var(--disable-fill-text-color) !important; |
|
| 128 |
+ border: 1px solid var(--disable-fill-line-color) !important; |
|
| 129 |
+ cursor: not-allowed; |
|
| 130 |
+} |
|
| 131 |
+ |
|
| 132 |
+/* 접근성 - label 숨김 처리 */ |
|
| 133 |
+caption,.caption, .label, .sr-only, .visually-hidden {
|
|
| 134 |
+ position: absolute; |
|
| 135 |
+ width: 1px; |
|
| 136 |
+ height: 1px; |
|
| 137 |
+ padding: 0; |
|
| 138 |
+ margin: -1px; |
|
| 139 |
+ overflow: hidden; |
|
| 140 |
+ clip: rect(0, 0, 0, 0); |
|
| 141 |
+ white-space: nowrap; |
|
| 142 |
+ border: 0; |
|
| 143 |
+} |
|
| 144 |
+ |
|
| 145 |
+/* 스크롤바 커스터마이징 */ |
|
| 146 |
+::-webkit-scrollbar {
|
|
| 147 |
+ width: 7px; |
|
| 148 |
+ height: 7px; |
|
| 149 |
+} |
|
| 150 |
+::-webkit-scrollbar-thumb {
|
|
| 151 |
+ background: #adadad; |
|
| 152 |
+ border-radius: 10px; |
|
| 153 |
+} |
|
| 154 |
+::-webkit-scrollbar-track {
|
|
| 155 |
+ background: transparent; |
|
| 156 |
+} |
|
| 157 |
+ |
|
| 158 |
+/* 인용, 기타 */ |
|
| 159 |
+blockquote, q {
|
|
| 160 |
+ quotes: none; |
|
| 161 |
+} |
|
| 162 |
+blockquote::before, blockquote::after, |
|
| 163 |
+q::before, q::after {
|
|
| 164 |
+ content: ''; |
|
| 165 |
+} |
|
| 166 |
+ |
|
| 167 |
+/* 폼 예외 처리 */ |
|
| 168 |
+input[type="search"]::-webkit-search-cancel-button, |
|
| 169 |
+input[type="search"]::-webkit-search-decoration {
|
|
| 170 |
+ appearance: none; |
|
| 171 |
+} |
|
| 172 |
+ |
|
| 173 |
+/* 주소, 이탤릭 등 */ |
|
| 174 |
+address, em, i {
|
|
| 175 |
+ font-style: normal; |
|
| 176 |
+} |
|
| 177 |
+ |
|
| 178 |
+/* hr */ |
|
| 179 |
+hr {
|
|
| 180 |
+ border: none; |
|
| 181 |
+ height: 1px; |
|
| 182 |
+ background: #e0e0e0; |
|
| 183 |
+ margin: 0; |
|
| 184 |
+} |
|
| 185 |
+ |
|
| 186 |
+/* 텍스트영역 기본 */ |
|
| 187 |
+textarea {
|
|
| 188 |
+ resize: vertical; |
|
| 189 |
+ color: #333; |
|
| 190 |
+} |
|
| 191 |
+ |
|
| 192 |
+/* 접근성: 모션 줄이기 선호 시 */ |
|
| 193 |
+@media (prefers-reduced-motion: reduce) {
|
|
| 194 |
+ *, *::before, *::after {
|
|
| 195 |
+ animation-duration: 0.001ms !important; |
|
| 196 |
+ transition-duration: 0.001ms !important; |
|
| 197 |
+ scroll-behavior: auto !important; |
|
| 198 |
+ } |
|
| 199 |
+} |
|
| 200 |
+ |
|
| 201 |
+/* 다크모드 기본 대응 */ |
|
| 202 |
+@media (prefers-color-scheme: dark) {
|
|
| 203 |
+ body {
|
|
| 204 |
+ color: #e6e6e6; |
|
| 205 |
+ background-color: #111; |
|
| 206 |
+ } |
|
| 207 |
+ ::-webkit-scrollbar-thumb {
|
|
| 208 |
+ background: #666; |
|
| 209 |
+ } |
|
| 210 |
+} |
--- src/main/webapp/publish/common/css/reset_bak.css
+++ src/main/webapp/publish/common/css/reset_bak.css
... | ... | @@ -1,53 +1,53 @@ |
| 1 |
-/* reset 파일 정리 */ |
|
| 2 |
- |
|
| 3 |
-html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video {margin: 0;padding: 0;border: 0;font-size: 100%;font: inherit;vertical-align: baseline;color: inherit;font-weight: inherit;font-family: 'Noto Sans KR', sans-serif; word-break: keep-all;}
|
|
| 4 |
-article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section {display: block; font-family: 'Noto Sans KR', sans-serif; margin: 0; padding: 0; border: 0; font-size: 100%;}
|
|
| 5 |
-body {min-height: 100vh;line-height: 1.4;-webkit-font-smoothing: antialiased;letter-spacing:-0.5px;;}
|
|
| 6 |
-ol,ul,li {list-style: none;}
|
|
| 7 |
-p, h1, h2, h3, h4, h5, h6 {margin: 0; padding: 0;letter-spacing: -0.35px;}
|
|
| 8 |
-h1, h2, h3, h4, h5, h6, button, input, label{line-height:1.1;}
|
|
| 9 |
-a {color: inherit; text-decoration: none; display: block;}
|
|
| 10 |
-/* a:focus:active:hover{outline: 0} */
|
|
| 11 |
-img {display:block;max-width: 100%;font-size: 0; border: 0;}
|
|
| 12 |
-table {border-collapse: collapse; border-spacing: 0; table-layout: fixed;}
|
|
| 13 |
-select, input {vertical-align: middle; font-family: 'Noto Sans KR', sans-serif; margin:0;}
|
|
| 14 |
-caption, .label{position: absolute;width: 1px; height: 1px; margin: 0; border: none; clip: rect(0,0,0,0); overflow: hidden;}
|
|
| 15 |
-/* 안드로이드 및 아이폰에서 기본적으로 적용되어있는 select, input css 제거. */ |
|
| 16 |
-select {background-color: #fff; appearance: none; -webkit-appearance: none; -moz-appearance: none;}
|
|
| 17 |
-select::-ms-expand {display: none;}
|
|
| 18 |
-button,html input[type="button"],input[type="reset"],input[type="submit"] {-webkit-appearance: button; cursor: pointer; *overflow: visible; font-family: 'Noto Sans KR', sans-serif;}
|
|
| 19 |
-button[disabled],html input[disabled] {cursor: default;}
|
|
| 20 |
-/* ie 하위버전 기본적으로 적용되어 있는 css 변경 */ |
|
| 21 |
-input[type="checkbox"],input[type="radio"] {box-sizing: border-box; padding: 0; *height: 13px; *width: 13px;}
|
|
| 22 |
-/* 아이폰 기본적으로 적용되어 있는 버튼 css 변경 */ |
|
| 23 |
-input{-webkit-appearance: button;}
|
|
| 24 |
-input::placeholder{font-size:15px;font-weight:300;font-family:'Noto Sans KR', sans-serif;}
|
|
| 25 |
-/* 사파리5, 크롬에서 기본적으로 적용되어 있는 css 변경 */ |
|
| 26 |
-input[type="search"] {-webkit-appearance: textfield; -moz-box-sizing: content-box; -webkit-box-sizing: content-box; box-sizing: content-box;}
|
|
| 27 |
-input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration {-webkit-appearance: none;}
|
|
| 28 |
-address, em, i {font-style: normal;}
|
|
| 29 |
-button {border: 0; background: none; cursor: pointer;}
|
|
| 30 |
-hr {margin: 0; border: none; padding: 0; display: block;}
|
|
| 31 |
-figure, figcaption {margin: 0; padding: 0;}
|
|
| 32 |
-form, fieldset {border: none; margin: 0; padding: 0; line-height: 1;}
|
|
| 33 |
-input[type="submit"] {-webkit-appearance: none; -moz-appearance: none; appearance: none;}
|
|
| 34 |
-header, footer, article, section, aside, nav, main {display: block;}
|
|
| 35 |
-textarea{color: #666;font-size: 20px;font-weight: 300; font-family: 'Noto Sans KR', sans-serif;}
|
|
| 36 |
- |
|
| 37 |
-input::placeholder,input[type="text"]::placeholder,input[type="password"]::placeholder,input[type="text"]:-ms-input-placeholder,input[type="password"]:-ms-input-placeholder{color: #666 !important; font-size: 16px !important;}
|
|
| 38 |
-input[type="text"]:focus::placeholder,input[type="password"]:focus::placeholder{color: transparent;}
|
|
| 39 |
- |
|
| 40 |
-input:disabled,input[disabled="disabled"],input:read-only,input[readonly="readonly"]{background-color: #f8f9fa !important; color: #aaa !important; border:1px solid #d8d8d8 !important; font-size: 16px;}
|
|
| 41 |
-button:disabled,button[disabled="disabled"]{background-color: #f8f9fa !important; color: #aaa !important; border: 1px solid #d8d8d8 !important;}
|
|
| 42 |
-select:disabled,select[disabled="disabled"],select.read-only,select[readonly="readonly"]{background-color: #f8f9fa !important; color: #aaa !important; border: 1px solid #d8d8d8 !important;pointer-events:none;}
|
|
| 43 |
-*,*::before,*::after {box-sizing: border-box;}
|
|
| 44 |
- |
|
| 45 |
-:target{scroll-margin-block: 5ex;}
|
|
| 46 |
- |
|
| 47 |
-/* a:hover, a:active,a:hover:active { outline: none; }
|
|
| 48 |
-a:focus:not(:focus) {outline: none;}
|
|
| 49 |
-a:focus:not(:focus-visible){outline: none;} */
|
|
| 50 |
- |
|
| 51 |
-::-webkit-scrollbar{width:7px;height:7px;} /* 스크롤바 너비 */
|
|
| 52 |
-::-webkit-scrollbar-thumb{background:#adadad;border-radius:10px;} /* 스크롤바 모양 */
|
|
| 1 |
+/* reset 파일 정리 */ |
|
| 2 |
+ |
|
| 3 |
+html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video {margin: 0;padding: 0;border: 0;font-size: 100%;font: inherit;vertical-align: baseline;color: inherit;font-weight: inherit;font-family: 'Noto Sans KR', sans-serif; word-break: keep-all;}
|
|
| 4 |
+article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section {display: block; font-family: 'Noto Sans KR', sans-serif; margin: 0; padding: 0; border: 0; font-size: 100%;}
|
|
| 5 |
+body {min-height: 100vh;line-height: 1.4;-webkit-font-smoothing: antialiased;letter-spacing:-0.5px;;}
|
|
| 6 |
+ol,ul,li {list-style: none;}
|
|
| 7 |
+p, h1, h2, h3, h4, h5, h6 {margin: 0; padding: 0;letter-spacing: -0.35px;}
|
|
| 8 |
+h1, h2, h3, h4, h5, h6, button, input, label{line-height:1.1;}
|
|
| 9 |
+a {color: inherit; text-decoration: none; display: block;}
|
|
| 10 |
+/* a:focus:active:hover{outline: 0} */
|
|
| 11 |
+img {display:block;max-width: 100%;font-size: 0; border: 0;}
|
|
| 12 |
+table {border-collapse: collapse; border-spacing: 0; table-layout: fixed;}
|
|
| 13 |
+select, input {vertical-align: middle; font-family: 'Noto Sans KR', sans-serif; margin:0;}
|
|
| 14 |
+caption, .label{position: absolute;width: 1px; height: 1px; margin: 0; border: none; clip: rect(0,0,0,0); overflow: hidden;}
|
|
| 15 |
+/* 안드로이드 및 아이폰에서 기본적으로 적용되어있는 select, input css 제거. */ |
|
| 16 |
+select {background-color: #fff; appearance: none; -webkit-appearance: none; -moz-appearance: none;}
|
|
| 17 |
+select::-ms-expand {display: none;}
|
|
| 18 |
+button,html input[type="button"],input[type="reset"],input[type="submit"] {-webkit-appearance: button; cursor: pointer; *overflow: visible; font-family: 'Noto Sans KR', sans-serif;}
|
|
| 19 |
+button[disabled],html input[disabled] {cursor: default;}
|
|
| 20 |
+/* ie 하위버전 기본적으로 적용되어 있는 css 변경 */ |
|
| 21 |
+input[type="checkbox"],input[type="radio"] {box-sizing: border-box; padding: 0; *height: 13px; *width: 13px;}
|
|
| 22 |
+/* 아이폰 기본적으로 적용되어 있는 버튼 css 변경 */ |
|
| 23 |
+input{-webkit-appearance: button;}
|
|
| 24 |
+input::placeholder{font-size:15px;font-weight:300;font-family:'Noto Sans KR', sans-serif;}
|
|
| 25 |
+/* 사파리5, 크롬에서 기본적으로 적용되어 있는 css 변경 */ |
|
| 26 |
+input[type="search"] {-webkit-appearance: textfield; -moz-box-sizing: content-box; -webkit-box-sizing: content-box; box-sizing: content-box;}
|
|
| 27 |
+input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration {-webkit-appearance: none;}
|
|
| 28 |
+address, em, i {font-style: normal;}
|
|
| 29 |
+button {border: 0; background: none; cursor: pointer;}
|
|
| 30 |
+hr {margin: 0; border: none; padding: 0; display: block;}
|
|
| 31 |
+figure, figcaption {margin: 0; padding: 0;}
|
|
| 32 |
+form, fieldset {border: none; margin: 0; padding: 0; line-height: 1;}
|
|
| 33 |
+input[type="submit"] {-webkit-appearance: none; -moz-appearance: none; appearance: none;}
|
|
| 34 |
+header, footer, article, section, aside, nav, main {display: block;}
|
|
| 35 |
+textarea{color: #666;font-size: 20px;font-weight: 300; font-family: 'Noto Sans KR', sans-serif;}
|
|
| 36 |
+ |
|
| 37 |
+input::placeholder,input[type="text"]::placeholder,input[type="password"]::placeholder,input[type="text"]:-ms-input-placeholder,input[type="password"]:-ms-input-placeholder{color: #666 !important; font-size: 16px !important;}
|
|
| 38 |
+input[type="text"]:focus::placeholder,input[type="password"]:focus::placeholder{color: transparent;}
|
|
| 39 |
+ |
|
| 40 |
+input:disabled,input[disabled="disabled"],input:read-only,input[readonly="readonly"]{background-color: #f8f9fa !important; color: #aaa !important; border:1px solid #d8d8d8 !important; font-size: 16px;}
|
|
| 41 |
+button:disabled,button[disabled="disabled"]{background-color: #f8f9fa !important; color: #aaa !important; border: 1px solid #d8d8d8 !important;}
|
|
| 42 |
+select:disabled,select[disabled="disabled"],select.read-only,select[readonly="readonly"]{background-color: #f8f9fa !important; color: #aaa !important; border: 1px solid #d8d8d8 !important;pointer-events:none;}
|
|
| 43 |
+*,*::before,*::after {box-sizing: border-box;}
|
|
| 44 |
+ |
|
| 45 |
+:target{scroll-margin-block: 5ex;}
|
|
| 46 |
+ |
|
| 47 |
+/* a:hover, a:active,a:hover:active { outline: none; }
|
|
| 48 |
+a:focus:not(:focus) {outline: none;}
|
|
| 49 |
+a:focus:not(:focus-visible){outline: none;} */
|
|
| 50 |
+ |
|
| 51 |
+::-webkit-scrollbar{width:7px;height:7px;} /* 스크롤바 너비 */
|
|
| 52 |
+::-webkit-scrollbar-thumb{background:#adadad;border-radius:10px;} /* 스크롤바 모양 */
|
|
| 53 | 53 |
::-webkit-scrollbar-track{background:transparent;} /* 뒷배경 */ (No newline at end of file)
|
--- src/main/webapp/publish/common/css/style.css
+++ src/main/webapp/publish/common/css/style.css
... | ... | @@ -1,187 +1,187 @@ |
| 1 |
-@charset "utf-8"; |
|
| 2 |
- |
|
| 3 |
-/* 간격 */ |
|
| 4 |
-.p0 {padding: 0px!important;}
|
|
| 5 |
-.p5 {padding: 5px!important;}
|
|
| 6 |
- |
|
| 7 |
-.pt5 {padding-top: 5px!important;}
|
|
| 8 |
-.pt10 {padding-top: 10px!important;}
|
|
| 9 |
-.pt15 {padding-top: 15px!important;}
|
|
| 10 |
-.pt20 {padding-top: 20px!important;}
|
|
| 11 |
-.pt25 {padding-top: 25px!important;}
|
|
| 12 |
-.pt30 {padding-top: 30px!important;}
|
|
| 13 |
-.pt35 {padding-top: 35px!important;}
|
|
| 14 |
-.pt40 {padding-top: 40px!important;}
|
|
| 15 |
-.pt45 {padding-top: 45px!important;}
|
|
| 16 |
-.pt50 {padding-top: 50px!important;}
|
|
| 17 |
- |
|
| 18 |
-.pr0 {padding-right: 0px!important;}
|
|
| 19 |
-.pr20 {padding-right: 20px!important;}
|
|
| 20 |
- |
|
| 21 |
-.pb5 {padding-bottom: 5px!important;}
|
|
| 22 |
-.pb10 {padding-bottom: 10px!important;}
|
|
| 23 |
-.pb15 {padding-bottom: 15px!important;}
|
|
| 24 |
-.pb20 {padding-bottom: 20px!important;}
|
|
| 25 |
-.pb25 {padding-bottom: 25px!important;}
|
|
| 26 |
-.pb30 {padding-bottom: 30px!important;}
|
|
| 27 |
-.pb35 {padding-bottom: 35px!important;}
|
|
| 28 |
-.pb40 {padding-bottom: 40px!important;}
|
|
| 29 |
-.pb45 {padding-bottom: 45px!important;}
|
|
| 30 |
-.pb50 {padding-bottom: 50px!important;}
|
|
| 31 |
- |
|
| 32 |
-.pl0 {padding-left: 0px!important;}
|
|
| 33 |
-.pl15 {padding-left: 15px!important;}
|
|
| 34 |
-.pl20 {padding-left: 20px!important;}
|
|
| 35 |
- |
|
| 36 |
-.m20 {margin: 20px!important;}
|
|
| 37 |
- |
|
| 38 |
-.mt-1 {margin-top: -1px!important;}
|
|
| 39 |
-.mt0 {margin-top: 0px!important;}
|
|
| 40 |
-.mt5 {margin-top: 5px!important;}
|
|
| 41 |
-.mt10 {margin-top: 10px!important;}
|
|
| 42 |
-.mt15 {margin-top: 15px!important;}
|
|
| 43 |
-.mt20 {margin-top: 20px!important;}
|
|
| 44 |
-.mt25 {margin-top: 25px!important;}
|
|
| 45 |
-.mt30 {margin-top: 30px!important;}
|
|
| 46 |
-.mt35 {margin-top: 35px!important;}
|
|
| 47 |
-.mt40 {margin-top: 40px!important;}
|
|
| 48 |
-.mt45 {margin-top: 45px!important;}
|
|
| 49 |
-.mt50 {margin-top: 50px!important;}
|
|
| 50 |
-.mt60 {margin-top: 60px!important;}
|
|
| 51 |
-.mt70 {margin-top: 70px!important;}
|
|
| 52 |
-.mt80 {margin-top: 80px!important;}
|
|
| 53 |
-.mt90 {margin-top: 90px!important;}
|
|
| 54 |
-.mt100 {margin-top: 100px!important;}
|
|
| 55 |
- |
|
| 56 |
-.mr0 {margin-right: 0px!important;}
|
|
| 57 |
-.mr3 {margin-right: 3px!important;}
|
|
| 58 |
-.mr5 {margin-right: 5px!important;}
|
|
| 59 |
-.mr10 {margin-right: 10px!important;}
|
|
| 60 |
-.mr15 {margin-right: 15px!important;}
|
|
| 61 |
-.mr20 {margin-right: 20px!important;}
|
|
| 62 |
-.mr25 {margin-right: 25px!important;}
|
|
| 63 |
-.mr30 {margin-right: 30px!important;}
|
|
| 64 |
-.mr35 {margin-right: 35px!important;}
|
|
| 65 |
-.mr40 {margin-right: 40px!important;}
|
|
| 66 |
-.mr45 {margin-right: 45px!important;}
|
|
| 67 |
-.mr50 {margin-right: 50px!important;}
|
|
| 68 |
-.mr60 {margin-right: 60px!important;}
|
|
| 69 |
-.mr70 {margin-right: 70px!important;}
|
|
| 70 |
-.mr80 {margin-right: 80px!important;}
|
|
| 71 |
-.mr90 {margin-right: 90px!important;}
|
|
| 72 |
-.mr100 {margin-right: 100px!important;}
|
|
| 73 |
- |
|
| 74 |
-.mb-4 {margin-bottom: -4px!important;}
|
|
| 75 |
-.mb0 {margin-bottom: 0px!important;}
|
|
| 76 |
-.mb1 {margin-bottom: 1px!important;}
|
|
| 77 |
-.mb5 {margin-bottom: 5px!important;}
|
|
| 78 |
-.mb10 {margin-bottom: 10px!important;}
|
|
| 79 |
-.mb15 {margin-bottom: 15px!important;}
|
|
| 80 |
-.mb18 {margin-bottom: 18px!important;}
|
|
| 81 |
-.mb20 {margin-bottom: 20px!important;}
|
|
| 82 |
-.mb25 {margin-bottom: 25px!important;}
|
|
| 83 |
-.mb30 {margin-bottom: 30px!important;}
|
|
| 84 |
-.mb35 {margin-bottom: 35px!important;}
|
|
| 85 |
-.mb40 {margin-bottom: 40px!important;}
|
|
| 86 |
-.mb45 {margin-bottom: 45px!important;}
|
|
| 87 |
-.mb50 {margin-bottom: 50px!important;}
|
|
| 88 |
-.mb60 {margin-bottom: 60px!important;}
|
|
| 89 |
-.mb70 {margin-bottom: 70px!important;}
|
|
| 90 |
-.mb80 {margin-bottom: 80px!important;}
|
|
| 91 |
-.mb90 {margin-bottom: 90px!important;}
|
|
| 92 |
-.mb100 {margin-bottom: 100px!important;}
|
|
| 93 |
- |
|
| 94 |
-.ml0 {margin-left: 0px!important;}
|
|
| 95 |
-.ml5 {margin-left: 5px!important;}
|
|
| 96 |
-.ml10 {margin-left: 10px!important;}
|
|
| 97 |
-.ml15 {margin-left: 15px!important;}
|
|
| 98 |
-.ml20 {margin-left: 20px!important;}
|
|
| 99 |
-.ml25 {margin-left: 25px!important;}
|
|
| 100 |
-.ml30 {margin-left: 30px!important;}
|
|
| 101 |
-.ml35 {margin-left: 35px!important;}
|
|
| 102 |
-.ml40 {margin-left: 40px!important;}
|
|
| 103 |
-.ml45 {margin-left: 45px!important;}
|
|
| 104 |
-.ml50 {margin-left: 50px!important;}
|
|
| 105 |
-.ml60 {margin-left: 60px!important;}
|
|
| 106 |
-.ml70 {margin-left: 70px!important;}
|
|
| 107 |
-.ml80 {margin-left: 80px!important;}
|
|
| 108 |
-.ml90 {margin-left: 90px!important;}
|
|
| 109 |
-.ml100 {margin-left: 100px!important;}
|
|
| 110 |
- |
|
| 111 |
-/* 너비, 높이 */ |
|
| 112 |
-.w100per {width: 100% !important;}
|
|
| 113 |
-.w99per {width: 99%;}
|
|
| 114 |
-.w95per {width: 95%;}
|
|
| 115 |
-.w90per {width: 90%;}
|
|
| 116 |
-.w85per {width: 85%;}
|
|
| 117 |
-.w80per {width: 80%;}
|
|
| 118 |
-.w75per {width: 75%;}
|
|
| 119 |
-.w70per {width: 70%;}
|
|
| 120 |
-.w65per {width: 65%;}
|
|
| 121 |
-.w60per {width: 60%;}
|
|
| 122 |
-.w50per {width: 50%;}
|
|
| 123 |
-.w55per {width: 55%;}
|
|
| 124 |
-.w45per {width: 45%;}
|
|
| 125 |
-.w40per {width: 40%;}
|
|
| 126 |
-.w35per {width: 35%;}
|
|
| 127 |
-.w33per {width: 33.3333333%;}
|
|
| 128 |
-.w30per {width: 30%;}
|
|
| 129 |
-.w25per {width: 25%;}
|
|
| 130 |
-.w20per {width: 20%;}
|
|
| 131 |
-.w19per {width: 19%;}
|
|
| 132 |
-.w18per {width: 18%;}
|
|
| 133 |
-.w17per {width: 17%;}
|
|
| 134 |
-.w16per {width: 16%;}
|
|
| 135 |
-.w15per {width: 15%;}
|
|
| 136 |
-.w14per {width: 14%;}
|
|
| 137 |
-.w13per {width: 13%;}
|
|
| 138 |
-.w12per {width: 12%;}
|
|
| 139 |
-.w11per {width: 11%;}
|
|
| 140 |
-.w10per {width: 10%;}
|
|
| 141 |
-.w9per {width: 9%;}
|
|
| 142 |
-.w8per {width: 8%;}
|
|
| 143 |
-.w7per {width: 7%;}
|
|
| 144 |
-.w6per {width: 6%;}
|
|
| 145 |
-.w5per {width: 5%;}
|
|
| 146 |
-.w4per {width: 4%;}
|
|
| 147 |
-.w3per {width: 3%;}
|
|
| 148 |
-.w2per {width: 2%;}
|
|
| 149 |
-.w1per {width: 1%;}
|
|
| 150 |
- |
|
| 151 |
-.w5 {width: 5px;}
|
|
| 152 |
-.w10 {width: 10px;}
|
|
| 153 |
-.w15 {width: 15px;}
|
|
| 154 |
-.w20 {width: 20px;}
|
|
| 155 |
-.w25 {width: 25px;}
|
|
| 156 |
-.w30 {width: 30px;}
|
|
| 157 |
-.w35 {width: 35px;}
|
|
| 158 |
-.w40 {width: 40px;}
|
|
| 159 |
-.w45 {width: 45px;}
|
|
| 160 |
-.w50 {width: 50px;}
|
|
| 161 |
-.w55 {width: 55px;}
|
|
| 162 |
-.w60 {width: 60px;}
|
|
| 163 |
-.w70 {width: 70px;}
|
|
| 164 |
-.w80 {width: 80px;}
|
|
| 165 |
-.w90 {width: 90px;}
|
|
| 166 |
-.w100 {width: 100px;}
|
|
| 167 |
-.w110 {width: 110px;}
|
|
| 168 |
-.w120 {width: 120px;}
|
|
| 169 |
-.w130 {width: 130px;}
|
|
| 170 |
-.w140 {width: 140px;}
|
|
| 171 |
-.w150 {width: 150px;}
|
|
| 172 |
-.w160 {width: 160px;}
|
|
| 173 |
-.w170 {width: 170px;}
|
|
| 174 |
-.w180 {width: 180px;}
|
|
| 175 |
-.w190 {width: 190px;}
|
|
| 176 |
-.w200 {width: 200px;}
|
|
| 177 |
-.w250 {width: 250px;}
|
|
| 178 |
-.w300 {width: 300px;}
|
|
| 179 |
-.w325 {width: 325px;}
|
|
| 180 |
-.w350 {width: 350px;}
|
|
| 181 |
-.w400 {width: 400px;}
|
|
| 182 |
-.w500 {width: 500px;}
|
|
| 183 |
- |
|
| 184 |
-.mw100 {min-width: 100px;}
|
|
| 185 |
- |
|
| 186 |
-.h100 {height: 100px;}
|
|
| 1 |
+@charset "utf-8"; |
|
| 2 |
+ |
|
| 3 |
+/* 간격 */ |
|
| 4 |
+.p0 {padding: 0px!important;}
|
|
| 5 |
+.p5 {padding: 5px!important;}
|
|
| 6 |
+ |
|
| 7 |
+.pt5 {padding-top: 5px!important;}
|
|
| 8 |
+.pt10 {padding-top: 10px!important;}
|
|
| 9 |
+.pt15 {padding-top: 15px!important;}
|
|
| 10 |
+.pt20 {padding-top: 20px!important;}
|
|
| 11 |
+.pt25 {padding-top: 25px!important;}
|
|
| 12 |
+.pt30 {padding-top: 30px!important;}
|
|
| 13 |
+.pt35 {padding-top: 35px!important;}
|
|
| 14 |
+.pt40 {padding-top: 40px!important;}
|
|
| 15 |
+.pt45 {padding-top: 45px!important;}
|
|
| 16 |
+.pt50 {padding-top: 50px!important;}
|
|
| 17 |
+ |
|
| 18 |
+.pr0 {padding-right: 0px!important;}
|
|
| 19 |
+.pr20 {padding-right: 20px!important;}
|
|
| 20 |
+ |
|
| 21 |
+.pb5 {padding-bottom: 5px!important;}
|
|
| 22 |
+.pb10 {padding-bottom: 10px!important;}
|
|
| 23 |
+.pb15 {padding-bottom: 15px!important;}
|
|
| 24 |
+.pb20 {padding-bottom: 20px!important;}
|
|
| 25 |
+.pb25 {padding-bottom: 25px!important;}
|
|
| 26 |
+.pb30 {padding-bottom: 30px!important;}
|
|
| 27 |
+.pb35 {padding-bottom: 35px!important;}
|
|
| 28 |
+.pb40 {padding-bottom: 40px!important;}
|
|
| 29 |
+.pb45 {padding-bottom: 45px!important;}
|
|
| 30 |
+.pb50 {padding-bottom: 50px!important;}
|
|
| 31 |
+ |
|
| 32 |
+.pl0 {padding-left: 0px!important;}
|
|
| 33 |
+.pl15 {padding-left: 15px!important;}
|
|
| 34 |
+.pl20 {padding-left: 20px!important;}
|
|
| 35 |
+ |
|
| 36 |
+.m20 {margin: 20px!important;}
|
|
| 37 |
+ |
|
| 38 |
+.mt-1 {margin-top: -1px!important;}
|
|
| 39 |
+.mt0 {margin-top: 0px!important;}
|
|
| 40 |
+.mt5 {margin-top: 5px!important;}
|
|
| 41 |
+.mt10 {margin-top: 10px!important;}
|
|
| 42 |
+.mt15 {margin-top: 15px!important;}
|
|
| 43 |
+.mt20 {margin-top: 20px!important;}
|
|
| 44 |
+.mt25 {margin-top: 25px!important;}
|
|
| 45 |
+.mt30 {margin-top: 30px!important;}
|
|
| 46 |
+.mt35 {margin-top: 35px!important;}
|
|
| 47 |
+.mt40 {margin-top: 40px!important;}
|
|
| 48 |
+.mt45 {margin-top: 45px!important;}
|
|
| 49 |
+.mt50 {margin-top: 50px!important;}
|
|
| 50 |
+.mt60 {margin-top: 60px!important;}
|
|
| 51 |
+.mt70 {margin-top: 70px!important;}
|
|
| 52 |
+.mt80 {margin-top: 80px!important;}
|
|
| 53 |
+.mt90 {margin-top: 90px!important;}
|
|
| 54 |
+.mt100 {margin-top: 100px!important;}
|
|
| 55 |
+ |
|
| 56 |
+.mr0 {margin-right: 0px!important;}
|
|
| 57 |
+.mr3 {margin-right: 3px!important;}
|
|
| 58 |
+.mr5 {margin-right: 5px!important;}
|
|
| 59 |
+.mr10 {margin-right: 10px!important;}
|
|
| 60 |
+.mr15 {margin-right: 15px!important;}
|
|
| 61 |
+.mr20 {margin-right: 20px!important;}
|
|
| 62 |
+.mr25 {margin-right: 25px!important;}
|
|
| 63 |
+.mr30 {margin-right: 30px!important;}
|
|
| 64 |
+.mr35 {margin-right: 35px!important;}
|
|
| 65 |
+.mr40 {margin-right: 40px!important;}
|
|
| 66 |
+.mr45 {margin-right: 45px!important;}
|
|
| 67 |
+.mr50 {margin-right: 50px!important;}
|
|
| 68 |
+.mr60 {margin-right: 60px!important;}
|
|
| 69 |
+.mr70 {margin-right: 70px!important;}
|
|
| 70 |
+.mr80 {margin-right: 80px!important;}
|
|
| 71 |
+.mr90 {margin-right: 90px!important;}
|
|
| 72 |
+.mr100 {margin-right: 100px!important;}
|
|
| 73 |
+ |
|
| 74 |
+.mb-4 {margin-bottom: -4px!important;}
|
|
| 75 |
+.mb0 {margin-bottom: 0px!important;}
|
|
| 76 |
+.mb1 {margin-bottom: 1px!important;}
|
|
| 77 |
+.mb5 {margin-bottom: 5px!important;}
|
|
| 78 |
+.mb10 {margin-bottom: 10px!important;}
|
|
| 79 |
+.mb15 {margin-bottom: 15px!important;}
|
|
| 80 |
+.mb18 {margin-bottom: 18px!important;}
|
|
| 81 |
+.mb20 {margin-bottom: 20px!important;}
|
|
| 82 |
+.mb25 {margin-bottom: 25px!important;}
|
|
| 83 |
+.mb30 {margin-bottom: 30px!important;}
|
|
| 84 |
+.mb35 {margin-bottom: 35px!important;}
|
|
| 85 |
+.mb40 {margin-bottom: 40px!important;}
|
|
| 86 |
+.mb45 {margin-bottom: 45px!important;}
|
|
| 87 |
+.mb50 {margin-bottom: 50px!important;}
|
|
| 88 |
+.mb60 {margin-bottom: 60px!important;}
|
|
| 89 |
+.mb70 {margin-bottom: 70px!important;}
|
|
| 90 |
+.mb80 {margin-bottom: 80px!important;}
|
|
| 91 |
+.mb90 {margin-bottom: 90px!important;}
|
|
| 92 |
+.mb100 {margin-bottom: 100px!important;}
|
|
| 93 |
+ |
|
| 94 |
+.ml0 {margin-left: 0px!important;}
|
|
| 95 |
+.ml5 {margin-left: 5px!important;}
|
|
| 96 |
+.ml10 {margin-left: 10px!important;}
|
|
| 97 |
+.ml15 {margin-left: 15px!important;}
|
|
| 98 |
+.ml20 {margin-left: 20px!important;}
|
|
| 99 |
+.ml25 {margin-left: 25px!important;}
|
|
| 100 |
+.ml30 {margin-left: 30px!important;}
|
|
| 101 |
+.ml35 {margin-left: 35px!important;}
|
|
| 102 |
+.ml40 {margin-left: 40px!important;}
|
|
| 103 |
+.ml45 {margin-left: 45px!important;}
|
|
| 104 |
+.ml50 {margin-left: 50px!important;}
|
|
| 105 |
+.ml60 {margin-left: 60px!important;}
|
|
| 106 |
+.ml70 {margin-left: 70px!important;}
|
|
| 107 |
+.ml80 {margin-left: 80px!important;}
|
|
| 108 |
+.ml90 {margin-left: 90px!important;}
|
|
| 109 |
+.ml100 {margin-left: 100px!important;}
|
|
| 110 |
+ |
|
| 111 |
+/* 너비, 높이 */ |
|
| 112 |
+.w100per {width: 100% !important;}
|
|
| 113 |
+.w99per {width: 99%;}
|
|
| 114 |
+.w95per {width: 95%;}
|
|
| 115 |
+.w90per {width: 90%;}
|
|
| 116 |
+.w85per {width: 85%;}
|
|
| 117 |
+.w80per {width: 80%;}
|
|
| 118 |
+.w75per {width: 75%;}
|
|
| 119 |
+.w70per {width: 70%;}
|
|
| 120 |
+.w65per {width: 65%;}
|
|
| 121 |
+.w60per {width: 60%;}
|
|
| 122 |
+.w50per {width: 50%;}
|
|
| 123 |
+.w55per {width: 55%;}
|
|
| 124 |
+.w45per {width: 45%;}
|
|
| 125 |
+.w40per {width: 40%;}
|
|
| 126 |
+.w35per {width: 35%;}
|
|
| 127 |
+.w33per {width: 33.3333333%;}
|
|
| 128 |
+.w30per {width: 30%;}
|
|
| 129 |
+.w25per {width: 25%;}
|
|
| 130 |
+.w20per {width: 20%;}
|
|
| 131 |
+.w19per {width: 19%;}
|
|
| 132 |
+.w18per {width: 18%;}
|
|
| 133 |
+.w17per {width: 17%;}
|
|
| 134 |
+.w16per {width: 16%;}
|
|
| 135 |
+.w15per {width: 15%;}
|
|
| 136 |
+.w14per {width: 14%;}
|
|
| 137 |
+.w13per {width: 13%;}
|
|
| 138 |
+.w12per {width: 12%;}
|
|
| 139 |
+.w11per {width: 11%;}
|
|
| 140 |
+.w10per {width: 10%;}
|
|
| 141 |
+.w9per {width: 9%;}
|
|
| 142 |
+.w8per {width: 8%;}
|
|
| 143 |
+.w7per {width: 7%;}
|
|
| 144 |
+.w6per {width: 6%;}
|
|
| 145 |
+.w5per {width: 5%;}
|
|
| 146 |
+.w4per {width: 4%;}
|
|
| 147 |
+.w3per {width: 3%;}
|
|
| 148 |
+.w2per {width: 2%;}
|
|
| 149 |
+.w1per {width: 1%;}
|
|
| 150 |
+ |
|
| 151 |
+.w5 {width: 5px;}
|
|
| 152 |
+.w10 {width: 10px;}
|
|
| 153 |
+.w15 {width: 15px;}
|
|
| 154 |
+.w20 {width: 20px;}
|
|
| 155 |
+.w25 {width: 25px;}
|
|
| 156 |
+.w30 {width: 30px;}
|
|
| 157 |
+.w35 {width: 35px;}
|
|
| 158 |
+.w40 {width: 40px;}
|
|
| 159 |
+.w45 {width: 45px;}
|
|
| 160 |
+.w50 {width: 50px;}
|
|
| 161 |
+.w55 {width: 55px;}
|
|
| 162 |
+.w60 {width: 60px;}
|
|
| 163 |
+.w70 {width: 70px;}
|
|
| 164 |
+.w80 {width: 80px;}
|
|
| 165 |
+.w90 {width: 90px;}
|
|
| 166 |
+.w100 {width: 100px;}
|
|
| 167 |
+.w110 {width: 110px;}
|
|
| 168 |
+.w120 {width: 120px;}
|
|
| 169 |
+.w130 {width: 130px;}
|
|
| 170 |
+.w140 {width: 140px;}
|
|
| 171 |
+.w150 {width: 150px;}
|
|
| 172 |
+.w160 {width: 160px;}
|
|
| 173 |
+.w170 {width: 170px;}
|
|
| 174 |
+.w180 {width: 180px;}
|
|
| 175 |
+.w190 {width: 190px;}
|
|
| 176 |
+.w200 {width: 200px;}
|
|
| 177 |
+.w250 {width: 250px;}
|
|
| 178 |
+.w300 {width: 300px;}
|
|
| 179 |
+.w325 {width: 325px;}
|
|
| 180 |
+.w350 {width: 350px;}
|
|
| 181 |
+.w400 {width: 400px;}
|
|
| 182 |
+.w500 {width: 500px;}
|
|
| 183 |
+ |
|
| 184 |
+.mw100 {min-width: 100px;}
|
|
| 185 |
+ |
|
| 186 |
+.h100 {height: 100px;}
|
|
| 187 | 187 |
.h100per {height: 100%;} (No newline at end of file)
|
--- src/main/webapp/publish/common/error/error.css
+++ src/main/webapp/publish/common/error/error.css
... | ... | @@ -1,10 +1,10 @@ |
| 1 |
-@charset "utf-8"; |
|
| 2 |
- |
|
| 3 |
-.error_container{width:100%;height:calc(100% - 40px);background:#f5f5f5;}
|
|
| 4 |
-.error_contents{display:flex;height:100%;flex-direction:column;justify-content:center;align-items:center;}
|
|
| 5 |
-.icon.error{display:inline-block;width:250px;height:250px;background:url(./images/error.png) no-repeat center center;mix-blend-mode:luminosity;}
|
|
| 6 |
-.error_contents h1{font-size:64px;font-weight:900;letter-spacing:6px;}
|
|
| 7 |
-.secondary_title{font-size:20px;font-weight:300;line-height:1.4;margin:16px 0;}
|
|
| 8 |
-.secondary_title b{font-weight:500;}
|
|
| 9 |
-.summary{font-size:18px;font-weight:300;color:#666;line-height:1.4;text-align:center;}
|
|
| 10 |
-.btn_page_move{width:250px;height:50px;margin:40px 0 0 0;font-size:18px;font-weight:500;background:#fff;border:1px solid #000;}
|
|
| 1 |
+@charset "utf-8"; |
|
| 2 |
+ |
|
| 3 |
+.error_container{width:100vw;height:100vh;background:#E5E5E5;}
|
|
| 4 |
+.error_contents{display:flex;height:100%;flex-direction:column;justify-content:center;align-items:center;}
|
|
| 5 |
+.icon.error{display:inline-block;width:250px;height:250px;background:url(./images/error.png) no-repeat center center;mix-blend-mode:luminosity;}
|
|
| 6 |
+h1{font-size:64px;font-weight:900;letter-spacing:6px;}
|
|
| 7 |
+.secondary_title{font-size:28px;font-weight:300;line-height:1.4;margin:16px 0;}
|
|
| 8 |
+.secondary_title b{font-weight:500;}
|
|
| 9 |
+.summary{font-size:18px;font-weight:300;color:#666;line-height:1.4;text-align:center;}
|
|
| 10 |
+.btn_page_move{width:250px;height:50px;margin:40px 0 0 0;font-size:18px;font-weight:500;background:#fff;border:1px solid #000;}
|
--- src/main/webapp/publish/common/error/error.html
+++ src/main/webapp/publish/common/error/error.html
... | ... | @@ -1,45 +1,45 @@ |
| 1 |
-<!DOCTYPE html> |
|
| 2 |
-<html lang="ko"> |
|
| 3 |
- |
|
| 4 |
-<head> |
|
| 5 |
- <meta charset="UTF-8"> |
|
| 6 |
- <meta name="viewport" content="width=device-width, initial-scale=1.0"> |
|
| 7 |
- <title>로그인</title> |
|
| 8 |
- |
|
| 9 |
- <!-- css --> |
|
| 10 |
- <link rel="stylesheet" href="../css/reset.css"> |
|
| 11 |
- <link rel="stylesheet" href="../css/font.css"> |
|
| 12 |
- <link rel="stylesheet" href="../publish/css/common.css"> |
|
| 13 |
- <link rel="stylesheet" href="../publish/css/style.css"> |
|
| 14 |
- <link rel="stylesheet" href="../publish/css/button.css"> |
|
| 15 |
- <link rel="stylesheet" href="../publish/css/tab.css"> |
|
| 16 |
- <link rel="stylesheet" href="../publish/css/table.css"> |
|
| 17 |
- <link rel="stylesheet" href="../publish/css/calendar.css"> |
|
| 18 |
- <link rel="stylesheet" href="./error.css" /> |
|
| 19 |
- <!-- //css --> |
|
| 20 |
- |
|
| 21 |
- <!-- script --> |
|
| 22 |
- <script src="../../../js/jquery-3.5.0.js"></script> |
|
| 23 |
- <!-- //script --> |
|
| 24 |
- |
|
| 25 |
- |
|
| 26 |
-</head> |
|
| 27 |
- |
|
| 28 |
-<body> |
|
| 29 |
- |
|
| 30 |
- <div class="error_container"> |
|
| 31 |
- <div class="error_contents"> |
|
| 32 |
- <i class="icon error"></i> |
|
| 33 |
- <h1>ERROR PAGE</h1> |
|
| 34 |
- <p class="secondary_title">페이지가 <b>없거나 잘못된 경로</b> 입니다.</p> |
|
| 35 |
- <p class="summary"> |
|
| 36 |
- 경로를 다시 확인하시고 이용해주시기 바랍니다.<br> |
|
| 37 |
- 이용에 불편을 드려 대단히 죄송합니다. |
|
| 38 |
- </p> |
|
| 39 |
- <button type="button" class="btn btn_page_move">이전페이지</button> |
|
| 40 |
- </div> |
|
| 41 |
- </div> |
|
| 42 |
- |
|
| 43 |
-</body> |
|
| 44 |
- |
|
| 1 |
+<!DOCTYPE html> |
|
| 2 |
+<html lang="ko"> |
|
| 3 |
+ |
|
| 4 |
+<head> |
|
| 5 |
+ <meta charset="UTF-8"> |
|
| 6 |
+ <meta name="viewport" content="width=device-width, initial-scale=1.0"> |
|
| 7 |
+ <title>로그인</title> |
|
| 8 |
+ |
|
| 9 |
+ <!-- css --> |
|
| 10 |
+ <link rel="stylesheet" href="../css/reset.css"> |
|
| 11 |
+ <link rel="stylesheet" href="../css/font.css"> |
|
| 12 |
+ <link rel="stylesheet" href="../publish/css/common.css"> |
|
| 13 |
+ <link rel="stylesheet" href="../publish/css/style.css"> |
|
| 14 |
+ <link rel="stylesheet" href="../publish/css/button.css"> |
|
| 15 |
+ <link rel="stylesheet" href="../publish/css/tab.css"> |
|
| 16 |
+ <link rel="stylesheet" href="../publish/css/table.css"> |
|
| 17 |
+ <link rel="stylesheet" href="../publish/css/calendar.css"> |
|
| 18 |
+ <link rel="stylesheet" href="./error.css" /> |
|
| 19 |
+ <!-- //css --> |
|
| 20 |
+ |
|
| 21 |
+ <!-- script --> |
|
| 22 |
+ <script src="../../../js/jquery-3.5.0.js"></script> |
|
| 23 |
+ <!-- //script --> |
|
| 24 |
+ |
|
| 25 |
+ |
|
| 26 |
+</head> |
|
| 27 |
+ |
|
| 28 |
+<body> |
|
| 29 |
+ |
|
| 30 |
+ <div class="error_container"> |
|
| 31 |
+ <div class="error_contents"> |
|
| 32 |
+ <i class="icon error"></i> |
|
| 33 |
+ <h1>ERROR PAGE</h1> |
|
| 34 |
+ <p class="secondary_title">페이지가 <b>없거나 잘못된 경로</b> 입니다.</p> |
|
| 35 |
+ <p class="summary"> |
|
| 36 |
+ 경로를 다시 확인하시고 이용해주시기 바랍니다.<br> |
|
| 37 |
+ 이용에 불편을 드려 대단히 죄송합니다. |
|
| 38 |
+ </p> |
|
| 39 |
+ <button type="button" class="btn btn_page_move">이전페이지</button> |
|
| 40 |
+ </div> |
|
| 41 |
+ </div> |
|
| 42 |
+ |
|
| 43 |
+</body> |
|
| 44 |
+ |
|
| 45 | 45 |
</html>(No newline at end of file) |
--- src/main/webapp/publish/common/script/plugin/datapicker/index-7f002a21.system.js
+++ src/main/webapp/publish/common/script/plugin/datapicker/index-7f002a21.system.js
... | ... | @@ -1,1410 +1,1410 @@ |
| 1 |
-var __extends = this && this.__extends || function () {
|
|
| 2 |
- var e = function (t, n) {
|
|
| 3 |
- e = Object.setPrototypeOf || {
|
|
| 4 |
- __proto__: [] |
|
| 5 |
- } |
|
| 6 |
- instanceof Array && function (e, t) {
|
|
| 7 |
- e.__proto__ = t |
|
| 8 |
- } || function (e, t) {
|
|
| 9 |
- for (var n in t) |
|
| 10 |
- if (Object.prototype.hasOwnProperty.call(t, n)) e[n] = t[n] |
|
| 11 |
- }; |
|
| 12 |
- return e(t, n) |
|
| 13 |
- }; |
|
| 14 |
- return function (t, n) {
|
|
| 15 |
- e(t, n); |
|
| 16 |
- |
|
| 17 |
- function r() {
|
|
| 18 |
- this.constructor = t |
|
| 19 |
- } |
|
| 20 |
- t.prototype = n === null ? Object.create(n) : (r.prototype = n.prototype, new r) |
|
| 21 |
- } |
|
| 22 |
-}(); |
|
| 23 |
-var __awaiter = this && this.__awaiter || function (e, t, n, r) {
|
|
| 24 |
- function a(e) {
|
|
| 25 |
- return e instanceof n ? e : new n((function (t) {
|
|
| 26 |
- t(e) |
|
| 27 |
- })) |
|
| 28 |
- } |
|
| 29 |
- return new(n || (n = Promise))((function (n, i) {
|
|
| 30 |
- function $(e) {
|
|
| 31 |
- try {
|
|
| 32 |
- s(r.next(e)) |
|
| 33 |
- } catch (e) {
|
|
| 34 |
- i(e) |
|
| 35 |
- } |
|
| 36 |
- } |
|
| 37 |
- |
|
| 38 |
- function l(e) {
|
|
| 39 |
- try {
|
|
| 40 |
- s(r["throw"](e)) |
|
| 41 |
- } catch (e) {
|
|
| 42 |
- i(e) |
|
| 43 |
- } |
|
| 44 |
- } |
|
| 45 |
- |
|
| 46 |
- function s(e) {
|
|
| 47 |
- e.done ? n(e.value) : a(e.value).then($, l) |
|
| 48 |
- } |
|
| 49 |
- s((r = r.apply(e, t || [])).next()) |
|
| 50 |
- })) |
|
| 51 |
-}; |
|
| 52 |
-var __generator = this && this.__generator || function (e, t) {
|
|
| 53 |
- var n = {
|
|
| 54 |
- label: 0, |
|
| 55 |
- sent: function () {
|
|
| 56 |
- if (i[0] & 1) throw i[1]; |
|
| 57 |
- return i[1] |
|
| 58 |
- }, |
|
| 59 |
- trys: [], |
|
| 60 |
- ops: [] |
|
| 61 |
- }, |
|
| 62 |
- r, a, i, $; |
|
| 63 |
- return $ = {
|
|
| 64 |
- next: l(0), |
|
| 65 |
- throw: l(1), |
|
| 66 |
- return: l(2) |
|
| 67 |
- }, typeof Symbol === "function" && ($[Symbol.iterator] = function () {
|
|
| 68 |
- return this |
|
| 69 |
- }), $; |
|
| 70 |
- |
|
| 71 |
- function l(e) {
|
|
| 72 |
- return function (t) {
|
|
| 73 |
- return s([e, t]) |
|
| 74 |
- } |
|
| 75 |
- } |
|
| 76 |
- |
|
| 77 |
- function s($) {
|
|
| 78 |
- if (r) throw new TypeError("Generator is already executing.");
|
|
| 79 |
- while (n) try {
|
|
| 80 |
- if (r = 1, a && (i = $[0] & 2 ? a["return"] : $[0] ? a["throw"] || ((i = a["return"]) && i.call(a), 0) : a.next) && !(i = i.call(a, $[1])).done) return i; |
|
| 81 |
- if (a = 0, i) $ = [$[0] & 2, i.value]; |
|
| 82 |
- switch ($[0]) {
|
|
| 83 |
- case 0: |
|
| 84 |
- case 1: |
|
| 85 |
- i = $; |
|
| 86 |
- break; |
|
| 87 |
- case 4: |
|
| 88 |
- n.label++; |
|
| 89 |
- return {
|
|
| 90 |
- value: $[1], done: false |
|
| 91 |
- }; |
|
| 92 |
- case 5: |
|
| 93 |
- n.label++; |
|
| 94 |
- a = $[1]; |
|
| 95 |
- $ = [0]; |
|
| 96 |
- continue; |
|
| 97 |
- case 7: |
|
| 98 |
- $ = n.ops.pop(); |
|
| 99 |
- n.trys.pop(); |
|
| 100 |
- continue; |
|
| 101 |
- default: |
|
| 102 |
- if (!(i = n.trys, i = i.length > 0 && i[i.length - 1]) && ($[0] === 6 || $[0] === 2)) {
|
|
| 103 |
- n = 0; |
|
| 104 |
- continue |
|
| 105 |
- } |
|
| 106 |
- if ($[0] === 3 && (!i || $[1] > i[0] && $[1] < i[3])) {
|
|
| 107 |
- n.label = $[1]; |
|
| 108 |
- break |
|
| 109 |
- } |
|
| 110 |
- if ($[0] === 6 && n.label < i[1]) {
|
|
| 111 |
- n.label = i[1]; |
|
| 112 |
- i = $; |
|
| 113 |
- break |
|
| 114 |
- } |
|
| 115 |
- if (i && n.label < i[2]) {
|
|
| 116 |
- n.label = i[2]; |
|
| 117 |
- n.ops.push($); |
|
| 118 |
- break |
|
| 119 |
- } |
|
| 120 |
- if (i[2]) n.ops.pop(); |
|
| 121 |
- n.trys.pop(); |
|
| 122 |
- continue |
|
| 123 |
- } |
|
| 124 |
- $ = t.call(e, n) |
|
| 125 |
- } catch (e) {
|
|
| 126 |
- $ = [6, e]; |
|
| 127 |
- a = 0 |
|
| 128 |
- } finally {
|
|
| 129 |
- r = i = 0 |
|
| 130 |
- } |
|
| 131 |
- if ($[0] & 5) throw $[1]; |
|
| 132 |
- return {
|
|
| 133 |
- value: $[0] ? $[1] : void 0, |
|
| 134 |
- done: true |
|
| 135 |
- } |
|
| 136 |
- } |
|
| 137 |
-}; |
|
| 138 |
-var __spreadArrays = this && this.__spreadArrays || function () {
|
|
| 139 |
- for (var e = 0, t = 0, n = arguments.length; t < n; t++) e += arguments[t].length; |
|
| 140 |
- for (var r = Array(e), a = 0, t = 0; t < n; t++) |
|
| 141 |
- for (var i = arguments[t], $ = 0, l = i.length; $ < l; $++, a++) r[a] = i[$]; |
|
| 142 |
- return r |
|
| 143 |
-}; |
|
| 144 |
-System.register([], (function (e, t) {
|
|
| 145 |
- "use strict"; |
|
| 146 |
- return {
|
|
| 147 |
- execute: function () {
|
|
| 148 |
- var n = this; |
|
| 149 |
- var r = e("N", "duet");
|
|
| 150 |
- var a = false; |
|
| 151 |
- var i = e("w", typeof window !== "undefined" ? window : {});
|
|
| 152 |
- var $ = e("C", i.CSS);
|
|
| 153 |
- var l = e("d", i.document || {
|
|
| 154 |
- head: {}
|
|
| 155 |
- }); |
|
| 156 |
- var s = e("p", {
|
|
| 157 |
- $flags$: 0, |
|
| 158 |
- $resourcesUrl$: "", |
|
| 159 |
- jmp: function (e) {
|
|
| 160 |
- return e() |
|
| 161 |
- }, |
|
| 162 |
- raf: function (e) {
|
|
| 163 |
- return requestAnimationFrame(e) |
|
| 164 |
- }, |
|
| 165 |
- ael: function (e, t, n, r) {
|
|
| 166 |
- return e.addEventListener(t, n, r) |
|
| 167 |
- }, |
|
| 168 |
- rel: function (e, t, n, r) {
|
|
| 169 |
- return e.removeEventListener(t, n, r) |
|
| 170 |
- }, |
|
| 171 |
- ce: function (e, t) {
|
|
| 172 |
- return new CustomEvent(e, t) |
|
| 173 |
- } |
|
| 174 |
- }); |
|
| 175 |
- var o = true; |
|
| 176 |
- var f = e("a", (function (e) {
|
|
| 177 |
- return Promise.resolve(e) |
|
| 178 |
- })); |
|
| 179 |
- var u = function () {
|
|
| 180 |
- try {
|
|
| 181 |
- new CSSStyleSheet; |
|
| 182 |
- return typeof (new CSSStyleSheet).replace === "function" |
|
| 183 |
- } catch (e) {}
|
|
| 184 |
- return false |
|
| 185 |
- }(); |
|
| 186 |
- var c = function (e, t, n, r) {
|
|
| 187 |
- if (n) {
|
|
| 188 |
- n.map((function (n) {
|
|
| 189 |
- var r = n[0], |
|
| 190 |
- a = n[1], |
|
| 191 |
- i = n[2]; |
|
| 192 |
- var $ = d(e, r); |
|
| 193 |
- var l = v(t, i); |
|
| 194 |
- var o = h(r); |
|
| 195 |
- s.ael($, a, l, o); |
|
| 196 |
- (t.$rmListeners$ = t.$rmListeners$ || []).push((function () {
|
|
| 197 |
- return s.rel($, a, l, o) |
|
| 198 |
- })) |
|
| 199 |
- })) |
|
| 200 |
- } |
|
| 201 |
- }; |
|
| 202 |
- var v = function (e, t) {
|
|
| 203 |
- return function (n) {
|
|
| 204 |
- try {
|
|
| 205 |
- {
|
|
| 206 |
- if (e.$flags$ & 256) {
|
|
| 207 |
- e.$lazyInstance$[t](n) |
|
| 208 |
- } else {
|
|
| 209 |
- (e.$queuedListeners$ = e.$queuedListeners$ || []).push([t, n]) |
|
| 210 |
- } |
|
| 211 |
- } |
|
| 212 |
- } catch (e) {
|
|
| 213 |
- Le(e) |
|
| 214 |
- } |
|
| 215 |
- } |
|
| 216 |
- }; |
|
| 217 |
- var d = function (e, t) {
|
|
| 218 |
- if (t & 4) return l; |
|
| 219 |
- return e |
|
| 220 |
- }; |
|
| 221 |
- var h = function (e) {
|
|
| 222 |
- return (e & 2) !== 0 |
|
| 223 |
- }; |
|
| 224 |
- var m = "o"; |
|
| 225 |
- var p = "s"; |
|
| 226 |
- var g = "t"; |
|
| 227 |
- var y = "s-id"; |
|
| 228 |
- var b = "sty-id"; |
|
| 229 |
- var w = "c-id"; |
|
| 230 |
- var S = "{visibility:hidden}.hydrated{visibility:inherit}";
|
|
| 231 |
- var x = function (e, t) {
|
|
| 232 |
- if (t === void 0) {
|
|
| 233 |
- t = "" |
|
| 234 |
- } {
|
|
| 235 |
- return function () {
|
|
| 236 |
- return |
|
| 237 |
- } |
|
| 238 |
- } |
|
| 239 |
- }; |
|
| 240 |
- var _ = function (e, t) {
|
|
| 241 |
- {
|
|
| 242 |
- return function () {
|
|
| 243 |
- return |
|
| 244 |
- } |
|
| 245 |
- } |
|
| 246 |
- }; |
|
| 247 |
- var N = new WeakMap; |
|
| 248 |
- var k = function (e, t, n) {
|
|
| 249 |
- var r = Ee.get(e); |
|
| 250 |
- if (u && n) {
|
|
| 251 |
- r = r || new CSSStyleSheet; |
|
| 252 |
- r.replace(t) |
|
| 253 |
- } else {
|
|
| 254 |
- r = t |
|
| 255 |
- } |
|
| 256 |
- Ee.set(e, r) |
|
| 257 |
- }; |
|
| 258 |
- var R = function (e, t, n, r) {
|
|
| 259 |
- var a = L(t); |
|
| 260 |
- var i = Ee.get(a); |
|
| 261 |
- e = e.nodeType === 11 ? e : l; |
|
| 262 |
- if (i) {
|
|
| 263 |
- if (typeof i === "string") {
|
|
| 264 |
- e = e.head || e; |
|
| 265 |
- var $ = N.get(e); |
|
| 266 |
- var o = void 0; |
|
| 267 |
- if (!$) {
|
|
| 268 |
- N.set(e, $ = new Set) |
|
| 269 |
- } |
|
| 270 |
- if (!$.has(a)) {
|
|
| 271 |
- if (e.host && (o = e.querySelector("[" + b + '="' + a + '"]'))) {
|
|
| 272 |
- o.innerHTML = i |
|
| 273 |
- } else {
|
|
| 274 |
- if (s.$cssShim$) {
|
|
| 275 |
- o = s.$cssShim$.createHostStyle(r, a, i, !!(t.$flags$ & 10)); |
|
| 276 |
- var f = o["s-sc"]; |
|
| 277 |
- if (f) {
|
|
| 278 |
- a = f; |
|
| 279 |
- $ = null |
|
| 280 |
- } |
|
| 281 |
- } else {
|
|
| 282 |
- o = l.createElement("style");
|
|
| 283 |
- o.innerHTML = i |
|
| 284 |
- } |
|
| 285 |
- e.insertBefore(o, e.querySelector("link"))
|
|
| 286 |
- } |
|
| 287 |
- if ($) {
|
|
| 288 |
- $.add(a) |
|
| 289 |
- } |
|
| 290 |
- } |
|
| 291 |
- } else if (!e.adoptedStyleSheets.includes(i)) {
|
|
| 292 |
- e.adoptedStyleSheets = __spreadArrays(e.adoptedStyleSheets, [i]) |
|
| 293 |
- } |
|
| 294 |
- } |
|
| 295 |
- return a |
|
| 296 |
- }; |
|
| 297 |
- var C = function (e) {
|
|
| 298 |
- var t = e.$cmpMeta$; |
|
| 299 |
- var n = e.$hostElement$; |
|
| 300 |
- var r = x("attachStyles", t.$tagName$);
|
|
| 301 |
- var a = R(n.getRootNode(), t, e.$modeName$, n); |
|
| 302 |
- r() |
|
| 303 |
- }; |
|
| 304 |
- var L = function (e, t) {
|
|
| 305 |
- return "sc-" + e.$tagName$ |
|
| 306 |
- }; |
|
| 307 |
- var j = {};
|
|
| 308 |
- var I = "http://www.w3.org/2000/svg"; |
|
| 309 |
- var E = "http://www.w3.org/1999/xhtml"; |
|
| 310 |
- var T = function (e) {
|
|
| 311 |
- e = typeof e; |
|
| 312 |
- return e === "object" || e === "function" |
|
| 313 |
- }; |
|
| 314 |
- var A = e("h", (function (e, t) {
|
|
| 315 |
- var n = []; |
|
| 316 |
- for (var r = 2; r < arguments.length; r++) {
|
|
| 317 |
- n[r - 2] = arguments[r] |
|
| 318 |
- } |
|
| 319 |
- var a = null; |
|
| 320 |
- var i = null; |
|
| 321 |
- var $ = false; |
|
| 322 |
- var l = false; |
|
| 323 |
- var s = []; |
|
| 324 |
- var o = function (t) {
|
|
| 325 |
- for (var n = 0; n < t.length; n++) {
|
|
| 326 |
- a = t[n]; |
|
| 327 |
- if (Array.isArray(a)) {
|
|
| 328 |
- o(a) |
|
| 329 |
- } else if (a != null && typeof a !== "boolean") {
|
|
| 330 |
- if ($ = typeof e !== "function" && !T(a)) {
|
|
| 331 |
- a = String(a) |
|
| 332 |
- } |
|
| 333 |
- if ($ && l) {
|
|
| 334 |
- s[s.length - 1].$text$ += a |
|
| 335 |
- } else {
|
|
| 336 |
- s.push($ ? M(null, a) : a) |
|
| 337 |
- } |
|
| 338 |
- l = $ |
|
| 339 |
- } |
|
| 340 |
- } |
|
| 341 |
- }; |
|
| 342 |
- o(n); |
|
| 343 |
- if (t) {
|
|
| 344 |
- if (t.key) {
|
|
| 345 |
- i = t.key |
|
| 346 |
- } {
|
|
| 347 |
- var f = t.className || t.class; |
|
| 348 |
- if (f) {
|
|
| 349 |
- t.class = typeof f !== "object" ? f : Object.keys(f).filter((function (e) {
|
|
| 350 |
- return f[e] |
|
| 351 |
- })).join(" ")
|
|
| 352 |
- } |
|
| 353 |
- } |
|
| 354 |
- } |
|
| 355 |
- if (typeof e === "function") {
|
|
| 356 |
- return e(t === null ? {} : t, s, q)
|
|
| 357 |
- } |
|
| 358 |
- var u = M(e, null); |
|
| 359 |
- u.$attrs$ = t; |
|
| 360 |
- if (s.length > 0) {
|
|
| 361 |
- u.$children$ = s |
|
| 362 |
- } {
|
|
| 363 |
- u.$key$ = i |
|
| 364 |
- } |
|
| 365 |
- return u |
|
| 366 |
- })); |
|
| 367 |
- var M = function (e, t) {
|
|
| 368 |
- var n = {
|
|
| 369 |
- $flags$: 0, |
|
| 370 |
- $tag$: e, |
|
| 371 |
- $text$: t, |
|
| 372 |
- $elm$: null, |
|
| 373 |
- $children$: null |
|
| 374 |
- }; {
|
|
| 375 |
- n.$attrs$ = null |
|
| 376 |
- } {
|
|
| 377 |
- n.$key$ = null |
|
| 378 |
- } |
|
| 379 |
- return n |
|
| 380 |
- }; |
|
| 381 |
- var O = e("H", {});
|
|
| 382 |
- var P = function (e) {
|
|
| 383 |
- return e && e.$tag$ === O |
|
| 384 |
- }; |
|
| 385 |
- var q = {
|
|
| 386 |
- forEach: function (e, t) {
|
|
| 387 |
- return e.map(z).forEach(t) |
|
| 388 |
- }, |
|
| 389 |
- map: function (e, t) {
|
|
| 390 |
- return e.map(z).map(t).map(B) |
|
| 391 |
- } |
|
| 392 |
- }; |
|
| 393 |
- var z = function (e) {
|
|
| 394 |
- return {
|
|
| 395 |
- vattrs: e.$attrs$, |
|
| 396 |
- vchildren: e.$children$, |
|
| 397 |
- vkey: e.$key$, |
|
| 398 |
- vname: e.$name$, |
|
| 399 |
- vtag: e.$tag$, |
|
| 400 |
- vtext: e.$text$ |
|
| 401 |
- } |
|
| 402 |
- }; |
|
| 403 |
- var B = function (e) {
|
|
| 404 |
- if (typeof e.vtag === "function") {
|
|
| 405 |
- var t = Object.assign({}, e.vattrs);
|
|
| 406 |
- if (e.vkey) {
|
|
| 407 |
- t.key = e.vkey |
|
| 408 |
- } |
|
| 409 |
- if (e.vname) {
|
|
| 410 |
- t.name = e.vname |
|
| 411 |
- } |
|
| 412 |
- return A.apply(void 0, __spreadArrays([e.vtag, t], e.vchildren || [])) |
|
| 413 |
- } |
|
| 414 |
- var n = M(e.vtag, e.vtext); |
|
| 415 |
- n.$attrs$ = e.vattrs; |
|
| 416 |
- n.$children$ = e.vchildren; |
|
| 417 |
- n.$key$ = e.vkey; |
|
| 418 |
- n.$name$ = e.vname; |
|
| 419 |
- return n |
|
| 420 |
- }; |
|
| 421 |
- var H = function (e, t, n, r, a, $) {
|
|
| 422 |
- if (n !== r) {
|
|
| 423 |
- var l = Ce(e, t); |
|
| 424 |
- var o = t.toLowerCase(); |
|
| 425 |
- if (t === "class") {
|
|
| 426 |
- var f = e.classList; |
|
| 427 |
- var u = V(n); |
|
| 428 |
- var c = V(r); |
|
| 429 |
- f.remove.apply(f, u.filter((function (e) {
|
|
| 430 |
- return e && !c.includes(e) |
|
| 431 |
- }))); |
|
| 432 |
- f.add.apply(f, c.filter((function (e) {
|
|
| 433 |
- return e && !u.includes(e) |
|
| 434 |
- }))) |
|
| 435 |
- } else if (t === "key"); |
|
| 436 |
- else if (t === "ref") {
|
|
| 437 |
- if (r) {
|
|
| 438 |
- r(e) |
|
| 439 |
- } |
|
| 440 |
- } else if (!l && t[0] === "o" && t[1] === "n") {
|
|
| 441 |
- if (t[2] === "-") {
|
|
| 442 |
- t = t.slice(3) |
|
| 443 |
- } else if (Ce(i, o)) {
|
|
| 444 |
- t = o.slice(2) |
|
| 445 |
- } else {
|
|
| 446 |
- t = o[2] + t.slice(3) |
|
| 447 |
- } |
|
| 448 |
- if (n) {
|
|
| 449 |
- s.rel(e, t, n, false) |
|
| 450 |
- } |
|
| 451 |
- if (r) {
|
|
| 452 |
- s.ael(e, t, r, false) |
|
| 453 |
- } |
|
| 454 |
- } else {
|
|
| 455 |
- var v = T(r); |
|
| 456 |
- if ((l || v && r !== null) && !a) {
|
|
| 457 |
- try {
|
|
| 458 |
- if (!e.tagName.includes("-")) {
|
|
| 459 |
- var d = r == null ? "" : r; |
|
| 460 |
- if (t === "list") {
|
|
| 461 |
- l = false |
|
| 462 |
- } else if (n == null || e[t] != d) {
|
|
| 463 |
- e[t] = d |
|
| 464 |
- } |
|
| 465 |
- } else {
|
|
| 466 |
- e[t] = r |
|
| 467 |
- } |
|
| 468 |
- } catch (e) {}
|
|
| 469 |
- } |
|
| 470 |
- if (r == null || r === false) {
|
|
| 471 |
- if (r !== false || e.getAttribute(t) === "") {
|
|
| 472 |
- {
|
|
| 473 |
- e.removeAttribute(t) |
|
| 474 |
- } |
|
| 475 |
- } |
|
| 476 |
- } else if ((!l || $ & 4 || a) && !v) {
|
|
| 477 |
- r = r === true ? "" : r; {
|
|
| 478 |
- e.setAttribute(t, r) |
|
| 479 |
- } |
|
| 480 |
- } |
|
| 481 |
- } |
|
| 482 |
- } |
|
| 483 |
- }; |
|
| 484 |
- var U = /\s/; |
|
| 485 |
- var V = function (e) {
|
|
| 486 |
- return !e ? [] : e.split(U) |
|
| 487 |
- }; |
|
| 488 |
- var F = function (e, t, n, r) {
|
|
| 489 |
- var a = t.$elm$.nodeType === 11 && t.$elm$.host ? t.$elm$.host : t.$elm$; |
|
| 490 |
- var i = e && e.$attrs$ || j; |
|
| 491 |
- var $ = t.$attrs$ || j; {
|
|
| 492 |
- for (r in i) {
|
|
| 493 |
- if (!(r in $)) {
|
|
| 494 |
- H(a, r, i[r], undefined, n, t.$flags$) |
|
| 495 |
- } |
|
| 496 |
- } |
|
| 497 |
- } |
|
| 498 |
- for (r in $) {
|
|
| 499 |
- H(a, r, i[r], $[r], n, t.$flags$) |
|
| 500 |
- } |
|
| 501 |
- }; |
|
| 502 |
- var W = function (e, t, n, r) {
|
|
| 503 |
- var i = t.$children$[n]; |
|
| 504 |
- var $ = 0; |
|
| 505 |
- var s; |
|
| 506 |
- var o; |
|
| 507 |
- if (i.$text$ !== null) {
|
|
| 508 |
- s = i.$elm$ = l.createTextNode(i.$text$) |
|
| 509 |
- } else {
|
|
| 510 |
- if (!a) {
|
|
| 511 |
- a = i.$tag$ === "svg" |
|
| 512 |
- } |
|
| 513 |
- s = i.$elm$ = l.createElementNS(a ? I : E, i.$tag$); |
|
| 514 |
- if (a && i.$tag$ === "foreignObject") {
|
|
| 515 |
- a = false |
|
| 516 |
- } {
|
|
| 517 |
- F(null, i, a) |
|
| 518 |
- } |
|
| 519 |
- if (i.$children$) {
|
|
| 520 |
- for ($ = 0; $ < i.$children$.length; ++$) {
|
|
| 521 |
- o = W(e, i, $); |
|
| 522 |
- if (o) {
|
|
| 523 |
- s.appendChild(o) |
|
| 524 |
- } |
|
| 525 |
- } |
|
| 526 |
- } {
|
|
| 527 |
- if (i.$tag$ === "svg") {
|
|
| 528 |
- a = false |
|
| 529 |
- } else if (s.tagName === "foreignObject") {
|
|
| 530 |
- a = true |
|
| 531 |
- } |
|
| 532 |
- } |
|
| 533 |
- } |
|
| 534 |
- return s |
|
| 535 |
- }; |
|
| 536 |
- var G = function (e, t, n, r, a, i) {
|
|
| 537 |
- var $ = e; |
|
| 538 |
- var l; |
|
| 539 |
- for (; a <= i; ++a) {
|
|
| 540 |
- if (r[a]) {
|
|
| 541 |
- l = W(null, n, a); |
|
| 542 |
- if (l) {
|
|
| 543 |
- r[a].$elm$ = l; |
|
| 544 |
- $.insertBefore(l, t) |
|
| 545 |
- } |
|
| 546 |
- } |
|
| 547 |
- } |
|
| 548 |
- }; |
|
| 549 |
- var D = function (e, t, n, r, a) {
|
|
| 550 |
- for (; t <= n; ++t) {
|
|
| 551 |
- if (r = e[t]) {
|
|
| 552 |
- a = r.$elm$; |
|
| 553 |
- X(r); |
|
| 554 |
- a.remove() |
|
| 555 |
- } |
|
| 556 |
- } |
|
| 557 |
- }; |
|
| 558 |
- var J = function (e, t, n, r) {
|
|
| 559 |
- var a = 0; |
|
| 560 |
- var i = 0; |
|
| 561 |
- var $ = 0; |
|
| 562 |
- var l = 0; |
|
| 563 |
- var s = t.length - 1; |
|
| 564 |
- var o = t[0]; |
|
| 565 |
- var f = t[s]; |
|
| 566 |
- var u = r.length - 1; |
|
| 567 |
- var c = r[0]; |
|
| 568 |
- var v = r[u]; |
|
| 569 |
- var d; |
|
| 570 |
- var h; |
|
| 571 |
- while (a <= s && i <= u) {
|
|
| 572 |
- if (o == null) {
|
|
| 573 |
- o = t[++a] |
|
| 574 |
- } else if (f == null) {
|
|
| 575 |
- f = t[--s] |
|
| 576 |
- } else if (c == null) {
|
|
| 577 |
- c = r[++i] |
|
| 578 |
- } else if (v == null) {
|
|
| 579 |
- v = r[--u] |
|
| 580 |
- } else if (K(o, c)) {
|
|
| 581 |
- Q(o, c); |
|
| 582 |
- o = t[++a]; |
|
| 583 |
- c = r[++i] |
|
| 584 |
- } else if (K(f, v)) {
|
|
| 585 |
- Q(f, v); |
|
| 586 |
- f = t[--s]; |
|
| 587 |
- v = r[--u] |
|
| 588 |
- } else if (K(o, v)) {
|
|
| 589 |
- Q(o, v); |
|
| 590 |
- e.insertBefore(o.$elm$, f.$elm$.nextSibling); |
|
| 591 |
- o = t[++a]; |
|
| 592 |
- v = r[--u] |
|
| 593 |
- } else if (K(f, c)) {
|
|
| 594 |
- Q(f, c); |
|
| 595 |
- e.insertBefore(f.$elm$, o.$elm$); |
|
| 596 |
- f = t[--s]; |
|
| 597 |
- c = r[++i] |
|
| 598 |
- } else {
|
|
| 599 |
- $ = -1; {
|
|
| 600 |
- for (l = a; l <= s; ++l) {
|
|
| 601 |
- if (t[l] && t[l].$key$ !== null && t[l].$key$ === c.$key$) {
|
|
| 602 |
- $ = l; |
|
| 603 |
- break |
|
| 604 |
- } |
|
| 605 |
- } |
|
| 606 |
- } |
|
| 607 |
- if ($ >= 0) {
|
|
| 608 |
- h = t[$]; |
|
| 609 |
- if (h.$tag$ !== c.$tag$) {
|
|
| 610 |
- d = W(t && t[i], n, $) |
|
| 611 |
- } else {
|
|
| 612 |
- Q(h, c); |
|
| 613 |
- t[$] = undefined; |
|
| 614 |
- d = h.$elm$ |
|
| 615 |
- } |
|
| 616 |
- c = r[++i] |
|
| 617 |
- } else {
|
|
| 618 |
- d = W(t && t[i], n, i); |
|
| 619 |
- c = r[++i] |
|
| 620 |
- } |
|
| 621 |
- if (d) {
|
|
| 622 |
- {
|
|
| 623 |
- o.$elm$.parentNode.insertBefore(d, o.$elm$) |
|
| 624 |
- } |
|
| 625 |
- } |
|
| 626 |
- } |
|
| 627 |
- } |
|
| 628 |
- if (a > s) {
|
|
| 629 |
- G(e, r[u + 1] == null ? null : r[u + 1].$elm$, n, r, i, u) |
|
| 630 |
- } else if (i > u) {
|
|
| 631 |
- D(t, a, s) |
|
| 632 |
- } |
|
| 633 |
- }; |
|
| 634 |
- var K = function (e, t) {
|
|
| 635 |
- if (e.$tag$ === t.$tag$) {
|
|
| 636 |
- {
|
|
| 637 |
- return e.$key$ === t.$key$ |
|
| 638 |
- } |
|
| 639 |
- } |
|
| 640 |
- return false |
|
| 641 |
- }; |
|
| 642 |
- var Q = function (e, t) {
|
|
| 643 |
- var n = t.$elm$ = e.$elm$; |
|
| 644 |
- var r = e.$children$; |
|
| 645 |
- var i = t.$children$; |
|
| 646 |
- var $ = t.$tag$; |
|
| 647 |
- var l = t.$text$; |
|
| 648 |
- if (l === null) {
|
|
| 649 |
- {
|
|
| 650 |
- a = $ === "svg" ? true : $ === "foreignObject" ? false : a |
|
| 651 |
- } {
|
|
| 652 |
- {
|
|
| 653 |
- F(e, t, a) |
|
| 654 |
- } |
|
| 655 |
- } |
|
| 656 |
- if (r !== null && i !== null) {
|
|
| 657 |
- J(n, r, t, i) |
|
| 658 |
- } else if (i !== null) {
|
|
| 659 |
- if (e.$text$ !== null) {
|
|
| 660 |
- n.textContent = "" |
|
| 661 |
- } |
|
| 662 |
- G(n, null, t, i, 0, i.length - 1) |
|
| 663 |
- } else if (r !== null) {
|
|
| 664 |
- D(r, 0, r.length - 1) |
|
| 665 |
- } |
|
| 666 |
- if (a && $ === "svg") {
|
|
| 667 |
- a = false |
|
| 668 |
- } |
|
| 669 |
- } else if (e.$text$ !== l) {
|
|
| 670 |
- n.data = l |
|
| 671 |
- } |
|
| 672 |
- }; |
|
| 673 |
- var X = function (e) {
|
|
| 674 |
- {
|
|
| 675 |
- e.$attrs$ && e.$attrs$.ref && e.$attrs$.ref(null); |
|
| 676 |
- e.$children$ && e.$children$.map(X) |
|
| 677 |
- } |
|
| 678 |
- }; |
|
| 679 |
- var Y = function (e, t) {
|
|
| 680 |
- var n = e.$hostElement$; |
|
| 681 |
- var r = e.$cmpMeta$; |
|
| 682 |
- var a = e.$vnode$ || M(null, null); |
|
| 683 |
- var i = P(t) ? t : A(null, null, t); |
|
| 684 |
- if (r.$attrsToReflect$) {
|
|
| 685 |
- i.$attrs$ = i.$attrs$ || {};
|
|
| 686 |
- r.$attrsToReflect$.map((function (e) {
|
|
| 687 |
- var t = e[0], |
|
| 688 |
- r = e[1]; |
|
| 689 |
- return i.$attrs$[r] = n[t] |
|
| 690 |
- })) |
|
| 691 |
- } |
|
| 692 |
- i.$tag$ = null; |
|
| 693 |
- i.$flags$ |= 4; |
|
| 694 |
- e.$vnode$ = i; |
|
| 695 |
- i.$elm$ = a.$elm$ = n; |
|
| 696 |
- Q(a, i) |
|
| 697 |
- }; |
|
| 698 |
- var Z = e("g", (function (e) {
|
|
| 699 |
- return Ne(e).$hostElement$ |
|
| 700 |
- })); |
|
| 701 |
- var ee = e("c", (function (e, t, n) {
|
|
| 702 |
- var r = Z(e); |
|
| 703 |
- return {
|
|
| 704 |
- emit: function (e) {
|
|
| 705 |
- return te(r, t, {
|
|
| 706 |
- bubbles: !!(n & 4), |
|
| 707 |
- composed: !!(n & 2), |
|
| 708 |
- cancelable: !!(n & 1), |
|
| 709 |
- detail: e |
|
| 710 |
- }) |
|
| 711 |
- } |
|
| 712 |
- } |
|
| 713 |
- })); |
|
| 714 |
- var te = function (e, t, n) {
|
|
| 715 |
- var r = s.ce(t, n); |
|
| 716 |
- e.dispatchEvent(r); |
|
| 717 |
- return r |
|
| 718 |
- }; |
|
| 719 |
- var ne = function (e, t) {
|
|
| 720 |
- if (t && !e.$onRenderResolve$ && t["s-p"]) {
|
|
| 721 |
- t["s-p"].push(new Promise((function (t) {
|
|
| 722 |
- return e.$onRenderResolve$ = t |
|
| 723 |
- }))) |
|
| 724 |
- } |
|
| 725 |
- }; |
|
| 726 |
- var re = function (e, t) {
|
|
| 727 |
- if (e.$flags$ & 4) {
|
|
| 728 |
- e.$flags$ |= 512; |
|
| 729 |
- return |
|
| 730 |
- } |
|
| 731 |
- ne(e, e.$ancestorComponent$); |
|
| 732 |
- var n = function () {
|
|
| 733 |
- return ae(e, t) |
|
| 734 |
- }; |
|
| 735 |
- return n() |
|
| 736 |
- }; |
|
| 737 |
- var ae = function (e, t) {
|
|
| 738 |
- var n = x("scheduleUpdate", e.$cmpMeta$.$tagName$);
|
|
| 739 |
- var r = e.$lazyInstance$; |
|
| 740 |
- var a; |
|
| 741 |
- if (t) {
|
|
| 742 |
- {
|
|
| 743 |
- e.$flags$ |= 256; |
|
| 744 |
- if (e.$queuedListeners$) {
|
|
| 745 |
- e.$queuedListeners$.map((function (e) {
|
|
| 746 |
- var t = e[0], |
|
| 747 |
- n = e[1]; |
|
| 748 |
- return oe(r, t, n) |
|
| 749 |
- })); |
|
| 750 |
- e.$queuedListeners$ = null |
|
| 751 |
- } |
|
| 752 |
- } |
|
| 753 |
- } |
|
| 754 |
- n(); |
|
| 755 |
- return fe(a, (function () {
|
|
| 756 |
- return ie(e, r, t) |
|
| 757 |
- })) |
|
| 758 |
- }; |
|
| 759 |
- var ie = function (e, t, r) {
|
|
| 760 |
- return __awaiter(n, void 0, void 0, (function () {
|
|
| 761 |
- var n, a, i, $, l, o; |
|
| 762 |
- return __generator(this, (function (f) {
|
|
| 763 |
- n = e.$hostElement$; |
|
| 764 |
- a = x("update", e.$cmpMeta$.$tagName$);
|
|
| 765 |
- i = n["s-rc"]; |
|
| 766 |
- if (r) {
|
|
| 767 |
- C(e) |
|
| 768 |
- } |
|
| 769 |
- $ = x("render", e.$cmpMeta$.$tagName$); {
|
|
| 770 |
- $e(e, t) |
|
| 771 |
- } |
|
| 772 |
- if (s.$cssShim$) {
|
|
| 773 |
- s.$cssShim$.updateHost(n) |
|
| 774 |
- } |
|
| 775 |
- if (i) {
|
|
| 776 |
- i.map((function (e) {
|
|
| 777 |
- return e() |
|
| 778 |
- })); |
|
| 779 |
- n["s-rc"] = undefined |
|
| 780 |
- } |
|
| 781 |
- $(); |
|
| 782 |
- a(); {
|
|
| 783 |
- l = n["s-p"]; |
|
| 784 |
- o = function () {
|
|
| 785 |
- return le(e) |
|
| 786 |
- }; |
|
| 787 |
- if (l.length === 0) {
|
|
| 788 |
- o() |
|
| 789 |
- } else {
|
|
| 790 |
- Promise.all(l).then(o); |
|
| 791 |
- e.$flags$ |= 4; |
|
| 792 |
- l.length = 0 |
|
| 793 |
- } |
|
| 794 |
- } |
|
| 795 |
- return [2] |
|
| 796 |
- })) |
|
| 797 |
- })) |
|
| 798 |
- }; |
|
| 799 |
- var $e = function (e, t, n) {
|
|
| 800 |
- try {
|
|
| 801 |
- t = t.render(); {
|
|
| 802 |
- e.$flags$ |= 2 |
|
| 803 |
- } {
|
|
| 804 |
- {
|
|
| 805 |
- {
|
|
| 806 |
- Y(e, t) |
|
| 807 |
- } |
|
| 808 |
- } |
|
| 809 |
- } |
|
| 810 |
- } catch (t) {
|
|
| 811 |
- Le(t, e.$hostElement$) |
|
| 812 |
- } |
|
| 813 |
- return null |
|
| 814 |
- }; |
|
| 815 |
- var le = function (e) {
|
|
| 816 |
- var t = e.$cmpMeta$.$tagName$; |
|
| 817 |
- var n = e.$hostElement$; |
|
| 818 |
- var r = x("postUpdate", t);
|
|
| 819 |
- var a = e.$ancestorComponent$; |
|
| 820 |
- if (!(e.$flags$ & 64)) {
|
|
| 821 |
- e.$flags$ |= 64; {
|
|
| 822 |
- ue(n) |
|
| 823 |
- } |
|
| 824 |
- r(); {
|
|
| 825 |
- e.$onReadyResolve$(n); |
|
| 826 |
- if (!a) {
|
|
| 827 |
- se() |
|
| 828 |
- } |
|
| 829 |
- } |
|
| 830 |
- } else {
|
|
| 831 |
- r() |
|
| 832 |
- } {
|
|
| 833 |
- e.$onInstanceResolve$(n) |
|
| 834 |
- } {
|
|
| 835 |
- if (e.$onRenderResolve$) {
|
|
| 836 |
- e.$onRenderResolve$(); |
|
| 837 |
- e.$onRenderResolve$ = undefined |
|
| 838 |
- } |
|
| 839 |
- if (e.$flags$ & 512) {
|
|
| 840 |
- Te((function () {
|
|
| 841 |
- return re(e, false) |
|
| 842 |
- })) |
|
| 843 |
- } |
|
| 844 |
- e.$flags$ &= ~(4 | 512) |
|
| 845 |
- } |
|
| 846 |
- }; |
|
| 847 |
- var se = function (e) {
|
|
| 848 |
- {
|
|
| 849 |
- ue(l.documentElement) |
|
| 850 |
- } |
|
| 851 |
- Te((function () {
|
|
| 852 |
- return te(i, "appload", {
|
|
| 853 |
- detail: {
|
|
| 854 |
- namespace: r |
|
| 855 |
- } |
|
| 856 |
- }) |
|
| 857 |
- })) |
|
| 858 |
- }; |
|
| 859 |
- var oe = function (e, t, n) {
|
|
| 860 |
- if (e && e[t]) {
|
|
| 861 |
- try {
|
|
| 862 |
- return e[t](n) |
|
| 863 |
- } catch (e) {
|
|
| 864 |
- Le(e) |
|
| 865 |
- } |
|
| 866 |
- } |
|
| 867 |
- return undefined |
|
| 868 |
- }; |
|
| 869 |
- var fe = function (e, t) {
|
|
| 870 |
- return e && e.then ? e.then(t) : t() |
|
| 871 |
- }; |
|
| 872 |
- var ue = function (e) {
|
|
| 873 |
- return e.classList.add("hydrated")
|
|
| 874 |
- }; |
|
| 875 |
- var ce = function (e, t, n, r) {
|
|
| 876 |
- var a = x("hydrateClient", t);
|
|
| 877 |
- var i = e.shadowRoot; |
|
| 878 |
- var $ = []; |
|
| 879 |
- var f = []; |
|
| 880 |
- var u = null; |
|
| 881 |
- var c = r.$vnode$ = M(t, null); |
|
| 882 |
- if (!s.$orgLocNodes$) {
|
|
| 883 |
- de(l.body, s.$orgLocNodes$ = new Map) |
|
| 884 |
- } |
|
| 885 |
- e[y] = n; |
|
| 886 |
- e.removeAttribute(y); |
|
| 887 |
- ve(c, $, f, u, e, e, n); |
|
| 888 |
- $.map((function (e) {
|
|
| 889 |
- var n = e.$hostId$ + "." + e.$nodeId$; |
|
| 890 |
- var r = s.$orgLocNodes$.get(n); |
|
| 891 |
- var a = e.$elm$; |
|
| 892 |
- if (r && o && r["s-en"] === "") {
|
|
| 893 |
- r.parentNode.insertBefore(a, r.nextSibling) |
|
| 894 |
- } |
|
| 895 |
- if (!i) {
|
|
| 896 |
- a["s-hn"] = t; |
|
| 897 |
- if (r) {
|
|
| 898 |
- a["s-ol"] = r; |
|
| 899 |
- a["s-ol"]["s-nr"] = a |
|
| 900 |
- } |
|
| 901 |
- } |
|
| 902 |
- s.$orgLocNodes$.delete(n) |
|
| 903 |
- })); |
|
| 904 |
- a() |
|
| 905 |
- }; |
|
| 906 |
- var ve = function (e, t, n, r, a, i, $) {
|
|
| 907 |
- var l; |
|
| 908 |
- var s; |
|
| 909 |
- var o; |
|
| 910 |
- var f; |
|
| 911 |
- if (i.nodeType === 1) {
|
|
| 912 |
- l = i.getAttribute(w); |
|
| 913 |
- if (l) {
|
|
| 914 |
- s = l.split(".");
|
|
| 915 |
- if (s[0] === $ || s[0] === "0") {
|
|
| 916 |
- o = {
|
|
| 917 |
- $flags$: 0, |
|
| 918 |
- $hostId$: s[0], |
|
| 919 |
- $nodeId$: s[1], |
|
| 920 |
- $depth$: s[2], |
|
| 921 |
- $index$: s[3], |
|
| 922 |
- $tag$: i.tagName.toLowerCase(), |
|
| 923 |
- $elm$: i, |
|
| 924 |
- $attrs$: null, |
|
| 925 |
- $children$: null, |
|
| 926 |
- $key$: null, |
|
| 927 |
- $name$: null, |
|
| 928 |
- $text$: null |
|
| 929 |
- }; |
|
| 930 |
- t.push(o); |
|
| 931 |
- i.removeAttribute(w); |
|
| 932 |
- if (!e.$children$) {
|
|
| 933 |
- e.$children$ = [] |
|
| 934 |
- } |
|
| 935 |
- e.$children$[o.$index$] = o; |
|
| 936 |
- e = o; |
|
| 937 |
- if (r && o.$depth$ === "0") {
|
|
| 938 |
- r[o.$index$] = o.$elm$ |
|
| 939 |
- } |
|
| 940 |
- } |
|
| 941 |
- } |
|
| 942 |
- for (f = i.childNodes.length - 1; f >= 0; f--) {
|
|
| 943 |
- ve(e, t, n, r, a, i.childNodes[f], $) |
|
| 944 |
- } |
|
| 945 |
- if (i.shadowRoot) {
|
|
| 946 |
- for (f = i.shadowRoot.childNodes.length - 1; f >= 0; f--) {
|
|
| 947 |
- ve(e, t, n, r, a, i.shadowRoot.childNodes[f], $) |
|
| 948 |
- } |
|
| 949 |
- } |
|
| 950 |
- } else if (i.nodeType === 8) {
|
|
| 951 |
- s = i.nodeValue.split(".");
|
|
| 952 |
- if (s[1] === $ || s[1] === "0") {
|
|
| 953 |
- l = s[0]; |
|
| 954 |
- o = {
|
|
| 955 |
- $flags$: 0, |
|
| 956 |
- $hostId$: s[1], |
|
| 957 |
- $nodeId$: s[2], |
|
| 958 |
- $depth$: s[3], |
|
| 959 |
- $index$: s[4], |
|
| 960 |
- $elm$: i, |
|
| 961 |
- $attrs$: null, |
|
| 962 |
- $children$: null, |
|
| 963 |
- $key$: null, |
|
| 964 |
- $name$: null, |
|
| 965 |
- $tag$: null, |
|
| 966 |
- $text$: null |
|
| 967 |
- }; |
|
| 968 |
- if (l === g) {
|
|
| 969 |
- o.$elm$ = i.nextSibling; |
|
| 970 |
- if (o.$elm$ && o.$elm$.nodeType === 3) {
|
|
| 971 |
- o.$text$ = o.$elm$.textContent; |
|
| 972 |
- t.push(o); |
|
| 973 |
- i.remove(); |
|
| 974 |
- if (!e.$children$) {
|
|
| 975 |
- e.$children$ = [] |
|
| 976 |
- } |
|
| 977 |
- e.$children$[o.$index$] = o; |
|
| 978 |
- if (r && o.$depth$ === "0") {
|
|
| 979 |
- r[o.$index$] = o.$elm$ |
|
| 980 |
- } |
|
| 981 |
- } |
|
| 982 |
- } else if (o.$hostId$ === $) {
|
|
| 983 |
- if (l === p) {
|
|
| 984 |
- o.$tag$ = "slot"; |
|
| 985 |
- if (s[5]) {
|
|
| 986 |
- i["s-sn"] = o.$name$ = s[5] |
|
| 987 |
- } else {
|
|
| 988 |
- i["s-sn"] = "" |
|
| 989 |
- } |
|
| 990 |
- i["s-sr"] = true; |
|
| 991 |
- n.push(o); |
|
| 992 |
- if (!e.$children$) {
|
|
| 993 |
- e.$children$ = [] |
|
| 994 |
- } |
|
| 995 |
- e.$children$[o.$index$] = o |
|
| 996 |
- } |
|
| 997 |
- } |
|
| 998 |
- } |
|
| 999 |
- } else if (e && e.$tag$ === "style") {
|
|
| 1000 |
- var u = M(null, i.textContent); |
|
| 1001 |
- u.$elm$ = i; |
|
| 1002 |
- u.$index$ = "0"; |
|
| 1003 |
- e.$children$ = [u] |
|
| 1004 |
- } |
|
| 1005 |
- }; |
|
| 1006 |
- var de = function (e, t) {
|
|
| 1007 |
- if (e.nodeType === 1) {
|
|
| 1008 |
- var n = 0; |
|
| 1009 |
- for (; n < e.childNodes.length; n++) {
|
|
| 1010 |
- de(e.childNodes[n], t) |
|
| 1011 |
- } |
|
| 1012 |
- if (e.shadowRoot) {
|
|
| 1013 |
- for (n = 0; n < e.shadowRoot.childNodes.length; n++) {
|
|
| 1014 |
- de(e.shadowRoot.childNodes[n], t) |
|
| 1015 |
- } |
|
| 1016 |
- } |
|
| 1017 |
- } else if (e.nodeType === 8) {
|
|
| 1018 |
- var r = e.nodeValue.split(".");
|
|
| 1019 |
- if (r[0] === m) {
|
|
| 1020 |
- t.set(r[1] + "." + r[2], e); |
|
| 1021 |
- e.nodeValue = ""; |
|
| 1022 |
- e["s-en"] = r[3] |
|
| 1023 |
- } |
|
| 1024 |
- } |
|
| 1025 |
- }; |
|
| 1026 |
- var he = function (e, t) {
|
|
| 1027 |
- if (e != null && !T(e)) {
|
|
| 1028 |
- if (t & 4) {
|
|
| 1029 |
- return e === "false" ? false : e === "" || !!e |
|
| 1030 |
- } |
|
| 1031 |
- if (t & 2) {
|
|
| 1032 |
- return parseFloat(e) |
|
| 1033 |
- } |
|
| 1034 |
- if (t & 1) {
|
|
| 1035 |
- return String(e) |
|
| 1036 |
- } |
|
| 1037 |
- return e |
|
| 1038 |
- } |
|
| 1039 |
- return e |
|
| 1040 |
- }; |
|
| 1041 |
- var me = function (e, t) {
|
|
| 1042 |
- return Ne(e).$instanceValues$.get(t) |
|
| 1043 |
- }; |
|
| 1044 |
- var pe = function (e, t, n, r) {
|
|
| 1045 |
- var a = Ne(e); |
|
| 1046 |
- var i = a.$hostElement$; |
|
| 1047 |
- var $ = a.$instanceValues$.get(t); |
|
| 1048 |
- var l = a.$flags$; |
|
| 1049 |
- var s = a.$lazyInstance$; |
|
| 1050 |
- n = he(n, r.$members$[t][0]); |
|
| 1051 |
- if ((!(l & 8) || $ === undefined) && n !== $) {
|
|
| 1052 |
- a.$instanceValues$.set(t, n); |
|
| 1053 |
- if (s) {
|
|
| 1054 |
- if (r.$watchers$ && l & 128) {
|
|
| 1055 |
- var o = r.$watchers$[t]; |
|
| 1056 |
- if (o) {
|
|
| 1057 |
- o.map((function (e) {
|
|
| 1058 |
- try {
|
|
| 1059 |
- s[e](n, $, t) |
|
| 1060 |
- } catch (e) {
|
|
| 1061 |
- Le(e, i) |
|
| 1062 |
- } |
|
| 1063 |
- })) |
|
| 1064 |
- } |
|
| 1065 |
- } |
|
| 1066 |
- if ((l & (2 | 16)) === 2) {
|
|
| 1067 |
- re(a, false) |
|
| 1068 |
- } |
|
| 1069 |
- } |
|
| 1070 |
- } |
|
| 1071 |
- }; |
|
| 1072 |
- var ge = function (e, t, n) {
|
|
| 1073 |
- if (t.$members$) {
|
|
| 1074 |
- if (e.watchers) {
|
|
| 1075 |
- t.$watchers$ = e.watchers |
|
| 1076 |
- } |
|
| 1077 |
- var r = Object.entries(t.$members$); |
|
| 1078 |
- var a = e.prototype; |
|
| 1079 |
- r.map((function (e) {
|
|
| 1080 |
- var r = e[0], |
|
| 1081 |
- i = e[1][0]; |
|
| 1082 |
- if (i & 31 || n & 2 && i & 32) {
|
|
| 1083 |
- Object.defineProperty(a, r, {
|
|
| 1084 |
- get: function () {
|
|
| 1085 |
- return me(this, r) |
|
| 1086 |
- }, |
|
| 1087 |
- set: function (e) {
|
|
| 1088 |
- pe(this, r, e, t) |
|
| 1089 |
- }, |
|
| 1090 |
- configurable: true, |
|
| 1091 |
- enumerable: true |
|
| 1092 |
- }) |
|
| 1093 |
- } else if (n & 1 && i & 64) {
|
|
| 1094 |
- Object.defineProperty(a, r, {
|
|
| 1095 |
- value: function () {
|
|
| 1096 |
- var e = []; |
|
| 1097 |
- for (var t = 0; t < arguments.length; t++) {
|
|
| 1098 |
- e[t] = arguments[t] |
|
| 1099 |
- } |
|
| 1100 |
- var n = Ne(this); |
|
| 1101 |
- return n.$onInstancePromise$.then((function () {
|
|
| 1102 |
- var t; |
|
| 1103 |
- return (t = n.$lazyInstance$)[r].apply(t, e) |
|
| 1104 |
- })) |
|
| 1105 |
- } |
|
| 1106 |
- }) |
|
| 1107 |
- } |
|
| 1108 |
- })); |
|
| 1109 |
- if (n & 1) {
|
|
| 1110 |
- var i = new Map; |
|
| 1111 |
- a.attributeChangedCallback = function (e, t, n) {
|
|
| 1112 |
- var r = this; |
|
| 1113 |
- s.jmp((function () {
|
|
| 1114 |
- var t = i.get(e); |
|
| 1115 |
- r[t] = n === null && typeof r[t] === "boolean" ? false : n |
|
| 1116 |
- })) |
|
| 1117 |
- }; |
|
| 1118 |
- e.observedAttributes = r.filter((function (e) {
|
|
| 1119 |
- var t = e[0], |
|
| 1120 |
- n = e[1]; |
|
| 1121 |
- return n[0] & 15 |
|
| 1122 |
- })).map((function (e) {
|
|
| 1123 |
- var n = e[0], |
|
| 1124 |
- r = e[1]; |
|
| 1125 |
- var a = r[1] || n; |
|
| 1126 |
- i.set(a, n); |
|
| 1127 |
- if (r[0] & 512) {
|
|
| 1128 |
- t.$attrsToReflect$.push([n, a]) |
|
| 1129 |
- } |
|
| 1130 |
- return a |
|
| 1131 |
- })) |
|
| 1132 |
- } |
|
| 1133 |
- } |
|
| 1134 |
- return e |
|
| 1135 |
- }; |
|
| 1136 |
- var ye = function (e, t, r, a, i) {
|
|
| 1137 |
- return __awaiter(n, void 0, void 0, (function () {
|
|
| 1138 |
- var e, n, a, $, l, s, o; |
|
| 1139 |
- return __generator(this, (function (f) {
|
|
| 1140 |
- switch (f.label) {
|
|
| 1141 |
- case 0: |
|
| 1142 |
- if (!((t.$flags$ & 32) === 0)) return [3, 3]; |
|
| 1143 |
- t.$flags$ |= 32; |
|
| 1144 |
- i = Ie(r); |
|
| 1145 |
- if (!i.then) return [3, 2]; |
|
| 1146 |
- e = _(); |
|
| 1147 |
- return [4, i]; |
|
| 1148 |
- case 1: |
|
| 1149 |
- i = f.sent(); |
|
| 1150 |
- e(); |
|
| 1151 |
- f.label = 2; |
|
| 1152 |
- case 2: |
|
| 1153 |
- if (!i.isProxied) {
|
|
| 1154 |
- {
|
|
| 1155 |
- r.$watchers$ = i.watchers |
|
| 1156 |
- } |
|
| 1157 |
- ge(i, r, 2); |
|
| 1158 |
- i.isProxied = true |
|
| 1159 |
- } |
|
| 1160 |
- n = x("createInstance", r.$tagName$); {
|
|
| 1161 |
- t.$flags$ |= 8 |
|
| 1162 |
- } |
|
| 1163 |
- try {
|
|
| 1164 |
- new i(t) |
|
| 1165 |
- } catch (e) {
|
|
| 1166 |
- Le(e) |
|
| 1167 |
- } {
|
|
| 1168 |
- t.$flags$ &= ~8 |
|
| 1169 |
- } {
|
|
| 1170 |
- t.$flags$ |= 128 |
|
| 1171 |
- } |
|
| 1172 |
- n(); |
|
| 1173 |
- be(t.$lazyInstance$); |
|
| 1174 |
- if (i.style) {
|
|
| 1175 |
- a = i.style; |
|
| 1176 |
- $ = L(r); |
|
| 1177 |
- if (!Ee.has($)) {
|
|
| 1178 |
- l = x("registerStyles", r.$tagName$);
|
|
| 1179 |
- k($, a, !!(r.$flags$ & 1)); |
|
| 1180 |
- l() |
|
| 1181 |
- } |
|
| 1182 |
- } |
|
| 1183 |
- f.label = 3; |
|
| 1184 |
- case 3: |
|
| 1185 |
- s = t.$ancestorComponent$; |
|
| 1186 |
- o = function () {
|
|
| 1187 |
- return re(t, true) |
|
| 1188 |
- }; |
|
| 1189 |
- if (s && s["s-rc"]) {
|
|
| 1190 |
- s["s-rc"].push(o) |
|
| 1191 |
- } else {
|
|
| 1192 |
- o() |
|
| 1193 |
- } |
|
| 1194 |
- return [2] |
|
| 1195 |
- } |
|
| 1196 |
- })) |
|
| 1197 |
- })) |
|
| 1198 |
- }; |
|
| 1199 |
- var be = function (e) {
|
|
| 1200 |
- {
|
|
| 1201 |
- oe(e, "connectedCallback") |
|
| 1202 |
- } |
|
| 1203 |
- }; |
|
| 1204 |
- var we = function (e) {
|
|
| 1205 |
- if ((s.$flags$ & 1) === 0) {
|
|
| 1206 |
- var t = Ne(e); |
|
| 1207 |
- var n = t.$cmpMeta$; |
|
| 1208 |
- var r = x("connectedCallback", n.$tagName$);
|
|
| 1209 |
- if (!(t.$flags$ & 1)) {
|
|
| 1210 |
- t.$flags$ |= 1; |
|
| 1211 |
- var a = void 0; {
|
|
| 1212 |
- a = e.getAttribute(y); |
|
| 1213 |
- if (a) {
|
|
| 1214 |
- ce(e, n.$tagName$, a, t) |
|
| 1215 |
- } |
|
| 1216 |
- } {
|
|
| 1217 |
- var i = e; |
|
| 1218 |
- while (i = i.parentNode || i.host) {
|
|
| 1219 |
- if (i.nodeType === 1 && i.hasAttribute("s-id") && i["s-p"] || i["s-p"]) {
|
|
| 1220 |
- ne(t, t.$ancestorComponent$ = i); |
|
| 1221 |
- break |
|
| 1222 |
- } |
|
| 1223 |
- } |
|
| 1224 |
- } |
|
| 1225 |
- if (n.$members$) {
|
|
| 1226 |
- Object.entries(n.$members$).map((function (t) {
|
|
| 1227 |
- var n = t[0], |
|
| 1228 |
- r = t[1][0]; |
|
| 1229 |
- if (r & 31 && e.hasOwnProperty(n)) {
|
|
| 1230 |
- var a = e[n]; |
|
| 1231 |
- delete e[n]; |
|
| 1232 |
- e[n] = a |
|
| 1233 |
- } |
|
| 1234 |
- })) |
|
| 1235 |
- } {
|
|
| 1236 |
- Te((function () {
|
|
| 1237 |
- return ye(e, t, n) |
|
| 1238 |
- })) |
|
| 1239 |
- } |
|
| 1240 |
- } else {
|
|
| 1241 |
- c(e, t, n.$listeners$); |
|
| 1242 |
- be(t.$lazyInstance$) |
|
| 1243 |
- } |
|
| 1244 |
- r() |
|
| 1245 |
- } |
|
| 1246 |
- }; |
|
| 1247 |
- var Se = function (e) {
|
|
| 1248 |
- if ((s.$flags$ & 1) === 0) {
|
|
| 1249 |
- var t = Ne(e); {
|
|
| 1250 |
- if (t.$rmListeners$) {
|
|
| 1251 |
- t.$rmListeners$.map((function (e) {
|
|
| 1252 |
- return e() |
|
| 1253 |
- })); |
|
| 1254 |
- t.$rmListeners$ = undefined |
|
| 1255 |
- } |
|
| 1256 |
- } |
|
| 1257 |
- if (s.$cssShim$) {
|
|
| 1258 |
- s.$cssShim$.removeHost(e) |
|
| 1259 |
- } |
|
| 1260 |
- } |
|
| 1261 |
- }; |
|
| 1262 |
- var xe = e("b", (function (e, t) {
|
|
| 1263 |
- if (t === void 0) {
|
|
| 1264 |
- t = {}
|
|
| 1265 |
- } |
|
| 1266 |
- var n = x(); |
|
| 1267 |
- var r = []; |
|
| 1268 |
- var a = t.exclude || []; |
|
| 1269 |
- var $ = i.customElements; |
|
| 1270 |
- var o = l.head; |
|
| 1271 |
- var f = o.querySelector("meta[charset]");
|
|
| 1272 |
- var u = l.createElement("style");
|
|
| 1273 |
- var c = []; |
|
| 1274 |
- var v; |
|
| 1275 |
- var d = true; |
|
| 1276 |
- Object.assign(s, t); |
|
| 1277 |
- s.$resourcesUrl$ = new URL(t.resourcesUrl || "./", l.baseURI).href; {
|
|
| 1278 |
- s.$flags$ |= 2 |
|
| 1279 |
- } |
|
| 1280 |
- e.map((function (e) {
|
|
| 1281 |
- return e[1].map((function (t) {
|
|
| 1282 |
- var n = {
|
|
| 1283 |
- $flags$: t[0], |
|
| 1284 |
- $tagName$: t[1], |
|
| 1285 |
- $members$: t[2], |
|
| 1286 |
- $listeners$: t[3] |
|
| 1287 |
- }; {
|
|
| 1288 |
- n.$members$ = t[2] |
|
| 1289 |
- } {
|
|
| 1290 |
- n.$listeners$ = t[3] |
|
| 1291 |
- } {
|
|
| 1292 |
- n.$attrsToReflect$ = [] |
|
| 1293 |
- } {
|
|
| 1294 |
- n.$watchers$ = {}
|
|
| 1295 |
- } |
|
| 1296 |
- var i = n.$tagName$; |
|
| 1297 |
- var l = function (e) {
|
|
| 1298 |
- __extends(t, e); |
|
| 1299 |
- |
|
| 1300 |
- function t(t) {
|
|
| 1301 |
- var r = e.call(this, t) || this; |
|
| 1302 |
- t = r; |
|
| 1303 |
- Re(t, n); |
|
| 1304 |
- return r |
|
| 1305 |
- } |
|
| 1306 |
- t.prototype.connectedCallback = function () {
|
|
| 1307 |
- var e = this; |
|
| 1308 |
- if (v) {
|
|
| 1309 |
- clearTimeout(v); |
|
| 1310 |
- v = null |
|
| 1311 |
- } |
|
| 1312 |
- if (d) {
|
|
| 1313 |
- c.push(this) |
|
| 1314 |
- } else {
|
|
| 1315 |
- s.jmp((function () {
|
|
| 1316 |
- return we(e) |
|
| 1317 |
- })) |
|
| 1318 |
- } |
|
| 1319 |
- }; |
|
| 1320 |
- t.prototype.disconnectedCallback = function () {
|
|
| 1321 |
- var e = this; |
|
| 1322 |
- s.jmp((function () {
|
|
| 1323 |
- return Se(e) |
|
| 1324 |
- })) |
|
| 1325 |
- }; |
|
| 1326 |
- t.prototype.componentOnReady = function () {
|
|
| 1327 |
- return Ne(this).$onReadyPromise$ |
|
| 1328 |
- }; |
|
| 1329 |
- return t |
|
| 1330 |
- }(HTMLElement); |
|
| 1331 |
- n.$lazyBundleId$ = e[0]; |
|
| 1332 |
- if (!a.includes(i) && !$.get(i)) {
|
|
| 1333 |
- r.push(i); |
|
| 1334 |
- $.define(i, ge(l, n, 1)) |
|
| 1335 |
- } |
|
| 1336 |
- })) |
|
| 1337 |
- })); {
|
|
| 1338 |
- u.innerHTML = r + S; |
|
| 1339 |
- u.setAttribute("data-styles", "");
|
|
| 1340 |
- o.insertBefore(u, f ? f.nextSibling : o.firstChild) |
|
| 1341 |
- } |
|
| 1342 |
- d = false; |
|
| 1343 |
- if (c.length) {
|
|
| 1344 |
- c.map((function (e) {
|
|
| 1345 |
- return e.connectedCallback() |
|
| 1346 |
- })) |
|
| 1347 |
- } else {
|
|
| 1348 |
- {
|
|
| 1349 |
- s.jmp((function () {
|
|
| 1350 |
- return v = setTimeout(se, 30) |
|
| 1351 |
- })) |
|
| 1352 |
- } |
|
| 1353 |
- } |
|
| 1354 |
- n() |
|
| 1355 |
- })); |
|
| 1356 |
- var _e = new WeakMap; |
|
| 1357 |
- var Ne = function (e) {
|
|
| 1358 |
- return _e.get(e) |
|
| 1359 |
- }; |
|
| 1360 |
- var ke = e("r", (function (e, t) {
|
|
| 1361 |
- return _e.set(t.$lazyInstance$ = e, t) |
|
| 1362 |
- })); |
|
| 1363 |
- var Re = function (e, t) {
|
|
| 1364 |
- var n = {
|
|
| 1365 |
- $flags$: 0, |
|
| 1366 |
- $hostElement$: e, |
|
| 1367 |
- $cmpMeta$: t, |
|
| 1368 |
- $instanceValues$: new Map |
|
| 1369 |
- }; {
|
|
| 1370 |
- n.$onInstancePromise$ = new Promise((function (e) {
|
|
| 1371 |
- return n.$onInstanceResolve$ = e |
|
| 1372 |
- })) |
|
| 1373 |
- } {
|
|
| 1374 |
- n.$onReadyPromise$ = new Promise((function (e) {
|
|
| 1375 |
- return n.$onReadyResolve$ = e |
|
| 1376 |
- })); |
|
| 1377 |
- e["s-p"] = []; |
|
| 1378 |
- e["s-rc"] = [] |
|
| 1379 |
- } |
|
| 1380 |
- c(e, n, t.$listeners$); |
|
| 1381 |
- return _e.set(e, n) |
|
| 1382 |
- }; |
|
| 1383 |
- var Ce = function (e, t) {
|
|
| 1384 |
- return t in e |
|
| 1385 |
- }; |
|
| 1386 |
- var Le = function (e, t) {
|
|
| 1387 |
- return (0, console.error)(e, t) |
|
| 1388 |
- }; |
|
| 1389 |
- var je = new Map; |
|
| 1390 |
- var Ie = function (e, n, r) {
|
|
| 1391 |
- var a = e.$tagName$.replace(/-/g, "_"); |
|
| 1392 |
- var i = e.$lazyBundleId$; |
|
| 1393 |
- var $ = je.get(i); |
|
| 1394 |
- if ($) {
|
|
| 1395 |
- return $[a] |
|
| 1396 |
- } |
|
| 1397 |
- return t.import("./" + i + ".entry.js" + "").then((function (e) {
|
|
| 1398 |
- {
|
|
| 1399 |
- je.set(i, e) |
|
| 1400 |
- } |
|
| 1401 |
- return e[a] |
|
| 1402 |
- }), Le) |
|
| 1403 |
- }; |
|
| 1404 |
- var Ee = new Map; |
|
| 1405 |
- var Te = function (e) {
|
|
| 1406 |
- return f().then(e) |
|
| 1407 |
- } |
|
| 1408 |
- } |
|
| 1409 |
- } |
|
| 1 |
+var __extends = this && this.__extends || function () {
|
|
| 2 |
+ var e = function (t, n) {
|
|
| 3 |
+ e = Object.setPrototypeOf || {
|
|
| 4 |
+ __proto__: [] |
|
| 5 |
+ } |
|
| 6 |
+ instanceof Array && function (e, t) {
|
|
| 7 |
+ e.__proto__ = t |
|
| 8 |
+ } || function (e, t) {
|
|
| 9 |
+ for (var n in t) |
|
| 10 |
+ if (Object.prototype.hasOwnProperty.call(t, n)) e[n] = t[n] |
|
| 11 |
+ }; |
|
| 12 |
+ return e(t, n) |
|
| 13 |
+ }; |
|
| 14 |
+ return function (t, n) {
|
|
| 15 |
+ e(t, n); |
|
| 16 |
+ |
|
| 17 |
+ function r() {
|
|
| 18 |
+ this.constructor = t |
|
| 19 |
+ } |
|
| 20 |
+ t.prototype = n === null ? Object.create(n) : (r.prototype = n.prototype, new r) |
|
| 21 |
+ } |
|
| 22 |
+}(); |
|
| 23 |
+var __awaiter = this && this.__awaiter || function (e, t, n, r) {
|
|
| 24 |
+ function a(e) {
|
|
| 25 |
+ return e instanceof n ? e : new n((function (t) {
|
|
| 26 |
+ t(e) |
|
| 27 |
+ })) |
|
| 28 |
+ } |
|
| 29 |
+ return new(n || (n = Promise))((function (n, i) {
|
|
| 30 |
+ function $(e) {
|
|
| 31 |
+ try {
|
|
| 32 |
+ s(r.next(e)) |
|
| 33 |
+ } catch (e) {
|
|
| 34 |
+ i(e) |
|
| 35 |
+ } |
|
| 36 |
+ } |
|
| 37 |
+ |
|
| 38 |
+ function l(e) {
|
|
| 39 |
+ try {
|
|
| 40 |
+ s(r["throw"](e)) |
|
| 41 |
+ } catch (e) {
|
|
| 42 |
+ i(e) |
|
| 43 |
+ } |
|
| 44 |
+ } |
|
| 45 |
+ |
|
| 46 |
+ function s(e) {
|
|
| 47 |
+ e.done ? n(e.value) : a(e.value).then($, l) |
|
| 48 |
+ } |
|
| 49 |
+ s((r = r.apply(e, t || [])).next()) |
|
| 50 |
+ })) |
|
| 51 |
+}; |
|
| 52 |
+var __generator = this && this.__generator || function (e, t) {
|
|
| 53 |
+ var n = {
|
|
| 54 |
+ label: 0, |
|
| 55 |
+ sent: function () {
|
|
| 56 |
+ if (i[0] & 1) throw i[1]; |
|
| 57 |
+ return i[1] |
|
| 58 |
+ }, |
|
| 59 |
+ trys: [], |
|
| 60 |
+ ops: [] |
|
| 61 |
+ }, |
|
| 62 |
+ r, a, i, $; |
|
| 63 |
+ return $ = {
|
|
| 64 |
+ next: l(0), |
|
| 65 |
+ throw: l(1), |
|
| 66 |
+ return: l(2) |
|
| 67 |
+ }, typeof Symbol === "function" && ($[Symbol.iterator] = function () {
|
|
| 68 |
+ return this |
|
| 69 |
+ }), $; |
|
| 70 |
+ |
|
| 71 |
+ function l(e) {
|
|
| 72 |
+ return function (t) {
|
|
| 73 |
+ return s([e, t]) |
|
| 74 |
+ } |
|
| 75 |
+ } |
|
| 76 |
+ |
|
| 77 |
+ function s($) {
|
|
| 78 |
+ if (r) throw new TypeError("Generator is already executing.");
|
|
| 79 |
+ while (n) try {
|
|
| 80 |
+ if (r = 1, a && (i = $[0] & 2 ? a["return"] : $[0] ? a["throw"] || ((i = a["return"]) && i.call(a), 0) : a.next) && !(i = i.call(a, $[1])).done) return i; |
|
| 81 |
+ if (a = 0, i) $ = [$[0] & 2, i.value]; |
|
| 82 |
+ switch ($[0]) {
|
|
| 83 |
+ case 0: |
|
| 84 |
+ case 1: |
|
| 85 |
+ i = $; |
|
| 86 |
+ break; |
|
| 87 |
+ case 4: |
|
| 88 |
+ n.label++; |
|
| 89 |
+ return {
|
|
| 90 |
+ value: $[1], done: false |
|
| 91 |
+ }; |
|
| 92 |
+ case 5: |
|
| 93 |
+ n.label++; |
|
| 94 |
+ a = $[1]; |
|
| 95 |
+ $ = [0]; |
|
| 96 |
+ continue; |
|
| 97 |
+ case 7: |
|
| 98 |
+ $ = n.ops.pop(); |
|
| 99 |
+ n.trys.pop(); |
|
| 100 |
+ continue; |
|
| 101 |
+ default: |
|
| 102 |
+ if (!(i = n.trys, i = i.length > 0 && i[i.length - 1]) && ($[0] === 6 || $[0] === 2)) {
|
|
| 103 |
+ n = 0; |
|
| 104 |
+ continue |
|
| 105 |
+ } |
|
| 106 |
+ if ($[0] === 3 && (!i || $[1] > i[0] && $[1] < i[3])) {
|
|
| 107 |
+ n.label = $[1]; |
|
| 108 |
+ break |
|
| 109 |
+ } |
|
| 110 |
+ if ($[0] === 6 && n.label < i[1]) {
|
|
| 111 |
+ n.label = i[1]; |
|
| 112 |
+ i = $; |
|
| 113 |
+ break |
|
| 114 |
+ } |
|
| 115 |
+ if (i && n.label < i[2]) {
|
|
| 116 |
+ n.label = i[2]; |
|
| 117 |
+ n.ops.push($); |
|
| 118 |
+ break |
|
| 119 |
+ } |
|
| 120 |
+ if (i[2]) n.ops.pop(); |
|
| 121 |
+ n.trys.pop(); |
|
| 122 |
+ continue |
|
| 123 |
+ } |
|
| 124 |
+ $ = t.call(e, n) |
|
| 125 |
+ } catch (e) {
|
|
| 126 |
+ $ = [6, e]; |
|
| 127 |
+ a = 0 |
|
| 128 |
+ } finally {
|
|
| 129 |
+ r = i = 0 |
|
| 130 |
+ } |
|
| 131 |
+ if ($[0] & 5) throw $[1]; |
|
| 132 |
+ return {
|
|
| 133 |
+ value: $[0] ? $[1] : void 0, |
|
| 134 |
+ done: true |
|
| 135 |
+ } |
|
| 136 |
+ } |
|
| 137 |
+}; |
|
| 138 |
+var __spreadArrays = this && this.__spreadArrays || function () {
|
|
| 139 |
+ for (var e = 0, t = 0, n = arguments.length; t < n; t++) e += arguments[t].length; |
|
| 140 |
+ for (var r = Array(e), a = 0, t = 0; t < n; t++) |
|
| 141 |
+ for (var i = arguments[t], $ = 0, l = i.length; $ < l; $++, a++) r[a] = i[$]; |
|
| 142 |
+ return r |
|
| 143 |
+}; |
|
| 144 |
+System.register([], (function (e, t) {
|
|
| 145 |
+ "use strict"; |
|
| 146 |
+ return {
|
|
| 147 |
+ execute: function () {
|
|
| 148 |
+ var n = this; |
|
| 149 |
+ var r = e("N", "duet");
|
|
| 150 |
+ var a = false; |
|
| 151 |
+ var i = e("w", typeof window !== "undefined" ? window : {});
|
|
| 152 |
+ var $ = e("C", i.CSS);
|
|
| 153 |
+ var l = e("d", i.document || {
|
|
| 154 |
+ head: {}
|
|
| 155 |
+ }); |
|
| 156 |
+ var s = e("p", {
|
|
| 157 |
+ $flags$: 0, |
|
| 158 |
+ $resourcesUrl$: "", |
|
| 159 |
+ jmp: function (e) {
|
|
| 160 |
+ return e() |
|
| 161 |
+ }, |
|
| 162 |
+ raf: function (e) {
|
|
| 163 |
+ return requestAnimationFrame(e) |
|
| 164 |
+ }, |
|
| 165 |
+ ael: function (e, t, n, r) {
|
|
| 166 |
+ return e.addEventListener(t, n, r) |
|
| 167 |
+ }, |
|
| 168 |
+ rel: function (e, t, n, r) {
|
|
| 169 |
+ return e.removeEventListener(t, n, r) |
|
| 170 |
+ }, |
|
| 171 |
+ ce: function (e, t) {
|
|
| 172 |
+ return new CustomEvent(e, t) |
|
| 173 |
+ } |
|
| 174 |
+ }); |
|
| 175 |
+ var o = true; |
|
| 176 |
+ var f = e("a", (function (e) {
|
|
| 177 |
+ return Promise.resolve(e) |
|
| 178 |
+ })); |
|
| 179 |
+ var u = function () {
|
|
| 180 |
+ try {
|
|
| 181 |
+ new CSSStyleSheet; |
|
| 182 |
+ return typeof (new CSSStyleSheet).replace === "function" |
|
| 183 |
+ } catch (e) {}
|
|
| 184 |
+ return false |
|
| 185 |
+ }(); |
|
| 186 |
+ var c = function (e, t, n, r) {
|
|
| 187 |
+ if (n) {
|
|
| 188 |
+ n.map((function (n) {
|
|
| 189 |
+ var r = n[0], |
|
| 190 |
+ a = n[1], |
|
| 191 |
+ i = n[2]; |
|
| 192 |
+ var $ = d(e, r); |
|
| 193 |
+ var l = v(t, i); |
|
| 194 |
+ var o = h(r); |
|
| 195 |
+ s.ael($, a, l, o); |
|
| 196 |
+ (t.$rmListeners$ = t.$rmListeners$ || []).push((function () {
|
|
| 197 |
+ return s.rel($, a, l, o) |
|
| 198 |
+ })) |
|
| 199 |
+ })) |
|
| 200 |
+ } |
|
| 201 |
+ }; |
|
| 202 |
+ var v = function (e, t) {
|
|
| 203 |
+ return function (n) {
|
|
| 204 |
+ try {
|
|
| 205 |
+ {
|
|
| 206 |
+ if (e.$flags$ & 256) {
|
|
| 207 |
+ e.$lazyInstance$[t](n) |
|
| 208 |
+ } else {
|
|
| 209 |
+ (e.$queuedListeners$ = e.$queuedListeners$ || []).push([t, n]) |
|
| 210 |
+ } |
|
| 211 |
+ } |
|
| 212 |
+ } catch (e) {
|
|
| 213 |
+ Le(e) |
|
| 214 |
+ } |
|
| 215 |
+ } |
|
| 216 |
+ }; |
|
| 217 |
+ var d = function (e, t) {
|
|
| 218 |
+ if (t & 4) return l; |
|
| 219 |
+ return e |
|
| 220 |
+ }; |
|
| 221 |
+ var h = function (e) {
|
|
| 222 |
+ return (e & 2) !== 0 |
|
| 223 |
+ }; |
|
| 224 |
+ var m = "o"; |
|
| 225 |
+ var p = "s"; |
|
| 226 |
+ var g = "t"; |
|
| 227 |
+ var y = "s-id"; |
|
| 228 |
+ var b = "sty-id"; |
|
| 229 |
+ var w = "c-id"; |
|
| 230 |
+ var S = "{visibility:hidden}.hydrated{visibility:inherit}";
|
|
| 231 |
+ var x = function (e, t) {
|
|
| 232 |
+ if (t === void 0) {
|
|
| 233 |
+ t = "" |
|
| 234 |
+ } {
|
|
| 235 |
+ return function () {
|
|
| 236 |
+ return |
|
| 237 |
+ } |
|
| 238 |
+ } |
|
| 239 |
+ }; |
|
| 240 |
+ var _ = function (e, t) {
|
|
| 241 |
+ {
|
|
| 242 |
+ return function () {
|
|
| 243 |
+ return |
|
| 244 |
+ } |
|
| 245 |
+ } |
|
| 246 |
+ }; |
|
| 247 |
+ var N = new WeakMap; |
|
| 248 |
+ var k = function (e, t, n) {
|
|
| 249 |
+ var r = Ee.get(e); |
|
| 250 |
+ if (u && n) {
|
|
| 251 |
+ r = r || new CSSStyleSheet; |
|
| 252 |
+ r.replace(t) |
|
| 253 |
+ } else {
|
|
| 254 |
+ r = t |
|
| 255 |
+ } |
|
| 256 |
+ Ee.set(e, r) |
|
| 257 |
+ }; |
|
| 258 |
+ var R = function (e, t, n, r) {
|
|
| 259 |
+ var a = L(t); |
|
| 260 |
+ var i = Ee.get(a); |
|
| 261 |
+ e = e.nodeType === 11 ? e : l; |
|
| 262 |
+ if (i) {
|
|
| 263 |
+ if (typeof i === "string") {
|
|
| 264 |
+ e = e.head || e; |
|
| 265 |
+ var $ = N.get(e); |
|
| 266 |
+ var o = void 0; |
|
| 267 |
+ if (!$) {
|
|
| 268 |
+ N.set(e, $ = new Set) |
|
| 269 |
+ } |
|
| 270 |
+ if (!$.has(a)) {
|
|
| 271 |
+ if (e.host && (o = e.querySelector("[" + b + '="' + a + '"]'))) {
|
|
| 272 |
+ o.innerHTML = i |
|
| 273 |
+ } else {
|
|
| 274 |
+ if (s.$cssShim$) {
|
|
| 275 |
+ o = s.$cssShim$.createHostStyle(r, a, i, !!(t.$flags$ & 10)); |
|
| 276 |
+ var f = o["s-sc"]; |
|
| 277 |
+ if (f) {
|
|
| 278 |
+ a = f; |
|
| 279 |
+ $ = null |
|
| 280 |
+ } |
|
| 281 |
+ } else {
|
|
| 282 |
+ o = l.createElement("style");
|
|
| 283 |
+ o.innerHTML = i |
|
| 284 |
+ } |
|
| 285 |
+ e.insertBefore(o, e.querySelector("link"))
|
|
| 286 |
+ } |
|
| 287 |
+ if ($) {
|
|
| 288 |
+ $.add(a) |
|
| 289 |
+ } |
|
| 290 |
+ } |
|
| 291 |
+ } else if (!e.adoptedStyleSheets.includes(i)) {
|
|
| 292 |
+ e.adoptedStyleSheets = __spreadArrays(e.adoptedStyleSheets, [i]) |
|
| 293 |
+ } |
|
| 294 |
+ } |
|
| 295 |
+ return a |
|
| 296 |
+ }; |
|
| 297 |
+ var C = function (e) {
|
|
| 298 |
+ var t = e.$cmpMeta$; |
|
| 299 |
+ var n = e.$hostElement$; |
|
| 300 |
+ var r = x("attachStyles", t.$tagName$);
|
|
| 301 |
+ var a = R(n.getRootNode(), t, e.$modeName$, n); |
|
| 302 |
+ r() |
|
| 303 |
+ }; |
|
| 304 |
+ var L = function (e, t) {
|
|
| 305 |
+ return "sc-" + e.$tagName$ |
|
| 306 |
+ }; |
|
| 307 |
+ var j = {};
|
|
| 308 |
+ var I = "http://www.w3.org/2000/svg"; |
|
| 309 |
+ var E = "http://www.w3.org/1999/xhtml"; |
|
| 310 |
+ var T = function (e) {
|
|
| 311 |
+ e = typeof e; |
|
| 312 |
+ return e === "object" || e === "function" |
|
| 313 |
+ }; |
|
| 314 |
+ var A = e("h", (function (e, t) {
|
|
| 315 |
+ var n = []; |
|
| 316 |
+ for (var r = 2; r < arguments.length; r++) {
|
|
| 317 |
+ n[r - 2] = arguments[r] |
|
| 318 |
+ } |
|
| 319 |
+ var a = null; |
|
| 320 |
+ var i = null; |
|
| 321 |
+ var $ = false; |
|
| 322 |
+ var l = false; |
|
| 323 |
+ var s = []; |
|
| 324 |
+ var o = function (t) {
|
|
| 325 |
+ for (var n = 0; n < t.length; n++) {
|
|
| 326 |
+ a = t[n]; |
|
| 327 |
+ if (Array.isArray(a)) {
|
|
| 328 |
+ o(a) |
|
| 329 |
+ } else if (a != null && typeof a !== "boolean") {
|
|
| 330 |
+ if ($ = typeof e !== "function" && !T(a)) {
|
|
| 331 |
+ a = String(a) |
|
| 332 |
+ } |
|
| 333 |
+ if ($ && l) {
|
|
| 334 |
+ s[s.length - 1].$text$ += a |
|
| 335 |
+ } else {
|
|
| 336 |
+ s.push($ ? M(null, a) : a) |
|
| 337 |
+ } |
|
| 338 |
+ l = $ |
|
| 339 |
+ } |
|
| 340 |
+ } |
|
| 341 |
+ }; |
|
| 342 |
+ o(n); |
|
| 343 |
+ if (t) {
|
|
| 344 |
+ if (t.key) {
|
|
| 345 |
+ i = t.key |
|
| 346 |
+ } {
|
|
| 347 |
+ var f = t.className || t.class; |
|
| 348 |
+ if (f) {
|
|
| 349 |
+ t.class = typeof f !== "object" ? f : Object.keys(f).filter((function (e) {
|
|
| 350 |
+ return f[e] |
|
| 351 |
+ })).join(" ")
|
|
| 352 |
+ } |
|
| 353 |
+ } |
|
| 354 |
+ } |
|
| 355 |
+ if (typeof e === "function") {
|
|
| 356 |
+ return e(t === null ? {} : t, s, q)
|
|
| 357 |
+ } |
|
| 358 |
+ var u = M(e, null); |
|
| 359 |
+ u.$attrs$ = t; |
|
| 360 |
+ if (s.length > 0) {
|
|
| 361 |
+ u.$children$ = s |
|
| 362 |
+ } {
|
|
| 363 |
+ u.$key$ = i |
|
| 364 |
+ } |
|
| 365 |
+ return u |
|
| 366 |
+ })); |
|
| 367 |
+ var M = function (e, t) {
|
|
| 368 |
+ var n = {
|
|
| 369 |
+ $flags$: 0, |
|
| 370 |
+ $tag$: e, |
|
| 371 |
+ $text$: t, |
|
| 372 |
+ $elm$: null, |
|
| 373 |
+ $children$: null |
|
| 374 |
+ }; {
|
|
| 375 |
+ n.$attrs$ = null |
|
| 376 |
+ } {
|
|
| 377 |
+ n.$key$ = null |
|
| 378 |
+ } |
|
| 379 |
+ return n |
|
| 380 |
+ }; |
|
| 381 |
+ var O = e("H", {});
|
|
| 382 |
+ var P = function (e) {
|
|
| 383 |
+ return e && e.$tag$ === O |
|
| 384 |
+ }; |
|
| 385 |
+ var q = {
|
|
| 386 |
+ forEach: function (e, t) {
|
|
| 387 |
+ return e.map(z).forEach(t) |
|
| 388 |
+ }, |
|
| 389 |
+ map: function (e, t) {
|
|
| 390 |
+ return e.map(z).map(t).map(B) |
|
| 391 |
+ } |
|
| 392 |
+ }; |
|
| 393 |
+ var z = function (e) {
|
|
| 394 |
+ return {
|
|
| 395 |
+ vattrs: e.$attrs$, |
|
| 396 |
+ vchildren: e.$children$, |
|
| 397 |
+ vkey: e.$key$, |
|
| 398 |
+ vname: e.$name$, |
|
| 399 |
+ vtag: e.$tag$, |
|
| 400 |
+ vtext: e.$text$ |
|
| 401 |
+ } |
|
| 402 |
+ }; |
|
| 403 |
+ var B = function (e) {
|
|
| 404 |
+ if (typeof e.vtag === "function") {
|
|
| 405 |
+ var t = Object.assign({}, e.vattrs);
|
|
| 406 |
+ if (e.vkey) {
|
|
| 407 |
+ t.key = e.vkey |
|
| 408 |
+ } |
|
| 409 |
+ if (e.vname) {
|
|
| 410 |
+ t.name = e.vname |
|
| 411 |
+ } |
|
| 412 |
+ return A.apply(void 0, __spreadArrays([e.vtag, t], e.vchildren || [])) |
|
| 413 |
+ } |
|
| 414 |
+ var n = M(e.vtag, e.vtext); |
|
| 415 |
+ n.$attrs$ = e.vattrs; |
|
| 416 |
+ n.$children$ = e.vchildren; |
|
| 417 |
+ n.$key$ = e.vkey; |
|
| 418 |
+ n.$name$ = e.vname; |
|
| 419 |
+ return n |
|
| 420 |
+ }; |
|
| 421 |
+ var H = function (e, t, n, r, a, $) {
|
|
| 422 |
+ if (n !== r) {
|
|
| 423 |
+ var l = Ce(e, t); |
|
| 424 |
+ var o = t.toLowerCase(); |
|
| 425 |
+ if (t === "class") {
|
|
| 426 |
+ var f = e.classList; |
|
| 427 |
+ var u = V(n); |
|
| 428 |
+ var c = V(r); |
|
| 429 |
+ f.remove.apply(f, u.filter((function (e) {
|
|
| 430 |
+ return e && !c.includes(e) |
|
| 431 |
+ }))); |
|
| 432 |
+ f.add.apply(f, c.filter((function (e) {
|
|
| 433 |
+ return e && !u.includes(e) |
|
| 434 |
+ }))) |
|
| 435 |
+ } else if (t === "key"); |
|
| 436 |
+ else if (t === "ref") {
|
|
| 437 |
+ if (r) {
|
|
| 438 |
+ r(e) |
|
| 439 |
+ } |
|
| 440 |
+ } else if (!l && t[0] === "o" && t[1] === "n") {
|
|
| 441 |
+ if (t[2] === "-") {
|
|
| 442 |
+ t = t.slice(3) |
|
| 443 |
+ } else if (Ce(i, o)) {
|
|
| 444 |
+ t = o.slice(2) |
|
| 445 |
+ } else {
|
|
| 446 |
+ t = o[2] + t.slice(3) |
|
| 447 |
+ } |
|
| 448 |
+ if (n) {
|
|
| 449 |
+ s.rel(e, t, n, false) |
|
| 450 |
+ } |
|
| 451 |
+ if (r) {
|
|
| 452 |
+ s.ael(e, t, r, false) |
|
| 453 |
+ } |
|
| 454 |
+ } else {
|
|
| 455 |
+ var v = T(r); |
|
| 456 |
+ if ((l || v && r !== null) && !a) {
|
|
| 457 |
+ try {
|
|
| 458 |
+ if (!e.tagName.includes("-")) {
|
|
| 459 |
+ var d = r == null ? "" : r; |
|
| 460 |
+ if (t === "list") {
|
|
| 461 |
+ l = false |
|
| 462 |
+ } else if (n == null || e[t] != d) {
|
|
| 463 |
+ e[t] = d |
|
| 464 |
+ } |
|
| 465 |
+ } else {
|
|
| 466 |
+ e[t] = r |
|
| 467 |
+ } |
|
| 468 |
+ } catch (e) {}
|
|
| 469 |
+ } |
|
| 470 |
+ if (r == null || r === false) {
|
|
| 471 |
+ if (r !== false || e.getAttribute(t) === "") {
|
|
| 472 |
+ {
|
|
| 473 |
+ e.removeAttribute(t) |
|
| 474 |
+ } |
|
| 475 |
+ } |
|
| 476 |
+ } else if ((!l || $ & 4 || a) && !v) {
|
|
| 477 |
+ r = r === true ? "" : r; {
|
|
| 478 |
+ e.setAttribute(t, r) |
|
| 479 |
+ } |
|
| 480 |
+ } |
|
| 481 |
+ } |
|
| 482 |
+ } |
|
| 483 |
+ }; |
|
| 484 |
+ var U = /\s/; |
|
| 485 |
+ var V = function (e) {
|
|
| 486 |
+ return !e ? [] : e.split(U) |
|
| 487 |
+ }; |
|
| 488 |
+ var F = function (e, t, n, r) {
|
|
| 489 |
+ var a = t.$elm$.nodeType === 11 && t.$elm$.host ? t.$elm$.host : t.$elm$; |
|
| 490 |
+ var i = e && e.$attrs$ || j; |
|
| 491 |
+ var $ = t.$attrs$ || j; {
|
|
| 492 |
+ for (r in i) {
|
|
| 493 |
+ if (!(r in $)) {
|
|
| 494 |
+ H(a, r, i[r], undefined, n, t.$flags$) |
|
| 495 |
+ } |
|
| 496 |
+ } |
|
| 497 |
+ } |
|
| 498 |
+ for (r in $) {
|
|
| 499 |
+ H(a, r, i[r], $[r], n, t.$flags$) |
|
| 500 |
+ } |
|
| 501 |
+ }; |
|
| 502 |
+ var W = function (e, t, n, r) {
|
|
| 503 |
+ var i = t.$children$[n]; |
|
| 504 |
+ var $ = 0; |
|
| 505 |
+ var s; |
|
| 506 |
+ var o; |
|
| 507 |
+ if (i.$text$ !== null) {
|
|
| 508 |
+ s = i.$elm$ = l.createTextNode(i.$text$) |
|
| 509 |
+ } else {
|
|
| 510 |
+ if (!a) {
|
|
| 511 |
+ a = i.$tag$ === "svg" |
|
| 512 |
+ } |
|
| 513 |
+ s = i.$elm$ = l.createElementNS(a ? I : E, i.$tag$); |
|
| 514 |
+ if (a && i.$tag$ === "foreignObject") {
|
|
| 515 |
+ a = false |
|
| 516 |
+ } {
|
|
| 517 |
+ F(null, i, a) |
|
| 518 |
+ } |
|
| 519 |
+ if (i.$children$) {
|
|
| 520 |
+ for ($ = 0; $ < i.$children$.length; ++$) {
|
|
| 521 |
+ o = W(e, i, $); |
|
| 522 |
+ if (o) {
|
|
| 523 |
+ s.appendChild(o) |
|
| 524 |
+ } |
|
| 525 |
+ } |
|
| 526 |
+ } {
|
|
| 527 |
+ if (i.$tag$ === "svg") {
|
|
| 528 |
+ a = false |
|
| 529 |
+ } else if (s.tagName === "foreignObject") {
|
|
| 530 |
+ a = true |
|
| 531 |
+ } |
|
| 532 |
+ } |
|
| 533 |
+ } |
|
| 534 |
+ return s |
|
| 535 |
+ }; |
|
| 536 |
+ var G = function (e, t, n, r, a, i) {
|
|
| 537 |
+ var $ = e; |
|
| 538 |
+ var l; |
|
| 539 |
+ for (; a <= i; ++a) {
|
|
| 540 |
+ if (r[a]) {
|
|
| 541 |
+ l = W(null, n, a); |
|
| 542 |
+ if (l) {
|
|
| 543 |
+ r[a].$elm$ = l; |
|
| 544 |
+ $.insertBefore(l, t) |
|
| 545 |
+ } |
|
| 546 |
+ } |
|
| 547 |
+ } |
|
| 548 |
+ }; |
|
| 549 |
+ var D = function (e, t, n, r, a) {
|
|
| 550 |
+ for (; t <= n; ++t) {
|
|
| 551 |
+ if (r = e[t]) {
|
|
| 552 |
+ a = r.$elm$; |
|
| 553 |
+ X(r); |
|
| 554 |
+ a.remove() |
|
| 555 |
+ } |
|
| 556 |
+ } |
|
| 557 |
+ }; |
|
| 558 |
+ var J = function (e, t, n, r) {
|
|
| 559 |
+ var a = 0; |
|
| 560 |
+ var i = 0; |
|
| 561 |
+ var $ = 0; |
|
| 562 |
+ var l = 0; |
|
| 563 |
+ var s = t.length - 1; |
|
| 564 |
+ var o = t[0]; |
|
| 565 |
+ var f = t[s]; |
|
| 566 |
+ var u = r.length - 1; |
|
| 567 |
+ var c = r[0]; |
|
| 568 |
+ var v = r[u]; |
|
| 569 |
+ var d; |
|
| 570 |
+ var h; |
|
| 571 |
+ while (a <= s && i <= u) {
|
|
| 572 |
+ if (o == null) {
|
|
| 573 |
+ o = t[++a] |
|
| 574 |
+ } else if (f == null) {
|
|
| 575 |
+ f = t[--s] |
|
| 576 |
+ } else if (c == null) {
|
|
| 577 |
+ c = r[++i] |
|
| 578 |
+ } else if (v == null) {
|
|
| 579 |
+ v = r[--u] |
|
| 580 |
+ } else if (K(o, c)) {
|
|
| 581 |
+ Q(o, c); |
|
| 582 |
+ o = t[++a]; |
|
| 583 |
+ c = r[++i] |
|
| 584 |
+ } else if (K(f, v)) {
|
|
| 585 |
+ Q(f, v); |
|
| 586 |
+ f = t[--s]; |
|
| 587 |
+ v = r[--u] |
|
| 588 |
+ } else if (K(o, v)) {
|
|
| 589 |
+ Q(o, v); |
|
| 590 |
+ e.insertBefore(o.$elm$, f.$elm$.nextSibling); |
|
| 591 |
+ o = t[++a]; |
|
| 592 |
+ v = r[--u] |
|
| 593 |
+ } else if (K(f, c)) {
|
|
| 594 |
+ Q(f, c); |
|
| 595 |
+ e.insertBefore(f.$elm$, o.$elm$); |
|
| 596 |
+ f = t[--s]; |
|
| 597 |
+ c = r[++i] |
|
| 598 |
+ } else {
|
|
| 599 |
+ $ = -1; {
|
|
| 600 |
+ for (l = a; l <= s; ++l) {
|
|
| 601 |
+ if (t[l] && t[l].$key$ !== null && t[l].$key$ === c.$key$) {
|
|
| 602 |
+ $ = l; |
|
| 603 |
+ break |
|
| 604 |
+ } |
|
| 605 |
+ } |
|
| 606 |
+ } |
|
| 607 |
+ if ($ >= 0) {
|
|
| 608 |
+ h = t[$]; |
|
| 609 |
+ if (h.$tag$ !== c.$tag$) {
|
|
| 610 |
+ d = W(t && t[i], n, $) |
|
| 611 |
+ } else {
|
|
| 612 |
+ Q(h, c); |
|
| 613 |
+ t[$] = undefined; |
|
| 614 |
+ d = h.$elm$ |
|
| 615 |
+ } |
|
| 616 |
+ c = r[++i] |
|
| 617 |
+ } else {
|
|
| 618 |
+ d = W(t && t[i], n, i); |
|
| 619 |
+ c = r[++i] |
|
| 620 |
+ } |
|
| 621 |
+ if (d) {
|
|
| 622 |
+ {
|
|
| 623 |
+ o.$elm$.parentNode.insertBefore(d, o.$elm$) |
|
| 624 |
+ } |
|
| 625 |
+ } |
|
| 626 |
+ } |
|
| 627 |
+ } |
|
| 628 |
+ if (a > s) {
|
|
| 629 |
+ G(e, r[u + 1] == null ? null : r[u + 1].$elm$, n, r, i, u) |
|
| 630 |
+ } else if (i > u) {
|
|
| 631 |
+ D(t, a, s) |
|
| 632 |
+ } |
|
| 633 |
+ }; |
|
| 634 |
+ var K = function (e, t) {
|
|
| 635 |
+ if (e.$tag$ === t.$tag$) {
|
|
| 636 |
+ {
|
|
| 637 |
+ return e.$key$ === t.$key$ |
|
| 638 |
+ } |
|
| 639 |
+ } |
|
| 640 |
+ return false |
|
| 641 |
+ }; |
|
| 642 |
+ var Q = function (e, t) {
|
|
| 643 |
+ var n = t.$elm$ = e.$elm$; |
|
| 644 |
+ var r = e.$children$; |
|
| 645 |
+ var i = t.$children$; |
|
| 646 |
+ var $ = t.$tag$; |
|
| 647 |
+ var l = t.$text$; |
|
| 648 |
+ if (l === null) {
|
|
| 649 |
+ {
|
|
| 650 |
+ a = $ === "svg" ? true : $ === "foreignObject" ? false : a |
|
| 651 |
+ } {
|
|
| 652 |
+ {
|
|
| 653 |
+ F(e, t, a) |
|
| 654 |
+ } |
|
| 655 |
+ } |
|
| 656 |
+ if (r !== null && i !== null) {
|
|
| 657 |
+ J(n, r, t, i) |
|
| 658 |
+ } else if (i !== null) {
|
|
| 659 |
+ if (e.$text$ !== null) {
|
|
| 660 |
+ n.textContent = "" |
|
| 661 |
+ } |
|
| 662 |
+ G(n, null, t, i, 0, i.length - 1) |
|
| 663 |
+ } else if (r !== null) {
|
|
| 664 |
+ D(r, 0, r.length - 1) |
|
| 665 |
+ } |
|
| 666 |
+ if (a && $ === "svg") {
|
|
| 667 |
+ a = false |
|
| 668 |
+ } |
|
| 669 |
+ } else if (e.$text$ !== l) {
|
|
| 670 |
+ n.data = l |
|
| 671 |
+ } |
|
| 672 |
+ }; |
|
| 673 |
+ var X = function (e) {
|
|
| 674 |
+ {
|
|
| 675 |
+ e.$attrs$ && e.$attrs$.ref && e.$attrs$.ref(null); |
|
| 676 |
+ e.$children$ && e.$children$.map(X) |
|
| 677 |
+ } |
|
| 678 |
+ }; |
|
| 679 |
+ var Y = function (e, t) {
|
|
| 680 |
+ var n = e.$hostElement$; |
|
| 681 |
+ var r = e.$cmpMeta$; |
|
| 682 |
+ var a = e.$vnode$ || M(null, null); |
|
| 683 |
+ var i = P(t) ? t : A(null, null, t); |
|
| 684 |
+ if (r.$attrsToReflect$) {
|
|
| 685 |
+ i.$attrs$ = i.$attrs$ || {};
|
|
| 686 |
+ r.$attrsToReflect$.map((function (e) {
|
|
| 687 |
+ var t = e[0], |
|
| 688 |
+ r = e[1]; |
|
| 689 |
+ return i.$attrs$[r] = n[t] |
|
| 690 |
+ })) |
|
| 691 |
+ } |
|
| 692 |
+ i.$tag$ = null; |
|
| 693 |
+ i.$flags$ |= 4; |
|
| 694 |
+ e.$vnode$ = i; |
|
| 695 |
+ i.$elm$ = a.$elm$ = n; |
|
| 696 |
+ Q(a, i) |
|
| 697 |
+ }; |
|
| 698 |
+ var Z = e("g", (function (e) {
|
|
| 699 |
+ return Ne(e).$hostElement$ |
|
| 700 |
+ })); |
|
| 701 |
+ var ee = e("c", (function (e, t, n) {
|
|
| 702 |
+ var r = Z(e); |
|
| 703 |
+ return {
|
|
| 704 |
+ emit: function (e) {
|
|
| 705 |
+ return te(r, t, {
|
|
| 706 |
+ bubbles: !!(n & 4), |
|
| 707 |
+ composed: !!(n & 2), |
|
| 708 |
+ cancelable: !!(n & 1), |
|
| 709 |
+ detail: e |
|
| 710 |
+ }) |
|
| 711 |
+ } |
|
| 712 |
+ } |
|
| 713 |
+ })); |
|
| 714 |
+ var te = function (e, t, n) {
|
|
| 715 |
+ var r = s.ce(t, n); |
|
| 716 |
+ e.dispatchEvent(r); |
|
| 717 |
+ return r |
|
| 718 |
+ }; |
|
| 719 |
+ var ne = function (e, t) {
|
|
| 720 |
+ if (t && !e.$onRenderResolve$ && t["s-p"]) {
|
|
| 721 |
+ t["s-p"].push(new Promise((function (t) {
|
|
| 722 |
+ return e.$onRenderResolve$ = t |
|
| 723 |
+ }))) |
|
| 724 |
+ } |
|
| 725 |
+ }; |
|
| 726 |
+ var re = function (e, t) {
|
|
| 727 |
+ if (e.$flags$ & 4) {
|
|
| 728 |
+ e.$flags$ |= 512; |
|
| 729 |
+ return |
|
| 730 |
+ } |
|
| 731 |
+ ne(e, e.$ancestorComponent$); |
|
| 732 |
+ var n = function () {
|
|
| 733 |
+ return ae(e, t) |
|
| 734 |
+ }; |
|
| 735 |
+ return n() |
|
| 736 |
+ }; |
|
| 737 |
+ var ae = function (e, t) {
|
|
| 738 |
+ var n = x("scheduleUpdate", e.$cmpMeta$.$tagName$);
|
|
| 739 |
+ var r = e.$lazyInstance$; |
|
| 740 |
+ var a; |
|
| 741 |
+ if (t) {
|
|
| 742 |
+ {
|
|
| 743 |
+ e.$flags$ |= 256; |
|
| 744 |
+ if (e.$queuedListeners$) {
|
|
| 745 |
+ e.$queuedListeners$.map((function (e) {
|
|
| 746 |
+ var t = e[0], |
|
| 747 |
+ n = e[1]; |
|
| 748 |
+ return oe(r, t, n) |
|
| 749 |
+ })); |
|
| 750 |
+ e.$queuedListeners$ = null |
|
| 751 |
+ } |
|
| 752 |
+ } |
|
| 753 |
+ } |
|
| 754 |
+ n(); |
|
| 755 |
+ return fe(a, (function () {
|
|
| 756 |
+ return ie(e, r, t) |
|
| 757 |
+ })) |
|
| 758 |
+ }; |
|
| 759 |
+ var ie = function (e, t, r) {
|
|
| 760 |
+ return __awaiter(n, void 0, void 0, (function () {
|
|
| 761 |
+ var n, a, i, $, l, o; |
|
| 762 |
+ return __generator(this, (function (f) {
|
|
| 763 |
+ n = e.$hostElement$; |
|
| 764 |
+ a = x("update", e.$cmpMeta$.$tagName$);
|
|
| 765 |
+ i = n["s-rc"]; |
|
| 766 |
+ if (r) {
|
|
| 767 |
+ C(e) |
|
| 768 |
+ } |
|
| 769 |
+ $ = x("render", e.$cmpMeta$.$tagName$); {
|
|
| 770 |
+ $e(e, t) |
|
| 771 |
+ } |
|
| 772 |
+ if (s.$cssShim$) {
|
|
| 773 |
+ s.$cssShim$.updateHost(n) |
|
| 774 |
+ } |
|
| 775 |
+ if (i) {
|
|
| 776 |
+ i.map((function (e) {
|
|
| 777 |
+ return e() |
|
| 778 |
+ })); |
|
| 779 |
+ n["s-rc"] = undefined |
|
| 780 |
+ } |
|
| 781 |
+ $(); |
|
| 782 |
+ a(); {
|
|
| 783 |
+ l = n["s-p"]; |
|
| 784 |
+ o = function () {
|
|
| 785 |
+ return le(e) |
|
| 786 |
+ }; |
|
| 787 |
+ if (l.length === 0) {
|
|
| 788 |
+ o() |
|
| 789 |
+ } else {
|
|
| 790 |
+ Promise.all(l).then(o); |
|
| 791 |
+ e.$flags$ |= 4; |
|
| 792 |
+ l.length = 0 |
|
| 793 |
+ } |
|
| 794 |
+ } |
|
| 795 |
+ return [2] |
|
| 796 |
+ })) |
|
| 797 |
+ })) |
|
| 798 |
+ }; |
|
| 799 |
+ var $e = function (e, t, n) {
|
|
| 800 |
+ try {
|
|
| 801 |
+ t = t.render(); {
|
|
| 802 |
+ e.$flags$ |= 2 |
|
| 803 |
+ } {
|
|
| 804 |
+ {
|
|
| 805 |
+ {
|
|
| 806 |
+ Y(e, t) |
|
| 807 |
+ } |
|
| 808 |
+ } |
|
| 809 |
+ } |
|
| 810 |
+ } catch (t) {
|
|
| 811 |
+ Le(t, e.$hostElement$) |
|
| 812 |
+ } |
|
| 813 |
+ return null |
|
| 814 |
+ }; |
|
| 815 |
+ var le = function (e) {
|
|
| 816 |
+ var t = e.$cmpMeta$.$tagName$; |
|
| 817 |
+ var n = e.$hostElement$; |
|
| 818 |
+ var r = x("postUpdate", t);
|
|
| 819 |
+ var a = e.$ancestorComponent$; |
|
| 820 |
+ if (!(e.$flags$ & 64)) {
|
|
| 821 |
+ e.$flags$ |= 64; {
|
|
| 822 |
+ ue(n) |
|
| 823 |
+ } |
|
| 824 |
+ r(); {
|
|
| 825 |
+ e.$onReadyResolve$(n); |
|
| 826 |
+ if (!a) {
|
|
| 827 |
+ se() |
|
| 828 |
+ } |
|
| 829 |
+ } |
|
| 830 |
+ } else {
|
|
| 831 |
+ r() |
|
| 832 |
+ } {
|
|
| 833 |
+ e.$onInstanceResolve$(n) |
|
| 834 |
+ } {
|
|
| 835 |
+ if (e.$onRenderResolve$) {
|
|
| 836 |
+ e.$onRenderResolve$(); |
|
| 837 |
+ e.$onRenderResolve$ = undefined |
|
| 838 |
+ } |
|
| 839 |
+ if (e.$flags$ & 512) {
|
|
| 840 |
+ Te((function () {
|
|
| 841 |
+ return re(e, false) |
|
| 842 |
+ })) |
|
| 843 |
+ } |
|
| 844 |
+ e.$flags$ &= ~(4 | 512) |
|
| 845 |
+ } |
|
| 846 |
+ }; |
|
| 847 |
+ var se = function (e) {
|
|
| 848 |
+ {
|
|
| 849 |
+ ue(l.documentElement) |
|
| 850 |
+ } |
|
| 851 |
+ Te((function () {
|
|
| 852 |
+ return te(i, "appload", {
|
|
| 853 |
+ detail: {
|
|
| 854 |
+ namespace: r |
|
| 855 |
+ } |
|
| 856 |
+ }) |
|
| 857 |
+ })) |
|
| 858 |
+ }; |
|
| 859 |
+ var oe = function (e, t, n) {
|
|
| 860 |
+ if (e && e[t]) {
|
|
| 861 |
+ try {
|
|
| 862 |
+ return e[t](n) |
|
| 863 |
+ } catch (e) {
|
|
| 864 |
+ Le(e) |
|
| 865 |
+ } |
|
| 866 |
+ } |
|
| 867 |
+ return undefined |
|
| 868 |
+ }; |
|
| 869 |
+ var fe = function (e, t) {
|
|
| 870 |
+ return e && e.then ? e.then(t) : t() |
|
| 871 |
+ }; |
|
| 872 |
+ var ue = function (e) {
|
|
| 873 |
+ return e.classList.add("hydrated")
|
|
| 874 |
+ }; |
|
| 875 |
+ var ce = function (e, t, n, r) {
|
|
| 876 |
+ var a = x("hydrateClient", t);
|
|
| 877 |
+ var i = e.shadowRoot; |
|
| 878 |
+ var $ = []; |
|
| 879 |
+ var f = []; |
|
| 880 |
+ var u = null; |
|
| 881 |
+ var c = r.$vnode$ = M(t, null); |
|
| 882 |
+ if (!s.$orgLocNodes$) {
|
|
| 883 |
+ de(l.body, s.$orgLocNodes$ = new Map) |
|
| 884 |
+ } |
|
| 885 |
+ e[y] = n; |
|
| 886 |
+ e.removeAttribute(y); |
|
| 887 |
+ ve(c, $, f, u, e, e, n); |
|
| 888 |
+ $.map((function (e) {
|
|
| 889 |
+ var n = e.$hostId$ + "." + e.$nodeId$; |
|
| 890 |
+ var r = s.$orgLocNodes$.get(n); |
|
| 891 |
+ var a = e.$elm$; |
|
| 892 |
+ if (r && o && r["s-en"] === "") {
|
|
| 893 |
+ r.parentNode.insertBefore(a, r.nextSibling) |
|
| 894 |
+ } |
|
| 895 |
+ if (!i) {
|
|
| 896 |
+ a["s-hn"] = t; |
|
| 897 |
+ if (r) {
|
|
| 898 |
+ a["s-ol"] = r; |
|
| 899 |
+ a["s-ol"]["s-nr"] = a |
|
| 900 |
+ } |
|
| 901 |
+ } |
|
| 902 |
+ s.$orgLocNodes$.delete(n) |
|
| 903 |
+ })); |
|
| 904 |
+ a() |
|
| 905 |
+ }; |
|
| 906 |
+ var ve = function (e, t, n, r, a, i, $) {
|
|
| 907 |
+ var l; |
|
| 908 |
+ var s; |
|
| 909 |
+ var o; |
|
| 910 |
+ var f; |
|
| 911 |
+ if (i.nodeType === 1) {
|
|
| 912 |
+ l = i.getAttribute(w); |
|
| 913 |
+ if (l) {
|
|
| 914 |
+ s = l.split(".");
|
|
| 915 |
+ if (s[0] === $ || s[0] === "0") {
|
|
| 916 |
+ o = {
|
|
| 917 |
+ $flags$: 0, |
|
| 918 |
+ $hostId$: s[0], |
|
| 919 |
+ $nodeId$: s[1], |
|
| 920 |
+ $depth$: s[2], |
|
| 921 |
+ $index$: s[3], |
|
| 922 |
+ $tag$: i.tagName.toLowerCase(), |
|
| 923 |
+ $elm$: i, |
|
| 924 |
+ $attrs$: null, |
|
| 925 |
+ $children$: null, |
|
| 926 |
+ $key$: null, |
|
| 927 |
+ $name$: null, |
|
| 928 |
+ $text$: null |
|
| 929 |
+ }; |
|
| 930 |
+ t.push(o); |
|
| 931 |
+ i.removeAttribute(w); |
|
| 932 |
+ if (!e.$children$) {
|
|
| 933 |
+ e.$children$ = [] |
|
| 934 |
+ } |
|
| 935 |
+ e.$children$[o.$index$] = o; |
|
| 936 |
+ e = o; |
|
| 937 |
+ if (r && o.$depth$ === "0") {
|
|
| 938 |
+ r[o.$index$] = o.$elm$ |
|
| 939 |
+ } |
|
| 940 |
+ } |
|
| 941 |
+ } |
|
| 942 |
+ for (f = i.childNodes.length - 1; f >= 0; f--) {
|
|
| 943 |
+ ve(e, t, n, r, a, i.childNodes[f], $) |
|
| 944 |
+ } |
|
| 945 |
+ if (i.shadowRoot) {
|
|
| 946 |
+ for (f = i.shadowRoot.childNodes.length - 1; f >= 0; f--) {
|
|
| 947 |
+ ve(e, t, n, r, a, i.shadowRoot.childNodes[f], $) |
|
| 948 |
+ } |
|
| 949 |
+ } |
|
| 950 |
+ } else if (i.nodeType === 8) {
|
|
| 951 |
+ s = i.nodeValue.split(".");
|
|
| 952 |
+ if (s[1] === $ || s[1] === "0") {
|
|
| 953 |
+ l = s[0]; |
|
| 954 |
+ o = {
|
|
| 955 |
+ $flags$: 0, |
|
| 956 |
+ $hostId$: s[1], |
|
| 957 |
+ $nodeId$: s[2], |
|
| 958 |
+ $depth$: s[3], |
|
| 959 |
+ $index$: s[4], |
|
| 960 |
+ $elm$: i, |
|
| 961 |
+ $attrs$: null, |
|
| 962 |
+ $children$: null, |
|
| 963 |
+ $key$: null, |
|
| 964 |
+ $name$: null, |
|
| 965 |
+ $tag$: null, |
|
| 966 |
+ $text$: null |
|
| 967 |
+ }; |
|
| 968 |
+ if (l === g) {
|
|
| 969 |
+ o.$elm$ = i.nextSibling; |
|
| 970 |
+ if (o.$elm$ && o.$elm$.nodeType === 3) {
|
|
| 971 |
+ o.$text$ = o.$elm$.textContent; |
|
| 972 |
+ t.push(o); |
|
| 973 |
+ i.remove(); |
|
| 974 |
+ if (!e.$children$) {
|
|
| 975 |
+ e.$children$ = [] |
|
| 976 |
+ } |
|
| 977 |
+ e.$children$[o.$index$] = o; |
|
| 978 |
+ if (r && o.$depth$ === "0") {
|
|
| 979 |
+ r[o.$index$] = o.$elm$ |
|
| 980 |
+ } |
|
| 981 |
+ } |
|
| 982 |
+ } else if (o.$hostId$ === $) {
|
|
| 983 |
+ if (l === p) {
|
|
| 984 |
+ o.$tag$ = "slot"; |
|
| 985 |
+ if (s[5]) {
|
|
| 986 |
+ i["s-sn"] = o.$name$ = s[5] |
|
| 987 |
+ } else {
|
|
| 988 |
+ i["s-sn"] = "" |
|
| 989 |
+ } |
|
| 990 |
+ i["s-sr"] = true; |
|
| 991 |
+ n.push(o); |
|
| 992 |
+ if (!e.$children$) {
|
|
| 993 |
+ e.$children$ = [] |
|
| 994 |
+ } |
|
| 995 |
+ e.$children$[o.$index$] = o |
|
| 996 |
+ } |
|
| 997 |
+ } |
|
| 998 |
+ } |
|
| 999 |
+ } else if (e && e.$tag$ === "style") {
|
|
| 1000 |
+ var u = M(null, i.textContent); |
|
| 1001 |
+ u.$elm$ = i; |
|
| 1002 |
+ u.$index$ = "0"; |
|
| 1003 |
+ e.$children$ = [u] |
|
| 1004 |
+ } |
|
| 1005 |
+ }; |
|
| 1006 |
+ var de = function (e, t) {
|
|
| 1007 |
+ if (e.nodeType === 1) {
|
|
| 1008 |
+ var n = 0; |
|
| 1009 |
+ for (; n < e.childNodes.length; n++) {
|
|
| 1010 |
+ de(e.childNodes[n], t) |
|
| 1011 |
+ } |
|
| 1012 |
+ if (e.shadowRoot) {
|
|
| 1013 |
+ for (n = 0; n < e.shadowRoot.childNodes.length; n++) {
|
|
| 1014 |
+ de(e.shadowRoot.childNodes[n], t) |
|
| 1015 |
+ } |
|
| 1016 |
+ } |
|
| 1017 |
+ } else if (e.nodeType === 8) {
|
|
| 1018 |
+ var r = e.nodeValue.split(".");
|
|
| 1019 |
+ if (r[0] === m) {
|
|
| 1020 |
+ t.set(r[1] + "." + r[2], e); |
|
| 1021 |
+ e.nodeValue = ""; |
|
| 1022 |
+ e["s-en"] = r[3] |
|
| 1023 |
+ } |
|
| 1024 |
+ } |
|
| 1025 |
+ }; |
|
| 1026 |
+ var he = function (e, t) {
|
|
| 1027 |
+ if (e != null && !T(e)) {
|
|
| 1028 |
+ if (t & 4) {
|
|
| 1029 |
+ return e === "false" ? false : e === "" || !!e |
|
| 1030 |
+ } |
|
| 1031 |
+ if (t & 2) {
|
|
| 1032 |
+ return parseFloat(e) |
|
| 1033 |
+ } |
|
| 1034 |
+ if (t & 1) {
|
|
| 1035 |
+ return String(e) |
|
| 1036 |
+ } |
|
| 1037 |
+ return e |
|
| 1038 |
+ } |
|
| 1039 |
+ return e |
|
| 1040 |
+ }; |
|
| 1041 |
+ var me = function (e, t) {
|
|
| 1042 |
+ return Ne(e).$instanceValues$.get(t) |
|
| 1043 |
+ }; |
|
| 1044 |
+ var pe = function (e, t, n, r) {
|
|
| 1045 |
+ var a = Ne(e); |
|
| 1046 |
+ var i = a.$hostElement$; |
|
| 1047 |
+ var $ = a.$instanceValues$.get(t); |
|
| 1048 |
+ var l = a.$flags$; |
|
| 1049 |
+ var s = a.$lazyInstance$; |
|
| 1050 |
+ n = he(n, r.$members$[t][0]); |
|
| 1051 |
+ if ((!(l & 8) || $ === undefined) && n !== $) {
|
|
| 1052 |
+ a.$instanceValues$.set(t, n); |
|
| 1053 |
+ if (s) {
|
|
| 1054 |
+ if (r.$watchers$ && l & 128) {
|
|
| 1055 |
+ var o = r.$watchers$[t]; |
|
| 1056 |
+ if (o) {
|
|
| 1057 |
+ o.map((function (e) {
|
|
| 1058 |
+ try {
|
|
| 1059 |
+ s[e](n, $, t) |
|
| 1060 |
+ } catch (e) {
|
|
| 1061 |
+ Le(e, i) |
|
| 1062 |
+ } |
|
| 1063 |
+ })) |
|
| 1064 |
+ } |
|
| 1065 |
+ } |
|
| 1066 |
+ if ((l & (2 | 16)) === 2) {
|
|
| 1067 |
+ re(a, false) |
|
| 1068 |
+ } |
|
| 1069 |
+ } |
|
| 1070 |
+ } |
|
| 1071 |
+ }; |
|
| 1072 |
+ var ge = function (e, t, n) {
|
|
| 1073 |
+ if (t.$members$) {
|
|
| 1074 |
+ if (e.watchers) {
|
|
| 1075 |
+ t.$watchers$ = e.watchers |
|
| 1076 |
+ } |
|
| 1077 |
+ var r = Object.entries(t.$members$); |
|
| 1078 |
+ var a = e.prototype; |
|
| 1079 |
+ r.map((function (e) {
|
|
| 1080 |
+ var r = e[0], |
|
| 1081 |
+ i = e[1][0]; |
|
| 1082 |
+ if (i & 31 || n & 2 && i & 32) {
|
|
| 1083 |
+ Object.defineProperty(a, r, {
|
|
| 1084 |
+ get: function () {
|
|
| 1085 |
+ return me(this, r) |
|
| 1086 |
+ }, |
|
| 1087 |
+ set: function (e) {
|
|
| 1088 |
+ pe(this, r, e, t) |
|
| 1089 |
+ }, |
|
| 1090 |
+ configurable: true, |
|
| 1091 |
+ enumerable: true |
|
| 1092 |
+ }) |
|
| 1093 |
+ } else if (n & 1 && i & 64) {
|
|
| 1094 |
+ Object.defineProperty(a, r, {
|
|
| 1095 |
+ value: function () {
|
|
| 1096 |
+ var e = []; |
|
| 1097 |
+ for (var t = 0; t < arguments.length; t++) {
|
|
| 1098 |
+ e[t] = arguments[t] |
|
| 1099 |
+ } |
|
| 1100 |
+ var n = Ne(this); |
|
| 1101 |
+ return n.$onInstancePromise$.then((function () {
|
|
| 1102 |
+ var t; |
|
| 1103 |
+ return (t = n.$lazyInstance$)[r].apply(t, e) |
|
| 1104 |
+ })) |
|
| 1105 |
+ } |
|
| 1106 |
+ }) |
|
| 1107 |
+ } |
|
| 1108 |
+ })); |
|
| 1109 |
+ if (n & 1) {
|
|
| 1110 |
+ var i = new Map; |
|
| 1111 |
+ a.attributeChangedCallback = function (e, t, n) {
|
|
| 1112 |
+ var r = this; |
|
| 1113 |
+ s.jmp((function () {
|
|
| 1114 |
+ var t = i.get(e); |
|
| 1115 |
+ r[t] = n === null && typeof r[t] === "boolean" ? false : n |
|
| 1116 |
+ })) |
|
| 1117 |
+ }; |
|
| 1118 |
+ e.observedAttributes = r.filter((function (e) {
|
|
| 1119 |
+ var t = e[0], |
|
| 1120 |
+ n = e[1]; |
|
| 1121 |
+ return n[0] & 15 |
|
| 1122 |
+ })).map((function (e) {
|
|
| 1123 |
+ var n = e[0], |
|
| 1124 |
+ r = e[1]; |
|
| 1125 |
+ var a = r[1] || n; |
|
| 1126 |
+ i.set(a, n); |
|
| 1127 |
+ if (r[0] & 512) {
|
|
| 1128 |
+ t.$attrsToReflect$.push([n, a]) |
|
| 1129 |
+ } |
|
| 1130 |
+ return a |
|
| 1131 |
+ })) |
|
| 1132 |
+ } |
|
| 1133 |
+ } |
|
| 1134 |
+ return e |
|
| 1135 |
+ }; |
|
| 1136 |
+ var ye = function (e, t, r, a, i) {
|
|
| 1137 |
+ return __awaiter(n, void 0, void 0, (function () {
|
|
| 1138 |
+ var e, n, a, $, l, s, o; |
|
| 1139 |
+ return __generator(this, (function (f) {
|
|
| 1140 |
+ switch (f.label) {
|
|
| 1141 |
+ case 0: |
|
| 1142 |
+ if (!((t.$flags$ & 32) === 0)) return [3, 3]; |
|
| 1143 |
+ t.$flags$ |= 32; |
|
| 1144 |
+ i = Ie(r); |
|
| 1145 |
+ if (!i.then) return [3, 2]; |
|
| 1146 |
+ e = _(); |
|
| 1147 |
+ return [4, i]; |
|
| 1148 |
+ case 1: |
|
| 1149 |
+ i = f.sent(); |
|
| 1150 |
+ e(); |
|
| 1151 |
+ f.label = 2; |
|
| 1152 |
+ case 2: |
|
| 1153 |
+ if (!i.isProxied) {
|
|
| 1154 |
+ {
|
|
| 1155 |
+ r.$watchers$ = i.watchers |
|
| 1156 |
+ } |
|
| 1157 |
+ ge(i, r, 2); |
|
| 1158 |
+ i.isProxied = true |
|
| 1159 |
+ } |
|
| 1160 |
+ n = x("createInstance", r.$tagName$); {
|
|
| 1161 |
+ t.$flags$ |= 8 |
|
| 1162 |
+ } |
|
| 1163 |
+ try {
|
|
| 1164 |
+ new i(t) |
|
| 1165 |
+ } catch (e) {
|
|
| 1166 |
+ Le(e) |
|
| 1167 |
+ } {
|
|
| 1168 |
+ t.$flags$ &= ~8 |
|
| 1169 |
+ } {
|
|
| 1170 |
+ t.$flags$ |= 128 |
|
| 1171 |
+ } |
|
| 1172 |
+ n(); |
|
| 1173 |
+ be(t.$lazyInstance$); |
|
| 1174 |
+ if (i.style) {
|
|
| 1175 |
+ a = i.style; |
|
| 1176 |
+ $ = L(r); |
|
| 1177 |
+ if (!Ee.has($)) {
|
|
| 1178 |
+ l = x("registerStyles", r.$tagName$);
|
|
| 1179 |
+ k($, a, !!(r.$flags$ & 1)); |
|
| 1180 |
+ l() |
|
| 1181 |
+ } |
|
| 1182 |
+ } |
|
| 1183 |
+ f.label = 3; |
|
| 1184 |
+ case 3: |
|
| 1185 |
+ s = t.$ancestorComponent$; |
|
| 1186 |
+ o = function () {
|
|
| 1187 |
+ return re(t, true) |
|
| 1188 |
+ }; |
|
| 1189 |
+ if (s && s["s-rc"]) {
|
|
| 1190 |
+ s["s-rc"].push(o) |
|
| 1191 |
+ } else {
|
|
| 1192 |
+ o() |
|
| 1193 |
+ } |
|
| 1194 |
+ return [2] |
|
| 1195 |
+ } |
|
| 1196 |
+ })) |
|
| 1197 |
+ })) |
|
| 1198 |
+ }; |
|
| 1199 |
+ var be = function (e) {
|
|
| 1200 |
+ {
|
|
| 1201 |
+ oe(e, "connectedCallback") |
|
| 1202 |
+ } |
|
| 1203 |
+ }; |
|
| 1204 |
+ var we = function (e) {
|
|
| 1205 |
+ if ((s.$flags$ & 1) === 0) {
|
|
| 1206 |
+ var t = Ne(e); |
|
| 1207 |
+ var n = t.$cmpMeta$; |
|
| 1208 |
+ var r = x("connectedCallback", n.$tagName$);
|
|
| 1209 |
+ if (!(t.$flags$ & 1)) {
|
|
| 1210 |
+ t.$flags$ |= 1; |
|
| 1211 |
+ var a = void 0; {
|
|
| 1212 |
+ a = e.getAttribute(y); |
|
| 1213 |
+ if (a) {
|
|
| 1214 |
+ ce(e, n.$tagName$, a, t) |
|
| 1215 |
+ } |
|
| 1216 |
+ } {
|
|
| 1217 |
+ var i = e; |
|
| 1218 |
+ while (i = i.parentNode || i.host) {
|
|
| 1219 |
+ if (i.nodeType === 1 && i.hasAttribute("s-id") && i["s-p"] || i["s-p"]) {
|
|
| 1220 |
+ ne(t, t.$ancestorComponent$ = i); |
|
| 1221 |
+ break |
|
| 1222 |
+ } |
|
| 1223 |
+ } |
|
| 1224 |
+ } |
|
| 1225 |
+ if (n.$members$) {
|
|
| 1226 |
+ Object.entries(n.$members$).map((function (t) {
|
|
| 1227 |
+ var n = t[0], |
|
| 1228 |
+ r = t[1][0]; |
|
| 1229 |
+ if (r & 31 && e.hasOwnProperty(n)) {
|
|
| 1230 |
+ var a = e[n]; |
|
| 1231 |
+ delete e[n]; |
|
| 1232 |
+ e[n] = a |
|
| 1233 |
+ } |
|
| 1234 |
+ })) |
|
| 1235 |
+ } {
|
|
| 1236 |
+ Te((function () {
|
|
| 1237 |
+ return ye(e, t, n) |
|
| 1238 |
+ })) |
|
| 1239 |
+ } |
|
| 1240 |
+ } else {
|
|
| 1241 |
+ c(e, t, n.$listeners$); |
|
| 1242 |
+ be(t.$lazyInstance$) |
|
| 1243 |
+ } |
|
| 1244 |
+ r() |
|
| 1245 |
+ } |
|
| 1246 |
+ }; |
|
| 1247 |
+ var Se = function (e) {
|
|
| 1248 |
+ if ((s.$flags$ & 1) === 0) {
|
|
| 1249 |
+ var t = Ne(e); {
|
|
| 1250 |
+ if (t.$rmListeners$) {
|
|
| 1251 |
+ t.$rmListeners$.map((function (e) {
|
|
| 1252 |
+ return e() |
|
| 1253 |
+ })); |
|
| 1254 |
+ t.$rmListeners$ = undefined |
|
| 1255 |
+ } |
|
| 1256 |
+ } |
|
| 1257 |
+ if (s.$cssShim$) {
|
|
| 1258 |
+ s.$cssShim$.removeHost(e) |
|
| 1259 |
+ } |
|
| 1260 |
+ } |
|
| 1261 |
+ }; |
|
| 1262 |
+ var xe = e("b", (function (e, t) {
|
|
| 1263 |
+ if (t === void 0) {
|
|
| 1264 |
+ t = {}
|
|
| 1265 |
+ } |
|
| 1266 |
+ var n = x(); |
|
| 1267 |
+ var r = []; |
|
| 1268 |
+ var a = t.exclude || []; |
|
| 1269 |
+ var $ = i.customElements; |
|
| 1270 |
+ var o = l.head; |
|
| 1271 |
+ var f = o.querySelector("meta[charset]");
|
|
| 1272 |
+ var u = l.createElement("style");
|
|
| 1273 |
+ var c = []; |
|
| 1274 |
+ var v; |
|
| 1275 |
+ var d = true; |
|
| 1276 |
+ Object.assign(s, t); |
|
| 1277 |
+ s.$resourcesUrl$ = new URL(t.resourcesUrl || "./", l.baseURI).href; {
|
|
| 1278 |
+ s.$flags$ |= 2 |
|
| 1279 |
+ } |
|
| 1280 |
+ e.map((function (e) {
|
|
| 1281 |
+ return e[1].map((function (t) {
|
|
| 1282 |
+ var n = {
|
|
| 1283 |
+ $flags$: t[0], |
|
| 1284 |
+ $tagName$: t[1], |
|
| 1285 |
+ $members$: t[2], |
|
| 1286 |
+ $listeners$: t[3] |
|
| 1287 |
+ }; {
|
|
| 1288 |
+ n.$members$ = t[2] |
|
| 1289 |
+ } {
|
|
| 1290 |
+ n.$listeners$ = t[3] |
|
| 1291 |
+ } {
|
|
| 1292 |
+ n.$attrsToReflect$ = [] |
|
| 1293 |
+ } {
|
|
| 1294 |
+ n.$watchers$ = {}
|
|
| 1295 |
+ } |
|
| 1296 |
+ var i = n.$tagName$; |
|
| 1297 |
+ var l = function (e) {
|
|
| 1298 |
+ __extends(t, e); |
|
| 1299 |
+ |
|
| 1300 |
+ function t(t) {
|
|
| 1301 |
+ var r = e.call(this, t) || this; |
|
| 1302 |
+ t = r; |
|
| 1303 |
+ Re(t, n); |
|
| 1304 |
+ return r |
|
| 1305 |
+ } |
|
| 1306 |
+ t.prototype.connectedCallback = function () {
|
|
| 1307 |
+ var e = this; |
|
| 1308 |
+ if (v) {
|
|
| 1309 |
+ clearTimeout(v); |
|
| 1310 |
+ v = null |
|
| 1311 |
+ } |
|
| 1312 |
+ if (d) {
|
|
| 1313 |
+ c.push(this) |
|
| 1314 |
+ } else {
|
|
| 1315 |
+ s.jmp((function () {
|
|
| 1316 |
+ return we(e) |
|
| 1317 |
+ })) |
|
| 1318 |
+ } |
|
| 1319 |
+ }; |
|
| 1320 |
+ t.prototype.disconnectedCallback = function () {
|
|
| 1321 |
+ var e = this; |
|
| 1322 |
+ s.jmp((function () {
|
|
| 1323 |
+ return Se(e) |
|
| 1324 |
+ })) |
|
| 1325 |
+ }; |
|
| 1326 |
+ t.prototype.componentOnReady = function () {
|
|
| 1327 |
+ return Ne(this).$onReadyPromise$ |
|
| 1328 |
+ }; |
|
| 1329 |
+ return t |
|
| 1330 |
+ }(HTMLElement); |
|
| 1331 |
+ n.$lazyBundleId$ = e[0]; |
|
| 1332 |
+ if (!a.includes(i) && !$.get(i)) {
|
|
| 1333 |
+ r.push(i); |
|
| 1334 |
+ $.define(i, ge(l, n, 1)) |
|
| 1335 |
+ } |
|
| 1336 |
+ })) |
|
| 1337 |
+ })); {
|
|
| 1338 |
+ u.innerHTML = r + S; |
|
| 1339 |
+ u.setAttribute("data-styles", "");
|
|
| 1340 |
+ o.insertBefore(u, f ? f.nextSibling : o.firstChild) |
|
| 1341 |
+ } |
|
| 1342 |
+ d = false; |
|
| 1343 |
+ if (c.length) {
|
|
| 1344 |
+ c.map((function (e) {
|
|
| 1345 |
+ return e.connectedCallback() |
|
| 1346 |
+ })) |
|
| 1347 |
+ } else {
|
|
| 1348 |
+ {
|
|
| 1349 |
+ s.jmp((function () {
|
|
| 1350 |
+ return v = setTimeout(se, 30) |
|
| 1351 |
+ })) |
|
| 1352 |
+ } |
|
| 1353 |
+ } |
|
| 1354 |
+ n() |
|
| 1355 |
+ })); |
|
| 1356 |
+ var _e = new WeakMap; |
|
| 1357 |
+ var Ne = function (e) {
|
|
| 1358 |
+ return _e.get(e) |
|
| 1359 |
+ }; |
|
| 1360 |
+ var ke = e("r", (function (e, t) {
|
|
| 1361 |
+ return _e.set(t.$lazyInstance$ = e, t) |
|
| 1362 |
+ })); |
|
| 1363 |
+ var Re = function (e, t) {
|
|
| 1364 |
+ var n = {
|
|
| 1365 |
+ $flags$: 0, |
|
| 1366 |
+ $hostElement$: e, |
|
| 1367 |
+ $cmpMeta$: t, |
|
| 1368 |
+ $instanceValues$: new Map |
|
| 1369 |
+ }; {
|
|
| 1370 |
+ n.$onInstancePromise$ = new Promise((function (e) {
|
|
| 1371 |
+ return n.$onInstanceResolve$ = e |
|
| 1372 |
+ })) |
|
| 1373 |
+ } {
|
|
| 1374 |
+ n.$onReadyPromise$ = new Promise((function (e) {
|
|
| 1375 |
+ return n.$onReadyResolve$ = e |
|
| 1376 |
+ })); |
|
| 1377 |
+ e["s-p"] = []; |
|
| 1378 |
+ e["s-rc"] = [] |
|
| 1379 |
+ } |
|
| 1380 |
+ c(e, n, t.$listeners$); |
|
| 1381 |
+ return _e.set(e, n) |
|
| 1382 |
+ }; |
|
| 1383 |
+ var Ce = function (e, t) {
|
|
| 1384 |
+ return t in e |
|
| 1385 |
+ }; |
|
| 1386 |
+ var Le = function (e, t) {
|
|
| 1387 |
+ return (0, console.error)(e, t) |
|
| 1388 |
+ }; |
|
| 1389 |
+ var je = new Map; |
|
| 1390 |
+ var Ie = function (e, n, r) {
|
|
| 1391 |
+ var a = e.$tagName$.replace(/-/g, "_"); |
|
| 1392 |
+ var i = e.$lazyBundleId$; |
|
| 1393 |
+ var $ = je.get(i); |
|
| 1394 |
+ if ($) {
|
|
| 1395 |
+ return $[a] |
|
| 1396 |
+ } |
|
| 1397 |
+ return t.import("./" + i + ".entry.js" + "").then((function (e) {
|
|
| 1398 |
+ {
|
|
| 1399 |
+ je.set(i, e) |
|
| 1400 |
+ } |
|
| 1401 |
+ return e[a] |
|
| 1402 |
+ }), Le) |
|
| 1403 |
+ }; |
|
| 1404 |
+ var Ee = new Map; |
|
| 1405 |
+ var Te = function (e) {
|
|
| 1406 |
+ return f().then(e) |
|
| 1407 |
+ } |
|
| 1408 |
+ } |
|
| 1409 |
+ } |
|
| 1410 | 1410 |
}));(No newline at end of file) |
--- src/main/webapp/publish/common/script/plugin/datapicker/index-a3afd6e1.js
+++ src/main/webapp/publish/common/script/plugin/datapicker/index-a3afd6e1.js
... | ... | @@ -1,486 +1,486 @@ |
| 1 |
-const e = "duet"; |
|
| 2 |
-let t = !1; |
|
| 3 |
-const l = "undefined" != typeof window ? window : {},
|
|
| 4 |
- n = l.CSS, |
|
| 5 |
- s = l.document || {
|
|
| 6 |
- head: {}
|
|
| 7 |
- }, |
|
| 8 |
- o = {
|
|
| 9 |
- t: 0, |
|
| 10 |
- l: "", |
|
| 11 |
- jmp: e => e(), |
|
| 12 |
- raf: e => requestAnimationFrame(e), |
|
| 13 |
- ael: (e, t, l, n) => e.addEventListener(t, l, n), |
|
| 14 |
- rel: (e, t, l, n) => e.removeEventListener(t, l, n), |
|
| 15 |
- ce: (e, t) => new CustomEvent(e, t) |
|
| 16 |
- }, |
|
| 17 |
- i = e => Promise.resolve(e), |
|
| 18 |
- c = (() => {
|
|
| 19 |
- try {
|
|
| 20 |
- return new CSSStyleSheet, "function" == typeof (new CSSStyleSheet).replace |
|
| 21 |
- } catch (e) {}
|
|
| 22 |
- return !1 |
|
| 23 |
- })(), |
|
| 24 |
- r = (e, t, l) => {
|
|
| 25 |
- l && l.map((([l, n, s]) => {
|
|
| 26 |
- const i = a(e, l), |
|
| 27 |
- c = u(t, s), |
|
| 28 |
- r = f(l); |
|
| 29 |
- o.ael(i, n, c, r), (t.o = t.o || []).push((() => o.rel(i, n, c, r))) |
|
| 30 |
- })) |
|
| 31 |
- }, |
|
| 32 |
- u = (e, t) => l => {
|
|
| 33 |
- try {
|
|
| 34 |
- 256 & e.t ? e.i[t](l) : (e.u = e.u || []).push([t, l]) |
|
| 35 |
- } catch (e) {
|
|
| 36 |
- le(e) |
|
| 37 |
- } |
|
| 38 |
- }, |
|
| 39 |
- a = (e, t) => 4 & t ? s : e, |
|
| 40 |
- f = e => 0 != (2 & e), |
|
| 41 |
- $ = new WeakMap, |
|
| 42 |
- d = e => "sc-" + e.$, |
|
| 43 |
- h = {},
|
|
| 44 |
- y = e => "object" == (e = typeof e) || "function" === e, |
|
| 45 |
- p = (e, t, ...l) => {
|
|
| 46 |
- let n = null, |
|
| 47 |
- s = null, |
|
| 48 |
- o = !1, |
|
| 49 |
- i = !1, |
|
| 50 |
- c = []; |
|
| 51 |
- const r = t => {
|
|
| 52 |
- for (let l = 0; l < t.length; l++) n = t[l], Array.isArray(n) ? r(n) : null != n && "boolean" != typeof n && ((o = "function" != typeof e && !y(n)) && (n += ""), o && i ? c[c.length - 1].h += n : c.push(o ? m(null, n) : n), i = o) |
|
| 53 |
- }; |
|
| 54 |
- if (r(l), t) {
|
|
| 55 |
- t.key && (s = t.key); {
|
|
| 56 |
- const e = t.className || t.class; |
|
| 57 |
- e && (t.class = "object" != typeof e ? e : Object.keys(e).filter((t => e[t])).join(" "))
|
|
| 58 |
- } |
|
| 59 |
- } |
|
| 60 |
- if ("function" == typeof e) return e(null === t ? {} : t, c, b);
|
|
| 61 |
- const u = m(e, null); |
|
| 62 |
- return u.p = t, c.length > 0 && (u.m = c), u.g = s, u |
|
| 63 |
- }, |
|
| 64 |
- m = (e, t) => ({
|
|
| 65 |
- t: 0, |
|
| 66 |
- v: e, |
|
| 67 |
- h: t, |
|
| 68 |
- j: null, |
|
| 69 |
- m: null, |
|
| 70 |
- p: null, |
|
| 71 |
- g: null |
|
| 72 |
- }), |
|
| 73 |
- w = {},
|
|
| 74 |
- b = {
|
|
| 75 |
- forEach: (e, t) => e.map(g).forEach(t), |
|
| 76 |
- map: (e, t) => e.map(g).map(t).map(v) |
|
| 77 |
- }, |
|
| 78 |
- g = e => ({
|
|
| 79 |
- vattrs: e.p, |
|
| 80 |
- vchildren: e.m, |
|
| 81 |
- vkey: e.g, |
|
| 82 |
- vname: e.k, |
|
| 83 |
- vtag: e.v, |
|
| 84 |
- vtext: e.h |
|
| 85 |
- }), |
|
| 86 |
- v = e => {
|
|
| 87 |
- if ("function" == typeof e.vtag) {
|
|
| 88 |
- const t = Object.assign({}, e.vattrs);
|
|
| 89 |
- return e.vkey && (t.key = e.vkey), e.vname && (t.name = e.vname), p(e.vtag, t, ...e.vchildren || []) |
|
| 90 |
- } |
|
| 91 |
- const t = m(e.vtag, e.vtext); |
|
| 92 |
- return t.p = e.vattrs, t.m = e.vchildren, t.g = e.vkey, t.k = e.vname, t |
|
| 93 |
- }, |
|
| 94 |
- j = (e, t, n, s, i, c) => {
|
|
| 95 |
- if (n !== s) {
|
|
| 96 |
- let r = te(e, t), |
|
| 97 |
- u = t.toLowerCase(); |
|
| 98 |
- if ("class" === t) {
|
|
| 99 |
- const t = e.classList, |
|
| 100 |
- l = S(n), |
|
| 101 |
- o = S(s); |
|
| 102 |
- t.remove(...l.filter((e => e && !o.includes(e)))), t.add(...o.filter((e => e && !l.includes(e)))) |
|
| 103 |
- } else if ("key" === t);
|
|
| 104 |
- else if ("ref" === t) s && s(e);
|
|
| 105 |
- else if (r || "o" !== t[0] || "n" !== t[1]) {
|
|
| 106 |
- const l = y(s); |
|
| 107 |
- if ((r || l && null !== s) && !i) try {
|
|
| 108 |
- if (e.tagName.includes("-")) e[t] = s;
|
|
| 109 |
- else {
|
|
| 110 |
- let l = null == s ? "" : s; |
|
| 111 |
- "list" === t ? r = !1 : null != n && e[t] == l || (e[t] = l) |
|
| 112 |
- } |
|
| 113 |
- } catch (e) {}
|
|
| 114 |
- null == s || !1 === s ? !1 === s && "" !== e.getAttribute(t) || e.removeAttribute(t) : (!r || 4 & c || i) && !l && e.setAttribute(t, s = !0 === s ? "" : s) |
|
| 115 |
- } else t = "-" === t[2] ? t.slice(3) : te(l, u) ? u.slice(2) : u[2] + t.slice(3), n && o.rel(e, t, n, !1), s && o.ael(e, t, s, !1) |
|
| 116 |
- } |
|
| 117 |
- }, |
|
| 118 |
- k = /\s/, |
|
| 119 |
- S = e => e ? e.split(k) : [], |
|
| 120 |
- O = (e, t, l, n) => {
|
|
| 121 |
- const s = 11 === t.j.nodeType && t.j.host ? t.j.host : t.j, |
|
| 122 |
- o = e && e.p || h, |
|
| 123 |
- i = t.p || h; |
|
| 124 |
- for (n in o) n in i || j(s, n, o[n], void 0, l, t.t); |
|
| 125 |
- for (n in i) j(s, n, o[n], i[n], l, t.t) |
|
| 126 |
- }, |
|
| 127 |
- x = (e, l, n) => {
|
|
| 128 |
- let o, i, c = l.m[n], |
|
| 129 |
- r = 0; |
|
| 130 |
- if (null !== c.h) o = c.j = s.createTextNode(c.h); |
|
| 131 |
- else {
|
|
| 132 |
- if (t || (t = "svg" === c.v), o = c.j = s.createElementNS(t ? "http://www.w3.org/2000/svg" : "http://www.w3.org/1999/xhtml", c.v), t && "foreignObject" === c.v && (t = !1), O(null, c, t), c.m) |
|
| 133 |
- for (r = 0; r < c.m.length; ++r) i = x(e, c, r), i && o.appendChild(i); |
|
| 134 |
- "svg" === c.v ? t = !1 : "foreignObject" === o.tagName && (t = !0) |
|
| 135 |
- } |
|
| 136 |
- return o |
|
| 137 |
- }, |
|
| 138 |
- M = (e, t, l, n, s, o) => {
|
|
| 139 |
- let i, c = e; |
|
| 140 |
- for (; s <= o; ++s) n[s] && (i = x(null, l, s), i && (n[s].j = i, c.insertBefore(i, t))) |
|
| 141 |
- }, |
|
| 142 |
- C = (e, t, l, n, s) => {
|
|
| 143 |
- for (; t <= l; ++t)(n = e[t]) && (s = n.j, E(n), s.remove()) |
|
| 144 |
- }, |
|
| 145 |
- P = (e, t) => e.v === t.v && e.g === t.g, |
|
| 146 |
- _ = (e, l) => {
|
|
| 147 |
- const n = l.j = e.j, |
|
| 148 |
- s = e.m, |
|
| 149 |
- o = l.m, |
|
| 150 |
- i = l.v, |
|
| 151 |
- c = l.h; |
|
| 152 |
- null === c ? (t = "svg" === i || "foreignObject" !== i && t, O(e, l, t), null !== s && null !== o ? ((e, t, l, n) => {
|
|
| 153 |
- let s, o, i = 0, |
|
| 154 |
- c = 0, |
|
| 155 |
- r = 0, |
|
| 156 |
- u = 0, |
|
| 157 |
- a = t.length - 1, |
|
| 158 |
- f = t[0], |
|
| 159 |
- $ = t[a], |
|
| 160 |
- d = n.length - 1, |
|
| 161 |
- h = n[0], |
|
| 162 |
- y = n[d]; |
|
| 163 |
- for (; i <= a && c <= d;) |
|
| 164 |
- if (null == f) f = t[++i]; |
|
| 165 |
- else if (null == $) $ = t[--a]; |
|
| 166 |
- else if (null == h) h = n[++c]; |
|
| 167 |
- else if (null == y) y = n[--d]; |
|
| 168 |
- else if (P(f, h)) _(f, h), f = t[++i], h = n[++c]; |
|
| 169 |
- else if (P($, y)) _($, y), $ = t[--a], y = n[--d]; |
|
| 170 |
- else if (P(f, y)) _(f, y), e.insertBefore(f.j, $.j.nextSibling), f = t[++i], y = n[--d]; |
|
| 171 |
- else if (P($, h)) _($, h), e.insertBefore($.j, f.j), $ = t[--a], h = n[++c]; |
|
| 172 |
- else {
|
|
| 173 |
- for (r = -1, u = i; u <= a; ++u) |
|
| 174 |
- if (t[u] && null !== t[u].g && t[u].g === h.g) {
|
|
| 175 |
- r = u; |
|
| 176 |
- break |
|
| 177 |
- } r >= 0 ? (o = t[r], o.v !== h.v ? s = x(t && t[c], l, r) : (_(o, h), t[r] = void 0, s = o.j), h = n[++c]) : (s = x(t && t[c], l, c), h = n[++c]), s && f.j.parentNode.insertBefore(s, f.j) |
|
| 178 |
- } |
|
| 179 |
- i > a ? M(e, null == n[d + 1] ? null : n[d + 1].j, l, n, c, d) : c > d && C(t, i, a) |
|
| 180 |
- })(n, s, l, o) : null !== o ? (null !== e.h && (n.textContent = ""), M(n, null, l, o, 0, o.length - 1)) : null !== s && C(s, 0, s.length - 1), t && "svg" === i && (t = !1)) : e.h !== c && (n.data = c) |
|
| 181 |
- }, |
|
| 182 |
- E = e => {
|
|
| 183 |
- e.p && e.p.ref && e.p.ref(null), e.m && e.m.map(E) |
|
| 184 |
- }, |
|
| 185 |
- I = e => Y(e).S, |
|
| 186 |
- T = (e, t, l) => {
|
|
| 187 |
- const n = I(e); |
|
| 188 |
- return {
|
|
| 189 |
- emit: e => A(n, t, {
|
|
| 190 |
- bubbles: !!(4 & l), |
|
| 191 |
- composed: !!(2 & l), |
|
| 192 |
- cancelable: !!(1 & l), |
|
| 193 |
- detail: e |
|
| 194 |
- }) |
|
| 195 |
- } |
|
| 196 |
- }, |
|
| 197 |
- A = (e, t, l) => {
|
|
| 198 |
- const n = o.ce(t, l); |
|
| 199 |
- return e.dispatchEvent(n), n |
|
| 200 |
- }, |
|
| 201 |
- F = (e, t) => {
|
|
| 202 |
- t && !e.O && t["s-p"] && t["s-p"].push(new Promise((t => e.O = t))) |
|
| 203 |
- }, |
|
| 204 |
- H = (e, t) => {
|
|
| 205 |
- if (!(4 & e.t)) return F(e, e.M), L(e, t); |
|
| 206 |
- e.t |= 512 |
|
| 207 |
- }, |
|
| 208 |
- L = (e, t) => {
|
|
| 209 |
- const l = e.i; |
|
| 210 |
- return t && (e.t |= 256, e.u && (e.u.map((([e, t]) => q(l, e, t))), e.u = null)), V(void 0, (() => N(e, l, t))) |
|
| 211 |
- }, |
|
| 212 |
- N = async (e, t, l) => {
|
|
| 213 |
- const n = e.S, |
|
| 214 |
- o = n["s-rc"]; |
|
| 215 |
- l && (e => {
|
|
| 216 |
- const t = e.C; |
|
| 217 |
- ((e, t) => {
|
|
| 218 |
- let l = d(t), |
|
| 219 |
- n = oe.get(l); |
|
| 220 |
- if (e = 11 === e.nodeType ? e : s, n) |
|
| 221 |
- if ("string" == typeof n) {
|
|
| 222 |
- let t, o = $.get(e = e.head || e); |
|
| 223 |
- o || $.set(e, o = new Set), o.has(l) || (e.host && (t = e.querySelector(`[sty-id="${l}"]`)) ? t.innerHTML = n : (t = s.createElement("style"), t.innerHTML = n, e.insertBefore(t, e.querySelector("link"))), o && o.add(l))
|
|
| 224 |
- } else e.adoptedStyleSheets.includes(n) || (e.adoptedStyleSheets = [...e.adoptedStyleSheets, n]) |
|
| 225 |
- })(e.S.getRootNode(), t) |
|
| 226 |
- })(e); |
|
| 227 |
- R(e, t), o && (o.map((e => e())), n["s-rc"] = void 0); {
|
|
| 228 |
- const t = n["s-p"], |
|
| 229 |
- l = () => U(e); |
|
| 230 |
- 0 === t.length ? l() : (Promise.all(t).then(l), e.t |= 4, t.length = 0) |
|
| 231 |
- } |
|
| 232 |
- }, R = (e, t) => {
|
|
| 233 |
- try {
|
|
| 234 |
- t = t.render(), e.t |= 2, ((e, t) => {
|
|
| 235 |
- const l = e.S, |
|
| 236 |
- n = e.C, |
|
| 237 |
- s = e.P || m(null, null), |
|
| 238 |
- o = (e => e && e.v === w)(t) ? t : p(null, null, t); |
|
| 239 |
- n._ && (o.p = o.p || {}, n._.map((([e, t]) => o.p[t] = l[e]))), o.v = null, o.t |= 4, e.P = o, o.j = s.j = l, _(s, o)
|
|
| 240 |
- })(e, t) |
|
| 241 |
- } catch (t) {
|
|
| 242 |
- le(t, e.S) |
|
| 243 |
- } |
|
| 244 |
- return null |
|
| 245 |
- }, U = e => {
|
|
| 246 |
- const t = e.S, |
|
| 247 |
- l = e.M; |
|
| 248 |
- 64 & e.t || (e.t |= 64, z(t), e.I(t), l || W()), e.T(t), e.O && (e.O(), e.O = void 0), 512 & e.t && ie((() => H(e, !1))), e.t &= -517 |
|
| 249 |
- }, W = () => {
|
|
| 250 |
- z(s.documentElement), ie((() => A(l, "appload", {
|
|
| 251 |
- detail: {
|
|
| 252 |
- namespace: "duet" |
|
| 253 |
- } |
|
| 254 |
- }))) |
|
| 255 |
- }, q = (e, t, l) => {
|
|
| 256 |
- if (e && e[t]) try {
|
|
| 257 |
- return e[t](l) |
|
| 258 |
- } catch (e) {
|
|
| 259 |
- le(e) |
|
| 260 |
- } |
|
| 261 |
- }, V = (e, t) => e && e.then ? e.then(t) : t(), z = e => e.classList.add("hydrated"), B = (e, t, l, n, s, o, i) => {
|
|
| 262 |
- let c, r, u, a; |
|
| 263 |
- if (1 === o.nodeType) {
|
|
| 264 |
- for (c = o.getAttribute("c-id"), c && (r = c.split("."), r[0] !== i && "0" !== r[0] || (u = {
|
|
| 265 |
- t: 0, |
|
| 266 |
- A: r[0], |
|
| 267 |
- F: r[1], |
|
| 268 |
- H: r[2], |
|
| 269 |
- L: r[3], |
|
| 270 |
- v: o.tagName.toLowerCase(), |
|
| 271 |
- j: o, |
|
| 272 |
- p: null, |
|
| 273 |
- m: null, |
|
| 274 |
- g: null, |
|
| 275 |
- k: null, |
|
| 276 |
- h: null |
|
| 277 |
- }, t.push(u), o.removeAttribute("c-id"), e.m || (e.m = []), e.m[u.L] = u, e = u, n && "0" === u.H && (n[u.L] = u.j))), a = o.childNodes.length - 1; a >= 0; a--) B(e, t, l, n, s, o.childNodes[a], i);
|
|
| 278 |
- if (o.shadowRoot) |
|
| 279 |
- for (a = o.shadowRoot.childNodes.length - 1; a >= 0; a--) B(e, t, l, n, s, o.shadowRoot.childNodes[a], i) |
|
| 280 |
- } else if (8 === o.nodeType) r = o.nodeValue.split("."), r[1] !== i && "0" !== r[1] || (c = r[0], u = {
|
|
| 281 |
- t: 0, |
|
| 282 |
- A: r[1], |
|
| 283 |
- F: r[2], |
|
| 284 |
- H: r[3], |
|
| 285 |
- L: r[4], |
|
| 286 |
- j: o, |
|
| 287 |
- p: null, |
|
| 288 |
- m: null, |
|
| 289 |
- g: null, |
|
| 290 |
- k: null, |
|
| 291 |
- v: null, |
|
| 292 |
- h: null |
|
| 293 |
- }, "t" === c ? (u.j = o.nextSibling, u.j && 3 === u.j.nodeType && (u.h = u.j.textContent, t.push(u), o.remove(), e.m || (e.m = []), e.m[u.L] = u, n && "0" === u.H && (n[u.L] = u.j))) : u.A === i && "s" === c && (u.v = "slot", o["s-sn"] = r[5] ? u.k = r[5] : "", o["s-sr"] = !0, l.push(u), e.m || (e.m = []), e.m[u.L] = u)); |
|
| 294 |
- else if (e && "style" === e.v) {
|
|
| 295 |
- const t = m(null, o.textContent); |
|
| 296 |
- t.j = o, t.L = "0", e.m = [t] |
|
| 297 |
- } |
|
| 298 |
- }, D = (e, t) => {
|
|
| 299 |
- if (1 === e.nodeType) {
|
|
| 300 |
- let l = 0; |
|
| 301 |
- for (; l < e.childNodes.length; l++) D(e.childNodes[l], t); |
|
| 302 |
- if (e.shadowRoot) |
|
| 303 |
- for (l = 0; l < e.shadowRoot.childNodes.length; l++) D(e.shadowRoot.childNodes[l], t) |
|
| 304 |
- } else if (8 === e.nodeType) {
|
|
| 305 |
- const l = e.nodeValue.split(".");
|
|
| 306 |
- "o" === l[0] && (t.set(l[1] + "." + l[2], e), e.nodeValue = "", e["s-en"] = l[3]) |
|
| 307 |
- } |
|
| 308 |
- }, G = (e, t, l) => {
|
|
| 309 |
- if (t.N) {
|
|
| 310 |
- e.watchers && (t.R = e.watchers); |
|
| 311 |
- const n = Object.entries(t.N), |
|
| 312 |
- s = e.prototype; |
|
| 313 |
- if (n.map((([e, [n]]) => {
|
|
| 314 |
- 31 & n || 2 & l && 32 & n ? Object.defineProperty(s, e, {
|
|
| 315 |
- get() {
|
|
| 316 |
- return ((e, t) => Y(this).U.get(t))(0, e) |
|
| 317 |
- }, |
|
| 318 |
- set(l) {
|
|
| 319 |
- ((e, t, l, n) => {
|
|
| 320 |
- const s = Y(e), |
|
| 321 |
- o = s.S, |
|
| 322 |
- i = s.U.get(t), |
|
| 323 |
- c = s.t, |
|
| 324 |
- r = s.i; |
|
| 325 |
- if (l = ((e, t) => null == e || y(e) ? e : 4 & t ? "false" !== e && ("" === e || !!e) : 2 & t ? parseFloat(e) : 1 & t ? e + "" : e)(l, n.N[t][0]), !(8 & c && void 0 !== i || l === i) && (s.U.set(t, l), r)) {
|
|
| 326 |
- if (n.R && 128 & c) {
|
|
| 327 |
- const e = n.R[t]; |
|
| 328 |
- e && e.map((e => {
|
|
| 329 |
- try {
|
|
| 330 |
- r[e](l, i, t) |
|
| 331 |
- } catch (e) {
|
|
| 332 |
- le(e, o) |
|
| 333 |
- } |
|
| 334 |
- })) |
|
| 335 |
- } |
|
| 336 |
- 2 == (18 & c) && H(s, !1) |
|
| 337 |
- } |
|
| 338 |
- })(this, e, l, t) |
|
| 339 |
- }, |
|
| 340 |
- configurable: !0, |
|
| 341 |
- enumerable: !0 |
|
| 342 |
- }) : 1 & l && 64 & n && Object.defineProperty(s, e, {
|
|
| 343 |
- value(...t) {
|
|
| 344 |
- const l = Y(this); |
|
| 345 |
- return l.W.then((() => l.i[e](...t))) |
|
| 346 |
- } |
|
| 347 |
- }) |
|
| 348 |
- })), 1 & l) {
|
|
| 349 |
- const l = new Map; |
|
| 350 |
- s.attributeChangedCallback = function (e, t, n) {
|
|
| 351 |
- o.jmp((() => {
|
|
| 352 |
- const t = l.get(e); |
|
| 353 |
- this[t] = (null !== n || "boolean" != typeof this[t]) && n |
|
| 354 |
- })) |
|
| 355 |
- }, e.observedAttributes = n.filter((([e, t]) => 15 & t[0])).map((([e, n]) => {
|
|
| 356 |
- const s = n[1] || e; |
|
| 357 |
- return l.set(s, e), 512 & n[0] && t._.push([e, s]), s |
|
| 358 |
- })) |
|
| 359 |
- } |
|
| 360 |
- } |
|
| 361 |
- return e |
|
| 362 |
- }, J = e => {
|
|
| 363 |
- q(e, "connectedCallback") |
|
| 364 |
- }, K = e => {
|
|
| 365 |
- if (0 == (1 & o.t)) {
|
|
| 366 |
- const t = Y(e), |
|
| 367 |
- l = t.C, |
|
| 368 |
- n = () => {};
|
|
| 369 |
- if (1 & t.t) r(e, t, l.q), J(t.i); |
|
| 370 |
- else {
|
|
| 371 |
- let n; |
|
| 372 |
- t.t |= 1, n = e.getAttribute("s-id"), n && ((e, t, l, n) => {
|
|
| 373 |
- const i = e.shadowRoot, |
|
| 374 |
- c = [], |
|
| 375 |
- r = n.P = m(t, null); |
|
| 376 |
- o.V || D(s.body, o.V = new Map), e["s-id"] = l, e.removeAttribute("s-id"), B(r, c, [], null, e, e, l), c.map((e => {
|
|
| 377 |
- const l = e.A + "." + e.F, |
|
| 378 |
- n = o.V.get(l), |
|
| 379 |
- s = e.j; |
|
| 380 |
- n && "" === n["s-en"] && n.parentNode.insertBefore(s, n.nextSibling), i || (s["s-hn"] = t, n && (s["s-ol"] = n, s["s-ol"]["s-nr"] = s)), o.V.delete(l) |
|
| 381 |
- })) |
|
| 382 |
- })(e, l.$, n, t); {
|
|
| 383 |
- let l = e; |
|
| 384 |
- for (; l = l.parentNode || l.host;) |
|
| 385 |
- if (1 === l.nodeType && l.hasAttribute("s-id") && l["s-p"] || l["s-p"]) {
|
|
| 386 |
- F(t, t.M = l); |
|
| 387 |
- break |
|
| 388 |
- } |
|
| 389 |
- } |
|
| 390 |
- l.N && Object.entries(l.N).map((([t, [l]]) => {
|
|
| 391 |
- if (31 & l && e.hasOwnProperty(t)) {
|
|
| 392 |
- const l = e[t]; |
|
| 393 |
- delete e[t], e[t] = l |
|
| 394 |
- } |
|
| 395 |
- })), ie((() => (async (e, t, l, n, s) => {
|
|
| 396 |
- if (0 == (32 & t.t)) {
|
|
| 397 |
- {
|
|
| 398 |
- if (t.t |= 32, (s = se(l)).then) {
|
|
| 399 |
- const e = () => {};
|
|
| 400 |
- s = await s, e() |
|
| 401 |
- } |
|
| 402 |
- s.isProxied || (l.R = s.watchers, G(s, l, 2), s.isProxied = !0); |
|
| 403 |
- const e = () => {};
|
|
| 404 |
- t.t |= 8; |
|
| 405 |
- try {
|
|
| 406 |
- new s(t) |
|
| 407 |
- } catch (e) {
|
|
| 408 |
- le(e) |
|
| 409 |
- } |
|
| 410 |
- t.t &= -9, t.t |= 128, e(), J(t.i) |
|
| 411 |
- } |
|
| 412 |
- if (s.style) {
|
|
| 413 |
- let e = s.style; |
|
| 414 |
- const t = d(l); |
|
| 415 |
- if (!oe.has(t)) {
|
|
| 416 |
- const n = () => {};
|
|
| 417 |
- ((e, t, l) => {
|
|
| 418 |
- let n = oe.get(e); |
|
| 419 |
- c && l ? (n = n || new CSSStyleSheet, n.replace(t)) : n = t, oe.set(e, n) |
|
| 420 |
- })(t, e, !!(1 & l.t)), n() |
|
| 421 |
- } |
|
| 422 |
- } |
|
| 423 |
- } |
|
| 424 |
- const o = t.M, |
|
| 425 |
- i = () => H(t, !0); |
|
| 426 |
- o && o["s-rc"] ? o["s-rc"].push(i) : i() |
|
| 427 |
- })(0, t, l))) |
|
| 428 |
- } |
|
| 429 |
- n() |
|
| 430 |
- } |
|
| 431 |
- }, Q = (e, t = {}) => {
|
|
| 432 |
- const n = [], |
|
| 433 |
- i = t.exclude || [], |
|
| 434 |
- c = l.customElements, |
|
| 435 |
- r = s.head, |
|
| 436 |
- u = r.querySelector("meta[charset]"),
|
|
| 437 |
- a = s.createElement("style"),
|
|
| 438 |
- f = []; |
|
| 439 |
- let $, d = !0; |
|
| 440 |
- Object.assign(o, t), o.l = new URL(t.resourcesUrl || "./", s.baseURI).href, o.t |= 2, e.map((e => e[1].map((t => {
|
|
| 441 |
- const l = {
|
|
| 442 |
- t: t[0], |
|
| 443 |
- $: t[1], |
|
| 444 |
- N: t[2], |
|
| 445 |
- q: t[3] |
|
| 446 |
- }; |
|
| 447 |
- l.N = t[2], l.q = t[3], l._ = [], l.R = {};
|
|
| 448 |
- const s = l.$, |
|
| 449 |
- r = class extends HTMLElement {
|
|
| 450 |
- constructor(e) {
|
|
| 451 |
- super(e), ee(e = this, l) |
|
| 452 |
- } |
|
| 453 |
- connectedCallback() {
|
|
| 454 |
- $ && (clearTimeout($), $ = null), d ? f.push(this) : o.jmp((() => K(this))) |
|
| 455 |
- } |
|
| 456 |
- disconnectedCallback() {
|
|
| 457 |
- o.jmp((() => (() => {
|
|
| 458 |
- if (0 == (1 & o.t)) {
|
|
| 459 |
- const e = Y(this); |
|
| 460 |
- e.o && (e.o.map((e => e())), e.o = void 0) |
|
| 461 |
- } |
|
| 462 |
- })())) |
|
| 463 |
- } |
|
| 464 |
- componentOnReady() {
|
|
| 465 |
- return Y(this).B |
|
| 466 |
- } |
|
| 467 |
- }; |
|
| 468 |
- l.D = e[0], i.includes(s) || c.get(s) || (n.push(s), c.define(s, G(r, l, 1))) |
|
| 469 |
- })))), a.innerHTML = n + "{visibility:hidden}.hydrated{visibility:inherit}", a.setAttribute("data-styles", ""), r.insertBefore(a, u ? u.nextSibling : r.firstChild), d = !1, f.length ? f.map((e => e.connectedCallback())) : o.jmp((() => $ = setTimeout(W, 30)))
|
|
| 470 |
- }, X = new WeakMap, Y = e => X.get(e), Z = (e, t) => X.set(t.i = e, t), ee = (e, t) => {
|
|
| 471 |
- const l = {
|
|
| 472 |
- t: 0, |
|
| 473 |
- S: e, |
|
| 474 |
- C: t, |
|
| 475 |
- U: new Map |
|
| 476 |
- }; |
|
| 477 |
- return l.W = new Promise((e => l.T = e)), l.B = new Promise((e => l.I = e)), e["s-p"] = [], e["s-rc"] = [], r(e, l, t.q), X.set(e, l) |
|
| 478 |
- }, te = (e, t) => t in e, le = (e, t) => (0, console.error)(e, t), ne = new Map, se = e => {
|
|
| 479 |
- const t = e.$.replace(/-/g, "_"), |
|
| 480 |
- l = e.D, |
|
| 481 |
- n = ne.get(l); |
|
| 482 |
- return n ? n[t] : __sc_import_duet(`./${l}.entry.js`).then((e => (ne.set(l, e), e[t])), le)
|
|
| 483 |
- }, oe = new Map, ie = e => i().then(e); |
|
| 484 |
-export {
|
|
| 485 |
- n as C, w as H, e as N, i as a, Q as b, T as c, s as d, I as g, p as h, o as p, Z as r, l as w |
|
| 1 |
+const e = "duet"; |
|
| 2 |
+let t = !1; |
|
| 3 |
+const l = "undefined" != typeof window ? window : {},
|
|
| 4 |
+ n = l.CSS, |
|
| 5 |
+ s = l.document || {
|
|
| 6 |
+ head: {}
|
|
| 7 |
+ }, |
|
| 8 |
+ o = {
|
|
| 9 |
+ t: 0, |
|
| 10 |
+ l: "", |
|
| 11 |
+ jmp: e => e(), |
|
| 12 |
+ raf: e => requestAnimationFrame(e), |
|
| 13 |
+ ael: (e, t, l, n) => e.addEventListener(t, l, n), |
|
| 14 |
+ rel: (e, t, l, n) => e.removeEventListener(t, l, n), |
|
| 15 |
+ ce: (e, t) => new CustomEvent(e, t) |
|
| 16 |
+ }, |
|
| 17 |
+ i = e => Promise.resolve(e), |
|
| 18 |
+ c = (() => {
|
|
| 19 |
+ try {
|
|
| 20 |
+ return new CSSStyleSheet, "function" == typeof (new CSSStyleSheet).replace |
|
| 21 |
+ } catch (e) {}
|
|
| 22 |
+ return !1 |
|
| 23 |
+ })(), |
|
| 24 |
+ r = (e, t, l) => {
|
|
| 25 |
+ l && l.map((([l, n, s]) => {
|
|
| 26 |
+ const i = a(e, l), |
|
| 27 |
+ c = u(t, s), |
|
| 28 |
+ r = f(l); |
|
| 29 |
+ o.ael(i, n, c, r), (t.o = t.o || []).push((() => o.rel(i, n, c, r))) |
|
| 30 |
+ })) |
|
| 31 |
+ }, |
|
| 32 |
+ u = (e, t) => l => {
|
|
| 33 |
+ try {
|
|
| 34 |
+ 256 & e.t ? e.i[t](l) : (e.u = e.u || []).push([t, l]) |
|
| 35 |
+ } catch (e) {
|
|
| 36 |
+ le(e) |
|
| 37 |
+ } |
|
| 38 |
+ }, |
|
| 39 |
+ a = (e, t) => 4 & t ? s : e, |
|
| 40 |
+ f = e => 0 != (2 & e), |
|
| 41 |
+ $ = new WeakMap, |
|
| 42 |
+ d = e => "sc-" + e.$, |
|
| 43 |
+ h = {},
|
|
| 44 |
+ y = e => "object" == (e = typeof e) || "function" === e, |
|
| 45 |
+ p = (e, t, ...l) => {
|
|
| 46 |
+ let n = null, |
|
| 47 |
+ s = null, |
|
| 48 |
+ o = !1, |
|
| 49 |
+ i = !1, |
|
| 50 |
+ c = []; |
|
| 51 |
+ const r = t => {
|
|
| 52 |
+ for (let l = 0; l < t.length; l++) n = t[l], Array.isArray(n) ? r(n) : null != n && "boolean" != typeof n && ((o = "function" != typeof e && !y(n)) && (n += ""), o && i ? c[c.length - 1].h += n : c.push(o ? m(null, n) : n), i = o) |
|
| 53 |
+ }; |
|
| 54 |
+ if (r(l), t) {
|
|
| 55 |
+ t.key && (s = t.key); {
|
|
| 56 |
+ const e = t.className || t.class; |
|
| 57 |
+ e && (t.class = "object" != typeof e ? e : Object.keys(e).filter((t => e[t])).join(" "))
|
|
| 58 |
+ } |
|
| 59 |
+ } |
|
| 60 |
+ if ("function" == typeof e) return e(null === t ? {} : t, c, b);
|
|
| 61 |
+ const u = m(e, null); |
|
| 62 |
+ return u.p = t, c.length > 0 && (u.m = c), u.g = s, u |
|
| 63 |
+ }, |
|
| 64 |
+ m = (e, t) => ({
|
|
| 65 |
+ t: 0, |
|
| 66 |
+ v: e, |
|
| 67 |
+ h: t, |
|
| 68 |
+ j: null, |
|
| 69 |
+ m: null, |
|
| 70 |
+ p: null, |
|
| 71 |
+ g: null |
|
| 72 |
+ }), |
|
| 73 |
+ w = {},
|
|
| 74 |
+ b = {
|
|
| 75 |
+ forEach: (e, t) => e.map(g).forEach(t), |
|
| 76 |
+ map: (e, t) => e.map(g).map(t).map(v) |
|
| 77 |
+ }, |
|
| 78 |
+ g = e => ({
|
|
| 79 |
+ vattrs: e.p, |
|
| 80 |
+ vchildren: e.m, |
|
| 81 |
+ vkey: e.g, |
|
| 82 |
+ vname: e.k, |
|
| 83 |
+ vtag: e.v, |
|
| 84 |
+ vtext: e.h |
|
| 85 |
+ }), |
|
| 86 |
+ v = e => {
|
|
| 87 |
+ if ("function" == typeof e.vtag) {
|
|
| 88 |
+ const t = Object.assign({}, e.vattrs);
|
|
| 89 |
+ return e.vkey && (t.key = e.vkey), e.vname && (t.name = e.vname), p(e.vtag, t, ...e.vchildren || []) |
|
| 90 |
+ } |
|
| 91 |
+ const t = m(e.vtag, e.vtext); |
|
| 92 |
+ return t.p = e.vattrs, t.m = e.vchildren, t.g = e.vkey, t.k = e.vname, t |
|
| 93 |
+ }, |
|
| 94 |
+ j = (e, t, n, s, i, c) => {
|
|
| 95 |
+ if (n !== s) {
|
|
| 96 |
+ let r = te(e, t), |
|
| 97 |
+ u = t.toLowerCase(); |
|
| 98 |
+ if ("class" === t) {
|
|
| 99 |
+ const t = e.classList, |
|
| 100 |
+ l = S(n), |
|
| 101 |
+ o = S(s); |
|
| 102 |
+ t.remove(...l.filter((e => e && !o.includes(e)))), t.add(...o.filter((e => e && !l.includes(e)))) |
|
| 103 |
+ } else if ("key" === t);
|
|
| 104 |
+ else if ("ref" === t) s && s(e);
|
|
| 105 |
+ else if (r || "o" !== t[0] || "n" !== t[1]) {
|
|
| 106 |
+ const l = y(s); |
|
| 107 |
+ if ((r || l && null !== s) && !i) try {
|
|
| 108 |
+ if (e.tagName.includes("-")) e[t] = s;
|
|
| 109 |
+ else {
|
|
| 110 |
+ let l = null == s ? "" : s; |
|
| 111 |
+ "list" === t ? r = !1 : null != n && e[t] == l || (e[t] = l) |
|
| 112 |
+ } |
|
| 113 |
+ } catch (e) {}
|
|
| 114 |
+ null == s || !1 === s ? !1 === s && "" !== e.getAttribute(t) || e.removeAttribute(t) : (!r || 4 & c || i) && !l && e.setAttribute(t, s = !0 === s ? "" : s) |
|
| 115 |
+ } else t = "-" === t[2] ? t.slice(3) : te(l, u) ? u.slice(2) : u[2] + t.slice(3), n && o.rel(e, t, n, !1), s && o.ael(e, t, s, !1) |
|
| 116 |
+ } |
|
| 117 |
+ }, |
|
| 118 |
+ k = /\s/, |
|
| 119 |
+ S = e => e ? e.split(k) : [], |
|
| 120 |
+ O = (e, t, l, n) => {
|
|
| 121 |
+ const s = 11 === t.j.nodeType && t.j.host ? t.j.host : t.j, |
|
| 122 |
+ o = e && e.p || h, |
|
| 123 |
+ i = t.p || h; |
|
| 124 |
+ for (n in o) n in i || j(s, n, o[n], void 0, l, t.t); |
|
| 125 |
+ for (n in i) j(s, n, o[n], i[n], l, t.t) |
|
| 126 |
+ }, |
|
| 127 |
+ x = (e, l, n) => {
|
|
| 128 |
+ let o, i, c = l.m[n], |
|
| 129 |
+ r = 0; |
|
| 130 |
+ if (null !== c.h) o = c.j = s.createTextNode(c.h); |
|
| 131 |
+ else {
|
|
| 132 |
+ if (t || (t = "svg" === c.v), o = c.j = s.createElementNS(t ? "http://www.w3.org/2000/svg" : "http://www.w3.org/1999/xhtml", c.v), t && "foreignObject" === c.v && (t = !1), O(null, c, t), c.m) |
|
| 133 |
+ for (r = 0; r < c.m.length; ++r) i = x(e, c, r), i && o.appendChild(i); |
|
| 134 |
+ "svg" === c.v ? t = !1 : "foreignObject" === o.tagName && (t = !0) |
|
| 135 |
+ } |
|
| 136 |
+ return o |
|
| 137 |
+ }, |
|
| 138 |
+ M = (e, t, l, n, s, o) => {
|
|
| 139 |
+ let i, c = e; |
|
| 140 |
+ for (; s <= o; ++s) n[s] && (i = x(null, l, s), i && (n[s].j = i, c.insertBefore(i, t))) |
|
| 141 |
+ }, |
|
| 142 |
+ C = (e, t, l, n, s) => {
|
|
| 143 |
+ for (; t <= l; ++t)(n = e[t]) && (s = n.j, E(n), s.remove()) |
|
| 144 |
+ }, |
|
| 145 |
+ P = (e, t) => e.v === t.v && e.g === t.g, |
|
| 146 |
+ _ = (e, l) => {
|
|
| 147 |
+ const n = l.j = e.j, |
|
| 148 |
+ s = e.m, |
|
| 149 |
+ o = l.m, |
|
| 150 |
+ i = l.v, |
|
| 151 |
+ c = l.h; |
|
| 152 |
+ null === c ? (t = "svg" === i || "foreignObject" !== i && t, O(e, l, t), null !== s && null !== o ? ((e, t, l, n) => {
|
|
| 153 |
+ let s, o, i = 0, |
|
| 154 |
+ c = 0, |
|
| 155 |
+ r = 0, |
|
| 156 |
+ u = 0, |
|
| 157 |
+ a = t.length - 1, |
|
| 158 |
+ f = t[0], |
|
| 159 |
+ $ = t[a], |
|
| 160 |
+ d = n.length - 1, |
|
| 161 |
+ h = n[0], |
|
| 162 |
+ y = n[d]; |
|
| 163 |
+ for (; i <= a && c <= d;) |
|
| 164 |
+ if (null == f) f = t[++i]; |
|
| 165 |
+ else if (null == $) $ = t[--a]; |
|
| 166 |
+ else if (null == h) h = n[++c]; |
|
| 167 |
+ else if (null == y) y = n[--d]; |
|
| 168 |
+ else if (P(f, h)) _(f, h), f = t[++i], h = n[++c]; |
|
| 169 |
+ else if (P($, y)) _($, y), $ = t[--a], y = n[--d]; |
|
| 170 |
+ else if (P(f, y)) _(f, y), e.insertBefore(f.j, $.j.nextSibling), f = t[++i], y = n[--d]; |
|
| 171 |
+ else if (P($, h)) _($, h), e.insertBefore($.j, f.j), $ = t[--a], h = n[++c]; |
|
| 172 |
+ else {
|
|
| 173 |
+ for (r = -1, u = i; u <= a; ++u) |
|
| 174 |
+ if (t[u] && null !== t[u].g && t[u].g === h.g) {
|
|
| 175 |
+ r = u; |
|
| 176 |
+ break |
|
| 177 |
+ } r >= 0 ? (o = t[r], o.v !== h.v ? s = x(t && t[c], l, r) : (_(o, h), t[r] = void 0, s = o.j), h = n[++c]) : (s = x(t && t[c], l, c), h = n[++c]), s && f.j.parentNode.insertBefore(s, f.j) |
|
| 178 |
+ } |
|
| 179 |
+ i > a ? M(e, null == n[d + 1] ? null : n[d + 1].j, l, n, c, d) : c > d && C(t, i, a) |
|
| 180 |
+ })(n, s, l, o) : null !== o ? (null !== e.h && (n.textContent = ""), M(n, null, l, o, 0, o.length - 1)) : null !== s && C(s, 0, s.length - 1), t && "svg" === i && (t = !1)) : e.h !== c && (n.data = c) |
|
| 181 |
+ }, |
|
| 182 |
+ E = e => {
|
|
| 183 |
+ e.p && e.p.ref && e.p.ref(null), e.m && e.m.map(E) |
|
| 184 |
+ }, |
|
| 185 |
+ I = e => Y(e).S, |
|
| 186 |
+ T = (e, t, l) => {
|
|
| 187 |
+ const n = I(e); |
|
| 188 |
+ return {
|
|
| 189 |
+ emit: e => A(n, t, {
|
|
| 190 |
+ bubbles: !!(4 & l), |
|
| 191 |
+ composed: !!(2 & l), |
|
| 192 |
+ cancelable: !!(1 & l), |
|
| 193 |
+ detail: e |
|
| 194 |
+ }) |
|
| 195 |
+ } |
|
| 196 |
+ }, |
|
| 197 |
+ A = (e, t, l) => {
|
|
| 198 |
+ const n = o.ce(t, l); |
|
| 199 |
+ return e.dispatchEvent(n), n |
|
| 200 |
+ }, |
|
| 201 |
+ F = (e, t) => {
|
|
| 202 |
+ t && !e.O && t["s-p"] && t["s-p"].push(new Promise((t => e.O = t))) |
|
| 203 |
+ }, |
|
| 204 |
+ H = (e, t) => {
|
|
| 205 |
+ if (!(4 & e.t)) return F(e, e.M), L(e, t); |
|
| 206 |
+ e.t |= 512 |
|
| 207 |
+ }, |
|
| 208 |
+ L = (e, t) => {
|
|
| 209 |
+ const l = e.i; |
|
| 210 |
+ return t && (e.t |= 256, e.u && (e.u.map((([e, t]) => q(l, e, t))), e.u = null)), V(void 0, (() => N(e, l, t))) |
|
| 211 |
+ }, |
|
| 212 |
+ N = async (e, t, l) => {
|
|
| 213 |
+ const n = e.S, |
|
| 214 |
+ o = n["s-rc"]; |
|
| 215 |
+ l && (e => {
|
|
| 216 |
+ const t = e.C; |
|
| 217 |
+ ((e, t) => {
|
|
| 218 |
+ let l = d(t), |
|
| 219 |
+ n = oe.get(l); |
|
| 220 |
+ if (e = 11 === e.nodeType ? e : s, n) |
|
| 221 |
+ if ("string" == typeof n) {
|
|
| 222 |
+ let t, o = $.get(e = e.head || e); |
|
| 223 |
+ o || $.set(e, o = new Set), o.has(l) || (e.host && (t = e.querySelector(`[sty-id="${l}"]`)) ? t.innerHTML = n : (t = s.createElement("style"), t.innerHTML = n, e.insertBefore(t, e.querySelector("link"))), o && o.add(l))
|
|
| 224 |
+ } else e.adoptedStyleSheets.includes(n) || (e.adoptedStyleSheets = [...e.adoptedStyleSheets, n]) |
|
| 225 |
+ })(e.S.getRootNode(), t) |
|
| 226 |
+ })(e); |
|
| 227 |
+ R(e, t), o && (o.map((e => e())), n["s-rc"] = void 0); {
|
|
| 228 |
+ const t = n["s-p"], |
|
| 229 |
+ l = () => U(e); |
|
| 230 |
+ 0 === t.length ? l() : (Promise.all(t).then(l), e.t |= 4, t.length = 0) |
|
| 231 |
+ } |
|
| 232 |
+ }, R = (e, t) => {
|
|
| 233 |
+ try {
|
|
| 234 |
+ t = t.render(), e.t |= 2, ((e, t) => {
|
|
| 235 |
+ const l = e.S, |
|
| 236 |
+ n = e.C, |
|
| 237 |
+ s = e.P || m(null, null), |
|
| 238 |
+ o = (e => e && e.v === w)(t) ? t : p(null, null, t); |
|
| 239 |
+ n._ && (o.p = o.p || {}, n._.map((([e, t]) => o.p[t] = l[e]))), o.v = null, o.t |= 4, e.P = o, o.j = s.j = l, _(s, o)
|
|
| 240 |
+ })(e, t) |
|
| 241 |
+ } catch (t) {
|
|
| 242 |
+ le(t, e.S) |
|
| 243 |
+ } |
|
| 244 |
+ return null |
|
| 245 |
+ }, U = e => {
|
|
| 246 |
+ const t = e.S, |
|
| 247 |
+ l = e.M; |
|
| 248 |
+ 64 & e.t || (e.t |= 64, z(t), e.I(t), l || W()), e.T(t), e.O && (e.O(), e.O = void 0), 512 & e.t && ie((() => H(e, !1))), e.t &= -517 |
|
| 249 |
+ }, W = () => {
|
|
| 250 |
+ z(s.documentElement), ie((() => A(l, "appload", {
|
|
| 251 |
+ detail: {
|
|
| 252 |
+ namespace: "duet" |
|
| 253 |
+ } |
|
| 254 |
+ }))) |
|
| 255 |
+ }, q = (e, t, l) => {
|
|
| 256 |
+ if (e && e[t]) try {
|
|
| 257 |
+ return e[t](l) |
|
| 258 |
+ } catch (e) {
|
|
| 259 |
+ le(e) |
|
| 260 |
+ } |
|
| 261 |
+ }, V = (e, t) => e && e.then ? e.then(t) : t(), z = e => e.classList.add("hydrated"), B = (e, t, l, n, s, o, i) => {
|
|
| 262 |
+ let c, r, u, a; |
|
| 263 |
+ if (1 === o.nodeType) {
|
|
| 264 |
+ for (c = o.getAttribute("c-id"), c && (r = c.split("."), r[0] !== i && "0" !== r[0] || (u = {
|
|
| 265 |
+ t: 0, |
|
| 266 |
+ A: r[0], |
|
| 267 |
+ F: r[1], |
|
| 268 |
+ H: r[2], |
|
| 269 |
+ L: r[3], |
|
| 270 |
+ v: o.tagName.toLowerCase(), |
|
| 271 |
+ j: o, |
|
| 272 |
+ p: null, |
|
| 273 |
+ m: null, |
|
| 274 |
+ g: null, |
|
| 275 |
+ k: null, |
|
| 276 |
+ h: null |
|
| 277 |
+ }, t.push(u), o.removeAttribute("c-id"), e.m || (e.m = []), e.m[u.L] = u, e = u, n && "0" === u.H && (n[u.L] = u.j))), a = o.childNodes.length - 1; a >= 0; a--) B(e, t, l, n, s, o.childNodes[a], i);
|
|
| 278 |
+ if (o.shadowRoot) |
|
| 279 |
+ for (a = o.shadowRoot.childNodes.length - 1; a >= 0; a--) B(e, t, l, n, s, o.shadowRoot.childNodes[a], i) |
|
| 280 |
+ } else if (8 === o.nodeType) r = o.nodeValue.split("."), r[1] !== i && "0" !== r[1] || (c = r[0], u = {
|
|
| 281 |
+ t: 0, |
|
| 282 |
+ A: r[1], |
|
| 283 |
+ F: r[2], |
|
| 284 |
+ H: r[3], |
|
| 285 |
+ L: r[4], |
|
| 286 |
+ j: o, |
|
| 287 |
+ p: null, |
|
| 288 |
+ m: null, |
|
| 289 |
+ g: null, |
|
| 290 |
+ k: null, |
|
| 291 |
+ v: null, |
|
| 292 |
+ h: null |
|
| 293 |
+ }, "t" === c ? (u.j = o.nextSibling, u.j && 3 === u.j.nodeType && (u.h = u.j.textContent, t.push(u), o.remove(), e.m || (e.m = []), e.m[u.L] = u, n && "0" === u.H && (n[u.L] = u.j))) : u.A === i && "s" === c && (u.v = "slot", o["s-sn"] = r[5] ? u.k = r[5] : "", o["s-sr"] = !0, l.push(u), e.m || (e.m = []), e.m[u.L] = u)); |
|
| 294 |
+ else if (e && "style" === e.v) {
|
|
| 295 |
+ const t = m(null, o.textContent); |
|
| 296 |
+ t.j = o, t.L = "0", e.m = [t] |
|
| 297 |
+ } |
|
| 298 |
+ }, D = (e, t) => {
|
|
| 299 |
+ if (1 === e.nodeType) {
|
|
| 300 |
+ let l = 0; |
|
| 301 |
+ for (; l < e.childNodes.length; l++) D(e.childNodes[l], t); |
|
| 302 |
+ if (e.shadowRoot) |
|
| 303 |
+ for (l = 0; l < e.shadowRoot.childNodes.length; l++) D(e.shadowRoot.childNodes[l], t) |
|
| 304 |
+ } else if (8 === e.nodeType) {
|
|
| 305 |
+ const l = e.nodeValue.split(".");
|
|
| 306 |
+ "o" === l[0] && (t.set(l[1] + "." + l[2], e), e.nodeValue = "", e["s-en"] = l[3]) |
|
| 307 |
+ } |
|
| 308 |
+ }, G = (e, t, l) => {
|
|
| 309 |
+ if (t.N) {
|
|
| 310 |
+ e.watchers && (t.R = e.watchers); |
|
| 311 |
+ const n = Object.entries(t.N), |
|
| 312 |
+ s = e.prototype; |
|
| 313 |
+ if (n.map((([e, [n]]) => {
|
|
| 314 |
+ 31 & n || 2 & l && 32 & n ? Object.defineProperty(s, e, {
|
|
| 315 |
+ get() {
|
|
| 316 |
+ return ((e, t) => Y(this).U.get(t))(0, e) |
|
| 317 |
+ }, |
|
| 318 |
+ set(l) {
|
|
| 319 |
+ ((e, t, l, n) => {
|
|
| 320 |
+ const s = Y(e), |
|
| 321 |
+ o = s.S, |
|
| 322 |
+ i = s.U.get(t), |
|
| 323 |
+ c = s.t, |
|
| 324 |
+ r = s.i; |
|
| 325 |
+ if (l = ((e, t) => null == e || y(e) ? e : 4 & t ? "false" !== e && ("" === e || !!e) : 2 & t ? parseFloat(e) : 1 & t ? e + "" : e)(l, n.N[t][0]), !(8 & c && void 0 !== i || l === i) && (s.U.set(t, l), r)) {
|
|
| 326 |
+ if (n.R && 128 & c) {
|
|
| 327 |
+ const e = n.R[t]; |
|
| 328 |
+ e && e.map((e => {
|
|
| 329 |
+ try {
|
|
| 330 |
+ r[e](l, i, t) |
|
| 331 |
+ } catch (e) {
|
|
| 332 |
+ le(e, o) |
|
| 333 |
+ } |
|
| 334 |
+ })) |
|
| 335 |
+ } |
|
| 336 |
+ 2 == (18 & c) && H(s, !1) |
|
| 337 |
+ } |
|
| 338 |
+ })(this, e, l, t) |
|
| 339 |
+ }, |
|
| 340 |
+ configurable: !0, |
|
| 341 |
+ enumerable: !0 |
|
| 342 |
+ }) : 1 & l && 64 & n && Object.defineProperty(s, e, {
|
|
| 343 |
+ value(...t) {
|
|
| 344 |
+ const l = Y(this); |
|
| 345 |
+ return l.W.then((() => l.i[e](...t))) |
|
| 346 |
+ } |
|
| 347 |
+ }) |
|
| 348 |
+ })), 1 & l) {
|
|
| 349 |
+ const l = new Map; |
|
| 350 |
+ s.attributeChangedCallback = function (e, t, n) {
|
|
| 351 |
+ o.jmp((() => {
|
|
| 352 |
+ const t = l.get(e); |
|
| 353 |
+ this[t] = (null !== n || "boolean" != typeof this[t]) && n |
|
| 354 |
+ })) |
|
| 355 |
+ }, e.observedAttributes = n.filter((([e, t]) => 15 & t[0])).map((([e, n]) => {
|
|
| 356 |
+ const s = n[1] || e; |
|
| 357 |
+ return l.set(s, e), 512 & n[0] && t._.push([e, s]), s |
|
| 358 |
+ })) |
|
| 359 |
+ } |
|
| 360 |
+ } |
|
| 361 |
+ return e |
|
| 362 |
+ }, J = e => {
|
|
| 363 |
+ q(e, "connectedCallback") |
|
| 364 |
+ }, K = e => {
|
|
| 365 |
+ if (0 == (1 & o.t)) {
|
|
| 366 |
+ const t = Y(e), |
|
| 367 |
+ l = t.C, |
|
| 368 |
+ n = () => {};
|
|
| 369 |
+ if (1 & t.t) r(e, t, l.q), J(t.i); |
|
| 370 |
+ else {
|
|
| 371 |
+ let n; |
|
| 372 |
+ t.t |= 1, n = e.getAttribute("s-id"), n && ((e, t, l, n) => {
|
|
| 373 |
+ const i = e.shadowRoot, |
|
| 374 |
+ c = [], |
|
| 375 |
+ r = n.P = m(t, null); |
|
| 376 |
+ o.V || D(s.body, o.V = new Map), e["s-id"] = l, e.removeAttribute("s-id"), B(r, c, [], null, e, e, l), c.map((e => {
|
|
| 377 |
+ const l = e.A + "." + e.F, |
|
| 378 |
+ n = o.V.get(l), |
|
| 379 |
+ s = e.j; |
|
| 380 |
+ n && "" === n["s-en"] && n.parentNode.insertBefore(s, n.nextSibling), i || (s["s-hn"] = t, n && (s["s-ol"] = n, s["s-ol"]["s-nr"] = s)), o.V.delete(l) |
|
| 381 |
+ })) |
|
| 382 |
+ })(e, l.$, n, t); {
|
|
| 383 |
+ let l = e; |
|
| 384 |
+ for (; l = l.parentNode || l.host;) |
|
| 385 |
+ if (1 === l.nodeType && l.hasAttribute("s-id") && l["s-p"] || l["s-p"]) {
|
|
| 386 |
+ F(t, t.M = l); |
|
| 387 |
+ break |
|
| 388 |
+ } |
|
| 389 |
+ } |
|
| 390 |
+ l.N && Object.entries(l.N).map((([t, [l]]) => {
|
|
| 391 |
+ if (31 & l && e.hasOwnProperty(t)) {
|
|
| 392 |
+ const l = e[t]; |
|
| 393 |
+ delete e[t], e[t] = l |
|
| 394 |
+ } |
|
| 395 |
+ })), ie((() => (async (e, t, l, n, s) => {
|
|
| 396 |
+ if (0 == (32 & t.t)) {
|
|
| 397 |
+ {
|
|
| 398 |
+ if (t.t |= 32, (s = se(l)).then) {
|
|
| 399 |
+ const e = () => {};
|
|
| 400 |
+ s = await s, e() |
|
| 401 |
+ } |
|
| 402 |
+ s.isProxied || (l.R = s.watchers, G(s, l, 2), s.isProxied = !0); |
|
| 403 |
+ const e = () => {};
|
|
| 404 |
+ t.t |= 8; |
|
| 405 |
+ try {
|
|
| 406 |
+ new s(t) |
|
| 407 |
+ } catch (e) {
|
|
| 408 |
+ le(e) |
|
| 409 |
+ } |
|
| 410 |
+ t.t &= -9, t.t |= 128, e(), J(t.i) |
|
| 411 |
+ } |
|
| 412 |
+ if (s.style) {
|
|
| 413 |
+ let e = s.style; |
|
| 414 |
+ const t = d(l); |
|
| 415 |
+ if (!oe.has(t)) {
|
|
| 416 |
+ const n = () => {};
|
|
| 417 |
+ ((e, t, l) => {
|
|
| 418 |
+ let n = oe.get(e); |
|
| 419 |
+ c && l ? (n = n || new CSSStyleSheet, n.replace(t)) : n = t, oe.set(e, n) |
|
| 420 |
+ })(t, e, !!(1 & l.t)), n() |
|
| 421 |
+ } |
|
| 422 |
+ } |
|
| 423 |
+ } |
|
| 424 |
+ const o = t.M, |
|
| 425 |
+ i = () => H(t, !0); |
|
| 426 |
+ o && o["s-rc"] ? o["s-rc"].push(i) : i() |
|
| 427 |
+ })(0, t, l))) |
|
| 428 |
+ } |
|
| 429 |
+ n() |
|
| 430 |
+ } |
|
| 431 |
+ }, Q = (e, t = {}) => {
|
|
| 432 |
+ const n = [], |
|
| 433 |
+ i = t.exclude || [], |
|
| 434 |
+ c = l.customElements, |
|
| 435 |
+ r = s.head, |
|
| 436 |
+ u = r.querySelector("meta[charset]"),
|
|
| 437 |
+ a = s.createElement("style"),
|
|
| 438 |
+ f = []; |
|
| 439 |
+ let $, d = !0; |
|
| 440 |
+ Object.assign(o, t), o.l = new URL(t.resourcesUrl || "./", s.baseURI).href, o.t |= 2, e.map((e => e[1].map((t => {
|
|
| 441 |
+ const l = {
|
|
| 442 |
+ t: t[0], |
|
| 443 |
+ $: t[1], |
|
| 444 |
+ N: t[2], |
|
| 445 |
+ q: t[3] |
|
| 446 |
+ }; |
|
| 447 |
+ l.N = t[2], l.q = t[3], l._ = [], l.R = {};
|
|
| 448 |
+ const s = l.$, |
|
| 449 |
+ r = class extends HTMLElement {
|
|
| 450 |
+ constructor(e) {
|
|
| 451 |
+ super(e), ee(e = this, l) |
|
| 452 |
+ } |
|
| 453 |
+ connectedCallback() {
|
|
| 454 |
+ $ && (clearTimeout($), $ = null), d ? f.push(this) : o.jmp((() => K(this))) |
|
| 455 |
+ } |
|
| 456 |
+ disconnectedCallback() {
|
|
| 457 |
+ o.jmp((() => (() => {
|
|
| 458 |
+ if (0 == (1 & o.t)) {
|
|
| 459 |
+ const e = Y(this); |
|
| 460 |
+ e.o && (e.o.map((e => e())), e.o = void 0) |
|
| 461 |
+ } |
|
| 462 |
+ })())) |
|
| 463 |
+ } |
|
| 464 |
+ componentOnReady() {
|
|
| 465 |
+ return Y(this).B |
|
| 466 |
+ } |
|
| 467 |
+ }; |
|
| 468 |
+ l.D = e[0], i.includes(s) || c.get(s) || (n.push(s), c.define(s, G(r, l, 1))) |
|
| 469 |
+ })))), a.innerHTML = n + "{visibility:hidden}.hydrated{visibility:inherit}", a.setAttribute("data-styles", ""), r.insertBefore(a, u ? u.nextSibling : r.firstChild), d = !1, f.length ? f.map((e => e.connectedCallback())) : o.jmp((() => $ = setTimeout(W, 30)))
|
|
| 470 |
+ }, X = new WeakMap, Y = e => X.get(e), Z = (e, t) => X.set(t.i = e, t), ee = (e, t) => {
|
|
| 471 |
+ const l = {
|
|
| 472 |
+ t: 0, |
|
| 473 |
+ S: e, |
|
| 474 |
+ C: t, |
|
| 475 |
+ U: new Map |
|
| 476 |
+ }; |
|
| 477 |
+ return l.W = new Promise((e => l.T = e)), l.B = new Promise((e => l.I = e)), e["s-p"] = [], e["s-rc"] = [], r(e, l, t.q), X.set(e, l) |
|
| 478 |
+ }, te = (e, t) => t in e, le = (e, t) => (0, console.error)(e, t), ne = new Map, se = e => {
|
|
| 479 |
+ const t = e.$.replace(/-/g, "_"), |
|
| 480 |
+ l = e.D, |
|
| 481 |
+ n = ne.get(l); |
|
| 482 |
+ return n ? n[t] : __sc_import_duet(`./${l}.entry.js`).then((e => (ne.set(l, e), e[t])), le)
|
|
| 483 |
+ }, oe = new Map, ie = e => i().then(e); |
|
| 484 |
+export {
|
|
| 485 |
+ n as C, w as H, e as N, i as a, Q as b, T as c, s as d, I as g, p as h, o as p, Z as r, l as w |
|
| 486 | 486 |
}(No newline at end of file) |
+++ src/main/webapp/publish/usr/company/history.html
... | ... | @@ -0,0 +1,90 @@ |
| 1 | +<!DOCTYPE html> | |
| 2 | +<html lang="ko"> | |
| 3 | + | |
| 4 | +<head> | |
| 5 | + <meta charset="UTF-8"> | |
| 6 | + <meta name="viewport" content="width=device-width, initial-scale=1.0"> | |
| 7 | + <title>리스트</title> | |
| 8 | + | |
| 9 | + <!-- css --> | |
| 10 | + <link rel="stylesheet" href="../../../css/reset.css"> | |
| 11 | + <link rel="stylesheet" href="../../../css/font.css"> | |
| 12 | + <link rel="stylesheet" href="../layout/layout.css"> | |
| 13 | + <link rel="stylesheet" href="../css/common.css"> | |
| 14 | + <link rel="stylesheet" href="../css/style.css"> | |
| 15 | + <link rel="stylesheet" href="../css/content.css"> | |
| 16 | + <!-- //css --> | |
| 17 | + | |
| 18 | + <!-- script --> | |
| 19 | + <script src="../../../js/jquery-3.5.0.js"></script> | |
| 20 | + <script src="../script/common.js"></script> | |
| 21 | + <script src="../layout/layout.js"></script> | |
| 22 | + <!-- //script --> | |
| 23 | + | |
| 24 | + <!-- 캘린더 --> | |
| 25 | + <script type="module" src="../../../js/plugin/datapicker/duet.esm.js"></script> | |
| 26 | + <script nomodule src="../../../js/plugin/datapicker/duet.js"></script> | |
| 27 | + <link rel="stylesheet" href="../../../js/plugin/datapicker/default.css"> | |
| 28 | + | |
| 29 | + | |
| 30 | +</head> | |
| 31 | + | |
| 32 | +<body data-section="company"> | |
| 33 | + | |
| 34 | + | |
| 35 | + <div class="wrap"> | |
| 36 | + <div data-include-path="../layout/_header.html"></div> | |
| 37 | + | |
| 38 | + <div id="container" class="container sub company"> | |
| 39 | + <div class="sub_visual"> | |
| 40 | + <div class="inner"> | |
| 41 | + <h2 class="sub_title" data-section="company">COMPANY</h2> | |
| 42 | + <div class="sub_visual_nav"> | |
| 43 | + <a href="../index.html"><i class="icon home"></i></a> | |
| 44 | + <div class="snb_wrap"> | |
| 45 | + <button type="button" class="snb_title">메뉴</button> | |
| 46 | + <ul class="snb_select"> | |
| 47 | + <li><a href="#">COMPANY</a></li> | |
| 48 | + <li><a href="#">Platform Tech</a></li> | |
| 49 | + <li><a href="#">Major Result</a></li> | |
| 50 | + </ul> | |
| 51 | + </div> | |
| 52 | + <div class="snb_wrap"> | |
| 53 | + <button type="button" class="snb_title">메뉴</button> | |
| 54 | + <ul class="snb_select"> | |
| 55 | + <li><a href="#">1depth</a></li> | |
| 56 | + <li><a href="#">1depth</a></li> | |
| 57 | + <li><a href="#">1depth</a></li> | |
| 58 | + </ul> | |
| 59 | + </div> | |
| 60 | + </div> | |
| 61 | + </div> | |
| 62 | + </div> | |
| 63 | + <div class="inner"> | |
| 64 | + <div class="content_wrap history"> | |
| 65 | + | |
| 66 | + <div class="contents"> | |
| 67 | + | |
| 68 | + <div class="content_title"> | |
| 69 | + <h3>연혁</h3> | |
| 70 | + </div> | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + </div> | |
| 76 | + | |
| 77 | + | |
| 78 | + </div> | |
| 79 | + </div> | |
| 80 | + </div> | |
| 81 | + | |
| 82 | + | |
| 83 | + | |
| 84 | + <div data-include-path="../layout/_footer.html"></div> | |
| 85 | + </div> | |
| 86 | + | |
| 87 | + | |
| 88 | +</body> | |
| 89 | + | |
| 90 | +</html>(No newline at end of file) |
+++ src/main/webapp/publish/usr/company/location.html
... | ... | @@ -0,0 +1,128 @@ |
| 1 | +<!DOCTYPE html> | |
| 2 | +<html lang="ko"> | |
| 3 | + | |
| 4 | +<head> | |
| 5 | + <meta charset="UTF-8"> | |
| 6 | + <meta name="viewport" content="width=device-width, initial-scale=1.0"> | |
| 7 | + <title>리스트</title> | |
| 8 | + | |
| 9 | + <!-- css --> | |
| 10 | + <link rel="stylesheet" href="../../../css/reset.css"> | |
| 11 | + <link rel="stylesheet" href="../../../css/font.css"> | |
| 12 | + <link rel="stylesheet" href="../layout/layout.css"> | |
| 13 | + <link rel="stylesheet" href="../css/common.css"> | |
| 14 | + <link rel="stylesheet" href="../css/style.css"> | |
| 15 | + <link rel="stylesheet" href="../css/content.css"> | |
| 16 | + <!-- //css --> | |
| 17 | + | |
| 18 | + <!-- script --> | |
| 19 | + <script src="../../../js/jquery-3.5.0.js"></script> | |
| 20 | + <script src="../script/common.js"></script> | |
| 21 | + <script src="../layout/layout.js"></script> | |
| 22 | + <!-- //script --> | |
| 23 | + | |
| 24 | + <!-- 캘린더 --> | |
| 25 | + <script type="module" src="../../../js/plugin/datapicker/duet.esm.js"></script> | |
| 26 | + <script nomodule src="../../../js/plugin/datapicker/duet.js"></script> | |
| 27 | + <link rel="stylesheet" href="../../../js/plugin/datapicker/default.css"> | |
| 28 | + | |
| 29 | + | |
| 30 | +</head> | |
| 31 | + | |
| 32 | +<body data-section="company"> | |
| 33 | + | |
| 34 | + | |
| 35 | + <div class="wrap"> | |
| 36 | + <div data-include-path="../layout/_header.html"></div> | |
| 37 | + | |
| 38 | + <div id="container" class="container sub company"> | |
| 39 | + <div class="sub_visual"> | |
| 40 | + <div class="inner"> | |
| 41 | + <h2 class="sub_title" data-section="company">COMPANY</h2> | |
| 42 | + <div class="sub_visual_nav"> | |
| 43 | + <a href="../index.html"><i class="icon home"></i></a> | |
| 44 | + <div class="snb_wrap"> | |
| 45 | + <button type="button" class="snb_title">메뉴</button> | |
| 46 | + <ul class="snb_select"> | |
| 47 | + <li><a href="#">COMPANY</a></li> | |
| 48 | + <li><a href="#">Platform Tech</a></li> | |
| 49 | + <li><a href="#">Major Result</a></li> | |
| 50 | + </ul> | |
| 51 | + </div> | |
| 52 | + <div class="snb_wrap"> | |
| 53 | + <button type="button" class="snb_title">메뉴</button> | |
| 54 | + <ul class="snb_select"> | |
| 55 | + <li><a href="#">1depth</a></li> | |
| 56 | + <li><a href="#">1depth</a></li> | |
| 57 | + <li><a href="#">1depth</a></li> | |
| 58 | + </ul> | |
| 59 | + </div> | |
| 60 | + </div> | |
| 61 | + </div> | |
| 62 | + </div> | |
| 63 | + <div class="inner"> | |
| 64 | + <div class="content_wrap location"> | |
| 65 | + | |
| 66 | + <div class="contents"> | |
| 67 | + | |
| 68 | + <div class="content_title"> | |
| 69 | + <h3>오시는 길</h3> | |
| 70 | + </div> | |
| 71 | + | |
| 72 | + <ul class="location_list"> | |
| 73 | + <li> | |
| 74 | + <div class="location_area"></div> | |
| 75 | + <div class="info"> | |
| 76 | + <strong class="title"><i class="icon location"></i>수원 본사·연구소</strong> | |
| 77 | + <p>경기도 수원시 영통구 창룡대로 260, 907호(이의동, 광교센트럴비즈타워) <br> #907,260, Changnyong-daero, Yeongtong-gu, Suwon-si, | |
| 78 | + Gyeonggi-do, Republic of Korea</p> | |
| 79 | + | |
| 80 | + <ul class="boxs"> | |
| 81 | + <li><i class="icon phone"></i>031-214-0317</li> | |
| 82 | + <li><i class="icon email"></i>orgasis@orgasis.co.kr</li> | |
| 83 | + </ul> | |
| 84 | + <button type="button" class="btn_map">카카오맵으로 길찾기</button> | |
| 85 | + </div> | |
| 86 | + </li> | |
| 87 | + <li> | |
| 88 | + <div class="location_area"></div> | |
| 89 | + <div class="info"> | |
| 90 | + <strong class="title"><i class="icon location"></i>대구 연구소</strong> | |
| 91 | + <p>대구광역시 북구 대학로80 경북대학교 미래융합과학관 4층<br> | |
| 92 | + 4F, Future Convergence Science Building, 80, Daehak-ro, Buk-gu, Daegu, Republic of Korea</p> | |
| 93 | + | |
| 94 | + <ul class="boxs"> | |
| 95 | + <li><i class="icon phone"></i>053-950-5382</li> | |
| 96 | + </ul> | |
| 97 | + <button type="button" class="btn_map">카카오맵으로 길찾기</button> | |
| 98 | + </div> | |
| 99 | + </li> | |
| 100 | + <li> | |
| 101 | + <div class="location_area"></div> | |
| 102 | + <div class="info"> | |
| 103 | + <strong class="title"><i class="icon location"></i>서울 사무소</strong> | |
| 104 | + <p>서울특별시 강서구 양천로 551-17, 203호 | |
| 105 | + <br> #203, 551-17, Yangcheon-ro, Gangseo-gu, Seoul, Republic of Korea</p> | |
| 106 | + | |
| 107 | + <button type="button" class="btn_map">카카오맵으로 길찾기</button> | |
| 108 | + </div> | |
| 109 | + </li> | |
| 110 | + </ul> | |
| 111 | + | |
| 112 | + | |
| 113 | + </div> | |
| 114 | + | |
| 115 | + | |
| 116 | + </div> | |
| 117 | + </div> | |
| 118 | + </div> | |
| 119 | + | |
| 120 | + | |
| 121 | + | |
| 122 | + <div data-include-path="../layout/_footer.html"></div> | |
| 123 | + </div> | |
| 124 | + | |
| 125 | + | |
| 126 | +</body> | |
| 127 | + | |
| 128 | +</html>(No newline at end of file) |
+++ src/main/webapp/publish/usr/company/organiztion.html
... | ... | @@ -0,0 +1,239 @@ |
| 1 | +<!DOCTYPE html> | |
| 2 | +<html lang="ko"> | |
| 3 | + | |
| 4 | +<head> | |
| 5 | + <meta charset="UTF-8"> | |
| 6 | + <meta name="viewport" content="width=device-width, initial-scale=1.0"> | |
| 7 | + <title>리스트</title> | |
| 8 | + | |
| 9 | + <!-- css --> | |
| 10 | + <link rel="stylesheet" href="../../../css/reset.css"> | |
| 11 | + <link rel="stylesheet" href="../../../css/font.css"> | |
| 12 | + <link rel="stylesheet" href="../layout/layout.css"> | |
| 13 | + <link rel="stylesheet" href="../css/common.css"> | |
| 14 | + <link rel="stylesheet" href="../css/style.css"> | |
| 15 | + <link rel="stylesheet" href="../css/content.css"> | |
| 16 | + <!-- //css --> | |
| 17 | + | |
| 18 | + <!-- script --> | |
| 19 | + <script src="../../../js/jquery-3.5.0.js"></script> | |
| 20 | + <script src="../script/common.js"></script> | |
| 21 | + <script src="../layout/layout.js"></script> | |
| 22 | + <!-- //script --> | |
| 23 | + | |
| 24 | + <!-- 캘린더 --> | |
| 25 | + <script type="module" src="../../../js/plugin/datapicker/duet.esm.js"></script> | |
| 26 | + <script nomodule src="../../../js/plugin/datapicker/duet.js"></script> | |
| 27 | + <link rel="stylesheet" href="../../../js/plugin/datapicker/default.css"> | |
| 28 | + | |
| 29 | + | |
| 30 | +</head> | |
| 31 | + | |
| 32 | +<body data-section="company"> | |
| 33 | + | |
| 34 | + | |
| 35 | + <div class="wrap"> | |
| 36 | + <div data-include-path="../layout/_header.html"></div> | |
| 37 | + | |
| 38 | + <div id="container" class="container sub company"> | |
| 39 | + <div class="sub_visual"> | |
| 40 | + <div class="inner"> | |
| 41 | + <h2 class="sub_title" data-section="company">COMPANY</h2> | |
| 42 | + <div class="sub_visual_nav"> | |
| 43 | + <a href="../index.html"><i class="icon home"></i></a> | |
| 44 | + <div class="snb_wrap"> | |
| 45 | + <button type="button" class="snb_title">메뉴</button> | |
| 46 | + <ul class="snb_select"> | |
| 47 | + <li><a href="#">COMPANY</a></li> | |
| 48 | + <li><a href="#">Platform Tech</a></li> | |
| 49 | + <li><a href="#">Major Result</a></li> | |
| 50 | + </ul> | |
| 51 | + </div> | |
| 52 | + <div class="snb_wrap"> | |
| 53 | + <button type="button" class="snb_title">메뉴</button> | |
| 54 | + <ul class="snb_select"> | |
| 55 | + <li><a href="#">1depth</a></li> | |
| 56 | + <li><a href="#">1depth</a></li> | |
| 57 | + <li><a href="#">1depth</a></li> | |
| 58 | + </ul> | |
| 59 | + </div> | |
| 60 | + </div> | |
| 61 | + </div> | |
| 62 | + </div> | |
| 63 | + <div class="inner"> | |
| 64 | + <div class="content_wrap organiztion"> | |
| 65 | + | |
| 66 | + <div class="contents"> | |
| 67 | + | |
| 68 | + <div class="content_title"> | |
| 69 | + <h3>조직도</h3> | |
| 70 | + </div> | |
| 71 | + | |
| 72 | + <div class="con_title"> | |
| 73 | + <strong class="title">핵심인력</strong> | |
| 74 | + </div> | |
| 75 | + | |
| 76 | + <ul class="org_list"> | |
| 77 | + <li> | |
| 78 | + <div class="org_name"> | |
| 79 | + <span class="text_primary">CEO</span> | |
| 80 | + <strong>김판수 대표</strong> | |
| 81 | + </div> | |
| 82 | + <ul class="list"> | |
| 83 | + <li>(주)오가시스 대표이사/CEO (2023~) </li> | |
| 84 | + <li>경기도경제과학진흥원 바이오센터장 (2019~2021)</li> | |
| 85 | + <li>경기도경제과학진흥원 (2006~2023)</li> | |
| 86 | + <li>동화약품 중앙연구소 (2001~2006) | |
| 87 | + <br> | |
| 88 | + <div class="summary_wrap"> | |
| 89 | + <span class="summary">- 골다공증 치료제 개발 및 해외 기술수출</span> | |
| 90 | + </div> | |
| 91 | + </li> | |
| 92 | + <li> | |
| 93 | + 서울대, Ph.D. | |
| 94 | + <div class="summary_wrap"> | |
| 95 | + <span class="summary">* 다수의 국가사업단장, 산업기반구축사업 수행, 과기부/산업부 표창, 산업부/경기도 자문위원, 식∙의약 사업화(국내외 L/O 15건) 등</span> | |
| 96 | + </div> | |
| 97 | + </li> | |
| 98 | + </ul> | |
| 99 | + </li> | |
| 100 | + <li> | |
| 101 | + <div class="org_name"> | |
| 102 | + <span class="text_primary">CTO</span> | |
| 103 | + <strong>조동형 교수</strong> | |
| 104 | + </div> | |
| 105 | + <ul class="list"> | |
| 106 | + <li>(주)오가시스 CTO (2023~)</li> | |
| 107 | + <li>산자부 메디바이오 산업혁신기반구축사업단장 (2023~)</li> | |
| 108 | + <li>경북대학교 생명과학부 교수 (2018~)</li> | |
| 109 | + <li>경북대학교 세포소기관연구소 소장 (2023~)</li> | |
| 110 | + <li>경희대학교 조/부교수 (2010~2018)</li> | |
| 111 | + <li>서울아산병원 연구교수 (2007~2010)</li> | |
| 112 | + <li>Sanford Burnham Prebys Medical Discovery Institute, Post-Doc Fellow (2005~207)</li> | |
| 113 | + <li>GIST, M.S., Ph.D.</li> | |
| 114 | + <li>Publication: 150편/~2023년 (autophagy 연구 20년)</li> | |
| 115 | + </ul> | |
| 116 | + </li> | |
| 117 | + <li> | |
| 118 | + <div class="org_name"> | |
| 119 | + <span class="text_primary">CSO</span> | |
| 120 | + <strong>손미경 부사장</strong> | |
| 121 | + </div> | |
| 122 | + <ul class="list"> | |
| 123 | + <li>(주)오가시스 부사장/CSO (2023~)</li> | |
| 124 | + <li>㈜카이노젠 바이오연구소장 (2020~2023)</li> | |
| 125 | + <li>(주)동아제약 연구본부 (2001~2020)</li> | |
| 126 | + <li>피츠버그 의대 방문연구원 (2005~2006)</li> | |
| 127 | + <li>경북대 유전공학과 MS.</li> | |
| 128 | + <li>바이오의약품 개발, R&D QA, NDA 및 다수의 IND 경험</li> | |
| 129 | + </ul> | |
| 130 | + </li> | |
| 131 | + <li> | |
| 132 | + <div class="org_name"> | |
| 133 | + <span class="text_primary">CDO</span> | |
| 134 | + <strong>박정상 박사</strong> | |
| 135 | + </div> | |
| 136 | + <ul class="list"> | |
| 137 | + <li>(주)오가시스 CDO (2022~)</li> | |
| 138 | + <li>아이비스바이오 합성제제 연구소장 (2021~2022)</li> | |
| 139 | + <li>동아ST(주) 연구본부 (2002~2021)</li> | |
| 140 | + <li>성균관대 의약화학 Ph.D. / 한양대 화학과 MS.</li> | |
| 141 | + <li>의약화학(Medi-chem), Drug Develop. 전문가</li> | |
| 142 | + <li>Sivextro® (FDA 승인) 개발, 면역/표적항암제 및 항생제 개발</li> | |
| 143 | + </ul> | |
| 144 | + </li> | |
| 145 | + <li> | |
| 146 | + <div class="org_name"> | |
| 147 | + <span class="text_primary">Lead Scientist</span> | |
| 148 | + <strong>조두신 박사</strong> | |
| 149 | + </div> | |
| 150 | + <ul class="list"> | |
| 151 | + <li>㈜오가시스 Lead Scientist</li> | |
| 152 | + <li>경북대 BK21 FOUR KNU Creative BioResearch Group, School of Life Sciences, 연구교수</li> | |
| 153 | + <li>경북대 뇌과학연구소, Post-Doc / 경희대 MS, Ph.D.</li> | |
| 154 | + <li>Autophagy 분야 전문가</li> | |
| 155 | + </ul> | |
| 156 | + </li> | |
| 157 | + <li> | |
| 158 | + <div class="org_name"> | |
| 159 | + <span class="text_primary">Lead Scientist</span> | |
| 160 | + <strong>김효진 박사</strong> | |
| 161 | + </div> | |
| 162 | + <ul class="list"> | |
| 163 | + <li>㈜오가시스 Lead Scientist</li> | |
| 164 | + <li>Genentech member, Sr. Research Associate (2010~2012)</li> | |
| 165 | + <li>Massachusettes General Hospital Cancer Center, Researcher (2010)</li> | |
| 166 | + <li>서울대 생명과학부, Ph.D. / GIST 생명과학과 MS.</li> | |
| 167 | + <li>Autophagy & Cancer 분야 전문가</li> | |
| 168 | + </ul> | |
| 169 | + </li> | |
| 170 | + </ul> | |
| 171 | + | |
| 172 | + <div class="con_title"> | |
| 173 | + <strong class="title">Scientific Advisory Board</strong> | |
| 174 | + </div> | |
| 175 | + | |
| 176 | + <ul class="org_list"> | |
| 177 | + <li> | |
| 178 | + <div class="org_name"> | |
| 179 | + <span class="text_primary">Biology of Autophagy</span> | |
| 180 | + <strong>정용근 교수 그룹</strong> | |
| 181 | + </div> | |
| 182 | + <ul class="list"> | |
| 183 | + <li>국내 오토파지 학회장 및 R&D Core</li> | |
| 184 | + <li>알버트아인슈타인대학, Ph.D.</li> | |
| 185 | + <li>Lysophagy 분야 국내 선두 그룹</li> | |
| 186 | + </ul> | |
| 187 | + </li> | |
| 188 | + <li> | |
| 189 | + <div class="org_name"> | |
| 190 | + <span class="text_primary">Medi Chem. & Pre-Clinical Develop.</span> | |
| 191 | + </div> | |
| 192 | + <ul class="list"> | |
| 193 | + <li> | |
| 194 | + 메디켐 – 남태규 한양대 약대 교수 | |
| 195 | + <div class="summary_wrap"> | |
| 196 | + <span class="summary">- Scripps & GNF(Novatis)/서울대 약대, Ph.D</span> | |
| 197 | + </div> | |
| 198 | + </li> | |
| 199 | + <li>비임상 : 송시환 박사 (코아스템켐온-C.E.O) 등</li> | |
| 200 | + </ul> | |
| 201 | + </li> | |
| 202 | + <li> | |
| 203 | + <div class="org_name"> | |
| 204 | + <span class="text_primary">Experts in each field</span> | |
| 205 | + </div> | |
| 206 | + <ul class="list"> | |
| 207 | + <li>대사체 : 서진호(한림원/국가과학기술위)명예교수</li> | |
| 208 | + <li>전달체 : 권대혁, 항암 : 김용성 교수 등 협업</li> | |
| 209 | + <li>뇌질환모델 : 박해철교수(고대 안전성평가센터장)</li> | |
| 210 | + <li>식품/화장품 : 이광근 교수, 노호식 교수 등</li> | |
| 211 | + </ul> | |
| 212 | + </li> | |
| 213 | + <li> | |
| 214 | + <div class="org_name"> | |
| 215 | + <span class="text_primary">Clinical Develop.</span> | |
| 216 | + </div> | |
| 217 | + <ul class="list"> | |
| 218 | + <li>국내 임상 : 질환별 임상전문가 (대사-김난희교수, 암-김철호 첨단연구의료원장, 눈-김용우 교수 등)</li> | |
| 219 | + <li>해외 임상 : 권영훈 워싱턴주립대 의대교수 등</li> | |
| 220 | + </ul> | |
| 221 | + </li> | |
| 222 | + </ul> | |
| 223 | + | |
| 224 | + </div> | |
| 225 | + | |
| 226 | + | |
| 227 | + </div> | |
| 228 | + </div> | |
| 229 | + </div> | |
| 230 | + | |
| 231 | + | |
| 232 | + | |
| 233 | + <div data-include-path="../layout/_footer.html"></div> | |
| 234 | + </div> | |
| 235 | + | |
| 236 | + | |
| 237 | +</body> | |
| 238 | + | |
| 239 | +</html>(No newline at end of file) |
+++ src/main/webapp/publish/usr/company/overview.html
... | ... | @@ -0,0 +1,138 @@ |
| 1 | +<!DOCTYPE html> | |
| 2 | +<html lang="ko"> | |
| 3 | + | |
| 4 | +<head> | |
| 5 | + <meta charset="UTF-8"> | |
| 6 | + <meta name="viewport" content="width=device-width, initial-scale=1.0"> | |
| 7 | + <title>리스트</title> | |
| 8 | + | |
| 9 | + <!-- css --> | |
| 10 | + <link rel="stylesheet" href="../../../css/reset.css"> | |
| 11 | + <link rel="stylesheet" href="../../../css/font.css"> | |
| 12 | + <link rel="stylesheet" href="../layout/layout.css"> | |
| 13 | + <link rel="stylesheet" href="../css/common.css"> | |
| 14 | + <link rel="stylesheet" href="../css/style.css"> | |
| 15 | + <link rel="stylesheet" href="../css/content.css"> | |
| 16 | + <!-- //css --> | |
| 17 | + | |
| 18 | + <!-- script --> | |
| 19 | + <script src="../../../js/jquery-3.5.0.js"></script> | |
| 20 | + <script src="../script/common.js"></script> | |
| 21 | + <script src="../layout/layout.js"></script> | |
| 22 | + <!-- //script --> | |
| 23 | + | |
| 24 | + <!-- 캘린더 --> | |
| 25 | + <script type="module" src="../../../js/plugin/datapicker/duet.esm.js"></script> | |
| 26 | + <script nomodule src="../../../js/plugin/datapicker/duet.js"></script> | |
| 27 | + <link rel="stylesheet" href="../../../js/plugin/datapicker/default.css"> | |
| 28 | + | |
| 29 | + | |
| 30 | +</head> | |
| 31 | + | |
| 32 | +<body data-section="company"> | |
| 33 | + | |
| 34 | + | |
| 35 | + <div class="wrap"> | |
| 36 | + <div data-include-path="../layout/_header.html"></div> | |
| 37 | + | |
| 38 | + <div id="container" class="container sub company"> | |
| 39 | + <div class="sub_visual"> | |
| 40 | + <div class="inner"> | |
| 41 | + <h2 class="sub_title" data-section="company">COMPANY</h2> | |
| 42 | + <div class="sub_visual_nav"> | |
| 43 | + <a href="../index.html"><i class="icon home"></i></a> | |
| 44 | + <div class="snb_wrap"> | |
| 45 | + <button type="button" class="snb_title">메뉴</button> | |
| 46 | + <ul class="snb_select"> | |
| 47 | + <li><a href="#">Company</a></li> | |
| 48 | + <li><a href="#">Platform Tech</a></li> | |
| 49 | + <li><a href="#">Major Result</a></li> | |
| 50 | + </ul> | |
| 51 | + </div> | |
| 52 | + <div class="snb_wrap"> | |
| 53 | + <button type="button" class="snb_title">메뉴</button> | |
| 54 | + <ul class="snb_select"> | |
| 55 | + <li><a href="#">1depth</a></li> | |
| 56 | + <li><a href="#">1depth</a></li> | |
| 57 | + <li><a href="#">1depth</a></li> | |
| 58 | + </ul> | |
| 59 | + </div> | |
| 60 | + </div> | |
| 61 | + </div> | |
| 62 | + </div> | |
| 63 | + <div class="inner"> | |
| 64 | + <div class="content_wrap overview"> | |
| 65 | + | |
| 66 | + <div class="contents"> | |
| 67 | + | |
| 68 | + <div class="content_title"> | |
| 69 | + <h3>설립배경</h3> | |
| 70 | + </div> | |
| 71 | + | |
| 72 | + <div class="overview_contents_top"> | |
| 73 | + <div class="txt"> | |
| 74 | + <strong><span class="text_primary">ORGASIS</span> ORGASIS Corp.</strong> | |
| 75 | + <p>organelles homeostasis control platform</p> | |
| 76 | + </div> | |
| 77 | + | |
| 78 | + <ul class="card"> | |
| 79 | + <li> | |
| 80 | + <span class="number">01</span> | |
| 81 | + <b class="title">현 약물의 한계</b> | |
| 82 | + <span class="summary">단일 유전자, 단백질 타겟 약물 → 작용기전 및 유효성 등의 한계</span> | |
| 83 | + </li> | |
| 84 | + <li> | |
| 85 | + <span class="number">02</span> | |
| 86 | + <b class="title">능동적 약물 수요</b> | |
| 87 | + <span class="summary">손상 또는 저하된 세포소기관의 선별적, 자발적 치료</span> | |
| 88 | + </li> | |
| 89 | + <li> | |
| 90 | + <span class="number">03</span> | |
| 91 | + <b class="title">과학적 증거 확대</b> | |
| 92 | + <span class="summary">세포소기관과 여러 질병들과의 연관성에 관한 과학적, 임상적 자료의 급증</span> | |
| 93 | + </li> | |
| 94 | + <li> | |
| 95 | + <span class="number">04</span> | |
| 96 | + <b class="title">신규기술 - <br>신규 MoA 수요</b> | |
| 97 | + <span class="summary">새로운 작용기전과 처방을 위한 신약 및 기능성 소재에 대한 시장 수요</span> | |
| 98 | + </li> | |
| 99 | + </ul> | |
| 100 | + | |
| 101 | + </div> | |
| 102 | + | |
| 103 | + <div class="overview_contents_bottom"> | |
| 104 | + | |
| 105 | + <div class="txt"> | |
| 106 | + <strong>새로운 신약 후보물질의 <span class="text_primary">오아시스!</span></strong> | |
| 107 | + <p>현 약물의 한계점을 극복하는 선택적, 자발적 항상성 작용기전 기반</p> | |
| 108 | + </div> | |
| 109 | + | |
| 110 | + <div class="circles"> | |
| 111 | + <div class="left"> | |
| 112 | + <p class="circle line">Organelles</p> | |
| 113 | + <p class="circle line">Homeostasis</p> | |
| 114 | + </div> | |
| 115 | + <div class="right"> | |
| 116 | + <p class="circle fill">Organellostasis</p> | |
| 117 | + </div> | |
| 118 | + </div> | |
| 119 | + | |
| 120 | + </div> | |
| 121 | + | |
| 122 | + </div> | |
| 123 | + | |
| 124 | + | |
| 125 | + </div> | |
| 126 | + </div> | |
| 127 | + | |
| 128 | + </div> | |
| 129 | + | |
| 130 | + | |
| 131 | + | |
| 132 | + <div data-include-path="../layout/_footer.html"></div> | |
| 133 | + </div> | |
| 134 | + | |
| 135 | + | |
| 136 | +</body> | |
| 137 | + | |
| 138 | +</html>(No newline at end of file) |
--- src/main/webapp/publish/usr/css/common.css
+++ src/main/webapp/publish/usr/css/common.css
... | ... | @@ -1,58 +1,56 @@ |
| 1 |
-@charset "utf-8"; |
|
| 2 |
- |
|
| 3 |
-:root{
|
|
| 4 |
- --primary-color: #2c45c3; |
|
| 5 |
- --primary-color-hover: #283eb0; |
|
| 6 |
- --primary-light-color: #eaecf9; |
|
| 7 |
- --primary-light-color-hover: #dfe3f6; |
|
| 8 |
- --primary-lighter-color: #F0F2FB; |
|
| 9 |
- --primary-lighter-color-hover: #D2D7EF; |
|
| 10 |
- --primary-dark-color: #213492; |
|
| 11 |
- --primary-dark-color-hover: #1a2975; |
|
| 12 |
- |
|
| 13 |
- --secondary-color: #2de394; |
|
| 14 |
- --secondary-color-hover: #29cc85; |
|
| 15 |
- --secondary-light-color: #eafcf4; |
|
| 16 |
- --secondary-light-color-hover: #e0fbef; |
|
| 17 |
- --secondary-dark-color: #22aa6f; |
|
| 18 |
- --secondary-dark-color-hover: #1b8859; |
|
| 19 |
- |
|
| 20 |
- --accent-color:#f86a3c; |
|
| 21 |
- --accent-color-hover:#df5f36; |
|
| 22 |
- --accent-light-color:#fef0ec; |
|
| 23 |
- --accent-light-color-hover:#fee9e2; |
|
| 24 |
- --accent-dark-color:#ba502d; |
|
| 25 |
- --accent-dark-color-hover:#954024; |
|
| 26 |
- |
|
| 27 |
- |
|
| 28 |
- --red-color: #e81717; |
|
| 29 |
- --red-color-hover: #d11515; |
|
| 30 |
- --red-light-color: #fde8e8; |
|
| 31 |
- --red-light-color-hover: #fee9e2; |
|
| 32 |
- |
|
| 33 |
- --green-color: #19B32B; |
|
| 34 |
- --green-color-hover: #0E9A1F; |
|
| 35 |
- |
|
| 36 |
- --gray-color: #81899C; |
|
| 37 |
- --gray-color-hover: #717379; |
|
| 38 |
- --lightgray-color: #D5D9E3; |
|
| 39 |
- --lightgray-color-hover: #BFC3CD; |
|
| 40 |
- |
|
| 41 |
- --primary-title-font:'Pretendard'; |
|
| 42 |
- --secondary-title-font:'Gmarket Sans TTF'; |
|
| 43 |
- |
|
| 44 |
- --primary-title-color:#1A1B1D; |
|
| 45 |
- --body-text-color:#3F4043; |
|
| 46 |
- |
|
| 47 |
- --disable-fill-bg-color:#F8F9FA; |
|
| 48 |
- --disable-fill-line-color:#D3D7DE; |
|
| 49 |
- --disable-fill-text-color:#8d9098; |
|
| 50 |
- |
|
| 51 |
- --default-line-color:#d3d7de; |
|
| 52 |
- --disable-line-bg-color:#f5f6f7; |
|
| 53 |
- --disable-line-border-color:#eaebef; |
|
| 54 |
- --disable-line-text-color:#bcc0ca; |
|
| 55 |
-} |
|
| 56 |
- |
|
| 57 |
- |
|
| 58 |
- |
|
| 1 |
+@charset "utf-8"; |
|
| 2 |
+ |
|
| 3 |
+:root{
|
|
| 4 |
+ --primary-color: #5f48b0; |
|
| 5 |
+ --primary-color-hover: #56419e; |
|
| 6 |
+ --primary-light-color: #efedf7; |
|
| 7 |
+ --primary-light-color-hover: #e7e4f3; |
|
| 8 |
+ --primary-dark-color: #473684; |
|
| 9 |
+ --primary-dark-color-hover: #392b6a; |
|
| 10 |
+ |
|
| 11 |
+ --secondary-color: #3b5bb0; |
|
| 12 |
+ --secondary-color-hover: #35529e; |
|
| 13 |
+ --secondary-light-color: #ebeff7; |
|
| 14 |
+ --secondary-light-color-hover: #e2e6f3; |
|
| 15 |
+ --secondary-dark-color: #2c4484; |
|
| 16 |
+ --secondary-dark-color-hover: #23376a; |
|
| 17 |
+ |
|
| 18 |
+ --accent-color:#3ba0cc; |
|
| 19 |
+ --accent-color-hover:#3590b8; |
|
| 20 |
+ --accent-light-color:#ebf6fa; |
|
| 21 |
+ --accent-light-color-hover:#e2f1f7; |
|
| 22 |
+ --accent-dark-color:#2c7899; |
|
| 23 |
+ --accent-dark-color-hover:#23607a; |
|
| 24 |
+ |
|
| 25 |
+ |
|
| 26 |
+ --red-color: #e81717; |
|
| 27 |
+ --red-color-hover: #d11515; |
|
| 28 |
+ --red-light-color: #fde8e8; |
|
| 29 |
+ --red-light-color-hover: #fee9e2; |
|
| 30 |
+ |
|
| 31 |
+ --green-color: #19B32B; |
|
| 32 |
+ --green-color-hover: #0E9A1F; |
|
| 33 |
+ |
|
| 34 |
+ --gray-color: #81899C; |
|
| 35 |
+ --gray-color-hover: #717379; |
|
| 36 |
+ --lightgray-color: #D5D9E3; |
|
| 37 |
+ --lightgray-color-hover: #BFC3CD; |
|
| 38 |
+ |
|
| 39 |
+ --primary-title-font:'Pretendard'; |
|
| 40 |
+ --secondary-title-font:'Gmarket Sans TTF'; |
|
| 41 |
+ |
|
| 42 |
+ --primary-title-color:#1A1B1D; |
|
| 43 |
+ --body-text-color:#3F4043; |
|
| 44 |
+ |
|
| 45 |
+ --disable-fill-bg-color:#F8F9FA; |
|
| 46 |
+ --disable-fill-line-color:#D3D7DE; |
|
| 47 |
+ --disable-fill-text-color:#8d9098; |
|
| 48 |
+ |
|
| 49 |
+ --default-line-color:#d3d7de; |
|
| 50 |
+ --disable-line-bg-color:#f5f6f7; |
|
| 51 |
+ --disable-line-border-color:#eaebef; |
|
| 52 |
+ --disable-line-text-color:#bcc0ca; |
|
| 53 |
+} |
|
| 54 |
+ |
|
| 55 |
+ |
|
| 56 |
+ |
--- src/main/webapp/publish/usr/css/content.css
+++ src/main/webapp/publish/usr/css/content.css
... | ... | @@ -1,0 +1,375 @@ |
| 1 |
+/* ================================================== |
|
| 2 |
+ 공통레이아웃 |
|
| 3 |
+ ================================================== */ |
|
| 4 |
+.skip_menu {position: absolute;left: 0;top: 0;width: 100%;margin: 0 auto;z-index: 999;}
|
|
| 5 |
+.skip_menu a {outline: 3px solid red;display: block;position: absolute;left: 0;padding: 10px 20px;height: 50px;line-height: 30px;color: #fff;background: #000;width: 100%;text-align: center;font-size: 18px;box-sizing: border-box;}
|
|
| 6 |
+.skip_menu a:link,.skip_menu a:visited,.skip_menu a:active {top: -10000px;}
|
|
| 7 |
+.skip_menu a:hover,.skip_menu a:focus {top: 3px;}
|
|
| 8 |
+.sub_visual{position:relative;width:100%;height:615px;border-radius:0 0 80px 80px;}
|
|
| 9 |
+.sub_title{display:flex;height:100%;font-family:var(--secondary-title-font);font-size:60px;font-weight:bold;color:#fff;letter-spacing:1px;text-shadow:0 0 20px rgba(0,0,0,.3);align-items:center;justify-content:center;}
|
|
| 10 |
+.sub_visual_nav{position:relative;display:flex;width:45%;border-radius:38px 38px 0 0;background:#fff;padding:0 20px;bottom:66px;left:50%;transform:translateX(-50%);align-items:center;}
|
|
| 11 |
+.sub_visual_nav a,.sub_visual_nav .snb_wrap{position:relative;height:66px;}
|
|
| 12 |
+.sub_visual_nav>a::after,.sub_visual_nav .snb_wrap::after{position:absolute;display:inline-block;content:"";width:1px;height:20px;background:#d9d9d9;right:0;top:50%;transform:translateY(-50%);}
|
|
| 13 |
+.sub_visual_nav .snb_wrap:last-child::after{display:none;}
|
|
| 14 |
+.sub_visual_nav::before,.sub_visual_nav::after{position:absolute;content:"";width:41px;height:41px;bottom:0;}
|
|
| 15 |
+.sub_visual_nav::before{background:url(/publish/usr/images/common/sub_visual_nav_left.png);left:-40px;}
|
|
| 16 |
+.sub_visual_nav::after{background:url(/publish/usr/images/common/sub_visual_nav_right.png);right:-40px;}
|
|
| 17 |
+.sub_visual_nav .snb_wrap{width:calc((100% - 66px)/2);}
|
|
| 18 |
+.snb_title{width:100%;height:100%;font-size:20px;font-weight:500;text-align:left;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;padding:0 60px 0 20px;border:none;background:url(/publish/usr/images/component/icon_select.png) no-repeat calc(100% - 20px) center;}
|
|
| 19 |
+.snb_select{position:absolute;display:none;width:100%;background:#fff;padding:10px;overflow:hidden;top:calc(100% + 4px);border-radius:8px;box-shadow:2px 3px 4px 0 rgba(0, 0, 0, .08);}
|
|
| 20 |
+.snb_select a{display:flex;height:40px;font-size:16px;padding:0 20px;justify-content:flex-start;align-items:center;}
|
|
| 21 |
+.snb_select a:hover{background:var(--primary-light-color);color:var(--primary-color);border-radius:8px;}
|
|
| 22 |
+.active .snb_select{width:100%;height:auto;left:0;border:1px solid #f0f0f0;}
|
|
| 23 |
+ |
|
| 24 |
+.company .sub_visual{background:url(/publish/usr/images/company/visual.jpg);}
|
|
| 25 |
+.major_result .sub_visual{background:url(/publish/usr/images/major_result/visual.jpg);}
|
|
| 26 |
+.platform_tech .sub_visual{background:url(/publish/usr/images/platform_tech/visual.jpg);}
|
|
| 27 |
+ |
|
| 28 |
+.con_title{display:flex;margin:80px 0 36px 0;flex-direction:column;}
|
|
| 29 |
+.con_title .summary{font-family:var(--secondary-title-font);font-size:24px;margin:0 0 12px 0;}
|
|
| 30 |
+.con_title .summary.black{font-family:var(--primary-title-font);}
|
|
| 31 |
+.con_title .title{font-family:var(--secondary-title-font);font-size:36px;}
|
|
| 32 |
+ |
|
| 33 |
+.box{background:#f2f4f6;border-radius:40px;}
|
|
| 34 |
+ |
|
| 35 |
+ |
|
| 36 |
+/* ================================================== |
|
| 37 |
+ Company |
|
| 38 |
+ ================================================== */ |
|
| 39 |
+ |
|
| 40 |
+/* 설립배경 */ |
|
| 41 |
+.overview{text-align:center;}
|
|
| 42 |
+.overview_contents_top{background:url(/publish/usr/images/company/corp_bg.png) no-repeat center 80px;}
|
|
| 43 |
+.overview .txt strong{font-family:var(--secondary-title-font);font-size:52px;font-weight:bold;}
|
|
| 44 |
+.overview .txt strong span{font-family:var(--secondary-title-font);font-weight:bold;}
|
|
| 45 |
+.overview .txt p{font-family:var(--secondary-title-font);font-size:24px;}
|
|
| 46 |
+.overview .card{display:flex;padding:90px 0 280px 0;gap:46px;justify-content:center;}
|
|
| 47 |
+.overview .card li{position:relative;display:flex;width:calc((100% / 4) - 90px);height:363px;padding:0 30px;text-align:left;color:#fff;border-radius:24px;flex-direction:column;justify-content:flex-end;}
|
|
| 48 |
+.overview .card li:nth-child(2n){transform:translateY(52px);}
|
|
| 49 |
+.overview .card li:nth-child(1){background:url(/publish/usr/images/company/card_01.png) no-repeat center;}
|
|
| 50 |
+.overview .card li:nth-child(2){background:url(/publish/usr/images/company/card_02.png) no-repeat center;}
|
|
| 51 |
+.overview .card li:nth-child(3){background:url(/publish/usr/images/company/card_03.png) no-repeat center;}
|
|
| 52 |
+.overview .card li:nth-child(4){background:url(/publish/usr/images/company/card_04.png) no-repeat center;}
|
|
| 53 |
+.overview .card .number,.overview .card .title{font-family:var(--secondary-title-font);font-weight:bold;}
|
|
| 54 |
+.overview .card .number{position:absolute;font-size:20px;top:25px;right:25px;}
|
|
| 55 |
+.overview .card .title{display:block;font-size:24px;font-weight:bold;}
|
|
| 56 |
+.overview .card .summary{font-size:16px;opacity:0.8;margin:0 0 32px 0;word-break:keep-all;}
|
|
| 57 |
+ |
|
| 58 |
+.overview .circles{position:relative;justify-content:space-between;padding:0 180px;margin:80px 0;}
|
|
| 59 |
+.overview .circles::after{position:absolute;content:"";width:45%;height:1px;border:1px dashed var(--primary-color);right:180px;z-index:-1;}
|
|
| 60 |
+.overview .circles,.overview .circles .left{display:flex;align-items:center;}
|
|
| 61 |
+ |
|
| 62 |
+.overview .circles .left, .overview .circles .right{position:relative;}
|
|
| 63 |
+.overview .circles .left::after, .overview .circles .right::after{position:absolute;content:"";width:16px;height:16px;border-radius:100%;top:50%;transform:translateY(-50%);}
|
|
| 64 |
+.overview .circles .left::after{background:var(--primary-color);right:-8px;}
|
|
| 65 |
+.overview .circles .right::after{border:1px solid var(--primary-color);background:#fff;left:-8px;}
|
|
| 66 |
+ |
|
| 67 |
+.overview .circle.line{position:relative;display:flex;width:400px;height:400px;font-family:var(--secondary-title-font);font-size:32px;color:var(--primary-color);background:#fff;border:1px solid var(--primary-color);border-radius:100%;justify-content:center;align-items:center;}
|
|
| 68 |
+.overview .circle.line:first-child{z-index:2;background:transparent;}
|
|
| 69 |
+.overview .circle.line:first-child::after{position:absolute;content:"+";width:20px;height:40px;font-family:var(--secondary-title-font);font-size:32px;font-weight:bold;right:18px}
|
|
| 70 |
+.overview .circle.line:last-child{margin:0 0 0 -60px;}
|
|
| 71 |
+ |
|
| 72 |
+.overview .circle.fill{position:relative;display:flex;width:460px;height:460px;font-family:var(--secondary-title-font);font-size:40px;color:#fff;background:var(--primary-color);border-radius:100%;justify-content:center;align-items:center;}
|
|
| 73 |
+.overview .circle.fill::after{position:absolute;content:"";width:calc(100% + 60px);height:calc(100% + 60px);background:url(/publish/usr/images/company/obg_deco.png) no-repeat center center;left:-30px;top:-30px;z-index:-1;}
|
|
| 74 |
+ |
|
| 75 |
+/* 조직도 */ |
|
| 76 |
+.org_list{display:flex;flex-wrap:wrap;gap:48px 58px;}
|
|
| 77 |
+.org_list>li{width:calc((100% / 2) - 29px);padding:40px;background:#f2f4f6;border-radius:20px;}
|
|
| 78 |
+.org_name{display:flex;flex-direction:column;}
|
|
| 79 |
+.org_name span{font-size:16px;font-weight:700;}
|
|
| 80 |
+.org_name strong{font-family:var(--secondary-title-font);font-size:28px;font-weight:700;}
|
|
| 81 |
+.org_list .list{display:flex;list-style:disc;margin:12px 0 0 0;padding:0 20px;flex-direction:column;gap:4px;}
|
|
| 82 |
+.org_list .list .summary{font-size:14px;color:#444;text-indent:28px;}
|
|
| 83 |
+ |
|
| 84 |
+/* 오시는 길 */ |
|
| 85 |
+.location_list{display:flex;flex-direction:column;gap:80px;}
|
|
| 86 |
+.location_list>li{display:flex;gap:60px;align-items:center;}
|
|
| 87 |
+.location_area{width:760px;height:500px;border-radius:20px;background:#f2f4f6;}
|
|
| 88 |
+ |
|
| 89 |
+.location_list .title{display:flex;margin:0 0 20px 0;font-size:36px;align-items:center;gap:12px;}
|
|
| 90 |
+.location_list .location{width:32px;height:42px;background:url(/publish/usr/images/component/location.png) no-repeat center;}
|
|
| 91 |
+.location_list .info{width:calc(100% - 820px);}
|
|
| 92 |
+.location_list .info p{font-size:20px;font-weight:400;}
|
|
| 93 |
+ |
|
| 94 |
+.location_list .boxs{display:flex;margin:40px 0 0 0;flex-direction:column;gap:20px;}
|
|
| 95 |
+.location_list .boxs li{display:flex;height:80px;font-size:20px;font-weight:bold;background:#f2f4f6;border-radius:20px;justify-content:center;align-items:center;gap:12px;}
|
|
| 96 |
+.location_list .phone{width:40px;height:40px;background:url(/publish/usr/images/component/phone.png) no-repeat center center;}
|
|
| 97 |
+.location_list .email{width:40px;height:40px;background:url(/publish/usr/images/component/email.png) no-repeat center center;}
|
|
| 98 |
+.location_list .btn_map{width:100%;height:80px;font-size:20px;font-weight:bold;margin:20px 0 0 0;border:1px solid #000;border-radius:100px;;}
|
|
| 99 |
+ |
|
| 100 |
+ |
|
| 101 |
+/* ================================================== |
|
| 102 |
+ Major Result |
|
| 103 |
+ ================================================== */ |
|
| 104 |
+ |
|
| 105 |
+.figure_content{display:flex;gap:65px;align-items:center;}
|
|
| 106 |
+.figure_content.column{flex-direction:column;align-items:flex-start;}
|
|
| 107 |
+ |
|
| 108 |
+.figure_content .box{display:flex;width:50%;padding:50px 30px;justify-content:center;align-items:center;box-sizing:border-box;}
|
|
| 109 |
+.figure_content .box img{mix-blend-mode:multiply;}
|
|
| 110 |
+.figure_content.column .box{width:100%;margin:20px 0 60px 0;}
|
|
| 111 |
+.figure_content.column .figure_desc{width:100%;}
|
|
| 112 |
+ |
|
| 113 |
+.figure_desc{display:flex;flex-direction:column;gap:24px;}
|
|
| 114 |
+.figure_desc li{min-height:30px;font-size:24px;font-weight:400;text-indent:32px;}
|
|
| 115 |
+.figure_desc.circle li{background:url(/publish/usr/images/component/list_circle.png) no-repeat left 8px;}
|
|
| 116 |
+.figure_desc.square li{background:url(/publish/usr/images/component/list_square.png) no-repeat left 8px;}
|
|
| 117 |
+ |
|
| 118 |
+/* Anti Cancer */ |
|
| 119 |
+.cancer .figure_content .box img{mix-blend-mode:darken;}
|
|
| 120 |
+ |
|
| 121 |
+/* R&D */ |
|
| 122 |
+.rd .figure_content.column{gap:40px;}
|
|
| 123 |
+.rd .figure_content .box{margin:0;}
|
|
| 124 |
+.rd .figure_content .box:first-child img{mix-blend-mode: normal;}
|
|
| 125 |
+ |
|
| 126 |
+/* Pipeline Summary */ |
|
| 127 |
+.pipeline table{table-layout:fixed;width:100%;border-spacing:12px;border-collapse:separate;}
|
|
| 128 |
+.pipeline thead th{font-family:var(--primary-title-font);font-size:20px;font-weight:500;padding:10px 0;background:#AFBCDF;border-radius:8px;word-break:break-all;}
|
|
| 129 |
+.pipeline thead tr:nth-child(2) th{height:44px;font-size:16px;background:#EBEFF7;}
|
|
| 130 |
+ |
|
| 131 |
+.pipeline tr>th,.pipeline tr>td{height:84px;padding:10px 0;border-radius:8px;font-size:20px;font-weight:500;line-height:1.2;text-align:center;word-break:break-all;}
|
|
| 132 |
+.pipeline tbody th{background:#f4f4f4;}
|
|
| 133 |
+.pipeline tbody td{position:relative;border:1px solid #e0e0e0;background:#fff;}
|
|
| 134 |
+.pipeline tbody td[colspan="6"]{border:2px solid #cbd7ff;}
|
|
| 135 |
+.pipeline .graph{position:absolute;width:100%;top:50%;transform:translateY(-50%);}
|
|
| 136 |
+.pipeline .graph span{position:relative;display:flex;height:30px;border-radius:30px 0 0 30px;background:linear-gradient(90deg, #DBE5FF 0%, #3B5BB0 100%);color:#fff;text-shadow:0 0 5px rgba(0,0,0,0.3);justify-content:center;align-items:center;left:10px}
|
|
| 137 |
+.pipeline .graph span::after{position:absolute;content:"";width:51px;height:70px;background:url(/publish/usr/images/major_result/polygon_blue.png) no-repeat center center;right:-44px;}
|
|
| 138 |
+.pipeline .graph.purple span{background:linear-gradient(90deg, #EFEDF7 0%, #5F48B0 100%);}
|
|
| 139 |
+.pipeline .graph.purple span::after{background:url(/publish/usr/images/major_result/polygon_purple.png) no-repeat center center;}
|
|
| 140 |
+.pipeline .graph.orange span{background:linear-gradient(90deg, #FFEADF 0%, #FF8748 100%);}
|
|
| 141 |
+.pipeline .graph.orange span::after{background:url(/publish/usr/images/major_result/polygon_orange.png) no-repeat center center;}
|
|
| 142 |
+.pipeline .graph1 span{width:calc((100% / 6) - 20px);}
|
|
| 143 |
+.pipeline .graph2 span{width:calc((100% / 6)*2 - 100px);}
|
|
| 144 |
+.pipeline .graph3 span{width:calc((100% / 6)*3 - 100px);}
|
|
| 145 |
+.pipeline .graph4 span{width:calc((100% / 6)*4 - 100px);}
|
|
| 146 |
+.pipeline .graph5 span{width:calc((100% / 6)*5 - 100px);}
|
|
| 147 |
+ |
|
| 148 |
+ |
|
| 149 |
+.pipeline ul{display:flex;}
|
|
| 150 |
+.pipeline ul li{height:42px;border-right:1px dashed #bbc8ea;font-size:16px;font-weight:bold;flex-grow:1;}
|
|
| 151 |
+.pipeline ul li:last-child{border:0;}
|
|
| 152 |
+.pipeline tr:first-child ul li:nth-child(5){flex-grow:0.5;color:#3b5bb0;}
|
|
| 153 |
+ |
|
| 154 |
+.pipeline .purple+ul li{color:#5F48B0;}
|
|
| 155 |
+.pipeline .purple+ul li:nth-child(4){flex-grow:1.2;}
|
|
| 156 |
+.pipeline .orange+ul li{color:#FF8748;}
|
|
| 157 |
+.pipeline .orange+ul li:nth-child(5){flex-grow:1.2;}
|
|
| 158 |
+ |
|
| 159 |
+ |
|
| 160 |
+ |
|
| 161 |
+ |
|
| 162 |
+/* ================================================== |
|
| 163 |
+ Platform Tech |
|
| 164 |
+ ================================================== */ |
|
| 165 |
+.dl_wrap{display:flex;width:100%;gap:32px;}
|
|
| 166 |
+.dl_wrap dl{width:50%;}
|
|
| 167 |
+.dl_wrap dt{font-size:20px;font-weight:700;text-align:center;padding:11px 36px;background:var(--secondary-light-color);border-radius:8px;}
|
|
| 168 |
+.dl_wrap dt span{display:block;font-size:16px;font-weight:400;}
|
|
| 169 |
+.dl_wrap dd{display:flex;height:calc(100% - 100px);background:#f2f4f6;border-radius:8px;margin:36px 0 0 0;justify-content:center;align-items:center;}
|
|
| 170 |
+.dl_wrap dd img{mix-blend-mode:darken;}
|
|
| 171 |
+ |
|
| 172 |
+ |
|
| 173 |
+/* background */ |
|
| 174 |
+.background .figure_content .box img{mix-blend-mode:normal;}
|
|
| 175 |
+ |
|
| 176 |
+/* autophagy */ |
|
| 177 |
+.step_ul{display:flex;width:100%;align-items:center;gap:12px;}
|
|
| 178 |
+.step_ul li:not(.next){display:flex;width:calc(100%/6);min-height:91px;font-size:20px;font-weight:500;text-align:center;padding:0 10px;background:#f2f4f6;border-radius:20px;justify-content:center;align-items:center;box-sizing:border-box;}
|
|
| 179 |
+ |
|
| 180 |
+.autophagy .box:nth-child(2){margin:0;}
|
|
| 181 |
+ |
|
| 182 |
+ |
|
| 183 |
+ |
|
| 184 |
+ |
|
| 185 |
+@media (max-width: 1400px){
|
|
| 186 |
+ |
|
| 187 |
+ /* ================================================== |
|
| 188 |
+ 공통레이아웃 |
|
| 189 |
+ ================================================== */ |
|
| 190 |
+ .sub_visual_nav{width:80%;}
|
|
| 191 |
+ |
|
| 192 |
+ /* ================================================== |
|
| 193 |
+ Company |
|
| 194 |
+ ================================================== */ |
|
| 195 |
+ |
|
| 196 |
+ /* 설립배경 */ |
|
| 197 |
+ .overview .card li{width:calc((100% / 4) - 60px);}
|
|
| 198 |
+ |
|
| 199 |
+ /* 오시는 길 */ |
|
| 200 |
+ .location_area{width:660px;}
|
|
| 201 |
+ |
|
| 202 |
+ |
|
| 203 |
+ |
|
| 204 |
+} |
|
| 205 |
+ |
|
| 206 |
+@media (max-width: 1280px){
|
|
| 207 |
+ |
|
| 208 |
+ /* ================================================== |
|
| 209 |
+ 공통레이아웃 |
|
| 210 |
+ ================================================== */ |
|
| 211 |
+ .sub_title{font-size:40px;}
|
|
| 212 |
+ .sub_visual{height:480px;}
|
|
| 213 |
+ .sub_visual_nav{width:65%;}
|
|
| 214 |
+ .sub_visual_nav .snb_wrap{width:calc(100% - 66px);}
|
|
| 215 |
+ .con_title{margin:80px 0 16px 0;}
|
|
| 216 |
+ .con_title .title{font-size:28px;}
|
|
| 217 |
+ .con_title .summary{font-size:20px;}
|
|
| 218 |
+ |
|
| 219 |
+ .platform_tech .sub_visual{background-position:75% center;}
|
|
| 220 |
+ |
|
| 221 |
+ /* ================================================== |
|
| 222 |
+ Company |
|
| 223 |
+ ================================================== */ |
|
| 224 |
+ |
|
| 225 |
+ /* 설립배경 */ |
|
| 226 |
+ .overview .card{flex-wrap:wrap;}
|
|
| 227 |
+ .overview .card li{width:calc((100% / 2) - 60px);height:485px;}
|
|
| 228 |
+ .overview .card li:nth-child(1),.overview .card li:nth-child(2),.overview .card li:nth-child(3),.overview .card li:nth-child(4){background-size:cover;}
|
|
| 229 |
+ |
|
| 230 |
+ .overview .circles, .overview .circles .left{flex-direction:column;}
|
|
| 231 |
+ .overview .circles{gap:120px;}
|
|
| 232 |
+ .overview .circles::after{width:1px;height:45%;right:50%;bottom:0;transform:translateX(-50%);}
|
|
| 233 |
+ .overview .circles .left::after{left:50%;bottom:-8px;top:auto;transform:translateX(-50%);}
|
|
| 234 |
+ .overview .circles .right::after{left:50%;top:-8px;transform:translateX(-50%);}
|
|
| 235 |
+ .overview .circle.line:last-child{margin:-60px 0 0 0;}
|
|
| 236 |
+ .overview .circle.line:first-child::after{bottom:10px;right:45%;transform:translateX(-50%);}
|
|
| 237 |
+ |
|
| 238 |
+ /* 오시는 길 */ |
|
| 239 |
+ .location_list>li{flex-wrap:wrap;gap:30px}
|
|
| 240 |
+ .location_area{width:100%;}
|
|
| 241 |
+ .location_list .info{width:100%;}
|
|
| 242 |
+ .location_list .boxs{flex-direction:row;}
|
|
| 243 |
+ .location_list .boxs li{width:50%;}
|
|
| 244 |
+ .location_list .boxs li:only-child{width:100%;}
|
|
| 245 |
+ |
|
| 246 |
+ /* ================================================== |
|
| 247 |
+ Platform Tech |
|
| 248 |
+ ================================================== */ |
|
| 249 |
+ |
|
| 250 |
+ /* autophagy */ |
|
| 251 |
+ .step_ul{flex-wrap:wrap;}
|
|
| 252 |
+ .step_ul li:not(.next){width:calc((100%/3) - 40px);}
|
|
| 253 |
+ .step_ul li:nth-child(6){display:none;}
|
|
| 254 |
+ |
|
| 255 |
+ /* ================================================== |
|
| 256 |
+ Major Result |
|
| 257 |
+ ================================================== */ |
|
| 258 |
+ |
|
| 259 |
+ .figure_desc{gap:12px;}
|
|
| 260 |
+ .figure_desc li{font-size:20px;}
|
|
| 261 |
+ |
|
| 262 |
+ .figure_content.column .box{margin:20px 0;}
|
|
| 263 |
+ |
|
| 264 |
+ /* Pipeline Summary */ |
|
| 265 |
+ .pipeline .table_wrap{width:100%;overflow:auto;}
|
|
| 266 |
+ .pipeline table{width:1024px;border-spacing:6px;}
|
|
| 267 |
+ .pipeline tr>th, .pipeline tr>td{height:60px;font-size:14px;}
|
|
| 268 |
+ .pipeline .graph span{font-size:14px;}
|
|
| 269 |
+ .pipeline .graph span::after{background-size:60% auto;right:-38px;}
|
|
| 270 |
+ .pipeline .graph.purple span::after,.pipeline .graph.orange span::after{background-size:60% auto;right:-38px;}
|
|
| 271 |
+ .pipeline tr:first-child ul li:nth-child(5),.pipeline .purple+ul li:nth-child(4),.pipeline .orange+ul li:nth-child(5){font-size:14px;}
|
|
| 272 |
+ |
|
| 273 |
+ .pipeline ul li{display:flex;justify-content:center;align-items:center;}
|
|
| 274 |
+ |
|
| 275 |
+ .pipeline .graph1 span{width:calc((100% / 6) - 20px);}
|
|
| 276 |
+ .pipeline .graph2 span{width:calc((100% / 6)*2 - 60px);}
|
|
| 277 |
+ .pipeline .graph3 span{width:calc((100% / 6)*3 - 60px);}
|
|
| 278 |
+ .pipeline .graph4 span{width:calc((100% / 6)*4 - 60px);}
|
|
| 279 |
+ .pipeline .graph5 span{width:calc((100% / 6)*5 - 60px);}
|
|
| 280 |
+ |
|
| 281 |
+ .rd .figure_content.column{gap:0;}
|
|
| 282 |
+ |
|
| 283 |
+} |
|
| 284 |
+ |
|
| 285 |
+ |
|
| 286 |
+@media (max-width: 768px){
|
|
| 287 |
+ |
|
| 288 |
+ /* ================================================== |
|
| 289 |
+ 공통레이아웃 |
|
| 290 |
+ ================================================== */ |
|
| 291 |
+ .sub_visual{height:500px;border-radius:0 0 40px 40px;;}
|
|
| 292 |
+ .sub_visual_nav{height:66px;}
|
|
| 293 |
+ .sub_visual_nav>a{display:none;}
|
|
| 294 |
+ .sub_visual_nav .snb_wrap{width:calc(100% / 2);}
|
|
| 295 |
+ |
|
| 296 |
+ .con_title .title{font-size:28px;}
|
|
| 297 |
+ |
|
| 298 |
+ |
|
| 299 |
+ /* ================================================== |
|
| 300 |
+ Company |
|
| 301 |
+ ================================================== */ |
|
| 302 |
+ |
|
| 303 |
+ /* 설립배경 */ |
|
| 304 |
+ .overview .txt strong{font-size:40px;line-height:1.4;}
|
|
| 305 |
+ .overview .txt strong span{display:block;}
|
|
| 306 |
+ .overview .card{gap:20px;}
|
|
| 307 |
+ .overview .card li{width:calc((100% / 2) - 20px);height:400px;}
|
|
| 308 |
+ |
|
| 309 |
+ .figure_content.row{flex-direction:column;gap:20px;}
|
|
| 310 |
+ .figure_content.row .box{width:100%;}
|
|
| 311 |
+ |
|
| 312 |
+ .figure_desc{width:100%;gap:12px;}
|
|
| 313 |
+ .figure_desc li{font-size:18px;}
|
|
| 314 |
+ .figure_desc.square li{text-indent:26px;background:url(/publish/usr/images/component/list_square.png) no-repeat left 4px;}
|
|
| 315 |
+ .figure_desc.circle li{text-indent:26px;background:url(/publish/usr/images/component/list_circle.png) no-repeat left 4px;background-size:auto 20px;}
|
|
| 316 |
+ |
|
| 317 |
+ /* 조직도 */ |
|
| 318 |
+ .org_list{gap:20px}
|
|
| 319 |
+ .org_list>li{width:100%;}
|
|
| 320 |
+ |
|
| 321 |
+ /* 오시는 길 */ |
|
| 322 |
+ .location_list .boxs{flex-direction:column;}
|
|
| 323 |
+ .location_list .boxs li{width:100%;}
|
|
| 324 |
+ |
|
| 325 |
+ /* ================================================== |
|
| 326 |
+ Platform Tech |
|
| 327 |
+ ================================================== */ |
|
| 328 |
+ .dl_wrap{flex-direction:column;gap:60px;}
|
|
| 329 |
+ .dl_wrap dl{width:100%;}
|
|
| 330 |
+ .dl_wrap dd{margin:20px 0 0 0;;}
|
|
| 331 |
+} |
|
| 332 |
+ |
|
| 333 |
+@media (max-width: 640px){
|
|
| 334 |
+ |
|
| 335 |
+ |
|
| 336 |
+ /* ================================================== |
|
| 337 |
+ 공통레이아웃 |
|
| 338 |
+ ================================================== */ |
|
| 339 |
+ .sub_visual_nav .snb_wrap{width:100%;}
|
|
| 340 |
+ .sub_visual_nav .snb_wrap:nth-child(2){display:none;}
|
|
| 341 |
+ .content_title h3{font-size:40px;}
|
|
| 342 |
+ |
|
| 343 |
+ |
|
| 344 |
+ /* ================================================== |
|
| 345 |
+ Company |
|
| 346 |
+ ================================================== */ |
|
| 347 |
+ |
|
| 348 |
+ /* 설립배경 */ |
|
| 349 |
+ .overview .txt strong{font-size:28px;}
|
|
| 350 |
+ .overview .txt p{font-size:18px;margin:8px 0 0 0;}
|
|
| 351 |
+ .overview .card{gap:36px;padding:90px 0 120px 0;}
|
|
| 352 |
+ .overview .card li{width:100%;}
|
|
| 353 |
+ .overview .card li:nth-child(2n){transform:none;;}
|
|
| 354 |
+ .overview .card .title br{display:none;}
|
|
| 355 |
+ |
|
| 356 |
+ .overview .circles{padding:0;margin:40px 0 80px 0;gap:60px;}
|
|
| 357 |
+ .overview .circles::after{height:50%;right:49.5%;}
|
|
| 358 |
+ .overview .circle.line{width:200px;height:200px;font-size:18px;}
|
|
| 359 |
+ .overview .circle.line:last-child{margin:-40px 0 0 0;}
|
|
| 360 |
+ .overview .circle.line:first-child::after{height:20px;font-size:24px;bottom:14px;right:40%;}
|
|
| 361 |
+ .overview .circle.fill{width:260px;height:260px;font-size:20px;;}
|
|
| 362 |
+ .overview .circle.fill::after{width:calc(100% + 20px);height:calc(100% + 20px);left:-10px;top:-10px;background-size:100% auto;}
|
|
| 363 |
+ .overview .circles .left::after, .overview .circles .right::after{width:12px;height:12px;}
|
|
| 364 |
+ .overview .circles .left::after{bottom:-5px;}
|
|
| 365 |
+ |
|
| 366 |
+ /* ================================================== |
|
| 367 |
+ Platform Tech |
|
| 368 |
+ ================================================== */ |
|
| 369 |
+ |
|
| 370 |
+ /* autophagy */ |
|
| 371 |
+ .step_ul{flex-direction:column;}
|
|
| 372 |
+ .step_ul li:not(.next){width:100%;}
|
|
| 373 |
+ .step_ul li.next img{transform:rotate(90deg);}
|
|
| 374 |
+ .step_ul li:nth-child(6){display:block;}
|
|
| 375 |
+}(No newline at end of file) |
--- src/main/webapp/publish/usr/css/icon.css
+++ src/main/webapp/publish/usr/css/icon.css
... | ... | @@ -1,17 +1,26 @@ |
| 1 |
-@charset "utf-8"; |
|
| 2 |
- |
|
| 3 |
-.icon{display:inline-block;width:100%;height:100%;vertical-align:middle;;}
|
|
| 4 |
- |
|
| 5 |
-.icon.file{width:20px;height:20px;background:url(../images/component/icon_file.png) no-repeat center center;}
|
|
| 6 |
-.icon.file.blue{background:url(../images/component/icon_file_blue.png) no-repeat center center;}
|
|
| 7 |
-.icon.file_bg{width:60px;height:60px;background:url(../images/component/icon_file_table.png) no-repeat center center;}
|
|
| 8 |
- |
|
| 9 |
-.icon.delete{width:30px;height:30px;background:url(../images/component/icon_x.png) no-repeat center;}
|
|
| 10 |
-.icon.delete.red{background:url(../images/component/icon_x_red.png) no-repeat center;}
|
|
| 11 |
- |
|
| 12 |
-.icon.calendar{width:30px;height:30px;background:url(../images/component/icon_calendar.png) no-repeat center;}
|
|
| 13 |
-.icon.writer{width:30px;height:30px;background:url(../images/component/icon_writer.png) no-repeat center;}
|
|
| 14 |
-.icon.view{width:30px;height:30px;background:url(../images/component/icon_view.png) no-repeat center;}
|
|
| 15 |
- |
|
| 16 |
-.icon.prev{width:18px;height:18px;background:url(../images/component/icon_arrow_up_18.png) no-repeat center;}
|
|
| 17 |
-.icon.next{width:18px;height:18px;background:url(../images/component/icon_arrow_down_18.png) no-repeat center;} (No newline at end of file)
|
|
| 1 |
+@charset "utf-8"; |
|
| 2 |
+ |
|
| 3 |
+.icon{display:inline-block;width:100%;height:100%;vertical-align:middle;;}
|
|
| 4 |
+ |
|
| 5 |
+.icon.lang{width:20px;height:40px;background:url(../images/common/lang.png) no-repeat center 12px;}
|
|
| 6 |
+.scrolled .icon.lang{background:url(../images/common/lang_scrolled.png) no-repeat center 12px;}
|
|
| 7 |
+ |
|
| 8 |
+.icon.close{width:40px;height:40px;background:url(../images/common/menu_close.png) no-repeat center;}
|
|
| 9 |
+ |
|
| 10 |
+.icon.home{width:66px;height:66px;background:url(../images/common/home.png) no-repeat center;}
|
|
| 11 |
+ |
|
| 12 |
+.icon.file{width:20px;height:20px;background:url(../images/component/icon_file.png) no-repeat center center;}
|
|
| 13 |
+.icon.file.blue{background:url(../images/component/icon_file_blue.png) no-repeat center center;}
|
|
| 14 |
+.icon.file_bg{width:60px;height:60px;background:url(../images/component/icon_file_table.png) no-repeat center center;}
|
|
| 15 |
+ |
|
| 16 |
+.icon.delete{width:30px;height:30px;background:url(../images/component/icon_x.png) no-repeat center;}
|
|
| 17 |
+.icon.delete.red{background:url(../images/component/icon_x_red.png) no-repeat center;}
|
|
| 18 |
+ |
|
| 19 |
+.icon.calendar{width:30px;height:30px;background:url(../images/component/icon_calendar.png) no-repeat center;}
|
|
| 20 |
+.icon.writer{width:30px;height:30px;background:url(../images/component/icon_writer.png) no-repeat center;}
|
|
| 21 |
+.icon.view{width:30px;height:30px;background:url(../images/component/icon_view.png) no-repeat center;}
|
|
| 22 |
+ |
|
| 23 |
+.icon.arrow.left{width:40px;height:40px;background:url(../images/component/arrow_left.png) no-repeat center;}
|
|
| 24 |
+.icon.arrow.right{width:40px;height:40px;background:url(../images/component/arrow_right.png) no-repeat center;}
|
|
| 25 |
+.icon.arrow.bottom{width:40px;height:40px;background:url(../images/component/arrow_bottom.png) no-repeat center;}
|
|
| 26 |
+.icon.arrow.top{width:40px;height:40px;background:url(../images/component/arrow_top.png) no-repeat center;} (No newline at end of file)
|
--- src/main/webapp/publish/usr/css/main.css
+++ src/main/webapp/publish/usr/css/main.css
... | ... | @@ -1,115 +1,68 @@ |
| 1 |
-@charset "utf-8"; |
|
| 2 |
- |
|
| 3 |
-.section{margin:140px 0 0 0;}
|
|
| 4 |
-.section .inner{display:flex;gap:40px;}
|
|
| 5 |
-.title_wrap{display:flex;width:100%;margin:0 0 40px 0;justify-content:space-between;align-items:center;}
|
|
| 6 |
-.cont_wrap{position:relative;width:100%;;}
|
|
| 7 |
-.main_title{font-family: var(--secondary-title-font);font-size:36px;font-weight:bold;color:var(--primary-title-color);}
|
|
| 8 |
-.btn_more{display:inline-flex;height:40px;padding:0 5px 0 20px;background:#fff;border:1px solid #1a1b1d;font-size:16px;font-weight:500;color:var(--primary-title-color);border-radius:50px;align-items:center;}
|
|
| 9 |
-.btn_more i{width:40px;height:40px;background:url(../images/main/icon_plus.png) no-repeat center center;}
|
|
| 10 |
- |
|
| 11 |
-.main .tabs{display:flex;gap:30px;}
|
|
| 12 |
-.main .tab{position:relative;font-size:20px;font-weight:400;color:#636469;}
|
|
| 13 |
-.main .tab.active{font-weight:bold;color:var(--primary-color);}
|
|
| 14 |
-.main .tab.active::after{position:absolute;content:"";width:6px;height:6px;background:var(--primary-color);border-radius:100%;right:-8px;top:-2px;}
|
|
| 15 |
-.main .tab_content{position:absolute;display:none;width:100%;left:0;}
|
|
| 16 |
-.main .tab.active+.tab_content{display:block;}
|
|
| 17 |
- |
|
| 18 |
-/* 메인비주얼 */ |
|
| 19 |
- |
|
| 20 |
-.main_visual{width:100%;height:422px;}
|
|
| 21 |
-.main_visual .visual_slide{width:100%;height:100%;border-radius:20px;}
|
|
| 22 |
-.main_visual .visual_slide a:first-child{background:blue;}
|
|
| 23 |
-.main_visual .visual_slide a:nth-child(2){background:red;}
|
|
| 24 |
-.main_visual .visual_slide a:nth-child(3){background:salmon;}
|
|
| 25 |
- |
|
| 26 |
-/* //메인비주얼 */ |
|
| 27 |
- |
|
| 28 |
-/* section01 */ |
|
| 29 |
-.section01{height:452px;}
|
|
| 30 |
-.sch_cont{position:relative;width:calc(100% - 470px);}
|
|
| 31 |
-.sch_cont .cont_wrap{top:-85px;left:290px;}
|
|
| 32 |
-.sch_cont .tab_content{width:100%;left:-290px;top:calc(100% + 40px);}
|
|
| 33 |
-.sch_cont .sch_title{margin:0 0 20px 0;}
|
|
| 34 |
-.sch_cont .current_date{font-size:30px;font-weight:bold;}
|
|
| 35 |
-.sch_cont .list{width:100%;border-top:1px solid #000;}
|
|
| 36 |
-.sch_cont .list>li{border-bottom:1px dashed #aeafb2;}
|
|
| 37 |
-.sch_cont .list a{display:flex;padding:19px 16px;align-items:center;justify-content:space-between;}
|
|
| 38 |
-.sch_cont .status{height:30px;padding:4px 16px;margin:0 4px 0 0;font-size:16px;font-weight:500;box-sizing:border-box;border-radius:30px;}
|
|
| 39 |
-.sch_cont .status.green{background:#CEF5E4;color:#00A15B;}
|
|
| 40 |
-.sch_cont .status.gray{background:#F2F4F6;color:#636469;}
|
|
| 41 |
-.sch_cont .list .title{font-size:18px;font-weight:400;color:var(--primary-title-color);line-height:1.3;}
|
|
| 42 |
-.sch_cont .list_info{display:flex;font-size:16px;color:#7f868f;margin:16px 0 0 0;gap:20px;}
|
|
| 43 |
-.sch_cont .list_info em{font-weight:600;margin:0 8px 0 0;}
|
|
| 44 |
-.sch_cont .text_move{display:flex;font-size:16px;font-weight:600;color:#9FA1A8;align-items:center;transition:all 0.3s;}
|
|
| 45 |
-.sch_cont .text_move i{display:inline-block;width:24px;height:24px;margin:1px 0 0 8px;background:url(../images/main/btn_more.png) no-repeat center bottom;transition:color .3s;}
|
|
| 46 |
-.sch_cont a:hover .text_move{color:var(--primary-title-color);}
|
|
| 47 |
-.sch_cont a:hover .text_move i{background:url(../images/main/btn_more.png) no-repeat center top;}
|
|
| 48 |
-.sch_cont .tab_content .btn_more{position:absolute;top:3px;right:0;}
|
|
| 49 |
- |
|
| 50 |
- |
|
| 51 |
-.allim_cont{position:relative;width:430px;border-radius:20px;overflow:hidden;}
|
|
| 52 |
-.allim_slide{width:100%;height:100%;}
|
|
| 53 |
-.allim_slide a:first-child{background:blue;}
|
|
| 54 |
-.allim_slide a:nth-child(2){background:red;}
|
|
| 55 |
-.allim_slide a:nth-child(3){background:salmon;}
|
|
| 56 |
-.allim_bottom{position:absolute;display:flex;width:100%;height:60px;padding:0 24px;background:#303347;left:0;bottom:0;justify-content:space-between;align-items:center;z-index:1;}
|
|
| 57 |
-.allim_bottom .title{font-size:20px;font-weight:bold;color:#fff;}
|
|
| 58 |
-.allim_util{display:flex;align-items:center;gap:8px;}
|
|
| 59 |
-.allim_util p{font-size:16px;font-weight:400;color:#858897;letter-spacing:2px;}
|
|
| 60 |
-.allim_util .current_num{font-weight:bold;color:#2de394;}
|
|
| 61 |
-.allim_util button{width:24px;height:24px;}
|
|
| 62 |
-.allim_util button i{display:inline-block;width:100%;height:100%;}
|
|
| 63 |
-.allim_util .btn_prev{background:url(../images/main/icon_prev.png) no-repeat center center;}
|
|
| 64 |
-.allim_util .btn_pause{background:url(../images/main/icon_pause.png) no-repeat center center;}
|
|
| 65 |
-.allim_util .btn_play{background:url(../images/main/icon_play.png) no-repeat center center;}
|
|
| 66 |
-.allim_util .btn_next{background:url(../images/main/icon_next.png) no-repeat center center;}
|
|
| 67 |
- |
|
| 68 |
-/* //section01 */ |
|
| 69 |
- |
|
| 70 |
-/* section02 */ |
|
| 71 |
-.section02 .inner{display:block;height:427px;}
|
|
| 72 |
-.section02 .cont_wrap{top:-85px;left:190px;}
|
|
| 73 |
-.section02 .tab_content{top:calc(100% + 40px);left:-190px;}
|
|
| 74 |
-.section02 .card_list{display:flex;align-items:stretch;gap:30px;}
|
|
| 75 |
-.section02 .card_list>li{width:calc((100% / 4));}
|
|
| 76 |
-.section02 .card_list a{padding:30px;background:#F2F4F6;border:2px solid transparent;border-radius:10px;transition:all .3s;}
|
|
| 77 |
-.section02 .card_list a:hover{background:#fff;transform:translateY(-10px);}
|
|
| 78 |
-.section02 .part_notice a:hover{border:2px solid var(--primary-color);box-shadow:0 3px 5px 3px rgba(44,69,195,0.15);}
|
|
| 79 |
-.section02 .part_data a:hover{border:2px solid #00a15b;box-shadow:0 3px 5px 3px rgba(0,161,91,0.15);}
|
|
| 80 |
-.section02 .card_list .part{display:flex;font-size:16px;font-weight:600;gap:8px;align-items:center;}
|
|
| 81 |
-.section02 .card_list .part i{display:inline-block;width:22px;height:22px;}
|
|
| 82 |
-.section02 .part_notice .part{color:var(--primary-color);}
|
|
| 83 |
-.section02 .part_notice .part i{background:url(../images/main/icon_notice.png) no-repeat center center;}
|
|
| 84 |
-.section02 .part_data .part{color:#00a15b;}
|
|
| 85 |
-.section02 .part_data .part i{background:url(../images/main/icon_data.png) no-repeat center center;}
|
|
| 86 |
-.section02 .card_list .title{display:-webkit-box;width:100%;height:102px;margin:10px 0 15px 0;font-size:24px;font-weight:600;color:var(--primary-title-color);line-height:1.4;text-overflow:ellipsis;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:3;}
|
|
| 87 |
-.section02 .card_list .summary{display:-webkit-box;width:100%;font-size:16px;font-weight:400;color:#636469;text-overflow:ellipsis;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:3;}
|
|
| 88 |
-.section02 .list_util{display:flex;width:100%;font-size:14px;color:#636469;margin:24px 0 0 0;gap:18px;}
|
|
| 89 |
-.section02 .list_util li{display:flex;align-items:center;gap:4px;}
|
|
| 90 |
-.section02 .list_util .icon{display:inline-block;width:22px;height:22px;}
|
|
| 91 |
-.section02 .list_util .calendar{background:url(../images/main/icon_calendar.png) no-repeat center;}
|
|
| 92 |
-.section02 .list_util .writer{background:url(../images/main/icon_writer.png) no-repeat center;}
|
|
| 93 |
-.section02 .list_util .view{background:url(../images/main/icon_view.png) no-repeat center;}
|
|
| 94 |
-.section02 .btn_more{position:absolute;top:-71px;right:0;}
|
|
| 95 |
- |
|
| 96 |
-/* //section02 */ |
|
| 97 |
- |
|
| 98 |
-/* section03 */ |
|
| 99 |
-.section03 .inner{display:flex;gap:30px;}
|
|
| 100 |
-.faq_cont, .qna_cont{width:50%;}
|
|
| 101 |
-.box_list{width:100%;background:#f2f4f6;border-radius:20px;padding:30px 30px 20px 30px;}
|
|
| 102 |
-.box_list span{display:flex;width:100%;font-size:18px;font-weight:500;color:var(--primary-title-color);align-items:flex-start;}
|
|
| 103 |
-.box_list li{padding:16px 0;border-bottom:1px solid #D8D8D8;}
|
|
| 104 |
-.box_list li:first-child{padding:0 0 16px 0;}
|
|
| 105 |
-.box_list li:last-child{border-bottom:0;}
|
|
| 106 |
-.box_list li:first-child .question{font-size:24px;}
|
|
| 107 |
-.box_list em{font-family:var(--secondary-title-font);font-size:20px;font-weight:700;margin:0 16px 0 0;vertical-align:middle;}
|
|
| 108 |
-.box_list li:first-child em{font-size:24px;}
|
|
| 109 |
-.box_list .question em{color:var(--primary-color);}
|
|
| 110 |
-.box_list .answer{display:flex;align-items:flex-start;margin:16px 0 0 0;}
|
|
| 111 |
-.box_list .answer span{display:-webkit-box;font-size:16px;font-weight:400;color:#636469;margin:2px 0 0 0;line-height:1.4;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;}
|
|
| 112 |
-.box_list .answer em{color:#7A7C86;}
|
|
| 113 |
- |
|
| 114 |
-.qna_cont .cont_wrap{height:calc(100% - 94px);background:salmon;border-radius:20px;}
|
|
| 115 |
-/* //section03 */(No newline at end of file) |
|
| 1 |
+@charset "utf-8"; |
|
| 2 |
+ |
|
| 3 |
+/* 메인비주얼 */ |
|
| 4 |
+.main_visual{position:relative;width:100%;height:100%;left:0;top:0;z-index:1;}
|
|
| 5 |
+.main_visual .visual_slide{position:fixed;width:100%;height:100vh;z-index:-1;}
|
|
| 6 |
+.main_visual .visual_slide a:first-child{background:url(../images/main/visual01.jpg);}
|
|
| 7 |
+.main_visual .visual_slide a:nth-child(2){background:url(../images/main/visual01.jpg);}
|
|
| 8 |
+.main_visual .visual_slide a:nth-child(3){background:url(../images/main/visual01.jpg);}
|
|
| 9 |
+.main_visual .slide_pagination{margin:108px 0 0 0;}
|
|
| 10 |
+.main_visual .swiper-pagination-bullet{width:85px;height:5px;border-radius:0;background:#fff;}
|
|
| 11 |
+.main_visual .swiper-pagination-bullet-active{background:var(--accent-color);}
|
|
| 12 |
+ |
|
| 13 |
+.main .contents{width:100%;padding:160px 0 0 0;z-index:1;}
|
|
| 14 |
+.main .inner{display:flex;gap:60px;align-items:center;}
|
|
| 15 |
+.main .text_area{width:60%;word-break:break-all;}
|
|
| 16 |
+.main .text_area .title{font-family:var(--secondary-title-font);font-size:80px;font-weight:bold;color:#fff;line-height:1.2;}
|
|
| 17 |
+.main .text_area .line{display:block;color:transparent;-webkit-text-stroke: 1px #fff;}
|
|
| 18 |
+.main .text_area .summary{display:block;font-size:32px;font-weight:400;color:#fff;line-height:1.5;text-shadow:0 0 4px rgba(0,0,0,0.5);margin:20px 0 0 0;}
|
|
| 19 |
+.main .box_contents{display:flex;width:calc(100% - 700px);flex-direction:column;gap:32px;}
|
|
| 20 |
+.main .box_contents .box{width:100%;color:#fff;padding:40px 60px;border-radius:40px;background-size:auto 100%;box-sizing:border-box;transition:all 0.3s ease-in-out;}
|
|
| 21 |
+.main .box_contents .box .title{font-family:var(--secondary-title-font);font-size:32px;font-weight:bold;letter-spacing:1px;}
|
|
| 22 |
+.main .box_contents .box .summary{display:block;font-size:16px;font-weight:400;margin:12px 0 0 0;opacity:0.6;word-break:keep-all;}
|
|
| 23 |
+ |
|
| 24 |
+.main .purple{background:#5F48B0 url(../images/main/box_purple.png) no-repeat top right;background-blend-mode:overlay;}
|
|
| 25 |
+.main .purple:hover{background:#523ba3 url(../images/main/box_purple.png) no-repeat top right;background-size:auto 100%;}
|
|
| 26 |
+.main .blue{background:#3B5BB0 url(../images/main/box_blue.png) no-repeat top right;background-blend-mode:overlay;}
|
|
| 27 |
+.main .blue:hover{background:#2c4998 url(../images/main/box_blue.png) no-repeat top right;background-size:auto 100%;}
|
|
| 28 |
+.main .skyblue{background:#3BA0CC url(../images/main/box_skyblue.png) no-repeat top right;background-blend-mode:luminosity;}
|
|
| 29 |
+.main .skyblue:hover{background:#2f8db6 url(../images/main/box_skyblue.png) no-repeat top right;background-size:auto 100%;}
|
|
| 30 |
+/* //메인비주얼 */ |
|
| 31 |
+ |
|
| 32 |
+.main+.footer{margin:80px 0 0 0;z-index:1;}
|
|
| 33 |
+ |
|
| 34 |
+ |
|
| 35 |
+@media (max-width: 1400px) {
|
|
| 36 |
+ /* 메인비주얼 */ |
|
| 37 |
+ .main .text_area .title{font-size:60px;}
|
|
| 38 |
+ .main .text_area .summary{font-size:24px;}
|
|
| 39 |
+ .main_visual .slide_pagination{margin:50px 0 0 0;}
|
|
| 40 |
+ |
|
| 41 |
+ .main .box_contents{width:calc(100% - 440px);}
|
|
| 42 |
+ .main .box_contents .box{padding:30px 40px;border-radius:20px;}
|
|
| 43 |
+ /* .main .box_contents .box .title{font-size:24px;} */
|
|
| 44 |
+} |
|
| 45 |
+ |
|
| 46 |
+@media (max-width: 1280px){
|
|
| 47 |
+ |
|
| 48 |
+ .main .inner{flex-direction:column;}
|
|
| 49 |
+ .main .contents{padding:200px 0 0 0;}
|
|
| 50 |
+ .main .text_area, .main .box_contents{width:100%;}
|
|
| 51 |
+ |
|
| 52 |
+ .main_visual .visual_slide{height:100%;}
|
|
| 53 |
+ .main .contents{position:relative;left:auto;top:auto;transform:none;}
|
|
| 54 |
+} |
|
| 55 |
+ |
|
| 56 |
+@media (max-width: 640px){
|
|
| 57 |
+ |
|
| 58 |
+ .main .contents{padding:160px 0 0 0;}
|
|
| 59 |
+ |
|
| 60 |
+ .main_visual .slide_pagination{margin:20px 0 0 0;}
|
|
| 61 |
+ |
|
| 62 |
+ .main .text_area .title{font-size:40px;}
|
|
| 63 |
+ .main .text_area .summary{font-size:20px;}
|
|
| 64 |
+ .main .text_area .summary br{display:none;}
|
|
| 65 |
+ |
|
| 66 |
+ .main .box_contents .box .title{font-size:20px;}
|
|
| 67 |
+ .main .box_contents .box .summary{margin:4px 0 0 0;}
|
|
| 68 |
+}(No newline at end of file) |
--- src/main/webapp/publish/usr/css/popup.css
+++ src/main/webapp/publish/usr/css/popup.css
... | ... | @@ -1,36 +1,36 @@ |
| 1 |
- |
|
| 2 |
-.popup_wrap{display:none;position:fixed;box-shadow:0 0 10px rgba(0,0,0,0.25);border-radius:8px;z-index: 50;}
|
|
| 3 |
-.popup_wrap .title_wrap {display:flex;height:45px;background-color:var(--primary-color);justify-content:space-between;align-items:center;font-size:18px;font-weight:500;color:#fff;padding:0 12px 0 20px;border-radius:8px 8px 0 0;box-sizing:border-box;}
|
|
| 4 |
- |
|
| 5 |
-.btn_popup_close{width:30px;height:30px;padding:0;}
|
|
| 6 |
-.btn_popup_close i{display:inline-block;width:100%;height:100%;background:url(../images/component/icon_x_white.png) no-repeat center center;background-size:95%;}
|
|
| 7 |
- |
|
| 8 |
-.popup_content {color: #222; padding:20px; box-sizing: border-box;background-color: #fff; border-radius: 0 0 5px 5px;}
|
|
| 9 |
- |
|
| 10 |
-.popup_content .input{height:30px;border:1px solid var(--default-line-color);border-radius:5px;padding:0 12px;}
|
|
| 11 |
-.popup_content textarea, .popup_content .testarea{border:1px solid var(--default-line-color);border-radius:5px;padding:0 12px;}
|
|
| 12 |
-.popup_content select, .popup_content .select{height:30px;border:1px solid var(--default-line-color);border-radius:5px;padding:0 32px 0 12px;background:url(../images/component/icon_arrow_down.png) no-repeat calc(100% - 4px) center;}
|
|
| 13 |
- |
|
| 14 |
-/* popup - btn */ |
|
| 15 |
-.popup_wrap .btn_wrap.bottom{margin:15px 0 0 0;}
|
|
| 16 |
-.popup_wrap .btn_wrap.bottom button{padding:0 12px;}
|
|
| 17 |
- |
|
| 18 |
- |
|
| 19 |
-/* popup - title */ |
|
| 20 |
-.popup_content .content_title{display:flex;margin:0 0 15px 0;justify-content:space-between;align-items:center;}
|
|
| 21 |
-.popup_content h3{position:relative;font-size:18px;font-weight:600;padding:0 0 0 12px;}
|
|
| 22 |
-.popup_content h3::before{position:absolute;content:"";width:3px;height:16px;background:var(--primary-color);left:0;top:6.5px;}
|
|
| 23 |
- |
|
| 24 |
- |
|
| 25 |
-/* popup - table */ |
|
| 26 |
-.popup_table_cols tr{border-bottom:1px solid #e2e7ef;}
|
|
| 27 |
-.popup_table_cols th,.popup_table_cols td{padding:4px 8px;font-size:15px;text-align:center;box-sizing:border-box;}
|
|
| 28 |
-.popup_table_cols thead>tr>th{height:60px;font-weight:500;color:#25272A;}
|
|
| 29 |
-.popup_table_cols tbody>tr>td{height:50px;font-weight:400;color:#444;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;}
|
|
| 30 |
-.popup_table_cols .text_left a{width:100%;text-align:left;}
|
|
| 31 |
- |
|
| 32 |
-.popup_table_rows tr{border-bottom:1px solid #e2e7ef;}
|
|
| 33 |
-.popup_table_rows tbody>tr>th,.popup_table_rows tbody>tr>td{height:40px;padding:4px 8px;font-size:15px;color:#25272A;box-sizing:border-box;}
|
|
| 34 |
-.popup_table_rows tbody>tr>th{text-align:center;font-weight:500;background:#F2F3F5;}
|
|
| 35 |
-.popup_table_rows tbody>tr>td{text-align:left;font-weight:400;}
|
|
| 36 |
- |
|
| 1 |
+ |
|
| 2 |
+.popup_wrap{display:none;position:fixed;box-shadow:0 0 10px rgba(0,0,0,0.25);border-radius:8px;z-index: 50;}
|
|
| 3 |
+.popup_wrap .title_wrap {display:flex;height:45px;background-color:var(--primary-color);justify-content:space-between;align-items:center;font-size:18px;font-weight:500;color:#fff;padding:0 12px 0 20px;border-radius:8px 8px 0 0;box-sizing:border-box;}
|
|
| 4 |
+ |
|
| 5 |
+.btn_popup_close{width:30px;height:30px;padding:0;}
|
|
| 6 |
+.btn_popup_close i{display:inline-block;width:100%;height:100%;background:url(../images/component/icon_x_white.png) no-repeat center center;background-size:95%;}
|
|
| 7 |
+ |
|
| 8 |
+.popup_content {color: #222; padding:20px; box-sizing: border-box;background-color: #fff; border-radius: 0 0 5px 5px;}
|
|
| 9 |
+ |
|
| 10 |
+.popup_content .input{height:30px;border:1px solid var(--default-line-color);border-radius:5px;padding:0 12px;}
|
|
| 11 |
+.popup_content textarea, .popup_content .testarea{border:1px solid var(--default-line-color);border-radius:5px;padding:0 12px;}
|
|
| 12 |
+.popup_content select, .popup_content .select{height:30px;border:1px solid var(--default-line-color);border-radius:5px;padding:0 32px 0 12px;background:url(../images/component/icon_arrow_down.png) no-repeat calc(100% - 4px) center;}
|
|
| 13 |
+ |
|
| 14 |
+/* popup - btn */ |
|
| 15 |
+.popup_wrap .btn_wrap.bottom{margin:15px 0 0 0;}
|
|
| 16 |
+.popup_wrap .btn_wrap.bottom button{padding:0 12px;}
|
|
| 17 |
+ |
|
| 18 |
+ |
|
| 19 |
+/* popup - title */ |
|
| 20 |
+.popup_content .content_title{display:flex;margin:0 0 15px 0;justify-content:space-between;align-items:center;}
|
|
| 21 |
+.popup_content h3{position:relative;font-size:18px;font-weight:600;padding:0 0 0 12px;}
|
|
| 22 |
+.popup_content h3::before{position:absolute;content:"";width:3px;height:16px;background:var(--primary-color);left:0;top:6.5px;}
|
|
| 23 |
+ |
|
| 24 |
+ |
|
| 25 |
+/* popup - table */ |
|
| 26 |
+.popup_table_cols tr{border-bottom:1px solid #e2e7ef;}
|
|
| 27 |
+.popup_table_cols th,.popup_table_cols td{padding:4px 8px;font-size:15px;text-align:center;box-sizing:border-box;}
|
|
| 28 |
+.popup_table_cols thead>tr>th{height:60px;font-weight:500;color:#25272A;}
|
|
| 29 |
+.popup_table_cols tbody>tr>td{height:50px;font-weight:400;color:#444;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;}
|
|
| 30 |
+.popup_table_cols .text_left a{width:100%;text-align:left;}
|
|
| 31 |
+ |
|
| 32 |
+.popup_table_rows tr{border-bottom:1px solid #e2e7ef;}
|
|
| 33 |
+.popup_table_rows tbody>tr>th,.popup_table_rows tbody>tr>td{height:40px;padding:4px 8px;font-size:15px;color:#25272A;box-sizing:border-box;}
|
|
| 34 |
+.popup_table_rows tbody>tr>th{text-align:center;font-weight:500;background:#F2F3F5;}
|
|
| 35 |
+.popup_table_rows tbody>tr>td{text-align:left;font-weight:400;}
|
|
| 36 |
+ |
--- src/main/webapp/publish/usr/css/style.css
+++ src/main/webapp/publish/usr/css/style.css
... | ... | @@ -1,120 +1,124 @@ |
| 1 |
-@charset "utf-8"; |
|
| 2 |
-@import url(../../../css/style.css); /* 간격 css */ |
|
| 3 |
-@import url(../css/icon.css); |
|
| 4 |
- |
|
| 5 |
-/* 폰트 */ |
|
| 6 |
-.fwLg{font-weight: 300 !important}
|
|
| 7 |
-.fwRg{font-weight: 400 !important}
|
|
| 8 |
-.fwMd{font-weight: 500 !important}
|
|
| 9 |
-.fwBold{font-weight: 700 !important}
|
|
| 10 |
- |
|
| 11 |
-.sub_font{font-family:var(--secondary-title-font);}
|
|
| 12 |
- |
|
| 13 |
-.show{display:block !important;}
|
|
| 14 |
-.hide{display:none !important;}
|
|
| 15 |
- |
|
| 16 |
-.text_left{text-align:left;}
|
|
| 17 |
-.text_right{text-align:right;}
|
|
| 18 |
-.text_center{text-align:center;}
|
|
| 19 |
- |
|
| 20 |
-.input{height:34px;border:1px solid var(--default-line-color);border-radius:5px;padding:0 12px;}
|
|
| 21 |
-textarea, .testarea{border:1px solid var(--default-line-color);border-radius:5px;padding:0 12px;}
|
|
| 22 |
-select, .select{height:34px;border:1px solid var(--default-line-color);border-radius:5px;padding:0 32px 0 12px;background:url(../images/component/icon_arrow_down.png) no-repeat calc(100% - 4px) center;}
|
|
| 23 |
- |
|
| 24 |
-.email_wrap{display:flex;gap:8px;align-items:center;}
|
|
| 25 |
-.email_wrap .input{width:160px;}
|
|
| 26 |
-.email_wrap .select{width:160px;}
|
|
| 27 |
- |
|
| 28 |
-.radio_wrap,.checkbox_wrap{display:flex;align-items:center;gap:16px;}
|
|
| 29 |
-.radio_item,.checkbox_item{display:flex;align-items:center;gap:4px;font-size:16px;}
|
|
| 30 |
- |
|
| 31 |
-.input_mix_wrap{display:flex;gap:8px;align-items:center;}
|
|
| 32 |
- |
|
| 33 |
-.address_wrap{display:flex;flex-direction:column;gap:8px;}
|
|
| 34 |
-.address_row{display:flex;gap:8px;}
|
|
| 35 |
-.input_post{width:calc(50% - 105px);}
|
|
| 36 |
-.adr_default{width:60%;}
|
|
| 37 |
-.adr_detail{width:40%;}
|
|
| 38 |
- |
|
| 39 |
-.input_desc_wrap{display:flex;width:100%;gap:12px;}
|
|
| 40 |
-.input_desc_wrap.column{flex-direction:column;gap:0;margin:8px 0 0 0;}
|
|
| 41 |
-.input_desc_wrap .input_desc{margin:0;}
|
|
| 42 |
- |
|
| 43 |
-.input_desc{font-size:14px;font-weight:400;color:#666;margin:0 0 0 8px;}
|
|
| 44 |
-.input_desc.red{color:var(--red-color);}
|
|
| 45 |
-.input_desc.blue{color:var(--primary-color);}
|
|
| 46 |
- |
|
| 47 |
-.calendar_wrap{display:flex;align-items:center;gap:8px;}
|
|
| 48 |
-.calendar{width:140px;background:url(../images/component/icon_calendar.png) no-repeat calc(100% - 4px) center;}
|
|
| 49 |
- |
|
| 50 |
- |
|
| 51 |
-/* 검색영역 */ |
|
| 52 |
-.search_area{display:flex;align-items:flex-end;justify-content:space-between;}
|
|
| 53 |
- |
|
| 54 |
-.search_left .total_number{font-size:14px;color:var(--body-text-color);}
|
|
| 55 |
-.search_left .total_number b{font-size:16px;font-weight:bold;color:var(--primary-color);}
|
|
| 56 |
-.search_right{display:flex;gap:10px;}
|
|
| 57 |
-.search_select{min-width:120px;}
|
|
| 58 |
-.search_input{min-width:150px;}
|
|
| 59 |
-.search_right button{height:34px;padding:0 12px;font-size:16px;font-weight:400;}
|
|
| 60 |
-.search_right .btn_search{background:var(--primary-color);color:#fff;}
|
|
| 61 |
-.search_right .btn_reset{background:var(--gray-color);color:#fff;}
|
|
| 62 |
- |
|
| 63 |
-/* 상태 */ |
|
| 64 |
-.status{min-height:34px;font-size:16px;font-weight:500;border-radius:100px;padding:3px 12px;}
|
|
| 65 |
- |
|
| 66 |
-.status.line.blue{border:1px solid #135add;color:#135add;}
|
|
| 67 |
-.status.line.gray{border:1px solid #d1d6df;color:#858B97;background:#eff0f2;}
|
|
| 68 |
- |
|
| 69 |
-.status.text{position:relative;padding:0;}
|
|
| 70 |
-.status.text::after{position:absolute;content:"";width:100%;height:5px;opacity:0.2;left:0;bottom:2px;}
|
|
| 71 |
-.status.text.blue{color:#135add;}
|
|
| 72 |
-.status.text.blue::after{background:#135add;}
|
|
| 73 |
-.status.text.gray{color:#858B97;}
|
|
| 74 |
-.status.text.gray::after{background:#858B97;}
|
|
| 75 |
- |
|
| 76 |
-.file_list{display:flex;flex-direction:column;gap:4px;}
|
|
| 77 |
-.file_list a{display:flex;gap:4px;align-items:center;}
|
|
| 78 |
- |
|
| 79 |
-.file_list.box{padding:15px 35px;margin:40px 0 0 0;background:#f5f7f9;border-radius:15px;gap:10px;}
|
|
| 80 |
-.file_list.box a{gap:8px;font-size:18px;color:var(--body-text-color);text-decoration:none;}
|
|
| 81 |
- |
|
| 82 |
-/* 공지사항 - 상세 */ |
|
| 83 |
-.board_wrap{border-top:2px solid #000;margin:0 0 30px 0;}
|
|
| 84 |
-.board_top{display:flex;padding:30px;border-bottom:1px solid #e2e7ef;gap:15px;flex-direction:column;}
|
|
| 85 |
-.board_title{font-size:25px;font-weight:700;color:var(--primary-title-color);}
|
|
| 86 |
-.board_info{display:flex;font-size:16px;font-weight:400;color:var(--body-text-color);align-items:center;gap:20px;}
|
|
| 87 |
-.board_info li{display:flex;align-items:center;}
|
|
| 88 |
-.board_cont{font-size:18px;padding:45px 30px;line-height:1.5;border-bottom:1px solid #e2e7ef;}
|
|
| 89 |
-.board_cont a{text-decoration:underline;text-underline-offset:3px;}
|
|
| 90 |
-.view_more{border-top:2px solid #000;margin:50px 0 0 0;}
|
|
| 91 |
-.view_more li{padding:20px 30px;font-size:16px;color:#25272a;border-bottom:1px solid #e2e7ef;}
|
|
| 92 |
-.view_more .none *{opacity:0.5;}
|
|
| 93 |
-.view_more span{display:inline-flex;font-weight:500;align-items:center;gap:8px;}
|
|
| 94 |
-.view_more a{width:calc(100% - 100px);margin:0 0 0 20px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;vertical-align:bottom;}
|
|
| 95 |
- |
|
| 96 |
-/* FAQ */ |
|
| 97 |
-.faq_wrap{display:flex;border-top:2px solid #000;margin:12px 0 0 0;flex-direction:column;}
|
|
| 98 |
-.faq_wrap li{border-bottom:1px solid #E2E7EF;}
|
|
| 99 |
-.question,.answer{display:flex;width:100%;padding:10px 0;font-size:18px;line-height:1.5;align-items:flex-start;}
|
|
| 100 |
-.question em,.answer em{display:inline-block;width:100px;font-family: 'S-Core Dream';font-size:24px;font-weight:700;text-align:center;}
|
|
| 101 |
-.question span:not(.visuall-hidden),.answer span:not(.visuall-hidden){width:calc(100% - 100px);text-align:left;margin:4px 0 0 0;}
|
|
| 102 |
-.question em{color:var(--primary-color);}
|
|
| 103 |
-.question{background:url(../images/component/icon_arrow_down_blue.png) no-repeat calc(100% - 16px) center;}
|
|
| 104 |
-.question.active{background:url(../images/component/icon_arrow_up_blue.png) no-repeat calc(100% - 16px) center;}
|
|
| 105 |
-.answer{padding:34px 26px 34px 0;background:#F5F7F9;border-top:1px solid #E2E7EF;}
|
|
| 106 |
-.answer em{color:var(--accent-color);}
|
|
| 107 |
- |
|
| 108 |
-/* 갤러리 리스트 */ |
|
| 109 |
-.gallery_list{display:flex;margin:12px 0 0 0;gap:20px;flex-wrap:wrap;}
|
|
| 110 |
-.gallery_list>li{width:calc((100%/3) - 14px);}
|
|
| 111 |
-.gallery_list a{border:1px solid #E2E7EF;}
|
|
| 112 |
-.gallery_list .images_area{display:flex;width:100%;height:180px;background:#f2f4f7;overflow:hidden;justify-content:center;align-items:center;}
|
|
| 113 |
-.gallery_list .images_area img{max-width:100%;max-height:100%;object-fit:contain;}
|
|
| 114 |
-.gallery_list .list_content{padding:20px;}
|
|
| 115 |
-.gallery_list .list_title{ text-overflow: ellipsis;overflow: hidden;display: -webkit-box;-webkit-box-orient: vertical;-webkit-line-clamp: 2;font-size:18px;font-weight:600;color:var(--primary-title-color);}
|
|
| 116 |
-.gallery_list .list_info{display:flex;font-size:14px;font-weight:400;color:#636469;margin:20px 0 0 0;}
|
|
| 117 |
-.gallery_list .list_info li{position:relative;padding:0 10px;}
|
|
| 118 |
-.gallery_list .list_info li:first-child{padding:0 10px 0 0;}
|
|
| 119 |
-.gallery_list .list_info li::after{position:absolute;content:"";width:1px;height:10px;background:#636469;right:0;top:6px;}
|
|
| 1 |
+@charset "utf-8"; |
|
| 2 |
+@import url(/publish/usr/../../css/style.css); /* 간격 css */ |
|
| 3 |
+@import url(/publish/usr/css/icon.css); |
|
| 4 |
+ |
|
| 5 |
+*{font-family:var(--primary-title-font);}
|
|
| 6 |
+ |
|
| 7 |
+/* 폰트 */ |
|
| 8 |
+.fwLg{font-weight: 300 !important}
|
|
| 9 |
+.fwRg{font-weight: 400 !important}
|
|
| 10 |
+.fwMd{font-weight: 500 !important}
|
|
| 11 |
+.fwBold{font-weight: 700 !important}
|
|
| 12 |
+ |
|
| 13 |
+.sub_font{font-family:var(--secondary-title-font);}
|
|
| 14 |
+ |
|
| 15 |
+.text_primary{color:var(--primary-color);}
|
|
| 16 |
+ |
|
| 17 |
+.show{display:block !important;}
|
|
| 18 |
+.hide{display:none !important;}
|
|
| 19 |
+ |
|
| 20 |
+.text_left{text-align:left;}
|
|
| 21 |
+.text_right{text-align:right;}
|
|
| 22 |
+.text_center{text-align:center;}
|
|
| 23 |
+ |
|
| 24 |
+.input{height:34px;border:1px solid var(--default-line-color);border-radius:5px;padding:0 12px;}
|
|
| 25 |
+textarea, .testarea{border:1px solid var(--default-line-color);border-radius:5px;padding:0 12px;}
|
|
| 26 |
+select, .select{height:34px;border:1px solid var(--default-line-color);border-radius:5px;padding:0 32px 0 12px;background:url(/publish/usr/images/component/icon_arrow_down.png) no-repeat calc(100% - 4px) center;}
|
|
| 27 |
+ |
|
| 28 |
+.email_wrap{display:flex;gap:8px;align-items:center;}
|
|
| 29 |
+.email_wrap .input{width:160px;}
|
|
| 30 |
+.email_wrap .select{width:160px;}
|
|
| 31 |
+ |
|
| 32 |
+.radio_wrap,.checkbox_wrap{display:flex;align-items:center;gap:16px;}
|
|
| 33 |
+.radio_item,.checkbox_item{display:flex;align-items:center;gap:4px;font-size:16px;}
|
|
| 34 |
+ |
|
| 35 |
+.input_mix_wrap{display:flex;gap:8px;align-items:center;}
|
|
| 36 |
+ |
|
| 37 |
+.address_wrap{display:flex;flex-direction:column;gap:8px;}
|
|
| 38 |
+.address_row{display:flex;gap:8px;}
|
|
| 39 |
+.input_post{width:calc(50% - 105px);}
|
|
| 40 |
+.adr_default{width:60%;}
|
|
| 41 |
+.adr_detail{width:40%;}
|
|
| 42 |
+ |
|
| 43 |
+.input_desc_wrap{display:flex;width:100%;gap:12px;}
|
|
| 44 |
+.input_desc_wrap.column{flex-direction:column;gap:0;margin:8px 0 0 0;}
|
|
| 45 |
+.input_desc_wrap .input_desc{margin:0;}
|
|
| 46 |
+ |
|
| 47 |
+.input_desc{font-size:14px;font-weight:400;color:#666;margin:0 0 0 8px;}
|
|
| 48 |
+.input_desc.red{color:var(--red-color);}
|
|
| 49 |
+.input_desc.blue{color:var(--primary-color);}
|
|
| 50 |
+ |
|
| 51 |
+.calendar_wrap{display:flex;align-items:center;gap:8px;}
|
|
| 52 |
+.calendar{width:140px;background:url(/publish/usr/images/component/icon_calendar.png) no-repeat calc(100% - 4px) center;}
|
|
| 53 |
+ |
|
| 54 |
+ |
|
| 55 |
+/* 검색영역 */ |
|
| 56 |
+.search_area{display:flex;align-items:flex-end;justify-content:space-between;}
|
|
| 57 |
+ |
|
| 58 |
+.search_left .total_number{font-size:14px;color:var(--body-text-color);}
|
|
| 59 |
+.search_left .total_number b{font-size:16px;font-weight:bold;color:var(--primary-color);}
|
|
| 60 |
+.search_right{display:flex;gap:10px;}
|
|
| 61 |
+.search_select{min-width:120px;}
|
|
| 62 |
+.search_input{min-width:150px;}
|
|
| 63 |
+.search_right button{height:34px;padding:0 12px;font-size:16px;font-weight:400;}
|
|
| 64 |
+.search_right .btn_search{background:var(--primary-color);color:#fff;}
|
|
| 65 |
+.search_right .btn_reset{background:var(--gray-color);color:#fff;}
|
|
| 66 |
+ |
|
| 67 |
+/* 상태 */ |
|
| 68 |
+.status{min-height:34px;font-size:16px;font-weight:500;border-radius:100px;padding:3px 12px;}
|
|
| 69 |
+ |
|
| 70 |
+.status.line.blue{border:1px solid #135add;color:#135add;}
|
|
| 71 |
+.status.line.gray{border:1px solid #d1d6df;color:#858B97;background:#eff0f2;}
|
|
| 72 |
+ |
|
| 73 |
+.status.text{position:relative;padding:0;}
|
|
| 74 |
+.status.text::after{position:absolute;content:"";width:100%;height:5px;opacity:0.2;left:0;bottom:2px;}
|
|
| 75 |
+.status.text.blue{color:#135add;}
|
|
| 76 |
+.status.text.blue::after{background:#135add;}
|
|
| 77 |
+.status.text.gray{color:#858B97;}
|
|
| 78 |
+.status.text.gray::after{background:#858B97;}
|
|
| 79 |
+ |
|
| 80 |
+.file_list{display:flex;flex-direction:column;gap:4px;}
|
|
| 81 |
+.file_list a{display:flex;gap:4px;align-items:center;}
|
|
| 82 |
+ |
|
| 83 |
+.file_list.box{padding:15px 35px;margin:40px 0 0 0;background:#f5f7f9;border-radius:15px;gap:10px;}
|
|
| 84 |
+.file_list.box a{gap:8px;font-size:18px;color:var(--body-text-color);text-decoration:none;}
|
|
| 85 |
+ |
|
| 86 |
+/* 공지사항 - 상세 */ |
|
| 87 |
+.board_wrap{border-top:2px solid #000;margin:0 0 30px 0;}
|
|
| 88 |
+.board_top{display:flex;padding:30px;border-bottom:1px solid #e2e7ef;gap:15px;flex-direction:column;}
|
|
| 89 |
+.board_title{font-size:25px;font-weight:700;color:var(--primary-title-color);}
|
|
| 90 |
+.board_info{display:flex;font-size:16px;font-weight:400;color:var(--body-text-color);align-items:center;gap:20px;}
|
|
| 91 |
+.board_info li{display:flex;align-items:center;}
|
|
| 92 |
+.board_cont{font-size:18px;padding:45px 30px;line-height:1.5;border-bottom:1px solid #e2e7ef;}
|
|
| 93 |
+.board_cont a{text-decoration:underline;text-underline-offset:3px;}
|
|
| 94 |
+.view_more{border-top:2px solid #000;margin:50px 0 0 0;}
|
|
| 95 |
+.view_more li{padding:20px 30px;font-size:16px;color:#25272a;border-bottom:1px solid #e2e7ef;}
|
|
| 96 |
+.view_more .none *{opacity:0.5;}
|
|
| 97 |
+.view_more span{display:inline-flex;font-weight:500;align-items:center;gap:8px;}
|
|
| 98 |
+.view_more a{width:calc(100% - 100px);margin:0 0 0 20px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;vertical-align:bottom;}
|
|
| 99 |
+ |
|
| 100 |
+/* FAQ */ |
|
| 101 |
+.faq_wrap{display:flex;border-top:2px solid #000;margin:12px 0 0 0;flex-direction:column;}
|
|
| 102 |
+.faq_wrap li{border-bottom:1px solid #E2E7EF;}
|
|
| 103 |
+.question,.answer{display:flex;width:100%;padding:10px 0;font-size:18px;line-height:1.5;align-items:flex-start;}
|
|
| 104 |
+.question em,.answer em{display:inline-block;width:100px;font-family: 'S-Core Dream';font-size:24px;font-weight:700;text-align:center;}
|
|
| 105 |
+.question span:not(.visuall-hidden),.answer span:not(.visuall-hidden){width:calc(100% - 100px);text-align:left;margin:4px 0 0 0;}
|
|
| 106 |
+.question em{color:var(--primary-color);}
|
|
| 107 |
+.question{background:url(/publish/usr/images/component/icon_arrow_down_blue.png) no-repeat calc(100% - 16px) center;}
|
|
| 108 |
+.question.active{background:url(/publish/usr/images/component/icon_arrow_up_blue.png) no-repeat calc(100% - 16px) center;}
|
|
| 109 |
+.answer{padding:34px 26px 34px 0;background:#F5F7F9;border-top:1px solid #E2E7EF;}
|
|
| 110 |
+.answer em{color:var(--accent-color);}
|
|
| 111 |
+ |
|
| 112 |
+/* 갤러리 리스트 */ |
|
| 113 |
+.gallery_list{display:flex;margin:12px 0 0 0;gap:20px;flex-wrap:wrap;}
|
|
| 114 |
+.gallery_list>li{width:calc((100%/3) - 14px);}
|
|
| 115 |
+.gallery_list a{border:1px solid #E2E7EF;}
|
|
| 116 |
+.gallery_list .images_area{display:flex;width:100%;height:180px;background:#f2f4f7;overflow:hidden;justify-content:center;align-items:center;}
|
|
| 117 |
+.gallery_list .images_area img{max-width:100%;max-height:100%;object-fit:contain;}
|
|
| 118 |
+.gallery_list .list_content{padding:20px;}
|
|
| 119 |
+.gallery_list .list_title{ text-overflow: ellipsis;overflow: hidden;display: -webkit-box;-webkit-box-orient: vertical;-webkit-line-clamp: 2;font-size:18px;font-weight:600;color:var(--primary-title-color);}
|
|
| 120 |
+.gallery_list .list_info{display:flex;font-size:14px;font-weight:400;color:#636469;margin:20px 0 0 0;}
|
|
| 121 |
+.gallery_list .list_info li{position:relative;padding:0 10px;}
|
|
| 122 |
+.gallery_list .list_info li:first-child{padding:0 10px 0 0;}
|
|
| 123 |
+.gallery_list .list_info li::after{position:absolute;content:"";width:1px;height:10px;background:#636469;right:0;top:6px;}
|
|
| 120 | 124 |
.gallery_list .list_info li:last-child::after{display:none;} (No newline at end of file)
|
--- src/main/webapp/publish/usr/css/tab.css
+++ src/main/webapp/publish/usr/css/tab.css
... | ... | @@ -1,18 +1,18 @@ |
| 1 |
-@charset "utf-8"; |
|
| 2 |
- |
|
| 3 |
-.tabs{display:flex;width:100%;margin:0 0 30px 0;}
|
|
| 4 |
- |
|
| 5 |
-.tabs.tab02 li{width:calc(100%/2);}
|
|
| 6 |
-.tabs.tab03 li{width:calc(100%/3);}
|
|
| 7 |
-.tabs.tab04 li{width:calc(100%/4);}
|
|
| 8 |
-.tabs.tab05 li{width:calc(100%/5);}
|
|
| 9 |
-.tabs.tab06 li{width:calc(100%/6);}
|
|
| 10 |
- |
|
| 11 |
-.tabs.fill .tab{width:100%;height:60px;font-size:20px;font-weight:500;border:1px solid #d1d6df;border-right:0;color:#838994;}
|
|
| 12 |
-.tabs.fill .tab.active{border:1px solid var(--primary-color);background:var(--primary-lighter-color);color:var(--primary-color);}
|
|
| 13 |
-.tabs.fill :first-child .tab{border-radius:8px 0 0 8px;}
|
|
| 14 |
-.tabs.fill :last-child .tab{border-radius:0 8px 8px 0;border-right:1px solid #d1d6df;}
|
|
| 15 |
-.tabs.fill :last-child .tab.active{border:1px solid var(--primary-color);}
|
|
| 16 |
- |
|
| 17 |
-.tab_content{display:none;}
|
|
| 1 |
+@charset "utf-8"; |
|
| 2 |
+ |
|
| 3 |
+.tabs{display:flex;width:100%;margin:0 0 30px 0;}
|
|
| 4 |
+ |
|
| 5 |
+.tabs.tab02 li{width:calc(100%/2);}
|
|
| 6 |
+.tabs.tab03 li{width:calc(100%/3);}
|
|
| 7 |
+.tabs.tab04 li{width:calc(100%/4);}
|
|
| 8 |
+.tabs.tab05 li{width:calc(100%/5);}
|
|
| 9 |
+.tabs.tab06 li{width:calc(100%/6);}
|
|
| 10 |
+ |
|
| 11 |
+.tabs.fill .tab{width:100%;height:60px;font-size:20px;font-weight:500;border:1px solid #d1d6df;border-right:0;color:#838994;}
|
|
| 12 |
+.tabs.fill .tab.active{border:1px solid var(--primary-color);background:var(--primary-lighter-color);color:var(--primary-color);}
|
|
| 13 |
+.tabs.fill :first-child .tab{border-radius:8px 0 0 8px;}
|
|
| 14 |
+.tabs.fill :last-child .tab{border-radius:0 8px 8px 0;border-right:1px solid #d1d6df;}
|
|
| 15 |
+.tabs.fill :last-child .tab.active{border:1px solid var(--primary-color);}
|
|
| 16 |
+ |
|
| 17 |
+.tab_content{display:none;}
|
|
| 18 | 18 |
.tab_content.active{display:block;} (No newline at end of file)
|
--- src/main/webapp/publish/usr/css/table.css
+++ src/main/webapp/publish/usr/css/table.css
... | ... | @@ -1,36 +1,36 @@ |
| 1 |
-@charset "utf-8"; |
|
| 2 |
- |
|
| 3 |
-.table{border-top:2px solid #000;}
|
|
| 4 |
-.table table{table-layout:fixed;width:100%;}
|
|
| 5 |
-.table .mobile_show,.table .mobile_hide{display:none;}
|
|
| 6 |
-.table .required{color:var(--red-color);margin:0 4px 0 0;}
|
|
| 7 |
- |
|
| 8 |
-.table_type_cols{margin:12px 0 0 0;}
|
|
| 9 |
-.table_type_cols tr{border-bottom:1px solid #e2e7ef;}
|
|
| 10 |
-.table_type_cols th,.table_type_cols td{padding:4px 8px;font-size:16px;text-align:center;box-sizing:border-box;}
|
|
| 11 |
-.table_type_cols thead>tr>th{height:60px;font-weight:500;color:#25272A;}
|
|
| 12 |
-.table_type_cols tbody>tr>td{height:50px;font-weight:400;color:#444;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;}
|
|
| 13 |
-.table_type_cols .text_left a{width:100%;text-align:left;}
|
|
| 14 |
- |
|
| 15 |
- |
|
| 16 |
-.table_type_rows{margin:30px 0;}
|
|
| 17 |
-.table_type_rows tr{border-bottom:1px solid #e2e7ef;}
|
|
| 18 |
-.table_type_rows tbody>tr>th,.table_type_rows tbody>tr>td{height:50px;padding:12px 20px;font-size:16px;color:#25272A;box-sizing:border-box;}
|
|
| 19 |
-.table_type_rows tbody>tr>th{text-align:center;font-weight:500;background:#F2F3F5;}
|
|
| 20 |
-.table_type_rows tbody>tr>td{text-align:left;font-weight:400;}
|
|
| 21 |
- |
|
| 22 |
-.file_top{display:flex;justify-content:space-between;align-items:flex-end;}
|
|
| 23 |
-.file_table{height:150px;margin:12px 0 0 0;border:1px solid var(--lightgray-color);border-radius:8px;}
|
|
| 24 |
-.file_table table{table-layout:fixed;width:100%;border-collapse: collapse;}
|
|
| 25 |
-.file_table tbody{width:100%;max-height:150px;overflow-y:auto;}
|
|
| 26 |
-.file_table th{height:36px;font-size:14px;color:#222;padding:0 8px;text-align:center;}
|
|
| 27 |
-.file_table tbody>tr>td{height:36px;font-size:14px;color:#444;padding:0 8px;text-align:center;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;}
|
|
| 28 |
- |
|
| 29 |
-.file_table.before_file_table table{height:100%;}
|
|
| 30 |
-.file_table.before_file_table thead{opacity:0.3;}
|
|
| 31 |
-.file_table.before_file_table tbody{background:#EFF0F4;}
|
|
| 32 |
-.file_table.before_file_table tbody tr{height:100%;border:0;text-align:center;}
|
|
| 33 |
-.file_table.before_file_table p{font-size:14px;}
|
|
| 34 |
-.file_table.before_file_table b{color:var(--primary-color);}
|
|
| 35 |
- |
|
| 36 |
- |
|
| 1 |
+@charset "utf-8"; |
|
| 2 |
+ |
|
| 3 |
+.table{border-top:2px solid #000;}
|
|
| 4 |
+.table table{table-layout:fixed;width:100%;}
|
|
| 5 |
+.table .mobile_show,.table .mobile_hide{display:none;}
|
|
| 6 |
+.table .required{color:var(--red-color);margin:0 4px 0 0;}
|
|
| 7 |
+ |
|
| 8 |
+.table_type_cols{margin:12px 0 0 0;}
|
|
| 9 |
+.table_type_cols tr{border-bottom:1px solid #e2e7ef;}
|
|
| 10 |
+.table_type_cols th,.table_type_cols td{padding:4px 8px;font-size:16px;text-align:center;box-sizing:border-box;}
|
|
| 11 |
+.table_type_cols thead>tr>th{height:60px;font-weight:500;color:#25272A;}
|
|
| 12 |
+.table_type_cols tbody>tr>td{height:50px;font-weight:400;color:#444;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;}
|
|
| 13 |
+.table_type_cols .text_left a{width:100%;text-align:left;}
|
|
| 14 |
+ |
|
| 15 |
+ |
|
| 16 |
+.table_type_rows{margin:30px 0;}
|
|
| 17 |
+.table_type_rows tr{border-bottom:1px solid #e2e7ef;}
|
|
| 18 |
+.table_type_rows tbody>tr>th,.table_type_rows tbody>tr>td{height:50px;padding:12px 20px;font-size:16px;color:#25272A;box-sizing:border-box;}
|
|
| 19 |
+.table_type_rows tbody>tr>th{text-align:center;font-weight:500;background:#F2F3F5;}
|
|
| 20 |
+.table_type_rows tbody>tr>td{text-align:left;font-weight:400;}
|
|
| 21 |
+ |
|
| 22 |
+.file_top{display:flex;justify-content:space-between;align-items:flex-end;}
|
|
| 23 |
+.file_table{height:150px;margin:12px 0 0 0;border:1px solid var(--lightgray-color);border-radius:8px;}
|
|
| 24 |
+.file_table table{table-layout:fixed;width:100%;border-collapse: collapse;}
|
|
| 25 |
+.file_table tbody{width:100%;max-height:150px;overflow-y:auto;}
|
|
| 26 |
+.file_table th{height:36px;font-size:14px;color:#222;padding:0 8px;text-align:center;}
|
|
| 27 |
+.file_table tbody>tr>td{height:36px;font-size:14px;color:#444;padding:0 8px;text-align:center;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;}
|
|
| 28 |
+ |
|
| 29 |
+.file_table.before_file_table table{height:100%;}
|
|
| 30 |
+.file_table.before_file_table thead{opacity:0.3;}
|
|
| 31 |
+.file_table.before_file_table tbody{background:#EFF0F4;}
|
|
| 32 |
+.file_table.before_file_table tbody tr{height:100%;border:0;text-align:center;}
|
|
| 33 |
+.file_table.before_file_table p{font-size:14px;}
|
|
| 34 |
+.file_table.before_file_table b{color:var(--primary-color);}
|
|
| 35 |
+ |
|
| 36 |
+ |
--- src/main/webapp/publish/usr/guide/guide.css
+++ src/main/webapp/publish/usr/guide/guide.css
... | ... | @@ -1,86 +1,86 @@ |
| 1 |
-/* =============================== |
|
| 2 |
- IMPORTS |
|
| 3 |
-=============================== */ |
|
| 4 |
-@import url(../../../css/reset.css); |
|
| 5 |
-@import url(../css/common.css); |
|
| 6 |
-@import url(../css/button.css); |
|
| 7 |
-@import url(../css/style.css); |
|
| 8 |
- |
|
| 9 |
- |
|
| 10 |
-body{font-family:'Pretendard','Noto Sans KR',sans-serif;background:#f5f6fa;color:#333;}
|
|
| 11 |
- |
|
| 12 |
-/* =============================== |
|
| 13 |
- GUIDE WRAP & SECTIONS |
|
| 14 |
-=============================== */ |
|
| 15 |
-.guide_wrap{max-width:1200px;margin:60px auto;background:#fff;border-radius:16px;box-shadow:0 4px 10px rgba(0,0,0,0.08);padding:40px 50px;}
|
|
| 16 |
-.guide_wrap h1{font-size:26px;margin-bottom:25px;font-weight:700;color:#222;}
|
|
| 17 |
- |
|
| 18 |
-.guide_section{margin:60px 0;}
|
|
| 19 |
-.guide_section h2{font-size:22px;font-weight:600;}
|
|
| 20 |
-.guide_section h3{font-size:20px;font-weight:500;color:#0072ff;margin:40px 0 12px 0;}
|
|
| 21 |
- |
|
| 22 |
-/* =============================== |
|
| 23 |
- GUIDE INFO |
|
| 24 |
-=============================== */ |
|
| 25 |
-.guide_info{background:#fafafa;border:1px solid #eee;padding:15px 20px;border-radius:10px;margin-bottom:25px;}
|
|
| 26 |
-.guide_info ul{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:15px 30px;}
|
|
| 27 |
- |
|
| 28 |
-/* =============================== |
|
| 29 |
- FILTER BUTTONS |
|
| 30 |
-=============================== */ |
|
| 31 |
-.filter_wrap{margin-bottom:15px;display:flex;gap:8px;}
|
|
| 32 |
-.filter_btn{padding:8px 16px;border:1px solid #ccc;background:#fff;border-radius:6px;font-size:14px;cursor:pointer;transition:.2s;}
|
|
| 33 |
-.filter_btn:hover{background:#f0f0f0;}
|
|
| 34 |
-.filter_btn.active{background:#0072ff;border-color:#0072ff;color:#fff;}
|
|
| 35 |
- |
|
| 36 |
-/* =============================== |
|
| 37 |
- TABLE GUIDE |
|
| 38 |
-=============================== */ |
|
| 39 |
-.tb_guide{width:100%;border-collapse:collapse;font-size:14px;}
|
|
| 40 |
-.tb_guide th,.tb_guide td{border:1px solid #ddd;padding:10px 12px;text-align:center;}
|
|
| 41 |
-.tb_guide th{background:#f9f9f9;font-weight:600;}
|
|
| 42 |
-.tb_guide a{color:#0072ff;text-decoration:none;}
|
|
| 43 |
-.tb_guide a:hover{text-decoration:underline;}
|
|
| 44 |
- |
|
| 45 |
-/* STATUS COLORS */ |
|
| 46 |
-.done{color:#198754;font-weight:600;}
|
|
| 47 |
-.ing{color:#e67e22;font-weight:600;}
|
|
| 48 |
-.wait{color:#aaa;font-weight:600;}
|
|
| 49 |
- |
|
| 50 |
-/* =============================== |
|
| 51 |
- BUTTON GUIDE |
|
| 52 |
-=============================== */ |
|
| 53 |
-.btn_wrap{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:25px;justify-content:flex-start;}
|
|
| 54 |
-.btn{border-radius:6px;font-size:14px;cursor:pointer;font-weight:500;border:none;transition:.2s;}
|
|
| 55 |
-.btn_default{background:#fff;border:1px solid #ccc;color:#333;}.btn_default:hover{background:#f8f8f8;}
|
|
| 56 |
-.btn_primary{background:#0072ff;color:#fff;}.btn_primary:hover{background:#005edc;}
|
|
| 57 |
-.btn_danger{background:#e74c3c;color:#fff;}.btn_danger:hover{background:#c0392b;}
|
|
| 58 |
-.btn_warning{background:#f39c12;color:#fff;}.btn_warning:hover{background:#e67e22;}
|
|
| 59 |
-.btn_sub{background:#6c757d;color:#fff;}.btn_sub:hover{background:#5a6268;}
|
|
| 60 |
-.btn_sm{padding:5px 10px;font-size:13px;}.btn_md{padding:8px 16px;font-size:14px;}.btn_lg{padding:12px 24px;font-size:16px;}
|
|
| 61 |
- |
|
| 62 |
-/* =============================== |
|
| 63 |
- FORM ELEMENTS |
|
| 64 |
-=============================== */ |
|
| 65 |
-.form_wrap{display:flex;flex-direction:column;gap:10px;margin-bottom:25px;}
|
|
| 66 |
-input[type="text"],input[type="email"],input[type="password"],textarea,select{border:1px solid #ccc;border-radius:6px;padding:8px 12px;font-size:14px;width:100%;transition:.2s;}
|
|
| 67 |
-input:focus,textarea:focus,select:focus{border-color:#0072ff;box-shadow:0 0 0 2px rgba(0,114,255,0.1);outline:none;}
|
|
| 68 |
-textarea{min-height:100px;resize:vertical;}
|
|
| 69 |
- |
|
| 70 |
-.form_wrap.email_wrap{gap:8px;justify-content:flex-start;flex-direction:row;}
|
|
| 71 |
-.form_wrap.radio_wrap, .form_wrap.checkbox_wrap{flex-direction:row;}
|
|
| 72 |
-.form_wrap .input_post{width:calc(48% - 105px);}
|
|
| 73 |
- |
|
| 74 |
-/* =============================== |
|
| 75 |
- COLOR GUIDE |
|
| 76 |
-=============================== */ |
|
| 77 |
-.color_guide{display:flex;flex-wrap:wrap;gap:12px;}
|
|
| 78 |
-.color_box{width:120px;border-radius:6px;overflow:hidden;text-align:center;font-size:12px;border:1px solid #ddd;}
|
|
| 79 |
-.color_box .sample{height:50px;}.color_box .code{padding:6px;background:#fafafa;}
|
|
| 80 |
-.status_wrap{margin:60px 0 0 0;}
|
|
| 81 |
-.status_wrap span{margin:0 16px 0 0;}
|
|
| 82 |
- |
|
| 83 |
-/* =============================== |
|
| 84 |
- RESPONSIVE |
|
| 85 |
-=============================== */ |
|
| 86 |
-@media (max-width:768px){.guide_wrap{padding:20px;}.guide_info ul{flex-direction:column;}.tb_guide th,.tb_guide td{font-size:12px;padding:8px;}}
|
|
| 1 |
+/* =============================== |
|
| 2 |
+ IMPORTS |
|
| 3 |
+=============================== */ |
|
| 4 |
+@import url(../../../css/reset.css); |
|
| 5 |
+@import url(../css/common.css); |
|
| 6 |
+@import url(../css/button.css); |
|
| 7 |
+@import url(../css/style.css); |
|
| 8 |
+ |
|
| 9 |
+ |
|
| 10 |
+body{font-family:'Pretendard','Noto Sans KR',sans-serif;background:#f5f6fa;color:#333;}
|
|
| 11 |
+ |
|
| 12 |
+/* =============================== |
|
| 13 |
+ GUIDE WRAP & SECTIONS |
|
| 14 |
+=============================== */ |
|
| 15 |
+.guide_wrap{max-width:1200px;margin:60px auto;background:#fff;border-radius:16px;box-shadow:0 4px 10px rgba(0,0,0,0.08);padding:40px 50px;}
|
|
| 16 |
+.guide_wrap h1{font-size:26px;margin-bottom:25px;font-weight:700;color:#222;}
|
|
| 17 |
+ |
|
| 18 |
+.guide_section{margin:60px 0;}
|
|
| 19 |
+.guide_section h2{font-size:22px;font-weight:600;}
|
|
| 20 |
+.guide_section h3{font-size:20px;font-weight:500;color:#0072ff;margin:40px 0 12px 0;}
|
|
| 21 |
+ |
|
| 22 |
+/* =============================== |
|
| 23 |
+ GUIDE INFO |
|
| 24 |
+=============================== */ |
|
| 25 |
+.guide_info{background:#fafafa;border:1px solid #eee;padding:15px 20px;border-radius:10px;margin-bottom:25px;}
|
|
| 26 |
+.guide_info ul{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:15px 30px;}
|
|
| 27 |
+ |
|
| 28 |
+/* =============================== |
|
| 29 |
+ FILTER BUTTONS |
|
| 30 |
+=============================== */ |
|
| 31 |
+.filter_wrap{margin-bottom:15px;display:flex;gap:8px;}
|
|
| 32 |
+.filter_btn{padding:8px 16px;border:1px solid #ccc;background:#fff;border-radius:6px;font-size:14px;cursor:pointer;transition:.2s;}
|
|
| 33 |
+.filter_btn:hover{background:#f0f0f0;}
|
|
| 34 |
+.filter_btn.active{background:#0072ff;border-color:#0072ff;color:#fff;}
|
|
| 35 |
+ |
|
| 36 |
+/* =============================== |
|
| 37 |
+ TABLE GUIDE |
|
| 38 |
+=============================== */ |
|
| 39 |
+.tb_guide{width:100%;border-collapse:collapse;font-size:14px;}
|
|
| 40 |
+.tb_guide th,.tb_guide td{border:1px solid #ddd;padding:10px 12px;text-align:center;}
|
|
| 41 |
+.tb_guide th{background:#f9f9f9;font-weight:600;}
|
|
| 42 |
+.tb_guide a{color:#0072ff;text-decoration:none;}
|
|
| 43 |
+.tb_guide a:hover{text-decoration:underline;}
|
|
| 44 |
+ |
|
| 45 |
+/* STATUS COLORS */ |
|
| 46 |
+.done{color:#198754;font-weight:600;}
|
|
| 47 |
+.ing{color:#e67e22;font-weight:600;}
|
|
| 48 |
+.wait{color:#aaa;font-weight:600;}
|
|
| 49 |
+ |
|
| 50 |
+/* =============================== |
|
| 51 |
+ BUTTON GUIDE |
|
| 52 |
+=============================== */ |
|
| 53 |
+.btn_wrap{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:25px;justify-content:flex-start;}
|
|
| 54 |
+.btn{border-radius:6px;font-size:14px;cursor:pointer;font-weight:500;border:none;transition:.2s;}
|
|
| 55 |
+.btn_default{background:#fff;border:1px solid #ccc;color:#333;}.btn_default:hover{background:#f8f8f8;}
|
|
| 56 |
+.btn_primary{background:#0072ff;color:#fff;}.btn_primary:hover{background:#005edc;}
|
|
| 57 |
+.btn_danger{background:#e74c3c;color:#fff;}.btn_danger:hover{background:#c0392b;}
|
|
| 58 |
+.btn_warning{background:#f39c12;color:#fff;}.btn_warning:hover{background:#e67e22;}
|
|
| 59 |
+.btn_sub{background:#6c757d;color:#fff;}.btn_sub:hover{background:#5a6268;}
|
|
| 60 |
+.btn_sm{padding:5px 10px;font-size:13px;}.btn_md{padding:8px 16px;font-size:14px;}.btn_lg{padding:12px 24px;font-size:16px;}
|
|
| 61 |
+ |
|
| 62 |
+/* =============================== |
|
| 63 |
+ FORM ELEMENTS |
|
| 64 |
+=============================== */ |
|
| 65 |
+.form_wrap{display:flex;flex-direction:column;gap:10px;margin-bottom:25px;}
|
|
| 66 |
+input[type="text"],input[type="email"],input[type="password"],textarea,select{border:1px solid #ccc;border-radius:6px;padding:8px 12px;font-size:14px;width:100%;transition:.2s;}
|
|
| 67 |
+input:focus,textarea:focus,select:focus{border-color:#0072ff;box-shadow:0 0 0 2px rgba(0,114,255,0.1);outline:none;}
|
|
| 68 |
+textarea{min-height:100px;resize:vertical;}
|
|
| 69 |
+ |
|
| 70 |
+.form_wrap.email_wrap{gap:8px;justify-content:flex-start;flex-direction:row;}
|
|
| 71 |
+.form_wrap.radio_wrap, .form_wrap.checkbox_wrap{flex-direction:row;}
|
|
| 72 |
+.form_wrap .input_post{width:calc(48% - 105px);}
|
|
| 73 |
+ |
|
| 74 |
+/* =============================== |
|
| 75 |
+ COLOR GUIDE |
|
| 76 |
+=============================== */ |
|
| 77 |
+.color_guide{display:flex;flex-wrap:wrap;gap:12px;}
|
|
| 78 |
+.color_box{width:120px;border-radius:6px;overflow:hidden;text-align:center;font-size:12px;border:1px solid #ddd;}
|
|
| 79 |
+.color_box .sample{height:50px;}.color_box .code{padding:6px;background:#fafafa;}
|
|
| 80 |
+.status_wrap{margin:60px 0 0 0;}
|
|
| 81 |
+.status_wrap span{margin:0 16px 0 0;}
|
|
| 82 |
+ |
|
| 83 |
+/* =============================== |
|
| 84 |
+ RESPONSIVE |
|
| 85 |
+=============================== */ |
|
| 86 |
+@media (max-width:768px){.guide_wrap{padding:20px;}.guide_info ul{flex-direction:column;}.tb_guide th,.tb_guide td{font-size:12px;padding:8px;}}
|
--- src/main/webapp/publish/usr/guide/guide.html
+++ src/main/webapp/publish/usr/guide/guide.html
... | ... | @@ -1,301 +1,301 @@ |
| 1 |
-<!DOCTYPE html> |
|
| 2 |
-<html lang="ko"> |
|
| 3 |
- |
|
| 4 |
-<head> |
|
| 5 |
- <meta charset="UTF-8" /> |
|
| 6 |
- <title>퍼블리싱 가이드 | 베이스 프로젝트 제작</title> |
|
| 7 |
- <link rel="stylesheet" href="./guide.css" /> |
|
| 8 |
- <script src="https://code.jquery.com/jquery-3.7.1.min.js"></script> |
|
| 9 |
- <script src="./guide.js"></script> |
|
| 10 |
-</head> |
|
| 11 |
- |
|
| 12 |
-<body> |
|
| 13 |
- <div class="guide_wrap"> |
|
| 14 |
- <h1>퍼블리싱 가이드</h1> |
|
| 15 |
- |
|
| 16 |
- <div class="guide_info"> |
|
| 17 |
- <ul> |
|
| 18 |
- <li><strong>프로젝트명 :</strong> 베이스 프로젝트 제작</li> |
|
| 19 |
- <li><strong>담당자 :</strong> 정수빈</li> |
|
| 20 |
- <li><strong>작성일 :</strong> 2025-11-07</li> |
|
| 21 |
- <li><strong>파일경로 :</strong> /publish/</li> |
|
| 22 |
- </ul> |
|
| 23 |
- </div> |
|
| 24 |
- |
|
| 25 |
- <div class="filter_wrap"> |
|
| 26 |
- <button class="filter_btn active" data-filter="all">전체보기</button> |
|
| 27 |
- <button class="filter_btn" data-filter="done">완료</button> |
|
| 28 |
- <button class="filter_btn" data-filter="ing">작업중</button> |
|
| 29 |
- <button class="filter_btn" data-filter="wait">대기</button> |
|
| 30 |
- </div> |
|
| 31 |
- |
|
| 32 |
- <table class="tb_guide"> |
|
| 33 |
- <thead> |
|
| 34 |
- <tr> |
|
| 35 |
- <th scope="col">No</th> |
|
| 36 |
- <th scope="col">1Depth</th> |
|
| 37 |
- <th scope="col">2Depth</th> |
|
| 38 |
- <th scope="col">페이지명</th> |
|
| 39 |
- <th scope="col">파일명</th> |
|
| 40 |
- <th scope="col">상태</th> |
|
| 41 |
- <th scope="col">비고</th> |
|
| 42 |
- </tr> |
|
| 43 |
- </thead> |
|
| 44 |
- <tbody> |
|
| 45 |
- |
|
| 46 |
- <tr> |
|
| 47 |
- <td></td> |
|
| 48 |
- <td>공통</td> |
|
| 49 |
- <td>-</td> |
|
| 50 |
- <td><a href="../layout/_header.html" target="_blank" title="새창 열림">헤더</a></td> |
|
| 51 |
- <td>/layout/_header.html</td> |
|
| 52 |
- <td class="ing">작업중</td> |
|
| 53 |
- <td>-</td> |
|
| 54 |
- </tr> |
|
| 55 |
- |
|
| 56 |
- <tr> |
|
| 57 |
- <td></td> |
|
| 58 |
- <td>공통</td> |
|
| 59 |
- <td>-</td> |
|
| 60 |
- <td><a href="../layout/_footer.html" target="_blank" title="새창 열림">푸터</a></td> |
|
| 61 |
- <td>/layout/_footer.html</td> |
|
| 62 |
- <td class="done">완료</td> |
|
| 63 |
- <td>-</td> |
|
| 64 |
- </tr> |
|
| 65 |
- |
|
| 66 |
- <tr> |
|
| 67 |
- <td></td> |
|
| 68 |
- <td>공통</td> |
|
| 69 |
- <td>-</td> |
|
| 70 |
- <td><a href="../layout/_sidemenu.html" target="_blank" title="새창 열림">사이드메뉴</a></td> |
|
| 71 |
- <td>/layout/_sidemenu.html</td> |
|
| 72 |
- <td class="done">완료</td> |
|
| 73 |
- <td>-</td> |
|
| 74 |
- </tr> |
|
| 75 |
- |
|
| 76 |
- <tr> |
|
| 77 |
- <td></td> |
|
| 78 |
- <td>공통</td> |
|
| 79 |
- <td>-</td> |
|
| 80 |
- <td><a href="../layout/_sub_title.html" target="_blank" title="새창 열림">콘텐츠 타이틀</a></td> |
|
| 81 |
- <td>/layout/_sub_title.html</td> |
|
| 82 |
- <td class="done">완료</td> |
|
| 83 |
- <td>-</td> |
|
| 84 |
- </tr> |
|
| 85 |
- |
|
| 86 |
- <tr> |
|
| 87 |
- <td></td> |
|
| 88 |
- <td>메인</td> |
|
| 89 |
- <td>-</td> |
|
| 90 |
- <td><a href="../index.html" target="_blank" title="새창 열림">메인 페이지</a></td> |
|
| 91 |
- <td>main.html</td> |
|
| 92 |
- <td class="done">완료</td> |
|
| 93 |
- <td>-</td> |
|
| 94 |
- </tr> |
|
| 95 |
- |
|
| 96 |
- <tr> |
|
| 97 |
- <td></td> |
|
| 98 |
- <td>리스트</td> |
|
| 99 |
- <td>-</td> |
|
| 100 |
- <td><a href="../menu1/list.html" target="_blank" title="새창 열림">리스트</a></td> |
|
| 101 |
- <td>/menu1/list.html</td> |
|
| 102 |
- <td class="done">완료</td> |
|
| 103 |
- <td>-</td> |
|
| 104 |
- </tr> |
|
| 105 |
- |
|
| 106 |
- <tr> |
|
| 107 |
- <td></td> |
|
| 108 |
- <td>리스트 상세</td> |
|
| 109 |
- <td>-</td> |
|
| 110 |
- <td><a href="../menu1/list_view.html" target="_blank" title="새창 열림">리스트 상세</a></td> |
|
| 111 |
- <td>/menu1/list_view.html</td> |
|
| 112 |
- <td class="done">완료</td> |
|
| 113 |
- <td>-</td> |
|
| 114 |
- </tr> |
|
| 115 |
- |
|
| 116 |
- <tr> |
|
| 117 |
- <td></td> |
|
| 118 |
- <td>리스트 등록</td> |
|
| 119 |
- <td>-</td> |
|
| 120 |
- <td><a href="../menu1/list_reg.html" target="_blank" title="새창 열림">리스트 등록</a></td> |
|
| 121 |
- <td>/menu1/list_reg.html</td> |
|
| 122 |
- <td class="done">완료</td> |
|
| 123 |
- <td>-</td> |
|
| 124 |
- </tr> |
|
| 125 |
- |
|
| 126 |
- <tr> |
|
| 127 |
- <td></td> |
|
| 128 |
- <td>게시판 상세</td> |
|
| 129 |
- <td>-</td> |
|
| 130 |
- <td><a href="../menu1/board_view.html" target="_blank" title="새창 열림">게시판 상세</a></td> |
|
| 131 |
- <td>/menu1/board_view.html</td> |
|
| 132 |
- <td class="done">완료</td> |
|
| 133 |
- <td>-</td> |
|
| 134 |
- </tr> |
|
| 135 |
- |
|
| 136 |
- <tr> |
|
| 137 |
- <td></td> |
|
| 138 |
- <td>갤러리형 게시판</td> |
|
| 139 |
- <td>-</td> |
|
| 140 |
- <td><a href="../menu1/list_gallery.html" target="_blank" title="새창 열림">갤러리형 게시판</a></td> |
|
| 141 |
- <td>/menu1/list_gallery.html</td> |
|
| 142 |
- <td class="done">완료</td> |
|
| 143 |
- <td>-</td> |
|
| 144 |
- </tr> |
|
| 145 |
- |
|
| 146 |
- <tr> |
|
| 147 |
- <td></td> |
|
| 148 |
- <td>자주하는 질문</td> |
|
| 149 |
- <td>-</td> |
|
| 150 |
- <td><a href="../menu1/faq.html" target="_blank" title="새창 열림">자주하는 질문</a></td> |
|
| 151 |
- <td>/menu1/faq.html</td> |
|
| 152 |
- <td class="done">완료</td> |
|
| 153 |
- <td>-</td> |
|
| 154 |
- </tr> |
|
| 155 |
- |
|
| 156 |
- </tbody> |
|
| 157 |
- </table> |
|
| 158 |
- |
|
| 159 |
- <!-- BUTTON --> |
|
| 160 |
- <section class="guide_section"> |
|
| 161 |
- <h2>Button (버튼)</h2> |
|
| 162 |
- |
|
| 163 |
- <h3>Filled Button</h3> |
|
| 164 |
- <div class="btn_wrap"> |
|
| 165 |
- <button class="btn fill primary small">Primary</button> |
|
| 166 |
- <button class="btn fill secondary small">Secondary</button> |
|
| 167 |
- <button class="btn fill accent small">Accent</button> |
|
| 168 |
- <button class="btn fill red small">Red</button> |
|
| 169 |
- <button class="btn fill green small">Green</button> |
|
| 170 |
- <button class="btn fill gray small">Gray</button> |
|
| 171 |
- </div> |
|
| 172 |
- |
|
| 173 |
- <h3>Line Button</h3> |
|
| 174 |
- <div class="btn_wrap"> |
|
| 175 |
- <button class="btn line primary small">Primary</button> |
|
| 176 |
- <button class="btn line secondary small">Secondary</button> |
|
| 177 |
- <button class="btn line accent small">Accent</button> |
|
| 178 |
- <button class="btn line red small">Red</button> |
|
| 179 |
- <button class="btn line gray small">Gray</button> |
|
| 180 |
- </div> |
|
| 181 |
- |
|
| 182 |
- <h3>Size Variation</h3> |
|
| 183 |
- <div class="btn_wrap"> |
|
| 184 |
- <button class="btn fill gray xssmall">xssmall</button> |
|
| 185 |
- <button class="btn fill gray ssmall">ssmall</button> |
|
| 186 |
- <button class="btn fill gray small">small</button> |
|
| 187 |
- <button class="btn fill gray medium">medium</button> |
|
| 188 |
- <button class="btn fill gray large">large</button> |
|
| 189 |
- <button class="btn fill gray xlarge">xlarge</button> |
|
| 190 |
- </div> |
|
| 191 |
- </section> |
|
| 192 |
- |
|
| 193 |
- <!-- INPUT --> |
|
| 194 |
- <section class="guide_section"> |
|
| 195 |
- <h2>Input / Textarea / Select</h2> |
|
| 196 |
- |
|
| 197 |
- <h3>Input</h3> |
|
| 198 |
- <div class="form_wrap"> |
|
| 199 |
- <input type="text" class="input w50per" placeholder="제목을 입력해주세요."> |
|
| 200 |
- <span class="input_desc">* 필수입력 항목입니다.</span> |
|
| 201 |
- </div> |
|
| 202 |
- |
|
| 203 |
- <h3>Textarea</h3> |
|
| 204 |
- <div class="form_wrap"> |
|
| 205 |
- <textarea name="" id="" class="textarea w100per" rows="5"></textarea> |
|
| 206 |
- <div class="input_desc_wrap column"> |
|
| 207 |
- <span class="input_desc red">* 필수입력 항목입니다.</span> |
|
| 208 |
- <span class="input_desc blue">* 필수입력 항목입니다.</span> |
|
| 209 |
- </div> |
|
| 210 |
- </div> |
|
| 211 |
- |
|
| 212 |
- <h3>Email</h3> |
|
| 213 |
- <div class="form_wrap email_wrap"> |
|
| 214 |
- <input type="text" class="input email emain_id"><span class="text_split">@</span><input type="text" class="input email email_domain"> |
|
| 215 |
- <select name="" id="" class="select"> |
|
| 216 |
- <option value="">gmail.com</option> |
|
| 217 |
- <option value="">naver.com</option> |
|
| 218 |
- <option value="">kakao.com</option> |
|
| 219 |
- <option value="">직접입력</option> |
|
| 220 |
- </select> |
|
| 221 |
- </div> |
|
| 222 |
- |
|
| 223 |
- <h3>Address</h3> |
|
| 224 |
- <div class="form_wrap address_wrap"> |
|
| 225 |
- <div class="address_row"> |
|
| 226 |
- <input type="text" class="input input_post readonly" readonly><button type="button" class="btn medium line primary">우편번호 찾기</button> |
|
| 227 |
- </div> |
|
| 228 |
- <div class="address_row"> |
|
| 229 |
- <input type="text" class="input adr_default readonly" readonly> |
|
| 230 |
- <input type="text" class="input adr_detail"> |
|
| 231 |
- </div> |
|
| 232 |
- <span class="input_desc red">* 필수입력 항목입니다.</span> |
|
| 233 |
- </div> |
|
| 234 |
- </section> |
|
| 235 |
- |
|
| 236 |
- <!-- RADIO / CHECKBOX --> |
|
| 237 |
- <section class="guide_section"> |
|
| 238 |
- <h2>Checkbox / Radio</h2> |
|
| 239 |
- |
|
| 240 |
- <h3>Checkbox</h3> |
|
| 241 |
- <div class="form_wrap radio_wrap"> |
|
| 242 |
- <label for="man" class="radio_item"> |
|
| 243 |
- <input type="radio" name="jender" id="man"> |
|
| 244 |
- <span>남성</span> |
|
| 245 |
- </label> |
|
| 246 |
- <label for="woman" class="radio_item"> |
|
| 247 |
- <input type="radio" name="jender" id="woman"> |
|
| 248 |
- <span>여성</span> |
|
| 249 |
- </label> |
|
| 250 |
- <span class="input_desc red">* 필수입력 항목입니다.</span> |
|
| 251 |
- </div> |
|
| 252 |
- |
|
| 253 |
- <h3>Radio</h3> |
|
| 254 |
- <div class="form_wrap checkbox_wrap"> |
|
| 255 |
- <label for="check_all" class="checkbox_item"> |
|
| 256 |
- <input type="checkbox" name="check" id="check_all"> |
|
| 257 |
- <span>전체</span> |
|
| 258 |
- </label> |
|
| 259 |
- <label for="check_1" class="checkbox_item"> |
|
| 260 |
- <input type="checkbox" name="check" id="check_1"> |
|
| 261 |
- <span>항목1</span> |
|
| 262 |
- </label> |
|
| 263 |
- <label for="check_2" class="checkbox_item"> |
|
| 264 |
- <input type="checkbox" name="check" id="check_2"> |
|
| 265 |
- <span>항목2</span> |
|
| 266 |
- </label> |
|
| 267 |
- <label for="check_3" class="checkbox_item"> |
|
| 268 |
- <input type="checkbox" name="check" id="check_3"> |
|
| 269 |
- <span>항목3</span> |
|
| 270 |
- </label> |
|
| 271 |
- </div> |
|
| 272 |
- </section> |
|
| 273 |
- |
|
| 274 |
- <!-- STATUS --> |
|
| 275 |
- <section class="guide_section"> |
|
| 276 |
- <h2>Status</h2> |
|
| 277 |
- <div class="status_wrap"> |
|
| 278 |
- <span class="status line blue">진행중</span> |
|
| 279 |
- <span class="status line gray">완료</span> |
|
| 280 |
- <span class="status text blue">접수</span> |
|
| 281 |
- <span class="status text gray">마감</span> |
|
| 282 |
- </div> |
|
| 283 |
- </section> |
|
| 284 |
- |
|
| 285 |
- <!-- PAGINATION --> |
|
| 286 |
- <section class="guide_section"> |
|
| 287 |
- <h2>Pagination (페이지)</h2> |
|
| 288 |
- <div class="page"> |
|
| 289 |
- <a href="#" class="btn_page btn_first"><i></i></a> |
|
| 290 |
- <a href="#" class="btn_page btn_prev"><i></i></a> |
|
| 291 |
- <a href="#" class="active">1</a> |
|
| 292 |
- <a href="#">2</a> |
|
| 293 |
- <a href="#">3</a> |
|
| 294 |
- <a href="#" class="btn_page btn_next"><i></i></a> |
|
| 295 |
- <a href="#" class="btn_page btn_last"><i></i></a> |
|
| 296 |
- </div> |
|
| 297 |
- </section> |
|
| 298 |
- </div> |
|
| 299 |
-</body> |
|
| 300 |
- |
|
| 1 |
+<!DOCTYPE html> |
|
| 2 |
+<html lang="ko"> |
|
| 3 |
+ |
|
| 4 |
+<head> |
|
| 5 |
+ <meta charset="UTF-8" /> |
|
| 6 |
+ <title>퍼블리싱 가이드 | 베이스 프로젝트 제작</title> |
|
| 7 |
+ <link rel="stylesheet" href="./guide.css" /> |
|
| 8 |
+ <script src="https://code.jquery.com/jquery-3.7.1.min.js"></script> |
|
| 9 |
+ <script src="./guide.js"></script> |
|
| 10 |
+</head> |
|
| 11 |
+ |
|
| 12 |
+<body> |
|
| 13 |
+ <div class="guide_wrap"> |
|
| 14 |
+ <h1>퍼블리싱 가이드</h1> |
|
| 15 |
+ |
|
| 16 |
+ <div class="guide_info"> |
|
| 17 |
+ <ul> |
|
| 18 |
+ <li><strong>프로젝트명 :</strong> 베이스 프로젝트 제작</li> |
|
| 19 |
+ <li><strong>담당자 :</strong> 정수빈</li> |
|
| 20 |
+ <li><strong>작성일 :</strong> 2025-11-07</li> |
|
| 21 |
+ <li><strong>파일경로 :</strong> /publish_side/</li> |
|
| 22 |
+ </ul> |
|
| 23 |
+ </div> |
|
| 24 |
+ |
|
| 25 |
+ <div class="filter_wrap"> |
|
| 26 |
+ <button class="filter_btn active" data-filter="all">전체보기</button> |
|
| 27 |
+ <button class="filter_btn" data-filter="done">완료</button> |
|
| 28 |
+ <button class="filter_btn" data-filter="ing">작업중</button> |
|
| 29 |
+ <button class="filter_btn" data-filter="wait">대기</button> |
|
| 30 |
+ </div> |
|
| 31 |
+ |
|
| 32 |
+ <table class="tb_guide"> |
|
| 33 |
+ <thead> |
|
| 34 |
+ <tr> |
|
| 35 |
+ <th scope="col">No</th> |
|
| 36 |
+ <th scope="col">1Depth</th> |
|
| 37 |
+ <th scope="col">2Depth</th> |
|
| 38 |
+ <th scope="col">페이지명</th> |
|
| 39 |
+ <th scope="col">파일명</th> |
|
| 40 |
+ <th scope="col">상태</th> |
|
| 41 |
+ <th scope="col">비고</th> |
|
| 42 |
+ </tr> |
|
| 43 |
+ </thead> |
|
| 44 |
+ <tbody> |
|
| 45 |
+ |
|
| 46 |
+ <tr> |
|
| 47 |
+ <td></td> |
|
| 48 |
+ <td>공통</td> |
|
| 49 |
+ <td>-</td> |
|
| 50 |
+ <td><a href="../layout/_header.html" target="_blank" title="새창 열림">헤더</a></td> |
|
| 51 |
+ <td>/layout/_header.html</td> |
|
| 52 |
+ <td class="ing">작업중</td> |
|
| 53 |
+ <td>-</td> |
|
| 54 |
+ </tr> |
|
| 55 |
+ |
|
| 56 |
+ <tr> |
|
| 57 |
+ <td></td> |
|
| 58 |
+ <td>공통</td> |
|
| 59 |
+ <td>-</td> |
|
| 60 |
+ <td><a href="../layout/_footer.html" target="_blank" title="새창 열림">푸터</a></td> |
|
| 61 |
+ <td>/layout/_footer.html</td> |
|
| 62 |
+ <td class="done">완료</td> |
|
| 63 |
+ <td>-</td> |
|
| 64 |
+ </tr> |
|
| 65 |
+ |
|
| 66 |
+ <tr> |
|
| 67 |
+ <td></td> |
|
| 68 |
+ <td>공통</td> |
|
| 69 |
+ <td>-</td> |
|
| 70 |
+ <td><a href="../layout/_sidemenu.html" target="_blank" title="새창 열림">사이드메뉴</a></td> |
|
| 71 |
+ <td>/layout/_sidemenu.html</td> |
|
| 72 |
+ <td class="done">완료</td> |
|
| 73 |
+ <td>-</td> |
|
| 74 |
+ </tr> |
|
| 75 |
+ |
|
| 76 |
+ <tr> |
|
| 77 |
+ <td></td> |
|
| 78 |
+ <td>공통</td> |
|
| 79 |
+ <td>-</td> |
|
| 80 |
+ <td><a href="../layout/_sub_title.html" target="_blank" title="새창 열림">콘텐츠 타이틀</a></td> |
|
| 81 |
+ <td>/layout/_sub_title.html</td> |
|
| 82 |
+ <td class="done">완료</td> |
|
| 83 |
+ <td>-</td> |
|
| 84 |
+ </tr> |
|
| 85 |
+ |
|
| 86 |
+ <tr> |
|
| 87 |
+ <td></td> |
|
| 88 |
+ <td>메인</td> |
|
| 89 |
+ <td>-</td> |
|
| 90 |
+ <td><a href="../index.html" target="_blank" title="새창 열림">메인 페이지</a></td> |
|
| 91 |
+ <td>main.html</td> |
|
| 92 |
+ <td class="done">완료</td> |
|
| 93 |
+ <td>-</td> |
|
| 94 |
+ </tr> |
|
| 95 |
+ |
|
| 96 |
+ <tr> |
|
| 97 |
+ <td></td> |
|
| 98 |
+ <td>리스트</td> |
|
| 99 |
+ <td>-</td> |
|
| 100 |
+ <td><a href="../menu1/list.html" target="_blank" title="새창 열림">리스트</a></td> |
|
| 101 |
+ <td>/menu1/list.html</td> |
|
| 102 |
+ <td class="ing">작업중</td> |
|
| 103 |
+ <td>-</td> |
|
| 104 |
+ </tr> |
|
| 105 |
+ |
|
| 106 |
+ <tr> |
|
| 107 |
+ <td></td> |
|
| 108 |
+ <td>리스트 상세</td> |
|
| 109 |
+ <td>-</td> |
|
| 110 |
+ <td><a href="../menu1/list_view.html" target="_blank" title="새창 열림">리스트 상세</a></td> |
|
| 111 |
+ <td>/menu1/list_view.html</td> |
|
| 112 |
+ <td class="wait">대기</td> |
|
| 113 |
+ <td>-</td> |
|
| 114 |
+ </tr> |
|
| 115 |
+ |
|
| 116 |
+ <tr> |
|
| 117 |
+ <td></td> |
|
| 118 |
+ <td>리스트 등록</td> |
|
| 119 |
+ <td>-</td> |
|
| 120 |
+ <td><a href="../menu1/list_reg.html" target="_blank" title="새창 열림">리스트 등록</a></td> |
|
| 121 |
+ <td>/menu1/list.html</td> |
|
| 122 |
+ <td class="done">완료</td> |
|
| 123 |
+ <td>-</td> |
|
| 124 |
+ </tr> |
|
| 125 |
+ |
|
| 126 |
+ <tr> |
|
| 127 |
+ <td></td> |
|
| 128 |
+ <td>게시판 상세</td> |
|
| 129 |
+ <td>-</td> |
|
| 130 |
+ <td><a href="../menu1/board_view.html" target="_blank" title="새창 열림">게시판 상세</a></td> |
|
| 131 |
+ <td>/menu1/board_view.html</td> |
|
| 132 |
+ <td class="done">완료</td> |
|
| 133 |
+ <td>-</td> |
|
| 134 |
+ </tr> |
|
| 135 |
+ |
|
| 136 |
+ <tr> |
|
| 137 |
+ <td></td> |
|
| 138 |
+ <td>갤러리형 게시판</td> |
|
| 139 |
+ <td>-</td> |
|
| 140 |
+ <td><a href="../menu1/list_gallery.html" target="_blank" title="새창 열림">갤러리형 게시판</a></td> |
|
| 141 |
+ <td>/menu1/list_gallery.html</td> |
|
| 142 |
+ <td class="done">완료</td> |
|
| 143 |
+ <td>-</td> |
|
| 144 |
+ </tr> |
|
| 145 |
+ |
|
| 146 |
+ <tr> |
|
| 147 |
+ <td></td> |
|
| 148 |
+ <td>자주하는 질문</td> |
|
| 149 |
+ <td>-</td> |
|
| 150 |
+ <td><a href="../menu1/faq.html" target="_blank" title="새창 열림">자주하는 질문</a></td> |
|
| 151 |
+ <td>/menu1/faq.html</td> |
|
| 152 |
+ <td class="done">완료</td> |
|
| 153 |
+ <td>-</td> |
|
| 154 |
+ </tr> |
|
| 155 |
+ |
|
| 156 |
+ </tbody> |
|
| 157 |
+ </table> |
|
| 158 |
+ |
|
| 159 |
+ <!-- BUTTON --> |
|
| 160 |
+ <section class="guide_section"> |
|
| 161 |
+ <h2>Button (버튼)</h2> |
|
| 162 |
+ |
|
| 163 |
+ <h3>Filled Button</h3> |
|
| 164 |
+ <div class="btn_wrap"> |
|
| 165 |
+ <button class="btn fill primary small">Primary</button> |
|
| 166 |
+ <button class="btn fill secondary small">Secondary</button> |
|
| 167 |
+ <button class="btn fill accent small">Accent</button> |
|
| 168 |
+ <button class="btn fill red small">Red</button> |
|
| 169 |
+ <button class="btn fill green small">Green</button> |
|
| 170 |
+ <button class="btn fill gray small">Gray</button> |
|
| 171 |
+ </div> |
|
| 172 |
+ |
|
| 173 |
+ <h3>Line Button</h3> |
|
| 174 |
+ <div class="btn_wrap"> |
|
| 175 |
+ <button class="btn line primary small">Primary</button> |
|
| 176 |
+ <button class="btn line secondary small">Secondary</button> |
|
| 177 |
+ <button class="btn line accent small">Accent</button> |
|
| 178 |
+ <button class="btn line red small">Red</button> |
|
| 179 |
+ <button class="btn line gray small">Gray</button> |
|
| 180 |
+ </div> |
|
| 181 |
+ |
|
| 182 |
+ <h3>Size Variation</h3> |
|
| 183 |
+ <div class="btn_wrap"> |
|
| 184 |
+ <button class="btn fill gray xssmall">xssmall</button> |
|
| 185 |
+ <button class="btn fill gray ssmall">ssmall</button> |
|
| 186 |
+ <button class="btn fill gray small">small</button> |
|
| 187 |
+ <button class="btn fill gray medium">medium</button> |
|
| 188 |
+ <button class="btn fill gray large">large</button> |
|
| 189 |
+ <button class="btn fill gray xlarge">xlarge</button> |
|
| 190 |
+ </div> |
|
| 191 |
+ </section> |
|
| 192 |
+ |
|
| 193 |
+ <!-- INPUT --> |
|
| 194 |
+ <section class="guide_section"> |
|
| 195 |
+ <h2>Input / Textarea / Select</h2> |
|
| 196 |
+ |
|
| 197 |
+ <h3>Input</h3> |
|
| 198 |
+ <div class="form_wrap"> |
|
| 199 |
+ <input type="text" class="input w50per" placeholder="제목을 입력해주세요."> |
|
| 200 |
+ <span class="input_desc">* 필수입력 항목입니다.</span> |
|
| 201 |
+ </div> |
|
| 202 |
+ |
|
| 203 |
+ <h3>Textarea</h3> |
|
| 204 |
+ <div class="form_wrap"> |
|
| 205 |
+ <textarea name="" id="" class="textarea w100per" rows="5"></textarea> |
|
| 206 |
+ <div class="input_desc_wrap column"> |
|
| 207 |
+ <span class="input_desc red">* 필수입력 항목입니다.</span> |
|
| 208 |
+ <span class="input_desc blue">* 필수입력 항목입니다.</span> |
|
| 209 |
+ </div> |
|
| 210 |
+ </div> |
|
| 211 |
+ |
|
| 212 |
+ <h3>Email</h3> |
|
| 213 |
+ <div class="form_wrap email_wrap"> |
|
| 214 |
+ <input type="text" class="input email emain_id"><span class="text_split">@</span><input type="text" class="input email email_domain"> |
|
| 215 |
+ <select name="" id="" class="select"> |
|
| 216 |
+ <option value="">gmail.com</option> |
|
| 217 |
+ <option value="">naver.com</option> |
|
| 218 |
+ <option value="">kakao.com</option> |
|
| 219 |
+ <option value="">직접입력</option> |
|
| 220 |
+ </select> |
|
| 221 |
+ </div> |
|
| 222 |
+ |
|
| 223 |
+ <h3>Address</h3> |
|
| 224 |
+ <div class="form_wrap address_wrap"> |
|
| 225 |
+ <div class="address_row"> |
|
| 226 |
+ <input type="text" class="input input_post readonly" readonly><button type="button" class="btn medium line primary">우편번호 찾기</button> |
|
| 227 |
+ </div> |
|
| 228 |
+ <div class="address_row"> |
|
| 229 |
+ <input type="text" class="input adr_default readonly" readonly> |
|
| 230 |
+ <input type="text" class="input adr_detail"> |
|
| 231 |
+ </div> |
|
| 232 |
+ <span class="input_desc red">* 필수입력 항목입니다.</span> |
|
| 233 |
+ </div> |
|
| 234 |
+ </section> |
|
| 235 |
+ |
|
| 236 |
+ <!-- RADIO / CHECKBOX --> |
|
| 237 |
+ <section class="guide_section"> |
|
| 238 |
+ <h2>Checkbox / Radio</h2> |
|
| 239 |
+ |
|
| 240 |
+ <h3>Checkbox</h3> |
|
| 241 |
+ <div class="form_wrap radio_wrap"> |
|
| 242 |
+ <label for="man" class="radio_item"> |
|
| 243 |
+ <input type="radio" name="jender" id="man"> |
|
| 244 |
+ <span>남성</span> |
|
| 245 |
+ </label> |
|
| 246 |
+ <label for="woman" class="radio_item"> |
|
| 247 |
+ <input type="radio" name="jender" id="woman"> |
|
| 248 |
+ <span>여성</span> |
|
| 249 |
+ </label> |
|
| 250 |
+ <span class="input_desc red">* 필수입력 항목입니다.</span> |
|
| 251 |
+ </div> |
|
| 252 |
+ |
|
| 253 |
+ <h3>Radio</h3> |
|
| 254 |
+ <div class="form_wrap checkbox_wrap"> |
|
| 255 |
+ <label for="check_all" class="checkbox_item"> |
|
| 256 |
+ <input type="checkbox" name="check" id="check_all"> |
|
| 257 |
+ <span>전체</span> |
|
| 258 |
+ </label> |
|
| 259 |
+ <label for="check_1" class="checkbox_item"> |
|
| 260 |
+ <input type="checkbox" name="check" id="check_1"> |
|
| 261 |
+ <span>항목1</span> |
|
| 262 |
+ </label> |
|
| 263 |
+ <label for="check_2" class="checkbox_item"> |
|
| 264 |
+ <input type="checkbox" name="check" id="check_2"> |
|
| 265 |
+ <span>항목2</span> |
|
| 266 |
+ </label> |
|
| 267 |
+ <label for="check_3" class="checkbox_item"> |
|
| 268 |
+ <input type="checkbox" name="check" id="check_3"> |
|
| 269 |
+ <span>항목3</span> |
|
| 270 |
+ </label> |
|
| 271 |
+ </div> |
|
| 272 |
+ </section> |
|
| 273 |
+ |
|
| 274 |
+ <!-- STATUS --> |
|
| 275 |
+ <section class="guide_section"> |
|
| 276 |
+ <h2>Status</h2> |
|
| 277 |
+ <div class="status_wrap"> |
|
| 278 |
+ <span class="status line blue">진행중</span> |
|
| 279 |
+ <span class="status line gray">완료</span> |
|
| 280 |
+ <span class="status text blue">접수</span> |
|
| 281 |
+ <span class="status text gray">마감</span> |
|
| 282 |
+ </div> |
|
| 283 |
+ </section> |
|
| 284 |
+ |
|
| 285 |
+ <!-- PAGINATION --> |
|
| 286 |
+ <section class="guide_section"> |
|
| 287 |
+ <h2>Pagination (페이지)</h2> |
|
| 288 |
+ <div class="page"> |
|
| 289 |
+ <a href="#" class="btn_page btn_first"><i></i></a> |
|
| 290 |
+ <a href="#" class="btn_page btn_prev"><i></i></a> |
|
| 291 |
+ <a href="#" class="active">1</a> |
|
| 292 |
+ <a href="#">2</a> |
|
| 293 |
+ <a href="#">3</a> |
|
| 294 |
+ <a href="#" class="btn_page btn_next"><i></i></a> |
|
| 295 |
+ <a href="#" class="btn_page btn_last"><i></i></a> |
|
| 296 |
+ </div> |
|
| 297 |
+ </section> |
|
| 298 |
+ </div> |
|
| 299 |
+</body> |
|
| 300 |
+ |
|
| 301 | 301 |
</html>(No newline at end of file) |
--- src/main/webapp/publish/usr/guide/guide.js
+++ src/main/webapp/publish/usr/guide/guide.js
| This diff is skipped because there are too many other diffs. |
+++ src/main/webapp/publish/usr/images/common/home.png
| Binary file is not shown |
+++ src/main/webapp/publish/usr/images/common/lang.png
| Binary file is not shown |
+++ src/main/webapp/publish/usr/images/common/lang_scrolled.png
| Binary file is not shown |
--- src/main/webapp/publish/usr/images/common/logo.png
+++ src/main/webapp/publish/usr/images/common/logo.png
| Binary file is not shown |
+++ src/main/webapp/publish/usr/images/company/card_01.png
| Binary file is not shown |
+++ src/main/webapp/publish/usr/images/company/card_02.png
| Binary file is not shown |
+++ src/main/webapp/publish/usr/images/company/card_03.png
| Binary file is not shown |
+++ src/main/webapp/publish/usr/images/company/card_04.png
| Binary file is not shown |
+++ src/main/webapp/publish/usr/images/company/content_bg.png
| Binary file is not shown |
+++ src/main/webapp/publish/usr/images/company/corp_bg.png
| Binary file is not shown |
+++ src/main/webapp/publish/usr/images/company/history_img_01.png
| Binary file is not shown |
+++ src/main/webapp/publish/usr/images/company/history_img_02.png
| Binary file is not shown |
+++ src/main/webapp/publish/usr/images/company/obg_deco.png
| Binary file is not shown |
+++ src/main/webapp/publish/usr/images/company/visual.jpg
| Binary file is not shown |
+++ src/main/webapp/publish/usr/images/company/visual_mobile.jpg
| Binary file is not shown |
+++ src/main/webapp/publish/usr/images/component/arrow_bottom.png
| Binary file is not shown |
+++ src/main/webapp/publish/usr/images/component/arrow_left.png
| Binary file is not shown |
+++ src/main/webapp/publish/usr/images/component/arrow_right.png
| Binary file is not shown |
+++ src/main/webapp/publish/usr/images/component/arrow_top.png
| Binary file is not shown |
+++ src/main/webapp/publish/usr/images/component/email.png
| Binary file is not shown |
--- src/main/webapp/publish/usr/images/component/icon_arrow_down.png
| Binary file is not shown |
--- src/main/webapp/publish/usr/images/component/icon_arrow_down_18.png
| Binary file is not shown |
--- src/main/webapp/publish/usr/images/component/icon_arrow_down_blue.png
| Binary file is not shown |
--- src/main/webapp/publish/usr/images/component/icon_arrow_down_gray_18.png
| Binary file is not shown |
--- src/main/webapp/publish/usr/images/component/icon_arrow_down_white.png
| Binary file is not shown |
--- src/main/webapp/publish/usr/images/component/icon_arrow_left_page.png
| Binary file is not shown |
--- src/main/webapp/publish/usr/images/component/icon_arrow_right_gray.png
| Binary file is not shown |
--- src/main/webapp/publish/usr/images/component/icon_arrow_right_page.png
| Binary file is not shown |
--- src/main/webapp/publish/usr/images/component/icon_arrow_up_18.png
| Binary file is not shown |
--- src/main/webapp/publish/usr/images/component/icon_arrow_up_blue.png
| Binary file is not shown |
--- src/main/webapp/publish/usr/images/component/icon_arrow_up_gray_18.png
| Binary file is not shown |
--- src/main/webapp/publish/usr/images/component/icon_arrow_up_white.png
| Binary file is not shown |
+++ src/main/webapp/publish/usr/images/component/icon_select.png
| Binary file is not shown |
+++ src/main/webapp/publish/usr/images/component/list_circle.png
| Binary file is not shown |
+++ src/main/webapp/publish/usr/images/component/list_square.png
| Binary file is not shown |
+++ src/main/webapp/publish/usr/images/component/location.png
| Binary file is not shown |
+++ src/main/webapp/publish/usr/images/component/phone.png
| Binary file is not shown |
+++ src/main/webapp/publish/usr/images/component/step_next.png
| Binary file is not shown |
+++ src/main/webapp/publish/usr/images/main/box_blue.png
| Binary file is not shown |
+++ src/main/webapp/publish/usr/images/main/box_purple.png
| Binary file is not shown |
+++ src/main/webapp/publish/usr/images/main/box_skyblue.png
| Binary file is not shown |
+++ src/main/webapp/publish/usr/images/main/visual01.jpg
| Binary file is not shown |
+++ src/main/webapp/publish/usr/images/major_result/cancer_1.png
| Binary file is not shown |
+++ src/main/webapp/publish/usr/images/major_result/cancer_2.png
| Binary file is not shown |
+++ src/main/webapp/publish/usr/images/major_result/ciliogenesis_1.png
| Binary file is not shown |
+++ src/main/webapp/publish/usr/images/major_result/ciliogenesis_2.png
| Binary file is not shown |
+++ src/main/webapp/publish/usr/images/major_result/ciliogenesis_3.png
| Binary file is not shown |
+++ src/main/webapp/publish/usr/images/major_result/melanophagy_1.png
| Binary file is not shown |
+++ src/main/webapp/publish/usr/images/major_result/melanophagy_2.png
| Binary file is not shown |
+++ src/main/webapp/publish/usr/images/major_result/melanophagy_3.png
| Binary file is not shown |
+++ src/main/webapp/publish/usr/images/major_result/melanophagy_4.png
| Binary file is not shown |
+++ src/main/webapp/publish/usr/images/major_result/mitophagy_1.png
| Binary file is not shown |
+++ src/main/webapp/publish/usr/images/major_result/mitophagy_2.png
| Binary file is not shown |
+++ src/main/webapp/publish/usr/images/major_result/mitophagy_3.png
| Binary file is not shown |
+++ src/main/webapp/publish/usr/images/major_result/mitophagy_4.png
| Binary file is not shown |
+++ src/main/webapp/publish/usr/images/major_result/mitophagy_5.png
| Binary file is not shown |
+++ src/main/webapp/publish/usr/images/major_result/pexophagy_1.png
| Binary file is not shown |
+++ src/main/webapp/publish/usr/images/major_result/pexophagy_2.png
| Binary file is not shown |
+++ src/main/webapp/publish/usr/images/major_result/pexophagy_3.png
| Binary file is not shown |
+++ src/main/webapp/publish/usr/images/major_result/polygon_blue.png
| Binary file is not shown |
+++ src/main/webapp/publish/usr/images/major_result/polygon_orange.png
| Binary file is not shown |
+++ src/main/webapp/publish/usr/images/major_result/polygon_purple.png
| Binary file is not shown |
+++ src/main/webapp/publish/usr/images/major_result/rd_1.png
| Binary file is not shown |
+++ src/main/webapp/publish/usr/images/major_result/rd_2.png
| Binary file is not shown |
+++ src/main/webapp/publish/usr/images/major_result/rd_3.png
| Binary file is not shown |
+++ src/main/webapp/publish/usr/images/major_result/rd_4.png
| Binary file is not shown |
+++ src/main/webapp/publish/usr/images/major_result/visual.jpg
| Binary file is not shown |
+++ src/main/webapp/publish/usr/images/major_result/visual_mobile.jpg
| Binary file is not shown |
+++ src/main/webapp/publish/usr/images/platform_tech/autophagy_1.png
| Binary file is not shown |
+++ src/main/webapp/publish/usr/images/platform_tech/autophagy_2.png
| Binary file is not shown |
+++ src/main/webapp/publish/usr/images/platform_tech/background_1.png
| Binary file is not shown |
+++ src/main/webapp/publish/usr/images/platform_tech/background_2.png
| Binary file is not shown |
+++ src/main/webapp/publish/usr/images/platform_tech/background_3.png
| Binary file is not shown |
+++ src/main/webapp/publish/usr/images/platform_tech/background_4.png
| Binary file is not shown |
+++ src/main/webapp/publish/usr/images/platform_tech/visual.jpg
| Binary file is not shown |
+++ src/main/webapp/publish/usr/images/platform_tech/visual_mobile.jpg
| Binary file is not shown |
--- src/main/webapp/publish/usr/index.html
+++ src/main/webapp/publish/usr/index.html
| This diff is skipped because there are too many other diffs. |
--- src/main/webapp/publish/usr/layout/_header.html
+++ src/main/webapp/publish/usr/layout/_header.html
| This diff is skipped because there are too many other diffs. |
--- src/main/webapp/publish/usr/layout/_sub_title.html
+++ src/main/webapp/publish/usr/layout/_sub_title.html
| This diff is skipped because there are too many other diffs. |
--- src/main/webapp/publish/usr/layout/layout.css
+++ src/main/webapp/publish/usr/layout/layout.css
| This diff is skipped because there are too many other diffs. |
--- src/main/webapp/publish/usr/layout/layout.js
+++ src/main/webapp/publish/usr/layout/layout.js
| This diff is skipped because there are too many other diffs. |
+++ src/main/webapp/publish/usr/major_result/anticancer.html
| This diff is skipped because there are too many other diffs. |
+++ src/main/webapp/publish/usr/major_result/ciliogenesis.html
| This diff is skipped because there are too many other diffs. |
+++ src/main/webapp/publish/usr/major_result/melanophagy.html
| This diff is skipped because there are too many other diffs. |
+++ src/main/webapp/publish/usr/major_result/mitophagy.html
| This diff is skipped because there are too many other diffs. |
+++ src/main/webapp/publish/usr/major_result/pexophagy.html
| This diff is skipped because there are too many other diffs. |
+++ src/main/webapp/publish/usr/major_result/pipeline.html
| This diff is skipped because there are too many other diffs. |
+++ src/main/webapp/publish/usr/major_result/rd.html
| This diff is skipped because there are too many other diffs. |
+++ src/main/webapp/publish/usr/platform_tech/autophagy.html
| This diff is skipped because there are too many other diffs. |
+++ src/main/webapp/publish/usr/platform_tech/background.html
| This diff is skipped because there are too many other diffs. |
--- src/main/webapp/publish/usr/script/common.js
+++ src/main/webapp/publish/usr/script/common.js
| This diff is skipped because there are too many other diffs. |
--- src/main/webapp/publish/usr/script/content.js
+++ src/main/webapp/publish/usr/script/content.js
| This diff is skipped because there are too many other diffs. |
--- src/main/webapp/publish/usr/script/main.js
+++ src/main/webapp/publish/usr/script/main.js
| This diff is skipped because there are too many other diffs. |
--- src/main/webapp/publish/usr/script/popup.js
+++ src/main/webapp/publish/usr/script/popup.js
| This diff is skipped because there are too many other diffs. |
--- src/main/webapp/publish/usr/script/tab.js
+++ src/main/webapp/publish/usr/script/tab.js
| This diff is skipped because there are too many other diffs. |
--- src/main/webapp/publish/usr/script/toggleCalendar.js
+++ src/main/webapp/publish/usr/script/toggleCalendar.js
| This diff is skipped because there are too many other diffs. |
Add a comment
Delete comment
Once you delete this comment, you won't be able to recover it. Are you sure you want to delete this comment?