1 Number._parseNumberNegativePattern = function Number$_parseNumberNegativePattern(value, numFormat, numberNegativePattern) {
2 var neg = numFormat.NegativeSign;
3 var pos = numFormat.PositiveSign;
4 switch (numberNegativePattern) {
5 case 4:
6 neg = ' ' + neg;
7 pos = ' ' + pos;
8 case 3:
9 if (value.endsWith(neg)) {
10 return ['-', value.substr(0, value.length - neg.length)];
11 }
12 else if (value.endsWith(pos)) {
13 return ['+', value.substr(0, value.length - pos.length)];
14 }
15 break;
16 case 2:
17 neg += ' ';
18 pos += ' ';
19 case 1:
20 if (value.startsWith(neg)) {
21 return ['-', value.substr(neg.length)];
22 }
23 else if (value.startsWith(pos)) {
24 return ['+', value.substr(pos.length)];
25 }
26 break;
27 case 0:
28 if (value.startsWith('(') && value.endsWith(')')) {
29 return ['-', value.substr(1, value.length - 2)];
30 }
31 break;
32 }
33 return ['', value];
34 }