brighterscript 0.69.10 → 0.69.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/LanguageServer.d.ts +19 -5
- package/dist/LanguageServer.js +43 -19
- package/dist/LanguageServer.js.map +1 -1
- package/dist/bscPlugin/validation/BrsFileValidator.js +26 -11
- package/dist/bscPlugin/validation/BrsFileValidator.js.map +1 -1
- package/dist/lsp/LspProject.d.ts +17 -9
- package/dist/lsp/Project.d.ts +8 -7
- package/dist/lsp/Project.js +20 -20
- package/dist/lsp/Project.js.map +1 -1
- package/dist/lsp/Project.spec.js +41 -14
- package/dist/lsp/Project.spec.js.map +1 -1
- package/dist/lsp/ProjectManager.d.ts +23 -10
- package/dist/lsp/ProjectManager.js +125 -57
- package/dist/lsp/ProjectManager.js.map +1 -1
- package/dist/lsp/ProjectManager.spec.js +113 -115
- package/dist/lsp/ProjectManager.spec.js.map +1 -1
- package/dist/lsp/worker/WorkerThreadProject.d.ts +6 -7
- package/dist/lsp/worker/WorkerThreadProject.js +6 -5
- package/dist/lsp/worker/WorkerThreadProject.js.map +1 -1
- package/dist/lsp/worker/WorkerThreadProject.spec.js +4 -1
- package/dist/lsp/worker/WorkerThreadProject.spec.js.map +1 -1
- package/dist/util.d.ts +6 -0
- package/dist/util.js +14 -2
- package/dist/util.js.map +1 -1
- package/package.json +1 -1
package/dist/lsp/Project.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Project.js","sourceRoot":"","sources":["../../src/lsp/Project.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Project.js","sourceRoot":"","sources":["../../src/lsp/Project.ts"],"names":[],"mappings":";;;AAAA,sDAAmD;AACnD,8CAA8C;AAC9C,kCAAqD;AACrD,6BAA6B;AAG7B,8DAA2D;AAC3D,2CAAiC;AACjC,0CAAuC;AAEvC,6CAAyC;AAEzC,mFAAgE;AAChE,mFAAyE;AAKzE,wCAA0C;AAC1C,oCAAoC;AAEpC,MAAa,OAAO;IAChB,YACI,OAEC;;QAqGE,wBAAmB,GAAG,KAAK,CAAC;QAyBnC;;WAEG;QACK,uBAAkB,GAAG,IAAI,mBAAQ,EAAE,CAAC;QA+YpC,YAAO,GAAG,IAAI,YAAY,EAAE,CAAC;QAE9B,gBAAW,GAA8B,EAAE,CAAC;QAhhB/C,IAAI,CAAC,MAAM,GAAG,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,MAAM,mCAAI,IAAA,sBAAY,EAAC;YAC1C,kEAAkE;YAClE,WAAW,EAAE,KAAK;SACrB,CAAC,CAAC;IACP,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,QAAQ,CAAC,OAAsB;QACxC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,iCAAiC,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;QAExE,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC;QAC/B,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,cAAI,CAAC,eAAe,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC;QACrG,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,cAAI,CAAC,eAAe,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC;QACrG,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,cAAI,CAAC,eAAe,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC;QACzH,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC;QAC3C,IAAI,CAAC,YAAY,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;QAE1D,IAAI,CAAC,OAAO,GAAG,IAAI,+BAAc,CAAC;YAC9B,qGAAqG;YACrG,MAAM,EAAE,IAAI,CAAC,MAAM;SACtB,CAAC,CAAC;QAEH,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,GAAG,cAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;QAC1D,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAEpC,IAAI,GAAW,CAAC;QAChB,yDAAyD;QACzD,IAAI,IAAI,CAAC,YAAY,IAAI,MAAM,cAAI,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE;YAC/D,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YACtC,iFAAiF;YACjF,IAAI;gBACA,IAAI,CAAC,oBAAoB,GAAG,CAAC,MAAM,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;aACtF;YAAC,WAAM,GAAG;SAEd;aAAM;YACH,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC;YACtB,0EAA0E;YAC1E,IAAI,CAAC,YAAY,GAAG,SAAS,CAAC;SACjC;QAED,MAAM,cAAc,GAAG;YACnB,GAAG,EAAE,GAAG;YACR,OAAO,EAAE,IAAI,CAAC,YAAY;YAC1B,KAAK,EAAE,KAAK;YACZ,aAAa,EAAE,KAAK;YACpB,MAAM,EAAE,KAAK;YACb,aAAa,EAAE,KAAK;YACpB,wBAAwB,EAAE,KAAK;YAC/B,QAAQ,EAAE,KAAK;SACN,CAAC;QAEd,oKAAoK;QACpK,IAAI,OAAO,CAAC,KAAK,EAAE;YACf,cAAc,CAAC,KAAK,GAAG,wBAAU,CAAC,mBAAmB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;SACxE;QAED,qHAAqH;QACrH,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,iCACf,cAAc,KACjB,QAAQ,EAAE,KAAK;YACf,uHAAuH;YACvH,wBAAwB,EAAE,KAAK,IACjC,CAAC;QAEH,8DAA8D;QAC9D,oFAAoF;QACpF,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC;YACrB,IAAI,EAAE,qBAAqB;YAC3B,oBAAoB,EAAE,GAAG,EAAE;gBACvB,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;gBAC1C,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE;oBACrB,WAAW,EAAE,WAAW;iBAC3B,CAAC,CAAC;YACP,CAAC;SACM,CAAC,CAAC;QAEb,4EAA4E;QAC5E,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,gBAAgB,EAAE;YAC5E,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,YAAY,kCACrC,uCAAkB,CAAC,yBAAyB,EAAE,KACjD,KAAK,EAAE,cAAI,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,IACrC,CAAC;SACN;QAED,wHAAwH;QACxH,KAAK,IAAI,CAAC,QAAQ,EAAE,CAAC;QAErB,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,CAAC;QAElC,OAAO;YACH,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,QAAoB;YAC3D,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO;YAC7C,YAAY,EAAE,IAAI,CAAC,YAAY;SAClC,CAAC;IACN,CAAC;IAWD,IAAW,OAAO;QACd,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC;IAChD,CAAC;IACD;;OAEG;IACH,IAAW,YAAY;QACnB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACf,OAAO,SAAS,CAAC;SACpB;QACD,MAAM,QAAQ,GAAG,wBAAU,CAAC,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACpF,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;YACpB,OAAO,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;QAC7C,CAAC,CAAC,CAAC;IACP,CAAC;IAOD;;;OAGG;IACI,aAAa;QAChB,OAAO,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC;IAC3C,CAAC;IAID;;;;;OAKG;IACI,KAAK,CAAC,QAAQ;QACjB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;QAEtC,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,OAAO;QACP,IAAI,CAAC,qBAAqB,GAAG,IAAI,wDAAuB,EAAE,CAAC;QAE3D,IAAI;YACA,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAC;YAChC,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC;gBAChC,KAAK,EAAE,IAAI;gBACX,iBAAiB,EAAE,IAAI,CAAC,qBAAqB,CAAC,KAAK;aACtD,CAAC,CAAC;SACN;gBAAS;YACN,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;SACjC;IACL,CAAC;IAED;;OAEG;IACI,cAAc;;QACjB,MAAA,IAAI,CAAC,qBAAqB,0CAAE,MAAM,EAAE,CAAC;QACrC,OAAO,IAAI,CAAC,qBAAqB,CAAC;IACtC,CAAC;IAEM,cAAc;QACjB,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;QAClD,OAAO,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;YACvB,MAAM,GAAG,GAAG,gBAAG,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,CAAC;YAChD,uCACO,cAAI,CAAC,YAAY,CAAC,CAAC,EAAE,GAAG,CAAC,KAC5B,GAAG,EAAE,GAAG,IACV;QACN,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,MAAM;QAChB,MAAM,OAAO,CAAC,GAAG,CAAC;YACd,IAAI,CAAC,kBAAkB,CAAC,OAAO;SAClC,CAAC,CAAC;IACP,CAAC;IAED;;;OAGG;IACI,KAAK,CAAC,gBAAgB,CAAC,eAAiC;;QAC3D,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,0BAA0B,EAAE,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;QAEnF,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;QAEpB,IAAI,cAAc,GAAG,KAAK,CAAC;QAC3B,MAAM,MAAM,GAAG,CAAC,GAAG,eAAe,CAA+B,CAAC;QAClE,4DAA4D;QAC5D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACpC,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;YACzB,IAAI,iBAAiB,GAAG,KAAK,CAAC;YAC9B,2EAA2E;YAC3E,IAAI,MAAM,CAAC,IAAI,KAAK,KAAK,IAAI,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;gBAC3I,qEAAqE;gBACrE,MAAM,YAAY,GAAG,MAAA,MAAM,CAAC,YAAY,mCAAI,MAAA,cAAI,CAAC,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,0CAAE,QAAQ,EAAE,CAAC;gBAE1F,sDAAsD;gBACtD,IAAI,YAAY,KAAK,SAAS,EAAE;oBAC5B,iBAAiB,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;oBAC/D,uCAAuC;oBACvC,MAAM,CAAC,MAAM,GAAG,UAAU,CAAC;oBAE3B,uDAAuD;iBAC1D;qBAAM;oBACH,MAAM,CAAC,MAAM,GAAG,UAAU,CAAC;oBAC3B,MAAM,CAAC,IAAI,CAAC;wBACR,EAAE,EAAE,MAAM,CAAC,EAAE;wBACb,OAAO,EAAE,MAAM,CAAC,OAAO;wBACvB,IAAI,EAAE,QAAQ;wBACd,MAAM,EAAE,SAAS;wBACjB,sBAAsB,EAAE,KAAK;qBAChC,CAAC,CAAC;oBACH,SAAS;iBACZ;gBAED,qCAAqC;aACxC;iBAAM,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE;gBACjC,iBAAiB,GAAG,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;gBAC/D,+DAA+D;gBAC/D,MAAM,CAAC,MAAM,GAAG,iBAAiB,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC;gBAE5D,0CAA0C;aAC7C;iBAAM;gBACH,MAAM,CAAC,MAAM,GAAG,UAAU,CAAC;aAC9B;YACD,cAAc,GAAG,cAAc,IAAI,iBAAiB,CAAC;SACxD;QACD,IAAI,cAAc,EAAE;YAChB,wHAAwH;YACxH,IAAI,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;SACpD;QAED,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,+BAA+B,EAAE,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;QAExF,OAAO,MAAM,CAAC;IAClB,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,cAAc,CAAC,OAAe,EAAE,KAAwB,EAAE,OAAe;QACnF,OAAO,GAAG,cAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;QACxC,IAAI,wBAAU,CAAC,WAAW,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,SAAS,EAAE;YAC/D,OAAO,IAAI,CAAC;YACZ,yFAAyF;SAC5F;aAAM,IAAK,KAAiC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,IAAA,sBAAC,EAAA,GAAG,CAAC,CAAC,GAAG,EAAE,KAAK,OAAO,CAAC,EAAE;YAC9E,OAAO,IAAI,CAAC;SACf;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IAED;;;;;;OAMG;IACK,OAAO,CAAC,OAAe,EAAE,YAAoB;QACjD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,iBAAiB,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,kBAAkB,EAAE,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC;QAEpG,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC;QAExD,kCAAkC;QAClC,IAAI,QAAQ,GAAG,wBAAU,CAAC,WAAW,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;QAE/D,oDAAoD;QACpD,IAAI,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAClD,IAAI,IAAI,IAAI,IAAI,CAAC,YAAY,KAAK,YAAY,EAAE;YAC5C,OAAO,KAAK,CAAC;SAChB;QAED,yDAAyD;QACzD,IAAI,QAAQ,EAAE;YACV,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CACxB;gBACI,GAAG,EAAE,OAAO;gBACZ,IAAI,EAAE,QAAQ;aACjB,EACD,YAAY,CACf,CAAC;YACF,OAAO,IAAI,CAAC;SACf;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IAED;;;;OAIG;IACK,qBAAqB,CAAC,OAAe;;QACzC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,+BAA+B,EAAE,OAAO,CAAC,CAAC;QAE5D,OAAO,GAAG,cAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;QACxC,iDAAiD;QACjD,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;YACvC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;YACzC,OAAO,IAAI,CAAC;SACf;QAED,uEAAuE;QACvE,IAAI,gBAAgB,GAAG,KAAK,CAAC;QAC7B,IAAI,YAAY,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;QACzC,KAAK,IAAI,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YACxD,uGAAuG;YACvG,IAAI,MAAA,IAAI,CAAC,OAAO,0CAAE,WAAW,GAAG,UAAU,CAAC,YAAY,CAAC,EAAE;gBACtD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,oFAAoF,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;gBAEjJ,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;gBACrD,gBAAgB,GAAG,IAAI,CAAC;aAC3B;SACJ;QACD,6CAA6C;QAC7C,OAAO,gBAAgB,CAAC;IAC5B,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,iBAAiB,CAAC,OAA4B;QACvD,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;QACpB,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;YAC/C,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;SAClE;IACL,CAAC;IAEM,KAAK,CAAC,aAAa,CAAC,OAA4B;QACnD,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;QACpB,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;YAC/C,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,yBAAyB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;SAC1E;IACL,CAAC;IAEM,KAAK,CAAC,QAAQ,CAAC,OAAgD;QAClE,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;QACpB,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;YAC/C,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;SAC3E;IACL,CAAC;IAEM,KAAK,CAAC,aAAa,CAAC,OAAgD;QACvE,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;QACpB,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;YAC/C,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;SAChF;IACL,CAAC;IAEM,KAAK,CAAC,gBAAgB,CAAC,OAAgD;QAC1E,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;QACpB,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;YAC/C,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;SACnF;IACL,CAAC;IAEM,KAAK,CAAC,iBAAiB,CAAC,OAA4B;QACvD,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;QACpB,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;YAC/C,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,kBAAkB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;SACnE;IACL,CAAC;IAEM,KAAK,CAAC,kBAAkB;QAC3B,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;QACpB,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,mBAAmB,EAAE,CAAC;QAC1D,OAAO,MAAM,CAAC;IAClB,CAAC;IAEM,KAAK,CAAC,aAAa,CAAC,OAAgD;QACvE,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;QACpB,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;YAC/C,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;SAChF;IACL,CAAC;IAEM,KAAK,CAAC,cAAc,CAAC,OAA0C;;QAClE,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;QAEpB,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;YAC/C,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;YACxF,oIAAoI;YACpI,KAAK,MAAM,UAAU,IAAI,WAAW,aAAX,WAAW,cAAX,WAAW,GAAI,EAAE,EAAE;gBACxC,IAAI,UAAU,CAAC,WAAW,EAAE;oBACxB,UAAU,CAAC,WAAW,GAAG,MAAA,UAAU,CAAC,WAAW,0CAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,cAAI,CAAC,YAAY,CAAC,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;iBACpG;aACJ;YACD,OAAO,WAAW,CAAC;SACtB;IACL,CAAC;IAEM,KAAK,CAAC,cAAc,CAAC,OAAgD;QACxE,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;QAEpB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,wBAAwB,EAAE,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;QAE/E,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;YAC/C,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;YAC3F,MAAM,MAAM,GAAG,+CAAc,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;YAClD,MAAM,CAAC,YAAY,GAAG;gBAClB,gBAAgB,EAAE,CAAC,GAAG,CAAC;aAC1B,CAAC;YACF,OAAO,MAAM,CAAC;SACjB;QACD,OAAO,SAAS,CAAC;IACrB,CAAC;IA2CD;;;OAGG;IACK,KAAK,CAAC,iBAAiB,CAAC,MAAoD;QAChF,IAAI,YAAoB,CAAC;QACzB,mFAAmF;QACnF,IAAI,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,YAAY,EAAE;YACtB,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;YACpE,IAAI,MAAM,cAAI,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE;gBACrC,OAAO,cAAI,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;aAC7C;iBAAM;gBACH,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE;oBAC1B,OAAO,EAAE,uEAAuE,YAAY,GAAG;iBAClG,CAAC,CAAC;aACN;SACJ;QAED,+FAA+F;QAC/F,IAAI,CAAC,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,UAAU,CAAA,EAAE;YACrB,OAAO,SAAS,CAAC;SACpB;QAED,gEAAgE;QAChE,YAAY,GAAG,IAAA,sBAAC,EAAA,GAAG,MAAM,CAAC,UAAU,gBAAgB,CAAC;QACrD,IAAI,MAAM,cAAI,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE;YACrC,OAAO,cAAI,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;SAC7C;QAED,+CAA+C;QAC/C,YAAY,GAAG,IAAA,sBAAC,EAAA,GAAG,MAAM,CAAC,UAAU,iBAAiB,CAAC;QACtD,IAAI,MAAM,cAAI,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE;YACrC,OAAO,cAAI,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;SAC7C;QAED,+BAA+B;QAC/B,OAAO,SAAS,CAAC;IACrB,CAAC;IAOM,EAAE,CAAC,SAAiB,EAAE,OAA+C;QACxE,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,OAAc,CAAC,CAAC;QAC3C,OAAO,GAAG,EAAE;YACR,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,SAAS,EAAE,OAAc,CAAC,CAAC;QAC3D,CAAC,CAAC;IACN,CAAC;IAMO,KAAK,CAAC,IAAI,CAAC,SAAiB,EAAE,IAAK;QACvC,uGAAuG;QACvG,MAAM,cAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACpB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QACnC,sBAAsB;QACtB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;IAC9C,CAAC;IAKM,OAAO;;QACV,KAAK,IAAI,UAAU,IAAI,MAAA,IAAI,CAAC,WAAW,mCAAI,EAAE,EAAE;YAC3C,MAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,OAAO,0DAAI,CAAC;SAC3B;QACD,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;QAEtB,MAAA,IAAI,CAAC,OAAO,0CAAE,kBAAkB,EAAE,CAAC;QACnC,IAAI,CAAA,MAAA,IAAI,CAAC,kBAAkB,0CAAE,WAAW,MAAK,KAAK,EAAE;YAChD,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAC1B,IAAI,KAAK,CAAC,qDAAqD,CAAC,CACnE,CAAC;SACL;IACL,CAAC;CACJ;AAriBD,0BAqiBC"}
|
package/dist/lsp/Project.spec.js
CHANGED
|
@@ -42,7 +42,9 @@ describe('Project', () => {
|
|
|
42
42
|
fsExtra.outputFileSync(`${testHelpers_spec_1.rootDir}/components/component${i}.xml`, `<component name="component${i}"></component>`);
|
|
43
43
|
}
|
|
44
44
|
await project.activate({
|
|
45
|
-
|
|
45
|
+
projectKey: testHelpers_spec_1.rootDir,
|
|
46
|
+
projectDir: testHelpers_spec_1.rootDir,
|
|
47
|
+
bsconfigPath: undefined,
|
|
46
48
|
workspaceFolder: testHelpers_spec_1.rootDir,
|
|
47
49
|
enableThreading: false
|
|
48
50
|
});
|
|
@@ -99,7 +101,10 @@ describe('Project', () => {
|
|
|
99
101
|
end sub
|
|
100
102
|
`);
|
|
101
103
|
await project.activate({
|
|
102
|
-
|
|
104
|
+
projectDir: testHelpers_spec_1.rootDir,
|
|
105
|
+
projectKey: undefined,
|
|
106
|
+
workspaceFolder: undefined,
|
|
107
|
+
bsconfigPath: undefined
|
|
103
108
|
});
|
|
104
109
|
await (0, testHelpers_spec_1.once)(project, 'diagnostics');
|
|
105
110
|
(0, testHelpers_spec_1.expectDiagnostics)(project, [
|
|
@@ -108,14 +113,22 @@ describe('Project', () => {
|
|
|
108
113
|
});
|
|
109
114
|
it('prevents creating package on first run', async () => {
|
|
110
115
|
await project.activate({
|
|
111
|
-
|
|
116
|
+
projectDir: testHelpers_spec_1.rootDir,
|
|
117
|
+
projectKey: undefined,
|
|
118
|
+
workspaceFolder: undefined,
|
|
119
|
+
bsconfigPath: undefined
|
|
112
120
|
});
|
|
113
121
|
(0, chai_1.expect)(project['builder'].program.options.copyToStaging).to.be.false;
|
|
114
122
|
});
|
|
115
123
|
});
|
|
116
124
|
describe('applyFileChanges', () => {
|
|
117
125
|
it('skips setting the file if the contents have not changed', async () => {
|
|
118
|
-
await project.activate({
|
|
126
|
+
await project.activate({
|
|
127
|
+
projectDir: testHelpers_spec_1.rootDir,
|
|
128
|
+
projectKey: undefined,
|
|
129
|
+
workspaceFolder: undefined,
|
|
130
|
+
bsconfigPath: undefined
|
|
131
|
+
});
|
|
119
132
|
//initial set should be true
|
|
120
133
|
(0, chai_1.expect)((await project.applyFileChanges([{
|
|
121
134
|
fileContents: 'sub main:end sub',
|
|
@@ -137,7 +150,10 @@ describe('Project', () => {
|
|
|
137
150
|
});
|
|
138
151
|
it('always includes a status', async () => {
|
|
139
152
|
await project.activate({
|
|
140
|
-
|
|
153
|
+
projectDir: testHelpers_spec_1.rootDir,
|
|
154
|
+
projectKey: undefined,
|
|
155
|
+
workspaceFolder: undefined,
|
|
156
|
+
bsconfigPath: undefined
|
|
141
157
|
});
|
|
142
158
|
project['builder'].options.files = [
|
|
143
159
|
'source/**/*',
|
|
@@ -171,7 +187,10 @@ describe('Project', () => {
|
|
|
171
187
|
it('finds bsconfig.json at root', async () => {
|
|
172
188
|
fsExtra.outputFileSync(`${testHelpers_spec_1.rootDir}/bsconfig.json`, '');
|
|
173
189
|
await project.activate({
|
|
174
|
-
|
|
190
|
+
projectDir: testHelpers_spec_1.rootDir,
|
|
191
|
+
projectKey: undefined,
|
|
192
|
+
workspaceFolder: undefined,
|
|
193
|
+
bsconfigPath: undefined
|
|
175
194
|
});
|
|
176
195
|
(0, chai_1.expect)(project.bsconfigPath).to.eql((0, util_1.standardizePath) `${testHelpers_spec_1.rootDir}/bsconfig.json`);
|
|
177
196
|
});
|
|
@@ -182,7 +201,10 @@ describe('Project', () => {
|
|
|
182
201
|
end sub
|
|
183
202
|
`);
|
|
184
203
|
await project.activate({
|
|
185
|
-
|
|
204
|
+
projectDir: testHelpers_spec_1.rootDir,
|
|
205
|
+
projectKey: undefined,
|
|
206
|
+
workspaceFolder: undefined,
|
|
207
|
+
bsconfigPath: undefined
|
|
186
208
|
});
|
|
187
209
|
await (0, testHelpers_spec_1.once)(project, 'diagnostics');
|
|
188
210
|
await (0, testHelpers_spec_1.expectDiagnosticsAsync)(project, [
|
|
@@ -193,17 +215,21 @@ describe('Project', () => {
|
|
|
193
215
|
describe('createProject', () => {
|
|
194
216
|
it('uses given projectNumber', async () => {
|
|
195
217
|
await project.activate({
|
|
196
|
-
|
|
197
|
-
projectNumber: 123
|
|
218
|
+
projectDir: testHelpers_spec_1.rootDir,
|
|
219
|
+
projectNumber: 123,
|
|
220
|
+
projectKey: undefined,
|
|
221
|
+
workspaceFolder: undefined,
|
|
222
|
+
bsconfigPath: undefined
|
|
198
223
|
});
|
|
199
224
|
(0, chai_1.expect)(project.projectNumber).to.eql(123);
|
|
200
225
|
});
|
|
201
226
|
it('warns about deprecated brsconfig.json', async () => {
|
|
202
227
|
fsExtra.outputFileSync(`${testHelpers_spec_1.rootDir}/subdir1/brsconfig.json`, '');
|
|
203
228
|
await project.activate({
|
|
204
|
-
|
|
229
|
+
bsconfigPath: 'subdir1/brsconfig.json',
|
|
230
|
+
projectDir: testHelpers_spec_1.rootDir,
|
|
205
231
|
workspaceFolder: testHelpers_spec_1.rootDir,
|
|
206
|
-
|
|
232
|
+
projectKey: undefined
|
|
207
233
|
});
|
|
208
234
|
await (0, testHelpers_spec_1.expectDiagnosticsAsync)(project, [
|
|
209
235
|
DiagnosticMessages_1.DiagnosticMessages.brsConfigJsonIsDeprecated()
|
|
@@ -217,15 +243,16 @@ describe('Project', () => {
|
|
|
217
243
|
deferred.resolve(event.message);
|
|
218
244
|
});
|
|
219
245
|
await project['getConfigFilePath']({
|
|
220
|
-
|
|
221
|
-
|
|
246
|
+
projectDir: testHelpers_spec_1.rootDir,
|
|
247
|
+
bsconfigPath: (0, util_1.standardizePath) `${testHelpers_spec_1.rootDir}/bsconfig.json`
|
|
222
248
|
});
|
|
223
249
|
(0, chai_1.expect)((await deferred.promise).startsWith('Cannot find config file')).to.be.true;
|
|
224
250
|
});
|
|
225
251
|
it('finds brsconfig.json', async () => {
|
|
226
252
|
fsExtra.outputFileSync(`${testHelpers_spec_1.rootDir}/brsconfig.json`, '');
|
|
227
253
|
(0, chai_1.expect)(await project['getConfigFilePath']({
|
|
228
|
-
|
|
254
|
+
projectDir: testHelpers_spec_1.rootDir,
|
|
255
|
+
bsconfigPath: undefined
|
|
229
256
|
})).to.eql((0, util_1.standardizePath) `${testHelpers_spec_1.rootDir}/brsconfig.json`);
|
|
230
257
|
});
|
|
231
258
|
it('does not crash on undefined', async () => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Project.spec.js","sourceRoot":"","sources":["../../src/lsp/Project.spec.ts"],"names":[],"mappings":";;AAAA,+BAA8B;AAC9B,0DAAwG;AACxG,oCAAoC;AACpC,kCAA+C;AAC/C,0CAAuC;AACvC,8DAA2D;AAC3D,uCAAoC;AACpC,iCAAsC;AACtC,oCAAiC;AACjC,MAAM,KAAK,GAAG,IAAA,qBAAa,GAAE,CAAC;AAE9B,QAAQ,CAAC,SAAS,EAAE,GAAG,EAAE;IACrB,IAAI,OAAgB,CAAC;IAErB,UAAU,CAAC,GAAG,EAAE;QACZ,KAAK,CAAC,OAAO,EAAE,CAAC;QAChB,OAAO,GAAG,IAAI,iBAAO,EAAE,CAAC;QACxB,OAAO,CAAC,YAAY,CAAC,0BAAO,CAAC,CAAC;IAClC,CAAC,CAAC,CAAC;IAEH,SAAS,CAAC,GAAG,EAAE;QACX,KAAK,CAAC,OAAO,EAAE,CAAC;QAChB,OAAO,CAAC,YAAY,CAAC,0BAAO,CAAC,CAAC;QAC9B,OAAO,CAAC,OAAO,EAAE,CAAC;IACtB,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,IAAI,EAAE,GAAG,EAAE;QAChB,EAAE,CAAC,cAAc,EAAE,KAAK,IAAI,EAAE;YAC1B,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;YAC1B,MAAM,GAAG,GAAG,OAAO,CAAC,EAAE,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;YAC5C,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC,aAAa,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,CAAC;YAC1D,IAAA,aAAM,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAEjC,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC,aAAa,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,CAAC;YAC1D,IAAA,aAAM,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAEjC,GAAG,EAAE,CAAC;YAEN,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC,aAAa,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,CAAC;YAC1D,IAAA,aAAM,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QACrC,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;QACtB,EAAE,CAAC,4DAA4D,EAAE,KAAK,IAAI,EAAE;YACxE,mEAAmE;YACnE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE;gBACzB,OAAO,CAAC,cAAc,CAAC,GAAG,0BAAO,wBAAwB,CAAC,MAAM,EAAE,6BAA6B,CAAC,gBAAgB,CAAC,CAAC;aACrH;YACD,MAAM,OAAO,CAAC,QAAQ,CAAC;gBACnB,
|
|
1
|
+
{"version":3,"file":"Project.spec.js","sourceRoot":"","sources":["../../src/lsp/Project.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,7 +3,8 @@ import type { Hover, Position, Range, Location, SignatureHelp, DocumentSymbol, W
|
|
|
3
3
|
import type { FileChange, MaybePromise } from '../interfaces';
|
|
4
4
|
import { BusyStatusTracker } from '../BusyStatusTracker';
|
|
5
5
|
import { PathFilterer } from './PathFilterer';
|
|
6
|
-
import type { Logger } from '../logging';
|
|
6
|
+
import type { Logger, LogLevel } from '../logging';
|
|
7
|
+
import type { BrightScriptProjectConfiguration } from '../LanguageServer';
|
|
7
8
|
/**
|
|
8
9
|
* Manages all brighterscript projects for the language server
|
|
9
10
|
*/
|
|
@@ -141,10 +142,9 @@ export declare class ProjectManager {
|
|
|
141
142
|
* Scan a given workspace for all `bsconfig.json` files. If at least one is found, then only folders who have bsconfig.json are returned.
|
|
142
143
|
* If none are found, then the workspaceFolder itself is treated as a project
|
|
143
144
|
*/
|
|
144
|
-
private
|
|
145
|
+
private discoverProjectsForWorkspace;
|
|
145
146
|
/**
|
|
146
147
|
* Returns true if we have this project, or false if we don't
|
|
147
|
-
* @param projectPath path to the project
|
|
148
148
|
* @returns true if the project exists, or false if it doesn't
|
|
149
149
|
*/
|
|
150
150
|
private hasProject;
|
|
@@ -211,11 +211,24 @@ export interface WorkspaceConfig {
|
|
|
211
211
|
*/
|
|
212
212
|
excludePatterns?: string[];
|
|
213
213
|
/**
|
|
214
|
-
*
|
|
215
|
-
*/
|
|
216
|
-
|
|
217
|
-
/**
|
|
218
|
-
*
|
|
219
|
-
*/
|
|
220
|
-
|
|
214
|
+
* A list of project paths that should be used to create projects in place of discovery.
|
|
215
|
+
*/
|
|
216
|
+
projects?: BrightScriptProjectConfiguration[];
|
|
217
|
+
/**
|
|
218
|
+
* Language server configuration options
|
|
219
|
+
*/
|
|
220
|
+
languageServer: {
|
|
221
|
+
/**
|
|
222
|
+
* Should the projects in this workspace be run in their own dedicated worker threads, or all run on the main thread
|
|
223
|
+
*/
|
|
224
|
+
enableThreading: boolean;
|
|
225
|
+
/**
|
|
226
|
+
* Should the language server automatically discover projects in this workspace?
|
|
227
|
+
*/
|
|
228
|
+
enableProjectDiscovery: boolean;
|
|
229
|
+
/**
|
|
230
|
+
* The log level to use for this workspace
|
|
231
|
+
*/
|
|
232
|
+
logLevel?: LogLevel | string;
|
|
233
|
+
};
|
|
221
234
|
}
|
|
@@ -121,7 +121,7 @@ class ProjectManager {
|
|
|
121
121
|
if (normalProjectsThatHandledThisFile.length > 0) {
|
|
122
122
|
//if there's a standalone project for this file, delete it
|
|
123
123
|
if (this.getStandaloneProject(action.srcPath, false)) {
|
|
124
|
-
this.logger.debug(`flushDocumentChanges: removing standalone project because the following normal projects handled the file: '${action.srcPath}', projects:`, normalProjectsThatHandledThisFile.map(x => x.project
|
|
124
|
+
this.logger.debug(`flushDocumentChanges: removing standalone project because the following normal projects handled the file: '${action.srcPath}', projects:`, normalProjectsThatHandledThisFile.map(x => util_1.util.getProjectLogName(x.project)));
|
|
125
125
|
this.removeStandaloneProject(action.srcPath);
|
|
126
126
|
}
|
|
127
127
|
// create a standalone project if this action was handled by zero normal projects.
|
|
@@ -157,10 +157,13 @@ class ProjectManager {
|
|
|
157
157
|
this.logger.log(`Creating standalone project for '${srcPath}'`);
|
|
158
158
|
const projectNumber = ProjectManager.projectNumberSequence++;
|
|
159
159
|
const rootDir = path.join(__dirname, `standalone-project-${projectNumber}`);
|
|
160
|
-
const
|
|
160
|
+
const projectConfig = {
|
|
161
161
|
//these folders don't matter for standalone projects
|
|
162
162
|
workspaceFolder: rootDir,
|
|
163
|
-
|
|
163
|
+
projectDir: rootDir,
|
|
164
|
+
//there's no bsconfig.json for standalone projects, so projectKey is the same as the dir
|
|
165
|
+
projectKey: rootDir,
|
|
166
|
+
bsconfigPath: undefined,
|
|
164
167
|
enableThreading: false,
|
|
165
168
|
projectNumber: projectNumber,
|
|
166
169
|
files: [{
|
|
@@ -168,11 +171,11 @@ class ProjectManager {
|
|
|
168
171
|
dest: 'source/standalone.brs'
|
|
169
172
|
}]
|
|
170
173
|
};
|
|
171
|
-
const project = this.constructProject(
|
|
174
|
+
const project = this.constructProject(projectConfig);
|
|
172
175
|
project.srcPath = srcPath;
|
|
173
176
|
project.isStandaloneProject = true;
|
|
174
177
|
this.standaloneProjects.set(srcPath, project);
|
|
175
|
-
await this.activateProject(project,
|
|
178
|
+
await this.activateProject(project, projectConfig);
|
|
176
179
|
}
|
|
177
180
|
removeStandaloneProject(srcPath) {
|
|
178
181
|
srcPath = util_1.util.standardizePath(srcPath);
|
|
@@ -235,30 +238,37 @@ class ProjectManager {
|
|
|
235
238
|
this.syncPromise = (async () => {
|
|
236
239
|
//build a list of unique projects across all workspace folders
|
|
237
240
|
let projectConfigs = (await Promise.all(workspaceConfigs.map(async (workspaceConfig) => {
|
|
238
|
-
const
|
|
239
|
-
return
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
241
|
+
const discoveredProjects = await this.discoverProjectsForWorkspace(workspaceConfig);
|
|
242
|
+
return discoveredProjects.map(discoveredProject => {
|
|
243
|
+
var _a;
|
|
244
|
+
return ({
|
|
245
|
+
name: discoveredProject === null || discoveredProject === void 0 ? void 0 : discoveredProject.name,
|
|
246
|
+
projectKey: (0, util_1.standardizePath) `${(_a = discoveredProject.bsconfigPath) !== null && _a !== void 0 ? _a : discoveredProject.dir}`,
|
|
247
|
+
projectDir: (0, util_1.standardizePath) `${discoveredProject.dir}`,
|
|
248
|
+
bsconfigPath: discoveredProject === null || discoveredProject === void 0 ? void 0 : discoveredProject.bsconfigPath,
|
|
249
|
+
workspaceFolder: (0, util_1.standardizePath) `${workspaceConfig.workspaceFolder}`,
|
|
250
|
+
excludePatterns: workspaceConfig.excludePatterns,
|
|
251
|
+
enableThreading: workspaceConfig.languageServer.enableThreading
|
|
252
|
+
});
|
|
253
|
+
});
|
|
245
254
|
}))).flat(1);
|
|
255
|
+
//TODO handle when a project came from the workspace config .projects array (it should probably never be filtered out)
|
|
246
256
|
//filter the project paths to only include those that are allowed by the path filterer
|
|
247
|
-
projectConfigs = this.pathFilterer.filter(projectConfigs, x => x.
|
|
257
|
+
projectConfigs = this.pathFilterer.filter(projectConfigs, x => x.projectKey);
|
|
248
258
|
//delete projects not represented in the list
|
|
249
259
|
for (const project of this.projects) {
|
|
250
260
|
//we can't find this existing project in our new list, so scrap it
|
|
251
|
-
if (!projectConfigs.find(x => x.
|
|
261
|
+
if (!projectConfigs.find(x => x.projectKey === project.projectKey)) {
|
|
252
262
|
this.removeProject(project);
|
|
253
263
|
}
|
|
254
264
|
}
|
|
255
265
|
// skip projects we already have (they're already loaded...no need to reload them)
|
|
256
266
|
projectConfigs = projectConfigs.filter(x => {
|
|
257
|
-
return !this.hasProject(x
|
|
267
|
+
return !this.hasProject(x);
|
|
258
268
|
});
|
|
259
|
-
//dedupe by
|
|
269
|
+
//dedupe by projectKey
|
|
260
270
|
projectConfigs = [
|
|
261
|
-
...projectConfigs.reduce((acc, x) => acc.set(x.
|
|
271
|
+
...projectConfigs.reduce((acc, x) => acc.set(x.projectKey, x), new Map()).values()
|
|
262
272
|
];
|
|
263
273
|
//create missing projects
|
|
264
274
|
await Promise.all(projectConfigs.map(async (config) => {
|
|
@@ -367,7 +377,7 @@ class ProjectManager {
|
|
|
367
377
|
* Given a project, forcibly reload it by removing it and re-adding it
|
|
368
378
|
*/
|
|
369
379
|
async reloadProject(project) {
|
|
370
|
-
this.logger.log('Reloading project', { projectPath: project.
|
|
380
|
+
this.logger.log('Reloading project', { projectPath: project.projectKey });
|
|
371
381
|
this.removeProject(project);
|
|
372
382
|
project = await this.createAndActivateProject(project.activateOptions);
|
|
373
383
|
}
|
|
@@ -513,36 +523,89 @@ class ProjectManager {
|
|
|
513
523
|
* Scan a given workspace for all `bsconfig.json` files. If at least one is found, then only folders who have bsconfig.json are returned.
|
|
514
524
|
* If none are found, then the workspaceFolder itself is treated as a project
|
|
515
525
|
*/
|
|
516
|
-
async
|
|
526
|
+
async discoverProjectsForWorkspace(workspaceConfig) {
|
|
517
527
|
var _a;
|
|
518
|
-
//
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
528
|
+
//config may provide a list of project paths. If we have these, no other discovery is permitted
|
|
529
|
+
if (Array.isArray(workspaceConfig.projects) && workspaceConfig.projects.length > 0) {
|
|
530
|
+
this.logger.debug(`Using project paths from workspace config`, workspaceConfig.projects);
|
|
531
|
+
const projectConfigs = workspaceConfig.projects.reduce((acc, project) => {
|
|
532
|
+
//skip this project if it's disabled or we don't have a path
|
|
533
|
+
if (project.disabled || !project.path) {
|
|
534
|
+
return acc;
|
|
535
|
+
}
|
|
536
|
+
//ensure the project path is absolute
|
|
537
|
+
if (!path.isAbsolute(project.path)) {
|
|
538
|
+
project.path = path.resolve(workspaceConfig.workspaceFolder, project.path);
|
|
539
|
+
}
|
|
540
|
+
//skip this project if the path does't exist
|
|
541
|
+
if (!fsExtra.existsSync(project.path)) {
|
|
542
|
+
return acc;
|
|
543
|
+
}
|
|
544
|
+
//if the project is a directory
|
|
545
|
+
if (fsExtra.statSync(project.path).isDirectory()) {
|
|
546
|
+
acc.push({
|
|
547
|
+
name: project.name,
|
|
548
|
+
bsconfigPath: undefined,
|
|
549
|
+
dir: project.path
|
|
550
|
+
});
|
|
551
|
+
//it's a path to a file (hopefully bsconfig.json)
|
|
552
|
+
}
|
|
553
|
+
else {
|
|
554
|
+
acc.push({
|
|
555
|
+
name: project.name,
|
|
556
|
+
dir: path.dirname(project.path),
|
|
557
|
+
bsconfigPath: project.path
|
|
558
|
+
});
|
|
559
|
+
}
|
|
560
|
+
return acc;
|
|
561
|
+
}, []);
|
|
562
|
+
//if we didn't find any valid project paths, log a warning. having zero projects is acceptable, it typically means the user wanted to disable discovery or
|
|
563
|
+
//disabled all their projects on purpose
|
|
564
|
+
if (projectConfigs.length === 0) {
|
|
565
|
+
this.logger.warn(`No valid project paths found in workspace config`, JSON.stringify(workspaceConfig.projects, null, 4));
|
|
566
|
+
}
|
|
567
|
+
return projectConfigs;
|
|
568
|
+
}
|
|
569
|
+
//automatic discovery disabled?
|
|
570
|
+
if (!workspaceConfig.languageServer.enableProjectDiscovery) {
|
|
571
|
+
return [{
|
|
572
|
+
dir: workspaceConfig.workspaceFolder
|
|
573
|
+
}];
|
|
574
|
+
}
|
|
575
|
+
//get the list of exclude patterns, negate them so they actually work like excludes), and coerce to forward slashes since that's what fast-glob expects
|
|
576
|
+
const excludePatterns = ((_a = workspaceConfig.excludePatterns) !== null && _a !== void 0 ? _a : []).map(x => (0, util_1.standardizePath) `!${x}`.replace(/[\\/]+/g, '/'));
|
|
577
|
+
let files = await fastGlob(['**/bsconfig.json', ...excludePatterns], {
|
|
578
|
+
cwd: workspaceConfig.workspaceFolder,
|
|
579
|
+
followSymbolicLinks: false,
|
|
580
|
+
absolute: true,
|
|
581
|
+
onlyFiles: true
|
|
582
|
+
});
|
|
525
583
|
//filter the files to only include those that are allowed by the path filterer
|
|
526
|
-
files = this.pathFilterer.filter(files
|
|
584
|
+
files = this.pathFilterer.filter(files);
|
|
527
585
|
//if we found at least one bsconfig.json, then ALL projects must have a bsconfig.json.
|
|
528
586
|
if (files.length > 0) {
|
|
529
|
-
return files.map(file => (
|
|
587
|
+
return files.map(file => ({
|
|
588
|
+
dir: (0, util_1.standardizePath) `${path.dirname(file)}`,
|
|
589
|
+
bsconfigPath: (0, util_1.standardizePath) `${file}`
|
|
590
|
+
}));
|
|
530
591
|
}
|
|
531
592
|
//look for roku project folders
|
|
532
593
|
let rokuLikeDirs = (await Promise.all(
|
|
533
594
|
//find all folders containing a `manifest` file
|
|
534
|
-
(await
|
|
535
|
-
|
|
536
|
-
|
|
537
|
-
|
|
538
|
-
|
|
539
|
-
|
|
595
|
+
(await fastGlob(['**/manifest', ...excludePatterns], {
|
|
596
|
+
cwd: workspaceConfig.workspaceFolder,
|
|
597
|
+
followSymbolicLinks: false,
|
|
598
|
+
absolute: true,
|
|
599
|
+
onlyFiles: true
|
|
600
|
+
})).map(async (manifestEntry) => {
|
|
601
|
+
const manifestDir = path.dirname(manifestEntry);
|
|
602
|
+
//TODO validate that manifest is a Roku manifest
|
|
540
603
|
const files = await roku_deploy_1.rokuDeploy.getFilePaths([
|
|
541
604
|
'source/**/*.{brs,bs}',
|
|
542
605
|
...excludePatterns
|
|
543
606
|
], manifestDir);
|
|
544
607
|
if (files.length > 0) {
|
|
545
|
-
return manifestDir
|
|
608
|
+
return (0, util_1.standardizePath) `${manifestDir}`;
|
|
546
609
|
}
|
|
547
610
|
})
|
|
548
611
|
//throw out nulls
|
|
@@ -550,18 +613,21 @@ class ProjectManager {
|
|
|
550
613
|
//throw out any directories that are not allowed by the path filterer
|
|
551
614
|
rokuLikeDirs = this.pathFilterer.filter(rokuLikeDirs, srcPath => srcPath);
|
|
552
615
|
if (rokuLikeDirs.length > 0) {
|
|
553
|
-
return rokuLikeDirs
|
|
616
|
+
return rokuLikeDirs.map(file => ({
|
|
617
|
+
dir: file
|
|
618
|
+
}));
|
|
554
619
|
}
|
|
555
620
|
//treat the workspace folder as a brightscript project itself
|
|
556
|
-
return [
|
|
621
|
+
return [{
|
|
622
|
+
dir: workspaceConfig.workspaceFolder
|
|
623
|
+
}];
|
|
557
624
|
}
|
|
558
625
|
/**
|
|
559
626
|
* Returns true if we have this project, or false if we don't
|
|
560
|
-
* @param projectPath path to the project
|
|
561
627
|
* @returns true if the project exists, or false if it doesn't
|
|
562
628
|
*/
|
|
563
|
-
hasProject(
|
|
564
|
-
return !!this.getProject(
|
|
629
|
+
hasProject(config) {
|
|
630
|
+
return !!this.getProject(config);
|
|
565
631
|
}
|
|
566
632
|
/**
|
|
567
633
|
* Get a project with the specified path
|
|
@@ -569,16 +635,20 @@ class ProjectManager {
|
|
|
569
635
|
* @returns a project, or undefined if no project was found
|
|
570
636
|
*/
|
|
571
637
|
getProject(param) {
|
|
572
|
-
|
|
573
|
-
|
|
638
|
+
var _a, _b;
|
|
639
|
+
const projectKey = util_1.util.standardizePath((typeof param === 'string') ? param : ((_b = (_a = param === null || param === void 0 ? void 0 : param.projectKey) !== null && _a !== void 0 ? _a : param === null || param === void 0 ? void 0 : param.bsconfigPath) !== null && _b !== void 0 ? _b : param === null || param === void 0 ? void 0 : param.projectDir));
|
|
640
|
+
if (!projectKey) {
|
|
641
|
+
return;
|
|
642
|
+
}
|
|
643
|
+
return this.projects.find(x => x.projectKey === projectKey);
|
|
574
644
|
}
|
|
575
645
|
/**
|
|
576
646
|
* Remove a project from the language server
|
|
577
647
|
*/
|
|
578
648
|
removeProject(project) {
|
|
579
|
-
const idx = this.projects.findIndex(x => x.
|
|
649
|
+
const idx = this.projects.findIndex(x => x.projectKey === (project === null || project === void 0 ? void 0 : project.projectKey));
|
|
580
650
|
if (idx > -1) {
|
|
581
|
-
this.logger.log('Removing project', {
|
|
651
|
+
this.logger.log('Removing project', { projectKey: project.projectKey, projectNumber: project.projectNumber });
|
|
582
652
|
this.projects.splice(idx, 1);
|
|
583
653
|
}
|
|
584
654
|
//anytime we remove a project, we should emit an event that clears all of its diagnostics
|
|
@@ -595,7 +665,8 @@ class ProjectManager {
|
|
|
595
665
|
if (config.projectNumber !== undefined) {
|
|
596
666
|
return config.projectNumber;
|
|
597
667
|
}
|
|
598
|
-
|
|
668
|
+
const key = (0, util_1.standardizePath) `${config.projectKey}` + '-' + (0, util_1.standardizePath) `${config.workspaceFolder}` + '-' + (0, util_1.standardizePath) `${config.bsconfigPath}`;
|
|
669
|
+
return ProjectManager.projectNumberCache.getOrAdd(key, () => {
|
|
599
670
|
return ProjectManager.projectNumberSequence++;
|
|
600
671
|
});
|
|
601
672
|
}
|
|
@@ -605,21 +676,18 @@ class ProjectManager {
|
|
|
605
676
|
*/
|
|
606
677
|
constructProject(config) {
|
|
607
678
|
//skip this project if we already have it
|
|
608
|
-
if (this.hasProject(config
|
|
609
|
-
return this.getProject(config
|
|
679
|
+
if (this.hasProject(config)) {
|
|
680
|
+
return this.getProject(config);
|
|
610
681
|
}
|
|
611
682
|
config.projectNumber = this.getProjectNumber(config);
|
|
612
|
-
const projectIdentifier = `prj${config.projectNumber}`;
|
|
613
683
|
let project = config.enableThreading
|
|
614
684
|
? new WorkerThreadProject_1.WorkerThreadProject({
|
|
615
|
-
logger: this.logger.createLogger()
|
|
616
|
-
projectIdentifier: projectIdentifier
|
|
685
|
+
logger: this.logger.createLogger()
|
|
617
686
|
})
|
|
618
687
|
: new Project_1.Project({
|
|
619
|
-
logger: this.logger.createLogger()
|
|
620
|
-
projectIdentifier: projectIdentifier
|
|
688
|
+
logger: this.logger.createLogger()
|
|
621
689
|
});
|
|
622
|
-
this.logger.log(`Created project #${config.projectNumber} for: "${config.
|
|
690
|
+
this.logger.log(`Created project #${config.projectNumber} for: "${config.projectKey}" (${config.enableThreading ? 'worker thread' : 'main thread'})`);
|
|
623
691
|
this.projects.push(project);
|
|
624
692
|
//pipe all project-specific events through our emitter, and include the project reference
|
|
625
693
|
project.on('all', (eventName, data) => {
|
|
@@ -633,16 +701,16 @@ class ProjectManager {
|
|
|
633
701
|
*/
|
|
634
702
|
async createAndActivateProject(config) {
|
|
635
703
|
//skip this project if we already have it
|
|
636
|
-
if (this.hasProject(config
|
|
637
|
-
return this.getProject(config.
|
|
704
|
+
if (this.hasProject(config)) {
|
|
705
|
+
return this.getProject(config.projectKey);
|
|
638
706
|
}
|
|
639
707
|
const project = this.constructProject(config);
|
|
640
708
|
await this.activateProject(project, config);
|
|
641
709
|
return project;
|
|
642
710
|
}
|
|
643
711
|
async activateProject(project, config) {
|
|
644
|
-
this.logger.debug('Activating project', project
|
|
645
|
-
projectPath: config === null || config === void 0 ? void 0 : config.
|
|
712
|
+
this.logger.debug('Activating project', util_1.util.getProjectLogName(project), {
|
|
713
|
+
projectPath: config === null || config === void 0 ? void 0 : config.projectKey,
|
|
646
714
|
bsconfigPath: config.bsconfigPath
|
|
647
715
|
});
|
|
648
716
|
await project.activate(config);
|