@a3s-lab/code 0.3.1 → 0.4.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.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session.js","sourceRoot":"","sources":["../ts/session.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AAmTH,+EAA+E;AAC/E,mBAAmB;AACnB,+EAA+E;AAE/E,SAAS,eAAe,CACtB,MAAe,EACf,QAAyB;IAEzB,IAAI,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,QAAQ,CAAC;IACrD,IAAI,MAAM;QAAE,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;IACvD,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;AACpE,CAAC;AAED,KAAK,UAAU,iBAAiB,CAC9B,OAAuB,EACvB,QAAkB,EAClB,UAA+E;IAE/E,MAAM,IAAI,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACtE,MAAM,KAAK,GAAkB;QAC3B,UAAU,EAAE,QAAQ,CAAC,EAAE;QACvB,QAAQ,EAAE,QAAQ,CAAC,IAAI;QACvB,IAAI;KACL,CAAC;IAEF,IAAI,UAAU,EAAE,CAAC;QACf,MAAM,cAAc,GAAG,MAAM,UAAU,CAAC,KAAK,CAAC,CAAC;QAC/C,IAAI,cAAc,KAAK,SAAS,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;YACrD,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,MAAM,EAAE,OAAO,cAAc,KAAK,QAAQ;oBACxC,CAAC,CAAC,cAAc;oBAChB,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC;gBAClC,KAAK,EAAE,EAAE;gBACT,QAAQ,EAAE,EAAE;aACb,CAAC;QACJ,CAAC;IACH,CAAC;IAED,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QACpB,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,UAAU,EAAE,QAAQ,CAAC,EAAE,EAAE,CAAC,CAAC;YACxE,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,MAAM,EAAE,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;gBACpE,KAAK,EAAE,EAAE;gBACT,QAAQ,EAAE,EAAE;aACb,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,MAAM,EAAE,EAAE;gBACV,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;gBACvD,QAAQ,EAAE,EAAE;aACb,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO;QACL,OAAO,EAAE,KAAK;QACd,MAAM,EAAE,EAAE;QACV,KAAK,EAAE,SAAS,QAAQ,CAAC,IAAI,kEAAkE;QAC/F,QAAQ,EAAE,EAAE;KACb,CAAC;AACJ,CAAC;AAED,2CAA2C;AAC3C,SAAS,eAAe,CAAC,IAAc;IACrC,MAAM,GAAG,GAAsC;QAC7C,OAAO,EAAE,sBAAsB;QAC/B,KAAK,EAAE,oBAAoB;QAC3B,OAAO,EAAE,sBAAsB;QAC/B,QAAQ,EAAE,uBAAuB;KAClC,CAAC;IACF,OAAO,GAAG,CAAC,IAAI,CAAC,CAAC;AACnB,CAAC;AAED,8CAA8C;AAC9C,SAAS,kBAAkB,CAAC,IAAwB;IAClD,MAAM,GAAG,GAAG;QACV,QAAQ,EAAE,4BAA4B;QACtC,QAAQ,EAAE,4BAA4B;QACtC,MAAM,EAAE,0BAA0B;KACnC,CAAC;IACF,OAAO,GAAG,CAAC,IAAI,CAAC,CAAC;AACnB,CAAC;AAED,gDAAgD;AAChD,SAAS,oBAAoB,CAAC,MAAe;IAC3C,IAAI,MAAM,KAAK,cAAc;QAAE,OAAO,6BAA6B,CAAC;IACpE,OAAO,uBAAuB,CAAC;AACjC,CAAC;AAED,mDAAmD;AACnD,SAAS,uBAAuB,CAAC,MAAc;IAC7C,MAAM,GAAG,GAA2B;QAClC,KAAK,EAAE,2BAA2B;QAClC,IAAI,EAAE,0BAA0B;QAChC,GAAG,EAAE,yBAAyB;KAC/B,CAAC;IACF,OAAO,GAAG,CAAC,MAAM,CAAC,IAAI,2BAA2B,CAAC;AACpD,CAAC;AAED,gEAAgE;AAChE,SAAS,oBAAoB,CAAC,KAAwB;IACpD,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;QACnB,KAAK,MAAM;YACT,OAAO,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QACzE,KAAK,WAAW;YACd,IAAI,CAAC,KAAK,CAAC,QAAQ;gBAAE,OAAO,IAAI,CAAC;YACjC,OAAO;gBACL,IAAI,EAAE,WAAW;gBACjB,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,IAAI;gBAC7B,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE;gBAC1E,UAAU,EAAE,KAAK,CAAC,QAAQ,CAAC,EAAE;aAC9B,CAAC;QACJ,KAAK,aAAa;YAChB,OAAO,KAAK,CAAC,UAAU;gBACrB,CAAC,CAAC;oBACE,IAAI,EAAE,aAAa;oBACnB,UAAU,EAAE,KAAK,CAAC,UAAU,IAAI,EAAE;oBAClC,MAAM,EAAE,KAAK,CAAC,UAAU,CAAC,MAAM;oBAC/B,OAAO,EAAE,KAAK,CAAC,UAAU,CAAC,OAAO;iBAClC;gBACH,CAAC,CAAC,IAAI,CAAC;QACX,KAAK,aAAa;YAChB,OAAO;gBACL,IAAI,EAAE,aAAa;gBACnB,SAAS,EAAE,KAAK,CAAC,SAAS,IAAI,CAAC;gBAC/B,IAAI,EAAE,KAAK,CAAC,QAAQ,IAAI,EAAE;gBAC1B,SAAS,EAAE,EAAE;aACd,CAAC;QACJ,KAAK,OAAO;YACV,OAAO;gBACL,IAAI,EAAE,OAAO;gBACb,OAAO,EAAE,KAAK,CAAC,YAAY,IAAI,eAAe;gBAC9C,WAAW,EAAE,KAAK,CAAC,WAAW,IAAI,KAAK;aACxC,CAAC;QACJ,KAAK,MAAM;YACT,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,KAAK,CAAC,YAAY,IAAI,MAAM,EAAE,CAAC;QACtE,KAAK,uBAAuB;YAC1B,OAAO;gBACL,IAAI,EAAE,uBAAuB;gBAC7B,cAAc,EAAE,KAAK,CAAC,cAAc,IAAI,EAAE;gBAC1C,QAAQ,EAAE,KAAK,CAAC,QAAQ,IAAI,EAAE;gBAC9B,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE;gBACtD,OAAO,EAAE,KAAK,CAAC,SAAS,IAAI,KAAK;aAClC,CAAC;QACJ,KAAK,uBAAuB;YAC1B,OAAO,EAAE,IAAI,EAAE,uBAAuB,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,IAAI,KAAK,EAAE,CAAC;QAC9E,KAAK,gBAAgB;YACnB,OAAO;gBACL,IAAI,EAAE,gBAAgB;gBACtB,SAAS,EAAE,KAAK,CAAC,SAAS,IAAI,EAAE;gBAChC,IAAI,EAAE,KAAK,CAAC,SAAS,IAAI,EAAE;gBAC3B,SAAS,EAAE,KAAK,CAAC,cAAc,IAAI,EAAE;aACtC,CAAC;QACJ,KAAK,cAAc;YACjB,OAAO;gBACL,IAAI,EAAE,cAAc;gBACpB,SAAS,EAAE,KAAK,CAAC,SAAS,IAAI,EAAE;gBAChC,MAAM,EAAE,KAAK,CAAC,WAAW,IAAI,EAAE;aAChC,CAAC;QACJ,KAAK,iBAAiB;YACpB,OAAO;gBACL,IAAI,EAAE,iBAAiB;gBACvB,YAAY,EAAE,KAAK,CAAC,YAAY,IAAI,CAAC;gBACrC,WAAW,EAAE,KAAK,CAAC,WAAW,IAAI,CAAC;aACpC,CAAC;QACJ;YACE,OAAO,IAAI,CAAC;IAChB,CAAC;AACH,CAAC;AAED,+EAA+E;AAC/E,gBAAgB;AAChB,+EAA+E;AAE/E;;;;;GAKG;AACH,MAAM,OAAO,OAAO;IAClB,gCAAgC;IACf,OAAO,CAAY;IACpC,+BAA+B;IACtB,EAAE,CAAS;IACpB,2CAA2C;IACnC,OAAO,GAAG,KAAK,CAAC;IACxB,+BAA+B;IACd,aAAa,GAAsB,EAAE,CAAC;IAEvD,qDAAqD;IACrD,YAAY,MAAiB,EAAE,SAAiB;QAC9C,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,EAAE,GAAG,SAAS,CAAC;IACtB,CAAC;IAED,6EAA6E;IAC7E,kBAAkB;IAClB,6EAA6E;IAE7E;;;;;;;;;;;;;;;;OAgBG;IACH,KAAK,CAAC,YAAY,CAAC,OAAmC;QACpD,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,MAAM,QAAQ,GAAG,eAAe,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;QACnE,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,CAAC,CAAC;QAEvC,MAAM,QAAQ,GAAiB,EAAE,CAAC;QAClC,IAAI,QAAQ,GAAG,EAAE,CAAC;QAClB,IAAI,gBAAgB,GAAiB,MAAM,CAAC;QAC5C,MAAM,YAAY,GAAe,EAAE,CAAC;QAEpC,KAAK,IAAI,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,QAAQ,EAAE,IAAI,EAAE,EAAE,CAAC;YAC3C,MAAM,YAAY,GAAG,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;YAChD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE,YAAY,CAAC,CAAC;YAEpE,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,EAAE,OAAO,IAAI,EAAE,CAAC;YACjD,QAAQ,IAAI,QAAQ,CAAC;YACrB,gBAAgB,GAAG,QAAQ,CAAC,YAAY,CAAC;YAEzC,MAAM,aAAa,GAAG,QAAQ,CAAC,SAAS,IAAI,EAAE,CAAC;YAC/C,MAAM,eAAe,GAAiB,EAAE,CAAC;YACzC,YAAY,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC,CAAC;YAEpC,4BAA4B;YAC5B,MAAM,eAAe,GAAG,aAAa,CAAC,MAAM,CAC1C,CAAC,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC,IAAI,IAAI,OAAO,CAAC,KAAK,CAClD,CAAC;YACF,KAAK,MAAM,EAAE,IAAI,eAAe,EAAE,CAAC;gBACjC,MAAM,OAAO,GAAG,OAAO,CAAC,KAAM,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;gBACxC,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,OAAO,EAAE,EAAE,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;gBACxE,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAC7B,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC;YACrB,CAAC;YAED,MAAM,UAAU,GAAe;gBAC7B,SAAS,EAAE,IAAI;gBACf,IAAI,EAAE,QAAQ;gBACd,SAAS,EAAE,aAAa;gBACxB,WAAW,EAAE,eAAe;gBAC5B,KAAK,EAAE,QAAQ,CAAC,KAAK;gBACrB,YAAY,EAAE,QAAQ,CAAC,YAAY;aACpC,CAAC;YACF,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAE1B,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;gBACzB,MAAM,OAAO,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;YACzC,CAAC;YAED,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,IAAI,QAAQ,CAAC,YAAY,KAAK,YAAY,EAAE,CAAC;gBACzE,MAAM;YACR,CAAC;QACH,CAAC;QAED,OAAO;YACL,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;YAC5E,YAAY,EAAE,gBAAgB;YAC9B,SAAS,EAAE,YAAY;YACvB,KAAK,EAAE,QAAQ;SAChB,CAAC;IACJ,CAAC;IAED,6EAA6E;IAC7E,iBAAiB;IACjB,6EAA6E;IAE7E;;;;;;;;;;;;OAYG;IACH,UAAU,CAAC,OAAmC;QAC5C,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,MAAM,QAAQ,GAAG,eAAe,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;QACnE,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,CAAC,CAAC;QAEvC,IAAI,QAAQ,GAAG,EAAE,CAAC;QAClB,IAAI,UAA6B,CAAC;QAClC,IAAI,iBAA2C,CAAC;QAChD,MAAM,QAAQ,GAAiB,EAAE,CAAC;QAElC,IAAI,WAAoC,CAAC;QACzC,IAAI,YAAgD,CAAC;QACrD,IAAI,mBAA8D,CAAC;QACnE,IAAI,YAA2C,CAAC;QAChD,IAAI,UAAqC,CAAC;QAE1C,MAAM,WAAW,GAAG,IAAI,OAAO,CAAS,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;YACnD,WAAW,GAAG,GAAG,CAAC;YAClB,UAAU,GAAG,GAAG,CAAC;QACnB,CAAC,CAAC,CAAC;QACH,MAAM,YAAY,GAAG,IAAI,OAAO,CAAoB,CAAC,GAAG,EAAE,EAAE;YAC1D,YAAY,GAAG,GAAG,CAAC;QACrB,CAAC,CAAC,CAAC;QACH,MAAM,mBAAmB,GAAG,IAAI,OAAO,CAA2B,CAAC,GAAG,EAAE,EAAE;YACxE,mBAAmB,GAAG,GAAG,CAAC;QAC5B,CAAC,CAAC,CAAC;QACH,MAAM,YAAY,GAAG,IAAI,OAAO,CAAe,CAAC,GAAG,EAAE,EAAE;YACrD,YAAY,GAAG,GAAG,CAAC;QACrB,CAAC,CAAC,CAAC;QAEH,MAAM,MAAM,GAAoB,EAAE,CAAC;QACnC,IAAI,UAAU,GAAG,KAAK,CAAC;QACvB,MAAM,OAAO,GAAsB,EAAE,CAAC;QAEtC,SAAS,aAAa;YACpB,KAAK,MAAM,CAAC,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;gBAAE,CAAC,EAAE,CAAC;QACzC,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,CAAC,EAAE,CAAC;QAC1B,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC;QAE5B,MAAM,OAAO,GAAG,CAAC,KAAK,IAAI,EAAE;YAC1B,IAAI,CAAC;gBACH,KAAK,IAAI,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,QAAQ,EAAE,IAAI,EAAE,EAAE,CAAC;oBAC3C,MAAM,YAAY,GAAG,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;oBAChD,MAAM,MAAM,GAAG,MAAM,CAAC,cAAc,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;oBAE9D,IAAI,QAAQ,GAAG,EAAE,CAAC;oBAClB,MAAM,aAAa,GAAe,EAAE,CAAC;oBACrC,MAAM,eAAe,GAAiB,EAAE,CAAC;oBACzC,IAAI,gBAA0C,CAAC;oBAE/C,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;wBACjC,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;4BAClB,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC;4BAC1B,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC;wBAC5B,CAAC;wBACD,IAAI,KAAK,CAAC,QAAQ;4BAAE,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;wBACvD,IAAI,KAAK,CAAC,YAAY,EAAE,CAAC;4BACvB,gBAAgB,GAAG,KAAK,CAAC,YAAY,CAAC;4BACtC,iBAAiB,GAAG,KAAK,CAAC,YAAY,CAAC;wBACzC,CAAC;wBACD,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;wBACnB,aAAa,EAAE,CAAC;oBAClB,CAAC;oBAED,4BAA4B;oBAC5B,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;wBAClB,KAAK,MAAM,EAAE,IAAI,aAAa,EAAE,CAAC;4BAC/B,IAAI,EAAE,CAAC,IAAI,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;gCAC7B,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;gCACvC,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,OAAO,EAAE,EAAE,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;gCACxE,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gCAC7B,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC;gCAEnB,MAAM,CAAC,IAAI,CAAC;oCACV,IAAI,EAAE,aAAa;oCACnB,SAAS;oCACT,OAAO,EAAE,EAAE;oCACX,QAAQ,EAAE,EAAE;oCACZ,UAAU,EAAE,MAAM;oCAClB,QAAQ,EAAE,EAAE;iCACb,CAAC,CAAC;gCACH,aAAa,EAAE,CAAC;4BAClB,CAAC;wBACH,CAAC;oBACH,CAAC;oBAED,MAAM,UAAU,GAAe;wBAC7B,SAAS,EAAE,IAAI;wBACf,IAAI,EAAE,QAAQ;wBACd,SAAS,EAAE,aAAa;wBACxB,WAAW,EAAE,eAAe;wBAC5B,KAAK,EAAE,SAAS;wBAChB,YAAY,EAAE,gBAAgB;qBAC/B,CAAC;oBACF,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;oBAE1B,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;wBACzB,MAAM,OAAO,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;oBACzC,CAAC;oBAED,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,IAAI,gBAAgB,KAAK,YAAY,EAAE,CAAC;wBACpE,MAAM;oBACR,CAAC;gBACH,CAAC;gBAED,WAAY,CAAC,QAAQ,CAAC,CAAC;gBACvB,YAAa,CAAC,UAAU,CAAC,CAAC;gBAC1B,mBAAoB,CAAC,iBAAiB,CAAC,CAAC;gBACxC,YAAa,CAAC,QAAQ,CAAC,CAAC;YAC1B,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,UAAW,CAAC,GAAG,CAAC,CAAC;gBACjB,MAAM,GAAG,CAAC;YACZ,CAAC;oBAAS,CAAC;gBACT,UAAU,GAAG,IAAI,CAAC;gBAClB,aAAa,EAAE,CAAC;YAClB,CAAC;QACH,CAAC,CAAC,EAAE,CAAC;QACL,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QAExB,SAAS,cAAc,CACrB,SAA6C;YAE7C,OAAO;gBACL,CAAC,MAAM,CAAC,aAAa,CAAC;oBACpB,IAAI,KAAK,GAAG,CAAC,CAAC;oBACd,OAAO;wBACL,KAAK,CAAC,IAAI;4BACR,OAAO,IAAI,EAAE,CAAC;gCACZ,IAAI,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;oCAC1B,MAAM,GAAG,GAAG,SAAS,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;oCACvC,IAAI,GAAG,KAAK,IAAI;wCAAE,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;oCACrD,SAAS;gCACX,CAAC;gCACD,IAAI,UAAU,EAAE,CAAC;oCACf,OAAO,EAAE,KAAK,EAAE,SAAc,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;gCAC/C,CAAC;gCACD,MAAM,IAAI,OAAO,CAAO,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;4BAClD,CAAC;wBACH,CAAC;qBACF,CAAC;gBACJ,CAAC;aACF,CAAC;QACJ,CAAC;QAED,OAAO;YACL,UAAU,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YACjE,UAAU,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;YACpC,UAAU,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YACnE,IAAI,EAAE,WAAW;YACjB,KAAK,EAAE,YAAY;YACnB,YAAY,EAAE,mBAAmB;YACjC,KAAK,EAAE,YAAY;SACpB,CAAC;IACJ,CAAC;IAED,6EAA6E;IAC7E,oBAAoB;IACpB,6EAA6E;IAE7E;;;;;;;;;;OAUG;IACH,KAAK,CAAC,cAAc,CAClB,OAAqC;QAErC,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,MAAM,QAAQ,GAAG,eAAe,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;QACnE,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,kBAAkB,CACpD,IAAI,CAAC,EAAE,EACP,QAAQ,EACR,OAAO,CAAC,MAAM,CACf,CAAC;QACF,IAAI,MAAS,CAAC;QACd,IAAI,CAAC;YACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAM,CAAC;QAC1C,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,GAAG,QAAQ,CAAC,IAAoB,CAAC;QACzC,CAAC;QACD,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE,QAAQ,CAAC,KAAK,EAAE,CAAC;IACxE,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,YAAY,CAAC,OAAqC;QAChD,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,MAAM,QAAQ,GAAG,eAAe,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;QAEnE,IAAI,QAAQ,GAAG,EAAE,CAAC;QAClB,IAAI,aAAuC,CAAC;QAC5C,IAAI,WAAoC,CAAC;QACzC,IAAI,SAAoC,CAAC;QAEzC,MAAM,aAAa,GAAG,IAAI,OAAO,CAAU,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;YACtD,aAAa,GAAG,GAAG,CAAC;YACpB,SAAS,GAAG,GAAG,CAAC;QAClB,CAAC,CAAC,CAAC;QACH,MAAM,WAAW,GAAG,IAAI,OAAO,CAAS,CAAC,GAAG,EAAE,EAAE;YAC9C,WAAW,GAAG,GAAG,CAAC;QACpB,CAAC,CAAC,CAAC;QAEH,MAAM,SAAS,GAAG,IAAI,CAAC,EAAE,CAAC;QAC1B,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC;QAE5B,MAAM,aAAa,GAA0B;YAC3C,CAAC,MAAM,CAAC,aAAa,CAAC;gBACpB,IAAI,OAAO,GAAG,KAAK,CAAC;gBACpB,IAAI,IAAoD,CAAC;gBAEzD,OAAO;oBACL,KAAK,CAAC,IAAI;wBACR,IAAI,CAAC,OAAO,EAAE,CAAC;4BACb,OAAO,GAAG,IAAI,CAAC;4BACf,MAAM,MAAM,GAAG,MAAM,CAAC,wBAAwB,CAC5C,SAAS,EACT,QAAQ,EACR,OAAO,CAAC,MAAM,CACf,CAAC;4BACF,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC;wBACxC,CAAC;wBAED,IAAI,CAAC;4BACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;4BACjC,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;gCAChB,WAAY,CAAC,QAAQ,CAAC,CAAC;gCACvB,IAAI,CAAC;oCACH,aAAc,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;gCACvC,CAAC;gCAAC,MAAM,CAAC;oCACP,aAAc,CAAC,QAAQ,CAAC,CAAC;gCAC3B,CAAC;gCACD,OAAO,EAAE,KAAK,EAAE,SAA8B,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;4BAC/D,CAAC;4BACD,QAAQ,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC;4BAC9B,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;wBACnD,CAAC;wBAAC,OAAO,GAAG,EAAE,CAAC;4BACb,SAAU,CAAC,GAAG,CAAC,CAAC;4BAChB,MAAM,GAAG,CAAC;wBACZ,CAAC;oBACH,CAAC;iBACF,CAAC;YACJ,CAAC;SACF,CAAC;QAEF,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,aAAa,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;IACrE,CAAC;IAED,6EAA6E;IAC7E,qBAAqB;IACrB,6EAA6E;IAE7E,sDAAsD;IACtD,KAAK,CAAC,eAAe;QACnB,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACzD,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,sDAAsD;IACtD,KAAK,CAAC,cAAc;QAClB,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,MAAM,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC7C,CAAC;IAED,iCAAiC;IACjC,KAAK,CAAC,YAAY;QAChB,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,MAAM,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC3C,CAAC;IAED,gCAAgC;IAChC,KAAK,CAAC,WAAW,CAAC,KAAc,EAAE,MAAe;QAC/C,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,OAAO,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;IAC1D,CAAC;IAED,6EAA6E;IAC7E,qCAAqC;IACrC,6EAA6E;IAE7E;;;;;;;;;;;;;;;;;;;OAmBG;IACH,KAAK,CAAC,IAAI,CAAC,MAAc,EAAE,UAAuB,EAAE;QAClD,IAAI,CAAC,WAAW,EAAE,CAAC;QAEnB,MAAM,WAAW,GAA2B;YAC1C,IAAI,EAAE,uBAAuB;YAC7B,MAAM,EAAE,yBAAyB;YACjC,OAAO,EAAE,0BAA0B;YACnC,SAAS,EAAE,4BAA4B;YACvC,QAAQ,EAAE,2BAA2B;SACtC,CAAC;QAEF,MAAM,IAAI,GAA4B,MAAM,IAAI,CAAC,OAAO,CAAC,eAAe,CACtE,IAAI,CAAC,EAAE,EACP,MAAM,EACN;YACE,QAAQ,EAAE,WAAW,CAAC,OAAO,CAAC,QAAQ,IAAI,MAAM,CAAC;YACjD,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,EAAE;YAChC,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,IAAI;YACtC,QAAQ,EAAE,OAAO,CAAC,QAAQ,KAAK,IAAI,IAAI,OAAO,CAAC,QAAQ,KAAK,MAAM;SACnE,CACF,CAAC;QAEF,mCAAmC;QACnC,MAAM,KAAK,GAAiB,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACzD,SAAS,EAAE,CAAC,CAAC,SAAS;YACtB,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,SAAS,EAAE,CAAC,CAAC,SAAS,IAAI,EAAE;YAC5B,WAAW,EAAE,CAAC,CAAC,WAAW,IAAI,EAAE;YAChC,KAAK,EAAE,CAAC,CAAC,KAAK;YACd,YAAY,EAAE,CAAC,CAAC,YAAwC;SACzD,CAAC,CAAC,CAAC;QAEJ,4BAA4B;QAC5B,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;YACpB,MAAM,OAAO,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC;QAC3E,CAAC;QAED,OAAO;YACL,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,KAAK;YACL,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,EAAE;YAC/B,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,EAAE,YAAY,EAAE,CAAC,EAAE,gBAAgB,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE;YAC7E,YAAY,EAAG,IAAI,CAAC,YAA2C,IAAI,MAAM;SAC1E,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;;;OAaG;IACH,UAAU,CAAC,MAAc,EAAE,UAAuB,EAAE;QAClD,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,EAAE,CAAC;QAExC,MAAM,MAAM,GAAqB,EAAE,CAAC;QACpC,IAAI,UAAU,GAAG,KAAK,CAAC;QACvB,MAAM,OAAO,GAAsB,EAAE,CAAC;QAEtC,SAAS,SAAS,CAAC,KAAqB;YACtC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACnB,KAAK,MAAM,CAAC,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;gBAAE,CAAC,EAAE,CAAC;QACzC,CAAC;QAED,MAAM,aAAa,GAAG,CAAC,KAAK,IAAyB,EAAE;YACrD,MAAM,QAAQ,GAAiB,EAAE,CAAC;YAClC,MAAM,YAAY,GAAe,EAAE,CAAC;YACpC,IAAI,QAAQ,GAAG,EAAE,CAAC;YAClB,IAAI,UAAU,GAAU,EAAE,YAAY,EAAE,CAAC,EAAE,gBAAgB,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE,CAAC;YAEjF,IAAI,CAAC;gBACH,KAAK,IAAI,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,QAAQ,EAAE,IAAI,EAAE,EAAE,CAAC;oBAC3C,IAAI,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC;wBAC5B,SAAS,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,WAAW,EAAE,CAAC,CAAC;wBACvD,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,YAAY,EAAE,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,EAAE,CAAC;oBACpH,CAAC;oBAED,MAAM,QAAQ,GAAmB,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;oBACvF,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;oBAE9D,IAAI,QAAQ,GAAG,EAAE,CAAC;oBAClB,MAAM,aAAa,GAAe,EAAE,CAAC;oBACrC,IAAI,gBAA0C,CAAC;oBAE/C,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;wBACjC,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;4BAClB,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC;4BAC1B,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC;4BAC1B,SAAS,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;wBACtD,CAAC;wBACD,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;4BACnB,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;4BACnC,MAAM,IAAI,GAAG,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;4BAClF,SAAS,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC,CAAC;wBACvG,CAAC;wBACD,IAAI,KAAK,CAAC,YAAY,EAAE,CAAC;4BACvB,gBAAgB,GAAG,KAAK,CAAC,YAAY,CAAC;wBACxC,CAAC;oBACH,CAAC;oBAED,YAAY,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC,CAAC;oBAEpC,4BAA4B;oBAC5B,MAAM,eAAe,GAAiB,EAAE,CAAC;oBACzC,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;wBAClB,KAAK,MAAM,EAAE,IAAI,aAAa,EAAE,CAAC;4BAC/B,IAAI,EAAE,CAAC,IAAI,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;gCAC7B,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;gCACvC,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,OAAO,EAAE,EAAE,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;gCACxE,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gCAC7B,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC;gCACnB,SAAS,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,UAAU,EAAE,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;4BACxG,CAAC;wBACH,CAAC;oBACH,CAAC;oBAED,MAAM,UAAU,GAAe;wBAC7B,SAAS,EAAE,IAAI;wBACf,IAAI,EAAE,QAAQ;wBACd,SAAS,EAAE,aAAa;wBACxB,WAAW,EAAE,eAAe;wBAC5B,KAAK,EAAE,SAAS;wBAChB,YAAY,EAAE,gBAAgB;qBAC/B,CAAC;oBACF,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;oBAC1B,SAAS,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,aAAa,EAAE,CAAC,CAAC;oBAE9F,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;wBACzB,MAAM,OAAO,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;oBACzC,CAAC;oBAED,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,IAAI,gBAAgB,KAAK,YAAY,EAAE,CAAC;wBACpE,MAAM;oBACR,CAAC;gBACH,CAAC;gBAED,MAAM,YAAY,GAAG,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC;gBACxE,SAAS,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,CAAC;gBAC1C,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,YAAY,EAAE,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,CAAC;YACvG,CAAC;oBAAS,CAAC;gBACT,UAAU,GAAG,IAAI,CAAC;gBAClB,KAAK,MAAM,CAAC,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;oBAAE,CAAC,EAAE,CAAC;YACzC,CAAC;QACH,CAAC,CAAC,EAAE,CAAC;QAEL,yDAAyD;QACzD,aAAa,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QAE9B,MAAM,WAAW,GAAkC;YACjD,CAAC,MAAM,CAAC,aAAa,CAAC;gBACpB,IAAI,KAAK,GAAG,CAAC,CAAC;gBACd,OAAO;oBACL,KAAK,CAAC,IAAI;wBACR,OAAO,IAAI,EAAE,CAAC;4BACZ,IAAI,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;gCAC1B,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;4BACjD,CAAC;4BACD,IAAI,UAAU,EAAE,CAAC;gCACf,OAAO,EAAE,KAAK,EAAE,SAAsC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;4BACvE,CAAC;4BACD,MAAM,IAAI,OAAO,CAAO,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;wBAClD,CAAC;oBACH,CAAC;iBACF,CAAC;YACJ,CAAC;SACF,CAAC;QAEF,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC;IAChD,CAAC;IAED,6EAA6E;IAC7E,yBAAyB;IACzB,6EAA6E;IAE7E;;;;;;;;;;;OAWG;IACH,KAAK,CAAC,QAAQ,CAAC,KAAa,EAAE,IAAY,EAAE,OAAwD;QAClG,IAAI,CAAC,WAAW,EAAE,CAAC;QAEnB,MAAM,IAAI,GAAqB,MAAM,IAAI,CAAC,OAAO,CAAC,eAAe,CAC/D,IAAI,CAAC,EAAE,EACP,KAAK,EACL,IAAI,EACJ;YACE,QAAQ,EAAE,OAAO,EAAE,QAAQ,IAAI,EAAE;YACjC,YAAY,EAAE,OAAO,EAAE,YAAY;SACpC,CACF,CAAC;QAEF,MAAM,KAAK,GAAiB,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACzD,SAAS,EAAE,CAAC,CAAC,SAAS;YACtB,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,SAAS,EAAE,CAAC,CAAC,SAAS,IAAI,EAAE;YAC5B,WAAW,EAAE,CAAC,CAAC,WAAW,IAAI,EAAE;YAChC,KAAK,EAAE,CAAC,CAAC,KAAK;YACd,YAAY,EAAE,CAAC,CAAC,YAAwC;SACzD,CAAC,CAAC,CAAC;QAEJ,OAAO;YACL,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,KAAK;YACL,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,EAAE;YAC/B,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,EAAE,YAAY,EAAE,CAAC,EAAE,gBAAgB,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE;YAC7E,YAAY,EAAG,IAAI,CAAC,YAA2C,IAAI,MAAM;SAC1E,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACH,cAAc,CAAC,KAAa,EAAE,IAAY,EAAE,OAAwD;QAClG,IAAI,CAAC,WAAW,EAAE,CAAC;QAEnB,MAAM,MAAM,GAAqB,EAAE,CAAC;QACpC,IAAI,UAAU,GAAG,KAAK,CAAC;QACvB,MAAM,OAAO,GAAsB,EAAE,CAAC;QAEtC,SAAS,SAAS,CAAC,KAAqB;YACtC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACnB,KAAK,MAAM,CAAC,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;gBAAE,CAAC,EAAE,CAAC;QACzC,CAAC;QAED,MAAM,aAAa,GAAG,CAAC,KAAK,IAAyB,EAAE;YACrD,MAAM,QAAQ,GAAiB,EAAE,CAAC;YAClC,MAAM,YAAY,GAAe,EAAE,CAAC;YACpC,IAAI,QAAQ,GAAG,EAAE,CAAC;YAClB,IAAI,UAAU,GAAU,EAAE,YAAY,EAAE,CAAC,EAAE,gBAAgB,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE,CAAC;YAEjF,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,qBAAqB,CAC/C,IAAI,CAAC,EAAE,EACP,KAAK,EACL,IAAI,EACJ;oBACE,QAAQ,EAAE,OAAO,EAAE,QAAQ,IAAI,EAAE;oBACjC,YAAY,EAAE,OAAO,EAAE,YAAY;iBACpC,CACF,CAAC;gBAEF,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;oBACjC,MAAM,MAAM,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC;oBAC3C,IAAI,MAAM;wBAAE,SAAS,CAAC,MAAM,CAAC,CAAC;oBAE9B,IAAI,KAAK,CAAC,OAAO;wBAAE,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC;oBAC7C,IAAI,KAAK,CAAC,QAAQ;wBAAE,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;oBACtD,IAAI,KAAK,CAAC,KAAK;wBAAE,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC;gBAC5C,CAAC;gBAED,MAAM,YAAY,GAAG,MAAM,CAAC;gBAC5B,SAAS,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,CAAC;gBAC1C,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,YAAY,EAAE,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,CAAC;YACvG,CAAC;oBAAS,CAAC;gBACT,UAAU,GAAG,IAAI,CAAC;gBAClB,KAAK,MAAM,CAAC,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;oBAAE,CAAC,EAAE,CAAC;YACzC,CAAC;QACH,CAAC,CAAC,EAAE,CAAC;QAEL,aAAa,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QAE9B,MAAM,WAAW,GAAkC;YACjD,CAAC,MAAM,CAAC,aAAa,CAAC;gBACpB,IAAI,KAAK,GAAG,CAAC,CAAC;gBACd,OAAO;oBACL,KAAK,CAAC,IAAI;wBACR,OAAO,IAAI,EAAE,CAAC;4BACZ,IAAI,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;gCAC1B,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;4BACjD,CAAC;4BACD,IAAI,UAAU,EAAE,CAAC;gCACf,OAAO,EAAE,KAAK,EAAE,SAAsC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;4BACvE,CAAC;4BACD,MAAM,IAAI,OAAO,CAAO,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;wBAClD,CAAC;oBACH,CAAC;iBACF,CAAC;YACJ,CAAC;SACF,CAAC;QAEF,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC;IAChD,CAAC;IAED,6EAA6E;IAC7E,wBAAwB;IACxB,6EAA6E;IAE7E,yDAAyD;IACzD,KAAK,CAAC,cAAc,CAAC,IAAc,EAAE,MAAkB;QACrD,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,MAAM,SAAS,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC;QACxC,MAAM,WAAW,GAA2B;YAC1C,IAAI,EAAE,kBAAkB,CAAC,MAAM,CAAC,IAAI,CAAmC;YACvE,SAAS,EAAE,MAAM,CAAC,OAAO,IAAI,MAAM;SACpC,CAAC;QACF,MAAM,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;IACrE,CAAC;IAED,qCAAqC;IACrC,KAAK,CAAC,cAAc,CAAC,IAAc;QACjC,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,EAAE,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC;QAC/E,IAAI,CAAC,IAAI,CAAC,MAAM;YAAE,OAAO,SAAS,CAAC;QACnC,MAAM,OAAO,GAAuC;YAClD,0BAA0B,EAAE,UAAU;YACtC,0BAA0B,EAAE,UAAU;YACtC,wBAAwB,EAAE,QAAQ;SACnC,CAAC;QACF,OAAO;YACL,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,UAAU;YAC7C,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS;SAC/B,CAAC;IACJ,CAAC;IAED,iDAAiD;IACjD,KAAK,CAAC,gBAAgB;QACpB,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,wBAAwB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAClE,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,gCAAgC;IAChC,KAAK,CAAC,YAAY,CAAC,MAAc,EAAE,MAA0B;QAC3D,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,MAAM,IAAI,CAAC,OAAO,CAAC,oBAAoB,CACrC,IAAI,CAAC,EAAE,EACP,MAAM,EACN,MAAM,CAAC,OAAO,EACd,MAAM,CAAC,MAAM,EACb,MAAM,CAAC,KAAK,CACb,CAAC;IACJ,CAAC;IAED,6EAA6E;IAC7E,oBAAoB;IACpB,6EAA6E;IAE7E,oEAAoE;IACpE,KAAK,CAAC,UAAU,CAAC,GAAW,EAAE,SAAS,GAAG,IAAI;QAC5C,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,SAAS,CAAC,CAAC;QAC3E,OAAO,IAAI,CAAC,YAAY,IAAI,EAAE,CAAC;IACjC,CAAC;IAED,kCAAkC;IAClC,KAAK,CAAC,SAAS,CAAC,IAAY,EAAE,OAAgB;QAC5C,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IACvD,CAAC;IAED,qCAAqC;IACrC,KAAK,CAAC,QAAQ,CAAC,KAAsB;QACnC,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;IACnE,CAAC;IAED,qBAAqB;IACrB,KAAK,CAAC,WAAW,CAAC,IAAY;QAC5B,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IAChD,CAAC;IAED,4BAA4B;IAC5B,KAAK,CAAC,UAAU;QACd,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACpD,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAQ,EAAE,EAAE,CAAC,CAAC;YACpC,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,WAAW,EAAE,CAAC,CAAC,WAAW;YAC1B,MAAM,EAAE,IAAI;YACZ,MAAM,EAAE,SAAkB;SAC3B,CAAC,CAAC,CAAC;IACN,CAAC;IAED,6EAA6E;IAC7E,kBAAkB;IAClB,6EAA6E;IAE7E,gDAAgD;IAChD,KAAK,CAAC,UAAU;QACd,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,OAAO;YACL,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,gCAAgC,EAAE,IAAI,EAAE,UAAU,EAAE;YACpF,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,iCAAiC,EAAE,IAAI,EAAE,UAAU,EAAE;YAClF,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,2BAA2B,EAAE,IAAI,EAAE,UAAU,EAAE;YAC/E,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBAChC,IAAI,EAAE,CAAC,CAAC,IAAI;gBACZ,WAAW,EAAE,CAAC,CAAC,WAAW;gBAC1B,IAAI,EAAE,UAAmB;aAC1B,CAAC,CAAC;SACJ,CAAC;IACJ,CAAC;IAED,8BAA8B;IAC9B,aAAa,CAAC,GAAoB;QAChC,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC/B,CAAC;IAED,6EAA6E;IAC7E,qBAAqB;IACrB,6EAA6E;IAE7E,mCAAmC;IACnC,KAAK,CAAC,eAAe,CAAC,MAA0B;QAC9C,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,MAAM,MAAM,GAA4B;YACtC,OAAO,EAAE,IAAI;YACb,mBAAmB,EAAE,MAAM,CAAC,mBAAmB,IAAI,EAAE;YACrD,gBAAgB,EAAE,MAAM,CAAC,WAAW,IAAI,EAAE;YAC1C,gBAAgB,EAAE,MAAM,CAAC,OAAO,IAAI,MAAM;YAC1C,aAAa,EAAE,oBAAoB,CAAC,MAAM,CAAC,aAAa,CAA6C;YACrG,SAAS,EAAE,EAAE;SACd,CAAC;QACF,MAAM,IAAI,CAAC,OAAO,CAAC,qBAAqB,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;IAC5D,CAAC;IAED,iCAAiC;IACjC,KAAK,CAAC,cAAc,CAAC,MAAwB;QAC3C,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,MAAM,KAAK,GAAqB,EAAE,CAAC;QACnC,MAAM,IAAI,GAAqB,EAAE,CAAC;QAClC,MAAM,GAAG,GAAqB,EAAE,CAAC;QAEjC,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,KAAK,IAAI,EAAE,EAAE,CAAC;YACtC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;YAC1E,IAAI,IAAI,CAAC,MAAM,KAAK,OAAO;gBAAE,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;iBACtD,IAAI,IAAI,CAAC,MAAM,KAAK,MAAM;gBAAE,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;;gBACzD,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;QACnC,CAAC;QAED,MAAM,MAAM,GAA0B;YACpC,OAAO,EAAE,IAAI;YACb,KAAK;YACL,IAAI;YACJ,GAAG;YACH,eAAe,EAAE,uBAAuB,CAAC,MAAM,CAAC,aAAa,IAAI,OAAO,CAA6C;SACtH,CAAC;QACF,MAAM,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;IAC1D,CAAC;IAED,wCAAwC;IACxC,KAAK,CAAC,OAAO,CAAC,cAAsB,EAAE,QAAiB,EAAE,MAAe;QACtE,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,MAAM,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;IACrF,CAAC;IAED,6EAA6E;IAC7E,wBAAwB;IACxB,6EAA6E;IAE7E,uEAAuE;IACvE,KAAK,CAAC,QAAQ;QACZ,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YACpC,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC;YACrC,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC;SACpD,CAAC,CAAC;QACH,OAAO;YACL,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,YAAY,EAAE,IAAI,CAAC,iBAAiB;YACpC,gBAAgB,EAAE,IAAI,CAAC,qBAAqB;YAC5C,SAAS,EAAE,IAAI,CAAC,YAAY;YAC5B,YAAY,EAAE,GAAG,CAAC,KAAK,EAAE,YAAY,IAAI,CAAC;YAC1C,aAAa,EAAE,IAAI,CAAC,SAAS;SAC9B,CAAC;IACJ,CAAC;IAED,qCAAqC;IACrC,KAAK,CAAC,cAAc;QAClB,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACxD,MAAM,MAAM,GAA8B,EAAE,CAAC;QAC7C,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YAC3B,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QACzB,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,0CAA0C;IAC1C,KAAK,CAAC,cAAc;QAClB,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,OAAO,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAC7D,CAAC;IAED,oCAAoC;IACpC,KAAK,CAAC,aAAa;QACjB,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,MAAM,IAAI,GAA0B,MAAM,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC9E,MAAM,OAAO,GAAG,CAAC,IAAqB,EAAa,EAAE,CAAC,CAAC;YACrD,OAAO,EAAE,IAAI,EAAE,OAAO,IAAI,CAAC;YAC3B,MAAM,EAAE,IAAI,EAAE,MAAM,IAAI,CAAC;YACzB,QAAQ,EAAE,IAAI,EAAE,QAAQ,IAAI,CAAC;YAC7B,SAAS,EAAE,IAAI,EAAE,SAAS,IAAI,CAAC;YAC/B,MAAM,EAAE,IAAI,EAAE,MAAM,IAAI,CAAC;SAC1B,CAAC,CAAC;QACH,OAAO;YACL,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC;YAC9B,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC;YAC1B,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC;YAC9B,QAAQ,EAAE,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC;YAChC,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,CAAC;SACnC,CAAC;IACJ,CAAC;IAED,sEAAsE;IACtE,KAAK,CAAC,SAAS,CAAC,OAAiE;QAC/E,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACpD,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC;QACtC,IAAI,QAAQ,EAAE,CAAC;YACb,MAAM,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,EAAE;gBAC3C,GAAG,QAAQ;gBACX,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,QAAQ,CAAC,WAAW;aACzD,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,2DAA2D;IAC3D,eAAe,CAAC,UAAqB;QACnC,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,OAAO,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;IAC3D,CAAC;IAED,6EAA6E;IAC7E,YAAY;IACZ,6EAA6E;IAE7E,qDAAqD;IACrD,KAAK,CAAC,KAAK;QACT,IAAI,IAAI,CAAC,OAAO;YAAE,OAAO;QACzB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC7C,CAAC;QAAC,MAAM,CAAC;YACP,wBAAwB;QAC1B,CAAC;IACH,CAAC;IAED,gEAAgE;IAChE,KAAK,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC;QACzB,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC;IAED,2CAA2C;IAC3C,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAEO,WAAW;QACjB,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,CAAC,EAAE,kBAAkB,CAAC,CAAC;QACxD,CAAC;IACH,CAAC;CACF"}
package/dist/tool.d.ts ADDED
@@ -0,0 +1,106 @@
1
+ /**
2
+ * Tool Definition Helper
3
+ *
4
+ * Vercel AI SDK-style tool() function for defining tools with type safety.
5
+ *
6
+ * A3S Code has two kinds of tools:
7
+ * - **Server tools**: Built-in tools (file ops, shell, etc.) that run on the server.
8
+ * These are always available and don't need to be defined client-side.
9
+ * - **Client tools**: Custom tools defined via tool() that run client-side.
10
+ * The model can invoke these, and results are sent back to continue generation.
11
+ *
12
+ * @example
13
+ * ```typescript
14
+ * import { tool, streamText, createProvider } from '@a3s-lab/code';
15
+ *
16
+ * const openai = createProvider({ name: 'openai', apiKey: 'sk-xxx' });
17
+ *
18
+ * const weatherTool = tool({
19
+ * description: 'Get the weather in a location',
20
+ * parameters: {
21
+ * type: 'object',
22
+ * properties: {
23
+ * location: { type: 'string', description: 'City name' },
24
+ * },
25
+ * required: ['location'],
26
+ * },
27
+ * execute: async ({ location }) => ({
28
+ * location,
29
+ * temperature: 72,
30
+ * condition: 'sunny',
31
+ * }),
32
+ * });
33
+ *
34
+ * const { text } = await generateText({
35
+ * model: openai('gpt-4o'),
36
+ * tools: { weather: weatherTool },
37
+ * maxSteps: 3,
38
+ * prompt: 'What is the weather in Tokyo?',
39
+ * });
40
+ * ```
41
+ */
42
+ /** JSON Schema object for tool parameters */
43
+ export interface JsonSchema {
44
+ type: string;
45
+ properties?: Record<string, JsonSchema & {
46
+ description?: string;
47
+ }>;
48
+ required?: string[];
49
+ items?: JsonSchema;
50
+ enum?: string[];
51
+ description?: string;
52
+ [key: string]: unknown;
53
+ }
54
+ /** Options passed to tool execute function */
55
+ export interface ToolExecutionOptions {
56
+ /** Unique ID for this tool call */
57
+ toolCallId: string;
58
+ /** Abort signal for cancellation */
59
+ abortSignal?: AbortSignal;
60
+ }
61
+ /** Tool definition */
62
+ export interface ToolDefinition<TParams = Record<string, unknown>, TResult = unknown> {
63
+ /** Description of what the tool does (shown to the model) */
64
+ description: string;
65
+ /** JSON Schema for the tool's parameters */
66
+ parameters: JsonSchema;
67
+ /**
68
+ * Execute function — runs when the model invokes this tool.
69
+ * If omitted, the tool call is forwarded to onToolCall callback.
70
+ */
71
+ execute?: (args: TParams, options: ToolExecutionOptions) => Promise<TResult>;
72
+ /**
73
+ * Whether this tool needs human approval before execution.
74
+ * - `true`: always requires approval
75
+ * - `false` or omitted: auto-execute
76
+ * - function: dynamically decide based on args
77
+ */
78
+ needsApproval?: boolean | ((args: TParams) => boolean | Promise<boolean>);
79
+ }
80
+ /** Map of tool name → tool definition */
81
+ export type ToolSet = Record<string, ToolDefinition>;
82
+ /**
83
+ * Define a tool with type-safe parameters and execution.
84
+ *
85
+ * This is a type helper — it returns the definition as-is but provides
86
+ * TypeScript inference for the execute function's parameter types.
87
+ *
88
+ * @example
89
+ * ```typescript
90
+ * const calculator = tool({
91
+ * description: 'Perform arithmetic',
92
+ * parameters: {
93
+ * type: 'object',
94
+ * properties: {
95
+ * expression: { type: 'string', description: 'Math expression' },
96
+ * },
97
+ * required: ['expression'],
98
+ * },
99
+ * execute: async ({ expression }) => {
100
+ * return { result: eval(expression) };
101
+ * },
102
+ * });
103
+ * ```
104
+ */
105
+ export declare function tool<TParams = Record<string, unknown>, TResult = unknown>(definition: ToolDefinition<TParams, TResult>): ToolDefinition<TParams, TResult>;
106
+ //# sourceMappingURL=tool.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool.d.ts","sourceRoot":"","sources":["../ts/tool.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AAMH,6CAA6C;AAC7C,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,GAAG;QAAE,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACnE,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,8CAA8C;AAC9C,MAAM,WAAW,oBAAoB;IACnC,mCAAmC;IACnC,UAAU,EAAE,MAAM,CAAC;IACnB,oCAAoC;IACpC,WAAW,CAAC,EAAE,WAAW,CAAC;CAC3B;AAED,sBAAsB;AACtB,MAAM,WAAW,cAAc,CAAC,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO;IAClF,6DAA6D;IAC7D,WAAW,EAAE,MAAM,CAAC;IACpB,4CAA4C;IAC5C,UAAU,EAAE,UAAU,CAAC;IACvB;;;OAGG;IACH,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,oBAAoB,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAC7E;;;;;OAKG;IACH,aAAa,CAAC,EAAE,OAAO,GAAG,CAAC,CAAC,IAAI,EAAE,OAAO,KAAK,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;CAC3E;AAED,yCAAyC;AACzC,MAAM,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;AAMrD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,EACvE,UAAU,EAAE,cAAc,CAAC,OAAO,EAAE,OAAO,CAAC,GAC3C,cAAc,CAAC,OAAO,EAAE,OAAO,CAAC,CAElC"}
package/dist/tool.js ADDED
@@ -0,0 +1,71 @@
1
+ /**
2
+ * Tool Definition Helper
3
+ *
4
+ * Vercel AI SDK-style tool() function for defining tools with type safety.
5
+ *
6
+ * A3S Code has two kinds of tools:
7
+ * - **Server tools**: Built-in tools (file ops, shell, etc.) that run on the server.
8
+ * These are always available and don't need to be defined client-side.
9
+ * - **Client tools**: Custom tools defined via tool() that run client-side.
10
+ * The model can invoke these, and results are sent back to continue generation.
11
+ *
12
+ * @example
13
+ * ```typescript
14
+ * import { tool, streamText, createProvider } from '@a3s-lab/code';
15
+ *
16
+ * const openai = createProvider({ name: 'openai', apiKey: 'sk-xxx' });
17
+ *
18
+ * const weatherTool = tool({
19
+ * description: 'Get the weather in a location',
20
+ * parameters: {
21
+ * type: 'object',
22
+ * properties: {
23
+ * location: { type: 'string', description: 'City name' },
24
+ * },
25
+ * required: ['location'],
26
+ * },
27
+ * execute: async ({ location }) => ({
28
+ * location,
29
+ * temperature: 72,
30
+ * condition: 'sunny',
31
+ * }),
32
+ * });
33
+ *
34
+ * const { text } = await generateText({
35
+ * model: openai('gpt-4o'),
36
+ * tools: { weather: weatherTool },
37
+ * maxSteps: 3,
38
+ * prompt: 'What is the weather in Tokyo?',
39
+ * });
40
+ * ```
41
+ */
42
+ // ============================================================================
43
+ // Factory
44
+ // ============================================================================
45
+ /**
46
+ * Define a tool with type-safe parameters and execution.
47
+ *
48
+ * This is a type helper — it returns the definition as-is but provides
49
+ * TypeScript inference for the execute function's parameter types.
50
+ *
51
+ * @example
52
+ * ```typescript
53
+ * const calculator = tool({
54
+ * description: 'Perform arithmetic',
55
+ * parameters: {
56
+ * type: 'object',
57
+ * properties: {
58
+ * expression: { type: 'string', description: 'Math expression' },
59
+ * },
60
+ * required: ['expression'],
61
+ * },
62
+ * execute: async ({ expression }) => {
63
+ * return { result: eval(expression) };
64
+ * },
65
+ * });
66
+ * ```
67
+ */
68
+ export function tool(definition) {
69
+ return definition;
70
+ }
71
+ //# sourceMappingURL=tool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool.js","sourceRoot":"","sources":["../ts/tool.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AAgDH,+EAA+E;AAC/E,UAAU;AACV,+EAA+E;AAE/E;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,UAAU,IAAI,CAClB,UAA4C;IAE5C,OAAO,UAAU,CAAC;AACpB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@a3s-lab/code",
3
- "version": "0.3.1",
3
+ "version": "0.4.0",
4
4
  "description": "TypeScript SDK for A3S Code Agent Service",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -33,7 +33,7 @@ service CodeAgentService {
33
33
  rpc LoadSkill(LoadSkillRequest) returns (LoadSkillResponse);
34
34
  rpc UnloadSkill(UnloadSkillRequest) returns (UnloadSkillResponse);
35
35
  rpc ListSkills(ListSkillsRequest) returns (ListSkillsResponse);
36
- rpc GetClaudeCodeSkills(GetClaudeCodeSkillsRequest) returns (GetClaudeCodeSkillsResponse);
36
+ rpc GetSkill(GetSkillRequest) returns (GetSkillResponse);
37
37
 
38
38
  // === Context Management ===
39
39
  rpc GetContextUsage(GetContextUsageRequest) returns (GetContextUsageResponse);
@@ -119,6 +119,24 @@ service CodeAgentService {
119
119
  rpc GetCronHistory(GetCronHistoryRequest) returns (GetCronHistoryResponse);
120
120
  rpc RunCronJob(RunCronJobRequest) returns (RunCronJobResponse);
121
121
  rpc ParseCronSchedule(ParseCronScheduleRequest) returns (ParseCronScheduleResponse);
122
+
123
+ // Observability
124
+ rpc GetToolMetrics(GetToolMetricsRequest) returns (GetToolMetricsResponse);
125
+ rpc GetCostSummary(GetCostSummaryRequest) returns (GetCostSummaryResponse);
126
+
127
+ // === Server-Side AgenticLoop ===
128
+ rpc AgenticGenerate(AgenticGenerateRequest) returns (AgenticGenerateResponse);
129
+ rpc StreamAgenticGenerate(AgenticGenerateRequest) returns (stream AgenticGenerateEvent);
130
+
131
+ // === Server-Side Delegation (Subagents) ===
132
+ rpc Delegate(DelegateRequest) returns (DelegateResponse);
133
+ rpc StreamDelegate(DelegateRequest) returns (stream AgenticGenerateEvent);
134
+
135
+ // === Queue Statistics ===
136
+ rpc GetQueueStats(GetQueueStatsRequest) returns (GetQueueStatsResponse);
137
+
138
+ // === Batch Skill Loading ===
139
+ rpc LoadSkillsFromDir(LoadSkillsFromDirRequest) returns (LoadSkillsFromDirResponse);
122
140
  }
123
141
 
124
142
  // ============================================================================
@@ -229,6 +247,7 @@ message SessionConfig {
229
247
  uint32 max_context_length = 5;
230
248
  bool auto_compact = 6;
231
249
  StorageType storage_type = 7;
250
+ float auto_compact_threshold = 8; // Context usage threshold (0.0-1.0) for auto-compaction, default 0.80
232
251
  }
233
252
 
234
253
  enum StorageType {
@@ -431,7 +450,6 @@ message LoadSkillRequest {
431
450
 
432
451
  message LoadSkillResponse {
433
452
  bool success = 1;
434
- repeated string tool_names = 2;
435
453
  }
436
454
 
437
455
  message UnloadSkillRequest {
@@ -441,7 +459,6 @@ message UnloadSkillRequest {
441
459
 
442
460
  message UnloadSkillResponse {
443
461
  bool success = 1;
444
- repeated string removed_tools = 2;
445
462
  }
446
463
 
447
464
  message ListSkillsRequest {
@@ -453,19 +470,12 @@ message ListSkillsResponse {
453
470
  }
454
471
 
455
472
  message Skill {
456
- string name = 1;
457
- string description = 2;
458
- repeated string tools = 3;
459
- map<string, string> metadata = 4;
460
- }
461
-
462
- // Claude Code skill format (compatible with Claude Code skills)
463
- message ClaudeCodeSkill {
464
473
  string name = 1;
465
474
  string description = 2;
466
475
  optional string allowed_tools = 3; // Tool permissions (e.g., "Bash(gh:*)")
467
476
  bool disable_model_invocation = 4;
468
477
  string content = 5; // Markdown instructions
478
+ map<string, string> metadata = 6;
469
479
  }
470
480
 
471
481
  // Tool permission pattern
@@ -474,12 +484,12 @@ message ToolPermission {
474
484
  string pattern = 2; // Pattern to match (e.g., "gh:*")
475
485
  }
476
486
 
477
- message GetClaudeCodeSkillsRequest {
487
+ message GetSkillRequest {
478
488
  optional string name = 1; // If set, get specific skill by name
479
489
  }
480
490
 
481
- message GetClaudeCodeSkillsResponse {
482
- repeated ClaudeCodeSkill skills = 1;
491
+ message GetSkillResponse {
492
+ repeated Skill skills = 1;
483
493
  }
484
494
 
485
495
  // ============================================================================
@@ -547,6 +557,8 @@ message AgentEvent {
547
557
  EVENT_TYPE_MEMORY_RECALLED = 17;
548
558
  EVENT_TYPE_MEMORIES_SEARCHED = 18;
549
559
  EVENT_TYPE_MEMORY_CLEARED = 19;
560
+ // Context compaction events
561
+ EVENT_TYPE_CONTEXT_COMPACTED = 20;
550
562
  }
551
563
 
552
564
  EventType type = 1;
@@ -1510,3 +1522,233 @@ message ParseCronScheduleResponse {
1510
1522
  string description = 3; // Human-readable description
1511
1523
  string error = 4;
1512
1524
  }
1525
+
1526
+ // ============================================================================
1527
+ // Observability Messages
1528
+ // ============================================================================
1529
+
1530
+ message GetToolMetricsRequest {
1531
+ string session_id = 1;
1532
+ string tool_name = 2; // Optional: filter by tool name (empty = all)
1533
+ }
1534
+
1535
+ message GetToolMetricsResponse {
1536
+ repeated ToolStats tools = 1; // Per-tool aggregated stats
1537
+ uint64 total_calls = 2; // Total calls across all tools
1538
+ uint64 total_duration_ms = 3; // Total execution time across all tools
1539
+ }
1540
+
1541
+ message ToolStats {
1542
+ string tool_name = 1;
1543
+ uint64 total_calls = 2;
1544
+ uint64 success_count = 3;
1545
+ uint64 failure_count = 4;
1546
+ uint64 total_duration_ms = 5;
1547
+ uint64 min_duration_ms = 6;
1548
+ uint64 max_duration_ms = 7;
1549
+ uint64 avg_duration_ms = 8;
1550
+ string last_called_at = 9; // ISO 8601 timestamp (empty if never called)
1551
+ }
1552
+
1553
+ message GetCostSummaryRequest {
1554
+ string session_id = 1; // Optional: filter by session (empty = all sessions)
1555
+ string model = 2; // Optional: filter by model
1556
+ string start_date = 3; // Optional: YYYY-MM-DD
1557
+ string end_date = 4; // Optional: YYYY-MM-DD
1558
+ }
1559
+
1560
+ message GetCostSummaryResponse {
1561
+ double total_cost_usd = 1;
1562
+ uint64 total_prompt_tokens = 2;
1563
+ uint64 total_completion_tokens = 3;
1564
+ uint64 total_tokens = 4;
1565
+ uint64 call_count = 5;
1566
+ repeated ModelCostBreakdownProto by_model = 6;
1567
+ repeated DayCostBreakdownProto by_day = 7;
1568
+ }
1569
+
1570
+ message ModelCostBreakdownProto {
1571
+ string model = 1;
1572
+ uint64 prompt_tokens = 2;
1573
+ uint64 completion_tokens = 3;
1574
+ uint64 total_tokens = 4;
1575
+ double cost_usd = 5;
1576
+ uint64 call_count = 6;
1577
+ }
1578
+
1579
+ message DayCostBreakdownProto {
1580
+ string date = 1;
1581
+ double cost_usd = 2;
1582
+ uint64 call_count = 3;
1583
+ uint64 total_tokens = 4;
1584
+ }
1585
+
1586
+ // ============================================================================
1587
+ // Server-Side AgenticLoop Messages
1588
+ // ============================================================================
1589
+
1590
+ // Execution strategy for the agentic loop
1591
+ enum AgenticStrategy {
1592
+ AGENTIC_STRATEGY_AUTO = 0; // Server decides
1593
+ AGENTIC_STRATEGY_DIRECT = 1; // Single generate, no loop
1594
+ AGENTIC_STRATEGY_PLANNED = 2; // Plan first, then execute steps
1595
+ AGENTIC_STRATEGY_ITERATIVE = 3; // Generate → tool → reflect → repeat
1596
+ AGENTIC_STRATEGY_PARALLEL = 4; // Parallel tool execution where possible
1597
+ }
1598
+
1599
+ message AgenticGenerateRequest {
1600
+ string session_id = 1;
1601
+ string prompt = 2;
1602
+ AgenticStrategy strategy = 3;
1603
+ uint32 max_steps = 4; // Max loop iterations (default: 50)
1604
+ bool reflection = 5; // Enable reflection after tool failures (default: true)
1605
+ bool planning = 6; // Enable planning before execution (default: auto)
1606
+ }
1607
+
1608
+ message AgenticGenerateResponse {
1609
+ string session_id = 1;
1610
+ string text = 2; // Final text output
1611
+ repeated AgenticStep steps = 3; // All steps executed
1612
+ repeated ToolCall tool_calls = 4; // All tool calls made
1613
+ Usage usage = 5; // Total token usage
1614
+ string finish_reason = 6; // "stop", "max_steps", "cancelled", "error"
1615
+ optional ExecutionPlan plan = 7; // Execution plan (if planning was used)
1616
+ }
1617
+
1618
+ // A single step in the agentic loop
1619
+ message AgenticStep {
1620
+ uint32 step_index = 1;
1621
+ string text = 2;
1622
+ repeated ToolCall tool_calls = 3;
1623
+ repeated ToolResult tool_results = 4;
1624
+ Usage usage = 5;
1625
+ string finish_reason = 6;
1626
+ }
1627
+
1628
+ // Streaming event from the agentic loop
1629
+ message AgenticGenerateEvent {
1630
+ // Event type discriminator
1631
+ string type = 1; // "text", "tool_call", "tool_result", "step_finish",
1632
+ // "plan", "reflection", "confirmation_required",
1633
+ // "confirmation_received", "subagent_start",
1634
+ // "subagent_progress", "subagent_end",
1635
+ // "context_compact", "external_task_pending",
1636
+ // "external_task_completed", "error", "done"
1637
+
1638
+ string session_id = 2;
1639
+
1640
+ // Text content (type: "text")
1641
+ optional string content = 3;
1642
+
1643
+ // Tool call (type: "tool_call")
1644
+ optional ToolCall tool_call = 4;
1645
+
1646
+ // Tool result (type: "tool_result")
1647
+ optional ToolResult tool_result = 5;
1648
+ optional string tool_call_id = 6;
1649
+
1650
+ // Step finish (type: "step_finish")
1651
+ optional uint32 step_index = 7;
1652
+ optional string step_text = 8;
1653
+
1654
+ // Plan (type: "plan")
1655
+ optional ExecutionPlan plan = 9;
1656
+
1657
+ // Reflection (type: "reflection")
1658
+ optional float confidence = 10;
1659
+ optional bool should_retry = 11;
1660
+ optional string insight = 12;
1661
+
1662
+ // Confirmation (type: "confirmation_required" / "confirmation_received")
1663
+ optional string confirmation_id = 13;
1664
+ optional string tool_name = 14;
1665
+ optional string tool_args = 15; // JSON
1666
+ optional uint64 timeout_ms = 16;
1667
+ optional bool approved = 17;
1668
+
1669
+ // Subagent (type: "subagent_start" / "subagent_progress" / "subagent_end")
1670
+ optional string agent_name = 18;
1671
+ optional string agent_task = 19;
1672
+ optional string agent_session_id = 20;
1673
+ optional string agent_result = 21;
1674
+
1675
+ // Context compact (type: "context_compact")
1676
+ optional uint32 before_tokens = 22;
1677
+ optional uint32 after_tokens = 23;
1678
+
1679
+ // External task (type: "external_task_pending" / "external_task_completed")
1680
+ optional ExternalTask external_task = 24;
1681
+
1682
+ // Error (type: "error")
1683
+ optional string error_message = 25;
1684
+ optional bool recoverable = 26;
1685
+
1686
+ // Done (type: "done")
1687
+ optional string finish_reason = 27;
1688
+
1689
+ // Usage (accumulated, sent with "step_finish" and "done")
1690
+ optional Usage usage = 28;
1691
+ }
1692
+
1693
+ // ============================================================================
1694
+ // Server-Side Delegation (Subagent) Messages
1695
+ // ============================================================================
1696
+
1697
+ message DelegateRequest {
1698
+ string session_id = 1;
1699
+ string agent_name = 2; // Built-in: "explore", "plan", "general"
1700
+ string task = 3; // Task description
1701
+ uint32 max_steps = 4; // Max steps for subagent (default: 50)
1702
+ repeated string allowed_tools = 5; // Tool whitelist for subagent
1703
+ }
1704
+
1705
+ message DelegateResponse {
1706
+ string session_id = 1;
1707
+ string agent_session_id = 2; // Subagent's session ID
1708
+ string text = 3; // Final text output
1709
+ repeated AgenticStep steps = 4;
1710
+ repeated ToolCall tool_calls = 5;
1711
+ Usage usage = 6;
1712
+ string finish_reason = 7;
1713
+ }
1714
+
1715
+ // ============================================================================
1716
+ // Queue Statistics Messages
1717
+ // ============================================================================
1718
+
1719
+ // Per-lane statistics
1720
+ message LaneStats {
1721
+ uint32 pending = 1;
1722
+ uint32 active = 2;
1723
+ uint32 external = 3;
1724
+ uint32 completed = 4;
1725
+ uint32 failed = 5;
1726
+ }
1727
+
1728
+ message GetQueueStatsRequest {
1729
+ string session_id = 1;
1730
+ }
1731
+
1732
+ message GetQueueStatsResponse {
1733
+ LaneStats control = 1;
1734
+ LaneStats query = 2;
1735
+ LaneStats execute = 3;
1736
+ LaneStats generate = 4;
1737
+ uint32 dead_letters = 5;
1738
+ }
1739
+
1740
+ // ============================================================================
1741
+ // Batch Skill Loading Messages
1742
+ // ============================================================================
1743
+
1744
+ message LoadSkillsFromDirRequest {
1745
+ string session_id = 1;
1746
+ string directory = 2; // Directory path containing skill files
1747
+ bool recursive = 3; // Recurse into subdirectories
1748
+ }
1749
+
1750
+ message LoadSkillsFromDirResponse {
1751
+ bool success = 1;
1752
+ repeated string loaded_skills = 2; // Names of loaded skills
1753
+ repeated string errors = 3; // Errors for skills that failed to load
1754
+ }