test/custom-admin-ui #3
+4
-20
@@ -1,27 +1,11 @@
|
||||
FROM node:18-alpine as webui
|
||||
COPY . /app
|
||||
WORKDIR /app/fcb-fronted/
|
||||
ENV NPM_CONFIG_LOGLEVEL=verbose
|
||||
RUN npm i
|
||||
RUN npm run build-only
|
||||
RUN mv dist/logo_small.png dist/assets/
|
||||
|
||||
|
||||
FROM python:3.9.5-alpine as FileCodeBox
|
||||
FROM python:3.9.5-slim-buster
|
||||
LABEL author="Lan"
|
||||
LABEL email="vast@tom.com"
|
||||
LABEL version="6"
|
||||
|
||||
|
||||
# 先安装依赖可以产生缓存
|
||||
WORKDIR /app
|
||||
COPY requirements.txt /app
|
||||
# 安装gcc
|
||||
RUN apk add --no-cache gcc musl-dev
|
||||
RUN /usr/local/bin/python -m pip install --upgrade pip && pip install -r requirements.txt
|
||||
COPY ./backend/ /app
|
||||
COPY --from=webui /app/fcb-fronted/dist/ /app/dist
|
||||
COPY . /app
|
||||
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
|
||||
RUN echo 'Asia/Shanghai' >/etc/timezone
|
||||
WORKDIR /app
|
||||
RUN pip install -r requirements.txt
|
||||
EXPOSE 12345
|
||||
CMD ["python","main.py"]
|
||||
Vendored
+1
-1
@@ -1 +1 @@
|
||||
import{d as a,Q as n,F as c,D as e,J as r,H as o,u as s,o as u}from"./index-db871d30.js";const i={style:{"text-align":"center"}},l={style:{color:"#333"},href:"https://github.com/vastsa/FileCodeBox"},f=a({__name:"AboutView",setup(_){const{t}=n();return(m,d)=>(u(),c("main",i,[e("span",null,[r(o(s(t)("admin.about.source1"))+" ",1),e("em",null,[e("a",l,o(s(t)("admin.about.source2")),1)])])]))}});export{f as default};
|
||||
import{d as a,Q as n,F as c,D as e,J as r,H as o,u as s,o as u}from"./index-f94d1b67.js";const i={style:{"text-align":"center"}},l={style:{color:"#333"},href:"https://github.com/vastsa/FileCodeBox"},f=a({__name:"AboutView",setup(_){const{t}=n();return(m,d)=>(u(),c("main",i,[e("span",null,[r(o(s(t)("admin.about.source1"))+" ",1),e("em",null,[e("a",l,o(s(t)("admin.about.source2")),1)])])]))}});export{f as default};
|
||||
Vendored
+1
-1
File diff suppressed because one or more lines are too long
+2
-2
File diff suppressed because one or more lines are too long
Vendored
+1
-1
File diff suppressed because one or more lines are too long
Vendored
+1
-1
File diff suppressed because one or more lines are too long
Vendored
+1
-1
File diff suppressed because one or more lines are too long
Vendored
+1
-1
File diff suppressed because one or more lines are too long
Vendored
+1
-1
@@ -1 +1 @@
|
||||
import{d as T,k as F,e as j,o as C,s as _,b as N,g as v,p as K,q as E,m as R,r as p,t as u,v as B,j as q,f as J,l as W,n as Y,S as H,w as Q}from"./el-popper-841245e0.js";import{ak as m,am as M,ah as V,al as X,aJ as Z}from"./request-fce5f68e.js";function k(t,e){for(var n=-1,o=t==null?0:t.length;++n<o&&e(t[n],n,t)!==!1;);return t}function z(t,e){return t&&T(e,F(e),t)}function tt(t,e){return t&&T(e,j(e),t)}function et(t,e){return T(t,C(t),e)}var rt=Object.getOwnPropertySymbols,nt=rt?function(t){for(var e=[];t;)N(e,C(t)),t=v(t);return e}:_;const x=nt;function at(t,e){return T(t,x(t),e)}function ot(t){return K(t,j,x)}var st=Object.prototype,ct=st.hasOwnProperty;function it(t){var e=t.length,n=new t.constructor(e);return e&&typeof t[0]=="string"&&ct.call(t,"index")&&(n.index=t.index,n.input=t.input),n}function ft(t,e){var n=e?E(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.byteLength)}var gt=/\w*$/;function bt(t){var e=new t.constructor(t.source,gt.exec(t));return e.lastIndex=t.lastIndex,e}var w=m?m.prototype:void 0,I=w?w.valueOf:void 0;function yt(t){return I?Object(I.call(t)):{}}var ut="[object Boolean]",Tt="[object Date]",lt="[object Map]",jt="[object Number]",pt="[object RegExp]",At="[object Set]",dt="[object String]",$t="[object Symbol]",St="[object ArrayBuffer]",mt="[object DataView]",wt="[object Float32Array]",It="[object Float64Array]",Ot="[object Int8Array]",ht="[object Int16Array]",Ft="[object Int32Array]",Ct="[object Uint8Array]",Et="[object Uint8ClampedArray]",Bt="[object Uint16Array]",Mt="[object Uint32Array]";function xt(t,e,n){var o=t.constructor;switch(e){case St:return E(t);case ut:case Tt:return new o(+t);case mt:return ft(t,n);case wt:case It:case Ot:case ht:case Ft:case Ct:case Et:case Bt:case Mt:return R(t,n);case lt:return new o;case jt:case dt:return new o(t);case pt:return bt(t);case At:return new o;case $t:return yt(t)}}var Lt="[object Map]";function Ut(t){return M(t)&&p(t)==Lt}var O=u&&u.isMap,Pt=O?B(O):Ut;const Dt=Pt;var Gt="[object Set]";function _t(t){return M(t)&&p(t)==Gt}var h=u&&u.isSet,Nt=h?B(h):_t;const vt=Nt;var Kt=1,Rt=2,qt=4,L="[object Arguments]",Jt="[object Array]",Wt="[object Boolean]",Yt="[object Date]",Ht="[object Error]",U="[object Function]",Qt="[object GeneratorFunction]",Vt="[object Map]",Xt="[object Number]",P="[object Object]",Zt="[object RegExp]",kt="[object Set]",zt="[object String]",te="[object Symbol]",ee="[object WeakMap]",re="[object ArrayBuffer]",ne="[object DataView]",ae="[object Float32Array]",oe="[object Float64Array]",se="[object Int8Array]",ce="[object Int16Array]",ie="[object Int32Array]",fe="[object Uint8Array]",ge="[object Uint8ClampedArray]",be="[object Uint16Array]",ye="[object Uint32Array]",r={};r[L]=r[Jt]=r[re]=r[ne]=r[Wt]=r[Yt]=r[ae]=r[oe]=r[se]=r[ce]=r[ie]=r[Vt]=r[Xt]=r[P]=r[Zt]=r[kt]=r[zt]=r[te]=r[fe]=r[ge]=r[be]=r[ye]=!0;r[Ht]=r[U]=r[ee]=!1;function l(t,e,n,o,g,s){var a,b=e&Kt,y=e&Rt,D=e&qt;if(n&&(a=g?n(t,o,g,s):n(t)),a!==void 0)return a;if(!V(t))return t;var A=X(t);if(A){if(a=it(t),!b)return q(t,a)}else{var f=p(t),d=f==U||f==Qt;if(J(t))return W(t,b);if(f==P||f==L||d&&!g){if(a=y||d?{}:Y(t),!b)return y?at(t,tt(a,t)):et(t,z(a,t))}else{if(!r[f])return g?t:{};a=xt(t,f,b)}}s||(s=new H);var $=s.get(t);if($)return $;s.set(t,a),vt(t)?t.forEach(function(c){a.add(l(c,e,n,c,t,s))}):Dt(t)&&t.forEach(function(c,i){a.set(i,l(c,e,n,i,t,s))});var G=D?y?ot:Q:y?j:F,S=A?void 0:G(t);return k(S||t,function(c,i){S&&(i=c,c=t[i]),Z(a,i,l(c,e,n,i,t,s))}),a}export{l as b};
|
||||
import{d as T,k as F,e as j,o as C,s as _,b as N,g as v,p as K,q as E,m as R,r as p,t as u,v as B,j as q,f as J,l as W,n as Y,S as H,w as Q}from"./el-popper-ccc40c61.js";import{ak as m,am as M,ah as V,al as X,aJ as Z}from"./request-b86d3b3e.js";function k(t,e){for(var n=-1,o=t==null?0:t.length;++n<o&&e(t[n],n,t)!==!1;);return t}function z(t,e){return t&&T(e,F(e),t)}function tt(t,e){return t&&T(e,j(e),t)}function et(t,e){return T(t,C(t),e)}var rt=Object.getOwnPropertySymbols,nt=rt?function(t){for(var e=[];t;)N(e,C(t)),t=v(t);return e}:_;const x=nt;function at(t,e){return T(t,x(t),e)}function ot(t){return K(t,j,x)}var st=Object.prototype,ct=st.hasOwnProperty;function it(t){var e=t.length,n=new t.constructor(e);return e&&typeof t[0]=="string"&&ct.call(t,"index")&&(n.index=t.index,n.input=t.input),n}function ft(t,e){var n=e?E(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.byteLength)}var gt=/\w*$/;function bt(t){var e=new t.constructor(t.source,gt.exec(t));return e.lastIndex=t.lastIndex,e}var w=m?m.prototype:void 0,I=w?w.valueOf:void 0;function yt(t){return I?Object(I.call(t)):{}}var ut="[object Boolean]",Tt="[object Date]",lt="[object Map]",jt="[object Number]",pt="[object RegExp]",At="[object Set]",dt="[object String]",$t="[object Symbol]",St="[object ArrayBuffer]",mt="[object DataView]",wt="[object Float32Array]",It="[object Float64Array]",Ot="[object Int8Array]",ht="[object Int16Array]",Ft="[object Int32Array]",Ct="[object Uint8Array]",Et="[object Uint8ClampedArray]",Bt="[object Uint16Array]",Mt="[object Uint32Array]";function xt(t,e,n){var o=t.constructor;switch(e){case St:return E(t);case ut:case Tt:return new o(+t);case mt:return ft(t,n);case wt:case It:case Ot:case ht:case Ft:case Ct:case Et:case Bt:case Mt:return R(t,n);case lt:return new o;case jt:case dt:return new o(t);case pt:return bt(t);case At:return new o;case $t:return yt(t)}}var Lt="[object Map]";function Ut(t){return M(t)&&p(t)==Lt}var O=u&&u.isMap,Pt=O?B(O):Ut;const Dt=Pt;var Gt="[object Set]";function _t(t){return M(t)&&p(t)==Gt}var h=u&&u.isSet,Nt=h?B(h):_t;const vt=Nt;var Kt=1,Rt=2,qt=4,L="[object Arguments]",Jt="[object Array]",Wt="[object Boolean]",Yt="[object Date]",Ht="[object Error]",U="[object Function]",Qt="[object GeneratorFunction]",Vt="[object Map]",Xt="[object Number]",P="[object Object]",Zt="[object RegExp]",kt="[object Set]",zt="[object String]",te="[object Symbol]",ee="[object WeakMap]",re="[object ArrayBuffer]",ne="[object DataView]",ae="[object Float32Array]",oe="[object Float64Array]",se="[object Int8Array]",ce="[object Int16Array]",ie="[object Int32Array]",fe="[object Uint8Array]",ge="[object Uint8ClampedArray]",be="[object Uint16Array]",ye="[object Uint32Array]",r={};r[L]=r[Jt]=r[re]=r[ne]=r[Wt]=r[Yt]=r[ae]=r[oe]=r[se]=r[ce]=r[ie]=r[Vt]=r[Xt]=r[P]=r[Zt]=r[kt]=r[zt]=r[te]=r[fe]=r[ge]=r[be]=r[ye]=!0;r[Ht]=r[U]=r[ee]=!1;function l(t,e,n,o,g,s){var a,b=e&Kt,y=e&Rt,D=e&qt;if(n&&(a=g?n(t,o,g,s):n(t)),a!==void 0)return a;if(!V(t))return t;var A=X(t);if(A){if(a=it(t),!b)return q(t,a)}else{var f=p(t),d=f==U||f==Qt;if(J(t))return W(t,b);if(f==P||f==L||d&&!g){if(a=y||d?{}:Y(t),!b)return y?at(t,tt(a,t)):et(t,z(a,t))}else{if(!r[f])return g?t:{};a=xt(t,f,b)}}s||(s=new H);var $=s.get(t);if($)return $;s.set(t,a),vt(t)?t.forEach(function(c){a.add(l(c,e,n,c,t,s))}):Dt(t)&&t.forEach(function(c,i){a.set(i,l(c,e,n,i,t,s))});var G=D?y?ot:Q:y?j:F,S=A?void 0:G(t);return k(S||t,function(c,i){S&&(i=c,c=t[i]),Z(a,i,l(c,e,n,i,t,s))}),a}export{l as b};
|
||||
Vendored
+1
-1
File diff suppressed because one or more lines are too long
Vendored
+1
-1
File diff suppressed because one or more lines are too long
Vendored
+1
-1
File diff suppressed because one or more lines are too long
+1
-1
@@ -1 +1 @@
|
||||
import{c as S,ax as _,b as P,y as V,u as W,M as k,k as y,_ as M,w as $}from"./request-fce5f68e.js";import{d as B,c as H,o as d,F as I,D as m,r as v,b as i,u as l,a as h,w as g,q as C,E as b,G as w,e as T,T as F}from"./index-db871d30.js";let f;const A=s=>{var a;if(!S)return 0;if(f!==void 0)return f;const o=document.createElement("div");o.className=`${s}-scrollbar__wrap`,o.style.visibility="hidden",o.style.width="100px",o.style.position="absolute",o.style.top="-9999px",document.body.appendChild(o);const n=o.offsetWidth;o.style.overflow="scroll";const e=document.createElement("div");e.style.width="100%",o.appendChild(e);const c=e.offsetWidth;return(a=o.parentNode)==null||a.removeChild(o),f=n-c,f};function J(s,a){if(!S)return;if(!a){s.scrollTop=0;return}const o=[];let n=a.offsetParent;for(;n!==null&&s!==n&&s.contains(n);)o.push(n),n=n.offsetParent;const e=a.offsetTop+o.reduce((t,u)=>t+u.offsetTop,0),c=e+a.offsetHeight,r=s.scrollTop,p=r+s.clientHeight;e<r?s.scrollTop=e:c>p&&(s.scrollTop=c-s.clientHeight)}const L=s=>["",..._].includes(s),R=P({type:{type:String,values:["success","info","warning","danger",""],default:""},closable:Boolean,disableTransitions:Boolean,hit:Boolean,color:{type:String,default:""},size:{type:String,values:_,default:""},effect:{type:String,values:["dark","light","plain"],default:"light"},round:Boolean}),q={close:s=>s instanceof MouseEvent,click:s=>s instanceof MouseEvent},D=B({name:"ElTag"}),G=B({...D,props:R,emits:q,setup(s,{emit:a}){const o=s,n=V(),e=W("tag"),c=H(()=>{const{type:t,hit:u,effect:E,closable:z,round:N}=o;return[e.b(),e.is("closable",z),e.m(t),e.m(n.value),e.m(E),e.is("hit",u),e.is("round",N)]}),r=t=>{a("close",t)},p=t=>{a("click",t)};return(t,u)=>t.disableTransitions?(d(),I("span",{key:0,class:i(l(c)),style:T({backgroundColor:t.color}),onClick:p},[m("span",{class:i(l(e).e("content"))},[v(t.$slots,"default")],2),t.closable?(d(),h(l(y),{key:0,class:i(l(e).e("close")),onClick:b(r,["stop"])},{default:g(()=>[C(l(k))]),_:1},8,["class","onClick"])):w("v-if",!0)],6)):(d(),h(F,{key:1,name:`${l(e).namespace.value}-zoom-in-center`,appear:""},{default:g(()=>[m("span",{class:i(l(c)),style:T({backgroundColor:t.color}),onClick:p},[m("span",{class:i(l(e).e("content"))},[v(t.$slots,"default")],2),t.closable?(d(),h(l(y),{key:0,class:i(l(e).e("close")),onClick:b(r,["stop"])},{default:g(()=>[C(l(k))]),_:1},8,["class","onClick"])):w("v-if",!0)],6)]),_:3},8,["name"]))}});var K=M(G,[["__file","/home/runner/work/element-plus/element-plus/packages/components/tag/src/tag.vue"]]);const O=$(K);export{O as E,A as g,L as i,J as s,R as t};
|
||||
import{c as S,ax as _,b as P,y as V,u as W,M as k,k as y,_ as M,w as $}from"./request-b86d3b3e.js";import{d as B,c as H,o as d,F as I,D as m,r as v,b as i,u as l,a as h,w as g,q as C,E as b,G as w,e as T,T as F}from"./index-f94d1b67.js";let f;const A=s=>{var a;if(!S)return 0;if(f!==void 0)return f;const o=document.createElement("div");o.className=`${s}-scrollbar__wrap`,o.style.visibility="hidden",o.style.width="100px",o.style.position="absolute",o.style.top="-9999px",document.body.appendChild(o);const n=o.offsetWidth;o.style.overflow="scroll";const e=document.createElement("div");e.style.width="100%",o.appendChild(e);const c=e.offsetWidth;return(a=o.parentNode)==null||a.removeChild(o),f=n-c,f};function J(s,a){if(!S)return;if(!a){s.scrollTop=0;return}const o=[];let n=a.offsetParent;for(;n!==null&&s!==n&&s.contains(n);)o.push(n),n=n.offsetParent;const e=a.offsetTop+o.reduce((t,u)=>t+u.offsetTop,0),c=e+a.offsetHeight,r=s.scrollTop,p=r+s.clientHeight;e<r?s.scrollTop=e:c>p&&(s.scrollTop=c-s.clientHeight)}const L=s=>["",..._].includes(s),R=P({type:{type:String,values:["success","info","warning","danger",""],default:""},closable:Boolean,disableTransitions:Boolean,hit:Boolean,color:{type:String,default:""},size:{type:String,values:_,default:""},effect:{type:String,values:["dark","light","plain"],default:"light"},round:Boolean}),q={close:s=>s instanceof MouseEvent,click:s=>s instanceof MouseEvent},D=B({name:"ElTag"}),G=B({...D,props:R,emits:q,setup(s,{emit:a}){const o=s,n=V(),e=W("tag"),c=H(()=>{const{type:t,hit:u,effect:E,closable:z,round:N}=o;return[e.b(),e.is("closable",z),e.m(t),e.m(n.value),e.m(E),e.is("hit",u),e.is("round",N)]}),r=t=>{a("close",t)},p=t=>{a("click",t)};return(t,u)=>t.disableTransitions?(d(),I("span",{key:0,class:i(l(c)),style:T({backgroundColor:t.color}),onClick:p},[m("span",{class:i(l(e).e("content"))},[v(t.$slots,"default")],2),t.closable?(d(),h(l(y),{key:0,class:i(l(e).e("close")),onClick:b(r,["stop"])},{default:g(()=>[C(l(k))]),_:1},8,["class","onClick"])):w("v-if",!0)],6)):(d(),h(F,{key:1,name:`${l(e).namespace.value}-zoom-in-center`,appear:""},{default:g(()=>[m("span",{class:i(l(c)),style:T({backgroundColor:t.color}),onClick:p},[m("span",{class:i(l(e).e("content"))},[v(t.$slots,"default")],2),t.closable?(d(),h(l(y),{key:0,class:i(l(e).e("close")),onClick:b(r,["stop"])},{default:g(()=>[C(l(k))]),_:1},8,["class","onClick"])):w("v-if",!0)],6)]),_:3},8,["name"]))}});var K=M(G,[["__file","/home/runner/work/element-plus/element-plus/packages/components/tag/src/tag.vue"]]);const O=$(K);export{O as E,A as g,L as i,J as s,R as t};
|
||||
+1
-1
File diff suppressed because one or more lines are too long
|
Before Width: | Height: | Size: 42 KiB After Width: | Height: | Size: 42 KiB |
+1
-1
File diff suppressed because one or more lines are too long
+1
-1
@@ -1 +1 @@
|
||||
import{X as A,K as N}from"./index-db871d30.js";var o=(E=>(E[E.TEXT=1]="TEXT",E[E.CLASS=2]="CLASS",E[E.STYLE=4]="STYLE",E[E.PROPS=8]="PROPS",E[E.FULL_PROPS=16]="FULL_PROPS",E[E.HYDRATE_EVENTS=32]="HYDRATE_EVENTS",E[E.STABLE_FRAGMENT=64]="STABLE_FRAGMENT",E[E.KEYED_FRAGMENT=128]="KEYED_FRAGMENT",E[E.UNKEYED_FRAGMENT=256]="UNKEYED_FRAGMENT",E[E.NEED_PATCH=512]="NEED_PATCH",E[E.DYNAMIC_SLOTS=1024]="DYNAMIC_SLOTS",E[E.HOISTED=-1]="HOISTED",E[E.BAIL=-2]="BAIL",E))(o||{});const e=E=>{const _=A(E)?E:[E],S=[];return _.forEach(T=>{var r;A(T)?S.push(...e(T)):N(T)&&A(T.children)?S.push(...e(T.children)):(S.push(T),N(T)&&((r=T.component)!=null&&r.subTree)&&S.push(...e(T.component.subTree)))}),S};export{o as P,e as f};
|
||||
import{X as A,K as N}from"./index-f94d1b67.js";var o=(E=>(E[E.TEXT=1]="TEXT",E[E.CLASS=2]="CLASS",E[E.STYLE=4]="STYLE",E[E.PROPS=8]="PROPS",E[E.FULL_PROPS=16]="FULL_PROPS",E[E.HYDRATE_EVENTS=32]="HYDRATE_EVENTS",E[E.STABLE_FRAGMENT=64]="STABLE_FRAGMENT",E[E.KEYED_FRAGMENT=128]="KEYED_FRAGMENT",E[E.UNKEYED_FRAGMENT=256]="UNKEYED_FRAGMENT",E[E.NEED_PATCH=512]="NEED_PATCH",E[E.DYNAMIC_SLOTS=1024]="DYNAMIC_SLOTS",E[E.HOISTED=-1]="HOISTED",E[E.BAIL=-2]="BAIL",E))(o||{});const e=E=>{const _=A(E)?E:[E],S=[];return _.forEach(T=>{var r;A(T)?S.push(...e(T)):N(T)&&A(T.children)?S.push(...e(T.children)):(S.push(T),N(T)&&((r=T.component)!=null&&r.subTree)&&S.push(...e(T.component.subTree)))}),S};export{o as P,e as f};
|
||||
Vendored
+1
-1
@@ -8,7 +8,7 @@
|
||||
<meta name="keywords" content="{{keywords}}" />
|
||||
<meta name="generator" content="FileCodeBox2.0" />
|
||||
<title>{{title}}</title>
|
||||
<script type="module" crossorigin src="/assets/index-db871d30.js"></script>
|
||||
<script type="module" crossorigin src="/assets/index-f94d1b67.js"></script>
|
||||
<link rel="stylesheet" href="/assets/index-76720517.css">
|
||||
</head>
|
||||
<body style="background: url('{{background}}') no-repeat center center fixed;background-size: cover;">
|
||||
|
||||
@@ -62,7 +62,7 @@ function renderMarkdown(message: string) {
|
||||
}
|
||||
|
||||
function getQrCodeUrl(code: string) {
|
||||
return code.startsWith('http') ? code : window.location.origin + code;
|
||||
return code.toString().startsWith('http') ? code : window.location.origin + code;
|
||||
}
|
||||
</script>
|
||||
|
||||
|
||||
@@ -31,20 +31,20 @@ app.add_middleware(
|
||||
async def assets(file_path: str):
|
||||
if settings.max_save_seconds > 0:
|
||||
if re.match(r'SendView-[\d|a-f|A-F]+\.js', file_path):
|
||||
with open(BASE_DIR / f'./dist/assets/{file_path}', 'r', encoding='utf-8') as f:
|
||||
with open(BASE_DIR / f'fcb-fronted/dist/assets/{file_path}', 'r', encoding='utf-8') as f:
|
||||
# 删除永久保存选项
|
||||
content = f.read()
|
||||
content = content.replace('_(c,{label:e(r)("send.expireData.forever"),value:"forever"},null,8,["label"]),', '')
|
||||
return HTMLResponse(content=content, media_type='text/javascript')
|
||||
if re.match(r'index-[\d|a-f|A-F]+\.js', file_path):
|
||||
with open(BASE_DIR / f'./dist/assets/{file_path}', 'r', encoding='utf-8') as f:
|
||||
with open(BASE_DIR / f'fcb-fronted/dist/assets/{file_path}', 'r', encoding='utf-8') as f:
|
||||
# 更改本文描述
|
||||
desc_zh, desc_en = await max_save_times_desc(settings.max_save_seconds)
|
||||
content = f.read()
|
||||
content = content.replace('天数<7', desc_zh)
|
||||
content = content.replace('Days <7', desc_en)
|
||||
return HTMLResponse(content=content, media_type='text/javascript')
|
||||
return FileResponse(f'./dist/assets/{file_path}')
|
||||
return FileResponse(f'fcb-fronted/dist/assets/{file_path}')
|
||||
|
||||
|
||||
register_tortoise(
|
||||
@@ -79,7 +79,7 @@ async def startup_event():
|
||||
@app.get('/')
|
||||
async def index():
|
||||
return HTMLResponse(
|
||||
content=open(BASE_DIR / './dist/index.html', 'r', encoding='utf-8').read()
|
||||
content=open(BASE_DIR / 'fcb-fronted/dist/index.html', 'r', encoding='utf-8').read()
|
||||
.replace('{{title}}', str(settings.name))
|
||||
.replace('{{description}}', str(settings.description))
|
||||
.replace('{{keywords}}', str(settings.keywords))
|
||||
Reference in New Issue
Block a user