brighterscript 1.0.0-alpha.50 → 1.0.0-alpha.51
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/README.md +3 -0
- package/bsconfig.schema.json +75 -0
- package/dist/BsConfig.d.ts +90 -5
- package/dist/CodeActionUtil.d.ts +17 -0
- package/dist/CodeActionUtil.js.map +1 -1
- package/dist/CommentFlagProcessor.d.ts +16 -12
- package/dist/CommentFlagProcessor.js +141 -59
- package/dist/CommentFlagProcessor.js.map +1 -1
- package/dist/CrossScopeValidator.js +13 -5
- package/dist/CrossScopeValidator.js.map +1 -1
- package/dist/DiagnosticManager.d.ts +1 -0
- package/dist/DiagnosticManager.js +25 -9
- package/dist/DiagnosticManager.js.map +1 -1
- package/dist/DiagnosticMessages.d.ts +61 -17
- package/dist/DiagnosticMessages.js +78 -24
- package/dist/DiagnosticMessages.js.map +1 -1
- package/dist/LanguageServer.d.ts +39 -2
- package/dist/LanguageServer.js +142 -5
- package/dist/LanguageServer.js.map +1 -1
- package/dist/Program.d.ts +62 -1
- package/dist/Program.js +185 -13
- package/dist/Program.js.map +1 -1
- package/dist/ProgramBuilder.d.ts +1 -8
- package/dist/ProgramBuilder.js +31 -11
- package/dist/ProgramBuilder.js.map +1 -1
- package/dist/Scope.d.ts +87 -6
- package/dist/Scope.js +76 -31
- package/dist/Scope.js.map +1 -1
- package/dist/ScopeNamespaceLookup.d.ts +73 -0
- package/dist/ScopeNamespaceLookup.js +242 -0
- package/dist/ScopeNamespaceLookup.js.map +1 -0
- package/dist/SymbolTable.d.ts +9 -2
- package/dist/SymbolTable.js +24 -14
- package/dist/SymbolTable.js.map +1 -1
- package/dist/astUtils/CachedLookups.js +3 -0
- package/dist/astUtils/CachedLookups.js.map +1 -1
- package/dist/astUtils/reflection.d.ts +4 -1
- package/dist/astUtils/reflection.js +24 -4
- package/dist/astUtils/reflection.js.map +1 -1
- package/dist/astUtils/visitors.d.ts +2 -1
- package/dist/astUtils/visitors.js.map +1 -1
- package/dist/bscPlugin/BscPlugin.d.ts +4 -2
- package/dist/bscPlugin/BscPlugin.js +10 -2
- package/dist/bscPlugin/BscPlugin.js.map +1 -1
- package/dist/bscPlugin/CallExpressionInfo.d.ts +1 -1
- package/dist/bscPlugin/CallExpressionInfo.js +1 -2
- package/dist/bscPlugin/CallExpressionInfo.js.map +1 -1
- package/dist/bscPlugin/FileWriter.d.ts +13 -0
- package/dist/bscPlugin/FileWriter.js +56 -1
- package/dist/bscPlugin/FileWriter.js.map +1 -1
- package/dist/bscPlugin/codeActions/CodeActionsProcessor.d.ts +106 -5
- package/dist/bscPlugin/codeActions/CodeActionsProcessor.js +630 -126
- package/dist/bscPlugin/codeActions/CodeActionsProcessor.js.map +1 -1
- package/dist/bscPlugin/codeActions/FixAllCodeActionsProcessor.d.ts +17 -0
- package/dist/bscPlugin/codeActions/FixAllCodeActionsProcessor.js +66 -0
- package/dist/bscPlugin/codeActions/FixAllCodeActionsProcessor.js.map +1 -0
- package/dist/bscPlugin/codeActions/codeActionHelpers.d.ts +18 -0
- package/dist/bscPlugin/codeActions/codeActionHelpers.js +31 -0
- package/dist/bscPlugin/codeActions/codeActionHelpers.js.map +1 -0
- package/dist/bscPlugin/completions/CompletionsProcessor.d.ts +1 -1
- package/dist/bscPlugin/completions/CompletionsProcessor.js +5 -5
- package/dist/bscPlugin/completions/CompletionsProcessor.js.map +1 -1
- package/dist/bscPlugin/definition/DefinitionProvider.js +8 -0
- package/dist/bscPlugin/definition/DefinitionProvider.js.map +1 -1
- package/dist/bscPlugin/hover/HoverProcessor.js +11 -3
- package/dist/bscPlugin/hover/HoverProcessor.js.map +1 -1
- package/dist/bscPlugin/selectionRanges/SelectionRangesProcessor.d.ts +7 -0
- package/dist/bscPlugin/selectionRanges/SelectionRangesProcessor.js +77 -0
- package/dist/bscPlugin/selectionRanges/SelectionRangesProcessor.js.map +1 -0
- package/dist/bscPlugin/serialize/FileSerializer.d.ts +1 -1
- package/dist/bscPlugin/serialize/FileSerializer.js +12 -7
- package/dist/bscPlugin/serialize/FileSerializer.js.map +1 -1
- package/dist/bscPlugin/transpile/BrsFileTranspileProcessor.d.ts +7 -0
- package/dist/bscPlugin/transpile/BrsFileTranspileProcessor.js +87 -1
- package/dist/bscPlugin/transpile/BrsFileTranspileProcessor.js.map +1 -1
- package/dist/bscPlugin/validation/BrsFileValidator.d.ts +14 -0
- package/dist/bscPlugin/validation/BrsFileValidator.js +97 -21
- package/dist/bscPlugin/validation/BrsFileValidator.js.map +1 -1
- package/dist/bscPlugin/validation/ScopeValidator.d.ts +17 -0
- package/dist/bscPlugin/validation/ScopeValidator.js +162 -4
- package/dist/bscPlugin/validation/ScopeValidator.js.map +1 -1
- package/dist/bscPlugin/validation/XmlFileValidator.js +14 -0
- package/dist/bscPlugin/validation/XmlFileValidator.js.map +1 -1
- package/dist/cli.js +13 -0
- package/dist/cli.js.map +1 -1
- package/dist/diagnosticUtils.d.ts +51 -1
- package/dist/diagnosticUtils.js +222 -1
- package/dist/diagnosticUtils.js.map +1 -1
- package/dist/files/BrsFile.d.ts +18 -2
- package/dist/files/BrsFile.js +87 -6
- package/dist/files/BrsFile.js.map +1 -1
- package/dist/files/XmlFile.js +2 -1
- package/dist/files/XmlFile.js.map +1 -1
- package/dist/interfaces.d.ts +68 -23
- package/dist/interfaces.js.map +1 -1
- package/dist/lexer/Lexer.js +4 -5
- package/dist/lexer/Lexer.js.map +1 -1
- package/dist/lexer/Token.d.ts +1 -1
- package/dist/lexer/TokenKind.d.ts +8 -0
- package/dist/lexer/TokenKind.js +21 -1
- package/dist/lexer/TokenKind.js.map +1 -1
- package/dist/lsp/LspProject.d.ts +49 -1
- package/dist/lsp/Project.d.ts +33 -1
- package/dist/lsp/Project.js +129 -4
- package/dist/lsp/Project.js.map +1 -1
- package/dist/lsp/ProjectManager.d.ts +48 -2
- package/dist/lsp/ProjectManager.js +152 -9
- package/dist/lsp/ProjectManager.js.map +1 -1
- package/dist/lsp/worker/WorkerThreadProject.d.ts +27 -2
- package/dist/lsp/worker/WorkerThreadProject.js +16 -0
- package/dist/lsp/worker/WorkerThreadProject.js.map +1 -1
- package/dist/parser/AstNode.d.ts +3 -1
- package/dist/parser/AstNode.js +2 -0
- package/dist/parser/AstNode.js.map +1 -1
- package/dist/parser/Expression.d.ts +54 -5
- package/dist/parser/Expression.js +112 -7
- package/dist/parser/Expression.js.map +1 -1
- package/dist/parser/Parser.d.ts +24 -1
- package/dist/parser/Parser.js +180 -41
- package/dist/parser/Parser.js.map +1 -1
- package/dist/parser/SGParser.d.ts +1 -0
- package/dist/parser/SGParser.js +9 -0
- package/dist/parser/SGParser.js.map +1 -1
- package/dist/parser/Statement.d.ts +6 -1
- package/dist/parser/Statement.js +22 -14
- package/dist/parser/Statement.js.map +1 -1
- package/dist/parser/TranspileState.d.ts +4 -2
- package/dist/parser/TranspileState.js +10 -4
- package/dist/parser/TranspileState.js.map +1 -1
- package/dist/roku-types/data.json +210 -3
- package/dist/types/ArrayType.js +6 -1
- package/dist/types/ArrayType.js.map +1 -1
- package/dist/types/BooleanType.js +1 -1
- package/dist/types/BooleanType.js.map +1 -1
- package/dist/types/CallFuncableType.d.ts +1 -1
- package/dist/types/ClassType.js +3 -0
- package/dist/types/ClassType.js.map +1 -1
- package/dist/types/ComponentType.js +3 -0
- package/dist/types/ComponentType.js.map +1 -1
- package/dist/types/EnumType.js +3 -0
- package/dist/types/EnumType.js.map +1 -1
- package/dist/types/IntersectionType.js +3 -0
- package/dist/types/IntersectionType.js.map +1 -1
- package/dist/types/ReferenceType.js +6 -0
- package/dist/types/ReferenceType.js.map +1 -1
- package/dist/types/TypeStatementType.d.ts +1 -0
- package/dist/types/TypeStatementType.js +12 -1
- package/dist/types/TypeStatementType.js.map +1 -1
- package/dist/types/TypedFunctionType.js +20 -10
- package/dist/types/TypedFunctionType.js.map +1 -1
- package/dist/types/UnionType.js +3 -0
- package/dist/types/UnionType.js.map +1 -1
- package/dist/types/helpers.js +6 -0
- package/dist/types/helpers.js.map +1 -1
- package/dist/util.d.ts +42 -3
- package/dist/util.js +131 -7
- package/dist/util.js.map +1 -1
- package/package.json +24 -26
- package/dist/astUtils/CachedLookups.spec.d.ts +0 -1
- package/dist/astUtils/CachedLookups.spec.js +0 -39
- package/dist/astUtils/CachedLookups.spec.js.map +0 -1
- package/dist/astUtils/Editor.spec.d.ts +0 -1
- package/dist/astUtils/Editor.spec.js +0 -258
- package/dist/astUtils/Editor.spec.js.map +0 -1
- package/dist/astUtils/creators.spec.d.ts +0 -1
- package/dist/astUtils/creators.spec.js +0 -21
- package/dist/astUtils/creators.spec.js.map +0 -1
- package/dist/astUtils/reflection.spec.d.ts +0 -1
- package/dist/astUtils/reflection.spec.js +0 -392
- package/dist/astUtils/reflection.spec.js.map +0 -1
- package/dist/astUtils/stackedVisitor.spec.d.ts +0 -1
- package/dist/astUtils/stackedVisitor.spec.js +0 -79
- package/dist/astUtils/stackedVisitor.spec.js.map +0 -1
- package/dist/astUtils/visitors.spec.d.ts +0 -1
- package/dist/astUtils/visitors.spec.js +0 -1432
- package/dist/astUtils/visitors.spec.js.map +0 -1
- package/dist/bscPlugin/codeActions/CodeActionsProcessor.spec.d.ts +0 -1
- package/dist/bscPlugin/codeActions/CodeActionsProcessor.spec.js +0 -311
- package/dist/bscPlugin/codeActions/CodeActionsProcessor.spec.js.map +0 -1
- package/dist/bscPlugin/completions/CompletionsProcessor.spec.d.ts +0 -1
- package/dist/bscPlugin/completions/CompletionsProcessor.spec.js +0 -2512
- package/dist/bscPlugin/completions/CompletionsProcessor.spec.js.map +0 -1
- package/dist/bscPlugin/definition/DefinitionProvider.spec.d.ts +0 -1
- package/dist/bscPlugin/definition/DefinitionProvider.spec.js +0 -87
- package/dist/bscPlugin/definition/DefinitionProvider.spec.js.map +0 -1
- package/dist/bscPlugin/hover/HoverProcessor.spec.d.ts +0 -1
- package/dist/bscPlugin/hover/HoverProcessor.spec.js +0 -991
- package/dist/bscPlugin/hover/HoverProcessor.spec.js.map +0 -1
- package/dist/bscPlugin/references/ReferencesProvider.spec.d.ts +0 -1
- package/dist/bscPlugin/references/ReferencesProvider.spec.js +0 -51
- package/dist/bscPlugin/references/ReferencesProvider.spec.js.map +0 -1
- package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.spec.d.ts +0 -1
- package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.spec.js +0 -564
- package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.spec.js.map +0 -1
- package/dist/bscPlugin/serialize/BslibInjector.spec.d.ts +0 -1
- package/dist/bscPlugin/serialize/BslibInjector.spec.js +0 -33
- package/dist/bscPlugin/serialize/BslibInjector.spec.js.map +0 -1
- package/dist/bscPlugin/symbols/DocumentSymbolProcessor.spec.d.ts +0 -1
- package/dist/bscPlugin/symbols/DocumentSymbolProcessor.spec.js +0 -291
- package/dist/bscPlugin/symbols/DocumentSymbolProcessor.spec.js.map +0 -1
- package/dist/bscPlugin/symbols/WorkspaceSymbolProcessor.spec.d.ts +0 -1
- package/dist/bscPlugin/symbols/WorkspaceSymbolProcessor.spec.js +0 -245
- package/dist/bscPlugin/symbols/WorkspaceSymbolProcessor.spec.js.map +0 -1
- package/dist/bscPlugin/transpile/BrsFileTranspileProcessor.spec.d.ts +0 -1
- package/dist/bscPlugin/transpile/BrsFileTranspileProcessor.spec.js +0 -75
- package/dist/bscPlugin/transpile/BrsFileTranspileProcessor.spec.js.map +0 -1
- package/dist/bscPlugin/validation/BrsFileValidator.spec.d.ts +0 -1
- package/dist/bscPlugin/validation/BrsFileValidator.spec.js +0 -1517
- package/dist/bscPlugin/validation/BrsFileValidator.spec.js.map +0 -1
- package/dist/bscPlugin/validation/ScopeValidator.spec.d.ts +0 -1
- package/dist/bscPlugin/validation/ScopeValidator.spec.js +0 -6135
- package/dist/bscPlugin/validation/ScopeValidator.spec.js.map +0 -1
- package/dist/common/Sequencer.spec.d.ts +0 -1
- package/dist/common/Sequencer.spec.js +0 -75
- package/dist/common/Sequencer.spec.js.map +0 -1
- package/dist/files/BrsFile.Class.spec.d.ts +0 -1
- package/dist/files/BrsFile.Class.spec.js +0 -2035
- package/dist/files/BrsFile.Class.spec.js.map +0 -1
- package/dist/files/BrsFile.spec.d.ts +0 -1
- package/dist/files/BrsFile.spec.js +0 -5848
- package/dist/files/BrsFile.spec.js.map +0 -1
- package/dist/files/LazyFileData.spec.d.ts +0 -1
- package/dist/files/LazyFileData.spec.js +0 -27
- package/dist/files/LazyFileData.spec.js.map +0 -1
- package/dist/files/XmlFile.spec.d.ts +0 -1
- package/dist/files/XmlFile.spec.js +0 -1173
- package/dist/files/XmlFile.spec.js.map +0 -1
- package/dist/files/tests/imports.spec.d.ts +0 -1
- package/dist/files/tests/imports.spec.js +0 -251
- package/dist/files/tests/imports.spec.js.map +0 -1
- package/dist/files/tests/optionalChaning.spec.d.ts +0 -1
- package/dist/files/tests/optionalChaning.spec.js +0 -152
- package/dist/files/tests/optionalChaning.spec.js.map +0 -1
- package/dist/lexer/Character.spec.d.ts +0 -1
- package/dist/lexer/Character.spec.js +0 -27
- package/dist/lexer/Character.spec.js.map +0 -1
- package/dist/lexer/Lexer.spec.d.ts +0 -1
- package/dist/lexer/Lexer.spec.js +0 -1345
- package/dist/lexer/Lexer.spec.js.map +0 -1
- package/dist/lsp/ActionQueue.spec.d.ts +0 -1
- package/dist/lsp/ActionQueue.spec.js +0 -80
- package/dist/lsp/ActionQueue.spec.js.map +0 -1
- package/dist/lsp/DocumentManager.spec.d.ts +0 -1
- package/dist/lsp/DocumentManager.spec.js +0 -103
- package/dist/lsp/DocumentManager.spec.js.map +0 -1
- package/dist/lsp/PathFilterer.spec.d.ts +0 -1
- package/dist/lsp/PathFilterer.spec.js +0 -182
- package/dist/lsp/PathFilterer.spec.js.map +0 -1
- package/dist/lsp/Project.spec.d.ts +0 -1
- package/dist/lsp/Project.spec.js +0 -267
- package/dist/lsp/Project.spec.js.map +0 -1
- package/dist/lsp/ProjectManager.spec.d.ts +0 -1
- package/dist/lsp/ProjectManager.spec.js +0 -913
- package/dist/lsp/ProjectManager.spec.js.map +0 -1
- package/dist/lsp/worker/MessageHandler.spec.d.ts +0 -1
- package/dist/lsp/worker/MessageHandler.spec.js +0 -64
- package/dist/lsp/worker/MessageHandler.spec.js.map +0 -1
- package/dist/lsp/worker/WorkerPool.spec.d.ts +0 -1
- package/dist/lsp/worker/WorkerPool.spec.js +0 -59
- package/dist/lsp/worker/WorkerPool.spec.js.map +0 -1
- package/dist/lsp/worker/WorkerThreadProject.spec.d.ts +0 -2
- package/dist/lsp/worker/WorkerThreadProject.spec.js +0 -71
- package/dist/lsp/worker/WorkerThreadProject.spec.js.map +0 -1
- package/dist/parser/AstNode.spec.d.ts +0 -1
- package/dist/parser/AstNode.spec.js +0 -1455
- package/dist/parser/AstNode.spec.js.map +0 -1
- package/dist/parser/BrightScriptDocParser.spec.d.ts +0 -1
- package/dist/parser/BrightScriptDocParser.spec.js +0 -310
- package/dist/parser/BrightScriptDocParser.spec.js.map +0 -1
- package/dist/parser/Expression.spec.d.ts +0 -1
- package/dist/parser/Expression.spec.js +0 -40
- package/dist/parser/Expression.spec.js.map +0 -1
- package/dist/parser/Parser.Class.spec.d.ts +0 -1
- package/dist/parser/Parser.Class.spec.js +0 -520
- package/dist/parser/Parser.Class.spec.js.map +0 -1
- package/dist/parser/Parser.spec.d.ts +0 -6
- package/dist/parser/Parser.spec.js +0 -2802
- package/dist/parser/Parser.spec.js.map +0 -1
- package/dist/parser/SGParser.spec.d.ts +0 -1
- package/dist/parser/SGParser.spec.js +0 -130
- package/dist/parser/SGParser.spec.js.map +0 -1
- package/dist/parser/Statement.spec.d.ts +0 -1
- package/dist/parser/Statement.spec.js +0 -191
- package/dist/parser/Statement.spec.js.map +0 -1
- package/dist/parser/tests/Parser.spec.d.ts +0 -12
- package/dist/parser/tests/Parser.spec.js +0 -29
- package/dist/parser/tests/Parser.spec.js.map +0 -1
- package/dist/parser/tests/controlFlow/For.spec.d.ts +0 -1
- package/dist/parser/tests/controlFlow/For.spec.js +0 -169
- package/dist/parser/tests/controlFlow/For.spec.js.map +0 -1
- package/dist/parser/tests/controlFlow/ForEach.spec.d.ts +0 -1
- package/dist/parser/tests/controlFlow/ForEach.spec.js +0 -140
- package/dist/parser/tests/controlFlow/ForEach.spec.js.map +0 -1
- package/dist/parser/tests/controlFlow/If.spec.d.ts +0 -1
- package/dist/parser/tests/controlFlow/If.spec.js +0 -694
- package/dist/parser/tests/controlFlow/If.spec.js.map +0 -1
- package/dist/parser/tests/controlFlow/While.spec.d.ts +0 -1
- package/dist/parser/tests/controlFlow/While.spec.js +0 -114
- package/dist/parser/tests/controlFlow/While.spec.js.map +0 -1
- package/dist/parser/tests/expression/Additive.spec.d.ts +0 -1
- package/dist/parser/tests/expression/Additive.spec.js +0 -107
- package/dist/parser/tests/expression/Additive.spec.js.map +0 -1
- package/dist/parser/tests/expression/ArrayLiterals.spec.d.ts +0 -1
- package/dist/parser/tests/expression/ArrayLiterals.spec.js +0 -304
- package/dist/parser/tests/expression/ArrayLiterals.spec.js.map +0 -1
- package/dist/parser/tests/expression/AssociativeArrayLiterals.spec.d.ts +0 -1
- package/dist/parser/tests/expression/AssociativeArrayLiterals.spec.js +0 -342
- package/dist/parser/tests/expression/AssociativeArrayLiterals.spec.js.map +0 -1
- package/dist/parser/tests/expression/Boolean.spec.d.ts +0 -1
- package/dist/parser/tests/expression/Boolean.spec.js +0 -90
- package/dist/parser/tests/expression/Boolean.spec.js.map +0 -1
- package/dist/parser/tests/expression/Call.spec.d.ts +0 -1
- package/dist/parser/tests/expression/Call.spec.js +0 -252
- package/dist/parser/tests/expression/Call.spec.js.map +0 -1
- package/dist/parser/tests/expression/Exponential.spec.d.ts +0 -1
- package/dist/parser/tests/expression/Exponential.spec.js +0 -37
- package/dist/parser/tests/expression/Exponential.spec.js.map +0 -1
- package/dist/parser/tests/expression/Function.spec.d.ts +0 -1
- package/dist/parser/tests/expression/Function.spec.js +0 -412
- package/dist/parser/tests/expression/Function.spec.js.map +0 -1
- package/dist/parser/tests/expression/Indexing.spec.d.ts +0 -1
- package/dist/parser/tests/expression/Indexing.spec.js +0 -302
- package/dist/parser/tests/expression/Indexing.spec.js.map +0 -1
- package/dist/parser/tests/expression/Multiplicative.spec.d.ts +0 -1
- package/dist/parser/tests/expression/Multiplicative.spec.js +0 -67
- package/dist/parser/tests/expression/Multiplicative.spec.js.map +0 -1
- package/dist/parser/tests/expression/NullCoalescenceExpression.spec.d.ts +0 -1
- package/dist/parser/tests/expression/NullCoalescenceExpression.spec.js +0 -346
- package/dist/parser/tests/expression/NullCoalescenceExpression.spec.js.map +0 -1
- package/dist/parser/tests/expression/PrefixUnary.spec.d.ts +0 -1
- package/dist/parser/tests/expression/PrefixUnary.spec.js +0 -111
- package/dist/parser/tests/expression/PrefixUnary.spec.js.map +0 -1
- package/dist/parser/tests/expression/Primary.spec.d.ts +0 -1
- package/dist/parser/tests/expression/Primary.spec.js +0 -165
- package/dist/parser/tests/expression/Primary.spec.js.map +0 -1
- package/dist/parser/tests/expression/RegexLiteralExpression.spec.d.ts +0 -1
- package/dist/parser/tests/expression/RegexLiteralExpression.spec.js +0 -171
- package/dist/parser/tests/expression/RegexLiteralExpression.spec.js.map +0 -1
- package/dist/parser/tests/expression/Relational.spec.d.ts +0 -1
- package/dist/parser/tests/expression/Relational.spec.js +0 -83
- package/dist/parser/tests/expression/Relational.spec.js.map +0 -1
- package/dist/parser/tests/expression/SourceLiteralExpression.spec.d.ts +0 -1
- package/dist/parser/tests/expression/SourceLiteralExpression.spec.js +0 -201
- package/dist/parser/tests/expression/SourceLiteralExpression.spec.js.map +0 -1
- package/dist/parser/tests/expression/TemplateStringExpression.spec.d.ts +0 -1
- package/dist/parser/tests/expression/TemplateStringExpression.spec.js +0 -389
- package/dist/parser/tests/expression/TemplateStringExpression.spec.js.map +0 -1
- package/dist/parser/tests/expression/TernaryExpression.spec.d.ts +0 -1
- package/dist/parser/tests/expression/TernaryExpression.spec.js +0 -878
- package/dist/parser/tests/expression/TernaryExpression.spec.js.map +0 -1
- package/dist/parser/tests/expression/TypeExpression.spec.d.ts +0 -1
- package/dist/parser/tests/expression/TypeExpression.spec.js +0 -126
- package/dist/parser/tests/expression/TypeExpression.spec.js.map +0 -1
- package/dist/parser/tests/expression/UnaryExpression.spec.d.ts +0 -1
- package/dist/parser/tests/expression/UnaryExpression.spec.js +0 -52
- package/dist/parser/tests/expression/UnaryExpression.spec.js.map +0 -1
- package/dist/parser/tests/statement/AssignmentOperators.spec.d.ts +0 -1
- package/dist/parser/tests/statement/AssignmentOperators.spec.js +0 -79
- package/dist/parser/tests/statement/AssignmentOperators.spec.js.map +0 -1
- package/dist/parser/tests/statement/ConstStatement.spec.d.ts +0 -1
- package/dist/parser/tests/statement/ConstStatement.spec.js +0 -500
- package/dist/parser/tests/statement/ConstStatement.spec.js.map +0 -1
- package/dist/parser/tests/statement/Continue.spec.d.ts +0 -1
- package/dist/parser/tests/statement/Continue.spec.js +0 -119
- package/dist/parser/tests/statement/Continue.spec.js.map +0 -1
- package/dist/parser/tests/statement/Declaration.spec.d.ts +0 -1
- package/dist/parser/tests/statement/Declaration.spec.js +0 -114
- package/dist/parser/tests/statement/Declaration.spec.js.map +0 -1
- package/dist/parser/tests/statement/Dim.spec.d.ts +0 -1
- package/dist/parser/tests/statement/Dim.spec.js +0 -80
- package/dist/parser/tests/statement/Dim.spec.js.map +0 -1
- package/dist/parser/tests/statement/Enum.spec.d.ts +0 -1
- package/dist/parser/tests/statement/Enum.spec.js +0 -744
- package/dist/parser/tests/statement/Enum.spec.js.map +0 -1
- package/dist/parser/tests/statement/For.spec.d.ts +0 -1
- package/dist/parser/tests/statement/For.spec.js +0 -45
- package/dist/parser/tests/statement/For.spec.js.map +0 -1
- package/dist/parser/tests/statement/ForEach.spec.d.ts +0 -1
- package/dist/parser/tests/statement/ForEach.spec.js +0 -36
- package/dist/parser/tests/statement/ForEach.spec.js.map +0 -1
- package/dist/parser/tests/statement/Function.spec.d.ts +0 -1
- package/dist/parser/tests/statement/Function.spec.js +0 -343
- package/dist/parser/tests/statement/Function.spec.js.map +0 -1
- package/dist/parser/tests/statement/Goto.spec.d.ts +0 -1
- package/dist/parser/tests/statement/Goto.spec.js +0 -51
- package/dist/parser/tests/statement/Goto.spec.js.map +0 -1
- package/dist/parser/tests/statement/Increment.spec.d.ts +0 -1
- package/dist/parser/tests/statement/Increment.spec.js +0 -120
- package/dist/parser/tests/statement/Increment.spec.js.map +0 -1
- package/dist/parser/tests/statement/InterfaceStatement.spec.d.ts +0 -1
- package/dist/parser/tests/statement/InterfaceStatement.spec.js +0 -110
- package/dist/parser/tests/statement/InterfaceStatement.spec.js.map +0 -1
- package/dist/parser/tests/statement/LibraryStatement.spec.d.ts +0 -1
- package/dist/parser/tests/statement/LibraryStatement.spec.js +0 -74
- package/dist/parser/tests/statement/LibraryStatement.spec.js.map +0 -1
- package/dist/parser/tests/statement/Misc.spec.d.ts +0 -1
- package/dist/parser/tests/statement/Misc.spec.js +0 -292
- package/dist/parser/tests/statement/Misc.spec.js.map +0 -1
- package/dist/parser/tests/statement/PrintStatement.spec.d.ts +0 -1
- package/dist/parser/tests/statement/PrintStatement.spec.js +0 -200
- package/dist/parser/tests/statement/PrintStatement.spec.js.map +0 -1
- package/dist/parser/tests/statement/ReturnStatement.spec.d.ts +0 -1
- package/dist/parser/tests/statement/ReturnStatement.spec.js +0 -97
- package/dist/parser/tests/statement/ReturnStatement.spec.js.map +0 -1
- package/dist/parser/tests/statement/Set.spec.d.ts +0 -1
- package/dist/parser/tests/statement/Set.spec.js +0 -232
- package/dist/parser/tests/statement/Set.spec.js.map +0 -1
- package/dist/parser/tests/statement/Stop.spec.d.ts +0 -1
- package/dist/parser/tests/statement/Stop.spec.js +0 -38
- package/dist/parser/tests/statement/Stop.spec.js.map +0 -1
- package/dist/parser/tests/statement/Throw.spec.d.ts +0 -1
- package/dist/parser/tests/statement/Throw.spec.js +0 -38
- package/dist/parser/tests/statement/Throw.spec.js.map +0 -1
- package/dist/parser/tests/statement/TryCatch.spec.d.ts +0 -1
- package/dist/parser/tests/statement/TryCatch.spec.js +0 -151
- package/dist/parser/tests/statement/TryCatch.spec.js.map +0 -1
- package/dist/preprocessor/Manifest.spec.d.ts +0 -1
- package/dist/preprocessor/Manifest.spec.js +0 -80
- package/dist/preprocessor/Manifest.spec.js.map +0 -1
- package/dist/types/ArrayType.spec.d.ts +0 -1
- package/dist/types/ArrayType.spec.js +0 -58
- package/dist/types/ArrayType.spec.js.map +0 -1
- package/dist/types/BooleanType.spec.d.ts +0 -1
- package/dist/types/BooleanType.spec.js +0 -18
- package/dist/types/BooleanType.spec.js.map +0 -1
- package/dist/types/BuiltInInterfaceAdder.spec.d.ts +0 -1
- package/dist/types/BuiltInInterfaceAdder.spec.js +0 -115
- package/dist/types/BuiltInInterfaceAdder.spec.js.map +0 -1
- package/dist/types/ClassType.spec.d.ts +0 -1
- package/dist/types/ClassType.spec.js +0 -76
- package/dist/types/ClassType.spec.js.map +0 -1
- package/dist/types/DoubleType.spec.d.ts +0 -1
- package/dist/types/DoubleType.spec.js +0 -20
- package/dist/types/DoubleType.spec.js.map +0 -1
- package/dist/types/DynamicType.spec.d.ts +0 -1
- package/dist/types/DynamicType.spec.js +0 -23
- package/dist/types/DynamicType.spec.js.map +0 -1
- package/dist/types/EnumType.spec.d.ts +0 -1
- package/dist/types/EnumType.spec.js +0 -33
- package/dist/types/EnumType.spec.js.map +0 -1
- package/dist/types/FloatType.spec.d.ts +0 -1
- package/dist/types/FloatType.spec.js +0 -12
- package/dist/types/FloatType.spec.js.map +0 -1
- package/dist/types/IntegerType.spec.d.ts +0 -1
- package/dist/types/IntegerType.spec.js +0 -16
- package/dist/types/IntegerType.spec.js.map +0 -1
- package/dist/types/InterfaceType.spec.d.ts +0 -1
- package/dist/types/InterfaceType.spec.js +0 -227
- package/dist/types/InterfaceType.spec.js.map +0 -1
- package/dist/types/IntersectionType.spec.d.ts +0 -1
- package/dist/types/IntersectionType.spec.js +0 -150
- package/dist/types/IntersectionType.spec.js.map +0 -1
- package/dist/types/InvalidType.spec.d.ts +0 -1
- package/dist/types/InvalidType.spec.js +0 -16
- package/dist/types/InvalidType.spec.js.map +0 -1
- package/dist/types/LongIntegerType.spec.d.ts +0 -1
- package/dist/types/LongIntegerType.spec.js +0 -18
- package/dist/types/LongIntegerType.spec.js.map +0 -1
- package/dist/types/ObjectType.spec.d.ts +0 -1
- package/dist/types/ObjectType.spec.js +0 -12
- package/dist/types/ObjectType.spec.js.map +0 -1
- package/dist/types/ReferenceType.spec.d.ts +0 -1
- package/dist/types/ReferenceType.spec.js +0 -151
- package/dist/types/ReferenceType.spec.js.map +0 -1
- package/dist/types/StringType.spec.d.ts +0 -1
- package/dist/types/StringType.spec.js +0 -12
- package/dist/types/StringType.spec.js.map +0 -1
- package/dist/types/TypedFunctionType.spec.d.ts +0 -1
- package/dist/types/TypedFunctionType.spec.js +0 -122
- package/dist/types/TypedFunctionType.spec.js.map +0 -1
- package/dist/types/UnionType.spec.d.ts +0 -1
- package/dist/types/UnionType.spec.js +0 -205
- package/dist/types/UnionType.spec.js.map +0 -1
- package/dist/types/VoidType.spec.d.ts +0 -1
- package/dist/types/VoidType.spec.js +0 -12
- package/dist/types/VoidType.spec.js.map +0 -1
- package/dist/types/helper.spec.d.ts +0 -1
- package/dist/types/helper.spec.js +0 -174
- package/dist/types/helper.spec.js.map +0 -1
- package/dist/types/roFunctionType.spec.d.ts +0 -1
- package/dist/types/roFunctionType.spec.js +0 -20
- package/dist/types/roFunctionType.spec.js.map +0 -1
package/README.md
CHANGED
|
@@ -103,6 +103,9 @@ BrighterScript adds several new features to the BrightScript language such as na
|
|
|
103
103
|
<a href="https://www.haystack.tv/">
|
|
104
104
|
<img height="38" src="https://user-images.githubusercontent.com/2544493/192610056-d1b5a382-edf4-47b9-a6a5-d2d3ee9094cb.png">
|
|
105
105
|
</a>
|
|
106
|
+
<a href="https://www.tksssoftware.com/">
|
|
107
|
+
<img height="38" alt="TKSS Software Inc" src="https://github.com/user-attachments/assets/332d692f-7386-495d-b29d-c2ed7d3d2e2f" />
|
|
108
|
+
</a>
|
|
106
109
|
</p>
|
|
107
110
|
<br/>
|
|
108
111
|
|
package/bsconfig.schema.json
CHANGED
|
@@ -8,6 +8,53 @@
|
|
|
8
8
|
"password"
|
|
9
9
|
]
|
|
10
10
|
},
|
|
11
|
+
"definitions": {
|
|
12
|
+
"diagnosticReporterValue": {
|
|
13
|
+
"oneOf": [
|
|
14
|
+
{
|
|
15
|
+
"type": "string",
|
|
16
|
+
"description": "Either a preset name ('detailed' or 'github-actions') or a custom template string containing at least one known placeholder."
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
"type": "object",
|
|
20
|
+
"required": ["type"],
|
|
21
|
+
"properties": {
|
|
22
|
+
"type": {
|
|
23
|
+
"type": "string",
|
|
24
|
+
"enum": ["detailed"]
|
|
25
|
+
}
|
|
26
|
+
},
|
|
27
|
+
"additionalProperties": false
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
"type": "object",
|
|
31
|
+
"required": ["type"],
|
|
32
|
+
"properties": {
|
|
33
|
+
"type": {
|
|
34
|
+
"type": "string",
|
|
35
|
+
"enum": ["github-actions"]
|
|
36
|
+
}
|
|
37
|
+
},
|
|
38
|
+
"additionalProperties": false
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
"type": "object",
|
|
42
|
+
"required": ["type", "format"],
|
|
43
|
+
"properties": {
|
|
44
|
+
"type": {
|
|
45
|
+
"type": "string",
|
|
46
|
+
"enum": ["custom"]
|
|
47
|
+
},
|
|
48
|
+
"format": {
|
|
49
|
+
"type": "string",
|
|
50
|
+
"description": "Template string. Supported placeholders: {file}, {line}, {col}, {endLine}, {endCol}, {severity}, {severityCode}, {code}, {message}, {source}."
|
|
51
|
+
}
|
|
52
|
+
},
|
|
53
|
+
"additionalProperties": false
|
|
54
|
+
}
|
|
55
|
+
]
|
|
56
|
+
}
|
|
57
|
+
},
|
|
11
58
|
"properties": {
|
|
12
59
|
"extends": {
|
|
13
60
|
"description": "Relative or absolute path to another bsconfig.json file that this file should use as a base and then override. Prefix with a question mark (?) to prevent throwing an exception if the file does not exist.",
|
|
@@ -103,6 +150,11 @@
|
|
|
103
150
|
"type": "boolean",
|
|
104
151
|
"default": false
|
|
105
152
|
},
|
|
153
|
+
"relativeSourceMaps": {
|
|
154
|
+
"description": "If true, source file paths in generated sourcemaps will be relative to the map file location instead of absolute. This makes sourcemaps portable across different machines and environments.",
|
|
155
|
+
"type": "boolean",
|
|
156
|
+
"default": false
|
|
157
|
+
},
|
|
106
158
|
"copyToStaging": {
|
|
107
159
|
"description": "If true, the files are copied to staging. This setting is ignored when deploy is enabled or if createPackage is enabled",
|
|
108
160
|
"deprecated": true,
|
|
@@ -327,6 +379,21 @@
|
|
|
327
379
|
"error"
|
|
328
380
|
]
|
|
329
381
|
},
|
|
382
|
+
"diagnosticReporters": {
|
|
383
|
+
"description": "Specify how diagnostics are reported to the console. Accepts a single value or an array; each diagnostic is rendered once per entry. Each value is either a preset name ('detailed', 'github-actions'), a custom template string containing at least one known placeholder ({file}, {line}, {col}, {endLine}, {endCol}, {severity}, {severityCode}, {code}, {message}, {source}), or an object with explicit `type`. Defaults to 'detailed'.",
|
|
384
|
+
"default": "detailed",
|
|
385
|
+
"oneOf": [
|
|
386
|
+
{
|
|
387
|
+
"$ref": "#/definitions/diagnosticReporterValue"
|
|
388
|
+
},
|
|
389
|
+
{
|
|
390
|
+
"type": "array",
|
|
391
|
+
"items": {
|
|
392
|
+
"$ref": "#/definitions/diagnosticReporterValue"
|
|
393
|
+
}
|
|
394
|
+
}
|
|
395
|
+
]
|
|
396
|
+
},
|
|
330
397
|
"allowBrighterScriptInBrightScript": {
|
|
331
398
|
"description": "Allow brighterscript features (classes, interfaces, etc...) to be included in BrightScript (`.brs`) files, and force those files to be transpiled.",
|
|
332
399
|
"type": "boolean",
|
|
@@ -336,6 +403,14 @@
|
|
|
336
403
|
"description": "Legacy RokuOS versions required at least one argument in callfunc() invocations. Previous brighterscript versions handled this by inserting invalid as an argument when no other args are present. This is not necessary in modern RokuOS versions.",
|
|
337
404
|
"type": "boolean",
|
|
338
405
|
"default": false
|
|
406
|
+
},
|
|
407
|
+
"minFirmwareVersion": {
|
|
408
|
+
"description": "The minimum Roku firmware version required to run this project. When set, BrightScript (.brs) files will be validated to ensure they only use language features available in that firmware version or earlier. BrighterScript (.bs) files are always allowed to use all features since they are transpiled. Should be a semver-compatible string (e.g. \"11.0.0\").",
|
|
409
|
+
"type": "string",
|
|
410
|
+
"examples": [
|
|
411
|
+
"11.0.0",
|
|
412
|
+
"12.0.0"
|
|
413
|
+
]
|
|
339
414
|
}
|
|
340
415
|
}
|
|
341
416
|
}
|
package/dist/BsConfig.d.ts
CHANGED
|
@@ -101,6 +101,28 @@ export interface BsConfig {
|
|
|
101
101
|
* Specify what diagnostic types should be printed to the console. Defaults to 'warn'
|
|
102
102
|
*/
|
|
103
103
|
diagnosticLevel?: 'info' | 'hint' | 'warn' | 'error';
|
|
104
|
+
/**
|
|
105
|
+
* Specify how diagnostics should be reported to the console.
|
|
106
|
+
* Accepts a single value or an array. When given an array, each diagnostic is rendered
|
|
107
|
+
* once per entry (so you can, for example, get both detailed terminal output and
|
|
108
|
+
* github-actions PR annotations from a single run).
|
|
109
|
+
*
|
|
110
|
+
* Each value may be a preset name ('detailed', 'github-actions'), a custom template string
|
|
111
|
+
* (any string containing a `{` placeholder), or an object with explicit `type`.
|
|
112
|
+
*
|
|
113
|
+
* Custom templates support the following placeholders, replaced per diagnostic:
|
|
114
|
+
* {file}, {line}, {col}, {endLine}, {endCol}, {severity}, {code}, {message}, {source}
|
|
115
|
+
*
|
|
116
|
+
* Examples:
|
|
117
|
+
* "detailed"
|
|
118
|
+
* "github-actions"
|
|
119
|
+
* "{file}:{line}:{col} {severity} {code}: {message}"
|
|
120
|
+
* { type: "custom", format: "{file}:{line}: {message}" }
|
|
121
|
+
* ["detailed", "github-actions"]
|
|
122
|
+
*
|
|
123
|
+
* @default "detailed"
|
|
124
|
+
*/
|
|
125
|
+
diagnosticReporters?: DiagnosticReporter | DiagnosticReporter[];
|
|
104
126
|
/**
|
|
105
127
|
* A list of scripts or modules to add extra diagnostics or transform the AST
|
|
106
128
|
*/
|
|
@@ -126,10 +148,16 @@ export interface BsConfig {
|
|
|
126
148
|
*/
|
|
127
149
|
logLevel?: LogLevel | 'error' | 'warn' | 'log' | 'info' | 'debug' | 'trace' | 'off';
|
|
128
150
|
/**
|
|
129
|
-
*
|
|
130
|
-
*
|
|
131
|
-
*
|
|
132
|
-
*
|
|
151
|
+
* Overrides where source files appear to live, in both sourcemaps and the `SOURCE_FILE_PATH` /
|
|
152
|
+
* `SOURCE_LOCATION` runtime literals. Only applies to files within `rootDir`.
|
|
153
|
+
*
|
|
154
|
+
* When `relativeSourceMaps` is false (default): the `rootDir` portion of each source path is
|
|
155
|
+
* replaced with `sourceRoot` directly in `sources[]`. The map's `sourceRoot` field is not written.
|
|
156
|
+
*
|
|
157
|
+
* When `relativeSourceMaps` is true: the map's `sourceRoot` field is set to this value, and
|
|
158
|
+
* `sources[]` entries are relative to `sourceRoot` (per the sourcemap spec).
|
|
159
|
+
*
|
|
160
|
+
* In both modes, `SOURCE_FILE_PATH` and `SOURCE_LOCATION` reflect the `sourceRoot`-substituted path.
|
|
133
161
|
*/
|
|
134
162
|
sourceRoot?: string;
|
|
135
163
|
/**
|
|
@@ -142,6 +170,20 @@ export interface BsConfig {
|
|
|
142
170
|
* @default true
|
|
143
171
|
*/
|
|
144
172
|
sourceMap?: boolean;
|
|
173
|
+
/**
|
|
174
|
+
* If true, file paths in sourcemap `sources[]` will be written as relative paths instead of absolute.
|
|
175
|
+
* Only has an effect when `sourceMap` is true.
|
|
176
|
+
*
|
|
177
|
+
* When false (default): `sources[]` contains absolute paths. If `sourceRoot` is set, the `rootDir`
|
|
178
|
+
* portion is replaced with `sourceRoot` in-place; the map's `sourceRoot` field is never written.
|
|
179
|
+
*
|
|
180
|
+
* When true: `sources[]` entries are relative to the map file's directory, making sourcemaps
|
|
181
|
+
* portable across machines. If `sourceRoot` is also set, the map's `sourceRoot` field is written
|
|
182
|
+
* and `sources[]` entries are instead relative to `sourceRoot` (per the sourcemap spec — consumers
|
|
183
|
+
* reconstruct the full path as `path.resolve(sourceRoot, sources[0])`).
|
|
184
|
+
* @default false
|
|
185
|
+
*/
|
|
186
|
+
relativeSourceMaps?: boolean;
|
|
145
187
|
/**
|
|
146
188
|
* Excludes empty files from being included in the output. Some Brighterscript files
|
|
147
189
|
* are left empty or with only comments after transpilation to Brightscript.
|
|
@@ -164,7 +206,50 @@ export interface BsConfig {
|
|
|
164
206
|
*/
|
|
165
207
|
bslibDestinationDir?: string;
|
|
166
208
|
legacyCallfuncHandling?: boolean;
|
|
209
|
+
/**
|
|
210
|
+
* The minimum Roku firmware version required to run this project.
|
|
211
|
+
* When set, BrightScript (.brs) files are always validated against the version restriction.
|
|
212
|
+
* BrighterScript (.bs) files are only validated for features that BrighterScript does not
|
|
213
|
+
* transpile — for example, optional chaining is emitted as-is, so it is subject to the
|
|
214
|
+
* restriction. Features that BrighterScript fully transpiles (such as classes) are not
|
|
215
|
+
* restricted, since the transpiled output is compatible with older firmware.
|
|
216
|
+
* Should be a semver-compatible string (e.g. "11.0.0").
|
|
217
|
+
*/
|
|
218
|
+
minFirmwareVersion?: string;
|
|
219
|
+
/**
|
|
220
|
+
* When set to false, validation is skipped entirely. This can speed up builds when diagnostics
|
|
221
|
+
* are not needed (e.g. when using the VSCode extension which already surfaces diagnostics in the
|
|
222
|
+
* editor). Note that skipping validation may cause transpilation to fail or produce incorrect
|
|
223
|
+
* output if the project contains errors that would normally be caught during validation.
|
|
224
|
+
* @default true
|
|
225
|
+
*/
|
|
226
|
+
validate?: boolean;
|
|
167
227
|
}
|
|
168
|
-
|
|
228
|
+
/**
|
|
229
|
+
* Discriminated union describing how diagnostics are rendered to the console.
|
|
230
|
+
* - String shorthand: a preset name ('detailed' | 'github-actions') or a template string
|
|
231
|
+
* (any string containing a `{` is treated as a custom template).
|
|
232
|
+
* - Object form: explicit `type` so config files can stay strictly typed.
|
|
233
|
+
*/
|
|
234
|
+
export declare type DiagnosticReporter = 'detailed' | 'github-actions' | (string & {}) | {
|
|
235
|
+
type: 'detailed';
|
|
236
|
+
} | {
|
|
237
|
+
type: 'github-actions';
|
|
238
|
+
} | {
|
|
239
|
+
type: 'custom';
|
|
240
|
+
format: string;
|
|
241
|
+
};
|
|
242
|
+
/**
|
|
243
|
+
* Object form of `DiagnosticReporter` after string shorthand has been resolved.
|
|
244
|
+
*/
|
|
245
|
+
export declare type NormalizedDiagnosticReporter = {
|
|
246
|
+
type: 'detailed';
|
|
247
|
+
} | {
|
|
248
|
+
type: 'github-actions';
|
|
249
|
+
} | {
|
|
250
|
+
type: 'custom';
|
|
251
|
+
format: string;
|
|
252
|
+
};
|
|
253
|
+
declare type OptionalBsConfigFields = '_ancestors' | 'sourceRoot' | 'project' | 'manifest' | 'noProject' | 'extends' | 'require' | 'outDir' | 'diagnosticLevel' | 'rootDir' | 'stagingDir' | 'stagingFolderPath' | 'minFirmwareVersion' | 'diagnosticReporters';
|
|
169
254
|
export declare type FinalizedBsConfig = Omit<Required<BsConfig>, OptionalBsConfigFields> & Pick<BsConfig, OptionalBsConfigFields>;
|
|
170
255
|
export {};
|
package/dist/CodeActionUtil.d.ts
CHANGED
|
@@ -13,6 +13,23 @@ export interface CodeActionShorthand {
|
|
|
13
13
|
isPreferred?: boolean;
|
|
14
14
|
changes: Array<InsertChange | ReplaceChange | DeleteChange>;
|
|
15
15
|
}
|
|
16
|
+
/**
|
|
17
|
+
* Represents a single named "source fix all" action that a plugin contributes.
|
|
18
|
+
* Each action becomes a separate entry in VS Code's Source Actions menu.
|
|
19
|
+
* Plugins are responsible for merging all their changes into the `changes` array.
|
|
20
|
+
*/
|
|
21
|
+
export interface SourceFixAllCodeAction {
|
|
22
|
+
title: string;
|
|
23
|
+
/**
|
|
24
|
+
* The LSP code action kind. Should start with `source.fixAll`.
|
|
25
|
+
* Use a sub-kind like `source.fixAll.brighterscript.imports` to create
|
|
26
|
+
* a distinct named entry in the Source Actions menu.
|
|
27
|
+
* Defaults to `source.fixAll.brighterscript`.
|
|
28
|
+
*/
|
|
29
|
+
kind?: string;
|
|
30
|
+
isPreferred?: boolean;
|
|
31
|
+
changes: Array<InsertChange | ReplaceChange | DeleteChange>;
|
|
32
|
+
}
|
|
16
33
|
export interface InsertChange {
|
|
17
34
|
filePath: string;
|
|
18
35
|
newText: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CodeActionUtil.js","sourceRoot":"","sources":["../src/CodeActionUtil.ts"],"names":[],"mappings":";;;AACA,iEAA6E;AAiDpE,+FAjDA,sCAAc,OAiDA;AA/CvB,iCAA0B;AAE1B,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,cAAI,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAE5C,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;iBAAM,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE;gBACjC,IAAI,CAAC,OAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,CACnB,gCAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAC7B,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,WAAuC;QAClE,OAAO,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,kBAAkB,EAAE,EAAE,EAAE,CAAC,CAAC;YAC5F,KAAK,EAAE,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,KAAK;YACtB,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;AA3CD,wCA2CC;
|
|
1
|
+
{"version":3,"file":"CodeActionUtil.js","sourceRoot":"","sources":["../src/CodeActionUtil.ts"],"names":[],"mappings":";;;AACA,iEAA6E;AAiDpE,+FAjDA,sCAAc,OAiDA;AA/CvB,iCAA0B;AAE1B,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,cAAI,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAE5C,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;iBAAM,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE;gBACjC,IAAI,CAAC,OAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,CACnB,gCAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAC7B,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,WAAuC;QAClE,OAAO,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,kBAAkB,EAAE,EAAE,EAAE,CAAC,CAAC;YAC5F,KAAK,EAAE,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,KAAK;YACtB,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;AA3CD,wCA2CC;AAmDY,QAAA,cAAc,GAAG,IAAI,cAAc,EAAE,CAAC"}
|
|
@@ -14,10 +14,6 @@ export declare class CommentFlagProcessor {
|
|
|
14
14
|
* Valid diagnostic codes. Codes NOT in this list will be flagged
|
|
15
15
|
*/
|
|
16
16
|
diagnosticCodes: DiagnosticCode[];
|
|
17
|
-
/**
|
|
18
|
-
* Diagnostic codes to never filter (these codes will always be flagged)
|
|
19
|
-
*/
|
|
20
|
-
ignoreDiagnosticCodes: DiagnosticCode[];
|
|
21
17
|
constructor(
|
|
22
18
|
/**
|
|
23
19
|
* The file this processor applies to
|
|
@@ -30,11 +26,7 @@ export declare class CommentFlagProcessor {
|
|
|
30
26
|
/**
|
|
31
27
|
* Valid diagnostic codes. Codes NOT in this list will be flagged
|
|
32
28
|
*/
|
|
33
|
-
diagnosticCodes?: DiagnosticCode[]
|
|
34
|
-
/**
|
|
35
|
-
* Diagnostic codes to never filter (these codes will always be flagged)
|
|
36
|
-
*/
|
|
37
|
-
ignoreDiagnosticCodes?: DiagnosticCode[]);
|
|
29
|
+
diagnosticCodes?: DiagnosticCode[]);
|
|
38
30
|
/**
|
|
39
31
|
* List of comment flags generated during processing
|
|
40
32
|
*/
|
|
@@ -44,12 +36,24 @@ export declare class CommentFlagProcessor {
|
|
|
44
36
|
*/
|
|
45
37
|
diagnostics: BsDiagnostic[];
|
|
46
38
|
/**
|
|
47
|
-
*
|
|
39
|
+
* Block-level `bs:disable` / `bs:enable` directives, recorded in source order
|
|
40
|
+
* by `tryAdd` and resolved into `CommentFlag`s by `finalize()`.
|
|
48
41
|
*/
|
|
49
|
-
|
|
42
|
+
private blockDirectives;
|
|
50
43
|
tryAdd(text: string, range: Range): void;
|
|
51
44
|
/**
|
|
52
|
-
*
|
|
45
|
+
* Resolve any pending `bs:disable` / `bs:enable` block directives into `CommentFlag`s.
|
|
46
|
+
* Must be called after the file's comment tokens have been fed through `tryAdd`.
|
|
47
|
+
*/
|
|
48
|
+
finalize(): void;
|
|
49
|
+
/**
|
|
50
|
+
* Resolve a list of `{ code, range }` tokens into validated diagnostic codes.
|
|
51
|
+
* Pushes diagnostics for any unknown numeric codes. Returns `null` when no codes were specified
|
|
52
|
+
* (i.e. a bare `bs:disable` / `bs:enable`), and an array otherwise.
|
|
53
|
+
*/
|
|
54
|
+
private collectCodes;
|
|
55
|
+
/**
|
|
56
|
+
* Small tokenizer for `bs:` directive comments.
|
|
53
57
|
*/
|
|
54
58
|
private tokenize;
|
|
55
59
|
/**
|
|
@@ -16,15 +16,10 @@ class CommentFlagProcessor {
|
|
|
16
16
|
/**
|
|
17
17
|
* Valid diagnostic codes. Codes NOT in this list will be flagged
|
|
18
18
|
*/
|
|
19
|
-
diagnosticCodes = []
|
|
20
|
-
/**
|
|
21
|
-
* Diagnostic codes to never filter (these codes will always be flagged)
|
|
22
|
-
*/
|
|
23
|
-
ignoreDiagnosticCodes = []) {
|
|
19
|
+
diagnosticCodes = []) {
|
|
24
20
|
this.file = file;
|
|
25
21
|
this.commentStarters = commentStarters;
|
|
26
22
|
this.diagnosticCodes = diagnosticCodes;
|
|
27
|
-
this.ignoreDiagnosticCodes = ignoreDiagnosticCodes;
|
|
28
23
|
/**
|
|
29
24
|
* List of comment flags generated during processing
|
|
30
25
|
*/
|
|
@@ -33,73 +28,149 @@ class CommentFlagProcessor {
|
|
|
33
28
|
* List of diagnostics generated during processing
|
|
34
29
|
*/
|
|
35
30
|
this.diagnostics = [];
|
|
36
|
-
|
|
31
|
+
/**
|
|
32
|
+
* Block-level `bs:disable` / `bs:enable` directives, recorded in source order
|
|
33
|
+
* by `tryAdd` and resolved into `CommentFlag`s by `finalize()`.
|
|
34
|
+
*/
|
|
35
|
+
this.blockDirectives = [];
|
|
37
36
|
}
|
|
38
37
|
tryAdd(text, range) {
|
|
39
|
-
var _a, _b;
|
|
40
38
|
const tokenized = this.tokenize(text, range);
|
|
41
39
|
if (!tokenized) {
|
|
42
40
|
return;
|
|
43
41
|
}
|
|
44
|
-
|
|
45
|
-
if (tokenized.
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
42
|
+
//queue block directives with their raw code tokens; finalize() validates and resolves them
|
|
43
|
+
if (tokenized.directive === 'disable' || tokenized.directive === 'enable') {
|
|
44
|
+
this.blockDirectives.push({
|
|
45
|
+
kind: tokenized.directive,
|
|
46
|
+
rawCodes: tokenized.codes,
|
|
47
|
+
range: range
|
|
48
|
+
});
|
|
49
|
+
return;
|
|
51
50
|
}
|
|
52
|
-
|
|
53
|
-
|
|
51
|
+
//line-level directives emit a flag inline
|
|
52
|
+
const affectedRange = tokenized.directive === 'line'
|
|
53
|
+
? util_1.util.createRange(range.start.line, 0, range.start.line, range.start.character)
|
|
54
|
+
: util_1.util.createRange(range.start.line + 1, 0, range.start.line + 1, Number.MAX_SAFE_INTEGER);
|
|
54
55
|
if (tokenized.codes.length === 0) {
|
|
55
|
-
|
|
56
|
+
//bare `bs:disable-line` / `bs:disable-next-line` suppresses everything
|
|
57
|
+
this.commentFlags.push({
|
|
56
58
|
file: this.file,
|
|
57
|
-
//null means all codes
|
|
58
59
|
codes: null,
|
|
59
60
|
range: range,
|
|
60
61
|
affectedRange: affectedRange
|
|
61
|
-
};
|
|
62
|
-
|
|
62
|
+
});
|
|
63
|
+
return;
|
|
63
64
|
}
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
65
|
+
const codes = this.collectCodes(tokenized.codes);
|
|
66
|
+
if (codes && codes.length > 0) {
|
|
67
|
+
this.commentFlags.push({
|
|
68
|
+
file: this.file,
|
|
69
|
+
codes: codes,
|
|
70
|
+
range: range,
|
|
71
|
+
affectedRange: affectedRange
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* Resolve any pending `bs:disable` / `bs:enable` block directives into `CommentFlag`s.
|
|
77
|
+
* Must be called after the file's comment tokens have been fed through `tryAdd`.
|
|
78
|
+
*/
|
|
79
|
+
finalize() {
|
|
80
|
+
if (this.blockDirectives.length === 0) {
|
|
81
|
+
return;
|
|
82
|
+
}
|
|
83
|
+
//state across the file: which codes are suppressed within the current block
|
|
84
|
+
let allSuppressed = false;
|
|
85
|
+
const carveOuts = new Set();
|
|
86
|
+
for (let i = 0; i < this.blockDirectives.length; i++) {
|
|
87
|
+
const directive = this.blockDirectives[i];
|
|
88
|
+
const codes = this.collectCodes(directive.rawCodes);
|
|
89
|
+
//apply this directive to the running state
|
|
90
|
+
if (codes === null) {
|
|
91
|
+
//bare `bs:disable` / `bs:enable` resets state
|
|
92
|
+
allSuppressed = directive.kind === 'disable';
|
|
93
|
+
carveOuts.clear();
|
|
94
|
+
}
|
|
95
|
+
else if (directive.kind === 'disable') {
|
|
96
|
+
//in disable-all mode, "disable: X" cancels a prior carve-out for X
|
|
97
|
+
//in enable-all mode, "disable: X" adds X to the suppressed set
|
|
98
|
+
for (const code of codes) {
|
|
99
|
+
if (allSuppressed) {
|
|
100
|
+
carveOuts.delete(code);
|
|
101
|
+
}
|
|
102
|
+
else {
|
|
103
|
+
carveOuts.add(code);
|
|
104
|
+
}
|
|
76
105
|
}
|
|
77
|
-
|
|
78
|
-
|
|
106
|
+
}
|
|
107
|
+
else {
|
|
108
|
+
//'enable' with specific codes does the opposite of the disable branch above
|
|
109
|
+
for (const code of codes) {
|
|
110
|
+
if (allSuppressed) {
|
|
111
|
+
carveOuts.add(code);
|
|
112
|
+
}
|
|
113
|
+
else {
|
|
114
|
+
carveOuts.delete(code);
|
|
115
|
+
}
|
|
79
116
|
}
|
|
80
117
|
}
|
|
81
|
-
|
|
82
|
-
|
|
118
|
+
//affectedRange runs from the line after this directive to just before the next block directive (or EOF)
|
|
119
|
+
const next = this.blockDirectives[i + 1];
|
|
120
|
+
const startLine = directive.range.start.line + 1;
|
|
121
|
+
const endLine = next ? next.range.start.line - 1 : Number.MAX_SAFE_INTEGER;
|
|
122
|
+
if (endLine < startLine) {
|
|
123
|
+
continue;
|
|
124
|
+
}
|
|
125
|
+
const affectedRange = util_1.util.createRange(startLine, 0, endLine, Number.MAX_SAFE_INTEGER);
|
|
126
|
+
//emit a flag only when the current state actually suppresses something
|
|
127
|
+
if (allSuppressed) {
|
|
128
|
+
this.commentFlags.push({
|
|
83
129
|
file: this.file,
|
|
84
|
-
codes:
|
|
85
|
-
|
|
130
|
+
codes: null,
|
|
131
|
+
enableCodes: carveOuts.size > 0 ? [...carveOuts] : undefined,
|
|
132
|
+
range: directive.range,
|
|
86
133
|
affectedRange: affectedRange
|
|
87
|
-
};
|
|
134
|
+
});
|
|
135
|
+
}
|
|
136
|
+
else if (carveOuts.size > 0) {
|
|
137
|
+
this.commentFlags.push({
|
|
138
|
+
file: this.file,
|
|
139
|
+
codes: [...carveOuts],
|
|
140
|
+
range: directive.range,
|
|
141
|
+
affectedRange: affectedRange
|
|
142
|
+
});
|
|
88
143
|
}
|
|
89
144
|
}
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
145
|
+
}
|
|
146
|
+
/**
|
|
147
|
+
* Resolve a list of `{ code, range }` tokens into validated diagnostic codes.
|
|
148
|
+
* Pushes diagnostics for any unknown numeric codes. Returns `null` when no codes were specified
|
|
149
|
+
* (i.e. a bare `bs:disable` / `bs:enable`), and an array otherwise.
|
|
150
|
+
*/
|
|
151
|
+
collectCodes(rawCodes) {
|
|
152
|
+
var _a, _b;
|
|
153
|
+
if (rawCodes.length === 0) {
|
|
154
|
+
return null;
|
|
99
155
|
}
|
|
156
|
+
const codes = [];
|
|
157
|
+
for (const codeToken of rawCodes) {
|
|
158
|
+
const codeInt = parseInt(codeToken.code);
|
|
159
|
+
if (isNaN(codeInt)) {
|
|
160
|
+
//plugin-contributed or non-numeric code
|
|
161
|
+
codes.push((_b = (_a = codeToken.code) === null || _a === void 0 ? void 0 : _a.toString()) === null || _b === void 0 ? void 0 : _b.toLowerCase());
|
|
162
|
+
}
|
|
163
|
+
else if (this.diagnosticCodes.includes(codeInt)) {
|
|
164
|
+
codes.push(codeInt);
|
|
165
|
+
}
|
|
166
|
+
else {
|
|
167
|
+
this.diagnostics.push(Object.assign(Object.assign({}, DiagnosticMessages_1.DiagnosticMessages.unknownDiagnosticCode(codeInt)), { location: util_1.util.createLocationFromFileRange(this.file, codeToken.range) }));
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
return codes;
|
|
100
171
|
}
|
|
101
172
|
/**
|
|
102
|
-
* Small tokenizer for bs
|
|
173
|
+
* Small tokenizer for `bs:` directive comments.
|
|
103
174
|
*/
|
|
104
175
|
tokenize(text, range) {
|
|
105
176
|
let lowerText = text.toLowerCase();
|
|
@@ -113,20 +184,31 @@ class CommentFlagProcessor {
|
|
|
113
184
|
break;
|
|
114
185
|
}
|
|
115
186
|
}
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
let len = lowerText.length;
|
|
187
|
+
//trim leading whitespace
|
|
188
|
+
const len = lowerText.length;
|
|
119
189
|
lowerText = lowerText.trimLeft();
|
|
120
190
|
offset += len - lowerText.length;
|
|
191
|
+
//match longest-prefix first so `bs:disable-line` doesn't get parsed as `bs:disable`
|
|
192
|
+
let directive;
|
|
121
193
|
if (lowerText.startsWith('bs:disable-line')) {
|
|
122
194
|
lowerText = lowerText.substring('bs:disable-line'.length);
|
|
123
195
|
offset += 'bs:disable-line'.length;
|
|
124
|
-
|
|
196
|
+
directive = 'line';
|
|
125
197
|
}
|
|
126
198
|
else if (lowerText.startsWith('bs:disable-next-line')) {
|
|
127
199
|
lowerText = lowerText.substring('bs:disable-next-line'.length);
|
|
128
200
|
offset += 'bs:disable-next-line'.length;
|
|
129
|
-
|
|
201
|
+
directive = 'next-line';
|
|
202
|
+
}
|
|
203
|
+
else if (lowerText.startsWith('bs:disable')) {
|
|
204
|
+
lowerText = lowerText.substring('bs:disable'.length);
|
|
205
|
+
offset += 'bs:disable'.length;
|
|
206
|
+
directive = 'disable';
|
|
207
|
+
}
|
|
208
|
+
else if (lowerText.startsWith('bs:enable')) {
|
|
209
|
+
lowerText = lowerText.substring('bs:enable'.length);
|
|
210
|
+
offset += 'bs:enable'.length;
|
|
211
|
+
directive = 'enable';
|
|
130
212
|
}
|
|
131
213
|
else {
|
|
132
214
|
return null;
|
|
@@ -136,9 +218,9 @@ class CommentFlagProcessor {
|
|
|
136
218
|
lowerText = lowerText.substring(1);
|
|
137
219
|
offset += 1;
|
|
138
220
|
}
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
for (
|
|
221
|
+
const items = this.tokenizeByWhitespace(lowerText);
|
|
222
|
+
const codes = [];
|
|
223
|
+
for (const item of items) {
|
|
142
224
|
codes.push({
|
|
143
225
|
code: item.text,
|
|
144
226
|
range: util_1.util.createRange(range.start.line, range.start.character + offset + item.startIndex, range.start.line, range.start.character + offset + item.startIndex + item.text.length)
|
|
@@ -146,7 +228,7 @@ class CommentFlagProcessor {
|
|
|
146
228
|
}
|
|
147
229
|
return {
|
|
148
230
|
commentTokenText: commentTokenText,
|
|
149
|
-
|
|
231
|
+
directive: directive,
|
|
150
232
|
codes: codes
|
|
151
233
|
};
|
|
152
234
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CommentFlagProcessor.js","sourceRoot":"","sources":["../src/CommentFlagProcessor.ts"],"names":[],"mappings":";;;AACA,6DAA0D;AAG1D,iCAA8B;AAE9B,MAAa,oBAAoB;IAC7B;IACI;;OAEG;IACI,IAAa;IACpB;;OAEG;IACI,kBAAkB,EAAc;IACvC;;OAEG;IACI,kBAAkB,EAAsB;
|
|
1
|
+
{"version":3,"file":"CommentFlagProcessor.js","sourceRoot":"","sources":["../src/CommentFlagProcessor.ts"],"names":[],"mappings":"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"}
|