stream-labs / obs-studio-node

libOBS (OBS Studio) for Node.Js, Electron and similar tools
GNU General Public License v2.0
614 stars 99 forks source link

convert const enums to regular enums #1430

Open avacreeth opened 6 months ago

avacreeth commented 6 months ago

This package exports const enums instead of regular enums. References to a const enum are inlined at compile time, so there is no runtime object associated with the enum. Most modern javascript bundlers compile typescript with isolatedModules: true which means that type checking doesn't happen across module boundaries, and therefore the enums cannot be inlined.

Removing the const keyword from these enums means that the compiled javascript build object for module.ts will contain runtime objects that can be used to access enum values.