expediate 0.0.3 → 1.0.1
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/.npmignore +7 -5
- package/LICENSE +21 -0
- package/README.md +662 -51
- package/dist/apis.d.ts +166 -0
- package/dist/apis.d.ts.map +1 -0
- package/dist/apis.js.map +1 -0
- package/dist/git.d.ts +74 -0
- package/dist/git.d.ts.map +1 -0
- package/dist/git.js.map +1 -0
- package/dist/index.d.ts +21 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +55 -0
- package/dist/index.js.map +1 -0
- package/dist/jwt-auth.d.ts +280 -0
- package/dist/jwt-auth.d.ts.map +1 -0
- package/dist/jwt-auth.js.map +1 -0
- package/dist/misc.d.ts +203 -0
- package/dist/misc.d.ts.map +1 -0
- package/dist/misc.js.map +1 -0
- package/dist/router.d.ts +224 -0
- package/dist/router.d.ts.map +1 -0
- package/dist/router.js.map +1 -0
- package/dist/static.d.ts +164 -0
- package/dist/static.d.ts.map +1 -0
- package/dist/static.js.map +1 -0
- package/package.json +31 -7
- package/src/apis.ts +428 -0
- package/src/git.ts +326 -0
- package/src/index.ts +85 -0
- package/src/jwt-auth.ts +861 -0
- package/src/mimetypes.json +1 -0
- package/src/misc.ts +734 -0
- package/src/router.ts +736 -0
- package/src/static.ts +904 -0
- package/.gitignore +0 -14
- package/index.js +0 -305
- package/sample.js +0 -9
- package/static.js +0 -416
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"jwt-auth.js","sourceRoot":"","sources":["../src/jwt-auth.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AACH;;;;;;;;;;;;;;;;;;GAkBG;;;;;;AAkKH,oCAEC;AAkpBgD,qCAAa;AAnO9D,0CA8NC;AAKQ,8BAAS;AAAE,kCAAW;AApzB/B,oDAA4B;AAmJ5B,8EAA8E;AAC9E,iEAAiE;AACjE,8EAA8E;AAE9E;;;;;;;;GAQG;AACH,SAAgB,YAAY,CAAC,QAAgB;IAC3C,OAAO,gBAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AACpE,CAAC;AAED;;;;;;GAMG;AACU,QAAA,YAAY,GAAG,IAAI,GAAG,CAAqB;IACtD,CAAC,OAAO,EAAE;YACR,EAAE,EAAY,SAAS;YACvB,QAAQ,EAAM,OAAO;YACrB,YAAY,EAAE,YAAY,CAAC,aAAa,CAAC;YACzC,KAAK,EAAS,CAAC,OAAO,EAAE,QAAQ,CAAC;YACjC,WAAW,EAAG,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,cAAc,CAAC;SAC1D,CAAC;IACF,CAAC,KAAK,EAAE;YACN,EAAE,EAAY,SAAS;YACvB,QAAQ,EAAM,KAAK;YACnB,YAAY,EAAE,YAAY,CAAC,WAAW,CAAC;YACvC,KAAK,EAAS,CAAC,QAAQ,CAAC;YACxB,WAAW,EAAG,CAAC,MAAM,EAAE,OAAO,CAAC;SAChC,CAAC;IACF,CAAC,SAAS,EAAE;YACV,EAAE,EAAY,SAAS;YACvB,QAAQ,EAAM,SAAS;YACvB,YAAY,EAAE,YAAY,CAAC,SAAS,CAAC;YACrC,KAAK,EAAS,CAAC,QAAQ,CAAC;YACxB,WAAW,EAAG,CAAC,MAAM,CAAC;SACvB,CAAC;CACH,CAAC,CAAC;AAEH,8EAA8E;AAC9E,wBAAwB;AACxB,8EAA8E;AAE9E,MAAM,cAAc,GAAc;IAChC,iBAAiB,EAAG,oCAAoC;IACxD,kBAAkB,EAAE,qCAAqC;IACzD,iBAAiB,EAAG,EAAE,GAAG,EAAE,EAAU,aAAa;IAClD,kBAAkB,EAAE,CAAC,GAAG,EAAE,GAAG,IAAI,EAAI,SAAS;IAC9C,MAAM,EAAc,UAAU;IAC9B,WAAW,EAAS,KAAK;IACzB,GAAG,EAAiB,OAAO;IAE3B,QAAQ,EAAK,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ;IACpC,SAAS,EAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,oBAAY,CAAC,GAAG,CAAC,QAAQ,CAAC;IAErD,wEAAwE;IACxE,kEAAkE;IAClE,kEAAkE;IAClE,eAAe,EAAE,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,KAAK,YAAY,CAAC,QAAQ,CAAC;IAEjF,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAClB,GAAG,EAAU,IAAI,CAAC,EAAE;QACpB,QAAQ,EAAK,IAAI,CAAC,QAAQ;QAC1B,KAAK,EAAQ,IAAI,CAAC,KAAK;QACvB,WAAW,EAAE,IAAI,CAAC,WAAW;KAC9B,CAAC;IAEF,iBAAiB,EAAE,IAAI,GAAG,EAA4B;CACvD,CAAC;AAEF,8EAA8E;AAC9E,kDAAkD;AAClD,8EAA8E;AAE9E;;;;;;GAMG;AACH,SAAS,eAAe,CAAC,IAAY;IACnC,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;SACrC,QAAQ,CAAC,QAAQ,CAAC;SAClB,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;SACjB,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC;SACnB,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AACzB,CAAC;AAED;;;;;;GAMG;AACH,SAAS,eAAe,CAAC,GAAW;IAClC,MAAM,MAAM,GAAG,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAC5D,OAAO,IAAI,CAAC,KAAK,CACf,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CACrF,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,SAAS,eAAe,CACtB,aAAsB,EACtB,cAAsB,EACtB,MAAsB,EACtB,GAA4B;IAE5B,4EAA4E;IAC5E,2EAA2E;IAC3E,6EAA6E;IAC7E,iFAAiF;IACjF,MAAM,UAAU,GAAG,MAAM,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,+BAA+B;IAC5E,OAAO,gBAAM;SACV,UAAU,CAAC,UAAU,EAAE,MAAM,CAAC;SAC9B,MAAM,CAAC,GAAG,aAAa,IAAI,cAAc,EAAE,CAAC;SAC5C,MAAM,CAAC,QAAQ,CAAC;SAChB,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;SACjB,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC;SACnB,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AACzB,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,SAAS,SAAS,CAChB,OAAgC,EAChC,MAAiB,EACjB,SAAiB,EACjB,MAA0B,OAAO;IAEjC,MAAM,GAAG,GAAa,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;IACpD,MAAM,aAAa,GAAG,eAAe,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC;IAC3D,MAAM,WAAW,GAAK,eAAe,CAAC,EAAE,GAAG,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,GAAG,SAAS,EAAE,CAAC,CAAC;IACtF,MAAM,SAAS,GAAO,eAAe,CAAC,aAAa,EAAE,WAAW,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;IAC/E,OAAO,GAAG,aAAa,IAAI,WAAW,IAAI,SAAS,EAAE,CAAC;AACxD,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,SAAS,WAAW,CAAC,KAAa,EAAE,MAAc,EAAE,GAAiB;IACnE,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC/B,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YACpB,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,sBAAsB,EAAE,CAAC;QAEzD,MAAM,CAAC,aAAa,EAAE,cAAc,EAAE,SAAS,CAAC,GAAG,KAAK,CAAC;QAEzD,uEAAuE;QACvE,uEAAuE;QACvE,yEAAyE;QACzE,yBAAyB;QACzB,MAAM,aAAa,GAAG,eAAe,CAAC,aAAa,CAAmC,CAAC;QACvF,IAAI,aAAa,CAAC,GAAG,KAAK,GAAG;YAC3B,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,gCAAgC,EAAE,CAAC;QAEnE,MAAM,WAAW,GAAG,eAAe,CAAC,aAAa,EAAE,cAAc,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;QAEhF,oEAAoE;QACpE,qEAAqE;QACrE,uEAAuE;QACvE,2DAA2D;QAC3D,MAAM,MAAM,GAAQ,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC3C,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC7C,IACE,MAAM,CAAC,MAAM,KAAK,WAAW,CAAC,MAAM;YACpC,CAAC,gBAAM,CAAC,eAAe,CAAC,MAAM,EAAE,WAAW,CAAC,EAC5C,CAAC;YACD,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,mBAAmB,EAAE,CAAC;QACtD,CAAC;QAED,MAAM,OAAO,GAAG,eAAe,CAAC,cAAc,CAAiB,CAAC;QAChE,MAAM,GAAG,GAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;QAE9C,IAAI,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,GAAG,GAAG;YAClC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC;QAElD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;IAClC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,iBAAiB,EAAE,CAAC;IACpD,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,oBAAoB;IAC3B,OAAO,gBAAM,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AAChD,CAAC;AAED,8EAA8E;AAC9E,iBAAiB;AACjB,8EAA8E;AAE9E;;;;;;;;GAQG;AACH,SAAS,gBAAgB,CAAC,QAAgB,EAAE,QAAgB,EAAE,MAAiB;IAC7E,MAAM,IAAI,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IACxC,IAAI,CAAC,IAAI;QAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,gBAAgB,EAAE,CAAC;IAE9D,wEAAwE;IACxE,2EAA2E;IAC3E,gCAAgC;IAChC,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,IAAI,EAAE,QAAQ,CAAC;QACzC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,oBAAoB,EAAE,CAAC;IAEzD,OAAO,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;AACtC,CAAC;AAED;;;;;;;;;GASG;AACH,SAAS,cAAc,CAAC,IAAgB,EAAE,MAAiB;IACzD,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IACvC,MAAM,MAAM,GAAK,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAEtC,kEAAkE;IAClE,MAAM,UAAU,GAA0B;QACxC,GAAG,EAAE,QAAQ,EAAK,4DAA4D;QAC9E,GAAG,MAAM;QACT,GAAG,EAAE,MAAM,CAAC,MAAM;KACnB,CAAC;IAEF,MAAM,WAAW,GAAI,SAAS,CAAC,UAAU,EAAE,MAAM,CAAC,iBAAiB,EAAE,MAAM,CAAC,iBAAiB,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;IAC3G,MAAM,YAAY,GAAG,oBAAoB,EAAE,CAAC;IAE5C,MAAM,CAAC,iBAAiB,CAAC,GAAG,CAAC,YAAY,EAAE;QACzC,QAAQ;QACR,QAAQ,EAAG,IAAI,CAAC,GAAG,EAAE;QACrB,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,MAAM,CAAC,kBAAkB,GAAG,IAAI;KACzD,CAAC,CAAC;IAEH,OAAO;QACL,OAAO,EAAO,IAAI;QAClB,WAAW;QACX,YAAY;QACZ,SAAS,EAAK,MAAM,CAAC,iBAAiB;QACtC,SAAS,EAAK,QAAQ;KACvB,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,SAAS,gBAAgB,CAAC,QAAgB,EAAE,YAAoB,EAAE,MAAiB;IACjF,MAAM,SAAS,GAAG,MAAM,CAAC,iBAAiB,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IAE7D,2DAA2D;IAC3D,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,QAAQ,KAAK,QAAQ;QAC/C,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,kCAAkC,EAAE,CAAC;IAEvE,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,SAAS,EAAE,CAAC;QACrC,MAAM,CAAC,iBAAiB,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QAC9C,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,uBAAuB,EAAE,CAAC;IAC5D,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IAClD,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,MAAM,CAAC,iBAAiB,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QAC9C,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,gBAAgB,EAAE,CAAC;IACrD,CAAC;IAED,+DAA+D;IAC/D,MAAM,CAAC,iBAAiB,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IAC9C,OAAO,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;AACtC,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,kBAAkB,CAAC,YAAoB,EAAE,MAAiB;IACjE,4EAA4E;IAC5E,2EAA2E;IAC3E,4EAA4E;IAC5E,4BAA4B;IAC5B,MAAM,OAAO,GAAG,MAAM,CAAC,iBAAiB,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IAC3D,MAAM,CAAC,iBAAiB,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IAC9C,OAAO,OAAO,CAAC;AACjB,CAAC;AAwED;;;;;;;;;GASG;AACH,SAAgB,eAAe,CAAC,aAAiC,EAAE;IACjE,MAAM,MAAM,GAAc,EAAE,GAAG,cAAc,EAAE,GAAG,UAAU,EAAE,CAAC;IAE/D,sEAAsE;IACtE,sDAAsD;IACtD,SAAS,QAAQ,CAAC,GAAmB,EAAE,MAAc,EAAE,IAAY;QACjE,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAClC,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,iCAAiC,CAAC,CAAC;QACjE,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;IAED,2EAA2E;IAE3E;;;OAGG;IACH,MAAM,KAAK,GAAe,CAAC,GAAkB,EAAE,GAAmB,EAAQ,EAAE;QAC1E,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAI,GAAW,CAAC,IAAI,IAAI,EAAE,CAAC;QAEvD,IAAI,CAAC,QAAQ,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC3B,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,+CAA+C,EAAE,CAAC,CAAC;YAC/E,OAAO;QACT,CAAC;QAED,MAAM,MAAM,GAAG,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;QAE5D,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACpB,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;YAC5C,OAAO;QACT,CAAC;QAED,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE;YACjB,OAAO,EAAO,2BAA2B;YACzC,WAAW,EAAG,MAAM,CAAC,WAAW;YAChC,YAAY,EAAE,MAAM,CAAC,YAAY;YACjC,SAAS,EAAK,MAAM,CAAC,SAAS;YAC9B,SAAS,EAAK,MAAM,CAAC,SAAS;SAC/B,CAAC,CAAC;IACL,CAAC,CAAC;IAEF,2EAA2E;IAE3E;;;;;;;;;OASG;IACH,MAAM,OAAO,GAAe,CAAC,GAAkB,EAAE,GAAmB,EAAQ,EAAE;QAC5E,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,GAAI,GAAW,CAAC,IAAI,IAAI,EAAE,CAAC;QAE3D,IAAI,CAAC,QAAQ,IAAI,CAAC,YAAY,EAAE,CAAC;YAC/B,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,mDAAmD,EAAE,CAAC,CAAC;YACnF,OAAO;QACT,CAAC;QAED,MAAM,MAAM,GAAG,gBAAgB,CAAC,QAAQ,EAAE,YAAY,EAAE,MAAM,CAAC,CAAC;QAEhE,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACpB,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;YAC5C,OAAO;QACT,CAAC;QAED,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE;YACjB,OAAO,EAAO,4BAA4B;YAC1C,WAAW,EAAG,MAAM,CAAC,WAAW;YAChC,YAAY,EAAE,MAAM,CAAC,YAAY;YACjC,SAAS,EAAK,MAAM,CAAC,SAAS;YAC9B,SAAS,EAAK,MAAM,CAAC,SAAS;SAC/B,CAAC,CAAC;IACL,CAAC,CAAC;IAEF,2EAA2E;IAE3E;;;;OAIG;IACH,MAAM,MAAM,GAAe,CAAC,GAAkB,EAAE,GAAmB,EAAQ,EAAE;QAC3E,MAAM,EAAE,YAAY,EAAE,GAAI,GAAW,CAAC,IAAI,IAAI,EAAE,CAAC;QAEjD,IAAI,YAAY,EAAE,CAAC;YACjB,0EAA0E;YAC1E,wEAAwE;YACxE,2CAA2C;YAC3C,kBAAkB,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;QAC3C,CAAC;QAED,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,OAAO,EAAE,yBAAyB,EAAE,CAAC,CAAC;IAC7D,CAAC,CAAC;IAEF,2EAA2E;IAE3E;;;;;;;;;;OAUG;IACH,MAAM,YAAY,GAAe,CAAC,GAAkB,EAAE,GAAmB,EAAE,IAAgB,EAAQ,EAAE;QACnG,+EAA+E;QAC/E,OAAQ,GAAW,CAAC,IAAI,CAAC;QAEzB,MAAM,UAAU,GAAG,GAAG,CAAC,OAAO,CAAC,eAAe,CAAuB,CAAC;QACtE,IAAI,CAAC,UAAU,EAAE,UAAU,CAAC,SAAS,CAAC;YAAE,OAAO,IAAI,EAAE,CAAC;QAEtD,MAAM,KAAK,GAAI,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACnC,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,EAAE,MAAM,CAAC,iBAAiB,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;QACxE,IAAI,CAAC,MAAM,CAAC,KAAK;YAAE,OAAO,IAAI,EAAE,CAAC;QAEjC,iEAAiE;QACjE,wEAAwE;QACxE,6DAA6D;QAC7D,oEAAoE;QACpE,IAAI,MAAM,CAAC,WAAW,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,KAAK,MAAM,CAAC,MAAM;YAAE,OAAO,IAAI,EAAE,CAAC;QAE7E,GAAW,CAAC,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC;QACnC,IAAI,EAAE,CAAC;IACT,CAAC,CAAC;IAEF,2EAA2E;IAE3E;;;OAGG;IACH,MAAM,SAAS,GAAe,CAAC,GAAkB,EAAE,GAAmB,EAAE,IAAgB,EAAQ,EAAE;QAChG,IAAI,CAAE,GAAW,CAAC,IAAI,EAAE,CAAC;YACvB,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,yBAAyB,EAAE,CAAC,CAAC;YACzD,OAAO;QACT,CAAC;QACD,IAAI,EAAE,CAAC;IACT,CAAC,CAAC;IAEF,2EAA2E;IAE3E;;;;;;;;;;OAUG;IACH,SAAS,WAAW,CAAC,GAAG,KAAe;QACrC,OAAO;YACL,YAAY;YACZ,CAAC,GAAkB,EAAE,GAAmB,EAAE,IAAgB,EAAQ,EAAE;gBAClE,MAAM,IAAI,GAAI,GAAW,CAAC,IAAgC,CAAC;gBAC3D,IAAI,CAAC,IAAI,EAAE,CAAC;oBACV,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,yBAAyB,EAAE,CAAC,CAAC;oBACzD,OAAO;gBACT,CAAC;gBACD,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;gBACnC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC9C,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE;wBACjB,KAAK,EAAM,oCAAoC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;wBACjE,SAAS,EAAE,SAAS;qBACrB,CAAC,CAAC;oBACH,OAAO;gBACT,CAAC;gBACD,IAAI,EAAE,CAAC;YACT,CAAC;SACF,CAAC;IACJ,CAAC;IAED,2EAA2E;IAE3E;;;;;;;;OAQG;IACH,SAAS,iBAAiB,CAAC,GAAG,WAAqB;QACjD,OAAO;YACL,YAAY;YACZ,CAAC,GAAkB,EAAE,GAAmB,EAAE,IAAgB,EAAQ,EAAE;gBAClE,MAAM,IAAI,GAAI,GAAW,CAAC,IAAgC,CAAC;gBAC3D,IAAI,CAAC,IAAI,EAAE,CAAC;oBACV,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,yBAAyB,EAAE,CAAC,CAAC;oBACzD,OAAO;gBACT,CAAC;gBACD,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,IAAI,EAAE,CAAC;gBACzC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;oBACrD,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE;wBACjB,KAAK,EAAY,uCAAuC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;wBAChF,eAAe,EAAE,SAAS;qBAC3B,CAAC,CAAC;oBACH,OAAO;gBACT,CAAC;gBACD,IAAI,EAAE,CAAC;YACT,CAAC;SACF,CAAC;IACJ,CAAC;IAED,OAAO;QACL,KAAK;QACL,OAAO;QACP,MAAM;QACN,YAAY;QACZ,SAAS;QACT,WAAW;QACX,iBAAiB;KAClB,CAAC;AACJ,CAAC;AAED,kBAAe,eAAe,CAAC"}
|
package/dist/misc.d.ts
ADDED
|
@@ -0,0 +1,203 @@
|
|
|
1
|
+
import type { RouterRequest, Middleware } from './router.js';
|
|
2
|
+
/**
|
|
3
|
+
* A JSON reviver function, matching the second parameter of `JSON.parse`.
|
|
4
|
+
* Receives each key/value pair during parsing and may return a transformed
|
|
5
|
+
* value.
|
|
6
|
+
*/
|
|
7
|
+
type Reviver = (key: string, value: unknown) => unknown;
|
|
8
|
+
/**
|
|
9
|
+
* Options shared by all body-parsing middleware factories
|
|
10
|
+
* ({@link json}, {@link formData}, {@link parseBody}).
|
|
11
|
+
*/
|
|
12
|
+
export interface BodyOptions {
|
|
13
|
+
/**
|
|
14
|
+
* When `true` (default), compressed request bodies (`gzip`, `deflate`) are
|
|
15
|
+
* automatically decompressed before parsing. Set to `false` to reject
|
|
16
|
+
* compressed bodies with 415 Unsupported Media Type.
|
|
17
|
+
*/
|
|
18
|
+
inflate?: boolean;
|
|
19
|
+
/**
|
|
20
|
+
* Maximum accepted body size. Accepts a number (bytes) or a human-readable
|
|
21
|
+
* string such as `'100kb'`, `'2mb'`, or `'1gb'`.
|
|
22
|
+
* Defaults to `'100kb'` (102 400 bytes).
|
|
23
|
+
*/
|
|
24
|
+
limit?: string | number;
|
|
25
|
+
/**
|
|
26
|
+
* Optional JSON reviver passed as the second argument to `JSON.parse`.
|
|
27
|
+
* Only meaningful for {@link json} and {@link parseBody} when the body is
|
|
28
|
+
* `application/json`.
|
|
29
|
+
*/
|
|
30
|
+
reviver?: Reviver | null;
|
|
31
|
+
/**
|
|
32
|
+
* When `true` (default), JSON parsing is restricted to objects and arrays.
|
|
33
|
+
* Bare primitives (strings, numbers, booleans) at the top level are
|
|
34
|
+
* rejected. Has no effect on non-JSON bodies.
|
|
35
|
+
*
|
|
36
|
+
* @remarks Currently reserved for future enforcement; not yet applied.
|
|
37
|
+
*/
|
|
38
|
+
strict?: boolean;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Options for the {@link logger} middleware factory.
|
|
42
|
+
*/
|
|
43
|
+
export interface LoggerOptions {
|
|
44
|
+
/**
|
|
45
|
+
* When `true`, starts a timer per request. If the response is not finished
|
|
46
|
+
* within {@link trackTimeout} milliseconds, a `LOST` warning line is logged.
|
|
47
|
+
* Recommended for development only — keeping a `setTimeout` per request has
|
|
48
|
+
* a non-trivial memory cost in production.
|
|
49
|
+
* Defaults to `false`.
|
|
50
|
+
*/
|
|
51
|
+
track?: boolean;
|
|
52
|
+
/**
|
|
53
|
+
* Timeout in milliseconds before a tracked request is considered lost.
|
|
54
|
+
* Only used when {@link track} is `true`.
|
|
55
|
+
* Defaults to `30 000` ms (30 seconds).
|
|
56
|
+
*/
|
|
57
|
+
trackTimeout?: number;
|
|
58
|
+
/**
|
|
59
|
+
* Extract a user identity string from the request for inclusion in the log
|
|
60
|
+
* line. Receives the augmented `RouterRequest` and should return a short
|
|
61
|
+
* string (e.g. a username, session ID, or `'-'` for anonymous).
|
|
62
|
+
* Defaults to always returning `'-'`.
|
|
63
|
+
*
|
|
64
|
+
* @example
|
|
65
|
+
* ```ts
|
|
66
|
+
* user: (req) => (req as any).authUser ?? '-'
|
|
67
|
+
* ```
|
|
68
|
+
*/
|
|
69
|
+
user?: (req: RouterRequest) => string;
|
|
70
|
+
/**
|
|
71
|
+
* BCP 47 locale tag used when formatting the request timestamp.
|
|
72
|
+
* Passed as the first argument to `Intl.DateTimeFormat`.
|
|
73
|
+
* Defaults to `'en-GB'`.
|
|
74
|
+
*/
|
|
75
|
+
locale?: string;
|
|
76
|
+
/**
|
|
77
|
+
* Date/time format options passed as the second argument to
|
|
78
|
+
* `Intl.DateTimeFormat`. Override this to change which fields are shown in
|
|
79
|
+
* the timestamp.
|
|
80
|
+
* Defaults to `{ month: 'short', day: '2-digit', hour: '2-digit', minute: '2-digit' }`.
|
|
81
|
+
*/
|
|
82
|
+
dateFormat?: Intl.DateTimeFormatOptions;
|
|
83
|
+
/**
|
|
84
|
+
* Custom logging function. Receives the fully-formatted log line as a
|
|
85
|
+
* single string. Defaults to `console.log`.
|
|
86
|
+
*/
|
|
87
|
+
logger?: (msg: string) => void;
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* A single part extracted from a `multipart/form-data` body.
|
|
91
|
+
*/
|
|
92
|
+
export interface FormPart {
|
|
93
|
+
/**
|
|
94
|
+
* Raw part headers (e.g. `Content-Disposition`, `Content-Type`).
|
|
95
|
+
* Keys are lowercased; values are trimmed.
|
|
96
|
+
*/
|
|
97
|
+
headers: Record<string, string>;
|
|
98
|
+
/**
|
|
99
|
+
* Raw binary content of the part (everything after the blank header line).
|
|
100
|
+
*/
|
|
101
|
+
content: Buffer;
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* Middleware factory that parses a `application/json` request body and
|
|
105
|
+
* assigns the parsed value to `req.body`.
|
|
106
|
+
*
|
|
107
|
+
* Also attaches a `res.json(data)` helper to the response object so that
|
|
108
|
+
* handlers can send JSON responses conveniently:
|
|
109
|
+
* ```ts
|
|
110
|
+
* res.json({ ok: true });
|
|
111
|
+
* ```
|
|
112
|
+
*
|
|
113
|
+
* Behaviour:
|
|
114
|
+
* - Requests without a body (`Content-Length: 0` or absent) are passed
|
|
115
|
+
* through to `next()` without touching `req.body`.
|
|
116
|
+
* - Bodies larger than `opts.limit` receive **413 Content Too Large**.
|
|
117
|
+
* - Bodies with an unsupported `Content-Encoding` receive
|
|
118
|
+
* **415 Unsupported Media Type**.
|
|
119
|
+
* - Bodies whose `Content-Type` is not `application/json` receive
|
|
120
|
+
* **415 Unsupported Media Type**.
|
|
121
|
+
* - Parse errors receive **500 Internal Server Error**.
|
|
122
|
+
*
|
|
123
|
+
* @param opts - Optional configuration (see {@link BodyOptions}).
|
|
124
|
+
* @returns An Express-compatible middleware function.
|
|
125
|
+
*/
|
|
126
|
+
export declare function json(opts?: BodyOptions): Middleware;
|
|
127
|
+
/**
|
|
128
|
+
* Middleware factory that parses a `multipart/form-data` request body and
|
|
129
|
+
* assigns an array of {@link FormPart} objects to `req.body`.
|
|
130
|
+
*
|
|
131
|
+
* Each element in `req.body` exposes:
|
|
132
|
+
* - `headers` — the part's MIME headers (e.g. `Content-Disposition`).
|
|
133
|
+
* - `content` — the raw binary content of the part as a `Buffer`.
|
|
134
|
+
*
|
|
135
|
+
* Behaviour:
|
|
136
|
+
* - Requests without a body are passed through to `next()`.
|
|
137
|
+
* - Bodies larger than `opts.limit` receive **413 Content Too Large**.
|
|
138
|
+
* - Bodies with a missing or malformed `boundary` parameter receive
|
|
139
|
+
* **400 Bad Request**.
|
|
140
|
+
* - Parse errors receive **500 Internal Server Error**.
|
|
141
|
+
*
|
|
142
|
+
* @param opts - Optional configuration (see {@link BodyOptions}).
|
|
143
|
+
* @returns An Express-compatible middleware function.
|
|
144
|
+
*/
|
|
145
|
+
export declare function formData(opts?: BodyOptions): Middleware;
|
|
146
|
+
/**
|
|
147
|
+
* Middleware factory that auto-detects the `Content-Type` of the request body
|
|
148
|
+
* and parses it using the appropriate parser.
|
|
149
|
+
*
|
|
150
|
+
* Supported MIME types:
|
|
151
|
+
* - `application/json` → parsed as JSON; result is a JS value.
|
|
152
|
+
* - `multipart/form-data` → parsed as multipart; result is `FormPart[]`.
|
|
153
|
+
* - `text/plain` → decoded as text; result is a string.
|
|
154
|
+
*
|
|
155
|
+
* Requests with an unsupported MIME type receive **415 Unsupported Media Type**.
|
|
156
|
+
* All other error conditions behave identically to {@link json} and
|
|
157
|
+
* {@link formData}.
|
|
158
|
+
*
|
|
159
|
+
* @param opts - Optional configuration (see {@link BodyOptions}).
|
|
160
|
+
* @returns An Express-compatible middleware function.
|
|
161
|
+
*/
|
|
162
|
+
export declare function parseBody(opts?: BodyOptions): Middleware;
|
|
163
|
+
/**
|
|
164
|
+
* Middleware factory that logs one line per completed HTTP request to the
|
|
165
|
+
* console (or a custom logger function).
|
|
166
|
+
*
|
|
167
|
+
* Each log line contains:
|
|
168
|
+
* - Timestamp (formatted with `Intl.DateTimeFormat`).
|
|
169
|
+
* - HTTP status code (ANSI-coloured by status class).
|
|
170
|
+
* - HTTP method and request path.
|
|
171
|
+
* - Client IP address (honours `X-Forwarded-For`).
|
|
172
|
+
* - User identity (from `opts.user` or `'-'`).
|
|
173
|
+
* - Elapsed time in milliseconds.
|
|
174
|
+
* - Response `Content-Length` (or `'-'` when absent).
|
|
175
|
+
*
|
|
176
|
+
* **Lost-request tracking:** when `opts.track` is `true`, a timer is started
|
|
177
|
+
* for each request. If the response is not finished within `opts.trackTimeout`
|
|
178
|
+
* milliseconds, a `LOST` warning line is emitted. This is useful in
|
|
179
|
+
* development to surface handlers that never call `res.end()`.
|
|
180
|
+
*
|
|
181
|
+
* @param opts - Optional configuration (see {@link LoggerOptions}).
|
|
182
|
+
* @returns An Express-compatible middleware function.
|
|
183
|
+
*
|
|
184
|
+
* @example
|
|
185
|
+
* ```ts
|
|
186
|
+
* app.use('/', logger({
|
|
187
|
+
* track: true,
|
|
188
|
+
* trackTimeout: 30_000,
|
|
189
|
+
* user: (req) => (req as any).authUser ?? '-',
|
|
190
|
+
* locale: 'en-US',
|
|
191
|
+
* logger: (msg) => process.stderr.write(msg + '\n'),
|
|
192
|
+
* }));
|
|
193
|
+
* ```
|
|
194
|
+
*/
|
|
195
|
+
export declare function logger(opts?: LoggerOptions): Middleware;
|
|
196
|
+
declare const _default: {
|
|
197
|
+
json: typeof json;
|
|
198
|
+
formData: typeof formData;
|
|
199
|
+
parseBody: typeof parseBody;
|
|
200
|
+
logger: typeof logger;
|
|
201
|
+
};
|
|
202
|
+
export default _default;
|
|
203
|
+
//# sourceMappingURL=misc.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"misc.d.ts","sourceRoot":"","sources":["../src/misc.ts"],"names":[],"mappings":"AAuBA,OAAO,KAAK,EAAE,aAAa,EAAkB,UAAU,EAAE,MAAM,aAAa,CAAC;AAM7E;;;;GAIG;AACH,KAAK,OAAO,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,KAAK,OAAO,CAAC;AAExD;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B;;;;OAIG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB;;;;OAIG;IACH,OAAO,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IACzB;;;;;;OAMG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAKD;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B;;;;;;OAMG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;;;;;;;OAUG;IACH,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,aAAa,KAAK,MAAM,CAAC;IACtC;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;;;OAKG;IACH,UAAU,CAAC,EAAE,IAAI,CAAC,qBAAqB,CAAC;IACxC;;;OAGG;IACH,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;CAChC;AAED;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB;;;OAGG;IACH,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;CACjB;AAuXD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,IAAI,CAAC,IAAI,CAAC,EAAE,WAAW,GAAG,UAAU,CAmBnD;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,QAAQ,CAAC,IAAI,CAAC,EAAE,WAAW,GAAG,UAAU,CAcvD;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,SAAS,CAAC,IAAI,CAAC,EAAE,WAAW,GAAG,UAAU,CAiBxD;AA4BD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,wBAAgB,MAAM,CAAC,IAAI,CAAC,EAAE,aAAa,GAAG,UAAU,CAkDvD;;;;;;;AAED,wBAAqD"}
|
package/dist/misc.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"misc.js","sourceRoot":"","sources":["../src/misc.ts"],"names":[],"mappings":"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"}
|
package/dist/router.d.ts
ADDED
|
@@ -0,0 +1,224 @@
|
|
|
1
|
+
import * as http from 'http';
|
|
2
|
+
/** A key-value map of arbitrary string values. */
|
|
3
|
+
type StringMap = Record<string, string>;
|
|
4
|
+
/**
|
|
5
|
+
* Extended HTTP incoming message that carries parsed routing metadata.
|
|
6
|
+
* Augments the standard `http.IncomingMessage` with fields populated by
|
|
7
|
+
* the router before any middleware is invoked.
|
|
8
|
+
*/
|
|
9
|
+
interface RouterRequest extends http.IncomingMessage {
|
|
10
|
+
/** The original, unmodified URL string from the HTTP request. */
|
|
11
|
+
originalUrl: string;
|
|
12
|
+
/**
|
|
13
|
+
* The current path being matched. Prefix-style layers (`use`)
|
|
14
|
+
* rewrite this field after matching so that nested routers only see the
|
|
15
|
+
* remaining suffix. Exact-method layers (`all`, `get`, `post`, etc.) leave it
|
|
16
|
+
* untouched so that chained middlewares sharing the same path each match.
|
|
17
|
+
*/
|
|
18
|
+
path: string;
|
|
19
|
+
/**
|
|
20
|
+
* Aggregated parameters from all sources.
|
|
21
|
+
* URL query parameters are merged first; named route parameters (from both
|
|
22
|
+
* plain-string and RegExp patterns) override them when a route matches.
|
|
23
|
+
*/
|
|
24
|
+
params: StringMap;
|
|
25
|
+
/**
|
|
26
|
+
* Structured query buckets:
|
|
27
|
+
* - `url` — parameters parsed from the query string.
|
|
28
|
+
* - `route` — named parameters captured from the route pattern.
|
|
29
|
+
*/
|
|
30
|
+
queries: {
|
|
31
|
+
url?: StringMap;
|
|
32
|
+
route?: StringMap;
|
|
33
|
+
};
|
|
34
|
+
/** Parsed cookies sent with the request. */
|
|
35
|
+
cookies: StringMap;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Extended HTTP server response with convenience helpers.
|
|
39
|
+
* Augments the standard `http.ServerResponse`.
|
|
40
|
+
*/
|
|
41
|
+
interface RouterResponse extends http.ServerResponse {
|
|
42
|
+
/**
|
|
43
|
+
* Write `data` (if provided) and end the response.
|
|
44
|
+
* Equivalent to `res.write(data); res.end()`.
|
|
45
|
+
*/
|
|
46
|
+
send(data?: string): void;
|
|
47
|
+
/**
|
|
48
|
+
* Set the HTTP status code and optional response headers, then return
|
|
49
|
+
* `this` so calls can be chained (e.g. `res.status(404).end(...)`).
|
|
50
|
+
*/
|
|
51
|
+
status(code: number, headers?: StringMap): this;
|
|
52
|
+
/** Redirect the client to `url` with a 302 Found response. */
|
|
53
|
+
redirect(url: string): void;
|
|
54
|
+
/**
|
|
55
|
+
* Append a `Set-Cookie` header for the given `name`/`value` pair.
|
|
56
|
+
* Returns `this` to allow chaining.
|
|
57
|
+
*/
|
|
58
|
+
cookie(name: string, value: string | object, options?: CookieOptions): this;
|
|
59
|
+
}
|
|
60
|
+
/** Options accepted by `res.cookie()`. */
|
|
61
|
+
interface CookieOptions {
|
|
62
|
+
/** Sign the cookie value (requires a secret on the request). */
|
|
63
|
+
signed?: boolean;
|
|
64
|
+
/** Expiry date for the cookie. */
|
|
65
|
+
expires?: Date;
|
|
66
|
+
/** Max age in milliseconds; converted to seconds in the `Set-Cookie` header. */
|
|
67
|
+
maxAge?: number;
|
|
68
|
+
/** Cookie path (defaults to `'/'`). */
|
|
69
|
+
path?: string;
|
|
70
|
+
}
|
|
71
|
+
/** Options for HTTPS servers passed to `router.listen()`. */
|
|
72
|
+
interface TlsOptions {
|
|
73
|
+
key: string | Buffer;
|
|
74
|
+
cert: string | Buffer;
|
|
75
|
+
[key: string]: unknown;
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* A middleware function. Receives the current request and response objects
|
|
79
|
+
* and a `next` callback to hand control to the next registered middleware.
|
|
80
|
+
*/
|
|
81
|
+
type Middleware = (req: RouterRequest, res: RouterResponse, next: NextFunction) => void;
|
|
82
|
+
/** Callback used to pass control to the next matching middleware. */
|
|
83
|
+
type NextFunction = () => void;
|
|
84
|
+
/**
|
|
85
|
+
* A value that can be registered as a route handler: a single `Middleware`
|
|
86
|
+
* function, a `Router` instance (whose `listener` will be used), or an array
|
|
87
|
+
* of either. Arrays may not be nested.
|
|
88
|
+
*/
|
|
89
|
+
type MiddlewareArg = Middleware | Router | (Middleware | Router)[];
|
|
90
|
+
/**
|
|
91
|
+
* Internal representation of a single registered route.
|
|
92
|
+
* One layer is created per middleware function for every `router.get(...)` /
|
|
93
|
+
* `router.use(...)` etc. call, and stored in the route table.
|
|
94
|
+
*/
|
|
95
|
+
interface Layer {
|
|
96
|
+
/** HTTP method this layer is restricted to, or `null` for any method. */
|
|
97
|
+
method: string | null;
|
|
98
|
+
/** The original path pattern supplied by the caller. */
|
|
99
|
+
path: string | RegExp;
|
|
100
|
+
/**
|
|
101
|
+
* The compiled `RegExp` used for matching, regardless of whether the
|
|
102
|
+
* original `path` was a plain string, a glob, or already a `RegExp`.
|
|
103
|
+
*
|
|
104
|
+
* - Plain strings (e.g. `'/users/:id'`) are compiled with named capture
|
|
105
|
+
* groups so that `:id` becomes `(?<id>[^/]+)`.
|
|
106
|
+
* - Glob strings (e.g. `'/**\/*.php'`) are compiled following `.gitignore`
|
|
107
|
+
* wildcard rules.
|
|
108
|
+
* - `RegExp` values are stored as-is; named groups are surfaced directly
|
|
109
|
+
* as route parameters.
|
|
110
|
+
*/
|
|
111
|
+
regex: RegExp;
|
|
112
|
+
/**
|
|
113
|
+
* When `true`, the portion of `req.path` consumed by `layer.regex` is
|
|
114
|
+
* stripped before invoking the middleware, exposing only the remaining
|
|
115
|
+
* suffix to nested routers.
|
|
116
|
+
*
|
|
117
|
+
* Set to `true` for prefix-style registrations (`use`) and
|
|
118
|
+
* `false` for exact-method routes (`all`, `get`, `post`, etc.). Stripping on
|
|
119
|
+
* exact-match routes would break chained middlewares sharing the same path,
|
|
120
|
+
* because each subsequent layer would see a truncated path that no longer
|
|
121
|
+
* matches its own pattern.
|
|
122
|
+
*/
|
|
123
|
+
stripPath: boolean;
|
|
124
|
+
/** The middleware function to invoke when the layer matches. */
|
|
125
|
+
middleware: Middleware;
|
|
126
|
+
}
|
|
127
|
+
/**
|
|
128
|
+
* The public interface of the object returned by `createRouter()`.
|
|
129
|
+
*
|
|
130
|
+
* All route-registration methods share the same uniform signature: a mandatory
|
|
131
|
+
* `path` argument followed by any number of `MiddlewareArg` values.
|
|
132
|
+
* A `MiddlewareArg` may be a `Middleware` function, a `Router` instance
|
|
133
|
+
* (whose `listener` is used automatically), or an array of either.
|
|
134
|
+
*/
|
|
135
|
+
interface Router {
|
|
136
|
+
/**
|
|
137
|
+
* Register middleware for all HTTP methods, scoped to `path`.
|
|
138
|
+
* The matched path prefix is stripped from `req.path` before the middleware
|
|
139
|
+
* is invoked, so nested routers only see the remaining suffix.
|
|
140
|
+
* Equivalent to Express's `app.use()`.
|
|
141
|
+
*/
|
|
142
|
+
use(path: string | RegExp, ...args: MiddlewareArg[]): void;
|
|
143
|
+
/**
|
|
144
|
+
* Register middleware for all HTTP methods.
|
|
145
|
+
* Unlike `use`, it doesn't strips the matched prefix from `req.path`.
|
|
146
|
+
*/
|
|
147
|
+
all(path: string | RegExp, ...args: MiddlewareArg[]): void;
|
|
148
|
+
/** Register middleware for `GET` requests. */
|
|
149
|
+
get(path: string | RegExp, ...args: MiddlewareArg[]): void;
|
|
150
|
+
/** Register middleware for `PUT` requests. */
|
|
151
|
+
put(path: string | RegExp, ...args: MiddlewareArg[]): void;
|
|
152
|
+
/** Register middleware for `POST` requests. */
|
|
153
|
+
post(path: string | RegExp, ...args: MiddlewareArg[]): void;
|
|
154
|
+
/** Register middleware for `DELETE` requests. */
|
|
155
|
+
delete(path: string | RegExp, ...args: MiddlewareArg[]): void;
|
|
156
|
+
/** Register middleware for `PATCH` requests. */
|
|
157
|
+
patch(path: string | RegExp, ...args: MiddlewareArg[]): void;
|
|
158
|
+
/**
|
|
159
|
+
* Start listening on the given port.
|
|
160
|
+
* When `opts` contains both `key` and `cert`, an HTTPS server is created;
|
|
161
|
+
* otherwise a plain HTTP server is used.
|
|
162
|
+
*/
|
|
163
|
+
listen(port: number, opts?: TlsOptions | (() => void), cb?: () => void): void;
|
|
164
|
+
/**
|
|
165
|
+
* The underlying `(req, res, next)` function, allowing this router to be
|
|
166
|
+
* mounted as middleware inside another router:
|
|
167
|
+
* `parent.use('/api', child)`.
|
|
168
|
+
*/
|
|
169
|
+
readonly listener: Middleware;
|
|
170
|
+
}
|
|
171
|
+
/**
|
|
172
|
+
* Create and return a new `Router` instance.
|
|
173
|
+
*
|
|
174
|
+
* The returned object exposes an Express-compatible routing API and doubles
|
|
175
|
+
* as a middleware function itself (via `router.listener`), so it can be
|
|
176
|
+
* mounted inside another router:
|
|
177
|
+
* ```ts
|
|
178
|
+
* parent.use('/api', child);
|
|
179
|
+
* ```
|
|
180
|
+
*
|
|
181
|
+
* **Path patterns** accepted by all route-registration methods:
|
|
182
|
+
* - Plain strings with optional `:name` segments — e.g. `'/users/:id'`.
|
|
183
|
+
* Each `:name` is compiled to a named capture group and exposed in
|
|
184
|
+
* `req.params` on a match.
|
|
185
|
+
* - Glob strings following `.gitignore` rules — e.g. `'/**\/*.php'`.
|
|
186
|
+
* Supported wildcards: `?` (one non-slash char), `*` (any non-slash chars),
|
|
187
|
+
* `**` (any chars, including slashes).
|
|
188
|
+
* - `RegExp` objects — used directly; named groups become route parameters.
|
|
189
|
+
*
|
|
190
|
+
* **Middleware arguments** accept any number of variadic `MiddlewareArg`
|
|
191
|
+
* values, each of which may be:
|
|
192
|
+
* - A `Middleware` function.
|
|
193
|
+
* - A `Router` instance (its `listener` is registered automatically).
|
|
194
|
+
* - An array of either of the above.
|
|
195
|
+
*
|
|
196
|
+
* **Path stripping behaviour:**
|
|
197
|
+
* - `use` — strip the matched path prefix from `req.path` before
|
|
198
|
+
* invoking middleware. Nested routers therefore only see the remaining suffix.
|
|
199
|
+
* - `all` / `get` / `post` / `put` / `delete` / `patch` — leave `req.path` intact
|
|
200
|
+
* so that multiple middlewares registered for the same exact path can each
|
|
201
|
+
* match and be invoked in sequence via `next()`.
|
|
202
|
+
*
|
|
203
|
+
* @returns A fully initialised `Router` ready to register routes and
|
|
204
|
+
* optionally start an HTTP or HTTPS server.
|
|
205
|
+
*
|
|
206
|
+
* @example
|
|
207
|
+
* ```ts
|
|
208
|
+
* const auth = createRouter();
|
|
209
|
+
* auth.post('/login', handleLogin);
|
|
210
|
+
* auth.post('/logout', handleLogout);
|
|
211
|
+
*
|
|
212
|
+
* const app = createRouter();
|
|
213
|
+
* app.use('/auth', auth); // mount a sub-router
|
|
214
|
+
* app.get('/users/:id', requireAuth, getUser); // multiple middleware
|
|
215
|
+
* app.get('/**\/*.php', (req, res) => // glob pattern
|
|
216
|
+
* res.status(403).send('Forbidden'));
|
|
217
|
+
*
|
|
218
|
+
* app.listen(3000, () => console.log('Listening on :3000'));
|
|
219
|
+
* ```
|
|
220
|
+
*/
|
|
221
|
+
declare function createRouter(): Router;
|
|
222
|
+
export default createRouter;
|
|
223
|
+
export type { Router, RouterRequest, RouterResponse, Middleware, MiddlewareArg, NextFunction, Layer, CookieOptions, TlsOptions, StringMap, };
|
|
224
|
+
//# sourceMappingURL=router.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../src/router.ts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAO7B,kDAAkD;AAClD,KAAK,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAExC;;;;GAIG;AACH,UAAU,aAAc,SAAQ,IAAI,CAAC,eAAe;IAClD,iEAAiE;IACjE,WAAW,EAAE,MAAM,CAAC;IACpB;;;;;OAKG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;;;OAIG;IACH,MAAM,EAAE,SAAS,CAAC;IAClB;;;;OAIG;IACH,OAAO,EAAE;QACP,GAAG,CAAC,EAAE,SAAS,CAAC;QAChB,KAAK,CAAC,EAAE,SAAS,CAAC;KACnB,CAAC;IACF,4CAA4C;IAC5C,OAAO,EAAE,SAAS,CAAC;CACpB;AAED;;;GAGG;AACH,UAAU,cAAe,SAAQ,IAAI,CAAC,cAAc;IAClD;;;OAGG;IACH,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B;;;OAGG;IACH,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,SAAS,GAAG,IAAI,CAAC;IAChD,8DAA8D;IAC9D,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B;;;OAGG;IACH,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,IAAI,CAAC;CAC7E;AAED,0CAA0C;AAC1C,UAAU,aAAa;IACrB,gEAAgE;IAChE,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,kCAAkC;IAClC,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,gFAAgF;IAChF,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,uCAAuC;IACvC,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,6DAA6D;AAC7D,UAAU,UAAU;IAClB,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;IACrB,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;IACtB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED;;;GAGG;AACH,KAAK,UAAU,GAAG,CAChB,GAAG,EAAE,aAAa,EAClB,GAAG,EAAE,cAAc,EACnB,IAAI,EAAE,YAAY,KACf,IAAI,CAAC;AAEV,qEAAqE;AACrE,KAAK,YAAY,GAAG,MAAM,IAAI,CAAC;AAE/B;;;;GAIG;AACH,KAAK,aAAa,GAAG,UAAU,GAAG,MAAM,GAAG,CAAC,UAAU,GAAG,MAAM,CAAC,EAAE,CAAC;AAEnE;;;;GAIG;AACH,UAAU,KAAK;IACb,yEAAyE;IACzE,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,wDAAwD;IACxD,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;IACtB;;;;;;;;;;OAUG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;;;;;;;;;OAUG;IACH,SAAS,EAAE,OAAO,CAAC;IACnB,gEAAgE;IAChE,UAAU,EAAE,UAAU,CAAC;CACxB;AAED;;;;;;;GAOG;AACH,UAAU,MAAM;IACd;;;;;OAKG;IACH,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI,EAAE,aAAa,EAAE,GAAG,IAAI,CAAC;IAC3D;;;OAGG;IACH,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI,EAAE,aAAa,EAAE,GAAG,IAAI,CAAC;IAC3D,8CAA8C;IAC9C,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI,EAAE,aAAa,EAAE,GAAG,IAAI,CAAC;IAC3D,8CAA8C;IAC9C,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI,EAAE,aAAa,EAAE,GAAG,IAAI,CAAC;IAC3D,+CAA+C;IAC/C,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI,EAAE,aAAa,EAAE,GAAG,IAAI,CAAC;IAC5D,iDAAiD;IACjD,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI,EAAE,aAAa,EAAE,GAAG,IAAI,CAAC;IAC9D,gDAAgD;IAChD,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI,EAAE,aAAa,EAAE,GAAG,IAAI,CAAC;IAC7D;;;;OAIG;IACH,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,UAAU,GAAG,CAAC,MAAM,IAAI,CAAC,EAAE,EAAE,CAAC,EAAE,MAAM,IAAI,GAAG,IAAI,CAAC;IAC9E;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,EAAE,UAAU,CAAC;CAC/B;AAoWD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiDG;AACH,iBAAS,YAAY,IAAI,MAAM,CAyG9B;AAED,eAAe,YAAY,CAAC;AAC5B,YAAY,EACV,MAAM,EACN,aAAa,EACb,cAAc,EACd,UAAU,EACV,aAAa,EACb,YAAY,EACZ,KAAK,EACL,aAAa,EACb,UAAU,EACV,SAAS,GACV,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"router.js","sourceRoot":"","sources":["../src/router.ts"],"names":[],"mappings":"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"}
|