@@ -353,6 +353,8 @@ function getFHPaddingEntries(index)
353353 var LOCALE_INFINITY = Feature . LOCALE_INFINITY ;
354354 var LOCALE_NUMERALS_BN = Feature . LOCALE_NUMERALS_BN ;
355355 var LOCALE_NUMERALS_EXT = Feature . LOCALE_NUMERALS_EXT ;
356+ var LOCALE_NUMERALS_IE11_WIN7 = Feature . LOCALE_NUMERALS_IE11_WIN7 ;
357+ var LOCALE_NUMERALS_IE11_WIN7_8 = Feature . LOCALE_NUMERALS_IE11_WIN7_8 ;
356358 var NAME = Feature . NAME ;
357359 var NO_FF_SRC = Feature . NO_FF_SRC ;
358360 var NO_IE_SRC = Feature . NO_IE_SRC ;
@@ -461,15 +463,17 @@ function getFHPaddingEntries(index)
461463 var expr = '(' + number + ')[TO_LOCALE_STRING](' + locale + ')' ;
462464 if ( index != null )
463465 {
464- if ( index > 4 )
466+ if ( index % 10 === 8 )
467+ expr = '(' + R_PADDINGS [ 3 ] + ' + ' + expr + ')[' + ( index - index % 10 + 11 ) + ']' ;
468+ else if ( index % 10 > 4 )
465469 {
466- var paddingBlock = R_PADDINGS [ 10 - index ] ;
467- expr = '(' + paddingBlock + ' + ' + expr + ')[10 ]' ;
470+ var paddingBlock = R_PADDINGS [ 10 - index % 10 ] ;
471+ expr = '(' + paddingBlock + ' + ' + expr + ')[' + ( index - index % 10 + 10 ) + ' ]';
468472 }
469473 else
470474 expr += '[' + index + ']' ;
471475 }
472- var entry = define . _callWithFeatures ( expr , arguments , 3 ) ;
476+ var entry = define . _callWithFeatures ( { expr : expr , optimize : true } , arguments , 3 ) ;
473477 return entry ;
474478 }
475479
@@ -497,11 +501,12 @@ function getFHPaddingEntries(index)
497501
498502 function useLocaleNumeralDefinition ( char , locale , number , index )
499503 {
500- CHARACTERS [ char ] =
501- [
502- defineLocalizedNumeral . _callWithFeatures ( locale , number , index , arguments , 4 ) ,
503- defineCharCommon ( ) ,
504- ] ;
504+ var entries = CHARACTERS [ char ] ;
505+ var entry = defineLocalizedNumeral . _callWithFeatures ( locale , number , index , arguments , 4 ) ;
506+ if ( entries )
507+ entries . splice ( entries . length - 1 , 0 , entry ) ;
508+ else
509+ CHARACTERS [ char ] = [ entry , defineCharCommon ( ) ] ;
505510 }
506511
507512 function useLocaleNumeralDigitDefinitions ( locale , zeroCharCode )
@@ -1069,6 +1074,7 @@ function getFHPaddingEntries(index)
10691074 define ( 'Infinity[TO_LOCALE_STRING]("ja")[SLICE_OR_SUBSTR]("-1")' ) ,
10701075 define ( 'Infinity[TO_LOCALE_STRING]("ja").at("-1")' , AT ) ,
10711076 define ( 'Infinity[TO_LOCALE_STRING]()' , LOCALE_INFINITY ) ,
1077+ define ( 'Infinity[TO_LOCALE_STRING]("ja")[1]' , LOCALE_NUMERALS_IE11_WIN7_8 ) ,
10721078 define ( 'Infinity[TO_LOCALE_STRING]("ru")' , RUSSIAN_INFINITY ) ,
10731079 defineCharCommon ( ) ,
10741080 ] ,
@@ -1194,6 +1200,11 @@ function getFHPaddingEntries(index)
11941200 define ( { expr : '"ar-td"' , solutionType : SolutionType . COMBINED_STRING } ) ,
11951201 define ( { expr : '"ar"' , solutionType : SolutionType . COMBINED_STRING } , SHORT_LOCALES ) ,
11961202 ] ,
1203+ LOCALE_HE :
1204+ [
1205+ define ( { expr : '"He"' , solutionType : SolutionType . COMBINED_STRING } ) ,
1206+ define ( { expr : '"he"' , solutionType : SolutionType . COMBINED_STRING } ) ,
1207+ ] ,
11971208 MAP :
11981209 [
11991210 define ( { expr : '"map"' , optimize : true , solutionType : SolutionType . COMBINED_STRING } ) ,
@@ -1723,21 +1734,75 @@ function getFHPaddingEntries(index)
17231734 useLocaleNumeralDefinition ( 'ي' , '"ar"' , NaN , 1 ) ;
17241735 useLocaleNumeralDefinition ( 'س' , '"ar"' , NaN , 2 ) ;
17251736 useLocaleNumeralDefinition ( 'ر' , '"ar"' , NaN , 4 , LOCALE_NUMERALS_EXT ) ;
1737+ useLocaleNumeralDefinition ( 'ب' , '"ar"' , NaN , 4 , LOCALE_NUMERALS_IE11_WIN7_8 ) ;
17261738 useLocaleNumeralDefinition ( 'ق' , '"ar"' , NaN , 5 , LOCALE_NUMERALS_EXT ) ;
1739+ useLocaleNumeralDefinition ( 'ر' , '"ar"' , NaN , 5 , LOCALE_NUMERALS_IE11_WIN7_8 ) ;
17271740 useLocaleNumeralDefinition ( 'م' , '"ar"' , NaN , 6 , LOCALE_NUMERALS_EXT ) ;
1741+ useLocaleNumeralDefinition ( 'ق' , '"ar"' , NaN , 6 , LOCALE_NUMERALS_IE11_WIN7_8 ) ;
1742+ useLocaleNumeralDefinition ( 'م' , '"ar"' , NaN , 7 , LOCALE_NUMERALS_IE11_WIN7_8 ) ;
1743+ useLocaleNumeralDefinition ( 'ا' , '"ar"' , Infinity , 2 , LOCALE_NUMERALS_IE11_WIN7_8 ) ;
1744+ useLocaleNumeralDefinition ( 'ن' , '"ar"' , Infinity , 4 , LOCALE_NUMERALS_IE11_WIN7_8 ) ;
1745+ useLocaleNumeralDefinition ( 'ه' , '"ar"' , Infinity , 5 , LOCALE_NUMERALS_IE11_WIN7_8 ) ;
1746+ useLocaleNumeralDefinition ( 'ة' , '"ar"' , Infinity , 8 , LOCALE_NUMERALS_IE11_WIN7_8 ) ;
17281747 useLocaleNumeralDigitDefinitions ( '"bn"' , 0x09e6 , LOCALE_NUMERALS_BN ) ;
1748+ useLocaleNumeralDefinition ( 'č' , '"cs"' , NaN , 5 , LOCALE_NUMERALS_IE11_WIN7_8 ) ;
1749+ useLocaleNumeralDefinition ( 'μ' , '"el"' , NaN , 0 , LOCALE_NUMERALS_IE11_WIN7_8 ) ;
1750+ useLocaleNumeralDefinition ( 'η' , '"el"' , NaN , 1 , LOCALE_NUMERALS_IE11_WIN7_8 ) ;
1751+ useLocaleNumeralDefinition ( 'α' , '"el"' , NaN , 3 , LOCALE_NUMERALS_IE11_WIN7_8 ) ;
1752+ useLocaleNumeralDefinition ( 'ρ' , '"el"' , NaN , 4 , LOCALE_NUMERALS_IE11_WIN7_8 ) ;
1753+ useLocaleNumeralDefinition ( 'ι' , '"el"' , NaN , 5 , LOCALE_NUMERALS_IE11_WIN7_8 ) ;
1754+ useLocaleNumeralDefinition ( 'θ' , '"el"' , NaN , 6 , LOCALE_NUMERALS_IE11_WIN7_8 ) ;
1755+ useLocaleNumeralDefinition ( 'ό' , '"el"' , NaN , 8 , LOCALE_NUMERALS_IE11_WIN7_8 ) ;
1756+ useLocaleNumeralDefinition ( 'ς' , '"el"' , NaN , 9 , LOCALE_NUMERALS_IE11_WIN7_8 ) ;
1757+ useLocaleNumeralDefinition ( 'Ά' , '"el"' , Infinity , 0 , LOCALE_NUMERALS_IE11_WIN7_8 ) ;
1758+ useLocaleNumeralDefinition ( 'π' , '"el"' , Infinity , 1 , LOCALE_NUMERALS_IE11_WIN7_8 ) ;
1759+ useLocaleNumeralDefinition ( 'ε' , '"el"' , Infinity , 2 , LOCALE_NUMERALS_IE11_WIN7_8 ) ;
1760+ useLocaleNumeralDefinition ( 'ο' , '"el"' , Infinity , 5 , LOCALE_NUMERALS_IE11_WIN7_8 ) ;
17291761 useLocaleNumeralDigitDefinitions ( '"fa"' , 0x06f0 ) ;
17301762 useLocaleNumeralDefinition ( '٬' , '"fa"' , 1000 , 1 ) ;
17311763 useLocaleNumeralDefinition ( 'ن' , '"fa"' , NaN , 0 , LOCALE_NUMERALS_EXT ) ;
17321764 useLocaleNumeralDefinition ( 'ا' , '"fa"' , NaN , 1 , LOCALE_NUMERALS_EXT ) ;
17331765 useLocaleNumeralDefinition ( 'ع' , '"fa"' , NaN , 2 , LOCALE_NUMERALS_EXT ) ;
17341766 useLocaleNumeralDefinition ( 'د' , '"fa"' , NaN , 3 , LOCALE_NUMERALS_EXT ) ;
1767+ useLocaleNumeralDefinition ( 'ש' , 'LOCALE_HE' , - Infinity , 7 , LOCALE_NUMERALS_IE11_WIN7_8 ) ;
1768+ useLocaleNumeralDefinition ( 'י' , 'LOCALE_HE' , Infinity , 1 , LOCALE_NUMERALS_IE11_WIN7_8 ) ;
1769+ useLocaleNumeralDefinition ( 'נ' , 'LOCALE_HE' , Infinity , 2 , LOCALE_NUMERALS_IE11_WIN7_8 ) ;
1770+ useLocaleNumeralDefinition ( 'ו' , 'LOCALE_HE' , Infinity , 4 , LOCALE_NUMERALS_IE11_WIN7_8 ) ;
1771+ useLocaleNumeralDefinition ( 'ף' , 'LOCALE_HE' , Infinity , 5 , LOCALE_NUMERALS_IE11_WIN7_8 ) ;
1772+ useLocaleNumeralDefinition ( 'ח' , 'LOCALE_HE' , Infinity , 7 , LOCALE_NUMERALS_IE11_WIN7_8 ) ;
1773+ useLocaleNumeralDefinition ( 'ב' , 'LOCALE_HE' , Infinity , 10 , LOCALE_NUMERALS_IE11_WIN7_8 ) ;
1774+ useLocaleNumeralDefinition ( 'ל' , 'LOCALE_HE' , NaN , 0 , LOCALE_NUMERALS_IE11_WIN7_8 ) ;
1775+ useLocaleNumeralDefinition ( 'א' , 'LOCALE_HE' , NaN , 1 , LOCALE_NUMERALS_IE11_WIN7_8 ) ;
1776+ useLocaleNumeralDefinition ( 'מ' , 'LOCALE_HE' , NaN , 3 , LOCALE_NUMERALS_IE11_WIN7_8 ) ;
1777+ useLocaleNumeralDefinition ( 'ס' , 'LOCALE_HE' , NaN , 4 , LOCALE_NUMERALS_IE11_WIN7_8 ) ;
1778+ useLocaleNumeralDefinition ( 'פ' , 'LOCALE_HE' , NaN , 5 , LOCALE_NUMERALS_IE11_WIN7_8 ) ;
1779+ useLocaleNumeralDefinition ( 'ר' , 'LOCALE_HE' , NaN , 6 , LOCALE_NUMERALS_IE11_WIN7_8 ) ;
1780+ useLocaleNumeralDefinition ( '非' , '"ja"' , NaN , 5 , LOCALE_NUMERALS_IE11_WIN7_8 ) ;
1781+ useLocaleNumeralDefinition ( '数' , '"ja"' , NaN , 6 , LOCALE_NUMERALS_IE11_WIN7_8 ) ;
1782+ useLocaleNumeralDefinition ( '値' , '"ja"' , NaN , 7 , LOCALE_NUMERALS_IE11_WIN7_8 ) ;
1783+ useLocaleNumeralDefinition ( 'ė' , '"lt"' , Infinity , 7 , LOCALE_NUMERALS_IE11_WIN7_8 ) ;
1784+ useLocaleNumeralDefinition ( 'ī' , '"lv"' , Infinity , 6 , LOCALE_NUMERALS_IE11_WIN7 ) ;
1785+ useLocaleNumeralDefinition ( 'ń' , '"pl"' , Infinity , 7 , LOCALE_NUMERALS_IE11_WIN7_8 ) ;
1786+ useLocaleNumeralDefinition ( 'ś' , '"pl"' , Infinity , 13 , LOCALE_NUMERALS_IE11_WIN7_8 ) ;
1787+ useLocaleNumeralDefinition ( 'ć' , '"pl"' , Infinity , 14 , LOCALE_NUMERALS_IE11_WIN7_8 ) ;
1788+ useLocaleNumeralDefinition ( 'ą' , '"pl"' , NaN , 14 , LOCALE_NUMERALS_IE11_WIN7_8 ) ;
17351789 useLocaleNumeralDefinition ( 'н' , '"ru"' , NaN , 0 , LOCALE_NUMERALS_EXT ) ;
17361790 useLocaleNumeralDefinition ( 'е' , '"ru"' , NaN , 1 , LOCALE_NUMERALS_EXT ) ;
17371791 useLocaleNumeralDefinition ( 'ч' , '"ru"' , NaN , 3 , LOCALE_NUMERALS_EXT ) ;
17381792 useLocaleNumeralDefinition ( 'и' , '"ru"' , NaN , 4 , LOCALE_NUMERALS_EXT ) ;
17391793 useLocaleNumeralDefinition ( 'с' , '"ru"' , NaN , 5 , LOCALE_NUMERALS_EXT ) ;
17401794 useLocaleNumeralDefinition ( 'л' , '"ru"' , NaN , 6 , LOCALE_NUMERALS_EXT ) ;
17411795 useLocaleNumeralDefinition ( 'о' , '"ru"' , NaN , 7 , LOCALE_NUMERALS_EXT ) ;
1796+ useLocaleNumeralDefinition ( 'б' , '"ru"' , Infinity , 0 , LOCALE_NUMERALS_IE11_WIN7 ) ;
1797+ useLocaleNumeralDefinition ( 'е' , '"ru"' , Infinity , 1 , LOCALE_NUMERALS_IE11_WIN7 ) ;
1798+ useLocaleNumeralDefinition ( 'с' , '"ru"' , Infinity , 2 , LOCALE_NUMERALS_IE11_WIN7 ) ;
1799+ useLocaleNumeralDefinition ( 'к' , '"ru"' , Infinity , 3 , LOCALE_NUMERALS_IE11_WIN7 ) ;
1800+ useLocaleNumeralDefinition ( 'н' , '"ru"' , Infinity , 5 , LOCALE_NUMERALS_IE11_WIN7 ) ;
1801+ useLocaleNumeralDefinition ( 'ч' , '"ru"' , Infinity , 7 , LOCALE_NUMERALS_IE11_WIN7 ) ;
1802+ useLocaleNumeralDefinition ( 'о' , '"ru"' , Infinity , 9 , LOCALE_NUMERALS_IE11_WIN7 ) ;
1803+ useLocaleNumeralDefinition ( 'т' , '"ru"' , Infinity , 11 , LOCALE_NUMERALS_IE11_WIN7 ) ;
1804+ useLocaleNumeralDefinition ( 'ь' , '"ru"' , Infinity , 12 , LOCALE_NUMERALS_IE11_WIN7 ) ;
1805+ useLocaleNumeralDefinition ( '正' , '"zh"' , Infinity , 0 , LOCALE_NUMERALS_IE11_WIN7_8 ) ;
1806+ useLocaleNumeralDefinition ( '字' , '"zh-cn"' , NaN , 2 , LOCALE_NUMERALS_IE11_WIN7_8 ) ;
17421807}
17431808) ( ) ;
0 commit comments