@@ -153,30 +153,31 @@ export class Project {
153153 }
154154
155155 async callAPI ( req : ServerRequest , loc : { pathname : string , search ?: string } ) : Promise < APIHandle | null > {
156- const [ { pagePath , params , query } ] = this . #apiRouting. createRouter ( loc )
157- if ( pagePath != '' ) {
158- const moduleID = pagePath + '.js'
156+ const [ url ] = this . #apiRouting. createRouter ( loc )
157+ if ( url . pagePath != '' ) {
158+ const moduleID = url . pagePath + '.js'
159159 if ( this . #modules. has ( moduleID ) ) {
160160 try {
161161 const { default : handle } = await import ( 'file://' + this . #modules. get ( moduleID ) ! . jsFile )
162- handle (
163- new AlephAPIRequest ( req , params , query ) ,
162+ await handle (
163+ new AlephAPIRequest ( req , url ) ,
164164 new AlephAPIResponse ( req )
165165 )
166166 } catch ( err ) {
167167 req . respond ( {
168168 status : 500 ,
169169 headers : new Headers ( { 'Content-Type' : 'text/plain; charset=utf-8' } ) ,
170170 body : JSON . stringify ( { error : { status : 500 , message : err . message } } )
171- } )
171+ } ) . catch ( err => log . warn ( 'ServerRequest.respond:' , err . message ) )
172+ log . error ( 'callAPI:' , err )
172173 }
173174 }
174175 } else {
175176 req . respond ( {
176177 status : 404 ,
177178 headers : new Headers ( { 'Content-Type' : 'application/javascript; charset=utf-8' } ) ,
178179 body : JSON . stringify ( { error : { status : 404 , message : 'page not found' } } )
179- } )
180+ } ) . catch ( err => log . warn ( 'ServerRequest.respond:' , err . message ) )
180181 }
181182 return null
182183 }
@@ -859,21 +860,21 @@ export class Project {
859860 ` };` ,
860861 ` if (ref.current) {` ,
861862 ` ref.current.querySelectorAll("a").forEach(a => {` ,
862- ` const href = a.getAttribute("href")` ,
863+ ` const href = a.getAttribute("href"); ` ,
863864 ` if (href && !/^(https?|mailto|file):/i.test(href)) {` ,
864865 ` a.addEventListener("click", onClick, false);` ,
865866 ` appLinks.push(a);` ,
866867 ` }` ,
867868 ` });` ,
868869 ` }` ,
869870 ` return () => appLinks.forEach(a => a.removeEventListener("click", onClick));` ,
870- ` }, [])` ,
871+ ` }, []); ` ,
871872 ` return React.createElement("div", {className: "markdown-page", ref, dangerouslySetInnerHTML: {__html: ${ JSON . stringify ( html ) } }});` ,
872873 `}` ,
873874 `MarkdownPage.meta = ${ JSON . stringify ( props , undefined , this . isDev ? 4 : undefined ) } ;` ,
874875 this . isDev && `_s(MarkdownPage, "useRef{ref}\\nuseEffect{}");` ,
875876 this . isDev && `$RefreshReg$(MarkdownPage, "MarkdownPage");` ,
876- ] . filter ( Boolean ) . join ( this . isDev ? '\n' : '' )
877+ ] . filter ( Boolean ) . map ( l => this . isDev ? String ( l ) . trim ( ) : l ) . join ( this . isDev ? '\n' : '' )
877878 mod . jsSourceMap = ''
878879 mod . hash = ( new Sha1 ) . update ( mod . jsContent ) . hex ( )
879880 } else {
0 commit comments