0
JavaScript (ES6), 145 bytes
b=>[...b].map(x=>p+=[A="=+","+",B="=>",">",C="=|","|",D="==",C+C,"+",A,">",B,"|",C,D,"|=|"]["+-><[].,".indexOf(x)+p.split`=`.length%2*8],p="")&&p
Uses an array of the 16 possibilities (8 characters times 2 parities), and indexes into this (that saves three bytes over ...