Skip to content

Commit 65c9163

Browse files
summeroffavacreethclaude
committed
convert const enums to regular enums
const enum members are inlined at compile time and produce no runtime object. Downstream consumers that bundle with isolatedModules: true cannot inline across module boundaries, so osn.E*.* reads resolve to undefined at runtime. Dropping const makes tsc emit real runtime enum objects into module.js. Source change folded in from #1430 (Ava Creeth); the js/ outputs were regenerated via the build:javascript pipeline. type_check.js now resolves EPropertyType through the runtime object instead of inlined numeric literals, demonstrating the same inlining fix in this repo's own code. Co-authored-by: Ava Creeth <avacreeth@users.noreply.github.com> Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
1 parent 94f86aa commit 65c9163

4 files changed

Lines changed: 486 additions & 105 deletions

File tree

js/module.d.ts

Lines changed: 44 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -6,41 +6,41 @@ export declare const DefaultDataPath: string;
66
export declare const DefaultPluginPath: string;
77
export declare const DefaultPluginDataPath: string;
88
export declare const DefaultPluginPathMac: string;
9-
export declare const enum ESourceFlags {
9+
export declare enum ESourceFlags {
1010
Unbuffered = 1,
1111
ForceMono = 2
1212
}
13-
export declare const enum EMonitoringType {
13+
export declare enum EMonitoringType {
1414
None = 0,
1515
MonitoringOnly = 1,
1616
MonitoringAndOutput = 2
1717
}
18-
export declare const enum EOrderMovement {
18+
export declare enum EOrderMovement {
1919
Up = 0,
2020
Down = 1,
2121
Top = 2,
2222
Bottom = 3
2323
}
24-
export declare const enum EDeinterlaceFieldOrder {
24+
export declare enum EDeinterlaceFieldOrder {
2525
Top = 0,
2626
Bottom = 1
2727
}
28-
export declare const enum EVideoCodes {
28+
export declare enum EVideoCodes {
2929
Success = 0,
3030
Fail = -1,
3131
NotSupported = -2,
3232
InvalidParam = -3,
3333
CurrentlyActive = -4,
3434
ModuleNotFound = -5
3535
}
36-
export declare const enum EHotkeyObjectType {
36+
export declare enum EHotkeyObjectType {
3737
Frontend = 0,
3838
Source = 1,
3939
Output = 2,
4040
Encoder = 3,
4141
Service = 4
4242
}
43-
export declare const enum EDeinterlaceMode {
43+
export declare enum EDeinterlaceMode {
4444
Disable = 0,
4545
Discard = 1,
4646
Retro = 2,
@@ -51,11 +51,11 @@ export declare const enum EDeinterlaceMode {
5151
Yadif = 7,
5252
Yadif2X = 8
5353
}
54-
export declare const enum EBlendingMethod {
54+
export declare enum EBlendingMethod {
5555
Default = 0,
5656
SrgbOff = 1
5757
}
58-
export declare const enum EBlendingMode {
58+
export declare enum EBlendingMode {
5959
Normal = 0,
6060
Additive = 1,
6161
Substract = 2,
@@ -64,13 +64,13 @@ export declare const enum EBlendingMode {
6464
Lighten = 5,
6565
Darken = 6
6666
}
67-
export declare const enum EFontStyle {
67+
export declare enum EFontStyle {
6868
Bold = 1,
6969
Italic = 2,
7070
Underline = 4,
7171
Strikeout = 8
7272
}
73-
export declare const enum EPropertyType {
73+
export declare enum EPropertyType {
7474
Invalid = 0,
7575
Boolean = 1,
7676
Int = 2,
@@ -87,38 +87,38 @@ export declare const enum EPropertyType {
8787
ColorAlpha = 13,
8888
Capture = 14
8989
}
90-
export declare const enum EListFormat {
90+
export declare enum EListFormat {
9191
Invalid = 0,
9292
Int = 1,
9393
Float = 2,
9494
String = 3
9595
}
96-
export declare const enum EEditableListType {
96+
export declare enum EEditableListType {
9797
Strings = 0,
9898
Files = 1,
9999
FilesAndUrls = 2
100100
}
101-
export declare const enum EPathType {
101+
export declare enum EPathType {
102102
File = 0,
103103
FileSave = 1,
104104
Directory = 2
105105
}
106-
export declare const enum ETextType {
106+
export declare enum ETextType {
107107
Default = 0,
108108
Password = 1,
109109
Multiline = 2,
110110
TextInfo = 3
111111
}
112-
export declare const enum ETextInfoType {
112+
export declare enum ETextInfoType {
113113
Normal = 0,
114114
Warning = 1,
115115
Error = 2
116116
}
117-
export declare const enum ENumberType {
117+
export declare enum ENumberType {
118118
Scroller = 0,
119119
Slider = 1
120120
}
121-
export declare const enum EAlignment {
121+
export declare enum EAlignment {
122122
Center = 0,
123123
Left = 1,
124124
Right = 2,
@@ -129,15 +129,15 @@ export declare const enum EAlignment {
129129
BottomLeft = 9,
130130
BottomRight = 10
131131
}
132-
export declare const enum EOutputFlags {
132+
export declare enum EOutputFlags {
133133
Video = 1,
134134
Audio = 2,
135135
AV = 3,
136136
Encoded = 4,
137137
Service = 8,
138138
MultiTrack = 16
139139
}
140-
export declare const enum ESourceOutputFlags {
140+
export declare enum ESourceOutputFlags {
141141
Video = 1,
142142
Audio = 2,
143143
Async = 4,
@@ -150,24 +150,24 @@ export declare const enum ESourceOutputFlags {
150150
DoNotSelfMonitor = 512,
151151
ForceUiRefresh = 1073741824
152152
}
153-
export declare const enum ESceneDupType {
153+
export declare enum ESceneDupType {
154154
Refs = 0,
155155
Copy = 1,
156156
PrivateRefs = 2,
157157
PrivateCopy = 3
158158
}
159-
export declare const enum ESourceType {
159+
export declare enum ESourceType {
160160
Input = 0,
161161
Filter = 1,
162162
Transition = 2,
163163
Scene = 3
164164
}
165-
export declare const enum EFaderType {
165+
export declare enum EFaderType {
166166
Cubic = 0,
167167
IEC = 1,
168168
Log = 2
169169
}
170-
export declare const enum EColorFormat {
170+
export declare enum EColorFormat {
171171
Unknown = 0,
172172
A8 = 1,
173173
R8 = 2,
@@ -187,25 +187,25 @@ export declare const enum EColorFormat {
187187
DXT3 = 16,
188188
DXT5 = 17
189189
}
190-
export declare const enum EScaleType {
190+
export declare enum EScaleType {
191191
Disable = 0,
192192
Point = 1,
193193
Bicubic = 2,
194194
Bilinear = 3,
195195
Lanczos = 4,
196196
Area = 5
197197
}
198-
export declare const enum EFPSType {
198+
export declare enum EFPSType {
199199
Common = 0,
200200
Integer = 1,
201201
Fractional = 2
202202
}
203-
export declare const enum ERangeType {
203+
export declare enum ERangeType {
204204
Default = 0,
205205
Partial = 1,
206206
Full = 2
207207
}
208-
export declare const enum EVideoFormat {
208+
export declare enum EVideoFormat {
209209
None = 0,
210210
I420 = 1,
211211
NV12 = 2,
@@ -224,7 +224,7 @@ export declare const enum EVideoFormat {
224224
YUVA = 15,
225225
AYUV = 16
226226
}
227-
export declare const enum EBoundsType {
227+
export declare enum EBoundsType {
228228
None = 0,
229229
Stretch = 1,
230230
ScaleInner = 2,
@@ -233,15 +233,15 @@ export declare const enum EBoundsType {
233233
ScaleToHeight = 5,
234234
MaxOnly = 6
235235
}
236-
export declare const enum EColorSpace {
236+
export declare enum EColorSpace {
237237
Default = 0,
238238
CS601 = 1,
239239
CS709 = 2,
240240
CSSRGB = 3,
241241
CS2100PQ = 4,
242242
CS2100HLG = 5
243243
}
244-
export declare const enum ESpeakerLayout {
244+
export declare enum ESpeakerLayout {
245245
Unknown = 0,
246246
Mono = 1,
247247
Stereo = 2,
@@ -251,7 +251,7 @@ export declare const enum ESpeakerLayout {
251251
FiveOne = 6,
252252
SevenOne = 8
253253
}
254-
export declare const enum EOutputCode {
254+
export declare enum EOutputCode {
255255
Success = 0,
256256
BadPath = -1,
257257
ConnectFailed = -2,
@@ -263,28 +263,28 @@ export declare const enum EOutputCode {
263263
EncoderError = -8,
264264
OutdatedDriver = -65
265265
}
266-
export declare const enum ECategoryTypes {
266+
export declare enum ECategoryTypes {
267267
NODEOBS_CATEGORY_LIST = 0,
268268
NODEOBS_CATEGORY_TAB = 1
269269
}
270-
export declare const enum ERenderingMode {
270+
export declare enum ERenderingMode {
271271
OBS_MAIN_RENDERING = 0,
272272
OBS_STREAMING_RENDERING = 1,
273273
OBS_RECORDING_RENDERING = 2
274274
}
275-
export declare const enum EIPCError {
275+
export declare enum EIPCError {
276276
STILL_RUNNING = 259,
277277
VERSION_MISMATCH = 252,
278278
OTHER_ERROR = 253,
279279
MISSING_DEPENDENCY = 254,
280280
NORMAL_EXIT = 0
281281
}
282-
export declare const enum EVcamInstalledStatus {
282+
export declare enum EVcamInstalledStatus {
283283
NotInstalled = 0,
284284
LegacyInstalled = 1,
285285
Installed = 2
286286
}
287-
export declare const enum ERecSplitType {
287+
export declare enum ERecSplitType {
288288
Time = 0,
289289
Size = 1,
290290
Manual = 2
@@ -455,7 +455,7 @@ export interface IInputFactory extends IFactoryTypes {
455455
fromName(name: string): IInput;
456456
getPublicSources(): IInput[];
457457
}
458-
export declare const enum EInteractionFlags {
458+
export declare enum EInteractionFlags {
459459
None = 0,
460460
CapsKey = 1,
461461
ShiftKey = 2,
@@ -470,7 +470,7 @@ export declare const enum EInteractionFlags {
470470
IsLeft = 1024,
471471
IsRight = 2048
472472
}
473-
export declare const enum EMouseButtonType {
473+
export declare enum EMouseButtonType {
474474
Left = 0,
475475
Middle = 1,
476476
Right = 2
@@ -739,25 +739,25 @@ export interface IService {
739739
readonly settings: ISettings;
740740
update(settings: ISettings): void;
741741
}
742-
export declare const enum ERecordingFormat {
742+
export declare enum ERecordingFormat {
743743
MP4 = "mp4",
744744
FLV = "flv",
745745
MOV = "mov",
746746
MKV = "mkv",
747747
MPEGTS = "ts",
748748
HLS = "m3u8"
749749
}
750-
export declare const enum ERecordingQuality {
750+
export declare enum ERecordingQuality {
751751
Stream = 0,
752752
HighQuality = 1,
753753
HigherQuality = 2,
754754
Lossless = 3
755755
}
756-
export declare const enum EVideoEncoderType {
756+
export declare enum EVideoEncoderType {
757757
Audio = 0,
758758
Video = 1
759759
}
760-
export declare const enum EProcessPriority {
760+
export declare enum EProcessPriority {
761761
High = "High",
762762
AboveNormal = "AboveNormal",
763763
Normal = "Normal",
@@ -965,7 +965,7 @@ export interface IAudioTrackFactory {
965965
importLegacySettings(): void;
966966
saveLegacySettings(): void;
967967
}
968-
export declare const enum VCamOutputType {
968+
export declare enum VCamOutputType {
969969
Invalid = 0,
970970
SceneOutput = 1,
971971
SourceOutput = 2,

0 commit comments

Comments
 (0)