ticbuild 1.0.0

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 (290) hide show
  1. package/.attachments/support_me_on_kofi_beige.png +0 -0
  2. package/.env.example +3 -0
  3. package/.prettierignore +10 -0
  4. package/LICENSE +15 -0
  5. package/README.md +429 -0
  6. package/debug/obj/resolvedManifest.ticbuild.jsonc +108 -0
  7. package/dist/backend/ImportedResource.d.ts +11 -0
  8. package/dist/backend/ImportedResource.d.ts.map +1 -0
  9. package/dist/backend/ImportedResource.js +53 -0
  10. package/dist/backend/ImportedResource.js.map +1 -0
  11. package/dist/backend/ImportedResourceTypes.d.ts +24 -0
  12. package/dist/backend/ImportedResourceTypes.d.ts.map +1 -0
  13. package/dist/backend/ImportedResourceTypes.js +35 -0
  14. package/dist/backend/ImportedResourceTypes.js.map +1 -0
  15. package/dist/backend/codeBanking.test.d.ts +2 -0
  16. package/dist/backend/codeBanking.test.d.ts.map +1 -0
  17. package/dist/backend/codeBanking.test.js.map +1 -0
  18. package/dist/backend/importResources.d.ts +4 -0
  19. package/dist/backend/importResources.d.ts.map +1 -0
  20. package/dist/backend/importResources.js +58 -0
  21. package/dist/backend/importResources.js.map +1 -0
  22. package/dist/backend/importUtils.d.ts +14 -0
  23. package/dist/backend/importUtils.d.ts.map +1 -0
  24. package/dist/backend/importUtils.js +77 -0
  25. package/dist/backend/importUtils.js.map +1 -0
  26. package/dist/backend/importers/LuaCodeImporter.d.ts +47 -0
  27. package/dist/backend/importers/LuaCodeImporter.d.ts.map +1 -0
  28. package/dist/backend/importers/LuaCodeImporter.js +196 -0
  29. package/dist/backend/importers/LuaCodeImporter.js.map +1 -0
  30. package/dist/backend/importers/LuaCodeImporter.test.d.ts +2 -0
  31. package/dist/backend/importers/LuaCodeImporter.test.d.ts.map +1 -0
  32. package/dist/backend/importers/LuaCodeImporter.test.js.map +1 -0
  33. package/dist/backend/importers/binaryResourceImporter.d.ts +22 -0
  34. package/dist/backend/importers/binaryResourceImporter.d.ts.map +1 -0
  35. package/dist/backend/importers/binaryResourceImporter.js +53 -0
  36. package/dist/backend/importers/binaryResourceImporter.js.map +1 -0
  37. package/dist/backend/importers/luaImporter.d.ts +1 -0
  38. package/dist/backend/importers/luaImporter.d.ts.map +1 -0
  39. package/dist/backend/importers/luaImporter.js +3 -0
  40. package/dist/backend/importers/luaImporter.js.map +1 -0
  41. package/dist/backend/importers/textResourceImporter.d.ts +23 -0
  42. package/dist/backend/importers/textResourceImporter.d.ts.map +1 -0
  43. package/dist/backend/importers/textResourceImporter.js +55 -0
  44. package/dist/backend/importers/textResourceImporter.js.map +1 -0
  45. package/dist/backend/importers/tic80CartImporter.d.ts +21 -0
  46. package/dist/backend/importers/tic80CartImporter.d.ts.map +1 -0
  47. package/dist/backend/importers/tic80CartImporter.js +96 -0
  48. package/dist/backend/importers/tic80CartImporter.js.map +1 -0
  49. package/dist/backend/loadAllImports.d.ts +1 -0
  50. package/dist/backend/loadAllImports.d.ts.map +1 -0
  51. package/dist/backend/loadAllImports.js +3 -0
  52. package/dist/backend/loadAllImports.js.map +1 -0
  53. package/dist/backend/luaBinaryEncoding.d.ts +6 -0
  54. package/dist/backend/luaBinaryEncoding.d.ts.map +1 -0
  55. package/dist/backend/luaBinaryEncoding.js +94 -0
  56. package/dist/backend/luaBinaryEncoding.js.map +1 -0
  57. package/dist/backend/luaPreprocessor.d.ts +8 -0
  58. package/dist/backend/luaPreprocessor.d.ts.map +1 -0
  59. package/dist/backend/luaPreprocessor.js +862 -0
  60. package/dist/backend/luaPreprocessor.js.map +1 -0
  61. package/dist/backend/luaPreprocessor.test.d.ts +2 -0
  62. package/dist/backend/luaPreprocessor.test.d.ts.map +1 -0
  63. package/dist/backend/luaPreprocessor.test.js.map +1 -0
  64. package/dist/backend/manifestLoader.d.ts +19 -0
  65. package/dist/backend/manifestLoader.d.ts.map +1 -0
  66. package/dist/backend/manifestLoader.js +142 -0
  67. package/dist/backend/manifestLoader.js.map +1 -0
  68. package/dist/backend/manifestLoader.test.d.ts +2 -0
  69. package/dist/backend/manifestLoader.test.d.ts.map +1 -0
  70. package/dist/backend/manifestLoader.test.js.map +1 -0
  71. package/dist/backend/manifestTypes.d.ts +454 -0
  72. package/dist/backend/manifestTypes.d.ts.map +1 -0
  73. package/dist/backend/manifestTypes.js +28 -0
  74. package/dist/backend/manifestTypes.js.map +1 -0
  75. package/dist/backend/project.d.ts +24 -0
  76. package/dist/backend/project.d.ts.map +1 -0
  77. package/dist/backend/project.js +159 -0
  78. package/dist/backend/project.js.map +1 -0
  79. package/dist/backend/projectCore.d.ts +34 -0
  80. package/dist/backend/projectCore.d.ts.map +1 -0
  81. package/dist/backend/projectCore.js +226 -0
  82. package/dist/backend/projectCore.js.map +1 -0
  83. package/dist/backend/tic80Resolver.d.ts +6 -0
  84. package/dist/backend/tic80Resolver.d.ts.map +1 -0
  85. package/dist/backend/tic80Resolver.js +66 -0
  86. package/dist/backend/tic80Resolver.js.map +1 -0
  87. package/dist/buildInfo.d.ts +9 -0
  88. package/dist/buildInfo.d.ts.map +1 -0
  89. package/dist/buildInfo.js +13 -0
  90. package/dist/buildInfo.js.map +1 -0
  91. package/dist/frontend/build.d.ts +3 -0
  92. package/dist/frontend/build.d.ts.map +1 -0
  93. package/dist/frontend/build.js +8 -0
  94. package/dist/frontend/build.js.map +1 -0
  95. package/dist/frontend/codeBankWarnings.test.d.ts +2 -0
  96. package/dist/frontend/codeBankWarnings.test.d.ts.map +1 -0
  97. package/dist/frontend/codeBankWarnings.test.js.map +1 -0
  98. package/dist/frontend/core.d.ts +3 -0
  99. package/dist/frontend/core.d.ts.map +1 -0
  100. package/dist/frontend/core.js +259 -0
  101. package/dist/frontend/core.js.map +1 -0
  102. package/dist/frontend/init.d.ts +7 -0
  103. package/dist/frontend/init.d.ts.map +1 -0
  104. package/dist/frontend/init.js +95 -0
  105. package/dist/frontend/init.js.map +1 -0
  106. package/dist/frontend/parseOptions.d.ts +7 -0
  107. package/dist/frontend/parseOptions.d.ts.map +1 -0
  108. package/dist/frontend/parseOptions.js +68 -0
  109. package/dist/frontend/parseOptions.js.map +1 -0
  110. package/dist/frontend/run.d.ts +3 -0
  111. package/dist/frontend/run.d.ts.map +1 -0
  112. package/dist/frontend/run.js +63 -0
  113. package/dist/frontend/run.js.map +1 -0
  114. package/dist/frontend/watch.d.ts +3 -0
  115. package/dist/frontend/watch.d.ts.map +1 -0
  116. package/dist/frontend/watch.js +208 -0
  117. package/dist/frontend/watch.js.map +1 -0
  118. package/dist/index.d.ts +3 -0
  119. package/dist/index.d.ts.map +1 -0
  120. package/dist/index.js +191 -0
  121. package/dist/index.js.map +1 -0
  122. package/dist/obj/resolvedManifest.ticbuild.jsonc +110 -0
  123. package/dist/obj/variables.json +19 -0
  124. package/dist/utils/algorithms.d.ts +4 -0
  125. package/dist/utils/algorithms.d.ts.map +1 -0
  126. package/dist/utils/algorithms.js +15 -0
  127. package/dist/utils/algorithms.js.map +1 -0
  128. package/dist/utils/algorithms.test.d.ts +2 -0
  129. package/dist/utils/algorithms.test.d.ts.map +1 -0
  130. package/dist/utils/algorithms.test.js.map +1 -0
  131. package/dist/utils/bin.d.ts +4 -0
  132. package/dist/utils/bin.d.ts.map +1 -0
  133. package/dist/utils/bin.js +16 -0
  134. package/dist/utils/bin.js.map +1 -0
  135. package/dist/utils/charMap.d.ts +28 -0
  136. package/dist/utils/charMap.d.ts.map +1 -0
  137. package/dist/utils/charMap.js +31 -0
  138. package/dist/utils/charMap.js.map +1 -0
  139. package/dist/utils/console.d.ts +10 -0
  140. package/dist/utils/console.d.ts.map +1 -0
  141. package/dist/utils/console.js +66 -0
  142. package/dist/utils/console.js.map +1 -0
  143. package/dist/utils/encoding/b85.d.ts +5 -0
  144. package/dist/utils/encoding/b85.d.ts.map +1 -0
  145. package/dist/utils/encoding/b85.js +136 -0
  146. package/dist/utils/encoding/b85.js.map +1 -0
  147. package/dist/utils/encoding/codecRegistry.d.ts +333 -0
  148. package/dist/utils/encoding/codecRegistry.d.ts.map +1 -0
  149. package/dist/utils/encoding/codecRegistry.js +81 -0
  150. package/dist/utils/encoding/codecRegistry.js.map +1 -0
  151. package/dist/utils/encoding/hex.d.ts +3 -0
  152. package/dist/utils/encoding/hex.d.ts.map +1 -0
  153. package/dist/utils/encoding/hex.js +30 -0
  154. package/dist/utils/encoding/hex.js.map +1 -0
  155. package/dist/utils/encoding/lz.d.ts +12 -0
  156. package/dist/utils/encoding/lz.d.ts.map +1 -0
  157. package/dist/utils/encoding/lz.js +271 -0
  158. package/dist/utils/encoding/lz.js.map +1 -0
  159. package/dist/utils/enum.d.ts +45 -0
  160. package/dist/utils/enum.d.ts.map +1 -0
  161. package/dist/utils/enum.js +135 -0
  162. package/dist/utils/enum.js.map +1 -0
  163. package/dist/utils/errorHandling.d.ts +13 -0
  164. package/dist/utils/errorHandling.d.ts.map +1 -0
  165. package/dist/utils/errorHandling.js +18 -0
  166. package/dist/utils/errorHandling.js.map +1 -0
  167. package/dist/utils/fileSystem.d.ts +16 -0
  168. package/dist/utils/fileSystem.d.ts.map +1 -0
  169. package/dist/utils/fileSystem.js +161 -0
  170. package/dist/utils/fileSystem.js.map +1 -0
  171. package/dist/utils/help.d.ts +7 -0
  172. package/dist/utils/help.d.ts.map +1 -0
  173. package/dist/utils/help.js +87 -0
  174. package/dist/utils/help.js.map +1 -0
  175. package/dist/utils/lua/luaUtils.d.ts +1 -0
  176. package/dist/utils/lua/luaUtils.d.ts.map +1 -0
  177. package/dist/utils/lua/luaUtils.js +3 -0
  178. package/dist/utils/lua/luaUtils.js.map +1 -0
  179. package/dist/utils/lua/lua_alias_expressions.d.ts +20 -0
  180. package/dist/utils/lua/lua_alias_expressions.d.ts.map +1 -0
  181. package/dist/utils/lua/lua_alias_expressions.js +233 -0
  182. package/dist/utils/lua/lua_alias_expressions.js.map +1 -0
  183. package/dist/utils/lua/lua_alias_literals.d.ts +20 -0
  184. package/dist/utils/lua/lua_alias_literals.d.ts.map +1 -0
  185. package/dist/utils/lua/lua_alias_literals.js +165 -0
  186. package/dist/utils/lua/lua_alias_literals.js.map +1 -0
  187. package/dist/utils/lua/lua_alias_shared.d.ts +31 -0
  188. package/dist/utils/lua/lua_alias_shared.d.ts.map +1 -0
  189. package/dist/utils/lua/lua_alias_shared.js +415 -0
  190. package/dist/utils/lua/lua_alias_shared.js.map +1 -0
  191. package/dist/utils/lua/lua_ast.d.ts +9 -0
  192. package/dist/utils/lua/lua_ast.d.ts.map +1 -0
  193. package/dist/utils/lua/lua_ast.js +90 -0
  194. package/dist/utils/lua/lua_ast.js.map +1 -0
  195. package/dist/utils/lua/lua_fundamentals.d.ts +14 -0
  196. package/dist/utils/lua/lua_fundamentals.d.ts.map +1 -0
  197. package/dist/utils/lua/lua_fundamentals.js +93 -0
  198. package/dist/utils/lua/lua_fundamentals.js.map +1 -0
  199. package/dist/utils/lua/lua_pack_locals.d.ts +3 -0
  200. package/dist/utils/lua/lua_pack_locals.d.ts.map +1 -0
  201. package/dist/utils/lua/lua_pack_locals.js +206 -0
  202. package/dist/utils/lua/lua_pack_locals.js.map +1 -0
  203. package/dist/utils/lua/lua_processor.d.ts +65 -0
  204. package/dist/utils/lua/lua_processor.d.ts.map +1 -0
  205. package/dist/utils/lua/lua_processor.js +1153 -0
  206. package/dist/utils/lua/lua_processor.js.map +1 -0
  207. package/dist/utils/lua/lua_processor.test.d.ts +2 -0
  208. package/dist/utils/lua/lua_processor.test.d.ts.map +1 -0
  209. package/dist/utils/lua/lua_processor.test.js.map +1 -0
  210. package/dist/utils/lua/lua_remove_unused_functions.d.ts +6 -0
  211. package/dist/utils/lua/lua_remove_unused_functions.d.ts.map +1 -0
  212. package/dist/utils/lua/lua_remove_unused_functions.js +474 -0
  213. package/dist/utils/lua/lua_remove_unused_functions.js.map +1 -0
  214. package/dist/utils/lua/lua_remove_unused_locals.d.ts +3 -0
  215. package/dist/utils/lua/lua_remove_unused_locals.d.ts.map +1 -0
  216. package/dist/utils/lua/lua_remove_unused_locals.js +303 -0
  217. package/dist/utils/lua/lua_remove_unused_locals.js.map +1 -0
  218. package/dist/utils/lua/lua_rename_allowed_table_keys.d.ts +3 -0
  219. package/dist/utils/lua/lua_rename_allowed_table_keys.d.ts.map +1 -0
  220. package/dist/utils/lua/lua_rename_allowed_table_keys.js +157 -0
  221. package/dist/utils/lua/lua_rename_allowed_table_keys.js.map +1 -0
  222. package/dist/utils/lua/lua_rename_table_fields.d.ts +3 -0
  223. package/dist/utils/lua/lua_rename_table_fields.d.ts.map +1 -0
  224. package/dist/utils/lua/lua_rename_table_fields.js +427 -0
  225. package/dist/utils/lua/lua_rename_table_fields.js.map +1 -0
  226. package/dist/utils/lua/lua_renamer.d.ts +3 -0
  227. package/dist/utils/lua/lua_renamer.d.ts.map +1 -0
  228. package/dist/utils/lua/lua_renamer.js +229 -0
  229. package/dist/utils/lua/lua_renamer.js.map +1 -0
  230. package/dist/utils/lua/lua_simplify.d.ts +3 -0
  231. package/dist/utils/lua/lua_simplify.d.ts.map +1 -0
  232. package/dist/utils/lua/lua_simplify.js +541 -0
  233. package/dist/utils/lua/lua_simplify.js.map +1 -0
  234. package/dist/utils/lua/lua_utils.d.ts +13 -0
  235. package/dist/utils/lua/lua_utils.d.ts.map +1 -0
  236. package/dist/utils/lua/lua_utils.js +58 -0
  237. package/dist/utils/lua/lua_utils.js.map +1 -0
  238. package/dist/utils/math.d.ts +2 -0
  239. package/dist/utils/math.d.ts.map +1 -0
  240. package/dist/utils/math.js +7 -0
  241. package/dist/utils/math.js.map +1 -0
  242. package/dist/utils/math.test.d.ts +2 -0
  243. package/dist/utils/math.test.d.ts.map +1 -0
  244. package/dist/utils/math.test.js.map +1 -0
  245. package/dist/utils/templates.d.ts +3 -0
  246. package/dist/utils/templates.d.ts.map +1 -0
  247. package/dist/utils/templates.js +57 -0
  248. package/dist/utils/templates.js.map +1 -0
  249. package/dist/utils/tic80/bankSupport.test.d.ts +2 -0
  250. package/dist/utils/tic80/bankSupport.test.d.ts.map +1 -0
  251. package/dist/utils/tic80/bankSupport.test.js.map +1 -0
  252. package/dist/utils/tic80/cartLoader.d.ts +3 -0
  253. package/dist/utils/tic80/cartLoader.d.ts.map +1 -0
  254. package/dist/utils/tic80/cartLoader.js +54 -0
  255. package/dist/utils/tic80/cartLoader.js.map +1 -0
  256. package/dist/utils/tic80/cartWriter.d.ts +5 -0
  257. package/dist/utils/tic80/cartWriter.d.ts.map +1 -0
  258. package/dist/utils/tic80/cartWriter.js +95 -0
  259. package/dist/utils/tic80/cartWriter.js.map +1 -0
  260. package/dist/utils/tic80/launch.d.ts +4 -0
  261. package/dist/utils/tic80/launch.d.ts.map +1 -0
  262. package/dist/utils/tic80/launch.js +36 -0
  263. package/dist/utils/tic80/launch.js.map +1 -0
  264. package/dist/utils/tic80/tic80.d.ts +1149 -0
  265. package/dist/utils/tic80/tic80.d.ts.map +1 -0
  266. package/dist/utils/tic80/tic80.js +114 -0
  267. package/dist/utils/tic80/tic80.js.map +1 -0
  268. package/dist/utils/utils.d.ts +13 -0
  269. package/dist/utils/utils.d.ts.map +1 -0
  270. package/dist/utils/utils.js +109 -0
  271. package/dist/utils/utils.js.map +1 -0
  272. package/dist/utils/versionString.d.ts +12 -0
  273. package/dist/utils/versionString.d.ts.map +1 -0
  274. package/dist/utils/versionString.js +33 -0
  275. package/dist/utils/versionString.js.map +1 -0
  276. package/dist/utils/windowPosition.d.ts +10 -0
  277. package/dist/utils/windowPosition.d.ts.map +1 -0
  278. package/dist/utils/windowPosition.js +222 -0
  279. package/dist/utils/windowPosition.js.map +1 -0
  280. package/example.ticbuild.jsonc +94 -0
  281. package/package.json +51 -0
  282. package/templates/help/build.txt +23 -0
  283. package/templates/help/init.txt +23 -0
  284. package/templates/help/main.txt +41 -0
  285. package/templates/help/run.txt +22 -0
  286. package/templates/help/tic80.txt +8 -0
  287. package/templates/help/watch.txt +24 -0
  288. package/templates/minimal/project.ticbuild.jsonc +43 -0
  289. package/ticbuild-1.0.0.tgz +0 -0
  290. package/ticbuild.schema.json +327 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"project.js","sourceRoot":"","sources":["../../src/backend/project.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,34 @@
1
+ import { AssetReference, ImportDefinition, Manifest, VariableInfo } from "./manifestTypes";
2
+ export declare function deduceImportKindFromPath(path: string | undefined): string | undefined;
3
+ export declare function canonicalizeAssetImport(asset: string | AssetReference): AssetReference;
4
+ export declare function substituteVariables(manifest: Manifest, s: string): string;
5
+ export declare function calculateVars(manifest: Manifest, manifestPath: string, projectDir: string, overrideVariables?: Record<string, string>, buildConfigName?: string): Map<string, VariableInfo>;
6
+ export type TicbuildProjectCoreOptions = {
7
+ manifest: Manifest;
8
+ manifestPath: string;
9
+ projectDir: string;
10
+ buildConfigName?: string | undefined;
11
+ overrideVariables?: Record<string, string>;
12
+ };
13
+ export declare class TicbuildProjectCore {
14
+ manifest: Manifest;
15
+ manifestPath: string;
16
+ projectDir: string;
17
+ selectedBuildConfig: string | undefined;
18
+ overrideVariables: Record<string, string>;
19
+ allVariables: Map<string, VariableInfo>;
20
+ constructor(options: TicbuildProjectCoreOptions);
21
+ toDataObject(): object;
22
+ static fromDataObject(obj: any): TicbuildProjectCore;
23
+ clone(): TicbuildProjectCore;
24
+ resolveProjectPath(path: string): string;
25
+ resolveObjPath(pathRelativeToObjDir?: string | undefined): string;
26
+ resolveBinPath(pathRelativeToBinDir?: string | undefined): string;
27
+ private makeAbsolutePath;
28
+ private resolveVariablePath;
29
+ resolveImportPath(importPath: ImportDefinition): string;
30
+ resolveIncludePath(includePath: string): string;
31
+ substituteVariables(s: string): string;
32
+ getOutputFilePath(): string;
33
+ }
34
+ //# sourceMappingURL=projectCore.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"projectCore.d.ts","sourceRoot":"","sources":["../../src/backend/projectCore.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAe,QAAQ,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAExG,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAWrF;AAcD,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,MAAM,GAAG,cAAc,GAAG,cAAc,CAuBtF;AAKD,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAoBzE;AAYD,wBAAgB,aAAa,CAC3B,QAAQ,EAAE,QAAQ,EAClB,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,MAAM,EAClB,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC1C,eAAe,CAAC,EAAE,MAAM,6BA+BzB;AAED,MAAM,MAAM,0BAA0B,GAAG;IACvC,QAAQ,EAAE,QAAQ,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACrC,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC5C,CAAC;AAGF,qBAAa,mBAAmB;IAC9B,QAAQ,EAAE,QAAQ,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,mBAAmB,EAAE,MAAM,GAAG,SAAS,CAAC;IACxC,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAG1C,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;gBAE5B,OAAO,EAAE,0BAA0B;IAU/C,YAAY,IAAI,MAAM;IAUtB,MAAM,CAAC,cAAc,CAAC,GAAG,EAAE,GAAG,GAAG,mBAAmB;IAYpD,KAAK,IAAI,mBAAmB;IAO5B,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAKxC,cAAc,CAAC,oBAAoB,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM;IAIjE,cAAc,CAAC,oBAAoB,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM;IAIjE,OAAO,CAAC,gBAAgB;IAOxB,OAAO,CAAC,mBAAmB;IAa3B,iBAAiB,CAAC,UAAU,EAAE,gBAAgB,GAAG,MAAM;IAiCvD,kBAAkB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM;IAmB/C,mBAAmB,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM;IAGtC,iBAAiB,IAAI,MAAM;CAI5B"}
@@ -0,0 +1,226 @@
1
+ "use strict";
2
+ // a lower-level layer to avoid circular dependencies.
3
+ // provides the basic utils required to execute builds.
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.TicbuildProjectCore = void 0;
6
+ exports.deduceImportKindFromPath = deduceImportKindFromPath;
7
+ exports.canonicalizeAssetImport = canonicalizeAssetImport;
8
+ exports.substituteVariables = substituteVariables;
9
+ exports.calculateVars = calculateVars;
10
+ const fileSystem_1 = require("../utils/fileSystem");
11
+ const utils_1 = require("../utils/utils");
12
+ const manifestTypes_1 = require("./manifestTypes");
13
+ function deduceImportKindFromPath(path) {
14
+ if (!path) {
15
+ return undefined;
16
+ }
17
+ if (path.endsWith(".tic")) {
18
+ return manifestTypes_1.kImportKind.key.Tic80Cartridge;
19
+ }
20
+ if (path.endsWith(".lua")) {
21
+ return manifestTypes_1.kImportKind.key.LuaCode;
22
+ }
23
+ return undefined;
24
+ }
25
+ // export function deduceAssemblerKindFromAssetReference(assetRef: AssetReference): string | undefined {
26
+ // const importKind = assetRef.import;
27
+ // if (importKind === kImportKind.key.LuaCode) {
28
+ // return kAssemblerKind.key.LuaCode;
29
+ // }
30
+ // // simple for now.
31
+ // return kAssemblerKind.key.BinaryCopy;
32
+ // }
33
+ // "import:name.here"
34
+ // "import:music-imported-cart:MUSIC_WAVEFORMS"
35
+ // "import:music-imported-cart:MUSIC_WAVEFORMS,CODE,SPRITES"
36
+ function canonicalizeAssetImport(asset) {
37
+ if (typeof asset !== "string") {
38
+ return asset; // assume already canonical
39
+ }
40
+ // Handle shorthand: "import:music-imported-cart:MUSIC_WAVEFORMS,CODE,SPRITES"
41
+ if (!asset.startsWith("import:")) {
42
+ //throw new Error(`Invalid asset import shorthand: ${asset}`);
43
+ return { import: asset };
44
+ }
45
+ const parts = asset.split(":");
46
+ // if (parts.length < 2) {
47
+ // throw new Error(`Invalid asset import shorthand: ${asset}`);
48
+ // }
49
+ const importName = parts[1];
50
+ const chunks = parts.length > 2 ? parts[2].split(",") : undefined;
51
+ return {
52
+ import: importName,
53
+ chunks,
54
+ };
55
+ }
56
+ // similar to visual studio's $(VariableName) substitution.
57
+ // recursive substitution is possible; throws if circular.
58
+ // prioritizes build config overrides if selected.
59
+ function substituteVariables(manifest, s) {
60
+ let result = s;
61
+ const varPattern = /\$\(([^)]+)\)/g;
62
+ let match;
63
+ const seenVars = new Set();
64
+ while ((match = varPattern.exec(result)) !== null) {
65
+ const varName = match[1];
66
+ if (seenVars.has(varName)) {
67
+ throw new Error(`Circular variable reference detected for variable: ${varName}`);
68
+ }
69
+ seenVars.add(varName);
70
+ const varValue = manifest.variables?.[varName];
71
+ if (varValue === undefined) {
72
+ throw new Error(`Undefined variable: ${varName}`);
73
+ }
74
+ result = result.replace(match[0], varValue);
75
+ varPattern.lastIndex = 0; // reset to start for next iteration
76
+ }
77
+ return result;
78
+ }
79
+ // processes on demand (not cached)
80
+ function calculateAllVariables(manifest) {
81
+ const ret = new Map();
82
+ for (const [name, rawValue] of Object.entries(manifest.variables || {})) {
83
+ const resolvedValue = substituteVariables(manifest, rawValue);
84
+ ret.set(name, { name, rawValue, resolvedValue });
85
+ }
86
+ return ret;
87
+ }
88
+ function calculateVars(manifest, manifestPath, projectDir, overrideVariables, buildConfigName) {
89
+ // add variables for non-array leafs in the build config.
90
+ // for example { project: { binDir: "..." } } adds a variable "project.binDir"
91
+ // { assembly: { lua: { minify: true } } } adds "assembly.lua.minify" etc.
92
+ // but any array encountered is not processed for variables.
93
+ manifest.variables = manifest.variables || {};
94
+ // todo: possibly support ignored paths (right now all vars are basically duplicated as "var" and "variables.var".)
95
+ const extractedVars = (0, utils_1.extractVariablesFromObject)(manifest);
96
+ for (const [k, v] of extractedVars.entries()) {
97
+ manifest.variables[k] = v;
98
+ }
99
+ // apply override variables from options
100
+ if (overrideVariables) {
101
+ for (const [key, value] of Object.entries(overrideVariables)) {
102
+ manifest.variables[key] = value;
103
+ }
104
+ }
105
+ const setAutomaticVariable = (name, value) => {
106
+ manifest.variables[name] = value;
107
+ };
108
+ setAutomaticVariable("project.manifestPath", manifestPath);
109
+ setAutomaticVariable("project.projectDir", projectDir);
110
+ setAutomaticVariable("buildConfiguration", buildConfigName || "release");
111
+ // should be the last step so all variables are as ready as possible for substitution
112
+ const calculatedVars = calculateAllVariables(manifest);
113
+ return calculatedVars;
114
+ }
115
+ ///////////////////////////////////////////////////////////////////////////////////////////////////
116
+ class TicbuildProjectCore {
117
+ constructor(options) {
118
+ this.manifest = options.manifest;
119
+ this.manifestPath = (0, fileSystem_1.canonicalizePath)(options.manifestPath);
120
+ this.projectDir = (0, fileSystem_1.canonicalizePath)(options.projectDir);
121
+ this.selectedBuildConfig = options.buildConfigName;
122
+ this.overrideVariables = options.overrideVariables || {};
123
+ this.allVariables = calculateAllVariables(this.manifest);
124
+ }
125
+ toDataObject() {
126
+ return {
127
+ manifest: this.manifest,
128
+ manifestPath: this.manifestPath,
129
+ projectDir: this.projectDir,
130
+ selectedBuildConfig: this.selectedBuildConfig,
131
+ overrideVariables: this.overrideVariables,
132
+ };
133
+ }
134
+ static fromDataObject(obj) {
135
+ const core = new TicbuildProjectCore({
136
+ manifest: obj.manifest,
137
+ manifestPath: obj.manifestPath,
138
+ projectDir: obj.projectDir,
139
+ buildConfigName: obj.selectedBuildConfig,
140
+ overrideVariables: obj.overrideVariables,
141
+ });
142
+ core.allVariables = calculateAllVariables(core.manifest);
143
+ return core;
144
+ }
145
+ clone() {
146
+ const dataObj = this.toDataObject();
147
+ return TicbuildProjectCore.fromDataObject(dataObj);
148
+ }
149
+ // path can be absolute; it's returned.
150
+ // path can contain variables; they are resolved relative to projectDir.
151
+ resolveProjectPath(path) {
152
+ return this.resolveVariablePath(path, "project.projectDir");
153
+ }
154
+ // not defined whether this outputs a path with trailing slash or not.
155
+ resolveObjPath(pathRelativeToObjDir) {
156
+ return this.resolveVariablePath(pathRelativeToObjDir, "project.objDir");
157
+ }
158
+ resolveBinPath(pathRelativeToBinDir) {
159
+ return this.resolveVariablePath(pathRelativeToBinDir, "project.binDir");
160
+ }
161
+ makeAbsolutePath(relativeOrAbsolutePath) {
162
+ if ((0, fileSystem_1.isAbsolutePath)(relativeOrAbsolutePath)) {
163
+ return (0, fileSystem_1.canonicalizePath)(relativeOrAbsolutePath);
164
+ }
165
+ return (0, fileSystem_1.canonicalizePath)((0, fileSystem_1.joinPathParts)([this.projectDir, relativeOrAbsolutePath]));
166
+ }
167
+ resolveVariablePath(relativePath, varName) {
168
+ const varInfo = this.allVariables.get(varName);
169
+ if (!varInfo) {
170
+ throw new Error(`Variable not found: ${varName}`);
171
+ }
172
+ if (!relativePath) {
173
+ // did not specify relative path; just return the variable's resolved value
174
+ return this.makeAbsolutePath(varInfo.resolvedValue);
175
+ }
176
+ relativePath = this.substituteVariables(relativePath);
177
+ return this.makeAbsolutePath((0, fileSystem_1.joinPathParts)([varInfo.resolvedValue, relativePath]));
178
+ }
179
+ resolveImportPath(importPath) {
180
+ if (!importPath.path) {
181
+ throw new Error(`Import definition missing path: ${importPath.name}`);
182
+ }
183
+ const resolvedPath = substituteVariables(this.manifest, importPath.path);
184
+ // If absolute path, use it directly
185
+ if ((0, fileSystem_1.isAbsolutePath)(resolvedPath)) {
186
+ return (0, fileSystem_1.canonicalizePath)(resolvedPath);
187
+ }
188
+ // Try to resolve using importDirs search paths
189
+ const importDirs = this.manifest.project.importDirs?.map((s) => this.substituteVariables(s));
190
+ const foundPath = (0, fileSystem_1.resolveFileWithSearchPaths)(resolvedPath, this.projectDir, importDirs);
191
+ if (foundPath) {
192
+ return foundPath;
193
+ }
194
+ // Not found in search paths, throw error with helpful message
195
+ const searchedPaths = [this.projectDir];
196
+ if (importDirs) {
197
+ for (const dir of importDirs) {
198
+ searchedPaths.push((0, fileSystem_1.isAbsolutePath)(dir) ? dir : (0, fileSystem_1.joinPathParts)([this.projectDir, dir]));
199
+ }
200
+ }
201
+ throw new Error(`Import file not found: ${resolvedPath}\n` + `Searched in:\n` + searchedPaths.map((p) => ` - ${p}`).join("\n"));
202
+ }
203
+ resolveIncludePath(includePath) {
204
+ const resolvedPath = this.substituteVariables(includePath);
205
+ if ((0, fileSystem_1.isAbsolutePath)(resolvedPath)) {
206
+ return (0, fileSystem_1.canonicalizePath)(resolvedPath);
207
+ }
208
+ const includeDirs = this.manifest.project.includeDirs?.map((s) => this.substituteVariables(s)) || [];
209
+ const foundPath = (0, fileSystem_1.resolveFileWithSearchPaths)(resolvedPath, this.projectDir, includeDirs);
210
+ if (foundPath) {
211
+ return foundPath;
212
+ }
213
+ const searchedPaths = [this.projectDir, ...includeDirs.map((dir) => (0, fileSystem_1.joinPathParts)([this.projectDir, dir]))];
214
+ throw new Error(`Include file not found: ${resolvedPath}\n` + `Searched in:\n` + searchedPaths.map((p) => ` - ${p}`).join("\n"));
215
+ }
216
+ // and some helpers.
217
+ substituteVariables(s) {
218
+ return substituteVariables(this.manifest, s);
219
+ }
220
+ getOutputFilePath() {
221
+ const leaf = this.substituteVariables(this.manifest.project.outputCartName);
222
+ return this.resolveBinPath(leaf);
223
+ }
224
+ }
225
+ exports.TicbuildProjectCore = TicbuildProjectCore;
226
+ //# sourceMappingURL=projectCore.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"projectCore.js","sourceRoot":"","sources":["../../src/backend/projectCore.ts"],"names":[],"mappings":";AAAA,sDAAsD;AACtD,uDAAuD;;;AAOvD,4DAWC;AAcD,0DAuBC;AAKD,kDAoBC;AAYD,sCAoCC;AA9HD,oDAAkH;AAElH,0CAA4D;AAC5D,mDAAwG;AAExG,SAAgB,wBAAwB,CAAC,IAAwB;IAC/D,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1B,OAAO,2BAAW,CAAC,GAAG,CAAC,cAAc,CAAC;IACxC,CAAC;IACD,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1B,OAAO,2BAAW,CAAC,GAAG,CAAC,OAAO,CAAC;IACjC,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,wGAAwG;AACxG,wCAAwC;AACxC,kDAAkD;AAClD,yCAAyC;AACzC,MAAM;AACN,uBAAuB;AACvB,0CAA0C;AAC1C,IAAI;AAEJ,qBAAqB;AACrB,+CAA+C;AAC/C,4DAA4D;AAC5D,SAAgB,uBAAuB,CAAC,KAA8B;IACpE,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,KAAK,CAAC,CAAC,2BAA2B;IAC3C,CAAC;IAED,8EAA8E;IAC9E,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QACjC,8DAA8D;QAC9D,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;IAC3B,CAAC;IACD,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC/B,0BAA0B;IAC1B,iEAAiE;IACjE,IAAI;IAEJ,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IAC5B,MAAM,MAAM,GACV,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAE,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAA6B,CAAC,CAAC,CAAC,SAAS,CAAC;IAElF,OAAO;QACL,MAAM,EAAE,UAAU;QAClB,MAAM;KACP,CAAC;AACJ,CAAC;AAED,2DAA2D;AAC3D,0DAA0D;AAC1D,kDAAkD;AAClD,SAAgB,mBAAmB,CAAC,QAAkB,EAAE,CAAS;IAC/D,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,MAAM,UAAU,GAAG,gBAAgB,CAAC;IACpC,IAAI,KAA6B,CAAC;IAClC,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;IACnC,OAAO,CAAC,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;QAClD,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACzB,IAAI,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;YAC1B,MAAM,IAAI,KAAK,CAAC,sDAAsD,OAAO,EAAE,CAAC,CAAC;QACnF,CAAC;QACD,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAEtB,MAAM,QAAQ,GAAG,QAAQ,CAAC,SAAS,EAAE,CAAC,OAAO,CAAC,CAAC;QAC/C,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CAAC,uBAAuB,OAAO,EAAE,CAAC,CAAC;QACpD,CAAC;QACD,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;QAC5C,UAAU,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,oCAAoC;IAChE,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,mCAAmC;AACnC,SAAS,qBAAqB,CAAC,QAAkB;IAC/C,MAAM,GAAG,GAAG,IAAI,GAAG,EAAwB,CAAC;IAC5C,KAAK,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,IAAI,EAAE,CAAC,EAAE,CAAC;QACxE,MAAM,aAAa,GAAG,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAC9D,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,aAAa,EAAE,CAAC,CAAC;IACnD,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAgB,aAAa,CAC3B,QAAkB,EAClB,YAAoB,EACpB,UAAkB,EAClB,iBAA0C,EAC1C,eAAwB;IAExB,yDAAyD;IACzD,8EAA8E;IAC9E,0EAA0E;IAC1E,4DAA4D;IAC5D,QAAQ,CAAC,SAAS,GAAG,QAAQ,CAAC,SAAS,IAAI,EAAE,CAAC;IAC9C,mHAAmH;IACnH,MAAM,aAAa,GAAG,IAAA,kCAA0B,EAAC,QAAQ,CAAC,CAAC;IAC3D,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,aAAa,CAAC,OAAO,EAAE,EAAE,CAAC;QAC7C,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IAC5B,CAAC;IAED,wCAAwC;IACxC,IAAI,iBAAiB,EAAE,CAAC;QACtB,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,iBAAiB,CAAC,EAAE,CAAC;YAC7D,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;QAClC,CAAC;IACH,CAAC;IAED,MAAM,oBAAoB,GAAG,CAAC,IAAY,EAAE,KAAa,EAAE,EAAE;QAC3D,QAAQ,CAAC,SAAU,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;IACpC,CAAC,CAAC;IAEF,oBAAoB,CAAC,sBAAsB,EAAE,YAAY,CAAC,CAAC;IAC3D,oBAAoB,CAAC,oBAAoB,EAAE,UAAU,CAAC,CAAC;IACvD,oBAAoB,CAAC,oBAAoB,EAAE,eAAe,IAAI,SAAS,CAAC,CAAC;IAEzE,qFAAqF;IACrF,MAAM,cAAc,GAAG,qBAAqB,CAAC,QAAQ,CAAC,CAAC;IACvD,OAAO,cAAc,CAAC;AACxB,CAAC;AAUD,mGAAmG;AACnG,MAAa,mBAAmB;IAU9B,YAAY,OAAmC;QAC7C,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QACjC,IAAI,CAAC,YAAY,GAAG,IAAA,6BAAgB,EAAC,OAAO,CAAC,YAAY,CAAC,CAAC;QAC3D,IAAI,CAAC,UAAU,GAAG,IAAA,6BAAgB,EAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QACvD,IAAI,CAAC,mBAAmB,GAAG,OAAO,CAAC,eAAe,CAAC;QACnD,IAAI,CAAC,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,IAAI,EAAE,CAAC;QAEzD,IAAI,CAAC,YAAY,GAAG,qBAAqB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC3D,CAAC;IAED,YAAY;QACV,OAAO;YACL,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,mBAAmB,EAAE,IAAI,CAAC,mBAAmB;YAC7C,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;SAC1C,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,cAAc,CAAC,GAAQ;QAC5B,MAAM,IAAI,GAAG,IAAI,mBAAmB,CAAC;YACnC,QAAQ,EAAE,GAAG,CAAC,QAAQ;YACtB,YAAY,EAAE,GAAG,CAAC,YAAY;YAC9B,UAAU,EAAE,GAAG,CAAC,UAAU;YAC1B,eAAe,EAAE,GAAG,CAAC,mBAAmB;YACxC,iBAAiB,EAAE,GAAG,CAAC,iBAAiB;SACzC,CAAC,CAAC;QACH,IAAI,CAAC,YAAY,GAAG,qBAAqB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACzD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK;QACH,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QACpC,OAAO,mBAAmB,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;IACrD,CAAC;IAED,uCAAuC;IACvC,wEAAwE;IACxE,kBAAkB,CAAC,IAAY;QAC7B,OAAO,IAAI,CAAC,mBAAmB,CAAC,IAAI,EAAE,oBAAoB,CAAC,CAAC;IAC9D,CAAC;IAED,sEAAsE;IACtE,cAAc,CAAC,oBAAyC;QACtD,OAAO,IAAI,CAAC,mBAAmB,CAAC,oBAAoB,EAAE,gBAAgB,CAAC,CAAC;IAC1E,CAAC;IAED,cAAc,CAAC,oBAAyC;QACtD,OAAO,IAAI,CAAC,mBAAmB,CAAC,oBAAoB,EAAE,gBAAgB,CAAC,CAAC;IAC1E,CAAC;IAEO,gBAAgB,CAAC,sBAA8B;QACrD,IAAI,IAAA,2BAAc,EAAC,sBAAsB,CAAC,EAAE,CAAC;YAC3C,OAAO,IAAA,6BAAgB,EAAC,sBAAsB,CAAC,CAAC;QAClD,CAAC;QACD,OAAO,IAAA,6BAAgB,EAAC,IAAA,0BAAa,EAAC,CAAC,IAAI,CAAC,UAAU,EAAE,sBAAsB,CAAC,CAAC,CAAC,CAAC;IACpF,CAAC;IAEO,mBAAmB,CAAC,YAAgC,EAAE,OAAe;QAC3E,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC/C,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,uBAAuB,OAAO,EAAE,CAAC,CAAC;QACpD,CAAC;QACD,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,2EAA2E;YAC3E,OAAO,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;QACtD,CAAC;QACD,YAAY,GAAG,IAAI,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC;QACtD,OAAO,IAAI,CAAC,gBAAgB,CAAC,IAAA,0BAAa,EAAC,CAAC,OAAO,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;IACrF,CAAC;IAED,iBAAiB,CAAC,UAA4B;QAC5C,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,mCAAmC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC;QACxE,CAAC;QAED,MAAM,YAAY,GAAG,mBAAmB,CAAC,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC;QAEzE,oCAAoC;QACpC,IAAI,IAAA,2BAAc,EAAC,YAAY,CAAC,EAAE,CAAC;YACjC,OAAO,IAAA,6BAAgB,EAAC,YAAY,CAAC,CAAC;QACxC,CAAC;QAED,+CAA+C;QAC/C,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7F,MAAM,SAAS,GAAG,IAAA,uCAA0B,EAAC,YAAY,EAAE,IAAI,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;QAExF,IAAI,SAAS,EAAE,CAAC;YACd,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,8DAA8D;QAC9D,MAAM,aAAa,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACxC,IAAI,UAAU,EAAE,CAAC;YACf,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;gBAC7B,aAAa,CAAC,IAAI,CAAC,IAAA,2BAAc,EAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAA,0BAAa,EAAC,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;YACxF,CAAC;QACH,CAAC;QAED,MAAM,IAAI,KAAK,CACb,0BAA0B,YAAY,IAAI,GAAG,gBAAgB,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAChH,CAAC;IACJ,CAAC;IAED,kBAAkB,CAAC,WAAmB;QACpC,MAAM,YAAY,GAAG,IAAI,CAAC,mBAAmB,CAAC,WAAW,CAAC,CAAC;QAC3D,IAAI,IAAA,2BAAc,EAAC,YAAY,CAAC,EAAE,CAAC;YACjC,OAAO,IAAA,6BAAgB,EAAC,YAAY,CAAC,CAAC;QACxC,CAAC;QAED,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QACrG,MAAM,SAAS,GAAG,IAAA,uCAA0B,EAAC,YAAY,EAAE,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;QACzF,IAAI,SAAS,EAAE,CAAC;YACd,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,MAAM,aAAa,GAAG,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAA,0BAAa,EAAC,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5G,MAAM,IAAI,KAAK,CACb,2BAA2B,YAAY,IAAI,GAAG,gBAAgB,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CACjH,CAAC;IACJ,CAAC;IAED,oBAAoB;IACpB,mBAAmB,CAAC,CAAS;QAC3B,OAAO,mBAAmB,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;IAC/C,CAAC;IACD,iBAAiB;QACf,MAAM,IAAI,GAAG,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QAC5E,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;IACnC,CAAC;CACF;AA7ID,kDA6IC"}
@@ -0,0 +1,6 @@
1
+ export interface Tic80Location {
2
+ path: string;
3
+ source: 'env' | 'path';
4
+ }
5
+ export declare function resolveTic80Location(projectDir: string): Tic80Location | undefined;
6
+ //# sourceMappingURL=tic80Resolver.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tic80Resolver.d.ts","sourceRoot":"","sources":["../../src/backend/tic80Resolver.ts"],"names":[],"mappings":"AASA,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,KAAK,GAAC,MAAM,CAAC;CACtB;AAED,wBAAgB,oBAAoB,CAAC,UAAU,EAAE,MAAM,GAAG,aAAa,GACnE,SAAS,CA0BZ"}
@@ -0,0 +1,66 @@
1
+ "use strict";
2
+ // Searches for TIC-80 in the following order:
3
+ // 1. TIC80_LOCATION environment variable from .env/.env.local
4
+ // 2. tic80 or tic80.exe in PATH
5
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ var desc = Object.getOwnPropertyDescriptor(m, k);
8
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
9
+ desc = { enumerable: true, get: function() { return m[k]; } };
10
+ }
11
+ Object.defineProperty(o, k2, desc);
12
+ }) : (function(o, m, k, k2) {
13
+ if (k2 === undefined) k2 = k;
14
+ o[k2] = m[k];
15
+ }));
16
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
17
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
18
+ }) : function(o, v) {
19
+ o["default"] = v;
20
+ });
21
+ var __importStar = (this && this.__importStar) || (function () {
22
+ var ownKeys = function(o) {
23
+ ownKeys = Object.getOwnPropertyNames || function (o) {
24
+ var ar = [];
25
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
26
+ return ar;
27
+ };
28
+ return ownKeys(o);
29
+ };
30
+ return function (mod) {
31
+ if (mod && mod.__esModule) return mod;
32
+ var result = {};
33
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
34
+ __setModuleDefault(result, mod);
35
+ return result;
36
+ };
37
+ })();
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.resolveTic80Location = resolveTic80Location;
40
+ const dotenv_1 = require("dotenv");
41
+ const path = __importStar(require("path"));
42
+ const fileSystem_1 = require("../utils/fileSystem");
43
+ function resolveTic80Location(projectDir) {
44
+ // Load .env files if project directory is provided
45
+ if (projectDir) {
46
+ const envPath = path.join(projectDir, '.env');
47
+ const envLocalPath = path.join(projectDir, '.env.local');
48
+ // Load .env first, then .env.local (which overrides)
49
+ (0, dotenv_1.config)({ path: envPath });
50
+ (0, dotenv_1.config)({ path: envLocalPath });
51
+ }
52
+ // Check TIC80_LOCATION environment variable
53
+ const envLocation = process.env.TIC80_LOCATION;
54
+ if (envLocation) {
55
+ if ((0, fileSystem_1.fileExists)(envLocation)) {
56
+ return { path: envLocation, source: 'env' };
57
+ }
58
+ }
59
+ // Search in PATH
60
+ const pathLocation = (0, fileSystem_1.findExecutableInPath)('tic80');
61
+ if (pathLocation) {
62
+ return { path: pathLocation, source: 'path' };
63
+ }
64
+ return undefined;
65
+ }
66
+ //# sourceMappingURL=tic80Resolver.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tic80Resolver.js","sourceRoot":"","sources":["../../src/backend/tic80Resolver.ts"],"names":[],"mappings":";AAAA,8CAA8C;AAC9C,8DAA8D;AAC9D,gCAAgC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAYhC,oDA2BC;AArCD,mCAA8B;AAC9B,2CAA6B;AAE7B,oDAAqE;AAOrE,SAAgB,oBAAoB,CAAC,UAAkB;IAErD,mDAAmD;IACnD,IAAI,UAAU,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;QAC9C,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;QAEzD,qDAAqD;QACrD,IAAA,eAAM,EAAC,EAAC,IAAI,EAAE,OAAO,EAAC,CAAC,CAAC;QACxB,IAAA,eAAM,EAAC,EAAC,IAAI,EAAE,YAAY,EAAC,CAAC,CAAC;IAC/B,CAAC;IAED,4CAA4C;IAC5C,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;IAC/C,IAAI,WAAW,EAAE,CAAC;QAChB,IAAI,IAAA,uBAAU,EAAC,WAAW,CAAC,EAAE,CAAC;YAC5B,OAAO,EAAC,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,EAAC,CAAC;QAC5C,CAAC;IACH,CAAC;IAED,iBAAiB;IACjB,MAAM,YAAY,GAAG,IAAA,iCAAoB,EAAC,OAAO,CAAC,CAAC;IACnD,IAAI,YAAY,EAAE,CAAC;QACjB,OAAO,EAAC,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAC,CAAC;IAC9C,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC"}
@@ -0,0 +1,9 @@
1
+ export declare const buildInfo: {
2
+ readonly gitTag: "v1.0.0";
3
+ readonly commitsSinceTag: 4;
4
+ readonly dirty: true;
5
+ readonly buildDate: "2026-01-26T17:44:11.177Z";
6
+ readonly lastCommitDate: "2026-01-26T18:22:57+01:00";
7
+ readonly commitHash: "9742ad5";
8
+ };
9
+ //# sourceMappingURL=buildInfo.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"buildInfo.d.ts","sourceRoot":"","sources":["../src/buildInfo.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,SAAS;;;;;;;CAOZ,CAAC"}
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.buildInfo = void 0;
4
+ // Auto-generated by scripts/gen-build-info.js. Do not edit.
5
+ exports.buildInfo = {
6
+ "gitTag": "v1.0.0",
7
+ "commitsSinceTag": 4,
8
+ "dirty": true,
9
+ "buildDate": "2026-01-26T17:44:11.177Z",
10
+ "lastCommitDate": "2026-01-26T18:22:57+01:00",
11
+ "commitHash": "9742ad5"
12
+ };
13
+ //# sourceMappingURL=buildInfo.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"buildInfo.js","sourceRoot":"","sources":["../src/buildInfo.ts"],"names":[],"mappings":";;;AAAA,4DAA4D;AAC/C,QAAA,SAAS,GAAG;IACvB,QAAQ,EAAE,QAAQ;IAClB,iBAAiB,EAAE,CAAC;IACpB,OAAO,EAAE,IAAI;IACb,WAAW,EAAE,0BAA0B;IACvC,gBAAgB,EAAE,2BAA2B;IAC7C,YAAY,EAAE,SAAS;CACf,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { CommandLineOptions } from "./parseOptions";
2
+ export declare function buildCommand(manifestPath?: string, options?: CommandLineOptions): Promise<void>;
3
+ //# sourceMappingURL=build.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../../src/frontend/build.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAEpD,wBAAsB,YAAY,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CAErG"}
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.buildCommand = buildCommand;
4
+ const core_1 = require("./core");
5
+ async function buildCommand(manifestPath, options) {
6
+ (0, core_1.buildCore)(manifestPath, options);
7
+ }
8
+ //# sourceMappingURL=build.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build.js","sourceRoot":"","sources":["../../src/frontend/build.ts"],"names":[],"mappings":";;AAGA,oCAEC;AALD,iCAAmC;AAG5B,KAAK,UAAU,YAAY,CAAC,YAAqB,EAAE,OAA4B;IACpF,IAAA,gBAAS,EAAC,YAAY,EAAE,OAAO,CAAC,CAAC;AACnC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=codeBankWarnings.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"codeBankWarnings.test.d.ts","sourceRoot":"","sources":["../../src/frontend/codeBankWarnings.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"codeBankWarnings.test.js","sourceRoot":"","sources":["../../src/frontend/codeBankWarnings.test.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,4CAA8B;AAC9B,4CAA8B;AAC9B,gDAAkC;AAClC,iCAAmC;AACnC,uDAAyC;AAEzC,SAAS,SAAS,CAAC,QAAgB,EAAE,OAAe;IAClD,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC1D,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;AAC/C,CAAC;AAED,SAAS,iBAAiB,CAAC,IAAY,EAAE,aAAqB;IAC5D,MAAM,GAAG,GAAG,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,oBAAoB,CAAC,CAAC,CAAC;IACzE,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;IAC5C,SAAS,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IAE1B,MAAM,QAAQ,GAAG;QACf,OAAO,EAAE;YACP,IAAI,EAAE,MAAM;YACZ,MAAM,EAAE,OAAO;YACf,MAAM,EAAE,OAAO;YACf,cAAc,EAAE,SAAS;SAC1B;QACD,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,UAAU;gBAChB,IAAI,EAAE,UAAU;gBAChB,IAAI,EAAE,SAAS;aAChB;SACF;QACD,QAAQ,EAAE;YACR,GAAG,EAAE;gBACH,MAAM,EAAE,KAAK;aACd;YACD,MAAM,EAAE,CAAC,aAAa,CAAC;SACxB;KACF,CAAC;IAEF,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,wBAAwB,CAAC,CAAC;IAC9D,SAAS,CAAC,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAC3D,OAAO,EAAE,GAAG,EAAE,YAAY,EAAE,CAAC;AAC/B,CAAC;AAED,QAAQ,CAAC,0BAA0B,EAAE,GAAG,EAAE;IACxC,EAAE,CAAC,qDAAqD,EAAE,KAAK,IAAI,EAAE;QACnE,MAAM,EAAE,GAAG,EAAE,YAAY,EAAE,GAAG,iBAAiB,CAAC,aAAa,EAAE;YAC7D,MAAM,EAAE,CAAC,MAAM,CAAC;YAChB,IAAI,EAAE,CAAC;YACP,KAAK,EAAE,UAAU;SAClB,CAAC,CAAC;QAEH,mCAAmC;QACnC,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,kBAAkB,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;QAEhF,IAAI,CAAC;YACH,MAAM,IAAA,gBAAS,EAAC,YAAY,CAAC,CAAC;YAC9B,MAAM,CAAC,OAAO,CAAC,CAAC,oBAAoB,CAAC,gDAAgD,CAAC,CAAC;QACzF,CAAC;gBAAS,CAAC;YACT,OAAO,CAAC,WAAW,EAAE,CAAC;YACtB,EAAE,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QACnD,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { CommandLineOptions } from "./parseOptions";
2
+ export declare function buildCore(manifestPath?: string, options?: CommandLineOptions): Promise<void>;
3
+ //# sourceMappingURL=core.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../src/frontend/core.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,kBAAkB,EAAqB,MAAM,gBAAgB,CAAC;AAGvE,wBAAsB,SAAS,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CA4GlG"}