mirror of
https://github.com/drakkan/sftpgo.git
synced 2025-12-06 14:20:55 +03:00
568 lines
20 KiB
HTML
568 lines
20 KiB
HTML
<!--
|
|
Copyright (C) 2023 Nicola Murino
|
|
|
|
This WebUI uses the KeenThemes Mega Bundle, a proprietary theme:
|
|
|
|
https://keenthemes.com/products/templates-mega-bundle
|
|
|
|
KeenThemes HTML/CSS/JS components are allowed for use only within the
|
|
SFTPGo product and restricted to be used in a resealable HTML template
|
|
that can compete with KeenThemes products anyhow.
|
|
|
|
This WebUI is allowed for use only within the SFTPGo product and
|
|
therefore cannot be used in derivative works/products without an
|
|
explicit grant from the SFTPGo Team (support@sftpgo.com).
|
|
-->
|
|
{{- define "errmsg"}}
|
|
<div id="errorMsg" class="{{if not . }}d-none {{end}}rounded border-warning border border-dashed bg-light-warning d-flex align-items-center p-5 mb-10">
|
|
<i class="ki-duotone ki-information fs-3x text-warning me-5">
|
|
<span class="path1"></span>
|
|
<span class="path2"></span>
|
|
<span class="path3"></span>
|
|
</i>
|
|
<div class="text-gray-800 fw-bold fs-5 d-flex flex-column pe-0 pe-sm-10">
|
|
<span {{if .}}data-i18n="{{.Message}}" {{if .HasArgs}}data-i18n-options="{{.Args}}"{{end}}{{end}} id="errorTxt"></span>
|
|
</div>
|
|
<button id="id_dismiss_error_msg" type="button" class="position-absolute position-sm-relative m-2 m-sm-0 top-0 end-0 btn btn-icon btn-sm btn-active-light-primary ms-sm-auto">
|
|
<i class="ki-duotone ki-cross fs-2x text-primary">
|
|
<span class="path1"></span>
|
|
<span class="path2"></span>
|
|
</i>
|
|
</button>
|
|
</div>
|
|
{{- end}}
|
|
|
|
{{- define "theme-setup"}}
|
|
<script type="text/javascript" {{- if .}} nonce="{{.}}"{{- end}}>
|
|
var defaultThemeMode = "system";
|
|
var themeMode;
|
|
if ( document.documentElement ) {
|
|
if ( document.documentElement.hasAttribute("data-bs-theme-mode")) {
|
|
themeMode = document.documentElement.getAttribute("data-bs-theme-mode");
|
|
} else {
|
|
if ( localStorage.getItem("data-bs-theme") !== null ) {
|
|
themeMode = localStorage.getItem("data-bs-theme");
|
|
} else {
|
|
themeMode = defaultThemeMode;
|
|
}
|
|
}
|
|
if (themeMode === "system") {
|
|
themeMode = window.matchMedia("(prefers-color-scheme: dark)").matches ? "dark" : "light";
|
|
}
|
|
document.documentElement.setAttribute("data-bs-theme", themeMode);
|
|
}
|
|
</script>
|
|
{{- end }}
|
|
|
|
{{- define "commonjs"}}
|
|
<script type="text/javascript" {{- if .}} nonce="{{.}}"{{- end}}>
|
|
window.addEventListener("pageshow", function (event) {
|
|
if (event.persisted) {
|
|
let loadings = document.querySelectorAll('[data-kt-indicator=on]');
|
|
if (loadings){
|
|
[].forEach.call(loadings, function (loading) {
|
|
loading.removeAttribute('data-kt-indicator');
|
|
loading.disabled = false;
|
|
});
|
|
}
|
|
}
|
|
});
|
|
</script>
|
|
{{- end}}
|
|
|
|
{{- define "basejs"}}
|
|
<script type="text/javascript" {{- if .CSPNonce}} nonce="{{.CSPNonce}}"{{- end}}>
|
|
// https://developer.mozilla.org/en-US/docs/Web/API/Document/createTextNode
|
|
function escapeHTML(str) {
|
|
var div = document.createElement('div');
|
|
div.appendChild(document.createTextNode(str));
|
|
return div.innerHTML;
|
|
}
|
|
|
|
function fileSizeIEC(a,b,c,d,e){
|
|
return (b=Math,c=b.log,d=1024,e=c(a)/c(d)|0,a/b.pow(d,e)).toFixed(1)
|
|
+' '+(e?'KMGTPEZY'[--e]+'iB':'Bytes')
|
|
}
|
|
|
|
function initRepeaterItems() {
|
|
let repeaterDeleteButtons = document.querySelectorAll('[data-repeater-delete]');
|
|
let repeaterCreateButtons = document.querySelectorAll('[data-repeater-create]');
|
|
|
|
repeaterDeleteButtons.forEach(d => {
|
|
d.addEventListener("click", function(e){
|
|
e.preventDefault();
|
|
});
|
|
});
|
|
|
|
repeaterCreateButtons.forEach(d => {
|
|
d.addEventListener("click", function(e){
|
|
e.preventDefault();
|
|
});
|
|
});
|
|
}
|
|
|
|
function initRepeater(selector) {
|
|
$(selector).repeater({
|
|
initEmpty: false,
|
|
|
|
show: function () {
|
|
$(this).localize();
|
|
$(this).slideDown();
|
|
$(this).find('[data-repeater-delete]').on("click", function(e){
|
|
e.preventDefault();
|
|
});
|
|
},
|
|
|
|
hide: function (deleteElement) {
|
|
$(this).slideUp(deleteElement);
|
|
}
|
|
});
|
|
}
|
|
|
|
function clearChilds(el) {
|
|
while (el.firstChild) {
|
|
el.removeChild(el.firstChild);
|
|
}
|
|
}
|
|
|
|
const renderI18n = () => {
|
|
$('body').localize();
|
|
let select2elements = [].slice.call(document.querySelectorAll('[data-control="i18n-select2"]'));
|
|
select2elements.map(function (element){
|
|
if (element.getAttribute("data-kt-initialized") === "1") {
|
|
return;
|
|
}
|
|
let options = {
|
|
dir: document.body.getAttribute('direction'),
|
|
language: {
|
|
noResults: function () {
|
|
return $.t('select2.no_results');
|
|
},
|
|
searching: function () {
|
|
return $.t('select2.searching');
|
|
},
|
|
removeAllItems: function () {
|
|
return $.t('select2.removeall');
|
|
},
|
|
removeItem: function () {
|
|
return $.t('select2.remove');
|
|
},
|
|
search: function() {
|
|
return $.t('general.search');
|
|
}
|
|
}
|
|
};
|
|
|
|
if (element.getAttribute('data-hide-search') == 'true') {
|
|
options.minimumResultsForSearch = Infinity;
|
|
}
|
|
|
|
$(element).select2(options);
|
|
element.setAttribute("data-kt-initialized", "1");
|
|
});
|
|
}
|
|
|
|
function initLocalizer() {
|
|
i18next
|
|
.use(i18nextChainedBackend)
|
|
.use(i18nextBrowserLanguageDetector)
|
|
.init({
|
|
debug: false,
|
|
fallbackLng: 'en',
|
|
load: 'languageOnly',
|
|
backend: {
|
|
backends: [
|
|
i18nextLocalStorageBackend,
|
|
i18nextHttpBackend
|
|
],
|
|
backendOptions: [{
|
|
expirationTime: 7 * 24 * 60 * 60 * 1000, // 7 days
|
|
defaultVersion: '{{.Version}}'
|
|
}, {
|
|
loadPath: '{{.StaticURL}}/locales/{{"{{lng}}"}}/{{"{{ns}}"}}.json'
|
|
}
|
|
]
|
|
}
|
|
}, (err, t) => {
|
|
if (err) {
|
|
console.error(err);
|
|
} else {
|
|
jqueryI18next.init(i18next, $, { useOptionsAttr: true });
|
|
renderI18n();
|
|
$('title').text('{{.Branding.Name}} - '+$.t('{{.Title}}'));
|
|
$.event.trigger({
|
|
type: "i18nload"
|
|
});
|
|
}
|
|
$('#app_loader').addClass("d-none");
|
|
$('#app_root').removeClass("d-none");
|
|
$.event.trigger({
|
|
type: "i18nshow"
|
|
});
|
|
});
|
|
}
|
|
|
|
function setI18NData(el, value, options) {
|
|
el.removeAttr("data-i18n-options");
|
|
el.attr("data-i18n", value);
|
|
el.localize(options);
|
|
}
|
|
|
|
KTUtil.onDOMContentLoaded(function () {
|
|
var dismissErrorBtn = $('#id_dismiss_error_msg');
|
|
if (dismissErrorBtn){
|
|
dismissErrorBtn.on("click", function(){
|
|
$('#errorMsg').addClass("d-none");
|
|
});
|
|
}
|
|
|
|
var logoutBtn = $('#id_logout_link');
|
|
if (logoutBtn){
|
|
logoutBtn.on("click", function(){
|
|
doLogout();
|
|
});
|
|
}
|
|
|
|
initLocalizer();
|
|
});
|
|
</script>
|
|
{{- end}}
|
|
|
|
{{- define "globalstyle"}}
|
|
<style {{- if .}} nonce="{{.}}"{{- end}}>
|
|
.text-sidebar {
|
|
color: var(--bs-white);
|
|
}
|
|
|
|
[data-bs-theme="dark"] .text-sidebar {
|
|
color: var(--bs-white);
|
|
}
|
|
|
|
.wrap-word {
|
|
overflow-wrap: break-word;
|
|
}
|
|
|
|
.line-through {
|
|
text-decoration: line-through;
|
|
}
|
|
</style>
|
|
{{- end}}
|
|
|
|
{{- define "fonts"}}
|
|
<style {{- if .}} nonce="{{.CSPNonce}}"{{- end}}>
|
|
/* cyrillic-ext */
|
|
@font-face {
|
|
font-family: 'Inter';
|
|
font-style: normal;
|
|
font-weight: 300;
|
|
src: url({{.StaticURL}}/vendor/fonts/inter/v12/UcC73FwrK3iLTeHuS_fvQtMwCp50KnMa2JL7SUc.woff2) format('woff2');
|
|
unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
|
|
}
|
|
|
|
/* cyrillic */
|
|
@font-face {
|
|
font-family: 'Inter';
|
|
font-style: normal;
|
|
font-weight: 300;
|
|
src: url({{.StaticURL}}/vendor/fonts/inter/v12/UcC73FwrK3iLTeHuS_fvQtMwCp50KnMa0ZL7SUc.woff2) format('woff2');
|
|
unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
|
}
|
|
|
|
/* greek-ext */
|
|
@font-face {
|
|
font-family: 'Inter';
|
|
font-style: normal;
|
|
font-weight: 300;
|
|
src: url({{.StaticURL}}/vendor/fonts/inter/v12/UcC73FwrK3iLTeHuS_fvQtMwCp50KnMa2ZL7SUc.woff2) format('woff2');
|
|
unicode-range: U+1F00-1FFF;
|
|
}
|
|
|
|
/* greek */
|
|
@font-face {
|
|
font-family: 'Inter';
|
|
font-style: normal;
|
|
font-weight: 300;
|
|
src: url({{.StaticURL}}/vendor/fonts/inter/v12/UcC73FwrK3iLTeHuS_fvQtMwCp50KnMa1pL7SUc.woff2) format('woff2');
|
|
unicode-range: U+0370-03FF;
|
|
}
|
|
|
|
/* vietnamese */
|
|
@font-face {
|
|
font-family: 'Inter';
|
|
font-style: normal;
|
|
font-weight: 300;
|
|
src: url({{.StaticURL}}/vendor/fonts/inter/v12/UcC73FwrK3iLTeHuS_fvQtMwCp50KnMa2pL7SUc.woff2) format('woff2');
|
|
unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
|
|
}
|
|
|
|
/* latin-ext */
|
|
@font-face {
|
|
font-family: 'Inter';
|
|
font-style: normal;
|
|
font-weight: 300;
|
|
src: url({{.StaticURL}}/vendor/fonts/inter/v12/UcC73FwrK3iLTeHuS_fvQtMwCp50KnMa25L7SUc.woff2) format('woff2');
|
|
unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
|
|
}
|
|
|
|
/* latin */
|
|
@font-face {
|
|
font-family: 'Inter';
|
|
font-style: normal;
|
|
font-weight: 300;
|
|
src: url({{.StaticURL}}/vendor/fonts/inter/v12/UcC73FwrK3iLTeHuS_fvQtMwCp50KnMa1ZL7.woff2) format('woff2');
|
|
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
|
|
}
|
|
|
|
/* cyrillic-ext */
|
|
@font-face {
|
|
font-family: 'Inter';
|
|
font-style: normal;
|
|
font-weight: 400;
|
|
src: url({{.StaticURL}}/vendor/fonts/inter/v12/UcC73FwrK3iLTeHuS_fvQtMwCp50KnMa2JL7SUc.woff2) format('woff2');
|
|
unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
|
|
}
|
|
|
|
/* cyrillic */
|
|
@font-face {
|
|
font-family: 'Inter';
|
|
font-style: normal;
|
|
font-weight: 400;
|
|
src: url({{.StaticURL}}/vendor/fonts/inter/v12/UcC73FwrK3iLTeHuS_fvQtMwCp50KnMa0ZL7SUc.woff2) format('woff2');
|
|
unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
|
}
|
|
|
|
/* greek-ext */
|
|
@font-face {
|
|
font-family: 'Inter';
|
|
font-style: normal;
|
|
font-weight: 400;
|
|
src: url({{.StaticURL}}/vendor/fonts/inter/v12/UcC73FwrK3iLTeHuS_fvQtMwCp50KnMa2ZL7SUc.woff2) format('woff2');
|
|
unicode-range: U+1F00-1FFF;
|
|
}
|
|
|
|
/* greek */
|
|
@font-face {
|
|
font-family: 'Inter';
|
|
font-style: normal;
|
|
font-weight: 400;
|
|
src: url({{.StaticURL}}/vendor/fonts/inter/v12/UcC73FwrK3iLTeHuS_fvQtMwCp50KnMa1pL7SUc.woff2) format('woff2');
|
|
unicode-range: U+0370-03FF;
|
|
}
|
|
|
|
/* vietnamese */
|
|
@font-face {
|
|
font-family: 'Inter';
|
|
font-style: normal;
|
|
font-weight: 400;
|
|
src: url({{.StaticURL}}/vendor/fonts/inter/v12/UcC73FwrK3iLTeHuS_fvQtMwCp50KnMa2pL7SUc.woff2) format('woff2');
|
|
unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
|
|
}
|
|
|
|
/* latin-ext */
|
|
@font-face {
|
|
font-family: 'Inter';
|
|
font-style: normal;
|
|
font-weight: 400;
|
|
src: url({{.StaticURL}}/vendor/fonts/inter/v12/UcC73FwrK3iLTeHuS_fvQtMwCp50KnMa25L7SUc.woff2) format('woff2');
|
|
unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
|
|
}
|
|
|
|
/* latin */
|
|
@font-face {
|
|
font-family: 'Inter';
|
|
font-style: normal;
|
|
font-weight: 400;
|
|
src: url({{.StaticURL}}/vendor/fonts/inter/v12/UcC73FwrK3iLTeHuS_fvQtMwCp50KnMa1ZL7.woff2) format('woff2');
|
|
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
|
|
}
|
|
|
|
/* cyrillic-ext */
|
|
@font-face {
|
|
font-family: 'Inter';
|
|
font-style: normal;
|
|
font-weight: 500;
|
|
src: url({{.StaticURL}}/vendor/fonts/inter/v12/UcC73FwrK3iLTeHuS_fvQtMwCp50KnMa2JL7SUc.woff2) format('woff2');
|
|
unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
|
|
}
|
|
|
|
/* cyrillic */
|
|
@font-face {
|
|
font-family: 'Inter';
|
|
font-style: normal;
|
|
font-weight: 500;
|
|
src: url({{.StaticURL}}/vendor/fonts/inter/v12/UcC73FwrK3iLTeHuS_fvQtMwCp50KnMa0ZL7SUc.woff2) format('woff2');
|
|
unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
|
}
|
|
|
|
/* greek-ext */
|
|
@font-face {
|
|
font-family: 'Inter';
|
|
font-style: normal;
|
|
font-weight: 500;
|
|
src: url({{.StaticURL}}/vendor/fonts/inter/v12/UcC73FwrK3iLTeHuS_fvQtMwCp50KnMa2ZL7SUc.woff2) format('woff2');
|
|
unicode-range: U+1F00-1FFF;
|
|
}
|
|
|
|
/* greek */
|
|
@font-face {
|
|
font-family: 'Inter';
|
|
font-style: normal;
|
|
font-weight: 500;
|
|
src: url({{.StaticURL}}/vendor/fonts/inter/v12/UcC73FwrK3iLTeHuS_fvQtMwCp50KnMa1pL7SUc.woff2) format('woff2');
|
|
unicode-range: U+0370-03FF;
|
|
}
|
|
|
|
/* vietnamese */
|
|
@font-face {
|
|
font-family: 'Inter';
|
|
font-style: normal;
|
|
font-weight: 500;
|
|
src: url({{.StaticURL}}/vendor/fonts/inter/v12/UcC73FwrK3iLTeHuS_fvQtMwCp50KnMa2pL7SUc.woff2) format('woff2');
|
|
unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
|
|
}
|
|
|
|
/* latin-ext */
|
|
@font-face {
|
|
font-family: 'Inter';
|
|
font-style: normal;
|
|
font-weight: 500;
|
|
src: url({{.StaticURL}}/vendor/fonts/inter/v12/UcC73FwrK3iLTeHuS_fvQtMwCp50KnMa25L7SUc.woff2) format('woff2');
|
|
unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
|
|
}
|
|
|
|
/* latin */
|
|
@font-face {
|
|
font-family: 'Inter';
|
|
font-style: normal;
|
|
font-weight: 500;
|
|
src: url({{.StaticURL}}/vendor/fonts/inter/v12/UcC73FwrK3iLTeHuS_fvQtMwCp50KnMa1ZL7.woff2) format('woff2');
|
|
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
|
|
}
|
|
|
|
/* cyrillic-ext */
|
|
@font-face {
|
|
font-family: 'Inter';
|
|
font-style: normal;
|
|
font-weight: 600;
|
|
src: url({{.StaticURL}}/vendor/fonts/inter/v12/UcC73FwrK3iLTeHuS_fvQtMwCp50KnMa2JL7SUc.woff2) format('woff2');
|
|
unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
|
|
}
|
|
|
|
/* cyrillic */
|
|
@font-face {
|
|
font-family: 'Inter';
|
|
font-style: normal;
|
|
font-weight: 600;
|
|
src: url({{.StaticURL}}/vendor/fonts/inter/v12/UcC73FwrK3iLTeHuS_fvQtMwCp50KnMa0ZL7SUc.woff2) format('woff2');
|
|
unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
|
}
|
|
|
|
/* greek-ext */
|
|
@font-face {
|
|
font-family: 'Inter';
|
|
font-style: normal;
|
|
font-weight: 600;
|
|
src: url({{.StaticURL}}/vendor/fonts/inter/v12/UcC73FwrK3iLTeHuS_fvQtMwCp50KnMa2ZL7SUc.woff2) format('woff2');
|
|
unicode-range: U+1F00-1FFF;
|
|
}
|
|
|
|
/* greek */
|
|
@font-face {
|
|
font-family: 'Inter';
|
|
font-style: normal;
|
|
font-weight: 600;
|
|
src: url({{.StaticURL}}/vendor/fonts/inter/v12/UcC73FwrK3iLTeHuS_fvQtMwCp50KnMa1pL7SUc.woff2) format('woff2');
|
|
unicode-range: U+0370-03FF;
|
|
}
|
|
|
|
/* vietnamese */
|
|
@font-face {
|
|
font-family: 'Inter';
|
|
font-style: normal;
|
|
font-weight: 600;
|
|
src: url({{.StaticURL}}/vendor/fonts/inter/v12/UcC73FwrK3iLTeHuS_fvQtMwCp50KnMa2pL7SUc.woff2) format('woff2');
|
|
unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
|
|
}
|
|
|
|
/* latin-ext */
|
|
@font-face {
|
|
font-family: 'Inter';
|
|
font-style: normal;
|
|
font-weight: 600;
|
|
src: url({{.StaticURL}}/vendor/fonts/inter/v12/UcC73FwrK3iLTeHuS_fvQtMwCp50KnMa25L7SUc.woff2) format('woff2');
|
|
unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
|
|
}
|
|
|
|
/* latin */
|
|
@font-face {
|
|
font-family: 'Inter';
|
|
font-style: normal;
|
|
font-weight: 600;
|
|
src: url({{.StaticURL}}/vendor/fonts/inter/v12/UcC73FwrK3iLTeHuS_fvQtMwCp50KnMa1ZL7.woff2) format('woff2');
|
|
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
|
|
}
|
|
|
|
/* cyrillic-ext */
|
|
@font-face {
|
|
font-family: 'Inter';
|
|
font-style: normal;
|
|
font-weight: 700;
|
|
src: url({{.StaticURL}}/vendor/fonts/inter/v12/UcC73FwrK3iLTeHuS_fvQtMwCp50KnMa2JL7SUc.woff2) format('woff2');
|
|
unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
|
|
}
|
|
|
|
/* cyrillic */
|
|
@font-face {
|
|
font-family: 'Inter';
|
|
font-style: normal;
|
|
font-weight: 700;
|
|
src: url({{.StaticURL}}/vendor/fonts/inter/v12/UcC73FwrK3iLTeHuS_fvQtMwCp50KnMa0ZL7SUc.woff2) format('woff2');
|
|
unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
|
}
|
|
|
|
/* greek-ext */
|
|
@font-face {
|
|
font-family: 'Inter';
|
|
font-style: normal;
|
|
font-weight: 700;
|
|
src: url({{.StaticURL}}/vendor/fonts/inter/v12/UcC73FwrK3iLTeHuS_fvQtMwCp50KnMa2ZL7SUc.woff2) format('woff2');
|
|
unicode-range: U+1F00-1FFF;
|
|
}
|
|
|
|
/* greek */
|
|
@font-face {
|
|
font-family: 'Inter';
|
|
font-style: normal;
|
|
font-weight: 700;
|
|
src: url({{.StaticURL}}/vendor/fonts/inter/v12/UcC73FwrK3iLTeHuS_fvQtMwCp50KnMa1pL7SUc.woff2) format('woff2');
|
|
unicode-range: U+0370-03FF;
|
|
}
|
|
|
|
/* vietnamese */
|
|
@font-face {
|
|
font-family: 'Inter';
|
|
font-style: normal;
|
|
font-weight: 700;
|
|
src: url({{.StaticURL}}/vendor/fonts/inter/v12/UcC73FwrK3iLTeHuS_fvQtMwCp50KnMa2pL7SUc.woff2) format('woff2');
|
|
unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
|
|
}
|
|
|
|
/* latin-ext */
|
|
@font-face {
|
|
font-family: 'Inter';
|
|
font-style: normal;
|
|
font-weight: 700;
|
|
src: url({{.StaticURL}}/vendor/fonts/inter/v12/UcC73FwrK3iLTeHuS_fvQtMwCp50KnMa25L7SUc.woff2) format('woff2');
|
|
unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
|
|
}
|
|
|
|
/* latin */
|
|
@font-face {
|
|
font-family: 'Inter';
|
|
font-style: normal;
|
|
font-weight: 700;
|
|
src: url({{.StaticURL}}/vendor/fonts/inter/v12/UcC73FwrK3iLTeHuS_fvQtMwCp50KnMa1ZL7.woff2) format('woff2');
|
|
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
|
|
}
|
|
</style>
|
|
{{- end}} |