@@ -53,6 +53,7 @@ import {
53
53
trigramFigures ,
54
54
trigramDescriptions ,
55
55
trigramChineseMapping ,
56
+ trigrams_named ,
56
57
} from "@ai16z/agent/data/hexagrams.ts" ;
57
58
58
59
// These values are chosen for compatibility with picovoice components
@@ -1049,18 +1050,27 @@ export class VoiceManager extends EventEmitter {
1049
1050
}
1050
1051
1051
1052
private translateIdeograms ( text : string ) : string {
1052
- // Create reverse mappings
1053
+ // Create element to pinyin mapping
1054
+ const elementToPinyin = Object . entries ( trigrams_named ) . reduce (
1055
+ ( acc , [ pinyin , data ] ) => {
1056
+ acc [ data . element ] = pinyin ;
1057
+ return acc ;
1058
+ } ,
1059
+ { } as Record < string , string >
1060
+ ) ;
1061
+
1062
+ // Create reverse mappings using pinyin instead of element names
1053
1063
const trigramByFigure = Object . entries ( trigramFigures ) . reduce (
1054
- ( acc , [ name , figure ] ) => {
1055
- acc [ figure ] = name ;
1064
+ ( acc , [ element , figure ] ) => {
1065
+ acc [ figure ] = elementToPinyin [ element ] ;
1056
1066
return acc ;
1057
1067
} ,
1058
1068
{ } as Record < string , string >
1059
1069
) ;
1060
1070
1061
1071
const trigramByChinese = Object . entries ( trigramChineseMapping ) . reduce (
1062
- ( acc , [ name , chinese ] ) => {
1063
- acc [ chinese ] = name ;
1072
+ ( acc , [ element , chinese ] ) => {
1073
+ acc [ chinese ] = elementToPinyin [ element ] ;
1064
1074
return acc ;
1065
1075
} ,
1066
1076
{ } as Record < string , string >
0 commit comments