@@ -5,15 +5,19 @@ class RTCRtpParametersWeb {
55 static RTCRtpParameters fromJsObject (Object object) {
66 return RTCRtpParameters (
77 transactionId: jsutil.getProperty (object, 'transactionId' ),
8- rtcp: RTCRTCPParametersWeb .fromJsObject (
9- jsutil.getProperty (object, 'rtcp' )),
8+ rtcp: jsutil.hasProperty (object, 'transactionId' )
9+ ? RTCRTCPParametersWeb .fromJsObject (
10+ jsutil.getProperty (object, 'rtcp' ))
11+ : null ,
1012 headerExtensions: headerExtensionsFromJsObject (object),
1113 encodings: encodingsFromJsObject (object),
1214 codecs: codecsFromJsObject (object));
1315 }
1416
1517 static List <RTCHeaderExtension > headerExtensionsFromJsObject (Object object) {
16- var headerExtensions = jsutil.getProperty (object, 'headerExtensions' );
18+ var headerExtensions = jsutil.hasProperty (object, 'headerExtensions' )
19+ ? jsutil.getProperty (object, 'headerExtensions' )
20+ : [];
1721 var list = < RTCHeaderExtension > [];
1822 headerExtensions.forEach ((e) {
1923 list.add (RTCHeaderExtensionWeb .fromJsObject (e));
@@ -22,7 +26,9 @@ class RTCRtpParametersWeb {
2226 }
2327
2428 static List <RTCRtpEncoding > encodingsFromJsObject (Object object) {
25- var encodings = jsutil.getProperty (object, 'encodings' );
29+ var encodings = jsutil.hasProperty (object, 'encodings' )
30+ ? jsutil.getProperty (object, 'encodings' )
31+ : [];
2632 var list = < RTCRtpEncoding > [];
2733 encodings.forEach ((e) {
2834 list.add (RTCRtpEncodingWeb .fromJsObject (e));
@@ -31,7 +37,9 @@ class RTCRtpParametersWeb {
3137 }
3238
3339 static List <RTCRTPCodec > codecsFromJsObject (Object object) {
34- var encodings = jsutil.getProperty (object, 'codecs' );
40+ var encodings = jsutil.hasProperty (object, 'codecs' )
41+ ? jsutil.getProperty (object, 'codecs' )
42+ : [];
3543 var list = < RTCRTPCodec > [];
3644 encodings.forEach ((e) {
3745 list.add (RTCRTPCodecWeb .fromJsObject (e));
0 commit comments