brighterscript 1.0.0-alpha.23 → 1.0.0-alpha.25

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.
Files changed (536) hide show
  1. package/CHANGELOG.md +585 -218
  2. package/README.md +45 -139
  3. package/bsconfig.schema.json +41 -0
  4. package/dist/ActionPipeline.d.ts +10 -0
  5. package/dist/ActionPipeline.js +40 -0
  6. package/dist/ActionPipeline.js.map +1 -0
  7. package/dist/AstValidationSegmenter.d.ts +25 -0
  8. package/dist/AstValidationSegmenter.js +152 -0
  9. package/dist/AstValidationSegmenter.js.map +1 -0
  10. package/dist/BsConfig.d.ts +39 -4
  11. package/dist/BusyStatusTracker.d.ts +31 -0
  12. package/dist/BusyStatusTracker.js +83 -0
  13. package/dist/BusyStatusTracker.js.map +1 -0
  14. package/dist/Cache.js +3 -3
  15. package/dist/Cache.js.map +1 -1
  16. package/dist/CacheVerifier.d.ts +7 -0
  17. package/dist/CacheVerifier.js +20 -0
  18. package/dist/CacheVerifier.js.map +1 -0
  19. package/dist/CodeActionUtil.d.ts +3 -3
  20. package/dist/CodeActionUtil.js.map +1 -1
  21. package/dist/CommentFlagProcessor.d.ts +3 -2
  22. package/dist/CommentFlagProcessor.js +5 -4
  23. package/dist/CommentFlagProcessor.js.map +1 -1
  24. package/dist/DependencyGraph.d.ts +3 -2
  25. package/dist/DependencyGraph.js +11 -10
  26. package/dist/DependencyGraph.js.map +1 -1
  27. package/dist/DiagnosticCollection.js +9 -5
  28. package/dist/DiagnosticCollection.js.map +1 -1
  29. package/dist/DiagnosticFilterer.d.ts +1 -0
  30. package/dist/DiagnosticFilterer.js +5 -3
  31. package/dist/DiagnosticFilterer.js.map +1 -1
  32. package/dist/DiagnosticMessages.d.ts +79 -15
  33. package/dist/DiagnosticMessages.js +134 -21
  34. package/dist/DiagnosticMessages.js.map +1 -1
  35. package/dist/DiagnosticSeverityAdjuster.d.ts +7 -0
  36. package/dist/DiagnosticSeverityAdjuster.js +41 -0
  37. package/dist/DiagnosticSeverityAdjuster.js.map +1 -0
  38. package/dist/FunctionScope.d.ts +28 -0
  39. package/dist/FunctionScope.js +52 -0
  40. package/dist/FunctionScope.js.map +1 -0
  41. package/dist/KeyedThrottler.d.ts +3 -3
  42. package/dist/KeyedThrottler.js +3 -3
  43. package/dist/KeyedThrottler.js.map +1 -1
  44. package/dist/LanguageServer.d.ts +23 -11
  45. package/dist/LanguageServer.js +222 -87
  46. package/dist/LanguageServer.js.map +1 -1
  47. package/dist/Logger.d.ts +3 -2
  48. package/dist/Logger.js +11 -3
  49. package/dist/Logger.js.map +1 -1
  50. package/dist/PluginInterface.d.ts +21 -3
  51. package/dist/PluginInterface.js +74 -6
  52. package/dist/PluginInterface.js.map +1 -1
  53. package/dist/Program.d.ts +162 -81
  54. package/dist/Program.js +903 -732
  55. package/dist/Program.js.map +1 -1
  56. package/dist/ProgramBuilder.d.ts +22 -12
  57. package/dist/ProgramBuilder.js +132 -104
  58. package/dist/ProgramBuilder.js.map +1 -1
  59. package/dist/Scope.d.ts +95 -134
  60. package/dist/Scope.js +477 -551
  61. package/dist/Scope.js.map +1 -1
  62. package/dist/Stopwatch.js +1 -1
  63. package/dist/Stopwatch.js.map +1 -1
  64. package/dist/SymbolTable.d.ts +95 -29
  65. package/dist/SymbolTable.js +256 -102
  66. package/dist/SymbolTable.js.map +1 -1
  67. package/dist/Throttler.d.ts +12 -0
  68. package/dist/Throttler.js +39 -0
  69. package/dist/Throttler.js.map +1 -1
  70. package/dist/Watcher.d.ts +0 -3
  71. package/dist/Watcher.js +0 -3
  72. package/dist/Watcher.js.map +1 -1
  73. package/dist/XmlScope.d.ts +4 -6
  74. package/dist/XmlScope.js +74 -68
  75. package/dist/XmlScope.js.map +1 -1
  76. package/dist/astUtils/CachedLookups.d.ts +48 -0
  77. package/dist/astUtils/CachedLookups.js +323 -0
  78. package/dist/astUtils/CachedLookups.js.map +1 -0
  79. package/dist/astUtils/{AstEditor.d.ts → Editor.d.ts} +9 -5
  80. package/dist/astUtils/{AstEditor.js → Editor.js} +10 -4
  81. package/dist/astUtils/Editor.js.map +1 -0
  82. package/dist/astUtils/{AstEditor.spec.js → Editor.spec.js} +68 -64
  83. package/dist/astUtils/Editor.spec.js.map +1 -0
  84. package/dist/astUtils/creators.d.ts +10 -10
  85. package/dist/astUtils/creators.js +26 -16
  86. package/dist/astUtils/creators.js.map +1 -1
  87. package/dist/astUtils/creators.spec.js +5 -5
  88. package/dist/astUtils/creators.spec.js.map +1 -1
  89. package/dist/astUtils/reflection.d.ts +132 -100
  90. package/dist/astUtils/reflection.js +225 -166
  91. package/dist/astUtils/reflection.js.map +1 -1
  92. package/dist/astUtils/reflection.spec.js +208 -126
  93. package/dist/astUtils/reflection.spec.js.map +1 -1
  94. package/dist/astUtils/stackedVisitor.spec.js +12 -12
  95. package/dist/astUtils/stackedVisitor.spec.js.map +1 -1
  96. package/dist/astUtils/visitors.d.ts +54 -35
  97. package/dist/astUtils/visitors.js +29 -3
  98. package/dist/astUtils/visitors.js.map +1 -1
  99. package/dist/astUtils/visitors.spec.js +178 -33
  100. package/dist/astUtils/visitors.spec.js.map +1 -1
  101. package/dist/astUtils/xml.d.ts +9 -9
  102. package/dist/astUtils/xml.js +9 -9
  103. package/dist/astUtils/xml.js.map +1 -1
  104. package/dist/bscPlugin/BscPlugin.d.ts +12 -2
  105. package/dist/bscPlugin/BscPlugin.js +41 -3
  106. package/dist/bscPlugin/BscPlugin.js.map +1 -1
  107. package/dist/bscPlugin/CallExpressionInfo.d.ts +36 -0
  108. package/dist/bscPlugin/CallExpressionInfo.js +131 -0
  109. package/dist/bscPlugin/CallExpressionInfo.js.map +1 -0
  110. package/dist/bscPlugin/FileWriter.d.ts +6 -0
  111. package/dist/bscPlugin/FileWriter.js +24 -0
  112. package/dist/bscPlugin/FileWriter.js.map +1 -0
  113. package/dist/bscPlugin/SignatureHelpUtil.d.ts +10 -0
  114. package/dist/bscPlugin/SignatureHelpUtil.js +135 -0
  115. package/dist/bscPlugin/SignatureHelpUtil.js.map +1 -0
  116. package/dist/bscPlugin/codeActions/CodeActionsProcessor.d.ts +1 -1
  117. package/dist/bscPlugin/codeActions/CodeActionsProcessor.js +21 -12
  118. package/dist/bscPlugin/codeActions/CodeActionsProcessor.js.map +1 -1
  119. package/dist/bscPlugin/codeActions/CodeActionsProcessor.spec.js +86 -12
  120. package/dist/bscPlugin/codeActions/CodeActionsProcessor.spec.js.map +1 -1
  121. package/dist/bscPlugin/completions/CompletionsProcessor.d.ts +57 -0
  122. package/dist/bscPlugin/completions/CompletionsProcessor.js +544 -0
  123. package/dist/bscPlugin/completions/CompletionsProcessor.js.map +1 -0
  124. package/dist/bscPlugin/completions/CompletionsProcessor.spec.js +1909 -0
  125. package/dist/bscPlugin/completions/CompletionsProcessor.spec.js.map +1 -0
  126. package/dist/bscPlugin/fileProviders/FileProvider.d.ts +9 -0
  127. package/dist/bscPlugin/fileProviders/FileProvider.js +51 -0
  128. package/dist/bscPlugin/fileProviders/FileProvider.js.map +1 -0
  129. package/dist/bscPlugin/hover/HoverProcessor.d.ts +17 -0
  130. package/dist/bscPlugin/hover/HoverProcessor.js +188 -0
  131. package/dist/bscPlugin/hover/HoverProcessor.js.map +1 -0
  132. package/dist/bscPlugin/hover/HoverProcessor.spec.js +513 -0
  133. package/dist/bscPlugin/hover/HoverProcessor.spec.js.map +1 -0
  134. package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.d.ts +3 -1
  135. package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.js +102 -29
  136. package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.js.map +1 -1
  137. package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.spec.js +167 -6
  138. package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.spec.js.map +1 -1
  139. package/dist/bscPlugin/serialize/BslibInjector.spec.d.ts +1 -0
  140. package/dist/bscPlugin/serialize/BslibInjector.spec.js +19 -0
  141. package/dist/bscPlugin/serialize/BslibInjector.spec.js.map +1 -0
  142. package/dist/bscPlugin/serialize/BslibManager.d.ts +9 -0
  143. package/dist/bscPlugin/serialize/BslibManager.js +40 -0
  144. package/dist/bscPlugin/serialize/BslibManager.js.map +1 -0
  145. package/dist/bscPlugin/serialize/FileSerializer.d.ts +9 -0
  146. package/dist/bscPlugin/serialize/FileSerializer.js +72 -0
  147. package/dist/bscPlugin/serialize/FileSerializer.js.map +1 -0
  148. package/dist/bscPlugin/transpile/BrsFileTranspileProcessor.d.ts +16 -0
  149. package/dist/bscPlugin/transpile/BrsFileTranspileProcessor.js +123 -0
  150. package/dist/bscPlugin/transpile/BrsFileTranspileProcessor.js.map +1 -0
  151. package/dist/bscPlugin/transpile/BrsFileTranspileProcessor.spec.d.ts +1 -0
  152. package/dist/bscPlugin/transpile/BrsFileTranspileProcessor.spec.js +41 -0
  153. package/dist/bscPlugin/transpile/BrsFileTranspileProcessor.spec.js.map +1 -0
  154. package/dist/bscPlugin/transpile/XmlFilePreTranspileProcessor.d.ts +12 -0
  155. package/dist/bscPlugin/transpile/XmlFilePreTranspileProcessor.js +99 -0
  156. package/dist/bscPlugin/transpile/XmlFilePreTranspileProcessor.js.map +1 -0
  157. package/dist/bscPlugin/validation/BrsFileValidator.d.ts +22 -1
  158. package/dist/bscPlugin/validation/BrsFileValidator.js +316 -29
  159. package/dist/bscPlugin/validation/BrsFileValidator.js.map +1 -1
  160. package/dist/bscPlugin/validation/BrsFileValidator.spec.d.ts +1 -0
  161. package/dist/bscPlugin/validation/BrsFileValidator.spec.js +264 -0
  162. package/dist/bscPlugin/validation/BrsFileValidator.spec.js.map +1 -0
  163. package/dist/bscPlugin/validation/ProgramValidator.d.ts +10 -0
  164. package/dist/bscPlugin/validation/ProgramValidator.js +32 -0
  165. package/dist/bscPlugin/validation/ProgramValidator.js.map +1 -0
  166. package/dist/bscPlugin/validation/ScopeValidator.d.ts +56 -8
  167. package/dist/bscPlugin/validation/ScopeValidator.js +514 -116
  168. package/dist/bscPlugin/validation/ScopeValidator.js.map +1 -1
  169. package/dist/bscPlugin/validation/ScopeValidator.spec.d.ts +1 -0
  170. package/dist/bscPlugin/validation/ScopeValidator.spec.js +2454 -0
  171. package/dist/bscPlugin/validation/ScopeValidator.spec.js.map +1 -0
  172. package/dist/bscPlugin/validation/XmlFileValidator.d.ts +8 -0
  173. package/dist/bscPlugin/validation/XmlFileValidator.js +44 -0
  174. package/dist/bscPlugin/validation/XmlFileValidator.js.map +1 -0
  175. package/dist/cli.js +107 -8
  176. package/dist/cli.js.map +1 -1
  177. package/dist/deferred.d.ts +3 -3
  178. package/dist/deferred.js.map +1 -1
  179. package/dist/diagnosticUtils.d.ts +8 -2
  180. package/dist/diagnosticUtils.js +47 -17
  181. package/dist/diagnosticUtils.js.map +1 -1
  182. package/dist/examples/plugins/removePrint.js +8 -10
  183. package/dist/examples/plugins/removePrint.js.map +1 -1
  184. package/dist/files/AssetFile.d.ts +26 -0
  185. package/dist/files/AssetFile.js +26 -0
  186. package/dist/files/AssetFile.js.map +1 -0
  187. package/dist/files/BrsFile.Class.spec.js +529 -486
  188. package/dist/files/BrsFile.Class.spec.js.map +1 -1
  189. package/dist/files/BrsFile.d.ts +124 -112
  190. package/dist/files/BrsFile.js +819 -1131
  191. package/dist/files/BrsFile.js.map +1 -1
  192. package/dist/files/BrsFile.spec.js +1869 -1277
  193. package/dist/files/BrsFile.spec.js.map +1 -1
  194. package/dist/files/BscFile.d.ts +104 -0
  195. package/dist/files/BscFile.js +16 -0
  196. package/dist/files/BscFile.js.map +1 -0
  197. package/dist/files/Factory.d.ts +25 -0
  198. package/dist/files/Factory.js +22 -0
  199. package/dist/files/Factory.js.map +1 -0
  200. package/dist/files/LazyFileData.d.ts +20 -0
  201. package/dist/files/LazyFileData.js +54 -0
  202. package/dist/files/LazyFileData.js.map +1 -0
  203. package/dist/files/LazyFileData.spec.d.ts +1 -0
  204. package/dist/files/LazyFileData.spec.js +27 -0
  205. package/dist/files/LazyFileData.spec.js.map +1 -0
  206. package/dist/files/XmlFile.d.ts +70 -32
  207. package/dist/files/XmlFile.js +106 -117
  208. package/dist/files/XmlFile.js.map +1 -1
  209. package/dist/files/XmlFile.spec.js +325 -262
  210. package/dist/files/XmlFile.spec.js.map +1 -1
  211. package/dist/files/tests/imports.spec.js +49 -41
  212. package/dist/files/tests/imports.spec.js.map +1 -1
  213. package/dist/files/tests/optionalChaning.spec.js +104 -40
  214. package/dist/files/tests/optionalChaning.spec.js.map +1 -1
  215. package/dist/globalCallables.js +16 -18
  216. package/dist/globalCallables.js.map +1 -1
  217. package/dist/index.d.ts +13 -2
  218. package/dist/index.js +15 -2
  219. package/dist/index.js.map +1 -1
  220. package/dist/interfaces.d.ts +440 -150
  221. package/dist/interfaces.js +27 -0
  222. package/dist/interfaces.js.map +1 -1
  223. package/dist/lexer/Character.spec.js +5 -5
  224. package/dist/lexer/Character.spec.js.map +1 -1
  225. package/dist/lexer/Lexer.d.ts +12 -5
  226. package/dist/lexer/Lexer.js +28 -13
  227. package/dist/lexer/Lexer.js.map +1 -1
  228. package/dist/lexer/Lexer.spec.js +187 -134
  229. package/dist/lexer/Lexer.spec.js.map +1 -1
  230. package/dist/lexer/Token.d.ts +9 -1
  231. package/dist/lexer/Token.js +9 -1
  232. package/dist/lexer/Token.js.map +1 -1
  233. package/dist/lexer/TokenKind.d.ts +9 -0
  234. package/dist/lexer/TokenKind.js +30 -5
  235. package/dist/lexer/TokenKind.js.map +1 -1
  236. package/dist/parser/AstNode.d.ts +162 -0
  237. package/dist/parser/AstNode.js +225 -0
  238. package/dist/parser/AstNode.js.map +1 -0
  239. package/dist/parser/AstNode.spec.d.ts +1 -0
  240. package/dist/parser/AstNode.spec.js +165 -0
  241. package/dist/parser/AstNode.spec.js.map +1 -0
  242. package/dist/parser/BrsTranspileState.d.ts +4 -7
  243. package/dist/parser/BrsTranspileState.js +4 -12
  244. package/dist/parser/BrsTranspileState.js.map +1 -1
  245. package/dist/parser/Expression.d.ts +126 -167
  246. package/dist/parser/Expression.js +524 -394
  247. package/dist/parser/Expression.js.map +1 -1
  248. package/dist/parser/Parser.Class.spec.js +152 -146
  249. package/dist/parser/Parser.Class.spec.js.map +1 -1
  250. package/dist/parser/Parser.d.ts +45 -196
  251. package/dist/parser/Parser.js +470 -926
  252. package/dist/parser/Parser.js.map +1 -1
  253. package/dist/parser/Parser.spec.d.ts +3 -1
  254. package/dist/parser/Parser.spec.js +1034 -805
  255. package/dist/parser/Parser.spec.js.map +1 -1
  256. package/dist/parser/SGParser.d.ts +9 -8
  257. package/dist/parser/SGParser.js +10 -8
  258. package/dist/parser/SGParser.js.map +1 -1
  259. package/dist/parser/SGParser.spec.js +27 -38
  260. package/dist/parser/SGParser.spec.js.map +1 -1
  261. package/dist/parser/SGTypes.d.ts +98 -35
  262. package/dist/parser/SGTypes.js +169 -99
  263. package/dist/parser/SGTypes.js.map +1 -1
  264. package/dist/parser/Statement.d.ts +208 -122
  265. package/dist/parser/Statement.js +599 -364
  266. package/dist/parser/Statement.js.map +1 -1
  267. package/dist/parser/Statement.spec.js +45 -21
  268. package/dist/parser/Statement.spec.js.map +1 -1
  269. package/dist/parser/TranspileState.d.ts +1 -1
  270. package/dist/parser/TranspileState.js +7 -12
  271. package/dist/parser/TranspileState.js.map +1 -1
  272. package/dist/parser/tests/Parser.spec.js +3 -2
  273. package/dist/parser/tests/Parser.spec.js.map +1 -1
  274. package/dist/parser/tests/controlFlow/For.spec.js +33 -23
  275. package/dist/parser/tests/controlFlow/For.spec.js.map +1 -1
  276. package/dist/parser/tests/controlFlow/ForEach.spec.js +25 -20
  277. package/dist/parser/tests/controlFlow/ForEach.spec.js.map +1 -1
  278. package/dist/parser/tests/controlFlow/If.spec.js +96 -94
  279. package/dist/parser/tests/controlFlow/If.spec.js.map +1 -1
  280. package/dist/parser/tests/controlFlow/While.spec.js +22 -16
  281. package/dist/parser/tests/controlFlow/While.spec.js.map +1 -1
  282. package/dist/parser/tests/expression/Additive.spec.js +8 -8
  283. package/dist/parser/tests/expression/Additive.spec.js.map +1 -1
  284. package/dist/parser/tests/expression/ArrayLiterals.spec.js +58 -21
  285. package/dist/parser/tests/expression/ArrayLiterals.spec.js.map +1 -1
  286. package/dist/parser/tests/expression/AssociativeArrayLiterals.spec.js +61 -20
  287. package/dist/parser/tests/expression/AssociativeArrayLiterals.spec.js.map +1 -1
  288. package/dist/parser/tests/expression/Boolean.spec.js +8 -8
  289. package/dist/parser/tests/expression/Boolean.spec.js.map +1 -1
  290. package/dist/parser/tests/expression/Call.spec.js +129 -21
  291. package/dist/parser/tests/expression/Call.spec.js.map +1 -1
  292. package/dist/parser/tests/expression/Exponential.spec.js +5 -5
  293. package/dist/parser/tests/expression/Exponential.spec.js.map +1 -1
  294. package/dist/parser/tests/expression/Function.spec.js +36 -36
  295. package/dist/parser/tests/expression/Function.spec.js.map +1 -1
  296. package/dist/parser/tests/expression/Indexing.spec.js +67 -22
  297. package/dist/parser/tests/expression/Indexing.spec.js.map +1 -1
  298. package/dist/parser/tests/expression/Multiplicative.spec.js +9 -9
  299. package/dist/parser/tests/expression/Multiplicative.spec.js.map +1 -1
  300. package/dist/parser/tests/expression/NullCoalescenceExpression.spec.js +123 -81
  301. package/dist/parser/tests/expression/NullCoalescenceExpression.spec.js.map +1 -1
  302. package/dist/parser/tests/expression/PrefixUnary.spec.js +12 -12
  303. package/dist/parser/tests/expression/PrefixUnary.spec.js.map +1 -1
  304. package/dist/parser/tests/expression/Primary.spec.js +12 -12
  305. package/dist/parser/tests/expression/Primary.spec.js.map +1 -1
  306. package/dist/parser/tests/expression/RegexLiteralExpression.spec.js +10 -10
  307. package/dist/parser/tests/expression/RegexLiteralExpression.spec.js.map +1 -1
  308. package/dist/parser/tests/expression/Relational.spec.js +13 -13
  309. package/dist/parser/tests/expression/Relational.spec.js.map +1 -1
  310. package/dist/parser/tests/expression/SourceLiteralExpression.spec.js +24 -24
  311. package/dist/parser/tests/expression/SourceLiteralExpression.spec.js.map +1 -1
  312. package/dist/parser/tests/expression/TemplateStringExpression.spec.js +221 -81
  313. package/dist/parser/tests/expression/TemplateStringExpression.spec.js.map +1 -1
  314. package/dist/parser/tests/expression/TernaryExpression.spec.js +287 -105
  315. package/dist/parser/tests/expression/TernaryExpression.spec.js.map +1 -1
  316. package/dist/parser/tests/expression/TypeExpression.spec.d.ts +1 -0
  317. package/dist/parser/tests/expression/TypeExpression.spec.js +127 -0
  318. package/dist/parser/tests/expression/TypeExpression.spec.js.map +1 -0
  319. package/dist/parser/tests/expression/UnaryExpression.spec.d.ts +1 -0
  320. package/dist/parser/tests/expression/UnaryExpression.spec.js +52 -0
  321. package/dist/parser/tests/expression/UnaryExpression.spec.js.map +1 -0
  322. package/dist/parser/tests/statement/AssignmentOperators.spec.js +15 -15
  323. package/dist/parser/tests/statement/AssignmentOperators.spec.js.map +1 -1
  324. package/dist/parser/tests/statement/ConstStatement.spec.d.ts +1 -0
  325. package/dist/parser/tests/statement/ConstStatement.spec.js +262 -0
  326. package/dist/parser/tests/statement/ConstStatement.spec.js.map +1 -0
  327. package/dist/parser/tests/statement/Continue.spec.d.ts +1 -0
  328. package/dist/parser/tests/statement/Continue.spec.js +119 -0
  329. package/dist/parser/tests/statement/Continue.spec.js.map +1 -0
  330. package/dist/parser/tests/statement/Declaration.spec.js +19 -19
  331. package/dist/parser/tests/statement/Declaration.spec.js.map +1 -1
  332. package/dist/parser/tests/statement/Dim.spec.js +22 -22
  333. package/dist/parser/tests/statement/Dim.spec.js.map +1 -1
  334. package/dist/parser/tests/statement/Enum.spec.js +111 -300
  335. package/dist/parser/tests/statement/Enum.spec.js.map +1 -1
  336. package/dist/parser/tests/statement/For.spec.js +9 -10
  337. package/dist/parser/tests/statement/For.spec.js.map +1 -1
  338. package/dist/parser/tests/statement/ForEach.spec.js +8 -9
  339. package/dist/parser/tests/statement/ForEach.spec.js.map +1 -1
  340. package/dist/parser/tests/statement/Function.spec.js +44 -35
  341. package/dist/parser/tests/statement/Function.spec.js.map +1 -1
  342. package/dist/parser/tests/statement/Goto.spec.js +5 -5
  343. package/dist/parser/tests/statement/Goto.spec.js.map +1 -1
  344. package/dist/parser/tests/statement/Increment.spec.js +20 -20
  345. package/dist/parser/tests/statement/Increment.spec.js.map +1 -1
  346. package/dist/parser/tests/statement/InterfaceStatement.spec.js +30 -196
  347. package/dist/parser/tests/statement/InterfaceStatement.spec.js.map +1 -1
  348. package/dist/parser/tests/statement/LibraryStatement.spec.js +11 -11
  349. package/dist/parser/tests/statement/LibraryStatement.spec.js.map +1 -1
  350. package/dist/parser/tests/statement/Misc.spec.js +16 -78
  351. package/dist/parser/tests/statement/Misc.spec.js.map +1 -1
  352. package/dist/parser/tests/statement/PrintStatement.spec.js +107 -90
  353. package/dist/parser/tests/statement/PrintStatement.spec.js.map +1 -1
  354. package/dist/parser/tests/statement/ReturnStatement.spec.js +14 -12
  355. package/dist/parser/tests/statement/ReturnStatement.spec.js.map +1 -1
  356. package/dist/parser/tests/statement/Set.spec.js +48 -35
  357. package/dist/parser/tests/statement/Set.spec.js.map +1 -1
  358. package/dist/parser/tests/statement/Stop.spec.js +6 -6
  359. package/dist/parser/tests/statement/Stop.spec.js.map +1 -1
  360. package/dist/parser/tests/statement/Throw.spec.js +6 -6
  361. package/dist/parser/tests/statement/Throw.spec.js.map +1 -1
  362. package/dist/parser/tests/statement/TryCatch.spec.js +18 -16
  363. package/dist/parser/tests/statement/TryCatch.spec.js.map +1 -1
  364. package/dist/preprocessor/Manifest.d.ts +1 -1
  365. package/dist/preprocessor/Manifest.js +3 -3
  366. package/dist/preprocessor/Manifest.js.map +1 -1
  367. package/dist/preprocessor/Manifest.spec.js +8 -8
  368. package/dist/preprocessor/Manifest.spec.js.map +1 -1
  369. package/dist/preprocessor/Preprocessor.d.ts +5 -6
  370. package/dist/preprocessor/Preprocessor.js +15 -11
  371. package/dist/preprocessor/Preprocessor.js.map +1 -1
  372. package/dist/preprocessor/Preprocessor.spec.js +25 -25
  373. package/dist/preprocessor/Preprocessor.spec.js.map +1 -1
  374. package/dist/preprocessor/PreprocessorParser.d.ts +1 -1
  375. package/dist/preprocessor/PreprocessorParser.js +7 -1
  376. package/dist/preprocessor/PreprocessorParser.js.map +1 -1
  377. package/dist/preprocessor/PreprocessorParser.spec.js +13 -13
  378. package/dist/preprocessor/PreprocessorParser.spec.js.map +1 -1
  379. package/dist/roku-types/data.json +6544 -10519
  380. package/dist/roku-types/index.d.ts +662 -1934
  381. package/dist/types/ArrayType.d.ts +10 -9
  382. package/dist/types/ArrayType.js +65 -60
  383. package/dist/types/ArrayType.js.map +1 -1
  384. package/dist/types/ArrayType.spec.js +36 -68
  385. package/dist/types/ArrayType.spec.js.map +1 -1
  386. package/dist/types/AssociativeArrayType.d.ts +11 -0
  387. package/dist/types/AssociativeArrayType.js +52 -0
  388. package/dist/types/AssociativeArrayType.js.map +1 -0
  389. package/dist/types/BaseFunctionType.d.ts +9 -0
  390. package/dist/types/BaseFunctionType.js +25 -0
  391. package/dist/types/BaseFunctionType.js.map +1 -0
  392. package/dist/types/BooleanType.d.ts +8 -5
  393. package/dist/types/BooleanType.js +14 -7
  394. package/dist/types/BooleanType.js.map +1 -1
  395. package/dist/types/BooleanType.spec.js +10 -6
  396. package/dist/types/BooleanType.spec.js.map +1 -1
  397. package/dist/types/BscType.d.ts +32 -21
  398. package/dist/types/BscType.js +118 -21
  399. package/dist/types/BscType.js.map +1 -1
  400. package/dist/types/BscTypeKind.d.ts +25 -0
  401. package/dist/types/BscTypeKind.js +30 -0
  402. package/dist/types/BscTypeKind.js.map +1 -0
  403. package/dist/types/BuiltInInterfaceAdder.d.ts +23 -0
  404. package/dist/types/BuiltInInterfaceAdder.js +164 -0
  405. package/dist/types/BuiltInInterfaceAdder.js.map +1 -0
  406. package/dist/types/BuiltInInterfaceAdder.spec.d.ts +1 -0
  407. package/dist/types/BuiltInInterfaceAdder.spec.js +116 -0
  408. package/dist/types/BuiltInInterfaceAdder.spec.js.map +1 -0
  409. package/dist/types/ClassType.d.ts +17 -0
  410. package/dist/types/ClassType.js +58 -0
  411. package/dist/types/ClassType.js.map +1 -0
  412. package/dist/types/ClassType.spec.d.ts +1 -0
  413. package/dist/types/ClassType.spec.js +77 -0
  414. package/dist/types/ClassType.spec.js.map +1 -0
  415. package/dist/types/ComponentType.d.ts +26 -0
  416. package/dist/types/ComponentType.js +83 -0
  417. package/dist/types/ComponentType.js.map +1 -0
  418. package/dist/types/DoubleType.d.ts +8 -5
  419. package/dist/types/DoubleType.js +18 -16
  420. package/dist/types/DoubleType.js.map +1 -1
  421. package/dist/types/DoubleType.spec.js +12 -6
  422. package/dist/types/DoubleType.spec.js.map +1 -1
  423. package/dist/types/DynamicType.d.ts +10 -5
  424. package/dist/types/DynamicType.js +16 -4
  425. package/dist/types/DynamicType.js.map +1 -1
  426. package/dist/types/DynamicType.spec.js +16 -5
  427. package/dist/types/DynamicType.spec.js.map +1 -1
  428. package/dist/types/EnumType.d.ts +30 -12
  429. package/dist/types/EnumType.js +43 -17
  430. package/dist/types/EnumType.js.map +1 -1
  431. package/dist/types/EnumType.spec.d.ts +1 -0
  432. package/dist/types/EnumType.spec.js +33 -0
  433. package/dist/types/EnumType.spec.js.map +1 -0
  434. package/dist/types/FloatType.d.ts +8 -5
  435. package/dist/types/FloatType.js +18 -16
  436. package/dist/types/FloatType.js.map +1 -1
  437. package/dist/types/FloatType.spec.js +4 -6
  438. package/dist/types/FloatType.spec.js.map +1 -1
  439. package/dist/types/FunctionType.d.ts +13 -8
  440. package/dist/types/FunctionType.js +30 -14
  441. package/dist/types/FunctionType.js.map +1 -1
  442. package/dist/types/InheritableType.d.ts +28 -0
  443. package/dist/types/InheritableType.js +152 -0
  444. package/dist/types/InheritableType.js.map +1 -0
  445. package/dist/types/IntegerType.d.ts +8 -5
  446. package/dist/types/IntegerType.js +18 -16
  447. package/dist/types/IntegerType.js.map +1 -1
  448. package/dist/types/IntegerType.spec.js +8 -6
  449. package/dist/types/IntegerType.spec.js.map +1 -1
  450. package/dist/types/InterfaceType.d.ts +12 -13
  451. package/dist/types/InterfaceType.js +20 -48
  452. package/dist/types/InterfaceType.js.map +1 -1
  453. package/dist/types/InterfaceType.spec.js +90 -56
  454. package/dist/types/InterfaceType.spec.js.map +1 -1
  455. package/dist/types/InvalidType.d.ts +7 -5
  456. package/dist/types/InvalidType.js +13 -7
  457. package/dist/types/InvalidType.js.map +1 -1
  458. package/dist/types/InvalidType.spec.js +8 -6
  459. package/dist/types/InvalidType.spec.js.map +1 -1
  460. package/dist/types/LongIntegerType.d.ts +8 -5
  461. package/dist/types/LongIntegerType.js +17 -15
  462. package/dist/types/LongIntegerType.js.map +1 -1
  463. package/dist/types/LongIntegerType.spec.js +10 -6
  464. package/dist/types/LongIntegerType.spec.js.map +1 -1
  465. package/dist/types/NamespaceType.d.ts +12 -0
  466. package/dist/types/NamespaceType.js +28 -0
  467. package/dist/types/NamespaceType.js.map +1 -0
  468. package/dist/types/ObjectType.d.ts +9 -8
  469. package/dist/types/ObjectType.js +21 -11
  470. package/dist/types/ObjectType.js.map +1 -1
  471. package/dist/types/ObjectType.spec.js +3 -3
  472. package/dist/types/ObjectType.spec.js.map +1 -1
  473. package/dist/types/ReferenceType.d.ts +63 -0
  474. package/dist/types/ReferenceType.js +423 -0
  475. package/dist/types/ReferenceType.js.map +1 -0
  476. package/dist/types/ReferenceType.spec.d.ts +1 -0
  477. package/dist/types/ReferenceType.spec.js +137 -0
  478. package/dist/types/ReferenceType.spec.js.map +1 -0
  479. package/dist/types/StringType.d.ts +11 -5
  480. package/dist/types/StringType.js +18 -7
  481. package/dist/types/StringType.js.map +1 -1
  482. package/dist/types/StringType.spec.js +3 -5
  483. package/dist/types/StringType.spec.js.map +1 -1
  484. package/dist/types/TypedFunctionType.d.ts +22 -17
  485. package/dist/types/TypedFunctionType.js +78 -60
  486. package/dist/types/TypedFunctionType.js.map +1 -1
  487. package/dist/types/TypedFunctionType.spec.js +105 -20
  488. package/dist/types/TypedFunctionType.spec.js.map +1 -1
  489. package/dist/types/UninitializedType.d.ts +8 -6
  490. package/dist/types/UninitializedType.js +13 -7
  491. package/dist/types/UninitializedType.js.map +1 -1
  492. package/dist/types/UnionType.d.ts +20 -0
  493. package/dist/types/UnionType.js +123 -0
  494. package/dist/types/UnionType.js.map +1 -0
  495. package/dist/types/UnionType.spec.d.ts +1 -0
  496. package/dist/types/UnionType.spec.js +130 -0
  497. package/dist/types/UnionType.spec.js.map +1 -0
  498. package/dist/types/VoidType.d.ts +8 -5
  499. package/dist/types/VoidType.js +14 -7
  500. package/dist/types/VoidType.js.map +1 -1
  501. package/dist/types/VoidType.spec.js +3 -3
  502. package/dist/types/VoidType.spec.js.map +1 -1
  503. package/dist/types/helper.spec.d.ts +1 -0
  504. package/dist/types/helper.spec.js +145 -0
  505. package/dist/types/helper.spec.js.map +1 -0
  506. package/dist/types/helpers.d.ts +19 -37
  507. package/dist/types/helpers.js +159 -99
  508. package/dist/types/helpers.js.map +1 -1
  509. package/dist/types/index.d.ts +22 -0
  510. package/dist/types/index.js +39 -0
  511. package/dist/types/index.js.map +1 -0
  512. package/dist/util.d.ts +167 -131
  513. package/dist/util.js +890 -350
  514. package/dist/util.js.map +1 -1
  515. package/dist/validators/ClassValidator.d.ts +7 -25
  516. package/dist/validators/ClassValidator.js +103 -194
  517. package/dist/validators/ClassValidator.js.map +1 -1
  518. package/package.json +165 -149
  519. package/dist/astUtils/AstEditor.js.map +0 -1
  520. package/dist/astUtils/AstEditor.spec.js.map +0 -1
  521. package/dist/bscPlugin/transpile/BrsFilePreTranspileProcessor.d.ts +0 -8
  522. package/dist/bscPlugin/transpile/BrsFilePreTranspileProcessor.js +0 -40
  523. package/dist/bscPlugin/transpile/BrsFilePreTranspileProcessor.js.map +0 -1
  524. package/dist/bscPlugin/transpile/BrsFilePreTranspileProcessor.spec.js +0 -32
  525. package/dist/bscPlugin/transpile/BrsFilePreTranspileProcessor.spec.js.map +0 -1
  526. package/dist/parser/SGTypes.spec.js +0 -351
  527. package/dist/parser/SGTypes.spec.js.map +0 -1
  528. package/dist/types/CustomType.d.ts +0 -12
  529. package/dist/types/CustomType.js +0 -44
  530. package/dist/types/CustomType.js.map +0 -1
  531. package/dist/types/LazyType.d.ts +0 -16
  532. package/dist/types/LazyType.js +0 -44
  533. package/dist/types/LazyType.js.map +0 -1
  534. /package/dist/astUtils/{AstEditor.spec.d.ts → Editor.spec.d.ts} +0 -0
  535. /package/dist/bscPlugin/{transpile/BrsFilePreTranspileProcessor.spec.d.ts → completions/CompletionsProcessor.spec.d.ts} +0 -0
  536. /package/dist/{parser/SGTypes.spec.d.ts → bscPlugin/hover/HoverProcessor.spec.d.ts} +0 -0
@@ -0,0 +1,31 @@
1
+ /**
2
+ * Tracks the busy/idle status of various sync or async tasks
3
+ * Reports the overall status to the client
4
+ */
5
+ export declare class BusyStatusTracker {
6
+ /**
7
+ * @readonly
8
+ */
9
+ activeRuns: Set<{
10
+ label?: string;
11
+ startTime?: Date;
12
+ }>;
13
+ /**
14
+ * Start a new piece of work
15
+ */
16
+ run<T, R = T | Promise<T>>(callback: (finalize?: FinalizeBuildStatusRun) => R, label?: string): R;
17
+ private emitter;
18
+ on(eventName: 'change', handler: (status: BusyStatus) => void): () => void;
19
+ private emit;
20
+ destroy(): void;
21
+ /**
22
+ * The current status of the busy tracker.
23
+ * @readonly
24
+ */
25
+ get status(): BusyStatus;
26
+ }
27
+ export declare type FinalizeBuildStatusRun = (status?: BusyStatus) => void;
28
+ export declare enum BusyStatus {
29
+ busy = "busy",
30
+ idle = "idle"
31
+ }
@@ -0,0 +1,83 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BusyStatus = exports.BusyStatusTracker = void 0;
4
+ const eventemitter3_1 = require("eventemitter3");
5
+ /**
6
+ * Tracks the busy/idle status of various sync or async tasks
7
+ * Reports the overall status to the client
8
+ */
9
+ class BusyStatusTracker {
10
+ constructor() {
11
+ /**
12
+ * @readonly
13
+ */
14
+ this.activeRuns = new Set();
15
+ this.emitter = new eventemitter3_1.EventEmitter();
16
+ }
17
+ /**
18
+ * Start a new piece of work
19
+ */
20
+ run(callback, label) {
21
+ const run = {
22
+ label: label,
23
+ startTime: new Date()
24
+ };
25
+ this.activeRuns.add(run);
26
+ if (this.activeRuns.size === 1) {
27
+ this.emit('change', BusyStatus.busy);
28
+ }
29
+ let isFinalized = false;
30
+ const finalizeRun = () => {
31
+ if (isFinalized === false) {
32
+ isFinalized = true;
33
+ this.activeRuns.delete(run);
34
+ if (this.activeRuns.size <= 0) {
35
+ this.emit('change', BusyStatus.idle);
36
+ }
37
+ }
38
+ };
39
+ let result;
40
+ //call the callback function
41
+ try {
42
+ result = callback(finalizeRun);
43
+ //if the result is a promise, don't finalize until it completes
44
+ if (typeof (result === null || result === void 0 ? void 0 : result.then) === 'function') {
45
+ return Promise.resolve(result).finally(finalizeRun).then(() => result);
46
+ }
47
+ else {
48
+ finalizeRun();
49
+ return result;
50
+ }
51
+ }
52
+ catch (e) {
53
+ finalizeRun();
54
+ throw e;
55
+ }
56
+ }
57
+ on(eventName, handler) {
58
+ this.emitter.on(eventName, handler);
59
+ return () => {
60
+ this.emitter.off(eventName, handler);
61
+ };
62
+ }
63
+ emit(eventName, value) {
64
+ this.emitter.emit(eventName, value);
65
+ }
66
+ destroy() {
67
+ this.emitter.removeAllListeners();
68
+ }
69
+ /**
70
+ * The current status of the busy tracker.
71
+ * @readonly
72
+ */
73
+ get status() {
74
+ return this.activeRuns.size === 0 ? BusyStatus.idle : BusyStatus.busy;
75
+ }
76
+ }
77
+ exports.BusyStatusTracker = BusyStatusTracker;
78
+ var BusyStatus;
79
+ (function (BusyStatus) {
80
+ BusyStatus["busy"] = "busy";
81
+ BusyStatus["idle"] = "idle";
82
+ })(BusyStatus = exports.BusyStatus || (exports.BusyStatus = {}));
83
+ //# sourceMappingURL=BusyStatusTracker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BusyStatusTracker.js","sourceRoot":"","sources":["../src/BusyStatusTracker.ts"],"names":[],"mappings":";;;AAAA,iDAA6C;AAE7C;;;GAGG;AACH,MAAa,iBAAiB;IAA9B;QACI;;WAEG;QACI,eAAU,GAAG,IAAI,GAAG,EAGvB,CAAC;QA4CG,YAAO,GAAG,IAAI,4BAAY,EAAsB,CAAC;IAwB7D,CAAC;IAlEG;;OAEG;IACI,GAAG,CAAwB,QAAkD,EAAE,KAAc;QAChG,MAAM,GAAG,GAAG;YACR,KAAK,EAAE,KAAK;YACZ,SAAS,EAAE,IAAI,IAAI,EAAE;SACxB,CAAC;QACF,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAEzB,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,KAAK,CAAC,EAAE;YAC5B,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC;SACxC;QAED,IAAI,WAAW,GAAG,KAAK,CAAC;QACxB,MAAM,WAAW,GAAG,GAAG,EAAE;YACrB,IAAI,WAAW,KAAK,KAAK,EAAE;gBACvB,WAAW,GAAG,IAAI,CAAC;gBACnB,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBAC5B,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,EAAE;oBAC3B,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC;iBACxC;aACJ;QACL,CAAC,CAAC;QAEF,IAAI,MAA0B,CAAC;QAC/B,4BAA4B;QAC5B,IAAI;YACA,MAAM,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC;YAC/B,+DAA+D;YAC/D,IAAI,OAAO,CAAC,MAAc,aAAd,MAAM,uBAAN,MAAM,CAAU,IAAI,CAAA,KAAK,UAAU,EAAE;gBAC7C,OAAO,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAQ,CAAC;aACjF;iBAAM;gBACH,WAAW,EAAE,CAAC;gBACd,OAAO,MAAM,CAAC;aACjB;SACJ;QAAC,OAAO,CAAC,EAAE;YACR,WAAW,EAAE,CAAC;YACd,MAAM,CAAC,CAAC;SACX;IACL,CAAC;IAIM,EAAE,CAAC,SAAmB,EAAE,OAAqC;QAChE,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QACpC,OAAO,GAAG,EAAE;YACR,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QACzC,CAAC,CAAC;IACN,CAAC;IAEO,IAAI,CAAC,SAAmB,EAAE,KAAiB;QAC/C,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IACxC,CAAC;IAEM,OAAO;QACV,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE,CAAC;IACtC,CAAC;IAED;;;OAGG;IACH,IAAW,MAAM;QACb,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC;IAC1E,CAAC;CACJ;AA3ED,8CA2EC;AAID,IAAY,UAGX;AAHD,WAAY,UAAU;IAClB,2BAAa,CAAA;IACb,2BAAa,CAAA;AACjB,CAAC,EAHW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAGrB"}
package/dist/Cache.js CHANGED
@@ -10,13 +10,13 @@ class Cache extends Map {
10
10
  * otherwise call the factory function to create the value, add it to the cache, and return it.
11
11
  */
12
12
  getOrAdd(key, factory) {
13
- if (!this.has(key)) {
13
+ if (!super.has(key)) {
14
14
  const value = factory(key);
15
- this.set(key, value);
15
+ super.set(key, value);
16
16
  return value;
17
17
  }
18
18
  else {
19
- return this.get(key);
19
+ return super.get(key);
20
20
  }
21
21
  }
22
22
  /**
package/dist/Cache.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Cache.js","sourceRoot":"","sources":["../src/Cache.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACH,MAAa,KAAgC,SAAQ,GAAiB;IAElE;;;OAGG;IACI,QAAQ,CAA4B,GAAS,EAAE,OAAyB;QAC3E,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;YAChB,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;YAC3B,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;YACrB,OAAO,KAAK,CAAC;SAChB;aAAM;YACH,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;SACxB;IACL,CAAC;IAED;;OAEG;IACI,GAAG,CAA4B,GAAS;QAC3C,OAAO,KAAK,CAAC,GAAG,CAAC,GAAG,CAAM,CAAC;IAC/B,CAAC;CACJ;AAtBD,sBAsBC"}
1
+ {"version":3,"file":"Cache.js","sourceRoot":"","sources":["../src/Cache.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACH,MAAa,KAAgC,SAAQ,GAAiB;IAElE;;;OAGG;IACI,QAAQ,CAA4B,GAAS,EAAE,OAAyB;QAC3E,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;YACjB,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;YAC3B,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;YACtB,OAAO,KAAK,CAAC;SAChB;aAAM;YACH,OAAO,KAAK,CAAC,GAAG,CAAC,GAAG,CAAM,CAAC;SAC9B;IACL,CAAC;IAED;;OAEG;IACI,GAAG,CAA4B,GAAS;QAC3C,OAAO,KAAK,CAAC,GAAG,CAAC,GAAG,CAAM,CAAC;IAC/B,CAAC;CACJ;AAtBD,sBAsBC"}
@@ -0,0 +1,7 @@
1
+ export declare class CacheVerifier {
2
+ private currentToken;
3
+ constructor();
4
+ generateToken(): void;
5
+ getToken(): string;
6
+ checkToken(token: string): boolean;
7
+ }
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CacheVerifier = void 0;
4
+ const uuid_1 = require("uuid");
5
+ class CacheVerifier {
6
+ constructor() {
7
+ this.generateToken();
8
+ }
9
+ generateToken() {
10
+ this.currentToken = (0, uuid_1.v4)();
11
+ }
12
+ getToken() {
13
+ return this.currentToken;
14
+ }
15
+ checkToken(token) {
16
+ return token === this.currentToken;
17
+ }
18
+ }
19
+ exports.CacheVerifier = CacheVerifier;
20
+ //# sourceMappingURL=CacheVerifier.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CacheVerifier.js","sourceRoot":"","sources":["../src/CacheVerifier.ts"],"names":[],"mappings":";;;AAAA,+BAAkC;AAElC,MAAa,aAAa;IAItB;QACI,IAAI,CAAC,aAAa,EAAE,CAAC;IACzB,CAAC;IAED,aAAa;QACT,IAAI,CAAC,YAAY,GAAG,IAAA,SAAI,GAAE,CAAC;IAC/B,CAAC;IAED,QAAQ;QACJ,OAAO,IAAI,CAAC,YAAY,CAAC;IAC7B,CAAC;IAED,UAAU,CAAC,KAAa;QACpB,OAAO,KAAK,KAAK,IAAI,CAAC,YAAY,CAAC;IACvC,CAAC;CACJ;AAnBD,sCAmBC"}
@@ -2,13 +2,13 @@ import type { Diagnostic, Position, Range } from 'vscode-languageserver';
2
2
  import { CodeActionKind, CodeAction } from 'vscode-languageserver';
3
3
  export declare class CodeActionUtil {
4
4
  createCodeAction(obj: CodeActionShorthand): CodeAction;
5
- serializableDiagnostics(diagnostics: Diagnostic[]): {
5
+ serializableDiagnostics(diagnostics: Diagnostic[] | undefined): {
6
6
  range: Range;
7
- severity: import("vscode-languageserver-types").DiagnosticSeverity;
7
+ severity: import("vscode-languageserver").DiagnosticSeverity;
8
8
  source: string;
9
9
  code: string | number;
10
10
  message: string;
11
- relatedInformation: import("vscode-languageserver-types").DiagnosticRelatedInformation[];
11
+ relatedInformation: import("vscode-languageserver").DiagnosticRelatedInformation[];
12
12
  }[];
13
13
  }
14
14
  export { CodeActionKind };
@@ -1 +1 @@
1
- {"version":3,"file":"CodeActionUtil.js","sourceRoot":"","sources":["../src/CodeActionUtil.ts"],"names":[],"mappings":";;;AACA,iEAA6E;AA4CpE,+FA5CA,sCAAc,OA4CA;AA3CvB,2CAAiC;AAEjC,MAAa,cAAc;IAEhB,gBAAgB,CAAC,GAAwB;QAC5C,MAAM,IAAI,GAAG;YACT,OAAO,EAAE,EAAE;SACG,CAAC;QACnB,KAAK,MAAM,MAAM,IAAI,GAAG,CAAC,OAAO,EAAE;YAC9B,MAAM,GAAG,GAAG,gBAAG,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,QAAQ,EAAE,CAAC;YAEjD,4CAA4C;YAC5C,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;gBACpB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;aAC1B;YACD,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE;gBAC1B,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAClB,gCAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC,CACnD,CAAC;aACL;iBAAM,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,EAAE;gBAClC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAClB,gCAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,CACjD,CAAC;aACL;SACJ;QACD,MAAM,MAAM,GAAG,kCAAU,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;QAC5D,MAAM,CAAC,WAAW,GAAG,GAAG,CAAC,WAAW,CAAC;QACrC,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QACnE,OAAO,MAAM,CAAC;IAClB,CAAC;IAEM,uBAAuB,CAAC,WAAyB;QACpD,OAAO,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,kBAAkB,EAAE,EAAE,EAAE,CAAC,CAAC;YACzF,KAAK,EAAE,KAAK;YACZ,QAAQ,EAAE,QAAQ;YAClB,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI;YACV,OAAO,EAAE,OAAO;YAChB,kBAAkB,EAAE,kBAAkB;SACzC,CAAC,CAAC,CAAC;IACR,CAAC;CACJ;AAvCD,wCAuCC;AA0BY,QAAA,cAAc,GAAG,IAAI,cAAc,EAAE,CAAC"}
1
+ {"version":3,"file":"CodeActionUtil.js","sourceRoot":"","sources":["../src/CodeActionUtil.ts"],"names":[],"mappings":";;;AACA,iEAA6E;AA4CpE,+FA5CA,sCAAc,OA4CA;AA3CvB,2CAAiC;AAEjC,MAAa,cAAc;IAEhB,gBAAgB,CAAC,GAAwB;QAC5C,MAAM,IAAI,GAAG;YACT,OAAO,EAAE,EAAE;SACG,CAAC;QACnB,KAAK,MAAM,MAAM,IAAI,GAAG,CAAC,OAAO,EAAE;YAC9B,MAAM,GAAG,GAAG,gBAAG,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,QAAQ,EAAE,CAAC;YAEjD,4CAA4C;YAC5C,IAAI,CAAC,IAAI,CAAC,OAAQ,CAAC,GAAG,CAAC,EAAE;gBACrB,IAAI,CAAC,OAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;aAC3B;YACD,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE;gBAC1B,IAAI,CAAC,OAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,CACnB,gCAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC,CACnD,CAAC;aACL;iBAAM,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,EAAE;gBAClC,IAAI,CAAC,OAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,CACnB,gCAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,CACjD,CAAC;aACL;SACJ;QACD,MAAM,MAAM,GAAG,kCAAU,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;QAC5D,MAAM,CAAC,WAAW,GAAG,GAAG,CAAC,WAAW,CAAC;QACrC,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QACnE,OAAO,MAAM,CAAC;IAClB,CAAC;IAEM,uBAAuB,CAAC,WAAqC;QAChE,OAAO,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,kBAAkB,EAAE,EAAE,EAAE,CAAC,CAAC;YACzF,KAAK,EAAE,KAAK;YACZ,QAAQ,EAAE,QAAQ;YAClB,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI;YACV,OAAO,EAAE,OAAO;YAChB,kBAAkB,EAAE,kBAAkB;SACzC,CAAC,CAAC,CAAC;IACR,CAAC;CACJ;AAvCD,wCAuCC;AA0BY,QAAA,cAAc,GAAG,IAAI,cAAc,EAAE,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import type { Range } from 'vscode-languageserver';
2
- import type { BscFile, BsDiagnostic, CommentFlag, DiagnosticCode } from './interfaces';
2
+ import type { BscFile } from './files/BscFile';
3
+ import type { BsDiagnostic, CommentFlag, DiagnosticCode } from './interfaces';
3
4
  export declare class CommentFlagProcessor {
4
5
  /**
5
6
  * The file this processor applies to
@@ -53,7 +54,7 @@ export declare class CommentFlagProcessor {
53
54
  private tokenize;
54
55
  /**
55
56
  * Given a string, extract each item split by whitespace
56
- * @param text
57
+ * @param text the text to tokenize
57
58
  */
58
59
  private tokenizeByWhitespace;
59
60
  }
@@ -45,10 +45,11 @@ class CommentFlagProcessor {
45
45
  if (tokenized.disableType === 'line') {
46
46
  affectedRange = util_1.util.createRange(range.start.line, 0, range.start.line, range.start.character);
47
47
  }
48
- else if (tokenized.disableType === 'next-line') {
48
+ else {
49
+ // tokenized.disableType must be 'next-line'
49
50
  affectedRange = util_1.util.createRange(range.start.line + 1, 0, range.start.line + 1, Number.MAX_SAFE_INTEGER);
50
51
  }
51
- let commentFlag;
52
+ let commentFlag = null;
52
53
  //statement to disable EVERYTHING
53
54
  if (tokenized.codes.length === 0) {
54
55
  commentFlag = {
@@ -103,7 +104,7 @@ class CommentFlagProcessor {
103
104
  tokenize(text, range) {
104
105
  let lowerText = text.toLowerCase();
105
106
  let offset = 0;
106
- let commentTokenText;
107
+ let commentTokenText = null;
107
108
  for (const starter of this.commentStarters) {
108
109
  if (text.startsWith(starter)) {
109
110
  commentTokenText = starter;
@@ -151,7 +152,7 @@ class CommentFlagProcessor {
151
152
  }
152
153
  /**
153
154
  * Given a string, extract each item split by whitespace
154
- * @param text
155
+ * @param text the text to tokenize
155
156
  */
156
157
  tokenizeByWhitespace(text) {
157
158
  let tokens = [];
@@ -1 +1 @@
1
- {"version":3,"file":"CommentFlagProcessor.js","sourceRoot":"","sources":["../src/CommentFlagProcessor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CommentFlagProcessor.js","sourceRoot":"","sources":["../src/CommentFlagProcessor.ts"],"names":[],"mappings":"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"}
@@ -27,7 +27,7 @@ export declare class DependencyGraph {
27
27
  removeDependency(key: string, dependencyKey: string): void;
28
28
  /**
29
29
  * Get a list of the dependencies for the given key, recursively.
30
- * @param key the key (or keys) for which to get the dependencies
30
+ * @param keys the key (or keys) for which to get the dependencies
31
31
  * @param exclude a list of keys to exclude from traversal. Anytime one of these nodes is encountered, it is skipped.
32
32
  */
33
33
  getAllDependencies(keys: string | string[], exclude?: string[]): string[];
@@ -41,7 +41,8 @@ export declare class DependencyGraph {
41
41
  emit(key: string, event: DependencyChangedEvent): void;
42
42
  /**
43
43
  * Listen for any changes to dependencies with the given key.
44
- * @param emitImmediately if true, the handler will be called once immediately.
44
+ * @param key the name of the dependency
45
+ * @param handler a function called anytime changes occur
45
46
  */
46
47
  onchange(key: string, handler: (event: DependencyChangedEvent) => void): () => void;
47
48
  dispose(): void;
@@ -60,7 +60,7 @@ class DependencyGraph {
60
60
  }
61
61
  /**
62
62
  * Get a list of the dependencies for the given key, recursively.
63
- * @param key the key (or keys) for which to get the dependencies
63
+ * @param keys the key (or keys) for which to get the dependencies
64
64
  * @param exclude a list of keys to exclude from traversal. Anytime one of these nodes is encountered, it is skipped.
65
65
  */
66
66
  getAllDependencies(keys, exclude) {
@@ -100,7 +100,8 @@ class DependencyGraph {
100
100
  }
101
101
  /**
102
102
  * Listen for any changes to dependencies with the given key.
103
- * @param emitImmediately if true, the handler will be called once immediately.
103
+ * @param key the name of the dependency
104
+ * @param handler a function called anytime changes occur
104
105
  */
105
106
  onchange(key, handler) {
106
107
  this.onchangeEmitter.on(key, handler);
@@ -124,13 +125,13 @@ class Node {
124
125
  this.graph = graph;
125
126
  if (dependencies.length > 0) {
126
127
  this.subscriptions = [];
127
- }
128
- for (let dependency of this.dependencies) {
129
- let sub = this.graph.onchange(dependency, (event) => {
130
- //notify the graph that we changed since one of our dependencies changed
131
- this.graph.emit(this.key, event);
132
- });
133
- this.subscriptions.push(sub);
128
+ for (let dependency of this.dependencies) {
129
+ let sub = this.graph.onchange(dependency, (event) => {
130
+ //notify the graph that we changed since one of our dependencies changed
131
+ this.graph.emit(this.key, event);
132
+ });
133
+ this.subscriptions.push(sub);
134
+ }
134
135
  }
135
136
  }
136
137
  /**
@@ -144,7 +145,7 @@ class Node {
144
145
  while (dependencyStack.length > 0) {
145
146
  let dependency = dependencyStack.pop();
146
147
  //if this is a new dependency and we aren't supposed to skip it
147
- if (!dependencyMap[dependency] && !exclude.includes(dependency)) {
148
+ if (dependency && !dependencyMap[dependency] && !exclude.includes(dependency)) {
148
149
  dependencyMap[dependency] = true;
149
150
  //get the node for this dependency
150
151
  let node = this.graph.nodes[dependency];
@@ -1 +1 @@
1
- {"version":3,"file":"DependencyGraph.js","sourceRoot":"","sources":["../src/DependencyGraph.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DependencyGraph.js","sourceRoot":"","sources":["../src/DependencyGraph.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.DiagnosticCollection = void 0;
4
+ const util_1 = require("./util");
4
5
  class DiagnosticCollection {
5
6
  constructor() {
6
7
  this.previousDiagnosticsByFile = {};
@@ -13,25 +14,28 @@ class DiagnosticCollection {
13
14
  return patch;
14
15
  }
15
16
  getDiagnosticsByFileFromProjects(projects) {
17
+ var _a, _b;
16
18
  const result = {};
17
19
  //get all diagnostics for all projects
18
20
  let diagnostics = Array.prototype.concat.apply([], projects.map((x) => x.builder.getDiagnostics()));
19
21
  const keys = {};
20
22
  //build the full current set of diagnostics by file
21
23
  for (let diagnostic of diagnostics) {
22
- const srcPath = diagnostic.file.srcPath;
24
+ const srcPath = (_a = diagnostic.file.srcPath) !== null && _a !== void 0 ? _a : diagnostic.file.srcPath;
23
25
  //ensure the file entry exists
24
26
  if (!result[srcPath]) {
25
27
  result[srcPath] = [];
26
28
  }
27
29
  const diagnosticMap = result[srcPath];
30
+ //fall back to a default range if missing
31
+ const range = (_b = diagnostic === null || diagnostic === void 0 ? void 0 : diagnostic.range) !== null && _b !== void 0 ? _b : util_1.util.createRange(0, 0, 0, 0);
28
32
  diagnostic.key =
29
33
  srcPath.toLowerCase() + '-' +
30
34
  diagnostic.code + '-' +
31
- diagnostic.range.start.line + '-' +
32
- diagnostic.range.start.character + '-' +
33
- diagnostic.range.end.line + '-' +
34
- diagnostic.range.end.character +
35
+ range.start.line + '-' +
36
+ range.start.character + '-' +
37
+ range.end.line + '-' +
38
+ range.end.character +
35
39
  diagnostic.message;
36
40
  //don't include duplicates
37
41
  if (!keys[diagnostic.key]) {
@@ -1 +1 @@
1
- {"version":3,"file":"DiagnosticCollection.js","sourceRoot":"","sources":["../src/DiagnosticCollection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DiagnosticCollection.js","sourceRoot":"","sources":["../src/DiagnosticCollection.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@ export declare class DiagnosticFilterer {
4
4
  private byFile;
5
5
  private filters;
6
6
  private rootDir;
7
+ constructor();
7
8
  /**
8
9
  * Filter a list of diagnostics based on the provided filters
9
10
  */
@@ -5,6 +5,9 @@ const path = require("path");
5
5
  const minimatch = require("minimatch");
6
6
  const util_1 = require("./util");
7
7
  class DiagnosticFilterer {
8
+ constructor() {
9
+ this.byFile = {};
10
+ }
8
11
  /**
9
12
  * Filter a list of diagnostics based on the provided filters
10
13
  */
@@ -17,7 +20,7 @@ class DiagnosticFilterer {
17
20
  }
18
21
  let result = this.getDiagnostics();
19
22
  //clean up
20
- delete this.byFile;
23
+ this.byFile = {};
21
24
  delete this.rootDir;
22
25
  delete this.filters;
23
26
  return result;
@@ -106,8 +109,7 @@ class DiagnosticFilterer {
106
109
  let globalIgnoreCodes = [...(_a = config1.ignoreErrorCodes) !== null && _a !== void 0 ? _a : []];
107
110
  let diagnosticFilters = [...(_b = config1.diagnosticFilters) !== null && _b !== void 0 ? _b : []];
108
111
  let result = [];
109
- for (let i = 0; i < diagnosticFilters.length; i++) {
110
- let filter = diagnosticFilters[i];
112
+ for (let filter of diagnosticFilters) {
111
113
  if (typeof filter === 'number') {
112
114
  globalIgnoreCodes.push(filter);
113
115
  continue;
@@ -1 +1 @@
1
- {"version":3,"file":"DiagnosticFilterer.js","sourceRoot":"","sources":["../src/DiagnosticFilterer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DiagnosticFilterer.js","sourceRoot":"","sources":["../src/DiagnosticFilterer.ts"],"names":[],"mappings":"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"}