PageSourceSearch

https://novelmtl.app/assets/ReadingPage-CWBmPygH.js

js novelmtl.app collected 2026-10-09 17:43:22 UTC 5,898 bytes, 1 lines download raw bytes

1import{n as U,h as Y,d as Z,a5 as G,k as m,r as N,o as J,w as K,c as R,b as O,L as C,u as X,B as ee,f as p,a as ae,e as o,Q as g,l as q,W as L,E as v,_ as te,a6 as ne,a7 as re,Z as se,g as f,$ as oe,Y as E}from"./index-B2va6jSB.js";import{P as le}from"./PageContainer-cQaT9wUR.js";import{u as Q,_ as ie}from"./novels-CWGjpGCu.js";import{d as ce}from"./useSeo-CkkKCFAA.js";import{a as ue}from"./featured-Zz4xZ26i.js";import{_ as pe}from"./_plugin-vue_export-helper-DlAUqK2U.js";import"./position-engine-D5632kKV.js";import"./focus-manager-QQPFsIcM.js";import"./novels-Bw81xqYn.js";import"./axios-BdprTfx1.js";const me=U({name:"QSpace",setup(){const y=Y("div",{class:"q-space"});return()=>y}}),ge={class:"q-py-sm"},fe={class:"row items-center q-gutter-sm"},de={class:"text-body2"},ve={key:0,class:"q-pa-lg text-center"},he={key:1,class:"q-pa-lg text-center"},_e={class:"q-mt-md text-negative"},ye={key:2},be={class:"text-h6 q-mb-md text-center"},qe={key:3,class:"q-pa-lg text-center text-grey-6"},xe={class:"row items-center q-gutter-md justify-center q-mb-md q-mr-sm"},ke={class:"custom-sticky-btn"},Pe=Z({async preFetch({store:y,currentRoute:h,redirect:c}){try{const n=Q(y),e=String(h.params.slug||""),l=Number(h.params.page||1);if(!e||e==="undefined"){c({name:"not-found",params:{catchAll:"invalid-slug"},query:{reason:"novel"}});return}if(!Number.isInteger(l)||l<1){c({name:"not-found",params:{catchAll:e},query:{reason:"page",slug:e}});return}if(await n.fetchNovel(e),!n.current){c({name:"not-found",params:{catchAll:e},query:{reason:"novel"}});return}const a=Number(n.current.page_count||0);if(a>0&&l>a){c({name:"not-found",params:{catchAll:e},query:{reason:"page",slug:e}});return}if(await n.fetchPage(e,l),!n.page){c({name:"not-found",params:{catchAll:e},query:{reason:"page",slug:e}});return}}catch(n){if(console.error("[ReadingPage] PreFetch error:",n),n?.response?.status===404){const l=String(h.params.slug||"");c({name:"not-found",params:{catchAll:l},query:{reason:"novel"}})}}},__name:"ReadingPage",setup(y){function h(t){return(t||"").split(/\n/)}function c(t,r,s,d){C()&&(d.setSavedPage(t,r),s.current?d.upsertMeta(t,{title:s.current.title,chinese_title:s.current.chinese_title??null,author:s.current.author??null,page_count:s.current.page_count??null,genres:Array.isArray(s.current.genres)?s.current.genres:null},r):d.upsertPage(t,r))}const n=G(),e=X(),l=ee(),a=Q(),x=ue(),i=m(()=>String(e.params.slug||"")),u=m(()=>Number(e.params.page||1)),S=m(()=>a.current),I=m(()=>`Page ${u.value}`),V=N(null),b=N(!1),k=N(null),w=m(()=>a.page?.content?h(a.page.content):[]),$=m(()=>({fontSize:n.fontSize+"px",lineHeight:2})),W=m(()=>a.current?.page_count||1/0),z=m(()=>u.value<=1),A=m(()=>u.value>=W.value);function H(){n.setFontSize(n.fontSize+1)}function D(){n.setFontSize(n.fontSize-1)}function M(){P(u.value,{forceRefresh:!0})}function F(t){l.replace({name:"read",params:{slug:i.value,page:t}})}function T(){z.value||F(u.value-1)}function j(){A.value||F(u.value+1)}function B(){return a.current&&a.page&&a.page.novel_id===a.current.id&&a.page.page_number===u.value}async function P(t,{forceRefresh:r=!1}={}){if(k.value=null,!r&&B()){c(i.value,t,a,x);return}C()&&(b.value=!0);try{if(a.current||await a.fetchNovel(i.value),!a.current&&!a.loading){const _=e.path.startsWith("/")?e.path.slice(1):e.path;l.replace({name:"not-found",params:{catchAll:_},query:{...e.query,reason:"novel"},hash:e.hash});return}const s=Number(a.current?.page_count||0)||0;if(!(Number.isInteger(t)&&t>=1&&(s===0||t<=s))){const _=e.path.startsWith("/")?e.path.slice(1):e.path;l.replace({name:"not-found",params:{catchAll:_},query:{...e.query,reason:"page",slug:i.value},hash:e.hash});return}if(await a.fetchPage(i.value,t),!a.page){const _=e.path.startsWith("/")?e.path.slice(1):e.path;l.replace({name:"not-found",params:{catchAll:_},query:{...e.query,reason:"page",slug:i.value},hash:e.hash});return}c(i.value,a.page.page_number,a,x)}finally{C()&&(b.value=!1)}}return J(async()=>{B()?a.page&&c(i.value,a.page.page_number,a,x):await P(u.value)}),K(()=>e.params.page,async t=>{const r=Number(t||1);await P(r,{forceRefresh:!0})}),ce(i,u,S),(t,r)=>(f(),R(le,{class:"reading-page"},{default:O(()=>[p("div",ge,[p("div",fe,[o(g,{onClick:r[0]||(r[0]=s=>t.$router.back()),icon:"arrow_back","fab-mini":"",flat:"","no-caps":"",class:"text-subtitle1 text-weight-medium",label:"Back"}),o(me),o(g,{flat:"","fab-mini":"",icon:"zoom_out",onClick:D,"aria-label":"Smaller"}),p("div",de,q(L(n).fontSize)+"px",1),o(g,{flat:"","fab-mini":"",icon:"zoom_in",onClick:H,"aria-label":"Larger"})])]),p("article",{class:"text-block",style:re($.value),ref_key:"articleEl",ref:V},[b.value?(f(),v("div",ve,[o(oe,{size:"40px",color:"primary"}),r[1]||(r[1]=p("div",{class:"q-mt-md"},"Loading page...",-1))])):k.value?(f(),v("div",he,[o(E,{name:"error_outline",size:"40px",color:"negative"}),p("div",_e,q(k.value),1),o(g,{flat:"",color:"primary",label:"Retry",onClick:M,class:"q-mt-sm"}
1)])):w.value.length?(f(),v("div",ye,[p("div",be,q(I.value),1),(f(!0),v(te,null,ne(w.value,(s,d)=>(f(),v("p",{class:"q-px-md q-mb-md",key:d},q(s),1))),128))])):(f(),v("div",qe,[o(E,{name:"menu_book",size:"40px"}),r[2]||(r[2]=p("div",{class:"q-mt-md"},"No content available",-1))]))],4),p("div",xe,[o(g,{"fab-mini":"",icon:"chevron_left",disable:z.value,onClick:T,label:"Previous","no-caps":""},null,8,["disable"]),o(g,{"fab-mini":"",icon:"menu",to:{name:"novel",params:{slug:i.value}},label:"Page List","no-caps":""},null,8,["to"]),o(g,{"fab-mini":"","icon-right":"chevron_right",disable:A.value,onClick:j,label:"Next","no-caps":""},null,8,["disable"])]),S.value&&!b.value?(f(),R(ie,{key:u.value,"exclude-slug":i.value},null,8,["exclude-slug"])):ae("",!0),p("div",ke,[o(g,{round:"",color:"primary",icon:"vertical_align_top","aria-label":"Back to top",onClick:L(se)},null,8,["onClick"])])]),_:1}))}}),Ee=pe(Pe,[["__scopeId","data-v-3837fda5"]]);export{Ee as default};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.