@@ -40,6 +40,7 @@ export class LibRaw implements Disposable {
4040 LibRaw . modulePromise = mod ;
4141 LibRaw . module = await mod ;
4242 }
43+ return await LibRaw . modulePromise ;
4344 }
4445 async waitUntilReady ( ) {
4546 await LibRaw . modulePromise ;
@@ -170,18 +171,25 @@ export class LibRaw implements Disposable {
170171 setFbddNoiserd ( value : Int ) {
171172 LibRaw . module . _libraw_set_fbdd_noiserd ( this . lr , value ) ;
172173 }
173- version ( ) : string {
174- return this . readString ( LibRaw . module . _libraw_version ( this . lr ) ) ;
174+ static version ( ) : string {
175+ if ( LibRaw . module === undefined ) throw new Error ( "Not initialized" ) ;
176+ const ptr = LibRaw . module . _libraw_version ( ) ;
177+ return typ
178+ . sizedCharArrayAsString ( Number . POSITIVE_INFINITY )
179+ . read ( { buf : LibRaw . module . HEAPU8 , offset : ptr } , { } ) ;
175180 }
176- versionNumber ( ) : number {
177- return LibRaw . module . _libraw_versionNumber ( this . lr ) ;
181+ static versionNumber ( ) : number {
182+ if ( LibRaw . module === undefined ) throw new Error ( "Not initialized" ) ;
183+ return LibRaw . module . _libraw_versionNumber ( ) ;
178184 }
179- cameraCount ( ) : number {
180- return LibRaw . module . _libraw_cameraCount ( this . lr ) ;
185+ static cameraCount ( ) : number {
186+ if ( LibRaw . module === undefined ) throw new Error ( "Not initialized" ) ;
187+ return LibRaw . module . _libraw_cameraCount ( ) ;
181188 }
182- cameraList ( ) : string [ ] {
183- const ptr = LibRaw . module . _libraw_cameraList ( this . lr ) ;
184- const length = this . cameraCount ( ) ;
189+ static cameraList ( ) : string [ ] {
190+ if ( LibRaw . module === undefined ) throw new Error ( "Not initialized" ) ;
191+ const ptr = LibRaw . module . _libraw_cameraList ( ) ;
192+ const length = LibRaw . cameraCount ( ) ;
185193 return typ
186194 . sizedArray ( typ . charPointerAsString ( ) , length )
187195 . read ( { buf : LibRaw . module . HEAPU8 , offset : ptr } , { } ) ;
0 commit comments