File tree Expand file tree Collapse file tree 1 file changed +15
-0
lines changed Expand file tree Collapse file tree 1 file changed +15
-0
lines changed Original file line number Diff line number Diff line change @@ -258,8 +258,23 @@ def _handle_default_values(
258
258
259
259
ret = []
260
260
261
+ valid_default_types = {
262
+ ComponentType .user_select : (SelectDefaultValueType .user ,),
263
+ ComponentType .role_select : (SelectDefaultValueType .role ,),
264
+ ComponentType .channel_select : (SelectDefaultValueType .channel ,),
265
+ ComponentType .mentionable_select : (SelectDefaultValueType .user , SelectDefaultValueType .role ),
266
+ }
267
+
261
268
for dv in default_values :
262
269
if isinstance (dv , SelectDefaultValue ):
270
+ try :
271
+ valid_types = valid_default_types [select_type ]
272
+ except KeyError :
273
+ raise TypeError (f"select default values are not allowed for this select type ({ select_type .name } )" )
274
+
275
+ if dv .type not in valid_types :
276
+ raise TypeError (f"{ dv .type .name } is not a valid select default value for selects of type { select_type .name } " )
277
+
263
278
ret .append (dv )
264
279
continue
265
280
if isinstance (dv , str ):
You can’t perform that action at this time.
0 commit comments