@elaraai/e3 1.0.68 → 1.0.70

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":"export.spec.js","sourceRoot":"","sources":["../../src/export.spec.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,WAAW,CAAC;AACxD,OAAO,KAAK,MAAM,MAAM,aAAa,CAAC;AACtC,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACxJ,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAEnC,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE;IACzB,EAAE,CAAC,8CAA8C,EAAE,GAAG,EAAE;QACtD,MAAM,OAAO,GAAG,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QACnC,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC7B,MAAM,IAAI,GAAG,SAAS,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QACtC,yBAAyB;QACzB,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,kEAAkE,CAAC,CAAC;IAC/F,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6CAA6C,EAAE,GAAG,EAAE;QACrD,MAAM,OAAO,GAAG,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QACnC,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAClC,MAAM,IAAI,GAAG,SAAS,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QACtC,oBAAoB;QACpB,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,kEAAkE,CAAC,CAAC;IAC/F,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oCAAoC,EAAE,GAAG,EAAE;QAC5C,MAAM,OAAO,GAAG,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QACnC,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAClC,MAAM,IAAI,GAAG,SAAS,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAEtC,mDAAmD;QACnD,MAAM,YAAY,GAAG,WAAW,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;QAC3E,MAAM,CAAC,WAAW,CAAC,YAAY,EAAE,kFAAkF,CAAC,CAAC;IACvH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wCAAwC,EAAE,GAAG,EAAE;QAChD,MAAM,QAAQ,GAAG,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QACpC,MAAM,QAAQ,GAAG,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QACpC,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAEtC,MAAM,KAAK,GAAG,SAAS,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QACxC,MAAM,KAAK,GAAG,SAAS,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QAExC,MAAM,CAAC,WAAW,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IACnC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;QACpD,MAAM,OAAO,GAAG,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QACnC,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACnC,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAEnC,MAAM,KAAK,GAAG,SAAS,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QACxC,MAAM,KAAK,GAAG,SAAS,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAExC,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IACtC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH;;GAEG;AACH,KAAK,UAAU,OAAO,CAAC,OAAe;IACpC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,EAAE,CAAC,GAAG,EAAE,OAAO,EAAE,EAAE;YAC1D,IAAI,GAAG;gBAAE,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC;YAC5B,IAAI,CAAC,OAAO;gBAAE,OAAO,MAAM,CAAC,IAAI,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC;YAErD,MAAM,OAAO,GAAG,IAAI,GAAG,EAAkB,CAAC;YAC1C,OAAO,CAAC,SAAS,EAAE,CAAC;YAEpB,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;gBAC5B,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;oBAC/B,wBAAwB;oBACxB,OAAO,CAAC,SAAS,EAAE,CAAC;gBACtB,CAAC;qBAAM,CAAC;oBACN,OAAO,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC,GAAG,EAAE,UAAU,EAAE,EAAE;wBAChD,IAAI,GAAG;4BAAE,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC;wBAC5B,IAAI,CAAC,UAAU;4BAAE,OAAO,MAAM,CAAC,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC;wBAE5D,MAAM,MAAM,GAAa,EAAE,CAAC;wBAC5B,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;wBACrD,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE;4BACxB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;4BACnD,OAAO,CAAC,SAAS,EAAE,CAAC;wBACtB,CAAC,CAAC,CAAC;oBACL,CAAC,CAAC,CAAC;gBACL,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;YAC1C,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC9B,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED,QAAQ,CAAC,SAAS,EAAE,GAAG,EAAE;IACvB,IAAI,OAAe,CAAC;IAEpB,MAAM,CAAC,KAAK,IAAI,EAAE;QAChB,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,iBAAiB,CAAC,CAAC,CAAC;IACjF,CAAC,CAAC,CAAC;IAEH,KAAK,CAAC,KAAK,IAAI,EAAE;QACf,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACrD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uBAAuB,EAAE,KAAK,IAAI,EAAE;QACrC,MAAM,GAAG,GAAG,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAQ,CAAC;QAClD,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QAEhD,MAAM,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QAE5B,oBAAoB;QACpB,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC7C,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;QAEzB,oBAAoB;QACpB,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;QAEvC,0BAA0B;QAC1B,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC,CAAC;QAEnD,oCAAoC;QACpC,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAE,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;QAC9E,MAAM,CAAC,KAAK,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC;QAE3C,sEAAsE;QACtE,MAAM,aAAa,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC;QACvF,MAAM,CAAC,EAAE,CAAC,aAAa,CAAC,MAAM,IAAI,CAAC,EAAE,mCAAmC,aAAa,CAAC,MAAM,EAAE,CAAC,CAAC;QAEhG,mCAAmC;QACnC,MAAM,iBAAiB,GAAG,WAAW,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;QAC5F,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,EAAE,6BAA6B,iBAAiB,EAAE,CAAC,CAAC;QAE5F,MAAM,iBAAiB,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAE,CAAC;QAC1D,MAAM,OAAO,GAAG,eAAe,CAAC,iBAAiB,CAAC,CAAC;QACnD,MAAM,aAAa,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;QAEjD,qCAAqC;QACrC,MAAM,CAAC,WAAW,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QAEhD,sCAAsC;QACtC,MAAM,CAAC,WAAW,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAChE,MAAM,CAAC,WAAW,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IACjE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oCAAoC,EAAE,KAAK,IAAI,EAAE;QAClD,MAAM,OAAO,GAAG,KAAK,CAAC,UAAU,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;QACvD,MAAM,GAAG,GAAG,QAAQ,CAAC,WAAW,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QACpD,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QAEhD,MAAM,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QAE5B,oBAAoB;QACpB,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;QAEvC,qBAAqB;QACrB,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAE,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;QAC9E,MAAM,iBAAiB,GAAG,WAAW,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;QAC5F,MAAM,iBAAiB,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAE,CAAC;QAC1D,MAAM,OAAO,GAAG,eAAe,CAAC,iBAAiB,CAAC,CAAC;QACnD,MAAM,aAAa,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;QAEjD,oCAAoC;QACpC,MAAM,CAAC,WAAW,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QAEhD,sEAAsE;QACtE,MAAM,CAAC,WAAW,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAChE,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAChE,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,6BAA6B,CAAC,CAAC;QACjD,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAC1C,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAC9C,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,sCAAsC,CAAC,CAAC;QAC5D,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC3C,2DAA2D;QAC3D,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QACvD,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QAElD,8CAA8C;QAC9C,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;QACxD,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,kCAAkC,CAAC,CAAC;QACvD,MAAM,UAAU,GAAG,eAAe,CAAC,cAAc,CAAC,CAAC;QACnD,MAAM,UAAU,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC;QACvC,MAAM,CAAC,WAAW,CAAC,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC7C,MAAM,CAAC,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,EAAE,6BAA6B,CAAC,CAAC;IAClE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4CAA4C,EAAE,KAAK,IAAI,EAAE;QAC1D,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;QACnD,MAAM,GAAG,GAAG,QAAQ,CAAC,eAAe,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QAExD,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAC;QAC1D,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAC;QAE1D,MAAM,OAAO,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QAC7B,MAAM,OAAO,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QAE7B,iBAAiB;QACjB,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,CAAC;QACzC,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,CAAC;QAEzC,2BAA2B;QAC3B,MAAM,CAAC,eAAe,CACpB,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,EAClC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CACnC,CAAC;QAEF,2CAA2C;QAC3C,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,QAAQ,EAAE,CAAC;YACrC,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAE,CAAC;YAClC,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,uBAAuB,IAAI,EAAE,CAAC,CAAC;QAChE,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,+BAA+B,EAAE,GAAG,EAAE;IAC7C,IAAI,UAAkB,CAAC;IACvB,IAAI,MAAc,CAAC;IAEnB,MAAM,CAAC,GAAG,EAAE;QACV,UAAU,GAAG,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,iBAAiB,CAAC,CAAC,CAAC;QACvE,MAAM,GAAG,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,aAAa,CAAC,CAAC,CAAC;QAC/D,8DAA8D;QAC9D,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,cAAc,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC;YACrE,IAAI,EAAE,oBAAoB,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,UAAU,CAAC;SAClE,CAAC,CAAC,CAAC;QACJ,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,UAAU,CAAC,EAAE,uBAAuB,CAAC,CAAC;QAC7E,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,mBAAmB,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC;YAC1E,IAAI,EAAE,oBAAoB,EAAE,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC,EAAE,QAAQ,EAAE,IAAI;YAChF,QAAQ,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,oBAAoB,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE;SACnE,CAAC,CAAC,CAAC;IACN,CAAC,CAAC,CAAC;IAEH,KAAK,CAAC,GAAG,EAAE;QACT,EAAE,CAAC,MAAM,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QACxD,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACtD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sDAAsD,EAAE,GAAG,EAAE;QAC9D,MAAM,QAAQ,GAAG,KAAK,CAAC,UAAU,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;QACrD,MAAM,CAAC,MAAM,CACX,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE;YACvF,WAAW,EAAE,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,wBAAwB,EAAE,EAAE;SAC7D,CAAC,EACF,uCAAuC,CACxC,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4EAA4E,EAAE,KAAK,IAAI,EAAE;QAC1F,MAAM,QAAQ,GAAG,KAAK,CAAC,UAAU,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;QACrD,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE;YAC3F,WAAW,EAAE,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE,EAAE;SAC/C,CAAC,CAAC;QACH,MAAM,EAAE,GAAG,SAAS,CAAC,OAAO,EAC1B,IAAI,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EACrD,EAAE,WAAW,EAAE,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,CAAC;QACtD,MAAM,GAAG,GAAG,QAAQ,CAAC,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;QAE7D,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;QACjD,MAAM,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QAE5B,MAAM,OAAO,GAAG,MAAM,cAAc,CAAC,OAAO,CAAC,CAAC;QAC9C,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;QACrD,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;QACzC,MAAM,OAAO,GAAG,CAAC,IAAY,EAAU,EAAE;YACvC,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;YAChF,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,UAAU,IAAI,oBAAoB,CAAC,CAAC;YACpD,OAAO,IAAI,CAAC;QACd,CAAC,CAAC;QAEF,MAAM,MAAM,GAAG,mBAAmB,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QAC7E,MAAM,OAAO,GAAG,gBAAgB,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAE,CAAC,CAAC,CAAC;QACrE,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACrD,MAAM,KAAK,GAAG,oBAAoB,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,CAAE,CAAC,CAAC,CAAC;QAC5E,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAEnD,gFAAgF;QAChF,MAAM,OAAO,GAAG,OAAO,CAAC,WAAW,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;QACrF,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,KAAK,MAAM,IAAI,KAAK,CAAC,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAE1F,MAAM,IAAI,GAAG,eAAe,CAAC,mBAAmB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;QACpE,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACtC,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YACzB,uEAAuE;YACvE,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;YAC/E,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,EAAE,oBAAoB,CAAC,CAAC;YACxD,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACzB,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;YAClD,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAE,CAAC,CAAC;QACnC,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,0DAA0D;AAC1D,SAAS,cAAc,CAAC,OAAe;IACrC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,OAAO,GAAG,IAAI,GAAG,EAAkB,CAAC;QAC1C,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,EAAE,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE;YACrD,IAAI,GAAG,IAAI,CAAC,EAAE;gBAAE,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC;YACnC,EAAE,CAAC,SAAS,EAAE,CAAC;YACf,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;gBACvB,IAAI,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC;oBAAE,OAAO,EAAE,CAAC,SAAS,EAAE,CAAC;gBACxD,EAAE,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE;oBACxC,IAAI,IAAI,IAAI,CAAC,MAAM;wBAAE,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC;oBACzC,MAAM,MAAM,GAAa,EAAE,CAAC;oBAC5B,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;oBACzC,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE;wBACpB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;wBACnD,EAAE,CAAC,SAAS,EAAE,CAAC;oBACjB,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YACH,EAAE,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;YACrC,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACzB,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"export.spec.js","sourceRoot":"","sources":["../../src/export.spec.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Copyright (c) 2025 Elara AI Pty Ltd
3
+ * Dual-licensed under AGPL-3.0 and commercial license. See LICENSE for details.
4
+ */
5
+ export {};
6
+ //# sourceMappingURL=functions-link.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"functions-link.spec.d.ts","sourceRoot":"","sources":["../../src/functions-link.spec.ts"],"names":[],"mappings":"AAAA;;;GAGG"}
@@ -0,0 +1,423 @@
1
+ /**
2
+ * Copyright (c) 2025 Elara AI Pty Ltd
3
+ * Dual-licensed under AGPL-3.0 and commercial license. See LICENSE for details.
4
+ */
5
+ /**
6
+ * Cross-language functions at `e3 export` (#628): a task's
7
+ * `East.importFunction` references resolve against the manifests the
8
+ * export is given, embed as pure IR in the task's function_ir object, and
9
+ * are checked against the task's runner for the platform packages the
10
+ * embedded functions need.
11
+ */
12
+ import { describe, it, before, after } from 'node:test';
13
+ import * as assert from 'node:assert';
14
+ import * as fs from 'node:fs';
15
+ import * as os from 'node:os';
16
+ import * as path from 'node:path';
17
+ import { fileURLToPath } from 'node:url';
18
+ import { execFileSync } from 'node:child_process';
19
+ import yauzl from 'yauzl';
20
+ import { East, FunctionType, IntegerType, NullType, StringType, decodeBeast2For, decodeEastIR, walkIR, IMPORT_PLATFORM, } from '@elaraai/east';
21
+ import { DatasetRefType } from '@elaraai/e3-types';
22
+ import { export_ } from './export.js';
23
+ import { package_ } from './package.js';
24
+ import { task } from './task.js';
25
+ import { input } from './input.js';
26
+ import { function_ } from './function.js';
27
+ import { runnerProvides } from './runner.js';
28
+ import { importedFunctions, importedPackages, pythonProviders, nodeProviders, findEastNode, resolveFunctionManifests } from './functions-resolve.js';
29
+ const log = East.platform('log', [StringType], NullType);
30
+ const double = East.function([IntegerType], IntegerType, ($, x) => x.multiply(2n));
31
+ const shout = East.function([StringType], NullType, ($, s) => { $(log(s.upperCase())); });
32
+ const manifest = East.exportFunctions('pricing', '1.0.0', { double, shout }, { providers: { log: 'east-py-std' } });
33
+ const dbl = East.importFunction('pricing', 'double', FunctionType([IntegerType], IntegerType));
34
+ const sh = East.importFunction('pricing', 'shout', FunctionType([StringType], NullType));
35
+ function countImports(ir) {
36
+ let n = 0;
37
+ walkIR(ir, (node) => { if (node.type === 'Platform' && node.value.name === IMPORT_PLATFORM)
38
+ n += 1; });
39
+ return n;
40
+ }
41
+ /** Reads a zip into a path → bytes map. */
42
+ async function readZip(zipPath) {
43
+ return new Promise((resolve, reject) => {
44
+ yauzl.open(zipPath, { lazyEntries: true }, (err, zipfile) => {
45
+ if (err)
46
+ return reject(err);
47
+ if (!zipfile)
48
+ return reject(new Error('No zipfile'));
49
+ const entries = new Map();
50
+ zipfile.readEntry();
51
+ zipfile.on('entry', (entry) => {
52
+ if (/\/$/.test(entry.fileName)) {
53
+ zipfile.readEntry();
54
+ }
55
+ else {
56
+ zipfile.openReadStream(entry, (err, readStream) => {
57
+ if (err)
58
+ return reject(err);
59
+ if (!readStream)
60
+ return reject(new Error('No read stream'));
61
+ const chunks = [];
62
+ readStream.on('data', (chunk) => chunks.push(chunk));
63
+ readStream.on('end', () => {
64
+ entries.set(entry.fileName, Buffer.concat(chunks));
65
+ zipfile.readEntry();
66
+ });
67
+ });
68
+ }
69
+ });
70
+ zipfile.on('end', () => resolve(entries));
71
+ zipfile.on('error', reject);
72
+ });
73
+ });
74
+ }
75
+ /** The IR object a bundle holds for `data/<refPath>.ref`. */
76
+ function irAt(entries, refPath) {
77
+ const ref = decodeBeast2For(DatasetRefType)(new Uint8Array(entries.get(`data/${refPath}.ref`)));
78
+ assert.strictEqual(ref.type, 'value');
79
+ const hash = ref.value.hash;
80
+ return decodeEastIR(new Uint8Array(entries.get(`objects/${hash.slice(0, 2)}/${hash.slice(2)}.beast2`)));
81
+ }
82
+ describe('export_ links East.importFunction references (#628)', () => {
83
+ let tempDir;
84
+ before(() => { tempDir = fs.mkdtempSync(path.join(os.tmpdir(), 'e3-link-')); });
85
+ after(() => { fs.rmSync(tempDir, { recursive: true, force: true }); });
86
+ it("embeds the exported IR in the task's function_ir and the program runs", async () => {
87
+ const greeting = input('greeting', StringType, 'hello');
88
+ const use = task('use_double', [greeting], East.function([StringType], IntegerType, ($, s) => dbl(s.length()).add(1n)));
89
+ const pkg = package_('importer', '1.0.0', use);
90
+ const zipPath = path.join(tempDir, 'importer.zip');
91
+ await export_(pkg, zipPath, { functions: [manifest] });
92
+ const entries = await readZip(zipPath);
93
+ const bundle = irAt(entries, 'tasks/use_double/function_ir');
94
+ assert.strictEqual(countImports(bundle.ir), 0);
95
+ assert.strictEqual(bundle.compile([])('hello'), 11n);
96
+ });
97
+ it('reads manifests from files and accepts a platform dependency the runner provides through its stock family', async () => {
98
+ const manifestPath = path.join(tempDir, 'pricing.functions.beast2');
99
+ fs.writeFileSync(manifestPath, East.encodeFunctionManifest(manifest));
100
+ const greeting = input('greeting', StringType, 'hello');
101
+ // default runner: east-node + @elaraai/east-node-std, the family of east-py-std
102
+ const use = task('use_shout', [greeting], East.function([StringType], NullType, ($, s) => { $(sh(s)); }));
103
+ const pkg = package_('importer', '1.0.0', use);
104
+ const zipPath = path.join(tempDir, 'importer-file.zip');
105
+ await export_(pkg, zipPath, { functions: [manifestPath] });
106
+ const bundle = irAt(await readZip(zipPath), 'tasks/use_shout/function_ir');
107
+ assert.strictEqual(countImports(bundle.ir), 0);
108
+ });
109
+ it("rejects a runner that lists no package providing an embedded function's platform call", async () => {
110
+ const greeting = input('greeting', StringType, 'hello');
111
+ const use = task('use_shout', [greeting], East.function([StringType], NullType, ($, s) => { $(sh(s)); }), {
112
+ runner: { runtime: 'east-node', platforms: ['@elaraai/east-node-io'] },
113
+ });
114
+ const pkg = package_('importer', '1.0.0', use);
115
+ await assert.rejects(export_(pkg, path.join(tempDir, 'bad-runner.zip'), { functions: [manifest] }), /task "use_shout" imports pricing\.shout, which calls platform function "log" provided by east-py-std, but its east-node runner lists @elaraai\/east-node-io/);
116
+ });
117
+ it('rejects a dependency whose manifest names no provider, and an import with no manifest', async () => {
118
+ const unprovided = East.exportFunctions('pricing', '1.0.0', { shout });
119
+ const greeting = input('greeting', StringType, 'hello');
120
+ const use = task('use_shout', [greeting], East.function([StringType], NullType, ($, s) => { $(sh(s)); }));
121
+ const pkg = package_('importer', '1.0.0', use);
122
+ await assert.rejects(export_(pkg, path.join(tempDir, 'no-provider.zip'), { functions: [unprovided] }), /names no package providing it/);
123
+ // no manifest given and no workspace holds the package: the export names the import and both ways out
124
+ await assert.rejects(export_(pkg, path.join(tempDir, 'no-manifest.zip')), /task "use_shout" imports from "pricing", but no function manifest was given for it and it is not a member of the uv or npm workspace/);
125
+ });
126
+ it('links e3.function bodies too, against their own runner', async () => {
127
+ const fn = function_('use_double', East.function([IntegerType], IntegerType, ($, n) => dbl(n)), {
128
+ runner: { runtime: 'east-py', platforms: ['east-py-std'] },
129
+ });
130
+ const pkg = package_('importer', '1.0.0', fn);
131
+ const zipPath = path.join(tempDir, 'fn.zip');
132
+ await export_(pkg, zipPath, { functions: [manifest] });
133
+ const entries = await readZip(zipPath);
134
+ // every object is linked: no IMPORT platform survives anywhere in the bundle
135
+ for (const [name, bytes] of entries) {
136
+ if (!name.startsWith('objects/'))
137
+ continue;
138
+ try {
139
+ const bundle = decodeEastIR(new Uint8Array(bytes));
140
+ assert.strictEqual(countImports(bundle.ir), 0, name);
141
+ }
142
+ catch {
143
+ // not an IR object
144
+ }
145
+ }
146
+ });
147
+ it('runnerProvides: exact names, stock families, custom runners', () => {
148
+ assert.ok(runnerProvides({ runtime: 'east-node', platforms: ['@elaraai/east-node-std'] }, 'east-py-std'));
149
+ assert.ok(runnerProvides({ runtime: 'east-c', platforms: ['east-c-std'] }, '@elaraai/east-node-std'));
150
+ assert.ok(!runnerProvides({ runtime: 'east-node', platforms: ['@elaraai/east-node-std'] }, 'east-py-datascience'));
151
+ assert.ok(runnerProvides({ runtime: 'east-py', platforms: [{ custom: 'acme' }] }, 'acme'));
152
+ assert.ok(!runnerProvides({ runtime: 'east-py', platforms: [{ custom: 'acme' }] }, 'acme2'));
153
+ assert.ok(runnerProvides({ runtime: 'custom', command: ['uv', 'run', 'east-py', 'run'] }, 'anything'));
154
+ });
155
+ });
156
+ // ── self-resolving imports (#652) ─────────────────────────────────────────────
157
+ function toolAvailable(cmd, probe) {
158
+ try {
159
+ execFileSync(cmd, probe, { stdio: 'ignore', shell: process.platform === 'win32' });
160
+ return true;
161
+ }
162
+ catch {
163
+ return false;
164
+ }
165
+ }
166
+ describe('export_ resolves an imported workspace package itself (#652)', () => {
167
+ // the resolver honours EAST_PY (a named east-py), as does this gate
168
+ const hasTools = toolAvailable('uv', ['--version']) && toolAvailable(process.env['EAST_PY'] || 'east-py', ['--help']);
169
+ let ws;
170
+ let events;
171
+ before(() => {
172
+ if (!hasTools)
173
+ return;
174
+ // A uv workspace with one member, `pricing`, whose root module declares
175
+ // `east_functions` — the python package a TypeScript task imports from.
176
+ ws = fs.mkdtempSync(path.join(os.tmpdir(), 'e3-resolve-ws-'));
177
+ fs.writeFileSync(path.join(ws, 'pyproject.toml'), '[project]\nname = "root"\nversion = "0.1.0"\nrequires-python = ">=3.11"\n\n' +
178
+ '[tool.uv.workspace]\nmembers = ["packages/*"]\n');
179
+ const dir = path.join(ws, 'packages', 'pricing');
180
+ fs.mkdirSync(path.join(dir, 'src', 'pricing'), { recursive: true });
181
+ fs.writeFileSync(path.join(dir, 'pyproject.toml'), '[project]\nname = "pricing"\nversion = "2.5.0"\nrequires-python = ">=3.11"\n\n' +
182
+ '[build-system]\nrequires = ["hatchling"]\nbuild-backend = "hatchling.build"\n');
183
+ // `shout` calls `my.log`, which only the workspace's own `acme_platform`
184
+ // (beside the package on its source root) provides — so an owner that
185
+ // imports `triple` alone must not be failed by it.
186
+ fs.writeFileSync(path.join(dir, 'src', 'pricing', '__init__.py'), 'from east import East, IntegerType, NullType, StringType\n\n' +
187
+ 'my_log = East.platform("my.log", [StringType], NullType)\n' +
188
+ 'triple = East.function([IntegerType], IntegerType, lambda b, x: x * 3)\n\n' +
189
+ '@East.function([StringType], NullType)\n' +
190
+ 'def shout(b, s):\n' +
191
+ ' b.do(my_log(s))\n\n' +
192
+ 'east_functions = {"triple": triple, "shout": shout}\n');
193
+ fs.writeFileSync(path.join(dir, 'src', 'acme_platform.py'), 'from east.runtime.platform import platform_function, platform_functions\n' +
194
+ 'from east.types.types import NullType, StringType\n\n' +
195
+ '@platform_function(inputs=[StringType], output=NullType, name="my.log")\n' +
196
+ 'def my_log(s):\n' +
197
+ ' print(s)\n\n' +
198
+ 'platform = platform_functions(__name__)\n');
199
+ execFileSync('uv', ['lock'], { cwd: ws, stdio: 'ignore', shell: process.platform === 'win32' });
200
+ });
201
+ after(() => { if (hasTools)
202
+ fs.rmSync(ws, { recursive: true, force: true }); });
203
+ /** Runs `f` with the workspace as the export's working directory. */
204
+ async function inWorkspace(f) {
205
+ const prev = process.cwd();
206
+ process.chdir(ws);
207
+ try {
208
+ return await f();
209
+ }
210
+ finally {
211
+ process.chdir(prev);
212
+ }
213
+ }
214
+ it('finds the package in the uv workspace, exports it with east-py, and links — no manifest given', { skip: hasTools ? false : 'uv and east-py on PATH' }, async () => {
215
+ const triple = East.importFunction('pricing', 'triple', FunctionType([IntegerType], IntegerType));
216
+ const n = input('n', IntegerType, 4n);
217
+ const use = task('use_triple', [n], East.function([IntegerType], IntegerType, ($, x) => triple(x).add(1n)));
218
+ const pkg = package_('importer', '1.0.0', use);
219
+ const zipPath = path.join(ws, 'importer.zip');
220
+ events = [];
221
+ await inWorkspace(() => export_(pkg, zipPath, { onEvent: (e) => { if (e.kind === 'functions')
222
+ events.push(`${e.package}:${e.count}:${e.tool}`); } }));
223
+ assert.deepStrictEqual(events, ['pricing:1:east-py export-functions']);
224
+ const bundle = irAt(await readZip(zipPath), 'tasks/use_triple/function_ir');
225
+ assert.strictEqual(countImports(bundle.ir), 0);
226
+ assert.strictEqual(bundle.compile([])(4n), 13n);
227
+ });
228
+ it('an explicit manifest wins for its package, and no export runs for it', { skip: hasTools ? false : 'uv and east-py on PATH' }, async () => {
229
+ const given = East.exportFunctions('pricing', '0.0.1', { triple: East.function([IntegerType], IntegerType, ($, x) => x.multiply(30n)) });
230
+ const triple = East.importFunction('pricing', 'triple', FunctionType([IntegerType], IntegerType));
231
+ const n = input('n', IntegerType, 4n);
232
+ const use = task('use_triple', [n], East.function([IntegerType], IntegerType, ($, x) => triple(x)));
233
+ const pkg = package_('importer', '1.0.0', use);
234
+ const zipPath = path.join(ws, 'importer-explicit.zip');
235
+ events = [];
236
+ await inWorkspace(() => export_(pkg, zipPath, { functions: [given], onEvent: (e) => { if (e.kind === 'functions')
237
+ events.push(e.package); } }));
238
+ assert.deepStrictEqual(events, []);
239
+ assert.strictEqual(irAt(await readZip(zipPath), 'tasks/use_triple/function_ir').compile([])(4n), 120n);
240
+ });
241
+ it("a function the package does not export is the exporter's own error, naming the import", { skip: hasTools ? false : 'uv and east-py on PATH' }, async () => {
242
+ const missing = East.importFunction('pricing', 'quadruple', FunctionType([IntegerType], IntegerType));
243
+ const n = input('n', IntegerType, 4n);
244
+ const use = task('use_missing', [n], East.function([IntegerType], IntegerType, ($, x) => missing(x)));
245
+ const pkg = package_('importer', '1.0.0', use);
246
+ await assert.rejects(inWorkspace(() => export_(pkg, path.join(ws, 'missing.zip'))), /exports no function quadruple — its east_functions are triple, shout/);
247
+ });
248
+ it('each owner links against the manifest exported for its own runner, of the functions it imports', { skip: hasTools ? false : 'uv and east-py on PATH' }, async () => {
249
+ // A on the default runner imports the pure `triple`; B on an east-py
250
+ // runner listing the workspace's `acme_platform` imports `shout`, whose
251
+ // `my.log` that package provides. Two exports — one per provider set, of
252
+ // the functions its owner imports — and each owner links its own.
253
+ const triple = East.importFunction('pricing', 'triple', FunctionType([IntegerType], IntegerType));
254
+ const shout = East.importFunction('pricing', 'shout', FunctionType([StringType], NullType));
255
+ const n = input('n', IntegerType, 4n);
256
+ const s = input('s', StringType, 'hi');
257
+ const a = task('use_triple', [n], East.function([IntegerType], IntegerType, ($, x) => triple(x).add(1n)));
258
+ const b = task('use_shout', [s], East.function([StringType], NullType, ($, x) => { $(shout(x)); }), {
259
+ runner: { runtime: 'east-py', platforms: [{ custom: 'acme_platform' }, 'east-py-std'] },
260
+ });
261
+ const pkg = package_('importer', '1.0.0', a, b);
262
+ const zipPath = path.join(ws, 'importer-two-owners.zip');
263
+ events = [];
264
+ await inWorkspace(() => export_(pkg, zipPath, { onEvent: (e) => { if (e.kind === 'functions')
265
+ events.push(`${e.package}:${e.count}:${e.tool}`); } }));
266
+ assert.deepStrictEqual(events, ['pricing:1:east-py export-functions', 'pricing:1:east-py export-functions']);
267
+ const entries = await readZip(zipPath);
268
+ assert.strictEqual(irAt(entries, 'tasks/use_triple/function_ir').compile([])(4n), 13n);
269
+ assert.strictEqual(countImports(irAt(entries, 'tasks/use_shout/function_ir').ir), 0);
270
+ // B's providers are the runner's; an owner on the default runner importing `shout` has none for `my.log`
271
+ const c = task('use_shout_default', [s], East.function([StringType], NullType, ($, x) => { $(shout(x)); }));
272
+ await assert.rejects(inWorkspace(() => export_(package_('importer', '1.0.0', c), path.join(ws, 'unprovided.zip'))), /platform function\(s\) no -p package provides: my\.log/);
273
+ });
274
+ it('the functions and packages an IR imports, and the python providers a runner implies', () => {
275
+ const both = East.function([IntegerType], IntegerType, ($, x) => { $(sh(East.print(x))); return dbl(x); });
276
+ assert.deepStrictEqual(importedPackages(both.toIR().ir), ['pricing']);
277
+ assert.deepStrictEqual([...importedFunctions(both.toIR().ir)].map(([p, names]) => [p, [...names].sort()]), [['pricing', ['double', 'shout']]]);
278
+ assert.deepStrictEqual(importedPackages(East.function([IntegerType], IntegerType, ($, x) => x).toIR().ir), []);
279
+ assert.deepStrictEqual(pythonProviders({ runtime: 'east-node', platforms: ['@elaraai/east-node-std', '@elaraai/east-node-io'] }), ['east-py-io', 'east-py-std']);
280
+ assert.deepStrictEqual(pythonProviders({ runtime: 'east-c', platforms: ['east-c-std'] }), ['east-py-std']);
281
+ assert.deepStrictEqual(pythonProviders({ runtime: 'east-py', platforms: ['east-py-std', { custom: 'acme' }] }), ['acme', 'east-py-std']);
282
+ assert.deepStrictEqual(pythonProviders({ runtime: 'east-node', platforms: [{ custom: '@acme/node-platform' }] }), []);
283
+ assert.deepStrictEqual(pythonProviders({ runtime: 'custom', command: ['uv', 'run', 'east-py', 'run'] }), []);
284
+ assert.deepStrictEqual(pythonProviders(undefined), []);
285
+ });
286
+ });
287
+ // ── self-resolving imports from an npm workspace (#652) ──────────────────────
288
+ describe('export_ resolves an imported npm workspace package itself (#652)', () => {
289
+ // The @elaraai packages a scaffolded project installs, linked from this
290
+ // tree: the member's `@elaraai/east`, the exporter's `-p @elaraai/east-node-std`
291
+ // and the `@elaraai/east-node-cli` the resolver runs from the workspace (no
292
+ // PATH, no bin shim).
293
+ const LIBS = path.join(path.dirname(fileURLToPath(import.meta.url)), '..', '..', '..', '..', '..');
294
+ const links = [
295
+ ['@elaraai/east', path.join(LIBS, 'east')],
296
+ ['@elaraai/east-node-std', path.join(LIBS, 'east-node', 'packages', 'east-node-std')],
297
+ ['@elaraai/east-node-cli', path.join(LIBS, 'east-node', 'packages', 'east-node-cli')],
298
+ ];
299
+ const unbuilt = links.filter(([, dir]) => !fs.existsSync(path.join(dir, 'dist')));
300
+ const skip = unbuilt.length === 0 ? false : `not built here: ${unbuilt.map(([n]) => n).join(', ')}`;
301
+ let ws;
302
+ before(() => {
303
+ if (skip)
304
+ return;
305
+ // An npm workspace — root manifest + lockfile — with a BUILT member,
306
+ // `pricing`, whose `./functions` export declares `eastFunctions` (the node
307
+ // package a TypeScript task imports from), and two members that show the
308
+ // two ways a member cannot be exported.
309
+ ws = fs.mkdtempSync(path.join(os.tmpdir(), 'e3-resolve-npm-'));
310
+ const members = {
311
+ pricing: { name: 'pricing', version: '2.5.0', type: 'module', exports: { './functions': './dist/functions.js' } },
312
+ unbuilt: { name: 'unbuilt', version: '1.0.0', type: 'module', exports: { './functions': './dist/functions.js' } },
313
+ plain: { name: 'plain', version: '1.0.0', type: 'module' },
314
+ };
315
+ fs.writeFileSync(path.join(ws, 'package.json'), JSON.stringify({ name: 'root', private: true, workspaces: ['packages/*'] }));
316
+ const packages = { '': { name: 'root', workspaces: ['packages/*'] } };
317
+ for (const [name, manifest] of Object.entries(members)) {
318
+ const dir = path.join(ws, 'packages', name);
319
+ fs.mkdirSync(dir, { recursive: true });
320
+ fs.writeFileSync(path.join(dir, 'package.json'), JSON.stringify(manifest));
321
+ packages[`packages/${name}`] = { name, version: manifest.version };
322
+ packages[`node_modules/${name}`] = { resolved: `packages/${name}`, link: true };
323
+ }
324
+ fs.writeFileSync(path.join(ws, 'package-lock.json'), JSON.stringify({ name: 'root', lockfileVersion: 3, packages }));
325
+ fs.mkdirSync(path.join(ws, 'packages', 'pricing', 'dist'));
326
+ // `shout` calls a platform no package provides: an owner importing `triple` alone is not failed by it
327
+ fs.writeFileSync(path.join(ws, 'packages', 'pricing', 'dist', 'functions.js'), "import { East, IntegerType, NullType, StringType } from '@elaraai/east';\n" +
328
+ "const log = East.platform('my.log', [StringType], NullType);\n" +
329
+ 'export const eastFunctions = {\n' +
330
+ ' triple: East.function([IntegerType], IntegerType, ($, x) => x.multiply(3n)),\n' +
331
+ ' shout: East.function([StringType], NullType, ($, s) => { $(log(s)); }),\n' +
332
+ '};\n');
333
+ for (const [name, target] of links) {
334
+ const link = path.join(ws, 'node_modules', ...name.split('/'));
335
+ fs.mkdirSync(path.dirname(link), { recursive: true });
336
+ fs.symlinkSync(target, link, 'junction');
337
+ }
338
+ });
339
+ after(() => { if (!skip)
340
+ fs.rmSync(ws, { recursive: true, force: true }); });
341
+ /** Runs `f` with the workspace as the export's working directory. */
342
+ async function inWorkspace(f) {
343
+ const prev = process.cwd();
344
+ process.chdir(ws);
345
+ try {
346
+ return await f();
347
+ }
348
+ finally {
349
+ process.chdir(prev);
350
+ }
351
+ }
352
+ it('finds the package in the npm workspace, exports it with east-node from its built ./functions entry, and links — no manifest given', { skip }, async () => {
353
+ const triple = East.importFunction('pricing', 'triple', FunctionType([IntegerType], IntegerType));
354
+ const n = input('n', IntegerType, 4n);
355
+ const use = task('use_triple', [n], East.function([IntegerType], IntegerType, ($, x) => triple(x).add(1n)));
356
+ const pkg = package_('importer', '1.0.0', use);
357
+ const zipPath = path.join(ws, 'importer.zip');
358
+ const events = [];
359
+ await inWorkspace(() => export_(pkg, zipPath, { onEvent: (e) => { if (e.kind === 'functions')
360
+ events.push(`${e.package}:${e.count}:${e.tool}`); } }));
361
+ assert.deepStrictEqual(events, ['pricing:1:east-node export-functions']);
362
+ const bundle = irAt(await readZip(zipPath), 'tasks/use_triple/function_ir');
363
+ assert.strictEqual(countImports(bundle.ir), 0);
364
+ assert.strictEqual(bundle.compile([])(4n), 13n);
365
+ });
366
+ it("an owner importing a function whose platform call its runner cannot provide is the exporter's error, naming the call", { skip }, async () => {
367
+ const shout = East.importFunction('pricing', 'shout', FunctionType([StringType], NullType));
368
+ const s = input('s', StringType, 'hi');
369
+ const use = task('use_shout', [s], East.function([StringType], NullType, ($, x) => { $(shout(x)); }));
370
+ await assert.rejects(inWorkspace(() => export_(package_('importer', '1.0.0', use), path.join(ws, 'unprovided.zip'))), /platform function\(s\) no -p package provides: my\.log/);
371
+ });
372
+ it('the manifests are served per owner: the export for each provider set, of the functions its owners import', { skip }, () => {
373
+ const runnerA = { runtime: 'east-node', platforms: ['@elaraai/east-node-std'] };
374
+ const runnerB = { runtime: 'east-node', platforms: [] }; // another provider set: its own export
375
+ const given = East.exportFunctions('other', '1.0.0', { double });
376
+ const resolved = resolveFunctionManifests([
377
+ { package: 'pricing', functions: ['triple'], owner: 'task "a"', runner: runnerA },
378
+ { package: 'pricing', functions: ['triple'], owner: 'task "b"', runner: runnerB },
379
+ { package: 'other', functions: ['double'], owner: 'task "a"', runner: runnerA },
380
+ ], [given], ws);
381
+ const forA = resolved.forOwner(runnerA);
382
+ const forB = resolved.forOwner(runnerB);
383
+ assert.deepStrictEqual(forA.map((m) => m.package), ['other', 'pricing']);
384
+ assert.deepStrictEqual(forB.map((m) => m.package), ['other', 'pricing']);
385
+ assert.notStrictEqual(forA[1], forB[1], 'one export per provider set');
386
+ assert.deepStrictEqual(forA[1].functions.map((f) => f.name), ['triple']);
387
+ assert.deepStrictEqual(resolved.forOwner({ runtime: 'east-py', platforms: ['east-py-io'] }).map((m) => m.package), ['other'], 'a runner no owner had gets no workspace manifest');
388
+ });
389
+ it('a member whose ./functions entry is not built, and one exporting no ./functions, are errors naming the way out', { skip }, async () => {
390
+ for (const [name, message] of [
391
+ ['unbuilt', /task "use_it" imports from "unbuilt": its "\.\/functions" entry '.*functions\.js' does not exist — build the package first/],
392
+ ['plain', /task "use_it" imports from "plain", a package of this workspace at '.*plain', but its package\.json exports no "\.\/functions" entry/],
393
+ ]) {
394
+ const fn = East.importFunction(name, 'triple', FunctionType([IntegerType], IntegerType));
395
+ const n = input('n', IntegerType, 4n);
396
+ const use = task('use_it', [n], East.function([IntegerType], IntegerType, ($, x) => fn(x)));
397
+ await assert.rejects(inWorkspace(() => export_(package_('importer', '1.0.0', use), path.join(ws, `${name}.zip`))), message);
398
+ }
399
+ });
400
+ it("the east-node it runs is the workspace's own install, and PATH only where there is none", { skip }, () => {
401
+ // The member's built module and the exporter must share ONE @elaraai/east:
402
+ // an east-node from elsewhere carries its own copy, which does not
403
+ // recognise the member's functions.
404
+ const own = findEastNode(path.join(ws, 'packages', 'pricing'));
405
+ assert.strictEqual(own.command, process.execPath);
406
+ assert.deepStrictEqual(own.args, [path.join(ws, 'node_modules', '@elaraai', 'east-node-cli', 'bin', 'east-node.mjs')]);
407
+ const outside = fs.mkdtempSync(path.join(os.tmpdir(), 'e3-no-cli-'));
408
+ try {
409
+ assert.deepStrictEqual(findEastNode(outside), { command: 'east-node', args: [] });
410
+ }
411
+ finally {
412
+ fs.rmSync(outside, { recursive: true, force: true });
413
+ }
414
+ });
415
+ it('the node providers a runner implies', () => {
416
+ assert.deepStrictEqual(nodeProviders(undefined), []);
417
+ assert.deepStrictEqual(nodeProviders({ runtime: 'east-node', platforms: ['@elaraai/east-node-std', { custom: '@acme/api' }] }), ['@acme/api', '@elaraai/east-node-std']);
418
+ assert.deepStrictEqual(nodeProviders({ runtime: 'east-py', platforms: ['east-py-std', 'east-py-io', { custom: 'acme' }] }), ['@elaraai/east-node-io', '@elaraai/east-node-std']);
419
+ assert.deepStrictEqual(nodeProviders({ runtime: 'east-c', platforms: ['east-c-std'] }), ['@elaraai/east-node-std']);
420
+ assert.deepStrictEqual(nodeProviders({ runtime: 'custom', command: ['node', 'run.js'] }), []);
421
+ });
422
+ });
423
+ //# sourceMappingURL=functions-link.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"functions-link.spec.js","sourceRoot":"","sources":["../../src/functions-link.spec.ts"],"names":[],"mappings":"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"}