From 73718a5dc55595b34094239b4d5728df66417e76 Mon Sep 17 00:00:00 2001 From: Tara Rostami <132676256+TaraRostami@users.noreply.github.com> Date: Sat, 17 Feb 2024 19:52:23 +0330 Subject: [PATCH] UI improvements (#1813) --- web/assets/css/custom.css | 26 +- .../persian-datepicker.min.css | 455 +++++++++++++++++- web/html/login.html | 21 +- web/html/xui/common_sider.html | 10 +- web/html/xui/component/persianDatepicker.html | 4 +- web/html/xui/form/inbound.html | 4 +- web/html/xui/form/stream/external_proxy.html | 2 +- web/html/xui/form/stream/stream_tcp.html | 4 +- web/html/xui/form/stream/stream_ws.html | 2 +- web/html/xui/index.html | 144 +++--- web/html/xui/settings.html | 8 +- web/translation/translate.en_US.toml | 2 +- web/translation/translate.es_ES.toml | 2 +- web/translation/translate.fa_IR.toml | 2 +- web/translation/translate.id_ID.toml | 2 +- web/translation/translate.ru_RU.toml | 2 +- web/translation/translate.vi_VN.toml | 2 +- web/translation/translate.zh_Hans.toml | 2 +- 18 files changed, 590 insertions(+), 104 deletions(-) diff --git a/web/assets/css/custom.css b/web/assets/css/custom.css index ca7d23b1..c41bcc16 100644 --- a/web/assets/css/custom.css +++ b/web/assets/css/custom.css @@ -1050,12 +1050,17 @@ li.ant-select-dropdown-menu-item:empty:after { color: rgba(255, 255, 255, 0.25); } +.ant-input-group.ant-input-group-compact-addon:not(:first-child):not( + :last-child + ), +.ant-input-group.ant-input-group-compact-wrap:not(:first-child):not( + :last-child + ), +.ant-input-group.ant-input-group-compact + > .ant-input:not(:first-child):not(:last-child), +.ant-input-number-handler, .ant-input-number-handler-wrap { - border-radius: 0; -} - -.ant-input-number-handler { - border-radius: 0; + border-radius: 0; } .ant-input-number { @@ -1089,7 +1094,8 @@ li.ant-select-dropdown-menu-item:empty:after { > td, .ant-table-thead > tr:hover:not(.ant-table-expanded-row):not(.ant-table-row-selected) - > td { + > td, +.ant-calendar-time-picker-select li:hover { background-color: rgb(232 244 242); } @@ -1121,3 +1127,11 @@ li.ant-select-dropdown-menu-item:empty:after { .ant-input-group-addon:not(:first-child):not(:last-child), .ant-input-group-wrap:not(:first-child):not(:last-child), .ant-input-group>.ant-input:not(:first-child):not(:last-child) { border-radius: 0rem 1rem 1rem 0rem; } + +.ant-tag { + margin-right: 6px; +} + +b, strong { + font-weight: 500; +} diff --git a/web/assets/persian-datepicker/persian-datepicker.min.css b/web/assets/persian-datepicker/persian-datepicker.min.css index bbbef736..9e99974a 100644 --- a/web/assets/persian-datepicker/persian-datepicker.min.css +++ b/web/assets/persian-datepicker/persian-datepicker.min.css @@ -1 +1,454 @@ -jdp-overlay{height:0;width:0}jdp-container{-moz-animation:.3s cubic-bezier(.23,1,.32,1) jdpOpenAnimation;-webkit-animation:.3s cubic-bezier(.23,1,.32,1) jdpOpenAnimation;animation:.3s cubic-bezier(.23,1,.32,1) jdpOpenAnimation;background:#fff;border-radius:4px;box-shadow:0 1px 6px rgba(0,0,0,.12),0 1px 4px rgba(0,0,0,.24);direction:rtl;display:none;max-width:307.875px;min-width:307.875px;overflow:hidden;padding:.5rem 0;position:absolute;-ms-touch-action:manipulation;touch-action:manipulation;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}jdp-container,jdp-container *,jdp-container :after,jdp-container :before{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}jdp-container .jdp-icon-minus,jdp-container .jdp-icon-plus{border:1px solid #e6e6e6;border-radius:4px;cursor:pointer;display:inline-block;flex:none;overflow:hidden;text-align:center;text-decoration:none;vertical-align:middle}jdp-container .jdp-icon-minus svg,jdp-container .jdp-icon-plus svg{height:1.5rem;padding:.25rem;vertical-align:middle;width:1.5rem}jdp-container .jdp-icon-minus.not-in-range,jdp-container .jdp-icon-plus.not-in-range{cursor:not-allowed}jdp-container .jdp-icon-minus.not-in-range svg,jdp-container .jdp-icon-plus.not-in-range svg{opacity:.3}jdp-container .jdp-months,jdp-container .jdp-years{fill:rgba(0,0,0,.9);color:rgba(0,0,0,.9);display:-webkit-inline-box;display:-webkit-flex;display:-ms-inline-flexbox;display:inline-flex;font-size:120%;margin:0 2.5%}jdp-container .jdp-months{width:50%}jdp-container .jdp-years{width:40%}jdp-container .jdp-month,jdp-container .jdp-month input,jdp-container .jdp-month select,jdp-container .jdp-time,jdp-container .jdp-time input,jdp-container .jdp-time select,jdp-container .jdp-year,jdp-container .jdp-year input,jdp-container .jdp-year select{background:#fff;border:none;border-radius:0;color:inherit;display:inline-block;font-family:inherit;font-size:inherit;font-weight:300;height:auto;line-height:inherit;margin:0;outline:0;padding:0;text-align:center;vertical-align:initial;width:100%}jdp-container .jdp-month input:active,jdp-container .jdp-month input:focus,jdp-container .jdp-month select:active,jdp-container .jdp-month select:focus,jdp-container .jdp-month:active,jdp-container .jdp-month:focus,jdp-container .jdp-time input:active,jdp-container .jdp-time input:focus,jdp-container .jdp-time select:active,jdp-container .jdp-time select:focus,jdp-container .jdp-time:active,jdp-container .jdp-time:focus,jdp-container .jdp-year input:active,jdp-container .jdp-year input:focus,jdp-container .jdp-year select:active,jdp-container .jdp-year select:focus,jdp-container .jdp-year:active,jdp-container .jdp-year:focus{outline:0}jdp-container .jdp-month input option,jdp-container .jdp-month option,jdp-container .jdp-month select option,jdp-container .jdp-time input option,jdp-container .jdp-time option,jdp-container .jdp-time select option,jdp-container .jdp-year input option,jdp-container .jdp-year option,jdp-container .jdp-year select option{font-size:95%;min-height:1.3rem;outline:0;padding:0}jdp-container .jdp-month:hover,jdp-container .jdp-time:hover,jdp-container .jdp-year:hover{filter:brightness(.9)}jdp-container .jdp-month input,jdp-container .jdp-time input,jdp-container .jdp-year input{-webkit-appearance:none;-moz-appearance:textfield;cursor:text}jdp-container .jdp-month input::-webkit-inner-spin-button,jdp-container .jdp-month input::-webkit-outer-spin-button,jdp-container .jdp-time input::-webkit-inner-spin-button,jdp-container .jdp-time input::-webkit-outer-spin-button,jdp-container .jdp-year input::-webkit-inner-spin-button,jdp-container .jdp-year input::-webkit-outer-spin-button{-webkit-appearance:none}jdp-container .jdp-month select,jdp-container .jdp-time select,jdp-container .jdp-year select{-webkit-appearance:menulist;-moz-appearance:menulist;cursor:pointer;position:relative}jdp-container .jdp-days{-ms-flex-pack:justify;display:inline-block;display:-ms-flexbox;display:flex;flex-wrap:wrap;-ms-flex-wrap:wrap;justify-content:space-around;outline:0;padding:.5rem 0 0;text-align:left;width:100%}jdp-container .jdp-day,jdp-container .jdp-day-name{background:0 0;border:1px solid transparent;color:rgba(0,0,0,.9);display:inline-block;flex-basis:14.2857143%;font-weight:400;height:31px;justify-content:center;line-height:31px;margin:2px 0;position:relative;text-align:center;width:14.2857143%}jdp-container .jdp-day-name.today,jdp-container .jdp-day.today{border-color:rgba(0,0,0,.3)}.dark jdp-container .jdp-day-name.selected,.dark jdp-container .jdp-day.selected,jdp-container .jdp-day-name.selected,jdp-container .jdp-day.selected{background-color:#008771!important;color:#fff!important;opacity:1!important}.dark jdp-container .jdp-day-name.holly-day,.dark jdp-container .jdp-day-name.last-week,.dark jdp-container .jdp-day.holly-day,.dark jdp-container .jdp-day.last-week,jdp-container .jdp-day-name.holly-day,jdp-container .jdp-day-name.last-week,jdp-container .jdp-day.holly-day,jdp-container .jdp-day.last-week{color:#f44336}.dark jdp-container .jdp-day.not-in-month,jdp-container .jdp-day.not-in-month{opacity:.4}jdp-container .jdp-day.disabled-day{cursor:not-allowed;opacity:.15}jdp-container .jdp-day:not(.disabled-day){border-radius:4px;cursor:pointer;transition:.1s linear}jdp-container .jdp-day:not(.disabled-day):hover{background:rgba(0,0,0,.1);transform:scale(1.15);z-index:1}jdp-container .jdp-day-name{background-color:rgba(0,0,0,.1);border-radius:0;cursor:default;font-size:90%;font-weight:900}jdp-container .jdp-footer{-ms-flex-pack:justify;display:inline-block;display:-ms-flexbox;display:flex;flex-wrap:nowrap;-ms-flex-wrap:nowrap;justify-content:space-between;outline:0;padding:.5rem .5rem 0;width:100%}jdp-container .jdp-btn-close,jdp-container .jdp-btn-empty,jdp-container .jdp-btn-today{background:#008771;border-radius:5px;color:#fff;cursor:pointer;display:inline-block;font-size:90%;font-weight:400;padding:.3em .6em;text-align:center}jdp-container .jdp-btn-close.disabled-btn,jdp-container .jdp-btn-empty.disabled-btn,jdp-container .jdp-btn-today.disabled-btn{cursor:not-allowed;opacity:.2}@media only screen and (max-width:481px){jdp-overlay{backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);background-color:rgba(0,0,0,.3);display:none;height:100%;left:0;position:fixed;top:0;width:100%}jdp-container{-moz-animation:.3s cubic-bezier(.23,1,.32,1) jdpOpenAnimationMobile;-webkit-animation:.3s cubic-bezier(.23,1,.32,1) jdpOpenAnimationMobile;animation:.3s cubic-bezier(.23,1,.32,1) jdpOpenAnimationMobile;border-radius:4px 4px 0 0;bottom:0!important;left:50%!important;max-width:100%;min-width:280px;top:unset!important;transform:translateX(-50%)!important;width:100%}jdp-container .jdp-footer{margin:.5rem 0}jdp-container .jdp-btn-close,jdp-container .jdp-btn-empty,jdp-container .jdp-btn-today{font-size:100%;padding:.5em .8em}jdp-container .jdp-btn-today~.jdp-btn-empty{margin-left:auto;margin-right:1em}}jdp-container .jdp-time-container{display:flex;padding:0}jdp-container .jdp-time-container .jdp-time{flex:auto;margin:0 .5rem;position:relative}jdp-container .jdp-time-container .jdp-time select{background:rgba(0,0,0,.03);border-radius:5px;padding:.5rem 1rem .5rem 7px}jdp-container .jdp-time-container .jdp-time:after{content:":";font-size:1.5rem;height:100%;position:absolute;right:-.7rem;top:50%;transform:translateY(-50%)}jdp-container .jdp-time-container .jdp-time:first-child:after{display:none}jdp-container .jdp-time-container.jdp-only-time .jdp-time select{font-size:1.5rem;padding:.8rem 1rem .8rem 7px}jdp-container .jdp-time-container.jdp-only-time .jdp-time:after{font-size:2.3rem;position:absolute;right:-.8rem}@-webkit-keyframes jdpOpenAnimation{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes jdpOpenAnimation{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@-webkit-keyframes jdpOpenAnimationMobile{0%{bottom:-10%;opacity:0}to{bottom:0;opacity:1}}@keyframes jdpOpenAnimationMobile{0%{margin-bottom:-20%;opacity:0}to{margin-bottom:0;opacity:1}}.dark jdp-overlay{background-color:#181f2c}.dark jdp-container{background:#181f2c;border-color:#2c3950;box-shadow:0 1px 6px rgba(255,255,255,.12),0 1px 4px rgba(255,255,255,.24);color:#fff}.dark jdp-container .jdp-icon-minus,.dark jdp-container .jdp-icon-plus{border:1px solid #ccc}.dark jdp-container .jdp-months,.dark jdp-container .jdp-years{fill:rgba(255,255,255,0.9);color:rgba(255,255,255,.9)}.dark jdp-container .jdp-month,.dark jdp-container .jdp-month input,.dark jdp-container .jdp-month select,.dark jdp-container .jdp-time,.dark jdp-container .jdp-time input,.dark jdp-container .jdp-time select,.dark jdp-container .jdp-year,.dark jdp-container .jdp-year input,.dark jdp-container .jdp-year select{background:#222d42;color:#fff}.dark jdp-container .jdp-day,.dark jdp-container .jdp-day-name{border:1px solid transparent;color:rgba(255,255,255,.9)}.dark jdp-container .jdp-day-name.today,.dark jdp-container .jdp-day.today{border-color:rgba(255,255,255,.3)}.dark jdp-container .jdp-day.disabled-day{opacity:.15}.dark jdp-container .jdp-day:not(.disabled-day):hover{background:rgba(255,255,255,.1);transform:scale(1.15);z-index:1}.dark jdp-container .jdp-day-name{background-color:#222d42}.dark jdp-container .jdp-footer{background:#181f2c}.dark jdp-container .jdp-btn-close,.dark jdp-container .jdp-btn-empty,.dark jdp-container .jdp-btn-today{background:#008771;color:#fff}.dark jdp-container .jdp-btn-close.disabled-btn,.dark jdp-container .jdp-btn-empty.disabled-btn,.dark jdp-container .jdp-btn-today.disabled-btn{opacity:.2} \ No newline at end of file +jdp-overlay { + height: 0; + width: 0; +} +jdp-container { + -moz-animation: 0.3s cubic-bezier(0.23, 1, 0.32, 1) jdpOpenAnimation; + -webkit-animation: 0.3s cubic-bezier(0.23, 1, 0.32, 1) jdpOpenAnimation; + animation: 0.3s cubic-bezier(0.23, 1, 0.32, 1) jdpOpenAnimation; + background: #fff; + border-radius: 1rem; + box-shadow: 0 2px 8px rgba(0,0,0,.15); + direction: rtl; + display: none; + width: 280px; + overflow: hidden; + padding: 0.5rem 0; + position: absolute; + -ms-touch-action: manipulation; + touch-action: manipulation; + -moz-user-select: none; + -webkit-user-select: none; + -ms-user-select: none; + user-select: none; + transform-origin: bottom; +} +jdp-container, +jdp-container *, +jdp-container :after, +jdp-container :before { + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + box-sizing: border-box; +} +jdp-container .jdp-icon-minus, +jdp-container .jdp-icon-plus { + border: 1px solid rgb(232 244 242); + border-radius: 6px; + cursor: pointer; + display: flex; + flex: none; + overflow: hidden; + text-align: center; + text-decoration: none; + vertical-align: middle; + transition: all 0.2s; + width: 24px; + height: 24px; + align-items: center; + justify-content: center; +} + +jdp-container .jdp-icon-minus:hover, +jdp-container .jdp-icon-plus:hover { + background-color: rgb(232 244 242); +} + +jdp-container .jdp-icon-minus svg, +jdp-container .jdp-icon-plus svg { + height: 1.5rem; + padding: 0.25rem; + vertical-align: middle; + width: 1.5rem; +} +jdp-container .jdp-icon-minus.not-in-range, +jdp-container .jdp-icon-plus.not-in-range { + cursor: not-allowed; +} +jdp-container .jdp-icon-minus.not-in-range svg, +jdp-container .jdp-icon-plus.not-in-range svg { + opacity: 0.3; +} +jdp-container .jdp-months, +jdp-container .jdp-years { + fill: rgba(0, 0, 0, 0.9); + color: rgba(0, 0, 0, 0.9); + display: -webkit-inline-box; + display: -webkit-flex; + display: -ms-inline-flexbox; + display: inline-flex; + font-size: 120%; + margin: 0 2.5%; +} +jdp-container .jdp-months { + width: 40%; + margin-right: 1rem; +} +jdp-container .jdp-years { + width: 40%; + margin: 0.5rem 1.2rem 0.8rem 0; +} +jdp-container .jdp-month, +jdp-container .jdp-month input, +jdp-container .jdp-month select, +jdp-container .jdp-time, +jdp-container .jdp-time input, +jdp-container .jdp-time select, +jdp-container .jdp-year, +jdp-container .jdp-year input, +jdp-container .jdp-year select { + background: #fff; + border: none; + border-radius: 0; + color: inherit; + display: inline-block; + font-family: inherit; + font-size: inherit; + font-weight: 300; + height: auto; + line-height: inherit; + margin: 0; + outline: 0; + padding: 0; + text-align: center; + vertical-align: initial; + width: 100%; + font-feature-settings: "ss01"; +} +jdp-container .jdp-month input:active, +jdp-container .jdp-month input:focus, +jdp-container .jdp-month select:active, +jdp-container .jdp-month select:focus, +jdp-container .jdp-month:active, +jdp-container .jdp-month:focus, +jdp-container .jdp-time input:active, +jdp-container .jdp-time input:focus, +jdp-container .jdp-time select:active, +jdp-container .jdp-time select:focus, +jdp-container .jdp-time:active, +jdp-container .jdp-time:focus, +jdp-container .jdp-year input:active, +jdp-container .jdp-year input:focus, +jdp-container .jdp-year select:active, +jdp-container .jdp-year select:focus, +jdp-container .jdp-year:active, +jdp-container .jdp-year:focus { + outline: 0; +} +jdp-container .jdp-month input option, +jdp-container .jdp-month option, +jdp-container .jdp-month select option, +jdp-container .jdp-time input option, +jdp-container .jdp-time option, +jdp-container .jdp-time select option, +jdp-container .jdp-year input option, +jdp-container .jdp-year option, +jdp-container .jdp-year select option { + font-size: 95%; + min-height: 1.3rem; + outline: 0; + padding: 0; +} +jdp-container .jdp-month input, +jdp-container .jdp-time input, +jdp-container .jdp-year input { + -webkit-appearance: none; + -moz-appearance: textfield; + cursor: text; +} +jdp-container .jdp-month input::-webkit-inner-spin-button, +jdp-container .jdp-month input::-webkit-outer-spin-button, +jdp-container .jdp-time input::-webkit-inner-spin-button, +jdp-container .jdp-time input::-webkit-outer-spin-button, +jdp-container .jdp-year input::-webkit-inner-spin-button, +jdp-container .jdp-year input::-webkit-outer-spin-button { + -webkit-appearance: none; +} +jdp-container .jdp-month select, +jdp-container .jdp-time select, +jdp-container .jdp-year select { + -webkit-appearance: none; + -moz-appearance: none; + cursor: pointer; + appearance: none; + position: relative; +} +jdp-container .jdp-days { + -ms-flex-pack: justify; + display: inline-block; + display: -ms-flexbox; + display: flex; + flex-wrap: wrap; + -ms-flex-wrap: wrap; + justify-content: space-around; + outline: 0; + padding: 8px 12px; + text-align: left; + width: 100%; + border-top: 1px solid #e8e8e8; +} +jdp-container .jdp-day, +jdp-container .jdp-day-name { + background: 0 0; + border: 1px solid transparent; + color: rgba(0,0,0,.65); + display: block; + font-weight: 400; + height: 24px; + justify-content: center; + line-height: 22px; + margin: 2px 6px; + position: relative; + text-align: center; + width: 24px; + font-feature-settings: "ss01"; +} +jdp-container .jdp-day-name.today, +jdp-container .jdp-day.today { + border-color: #008771; + color: #008771; + font-weight: 700; +} +.dark jdp-container .jdp-day-name.selected, +.dark jdp-container .jdp-day.selected, +jdp-container .jdp-day-name.selected, +jdp-container .jdp-day.selected { + background-color: #008771 !important; + color: #fff !important; + opacity: 1 !important; +} +.dark jdp-container .jdp-day-name.holly-day, +.dark jdp-container .jdp-day-name.last-week, +.dark jdp-container .jdp-day.holly-day, +.dark jdp-container .jdp-day.last-week, +jdp-container .jdp-day-name.holly-day, +jdp-container .jdp-day-name.last-week, +jdp-container .jdp-day.holly-day, +jdp-container .jdp-day.last-week { + color: #f44336; +} +.dark jdp-container .jdp-day.not-in-month, +jdp-container .jdp-day.not-in-month { + opacity: 0.4; +} +jdp-container .jdp-day.disabled-day { + cursor: not-allowed; + opacity: 0.15; +} +jdp-container .jdp-day:not(.disabled-day) { + border-radius: 6px; + cursor: pointer; + transition: 0.1s linear; +} +jdp-container .jdp-day:not(.disabled-day):hover { + background: rgb(232 244 242); +} +jdp-container .jdp-day-name { + background-color: rgb(0 0 0 / 0%); + border-radius: 6px; + cursor: default; +} +jdp-container .jdp-footer { + -ms-flex-pack: justify; + display: inline-block; + display: -ms-flexbox; + display: flex; + flex-wrap: nowrap; + -ms-flex-wrap: nowrap; + justify-content: space-between; + outline: 0; + padding: 6px 12px 0; + width: 100%; + border-top: 1px solid #e8e8e8; +} +jdp-container .jdp-btn-close, +jdp-container .jdp-btn-empty, +jdp-container .jdp-btn-today { + background: #00877000; + border-radius: 5px; + color: #008771; + cursor: pointer; + display: inline-block; + font-size: 90%; + font-weight: 400; + padding: 0.3em 0.6em; + text-align: center; +} +jdp-container .jdp-btn-close.disabled-btn, +jdp-container .jdp-btn-empty.disabled-btn, +jdp-container .jdp-btn-today.disabled-btn { + cursor: not-allowed; + opacity: 0.2; +} +jdp-container .jdp-time-container { + display: flex; + padding: 6px 12px 12px 12px; +} +jdp-container .jdp-time-container .jdp-time { + flex: auto; + margin: 0 0.5rem; + position: relative; +} +jdp-container .jdp-time-container .jdp-time select { + border: 1px solid rgb(232 244 242); + border-radius: 6px; + appearance: none; + transition: all 0.2s; +} + +jdp-container .jdp-time-container .jdp-time select:hover { + background-color: rgb(232 244 242); +} + +jdp-container .jdp-time-container .jdp-time:after { + content: ":"; + font-size: 1.5rem; + height: 100%; + position: absolute; + right: -0.7rem; + transform: translateY(-50%); +} +jdp-container .jdp-time-container .jdp-time:first-child:after { + display: none; +} +jdp-container .jdp-time-container.jdp-only-time .jdp-time select { + font-size: 1.5rem; + padding: 0.8rem 1rem 0.8rem 7px; +} +jdp-container .jdp-time-container.jdp-only-time .jdp-time:after { + font-size: 2.3rem; + position: absolute; + right: -0.8rem; +} +@-webkit-keyframes jdpOpenAnimation { + 0% { + transform: scaleY(.8); + transform-origin: 0% 0%; + opacity: 0 + } + + to { + transform: scaleY(1); + transform-origin: 0% 0%; + opacity: 1 + } +} +@keyframes jdpOpenAnimation { + 0% { + transform: scaleY(.8); + transform-origin: 0% 0%; + opacity: 0 + } + + to { + transform: scaleY(1); + transform-origin: 0% 0%; + opacity: 1 + } +} +@-webkit-keyframes jdpOpenAnimationMobile { + 0% { + bottom: -10%; + opacity: 0; + } + to { + bottom: 0; + opacity: 1; + } +} +@keyframes jdpOpenAnimationMobile { + 0% { + margin-bottom: -20%; + opacity: 0; + } + to { + margin-bottom: 0; + opacity: 1; + } +} + +.dark jdp-container .jdp-days { + border-color: #313f5a; +} + +.dark jdp-overlay { + background-color: #181f2c; +} +.dark jdp-container { + background: #101828; + border-color: #2c3950; + box-shadow: 0 2px 8px rgba(0,0,0,.15); + color: #fff; +} +.dark jdp-container .jdp-icon-minus, +.dark jdp-container .jdp-icon-plus { + border-color: #313f5a; +} + +.dark jdp-container .jdp-icon-minus:hover, +.dark jdp-container .jdp-icon-plus:hover { + background-color: #313f5a; +} + +.dark jdp-container .jdp-months, +.dark jdp-container .jdp-years { + fill: rgba(255, 255, 255, 0.9); + color: rgba(255, 255, 255, 0.9); +} +.dark jdp-container .jdp-month, +.dark jdp-container .jdp-month input, +.dark jdp-container .jdp-month select, +.dark jdp-container .jdp-time, +.dark jdp-container .jdp-time input, +.dark jdp-container .jdp-time select, +.dark jdp-container .jdp-year, +.dark jdp-container .jdp-year input, +.dark jdp-container .jdp-year select { + background: #101828; + color: rgb(255 255 255 / 65%); +} +.dark jdp-container .jdp-day, +.dark jdp-container .jdp-day-name { + border: 1px solid transparent; + color: rgba(255, 255, 255, 0.65); +} +.dark jdp-container .jdp-day-name.today, +.dark jdp-container .jdp-day.today { + border-color: #008771; +} +.dark jdp-container .jdp-day.disabled-day { + opacity: 0.15; +} +.dark jdp-container .jdp-day:not(.disabled-day):hover { + background-color: #313f5a; + color: #fff; +} +.dark jdp-container .jdp-footer { + border-color: #313f5a; +} +.dark jdp-container .jdp-btn-close, +.dark jdp-container .jdp-btn-empty, +.dark jdp-container .jdp-btn-today { + color: rgb(255 255 255 / 65%); +} + +.dark jdp-container .jdp-btn-close:hover, +.dark jdp-container .jdp-btn-empty:hover, +.dark jdp-container .jdp-btn-today:hover { + color: rgb(255, 255, 255); +} + +.dark jdp-container .jdp-btn-close.disabled-btn, +.dark jdp-container .jdp-btn-empty.disabled-btn, +.dark jdp-container .jdp-btn-today.disabled-btn { + opacity: 0.2; +} + +.dark jdp-container .jdp-time-container .jdp-time select:hover { + background-color: #313f5a; + color: #fff; +} + +.dark jdp-container .jdp-time-container .jdp-time select { + border: 1px solid rgb(49 63 90); +} diff --git a/web/html/login.html b/web/html/login.html index 34eff41c..b622a080 100644 --- a/web/html/login.html +++ b/web/html/login.html @@ -31,7 +31,7 @@ } .title { font-size: 32px; - font-weight: bold; + font-weight: 600; } #app { overflow: hidden; @@ -204,7 +204,7 @@ position: relative; width: 100%; height: 15vh; - margin-bottom: -5px; /*Fix for safari gap*/ + margin-bottom: -8px; /*Fix for safari gap*/ min-height: 100px; max-height: 150px; } @@ -212,23 +212,27 @@ animation: move-forever 25s cubic-bezier(0.55, 0.5, 0.45, 0.5) infinite; } .dark .parallax > use { - fill: rgb(10 117 87 / 20%); + fill: #0f2d32; } .parallax > use:nth-child(1) { animation-delay: -2s; - animation-duration: 7s; + animation-duration: 4s; opacity: 0.2; } .parallax > use:nth-child(2) { animation-delay: -3s; - animation-duration: 10s; + animation-duration: 7s; opacity: 0.4; } .parallax > use:nth-child(3) { animation-delay: -4s; - animation-duration: 13s; + animation-duration: 10s; opacity: 0.6; } + .parallax > use:nth-child(4) { + animation-delay: -5s; + animation-duration: 13s; + } @keyframes move-forever { 0% { transform: translate3d(-90px, 0, 0); @@ -255,9 +259,10 @@ + - + @@ -290,7 +295,7 @@ -
+
diff --git a/web/html/xui/common_sider.html b/web/html/xui/common_sider.html index f91b9fbb..13d5bd49 100644 --- a/web/html/xui/common_sider.html +++ b/web/html/xui/common_sider.html @@ -1,19 +1,19 @@ {{define "menuItems"}} - {{ i18n "menu.dashboard"}} + {{ i18n "menu.dashboard"}} - {{ i18n "menu.inbounds"}} + {{ i18n "menu.inbounds"}} - {{ i18n "menu.settings"}} + {{ i18n "menu.settings"}} - {{ i18n "menu.xray"}} + {{ i18n "menu.xray"}} @@ -21,7 +21,7 @@ - {{ i18n "menu.logout"}} + {{ i18n "menu.logout"}} {{end}} diff --git a/web/html/xui/component/persianDatepicker.html b/web/html/xui/component/persianDatepicker.html index 10ef8472..456d5ec6 100644 --- a/web/html/xui/component/persianDatepicker.html +++ b/web/html/xui/component/persianDatepicker.html @@ -5,7 +5,7 @@ @input="$emit('input', convertToGregorian($event.target.value)); jalaliDatepicker.hide();" :placeholder="placeholder">
@@ -57,4 +57,4 @@ } }); -{{end}} \ No newline at end of file +{{end}} diff --git a/web/html/xui/form/inbound.html b/web/html/xui/form/inbound.html index 048fc818..6f3705ff 100644 --- a/web/html/xui/form/inbound.html +++ b/web/html/xui/form/inbound.html @@ -54,7 +54,7 @@ - {{template "form/sniffing"}} -{{end}} \ No newline at end of file +{{end}} diff --git a/web/html/xui/form/stream/external_proxy.html b/web/html/xui/form/stream/external_proxy.html index 2a072df9..9c3ed2e0 100644 --- a/web/html/xui/form/stream/external_proxy.html +++ b/web/html/xui/form/stream/external_proxy.html @@ -20,7 +20,7 @@ - - + - {{end}} diff --git a/web/html/xui/form/stream/stream_tcp.html b/web/html/xui/form/stream/stream_tcp.html index 19a09ac3..8576df8c 100644 --- a/web/html/xui/form/stream/stream_tcp.html +++ b/web/html/xui/form/stream/stream_tcp.html @@ -33,7 +33,7 @@ - + + + @@ -79,4 +79,4 @@ -{{end}} \ No newline at end of file +{{end}} diff --git a/web/html/xui/form/stream/stream_ws.html b/web/html/xui/form/stream/stream_ws.html index 00b64167..62380e94 100644 --- a/web/html/xui/form/stream/stream_ws.html +++ b/web/html/xui/form/stream/stream_ws.html @@ -7,7 +7,7 @@ - + + + diff --git a/web/html/xui/index.html b/web/html/xui/index.html index a9391952..abd3b8d0 100644 --- a/web/html/xui/index.html +++ b/web/html/xui/index.html @@ -18,6 +18,14 @@ .ant-card-dark h2 { color: hsla(0, 0%, 100%, .65); } + + .ant-tag-df { + color: rgb(0 0 0 / 80%); + } + + .dark .ant-tag-df { + color: rgb(255 255 255 / 80%); + } @@ -36,15 +44,15 @@ -
CPU: [[ cpuCoreFormat(status.cpuCores) ]]
-
Speed: [[ cpuSpeedFormat(status.cpuSpeedMhz) ]]
+
CPU: [[ cpuCoreFormat(status.cpuCores) ]]
+
Speed: [[ cpuSpeedFormat(status.cpuSpeedMhz) ]]
- {{ i18n "pages.index.memory"}}: [[ sizeFormat(status.mem.current) ]] / [[ sizeFormat(status.mem.total) ]] + {{ i18n "pages.index.memory"}}: [[ sizeFormat(status.mem.current) ]] / [[ sizeFormat(status.mem.total) ]]
@@ -56,7 +64,7 @@ :stroke-color="status.swap.color" :percent="status.swap.percent">
- Swap: [[ sizeFormat(status.swap.current) ]] / [[ sizeFormat(status.swap.total) ]] + Swap: [[ sizeFormat(status.swap.current) ]] / [[ sizeFormat(status.swap.total) ]]
@@ -64,7 +72,7 @@ :stroke-color="status.disk.color" :percent="status.disk.percent">
- {{ i18n "pages.index.hard"}}: [[ sizeFormat(status.disk.current) ]] / [[ sizeFormat(status.disk.total) ]] + {{ i18n "pages.index.hard"}}: [[ sizeFormat(status.disk.current) ]] / [[ sizeFormat(status.disk.total) ]]
@@ -75,25 +83,25 @@ - + - 3X-UI v{{ .cur_ver }} - Xray v[[ status.xray.version ]] - @panel3xui + 3X-UI: + v{{ .cur_ver }} + @Panel3xui - + - {{ i18n "menu.link" }}: - {{ i18n "pages.index.logs" }} - {{ i18n "pages.index.config" }} - {{ i18n "pages.index.backup" }} + {{ i18n "pages.index.operationHours" }}: + Xray [[ formatSecond(status.appStats.uptime) ]] + OS [[ formatSecond(status.uptime) ]] - + - {{ i18n "pages.index.xrayStatus" }}: - [[ status.xray.state ]] + {{ i18n "pages.index.xrayStatus" }}: + [[ status.xray.state ]] + An error occurred while running Xray @@ -106,137 +114,143 @@ {{ i18n "pages.index.stopXray" }} {{ i18n "pages.index.restartXray" }} - {{ i18n "pages.index.xraySwitch" }} + v[[ status.xray.version ]] - + - {{ i18n "pages.index.operationHours" }}: - Xray - [[ formatSecond(status.appStats.uptime) ]] - OS - [[ formatSecond(status.uptime) ]] + {{ i18n "menu.link" }}: + {{ i18n "pages.index.logs" }} + {{ i18n "pages.index.config" }} + {{ i18n "pages.index.backup" }} - + - {{ i18n "pages.index.systemLoad" }}: [[ status.loads[0] ]] | [[ status.loads[1] ]] | [[ status.loads[2] ]] + {{ i18n "pages.index.systemLoad" }}: + + [[ status.loads[0] ]] | [[ status.loads[1] ]] | [[ status.loads[2] ]] - + - + - {{ i18n "usage"}}: - RAM [[ sizeFormat(status.appStats.mem) ]] - - Threads [[ status.appStats.threads ]] - + {{ i18n "usage"}}: + + RAM [[ sizeFormat(status.appStats.mem) ]] + + + Threads [[ status.appStats.threads ]] + - + - - IPv4: + + IPv4 - - - - - IPv6: + + + + + IPv6 - + - + - - TCP: [[ status.tcpCount ]] + + TCP: [[ status.tcpCount ]] - + - - UDP: [[ status.udpCount ]] + + UDP: [[ status.udpCount ]] - + - + - - [[ sizeFormat(status.netIO.up) ]]/s + + + Up: [[ sizeFormat(status.netIO.up) ]]/s - + - - [[ sizeFormat(status.netIO.down) ]]/s + + + Down: [[ sizeFormat(status.netIO.down) ]]/s - + - + - - [[ sizeFormat(status.netTraffic.sent) ]] + + - + Out: [[ sizeFormat(status.netTraffic.sent) ]] + - - [[ sizeFormat(status.netTraffic.recv) ]] + + - + In: [[ sizeFormat(status.netTraffic.recv) ]] + @@ -256,7 +270,7 @@ > diff --git a/web/html/xui/settings.html b/web/html/xui/settings.html index 0acbbfec..533553c5 100644 --- a/web/html/xui/settings.html +++ b/web/html/xui/settings.html @@ -76,15 +76,15 @@ - - - + + + {{ i18n "pages.settings.save" }} {{ i18n "pages.settings.restartPanel" }} - +