@@ -245,18 +245,23 @@ def update_dicts(
245245 else :
246246 raise
247247
248- # Convert result map back to result list
249- lists : ListToSpokenForms = {res ["list" ]: {} for res in results_map .values ()}
250- spoken_form_entries : list [SpokenFormEntry ] = []
251- for list_name , id , spoken_forms in generate_spoken_forms (results_map .values ()):
252- for spoken_form in spoken_forms :
253- lists [list_name ][spoken_form ] = id
254- spoken_form_entries .append (
255- SpokenFormEntry (list_name = list_name , id = id , spoken_forms = spoken_forms )
256- )
248+ spoken_form_entries = list (generate_spoken_forms (results_map .values ()))
257249
258250 # Assign result to talon context list
259- assign_lists_to_context (ctx , lists , pluralize_lists )
251+ assign_lists_to_context (
252+ ctx ,
253+ {
254+ ** {res ["list" ]: {} for res in results_map .values ()},
255+ ** {
256+ spoken_form_entry .list_name : {
257+ spoken_form : spoken_form_entry .id
258+ for spoken_form in spoken_form_entry .spoken_forms
259+ }
260+ for spoken_form_entry in spoken_form_entries
261+ },
262+ },
263+ pluralize_lists ,
264+ )
260265
261266 if handle_new_values is not None :
262267 handle_new_values (spoken_form_entries )
@@ -286,7 +291,7 @@ def generate_spoken_forms(results_list: Iterable[ResultsListEntry]):
286291 k = k [:- 3 ]
287292 spoken .append (k .strip ())
288293
289- yield (
294+ yield SpokenFormEntry (
290295 obj ["list" ],
291296 value ,
292297 spoken ,
0 commit comments