@theia/plugin-ext 1.34.0 → 1.34.2

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":"tree-views.js","sourceRoot":"","sources":["../../../src/plugin/tree/tree-views.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,+CAA+C;AAC/C,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,2EAA2E;AAC3E,gFAAgF;;;AAQhF,mFAAmF;AACnF,kDAAkD;AAClD,wDAAuD;AACvD,kEAAqF;AACrF,8CAA0G;AAC1G,gEAAgK;AAGhK,yCAAqD;AACrD,0DAAqD;AACrD,8DAAoD;AAGpD,MAAa,gBAAgB;IAMzB,YAAY,GAAgB,EAAW,eAAoC;QAApC,oBAAe,GAAf,eAAe,CAAqB;QAF1D,cAAS,GAAG,IAAI,GAAG,EAAgC,CAAC;QAGjE,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC,QAAQ,CAAC,mCAAkB,CAAC,eAAe,CAAC,CAAC;QAE9D,eAAe,CAAC,yBAAyB,CAAC;YACtC,eAAe,EAAE,GAAG,CAAC,EAAE;gBACnB,IAAI,8BAAqB,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE;oBAC/B,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;iBAC/B;qBAAM,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;oBAC3B,OAAO,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,8BAAqB,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;iBAC7F;qBAAM;oBACH,OAAO,GAAG,CAAC;iBACd;YACL,CAAC;SACJ,CAAC,CAAC;IACP,CAAC;IACD,YAAY,CAAC,UAAkB,EAAE,WAAqB,EAAE,KAAwB;QAC5E,OAAO,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,aAAa,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;IAC1E,CAAC;IAED,KAAK,CAAC,UAAkB,EAAE,UAA8B,EAAE,iBAA2D,EAAE,KAAwB;QAC3I,OAAO,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,UAAW,CAAC,UAAU,EAAE,iBAAiB,EAAE,KAAK,CAAC,CAAC;IAC1F,CAAC;IAES,UAAU,CAAC,eAAsC;;QACvD,OAAO,MAAA,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,eAAe,CAAC,MAAM,CAAC,0CAAE,WAAW,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;IAC3F,CAAC;IAED,wBAAwB,CAAI,MAAc,EAAE,UAAkB,EAAE,gBAAqC;QACjG,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,UAAU,EAAE,EAAE,gBAAgB,EAAE,CAAC,CAAC;QAE/E,OAAO,uBAAgB,CAAC,MAAM,CAAC,GAAG,EAAE;YAChC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;YAClC,QAAQ,CAAC,OAAO,EAAE,CAAC;QACvB,CAAC,CAAC,CAAC;IACP,CAAC;IAED,cAAc,CAAI,MAAc,EAAE,UAAkB,EAAE,OAA2B;QAC7E,IAAI,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE;YACvC,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;SACjE;QAED,MAAM,QAAQ,GAAG,IAAI,eAAe,CAAI,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;QACjH,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;QAEzC,OAAO;YACH,yBAAyB;YACzB,IAAI,kBAAkB;gBAClB,OAAO,QAAQ,CAAC,kBAAkB,CAAC;YACvC,CAAC;YACD,IAAI,oBAAoB;gBACpB,OAAO,QAAQ,CAAC,oBAAoB,CAAC;YACzC,CAAC;YACD,IAAI,SAAS;gBACT,OAAO,QAAQ,CAAC,gBAAgB,CAAC;YACrC,CAAC;YACD,IAAI,oBAAoB;gBACpB,OAAO,QAAQ,CAAC,oBAAoB,CAAC;YACzC,CAAC;YACD,IAAI,OAAO;gBACP,OAAO,QAAQ,CAAC,OAAO,CAAC;YAC5B,CAAC;YACD,IAAI,qBAAqB;gBACrB,OAAO,QAAQ,CAAC,qBAAqB,CAAC;YAC1C,CAAC;YACD,IAAI,OAAO;gBACP,OAAO,QAAQ,CAAC,OAAO,CAAC;YAC5B,CAAC;YACD,IAAI,OAAO,CAAC,OAAe;gBACvB,QAAQ,CAAC,OAAO,GAAG,OAAO,CAAC;YAC/B,CAAC;YACD,IAAI,KAAK;gBACL,OAAO,QAAQ,CAAC,KAAK,CAAC;YAC1B,CAAC;YACD,IAAI,KAAK,CAAC,KAAa;gBACnB,QAAQ,CAAC,KAAK,GAAG,KAAK,CAAC;YAC3B,CAAC;YACD,IAAI,WAAW;gBACX,OAAO,QAAQ,CAAC,WAAW,CAAC;YAChC,CAAC;YACD,IAAI,WAAW,CAAC,WAAmB;gBAC/B,QAAQ,CAAC,WAAW,GAAG,WAAW,CAAC;YACvC,CAAC;YACD,MAAM,EAAE,CAAC,OAAU,EAAE,aAA8C,EAAkB,EAAE,CACnF,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,aAAa,CAAC;YAE3C,OAAO,EAAE,GAAG,EAAE;gBACV,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;gBAClC,QAAQ,CAAC,OAAO,EAAE,CAAC;YACvB,CAAC;SACJ,CAAC;IACN,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,UAAkB,EAAE,UAAkB;QACrD,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;QAE9C,OAAO,QAAQ,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IAC5C,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,UAAkB,EAAE,UAAkB,EAAE,KAAwB;QACnF,OAAO,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,eAAe,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IAC3E,CAAC;IAED,KAAK,CAAC,mBAAmB,CAAC,UAAkB;QACxC,OAAO,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,kBAAkB,EAAE,CAAC;IAC7D,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,UAAkB,EAAE,UAAkB,EAAE,QAAiB;QACxE,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;QAE9C,IAAI,QAAQ,EAAE;YACV,OAAO,QAAQ,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;SAC1C;aAAM;YACH,OAAO,QAAQ,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;SAC3C;IACL,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,UAAkB,EAAE,WAAqB;QACzD,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;IAC3D,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,UAAkB,EAAE,SAAkB;QACpD,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;IACvD,CAAC;IAES,WAAW,CAAC,UAAkB;QACpC,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAChD,IAAI,CAAC,QAAQ,EAAE;YACX,MAAM,IAAI,KAAK,CAAC,yBAAyB,UAAU,eAAe,CAAC,CAAC;SACvE;QACD,OAAO,QAAQ,CAAC;IACpB,CAAC;CAEJ;AA1ID,4CA0IC;AAcD,MAAM,eAAe;IA2BjB,YACY,MAAc,EACd,UAAkB,EAClB,OAA2B,EAC3B,KAAoB,EACnB,iBAAoC;;QAJrC,WAAM,GAAN,MAAM,CAAQ;QACd,eAAU,GAAV,UAAU,CAAQ;QAClB,YAAO,GAAP,OAAO,CAAoB;QAC3B,UAAK,GAAL,KAAK,CAAe;QACnB,sBAAiB,GAAjB,iBAAiB,CAAmB;QA9BhC,8BAAyB,GAAG,IAAI,eAAO,EAA6B,CAAC;QAC7E,uBAAkB,GAAG,IAAI,CAAC,yBAAyB,CAAC,KAAK,CAAC;QAElD,gCAA2B,GAAG,IAAI,eAAO,EAA6B,CAAC;QAC/E,yBAAoB,GAAG,IAAI,CAAC,2BAA2B,CAAC,KAAK,CAAC;QAEtD,gCAA2B,GAAG,IAAI,eAAO,EAAmC,CAAC;QACrF,yBAAoB,GAAG,IAAI,CAAC,2BAA2B,CAAC,KAAK,CAAC;QAEtD,iCAA4B,GAAG,IAAI,eAAO,EAAiC,CAAC;QACpF,0BAAqB,GAAG,IAAI,CAAC,4BAA4B,CAAC,KAAK,CAAC;QAExD,UAAK,GAAG,IAAI,GAAG,EAA0B,CAAC;QACnD,mBAAc,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;QAEnC,sBAAiB,GAAG,IAAI,yBAAY,EAAE,CAAC;QAE9B,cAAS,GAAG,IAAI,iCAAoB,CACjD,uBAAU,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,EACxC,IAAI,CAAC,yBAAyB,EAC9B,IAAI,CAAC,2BAA2B,EAChC,IAAI,CAAC,2BAA2B,EAChC,IAAI,CAAC,4BAA4B,CACpC,CAAC;QAkCM,aAAQ,GAAW,EAAE,CAAC;QAUtB,WAAM,GAAW,EAAE,CAAC;QAUpB,iBAAY,GAAW,EAAE,CAAC;QAqP1B,oBAAe,GAAG,IAAI,GAAG,EAAU,CAAC;QA8BpC,aAAQ,GAAG,KAAK,CAAC;QAhUrB,iDAAiD;QACjD,MAAM,aAAa,GAAG,MAAA,MAAA,OAAO,CAAC,qBAAqB,0CAAE,aAAa,0CAAE,KAAK,EAAE,CAAC;QAC5E,MAAM,aAAa,GAAG,MAAA,MAAA,OAAO,CAAC,qBAAqB,0CAAE,aAAa,0CAAE,KAAK,EAAE,CAAC;QAC5E,KAAK,CAAC,yBAAyB,CAAC,UAAU,EAAE,EAAE,aAAa,EAAE,OAAO,CAAC,aAAa,EAAE,aAAa,EAAE,aAAa,EAAE,CAAC,CAAC;QACpH,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,uBAAU,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,2BAA2B,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QACjG,MAAA,MAAA,OAAO,CAAC,gBAAgB,EAAC,mBAAmB,mDAAG,GAAG,EAAE;YAChD,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QACrD,CAAC,CAAC,CAAC;IACP,CAAC;IAED,OAAO;QACH,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,OAAU,EAAE,OAAwC;QAC7D,MAAM,IAAI,CAAC,cAAc,CAAC;QAE1B,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,0BAA0B,CAAC,OAAO,CAAC,CAAC;QAC1E,IAAI,kBAAkB,EAAE;YACpB,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,kBAAkB,kBACzD,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,IAAK,OAAO,EACvD,CAAC;SACN;IACL,CAAC;IAGD,IAAI,OAAO;QACP,OAAO,IAAI,CAAC,QAAQ,CAAC;IACzB,CAAC;IAED,IAAI,OAAO,CAAC,OAAe;QACvB,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QACxB,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC3D,CAAC;IAGD,IAAI,KAAK;QACL,OAAO,IAAI,CAAC,MAAM,CAAC;IACvB,CAAC;IAED,IAAI,KAAK,CAAC,KAAa;QACnB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IACjD,CAAC;IAGD,IAAI,WAAW;QACX,OAAO,IAAI,CAAC,YAAY,CAAC;IAC7B,CAAC;IAED,IAAI,WAAW,CAAC,WAAmB;QAC/B,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;QAChC,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;IACnE,CAAC;IAED,WAAW,CAAC,UAAkB;;QAC1B,OAAO,MAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,0CAAE,KAAK,CAAC;IAC7C,CAAC;IAED;;;;;;;;OAQG;IACK,KAAK,CAAC,0BAA0B,CAAC,OAAsB;;QAC3D,IAAI,CAAC,OAAO,EAAE;YACV,OAAO;YACP,OAAO,EAAE,CAAC;SACb;QACD,MAAM,MAAM,GAAG,MAAA,MAAM,CAAA,MAAA,MAAA,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAC,SAAS,mDAAG,OAAO,CAAC,CAAA,mCAAI,SAAS,CAAC;QACrF,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,0BAA0B,CAAC,MAAM,CAAC,CAAC;QAC5D,IAAI,CAAC,KAAK,EAAE;YACR,2BAA2B;YAC3B,OAAO,SAAS,CAAC;SACpB;QACD,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7D,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAC1E,IAAI,QAAQ,CAAC,EAAE,EAAE;YACb,OAAO,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;SACpC;QACD,MAAM,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAClD,2GAA2G;QAC3G,yDAAyD;QACzD,iGAAiG;QACjG,MAAM,QAAQ,GAAG,CAAA,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,QAAQ,KAAI,MAAM,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAChF,IAAI,CAAC,QAAQ,EAAE;YACX,yBAAyB;YACzB,OAAO,SAAS,CAAC;SACpB;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;QAClD,IAAI,aAAa,GAAG,QAAQ,CAAC,MAAM,CAAC;QACpC,4EAA4E;QAC5E,OAAO,aAAa,EAAE,GAAG,CAAC,EAAE;YACxB,MAAM,WAAW,GAAG,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC;YAC3E,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE;gBAC7B,OAAO,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;aACpC;SACJ;QACD,oDAAoD;QACpD,OAAO,SAAS,CAAC;IACrB,CAAC;IAEO,gBAAgB,CAAC,QAAkB;QACvC,MAAM,aAAa,GAAuC,QAAQ,CAAC,KAAK,CAAC;QACzE,OAAO,OAAO,aAAa,KAAK,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,aAAa,CAAC;IACnF,CAAC;IAEO,0BAA0B,CAAC,QAAkB;QACjD,MAAM,aAAa,GAAuC,QAAQ,CAAC,KAAK,CAAC;QACzE,OAAO,OAAO,aAAa,KAAK,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;IACpF,CAAC;IAEO,kBAAkB,CAAC,QAAkB;QACzC,IAAI,OAAO,GAAG,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;QAC9C,uCAAuC;QACvC,IAAI,OAAO,KAAK,SAAS,IAAI,QAAQ,CAAC,WAAW,EAAE;YAC/C,OAAO,GAAG,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC/C,OAAO,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC;YACtC,IAAI,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;gBAC3B,OAAO,GAAG,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;aAC7D;SACJ;QACD,OAAO,OAAO,CAAC;IACnB,CAAC;IAEO,eAAe,CAAC,QAAgB,EAAE,KAAa,EAAE,OAA2B;QAChF,OAAO,GAAG,QAAQ,IAAI,KAAK,IAAI,OAAO,EAAE,CAAC;IAC7C,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,QAAgB;QAC9B,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC5C,MAAM,MAAM,GAAG,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,KAAK,CAAC;QACjC,IAAI,QAAQ,IAAI,CAAC,MAAM,EAAE;YACrB,OAAO,CAAC,KAAK,CAAC,yBAAyB,QAAQ,UAAU,CAAC,CAAC;YAC3D,OAAO,EAAE,CAAC;SACb;QACD,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;QAE/B,0BAA0B;QAC1B,IAAI,QAAQ,KAAK,EAAE,EAAE;YACjB,MAAM,mBAAmB,GAAG,IAAI,iCAAoB,EAAE,CAAC;YACvD,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,mBAAmB,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,mBAAmB,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;SAC7H;QACD,oDAAoD;QACpD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QACvE,IAAI,MAAM,EAAE;YACR,MAAM,gBAAgB,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;gBAEvD,kDAAkD;gBAClD,2CAA2C;gBAC3C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;gBACxE,6CAA6C;gBAE7C,MAAM,KAAK,GAAG,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;gBAC9C,MAAM,UAAU,GAAG,IAAI,CAAC,0BAA0B,CAAC,QAAQ,CAAC,CAAC;gBAC7D,MAAM,OAAO,GAAG,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;gBAElD,kBAAkB;gBAClB,qCAAqC;gBACrC,MAAM,EAAE,GAAG,QAAQ,CAAC,EAAE,IAAI,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;gBAEzE,MAAM,gBAAgB,GAAG,IAAI,iCAAoB,EAAE,CAAC;gBACpD,MAAM,IAAI,GAAmB;oBACzB,EAAE;oBACF,cAAc,EAAE,QAAQ;oBACxB,KAAK;oBACL,WAAW,EAAE,gBAAgB;oBAC7B,OAAO,EAAE,GAAG,EAAE,CAAC,gBAAgB,CAAC,OAAO,EAAE;iBAC5C,CAAC;gBACF,IAAI,UAAU,EAAE;oBACZ,MAAM,QAAQ,GAAG,UAAU,CAAC,QAAQ,IAAI,EAAE,CAAC;oBAC3C,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACpB,UAAU,CAAC,QAAQ,GAAG,QAAQ,CAAC;iBAClC;gBACD,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;gBAEzB,IAAI,IAAI,CAAC;gBACT,IAAI,OAAO,CAAC;gBACZ,IAAI,SAAS,CAAC;gBACd,MAAM,EAAE,QAAQ,EAAE,GAAG,QAAQ,CAAC;gBAC9B,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE;oBAChE,IAAI,GAAG,QAAQ,CAAC;iBACnB;qBAAM,IAAI,sBAAS,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE;oBAC/B,SAAS,GAAG,QAAQ,CAAC;iBACxB;qBAAM;oBACH,OAAO,GAAG,iCAAc,CAAC,KAAK,CAA6B,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;iBACrF;gBAED,MAAM,YAAY,GAAG;oBACjB,EAAE;oBACF,KAAK;oBACL,UAAU;oBACV,IAAI;oBACJ,OAAO;oBACP,SAAS;oBACT,WAAW,EAAE,QAAQ,CAAC,WAAW;oBACjC,WAAW,EAAE,QAAQ,CAAC,WAAW;oBACjC,OAAO,EAAE,QAAQ,CAAC,OAAO;oBACzB,gBAAgB,EAAE,QAAQ,CAAC,gBAAgB;oBAC3C,YAAY,EAAE,QAAQ,CAAC,YAAY;oBACnC,OAAO,EAAE,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,QAAQ,CAAC,OAAO,EAAE,gBAAgB,CAAC;oBACjF,wBAAwB,EAAE,QAAQ,CAAC,wBAAwB;iBAC9C,CAAC;gBAClB,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;gBAEjC,OAAO,YAAY,CAAC;YACxB,CAAC,CAAC,CAAC;YAEH,OAAO,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;SACxC;aAAM;YACH,OAAO,SAAS,CAAC;SACpB;IACL,CAAC;IAEO,aAAa,CAAC,UAA2B;QAC7C,IAAI,UAAU,EAAE;YACZ,IAAI,UAAU,CAAC,QAAQ,EAAE;gBACrB,KAAK,MAAM,KAAK,IAAI,UAAU,CAAC,QAAQ,EAAE;oBACrC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;iBACrB;aACJ;YACD,OAAO,UAAU,CAAC,UAAU,CAAC,CAAC;SACjC;aAAM;YACH,IAAI,CAAC,QAAQ,EAAE,CAAC;SACnB;IACL,CAAC;IAEO,KAAK,CAAC,IAAoB;QAC9B,IAAI,IAAI,CAAC,QAAQ,EAAE;YACf,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,QAAQ,EAAE;gBAC/B,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;aACrB;SACJ;QACD,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC3B,IAAI,CAAC,OAAO,EAAE,CAAC;IACnB,CAAC;IAEO,QAAQ;QACZ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QAC3C,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,UAAkB;QAC/B,2BAA2B;QAC3B,MAAM,aAAa,GAAG,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;QAEnD,gBAAgB;QAChB,IAAI,aAAa,EAAE;YACf,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC;gBAChC,OAAO,EAAE,aAAa;aACzB,CAAC,CAAC;SACN;IACL,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,UAAkB;QAChC,2BAA2B;QAC3B,MAAM,aAAa,GAAG,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;QAEnD,gBAAgB;QAChB,IAAI,aAAa,EAAE;YACf,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC;gBAClC,OAAO,EAAE,aAAa;aACzB,CAAC,CAAC;SACN;IACL,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,UAAkB,EAAE,KAAwB;;QAC9D,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,eAAe,EAAE;YAChD,OAAO,SAAS,CAAC;SACpB;QAED,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QACxC,IAAI,IAAI,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,KAAK,EAAE;YAChE,MAAM,QAAQ,GAAG,MAAA,MAAM,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,eAAe,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,mCAAI,IAAI,CAAC,cAAc,CAAC;YACpI,IAAI,CAAC,YAAY,CAAC,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;YACrG,IAAI,CAAC,YAAY,CAAC,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;YAC7C,OAAO,IAAI,CAAC,YAAY,CAAC;SAC5B;QAED,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,kBAAkB;QACd,OAAO,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,eAAe,CAAC;IAC3D,CAAC;IAGD,IAAI,gBAAgB;QAChB,MAAM,KAAK,GAAQ,EAAE,CAAC;QACtB,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,eAAe,EAAE;YACnC,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;YAClC,IAAI,IAAI,EAAE;gBACN,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aACpB;SACJ;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,YAAY,CAAC,eAAyB;QAClC,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAS,IAAI,CAAC,eAAe,CAAC,CAAC;QACvD,KAAK,MAAM,EAAE,IAAI,eAAe,EAAE;YAC9B,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACpB,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE;gBAC/B,IAAI,CAAC,cAAc,CAAC,eAAe,CAAC,CAAC;gBACrC,OAAO;aACV;SACJ;QACD,IAAI,QAAQ,CAAC,IAAI,EAAE;YACf,IAAI,CAAC,cAAc,CAAC,eAAe,CAAC,CAAC;SACxC;IACL,CAAC;IACS,cAAc,CAAC,eAAyB;QAC9C,IAAI,CAAC,eAAe,GAAG,IAAI,GAAG,CAAC,eAAe,CAAC,CAAC;QAChD,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC;IAC/F,CAAC;IAGD,IAAI,OAAO;QACP,OAAO,IAAI,CAAC,QAAQ,CAAC;IACzB,CAAC;IAED,UAAU,CAAC,OAAgB;QACvB,IAAI,OAAO,KAAK,IAAI,CAAC,QAAQ,EAAE;YAC3B,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;YACxB,IAAI,CAAC,4BAA4B,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;SACrF;IACL,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,WAAqB,EAAE,KAAwB;;QAC/D,MAAM,SAAS,GAAQ,EAAE,CAAC;QAC1B,KAAK,MAAM,EAAE,IAAI,WAAW,EAAE;YAC1B,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;YAClC,IAAI,IAAI,EAAE;gBACN,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aACxB;SACJ;QACD,IAAI,MAAA,IAAI,CAAC,OAAO,CAAC,qBAAqB,0CAAE,UAAU,EAAE;YAChD,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,CAAC;YAC/B,MAAM,IAAI,CAAC,OAAO,CAAC,qBAAqB,CAAC,UAAU,CAAC,SAAS,EAAE,IAAI,CAAC,iBAAiB,EAAE,KAAK,CAAC,CAAC;YAC9F,MAAM,OAAO,GAAG,MAAM,CAAA,MAAA,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,eAAe,CAAC,0CAAE,QAAQ,EAAE,CAAA,CAAC;YAC9E,IAAI,OAAO,EAAE;gBACT,OAAO,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,gBAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;aACzD;SACJ;QACD,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,UAA8B,EAAE,iBAA2D,EAAE,KAAwB;;QAClI,MAAM,QAAQ,GAAG,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACvE,MAAM,YAAY,GAAG,IAAI,yBAAY,EAAE,CAAC;QACxC,IAAI,MAAA,IAAI,CAAC,OAAO,CAAC,qBAAqB,0CAAE,UAAU,EAAE;YAChD,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE;gBAC1C,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YACjC,CAAC,CAAC,CAAC;YACH,KAAK,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,iBAAiB,EAAE;gBAC1C,yDAAyD;gBACzD,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;oBACzB,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;wBAC1B,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,6BAAgB,CAAC,IAAI,CAAC,CAAC,CAAC;qBACtD;yBAAM;wBACH,MAAM,IAAI,GAAqB;4BAC3B,IAAI,EAAE,IAAI,CAAC,IAAI;4BACf,IAAI,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC;4BACrF,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,gBAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS;yBACnD,CAAC;wBAEF,MAAM,QAAQ,GAAG,IAAI,KAAM,SAAQ,6BAAgB;4BACtC,MAAM;gCACX,OAAO,IAAI,CAAC;4BAChB,CAAC;yBACJ,CAAC,IAAI,CAAC,CAAC;wBAER,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;qBACpC;iBACJ;aACJ;YACD,OAAO,IAAI,CAAC,OAAO,CAAC,qBAAqB,CAAC,UAAU,CAAC,QAAQ,EAAE,YAAY,EAAE,KAAK,CAAC,CAAC;SACvF;IACL,CAAC;CACJ"}
1
+ {"version":3,"file":"tree-views.js","sourceRoot":"","sources":["../../../src/plugin/tree/tree-views.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,34 +1,35 @@
1
1
  {
2
2
  "name": "@theia/plugin-ext",
3
- "version": "1.34.0",
3
+ "version": "1.34.2",
4
4
  "description": "Theia - Plugin Extension",
5
5
  "main": "lib/common/index.js",
6
6
  "typings": "lib/common/index.d.ts",
7
7
  "dependencies": {
8
- "@theia/bulk-edit": "1.34.0",
9
- "@theia/callhierarchy": "1.34.0",
10
- "@theia/console": "1.34.0",
11
- "@theia/core": "1.34.0",
12
- "@theia/debug": "1.34.0",
13
- "@theia/editor": "1.34.0",
14
- "@theia/file-search": "1.34.0",
15
- "@theia/filesystem": "1.34.0",
16
- "@theia/markers": "1.34.0",
17
- "@theia/messages": "1.34.0",
18
- "@theia/monaco": "1.34.0",
8
+ "@theia/bulk-edit": "1.34.2",
9
+ "@theia/callhierarchy": "1.34.2",
10
+ "@theia/console": "1.34.2",
11
+ "@theia/core": "1.34.2",
12
+ "@theia/debug": "1.34.2",
13
+ "@theia/editor": "1.34.2",
14
+ "@theia/editor-preview": "1.34.2",
15
+ "@theia/file-search": "1.34.2",
16
+ "@theia/filesystem": "1.34.2",
17
+ "@theia/markers": "1.34.2",
18
+ "@theia/messages": "1.34.2",
19
+ "@theia/monaco": "1.34.2",
19
20
  "@theia/monaco-editor-core": "1.72.3",
20
- "@theia/navigator": "1.34.0",
21
- "@theia/output": "1.34.0",
22
- "@theia/plugin": "1.34.0",
23
- "@theia/preferences": "1.34.0",
24
- "@theia/scm": "1.34.0",
25
- "@theia/search-in-workspace": "1.34.0",
26
- "@theia/task": "1.34.0",
27
- "@theia/terminal": "1.34.0",
28
- "@theia/timeline": "1.34.0",
29
- "@theia/typehierarchy": "1.34.0",
30
- "@theia/variable-resolver": "1.34.0",
31
- "@theia/workspace": "1.34.0",
21
+ "@theia/navigator": "1.34.2",
22
+ "@theia/output": "1.34.2",
23
+ "@theia/plugin": "1.34.2",
24
+ "@theia/preferences": "1.34.2",
25
+ "@theia/scm": "1.34.2",
26
+ "@theia/search-in-workspace": "1.34.2",
27
+ "@theia/task": "1.34.2",
28
+ "@theia/terminal": "1.34.2",
29
+ "@theia/timeline": "1.34.2",
30
+ "@theia/typehierarchy": "1.34.2",
31
+ "@theia/variable-resolver": "1.34.2",
32
+ "@theia/workspace": "1.34.2",
32
33
  "@types/mime": "^2.0.1",
33
34
  "@vscode/debugprotocol": "^1.51.0",
34
35
  "decompress": "^4.2.1",
@@ -85,7 +86,7 @@
85
86
  "watch": "theiaext watch"
86
87
  },
87
88
  "devDependencies": {
88
- "@theia/ext-scripts": "1.34.0",
89
+ "@theia/ext-scripts": "1.34.2",
89
90
  "@types/decompress": "^4.2.2",
90
91
  "@types/escape-html": "^0.0.20",
91
92
  "@types/lodash.clonedeep": "^4.5.3",
@@ -95,5 +96,5 @@
95
96
  "nyc": {
96
97
  "extends": "../../configs/nyc.json"
97
98
  },
98
- "gitHead": "a8c403b103829a1b8b092ce741ef3826804f773b"
99
+ "gitHead": "dba940bd8c0f9f4b324dad0e90d570d499456f60"
99
100
  }
@@ -2037,7 +2037,7 @@ export interface TabOperation {
2037
2037
  export interface TabDto {
2038
2038
  id: string;
2039
2039
  label: string;
2040
- input: any;
2040
+ input: AnyInputDto;
2041
2041
  editorId?: string;
2042
2042
  isActive: boolean;
2043
2043
  isPinned: boolean;
@@ -58,6 +58,7 @@ import { WebviewViewsMainImpl } from './webview-views/webview-views-main';
58
58
  import { MonacoLanguages } from '@theia/monaco/lib/browser/monaco-languages';
59
59
  import { UntitledResourceResolver } from '@theia/core/lib/common/resource';
60
60
  import { ThemeService } from '@theia/core/lib/browser/theming';
61
+ import { TabsMainImpl } from './tabs/tabs-main';
61
62
 
62
63
  export function setUpPluginApi(rpc: RPCProtocol, container: interfaces.Container): void {
63
64
  const authenticationMain = new AuthenticationMainImpl(rpc, container);
@@ -180,4 +181,7 @@ export function setUpPluginApi(rpc: RPCProtocol, container: interfaces.Container
180
181
 
181
182
  const commentsMain = new CommentsMainImp(rpc, container);
182
183
  rpc.set(PLUGIN_RPC_CONTEXT.COMMENTS_MAIN, commentsMain);
184
+
185
+ const tabsMain = new TabsMainImpl(rpc, container);
186
+ rpc.set(PLUGIN_RPC_CONTEXT.TABS_MAIN, tabsMain);
183
187
  }
@@ -15,16 +15,275 @@
15
15
  // *****************************************************************************
16
16
 
17
17
  import { interfaces } from '@theia/core/shared/inversify';
18
-
19
- import { TabsMain } from '../../../common/plugin-api-rpc';
18
+ import { ApplicationShell, PINNED_CLASS, Saveable, TabBar, Title, ViewContainer, Widget } from '@theia/core/lib/browser';
19
+ import { AnyInputDto, MAIN_RPC_CONTEXT, TabDto, TabGroupDto, TabInputKind, TabModelOperationKind, TabsExt, TabsMain } from '../../../common/plugin-api-rpc';
20
20
  import { RPCProtocol } from '../../../common/rpc-protocol';
21
+ import { EditorPreviewWidget } from '@theia/editor-preview/lib/browser/editor-preview-widget';
22
+ import { Disposable } from '@theia/core/shared/vscode-languageserver-protocol';
23
+ import { MonacoDiffEditor } from '@theia/monaco/lib/browser/monaco-diff-editor';
24
+ import { toUriComponents } from '../hierarchy/hierarchy-types-converters';
25
+ import { TerminalWidget } from '@theia/terminal/lib/browser/base/terminal-widget';
26
+ import { DisposableCollection } from '@theia/core';
27
+
28
+ interface TabInfo {
29
+ tab: TabDto;
30
+ tabIndex: number;
31
+ group: TabGroupDto;
32
+ }
33
+
34
+ export class TabsMainImpl implements TabsMain, Disposable {
35
+
36
+ private readonly proxy: TabsExt;
37
+ private tabGroupModel = new Map<TabBar<Widget>, TabGroupDto>();
38
+ private tabInfoLookup = new Map<Title<Widget>, TabInfo>();
39
+
40
+ private applicationShell: ApplicationShell;
41
+
42
+ private disposableTabBarListeners: DisposableCollection = new DisposableCollection();
43
+ private toDisposeOnDestroy: DisposableCollection = new DisposableCollection();
21
44
 
22
- export class TabsMainImp implements TabsMain {
45
+ private groupIdCounter = 0;
46
+ private currentActiveGroup: TabGroupDto;
47
+
48
+ private tabGroupChanged: boolean = false;
23
49
 
24
50
  constructor(
25
51
  rpc: RPCProtocol,
26
52
  container: interfaces.Container
27
- ) {}
53
+ ) {
54
+ this.proxy = rpc.getProxy(MAIN_RPC_CONTEXT.TABS_EXT);
55
+
56
+ this.applicationShell = container.get(ApplicationShell);
57
+ this.createTabsModel();
58
+
59
+ const tabBars = this.applicationShell.mainPanel.tabBars();
60
+ for (let tabBar; tabBar = tabBars.next();) {
61
+ this.attachListenersToTabBar(tabBar);
62
+ }
63
+
64
+ this.toDisposeOnDestroy.push(
65
+ this.applicationShell.mainPanelRenderer.onDidCreateTabBar(tabBar => {
66
+ this.attachListenersToTabBar(tabBar);
67
+ this.onTabGroupCreated(tabBar);
68
+ })
69
+ );
70
+
71
+ this.connectToSignal(this.toDisposeOnDestroy, this.applicationShell.mainPanel.widgetAdded, (mainPanel, widget) => {
72
+ if (this.tabGroupChanged || this.tabGroupModel.size === 0) {
73
+ this.tabGroupChanged = false;
74
+ this.createTabsModel();
75
+ // tab Open event is done in backend
76
+ } else {
77
+ const tabBar = mainPanel.findTabBar(widget.title)!;
78
+ const oldTabInfo = this.tabInfoLookup.get(widget.title);
79
+ const group = this.tabGroupModel.get(tabBar);
80
+ if (group !== oldTabInfo?.group) {
81
+ if (oldTabInfo) {
82
+ this.onTabClosed(oldTabInfo, widget.title);
83
+ }
84
+
85
+ this.onTabCreated(tabBar, { index: tabBar.titles.indexOf(widget.title), title: widget.title });
86
+ }
87
+ }
88
+ });
89
+
90
+ this.connectToSignal(this.toDisposeOnDestroy, this.applicationShell.mainPanel.widgetRemoved, (mainPanel, widget) => {
91
+ if (!(widget instanceof TabBar)) {
92
+ const tabInfo = this.getOrRebuildModel(this.tabInfoLookup, widget.title)!;
93
+ this.onTabClosed(tabInfo, widget.title);
94
+ if (this.tabGroupChanged) {
95
+ this.tabGroupChanged = false;
96
+ this.createTabsModel();
97
+ }
98
+ }
99
+ });
100
+ }
101
+
102
+ protected createTabsModel(): void {
103
+ const newTabGroupModel = new Map<TabBar<Widget>, TabGroupDto>();
104
+ this.tabInfoLookup.clear();
105
+ this.disposableTabBarListeners.dispose();
106
+ this.applicationShell.mainAreaTabBars.forEach(tabBar => {
107
+ this.attachListenersToTabBar(tabBar);
108
+ const groupDto = this.createTabGroupDto(tabBar);
109
+ tabBar.titles.forEach((title, index) => this.tabInfoLookup.set(title, { group: groupDto, tab: groupDto.tabs[index], tabIndex: index }));
110
+ newTabGroupModel.set(tabBar, groupDto);
111
+ });
112
+ if (newTabGroupModel.size > 0 && Array.from(newTabGroupModel.values()).indexOf(this.currentActiveGroup) < 0) {
113
+ this.currentActiveGroup = this.tabInfoLookup.get(this.applicationShell.mainPanel.currentTitle!)?.group ?? newTabGroupModel.values().next().value;
114
+ this.currentActiveGroup.isActive = true;
115
+ }
116
+ this.tabGroupModel = newTabGroupModel;
117
+ this.proxy.$acceptEditorTabModel(Array.from(this.tabGroupModel.values()));
118
+ }
119
+
120
+ protected createTabDto(tabTitle: Title<Widget>, groupId: number): TabDto {
121
+ const widget = tabTitle.owner;
122
+ return {
123
+ id: this.createTabId(tabTitle, groupId),
124
+ label: tabTitle.label,
125
+ input: this.evaluateTabDtoInput(widget),
126
+ isActive: tabTitle.owner.isVisible,
127
+ isPinned: tabTitle.className.includes(PINNED_CLASS),
128
+ isDirty: Saveable.isDirty(widget),
129
+ isPreview: widget instanceof EditorPreviewWidget && widget.isPreview
130
+ };
131
+ }
132
+
133
+ protected createTabId(tabTitle: Title<Widget>, groupId: number): string {
134
+ return `${groupId}~${tabTitle.owner.id}`;
135
+ }
136
+
137
+ protected createTabGroupDto(tabBar: TabBar<Widget>): TabGroupDto {
138
+ const oldDto = this.tabGroupModel.get(tabBar);
139
+ const groupId = oldDto?.groupId ?? this.groupIdCounter++;
140
+ const tabs = tabBar.titles.map(title => this.createTabDto(title, groupId));
141
+ return {
142
+ groupId,
143
+ tabs,
144
+ isActive: false,
145
+ viewColumn: 1
146
+ };
147
+ }
148
+
149
+ protected attachListenersToTabBar(tabBar: TabBar<Widget> | undefined): void {
150
+ if (!tabBar) {
151
+ return;
152
+ }
153
+ tabBar.titles.forEach(title => {
154
+ this.connectToSignal(this.disposableTabBarListeners, title.changed, this.onTabTitleChanged);
155
+ });
156
+
157
+ this.connectToSignal(this.disposableTabBarListeners, tabBar.tabMoved, this.onTabMoved);
158
+ this.connectToSignal(this.disposableTabBarListeners, tabBar.disposed, this.onTabGroupClosed);
159
+ }
160
+
161
+ protected evaluateTabDtoInput(widget: Widget): AnyInputDto {
162
+ if (widget instanceof EditorPreviewWidget) {
163
+ if (widget.editor instanceof MonacoDiffEditor) {
164
+ return {
165
+ kind: TabInputKind.TextDiffInput,
166
+ original: toUriComponents(widget.editor.originalModel.uri),
167
+ modified: toUriComponents(widget.editor.modifiedModel.uri)
168
+ };
169
+ } else {
170
+ return {
171
+ kind: TabInputKind.TextInput,
172
+ uri: toUriComponents(widget.editor.uri.toString())
173
+ };
174
+ }
175
+ // TODO notebook support when implemented
176
+ } else if (widget instanceof ViewContainer) {
177
+ return {
178
+ kind: TabInputKind.WebviewEditorInput,
179
+ viewType: widget.id
180
+ };
181
+ } else if (widget instanceof TerminalWidget) {
182
+ return {
183
+ kind: TabInputKind.TerminalEditorInput
184
+ };
185
+ }
186
+
187
+ return { kind: TabInputKind.UnknownInput };
188
+ }
189
+
190
+ protected connectToSignal<T>(disposableList: DisposableCollection, signal: { connect(listener: T, context: unknown): void, disconnect(listener: T): void }, listener: T): void {
191
+ signal.connect(listener, this);
192
+ disposableList.push(Disposable.create(() => signal.disconnect(listener)));
193
+ }
194
+
195
+ protected tabDtosEqual(a: TabDto, b: TabDto): boolean {
196
+ return a.isActive === b.isActive &&
197
+ a.isDirty === b.isDirty &&
198
+ a.isPinned === b.isPinned &&
199
+ a.isPreview === b.isPreview &&
200
+ a.id === b.id;
201
+ }
202
+
203
+ protected getOrRebuildModel<T, R>(map: Map<T, R>, key: T): R {
204
+ // something broke so we rebuild the model
205
+ let item = map.get(key);
206
+ if (!item) {
207
+ this.createTabsModel();
208
+ item = map.get(key)!;
209
+ }
210
+ return item;
211
+ }
212
+
213
+ // #region event listeners
214
+ private onTabCreated(tabBar: TabBar<Widget>, args: TabBar.ITabActivateRequestedArgs<Widget>): void {
215
+ const group = this.getOrRebuildModel(this.tabGroupModel, tabBar);
216
+ this.connectToSignal(this.disposableTabBarListeners, args.title.changed, this.onTabTitleChanged);
217
+ const tabDto = this.createTabDto(args.title, group.groupId);
218
+ this.tabInfoLookup.set(args.title, { group, tab: tabDto, tabIndex: args.index });
219
+ group.tabs.splice(args.index, 0, tabDto);
220
+ this.proxy.$acceptTabOperation({
221
+ kind: TabModelOperationKind.TAB_OPEN,
222
+ index: args.index,
223
+ tabDto,
224
+ groupId: group.groupId
225
+ });
226
+ }
227
+
228
+ private onTabTitleChanged(title: Title<Widget>): void {
229
+ const tabInfo = this.getOrRebuildModel(this.tabInfoLookup, title);
230
+ if (!tabInfo) {
231
+ return;
232
+ }
233
+ const oldTabDto = tabInfo.tab;
234
+ const newTabDto = this.createTabDto(title, tabInfo.group.groupId);
235
+ if (newTabDto.isActive && !tabInfo.group.isActive) {
236
+ tabInfo.group.isActive = true;
237
+ this.currentActiveGroup.isActive = false;
238
+ this.currentActiveGroup = tabInfo.group;
239
+ this.proxy.$acceptTabGroupUpdate(tabInfo.group);
240
+ }
241
+ if (!this.tabDtosEqual(oldTabDto, newTabDto)) {
242
+ tabInfo.group.tabs[tabInfo.tabIndex] = newTabDto;
243
+ tabInfo.tab = newTabDto;
244
+ this.proxy.$acceptTabOperation({
245
+ kind: TabModelOperationKind.TAB_UPDATE,
246
+ index: tabInfo.tabIndex,
247
+ tabDto: newTabDto,
248
+ groupId: tabInfo.group.groupId
249
+ });
250
+ }
251
+ }
252
+
253
+ private onTabClosed(tabInfo: TabInfo, title: Title<Widget>): void {
254
+ tabInfo.group.tabs.splice(tabInfo.tabIndex, 1);
255
+ this.tabInfoLookup.delete(title);
256
+ this.proxy.$acceptTabOperation({
257
+ kind: TabModelOperationKind.TAB_CLOSE,
258
+ index: tabInfo.tabIndex,
259
+ tabDto: this.createTabDto(title, tabInfo.group.groupId),
260
+ groupId: tabInfo.group.groupId
261
+ });
262
+ }
263
+
264
+ private onTabMoved(tabBar: TabBar<Widget>, args: TabBar.ITabMovedArgs<Widget>): void {
265
+ const tabInfo = this.getOrRebuildModel(this.tabInfoLookup, args.title)!;
266
+ tabInfo.tabIndex = args.toIndex;
267
+ const tabDto = this.createTabDto(args.title, tabInfo.group.groupId);
268
+ tabInfo.group.tabs.splice(args.fromIndex, 1);
269
+ tabInfo.group.tabs.splice(args.toIndex, 0, tabDto);
270
+ this.proxy.$acceptTabOperation({
271
+ kind: TabModelOperationKind.TAB_MOVE,
272
+ index: args.toIndex,
273
+ tabDto,
274
+ groupId: tabInfo.group.groupId,
275
+ oldIndex: args.fromIndex
276
+ });
277
+ }
278
+
279
+ private onTabGroupCreated(tabBar: TabBar<Widget>): void {
280
+ this.tabGroupChanged = true;
281
+ }
282
+
283
+ private onTabGroupClosed(tabBar: TabBar<Widget>): void {
284
+ this.tabGroupChanged = true;
285
+ }
286
+ // #endregion
28
287
 
29
288
  // #region Messages received from Ext Host
30
289
  $moveTab(tabId: string, index: number, viewColumn: number, preserveFocus?: boolean): void {
@@ -32,11 +291,33 @@ export class TabsMainImp implements TabsMain {
32
291
  }
33
292
 
34
293
  async $closeTab(tabIds: string[], preserveFocus?: boolean): Promise<boolean> {
35
- return false;
294
+ const widgets: Widget[] = [];
295
+ for (const tabId of tabIds) {
296
+ const cleanedId = tabId.substring(tabId.indexOf('~') + 1);
297
+ const widget = this.applicationShell.getWidgetById(cleanedId);
298
+ if (widget) {
299
+ widgets.push(widget);
300
+ }
301
+ }
302
+ await this.applicationShell.closeMany(widgets);
303
+ return true;
36
304
  }
37
305
 
38
306
  async $closeGroup(groupIds: number[], preserveFocus?: boolean): Promise<boolean> {
39
- return false;
307
+ for (const groupId of groupIds) {
308
+ tabGroupModel: for (const [bar, groupDto] of this.tabGroupModel) {
309
+ if (groupDto.groupId === groupId) {
310
+ this.applicationShell.closeTabs(bar);
311
+ break tabGroupModel;
312
+ }
313
+ }
314
+ }
315
+ return true;
40
316
  }
41
317
  // #endregion
318
+
319
+ dispose(): void {
320
+ this.toDisposeOnDestroy.dispose();
321
+ this.disposableTabBarListeners.dispose();
322
+ }
42
323
  }
@@ -291,14 +291,6 @@ export class TabsExtImpl implements TabsExt {
291
291
  return this._closeTabs(tabsOrTabGroups as theia.Tab[], preserveFocus);
292
292
  }
293
293
  },
294
- // move: async (tab: theia.Tab, viewColumn: ViewColumn, index: number, preserveFocus?: boolean) => {
295
- // const extHostTab = this._findExtHostTabFromApi(tab);
296
- // if (!extHostTab) {
297
- // throw new Error('Invalid tab');
298
- // }
299
- // this._proxy.$moveTab(extHostTab.tabId, index, typeConverters.ViewColumn.from(viewColumn), preserveFocus);
300
- // return;
301
- // }
302
294
  };
303
295
  this.apiObject = Object.freeze(obj);
304
296
  }
@@ -306,7 +298,6 @@ export class TabsExtImpl implements TabsExt {
306
298
  }
307
299
 
308
300
  $acceptEditorTabModel(tabGroups: TabGroupDto[]): void {
309
-
310
301
  const groupIdsBefore = new Set(this.tabGroupArr.map(group => group.groupId));
311
302
  const groupIdsAfter = new Set(tabGroups.map(dto => dto.groupId));
312
303
  const diff = diffSets(groupIdsBefore, groupIdsAfter);
@@ -314,23 +305,28 @@ export class TabsExtImpl implements TabsExt {
314
305
  const closed: theia.TabGroup[] = this.tabGroupArr.filter(group => diff.removed.includes(group.groupId)).map(group => group.apiObject);
315
306
  const opened: theia.TabGroup[] = [];
316
307
  const changed: theia.TabGroup[] = [];
308
+ const tabsOpened: theia.Tab[] = [];
317
309
 
318
310
  this.tabGroupArr = tabGroups.map(tabGroup => {
319
311
  const group = new TabGroupExt(tabGroup, () => this.activeGroupId);
320
312
  if (diff.added.includes(group.groupId)) {
321
- opened.push(group.apiObject);
313
+ opened.push({ activeTab: undefined, isActive: group.apiObject.isActive, tabs: [], viewColumn: group.apiObject.viewColumn });
314
+ tabsOpened.push(...group.apiObject.tabs);
322
315
  } else {
323
316
  changed.push(group.apiObject);
324
317
  }
325
318
  return group;
326
319
  });
327
320
 
328
- // Set the active tab group id
329
- const activeTabGroupId = assertIsDefined(tabGroups.find(group => group.isActive === true)?.groupId);
330
- if (activeTabGroupId !== undefined && this.activeGroupId !== activeTabGroupId) {
331
- this.activeGroupId = activeTabGroupId;
321
+ // Set the active tab group id. skip if no tabgroups are open
322
+ if (tabGroups.length > 0) {
323
+ const activeTabGroupId = assertIsDefined(tabGroups.find(group => group.isActive === true)?.groupId);
324
+ if (this.activeGroupId !== activeTabGroupId) {
325
+ this.activeGroupId = activeTabGroupId;
326
+ }
332
327
  }
333
328
  this.onDidChangeTabGroups.fire(Object.freeze({ opened, closed, changed }));
329
+ this.onDidChangeTabs.fire({ opened: tabsOpened, changed: [], closed: [] });
334
330
  }
335
331
 
336
332
  $acceptTabGroupUpdate(groupDto: TabGroupDto): void {