22# https://dev.twitch.tv/docs/api/reference
33
44from ... import keys
5- from ...api .parameters import Cursor , Language , StreamTypeHelix
5+ from ...api .parameters import Cursor , Language , IntRange , ItemCount
66from ...queries import HelixQuery as Qry
77from ...queries import query
88
99
1010# required scope: none
1111@query
1212def get_streams (community_id = list (), game_id = list (), user_id = list (),
13- user_login = list (), stream_type = StreamTypeHelix . ALL , language = list (),
14- after = 'MA==' , before = 'MA==' , first = 20 , use_app_token = False ):
13+ user_login = list (), language = list (), after = 'MA==' ,
14+ before = 'MA==' , first = 20 , use_app_token = False ):
1515 q = Qry ('streams' , use_app_token = use_app_token )
1616 q .add_param (keys .AFTER , Cursor .validate (after ), 'MA==' )
1717 q .add_param (keys .BEFORE , Cursor .validate (before ), 'MA==' )
18- q .add_param (keys .FIRST , first , 20 )
19- q .add_param (keys .COMMUNITY_ID , community_id , list ())
20- q .add_param (keys .GAME_ID , game_id , list ())
21- q .add_param (keys .USER_ID , user_id , list ())
22- q .add_param (keys .USER_LOGIN , user_login , list ())
23- q .add_param (keys .TYPE , StreamTypeHelix .validate (stream_type ), StreamTypeHelix .ALL )
18+ q .add_param (keys .FIRST , IntRange (1 , 100 ).validate (first ), 20 )
19+ q .add_param (keys .COMMUNITY_ID , ItemCount ().validate (community_id ), list ())
20+ q .add_param (keys .GAME_ID , ItemCount ().validate (game_id ), list ())
21+ q .add_param (keys .USER_ID , ItemCount ().validate (user_id ), list ())
22+ q .add_param (keys .USER_LOGIN , ItemCount ().validate (user_login ), list ())
2423 if isinstance (language , list ):
2524 _language = [lang for lang in language if lang in Language .valid ()]
26- q .add_param (keys .LANGUAGE , _language , list ())
25+ q .add_param (keys .LANGUAGE , ItemCount (). validate ( _language ) , list ())
2726 else :
2827 q .add_param (keys .LANGUAGE , Language .validate (language ), '' )
2928
@@ -33,20 +32,19 @@ def get_streams(community_id=list(), game_id=list(), user_id=list(),
3332# required scope: none
3433@query
3534def get_metadata (community_id = list (), game_id = list (), user_id = list (),
36- user_login = list (), stream_type = StreamTypeHelix . ALL , language = list (),
37- after = 'MA==' , before = 'MA==' , first = 20 , use_app_token = False ):
35+ user_login = list (), language = list (), after = 'MA==' ,
36+ before = 'MA==' , first = 20 , use_app_token = False ):
3837 q = Qry ('streams/metadata' , use_app_token = use_app_token )
3938 q .add_param (keys .AFTER , Cursor .validate (after ), 'MA==' )
4039 q .add_param (keys .BEFORE , Cursor .validate (before ), 'MA==' )
41- q .add_param (keys .FIRST , first , 20 )
42- q .add_param (keys .COMMUNITY_ID , community_id , list ())
43- q .add_param (keys .GAME_ID , game_id , list ())
44- q .add_param (keys .USER_ID , user_id , list ())
45- q .add_param (keys .USER_LOGIN , user_login , list ())
46- q .add_param (keys .TYPE , StreamTypeHelix .validate (stream_type ), StreamTypeHelix .ALL )
40+ q .add_param (keys .FIRST , IntRange (1 , 100 ).validate (first ), 20 )
41+ q .add_param (keys .COMMUNITY_ID , ItemCount ().validate (community_id ), list ())
42+ q .add_param (keys .GAME_ID , ItemCount ().validate (game_id ), list ())
43+ q .add_param (keys .USER_ID , ItemCount ().validate (user_id ), list ())
44+ q .add_param (keys .USER_LOGIN , ItemCount ().validate (user_login ), list ())
4745 if isinstance (language , list ):
4846 _language = [lang for lang in language if lang in Language .valid ()]
49- q .add_param (keys .LANGUAGE , _language , list ())
47+ q .add_param (keys .LANGUAGE , ItemCount (). validate ( _language ) , list ())
5048 else :
5149 q .add_param (keys .LANGUAGE , Language .validate (language ), '' )
5250
0 commit comments