Hi, thanks for checking out the internals of the mod!
The "lib" directory contains a "framework" I made specifically for this mod and TypescriptToLua, but perhaps generalizable to others. I've been thinking to "polish, package, and publish" this, but haven't go around to that yet; with this comment I might get around to doing that sooner.
If you want give a go at "extracting" the framework or playing around with it before I get around to that, you're free to do so under the LGPL license.
Some notes:
- the FactorioJSX component ties into many other parts of the framework (events, observables, registered functions to store in global, etc.).
- The script scripts/gen-gui-specs.ts
is also part of the framework.
- I haven't "finalized" the design of many parts of the framework enough yet to reasonably guarantee backwards-compatibility in the future; which is why I haven't published this yet