@zzzen/pyright-internal 1.2.0-dev.20230409 → 1.2.0-dev.20230416
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/analyzer/codeFlowEngine.js +5 -0
- package/dist/analyzer/codeFlowEngine.js.map +1 -1
- package/dist/analyzer/constructorTransform.js +112 -49
- package/dist/analyzer/constructorTransform.js.map +1 -1
- package/dist/analyzer/declarationUtils.js +2 -1
- package/dist/analyzer/declarationUtils.js.map +1 -1
- package/dist/analyzer/enums.d.ts +1 -1
- package/dist/analyzer/enums.js +114 -55
- package/dist/analyzer/enums.js.map +1 -1
- package/dist/analyzer/parseTreeUtils.js +9 -4
- package/dist/analyzer/parseTreeUtils.js.map +1 -1
- package/dist/analyzer/patternMatching.js +1 -0
- package/dist/analyzer/patternMatching.js.map +1 -1
- package/dist/analyzer/program.js +77 -22
- package/dist/analyzer/program.js.map +1 -1
- package/dist/analyzer/service.js +1 -1
- package/dist/analyzer/service.js.map +1 -1
- package/dist/analyzer/sourceMapper.js +1 -1
- package/dist/analyzer/sourceMapper.js.map +1 -1
- package/dist/analyzer/typeEvaluator.js +103 -26
- package/dist/analyzer/typeEvaluator.js.map +1 -1
- package/dist/analyzer/typeEvaluatorTypes.d.ts +4 -2
- package/dist/analyzer/typeEvaluatorTypes.js.map +1 -1
- package/dist/analyzer/typePrinter.d.ts +1 -1
- package/dist/analyzer/typePrinter.js +21 -18
- package/dist/analyzer/typePrinter.js.map +1 -1
- package/dist/analyzer/typeUtils.js +4 -4
- package/dist/analyzer/typeUtils.js.map +1 -1
- package/dist/analyzer/types.d.ts +2 -1
- package/dist/analyzer/types.js +10 -2
- package/dist/analyzer/types.js.map +1 -1
- package/dist/common/configOptions.d.ts +1 -1
- package/dist/common/configOptions.js +3 -3
- package/dist/common/configOptions.js.map +1 -1
- package/dist/common/fullAccessHost.d.ts +2 -1
- package/dist/common/fullAccessHost.js +11 -1
- package/dist/common/fullAccessHost.js.map +1 -1
- package/dist/common/host.d.ts +3 -2
- package/dist/common/host.js +1 -1
- package/dist/common/host.js.map +1 -1
- package/dist/languageService/autoImporter.d.ts +1 -1
- package/dist/languageService/autoImporter.js +2 -2
- package/dist/languageService/autoImporter.js.map +1 -1
- package/dist/languageService/completionProvider.js +144 -87
- package/dist/languageService/completionProvider.js.map +1 -1
- package/dist/languageService/completionProviderUtils.js +11 -3
- package/dist/languageService/completionProviderUtils.js.map +1 -1
- package/dist/languageService/documentSymbolCollector.js +1 -1
- package/dist/languageService/documentSymbolCollector.js.map +1 -1
- package/dist/languageService/hoverProvider.js +13 -2
- package/dist/languageService/hoverProvider.js.map +1 -1
- package/dist/languageService/indentationUtils.js +3 -3
- package/dist/languageService/indentationUtils.js.map +1 -1
- package/dist/languageService/insertionPointUtils.js +2 -2
- package/dist/languageService/insertionPointUtils.js.map +1 -1
- package/dist/tests/completions.test.js +239 -0
- package/dist/tests/completions.test.js.map +1 -1
- package/dist/tests/fourslash/completions.inherited.function.docFromStub.fourslash.js +1 -1
- package/dist/tests/fourslash/completions.inherited.function.docFromStub.fourslash.js.map +1 -1
- package/dist/tests/fourslash/completions.override2.fourslash.js +1 -1
- package/dist/tests/fourslash/completions.override2.fourslash.js.map +1 -1
- package/dist/tests/fourslash/completions.variableDocStrings.fourslash.js +1 -1
- package/dist/tests/fourslash/completions.variableDocStrings.fourslash.js.map +1 -1
- package/dist/tests/fourslash/hover.docstring.overloads.fourslash.js +2 -2
- package/dist/tests/fourslash/hover.docstring.overloads.fourslash.js.map +1 -1
- package/dist/tests/fourslash/hover.variable.docString.fourslash.js +1 -1
- package/dist/tests/fourslash/hover.variable.docString.fourslash.js.map +1 -1
- package/dist/tests/harness/fourslash/fourSlashParser.js +1 -1
- package/dist/tests/harness/fourslash/fourSlashParser.js.map +1 -1
- package/dist/tests/harness/testHost.js +1 -1
- package/dist/tests/harness/testHost.js.map +1 -1
- package/dist/tests/harness/vfs/factory.js +2 -2
- package/dist/tests/harness/vfs/factory.js.map +1 -1
- package/dist/tests/harness/vfs/filesystem.js +26 -25
- package/dist/tests/harness/vfs/filesystem.js.map +1 -1
- package/dist/tests/hoverProvider.test.js +6 -0
- package/dist/tests/hoverProvider.test.js.map +1 -1
- package/dist/tests/moveSymbol.insertion.test.js +25 -4
- package/dist/tests/moveSymbol.insertion.test.js.map +1 -1
- package/dist/tests/typeEvaluator1.test.js +8 -0
- package/dist/tests/typeEvaluator1.test.js.map +1 -1
- package/dist/tests/typeEvaluator2.test.js +4 -0
- package/dist/tests/typeEvaluator2.test.js.map +1 -1
- package/dist/tests/typeEvaluator3.test.js +4 -0
- package/dist/tests/typeEvaluator3.test.js.map +1 -1
- package/dist/tests/typePrinter.test.js +5 -0
- package/dist/tests/typePrinter.test.js.map +1 -1
- package/dist/workspaceFactory.js +1 -1
- package/dist/workspaceFactory.js.map +1 -1
- package/package.json +1 -1
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"patternMatching.js","sourceRoot":"","sources":["../../../src/analyzer/patternMatching.ts"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"patternMatching.js","sourceRoot":"","sources":["../../../src/analyzer/patternMatching.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;;AAEH,+DAAwD;AACxD,2CAAyC;AACzC,qDAA0D;AAC1D,+DAA2D;AAC3D,uDAAqD;AAcrD,yDAAiD;AACjD,yDAA+E;AAC/E,6CAA2D;AAE3D,6CAAwD;AACxD,mCAgBiB;AACjB,2CAkBqB;AACrB,qDAAkD;AAElD,0EAA0E;AAC1E,yCAAyC;AACzC,MAAM,wBAAwB,GAAG;IAC7B,eAAe;IACf,oBAAoB;IACpB,gBAAgB;IAChB,eAAe;IACf,gBAAgB;IAChB,oBAAoB;IACpB,cAAc;IACd,eAAe;IACf,cAAc;IACd,cAAc;IACd,gBAAgB;CACnB,CAAC;AAoBF,SAAgB,wBAAwB,CACpC,SAAwB,EACxB,IAAU,EACV,OAAwB,EACxB,cAAuB;IAEvB,QAAQ,OAAO,CAAC,QAAQ,EAAE;QACtB,6BAAkC,CAAC,CAAC;YAChC,OAAO,gCAAgC,CAAC,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,cAAc,CAAC,CAAC;SACrF;QAED,4BAAiC,CAAC,CAAC;YAC/B,OAAO,+BAA+B,CAAC,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,cAAc,CAAC,CAAC;SACpF;QAED,0BAA+B,CAAC,CAAC;YAC7B,OAAO,6BAA6B,CAAC,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,cAAc,CAAC,CAAC;SAClF;QAED,uBAA4B,CAAC,CAAC;YAC1B,OAAO,0BAA0B,CAAC,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,cAAc,CAAC,CAAC;SAC/E;QAED,4BAAiC,CAAC,CAAC;YAC/B,OAAO,+BAA+B,CAAC,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,cAAc,CAAC,CAAC;SACpF;QAED,0BAA+B,CAAC,CAAC;YAC7B,OAAO,6BAA6B,CAAC,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,cAAc,CAAC,CAAC;SAClF;QAED,4BAAiC,CAAC,CAAC;YAC/B,0EAA0E;YAC1E,OAAO,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,iBAAS,CAAC,WAAW,EAAE,CAAC;SAC1D;QAED,kBAAwB,CAAC,CAAC;YACtB,OAAO,IAAI,CAAC;SACf;KACJ;AACL,CAAC;AAxCD,4DAwCC;AAED,8DAA8D;AAC9D,6CAA6C;AAC7C,SAAgB,qBAAqB,CAAC,SAAwB,EAAE,OAAwB,EAAE,WAAiB;IACvG,IAAI,IAAA,eAAO,EAAC,WAAW,CAAC,EAAE;QACtB,wBAAwB,CAAC,SAAS,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;KAC7D;SAAM,IAAI,OAAO,CAAC,QAAQ,uBAA4B,IAAI,OAAO,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE;QACtF,4CAA4C;QAC5C,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE;YACrC,MAAM,gBAAgB,GAAG,wBAAwB,CAC7C,SAAS,EACT,WAAW,EACX,SAAS;YACT,oBAAoB,CAAC,IAAI,CAC5B,CAAC;YAEF,IAAI,IAAA,eAAO,EAAC,gBAAgB,CAAC,EAAE;gBAC3B,wBAAwB,CAAC,SAAS,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;aAC/D;YAED,WAAW,GAAG,wBAAwB,CAAC,SAAS,EAAE,WAAW,EAAE,SAAS,EAAE,oBAAoB,CAAC,KAAK,CAAC,CAAC;QAC1G,CAAC,CAAC,CAAC;KACN;SAAM;QACH,MAAM,gBAAgB,GAAG,wBAAwB,CAAC,SAAS,EAAE,WAAW,EAAE,OAAO,EAAE,oBAAoB,CAAC,IAAI,CAAC,CAAC;QAE9G,IAAI,IAAA,eAAO,EAAC,gBAAgB,CAAC,EAAE;YAC3B,wBAAwB,CAAC,SAAS,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;SAC7D;KACJ;AACL,CAAC;AA1BD,sDA0BC;AAED,SAAS,gCAAgC,CACrC,SAAwB,EACxB,IAAU,EACV,OAA4B,EAC5B,cAAuB;IAEvB,IAAI,GAAG,IAAA,+CAAmC,EAAC,IAAI,CAAC,CAAC;IACjD,IAAI,YAAY,GAAG,sBAAsB,CAAC,SAAS,EAAE,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;IAE3G,+CAA+C;IAC/C,YAAY,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE;QACzC,IAAI,KAAK,CAAC,eAAe,EAAE;YACvB,IAAI,cAAc,EAAE;gBAChB,OAAO,KAAK,CAAC;aAChB;iBAAM;gBACH,OAAO,IAAI,CAAC;aACf;SACJ;QAED,IAAI,gBAAgB,GAAG,IAAI,CAAC;QAC5B,IAAI,eAAe,GAAG,IAAI,CAAC;QAC3B,MAAM,kBAAkB,GAAW,EAAE,CAAC;QACtC,IAAI,cAAc,GAAG,KAAK,CAAC,OAAO,CAAC;QAEnC,6EAA6E;QAC7E,yEAAyE;QACzE,6CAA6C;QAC7C,IAAI,KAAK,CAAC,qBAAqB,EAAE;YAC7B,IAAI,OAAO,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,CAAC,cAAc,KAAK,CAAC,EAAE;gBAC9D,eAAe,GAAG,KAAK,CAAC;aAC3B;SACJ;QAED,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,aAAa,EAAE,KAAK,EAAE,EAAE;YAC7C,MAAM,SAAS,GAAG,6BAA6B,CAC3C,SAAS,EACT,OAAO,EACP,KAAK,EACL,KAAK,EACL,OAAO,CAAC,OAAO,CAAC,MAAM,EACtB,OAAO,CAAC,cAAc;YACtB,qBAAqB,CAAC,IAAI;YAC1B,qBAAqB,CAAC,KAAK,CAC9B,CAAC;YAEF,MAAM,iBAAiB,GAAG,wBAAwB,CAAC,SAAS,EAAE,SAAS,EAAE,aAAa,EAAE,cAAc,CAAC,CAAC;YAExG,IAAI,cAAc,EAAE;gBAChB,IAAI,KAAK,KAAK,OAAO,CAAC,cAAc,EAAE;oBAClC,IACI,IAAA,uBAAe,EAAC,iBAAiB,CAAC;wBAClC,iBAAiB,CAAC,kBAAkB;wBACpC,CAAC,IAAA,iCAAqB,EAAC,iBAAiB,CAAC;wBACzC,iBAAiB,CAAC,kBAAkB,EACtC;wBACE,IAAA,6BAAW,EACP,kBAAkB,EAClB,iBAAiB,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAC1D,CAAC;qBACL;yBAAM;wBACH,kBAAkB,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;wBAC3C,cAAc,GAAG,KAAK,CAAC;qBAC1B;iBACJ;qBAAM;oBACH,kBAAkB,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;oBAE3C,IAAI,IAAA,eAAO,EAAC,iBAAiB,CAAC,EAAE;wBAC5B,gBAAgB,GAAG,KAAK,CAAC;qBAC5B;iBACJ;aACJ;iBAAM;gBACH,IAAI,CAAC,IAAA,eAAO,EAAC,iBAAiB,CAAC,EAAE;oBAC7B,eAAe,GAAG,KAAK,CAAC;iBAC3B;aACJ;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,cAAc,EAAE;YACjB,OAAO,CAAC,eAAe,CAAC;SAC3B;QAED,IAAI,gBAAgB,EAAE;YAClB,iEAAiE;YACjE,mEAAmE;YACnE,6BAA6B;YAC7B,IAAI,cAAc,EAAE;gBAChB,MAAM,cAAc,GAAG,SAAS,CAAC,cAAc,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;gBAClE,IAAI,cAAc,IAAI,IAAA,2BAAmB,EAAC,cAAc,CAAC,EAAE;oBACvD,KAAK,CAAC,OAAO,GAAG,iBAAS,CAAC,eAAe,CACrC,IAAA,gCAAoB,EAChB,cAAc,EACd,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;wBACzB,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;oBAC3C,CAAC,CAAC,CACL,CACJ,CAAC;iBACL;aACJ;YAED,sEAAsE;YACtE,IAAI,KAAK,CAAC,QAAQ,EAAE;gBAChB,MAAM,YAAY,GAAG,SAAS,CAAC,aAAa,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;gBAClE,IAAI,YAAY,IAAI,IAAA,2BAAmB,EAAC,YAAY,CAAC,EAAE;oBACnD,KAAK,CAAC,OAAO,GAAG,iBAAS,CAAC,eAAe,CACrC,iBAAS,CAAC,sBAAsB,CAC5B,YAAY,EACZ,CAAC,SAAS,CAAC,iBAAiB,CAAC,IAAA,oBAAY,EAAC,kBAAkB,CAAC,CAAC,CAAC;oBAC/D,4BAA4B,CAAC,IAAI,CACpC,CACJ,CAAC;iBACL;aACJ;SACJ;QAED,OAAO,gBAAgB,CAAC;IAC5B,CAAC,CAAC,CAAC;IAEH,OAAO,IAAA,oBAAY,EAAC,YAAY,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;AACpE,CAAC;AAED,SAAS,0BAA0B,CAC/B,SAAwB,EACxB,IAAU,EACV,OAAsB,EACtB,cAAuB;IAEvB,IAAI,aAAa,GAAG,IAAI,CAAC;IAEzB,IAAI,CAAC,cAAc,EAAE;QACjB,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE;YACtC,aAAa,GAAG,wBAAwB,CAAC,SAAS,EAAE,aAAa,EAAE,UAAU,EAAE,oBAAoB,CAAC,KAAK,CAAC,CAAC;QAC/G,CAAC,CAAC,CAAC;QACH,OAAO,aAAa,CAAC;KACxB;IAED,MAAM,aAAa,GAAG,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE;QACxD,MAAM,eAAe,GAAG,wBAAwB,CAC5C,SAAS,EACT,aAAa,EACb,UAAU;QACV,oBAAoB,CAAC,IAAI,CAC5B,CAAC;QACF,aAAa,GAAG,wBAAwB,CAAC,SAAS,EAAE,aAAa,EAAE,UAAU,EAAE,oBAAoB,CAAC,KAAK,CAAC,CAAC;QAC3G,OAAO,eAAe,CAAC;IAC3B,CAAC,CAAC,CAAC;IACH,OAAO,IAAA,oBAAY,EAAC,aAAa,CAAC,CAAC;AACvC,CAAC;AAED,SAAS,+BAA+B,CACpC,SAAwB,EACxB,IAAU,EACV,OAA2B,EAC3B,cAAuB;IAEvB,IAAI,GAAG,IAAA,+CAAmC,EAAC,IAAI,CAAC,CAAC;IAEjD,IAAI,CAAC,cAAc,EAAE;QACjB,qEAAqE;QACrE,mEAAmE;QACnE,qDAAqD;QACrD,IAAI,OAAO,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,oCAAyC,EAAE;YACtG,OAAO,IAAI,CAAC;SACf;QAED,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC;QACjD,MAAM,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC;QACrD,IACI,UAAU,CAAC,QAAQ,4BAAiC;YACpD,YAAY,CAAC,QAAQ,uBAA4B;YACjD,CAAC,YAAY,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,QAAQ,4BAAiC,CAAC,EACpG;YACE,OAAO,IAAI,CAAC;SACf;QAED,MAAM,OAAO,GAAG,SAAS,CAAC,mBAAmB,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC;QAE1E,sCAAsC;QACtC,IAAI,CAAC,IAAA,uBAAe,EAAC,OAAO,CAAC,IAAI,CAAC,iBAAS,CAAC,SAAS,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,OAAO,CAAC,YAAY,KAAK,SAAS,EAAE;YACzG,OAAO,IAAI,CAAC;SACf;QACD,MAAM,QAAQ,GAAG,OAAO,CAAC,YAAsB,CAAC;QAEhD,MAAM,UAAU,GAAG,YAAY,CAAC,UAAU,CAAC,GAAG,CAC1C,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,mBAAmB,CAAE,SAAgC,CAAC,UAAU,CAAC,CAAC,IAAI,CAClG,CAAC;QAEF,OAAO,IAAA,uBAAW,EAAC,IAAI,EAAE,CAAC,OAAO,EAAE,EAAE;YACjC,IAAI,IAAA,uBAAe,EAAC,OAAO,CAAC,IAAI,iBAAS,CAAC,gBAAgB,CAAC,OAAO,CAAC,EAAE;gBACjE,MAAM,gBAAgB,GAAG,IAAA,wCAA2B,EAAC,SAAS,EAAE,OAAO,EAAE,mBAAmB,CAAC,IAAI,CAAC,CAAC;gBACnG,MAAM,MAAM,GAAG,gBAAgB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBAE9C,IAAI,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,IAAI,MAAM,CAAC,UAAU,CAAC,IAAI,IAAA,uBAAe,EAAC,MAAM,CAAC,SAAS,CAAC,EAAE;oBACzF,MAAM,eAAe,GAAG,MAAM,CAAC,SAAS,CAAC;oBAEzC,6DAA6D;oBAC7D,8DAA8D;oBAC9D,IACI,UAAU,CAAC,IAAI,CACX,CAAC,SAAS,EAAE,EAAE,CACV,IAAA,uBAAe,EAAC,SAAS,CAAC;wBAC1B,iBAAS,CAAC,kBAAkB,CAAC,SAAS,EAAE,eAAe,CAAC;wBACxD,SAAS,CAAC,YAAY,KAAK,eAAe,CAAC,YAAY,CAC9D,EACH;wBACE,OAAO,SAAS,CAAC;qBACpB;iBACJ;aACJ;YAED,OAAO,OAAO,CAAC;QACnB,CAAC,CAAC,CAAC;KACN;IAED,IAAI,WAAW,GAAG,qBAAqB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IAEzD,+CAA+C;IAC/C,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,kBAAkB,EAAE,EAAE;QACpD,IAAI,gBAAgB,GAAG,IAAI,CAAC;QAC5B,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,YAAY,EAAE,EAAE;YACrC,IAAI,kBAAkB,CAAC,SAAS,EAAE;gBAC9B,IAAI,YAAY,CAAC,QAAQ,oCAAyC,EAAE;oBAChE,MAAM,eAAe,GAAG,wBAAwB,CAC5C,SAAS,EACT,SAAS,CAAC,gBAAgB,CAAC,OAAO,EAAE,KAAK,CAAC,EAC1C,YAAY,CAAC,UAAU,EACvB,cAAc,CACjB,CAAC;oBAEF,IAAI,IAAA,eAAO,EAAC,eAAe,CAAC,EAAE;wBAC1B,gBAAgB,GAAG,KAAK,CAAC;qBAC5B;oBAED,MAAM,SAAS,GAAG,IAAA,uBAAW,EAAC,eAAe,EAAE,CAAC,UAAU,EAAE,EAAE;wBAC1D,IAAI,IAAA,sBAAc,EAAC,UAAU,CAAC,EAAE;4BAC5B,OAAO,UAAU,CAAC;yBACrB;wBAED,IAAI,IAAA,uBAAe,EAAC,UAAU,CAAC,IAAI,iBAAS,CAAC,SAAS,CAAC,UAAU,EAAE,KAAK,CAAC,EAAE;4BACvE,IAAI,CAAC,IAAA,yBAAa,EAAC,UAAU,CAAC,EAAE;gCAC5B,OAAO,mBAAW,CAAC,MAAM,EAAE,CAAC;6BAC/B;4BAED,MAAM,SAAS,GAAG,IAAA,wCAA2B,EAAC,SAAS,EAAE,kBAAkB,CAAC,SAAU,CAAC,CAAC;4BACxF,MAAM,UAAU,GAAG,SAAS,CAAC,GAAG,CAAC,UAAU,CAAC,YAAsB,CAAC,CAAC;4BACpE,IAAI,UAAU,EAAE;gCACZ,MAAM,iBAAiB,GAAG,wBAAwB,CAC9C,SAAS,EACT,UAAU,CAAC,SAAS,EACpB,YAAY,CAAC,YAAY;gCACzB,oBAAoB,CAAC,IAAI,CAC5B,CAAC;gCACF,IAAI,CAAC,IAAA,eAAO,EAAC,iBAAiB,CAAC,EAAE;oCAC7B,OAAO,iBAAiB,CAAC;iCAC5B;6BACJ;yBACJ;wBAED,OAAO,SAAS,CAAC;oBACrB,CAAC,CAAC,CAAC;oBAEH,IAAI,IAAA,eAAO,EAAC,SAAS,CAAC,EAAE;wBACpB,gBAAgB,GAAG,KAAK,CAAC;qBAC5B;iBACJ;aACJ;iBAAM,IAAI,kBAAkB,CAAC,YAAY,EAAE;gBACxC,IAAI,YAAY,CAAC,QAAQ,oCAAyC,EAAE;oBAChE,MAAM,eAAe,GAAG,wBAAwB,CAC5C,SAAS,EACT,kBAAkB,CAAC,YAAY,CAAC,GAAG,EACnC,YAAY,CAAC,UAAU,EACvB,cAAc,CACjB,CAAC;oBACF,MAAM,iBAAiB,GAAG,wBAAwB,CAC9C,SAAS,EACT,kBAAkB,CAAC,YAAY,CAAC,KAAK,EACrC,YAAY,CAAC,YAAY,EACzB,cAAc,CACjB,CAAC;oBACF,IAAI,IAAA,eAAO,EAAC,eAAe,CAAC,IAAI,IAAA,eAAO,EAAC,iBAAiB,CAAC,EAAE;wBACxD,gBAAgB,GAAG,KAAK,CAAC;qBAC5B;iBACJ;aACJ;QACL,CAAC,CAAC,CAAC;QAEH,OAAO,gBAAgB,CAAC;IAC5B,CAAC,CAAC,CAAC;IAEH,OAAO,IAAA,oBAAY,EAAC,WAAW,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;AACnE,CAAC;AAED,uEAAuE;AACvE,kDAAkD;AAClD,SAAS,0BAA0B,CAAC,SAAwB,EAAE,IAAe;IACzE,MAAM,mBAAmB,GAAG,IAAA,6BAAiB,EAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC;IACtE,IAAI,mBAAmB,EAAE;QACrB,MAAM,aAAa,GAAG,SAAS,CAAC,eAAe,CAAC,mBAAmB,CAAC,CAAC;QACrE,IACI,IAAA,uBAAe,EAAC,aAAa,CAAC;YAC9B,IAAA,wBAAY,EAAC,aAAa,CAAC;YAC3B,CAAC,IAAA,iCAAqB,EAAC,aAAa,CAAC;YACrC,aAAa,CAAC,kBAAkB,EAClC;YACE,MAAM,SAAS,GAAG,aAAa,CAAC,kBAAkB,CAAC;YAEnD,oCAAoC;YACpC,IACI,SAAS,CAAC,KAAK,CACX,CAAC,GAAG,EAAE,EAAE,CACJ,IAAA,uBAAe,EAAC,GAAG,CAAC,IAAI,CAAC,IAAI,iBAAS,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,IAAA,yBAAa,EAAC,GAAG,CAAC,IAAI,CAAC,CACnG,EACH;gBACE,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAE,GAAG,CAAC,IAAkB,CAAC,YAAsB,CAAC,CAAC;aACjF;SACJ;KACJ;IAED,OAAO,EAAE,CAAC;AACd,CAAC;AAED,SAAS,+BAA+B,CACpC,SAAwB,EACxB,IAAU,EACV,OAA2B,EAC3B,cAAuB;IAEvB,MAAM,WAAW,GAAG,SAAS,CAAC,mBAAmB,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC;IAE3E,IAAI,CAAC,cAAc,EAAE;QACjB,OAAO,IAAA,uBAAW,EAAC,IAAI,EAAE,CAAC,OAAO,EAAE,EAAE;YACjC,IACI,IAAA,uBAAe,EAAC,WAAW,CAAC;gBAC5B,IAAA,yBAAa,EAAC,WAAW,CAAC;gBAC1B,IAAA,uBAAe,EAAC,OAAO,CAAC;gBACxB,IAAA,yBAAa,EAAC,OAAO,CAAC;gBACtB,SAAS,CAAC,UAAU,CAAC,WAAW,EAAE,OAAO,CAAC,EAC5C;gBACE,OAAO,SAAS,CAAC;aACpB;YAED,IAAI,IAAA,sBAAc,EAAC,OAAO,CAAC,IAAI,IAAA,sBAAc,EAAC,WAAW,CAAC,EAAE;gBACxD,OAAO,SAAS,CAAC;aACpB;YAED,6DAA6D;YAC7D,IACI,IAAA,uBAAe,EAAC,OAAO,CAAC;gBACxB,iBAAS,CAAC,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC;gBACpC,OAAO,CAAC,YAAY,KAAK,SAAS;gBAClC,IAAA,uBAAe,EAAC,WAAW,CAAC;gBAC5B,iBAAS,CAAC,SAAS,CAAC,WAAW,EAAE,MAAM,CAAC;gBACxC,WAAW,CAAC,YAAY,KAAK,SAAS,EACxC;gBACE,OAAO,iBAAS,CAAC,gBAAgB,CAAC,WAAW,EAAE,CAAE,WAAW,CAAC,YAAwB,CAAC,CAAC;aAC1F;YAED,OAAO,OAAO,CAAC;QACnB,CAAC,CAAC,CAAC;KACN;IAED,OAAO,IAAA,uBAAW,EAAC,IAAI,EAAE,CAAC,OAAO,EAAE,EAAE;QACjC,IAAI,SAAS,CAAC,UAAU,CAAC,OAAO,EAAE,WAAW,CAAC,EAAE;YAC5C,OAAO,WAAW,CAAC;SACtB;QAED,wEAAwE;QACxE,gEAAgE;QAChE,IACI,IAAA,uBAAe,EAAC,WAAW,CAAC;YAC5B,IAAA,yBAAa,EAAC,WAAW,CAAC;YAC1B,IAAA,uBAAe,EAAC,OAAO,CAAC;YACxB,CAAC,IAAA,yBAAa,EAAC,OAAO,CAAC,EACzB;YACE,IAAI,SAAS,CAAC,UAAU,CAAC,iBAAS,CAAC,gBAAgB,CAAC,WAAW,EAAE,WAAW,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,EAAE;gBAC/F,OAAO,OAAO,CAAC;aAClB;SACJ;QACD,OAAO,SAAS,CAAC;IACrB,CAAC,CAAC,CAAC;AACP,CAAC;AAED,SAAS,6BAA6B,CAClC,SAAwB,EACxB,IAAU,EACV,OAAyB,EACzB,cAAuB;IAEvB,IAAI,QAAQ,GAAG,SAAS,CAAC,mBAAmB,CAAC,OAAO,CAAC,SAAS,0BAAiC,CAAC,IAAI,CAAC;IAErG,oEAAoE;IACpE,6CAA6C;IAC7C,IAAI,IAAA,eAAO,EAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE;QAC9C,QAAQ,GAAG,IAAA,+BAAmB,EAAC,QAAQ,CAAC,CAAC;KAC5C;IAED,IAAI,CAAC,cAAc,EAAE;QACjB,8FAA8F;QAC9F,IAAI,CAAC,IAAA,2BAAmB,EAAC,QAAQ,CAAC,EAAE;YAChC,OAAO,IAAI,CAAC;SACf;QAED,IAAI,SAAS,GAAG,QAAQ,CAAC;QAEzB,IAAI,SAAS,CAAC,OAAO,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE;YAC7C,SAAS,GAAG,iBAAS,CAAC,sBAAsB,CACxC,SAAS;YACT,mBAAmB,CAAC,SAAS;YAC7B,4BAA4B,CAAC,KAAK,CACrC,CAAC;SACL;QAED,MAAM,aAAa,GAAG,IAAA,6BAAiB,EAAC,SAAS,CAAC,CAAC;QACnD,OAAO,SAAS,CAAC,yBAAyB,CACtC,IAAI;QACJ,qBAAqB,CAAC,SAAS,EAC/B,CAAC,sBAAsB,EAAE,wBAAwB,EAAE,EAAE;YACjD,IAAI,CAAC,IAAA,sBAAc,EAAC,sBAAsB,CAAC,IAAI,CAAC,IAAA,uBAAe,EAAC,sBAAsB,CAAC,EAAE;gBACrF,OAAO,wBAAwB,CAAC;aACnC;YAED,IACI,IAAA,sBAAc,EAAC,sBAAsB,CAAC;gBACtC,IAAA,2BAAmB,EAAC,SAAS,CAAC;gBAC9B,iBAAS,CAAC,SAAS,CAAC,SAAS,EAAE,UAAU,CAAC,EAC5C;gBACE,OAAO,SAAS,CAAC;aACpB;YAED,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,aAAa,EAAE,sBAAsB,CAAC,EAAE;gBAC9D,OAAO,sBAAsB,CAAC;aACjC;YAED,IAAI,OAAO,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE;gBAChC,IACI,IAAA,eAAO,EAAC,aAAa,CAAC;oBACtB,IAAA,eAAO,EAAC,sBAAsB,CAAC;oBAC/B,iBAAS,CAAC,kBAAkB,CAAC,aAAa,EAAE,sBAAsB,CAAC,EACrE;oBACE,yDAAyD;oBACzD,0BAA0B;oBAC1B,OAAO,SAAS,CAAC;iBACpB;gBAED,OAAO,sBAAsB,CAAC;aACjC;YAED,kEAAkE;YAClE,iEAAiE;YACjE,kCAAkC;YAClC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,sBAAsB,EAAE,aAAa,CAAC,EAAE;gBAC9D,IAAI,IAAA,eAAO,EAAC,sBAAsB,CAAC,IAAI,CAAC,iBAAS,CAAC,OAAO,CAAC,sBAAsB,CAAC,EAAE;oBAC/E,OAAO,sBAAsB,CAAC;iBACjC;aACJ;YAED,yEAAyE;YACzE,wEAAwE;YACxE,IAAI,kBAAkB,GAAa,EAAE,CAAC;YACtC,IAAI,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;gBAC5C,IAAI,IAAA,eAAO,EAAC,sBAAsB,CAAC,EAAE;oBACjC,kBAAkB,GAAG,0BAA0B,CAAC,SAAS,EAAE,sBAAsB,CAAC,CAAC;iBACtF;aACJ;YAED,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,OAAO,CAAC,SAAS,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;gBAC3D,MAAM,eAAe,GAAG,gCAAgC,CACpD,SAAS,EACT,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,EACxB,KAAK,EACL,kBAAkB,EAClB,sBAAsB,EACtB,cAAc,CACjB,CAAC;gBAEF,IAAI,CAAC,IAAA,eAAO,EAAC,eAAe,CAAC,EAAE;oBAC3B,OAAO,wBAAwB,CAAC;iBACnC;aACJ;YAED,+DAA+D;YAC/D,OAAO,SAAS,CAAC;QACrB,CAAC,CACJ,CAAC;KACL;IAED,IAAI,CAAC,gBAAQ,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAA,eAAO,EAAC,QAAQ,CAAC,EAAE;QAC1D,SAAS,CAAC,aAAa,CACnB,IAAA,8BAAW,EAAC,OAAO,CAAC,CAAC,iBAAiB,CAAC,uBAAuB,EAC9D,gCAAc,CAAC,uBAAuB,EACtC,oBAAS,CAAC,kBAAkB,CAAC,YAAY,EAAE,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC,EAC3F,OAAO,CAAC,SAAS,CACpB,CAAC;QACF,OAAO,iBAAS,CAAC,WAAW,EAAE,CAAC;KAClC;IAED,OAAO,SAAS,CAAC,yBAAyB,CACtC,QAAQ;IACR,qBAAqB,CAAC,SAAS,EAC/B,CAAC,eAAe,EAAE,iBAAiB,EAAE,EAAE;QACnC,IAAI,IAAA,sBAAc,EAAC,eAAe,CAAC,EAAE;YACjC,OAAO,iBAAiB,CAAC;SAC5B;QAED,IAAI,IAAA,2BAAmB,EAAC,eAAe,CAAC,EAAE;YACtC,OAAO,SAAS,CAAC,yBAAyB,CACtC,IAAI;YACJ,qBAAqB,CAAC,SAAS,EAC/B,CAAC,sBAAsB,EAAE,EAAE;gBACvB,IAAI,IAAA,sBAAc,EAAC,sBAAsB,CAAC,EAAE;oBACxC,OAAO,IAAA,6BAAiB,EAAC,iBAAiB,CAAC,CAAC;iBAC/C;gBAED,IACI,IAAA,sBAAc,EAAC,sBAAsB,CAAC;oBACtC,IAAA,2BAAmB,EAAC,eAAe,CAAC;oBACpC,iBAAS,CAAC,SAAS,CAAC,eAAe,EAAE,UAAU,CAAC,EAClD;oBACE,OAAO,sBAAsB,CAAC;iBACjC;gBAED,IAAI,IAAA,uBAAe,EAAC,sBAAsB,CAAC,EAAE;oBACzC,IAAI,UAAgB,CAAC;oBAErB,IACI,SAAS,CAAC,UAAU,CAChB,eAAe,EACf,iBAAS,CAAC,mBAAmB,CAAC,sBAAsB,CAAC,CACxD,EACH;wBACE,UAAU,GAAG,sBAAsB,CAAC;qBACvC;yBAAM,IACH,SAAS,CAAC,UAAU,CAChB,iBAAS,CAAC,mBAAmB,CAAC,sBAAsB,CAAC,EACrD,eAAe,CAClB,EACH;wBACE,UAAU,GAAG,IAAA,8BAAkB,EAC3B,IAAA,6BAAiB,EAAC,iBAAiB,CAAC,EACpC,IAAA,4BAAgB,EAAC,sBAAsB,CAAC,CAC3C,CAAC;wBAEF,+DAA+D;wBAC/D,IAAI,IAAA,2BAAmB,EAAC,iBAAiB,CAAC,IAAI,IAAA,uBAAe,EAAC,sBAAsB,CAAC,EAAE;4BACnF,IACI,iBAAS,CAAC,gBAAgB,CAAC,iBAAiB,CAAC;gCAC7C,iBAAiB,CAAC,OAAO,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,EACrD;gCACE,MAAM,cAAc,GAAG,IAAI,+BAAc,CAAC,IAAA,6BAAiB,EAAC,iBAAiB,CAAC,CAAC,CAAC;gCAChF,MAAM,sBAAsB,GAAG,iBAAS,CAAC,sBAAsB,CAC3D,iBAAiB;gCACjB,mBAAmB,CAAC,SAAS;gCAC7B,4BAA4B,CAAC,KAAK,CACrC,CAAC;gCAEF,MAAM,iBAAiB,GAAG,iBAAS,CAAC,eAAe,CAAC,sBAAsB,CAAC,CAAC;gCAC5E,IACI,IAAA,4DAAyC,EACrC,SAAS,EACT,iBAAiB,EACjB,sBAAsB,EACtB,cAAc;gCACd,uBAAuB,CAAC,SAAS,CACpC,EACH;oCACE,UAAU,GAAG,IAAA,+BAAmB,EAAC,iBAAiB,EAAE,cAAc,EAAE;wCAChE,iBAAiB,EAAE,IAAI;qCAC1B,CAAc,CAAC;iCACnB;6BACJ;yBACJ;qBACJ;yBAAM;wBACH,OAAO,SAAS,CAAC;qBACpB;oBAED,yEAAyE;oBACzE,wEAAwE;oBACxE,IAAI,kBAAkB,GAAa,EAAE,CAAC;oBACtC,IAAI,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;wBAC5C,kBAAkB,GAAG,0BAA0B,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;qBAC/E;oBAED,IAAI,YAAY,GAAG,IAAI,CAAC;oBACxB,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;wBACrC,2EAA2E;wBAC3E,+EAA+E;wBAC/E,uCAAuC;wBACvC,MAAM,eAAe,GAAG,gCAAgC,CACpD,SAAS,EACT,GAAG,EACH,KAAK,EACL,kBAAkB,EAClB,UAAU,EACV,cAAc,CACjB,CAAC;wBAEF,IAAI,IAAA,eAAO,EAAC,eAAe,CAAC,EAAE;4BAC1B,YAAY,GAAG,KAAK,CAAC;yBACxB;oBACL,CAAC,CAAC,CAAC;oBAEH,IAAI,YAAY,EAAE;wBACd,OAAO,UAAU,CAAC;qBACrB;iBACJ;gBAED,OAAO,SAAS,CAAC;YACrB,CAAC,CACJ,CAAC;SACL;QAED,OAAO,SAAS,CAAC;IACrB,CAAC,CACJ,CAAC;AACN,CAAC;AAED,2EAA2E;AAC3E,oCAAoC;AACpC,SAAS,iCAAiC,CAAC,SAAoB;IAC3D,OAAO,wBAAwB,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC;AAClG,CAAC;AAED,6DAA6D;AAC7D,SAAS,gCAAgC,CACrC,SAAwB,EACxB,GAA6B,EAC7B,QAAgB,EAChB,kBAA4B,EAC5B,SAAe,EACf,cAAuB;;IAEvB,IAAI,OAA2B,CAAC;IAEhC,IAAI,GAAG,CAAC,IAAI,EAAE;QACV,OAAO,GAAG,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC;KAC5B;SAAM,IAAI,QAAQ,GAAG,kBAAkB,CAAC,MAAM,EAAE;QAC7C,OAAO,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC;KAC1C;IAED,IAAI,IAAA,sBAAc,EAAC,SAAS,CAAC,EAAE;QAC3B,OAAO,SAAS,CAAC;KACpB;IAED,IAAI,CAAC,IAAA,eAAO,EAAC,SAAS,CAAC,EAAE;QACrB,OAAO,mBAAW,CAAC,MAAM,EAAE,CAAC;KAC/B;IAED,0EAA0E;IAC1E,8EAA8E;IAC9E,4EAA4E;IAC5E,yDAAyD;IACzD,IAAI,iBAAiB,GAAG,KAAK,CAAC;IAC9B,IAAI,kBAAkB,GAAG,SAAS,CAAC;IAEnC,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,IAAA,eAAO,EAAC,SAAS,CAAC,IAAI,QAAQ,KAAK,CAAC,EAAE;QACnD,IAAI,iCAAiC,CAAC,SAAS,CAAC,EAAE;YAC9C,iBAAiB,GAAG,IAAI,CAAC;SAC5B;aAAM,IAAI,kBAAkB,CAAC,MAAM,KAAK,CAAC,EAAE;YACxC,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;gBACvC,IAAI,IAAA,eAAO,EAAC,QAAQ,CAAC,IAAI,iCAAiC,CAAC,QAAQ,CAAC,EAAE;oBAClE,kBAAkB,GAAG,QAAQ,CAAC;oBAC9B,iBAAiB,GAAG,IAAI,CAAC;iBAC5B;YACL,CAAC,CAAC,CAAC;SACN;KACJ;IAED,IAAI,OAAyB,CAAC;IAE9B,IAAI,iBAAiB,EAAE;QACnB,OAAO,GAAG,iBAAS,CAAC,eAAe,CAAC,kBAAkB,CAAC,CAAC;KAC3D;SAAM;QACH,IAAI,OAAO,EAAE;YACT,OAAO,GAAG,MAAA,SAAS,CAAC,kBAAkB,CAAC,GAAG,EAAE,GAAG,EAAE;YAC7C,+EAA+E;YAC/E,6EAA6E;YAC7E,SAAS,CAAC,qBAAqB,CAC3B,GAA4B,EAC5B,iBAAS,CAAC,eAAe,CAAC,SAAS,CAAC,EACpC,OAAQ,CACX,CACJ,0CAAE,IAAI,CAAC;SACX;QAED,IAAI,CAAC,OAAO,EAAE;YACV,IAAI,CAAC,cAAc,EAAE;gBACjB,OAAO,SAAS,CAAC;aACpB;YAED,uEAAuE;YACvE,sEAAsE;YACtE,iBAAiB;YACjB,IAAI,iBAAS,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;gBAC9B,OAAO,iBAAS,CAAC,WAAW,EAAE,CAAC;aAClC;YAED,OAAO,GAAG,mBAAW,CAAC,MAAM,EAAE,CAAC;SAClC;KACJ;IAED,OAAO,wBAAwB,CAAC,SAAS,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;AACrF,CAAC;AAED,SAAS,6BAA6B,CAClC,SAAwB,EACxB,WAAiB,EACjB,OAAyB,EACzB,cAAuB;IAEvB,MAAM,SAAS,GAAG,SAAS,CAAC,mBAAmB,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC;IACzE,MAAM,gBAAgB,GAAW,EAAE,CAAC;IAEpC,SAAS,CAAC,yBAAyB,CAC/B,SAAS;IACT,qBAAqB,CAAC,SAAS,EAC/B,CAAC,oBAAoB,EAAE,sBAAsB,EAAE,EAAE;QAC7C,gBAAgB,CAAC,IAAI,CACjB,SAAS,CAAC,yBAAyB,CAC/B,WAAW,EACX,IAAA,4BAAgB,EAAC,oBAAoB,CAAC,EACtC,CAAC,sBAAsB,EAAE,EAAE;YACvB,yDAAyD;YACzD,IAAI,CAAC,cAAc,EAAE;gBACjB,IACI,IAAA,uBAAe,EAAC,sBAAsB,CAAC;oBACvC,iBAAS,CAAC,WAAW,CAAC,sBAAsB,CAAC;oBAC7C,CAAC,IAAA,yBAAa,EAAC,sBAAsB,CAAC;oBACtC,IAAA,uBAAe,EAAC,oBAAoB,CAAC;oBACrC,IAAA,iCAAyB,EAAC,sBAAsB,EAAE,oBAAoB,CAAC;oBACvE,IAAA,yBAAa,EAAC,oBAAoB,CAAC,EACrC;oBACE,MAAM,YAAY,GAAG,IAAA,qCAAwB,EAAC,SAAS,EAAE,sBAAsB,CAAC,CAAC;oBACjF,IAAI,YAAY,EAAE;wBACd,OAAO,IAAA,oBAAY,EACf,YAAY,CAAC,MAAM,CACf,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,iBAAS,CAAC,kBAAkB,CAAC,oBAAoB,EAAE,QAAQ,CAAC,CAC9E,CACJ,CAAC;qBACL;iBACJ;qBAAM,IACH,IAAA,uBAAe,EAAC,sBAAsB,CAAC;oBACvC,IAAA,uBAAe,EAAC,oBAAoB,CAAC;oBACrC,IAAA,yBAAa,EAAC,sBAAsB,CAAC;oBACrC,iBAAS,CAAC,kBAAkB,CAAC,oBAAoB,EAAE,sBAAsB,CAAC,EAC5E;oBACE,OAAO,SAAS,CAAC;iBACpB;gBAED,OAAO,sBAAsB,CAAC;aACjC;YAED,IAAI,IAAA,eAAO,EAAC,oBAAoB,CAAC,IAAI,IAAA,eAAO,EAAC,sBAAsB,CAAC,EAAE;gBAClE,OAAO,iBAAS,CAAC,WAAW,EAAE,CAAC;aAClC;YAED,IAAI,IAAA,sBAAc,EAAC,oBAAoB,CAAC,IAAI,IAAA,sBAAc,EAAC,sBAAsB,CAAC,EAAE;gBAChF,mEAAmE;gBACnE,OAAO,IAAA,iBAAS,EAAC,oBAAoB,CAAC,IAAI,IAAA,iBAAS,EAAC,sBAAsB,CAAC;oBACvE,CAAC,CAAC,IAAA,2BAAe,EAAC,oBAAoB,EAAE,sBAAsB,CAAC;oBAC/D,CAAC,CAAC,eAAO,CAAC,MAAM,EAAE,CAAC;aAC1B;YAED,+DAA+D;YAC/D,sCAAsC;YACtC,MAAM,UAAU,GAAG,SAAS,CAAC,kBAAkB,CAAC,OAAO,CAAC,UAAU,EAAE,GAAG,EAAE,CACrE,SAAS,CAAC,0BAA0B,CAChC,oBAAoB,EACpB,CAAC,EAAE,IAAI,EAAE,sBAAsB,EAAE,CAAC,EAClC,QAAQ,EACR,OAAO,CAAC,UAAU;YAClB,kBAAkB,CAAC,SAAS,CAC/B,CACJ,CAAC;YAEF,OAAO,UAAU,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,SAAS,CAAC;QAC3D,CAAC,CACJ,CACJ,CAAC;QAEF,OAAO,SAAS,CAAC;IACrB,CAAC,CACJ,CAAC;IAEF,OAAO,IAAA,oBAAY,EAAC,gBAAgB,CAAC,CAAC;AAC1C,CAAC;AAED,qFAAqF;AACrF,wBAAwB;AACxB,SAAS,qBAAqB,CAAC,SAAwB,EAAE,IAAU;IAC/D,MAAM,WAAW,GAAyB,EAAE,CAAC;IAE7C,IAAA,4BAAgB,EAAC,IAAI,EAAE,CAAC,OAAO,EAAE,EAAE;QAC/B,MAAM,eAAe,GAAG,SAAS,CAAC,4BAA4B,CAAC,OAAO,CAAC,CAAC;QAExE,IAAI,IAAA,sBAAc,EAAC,eAAe,CAAC,EAAE;YACjC,WAAW,CAAC,IAAI,CAAC;gBACb,OAAO;gBACP,YAAY,EAAE;oBACV,GAAG,EAAE,eAAe;oBACpB,KAAK,EAAE,eAAe;iBACzB;aACJ,CAAC,CAAC;SACN;aAAM,IAAI,IAAA,uBAAe,EAAC,eAAe,CAAC,EAAE;YACzC,IAAI,iBAAS,CAAC,gBAAgB,CAAC,eAAe,CAAC,EAAE;gBAC7C,WAAW,CAAC,IAAI,CAAC;oBACb,OAAO;oBACP,SAAS,EAAE,eAAe;iBAC7B,CAAC,CAAC;aACN;iBAAM;gBACH,IAAI,oBAA2C,CAAC;gBAChD,KAAK,MAAM,QAAQ,IAAI,eAAe,CAAC,OAAO,CAAC,GAAG,EAAE;oBAChD,IAAI,IAAA,2BAAmB,EAAC,QAAQ,CAAC,IAAI,iBAAS,CAAC,SAAS,CAAC,QAAQ,EAAE,SAAS,CAAC,EAAE;wBAC3E,oBAAoB,GAAG,QAAQ,CAAC;wBAChC,MAAM;qBACT;iBACJ;gBAED,IAAI,oBAAoB,EAAE;oBACtB,MAAM,kBAAkB,GAAG,IAAA,mCAAuB,EAC9C,oBAAoB,EACpB,eAAe,CACL,CAAC;oBACf,IAAI,kBAAkB,CAAC,aAAa,IAAI,kBAAkB,CAAC,aAAa,CAAC,MAAM,IAAI,CAAC,EAAE;wBAClF,WAAW,CAAC,IAAI,CAAC;4BACb,OAAO;4BACP,YAAY,EAAE;gCACV,GAAG,EAAE,kBAAkB,CAAC,aAAa,CAAC,CAAC,CAAC;gCACxC,KAAK,EAAE,kBAAkB,CAAC,aAAa,CAAC,CAAC,CAAC;6BAC7C;yBACJ,CAAC,CAAC;qBACN;iBACJ;aACJ;SACJ;IACL,CAAC,CAAC,CAAC;IAEH,OAAO,WAAW,CAAC;AACvB,CAAC;AAED,sFAAsF;AACtF,sFAAsF;AACtF,sDAAsD;AACtD,SAAS,sBAAsB,CAC3B,SAAwB,EACxB,IAAU,EACV,UAAkB,EAClB,cAAkC;IAElC,MAAM,YAAY,GAA0B,EAAE,CAAC;IAC/C,MAAM,aAAa,GAAG,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC;IAEjF,IAAA,4BAAgB,EAAC,IAAI,EAAE,CAAC,OAAO,EAAE,EAAE;QAC/B,MAAM,eAAe,GAAG,SAAS,CAAC,4BAA4B,CAAC,OAAO,CAAC,CAAC;QACxE,IAAI,oBAA2C,CAAC;QAChD,IAAI,WAAW,GAAG,KAAK,CAAC;QAExB,IAAI,IAAA,sBAAc,EAAC,eAAe,CAAC,EAAE;YACjC,YAAY,CAAC,IAAI,CAAC;gBACd,OAAO;gBACP,UAAU,EAAE,CAAC,eAAe,CAAC;gBAC7B,qBAAqB,EAAE,IAAI;gBAC3B,eAAe,EAAE,KAAK;aACzB,CAAC,CAAC;YACH,OAAO;SACV;QAED,IAAI,IAAA,uBAAe,EAAC,eAAe,CAAC,EAAE;YAClC,IAAI,iBAAS,CAAC,SAAS,CAAC,eAAe,EAAE,QAAQ,CAAC,EAAE;gBAChD,YAAY,CAAC,IAAI,CAAC;oBACd,OAAO;oBACP,UAAU,EAAE,CAAC,IAAA,6BAAiB,EAAC,eAAe,CAAC,CAAC;oBAChD,qBAAqB,EAAE,IAAI;oBAC3B,QAAQ,EAAE,IAAI;oBACd,eAAe,EAAE,KAAK;iBACzB,CAAC,CAAC;gBACH,OAAO;aACV;YAED,KAAK,MAAM,QAAQ,IAAI,eAAe,CAAC,OAAO,CAAC,GAAG,EAAE;gBAChD,IAAI,CAAC,IAAA,2BAAmB,EAAC,QAAQ,CAAC,EAAE;oBAChC,MAAM;iBACT;gBAED,yDAAyD;gBACzD,IACI,iBAAS,CAAC,SAAS,CAAC,QAAQ,EAAE,KAAK,CAAC;oBACpC,iBAAS,CAAC,SAAS,CAAC,QAAQ,EAAE,OAAO,CAAC;oBACtC,iBAAS,CAAC,SAAS,CAAC,QAAQ,EAAE,WAAW,CAAC,EAC5C;oBACE,MAAM;iBACT;gBAED,IAAI,iBAAS,CAAC,SAAS,CAAC,QAAQ,EAAE,UAAU,CAAC,EAAE;oBAC3C,oBAAoB,GAAG,QAAQ,CAAC;oBAChC,MAAM;iBACT;gBAED,IAAI,IAAA,wBAAY,EAAC,QAAQ,CAAC,EAAE;oBACxB,oBAAoB,GAAG,QAAQ,CAAC;oBAChC,MAAM;iBACT;aACJ;YAED,IAAI,oBAAoB,EAAE;gBACtB,MAAM,mBAAmB,GAAG,IAAA,mCAAuB,EAAC,oBAAoB,EAAE,eAAe,CAAc,CAAC;gBAExG,IAAI,IAAA,wBAAY,EAAC,mBAAmB,CAAC,EAAE;oBACnC,IAAI,mBAAmB,CAAC,kBAAkB,EAAE;wBACxC,IAAI,IAAA,iCAAqB,EAAC,mBAAmB,CAAC,EAAE;4BAC5C,YAAY,CAAC,IAAI,CAAC;gCACd,OAAO;gCACP,UAAU,EAAE,CAAC,IAAA,oBAAY,EAAC,mBAAmB,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;gCACrF,qBAAqB,EAAE,IAAI;gCAC3B,OAAO,EAAE,IAAI;gCACb,eAAe,EAAE,KAAK;6BACzB,CAAC,CAAC;4BACH,WAAW,GAAG,IAAI,CAAC;yBACtB;6BAAM;4BACH,IACI,mBAAmB,CAAC,kBAAkB,CAAC,MAAM,IAAI,aAAa;gCAC9D,CAAC,cAAc,KAAK,SAAS;oCACzB,mBAAmB,CAAC,kBAAkB,CAAC,MAAM,KAAK,aAAa,CAAC,EACtE;gCACE,YAAY,CAAC,IAAI,CAAC;oCACd,OAAO;oCACP,UAAU,EAAE,mBAAmB,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;oCACrE,qBAAqB,EAAE,KAAK;oCAC5B,OAAO,EAAE,IAAI;oCACb,eAAe,EAAE,KAAK;iCACzB,CAAC,CAAC;gCACH,WAAW,GAAG,IAAI,CAAC;6BACtB;yBACJ;qBACJ;iBACJ;qBAAM;oBACH,YAAY,CAAC,IAAI,CAAC;wBACd,OAAO;wBACP,UAAU,EAAE;4BACR,mBAAmB,CAAC,aAAa,IAAI,mBAAmB,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC;gCAC7E,CAAC,CAAC,mBAAmB,CAAC,aAAa,CAAC,CAAC,CAAC;gCACtC,CAAC,CAAC,mBAAW,CAAC,MAAM,EAAE;yBAC7B;wBACD,qBAAqB,EAAE,IAAI;wBAC3B,eAAe,EAAE,KAAK;qBACzB,CAAC,CAAC;oBACH,WAAW,GAAG,IAAI,CAAC;iBACtB;aACJ;SACJ;QAED,oEAAoE;QACpE,IAAI,CAAC,WAAW,EAAE;YACd,YAAY,CAAC,IAAI,CAAC;gBACd,OAAO;gBACP,UAAU,EAAE,EAAE;gBACd,qBAAqB,EAAE,IAAI;gBAC3B,eAAe,EAAE,IAAI;aACxB,CAAC,CAAC;SACN;IACL,CAAC,CAAC,CAAC;IAEH,OAAO,YAAY,CAAC;AACxB,CAAC;AAED,SAAS,6BAA6B,CAClC,SAAwB,EACxB,IAAe,EACf,YAAiC,EACjC,UAAkB,EAClB,UAAkB,EAClB,cAAkC,EAClC,eAAwB,EACxB,eAAwB;IAExB,IAAI,YAAY,CAAC,qBAAqB,EAAE;QACpC,IAAI,SAAS,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QAE3C,8DAA8D;QAC9D,gEAAgE;QAChE,oEAAoE;QACpE,IAAI,eAAe,EAAE;YACjB,MAAM,UAAU,GAAG,SAAS,CAAC,gBAAgB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;YAC9D,IAAI,UAAU,IAAI,IAAA,uBAAe,EAAC,UAAU,CAAC,EAAE;gBAC3C,SAAS,GAAG,UAAU,CAAC;aAC1B;SACJ;QAED,IAAI,CAAC,eAAe,IAAI,UAAU,KAAK,cAAc,IAAI,CAAC,IAAA,eAAO,EAAC,SAAS,CAAC,EAAE;YAC1E,SAAS,GAAG,cAAc,CAAC,SAAS,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;SAC1D;QAED,OAAO,SAAS,CAAC;KACpB;IAED,IAAI,cAAc,KAAK,SAAS,IAAI,UAAU,GAAG,cAAc,EAAE;QAC7D,OAAO,YAAY,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;KAC9C;IAED,IAAI,UAAU,KAAK,cAAc,EAAE;QAC/B,+DAA+D;QAC/D,yCAAyC;QACzC,MAAM,cAAc,GAAG,YAAY,CAAC,UAAU;aACzC,KAAK,CAAC,cAAc,EAAE,cAAc,GAAG,YAAY,CAAC,UAAU,CAAC,MAAM,GAAG,UAAU,GAAG,CAAC,CAAC;aACvF,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC;QAEtD,IAAI,SAAS,GAAG,IAAA,oBAAY,EAAC,cAAc,CAAC,CAAC;QAE7C,IAAI,CAAC,eAAe,EAAE;YAClB,SAAS,GAAG,cAAc,CAAC,SAAS,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;SAC1D;QAED,OAAO,SAAS,CAAC;KACpB;IAED,kEAAkE;IAClE,+DAA+D;IAC/D,MAAM,SAAS,GAAG,YAAY,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,UAAU,GAAG,UAAU,CAAC,CAAC;IAC7E,IAAA,cAAM,EAAC,SAAS,IAAI,CAAC,IAAI,SAAS,GAAG,YAAY,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;IAErE,OAAO,YAAY,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;AAC9C,CAAC;AAED,wEAAwE;AACxE,kBAAkB;AAClB,SAAgB,0BAA0B,CACtC,SAAwB,EACxB,IAAU,EACV,gBAAyB,EACzB,eAAwB,EACxB,OAAwB;IAExB,iDAAiD;IACjD,IAAI,GAAG,wBAAwB,CAAC,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,kBAAkB,CAAC,IAAI,CAAC,CAAC;IAEnF,QAAQ,OAAO,CAAC,QAAQ,EAAE;QACtB,6BAAkC,CAAC,CAAC;YAChC,MAAM,YAAY,GAAG,sBAAsB,CACvC,SAAS,EACT,IAAI,EACJ,OAAO,CAAC,OAAO,CAAC,MAAM,EACtB,OAAO,CAAC,cAAc,CACzB,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;YAEhD,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;gBACrC,MAAM,SAAS,GAAG,IAAA,oBAAY,EAC1B,YAAY,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CACtB,6BAA6B,CACzB,SAAS,EACT,OAAO,EACP,IAAI,EACJ,KAAK,EACL,OAAO,CAAC,OAAO,CAAC,MAAM,EACtB,OAAO,CAAC,cAAc;gBACtB,qBAAqB,CAAC,KAAK,EAC3B,eAAe,CAClB,CACJ,CACJ,CAAC;gBAEF,0BAA0B,CAAC,SAAS,EAAE,SAAS,EAAE,gBAAgB,EAAE,qBAAqB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YAC3G,CAAC,CAAC,CAAC;YACH,MAAM;SACT;QAED,uBAA4B,CAAC,CAAC;YAC1B,IAAI,OAAO,CAAC,MAAM,EAAE;gBAChB,SAAS,CAAC,sBAAsB,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,EAAE,gBAAgB,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;aAC5F;YAED,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE;gBACrC,0BAA0B,CAAC,SAAS,EAAE,IAAI,EAAE,gBAAgB,EAAE,eAAe,EAAE,SAAS,CAAC,CAAC;gBAE1F,4DAA4D;gBAC5D,qBAAqB;gBACrB,IAAI,GAAG,wBAAwB,CAAC,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,kBAAkB,CAAC,KAAK,CAAC,CAAC;YAC1F,CAAC,CAAC,CAAC;YACH,MAAM;SACT;QAED,4BAAiC,CAAC,CAAC;YAC/B,IAAI,OAAO,CAAC,UAAU,EAAE;gBACpB,IAAI,CAAC,gBAAgB,EAAE;oBACnB,MAAM,QAAQ,GAAG,IAAA,8BAAW,EAAC,OAAO,CAAC,CAAC;oBACtC,IAAI,IAAA,iBAAS,EAAC,IAAI,CAAC,EAAE;wBACjB,SAAS,CAAC,aAAa,CACnB,QAAQ,CAAC,iBAAiB,CAAC,yBAAyB,EACpD,gCAAc,CAAC,yBAAyB,EACxC,oBAAS,CAAC,UAAU,CAAC,0BAA0B,EAAE,EACjD,OAAO,CAAC,MAAM,CACjB,CAAC;qBACL;yBAAM,IAAI,IAAA,2BAAe,EAAC,IAAI,CAAC,EAAE;wBAC9B,MAAM,YAAY,GAAG,IAAI,+BAAkB,EAAE,CAAC;wBAC9C,YAAY,CAAC,UAAU,CACnB,oBAAS,CAAC,kBAAkB,CAAC,YAAY,EAAE,CAAC,MAAM,CAAC;4BAC/C,IAAI,EAAE,GAAG;4BACT,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC;yBAC7D,CAAC,CACL,CAAC;wBACF,SAAS,CAAC,aAAa,CACnB,QAAQ,CAAC,iBAAiB,CAAC,yBAAyB,EACpD,gCAAc,CAAC,yBAAyB,EACxC,oBAAS,CAAC,UAAU,CAAC,mCAAmC,EAAE,GAAG,YAAY,CAAC,SAAS,EAAE,EACrF,OAAO,CAAC,MAAM,CACjB,CAAC;qBACL;iBACJ;aACJ;iBAAM;gBACH,SAAS,CAAC,sBAAsB,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,EAAE,gBAAgB,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;aAC5F;YACD,MAAM;SACT;QAED,4BAAiC,CAAC,CAAC;YAC/B,MAAM,WAAW,GAAG,qBAAqB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;YAE3D,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,YAAY,EAAE,EAAE;gBACrC,MAAM,QAAQ,GAAW,EAAE,CAAC;gBAC5B,MAAM,UAAU,GAAW,EAAE,CAAC;gBAE9B,WAAW,CAAC,OAAO,CAAC,CAAC,kBAAkB,EAAE,EAAE;oBACvC,IAAI,kBAAkB,CAAC,SAAS,EAAE;wBAC9B,IAAI,YAAY,CAAC,QAAQ,oCAAyC,EAAE;4BAChE,MAAM,OAAO,GAAG,wBAAwB,CACpC,SAAS,EACT,SAAS,CAAC,gBAAgB,CAAC,OAAO,EAAE,KAAK,CAAC,EAC1C,YAAY,CAAC,UAAU;4BACvB,oBAAoB,CAAC,IAAI,CAC5B,CAAC;4BACF,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;4BAEvB,IAAA,4BAAgB,EAAC,OAAO,EAAE,CAAC,UAAU,EAAE,EAAE;gCACrC,IACI,IAAA,uBAAe,EAAC,UAAU,CAAC;oCAC3B,iBAAS,CAAC,SAAS,CAAC,UAAU,EAAE,KAAK,CAAC;oCACtC,IAAA,yBAAa,EAAC,UAAU,CAAC,EAC3B;oCACE,MAAM,SAAS,GAAG,IAAA,wCAA2B,EACzC,SAAS,EACT,kBAAkB,CAAC,SAAU,CAChC,CAAC;oCACF,MAAM,SAAS,GAAG,SAAS,CAAC,GAAG,CAAC,UAAU,CAAC,YAAsB,CAAC,CAAC;oCACnE,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,mBAAW,CAAC,MAAM,EAAE,CAAC,CAAC;iCAC3E;qCAAM;oCACH,UAAU,CAAC,IAAI,CAAC,mBAAW,CAAC,MAAM,EAAE,CAAC,CAAC;iCACzC;4BACL,CAAC,CAAC,CAAC;yBACN;6BAAM,IAAI,YAAY,CAAC,QAAQ,uCAA4C,EAAE;4BAC1E,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC;4BAC1D,UAAU,CAAC,IAAI,CAAC,mBAAW,CAAC,MAAM,EAAE,CAAC,CAAC;yBACzC;qBACJ;yBAAM,IAAI,kBAAkB,CAAC,YAAY,EAAE;wBACxC,IAAI,YAAY,CAAC,QAAQ,oCAAyC,EAAE;4BAChE,MAAM,OAAO,GAAG,wBAAwB,CACpC,SAAS,EACT,kBAAkB,CAAC,YAAY,CAAC,GAAG,EACnC,YAAY,CAAC,UAAU;4BACvB,oBAAoB,CAAC,IAAI,CAC5B,CAAC;4BACF,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;4BACvB,UAAU,CAAC,IAAI,CACX,wBAAwB,CACpB,SAAS,EACT,kBAAkB,CAAC,YAAY,CAAC,KAAK,EACrC,YAAY,CAAC,YAAY;4BACzB,oBAAoB,CAAC,IAAI,CAC5B,CACJ,CAAC;yBACL;6BAAM,IAAI,YAAY,CAAC,QAAQ,uCAA4C,EAAE;4BAC1E,QAAQ,CAAC,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;4BACnD,UAAU,CAAC,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;yBAC1D;qBACJ;gBACL,CAAC,CAAC,CAAC;gBAEH,MAAM,OAAO,GAAG,IAAA,oBAAY,EAAC,QAAQ,CAAC,CAAC;gBACvC,MAAM,SAAS,GAAG,IAAA,oBAAY,EAAC,UAAU,CAAC,CAAC;gBAE3C,IAAI,YAAY,CAAC,QAAQ,oCAAyC,EAAE;oBAChE,0BAA0B,CACtB,SAAS,EACT,OAAO,EACP,gBAAgB;oBAChB,qBAAqB,CAAC,KAAK,EAC3B,YAAY,CAAC,UAAU,CAC1B,CAAC;oBACF,0BAA0B,CACtB,SAAS,EACT,SAAS,EACT,gBAAgB;oBAChB,qBAAqB,CAAC,KAAK,EAC3B,YAAY,CAAC,YAAY,CAC5B,CAAC;iBACL;qBAAM,IAAI,YAAY,CAAC,QAAQ,uCAA4C,EAAE;oBAC1E,MAAM,SAAS,GAAG,SAAS,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;oBAC5D,MAAM,OAAO,GAAG,SAAS,CAAC,gBAAgB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;oBAC3D,MAAM,QAAQ,GACV,SAAS,IAAI,IAAA,2BAAmB,EAAC,SAAS,CAAC,IAAI,IAAA,uBAAe,EAAC,OAAO,CAAC;wBACnE,CAAC,CAAC,iBAAS,CAAC,eAAe,CACrB,iBAAS,CAAC,sBAAsB,CAC5B,SAAS,EACT,CAAC,OAAO,EAAE,SAAS,CAAC;wBACpB,4BAA4B,CAAC,IAAI,CACpC,CACJ;wBACH,CAAC,CAAC,mBAAW,CAAC,MAAM,EAAE,CAAC;oBAC/B,SAAS,CAAC,sBAAsB,CAC5B,YAAY,CAAC,MAAM,EACnB,QAAQ,EACR,gBAAgB,EAChB,YAAY,CAAC,MAAM,CACtB,CAAC;iBACL;YACL,CAAC,CAAC,CAAC;YACH,MAAM;SACT;QAED,0BAA+B,CAAC,CAAC;YAC7B,MAAM,QAAQ,GAAa,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;YAE9D,SAAS,CAAC,yBAAyB,CAAC,IAAI,EAAE,qBAAqB,CAAC,SAAS,EAAE,CAAC,eAAe,EAAE,EAAE;gBAC3F,IAAI,IAAA,uBAAe,EAAC,eAAe,CAAC,EAAE;oBAClC,IAAA,4BAAgB,EAAC,IAAI,EAAE,CAAC,cAAc,EAAE,EAAE;wBACtC,MAAM,eAAe,GAAG,SAAS,CAAC,4BAA4B,CAAC,cAAc,CAAC,CAAC;wBAE/E,IAAI,IAAA,sBAAc,EAAC,eAAe,CAAC,EAAE;4BACjC,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;gCACrC,QAAQ,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;4BAC1C,CAAC,CAAC,CAAC;yBACN;6BAAM,IAAI,IAAA,uBAAe,EAAC,eAAe,CAAC,EAAE;4BACzC,yEAAyE;4BACzE,wEAAwE;4BACxE,IAAI,kBAAkB,GAAa,EAAE,CAAC;4BACtC,IAAI,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;gCAC5C,kBAAkB,GAAG,0BAA0B,CAC3C,SAAS,EACT,iBAAS,CAAC,mBAAmB,CAAC,eAAe,CAAC,CACjD,CAAC;6BACL;4BAED,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;gCACrC,MAAM,eAAe,GAAG,gCAAgC,CACpD,SAAS,EACT,GAAG,EACH,KAAK,EACL,kBAAkB,EAClB,iBAAS,CAAC,mBAAmB,CAAC,eAAe,CAAC;gCAC9C,oBAAoB,CAAC,IAAI,CAC5B,CAAC;gCACF,QAAQ,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;4BAC1C,CAAC,CAAC,CAAC;yBACN;oBACL,CAAC,CAAC,CAAC;iBACN;qBAAM;oBACH,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;wBACrC,QAAQ,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,mBAAW,CAAC,MAAM,EAAE,CAAC,CAAC;oBAC/C,CAAC,CAAC,CAAC;iBACN;gBAED,OAAO,SAAS,CAAC;YACrB,CAAC,CAAC,CAAC;YAEH,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;gBACrC,0BAA0B,CACtB,SAAS,EACT,IAAA,oBAAY,EAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAC7B,gBAAgB;gBAChB,qBAAqB,CAAC,KAAK,EAC3B,GAAG,CAAC,OAAO,CACd,CAAC;YACN,CAAC,CAAC,CAAC;YACH,MAAM;SACT;QAED,6BAAkC;QAClC,2BAAgC;QAChC,kBAAwB,CAAC,CAAC;YACtB,sBAAsB;YACtB,MAAM;SACT;KACJ;AACL,CAAC;AAhQD,gEAgQC;AAED,SAAS,cAAc,CAAC,SAAwB,EAAE,IAAe,EAAE,IAAU;IACzE,IAAI,IAAA,eAAO,EAAC,IAAI,CAAC,EAAE;QACf,OAAO,IAAI,CAAC;KACf;IAED,MAAM,cAAc,GAAG,IAAA,6BAAiB,EAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;IACnF,IAAI,cAAc,IAAI,IAAA,uBAAe,EAAC,cAAc,CAAC,EAAE;QACnD,OAAO,iBAAS,CAAC,sBAAsB,CAAC,cAAc,EAAE,CAAC,IAAI,CAAC,EAAE,4BAA4B,CAAC,IAAI,CAAC,CAAC;KACtG;IAED,OAAO,mBAAW,CAAC,MAAM,EAAE,CAAC;AAChC,CAAC;AAED,SAAgB,oBAAoB,CAAC,SAAwB,EAAE,OAAyB;IACpF,MAAM,QAAQ,GAAG,SAAS,CAAC,mBAAmB,CAAC,OAAO,CAAC,SAAS,0BAAiC,CAAC,IAAI,CAAC;IAEvG,IAAI,IAAA,sBAAc,EAAC,QAAQ,CAAC,EAAE;QAC1B,OAAO;KACV;IAED,2EAA2E;IAC3E,IACI,QAAQ,CAAC,aAAa;QACtB,IAAA,2BAAmB,EAAC,QAAQ,CAAC;QAC7B,QAAQ,CAAC,aAAa;QACtB,QAAQ,CAAC,sBAAsB,EACjC;QACE,SAAS,CAAC,aAAa,CACnB,IAAA,8BAAW,EAAC,OAAO,CAAC,CAAC,iBAAiB,CAAC,uBAAuB,EAC9D,gCAAc,CAAC,uBAAuB,EACtC,oBAAS,CAAC,UAAU,CAAC,qBAAqB,EAAE,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC,EAC5F,OAAO,CAAC,SAAS,CACpB,CAAC;KACL;SAAM,IAAI,CAAC,IAAA,2BAAmB,EAAC,QAAQ,CAAC,EAAE;QACvC,IAAI,CAAC,IAAA,eAAO,EAAC,QAAQ,CAAC,EAAE;YACpB,SAAS,CAAC,aAAa,CACnB,IAAA,8BAAW,EAAC,OAAO,CAAC,CAAC,iBAAiB,CAAC,uBAAuB,EAC9D,gCAAc,CAAC,uBAAuB,EACtC,oBAAS,CAAC,kBAAkB,CAAC,YAAY,EAAE,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC,EAC3F,OAAO,CAAC,SAAS,CACpB,CAAC;SACL;KACJ;SAAM;QACH,MAAM,SAAS,GAAG,wBAAwB,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC;QAExG,iFAAiF;QACjF,IAAI,SAAS,EAAE;YACX,IAAI,OAAO,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC9B,SAAS,CAAC,aAAa,CACnB,IAAA,8BAAW,EAAC,OAAO,CAAC,CAAC,iBAAiB,CAAC,uBAAuB,EAC9D,gCAAc,CAAC,uBAAuB,EACtC,oBAAS,CAAC,UAAU,CAAC,2BAA2B,EAAE,EAClD,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CACvB,CAAC;aACL;iBAAM,IAAI,OAAO,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;gBACpE,SAAS,CAAC,aAAa,CACnB,IAAA,8BAAW,EAAC,OAAO,CAAC,CAAC,iBAAiB,CAAC,uBAAuB,EAC9D,gCAAc,CAAC,uBAAuB,EACtC,oBAAS,CAAC,UAAU,CAAC,gCAAgC,EAAE,EACvD,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAC5B,CAAC;aACL;SACJ;KACJ;AACL,CAAC;AAnDD,oDAmDC;AAED,SAAS,wBAAwB,CAAC,SAAwB,EAAE,OAAwB,EAAE,WAAiB;IACnG,SAAS,CAAC,aAAa,CACnB,IAAA,8BAAW,EAAC,OAAO,CAAC,CAAC,iBAAiB,CAAC,2BAA2B,EAClE,gCAAc,CAAC,2BAA2B,EAC1C,oBAAS,CAAC,UAAU,CAAC,mBAAmB,EAAE,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,WAAW,CAAC,EAAE,CAAC,EAC7F,OAAO,CACV,CAAC;AACN,CAAC"}
|
package/dist/analyzer/program.js
CHANGED
@@ -59,6 +59,7 @@ const renameModuleProvider_1 = require("../languageService/renameModuleProvider"
|
|
59
59
|
const AnalyzerNodeInfo = __importStar(require("./analyzerNodeInfo"));
|
60
60
|
const cacheManager_1 = require("./cacheManager");
|
61
61
|
const circularDependency_1 = require("./circularDependency");
|
62
|
+
const declaration_1 = require("./declaration");
|
62
63
|
const parseTreeUtils_1 = require("./parseTreeUtils");
|
63
64
|
const scopeUtils_1 = require("./scopeUtils");
|
64
65
|
const sourceFile_1 = require("./sourceFile");
|
@@ -654,8 +655,8 @@ class Program {
|
|
654
655
|
if (configOptions.diagnosticRuleSet.omitConditionalConstraint) {
|
655
656
|
flags |= 64 /* OmitConditionalConstraint */;
|
656
657
|
}
|
657
|
-
if (configOptions.diagnosticRuleSet.
|
658
|
-
flags |= 2 /*
|
658
|
+
if (configOptions.diagnosticRuleSet.omitTypeArgsIfUnknown) {
|
659
|
+
flags |= 2 /* OmitTypeArgumentsIfUnknown */;
|
659
660
|
}
|
660
661
|
if (configOptions.diagnosticRuleSet.omitUnannotatedParamType) {
|
661
662
|
flags |= 4 /* OmitUnannotatedParamType */;
|
@@ -738,8 +739,10 @@ class Program {
|
|
738
739
|
if (!force && (!this._isFileNeeded(fileToParse) || !fileToParse.sourceFile.isParseRequired())) {
|
739
740
|
return;
|
740
741
|
}
|
741
|
-
//
|
742
|
-
//
|
742
|
+
// SourceFile.parse should only be called here in the program, as calling it
|
743
|
+
// elsewhere could break the entire dependency graph maintained by the program.
|
744
|
+
// Other parts of the program should use _parseFile to create ParseResults from
|
745
|
+
// the sourceFile. For standalone parseResults, use parseFile or the Parser directly.
|
743
746
|
if (fileToParse.sourceFile.parse(this._configOptions, this._importResolver, content)) {
|
744
747
|
this._parsedFileCount++;
|
745
748
|
this._updateSourceFileImports(fileToParse, this._configOptions);
|
@@ -793,7 +796,7 @@ class Program {
|
|
793
796
|
let implicitImport = implicitImports.pop();
|
794
797
|
while (implicitImport) {
|
795
798
|
// Bind this file, but don't recurse into its imports.
|
796
|
-
this._bindFile(implicitImport, undefined, undefined, /*isImplicitImport*/ true);
|
799
|
+
this._bindFile(implicitImport, undefined, undefined, /* isImplicitImport */ true);
|
797
800
|
implicitImport = implicitImports.pop();
|
798
801
|
}
|
799
802
|
}
|
@@ -850,9 +853,28 @@ class Program {
|
|
850
853
|
}
|
851
854
|
// Build a map of all modules within this program and the module-
|
852
855
|
// level scope that contains the symbol table for the module.
|
853
|
-
_buildModuleSymbolsMap(sourceFileToExclude,
|
856
|
+
_buildModuleSymbolsMap(sourceFileToExclude, libraryMap, includeSymbolsFromIndices, token) {
|
857
|
+
// If we have library map, always use the map for library symbols.
|
858
|
+
const predicate = (s) => {
|
859
|
+
if (!libraryMap) {
|
860
|
+
// We don't have any prebuilt indices, so we need to include
|
861
|
+
// all files.
|
862
|
+
return true;
|
863
|
+
}
|
864
|
+
if (!this._configOptions.indexing) {
|
865
|
+
// We have some prebuilt indices such as stdlib, but indexing is disabled.
|
866
|
+
// Include files we don't have prebuilt indices.
|
867
|
+
return libraryMap.get(s.sourceFile.getFilePath()) === undefined;
|
868
|
+
}
|
869
|
+
// We have prebuilt indices for third party libraries. Include only
|
870
|
+
// user files.
|
871
|
+
return (0, sourceFileInfoUtils_1.isUserCode)(s);
|
872
|
+
};
|
873
|
+
// Only include import alias from user files if indexing is off for now.
|
874
|
+
// Currently, when indexing is off, we don't do import alias deduplication, so
|
875
|
+
// adding import alias is cheap. But when indexing is on, we do deduplication, which
|
854
876
|
// require resolveAliasDeclaration that can cause more files to be parsed and bound.
|
855
|
-
return (0, autoImporter_1.buildModuleSymbolsMap)(this._sourceFileList.filter((s) => s !== sourceFileToExclude && (
|
877
|
+
return (0, autoImporter_1.buildModuleSymbolsMap)(this._sourceFileList.filter((s) => s !== sourceFileToExclude && predicate(s)), includeSymbolsFromIndices, token);
|
856
878
|
}
|
857
879
|
_shouldCheckFile(fileInfo) {
|
858
880
|
// Always do a full checking for a file that's open in the editor.
|
@@ -1115,8 +1137,8 @@ class Program {
|
|
1115
1137
|
return [];
|
1116
1138
|
}
|
1117
1139
|
const writtenWord = fileContents.substr(textRange.start, textRange.length);
|
1118
|
-
const map = this._buildModuleSymbolsMap(sourceFileInfo,
|
1119
|
-
/*
|
1140
|
+
const map = this._buildModuleSymbolsMap(sourceFileInfo, options.libraryMap,
|
1141
|
+
/* includeSymbolsFromIndices */ true, token);
|
1120
1142
|
options.patternMatcher =
|
1121
1143
|
(_a = options.patternMatcher) !== null && _a !== void 0 ? _a : ((p, t) => (0, stringUtils_1.computeCompletionSimilarity)(p, t) > similarityLimit);
|
1122
1144
|
const autoImporter = new autoImporter_1.AutoImporter(this._configOptions.findExecEnvironment(filePath), this._importResolver, parseTree, range.start, new completionProvider_1.CompletionMap(), map, options);
|
@@ -1380,7 +1402,7 @@ class Program {
|
|
1380
1402
|
this._bindFile(sourceFileInfo);
|
1381
1403
|
const execEnv = this._configOptions.findExecEnvironment(filePath);
|
1382
1404
|
sourceMapper = this._createSourceMapper(execEnv, token, sourceFileInfo, /* mapCompiled */ true);
|
1383
|
-
return sourceFileInfo.sourceFile.getCompletionsForPosition(position, workspacePath, this._configOptions, this._importResolver, this._lookUpImport, this._evaluator, options, sourceMapper, nameMap, libraryMap, () => this._buildModuleSymbolsMap(sourceFileInfo,
|
1405
|
+
return sourceFileInfo.sourceFile.getCompletionsForPosition(position, workspacePath, this._configOptions, this._importResolver, this._lookUpImport, this._evaluator, options, sourceMapper, nameMap, libraryMap, () => this._buildModuleSymbolsMap(sourceFileInfo, libraryMap, options.includeUserSymbolsInAutoImport, token), token);
|
1384
1406
|
});
|
1385
1407
|
ls.add(`found ${(_a = result === null || result === void 0 ? void 0 : result.completionMap.size) !== null && _a !== void 0 ? _a : 'null'} items`);
|
1386
1408
|
return result;
|
@@ -1411,7 +1433,7 @@ class Program {
|
|
1411
1433
|
}
|
1412
1434
|
this._bindFile(sourceFileInfo);
|
1413
1435
|
const execEnv = this._configOptions.findExecEnvironment(filePath);
|
1414
|
-
sourceFileInfo.sourceFile.resolveCompletionItem(this._configOptions, this._importResolver, this._lookUpImport, this._evaluator, options, this._createSourceMapper(execEnv, token, sourceFileInfo, /* mapCompiled */ true), nameMap, libraryMap, () => this._buildModuleSymbolsMap(sourceFileInfo,
|
1436
|
+
sourceFileInfo.sourceFile.resolveCompletionItem(this._configOptions, this._importResolver, this._lookUpImport, this._evaluator, options, this._createSourceMapper(execEnv, token, sourceFileInfo, /* mapCompiled */ true), nameMap, libraryMap, () => this._buildModuleSymbolsMap(sourceFileInfo, libraryMap, options.includeUserSymbolsInAutoImport, token), completionItem, token);
|
1415
1437
|
});
|
1416
1438
|
}
|
1417
1439
|
renameModule(path, newPath, token) {
|
@@ -1521,7 +1543,7 @@ class Program {
|
|
1521
1543
|
const range = (0, positionUtils_1.convertTextRangeToRange)({ start: insertionPoint, length: 0 }, newFileParseResults.tokenizerOutput.lines);
|
1522
1544
|
// If we are adding at the end of line (ex, end of a file),
|
1523
1545
|
// add new lines.
|
1524
|
-
const newLinesToAdd = _getNumberOfBlankLinesToInsert(newFileParseResults, range.end);
|
1546
|
+
const newLinesToAdd = _getNumberOfBlankLinesToInsert(newFileParseResults, sourceDecl, range.end);
|
1525
1547
|
codeSnippetToInsert = '\n'.repeat(newLinesToAdd) + codeSnippetToInsert;
|
1526
1548
|
renameModuleProvider.textEditTracker.addEdit(newFilePath, range, codeSnippetToInsert);
|
1527
1549
|
}
|
@@ -1642,18 +1664,51 @@ class Program {
|
|
1642
1664
|
realFilePath,
|
1643
1665
|
});
|
1644
1666
|
}
|
1645
|
-
function _getNumberOfBlankLinesToInsert(parseResults, position) {
|
1646
|
-
// This basically try to add 2 blanks lines before previous line with text.
|
1667
|
+
function _getNumberOfBlankLinesToInsert(parseResults, decl, position) {
|
1647
1668
|
if (position.line === 0 && position.character === 0) {
|
1648
1669
|
return 0;
|
1649
1670
|
}
|
1650
|
-
|
1651
|
-
|
1652
|
-
|
1653
|
-
|
1654
|
-
|
1655
|
-
//
|
1656
|
-
|
1671
|
+
let previousStatement;
|
1672
|
+
const offset = (0, positionUtils_1.convertPositionToOffset)(position, parseResults.tokenizerOutput.lines);
|
1673
|
+
if (offset && parseResults.parseTree.statements.length > 0) {
|
1674
|
+
previousStatement = parseResults.parseTree.statements.reduce((prev, curr) => offset < curr.start ? prev : curr);
|
1675
|
+
}
|
1676
|
+
// This basically try to add some blank lines after the last line with text.
|
1677
|
+
let linesToAdd = 0;
|
1678
|
+
if (previousStatement) {
|
1679
|
+
if ((0, declaration_1.isVariableDeclaration)(decl)) {
|
1680
|
+
switch (previousStatement.nodeType) {
|
1681
|
+
case 47 /* StatementList */:
|
1682
|
+
// Small statement such as call, assignment, etc.
|
1683
|
+
linesToAdd = 0;
|
1684
|
+
break;
|
1685
|
+
case 10 /* Class */:
|
1686
|
+
case 28 /* Function */:
|
1687
|
+
linesToAdd = 2;
|
1688
|
+
break;
|
1689
|
+
default:
|
1690
|
+
// any other statement such as if, while, etc. we will add 1 blank line.
|
1691
|
+
linesToAdd = 1;
|
1692
|
+
}
|
1693
|
+
}
|
1694
|
+
else {
|
1695
|
+
linesToAdd = 2;
|
1696
|
+
}
|
1697
|
+
}
|
1698
|
+
// If the position is not at the beginning of the line, we need to add 1 more '\n'
|
1699
|
+
// to start from blank line.
|
1700
|
+
linesToAdd += position.character !== 0 ? 1 : 0;
|
1701
|
+
// If there are already blank lines, we only add the difference.
|
1702
|
+
const desiredBlankLines = linesToAdd;
|
1703
|
+
const startingLine = position.character !== 0 ? position.line : position.line - 1;
|
1704
|
+
for (let i = 0; i < desiredBlankLines; i++) {
|
1705
|
+
const currentLine = startingLine - i;
|
1706
|
+
if (currentLine < 0 || !(0, parseTreeUtils_1.isBlankLine)(parseResults, currentLine)) {
|
1707
|
+
break;
|
1708
|
+
}
|
1709
|
+
linesToAdd--;
|
1710
|
+
}
|
1711
|
+
return linesToAdd;
|
1657
1712
|
}
|
1658
1713
|
}
|
1659
1714
|
clone() {
|
@@ -1874,7 +1929,7 @@ class Program {
|
|
1874
1929
|
extensibility_1.Extensions.getProgramExtensions(this.rootPath).forEach((e) => (e.clearCache ? e.clearCache() : null));
|
1875
1930
|
}
|
1876
1931
|
test_createSourceMapper(execEnv, from) {
|
1877
|
-
return this._createSourceMapper(execEnv, vscode_languageserver_1.CancellationToken.None, /*from*/ from, /* mapCompiled */ false);
|
1932
|
+
return this._createSourceMapper(execEnv, vscode_languageserver_1.CancellationToken.None, /* from */ from, /* mapCompiled */ false);
|
1878
1933
|
}
|
1879
1934
|
_getRenameSymbolMode(sourceFileInfo, referencesResult, isDefaultWorkspace) {
|
1880
1935
|
// We have 2 different cases
|