brighterscript 0.66.0-alpha.5 → 0.66.0-alpha.7

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 (298) hide show
  1. package/CHANGELOG.md +64 -10
  2. package/README.md +16 -0
  3. package/bsconfig.schema.json +15 -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/BsConfig.d.ts +15 -1
  8. package/dist/CommentFlagProcessor.d.ts +4 -3
  9. package/dist/CommentFlagProcessor.js.map +1 -1
  10. package/dist/DiagnosticMessages.d.ts +19 -4
  11. package/dist/DiagnosticMessages.js +45 -5
  12. package/dist/DiagnosticMessages.js.map +1 -1
  13. package/dist/LanguageServer.js.map +1 -1
  14. package/dist/PluginInterface.d.ts +11 -2
  15. package/dist/PluginInterface.js +69 -10
  16. package/dist/PluginInterface.js.map +1 -1
  17. package/dist/Program.d.ts +101 -37
  18. package/dist/Program.js +492 -274
  19. package/dist/Program.js.map +1 -1
  20. package/dist/ProgramBuilder.d.ts +10 -4
  21. package/dist/ProgramBuilder.js +44 -54
  22. package/dist/ProgramBuilder.js.map +1 -1
  23. package/dist/Scope.d.ts +27 -13
  24. package/dist/Scope.js +44 -26
  25. package/dist/Scope.js.map +1 -1
  26. package/dist/SymbolTable.d.ts +5 -0
  27. package/dist/SymbolTable.js +15 -2
  28. package/dist/SymbolTable.js.map +1 -1
  29. package/dist/XmlScope.d.ts +7 -4
  30. package/dist/XmlScope.js +47 -8
  31. package/dist/XmlScope.js.map +1 -1
  32. package/dist/astUtils/{AstEditor.d.ts → Editor.d.ts} +6 -1
  33. package/dist/astUtils/{AstEditor.js → Editor.js} +9 -3
  34. package/dist/astUtils/Editor.js.map +1 -0
  35. package/dist/astUtils/{AstEditor.spec.js → Editor.spec.js} +10 -6
  36. package/dist/astUtils/Editor.spec.js.map +1 -0
  37. package/dist/astUtils/creators.d.ts +3 -1
  38. package/dist/astUtils/creators.js +9 -1
  39. package/dist/astUtils/creators.js.map +1 -1
  40. package/dist/astUtils/reflection.d.ts +30 -8
  41. package/dist/astUtils/reflection.js +64 -14
  42. package/dist/astUtils/reflection.js.map +1 -1
  43. package/dist/astUtils/reflection.spec.js +85 -4
  44. package/dist/astUtils/reflection.spec.js.map +1 -1
  45. package/dist/astUtils/visitors.d.ts +3 -3
  46. package/dist/astUtils/visitors.spec.js +7 -7
  47. package/dist/astUtils/visitors.spec.js.map +1 -1
  48. package/dist/bscPlugin/BscPlugin.d.ts +10 -2
  49. package/dist/bscPlugin/BscPlugin.js +24 -4
  50. package/dist/bscPlugin/BscPlugin.js.map +1 -1
  51. package/dist/bscPlugin/FileWriter.d.ts +6 -0
  52. package/dist/bscPlugin/FileWriter.js +24 -0
  53. package/dist/bscPlugin/FileWriter.js.map +1 -0
  54. package/dist/bscPlugin/codeActions/CodeActionsProcessor.js +8 -8
  55. package/dist/bscPlugin/codeActions/CodeActionsProcessor.js.map +1 -1
  56. package/dist/bscPlugin/codeActions/CodeActionsProcessor.spec.js +4 -4
  57. package/dist/bscPlugin/codeActions/CodeActionsProcessor.spec.js.map +1 -1
  58. package/dist/bscPlugin/completions/CompletionsProcessor.d.ts +11 -1
  59. package/dist/bscPlugin/completions/CompletionsProcessor.js +112 -58
  60. package/dist/bscPlugin/completions/CompletionsProcessor.js.map +1 -1
  61. package/dist/bscPlugin/completions/CompletionsProcessor.spec.js +151 -6
  62. package/dist/bscPlugin/completions/CompletionsProcessor.spec.js.map +1 -1
  63. package/dist/bscPlugin/fileProviders/FileProvider.d.ts +9 -0
  64. package/dist/bscPlugin/fileProviders/FileProvider.js +51 -0
  65. package/dist/bscPlugin/fileProviders/FileProvider.js.map +1 -0
  66. package/dist/bscPlugin/hover/HoverProcessor.d.ts +1 -7
  67. package/dist/bscPlugin/hover/HoverProcessor.js +2 -8
  68. package/dist/bscPlugin/hover/HoverProcessor.js.map +1 -1
  69. package/dist/bscPlugin/hover/HoverProcessor.spec.js +55 -0
  70. package/dist/bscPlugin/hover/HoverProcessor.spec.js.map +1 -1
  71. package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.d.ts +1 -0
  72. package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.js +43 -0
  73. package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.js.map +1 -1
  74. package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.spec.js +22 -0
  75. package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.spec.js.map +1 -1
  76. package/dist/bscPlugin/serialize/BslibInjector.spec.js +19 -0
  77. package/dist/bscPlugin/serialize/BslibInjector.spec.js.map +1 -0
  78. package/dist/bscPlugin/serialize/BslibManager.d.ts +9 -0
  79. package/dist/bscPlugin/serialize/BslibManager.js +40 -0
  80. package/dist/bscPlugin/serialize/BslibManager.js.map +1 -0
  81. package/dist/bscPlugin/serialize/FileSerializer.d.ts +9 -0
  82. package/dist/bscPlugin/serialize/FileSerializer.js +72 -0
  83. package/dist/bscPlugin/serialize/FileSerializer.js.map +1 -0
  84. package/dist/bscPlugin/transpile/{BrsFilePreTranspileProcessor.d.ts → BrsFileTranspileProcessor.d.ts} +4 -2
  85. package/dist/bscPlugin/transpile/{BrsFilePreTranspileProcessor.js → BrsFileTranspileProcessor.js} +25 -4
  86. package/dist/bscPlugin/transpile/BrsFileTranspileProcessor.js.map +1 -0
  87. package/dist/bscPlugin/transpile/BrsFileTranspileProcessor.spec.d.ts +1 -0
  88. package/dist/bscPlugin/transpile/BrsFileTranspileProcessor.spec.js +41 -0
  89. package/dist/bscPlugin/transpile/BrsFileTranspileProcessor.spec.js.map +1 -0
  90. package/dist/bscPlugin/transpile/XmlFilePreTranspileProcessor.d.ts +2 -2
  91. package/dist/bscPlugin/transpile/XmlFilePreTranspileProcessor.js.map +1 -1
  92. package/dist/bscPlugin/validation/BrsFileValidator.js +2 -1
  93. package/dist/bscPlugin/validation/BrsFileValidator.js.map +1 -1
  94. package/dist/bscPlugin/validation/ScopeValidator.d.ts +12 -0
  95. package/dist/bscPlugin/validation/ScopeValidator.js +137 -19
  96. package/dist/bscPlugin/validation/ScopeValidator.js.map +1 -1
  97. package/dist/bscPlugin/validation/ScopeValidator.spec.js +671 -1
  98. package/dist/bscPlugin/validation/ScopeValidator.spec.js.map +1 -1
  99. package/dist/bscPlugin/validation/XmlFileValidator.js +2 -2
  100. package/dist/bscPlugin/validation/XmlFileValidator.js.map +1 -1
  101. package/dist/cli.js +1 -0
  102. package/dist/cli.js.map +1 -1
  103. package/dist/deferred.d.ts +2 -2
  104. package/dist/deferred.js.map +1 -1
  105. package/dist/diagnosticUtils.d.ts +1 -0
  106. package/dist/diagnosticUtils.js +4 -3
  107. package/dist/diagnosticUtils.js.map +1 -1
  108. package/dist/examples/plugins/removePrint.js +1 -1
  109. package/dist/examples/plugins/removePrint.js.map +1 -1
  110. package/dist/files/AssetFile.d.ts +26 -0
  111. package/dist/files/AssetFile.js +26 -0
  112. package/dist/files/AssetFile.js.map +1 -0
  113. package/dist/files/BrsFile.Class.spec.js +40 -40
  114. package/dist/files/BrsFile.Class.spec.js.map +1 -1
  115. package/dist/files/BrsFile.d.ts +42 -15
  116. package/dist/files/BrsFile.js +120 -78
  117. package/dist/files/BrsFile.js.map +1 -1
  118. package/dist/files/BrsFile.spec.js +266 -167
  119. package/dist/files/BrsFile.spec.js.map +1 -1
  120. package/dist/files/Factory.d.ts +25 -0
  121. package/dist/files/Factory.js +22 -0
  122. package/dist/files/Factory.js.map +1 -0
  123. package/dist/files/File.d.ts +106 -0
  124. package/dist/files/File.js +16 -0
  125. package/dist/files/File.js.map +1 -0
  126. package/dist/files/LazyFileData.d.ts +20 -0
  127. package/dist/files/LazyFileData.js +54 -0
  128. package/dist/files/LazyFileData.js.map +1 -0
  129. package/dist/files/LazyFileData.spec.d.ts +1 -0
  130. package/dist/files/LazyFileData.spec.js +27 -0
  131. package/dist/files/LazyFileData.spec.js.map +1 -0
  132. package/dist/files/XmlFile.d.ts +55 -17
  133. package/dist/files/XmlFile.js +88 -47
  134. package/dist/files/XmlFile.js.map +1 -1
  135. package/dist/files/XmlFile.spec.js +64 -57
  136. package/dist/files/XmlFile.spec.js.map +1 -1
  137. package/dist/files/tests/imports.spec.js +21 -8
  138. package/dist/files/tests/imports.spec.js.map +1 -1
  139. package/dist/files/tests/optionalChaning.spec.js +14 -14
  140. package/dist/files/tests/optionalChaning.spec.js.map +1 -1
  141. package/dist/globalCallables.js +2 -6
  142. package/dist/globalCallables.js.map +1 -1
  143. package/dist/index.d.ts +4 -1
  144. package/dist/index.js +4 -1
  145. package/dist/index.js.map +1 -1
  146. package/dist/interfaces.d.ts +326 -85
  147. package/dist/interfaces.js +4 -1
  148. package/dist/interfaces.js.map +1 -1
  149. package/dist/lexer/Lexer.js +1 -1
  150. package/dist/lexer/TokenKind.js +0 -1
  151. package/dist/lexer/TokenKind.js.map +1 -1
  152. package/dist/parser/AstNode.d.ts +2 -2
  153. package/dist/parser/AstNode.js +1 -1
  154. package/dist/parser/AstNode.js.map +1 -1
  155. package/dist/parser/BrsTranspileState.d.ts +3 -2
  156. package/dist/parser/BrsTranspileState.js +3 -2
  157. package/dist/parser/BrsTranspileState.js.map +1 -1
  158. package/dist/parser/Expression.d.ts +1 -1
  159. package/dist/parser/Expression.js +35 -19
  160. package/dist/parser/Expression.js.map +1 -1
  161. package/dist/parser/Parser.js +12 -1
  162. package/dist/parser/Parser.js.map +1 -1
  163. package/dist/parser/Parser.spec.js +18 -2
  164. package/dist/parser/Parser.spec.js.map +1 -1
  165. package/dist/parser/SGParser.d.ts +2 -2
  166. package/dist/parser/SGParser.js +3 -3
  167. package/dist/parser/SGParser.js.map +1 -1
  168. package/dist/parser/SGParser.spec.js +2 -2
  169. package/dist/parser/SGParser.spec.js.map +1 -1
  170. package/dist/parser/SGTypes.d.ts +1 -1
  171. package/dist/parser/Statement.js +1 -1
  172. package/dist/parser/Statement.js.map +1 -1
  173. package/dist/parser/tests/expression/NullCoalescenceExpression.spec.js +10 -10
  174. package/dist/parser/tests/expression/NullCoalescenceExpression.spec.js.map +1 -1
  175. package/dist/parser/tests/expression/RegexLiteralExpression.spec.js +10 -10
  176. package/dist/parser/tests/expression/RegexLiteralExpression.spec.js.map +1 -1
  177. package/dist/parser/tests/expression/SourceLiteralExpression.spec.js +24 -24
  178. package/dist/parser/tests/expression/SourceLiteralExpression.spec.js.map +1 -1
  179. package/dist/parser/tests/expression/TemplateStringExpression.spec.js +64 -36
  180. package/dist/parser/tests/expression/TemplateStringExpression.spec.js.map +1 -1
  181. package/dist/parser/tests/expression/TernaryExpression.spec.js +34 -34
  182. package/dist/parser/tests/expression/TernaryExpression.spec.js.map +1 -1
  183. package/dist/parser/tests/statement/ConstStatement.spec.js +17 -17
  184. package/dist/parser/tests/statement/ConstStatement.spec.js.map +1 -1
  185. package/dist/parser/tests/statement/Continue.spec.js +2 -2
  186. package/dist/parser/tests/statement/Continue.spec.js.map +1 -1
  187. package/dist/parser/tests/statement/Enum.spec.js +26 -26
  188. package/dist/parser/tests/statement/Enum.spec.js.map +1 -1
  189. package/dist/parser/tests/statement/For.spec.js +6 -6
  190. package/dist/parser/tests/statement/For.spec.js.map +1 -1
  191. package/dist/parser/tests/statement/ForEach.spec.js +4 -4
  192. package/dist/parser/tests/statement/ForEach.spec.js.map +1 -1
  193. package/dist/parser/tests/statement/InterfaceStatement.spec.js +18 -10
  194. package/dist/parser/tests/statement/InterfaceStatement.spec.js.map +1 -1
  195. package/dist/parser/tests/statement/PrintStatement.spec.js +10 -10
  196. package/dist/parser/tests/statement/PrintStatement.spec.js.map +1 -1
  197. package/dist/preprocessor/Manifest.d.ts +1 -1
  198. package/dist/preprocessor/Manifest.js +2 -2
  199. package/dist/preprocessor/Manifest.js.map +1 -1
  200. package/dist/roku-types/data.json +111 -149
  201. package/dist/roku-types/index.d.ts +27 -13
  202. package/dist/types/ArrayType.d.ts +2 -1
  203. package/dist/types/ArrayType.js +6 -2
  204. package/dist/types/ArrayType.js.map +1 -1
  205. package/dist/types/ArrayType.spec.js +11 -1
  206. package/dist/types/ArrayType.spec.js.map +1 -1
  207. package/dist/types/AssociativeArrayType.d.ts +11 -0
  208. package/dist/types/AssociativeArrayType.js +52 -0
  209. package/dist/types/AssociativeArrayType.js.map +1 -0
  210. package/dist/types/BaseFunctionType.d.ts +2 -1
  211. package/dist/types/BaseFunctionType.js +1 -1
  212. package/dist/types/BaseFunctionType.js.map +1 -1
  213. package/dist/types/BooleanType.d.ts +2 -1
  214. package/dist/types/BooleanType.js +3 -2
  215. package/dist/types/BooleanType.js.map +1 -1
  216. package/dist/types/BscType.d.ts +3 -3
  217. package/dist/types/BscType.js +26 -12
  218. package/dist/types/BscType.js.map +1 -1
  219. package/dist/types/BscTypeKind.d.ts +2 -0
  220. package/dist/types/BscTypeKind.js +2 -0
  221. package/dist/types/BscTypeKind.js.map +1 -1
  222. package/dist/types/BuiltInInterfaceAdder.d.ts +8 -0
  223. package/dist/types/BuiltInInterfaceAdder.js +88 -23
  224. package/dist/types/BuiltInInterfaceAdder.js.map +1 -1
  225. package/dist/types/ClassType.d.ts +2 -1
  226. package/dist/types/ClassType.js +2 -2
  227. package/dist/types/ClassType.js.map +1 -1
  228. package/dist/types/ComponentType.d.ts +26 -0
  229. package/dist/types/ComponentType.js +83 -0
  230. package/dist/types/ComponentType.js.map +1 -0
  231. package/dist/types/DoubleType.d.ts +2 -1
  232. package/dist/types/DoubleType.js +4 -2
  233. package/dist/types/DoubleType.js.map +1 -1
  234. package/dist/types/DynamicType.d.ts +2 -2
  235. package/dist/types/DynamicType.js +1 -1
  236. package/dist/types/DynamicType.js.map +1 -1
  237. package/dist/types/EnumType.d.ts +3 -2
  238. package/dist/types/EnumType.js +3 -3
  239. package/dist/types/EnumType.js.map +1 -1
  240. package/dist/types/FloatType.d.ts +2 -1
  241. package/dist/types/FloatType.js +4 -2
  242. package/dist/types/FloatType.js.map +1 -1
  243. package/dist/types/FunctionType.d.ts +2 -1
  244. package/dist/types/FunctionType.js +2 -2
  245. package/dist/types/FunctionType.js.map +1 -1
  246. package/dist/types/IntegerType.d.ts +2 -1
  247. package/dist/types/IntegerType.js +4 -2
  248. package/dist/types/IntegerType.js.map +1 -1
  249. package/dist/types/InterfaceType.d.ts +2 -1
  250. package/dist/types/InterfaceType.js +3 -7
  251. package/dist/types/InterfaceType.js.map +1 -1
  252. package/dist/types/InterfaceType.spec.js +25 -2
  253. package/dist/types/InterfaceType.spec.js.map +1 -1
  254. package/dist/types/LongIntegerType.d.ts +2 -1
  255. package/dist/types/LongIntegerType.js +4 -2
  256. package/dist/types/LongIntegerType.js.map +1 -1
  257. package/dist/types/ObjectType.d.ts +2 -2
  258. package/dist/types/ObjectType.js +1 -1
  259. package/dist/types/ObjectType.js.map +1 -1
  260. package/dist/types/ReferenceType.d.ts +2 -0
  261. package/dist/types/ReferenceType.js +45 -1
  262. package/dist/types/ReferenceType.js.map +1 -1
  263. package/dist/types/StringType.d.ts +2 -1
  264. package/dist/types/StringType.js +4 -4
  265. package/dist/types/StringType.js.map +1 -1
  266. package/dist/types/TypedFunctionType.d.ts +7 -1
  267. package/dist/types/TypedFunctionType.js +47 -17
  268. package/dist/types/TypedFunctionType.js.map +1 -1
  269. package/dist/types/TypedFunctionType.spec.js +99 -0
  270. package/dist/types/TypedFunctionType.spec.js.map +1 -1
  271. package/dist/types/UninitializedType.d.ts +2 -1
  272. package/dist/types/UninitializedType.js +1 -1
  273. package/dist/types/UninitializedType.js.map +1 -1
  274. package/dist/types/UnionType.d.ts +2 -2
  275. package/dist/types/UnionType.js +10 -3
  276. package/dist/types/UnionType.js.map +1 -1
  277. package/dist/types/UnionType.spec.js +3 -2
  278. package/dist/types/UnionType.spec.js.map +1 -1
  279. package/dist/types/VoidType.d.ts +2 -1
  280. package/dist/types/VoidType.js +2 -2
  281. package/dist/types/VoidType.js.map +1 -1
  282. package/dist/types/helper.spec.js +15 -0
  283. package/dist/types/helper.spec.js.map +1 -1
  284. package/dist/types/helpers.d.ts +5 -1
  285. package/dist/types/helpers.js +31 -3
  286. package/dist/types/helpers.js.map +1 -1
  287. package/dist/util.d.ts +26 -6
  288. package/dist/util.js +181 -52
  289. package/dist/util.js.map +1 -1
  290. package/dist/validators/ClassValidator.js.map +1 -1
  291. package/package.json +1 -1
  292. package/dist/astUtils/AstEditor.js.map +0 -1
  293. package/dist/astUtils/AstEditor.spec.js.map +0 -1
  294. package/dist/bscPlugin/transpile/BrsFilePreTranspileProcessor.js.map +0 -1
  295. package/dist/bscPlugin/transpile/BrsFilePreTranspileProcessor.spec.js +0 -31
  296. package/dist/bscPlugin/transpile/BrsFilePreTranspileProcessor.spec.js.map +0 -1
  297. /package/dist/astUtils/{AstEditor.spec.d.ts → Editor.spec.d.ts} +0 -0
  298. /package/dist/bscPlugin/{transpile/BrsFilePreTranspileProcessor.spec.d.ts → serialize/BslibInjector.spec.d.ts} +0 -0
@@ -23,8 +23,12 @@ describe('XmlFile', () => {
23
23
  fsExtra.emptyDirSync(testHelpers_spec_2.tempDir);
24
24
  fsExtra.ensureDirSync(testHelpers_spec_2.rootDir);
25
25
  fsExtra.ensureDirSync(testHelpers_spec_2.stagingDir);
26
- program = new Program_1.Program({ rootDir: testHelpers_spec_2.rootDir });
27
- file = new XmlFile_1.XmlFile(`${testHelpers_spec_2.rootDir}/components/MainComponent.xml`, 'components/MainComponent.xml', program);
26
+ program = new Program_1.Program({ rootDir: testHelpers_spec_2.rootDir, stagingDir: testHelpers_spec_2.stagingDir });
27
+ file = new XmlFile_1.XmlFile({
28
+ srcPath: `${testHelpers_spec_2.rootDir}/components/MainComponent.xml`,
29
+ destPath: 'components/MainComponent.xml',
30
+ program: program
31
+ });
28
32
  });
29
33
  afterEach(() => {
30
34
  sinon.restore();
@@ -35,9 +39,9 @@ describe('XmlFile', () => {
35
39
  const expected = 'OtherName';
36
40
  program.plugins.add({
37
41
  name: 'allows modifying the parsed XML model',
38
- afterFileParse: (event) => {
42
+ afterProvideFile: (event) => {
39
43
  var _a, _b, _c;
40
- const file = event.file;
44
+ const file = event.files[0];
41
45
  if ((0, reflection_1.isXmlFile)(file) && ((_c = (_b = (_a = file.parser.ast.rootElement) === null || _a === void 0 ? void 0 : _a.attributes) === null || _b === void 0 ? void 0 : _b[0]) === null || _c === void 0 ? void 0 : _c.value)) {
42
46
  file.parser.ast.rootElement.attributes[0].value = expected;
43
47
  }
@@ -51,7 +55,7 @@ describe('XmlFile', () => {
51
55
  (0, chai_config_spec_1.expect)(file.componentName.text).to.equal(expected);
52
56
  });
53
57
  it('only removes specified attribute when calling setAttribute', () => {
54
- file = new XmlFile_1.XmlFile('abs', 'rel', program);
58
+ const file = new XmlFile_1.XmlFile({ srcPath: 'abs', destPath: 'rel', program: program });
55
59
  program.plugins.add({
56
60
  name: 'allows modifying the parsed XML model',
57
61
  afterFileParse: () => {
@@ -86,7 +90,7 @@ describe('XmlFile', () => {
86
90
  <script type="text/brightscript" uri="ChildScene.bs" />
87
91
  </component>
88
92
  `);
89
- (0, chai_config_spec_1.expect)(file.scriptTagImports.map(x => x.pkgPath)[0]).to.equal((0, util_1.standardizePath) `components/ChildScene.bs`);
93
+ (0, chai_config_spec_1.expect)(file.scriptTagImports.map(x => x.destPath)[0]).to.equal((0, util_1.standardizePath) `components/ChildScene.bs`);
90
94
  });
91
95
  it('does not include commented-out script imports', () => {
92
96
  var _a, _b;
@@ -99,10 +103,10 @@ describe('XmlFile', () => {
99
103
  -->
100
104
  </component>
101
105
  `);
102
- (0, chai_config_spec_1.expect)((_b = (_a = file.scriptTagImports) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.pkgPath).to.eql((0, util_1.standardizePath) `components/ChildScene.brs`);
106
+ (0, chai_config_spec_1.expect)((_b = (_a = file.scriptTagImports) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.destPath).to.eql((0, util_1.standardizePath) `components/ChildScene.brs`);
103
107
  });
104
108
  it('finds scripts when more than one per line', () => {
105
- file = new XmlFile_1.XmlFile('abs', 'rel', program);
109
+ file = new XmlFile_1.XmlFile({ srcPath: 'abs', destPath: 'rel', program: program });
106
110
  file.parse((0, testHelpers_spec_1.trim) `
107
111
  <?xml version="1.0" encoding="utf-8" ?>
108
112
  <component name="ChildScene" extends="Scene">
@@ -124,7 +128,7 @@ describe('XmlFile', () => {
124
128
  });
125
129
  });
126
130
  it('finds component names', () => {
127
- file = new XmlFile_1.XmlFile('abs', 'rel', program);
131
+ file = new XmlFile_1.XmlFile({ srcPath: 'abs', destPath: 'rel', program: program });
128
132
  file.parse((0, testHelpers_spec_1.trim) `
129
133
  <?xml version="1.0" encoding="utf-8" ?>
130
134
  <component name="ChildScene" extends="ParentScene">
@@ -135,7 +139,7 @@ describe('XmlFile', () => {
135
139
  (0, chai_config_spec_1.expect)(file.componentName.text).to.equal('ChildScene');
136
140
  });
137
141
  it('Adds error when whitespace appears before the prolog', () => {
138
- file = new XmlFile_1.XmlFile('abs', 'rel', program);
142
+ file = new XmlFile_1.XmlFile({ srcPath: 'abs', destPath: 'rel', program: program });
139
143
  file.parse(/* not trimmed */ `
140
144
  <?xml version="1.0" encoding="utf-8" ?>
141
145
  <component name="ChildScene" extends="ParentScene">
@@ -149,7 +153,7 @@ describe('XmlFile', () => {
149
153
  (0, chai_config_spec_1.expect)(file.diagnostics[1]).to.deep.include(Object.assign(Object.assign({}, DiagnosticMessages_1.DiagnosticMessages.xmlGenericParseError('Syntax error: whitespace found before the XML prolog')), { range: vscode_languageserver_1.Range.create(0, 0, 1, 16) }));
150
154
  });
151
155
  it('Adds error when an unknown tag is found in xml', () => {
152
- file = new XmlFile_1.XmlFile('abs', 'rel', program);
156
+ file = new XmlFile_1.XmlFile({ srcPath: 'abs', destPath: 'rel', program: program });
153
157
  file.parse((0, testHelpers_spec_1.trim) `
154
158
  <?xml version="1.0" encoding="utf-8" ?>
155
159
  <component name="ChildScene" extends="ParentScene">
@@ -200,7 +204,7 @@ describe('XmlFile', () => {
200
204
  });
201
205
  });
202
206
  it('finds script imports', () => {
203
- file = new XmlFile_1.XmlFile('abspath/components/cmp1.xml', 'components/cmp1.xml', program);
207
+ file = new XmlFile_1.XmlFile({ srcPath: 'abspath/components/cmp1.xml', destPath: 'components/cmp1.xml', program: program });
204
208
  file.parse((0, testHelpers_spec_1.trim) `
205
209
  <?xml version="1.0" encoding="utf-8" ?>
206
210
  <component name="Cmp1" extends="Scene">
@@ -211,12 +215,12 @@ describe('XmlFile', () => {
211
215
  (0, chai_config_spec_1.expect)(file.scriptTagImports[0]).to.deep.include({
212
216
  sourceFile: file,
213
217
  text: 'pkg:/components/cmp1.brs',
214
- pkgPath: `components${path.sep}cmp1.brs`,
218
+ destPath: `components${path.sep}cmp1.brs`,
215
219
  filePathRange: vscode_languageserver_1.Range.create(2, 42, 2, 66)
216
220
  });
217
221
  });
218
222
  it('throws an error if the file has already been parsed', () => {
219
- file = new XmlFile_1.XmlFile('abspath', 'relpath', program);
223
+ file = new XmlFile_1.XmlFile({ srcPath: 'abspath', destPath: 'relpath', program: program });
220
224
  file.parse('a comment');
221
225
  try {
222
226
  file.parse(`'a new comment`);
@@ -236,7 +240,7 @@ describe('XmlFile', () => {
236
240
  (0, chai_config_spec_1.expect)(file.scriptTagImports.length).to.equal(1);
237
241
  (0, chai_config_spec_1.expect)(file.scriptTagImports[0]).to.deep.include({
238
242
  text: 'cmp1.brs',
239
- pkgPath: `components${path.sep}cmp1.brs`
243
+ destPath: `components${path.sep}cmp1.brs`
240
244
  });
241
245
  });
242
246
  it('finds correct position for empty uri in script tag', () => {
@@ -465,8 +469,8 @@ describe('XmlFile', () => {
465
469
  ]);
466
470
  });
467
471
  describe('transpile', () => {
468
- it('handles single quotes properly', () => {
469
- testTranspile((0, testHelpers_spec_1.trim) `
472
+ it('handles single quotes properly', async () => {
473
+ await testTranspile((0, testHelpers_spec_1.trim) `
470
474
  <?xml version="1.0" encoding="utf-8" ?>
471
475
  <component name="AnimationExample" extends="Scene">
472
476
  <children>
@@ -500,6 +504,7 @@ describe('XmlFile', () => {
500
504
  await builder.run({
501
505
  cwd: testHelpers_spec_2.rootDir,
502
506
  retainStagingDir: true,
507
+ createPackage: false,
503
508
  stagingDir: testHelpers_spec_2.stagingDir,
504
509
  logLevel: Logger_1.LogLevel.off
505
510
  });
@@ -518,9 +523,9 @@ describe('XmlFile', () => {
518
523
  it(`honors the 'needsTranspiled' flag when set in 'afterFileParse'`, () => {
519
524
  program.plugins.add({
520
525
  name: 'test',
521
- afterFileParse: (event) => {
526
+ afterProvideFile: (event) => {
522
527
  //enable transpile for every file
523
- event.file.needsTranspiled = true;
528
+ event.files[0].needsTranspiled = true;
524
529
  }
525
530
  });
526
531
  const file = program.setFile('components/file.xml', (0, testHelpers_spec_1.trim) `
@@ -528,10 +533,10 @@ describe('XmlFile', () => {
528
533
  <component name="Comp" extends="Group">
529
534
  </component>
530
535
  `);
531
- (0, chai_config_spec_1.expect)(file.needsTranspiled).to.be.true;
536
+ (0, chai_config_spec_1.expect)(file['needsTranspiled']).to.be.true;
532
537
  });
533
- it('includes bslib script', () => {
534
- testTranspile((0, testHelpers_spec_1.trim) `
538
+ it('includes bslib script', async () => {
539
+ await testTranspile((0, testHelpers_spec_1.trim) `
535
540
  <?xml version="1.0" encoding="utf-8" ?>
536
541
  <component name="Comp" extends="Group">
537
542
  </component>
@@ -542,8 +547,8 @@ describe('XmlFile', () => {
542
547
  </component>
543
548
  `, 'none', 'components/Comp.xml');
544
549
  });
545
- it('does not include additional bslib script if already there ', () => {
546
- testTranspile((0, testHelpers_spec_1.trim) `
550
+ it('does not include additional bslib script if already there ', async () => {
551
+ await testTranspile((0, testHelpers_spec_1.trim) `
547
552
  <?xml version="1.0" encoding="utf-8" ?>
548
553
  <component name="Comp" extends="Group">
549
554
  <script type="text/brightscript" uri="pkg:/source/bslib.brs" />
@@ -555,11 +560,11 @@ describe('XmlFile', () => {
555
560
  </component>
556
561
  `, 'none', 'components/child.xml');
557
562
  });
558
- it('does not include bslib script if already there from ropm', () => {
563
+ it('does not include bslib script if already there from ropm', async () => {
559
564
  program.setFile('source/roku_modules/bslib/bslib.brs', ``);
560
565
  program.setFile('source/lib.bs', ``);
561
566
  //include a bs file to force transpile for the xml file
562
- testTranspile((0, testHelpers_spec_1.trim) `
567
+ await testTranspile((0, testHelpers_spec_1.trim) `
563
568
  <?xml version="1.0" encoding="utf-8" ?>
564
569
  <component name="Comp" extends="Group">
565
570
  <script type="text/brightscript" uri="pkg:/source/lib.bs" />
@@ -582,7 +587,7 @@ describe('XmlFile', () => {
582
587
  `);
583
588
  program.validate();
584
589
  (0, testHelpers_spec_1.expectZeroDiagnostics)(program);
585
- (0, chai_config_spec_1.expect)(file.needsTranspiled).to.be.false;
590
+ (0, chai_config_spec_1.expect)(file['needsTranspiled']).to.be.false;
586
591
  });
587
592
  /**
588
593
  * There was a bug that would incorrectly replace one of the script paths on the second or third transpile, so this test verifies it doesn't do that anymore
@@ -602,19 +607,19 @@ describe('XmlFile', () => {
602
607
  <script type="text/brightscript" uri="pkg:/source/bslib.brs" />
603
608
  </component>
604
609
  `;
605
- await program.transpile([], testHelpers_spec_2.stagingDir);
610
+ await program.build();
606
611
  (0, chai_config_spec_1.expect)((0, testHelpers_spec_1.trim)(fsExtra.readFileSync(`${testHelpers_spec_2.stagingDir}/components/SimpleScene.xml`).toString())).to.eql(expected);
607
612
  //clear the output folder
608
613
  fsExtra.emptyDirSync(testHelpers_spec_2.stagingDir);
609
- await program.transpile([], testHelpers_spec_2.stagingDir);
614
+ await program.build();
610
615
  (0, chai_config_spec_1.expect)((0, testHelpers_spec_1.trim)(fsExtra.readFileSync(`${testHelpers_spec_2.stagingDir}/components/SimpleScene.xml`).toString())).to.eql(expected);
611
616
  });
612
- it('injects new scripts near existing scripts', () => {
617
+ it('injects new scripts near existing scripts', async () => {
613
618
  program.setFile(`components/SimpleScene.bs`, `
614
619
  sub b()
615
620
  end sub
616
621
  `);
617
- testTranspile((0, testHelpers_spec_1.trim) `
622
+ await testTranspile((0, testHelpers_spec_1.trim) `
618
623
  <component name="SimpleScene" extends="group">
619
624
  <script type="text/brightscript" uri="SimpleScene.bs"/>
620
625
  <children>
@@ -635,13 +640,13 @@ describe('XmlFile', () => {
635
640
  </component>
636
641
  `, 'none', 'components/SimpleScene.xml');
637
642
  });
638
- it('injects new scripts at top of component when no scripts were present', () => {
643
+ it('injects new scripts at top of component when no scripts were present', async () => {
639
644
  program.setFile(`components/SimpleScene.bs`, `
640
645
  sub b()
641
646
  end sub
642
647
  `);
643
648
  program.options.autoImportComponentScript = true;
644
- testTranspile((0, testHelpers_spec_1.trim) `
649
+ await testTranspile((0, testHelpers_spec_1.trim) `
645
650
  <component name="SimpleScene" extends="group">
646
651
  <children>
647
652
  <aa id="aa">
@@ -661,12 +666,12 @@ describe('XmlFile', () => {
661
666
  </component>
662
667
  `, 'none', 'components/SimpleScene.xml');
663
668
  });
664
- it('keeps all content of the XML', () => {
669
+ it('keeps all content of the XML', async () => {
665
670
  program.setFile(`components/SimpleScene.bs`, `
666
671
  sub b()
667
672
  end sub
668
673
  `);
669
- testTranspile((0, testHelpers_spec_1.trim) `
674
+ await testTranspile((0, testHelpers_spec_1.trim) `
670
675
  <?xml version="1.0" encoding="utf-8" ?>
671
676
  <component
672
677
  name="SimpleScene" extends="Scene"
@@ -701,12 +706,12 @@ describe('XmlFile', () => {
701
706
  </component>
702
707
  `, 'none', 'components/SimpleScene.xml');
703
708
  });
704
- it('changes file extensions from bs to brs', () => {
709
+ it('changes file extensions from bs to brs', async () => {
705
710
  program.setFile(`components/SimpleScene.bs`, `
706
711
  import "pkg:/source/lib.bs"
707
712
  `);
708
713
  program.setFile('source/lib.bs', ``);
709
- testTranspile((0, testHelpers_spec_1.trim) `
714
+ await testTranspile((0, testHelpers_spec_1.trim) `
710
715
  <?xml version="1.0" encoding="utf-8" ?>
711
716
  <component name="SimpleScene" extends="Scene">
712
717
  <script type="text/brighterscript" uri="SimpleScene.bs"/>
@@ -720,9 +725,9 @@ describe('XmlFile', () => {
720
725
  </component>
721
726
  `, 'none', 'components/SimpleScene.xml');
722
727
  });
723
- it('does not fail on missing script type', () => {
728
+ it('does not fail on missing script type', async () => {
724
729
  program.setFile('components/SimpleScene.brs', '');
725
- testTranspile((0, testHelpers_spec_1.trim) `
730
+ await testTranspile((0, testHelpers_spec_1.trim) `
726
731
  <?xml version="1.0" encoding="utf-8" ?>
727
732
  <component name="SimpleScene" extends="Scene">
728
733
  <script uri="SimpleScene.brs"/>
@@ -759,7 +764,7 @@ describe('XmlFile', () => {
759
764
  <component name="SimpleScene" extends="Scene" >
760
765
  </component>
761
766
  `);
762
- (0, chai_config_spec_1.expect)(file.needsTranspiled).to.be.false;
767
+ (0, chai_config_spec_1.expect)(file['needsTranspiled']).to.be.false;
763
768
  });
764
769
  it('needsTranspiled is true if an import is brighterscript', () => {
765
770
  let file = program.setFile('components/SimpleScene.xml', (0, testHelpers_spec_1.trim) `
@@ -768,7 +773,7 @@ describe('XmlFile', () => {
768
773
  <script type="text/brightscript" uri="SimpleScene.bs"/>
769
774
  </component>
770
775
  `);
771
- (0, chai_config_spec_1.expect)(file.needsTranspiled).to.be.true;
776
+ (0, chai_config_spec_1.expect)(file['needsTranspiled']).to.be.true;
772
777
  });
773
778
  it('simple source mapping includes sourcemap reference', () => {
774
779
  program.options.sourceMap = true;
@@ -789,7 +794,7 @@ describe('XmlFile', () => {
789
794
  <component name="SimpleScene" extends="Scene">
790
795
  </component>
791
796
  `);
792
- file.needsTranspiled = true;
797
+ file['needsTranspiled'] = true;
793
798
  const code = file.transpile().code;
794
799
  (0, chai_config_spec_1.expect)(code.endsWith(`<!--//# sourceMappingURL=./SimpleScene.xml.map -->`)).to.be.true;
795
800
  });
@@ -802,7 +807,7 @@ describe('XmlFile', () => {
802
807
  });
803
808
  program.plugins.add({
804
809
  name: 'Transform plugins',
805
- afterFileParse: event => validateXml(event.file)
810
+ onFileValidate: event => validateXml(event.file)
806
811
  });
807
812
  file = program.setFile('components/component.xml', (0, testHelpers_spec_1.trim) `
808
813
  <?xml version="1.0" encoding="utf-8" ?>
@@ -822,14 +827,16 @@ describe('XmlFile', () => {
822
827
  it('plugin diagnostics work for xml files', () => {
823
828
  program.plugins.add({
824
829
  name: 'Xml diagnostic test',
825
- afterFileParse: (event) => {
826
- if (event.file.srcPath.endsWith('.xml')) {
827
- event.file.addDiagnostics([{
828
- file: event.file,
830
+ afterProvideFile: (event) => {
831
+ for (const file of event.files) {
832
+ if (file.srcPath.endsWith('.xml')) {
833
+ file.diagnostics.push({
834
+ file: file,
829
835
  message: 'Test diagnostic',
830
836
  range: vscode_languageserver_1.Range.create(0, 0, 0, 0),
831
837
  code: 9999
832
- }]);
838
+ });
839
+ }
833
840
  }
834
841
  }
835
842
  });
@@ -906,7 +913,7 @@ describe('XmlFile', () => {
906
913
  `);
907
914
  (0, chai_config_spec_1.expect)(program.getScopesForFile(xmlFile)[0].getAllCallables().map(x => x.callable.name)).to.include('logInfo');
908
915
  });
909
- it('does not include `d.bs` script during transpile', () => {
916
+ it('does not include `d.bs` script during transpile', async () => {
910
917
  program.setFile('source/logger.d.bs', `
911
918
  sub logInfo()
912
919
  end sub
@@ -920,7 +927,7 @@ describe('XmlFile', () => {
920
927
  sub init()
921
928
  end sub
922
929
  `);
923
- testTranspile((0, testHelpers_spec_1.trim) `
930
+ await testTranspile((0, testHelpers_spec_1.trim) `
924
931
  <?xml version="1.0" encoding="utf-8" ?>
925
932
  <component name="Component1" extends="Scene">
926
933
  <script type="text/brighterscript" uri="Component1.bs" />
@@ -1014,7 +1021,7 @@ describe('XmlFile', () => {
1014
1021
  program.validate();
1015
1022
  (0, testHelpers_spec_1.expectZeroDiagnostics)(program);
1016
1023
  });
1017
- it('ignores warning from previous line just for the specified code', () => {
1024
+ it('ignores a specific diagnostic on next line', () => {
1018
1025
  //component without a name attribute
1019
1026
  program.setFile('components/file.xml', (0, testHelpers_spec_1.trim) `
1020
1027
  <?xml version="1.0" encoding="utf-8" ?>
@@ -1027,7 +1034,7 @@ describe('XmlFile', () => {
1027
1034
  DiagnosticMessages_1.DiagnosticMessages.xmlComponentMissingExtendsAttribute()
1028
1035
  ]);
1029
1036
  });
1030
- it('ignores warning from previous line comment', () => {
1037
+ it('ignores all warnings from previous line comment', () => {
1031
1038
  //component without a name attribute
1032
1039
  program.setFile('components/file.xml', (0, testHelpers_spec_1.trim) `
1033
1040
  <?xml version="1.0" encoding="utf-8" ?>
@@ -1041,7 +1048,7 @@ describe('XmlFile', () => {
1041
1048
  //component without a name attribute
1042
1049
  program.setFile('components/file.xml', (0, testHelpers_spec_1.trim) `
1043
1050
  <?xml version="1.0" encoding="utf-8" ?>
1044
- <component> <!--bs:disable-line 1006-->
1051
+ <component name="ButtonCustom"> <!--bs:disable-line 1006-->
1045
1052
  </component>
1046
1053
  `);
1047
1054
  program.validate();
@@ -1080,17 +1087,17 @@ describe('XmlFile', () => {
1080
1087
  <component name="comp1">
1081
1088
  </component>
1082
1089
  `);
1083
- (0, chai_config_spec_1.expect)(program.getComponent('comp1').file.pkgPath).to.equal(comp2.pkgPath);
1090
+ (0, chai_config_spec_1.expect)(program.getComponent('comp1').file.destPath).to.equal(comp2.destPath);
1084
1091
  //add comp1. it should become the main component with this name
1085
1092
  const comp1 = program.setFile('components/comp1.xml', (0, testHelpers_spec_1.trim) `
1086
1093
  <?xml version="1.0" encoding="utf-8" ?>
1087
1094
  <component name="comp1" extends="Group">
1088
1095
  </component>
1089
1096
  `);
1090
- (0, chai_config_spec_1.expect)(program.getComponent('comp1').file.pkgPath).to.equal(comp1.pkgPath);
1097
+ (0, chai_config_spec_1.expect)(program.getComponent('comp1').file.destPath).to.equal(comp1.destPath);
1091
1098
  //remove comp1, comp2 should be the primary again
1092
1099
  program.removeFile((0, util_1.standardizePath) `${testHelpers_spec_2.rootDir}/components/comp1.xml`);
1093
- (0, chai_config_spec_1.expect)(program.getComponent('comp1').file.pkgPath).to.equal(comp2.pkgPath);
1100
+ (0, chai_config_spec_1.expect)(program.getComponent('comp1').file.destPath).to.equal(comp2.destPath);
1094
1101
  //add comp3
1095
1102
  program.setFile('components/comp3.xml', (0, testHelpers_spec_1.trim) `
1096
1103
  <?xml version="1.0" encoding="utf-8" ?>
@@ -1098,7 +1105,7 @@ describe('XmlFile', () => {
1098
1105
  </component>
1099
1106
  `);
1100
1107
  //...the 2nd file should still be main
1101
- (0, chai_config_spec_1.expect)(program.getComponent('comp1').file.pkgPath).to.equal(comp2.pkgPath);
1108
+ (0, chai_config_spec_1.expect)(program.getComponent('comp1').file.destPath).to.equal(comp2.destPath);
1102
1109
  });
1103
1110
  });
1104
1111
  });
@@ -1 +1 @@
1
- {"version":3,"file":"XmlFile.spec.js","sourceRoot":"","sources":["../../src/files/XmlFile.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"XmlFile.spec.js","sourceRoot":"","sources":["../../src/files/XmlFile.spec.ts"],"names":[],"mappings":"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"}
@@ -45,13 +45,13 @@ describe('import statements', () => {
45
45
  return true
46
46
  end function
47
47
  `);
48
- let files = Object.keys(program.files).map(x => program.getFile(x)).filter(x => !!x).map(x => {
48
+ Object.keys(program.files).map(x => program.getFile(x)).filter(x => !!x).map(x => {
49
49
  return {
50
50
  src: x.srcPath,
51
- dest: x.pkgPath
51
+ dest: x.destPath
52
52
  };
53
53
  });
54
- await program.transpile(files, testHelpers_spec_2.stagingDir);
54
+ await program.build({ stagingDir: testHelpers_spec_2.stagingDir });
55
55
  (0, chai_config_spec_1.expect)((0, testHelpers_spec_1.trimMap)(fsExtra.readFileSync(`${testHelpers_spec_2.stagingDir}/components/ChildScene.xml`).toString())).to.equal((0, testHelpers_spec_1.trim) `
56
56
  <?xml version="1.0" encoding="utf-8" ?>
57
57
  <component name="ChildScene" extends="Scene">
@@ -152,7 +152,7 @@ describe('import statements', () => {
152
152
  //the error should be gone
153
153
  (0, testHelpers_spec_1.expectZeroDiagnostics)(program);
154
154
  });
155
- it('adds brs imports to xml file during transpile', () => {
155
+ it('adds brs imports to xml file during transpile', async () => {
156
156
  program.setFile('source/lib.bs', `
157
157
  import "stringOps.brs"
158
158
  function toLower(strVal as string)
@@ -164,7 +164,7 @@ describe('import statements', () => {
164
164
  return LCase(strVal)
165
165
  end function
166
166
  `);
167
- testTranspile((0, testHelpers_spec_1.trim) `
167
+ await testTranspile((0, testHelpers_spec_1.trim) `
168
168
  <?xml version="1.0" encoding="utf-8" ?>
169
169
  <component name="ChildScene" extends="ParentScene">
170
170
  <script type="text/brightscript" uri="pkg:/source/lib.bs" />
@@ -196,7 +196,7 @@ describe('import statements', () => {
196
196
  DiagnosticMessages_1.DiagnosticMessages.referencedFileDoesNotExist()
197
197
  ]);
198
198
  });
199
- it('complicated import graph adds correct script tags', () => {
199
+ it('complicated import graph adds correct script tags', async () => {
200
200
  program.setFile('source/maestro/ioc/IOCMixin.bs', `
201
201
  sub DoIocThings()
202
202
  end sub
@@ -207,7 +207,7 @@ describe('import statements', () => {
207
207
  program.setFile('components/AuthManager.bs', `
208
208
  import "pkg:/source/BaseClass.bs"
209
209
  `);
210
- testTranspile((0, testHelpers_spec_1.trim) `
210
+ await testTranspile((0, testHelpers_spec_1.trim) `
211
211
  <?xml version="1.0" encoding="utf-8" ?>
212
212
  <component name="ChildScene" extends="ParentScene">
213
213
  <script type="text/brighterscript" uri="AuthManager.bs" />
@@ -232,7 +232,20 @@ describe('import statements', () => {
232
232
  import "pkg:/"
233
233
  `);
234
234
  (0, chai_config_spec_1.expect)(brsFile.ownScriptImports.length).to.equal(5);
235
- (0, chai_config_spec_1.expect)(brsFile.ownScriptImports.filter(p => !!p.pkgPath).length).to.equal(3);
235
+ (0, chai_config_spec_1.expect)(brsFile.ownScriptImports.filter(p => !!p.destPath).length).to.equal(3);
236
+ });
237
+ it('keeps the original import path when transpiled', async () => {
238
+ program.setFile('components/MainScene.xml', `
239
+ <component name="MainScene" extends="Scene">
240
+ <script uri="MainScene.bs" />
241
+ </component>
242
+ `);
243
+ program.setFile('components/Lib.bs', '');
244
+ await testTranspile(`
245
+ import "Lib.bs"
246
+ `, `
247
+ 'import "Lib.bs"
248
+ `, undefined, 'components/MainScene.bs');
236
249
  });
237
250
  });
238
251
  //# sourceMappingURL=imports.spec.js.map