@nifrajs/core 1.11.0 → 1.13.0

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.
@@ -1 +1 @@
1
- {"version":3,"file":"invariants.js","sourceRoot":"","sources":["../src/invariants.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EACL,qBAAqB,EAErB,oBAAoB,EACpB,qBAAqB,GACtB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAuB,aAAa,EAAyB,MAAM,iBAAiB,CAAA;AAsD3F;;;;GAIG;AACH,SAAS,uBAAuB,CAAC,GAAmB;IAClD,MAAM,QAAQ,GAAG,IAAI,GAAG,EAA8B,CAAA;IACtD,MAAM,MAAM,GAAI,GAAkC,CAAC,MAAM,EAAE,EAAE,CAAA;IAC7D,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;QAAE,OAAO,QAAQ,CAAA;IAC3C,KAAK,MAAM,SAAS,IAAI,MAAM,EAAE,CAAC;QAC/B,MAAM,KAAK,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAA;QACjC,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;QACtC,MAAM,KAAK,GAAG,MAAM,EAAE,cAAc,CAAA;QACpC,IACE,OAAO,KAAK,EAAE,MAAM,KAAK,QAAQ;YACjC,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ;YAC9B,oBAAoB,CAAC,KAAK,CAAC,EAC3B,CAAC;YACD,QAAQ,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC,IAAI,EAAE,EAAE,KAAK,CAAC,CAAA;QACrE,CAAC;IACH,CAAC;IACD,OAAO,QAAQ,CAAA;AACjB,CAAC;AAED,8FAA8F;AAC9F,MAAM,UAAU,kBAAkB,CAAC,IAAY;IAC7C,IAAI,KAAK,GAAG,IAAI,KAAK,CAAC,CAAA;IACtB,OAAO,GAAG,EAAE;QACV,KAAK,GAAG,CAAC,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,CAAA;QAClC,IAAI,CAAC,GAAG,KAAK,CAAA;QACb,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAA;QACpC,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAA;QACzC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,UAAU,CAAA;IAC9C,CAAC,CAAA;AACH,CAAC;AAID,MAAM,QAAQ,GAAG,CAAC,KAAc,EAA0B,EAAE,CAC1D,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;IAClE,CAAC,CAAE,KAAoB;IACvB,CAAC,CAAC,SAAS,CAAA;AAEf,MAAM,wBAAyB,SAAQ,KAAK;CAAG;AAE/C,MAAM,UAAU,GAAG,sCAAsC,CAAA;AAEzD,SAAS,WAAW,CAAC,GAAiB,EAAE,MAAc;IACpD,IAAI,GAAG,GAAG,EAAE,CAAA;IACZ,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC;QAC5C,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAA;IAC1D,CAAC;IACD,OAAO,GAAG,CAAA;AACZ,CAAC;AAED;;;;GAIG;AACH,SAAS,sBAAsB,CAAC,MAAe,EAAE,GAAiB,EAAE,KAAK,GAAG,CAAC;IAC3E,IAAI,KAAK,GAAG,CAAC;QAAE,MAAM,IAAI,wBAAwB,CAAC,4CAA4C,CAAC,CAAA;IAC/F,MAAM,IAAI,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAA;IAC7B,IAAI,IAAI,KAAK,SAAS;QAAE,MAAM,IAAI,wBAAwB,CAAC,8BAA8B,CAAC,CAAA;IAC1F,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC,KAAK,CAAA;IAC/C,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrD,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAA;IACxD,CAAC;IACD,KAAK,MAAM,GAAG,IAAI,CAAC,OAAO,EAAE,OAAO,CAAU,EAAE,CAAC;QAC9C,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAA;QAC1B,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACnD,OAAO,sBAAsB,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC,CAAC,CAAA;QAC9F,CAAC;IACH,CAAC;IACD,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAA;IAChE,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,QAAQ,CAAC,CAAC,CAAC;YACd,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAA;YACnE,MAAM,SAAS,GACb,IAAI,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,SAAmB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAA;YACnF,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;gBAC5D,MAAM,IAAI,wBAAwB,CAAC,mDAAmD,CAAC,CAAA;YACzF,CAAC;YACD,IACE,CAAC,MAAM,CAAC,aAAa,CAAC,SAAS,CAAC;gBAChC,CAAC,MAAM,CAAC,aAAa,CAAC,SAAS,CAAC;gBAC/B,SAAoB,GAAG,CAAC;gBACxB,SAAoB,GAAI,SAAoB;gBAC5C,SAAoB,GAAG,KAAK,EAC7B,CAAC;gBACD,MAAM,IAAI,wBAAwB,CAAC,iDAAiD,CAAC,CAAA;YACvF,CAAC;YACD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,SAAmB,EAAG,SAAoB,GAAG,EAAE,CAAC,CAAA;YACvE,MAAM,MAAM,GAAI,SAAoB,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,KAAK,GAAI,SAAoB,GAAG,CAAC,CAAC,CAAC,CAAA;YAC9F,OAAO,WAAW,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;QACjC,CAAC;QACD,KAAK,QAAQ,CAAC;QACd,KAAK,SAAS,CAAC,CAAC,CAAC;YACf,IACE,IAAI,CAAC,gBAAgB,KAAK,SAAS;gBACnC,IAAI,CAAC,gBAAgB,KAAK,SAAS;gBACnC,IAAI,CAAC,UAAU,KAAK,SAAS,EAC7B,CAAC;gBACD,MAAM,IAAI,wBAAwB,CAChC,0DAA0D,CAC3D,CAAA;YACH,CAAC;YACD,MAAM,OAAO,GAAG,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;YACnE,MAAM,OAAO,GAAG,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,GAAG,IAAI,CAAA;YAChF,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,OAAO,GAAG,OAAO,EAAE,CAAC;gBAChF,MAAM,IAAI,wBAAwB,CAAC,oCAAoC,CAAC,CAAA;YAC1E,CAAC;YACD,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;gBACvB,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;gBAChC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;gBACjC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,KAAK,EAAE,CAAC;oBAClF,MAAM,IAAI,wBAAwB,CAAC,2CAA2C,CAAC,CAAA;gBACjF,CAAC;gBACD,OAAO,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,KAAK,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,CAAA;YACxD,CAAC;YACD,OAAO,OAAO,GAAG,GAAG,EAAE,GAAG,CAAC,OAAO,GAAG,OAAO,CAAC,CAAA;QAC9C,CAAC;QACD,KAAK,SAAS;YACZ,OAAO,GAAG,EAAE,GAAG,GAAG,CAAA;QACpB,KAAK,MAAM;YACT,OAAO,IAAI,CAAA;QACb,KAAK,OAAO,CAAC,CAAC,CAAC;YACb,IAAI,IAAI,CAAC,WAAW,KAAK,IAAI,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAC7D,MAAM,IAAI,wBAAwB,CAAC,wDAAwD,CAAC,CAAA;YAC9F,CAAC;YACD,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAA;YAChE,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAE,QAAmB,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAA;YACvF,IACE,CAAC,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC;gBAC/B,CAAC,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC;gBAC9B,QAAmB,GAAG,CAAC;gBACvB,QAAmB,GAAI,QAAmB;gBAC1C,QAAmB,GAAG,GAAG,EAC1B,CAAC;gBACD,MAAM,IAAI,wBAAwB,CAAC,yCAAyC,CAAC,CAAA;YAC/E,CAAC;YACD,MAAM,KAAK,GACR,QAAmB;gBACpB,IAAI,CAAC,KAAK,CACR,GAAG,EAAE;oBACH,CAAC,IAAI,CAAC,GAAG,CAAC,QAAkB,EAAG,QAAmB,GAAG,CAAC,CAAC,GAAI,QAAmB,GAAG,CAAC,CAAC,CACtF,CAAA;YACH,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;gBAC7B,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,CAAA;YAClD,CAAC;YACD,MAAM,GAAG,GAAc,EAAE,CAAA;YACzB,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC;gBAC3C,GAAG,CAAC,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC,CAAA;YAC9D,CAAC;YACD,OAAO,GAAG,CAAA;QACZ,CAAC;QACD,KAAK,QAAQ,CAAC,CAAC,CAAC;YACd,MAAM,UAAU,GAAG,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,CAAA;YAClD,MAAM,cAAc,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAA;YACxE,IAAI,cAAc,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,CAAC,KAAK,IAAI,UAAU,CAAC,CAAC,EAAE,CAAC;gBACxF,MAAM,IAAI,wBAAwB,CAAC,wCAAwC,CAAC,CAAA;YAC9E,CAAC;YACD,IACE,IAAI,CAAC,aAAa,KAAK,SAAS;gBAChC,IAAI,CAAC,aAAa,KAAK,SAAS;gBAChC,IAAI,CAAC,iBAAiB,KAAK,SAAS;gBACpC,IAAI,CAAC,gBAAgB,KAAK,SAAS,EACnC,CAAC;gBACD,MAAM,IAAI,wBAAwB,CAChC,oEAAoE,CACrE,CAAA;YACH,CAAC;YACD,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,cAA0B,CAAC,CAAA;YACpD,MAAM,GAAG,GAA4B,EAAE,CAAA;YACvC,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;gBACvD,yFAAyF;gBACzF,IAAI,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,GAAG,EAAE,GAAG,GAAG,EAAE,CAAC;oBACtC,GAAG,CAAC,IAAI,CAAC,GAAG,sBAAsB,CAAC,KAAK,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC,CAAC,CAAA;gBAC3D,CAAC;YACH,CAAC;YACD,OAAO,GAAG,CAAA;QACZ,CAAC;QACD;YACE,MAAM,IAAI,wBAAwB,CAAC,2BAA2B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IACzF,CAAC;AACH,CAAC;AAED,uGAAuG;AACvG,SAAS,aAAa,CAAC,MAAe,EAAE,KAAc;IACpD,MAAM,IAAI,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAA;IAC7B,MAAM,UAAU,GAAG,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC,CAAA;IAC7C,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAE,IAAI,CAAC,QAAqB,CAAC,CAAC,CAAC,EAAE,CAAA;IACjF,MAAM,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAA;IAC1B,IACE,IAAI,EAAE,IAAI,KAAK,QAAQ;QACvB,UAAU,KAAK,SAAS;QACxB,MAAM,KAAK,SAAS;QACpB,QAAQ,CAAC,KAAK,CAAC,KAAK,SAAS,EAC7B,CAAC;QACD,OAAO,SAAS,CAAA;IAClB,CAAC;IACD,MAAM,OAAO,GAAG,EAAE,GAAI,KAAiC,EAAE,CAAA;IACzD,OAAO,OAAO,CAAC,MAAM,CAAC,CAAA;IACtB,OAAO,OAAO,CAAA;AAChB,CAAC;AAED,SAAS,cAAc,CAAC,OAAe,EAAE,GAAiB;IACxD,OAAO,OAAO;SACX,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;QACf,IAAI,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,OAAO,WAAW,CAAC,GAAG,EAAE,CAAC,CAAC,CAAA;QACvD,IAAI,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,OAAO,KAAK,GAAG;YAAE,OAAO,WAAW,CAAC,GAAG,EAAE,CAAC,CAAC,CAAA;QAC1E,OAAO,OAAO,CAAA;IAChB,CAAC,CAAC;SACD,IAAI,CAAC,GAAG,CAAC,CAAA;AACd,CAAC;AAED,SAAS,aAAa,CAAC,KAAc;IACnC,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;IAC9B,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,EAAE,CAAA;IACnC,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAA;IACpC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAClD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACzB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACzB,IAAI,IAAI,KAAK,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;oBAC9C,MAAM,IAAI,wBAAwB,CAAC,0CAA0C,CAAC,CAAA;gBAChF,CAAC;gBACD,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAA;YAClC,CAAC;QACH,CAAC;aAAM,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9E,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;QAChC,CAAC;aAAM,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YACjD,MAAM,IAAI,wBAAwB,CAAC,0CAA0C,CAAC,CAAA;QAChF,CAAC;IACH,CAAC;IACD,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAA;IAC9B,OAAO,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAA;AACtC,CAAC;AAED,KAAK,UAAU,eAAe,CAC5B,QAA0B,EAC1B,KAAc;IAEd,MAAM,MAAM,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;IACpD,MAAM,OAAO,GAAG,MAAM,YAAY,OAAO,CAAC,CAAC,CAAC,MAAM,MAAM,CAAC,CAAC,CAAC,MAAM,CAAA;IACjE,OAAO,OAAO,CAAC,MAAM,CAAA;AACvB,CAAC;AAQD,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAA;AAE3E,kGAAkG;AAClG,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,GAAmB,EACnB,UAAgC,EAAE;IAElC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,CAAC,CAAA;IAC9B,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC;QAAE,MAAM,IAAI,SAAS,CAAC,yCAAyC,CAAC,CAAA;IAC/F,MAAM,aAAa,GAAG,OAAO,CAAC,aAAa,IAAI,CAAC,CAAA;IAChD,MAAM,oBAAoB,GAAG,OAAO,CAAC,oBAAoB,IAAI,CAAC,CAAA;IAC9D,IACE,CAAC,MAAM,CAAC,aAAa,CAAC,aAAa,CAAC;QACpC,CAAC,MAAM,CAAC,aAAa,CAAC,oBAAoB,CAAC;QAC3C,aAAa,GAAG,CAAC;QACjB,oBAAoB,GAAG,CAAC,EACxB,CAAC;QACD,MAAM,IAAI,UAAU,CAAC,yDAAyD,CAAC,CAAA;IACjF,CAAC;IACD,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS,IAAI,OAAO,OAAO,CAAC,QAAQ,KAAK,UAAU,EAAE,CAAC;QAC7E,MAAM,IAAI,SAAS,CAAC,yCAAyC,CAAC,CAAA;IAChE,CAAC;IAED,MAAM,QAAQ,GAAuB,EAAE,CAAA;IACvC,MAAM,MAAM,GAAuC,EAAE,CAAA;IACrD,MAAM,OAAO,GAAmB,EAAE,CAAA;IAClC,MAAM,QAAQ,GAAG,uBAAuB,CAAC,GAAG,CAAC,CAAA;IAE7C,KAAK,MAAM,KAAK,IAAI,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC;QACvC,mEAAmE;QACnE,MAAM,WAAW,GAAmC,QAAQ,CAAC,GAAG,CAC9D,GAAG,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,IAAI,EAAE,CACjC,CAAA;QACD,MAAM,cAAc,GAAG,qBAAqB,CAAC,KAAK,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAA;QAC9E,IACE,WAAW,KAAK,SAAS;YACzB,cAAc,KAAK,SAAS;YAC5B,CAAC,qBAAqB,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,CAAC,EACvD,CAAC;YACD,QAAQ,CAAC,IAAI,CAAC;gBACZ,IAAI,EAAE,4BAA4B;gBAClC,MAAM,EAAE,KAAK,CAAC,MAAM;gBACpB,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,OAAO,EAAE,GAAG,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,IAAI,aAAa,WAAW,uCAAuC,cAAc,CAAC,GAAG,EAAE;aAC1H,CAAC,CAAA;QACJ,CAAC;QAED,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;YACxC,OAAO,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,qBAAqB,EAAE,CAAC,CAAA;YACvF,SAAQ;QACV,CAAC;QACD,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YACnC,OAAO,CAAC,IAAI,CAAC;gBACX,MAAM,EAAE,KAAK,CAAC,MAAM;gBACpB,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,MAAM,EAAE,iCAAiC;aAC1C,CAAC,CAAA;YACF,SAAQ;QACV,CAAC;QACD,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,EAAE,IAAI,CAAA;QAC/B,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,KAAK,CAAA;QACjC,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;YACxD,OAAO,CAAC,IAAI,CAAC;gBACX,MAAM,EAAE,KAAK,CAAC,MAAM;gBACpB,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,MAAM,EAAE,6CAA6C;aACtD,CAAC,CAAA;YACF,SAAQ;QACV,CAAC;QACD,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;YAC1D,OAAO,CAAC,IAAI,CAAC;gBACX,MAAM,EAAE,KAAK,CAAC,MAAM;gBACpB,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,MAAM,EAAE,8CAA8C;aACvD,CAAC,CAAA;YACF,SAAQ;QACV,CAAC;QACD,IAAI,KAAK,CAAC,MAAM,EAAE,GAAG,KAAK,SAAS,EAAE,CAAC;YACpC,OAAO,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,iBAAiB,EAAE,CAAC,CAAA;YACnF,SAAQ;QACV,CAAC;QAED,MAAM,IAAI,GAAc;YACtB,KAAK;YACL,GAAG,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACvC,GAAG,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC1C,CAAA;QACD,MAAM,OAAO,GAAG,MAAM,SAAS,CAC7B,OAAO,CAAC,QAAQ,EAChB,IAAI,EACJ,IAAI,EACJ,aAAa,EACb,oBAAoB,EACpB,QAAQ,CACT,CAAA;QACD,IAAI,OAAO,KAAK,QAAQ;YAAE,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAA;;YAC5E,OAAO,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAA;IAChF,CAAC;IAED,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,EAAE,EAAE,QAAQ,CAAC,MAAM,KAAK,CAAC;QACzB,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC;QAC7B,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC;QAC/B,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC;KAClC,CAAC,CAAA;AACJ,CAAC;AAED,KAAK,UAAU,SAAS,CACtB,OAA0B,EAC1B,IAAe,EACf,QAAgB,EAChB,aAAqB,EACrB,oBAA4B,EAC5B,QAA4B;IAE5B,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAA;IACtB,KAAK,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,GAAG,aAAa,EAAE,SAAS,EAAE,EAAE,CAAC;QAC/D,MAAM,QAAQ,GAAG,QAAQ,GAAG,IAAI,GAAG,SAAS,CAAA;QAC5C,MAAM,GAAG,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAA;QACxC,IAAI,SAAkB,CAAA;QACtB,IAAI,UAAmB,CAAA;QACvB,IAAI,CAAC;YACH,SAAS;gBACP,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,CAAC,CAAA;YACzF,UAAU;gBACR,IAAI,CAAC,KAAK,EAAE,UAAU,KAAK,SAAS;oBAClC,CAAC,CAAC,SAAS;oBACX,CAAC,CAAC,sBAAsB,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,GAAG,CAAC,CAAA;YACxD,0FAA0F;YAC1F,gEAAgE;YAChE,aAAa,CAAC,UAAU,CAAC,CAAA;QAC3B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,GAAG,YAAY,wBAAwB,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;QAC5E,CAAC;QAED,MAAM,IAAI,GAAG,GAAG,cAAc,CAAC,KAAK,CAAC,IAAI,EAAE,GAAG,CAAC,GAAG,aAAa,CAAC,UAAU,CAAC,EAAE,CAAA;QAC7E,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,0BAA0B,IAAI,EAAE,EAAE;YAC5D,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,GAAG,CAAC,SAAS,KAAK,SAAS;gBACzB,CAAC,CAAC;oBACE,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;oBAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC;iBAChC;gBACH,CAAC,CAAC,EAAE,CAAC;SACR,CAAC,CAAA;QACF,IAAI,QAAkB,CAAA;QACtB,IAAI,CAAC;YACH,QAAQ,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,CAAA;YACjC,IAAI,CAAC,CAAC,QAAQ,YAAY,QAAQ,CAAC;gBAAE,MAAM,IAAI,SAAS,CAAC,kCAAkC,CAAC,CAAA;QAC9F,CAAC;QAAC,MAAM,CAAC;YACP,QAAQ,CAAC,IAAI,CAAC;gBACZ,IAAI,EAAE,6BAA6B;gBACnC,MAAM,EAAE,KAAK,CAAC,MAAM;gBACpB,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,GAAG,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,IAAI,kDAAkD,QAAQ,GAAG;aACpG,CAAC,CAAA;YACF,SAAQ;QACV,CAAC;QAED,mCAAmC;QACnC,IAAI,QAAQ,CAAC,MAAM,IAAI,GAAG,EAAE,CAAC;YAC3B,QAAQ,CAAC,IAAI,CAAC;gBACZ,IAAI,EAAE,6BAA6B;gBACnC,MAAM,EAAE,KAAK,CAAC,MAAM;gBACpB,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,GAAG,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,IAAI,aAAa,QAAQ,CAAC,MAAM,mCAAmC,QAAQ,GAAG;aACjH,CAAC,CAAA;YACF,SAAQ;QACV,CAAC;QACD,yEAAyE;QACzE,MAAM,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,CAAA;QAC9D,IAAI,gBAAgB,KAAK,SAAS,IAAI,QAAQ,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;YAC5D,MAAM,WAAW,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,EAAE,CAAA;YAC9D,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,CAAC;gBAC9C,QAAQ,CAAC,IAAI,CAAC;oBACZ,IAAI,EAAE,2BAA2B;oBACjC,MAAM,EAAE,KAAK,CAAC,MAAM;oBACpB,IAAI,EAAE,KAAK,CAAC,IAAI;oBAChB,IAAI,EAAE,QAAQ;oBACd,OAAO,EAAE,GAAG,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,IAAI,qEAAqE,QAAQ,GAAG;iBACvH,CAAC,CAAA;gBACF,SAAQ;YACV,CAAC;YACD,IAAI,aAAsB,CAAA;YAC1B,IAAI,CAAC;gBACH,aAAa,GAAG,MAAM,QAAQ,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,CAAA;YAC/C,CAAC;YAAC,MAAM,CAAC;gBACP,QAAQ,CAAC,IAAI,CAAC;oBACZ,IAAI,EAAE,2BAA2B;oBACjC,MAAM,EAAE,KAAK,CAAC,MAAM;oBACpB,IAAI,EAAE,KAAK,CAAC,IAAI;oBAChB,IAAI,EAAE,QAAQ;oBACd,OAAO,EAAE,GAAG,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,IAAI,mEAAmE,QAAQ,GAAG;iBACrH,CAAC,CAAA;gBACF,SAAQ;YACV,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,gBAAgB,EAAE,aAAa,CAAC,CAAA;YACrE,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBACzB,QAAQ,CAAC,IAAI,CAAC;oBACZ,IAAI,EAAE,2BAA2B;oBACjC,MAAM,EAAE,KAAK,CAAC,MAAM;oBACpB,IAAI,EAAE,KAAK,CAAC,IAAI;oBAChB,IAAI,EAAE,QAAQ;oBACd,OAAO,EAAE,GAAG,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,IAAI,gDAAgD,QAAQ,MAAM,MAAM,CAAC,CAAC,CAAC,EAAE,OAAO,IAAI,SAAS,EAAE;iBACtI,CAAC,CAAA;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED,oFAAoF;IACpF,IAAI,IAAI,CAAC,IAAI,EAAE,UAAU,KAAK,SAAS,EAAE,CAAC;QACxC,KAAK,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,GAAG,oBAAoB,EAAE,SAAS,EAAE,EAAE,CAAC;YACtE,MAAM,QAAQ,GAAG,QAAQ,GAAG,IAAI,GAAG,GAAG,GAAG,SAAS,CAAA;YAClD,MAAM,GAAG,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAA;YACxC,IAAI,OAAgB,CAAA;YACpB,IAAI,CAAC;gBACH,OAAO,GAAG,aAAa,CACrB,IAAI,CAAC,IAAI,CAAC,UAAU,EACpB,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,CAAC,CAClD,CAAA;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,GAAG,SAAS,CAAA;YACrB,CAAC;YACD,IAAI,OAAO,KAAK,SAAS;gBAAE,MAAK;YAChC,IAAI,QAAkB,CAAA;YACtB,IAAI,CAAC;gBACH,QAAQ,GAAG,MAAM,OAAO,CACtB,IAAI,OAAO,CAAC,0BAA0B,cAAc,CAAC,KAAK,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,EAAE;oBACvE,MAAM,EAAE,KAAK,CAAC,MAAM;oBACpB,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;oBAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;iBAC9B,CAAC,CACH,CAAA;gBACD,IAAI,CAAC,CAAC,QAAQ,YAAY,QAAQ,CAAC;oBAAE,MAAM,IAAI,SAAS,CAAC,kCAAkC,CAAC,CAAA;YAC9F,CAAC;YAAC,MAAM,CAAC;gBACP,QAAQ,CAAC,IAAI,CAAC;oBACZ,IAAI,EAAE,+BAA+B;oBACrC,MAAM,EAAE,KAAK,CAAC,MAAM;oBACpB,IAAI,EAAE,KAAK,CAAC,IAAI;oBAChB,IAAI,EAAE,QAAQ;oBACd,OAAO,EAAE,GAAG,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,IAAI,oDAAoD,QAAQ,GAAG;iBACtG,CAAC,CAAA;gBACF,SAAQ;YACV,CAAC;YACD,IAAI,QAAQ,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;gBAC1B,QAAQ,CAAC,IAAI,CAAC;oBACZ,IAAI,EAAE,mBAAmB;oBACzB,MAAM,EAAE,KAAK,CAAC,MAAM;oBACpB,IAAI,EAAE,KAAK,CAAC,IAAI;oBAChB,IAAI,EAAE,QAAQ;oBACd,OAAO,EAAE,GAAG,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,IAAI,2CAA2C,QAAQ,GAAG;iBAC7F,CAAC,CAAA;YACJ,CAAC;iBAAM,IAAI,QAAQ,CAAC,MAAM,IAAI,GAAG,EAAE,CAAC;gBAClC,QAAQ,CAAC,IAAI,CAAC;oBACZ,IAAI,EAAE,+BAA+B;oBACrC,MAAM,EAAE,KAAK,CAAC,MAAM;oBACpB,IAAI,EAAE,KAAK,CAAC,IAAI;oBAChB,IAAI,EAAE,QAAQ;oBACd,OAAO,EAAE,GAAG,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,IAAI,aAAa,QAAQ,CAAC,MAAM,sCAAsC,QAAQ,GAAG;iBACpH,CAAC,CAAA;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,QAAQ,CAAA;AACjB,CAAC"}
1
+ {"version":3,"file":"invariants.js","sourceRoot":"","sources":["../src/invariants.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,42 @@
1
+ declare const COMPILED_ROUTE_PATTERN: unique symbol;
2
+ export type RoutePatternSegment = {
3
+ readonly kind: "static";
4
+ readonly value: string;
5
+ } | {
6
+ readonly kind: "param";
7
+ readonly name: string;
8
+ } | {
9
+ readonly kind: "wildcard";
10
+ readonly name: string;
11
+ };
12
+ /**
13
+ * Compiled route grammar shared by runtime routers, browser navigation, mocks, and adapters.
14
+ *
15
+ * The result, its two arrays, and every segment are frozen because consumers share one instance. In
16
+ * particular, a segment must not diverge from the lazily cached regex after first match. The measured
17
+ * sub-microsecond cost per route is paid only at registration and preserves that runtime invariant.
18
+ */
19
+ export interface CompiledRoutePattern {
20
+ readonly [COMPILED_ROUTE_PATTERN]: true;
21
+ readonly pattern: string;
22
+ readonly segments: readonly RoutePatternSegment[];
23
+ readonly paramNames: readonly string[];
24
+ }
25
+ export type RoutePatternMatch = {
26
+ readonly matched: true;
27
+ readonly params: Record<string, string>;
28
+ } | {
29
+ readonly matched: false;
30
+ readonly reason: "not-found" | "malformed";
31
+ };
32
+ /** Parse and validate Nifra's strict route grammar once. Trailing slashes remain significant. */
33
+ export declare function compileRoutePattern(pattern: string): CompiledRoutePattern;
34
+ /** Core precedence: static > param > wildcard at the first differing segment, independent of order. */
35
+ export declare function compareRoutePatternSpecificity(left: CompiledRoutePattern, right: CompiledRoutePattern): number;
36
+ /** Decode router captures under one rule. Plain values take the zero-allocation path; malformed
37
+ * escapes return `null`, allowing HTTP to emit 400 while client navigation declines the match. */
38
+ export declare function decodeRouteParams(raw: Record<string, string>): Record<string, string> | null;
39
+ /** Match one compiled pattern and return decoded captures. The caller decides cross-pattern order. */
40
+ export declare function matchRoutePattern(compiled: CompiledRoutePattern, pathname: string): RoutePatternMatch;
41
+ export {};
42
+ //# sourceMappingURL=pattern.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pattern.d.ts","sourceRoot":"","sources":["../../src/router/pattern.ts"],"names":[],"mappings":"AAIA,QAAA,MAAM,sBAAsB,EAAE,OAAO,MAA+C,CAAA;AAEpF,MAAM,MAAM,mBAAmB,GAC3B;IAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GACnD;IAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GACjD;IAAE,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAA;AAExD;;;;;;GAMG;AACH,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,CAAC,sBAAsB,CAAC,EAAE,IAAI,CAAA;IACvC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,QAAQ,EAAE,SAAS,mBAAmB,EAAE,CAAA;IACjD,QAAQ,CAAC,UAAU,EAAE,SAAS,MAAM,EAAE,CAAA;CACvC;AAED,MAAM,MAAM,iBAAiB,GACzB;IAAE,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,GACnE;IAAE,QAAQ,CAAC,OAAO,EAAE,KAAK,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,WAAW,GAAG,WAAW,CAAA;CAAE,CAAA;AAoC3E,iGAAiG;AACjG,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,oBAAoB,CA4DzE;AAED,uGAAuG;AACvG,wBAAgB,8BAA8B,CAC5C,IAAI,EAAE,oBAAoB,EAC1B,KAAK,EAAE,oBAAoB,GAC1B,MAAM,CAWR;AAED;kGACkG;AAClG,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAa5F;AAED,sGAAsG;AACtG,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,oBAAoB,EAC9B,QAAQ,EAAE,MAAM,GACf,iBAAiB,CAWnB"}
@@ -0,0 +1,127 @@
1
+ import { RouteConfigError } from "../errors.js";
2
+ const PARAM_NAME = /^[A-Za-z_][A-Za-z0-9_]*$/;
3
+ const RESERVED_PARAM_NAMES = new Set(["__proto__", "constructor", "prototype"]);
4
+ const COMPILED_ROUTE_PATTERN = Symbol("nifra.compiled-route-pattern");
5
+ /**
6
+ * Regex per compiled pattern, derived on first use. The core trie matches by descending segments and
7
+ * never asks for one, so building it during {@link compileRoutePattern} would charge every server's
8
+ * boot for the browser/mock adapters alone. Keyed by the frozen pattern, so the cache dies with it.
9
+ */
10
+ const REGEX_CACHE = new WeakMap();
11
+ function regexOf(compiled) {
12
+ let regex = REGEX_CACHE.get(compiled);
13
+ if (regex === undefined) {
14
+ if (compiled[COMPILED_ROUTE_PATTERN] !== true) {
15
+ throw new TypeError("route pattern was not produced by compileRoutePattern()");
16
+ }
17
+ const parts = compiled.segments.map((segment) => segment.kind === "static"
18
+ ? escapeRegex(segment.value)
19
+ : segment.kind === "param"
20
+ ? "([^/]+)"
21
+ : "(.+)");
22
+ regex = new RegExp(parts.length === 0 ? "^/$" : `^/${parts.join("/")}$`);
23
+ REGEX_CACHE.set(compiled, regex);
24
+ }
25
+ return regex;
26
+ }
27
+ function validParamName(name) {
28
+ return PARAM_NAME.test(name) && !RESERVED_PARAM_NAMES.has(name);
29
+ }
30
+ function escapeRegex(value) {
31
+ return value.replace(/[.*+?^()|[\]\\{}$]/g, "\\$&");
32
+ }
33
+ /** Parse and validate Nifra's strict route grammar once. Trailing slashes remain significant. */
34
+ export function compileRoutePattern(pattern) {
35
+ if (pattern.length === 0 || pattern.charCodeAt(0) !== 47 /* / */) {
36
+ throw new RouteConfigError("INVALID_PATH", `path must start with "/": "${pattern}"`);
37
+ }
38
+ const raw = pattern === "/" ? [] : pattern.slice(1).split("/");
39
+ const segments = [];
40
+ const paramNames = [];
41
+ for (let i = 0; i < raw.length; i++) {
42
+ const value = raw[i];
43
+ if (value.charCodeAt(0) === 58 /* : */) {
44
+ const name = value.slice(1);
45
+ if (!validParamName(name)) {
46
+ throw new RouteConfigError("INVALID_PARAM_NAME", `invalid parameter ":${name}" in "${pattern}"`);
47
+ }
48
+ if (paramNames.includes(name)) {
49
+ throw new RouteConfigError("DUPLICATE_PARAM", `duplicate parameter ":${name}" in "${pattern}"`);
50
+ }
51
+ paramNames.push(name);
52
+ segments.push(Object.freeze({ kind: "param", name }));
53
+ continue;
54
+ }
55
+ if (value.charCodeAt(0) === 42 /* * */) {
56
+ if (i !== raw.length - 1) {
57
+ throw new RouteConfigError("WILDCARD_NOT_LAST", `wildcard must be the final segment in "${pattern}"`);
58
+ }
59
+ const name = value.length === 1 ? "*" : value.slice(1);
60
+ if (name !== "*" && !validParamName(name)) {
61
+ throw new RouteConfigError("INVALID_PARAM_NAME", `invalid wildcard "*${name}" in "${pattern}"`);
62
+ }
63
+ if (paramNames.includes(name)) {
64
+ throw new RouteConfigError("DUPLICATE_PARAM", `duplicate parameter "${name}" in "${pattern}"`);
65
+ }
66
+ paramNames.push(name);
67
+ segments.push(Object.freeze({ kind: "wildcard", name }));
68
+ continue;
69
+ }
70
+ segments.push(Object.freeze({ kind: "static", value }));
71
+ }
72
+ const compiled = Object.freeze({
73
+ [COMPILED_ROUTE_PATTERN]: true,
74
+ pattern,
75
+ segments: Object.freeze(segments),
76
+ paramNames: Object.freeze(paramNames),
77
+ });
78
+ return compiled;
79
+ }
80
+ /** Core precedence: static > param > wildcard at the first differing segment, independent of order. */
81
+ export function compareRoutePatternSpecificity(left, right) {
82
+ const length = Math.max(left.segments.length, right.segments.length);
83
+ for (let i = 0; i < length; i++) {
84
+ const a = left.segments[i];
85
+ const b = right.segments[i];
86
+ if (a === undefined || b === undefined)
87
+ return b === undefined ? -1 : 1;
88
+ const aWeight = a.kind === "static" ? 3 : a.kind === "param" ? 2 : 1;
89
+ const bWeight = b.kind === "static" ? 3 : b.kind === "param" ? 2 : 1;
90
+ if (aWeight !== bWeight)
91
+ return bWeight - aWeight;
92
+ }
93
+ return 0;
94
+ }
95
+ /** Decode router captures under one rule. Plain values take the zero-allocation path; malformed
96
+ * escapes return `null`, allowing HTTP to emit 400 while client navigation declines the match. */
97
+ export function decodeRouteParams(raw) {
98
+ let out;
99
+ for (const key in raw) {
100
+ const value = raw[key];
101
+ if (!value.includes("%"))
102
+ continue;
103
+ try {
104
+ out ??= { ...raw };
105
+ out[key] = decodeURIComponent(value);
106
+ }
107
+ catch {
108
+ return null;
109
+ }
110
+ }
111
+ return out ?? raw;
112
+ }
113
+ /** Match one compiled pattern and return decoded captures. The caller decides cross-pattern order. */
114
+ export function matchRoutePattern(compiled, pathname) {
115
+ const match = regexOf(compiled).exec(pathname);
116
+ if (match === null)
117
+ return { matched: false, reason: "not-found" };
118
+ const params = {};
119
+ for (let i = 0; i < compiled.paramNames.length; i++) {
120
+ params[compiled.paramNames[i]] = match[i + 1] ?? "";
121
+ }
122
+ const decoded = decodeRouteParams(params);
123
+ return decoded === null
124
+ ? { matched: false, reason: "malformed" }
125
+ : { matched: true, params: decoded };
126
+ }
127
+ //# sourceMappingURL=pattern.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pattern.js","sourceRoot":"","sources":["../../src/router/pattern.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { type CompiledRoutePattern } from "./pattern.js";
1
2
  /** HTTP methods the router accepts. */
2
3
  export declare const METHODS: readonly ["GET", "POST", "PUT", "PATCH", "DELETE", "HEAD", "OPTIONS"];
3
4
  export type Method = (typeof METHODS)[number];
@@ -49,7 +50,7 @@ export declare class Router<T> {
49
50
  * (boot-time, L2) on a duplicate route, a malformed pattern, or conflicting
50
51
  * parameter names for the same path shape.
51
52
  */
52
- add(method: Method, path: string, payload: T): void;
53
+ add(method: Method, pattern: string | CompiledRoutePattern, payload: T): void;
53
54
  /**
54
55
  * Resolve `method` + `path`. Tolerant of a missing leading slash and of
55
56
  * method casing. Never throws.
@@ -1 +1 @@
1
- {"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../../src/router/router.ts"],"names":[],"mappings":"AAEA,uCAAuC;AACvC,eAAO,MAAM,OAAO,uEAAwE,CAAA;AAE5F,MAAM,MAAM,MAAM,GAAG,CAAC,OAAO,OAAO,CAAC,CAAC,MAAM,CAAC,CAAA;AA0B7C,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAqB,CAAA;AAGrE;;;;GAIG;AACH,MAAM,MAAM,WAAW,CAAC,CAAC,IACrB;IAAE,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,GACtF;IAAE,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAA;CAAE,GACvD;IAAE,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,oBAAoB,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,CAAA;CAAE,CAAA;AAyKhG;;;;;;;;GAQG;AACH,qBAAa,MAAM,CAAC,CAAC;IACnB,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAc;IACnC;;;;;OAKG;IACH,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA0B;IACvD;;;;OAIG;IACH,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAU;;IAQ7C;;;;OAIG;IACH,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,GAAG,IAAI;IA4GnD;;;OAGG;IACH,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC,CAAC,CAAC;IAelD,OAAO,CAAC,WAAW;IA8BnB,OAAO,CAAC,sBAAsB;CAwB/B"}
1
+ {"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../../src/router/router.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,oBAAoB,EAAuB,MAAM,cAAc,CAAA;AAE7E,uCAAuC;AACvC,eAAO,MAAM,OAAO,uEAAwE,CAAA;AAE5F,MAAM,MAAM,MAAM,GAAG,CAAC,OAAO,OAAO,CAAC,CAAC,MAAM,CAAC,CAAA;AAS7C,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAqB,CAAA;AAGrE;;;;GAIG;AACH,MAAM,MAAM,WAAW,CAAC,CAAC,IACrB;IAAE,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,GACtF;IAAE,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAA;CAAE,GACvD;IAAE,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,oBAAoB,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,CAAA;CAAE,CAAA;AAyKhG;;;;;;;;GAQG;AACH,qBAAa,MAAM,CAAC,CAAC;IACnB,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAc;IACnC;;;;;OAKG;IACH,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA0B;IACvD;;;;OAIG;IACH,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAU;;IAQ7C;;;;OAIG;IACH,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,oBAAoB,EAAE,OAAO,EAAE,CAAC,GAAG,IAAI;IAkE7E;;;OAGG;IACH,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC,CAAC,CAAC;IAelD,OAAO,CAAC,WAAW;IA8BnB,OAAO,CAAC,sBAAsB;CAwB/B"}
@@ -1,24 +1,12 @@
1
1
  import { RouteConfigError } from "../errors.js";
2
+ import { compileRoutePattern } from "./pattern.js";
2
3
  /** HTTP methods the router accepts. */
3
4
  export const METHODS = ["GET", "POST", "PUT", "PATCH", "DELETE", "HEAD", "OPTIONS"];
4
5
  const METHOD_SET = new Set(METHODS);
5
6
  function isMethod(value) {
6
7
  return METHOD_SET.has(value);
7
8
  }
8
- /** Parameter names must be valid identifiers — mirrors the global identifier rule. */
9
- const PARAM_NAME = /^[A-Za-z_][A-Za-z0-9_]*$/;
10
- /** Object-prototype keys are rejected as param names: a route like `/:__proto__` could let a captured
11
- * value reach a prototype-polluting key. Param *names* come from the route pattern (never from request
12
- * input) and are validated here at registration, so a reserved key can never reach `buildParams` —
13
- * this boot-time guard is the whole protection. The runtime params object stays a plain `{}` (only
14
- * user-controlled *values* land in it, under these validated keys), keeping the param path
15
- * allocation-cheap; a null-prototype object would add cost for no added safety. */
16
- const RESERVED_PARAM_NAMES = new Set(["__proto__", "constructor", "prototype"]);
17
- /** A param name is valid when it's an identifier AND not a reserved object-prototype key. */
18
- const validParamName = (name) => PARAM_NAME.test(name) && !RESERVED_PARAM_NAMES.has(name);
19
9
  const SLASH = 47;
20
- const COLON = 58;
21
- const STAR = 42;
22
10
  export const EMPTY_PARAMS = Object.freeze({});
23
11
  const DYNAMIC_MATCH_CACHE_MAX = 2048;
24
12
  const DYNAMIC_MATCH_CACHES = new WeakMap();
@@ -173,7 +161,7 @@ export class Router {
173
161
  * (boot-time, L2) on a duplicate route, a malformed pattern, or conflicting
174
162
  * parameter names for the same path shape.
175
163
  */
176
- add(method, path, payload) {
164
+ add(method, pattern, payload) {
177
165
  DYNAMIC_MATCH_CACHES.delete(this);
178
166
  const upper = method.toUpperCase();
179
167
  // The `Method` parameter type is the compile-time guard; this re-checks at
@@ -181,50 +169,25 @@ export class Router {
181
169
  if (!isMethod(upper)) {
182
170
  throw new RouteConfigError("INVALID_METHOD", `unsupported HTTP method "${method}"`);
183
171
  }
184
- if (path.length === 0 || path.charCodeAt(0) !== SLASH) {
185
- throw new RouteConfigError("INVALID_PATH", `path must start with "/": "${path}"`);
186
- }
187
- const segments = path === "/" ? [] : path.slice(1).split("/");
188
- const paramNames = [];
189
- let isStatic = true;
172
+ const compiled = typeof pattern === "string" ? compileRoutePattern(pattern) : pattern;
173
+ const path = compiled.pattern;
174
+ const paramNames = compiled.paramNames;
175
+ const isStatic = paramNames.length === 0;
190
176
  let node = this.root;
191
- for (let i = 0; i < segments.length; i++) {
192
- const seg = segments[i];
193
- const marker = seg.charCodeAt(0);
194
- if (marker === COLON) {
195
- isStatic = false;
196
- const name = seg.slice(1);
197
- if (!validParamName(name)) {
198
- throw new RouteConfigError("INVALID_PARAM_NAME", `invalid parameter ":${name}" in "${path}"`);
199
- }
200
- if (paramNames.includes(name)) {
201
- throw new RouteConfigError("DUPLICATE_PARAM", `duplicate parameter ":${name}" in "${path}"`);
202
- }
203
- paramNames.push(name);
177
+ for (const segment of compiled.segments) {
178
+ if (segment.kind === "param") {
204
179
  node.paramChild ??= createNode();
205
180
  node = node.paramChild;
206
181
  }
207
- else if (marker === STAR) {
208
- isStatic = false;
209
- if (i !== segments.length - 1) {
210
- throw new RouteConfigError("WILDCARD_NOT_LAST", `wildcard must be the final segment in "${path}"`);
211
- }
212
- const name = seg.length === 1 ? "*" : seg.slice(1);
213
- if (name !== "*" && !validParamName(name)) {
214
- throw new RouteConfigError("INVALID_PARAM_NAME", `invalid wildcard "*${name}" in "${path}"`);
215
- }
216
- if (paramNames.includes(name)) {
217
- throw new RouteConfigError("DUPLICATE_PARAM", `duplicate parameter "${name}" in "${path}"`);
218
- }
219
- paramNames.push(name);
182
+ else if (segment.kind === "wildcard") {
220
183
  node.wildcardChild ??= createNode();
221
184
  node = node.wildcardChild;
222
185
  }
223
186
  else {
224
- let child = node.staticChildren.get(seg);
187
+ let child = node.staticChildren.get(segment.value);
225
188
  if (child === undefined) {
226
189
  child = createNode();
227
- node.staticChildren.set(seg, child);
190
+ node.staticChildren.set(segment.value, child);
228
191
  }
229
192
  node = child;
230
193
  }
@@ -1 +1 @@
1
- {"version":3,"file":"router.js","sourceRoot":"","sources":["../../src/router/router.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"router.js","sourceRoot":"","sources":["../../src/router/router.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@ import type { DataClassification } from "../classification.js";
2
2
  import { type Method } from "../router/router.js";
3
3
  import type { InferOutput, StandardSchemaV1 } from "../schema/standard.js";
4
4
  import type { Context, IdempotencyConfig, Params, RouteSchema } from "./context.js";
5
- import type { OutputOf } from "./registry.js";
5
+ import type { EmptyRegistry, OutputOf, Registry } from "./registry.js";
6
6
  import { Server } from "./server.js";
7
7
  /** An additional (non-success) response a contract operation can document, e.g. a `404`. */
8
8
  export interface ResponseDef {
@@ -118,9 +118,13 @@ type MaybePromise<T> = T | Promise<T>;
118
118
  type HandlerReturnForOp<O extends OperationDef> = O extends {
119
119
  response: infer R extends StandardSchemaV1;
120
120
  } ? Response | InferOutput<R> : unknown;
121
- /** The handlers `implement` requires: one per operation, typed from the op's input + response contract. */
122
- export type HandlersFor<C extends ContractShape> = {
123
- [K in keyof C]: (context: ContextForOp<C[K]>) => MaybePromise<HandlerReturnForOp<C[K]>>;
121
+ /**
122
+ * The handlers `implement` requires: one per operation, typed from the op's input + response contract,
123
+ * intersected with the host app's accumulated `derive`/`decorate` context - the same
124
+ * `Context & Ctx` an inline {@link Handler} receives, so a handler graduates either way unchanged.
125
+ */
126
+ export type HandlersFor<C extends ContractShape, Ctx = NonNullable<unknown>> = {
127
+ [K in keyof C]: (context: ContextForOp<C[K]> & Ctx) => MaybePromise<HandlerReturnForOp<C[K]>>;
124
128
  };
125
129
  /**
126
130
  * Define a standalone, versionable contract. Identity at runtime (it returns the
@@ -138,7 +142,7 @@ type AnyFn = (...args: never[]) => unknown;
138
142
  * the implemented server stays route-for-route identical to the equivalent inline server (the
139
143
  * mode-conformance guarantee), and a contract-typed client and a `typeof app`-typed client agree.
140
144
  */
141
- export type RegistryFromImpl<C extends ContractShape, H extends HandlersFor<C>> = {
145
+ export type RegistryFromImpl<C extends ContractShape, H extends HandlersFor<C, Ctx>, Ctx = NonNullable<unknown>> = {
142
146
  [P in C[keyof C]["path"]]: {
143
147
  [K in keyof C as C[K]["path"] extends P ? C[K]["method"] : never]: {
144
148
  readonly params: Params<C[K]["path"]>;
@@ -158,7 +162,20 @@ export type RegistryFromImpl<C extends ContractShape, H extends HandlersFor<C>>
158
162
  * builder, so the result is identical to writing the routes inline — handlers
159
163
  * lift over **unchanged** ("graduation"), and body/query schemas validate at the
160
164
  * request boundary exactly as in inline mode.
165
+ *
166
+ * Pass a pre-configured `app` to give the contract's routes a middleware chain. A route captures the
167
+ * server's `derive`/`decorate`/assurance chain **at registration**, so anything applied to the
168
+ * returned server afterwards reaches the contract's routes not at all - the app must already carry it:
169
+ *
170
+ * ```ts
171
+ * const app = implement(contract, handlers, server().use(auth).derive(sessionOf))
172
+ * ```
173
+ *
174
+ * That is also the seam that lets `nifra assure` prove rather than merely classify a contract-first
175
+ * app: the plugin that installs the enforcement is what declares the evidence
176
+ * ({@link withRouteAssurance}), and only a plugin installed *before* registration is captured. Handlers
177
+ * then see the app's `Ctx`, and the returned server keeps any routes the app already had.
161
178
  */
162
- export declare function implement<const C extends ContractShape, H extends HandlersFor<C>>(contract: C, handlers: H): Server<RegistryFromImpl<C, H>>;
179
+ export declare function implement<const C extends ContractShape, H extends HandlersFor<C, Ctx>, R extends Registry = EmptyRegistry, Ctx = NonNullable<unknown>>(contract: C, handlers: H, app?: Server<R, Ctx>): Server<R & RegistryFromImpl<C, H, Ctx>, Ctx>;
163
180
  export {};
164
181
  //# sourceMappingURL=contract.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"contract.d.ts","sourceRoot":"","sources":["../../src/server/contract.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"contract.d.ts","sourceRoot":"","sources":["../../src/server/contract.ts"],"names":[],"mappings":"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"}
@@ -36,10 +36,23 @@ export function defineContract(contract) {
36
36
  * builder, so the result is identical to writing the routes inline — handlers
37
37
  * lift over **unchanged** ("graduation"), and body/query schemas validate at the
38
38
  * request boundary exactly as in inline mode.
39
+ *
40
+ * Pass a pre-configured `app` to give the contract's routes a middleware chain. A route captures the
41
+ * server's `derive`/`decorate`/assurance chain **at registration**, so anything applied to the
42
+ * returned server afterwards reaches the contract's routes not at all - the app must already carry it:
43
+ *
44
+ * ```ts
45
+ * const app = implement(contract, handlers, server().use(auth).derive(sessionOf))
46
+ * ```
47
+ *
48
+ * That is also the seam that lets `nifra assure` prove rather than merely classify a contract-first
49
+ * app: the plugin that installs the enforcement is what declares the evidence
50
+ * ({@link withRouteAssurance}), and only a plugin installed *before* registration is captured. Handlers
51
+ * then see the app's `Ctx`, and the returned server keeps any routes the app already had.
39
52
  */
40
- export function implement(contract, handlers) {
41
- const app = new Server();
42
- for (const [name, op] of Object.entries(contract)) {
53
+ export function implement(contract, handlers, app) {
54
+ const target = (app ?? new Server());
55
+ const routes = Object.entries(contract).map(([name, op]) => {
43
56
  // body/query are validated at the request boundary; `response` is a type + introspection contract
44
57
  // ONLY — never validated at runtime and never read on the request hot path (the lifecycle reads
45
58
  // schema.body/query by name; the `bare`/bodyOnly/queryOnly fast-path gates ignore `response`). Built
@@ -60,10 +73,16 @@ export function implement(contract, handlers) {
60
73
  ...(op.classification !== undefined ? { classification: op.classification } : {}),
61
74
  }
62
75
  : undefined;
63
- app.register(op.method, op.path, schema, handlers[name]);
64
- }
76
+ return {
77
+ method: op.method,
78
+ path: op.path,
79
+ schema,
80
+ handler: handlers[name],
81
+ };
82
+ });
83
+ target.registerBatch(routes);
65
84
  // Runtime registered exactly the contract's routes through the inline path; the
66
85
  // registry type is computed from the contract inputs + handler return types.
67
- return app;
86
+ return target;
68
87
  }
69
88
  //# sourceMappingURL=contract.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"contract.js","sourceRoot":"","sources":["../../src/server/contract.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"contract.js","sourceRoot":"","sources":["../../src/server/contract.ts"],"names":[],"mappings":"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"}