@mapl/web 0.1.8 → 0.1.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/constants.js +1 -1
- package/core/compile.d.ts +3 -1
- package/core/compile.js +1 -1
- package/core/context.d.ts +1 -1
- package/core/context.js +1 -1
- package/core/index.js +1 -1
- package/package.json +7 -7
- package/utils/cors.d.ts +6 -3
package/constants.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{MAPL,
|
|
1
|
+
import{MAPL,CTX,PATH,REQ,URL,PATH_START,PATH_END,TMP}from"@mapl/framework/constants";export*from"@mapl/framework/constants";export let WEB=MAPL+`w`;export let CTX_FN=WEB+`c`;export let CTX_INIT=`let `+CTX+`=`+CTX_FN+`(`+REQ+`);`;export let PARSE_PATH=`let `+URL+`=`+REQ+`.url,`+PATH_START+`=`+URL+`.indexOf("/",12)+1,`+PATH_END+`=`+URL+`.indexOf("?",`+PATH_START+`),`+PATH+`=`+PATH_END+`===-1?`+URL+`.slice(`+PATH_START+`):`+URL+`.slice(`+PATH_START+`,`+PATH_END+`);`;export let CHTML=WEB+`h`;export let CJSON=WEB+`j`;export let OHTML=WEB+`oh`;export let OJSON=WEB+`oj`;export let R404=WEB+`n`;export let R400=WEB+`b`;export let GLOBALS=`var `+TMP+`=["text/html","application/json"].map(c=>["Content-Type",c]),[`+CHTML+`,`+CJSON+`]=`+TMP+`,[`+OHTML+`,`+OJSON+`]=`+TMP+`.map(c=>({headers:[c]})),[`+R404+`,`+R400+`]=[404,400].map(s=>new Response(null,{status:s}))`;
|
package/core/compile.d.ts
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import type { RouterTag } from "./index.js";
|
|
2
|
-
export declare const
|
|
2
|
+
export declare const compileToState: (router: RouterTag) => void;
|
|
3
|
+
export declare const stateToString: () => string;
|
|
4
|
+
export declare const stateToArgs: () => string;
|
|
3
5
|
declare const _default: (router: RouterTag) => ((req: Request) => any);
|
|
4
6
|
export default _default;
|
package/core/compile.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{compileGroup,createArgSet,AsyncFunction,compilerState as state}from"@mapl/framework";import compile from"@mapl/router/method/compiler";import{countParams}from"@mapl/router/path";import{isErr}from"@safe-std/error";import createContext from"./context.js";let paramArgs=createArgSet(new Array(16).fill(0).map((_1,i)=>`q`+i));let compileReturn=(dat,fnAsync,scopeAsync,contextCreated,result)=>{let typ=dat.type;if(typ===`raw`)return`return `+result;if(fnAsync)result=`await `+result;let str=typ==null?`return new Response(`+result+(contextCreated?`,c)`:`)`):contextCreated?`mh.push(`+(typ===`json`?`mwj`:`mwh`)+`);return new Response(`+(typ===`json`?`JSON.stringify(`+result+`)`:result)+`,c)`:`return new Response(`+(typ===`json`?`JSON.stringify(`+result+`),mwoj`:result+`,mwoh`)+`)`;return fnAsync&&!scopeAsync?`return (async()=>{`+str+`})()`:str};let compileHandler=(fn,dat,path,scope)=>{let call=`f`+state[1].push(fn)+`(`;let paramCount=countParams(path);if(paramCount>0)call+=paramArgs[paramCount];if(fn.length>paramCount){call+=paramCount===0?`c`:`,c`;if(!scope[1])return state[2]+compileReturn(dat,fn instanceof AsyncFunction,scope[0],true,call+`)`)}return compileReturn(dat,fn instanceof AsyncFunction,scope[0],scope[1],call+`)`)};let compileErrorHandler=(fn,dat,scope)=>{let call=`f`+state[1].push(fn)+`(t`;if(fn.length>1){call+=`,c`;if(!scope[1])return state[2]+compileReturn(dat,fn instanceof AsyncFunction,scope[0],true,call+`)`)}return compileReturn(dat,fn instanceof AsyncFunction,scope[0],scope[1],call+`)`)};export let
|
|
1
|
+
import{compileGroup,createArgSet,AsyncFunction,compilerState as state}from"@mapl/framework";import compile from"@mapl/router/method/compiler";import{countParams}from"@mapl/router/path";import{isErr}from"@safe-std/error";import createContext from"./context.js";let paramArgs=createArgSet(new Array(16).fill(0).map((_1,i)=>`q`+i));let compileReturn=(dat,fnAsync,scopeAsync,contextCreated,result)=>{let typ=dat.type;if(typ===`raw`)return`return `+result;if(fnAsync)result=`await `+result;let str=typ==null?`return new Response(`+result+(contextCreated?`,c)`:`)`):contextCreated?`mh.push(`+(typ===`json`?`mwj`:`mwh`)+`);return new Response(`+(typ===`json`?`JSON.stringify(`+result+`)`:result)+`,c)`:`return new Response(`+(typ===`json`?`JSON.stringify(`+result+`),mwoj`:result+`,mwoh`)+`)`;return fnAsync&&!scopeAsync?`return (async()=>{`+str+`})()`:str};let compileHandler=(fn,dat,path,scope)=>{let call=`f`+state[1].push(fn)+`(`;let paramCount=countParams(path);if(paramCount>0)call+=paramArgs[paramCount];if(fn.length>paramCount){call+=paramCount===0?`c`:`,c`;if(!scope[1])return state[2]+compileReturn(dat,fn instanceof AsyncFunction,scope[0],true,call+`)`)}return compileReturn(dat,fn instanceof AsyncFunction,scope[0],scope[1],call+`)`)};let compileErrorHandler=(fn,dat,scope)=>{let call=`f`+state[1].push(fn)+`(t`;if(fn.length>1){call+=`,c`;if(!scope[1])return state[2]+compileReturn(dat,fn instanceof AsyncFunction,scope[0],true,call+`)`)}return compileReturn(dat,fn instanceof AsyncFunction,scope[0],scope[1],call+`)`)};export let compileToState=router=>{state[0]={};state[1]=[];state[2]=`let c=mwc(r);`;state[3]=compileHandler;state[4]=compileErrorHandler;compileGroup(router,[false,false,,`return mwb`,false],``,``)};export let stateToString=()=>`"use strict";var t=["text/html","application/json"].map(c=>["Content-Type",c]),[mwh,mwj]=t,[mwoh,mwoj]=t.map(c=>({headers:[c]})),[mwn,mwb]=[404,400].map(s=>new Response(null,{status:s}));return(r)=>{`+compile(state[0],`r.method`,`let u=r.url,s=u.indexOf("/",12)+1,e=u.indexOf("?",s),p=e===-1?u.slice(s):u.slice(s,e);`,1)+`return mwn}`;export let stateToArgs=()=>{let depsString=`me,mwc`;let deps=state[1];for(let i=0;i<deps.length;i++)depsString+=`,f`+(i+1);return depsString};export default router=>{compileToState(router);return Function(stateToArgs(),stateToString())(isErr,createContext,...state[1])};
|
package/core/context.d.ts
CHANGED
package/core/context.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export default
|
|
1
|
+
export default r=>({status:200,req:r,headers:[]});
|
package/core/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export default (middlewares,handlers,children)=>[middlewares,handlers
|
|
1
|
+
export default (middlewares,handlers,children)=>[middlewares,handlers,,children];
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mapl/web",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.10",
|
|
4
4
|
"description": "A compiled web framework for all runtimes",
|
|
5
5
|
"keywords": [],
|
|
6
6
|
"repository": {
|
|
@@ -12,19 +12,19 @@
|
|
|
12
12
|
"main": "./index.js",
|
|
13
13
|
"types": "./index.d.ts",
|
|
14
14
|
"dependencies": {
|
|
15
|
-
"@mapl/framework": "^0.2.
|
|
15
|
+
"@mapl/framework": "^0.2.6",
|
|
16
16
|
"@mapl/router": "^0.6.0",
|
|
17
17
|
"@safe-std/error": "^1.0.0"
|
|
18
18
|
},
|
|
19
19
|
"exports": {
|
|
20
20
|
"./constants": "./constants.js",
|
|
21
|
-
"
|
|
21
|
+
"./utils/cors": "./utils/cors.js",
|
|
22
|
+
"./core/context": "./core/context.js",
|
|
23
|
+
"./core/middleware": "./core/middleware.js",
|
|
22
24
|
"./core": "./core/index.js",
|
|
23
25
|
"./core/compile": "./core/compile.js",
|
|
26
|
+
".": "./index.js",
|
|
24
27
|
"./core/utils": "./core/utils.js",
|
|
25
|
-
"./core/
|
|
26
|
-
"./core/context": "./core/context.js",
|
|
27
|
-
"./core/handler": "./core/handler.js",
|
|
28
|
-
"./utils/cors": "./utils/cors.js"
|
|
28
|
+
"./core/handler": "./core/handler.js"
|
|
29
29
|
}
|
|
30
30
|
}
|
package/utils/cors.d.ts
CHANGED
|
@@ -1,10 +1,13 @@
|
|
|
1
1
|
import { type MiddlewareTypes } from "../core/middleware.js";
|
|
2
|
-
import type { Tag } from "../core/utils.js";
|
|
3
2
|
type HeaderValue = "*" | (string & {}) | [string, string, ...string[]];
|
|
4
3
|
declare const header: unique symbol;
|
|
5
|
-
|
|
4
|
+
interface Header {
|
|
5
|
+
[header]: 0;
|
|
6
|
+
}
|
|
6
7
|
declare const preflight: unique symbol;
|
|
7
|
-
|
|
8
|
+
interface PreflightHeader {
|
|
9
|
+
[preflight]: 0;
|
|
10
|
+
}
|
|
8
11
|
export declare const allowMethods: (v: HeaderValue) => PreflightHeader;
|
|
9
12
|
export declare const allowHeaders: (v: HeaderValue) => PreflightHeader;
|
|
10
13
|
export declare const maxAge: (v: number) => PreflightHeader;
|