summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorst398c <st398c@research.att.com>2019-07-10 14:14:39 -0400
committerst398c <st398c@research.att.com>2019-07-10 14:29:42 -0400
commit7d7b74d4d92e7fa45471fb0e8678837f71da3d02 (patch)
treebe75fe5dc393aebb2a0da7591d684e746212c98b
parent5837a6d32c065cc80a95a4bee6b71008304ef312 (diff)
Blackduck scan fixes
Issue-ID: PORTAL-631 Change-Id: I240f3656de2de2d3540f0fc1d615c461beab14c5 Signed-off-by: st398c <st398c@research.att.com>
-rw-r--r--ecomp-sdk/epsdk-app-common/pom.xml2
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-animate.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-animate.js)660
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-animate.min.js55
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-animate.min.js.map8
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-aria.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-aria.js)2
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-aria.min.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-aria.min.js)2
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-aria.min.js.map (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-aria.min.js.map)0
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-cookies.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-cookies.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-cookies.min.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-cookies.min.js)2
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-cookies.min.js.map (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-cookies.min.js.map)2
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-csp.css (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-csp.css)0
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-loader.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-loader.js)40
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-loader.min.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-loader.min.js)4
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-loader.min.js.map (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-loader.min.js.map)2
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-message-format.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-message-format.js)2
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-message-format.min.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-message-format.min.js)2
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-message-format.min.js.map (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-message-format.min.js.map)0
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-messages.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-messages.js)84
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-messages.min.js12
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-messages.min.js.map8
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-mocks.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-mocks.js)105
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-resource.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-resource.js)24
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-resource.min.js14
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-resource.min.js.map8
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-route.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-route.js)22
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-route.min.js15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-route.min.js.map8
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-sanitize.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-sanitize.js)2
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-sanitize.min.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-sanitize.min.js)2
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-sanitize.min.js.map (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-sanitize.min.js.map)0
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-scenario.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-scenario.js)1821
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-touch.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-touch.js)5
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-touch.min.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-touch.min.js)2
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-touch.min.js.map (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-touch.min.js.map)2
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular.js)1821
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular.min.js301
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular.min.js.map8
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/errors.json1
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_aa-dj.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_aa-dj.js)0
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_aa-er.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_aa-er.js)0
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_aa-et.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_aa-et.js)0
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_aa.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_aa.js)0
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_af-na.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_af-na.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_af-za.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_af-za.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_af.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_af.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_agq-cm.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_agq-cm.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_agq.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_agq.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ak-gh.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ak-gh.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ak.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ak.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_am-et.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_am-et.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_am.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_am.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-001.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-001.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-ae.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-ae.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-bh.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-bh.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-dj.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-dj.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-dz.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-dz.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-eg.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-eg.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-eh.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-eh.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-er.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-er.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-il.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-il.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-iq.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-iq.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-jo.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-jo.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-km.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-km.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-kw.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-kw.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-lb.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-lb.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-ly.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-ly.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-ma.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-ma.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-mr.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-mr.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-om.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-om.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-ps.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-ps.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-qa.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-qa.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-sa.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-sa.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-sd.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-sd.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-so.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-so.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-ss.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-ss.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-sy.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-sy.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-td.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-td.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-tn.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-tn.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-ye.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-ye.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_as-in.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_as-in.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_as.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_as.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_asa-tz.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_asa-tz.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_asa.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_asa.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ast-es.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ast-es.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ast.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ast.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_az-cyrl-az.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_az-cyrl-az.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_az-cyrl.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_az-cyrl.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_az-latn-az.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_az-latn-az.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_az-latn.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_az-latn.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_az.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_az.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bas-cm.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bas-cm.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bas.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bas.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_be-by.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_be-by.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_be.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_be.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bem-zm.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bem-zm.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bem.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bem.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bez-tz.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bez-tz.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bez.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bez.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bg-bg.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bg-bg.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bg.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bg.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bm-latn-ml.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bm-latn-ml.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bm-latn.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bm-latn.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bm-ml.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bm-ml.js)0
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bm.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bm.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bn-bd.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bn-bd.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bn-in.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bn-in.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bn.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bn.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bo-cn.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bo-cn.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bo-in.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bo-in.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bo.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bo.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_br-fr.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_br-fr.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_br.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_br.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_brx-in.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_brx-in.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_brx.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_brx.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bs-cyrl-ba.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bs-cyrl-ba.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bs-cyrl.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bs-cyrl.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bs-latn-ba.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bs-latn-ba.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bs-latn.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bs-latn.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bs.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bs.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_byn-er.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_byn-er.js)0
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_byn.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_byn.js)0
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ca-ad.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ca-ad.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ca-es-valencia.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ca-es-valencia.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ca-es.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ca-es.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ca-fr.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ca-fr.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ca-it.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ca-it.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ca.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ca.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_cgg-ug.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_cgg-ug.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_cgg.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_cgg.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_chr-us.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_chr-us.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_chr.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_chr.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ckb-arab-iq.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ckb-arab-iq.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ckb-arab-ir.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ckb-arab-ir.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ckb-arab.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ckb-arab.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ckb-iq.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ckb-iq.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ckb-ir.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ckb-ir.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ckb-latn-iq.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ckb-latn-iq.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ckb-latn.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ckb-latn.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ckb.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ckb.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_cs-cz.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_cs-cz.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_cs.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_cs.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_cy-gb.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_cy-gb.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_cy.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_cy.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_da-dk.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_da-dk.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_da-gl.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_da-gl.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_da.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_da.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_dav-ke.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_dav-ke.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_dav.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_dav.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_de-at.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_de-at.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_de-be.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_de-be.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_de-ch.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_de-ch.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_de-de.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_de-de.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_de-li.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_de-li.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_de-lu.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_de-lu.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_de.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_de.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_dje-ne.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_dje-ne.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_dje.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_dje.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_dsb-de.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_dsb-de.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_dsb.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_dsb.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_dua-cm.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_dua-cm.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_dua.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_dua.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_dyo-sn.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_dyo-sn.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_dyo.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_dyo.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_dz-bt.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_dz-bt.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_dz.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_dz.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ebu-ke.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ebu-ke.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ebu.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ebu.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ee-gh.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ee-gh.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ee-tg.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ee-tg.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ee.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ee.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_el-cy.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_el-cy.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_el-gr.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_el-gr.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_el.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_el.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-001.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-001.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-150.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-150.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-ag.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-ag.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-ai.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-ai.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-as.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-as.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-au.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-au.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-bb.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-bb.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-be.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-be.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-bm.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-bm.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-bs.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-bs.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-bw.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-bw.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-bz.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-bz.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-ca.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-ca.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-cc.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-cc.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-ck.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-ck.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-cm.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-cm.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-cx.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-cx.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-dg.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-dg.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-dm.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-dm.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-er.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-er.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-fj.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-fj.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-fk.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-fk.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-fm.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-fm.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-gb.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-gb.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-gd.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-gd.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-gg.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-gg.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-gh.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-gh.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-gi.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-gi.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-gm.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-gm.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-gu.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-gu.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-gy.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-gy.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-hk.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-hk.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-ie.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-ie.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-im.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-im.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-in.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-in.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-io.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-io.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-iso.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-iso.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-je.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-je.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-jm.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-jm.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-ke.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-ke.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-ki.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-ki.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-kn.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-kn.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-ky.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-ky.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-lc.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-lc.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-lr.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-lr.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-ls.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-ls.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-mg.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-mg.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-mh.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-mh.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-mo.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-mo.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-mp.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-mp.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-ms.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-ms.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-mt.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-mt.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-mu.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-mu.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-mw.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-mw.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-my.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-my.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-na.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-na.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-nf.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-nf.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-ng.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-ng.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-nr.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-nr.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-nu.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-nu.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-nz.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-nz.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-pg.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-pg.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-ph.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-ph.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-pk.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-pk.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-pn.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-pn.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-pr.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-pr.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-pw.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-pw.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-rw.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-rw.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-sb.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-sb.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-sc.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-sc.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-sd.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-sd.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-sg.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-sg.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-sh.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-sh.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-sl.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-sl.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-ss.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-ss.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-sx.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-sx.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-sz.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-sz.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-tc.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-tc.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-tk.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-tk.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-to.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-to.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-tt.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-tt.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-tv.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-tv.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-tz.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-tz.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-ug.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-ug.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-um.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-um.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-us.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-us.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-vc.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-vc.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-vg.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-vg.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-vi.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-vi.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-vu.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-vu.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-ws.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-ws.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-za.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-za.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-zm.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-zm.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-zw.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-zw.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_eo-001.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_eo-001.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_eo.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_eo.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-419.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-419.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-ar.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-ar.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-bo.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-bo.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-cl.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-cl.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-co.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-co.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-cr.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-cr.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-cu.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-cu.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-do.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-do.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-ea.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-ea.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-ec.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-ec.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-es.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-es.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-gq.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-gq.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-gt.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-gt.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-hn.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-hn.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-ic.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-ic.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-mx.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-mx.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-ni.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-ni.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-pa.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-pa.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-pe.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-pe.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-ph.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-ph.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-pr.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-pr.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-py.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-py.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-sv.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-sv.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-us.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-us.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-uy.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-uy.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-ve.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-ve.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_et-ee.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_et-ee.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_et.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_et.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_eu-es.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_eu-es.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_eu.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_eu.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ewo-cm.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ewo-cm.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ewo.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ewo.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fa-af.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fa-af.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fa-ir.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fa-ir.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fa.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fa.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ff-cm.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ff-cm.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ff-gn.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ff-gn.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ff-mr.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ff-mr.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ff-sn.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ff-sn.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ff.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ff.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fi-fi.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fi-fi.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fi.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fi.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fil-ph.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fil-ph.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fil.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fil.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fo-fo.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fo-fo.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fo.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fo.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-be.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-be.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-bf.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-bf.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-bi.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-bi.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-bj.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-bj.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-bl.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-bl.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-ca.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-ca.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-cd.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-cd.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-cf.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-cf.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-cg.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-cg.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-ch.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-ch.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-ci.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-ci.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-cm.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-cm.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-dj.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-dj.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-dz.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-dz.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-fr.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-fr.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-ga.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-ga.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-gf.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-gf.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-gn.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-gn.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-gp.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-gp.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-gq.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-gq.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-ht.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-ht.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-km.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-km.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-lu.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-lu.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-ma.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-ma.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-mc.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-mc.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-mf.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-mf.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-mg.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-mg.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-ml.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-ml.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-mq.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-mq.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-mr.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-mr.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-mu.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-mu.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-nc.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-nc.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-ne.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-ne.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-pf.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-pf.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-pm.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-pm.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-re.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-re.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-rw.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-rw.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-sc.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-sc.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-sn.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-sn.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-sy.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-sy.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-td.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-td.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-tg.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-tg.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-tn.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-tn.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-vu.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-vu.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-wf.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-wf.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-yt.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-yt.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fur-it.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fur-it.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fur.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fur.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fy-nl.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fy-nl.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fy.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fy.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ga-ie.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ga-ie.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ga.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ga.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_gd-gb.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_gd-gb.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_gd.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_gd.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_gl-es.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_gl-es.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_gl.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_gl.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_gsw-ch.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_gsw-ch.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_gsw-fr.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_gsw-fr.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_gsw-li.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_gsw-li.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_gsw.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_gsw.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_gu-in.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_gu-in.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_gu.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_gu.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_guz-ke.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_guz-ke.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_guz.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_guz.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_gv-im.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_gv-im.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_gv.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_gv.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ha-latn-gh.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ha-latn-gh.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ha-latn-ne.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ha-latn-ne.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ha-latn-ng.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ha-latn-ng.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ha-latn.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ha-latn.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ha.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ha.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_haw-us.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_haw-us.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_haw.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_haw.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_he-il.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_he-il.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_he.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_he.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_hi-in.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_hi-in.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_hi.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_hi.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_hr-ba.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_hr-ba.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_hr-hr.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_hr-hr.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_hr.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_hr.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_hsb-de.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_hsb-de.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_hsb.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_hsb.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_hu-hu.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_hu-hu.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_hu.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_hu.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_hy-am.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_hy-am.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_hy.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_hy.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ia-fr.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ia-fr.js)0
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ia.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ia.js)0
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_id-id.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_id-id.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_id.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_id.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ig-ng.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ig-ng.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ig.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ig.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ii-cn.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ii-cn.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ii.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ii.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_in.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_in.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_is-is.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_is-is.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_is.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_is.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_it-ch.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_it-ch.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_it-it.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_it-it.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_it-sm.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_it-sm.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_it.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_it.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_iw.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_iw.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ja-jp.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ja-jp.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ja.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ja.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_jgo-cm.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_jgo-cm.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_jgo.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_jgo.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_jmc-tz.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_jmc-tz.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_jmc.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_jmc.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ka-ge.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ka-ge.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ka.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ka.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kab-dz.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kab-dz.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kab.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kab.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kam-ke.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kam-ke.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kam.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kam.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kde-tz.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kde-tz.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kde.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kde.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kea-cv.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kea-cv.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kea.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kea.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_khq-ml.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_khq-ml.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_khq.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_khq.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ki-ke.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ki-ke.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ki.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ki.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kk-cyrl-kz.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kk-cyrl-kz.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kk-cyrl.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kk-cyrl.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kk.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kk.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kkj-cm.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kkj-cm.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kkj.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kkj.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kl-gl.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kl-gl.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kl.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kl.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kln-ke.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kln-ke.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kln.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kln.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_km-kh.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_km-kh.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_km.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_km.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kn-in.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kn-in.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kn.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kn.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ko-kp.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ko-kp.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ko-kr.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ko-kr.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ko.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ko.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kok-in.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kok-in.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kok.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kok.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ks-arab-in.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ks-arab-in.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ks-arab.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ks-arab.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ks.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ks.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ksb-tz.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ksb-tz.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ksb.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ksb.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ksf-cm.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ksf-cm.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ksf.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ksf.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ksh-de.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ksh-de.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ksh.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ksh.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kw-gb.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kw-gb.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kw.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kw.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ky-cyrl-kg.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ky-cyrl-kg.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ky-cyrl.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ky-cyrl.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ky.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ky.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_lag-tz.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_lag-tz.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_lag.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_lag.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_lb-lu.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_lb-lu.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_lb.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_lb.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_lg-ug.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_lg-ug.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_lg.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_lg.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_lkt-us.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_lkt-us.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_lkt.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_lkt.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ln-ao.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ln-ao.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ln-cd.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ln-cd.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ln-cf.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ln-cf.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ln-cg.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ln-cg.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ln.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ln.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_lo-la.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_lo-la.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_lo.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_lo.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_lt-lt.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_lt-lt.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_lt.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_lt.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_lu-cd.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_lu-cd.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_lu.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_lu.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_luo-ke.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_luo-ke.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_luo.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_luo.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_luy-ke.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_luy-ke.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_luy.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_luy.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_lv-lv.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_lv-lv.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_lv.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_lv.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mas-ke.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mas-ke.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mas-tz.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mas-tz.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mas.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mas.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mer-ke.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mer-ke.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mer.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mer.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mfe-mu.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mfe-mu.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mfe.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mfe.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mg-mg.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mg-mg.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mg.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mg.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mgh-mz.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mgh-mz.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mgh.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mgh.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mgo-cm.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mgo-cm.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mgo.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mgo.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mk-mk.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mk-mk.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mk.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mk.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ml-in.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ml-in.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ml.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ml.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mn-cyrl-mn.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mn-cyrl-mn.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mn-cyrl.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mn-cyrl.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mn.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mn.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mr-in.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mr-in.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mr.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mr.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ms-latn-bn.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ms-latn-bn.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ms-latn-my.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ms-latn-my.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ms-latn-sg.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ms-latn-sg.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ms-latn.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ms-latn.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ms.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ms.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mt-mt.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mt-mt.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mt.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mt.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mua-cm.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mua-cm.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mua.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mua.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_my-mm.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_my-mm.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_my.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_my.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_naq-na.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_naq-na.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_naq.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_naq.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nb-no.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nb-no.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nb-sj.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nb-sj.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nb.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nb.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nd-zw.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nd-zw.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nd.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nd.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ne-in.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ne-in.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ne-np.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ne-np.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ne.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ne.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nl-aw.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nl-aw.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nl-be.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nl-be.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nl-bq.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nl-bq.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nl-cw.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nl-cw.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nl-nl.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nl-nl.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nl-sr.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nl-sr.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nl-sx.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nl-sx.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nl.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nl.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nmg-cm.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nmg-cm.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nmg.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nmg.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nn-no.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nn-no.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nn.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nn.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nnh-cm.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nnh-cm.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nnh.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nnh.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_no-no.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_no-no.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_no.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_no.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nr-za.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nr-za.js)0
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nr.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nr.js)0
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nso-za.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nso-za.js)0
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nso.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nso.js)0
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nus-sd.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nus-sd.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nus.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nus.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nyn-ug.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nyn-ug.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nyn.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nyn.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_om-et.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_om-et.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_om-ke.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_om-ke.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_om.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_om.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_or-in.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_or-in.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_or.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_or.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_os-ge.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_os-ge.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_os-ru.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_os-ru.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_os.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_os.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_pa-arab-pk.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_pa-arab-pk.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_pa-arab.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_pa-arab.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_pa-guru-in.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_pa-guru-in.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_pa-guru.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_pa-guru.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_pa.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_pa.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_pl-pl.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_pl-pl.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_pl.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_pl.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ps-af.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ps-af.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ps.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ps.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_pt-ao.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_pt-ao.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_pt-br.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_pt-br.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_pt-cv.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_pt-cv.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_pt-gw.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_pt-gw.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_pt-mo.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_pt-mo.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_pt-mz.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_pt-mz.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_pt-pt.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_pt-pt.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_pt-st.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_pt-st.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_pt-tl.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_pt-tl.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_pt.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_pt.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_qu-bo.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_qu-bo.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_qu-ec.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_qu-ec.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_qu-pe.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_qu-pe.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_qu.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_qu.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_rm-ch.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_rm-ch.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_rm.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_rm.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_rn-bi.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_rn-bi.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_rn.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_rn.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ro-md.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ro-md.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ro-ro.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ro-ro.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ro.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ro.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_rof-tz.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_rof-tz.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_rof.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_rof.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ru-by.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ru-by.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ru-kg.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ru-kg.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ru-kz.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ru-kz.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ru-md.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ru-md.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ru-ru.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ru-ru.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ru-ua.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ru-ua.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ru.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ru.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_rw-rw.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_rw-rw.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_rw.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_rw.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_rwk-tz.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_rwk-tz.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_rwk.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_rwk.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sah-ru.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sah-ru.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sah.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sah.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_saq-ke.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_saq-ke.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_saq.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_saq.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sbp-tz.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sbp-tz.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sbp.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sbp.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_se-fi.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_se-fi.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_se-no.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_se-no.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_se-se.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_se-se.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_se.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_se.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_seh-mz.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_seh-mz.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_seh.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_seh.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ses-ml.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ses-ml.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ses.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ses.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sg-cf.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sg-cf.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sg.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sg.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_shi-latn-ma.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_shi-latn-ma.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_shi-latn.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_shi-latn.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_shi-tfng-ma.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_shi-tfng-ma.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_shi-tfng.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_shi-tfng.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_shi.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_shi.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_si-lk.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_si-lk.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_si.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_si.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sk-sk.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sk-sk.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sk.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sk.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sl-si.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sl-si.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sl.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sl.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_smn-fi.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_smn-fi.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_smn.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_smn.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sn-zw.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sn-zw.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sn.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sn.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_so-dj.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_so-dj.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_so-et.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_so-et.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_so-ke.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_so-ke.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_so-so.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_so-so.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_so.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_so.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sq-al.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sq-al.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sq-mk.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sq-mk.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sq-xk.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sq-xk.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sq.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sq.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sr-cyrl-ba.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sr-cyrl-ba.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sr-cyrl-me.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sr-cyrl-me.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sr-cyrl-rs.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sr-cyrl-rs.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sr-cyrl-xk.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sr-cyrl-xk.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sr-cyrl.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sr-cyrl.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sr-latn-ba.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sr-latn-ba.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sr-latn-me.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sr-latn-me.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sr-latn-rs.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sr-latn-rs.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sr-latn-xk.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sr-latn-xk.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sr-latn.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sr-latn.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sr.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sr.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ss-sz.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ss-sz.js)0
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ss-za.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ss-za.js)0
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ss.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ss.js)0
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ssy-er.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ssy-er.js)0
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ssy.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ssy.js)0
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_st-ls.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_st-ls.js)0
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_st-za.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_st-za.js)0
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_st.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_st.js)0
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sv-ax.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sv-ax.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sv-fi.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sv-fi.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sv-se.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sv-se.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sv.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sv.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sw-cd.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sw-cd.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sw-ke.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sw-ke.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sw-tz.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sw-tz.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sw-ug.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sw-ug.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sw.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sw.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_swc-cd.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_swc-cd.js)0
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_swc.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_swc.js)0
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ta-in.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ta-in.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ta-lk.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ta-lk.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ta-my.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ta-my.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ta-sg.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ta-sg.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ta.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ta.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_te-in.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_te-in.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_te.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_te.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_teo-ke.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_teo-ke.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_teo-ug.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_teo-ug.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_teo.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_teo.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_tg-cyrl-tj.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_tg-cyrl-tj.js)0
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_tg-cyrl.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_tg-cyrl.js)0
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_tg.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_tg.js)0
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_th-th.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_th-th.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_th.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_th.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ti-er.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ti-er.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ti-et.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ti-et.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ti.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ti.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_tig-er.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_tig-er.js)0
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_tig.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_tig.js)0
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_tl.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_tl.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_tn-bw.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_tn-bw.js)0
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_tn-za.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_tn-za.js)0
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_tn.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_tn.js)0
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_to-to.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_to-to.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_to.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_to.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_tr-cy.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_tr-cy.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_tr-tr.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_tr-tr.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_tr.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_tr.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ts-za.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ts-za.js)0
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ts.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ts.js)0
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_twq-ne.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_twq-ne.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_twq.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_twq.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_tzm-latn-ma.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_tzm-latn-ma.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_tzm-latn.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_tzm-latn.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_tzm.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_tzm.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ug-arab-cn.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ug-arab-cn.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ug-arab.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ug-arab.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ug.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ug.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_uk-ua.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_uk-ua.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_uk.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_uk.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ur-in.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ur-in.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ur-pk.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ur-pk.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ur.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ur.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_uz-arab-af.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_uz-arab-af.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_uz-arab.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_uz-arab.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_uz-cyrl-uz.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_uz-cyrl-uz.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_uz-cyrl.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_uz-cyrl.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_uz-latn-uz.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_uz-latn-uz.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_uz-latn.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_uz-latn.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_uz.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_uz.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_vai-latn-lr.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_vai-latn-lr.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_vai-latn.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_vai-latn.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_vai-vaii-lr.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_vai-vaii-lr.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_vai-vaii.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_vai-vaii.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_vai.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_vai.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ve-za.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ve-za.js)0
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ve.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ve.js)0
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_vi-vn.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_vi-vn.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_vi.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_vi.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_vo-001.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_vo-001.js)0
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_vo.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_vo.js)0
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_vun-tz.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_vun-tz.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_vun.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_vun.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_wae-ch.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_wae-ch.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_wae.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_wae.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_wal-et.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_wal-et.js)0
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_wal.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_wal.js)0
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_xh-za.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_xh-za.js)0
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_xh.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_xh.js)0
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_xog-ug.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_xog-ug.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_xog.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_xog.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_yav-cm.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_yav-cm.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_yav.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_yav.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_yi-001.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_yi-001.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_yi.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_yi.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_yo-bj.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_yo-bj.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_yo-ng.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_yo-ng.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_yo.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_yo.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_zgh-ma.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_zgh-ma.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_zgh.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_zgh.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_zh-cn.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_zh-cn.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_zh-hans-cn.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_zh-hans-cn.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_zh-hans-hk.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_zh-hans-hk.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_zh-hans-mo.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_zh-hans-mo.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_zh-hans-sg.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_zh-hans-sg.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_zh-hans.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_zh-hans.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_zh-hant-hk.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_zh-hant-hk.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_zh-hant-mo.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_zh-hant-mo.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_zh-hant-tw.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_zh-hant-tw.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_zh-hant.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_zh-hant.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_zh-hk.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_zh-hk.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_zh-tw.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_zh-tw.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_zh.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_zh.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_zu-za.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_zu-za.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_zu.js (renamed from ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_zu.js)15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/version.json1
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/version.txt1
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-animate.min.js56
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-animate.min.js.map8
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-messages.min.js12
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-messages.min.js.map8
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-resource.min.js14
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-resource.min.js.map8
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-route.min.js15
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-route.min.js.map8
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular.min.js295
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular.min.js.map8
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/errors.json1
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/version.json1
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/version.txt1
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/notebook-integration/scripts/dependency/angular.js11827
-rw-r--r--ecomp-sdk/epsdk-core/pom.xml8
-rw-r--r--ecomp-sdk/epsdk-core/src/main/java/org/onap/portalsdk/core/controller/FusionBaseController.java1
-rw-r--r--ecomp-sdk/epsdk-fw/src/test/java/org/onap/portalsdk/core/onboarding/util/AuthUtilTest.java106
-rw-r--r--ecomp-sdk/epsdk-music/pom.xml2
-rw-r--r--ecomp-sdk/pom.xml2
803 files changed, 22248 insertions, 5743 deletions
diff --git a/ecomp-sdk/epsdk-app-common/pom.xml b/ecomp-sdk/epsdk-app-common/pom.xml
index 82c3aa06..0d55e3e3 100644
--- a/ecomp-sdk/epsdk-app-common/pom.xml
+++ b/ecomp-sdk/epsdk-app-common/pom.xml
@@ -341,7 +341,7 @@
<dependency>
<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload</artifactId>
- <version>1.3.3</version>
+ <version>1.4</version>
</dependency>
<dependency>
<groupId>commons-beanutils</groupId>
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-animate.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-animate.js
index 30610044..97f0cbdd 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-animate.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-animate.js
@@ -1,5 +1,5 @@
/**
- * @license AngularJS v1.4.8
+ * @license AngularJS v1.4.13
* (c) 2010-2015 Google, Inc. http://angularjs.org
* License: MIT
*/
@@ -7,6 +7,7 @@
/* jshint ignore:start */
var noop = angular.noop;
+var copy = angular.copy;
var extend = angular.extend;
var jqLite = angular.element;
var forEach = angular.forEach;
@@ -25,6 +26,7 @@ var ADD_CLASS_SUFFIX = '-add';
var REMOVE_CLASS_SUFFIX = '-remove';
var EVENT_CLASS_PREFIX = 'ng-';
var ACTIVE_CLASS_SUFFIX = '-active';
+var PREPARE_CLASS_SUFFIX = '-prepare';
var NG_ANIMATE_CLASSNAME = 'ng-animate';
var NG_ANIMATE_CHILDREN_DATA = '$$ngAnimateChildren';
@@ -76,6 +78,7 @@ var isPromiseLike = function(p) {
return p && p.then ? true : false;
};
+var ngMinErr = angular.$$minErr('ng');
function assertArg(arg, name, reason) {
if (!arg) {
throw ngMinErr('areq', "Argument '{0}' is {1}", (name || '?'), (reason || "required"));
@@ -129,7 +132,7 @@ function stripCommentsFromElement(element) {
if (element instanceof jqLite) {
switch (element.length) {
case 0:
- return [];
+ return element;
break;
case 1:
@@ -220,7 +223,10 @@ function applyAnimationToStyles(element, options) {
}
}
-function mergeAnimationOptions(element, target, newOptions) {
+function mergeAnimationDetails(element, oldAnimation, newAnimation) {
+ var target = oldAnimation.options || {};
+ var newOptions = newAnimation.options || {};
+
var toAdd = (target.addClass || '') + ' ' + (newOptions.addClass || '');
var toRemove = (target.removeClass || '') + ' ' + (newOptions.removeClass || '');
var classes = resolveElementClasses(element.attr('class'), toAdd, toRemove);
@@ -252,6 +258,9 @@ function mergeAnimationOptions(element, target, newOptions) {
target.removeClass = null;
}
+ oldAnimation.addClass = target.addClass;
+ oldAnimation.removeClass = target.removeClass;
+
return target;
}
@@ -422,16 +431,101 @@ var $$rAFSchedulerFactory = ['$$rAF', function($$rAF) {
}
}];
-var $$AnimateChildrenDirective = [function() {
- return function(scope, element, attrs) {
- var val = attrs.ngAnimateChildren;
- if (angular.isString(val) && val.length === 0) { //empty attribute
- element.data(NG_ANIMATE_CHILDREN_DATA, true);
- } else {
- attrs.$observe('ngAnimateChildren', function(value) {
+/**
+ * @ngdoc directive
+ * @name ngAnimateChildren
+ * @restrict AE
+ * @element ANY
+ *
+ * @description
+ *
+ * ngAnimateChildren allows you to specify that children of this element should animate even if any
+ * of the children's parents are currently animating. By default, when an element has an active `enter`, `leave`, or `move`
+ * (structural) animation, child elements that also have an active structural animation are not animated.
+ *
+ * Note that even if `ngAnimteChildren` is set, no child animations will run when the parent element is removed from the DOM (`leave` animation).
+ *
+ *
+ * @param {string} ngAnimateChildren If the value is empty, `true` or `on`,
+ * then child animations are allowed. If the value is `false`, child animations are not allowed.
+ *
+ * @example
+ * <example module="ngAnimateChildren" name="ngAnimateChildren" deps="angular-animate.js" animations="true">
+ <file name="index.html">
+ <div ng-controller="mainController as main">
+ <label>Show container? <input type="checkbox" ng-model="main.enterElement" /></label>
+ <label>Animate children? <input type="checkbox" ng-model="main.animateChildren" /></label>
+ <hr>
+ <div ng-animate-children="{{main.animateChildren}}">
+ <div ng-if="main.enterElement" class="container">
+ List of items:
+ <div ng-repeat="item in [0, 1, 2, 3]" class="item">Item {{item}}</div>
+ </div>
+ </div>
+ </div>
+ </file>
+ <file name="animations.css">
+
+ .container.ng-enter,
+ .container.ng-leave {
+ transition: all ease 1.5s;
+ }
+
+ .container.ng-enter,
+ .container.ng-leave-active {
+ opacity: 0;
+ }
+
+ .container.ng-leave,
+ .container.ng-enter-active {
+ opacity: 1;
+ }
+
+ .item {
+ background: firebrick;
+ color: #FFF;
+ margin-bottom: 10px;
+ }
+
+ .item.ng-enter,
+ .item.ng-leave {
+ transition: transform 1.5s ease;
+ }
+
+ .item.ng-enter {
+ transform: translateX(50px);
+ }
+
+ .item.ng-enter-active {
+ transform: translateX(0);
+ }
+ </file>
+ <file name="script.js">
+ angular.module('ngAnimateChildren', ['ngAnimate'])
+ .controller('mainController', function() {
+ this.animateChildren = false;
+ this.enterElement = false;
+ });
+ </file>
+ </example>
+ */
+var $$AnimateChildrenDirective = ['$interpolate', function($interpolate) {
+ return {
+ link: function(scope, element, attrs) {
+ var val = attrs.ngAnimateChildren;
+ if (angular.isString(val) && val.length === 0) { //empty attribute
+ element.data(NG_ANIMATE_CHILDREN_DATA, true);
+ } else {
+ // Interpolate and set the value, so that it is available to
+ // animations that run right after compilation
+ setData($interpolate(val)(scope));
+ attrs.$observe('ngAnimateChildren', setData);
+ }
+
+ function setData(value) {
value = value === 'on' || value === 'true';
element.data(NG_ANIMATE_CHILDREN_DATA, value);
- });
+ }
}
};
}];
@@ -788,9 +882,9 @@ var $AnimateCssProvider = ['$animateProvider', function($animateProvider) {
var gcsStaggerLookup = createLocalCacheLookup();
this.$get = ['$window', '$$jqLite', '$$AnimateRunner', '$timeout',
- '$$forceReflow', '$sniffer', '$$rAFScheduler', '$animate',
+ '$$forceReflow', '$sniffer', '$$rAFScheduler', '$$animateQueue',
function($window, $$jqLite, $$AnimateRunner, $timeout,
- $$forceReflow, $sniffer, $$rAFScheduler, $animate) {
+ $$forceReflow, $sniffer, $$rAFScheduler, $$animateQueue) {
var applyAnimationClasses = applyAnimationClassesFactory($$jqLite);
@@ -882,17 +976,24 @@ var $AnimateCssProvider = ['$animateProvider', function($animateProvider) {
return timings;
}
- return function init(element, options) {
+ return function init(element, initialOptions) {
+ // all of the animation functions should create
+ // a copy of the options data, however, if a
+ // parent service has already created a copy then
+ // we should stick to using that
+ var options = initialOptions || {};
+ if (!options.$$prepared) {
+ options = prepareAnimationOptions(copy(options));
+ }
+
var restoreStyles = {};
var node = getDomNode(element);
if (!node
|| !node.parentNode
- || !$animate.enabled()) {
+ || !$$animateQueue.enabled()) {
return closeAndReturnNoopAnimator();
}
- options = prepareAnimationOptions(options);
-
var temporaryStyles = [];
var classes = element.attr('class');
var styles = packageStyles(options);
@@ -905,6 +1006,8 @@ var $AnimateCssProvider = ['$animateProvider', function($animateProvider) {
var maxDelayTime;
var maxDuration;
var maxDurationTime;
+ var startTime;
+ var events = [];
if (options.duration === 0 || (!$sniffer.animations && !$sniffer.transitions)) {
return closeAndReturnNoopAnimator();
@@ -1058,7 +1161,12 @@ var $AnimateCssProvider = ['$animateProvider', function($animateProvider) {
}
if (options.delay != null) {
- var delayStyle = parseFloat(options.delay);
+ var delayStyle;
+ if (typeof options.delay !== "boolean") {
+ delayStyle = parseFloat(options.delay);
+ // number in options.delay means we have to recalculate the delay for the closing timeout
+ maxDelay = Math.max(delayStyle, 0);
+ }
if (flags.applyTransitionDelay) {
temporaryStyles.push(getCssDelayStyle(delayStyle));
@@ -1173,6 +1281,18 @@ var $AnimateCssProvider = ['$animateProvider', function($animateProvider) {
options.onDone();
}
+ if (events && events.length) {
+ // Remove the transitionend / animationend listener(s)
+ element.off(events.join(' '), onAnimationProgress);
+ }
+
+ //Cancel the fallback closing timeout and remove the timer data
+ var animationTimerData = element.data(ANIMATE_TIMER_KEY);
+ if (animationTimerData) {
+ $timeout.cancel(animationTimerData[0].timer);
+ element.removeData(ANIMATE_TIMER_KEY);
+ }
+
// if the preparation function fails then the promise is not setup
if (runner) {
runner.complete(!rejected);
@@ -1208,6 +1328,33 @@ var $AnimateCssProvider = ['$animateProvider', function($animateProvider) {
};
}
+ function onAnimationProgress(event) {
+ event.stopPropagation();
+ var ev = event.originalEvent || event;
+
+ // we now always use `Date.now()` due to the recent changes with
+ // event.timeStamp in Firefox, Webkit and Chrome (see #13494 for more info)
+ var timeStamp = ev.$manualTimeStamp || Date.now();
+
+ /* Firefox (or possibly just Gecko) likes to not round values up
+ * when a ms measurement is used for the animation */
+ var elapsedTime = parseFloat(ev.elapsedTime.toFixed(ELAPSED_TIME_MAX_DECIMAL_PLACES));
+
+ /* $manualTimeStamp is a mocked timeStamp value which is set
+ * within browserTrigger(). This is only here so that tests can
+ * mock animations properly. Real events fallback to event.timeStamp,
+ * or, if they don't, then a timeStamp is automatically created for them.
+ * We're checking to see if the timeStamp surpasses the expected delay,
+ * but we're using elapsedTime instead of the timeStamp on the 2nd
+ * pre-condition since animationPauseds sometimes close off early */
+ if (Math.max(timeStamp - startTime, 0) >= maxDelayTime && elapsedTime >= maxDuration) {
+ // we set this flag to ensure that if the transition is paused then, when resumed,
+ // the animation will automatically close itself since transitions cannot be paused.
+ animationCompleted = true;
+ close();
+ }
+ }
+
function start() {
if (animationClosed) return;
if (!node.parentNode) {
@@ -1215,8 +1362,6 @@ var $AnimateCssProvider = ['$animateProvider', function($animateProvider) {
return;
}
- var startTime, events = [];
-
// even though we only pause keyframe animations here the pause flag
// will still happen when transitions are used. Only the transition will
// not be paused since that is not possible. If the animation ends when
@@ -1357,7 +1502,10 @@ var $AnimateCssProvider = ['$animateProvider', function($animateProvider) {
element.data(ANIMATE_TIMER_KEY, animationsData);
}
- element.on(events.join(' '), onAnimationProgress);
+ if (events.length) {
+ element.on(events.join(' '), onAnimationProgress);
+ }
+
if (options.to) {
if (options.cleanupStyles) {
registerRestorableStyles(restoreStyles, node, Object.keys(options.to));
@@ -1379,30 +1527,6 @@ var $AnimateCssProvider = ['$animateProvider', function($animateProvider) {
element.removeData(ANIMATE_TIMER_KEY);
}
}
-
- function onAnimationProgress(event) {
- event.stopPropagation();
- var ev = event.originalEvent || event;
- var timeStamp = ev.$manualTimeStamp || ev.timeStamp || Date.now();
-
- /* Firefox (or possibly just Gecko) likes to not round values up
- * when a ms measurement is used for the animation */
- var elapsedTime = parseFloat(ev.elapsedTime.toFixed(ELAPSED_TIME_MAX_DECIMAL_PLACES));
-
- /* $manualTimeStamp is a mocked timeStamp value which is set
- * within browserTrigger(). This is only here so that tests can
- * mock animations properly. Real events fallback to event.timeStamp,
- * or, if they don't, then a timeStamp is automatically created for them.
- * We're checking to see if the timeStamp surpasses the expected delay,
- * but we're using elapsedTime instead of the timeStamp on the 2nd
- * pre-condition since animations sometimes close off early */
- if (Math.max(timeStamp - startTime, 0) >= maxDelayTime && elapsedTime >= maxDuration) {
- // we set this flag to ensure that if the transition is paused then, when resumed,
- // the animation will automatically close itself since transitions cannot be paused.
- animationCompleted = true;
- close();
- }
- }
}
};
}];
@@ -1687,6 +1811,8 @@ var $$AnimateJsProvider = ['$animateProvider', function($animateProvider) {
var applyAnimationClasses = applyAnimationClassesFactory($$jqLite);
// $animateJs(element, 'enter');
return function(element, event, classes, options) {
+ var animationClosed = false;
+
// the `classes` argument is optional and if it is not used
// then the classes will be resolved from the element's className
// property as well as options.addClass/options.removeClass.
@@ -1739,8 +1865,32 @@ var $$AnimateJsProvider = ['$animateProvider', function($animateProvider) {
applyAnimationClasses(element, options);
}
+ function close() {
+ animationClosed = true;
+ applyOptions();
+ applyAnimationStyles(element, options);
+ }
+
+ var runner;
+
return {
+ $$willAnimate: true,
+ end: function() {
+ if (runner) {
+ runner.end();
+ } else {
+ close();
+ runner = new $$AnimateRunner();
+ runner.complete(true);
+ }
+ return runner;
+ },
start: function() {
+ if (runner) {
+ return runner;
+ }
+
+ runner = new $$AnimateRunner();
var closeActiveAnimations;
var chain = [];
@@ -1765,8 +1915,7 @@ var $$AnimateJsProvider = ['$animateProvider', function($animateProvider) {
});
}
- var animationClosed = false;
- var runner = new $$AnimateRunner({
+ runner.setHost({
end: function() {
endAnimations();
},
@@ -1779,9 +1928,7 @@ var $$AnimateJsProvider = ['$animateProvider', function($animateProvider) {
return runner;
function onComplete(success) {
- animationClosed = true;
- applyOptions();
- applyAnimationStyles(element, options);
+ close(success);
runner.complete(success);
}
@@ -2001,6 +2148,7 @@ var NG_ANIMATE_PIN_DATA = '$ngAnimatePin';
var $$AnimateQueueProvider = ['$animateProvider', function($animateProvider) {
var PRE_DIGEST_STATE = 1;
var RUNNING_STATE = 2;
+ var ONE_SPACE = ' ';
var rules = this.rules = {
skip: [],
@@ -2008,28 +2156,50 @@ var $$AnimateQueueProvider = ['$animateProvider', function($animateProvider) {
join: []
};
+ function makeTruthyCssClassMap(classString) {
+ if (!classString) {
+ return null;
+ }
+
+ var keys = classString.split(ONE_SPACE);
+ var map = Object.create(null);
+
+ forEach(keys, function(key) {
+ map[key] = true;
+ });
+ return map;
+ }
+
+ function hasMatchingClasses(newClassString, currentClassString) {
+ if (newClassString && currentClassString) {
+ var currentClassMap = makeTruthyCssClassMap(currentClassString);
+ return newClassString.split(ONE_SPACE).some(function(className) {
+ return currentClassMap[className];
+ });
+ }
+ }
+
function isAllowed(ruleType, element, currentAnimation, previousAnimation) {
return rules[ruleType].some(function(fn) {
return fn(element, currentAnimation, previousAnimation);
});
}
- function hasAnimationClasses(options, and) {
- options = options || {};
- var a = (options.addClass || '').length > 0;
- var b = (options.removeClass || '').length > 0;
+ function hasAnimationClasses(animation, and) {
+ var a = (animation.addClass || '').length > 0;
+ var b = (animation.removeClass || '').length > 0;
return and ? a && b : a || b;
}
rules.join.push(function(element, newAnimation, currentAnimation) {
// if the new animation is class-based then we can just tack that on
- return !newAnimation.structural && hasAnimationClasses(newAnimation.options);
+ return !newAnimation.structural && hasAnimationClasses(newAnimation);
});
rules.skip.push(function(element, newAnimation, currentAnimation) {
// there is no need to animate anything if no classes are being added and
// there is no structural animation that will be triggered
- return !newAnimation.structural && !hasAnimationClasses(newAnimation.options);
+ return !newAnimation.structural && !hasAnimationClasses(newAnimation);
});
rules.skip.push(function(element, newAnimation, currentAnimation) {
@@ -2055,11 +2225,17 @@ var $$AnimateQueueProvider = ['$animateProvider', function($animateProvider) {
});
rules.cancel.push(function(element, newAnimation, currentAnimation) {
- var nO = newAnimation.options;
- var cO = currentAnimation.options;
+ var nA = newAnimation.addClass;
+ var nR = newAnimation.removeClass;
+ var cA = currentAnimation.addClass;
+ var cR = currentAnimation.removeClass;
+
+ // early detection to save the global CPU shortage :)
+ if ((isUndefined(nA) && isUndefined(nR)) || (isUndefined(cA) && isUndefined(cR))) {
+ return false;
+ }
- // if the exact same CSS class is added/removed then it's safe to cancel it
- return (nO.addClass && nO.addClass === cO.removeClass) || (nO.removeClass && nO.removeClass === cO.addClass);
+ return hasMatchingClasses(nA, cR) || hasMatchingClasses(nR, cA);
});
this.$get = ['$$rAF', '$rootScope', '$rootElement', '$document', '$$HashMap',
@@ -2070,6 +2246,9 @@ var $$AnimateQueueProvider = ['$animateProvider', function($animateProvider) {
var activeAnimationsLookup = new $$HashMap();
var disabledElementsLookup = new $$HashMap();
var animationsEnabled = null;
+ // $document might be mocked out in tests and won't include a real document.
+ // Providing an empty object with hidden = true will prevent animations from running
+ var rawDocument = $document[0] || {hidden: true};
function postDigestTaskFactory() {
var postDigestCalled = false;
@@ -2131,10 +2310,17 @@ var $$AnimateQueueProvider = ['$animateProvider', function($animateProvider) {
var applyAnimationClasses = applyAnimationClassesFactory($$jqLite);
- function normalizeAnimationOptions(element, options) {
- return mergeAnimationOptions(element, options, {});
+ function normalizeAnimationDetails(element, animation) {
+ return mergeAnimationDetails(element, animation, {});
}
+ // IE9-11 has no method "contains" in SVG element and in Node.prototype. Bug #10259.
+ var contains = Node.prototype.contains || function(arg) {
+ // jshint bitwise: false
+ return this === arg || !!(this.compareDocumentPosition(arg) & 16);
+ // jshint bitwise: true
+ };
+
function findCallbacks(parent, element, event) {
var targetNode = getDomNode(element);
var targetParentNode = getDomNode(parent);
@@ -2143,9 +2329,9 @@ var $$AnimateQueueProvider = ['$animateProvider', function($animateProvider) {
var entries = callbackRegistry[event];
if (entries) {
forEach(entries, function(entry) {
- if (entry.node.contains(targetNode)) {
+ if (contains.call(entry.node, targetNode)) {
matches.push(entry.callback);
- } else if (event === 'leave' && entry.node.contains(targetParentNode)) {
+ } else if (event === 'leave' && contains.call(entry.node, targetParentNode)) {
matches.push(entry.callback);
}
});
@@ -2220,12 +2406,7 @@ var $$AnimateQueueProvider = ['$animateProvider', function($animateProvider) {
bool = !recordExists;
} else {
// (element, bool) - Element setter
- bool = !!bool;
- if (!bool) {
- disabledElementsLookup.put(node, true);
- } else if (recordExists) {
- disabledElementsLookup.remove(node);
- }
+ disabledElementsLookup.put(node, !bool);
}
}
}
@@ -2234,7 +2415,12 @@ var $$AnimateQueueProvider = ['$animateProvider', function($animateProvider) {
}
};
- function queueAnimation(element, event, options) {
+ function queueAnimation(element, event, initialOptions) {
+ // we always make a copy of the options since
+ // there should never be any side effects on
+ // the input data when running `$animateCss`.
+ var options = copy(initialOptions);
+
var node, parent;
element = stripCommentsFromElement(element);
if (element) {
@@ -2291,10 +2477,14 @@ var $$AnimateQueueProvider = ['$animateProvider', function($animateProvider) {
var isStructural = ['enter', 'move', 'leave'].indexOf(event) >= 0;
+ var documentHidden = rawDocument.hidden;
+
// this is a hard disable of all animations for the application or on
// the element itself, therefore there is no need to continue further
// past this point if not enabled
- var skipAnimations = !animationsEnabled || disabledElementsLookup.get(node);
+ // Animations are also disabled if the document is currently hidden (page is not visible
+ // to the user), because browsers slow down or do not flush calls to requestAnimationFrame
+ var skipAnimations = !animationsEnabled || documentHidden || disabledElementsLookup.get(node);
var existingAnimation = (!skipAnimations && activeAnimationsLookup.get(node)) || {};
var hasExistingAnimation = !!existingAnimation.state;
@@ -2305,7 +2495,10 @@ var $$AnimateQueueProvider = ['$animateProvider', function($animateProvider) {
}
if (skipAnimations) {
+ // Callbacks should fire even if the document is hidden (regression fix for issue #14120)
+ if (documentHidden) notifyProgress(runner, event, 'start');
close();
+ if (documentHidden) notifyProgress(runner, event, 'close');
return runner;
}
@@ -2317,6 +2510,8 @@ var $$AnimateQueueProvider = ['$animateProvider', function($animateProvider) {
structural: isStructural,
element: element,
event: event,
+ addClass: options.addClass,
+ removeClass: options.removeClass,
close: close,
options: options,
runner: runner
@@ -2329,11 +2524,10 @@ var $$AnimateQueueProvider = ['$animateProvider', function($animateProvider) {
close();
return runner;
} else {
- mergeAnimationOptions(element, existingAnimation.options, options);
+ mergeAnimationDetails(element, existingAnimation, newAnimation);
return existingAnimation.runner;
}
}
-
var cancelAnimationFlag = isAllowed('cancel', element, newAnimation, existingAnimation);
if (cancelAnimationFlag) {
if (existingAnimation.state === RUNNING_STATE) {
@@ -2348,7 +2542,8 @@ var $$AnimateQueueProvider = ['$animateProvider', function($animateProvider) {
existingAnimation.close();
} else {
// this will merge the new animation options into existing animation options
- mergeAnimationOptions(element, existingAnimation.options, newAnimation.options);
+ mergeAnimationDetails(element, existingAnimation, newAnimation);
+
return existingAnimation.runner;
}
} else {
@@ -2358,12 +2553,12 @@ var $$AnimateQueueProvider = ['$animateProvider', function($animateProvider) {
var joinAnimationFlag = isAllowed('join', element, newAnimation, existingAnimation);
if (joinAnimationFlag) {
if (existingAnimation.state === RUNNING_STATE) {
- normalizeAnimationOptions(element, options);
+ normalizeAnimationDetails(element, newAnimation);
} else {
applyGeneratedPreparationClasses(element, isStructural ? event : null, options);
event = newAnimation.event = existingAnimation.event;
- options = mergeAnimationOptions(element, existingAnimation.options, newAnimation.options);
+ options = mergeAnimationDetails(element, existingAnimation, newAnimation);
//we return the same runner since only the option values of this animation will
//be fed into the `existingAnimation`.
@@ -2374,7 +2569,7 @@ var $$AnimateQueueProvider = ['$animateProvider', function($animateProvider) {
} else {
// normalization in this case means that it removes redundant CSS classes that
// already exist (addClass) or do not exist (removeClass) on the element
- normalizeAnimationOptions(element, options);
+ normalizeAnimationDetails(element, newAnimation);
}
// when the options are merged and cleaned up we may end up not having to do
@@ -2384,7 +2579,7 @@ var $$AnimateQueueProvider = ['$animateProvider', function($animateProvider) {
if (!isValidAnimation) {
// animate (from/to) can be quickly checked first, otherwise we check if any classes are present
isValidAnimation = (newAnimation.event === 'animate' && Object.keys(newAnimation.options.to || {}).length > 0)
- || hasAnimationClasses(newAnimation.options);
+ || hasAnimationClasses(newAnimation);
}
if (!isValidAnimation) {
@@ -2414,7 +2609,7 @@ var $$AnimateQueueProvider = ['$animateProvider', function($animateProvider) {
var isValidAnimation = parentElement.length > 0
&& (animationDetails.event === 'animate'
|| animationDetails.structural
- || hasAnimationClasses(animationDetails.options));
+ || hasAnimationClasses(animationDetails));
// this means that the previous animation was cancelled
// even if the follow-up animation is the same event
@@ -2446,13 +2641,18 @@ var $$AnimateQueueProvider = ['$animateProvider', function($animateProvider) {
// this combined multiple class to addClass / removeClass into a setClass event
// so long as a structural event did not take over the animation
- event = !animationDetails.structural && hasAnimationClasses(animationDetails.options, true)
+ event = !animationDetails.structural && hasAnimationClasses(animationDetails, true)
? 'setClass'
: animationDetails.event;
markElementAnimationState(element, RUNNING_STATE);
var realRunner = $$animation(element, event, animationDetails.options);
+ // this will update the runner's flow-control events based on
+ // the `realRunner` object.
+ runner.setHost(realRunner);
+ notifyProgress(runner, event, 'start', {});
+
realRunner.done(function(status) {
close(!status);
var animationDetails = activeAnimationsLookup.get(node);
@@ -2461,11 +2661,6 @@ var $$AnimateQueueProvider = ['$animateProvider', function($animateProvider) {
}
notifyProgress(runner, event, 'close', {});
});
-
- // this will update the runner's flow-control events based on
- // the `realRunner` object.
- runner.setHost(realRunner);
- notifyProgress(runner, event, 'start', {});
});
return runner;
@@ -2503,15 +2698,15 @@ var $$AnimateQueueProvider = ['$animateProvider', function($animateProvider) {
forEach(children, function(child) {
var state = parseInt(child.getAttribute(NG_ANIMATE_ATTR_NAME));
var animationDetails = activeAnimationsLookup.get(child);
- switch (state) {
- case RUNNING_STATE:
- animationDetails.runner.end();
- /* falls through */
- case PRE_DIGEST_STATE:
- if (animationDetails) {
+ if (animationDetails) {
+ switch (state) {
+ case RUNNING_STATE:
+ animationDetails.runner.end();
+ /* falls through */
+ case PRE_DIGEST_STATE:
activeAnimationsLookup.remove(child);
- }
- break;
+ break;
+ }
}
});
}
@@ -2526,41 +2721,61 @@ var $$AnimateQueueProvider = ['$animateProvider', function($animateProvider) {
return getDomNode(nodeOrElmA) === getDomNode(nodeOrElmB);
}
+ /**
+ * This fn returns false if any of the following is true:
+ * a) animations on any parent element are disabled, and animations on the element aren't explicitly allowed
+ * b) a parent element has an ongoing structural animation, and animateChildren is false
+ * c) the element is not a child of the body
+ * d) the element is not a child of the $rootElement
+ */
function areAnimationsAllowed(element, parentElement, event) {
- var bodyElement = jqLite($document[0].body);
+ var bodyElement = jqLite(rawDocument.body);
var bodyElementDetected = isMatchingElement(element, bodyElement) || element[0].nodeName === 'HTML';
var rootElementDetected = isMatchingElement(element, $rootElement);
var parentAnimationDetected = false;
var animateChildren;
+ var elementDisabled = disabledElementsLookup.get(getDomNode(element));
- var parentHost = element.data(NG_ANIMATE_PIN_DATA);
+ var parentHost = jqLite.data(element[0], NG_ANIMATE_PIN_DATA);
if (parentHost) {
parentElement = parentHost;
}
- while (parentElement && parentElement.length) {
+ parentElement = getDomNode(parentElement);
+
+ while (parentElement) {
if (!rootElementDetected) {
// angular doesn't want to attempt to animate elements outside of the application
// therefore we need to ensure that the rootElement is an ancestor of the current element
rootElementDetected = isMatchingElement(parentElement, $rootElement);
}
- var parentNode = parentElement[0];
- if (parentNode.nodeType !== ELEMENT_NODE) {
+ if (parentElement.nodeType !== ELEMENT_NODE) {
// no point in inspecting the #document element
break;
}
- var details = activeAnimationsLookup.get(parentNode) || {};
+ var details = activeAnimationsLookup.get(parentElement) || {};
// either an enter, leave or move animation will commence
// therefore we can't allow any animations to take place
// but if a parent animation is class-based then that's ok
if (!parentAnimationDetected) {
- parentAnimationDetected = details.structural || disabledElementsLookup.get(parentNode);
+ var parentElementDisabled = disabledElementsLookup.get(parentElement);
+
+ if (parentElementDisabled === true && elementDisabled !== false) {
+ // disable animations if the user hasn't explicitly enabled animations on the
+ // current element
+ elementDisabled = true;
+ // element is disabled via parent element, no need to check anything else
+ break;
+ } else if (parentElementDisabled === false) {
+ elementDisabled = false;
+ }
+ parentAnimationDetected = details.structural;
}
if (isUndefined(animateChildren) || animateChildren === true) {
- var value = parentElement.data(NG_ANIMATE_CHILDREN_DATA);
+ var value = jqLite.data(parentElement, NG_ANIMATE_CHILDREN_DATA);
if (isDefined(value)) {
animateChildren = value;
}
@@ -2569,28 +2784,32 @@ var $$AnimateQueueProvider = ['$animateProvider', function($animateProvider) {
// there is no need to continue traversing at this point
if (parentAnimationDetected && animateChildren === false) break;
- if (!rootElementDetected) {
- // angular doesn't want to attempt to animate elements outside of the application
- // therefore we need to ensure that the rootElement is an ancestor of the current element
- rootElementDetected = isMatchingElement(parentElement, $rootElement);
- if (!rootElementDetected) {
- parentHost = parentElement.data(NG_ANIMATE_PIN_DATA);
- if (parentHost) {
- parentElement = parentHost;
- }
- }
- }
-
if (!bodyElementDetected) {
- // we also need to ensure that the element is or will be apart of the body element
+ // we also need to ensure that the element is or will be a part of the body element
// otherwise it is pointless to even issue an animation to be rendered
bodyElementDetected = isMatchingElement(parentElement, bodyElement);
}
- parentElement = parentElement.parent();
+ if (bodyElementDetected && rootElementDetected) {
+ // If both body and root have been found, any other checks are pointless,
+ // as no animation data should live outside the application
+ break;
+ }
+
+ if (!rootElementDetected) {
+ // If no rootElement is detected, check if the parentElement is pinned to another element
+ parentHost = jqLite.data(parentElement, NG_ANIMATE_PIN_DATA);
+ if (parentHost) {
+ // The pin target element becomes the next parent element
+ parentElement = getDomNode(parentHost);
+ continue;
+ }
+ }
+
+ parentElement = parentElement.parentNode;
}
- var allowAnimation = !parentAnimationDetected || animateChildren;
+ var allowAnimation = (!parentAnimationDetected || animateChildren) && elementDisabled !== true;
return allowAnimation && rootElementDetected && bodyElementDetected;
}
@@ -2610,171 +2829,6 @@ var $$AnimateQueueProvider = ['$animateProvider', function($animateProvider) {
}];
}];
-var $$AnimateAsyncRunFactory = ['$$rAF', function($$rAF) {
- var waitQueue = [];
-
- function waitForTick(fn) {
- waitQueue.push(fn);
- if (waitQueue.length > 1) return;
- $$rAF(function() {
- for (var i = 0; i < waitQueue.length; i++) {
- waitQueue[i]();
- }
- waitQueue = [];
- });
- }
-
- return function() {
- var passed = false;
- waitForTick(function() {
- passed = true;
- });
- return function(callback) {
- passed ? callback() : waitForTick(callback);
- };
- };
-}];
-
-var $$AnimateRunnerFactory = ['$q', '$sniffer', '$$animateAsyncRun',
- function($q, $sniffer, $$animateAsyncRun) {
-
- var INITIAL_STATE = 0;
- var DONE_PENDING_STATE = 1;
- var DONE_COMPLETE_STATE = 2;
-
- AnimateRunner.chain = function(chain, callback) {
- var index = 0;
-
- next();
- function next() {
- if (index === chain.length) {
- callback(true);
- return;
- }
-
- chain[index](function(response) {
- if (response === false) {
- callback(false);
- return;
- }
- index++;
- next();
- });
- }
- };
-
- AnimateRunner.all = function(runners, callback) {
- var count = 0;
- var status = true;
- forEach(runners, function(runner) {
- runner.done(onProgress);
- });
-
- function onProgress(response) {
- status = status && response;
- if (++count === runners.length) {
- callback(status);
- }
- }
- };
-
- function AnimateRunner(host) {
- this.setHost(host);
-
- this._doneCallbacks = [];
- this._runInAnimationFrame = $$animateAsyncRun();
- this._state = 0;
- }
-
- AnimateRunner.prototype = {
- setHost: function(host) {
- this.host = host || {};
- },
-
- done: function(fn) {
- if (this._state === DONE_COMPLETE_STATE) {
- fn();
- } else {
- this._doneCallbacks.push(fn);
- }
- },
-
- progress: noop,
-
- getPromise: function() {
- if (!this.promise) {
- var self = this;
- this.promise = $q(function(resolve, reject) {
- self.done(function(status) {
- status === false ? reject() : resolve();
- });
- });
- }
- return this.promise;
- },
-
- then: function(resolveHandler, rejectHandler) {
- return this.getPromise().then(resolveHandler, rejectHandler);
- },
-
- 'catch': function(handler) {
- return this.getPromise()['catch'](handler);
- },
-
- 'finally': function(handler) {
- return this.getPromise()['finally'](handler);
- },
-
- pause: function() {
- if (this.host.pause) {
- this.host.pause();
- }
- },
-
- resume: function() {
- if (this.host.resume) {
- this.host.resume();
- }
- },
-
- end: function() {
- if (this.host.end) {
- this.host.end();
- }
- this._resolve(true);
- },
-
- cancel: function() {
- if (this.host.cancel) {
- this.host.cancel();
- }
- this._resolve(false);
- },
-
- complete: function(response) {
- var self = this;
- if (self._state === INITIAL_STATE) {
- self._state = DONE_PENDING_STATE;
- self._runInAnimationFrame(function() {
- self._resolve(response);
- });
- }
- },
-
- _resolve: function(response) {
- if (this._state !== DONE_COMPLETE_STATE) {
- forEach(this._doneCallbacks, function(fn) {
- fn(response);
- });
- this._doneCallbacks.length = 0;
- this._state = DONE_COMPLETE_STATE;
- }
- }
- };
-
- return AnimateRunner;
-}];
-
var $$AnimationProvider = ['$animateProvider', function($animateProvider) {
var NG_ANIMATE_REF_ATTR = 'ng-animate-ref';
@@ -2910,6 +2964,12 @@ var $$AnimationProvider = ['$animateProvider', function($animateProvider) {
options.tempClasses = null;
}
+ var prepareClassName;
+ if (isStructural) {
+ prepareClassName = 'ng-' + event + PREPARE_CLASS_SUFFIX;
+ $$jqLite.addClass(element, prepareClassName);
+ }
+
animationQueue.push({
// this data is used by the postDigest code and passed into
// the driver step function
@@ -3132,6 +3192,10 @@ var $$AnimationProvider = ['$animateProvider', function($animateProvider) {
if (tempClasses) {
$$jqLite.addClass(element, tempClasses);
}
+ if (prepareClassName) {
+ $$jqLite.removeClass(element, prepareClassName);
+ prepareClassName = null;
+ }
}
function updateAnimationRunners(animation, newRunner) {
@@ -3178,7 +3242,6 @@ var $$AnimationProvider = ['$animateProvider', function($animateProvider) {
$$AnimateAsyncRunFactory,
$$rAFSchedulerFactory,
$$AnimateChildrenDirective,
- $$AnimateRunnerFactory,
$$AnimateQueueProvider,
$$AnimationProvider,
$AnimateCssProvider,
@@ -3427,6 +3490,34 @@ var $$AnimationProvider = ['$animateProvider', function($animateProvider) {
* the CSS class once an animation has completed.)
*
*
+ * ### The `ng-[event]-prepare` class
+ *
+ * This is a special class that can be used to prevent unwanted flickering / flash of content before
+ * the actual animation starts. The class is added as soon as an animation is initialized, but removed
+ * before the actual animation starts (after waiting for a $digest).
+ * It is also only added for *structural* animations (`enter`, `move`, and `leave`).
+ *
+ * In practice, flickering can appear when nesting elements with structural animations such as `ngIf`
+ * into elements that have class-based animations such as `ngClass`.
+ *
+ * ```html
+ * <div ng-class="{red: myProp}">
+ * <div ng-class="{blue: myProp}">
+ * <div class="message" ng-if="myProp"></div>
+ * </div>
+ * </div>
+ * ```
+ *
+ * It is possible that during the `enter` animation, the `.message` div will be briefly visible before it starts animating.
+ * In that case, you can add styles to the CSS that make sure the element stays hidden before the animation starts:
+ *
+ * ```css
+ * .message.ng-enter-prepare {
+ * opacity: 0;
+ * }
+ *
+ * ```
+ *
* ## JavaScript-based Animations
*
* ngAnimate also allows for animations to be consumed by JavaScript code. The approach is similar to CSS-based animations (where there is a shared
@@ -3914,9 +4005,6 @@ angular.module('ngAnimate', [])
.directive('ngAnimateChildren', $$AnimateChildrenDirective)
.factory('$$rAFScheduler', $$rAFSchedulerFactory)
- .factory('$$AnimateRunner', $$AnimateRunnerFactory)
- .factory('$$animateAsyncRun', $$AnimateAsyncRunFactory)
-
.provider('$$animateQueue', $$AnimateQueueProvider)
.provider('$$animation', $$AnimationProvider)
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-animate.min.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-animate.min.js
new file mode 100644
index 00000000..50600c92
--- /dev/null
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-animate.min.js
@@ -0,0 +1,55 @@
+/*
+ AngularJS v1.4.13
+ (c) 2010-2015 Google, Inc. http://angularjs.org
+ License: MIT
+*/
+(function(D,n,Va){'use strict';function za(a,b,c){if(!a)throw Ka("areq",b||"?",c||"required");return a}function Aa(a,b){if(!a&&!b)return"";if(!a)return b;if(!b)return a;da(a)&&(a=a.join(" "));da(b)&&(b=b.join(" "));return a+" "+b}function La(a){var b={};a&&(a.to||a.from)&&(b.to=a.to,b.from=a.from);return b}function X(a,b,c){var d="";a=da(a)?a:a&&E(a)&&a.length?a.split(/\s+/):[];s(a,function(a,f){a&&0<a.length&&(d+=0<f?" ":"",d+=c?b+a:a+b)});return d}function Ma(a){if(a instanceof G)switch(a.length){case 0:return a;
+case 1:if(1===a[0].nodeType)return a;break;default:return G(ha(a))}if(1===a.nodeType)return G(a)}function ha(a){if(!a[0])return a;for(var b=0;b<a.length;b++){var c=a[b];if(1==c.nodeType)return c}}function Na(a,b,c){s(b,function(b){a.addClass(b,c)})}function Oa(a,b,c){s(b,function(b){a.removeClass(b,c)})}function Q(a){return function(b,c){c.addClass&&(Na(a,b,c.addClass),c.addClass=null);c.removeClass&&(Oa(a,b,c.removeClass),c.removeClass=null)}}function pa(a){a=a||{};if(!a.$$prepared){var b=a.domOperation||
+O;a.domOperation=function(){a.$$domOperationFired=!0;b();b=O};a.$$prepared=!0}return a}function ia(a,b){Ba(a,b);Ca(a,b)}function Ba(a,b){b.from&&(a.css(b.from),b.from=null)}function Ca(a,b){b.to&&(a.css(b.to),b.to=null)}function T(a,b,c){var d=b.options||{};c=c.options||{};var e=(d.addClass||"")+" "+(c.addClass||""),f=(d.removeClass||"")+" "+(c.removeClass||"");a=Pa(a.attr("class"),e,f);c.preparationClasses&&(d.preparationClasses=Y(c.preparationClasses,d.preparationClasses),delete c.preparationClasses);
+e=d.domOperation!==O?d.domOperation:null;Da(d,c);e&&(d.domOperation=e);d.addClass=a.addClass?a.addClass:null;d.removeClass=a.removeClass?a.removeClass:null;b.addClass=d.addClass;b.removeClass=d.removeClass;return d}function Pa(a,b,c){function d(a){E(a)&&(a=a.split(" "));var b={};s(a,function(a){a.length&&(b[a]=!0)});return b}var e={};a=d(a);b=d(b);s(b,function(a,b){e[b]=1});c=d(c);s(c,function(a,b){e[b]=1===e[b]?null:-1});var f={addClass:"",removeClass:""};s(e,function(b,c){var d,e;1===b?(d="addClass",
+e=!a[c]):-1===b&&(d="removeClass",e=a[c]);e&&(f[d].length&&(f[d]+=" "),f[d]+=c)});return f}function x(a){return a instanceof n.element?a[0]:a}function Qa(a,b,c){var d="";b&&(d=X(b,"ng-",!0));c.addClass&&(d=Y(d,X(c.addClass,"-add")));c.removeClass&&(d=Y(d,X(c.removeClass,"-remove")));d.length&&(c.preparationClasses=d,a.addClass(d))}function qa(a,b){var c=b?"-"+b+"s":"";ma(a,[na,c]);return[na,c]}function sa(a,b){var c=b?"paused":"",d=Z+"PlayState";ma(a,[d,c]);return[d,c]}function ma(a,b){a.style[b[0]]=
+b[1]}function Y(a,b){return a?b?a+" "+b:a:b}function Ea(a,b,c){var d=Object.create(null),e=a.getComputedStyle(b)||{};s(c,function(a,b){var c=e[a];if(c){var J=c.charAt(0);if("-"===J||"+"===J||0<=J)c=Ra(c);0===c&&(c=null);d[b]=c}});return d}function Ra(a){var b=0;a=a.split(/\s*,\s*/);s(a,function(a){"s"==a.charAt(a.length-1)&&(a=a.substring(0,a.length-1));a=parseFloat(a)||0;b=b?Math.max(a,b):a});return b}function ta(a){return 0===a||null!=a}function Fa(a,b){var c=R,d=a+"s";b?c+="Duration":d+=" linear all";
+return[c,d]}function Ga(){var a=Object.create(null);return{flush:function(){a=Object.create(null)},count:function(b){return(b=a[b])?b.total:0},get:function(b){return(b=a[b])&&b.value},put:function(b,c){a[b]?a[b].total++:a[b]={total:1,value:c}}}}function Ha(a,b,c){s(c,function(c){a[c]=$(a[c])?a[c]:b.style.getPropertyValue(c)})}var O=n.noop,Ia=n.copy,Da=n.extend,G=n.element,s=n.forEach,da=n.isArray,E=n.isString,ea=n.isObject,N=n.isUndefined,$=n.isDefined,Ja=n.isFunction,ua=n.isElement,R,va,Z,wa;N(D.ontransitionend)&&
+$(D.onwebkittransitionend)?(R="WebkitTransition",va="webkitTransitionEnd transitionend"):(R="transition",va="transitionend");N(D.onanimationend)&&$(D.onwebkitanimationend)?(Z="WebkitAnimation",wa="webkitAnimationEnd animationend"):(Z="animation",wa="animationend");var ra=Z+"Delay",xa=Z+"Duration",na=R+"Delay";D=R+"Duration";var Ka=n.$$minErr("ng"),Sa={transitionDuration:D,transitionDelay:na,transitionProperty:R+"Property",animationDuration:xa,animationDelay:ra,animationIterationCount:Z+"IterationCount"},
+Ta={transitionDuration:D,transitionDelay:na,animationDuration:xa,animationDelay:ra};n.module("ngAnimate",[]).directive("ngAnimateChildren",["$interpolate",function(a){return{link:function(b,c,d){function e(a){c.data("$$ngAnimateChildren","on"===a||"true"===a)}var f=d.ngAnimateChildren;n.isString(f)&&0===f.length?c.data("$$ngAnimateChildren",!0):(e(a(f)(b)),d.$observe("ngAnimateChildren",e))}}}]).factory("$$rAFScheduler",["$$rAF",function(a){function b(a){d=d.concat(a);c()}function c(){if(d.length){for(var b=
+d.shift(),L=0;L<b.length;L++)b[L]();e||a(function(){e||c()})}}var d,e;d=b.queue=[];b.waitUntilQuiet=function(b){e&&e();e=a(function(){e=null;b();c()})};return b}]).provider("$$animateQueue",["$animateProvider",function(a){function b(a){if(!a)return null;a=a.split(" ");var b=Object.create(null);s(a,function(a){b[a]=!0});return b}function c(a,c){if(a&&c){var d=b(c);return a.split(" ").some(function(a){return d[a]})}}function d(a,b,c,d){return f[a].some(function(a){return a(b,c,d)})}function e(a,b){var c=
+0<(a.addClass||"").length,d=0<(a.removeClass||"").length;return b?c&&d:c||d}var f=this.rules={skip:[],cancel:[],join:[]};f.join.push(function(a,b,c){return!b.structural&&e(b)});f.skip.push(function(a,b,c){return!b.structural&&!e(b)});f.skip.push(function(a,b,c){return"leave"==c.event&&b.structural});f.skip.push(function(a,b,c){return c.structural&&2===c.state&&!b.structural});f.cancel.push(function(a,b,c){return c.structural&&b.structural});f.cancel.push(function(a,b,c){return 2===c.state&&b.structural});
+f.cancel.push(function(a,b,d){a=b.addClass;b=b.removeClass;var e=d.addClass;d=d.removeClass;return N(a)&&N(b)||N(e)&&N(d)?!1:c(a,d)||c(b,e)});this.$get=["$$rAF","$rootScope","$rootElement","$document","$$HashMap","$$animation","$$AnimateRunner","$templateRequest","$$jqLite","$$forceReflow",function(b,c,f,r,v,n,t,y,m,g){function P(){var a=!1;return function(b){a?b():c.$$postDigest(function(){a=!0;b()})}}function H(a,b,c){var h=x(b),d=x(a),k=[];(a=l[c])&&s(a,function(a){aa.call(a.node,h)?k.push(a.callback):
+"leave"===c&&aa.call(a.node,d)&&k.push(a.callback)});return k}function k(a,K,k){function l(c,h,d,k){r(function(){var c=H(I,a,h);c.length&&b(function(){s(c,function(b){b(a,d,k)})})});c.progress(h,d,k)}function u(b){var c=a,h=g;h.preparationClasses&&(c.removeClass(h.preparationClasses),h.preparationClasses=null);h.activeClasses&&(c.removeClass(h.activeClasses),h.activeClasses=null);A(a,g);ia(a,g);g.domOperation();f.complete(!b)}var g=Ia(k),W,I;if(a=Ma(a))W=x(a),I=a.parent();var g=pa(g),f=new t,r=P();
+da(g.addClass)&&(g.addClass=g.addClass.join(" "));g.addClass&&!E(g.addClass)&&(g.addClass=null);da(g.removeClass)&&(g.removeClass=g.removeClass.join(" "));g.removeClass&&!E(g.removeClass)&&(g.removeClass=null);g.from&&!ea(g.from)&&(g.from=null);g.to&&!ea(g.to)&&(g.to=null);if(!W)return u(),f;k=[W.className,g.addClass,g.removeClass].join(" ");if(!Ua(k))return u(),f;var J=0<=["enter","move","leave"].indexOf(K),m=h.hidden,v=!F||m||B.get(W);k=!v&&w.get(W)||{};var aa=!!k.state;v||aa&&1==k.state||(v=!p(a,
+I,K));if(v)return m&&l(f,K,"start"),u(),m&&l(f,K,"close"),f;J&&ya(a);m={structural:J,element:a,event:K,addClass:g.addClass,removeClass:g.removeClass,close:u,options:g,runner:f};if(aa){if(d("skip",a,m,k)){if(2===k.state)return u(),f;T(a,k,m);return k.runner}if(d("cancel",a,m,k))if(2===k.state)k.runner.end();else if(k.structural)k.close();else return T(a,k,m),k.runner;else if(d("join",a,m,k))if(2===k.state)T(a,m,{});else return Qa(a,J?K:null,g),K=m.event=k.event,g=T(a,k,m),k.runner}else T(a,m,{});(aa=
+m.structural)||(aa="animate"===m.event&&0<Object.keys(m.options.to||{}).length||e(m));if(!aa)return u(),la(a),f;var y=(k.counter||0)+1;m.counter=y;C(a,1,m);c.$$postDigest(function(){var b=w.get(W),c=!b,b=b||{},h=0<(a.parent()||[]).length&&("animate"===b.event||b.structural||e(b));if(c||b.counter!==y||!h){c&&(A(a,g),ia(a,g));if(c||J&&b.event!==K)g.domOperation(),f.end();h||la(a)}else K=!b.structural&&e(b,!0)?"setClass":b.event,C(a,2),b=n(a,K,b.options),f.setHost(b),l(f,K,"start",{}),b.done(function(b){u(!b);
+(b=w.get(W))&&b.counter===y&&la(x(a));l(f,K,"close",{})})});return f}function ya(a){a=x(a).querySelectorAll("[data-ng-animate]");s(a,function(a){var b=parseInt(a.getAttribute("data-ng-animate")),c=w.get(a);if(c)switch(b){case 2:c.runner.end();case 1:w.remove(a)}})}function la(a){a=x(a);a.removeAttribute("data-ng-animate");w.remove(a)}function I(a,b){return x(a)===x(b)}function p(a,b,c){c=G(h.body);var d=I(a,c)||"HTML"===a[0].nodeName,k=I(a,f),g=!1,l,e=B.get(x(a));(a=G.data(a[0],"$ngAnimatePin"))&&
+(b=a);for(b=x(b);b;){k||(k=I(b,f));if(1!==b.nodeType)break;a=w.get(b)||{};if(!g){var u=B.get(b);if(!0===u&&!1!==e){e=!0;break}else!1===u&&(e=!1);g=a.structural}if(N(l)||!0===l)a=G.data(b,"$$ngAnimateChildren"),$(a)&&(l=a);if(g&&!1===l)break;d||(d=I(b,c));if(d&&k)break;if(!k&&(a=G.data(b,"$ngAnimatePin"))){b=x(a);continue}b=b.parentNode}return(!g||l)&&!0!==e&&k&&d}function C(a,b,c){c=c||{};c.state=b;a=x(a);a.setAttribute("data-ng-animate",b);c=(b=w.get(a))?Da(b,c):c;w.put(a,c)}var w=new v,B=new v,
+F=null,h=r[0]||{hidden:!0},W=c.$watch(function(){return 0===y.totalPendingRequests},function(a){a&&(W(),c.$$postDigest(function(){c.$$postDigest(function(){null===F&&(F=!0)})}))}),l={},u=a.classNameFilter(),Ua=u?function(a){return u.test(a)}:function(){return!0},A=Q(m),aa=Node.prototype.contains||function(a){return this===a||!!(this.compareDocumentPosition(a)&16)};return{on:function(a,b,c){b=ha(b);l[a]=l[a]||[];l[a].push({node:b,callback:c})},off:function(a,b,c){function h(a,b,c){var d=ha(b);return a.filter(function(a){return!(a.node===
+d&&(!c||a.callback===c))})}var d=l[a];d&&(l[a]=1===arguments.length?null:h(d,b,c))},pin:function(a,b){za(ua(a),"element","not an element");za(ua(b),"parentElement","not an element");a.data("$ngAnimatePin",b)},push:function(a,b,c,h){c=c||{};c.domOperation=h;return k(a,b,c)},enabled:function(a,b){var c=arguments.length;if(0===c)b=!!F;else if(ua(a)){var h=x(a),d=B.get(h);1===c?b=!d:B.put(h,!b)}else b=F=!!a;return b}}}]}]).provider("$$animation",["$animateProvider",function(a){function b(a){return a.data("$$animationRunner")}
+var c=this.drivers=[];this.$get=["$$jqLite","$rootScope","$injector","$$AnimateRunner","$$HashMap","$$rAFScheduler",function(a,e,f,L,U,J){function r(a){function b(a){if(a.processed)return a;a.processed=!0;var d=a.domNode,g=d.parentNode;e.put(d,a);for(var f;g;){if(f=e.get(g)){f.processed||(f=b(f));break}g=g.parentNode}(f||c).children.push(a);return a}var c={children:[]},d,e=new U;for(d=0;d<a.length;d++){var f=a[d];e.put(f.domNode,a[d]={domNode:f.domNode,fn:f.fn,children:[]})}for(d=0;d<a.length;d++)b(a[d]);
+return function(a){var b=[],c=[],d;for(d=0;d<a.children.length;d++)c.push(a.children[d]);a=c.length;var g=0,e=[];for(d=0;d<c.length;d++){var f=c[d];0>=a&&(a=g,g=0,b.push(e),e=[]);e.push(f.fn);f.children.forEach(function(a){g++;c.push(a)});a--}e.length&&b.push(e);return b}(c)}var v=[],n=Q(a);return function(t,y,m){function g(a){a=a.hasAttribute("ng-animate-ref")?[a]:a.querySelectorAll("[ng-animate-ref]");var b=[];s(a,function(a){var c=a.getAttribute("ng-animate-ref");c&&c.length&&b.push(a)});return b}
+function P(a){var b=[],c={};s(a,function(a,d){var h=x(a.element),k=0<=["enter","move"].indexOf(a.event),h=a.structural?g(h):[];if(h.length){var e=k?"to":"from";s(h,function(a){var b=a.getAttribute("ng-animate-ref");c[b]=c[b]||{};c[b][e]={animationID:d,element:G(a)}})}else b.push(a)});var d={},k={};s(c,function(c,g){var e=c.from,l=c.to;if(e&&l){var f=a[e.animationID],B=a[l.animationID],p=e.animationID.toString();if(!k[p]){var C=k[p]={structural:!0,beforeStart:function(){f.beforeStart();B.beforeStart()},
+close:function(){f.close();B.close()},classes:H(f.classes,B.classes),from:f,to:B,anchors:[]};C.classes.length?b.push(C):(b.push(f),b.push(B))}k[p].anchors.push({out:e.element,"in":l.element})}else e=e?e.animationID:l.animationID,l=e.toString(),d[l]||(d[l]=!0,b.push(a[e]))});return b}function H(a,b){a=a.split(" ");b=b.split(" ");for(var c=[],d=0;d<a.length;d++){var k=a[d];if("ng-"!==k.substring(0,3))for(var g=0;g<b.length;g++)if(k===b[g]){c.push(k);break}}return c.join(" ")}function k(a){for(var b=
+c.length-1;0<=b;b--){var d=c[b];if(f.has(d)&&(d=f.get(d)(a)))return d}}function ya(a,c){a.from&&a.to?(b(a.from.element).setHost(c),b(a.to.element).setHost(c)):b(a.element).setHost(c)}function la(){var a=b(t);!a||"leave"===y&&m.$$domOperationFired||a.end()}function I(b){t.off("$destroy",la);t.removeData("$$animationRunner");n(t,m);ia(t,m);m.domOperation();B&&a.removeClass(t,B);t.removeClass("ng-animate");C.complete(!b)}m=pa(m);var p=0<=["enter","move","leave"].indexOf(y),C=new L({end:function(){I()},
+cancel:function(){I(!0)}});if(!c.length)return I(),C;t.data("$$animationRunner",C);var w=Aa(t.attr("class"),Aa(m.addClass,m.removeClass)),B=m.tempClasses;B&&(w+=" "+B,m.tempClasses=null);var F;p&&(F="ng-"+y+"-prepare",a.addClass(t,F));v.push({element:t,classes:w,event:y,structural:p,options:m,beforeStart:function(){t.addClass("ng-animate");B&&a.addClass(t,B);F&&(a.removeClass(t,F),F=null)},close:I});t.on("$destroy",la);if(1<v.length)return C;e.$$postDigest(function(){var a=[];s(v,function(c){b(c.element)?
+a.push(c):c.close()});v.length=0;var c=P(a),d=[];s(c,function(a){d.push({domNode:x(a.from?a.from.element:a.element),fn:function(){a.beforeStart();var c,d=a.close;if(b(a.anchors?a.from.element||a.to.element:a.element)){var h=k(a);h&&(c=h.start)}c?(c=c(),c.done(function(a){d(!a)}),ya(a,c)):d()}})});J(r(d))});return C}}]}]).provider("$animateCss",["$animateProvider",function(a){var b=Ga(),c=Ga();this.$get=["$window","$$jqLite","$$AnimateRunner","$timeout","$$forceReflow","$sniffer","$$rAFScheduler",
+"$$animateQueue",function(a,e,f,L,n,J,r,v){function G(a,b){var c=a.parentNode;return(c.$$ngAnimateParentKey||(c.$$ngAnimateParentKey=++P))+"-"+a.getAttribute("class")+"-"+b}function t(k,g,f,m){var p;0<b.count(f)&&(p=c.get(f),p||(g=X(g,"-stagger"),e.addClass(k,g),p=Ea(a,k,m),p.animationDuration=Math.max(p.animationDuration,0),p.transitionDuration=Math.max(p.transitionDuration,0),e.removeClass(k,g),c.put(f,p)));return p||{}}function y(a){H.push(a);r.waitUntilQuiet(function(){b.flush();c.flush();for(var a=
+n(),d=0;d<H.length;d++)H[d](a);H.length=0})}function m(c,g,e){g=b.get(e);g||(g=Ea(a,c,Sa),"infinite"===g.animationIterationCount&&(g.animationIterationCount=1));b.put(e,g);c=g;e=c.animationDelay;g=c.transitionDelay;c.maxDelay=e&&g?Math.max(e,g):e||g;c.maxDuration=Math.max(c.animationDuration*c.animationIterationCount,c.transitionDuration);return c}var g=Q(e),P=0,H=[];return function(a,c){function d(){p()}function r(){p(!0)}function p(b){if(!(P||K&&U)){P=!0;U=!1;h.$$skipPreparationClasses||e.removeClass(a,
+ga);e.removeClass(a,ha);sa(l,!1);qa(l,!1);s(u,function(a){l.style[a[0]]=""});g(a,h);ia(a,h);Object.keys(H).length&&s(H,function(a,b){a?l.style.setProperty(b,a):l.style.removeProperty(b)});if(h.onDone)h.onDone();fa&&fa.length&&a.off(fa.join(" "),B);var c=a.data("$$animateCss");c&&(L.cancel(c[0].timer),a.removeData("$$animateCss"));D&&D.complete(!b)}}function C(a){q.blockTransition&&qa(l,a);q.blockKeyframeAnimation&&sa(l,!!a)}function w(){D=new f({end:d,cancel:r});y(O);p();return{$$willAnimate:!1,start:function(){return D},
+end:d}}function B(a){a.stopPropagation();var b=a.originalEvent||a;a=b.$manualTimeStamp||Date.now();b=parseFloat(b.elapsedTime.toFixed(3));Math.max(a-Y,0)>=Q&&b>=M&&(K=!0,p())}function F(){function b(){if(!P){C(!1);s(u,function(a){l.style[a[0]]=a[1]});g(a,h);e.addClass(a,ha);if(q.recalculateTimingStyles){oa=l.className+" "+ga;ja=G(l,oa);z=m(l,oa,ja);ba=z.maxDelay;E=Math.max(ba,0);M=z.maxDuration;if(0===M){p();return}q.hasTransitions=0<z.transitionDuration;q.hasAnimations=0<z.animationDuration}q.applyAnimationDelay&&
+(ba="boolean"!==typeof h.delay&&ta(h.delay)?parseFloat(h.delay):ba,E=Math.max(ba,0),z.animationDelay=ba,ca=[ra,ba+"s"],u.push(ca),l.style[ca[0]]=ca[1]);Q=1E3*E;T=1E3*M;if(h.easing){var d,f=h.easing;q.hasTransitions&&(d=R+"TimingFunction",u.push([d,f]),l.style[d]=f);q.hasAnimations&&(d=Z+"TimingFunction",u.push([d,f]),l.style[d]=f)}z.transitionDuration&&fa.push(va);z.animationDuration&&fa.push(wa);Y=Date.now();var F=Q+1.5*T;d=Y+F;var f=a.data("$$animateCss")||[],w=!0;if(f.length){var r=f[0];(w=d>r.expectedEndTime)?
+L.cancel(r.timer):f.push(p)}w&&(F=L(c,F,!1),f[0]={timer:F,expectedEndTime:d},f.push(p),a.data("$$animateCss",f));if(fa.length)a.on(fa.join(" "),B);h.to&&(h.cleanupStyles&&Ha(H,l,Object.keys(h.to)),Ca(a,h))}}function c(){var b=a.data("$$animateCss");if(b){for(var d=1;d<b.length;d++)b[d]();a.removeData("$$animateCss")}}if(!P)if(l.parentNode){var d=function(a){if(K)U&&a&&(U=!1,p());else if(U=!a,z.animationDuration)if(a=sa(l,U),U)u.push(a);else{var b=u,c=b.indexOf(a);0<=a&&b.splice(c,1)}},f=0<ea&&(z.transitionDuration&&
+0===V.transitionDuration||z.animationDuration&&0===V.animationDuration)&&Math.max(V.animationDelay,V.transitionDelay);f?L(b,Math.floor(f*ea*1E3),!1):b();N.resume=function(){d(!0)};N.pause=function(){d(!1)}}else p()}var h=c||{};h.$$prepared||(h=pa(Ia(h)));var H={},l=x(a);if(!l||!l.parentNode||!v.enabled())return w();var u=[],n=a.attr("class"),A=La(h),P,U,K,D,N,E,Q,M,T,Y,fa=[];if(0===h.duration||!J.animations&&!J.transitions)return w();var ka=h.event&&da(h.event)?h.event.join(" "):h.event,$="",S="";
+ka&&h.structural?$=X(ka,"ng-",!0):ka&&($=ka);h.addClass&&(S+=X(h.addClass,"-add"));h.removeClass&&(S.length&&(S+=" "),S+=X(h.removeClass,"-remove"));h.applyClassesEarly&&S.length&&g(a,h);var ga=[$,S].join(" ").trim(),oa=n+" "+ga,ha=X(ga,"-active"),n=A.to&&0<Object.keys(A.to).length;if(!(0<(h.keyframeStyle||"").length||n||ga))return w();var ja,V;0<h.stagger?(A=parseFloat(h.stagger),V={transitionDelay:A,animationDelay:A,transitionDuration:0,animationDuration:0}):(ja=G(l,oa),V=t(l,ga,ja,Ta));h.$$skipPreparationClasses||
+e.addClass(a,ga);h.transitionStyle&&(A=[R,h.transitionStyle],ma(l,A),u.push(A));0<=h.duration&&(A=0<l.style[R].length,A=Fa(h.duration,A),ma(l,A),u.push(A));h.keyframeStyle&&(A=[Z,h.keyframeStyle],ma(l,A),u.push(A));var ea=V?0<=h.staggerIndex?h.staggerIndex:b.count(ja):0;(ka=0===ea)&&!h.skipBlocking&&qa(l,9999);var z=m(l,oa,ja),ba=z.maxDelay;E=Math.max(ba,0);M=z.maxDuration;var q={};q.hasTransitions=0<z.transitionDuration;q.hasAnimations=0<z.animationDuration;q.hasTransitionAll=q.hasTransitions&&"all"==
+z.transitionProperty;q.applyTransitionDuration=n&&(q.hasTransitions&&!q.hasTransitionAll||q.hasAnimations&&!q.hasTransitions);q.applyAnimationDuration=h.duration&&q.hasAnimations;q.applyTransitionDelay=ta(h.delay)&&(q.applyTransitionDuration||q.hasTransitions);q.applyAnimationDelay=ta(h.delay)&&q.hasAnimations;q.recalculateTimingStyles=0<S.length;if(q.applyTransitionDuration||q.applyAnimationDuration)M=h.duration?parseFloat(h.duration):M,q.applyTransitionDuration&&(q.hasTransitions=!0,z.transitionDuration=
+M,A=0<l.style[R+"Property"].length,u.push(Fa(M,A))),q.applyAnimationDuration&&(q.hasAnimations=!0,z.animationDuration=M,u.push([xa,M+"s"]));if(0===M&&!q.recalculateTimingStyles)return w();if(null!=h.delay){var ca;"boolean"!==typeof h.delay&&(ca=parseFloat(h.delay),E=Math.max(ca,0));q.applyTransitionDelay&&u.push([na,ca+"s"]);q.applyAnimationDelay&&u.push([ra,ca+"s"])}null==h.duration&&0<z.transitionDuration&&(q.recalculateTimingStyles=q.recalculateTimingStyles||ka);Q=1E3*E;T=1E3*M;h.skipBlocking||
+(q.blockTransition=0<z.transitionDuration,q.blockKeyframeAnimation=0<z.animationDuration&&0<V.animationDelay&&0===V.animationDuration);h.from&&(h.cleanupStyles&&Ha(H,l,Object.keys(h.from)),Ba(a,h));q.blockTransition||q.blockKeyframeAnimation?C(M):h.skipBlocking||qa(l,!1);return{$$willAnimate:!0,end:d,start:function(){if(!P)return N={end:d,cancel:r,resume:null,pause:null},D=new f(N),y(F),D}}}}]}]).provider("$$animateCssDriver",["$$animationProvider",function(a){a.drivers.push("$$animateCssDriver");
+this.$get=["$animateCss","$rootScope","$$AnimateRunner","$rootElement","$sniffer","$$jqLite","$document",function(a,c,d,e,f,L,n){function J(a){return a.replace(/\bng-\S+\b/g,"")}function r(a,b){E(a)&&(a=a.split(" "));E(b)&&(b=b.split(" "));return a.filter(function(a){return-1===b.indexOf(a)}).join(" ")}function v(c,f,e){function k(a){var b={},c=x(a).getBoundingClientRect();s(["width","height","top","left"],function(a){var d=c[a];switch(a){case "top":d+=y.scrollTop;break;case "left":d+=y.scrollLeft}b[a]=
+Math.floor(d)+"px"});return b}function L(){var c=J(e.attr("class")||""),d=r(c,p),c=r(p,c),d=a(v,{to:k(e),addClass:"ng-anchor-in "+d,removeClass:"ng-anchor-out "+c,delay:!0});return d.$$willAnimate?d:null}function n(){v.remove();f.removeClass("ng-animate-shim");e.removeClass("ng-animate-shim")}var v=G(x(f).cloneNode(!0)),p=J(v.attr("class")||"");f.addClass("ng-animate-shim");e.addClass("ng-animate-shim");v.addClass("ng-anchor");m.append(v);var C;c=function(){var c=a(v,{addClass:"ng-anchor-out",delay:!0,
+from:k(f)});return c.$$willAnimate?c:null}();if(!c&&(C=L(),!C))return n();var w=c||C;return{start:function(){function a(){c&&c.end()}var b,c=w.start();c.done(function(){c=null;if(!C&&(C=L()))return c=C.start(),c.done(function(){c=null;n();b.complete()}),c;n();b.complete()});return b=new d({end:a,cancel:a})}}}function D(a,b,c,f){var e=t(a,O),m=t(b,O),r=[];s(f,function(a){(a=v(c,a.out,a["in"]))&&r.push(a)});if(e||m||0!==r.length)return{start:function(){function a(){s(b,function(a){a.end()})}var b=[];
+e&&b.push(e.start());m&&b.push(m.start());s(r,function(a){b.push(a.start())});var c=new d({end:a,cancel:a});d.all(b,function(a){c.complete(a)});return c}}}function t(c){var d=c.element,e=c.options||{};c.structural&&(e.event=c.event,e.structural=!0,e.applyClassesEarly=!0,"leave"===c.event&&(e.onDone=e.domOperation));e.preparationClasses&&(e.event=Y(e.event,e.preparationClasses));c=a(d,e);return c.$$willAnimate?c:null}if(!f.animations&&!f.transitions)return O;var y=n[0].body;c=x(e);var m=G(c.parentNode&&
+11===c.parentNode.nodeType||y.contains(c)?c:y);Q(L);return function(a){return a.from&&a.to?D(a.from,a.to,a.classes,a.anchors):t(a)}}]}]).provider("$$animateJs",["$animateProvider",function(a){this.$get=["$injector","$$AnimateRunner","$$jqLite",function(b,c,d){function e(c){c=da(c)?c:c.split(" ");for(var d=[],e={},f=0;f<c.length;f++){var v=c[f],n=a.$$registeredAnimations[v];n&&!e[v]&&(d.push(b.get(n)),e[v]=!0)}return d}var f=Q(d);return function(a,b,d,r){function n(){r.domOperation();f(a,r)}function x(a,
+b,d,e,f){switch(d){case "animate":b=[b,e.from,e.to,f];break;case "setClass":b=[b,g,D,f];break;case "addClass":b=[b,g,f];break;case "removeClass":b=[b,D,f];break;default:b=[b,f]}b.push(e);if(a=a.apply(a,b))if(Ja(a.start)&&(a=a.start()),a instanceof c)a.done(f);else if(Ja(a))return a;return O}function t(a,b,d,e,f){var g=[];s(e,function(e){var k=e[f];k&&g.push(function(){var e,f,h=!1,g=function(a){h||(h=!0,(f||O)(a),e.complete(!a))};e=new c({end:function(){g()},cancel:function(){g(!0)}});f=x(k,a,b,d,
+function(a){g(!1===a)});return e})});return g}function y(a,b,d,e,f){var g=t(a,b,d,e,f);if(0===g.length){var k,m;"beforeSetClass"===f?(k=t(a,"removeClass",d,e,"beforeRemoveClass"),m=t(a,"addClass",d,e,"beforeAddClass")):"setClass"===f&&(k=t(a,"removeClass",d,e,"removeClass"),m=t(a,"addClass",d,e,"addClass"));k&&(g=g.concat(k));m&&(g=g.concat(m))}if(0!==g.length)return function(a){var b=[];g.length&&s(g,function(a){b.push(a())});b.length?c.all(b,a):a();return function(a){s(b,function(b){a?b.cancel():
+b.end()})}}}var m=!1;3===arguments.length&&ea(d)&&(r=d,d=null);r=pa(r);d||(d=a.attr("class")||"",r.addClass&&(d+=" "+r.addClass),r.removeClass&&(d+=" "+r.removeClass));var g=r.addClass,D=r.removeClass,H=e(d),k,E;if(H.length){var G,I;"leave"==b?(I="leave",G="afterLeave"):(I="before"+b.charAt(0).toUpperCase()+b.substr(1),G=b);"enter"!==b&&"move"!==b&&(k=y(a,b,r,H,I));E=y(a,b,r,H,G)}if(k||E){var p;return{$$willAnimate:!0,end:function(){p?p.end():(m=!0,n(),ia(a,r),p=new c,p.complete(!0));return p},start:function(){function b(c){m=
+!0;n();ia(a,r);p.complete(c)}if(p)return p;p=new c;var d,e=[];k&&e.push(function(a){d=k(a)});e.length?e.push(function(a){n();a(!0)}):n();E&&e.push(function(a){d=E(a)});p.setHost({end:function(){m||((d||O)(void 0),b(void 0))},cancel:function(){m||((d||O)(!0),b(!0))}});c.chain(e,b);return p}}}}}]}]).provider("$$animateJsDriver",["$$animationProvider",function(a){a.drivers.push("$$animateJsDriver");this.$get=["$$animateJs","$$AnimateRunner",function(a,c){function d(c){return a(c.element,c.event,c.classes,
+c.options)}return function(a){if(a.from&&a.to){var b=d(a.from),n=d(a.to);if(b||n)return{start:function(){function a(){return function(){s(d,function(a){a.end()})}}var d=[];b&&d.push(b.start());n&&d.push(n.start());c.all(d,function(a){e.complete(a)});var e=new c({end:a(),cancel:a()});return e}}}else return d(a)}}]}])})(window,window.angular);
+//# sourceMappingURL=angular-animate.min.js.map
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-animate.min.js.map b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-animate.min.js.map
new file mode 100644
index 00000000..a68ac313
--- /dev/null
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-animate.min.js.map
@@ -0,0 +1,8 @@
+{
+"version":3,
+"file":"angular-animate.min.js",
+"lineCount":54,
+"mappings":"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",
+"sources":["angular-animate.js"],
+"names":["window","angular","undefined","assertArg","arg","name","reason","ngMinErr","mergeClasses","a","b","isArray","join","packageStyles","options","styles","to","from","pendClasses","classes","fix","isPrefix","className","isString","length","split","forEach","klass","i","stripCommentsFromElement","element","jqLite","ELEMENT_NODE","nodeType","extractElementNode","elm","$$addClass","$$jqLite","addClass","$$removeClass","removeClass","applyAnimationClassesFactory","prepareAnimationOptions","$$prepared","domOperation","noop","options.domOperation","$$domOperationFired","applyAnimationStyles","applyAnimationFromStyles","applyAnimationToStyles","css","mergeAnimationDetails","oldAnimation","newAnimation","target","newOptions","toAdd","toRemove","resolveElementClasses","attr","preparationClasses","concatWithSpace","realDomOperation","extend","existing","splitClassesToLookup","obj","flags","value","key","ADD_CLASS","REMOVE_CLASS","val","prop","allow","getDomNode","applyGeneratedPreparationClasses","event","EVENT_CLASS_PREFIX","ADD_CLASS_SUFFIX","REMOVE_CLASS_SUFFIX","blockTransitions","node","duration","applyInlineStyle","TRANSITION_DELAY_PROP","blockKeyframeAnimations","applyBlock","ANIMATION_PROP","ANIMATION_PLAYSTATE_KEY","styleTuple","style","computeCssStyles","$window","properties","Object","create","detectedStyles","getComputedStyle","formalStyleName","actualStyleName","c","charAt","parseMaxTime","str","maxValue","values","substring","parseFloat","Math","max","truthyTimingValue","getCssTransitionDurationStyle","applyOnlyDuration","TRANSITION_PROP","DURATION_KEY","createLocalCacheLookup","cache","flush","count","entry","total","get","put","registerRestorableStyles","backup","isDefined","getPropertyValue","copy","isObject","isUndefined","isFunction","isElement","TRANSITIONEND_EVENT","ANIMATIONEND_EVENT","ontransitionend","onwebkittransitionend","onanimationend","onwebkitanimationend","ANIMATION_DELAY_PROP","DELAY_KEY","ANIMATION_DURATION_PROP","TRANSITION_DURATION_PROP","$$minErr","DETECT_CSS_PROPERTIES","transitionDuration","transitionDelay","transitionProperty","PROPERTY_KEY","animationDuration","animationDelay","animationIterationCount","ANIMATION_ITERATION_COUNT_KEY","DETECT_STAGGER_CSS_PROPERTIES","module","directive","$$AnimateChildrenDirective","$interpolate","link","scope","attrs","setData","data","NG_ANIMATE_CHILDREN_DATA","ngAnimateChildren","$observe","factory","$$rAFSchedulerFactory","$$rAF","scheduler","tasks","queue","concat","nextTick","items","shift","cancelFn","waitUntilQuiet","scheduler.waitUntilQuiet","fn","provider","$$AnimateQueueProvider","$animateProvider","makeTruthyCssClassMap","classString","keys","ONE_SPACE","map","hasMatchingClasses","newClassString","currentClassString","currentClassMap","some","isAllowed","ruleType","currentAnimation","previousAnimation","rules","hasAnimationClasses","animation","and","skip","cancel","push","structural","RUNNING_STATE","state","nA","nR","cA","cR","$get","$rootScope","$rootElement","$document","$$HashMap","$$animation","$$AnimateRunner","$templateRequest","$$forceReflow","postDigestTaskFactory","postDigestCalled","$$postDigest","findCallbacks","parent","targetNode","targetParentNode","matches","entries","callbackRegistry","contains","call","callback","queueAnimation","initialOptions","notifyProgress","runner","phase","runInNextPostDigestOrNow","callbacks","progress","close","reject","activeClasses","applyAnimationClasses","complete","isAnimatableClassName","isStructural","indexOf","documentHidden","rawDocument","hidden","skipAnimations","animationsEnabled","disabledElementsLookup","existingAnimation","activeAnimationsLookup","hasExistingAnimation","PRE_DIGEST_STATE","areAnimationsAllowed","closeChildAnimations","skipAnimationFlag","cancelAnimationFlag","end","joinAnimationFlag","isValidAnimation","clearElementAnimationState","counter","markElementAnimationState","animationDetails","animationCancelled","realRunner","setHost","done","status","children","querySelectorAll","child","parseInt","getAttribute","NG_ANIMATE_ATTR_NAME","remove","removeAttribute","isMatchingElement","nodeOrElmA","nodeOrElmB","parentElement","bodyElement","body","bodyElementDetected","nodeName","rootElementDetected","parentAnimationDetected","animateChildren","elementDisabled","parentHost","NG_ANIMATE_PIN_DATA","details","parentElementDisabled","parentNode","setAttribute","newValue","oldValue","deregisterWatch","$watch","totalPendingRequests","isEmpty","classNameFilter","test","Node","prototype","compareDocumentPosition","on","container","off","filterFromRegistry","list","matchContainer","matchCallback","containerNode","filter","arguments","pin","enabled","bool","argCount","hasElement","recordExists","$$AnimationProvider","getRunner","RUNNER_STORAGE_KEY","drivers","$injector","$$rAFScheduler","sortAnimations","animations","processNode","processed","elementNode","domNode","lookup","parentEntry","tree","flatten","result","remainingLevelEntries","nextLevelEntries","row","childEntry","animationQueue","getAnchorNodes","hasAttribute","NG_ANIMATE_REF_ATTR","SELECTOR","anchors","groupAnimations","preparedAnimations","refLookup","index","enterOrMove","anchorNodes","direction","anchor","animationID","usedIndicesLookup","anchorGroups","operations","fromAnimation","toAnimation","lookupKey","toString","group","beforeStart","cssClassesIntersection","indexKey","aa","j","invokeFirstDriver","driverName","has","driver","updateAnimationRunners","newRunner","handleDestroyedElement","rejected","removeData","tempClasses","NG_ANIMATE_CLASSNAME","prepareClassName","PREPARE_CLASS_SUFFIX","groupedAnimations","toBeSortedAnimations","animationEntry","triggerAnimationStart","startAnimationFn","closeFn","targetElement","operation","start","animationRunner","$AnimateCssProvider","gcsLookup","gcsStaggerLookup","$timeout","$sniffer","$$animateQueue","gcsHashFn","extraClasses","parentCounter","computeCachedCssStaggerStyles","cacheKey","stagger","staggerClassName","rafWaitQueue","pageWidth","computeTimings","timings","aD","tD","maxDelay","maxDuration","init","endFn","animationClosed","animationCompleted","animationPaused","$$skipPreparationClasses","temporaryStyles","restoreStyles","setProperty","removeProperty","onDone","events","onAnimationProgress","animationTimerData","ANIMATE_TIMER_KEY","timer","applyBlocking","blockTransition","blockKeyframeAnimation","closeAndReturnNoopAnimator","$$willAnimate","stopPropagation","ev","originalEvent","timeStamp","$manualTimeStamp","Date","now","elapsedTime","toFixed","ELAPSED_TIME_MAX_DECIMAL_PLACES","startTime","maxDelayTime","recalculateTimingStyles","fullClassName","relativeDelay","hasTransitions","hasAnimations","applyAnimationDelay","delay","delayStyle","ONE_SECOND","maxDurationTime","easing","easeProp","easeVal","TIMING_KEY","timerTime","CLOSING_TIME_BUFFER","endTime","animationsData","setupFallbackTimer","currentTimerData","expectedEndTime","onAnimationExpired","cleanupStyles","playPause","playAnimation","arr","splice","maxStagger","itemIndex","floor","runnerHost","resume","runnerHost.resume","pause","runnerHost.pause","transitions","method","structuralClassName","addRemoveClassName","applyClassesEarly","trim","ACTIVE_CLASS_SUFFIX","hasToStyles","keyframeStyle","staggerVal","transitionStyle","durationStyle","staggerIndex","isFirst","skipBlocking","SAFE_FAST_FORWARD_DURATION_VALUE","hasTransitionAll","applyTransitionDuration","applyAnimationDuration","applyTransitionDelay","$$AnimateCssDriverProvider","$$animationProvider","$animateCss","filterCssClasses","replace","getUniqueValues","prepareAnchoredAnimation","outAnchor","inAnchor","calculateAnchorStyles","coords","getBoundingClientRect","bodyNode","scrollTop","scrollLeft","prepareInAnimation","endingClasses","startingClasses","animator","clone","NG_ANIMATE_SHIM_CLASS_NAME","cloneNode","NG_ANIMATE_ANCHOR_CLASS_NAME","rootBodyElement","append","animatorIn","animatorOut","prepareOutAnimation","NG_OUT_ANCHOR_CLASS_NAME","startingAnimator","prepareFromToAnchorAnimation","prepareRegularAnimation","anchorAnimations","outElement","inElement","animationRunners","all","rootNode","initDriverFn","$$AnimateJsProvider","lookupAnimations","flagMap","animationFactory","$$registeredAnimations","applyOptions","executeAnimationFn","args","classesToAdd","classesToRemove","apply","groupEventedAnimations","fnName","ani","endProgressCb","resolved","onAnimationComplete","packageAnimations","startAnimation","runners","animateFn","before","after","afterFn","beforeFn","toUpperCase","substr","onComplete","success","closeActiveAnimations","chain","cancelled","$$AnimateJsDriverProvider","$$animateJs","prepareAnimation","endFnFactory"]
+}
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-aria.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-aria.js
index 8a8e73b2..bd07329f 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-aria.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-aria.js
@@ -1,5 +1,5 @@
/**
- * @license AngularJS v1.4.8
+ * @license AngularJS v1.4.13
* (c) 2010-2015 Google, Inc. http://angularjs.org
* License: MIT
*/
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-aria.min.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-aria.min.js
index 4e6fb7c7..493617c8 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-aria.min.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-aria.min.js
@@ -1,5 +1,5 @@
/*
- AngularJS v1.4.8
+ AngularJS v1.4.13
(c) 2010-2015 Google, Inc. http://angularjs.org
License: MIT
*/
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-aria.min.js.map b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-aria.min.js.map
index 13000e15..13000e15 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-aria.min.js.map
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-aria.min.js.map
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-cookies.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-cookies.js
index 8a04e120..bc472b34 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-cookies.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-cookies.js
@@ -1,5 +1,5 @@
/**
- * @license AngularJS v1.4.8
+ * @license AngularJS v1.4.13
* (c) 2010-2015 Google, Inc. http://angularjs.org
* License: MIT
*/
@@ -39,16 +39,17 @@ angular.module('ngCookies', ['ng']).
* The object may have following properties:
*
* - **path** - `{string}` - The cookie will be available only for this path and its
- * sub-paths. By default, this would be the URL that appears in your base tag.
+ * sub-paths. By default, this is the URL that appears in your `<base>` tag.
* - **domain** - `{string}` - The cookie will be available only for this domain and
- * its sub-domains. For obvious security reasons the user agent will not accept the
- * cookie if the current domain is not a sub domain or equals to the requested domain.
+ * its sub-domains. For security reasons the user agent will not accept the cookie
+ * if the current domain is not a sub-domain of this domain or equal to it.
* - **expires** - `{string|Date}` - String of the form "Wdy, DD Mon YYYY HH:MM:SS GMT"
* or a Date object indicating the exact date/time this cookie will expire.
- * - **secure** - `{boolean}` - The cookie will be available only in secured connection.
+ * - **secure** - `{boolean}` - If `true`, then the cookie will only be available through a
+ * secured connection.
*
- * Note: by default the address that appears in your `<base>` tag will be used as path.
- * This is important so that cookies will be visible for all routes in case html5mode is enabled
+ * Note: By default, the address that appears in your `<base>` tag will be used as the path.
+ * This is important so that cookies will be visible for all routes when html5mode is enabled.
*
**/
var defaults = this.defaults = {};
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-cookies.min.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-cookies.min.js
index 6a1bab08..d2cc5e74 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-cookies.min.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-cookies.min.js
@@ -1,5 +1,5 @@
/*
- AngularJS v1.4.8
+ AngularJS v1.4.13
(c) 2010-2015 Google, Inc. http://angularjs.org
License: MIT
*/
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-cookies.min.js.map b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-cookies.min.js.map
index d269e1f2..555b5103 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-cookies.min.js.map
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-cookies.min.js.map
@@ -2,7 +2,7 @@
"version":3,
"file":"angular-cookies.min.js",
"lineCount":8,
-"mappings":"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",
+"mappings":"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",
"sources":["angular-cookies.js"],
"names":["window","angular","undefined","$$CookieWriter","$document","$log","$browser","cookiePath","baseHref","rawDocument","name","value","options","path","expires","isDefined","isUndefined","isString","Date","str","encodeURIComponent","domain","toUTCString","secure","cookieLength","length","warn","cookie","module","provider","$CookiesProvider","defaults","$get","$$cookieReader","$$cookieWriter","get","key","getObject","fromJson","getAll","put","extend","putObject","toJson","remove","factory","$cookies","$inject","$$CookieWriterProvider"]
}
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-csp.css b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-csp.css
index f3cd926c..f3cd926c 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-csp.css
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-csp.css
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-loader.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-loader.js
index 992b129b..189fe2dc 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-loader.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-loader.js
@@ -1,5 +1,5 @@
/**
- * @license AngularJS v1.4.8
+ * @license AngularJS v1.4.13
* (c) 2010-2015 Google, Inc. http://angularjs.org
* License: MIT
*/
@@ -7,6 +7,34 @@
(function() {'use strict';
function isFunction(value) {return typeof value === 'function';};
+/* global: toDebugString: true */
+
+function serializeObject(obj) {
+ var seen = [];
+
+ return JSON.stringify(obj, function(key, val) {
+ val = toJsonReplacer(key, val);
+ if (isObject(val)) {
+
+ if (seen.indexOf(val) >= 0) return '...';
+
+ seen.push(val);
+ }
+ return val;
+ });
+}
+
+function toDebugString(obj) {
+ if (typeof obj === 'function') {
+ return obj.toString().replace(/ \{[\s\S]*$/, '');
+ } else if (isUndefined(obj)) {
+ return 'undefined';
+ } else if (typeof obj !== 'string') {
+ return serializeObject(obj);
+ }
+ return obj;
+}
+
/**
* @description
*
@@ -59,7 +87,7 @@ function minErr(module, ErrorConstructor) {
return match;
});
- message += '\nhttp://errors.angularjs.org/1.4.8/' +
+ message += '\nhttp://errors.angularjs.org/1.4.13/' +
(module ? module + '/' : '') + code;
for (i = SKIP_INDEXES, paramPrefix = '?'; i < templateArgs.length; i++, paramPrefix = '&') {
@@ -147,7 +175,7 @@ function setupModuleLoader(window) {
* unspecified then the module is being retrieved for further configuration.
* @param {Function=} configFn Optional configuration function for the module. Same as
* {@link angular.Module#config Module#config()}.
- * @returns {module} new module with the {@link angular.Module} api.
+ * @returns {angular.Module} new module with the {@link angular.Module} api.
*/
return function module(name, requires, configFn) {
var assertNotHasOwnProperty = function(name, context) {
@@ -268,9 +296,9 @@ function setupModuleLoader(window) {
* @ngdoc method
* @name angular.Module#decorator
* @module ng
- * @param {string} The name of the service to decorate.
- * @param {Function} This function will be invoked when the service needs to be
- * instantiated and should return the decorated service instance.
+ * @param {string} name The name of the service to decorate.
+ * @param {Function} decorFn This function will be invoked when the service needs to be
+ * instantiated and should return the decorated service instance.
* @description
* See {@link auto.$provide#decorator $provide.decorator()}.
*/
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-loader.min.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-loader.min.js
index 67d08168..605d22f4 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-loader.min.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-loader.min.js
@@ -1,9 +1,9 @@
/*
- AngularJS v1.4.8
+ AngularJS v1.4.13
(c) 2010-2015 Google, Inc. http://angularjs.org
License: MIT
*/
-(function(){'use strict';function d(b){return function(){var a=arguments[0],e;e="["+(b?b+":":"")+a+"] http://errors.angularjs.org/1.4.8/"+(b?b+"/":"")+a;for(a=1;a<arguments.length;a++){e=e+(1==a?"?":"&")+"p"+(a-1)+"=";var d=encodeURIComponent,c;c=arguments[a];c="function"==typeof c?c.toString().replace(/ \{[\s\S]*$/,""):"undefined"==typeof c?"undefined":"string"!=typeof c?JSON.stringify(c):c;e+=d(c)}return Error(e)}}(function(b){function a(c,a,b){return c[a]||(c[a]=b())}var e=d("$injector"),n=d("ng");
+(function(){'use strict';function d(b){return function(){var a=arguments[0],e;e="["+(b?b+":":"")+a+"] http://errors.angularjs.org/1.4.13/"+(b?b+"/":"")+a;for(a=1;a<arguments.length;a++){e=e+(1==a?"?":"&")+"p"+(a-1)+"=";var d=encodeURIComponent,c;c=arguments[a];c="function"==typeof c?c.toString().replace(/ \{[\s\S]*$/,""):"undefined"==typeof c?"undefined":"string"!=typeof c?JSON.stringify(c):c;e+=d(c)}return Error(e)}}(function(b){function a(c,a,b){return c[a]||(c[a]=b())}var e=d("$injector"),n=d("ng");
b=a(b,"angular",Object);b.$$minErr=b.$$minErr||d;return a(b,"module",function(){var c={};return function(b,d,h){if("hasOwnProperty"===b)throw n("badname","module");d&&c.hasOwnProperty(b)&&(c[b]=null);return a(c,b,function(){function c(a,b,d,e){e||(e=f);return function(){e[d||"push"]([a,b,arguments]);return g}}function a(c,e){return function(a,d){d&&"function"===typeof d&&(d.$$moduleName=b);f.push([c,e,arguments]);return g}}if(!d)throw e("nomod",b);var f=[],k=[],l=[],m=c("$injector","invoke","push",
k),g={_invokeQueue:f,_configBlocks:k,_runBlocks:l,requires:d,name:b,provider:a("$provide","provider"),factory:a("$provide","factory"),service:a("$provide","service"),value:c("$provide","value"),constant:c("$provide","constant","unshift"),decorator:a("$provide","decorator"),animation:a("$animateProvider","register"),filter:a("$filterProvider","register"),controller:a("$controllerProvider","register"),directive:a("$compileProvider","directive"),config:m,run:function(a){l.push(a);return this}};h&&m(h);
return g})}})})(window)})(window);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-loader.min.js.map b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-loader.min.js.map
index d59cf1c6..aa748fea 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-loader.min.js.map
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-loader.min.js.map
@@ -2,7 +2,7 @@
"version":3,
"file":"angular-loader.min.js",
"lineCount":9,
-"mappings":"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",
+"mappings":"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",
"sources":["angular-loader.js"],
"names":["minErr","setupModuleLoader","window","ensure","obj","name","factory","$injectorMinErr","ngMinErr","angular","Object","$$minErr","modules","module","requires","configFn","context","hasOwnProperty","invokeLater","provider","method","insertMethod","queue","invokeQueue","arguments","moduleInstance","invokeLaterAndSetModuleName","recipeName","factoryFunction","$$moduleName","push","configBlocks","runBlocks","config","_invokeQueue","_configBlocks","_runBlocks","service","value","constant","decorator","animation","filter","controller","directive","run","block"]
}
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-message-format.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-message-format.js
index 6cdcdd7a..ff87e54f 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-message-format.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-message-format.js
@@ -1,5 +1,5 @@
/**
- * @license AngularJS v1.4.8
+ * @license AngularJS v1.4.13
* (c) 2010-2015 Google, Inc. http://angularjs.org
* License: MIT
*/
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-message-format.min.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-message-format.min.js
index 3d69b5ac..95621e35 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-message-format.min.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-message-format.min.js
@@ -1,5 +1,5 @@
/*
- AngularJS v1.4.8
+ AngularJS v1.4.13
(c) 2010-2015 Google, Inc. http://angularjs.org
License: MIT
*/
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-message-format.min.js.map b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-message-format.min.js.map
index a6da634b..a6da634b 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-message-format.min.js.map
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-message-format.min.js.map
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-messages.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-messages.js
index 8263976b..d995d115 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-messages.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-messages.js
@@ -1,5 +1,5 @@
/**
- * @license AngularJS v1.4.8
+ * @license AngularJS v1.4.13
* (c) 2010-2015 Google, Inc. http://angularjs.org
* License: MIT
*/
@@ -29,45 +29,66 @@ var jqLite = angular.element;
* `ngMessage` and `ngMessageExp` directives.
*
* # Usage
- * The `ngMessages` directive listens on a key/value collection which is set on the ngMessages attribute.
- * Since the {@link ngModel ngModel} directive exposes an `$error` object, this error object can be
- * used with `ngMessages` to display control error messages in an easier way than with just regular angular
- * template directives.
+ * The `ngMessages` directive allows keys in a key/value collection to be associated with a child element
+ * (or 'message') that will show or hide based on the truthiness of that key's value in the collection. A common use
+ * case for `ngMessages` is to display error messages for inputs using the `$error` object exposed by the
+ * {@link ngModel ngModel} directive.
+ *
+ * The child elements of the `ngMessages` directive are matched to the collection keys by a `ngMessage` or
+ * `ngMessageExp` directive. The value of these attributes must match a key in the collection that is provided by
+ * the `ngMessages` directive.
+ *
+ * Consider the following example, which illustrates a typical use case of `ngMessages`. Within the form `myForm` we
+ * have a text input named `myField` which is bound to the scope variable `field` using the {@link ngModel ngModel}
+ * directive.
+ *
+ * The `myField` field is a required input of type `email` with a maximum length of 15 characters.
*
* ```html
* <form name="myForm">
* <label>
* Enter text:
- * <input type="text" ng-model="field" name="myField" required minlength="5" />
+ * <input type="email" ng-model="field" name="myField" required maxlength="15" />
* </label>
* <div ng-messages="myForm.myField.$error" role="alert">
- * <div ng-message="required">You did not enter a field</div>
- * <div ng-message="minlength, maxlength">
- * Your email must be between 5 and 100 characters long
- * </div>
+ * <div ng-message="required">Please enter a value for this field.</div>
+ * <div ng-message="email">This field must be a valid email address.</div>
+ * <div ng-message="maxlength">This field can be at most 15 characters long.</div>
* </div>
* </form>
* ```
*
- * Now whatever key/value entries are present within the provided object (in this case `$error`) then
- * the ngMessages directive will render the inner first ngMessage directive (depending if the key values
- * match the attribute value present on each ngMessage directive). In other words, if your errors
- * object contains the following data:
+ * In order to show error messages corresponding to `myField` we first create an element with an `ngMessages` attribute
+ * set to the `$error` object owned by the `myField` input in our `myForm` form.
+ *
+ * Within this element we then create separate elements for each of the possible errors that `myField` could have.
+ * The `ngMessage` attribute is used to declare which element(s) will appear for which error - for example,
+ * setting `ng-message="required"` specifies that this particular element should be displayed when there
+ * is no value present for the required field `myField` (because the key `required` will be `true` in the object
+ * `myForm.myField.$error`).
+ *
+ * ### Message order
+ *
+ * By default, `ngMessages` will only display one message for a particular key/value collection at any time. If more
+ * than one message (or error) key is currently true, then which message is shown is determined by the order of messages
+ * in the HTML template code (messages declared first are prioritised). This mechanism means the developer does not have
+ * to prioritise messages using custom JavaScript code.
+ *
+ * Given the following error object for our example (which informs us that the field `myField` currently has both the
+ * `required` and `email` errors):
*
* ```javascript
* <!-- keep in mind that ngModel automatically sets these error flags -->
- * myField.$error = { minlength : true, required : true };
+ * myField.$error = { required : true, email: true, maxlength: false };
* ```
+ * The `required` message will be displayed to the user since it appears before the `email` message in the DOM.
+ * Once the user types a single character, the `required` message will disappear (since the field now has a value)
+ * but the `email` message will be visible because it is still applicable.
*
- * Then the `required` message will be displayed first. When required is false then the `minlength` message
- * will be displayed right after (since these messages are ordered this way in the template HTML code).
- * The prioritization of each message is determined by what order they're present in the DOM.
- * Therefore, instead of having custom JavaScript code determine the priority of what errors are
- * present before others, the presentation of the errors are handled within the template.
+ * ### Displaying multiple messages at the same time
*
- * By default, ngMessages will only display one error at a time. However, if you wish to display all
- * messages then the `ng-messages-multiple` attribute flag can be used on the element containing the
- * ngMessages directive to make this happen.
+ * While `ngMessages` will by default only display one error element at a time, the `ng-messages-multiple` attribute can
+ * be applied to the `ngMessages` container element to cause it to display all applicable error messages at once:
*
* ```html
* <!-- attribute-style usage -->
@@ -394,6 +415,13 @@ angular.module('ngMessages', [])
$scope.$watchCollection($attrs.ngMessages || $attrs['for'], ctrl.render);
+ // If the element is destroyed, proactively destroy all the currently visible messages
+ $element.on('$destroy', function() {
+ forEach(messages, function(item) {
+ item.message.detach();
+ });
+ });
+
this.reRender = function() {
if (!renderLater) {
renderLater = true;
@@ -428,6 +456,7 @@ angular.module('ngMessages', [])
function findPreviousMessage(parent, comment) {
var prevNode = comment;
var parentLookup = [];
+
while (prevNode && prevNode !== parent) {
var prevKey = prevNode.$$ngMessageNode;
if (prevKey && prevKey.length) {
@@ -439,8 +468,11 @@ angular.module('ngMessages', [])
if (prevNode.childNodes.length && parentLookup.indexOf(prevNode) == -1) {
parentLookup.push(prevNode);
prevNode = prevNode.childNodes[prevNode.childNodes.length - 1];
+ } else if (prevNode.previousSibling) {
+ prevNode = prevNode.previousSibling;
} else {
- prevNode = prevNode.previousSibling || prevNode.parentNode;
+ prevNode = prevNode.parentNode;
+ parentLookup.push(prevNode);
}
}
}
@@ -648,8 +680,8 @@ function ngMessageDirectiveFactory(restrict) {
// when we are destroying the node later.
var $$attachId = currentElement.$$attachId = ngMessagesCtrl.getAttachId();
- // in the event that the parent element is destroyed
- // by any other structural directive then it's time
+ // in the event that the element or a parent element is destroyed
+ // by another structural directive then it's time
// to deregister the message from the controller
currentElement.on('$destroy', function() {
if (currentElement && currentElement.$$attachId === $$attachId) {
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-messages.min.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-messages.min.js
new file mode 100644
index 00000000..f25f94d8
--- /dev/null
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-messages.min.js
@@ -0,0 +1,12 @@
+/*
+ AngularJS v1.4.13
+ (c) 2010-2015 Google, Inc. http://angularjs.org
+ License: MIT
+*/
+(function(z,b,A){'use strict';function m(b){return["$animate",function(r){return{restrict:"AE",transclude:"element",terminal:!0,require:"^^ngMessages",link:function(n,e,a,f,l){var g=e[0],p,b=a.ngMessage||a.when;a=a.ngMessageExp||a.whenExp;var k=function(d){p=d?w(d)?d:d.split(/[\s,]+/):null;f.reRender()};a?(k(n.$eval(a)),n.$watchCollection(a,k)):k(b);var h,q;f.register(g,q={test:function(d){var a=p;d=a?w(a)?0<=a.indexOf(d):a.hasOwnProperty(d):void 0;return d},attach:function(){h||l(n,function(d){r.enter(d,
+null,e);h=d;var a=h.$$attachId=f.getAttachId();h.on("$destroy",function(){h&&h.$$attachId===a&&(f.deregister(g),q.detach())})})},detach:function(){if(h){var d=h;h=null;r.leave(d)}}})}}}]}var w=b.isArray,t=b.forEach,x=b.isString,y=b.element;b.module("ngMessages",[]).directive("ngMessages",["$animate",function(b){function r(e,a){return x(a)&&0===a.length||n(e.$eval(a))}function n(e){return x(e)?e.length:!!e}return{require:"ngMessages",restrict:"AE",controller:["$element","$scope","$attrs",function(e,
+a,f){function l(d,a){for(var c=a,e=[];c&&c!==d;){var g=c.$$ngMessageNode;if(g&&g.length)return k[g];c.childNodes.length&&-1==e.indexOf(c)?(e.push(c),c=c.childNodes[c.childNodes.length-1]):c.previousSibling?c=c.previousSibling:(c=c.parentNode,e.push(c))}}var g=this,p=0,m=0;this.getAttachId=function(){return m++};var k=this.messages={},h,q;this.render=function(d){d=d||{};h=!1;q=d;for(var k=r(a,f.ngMessagesMultiple)||r(a,f.multiple),c=[],p={},s=g.head,l=!1,m=0;null!=s;){m++;var u=s.message,v=!1;l||t(d,
+function(d,a){!v&&n(d)&&u.test(a)&&!p[a]&&(v=p[a]=!0,u.attach())});v?l=!k:c.push(u);s=s.next}t(c,function(a){a.detach()});c.length!==m?b.setClass(e,"ng-active","ng-inactive"):b.setClass(e,"ng-inactive","ng-active")};a.$watchCollection(f.ngMessages||f["for"],g.render);e.on("$destroy",function(){t(k,function(a){a.message.detach()})});this.reRender=function(){h||(h=!0,a.$evalAsync(function(){h&&q&&g.render(q)}))};this.register=function(a,h){var c=p.toString();k[c]={message:h};var f=e[0],b=k[c];g.head?
+(f=l(f,a))?(b.next=f.next,f.next=b):(b.next=g.head,g.head=b):g.head=b;a.$$ngMessageNode=c;p++;g.reRender()};this.deregister=function(a){var b=a.$$ngMessageNode;delete a.$$ngMessageNode;var c=k[b];(a=l(e[0],a))?a.next=c.next:g.head=c.next;delete k[b];g.reRender()}}]}}]).directive("ngMessagesInclude",["$templateRequest","$document","$compile",function(b,m,n){return{restrict:"AE",require:"^^ngMessages",link:function(e,a,f){var l=f.ngMessagesInclude||f.src;b(l).then(function(b){n(b)(e,function(b){a.after(b);
+b=y(m[0].createComment(" ngMessagesInclude: "+l+" "));a.after(b);a.remove()})})}}}]).directive("ngMessage",m("AE")).directive("ngMessageExp",m("A"))})(window,window.angular);
+//# sourceMappingURL=angular-messages.min.js.map
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-messages.min.js.map b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-messages.min.js.map
new file mode 100644
index 00000000..670e6ec3
--- /dev/null
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-messages.min.js.map
@@ -0,0 +1,8 @@
+{
+"version":3,
+"file":"angular-messages.min.js",
+"lineCount":11,
+"mappings":"A;;;;;aAKC,SAAQ,CAACA,CAAD,CAASC,CAAT,CAAkBC,CAAlB,CAA6B,CAynBtCC,QAASA,EAAyB,CAACC,CAAD,CAAW,CAC3C,MAAO,CAAC,UAAD,CAAa,QAAQ,CAACC,CAAD,CAAW,CACrC,MAAO,CACLD,SAAU,IADL,CAELE,WAAY,SAFP,CAGLC,SAAU,CAAA,CAHL,CAILC,QAAS,cAJJ,CAKLC,KAAMA,QAAQ,CAACC,CAAD,CAAQC,CAAR,CAAiBC,CAAjB,CAAwBC,CAAxB,CAAwCC,CAAxC,CAAqD,CACjE,IAAIC,EAAcJ,CAAA,CAAQ,CAAR,CAAlB,CAEIK,CAFJ,CAGIC,EAAYL,CAAAM,UAAZD,EAA+BL,CAAAO,KAC/BC,EAAAA,CAAaR,CAAAS,aAAbD,EAAmCR,CAAAU,QACvC,KAAIC,EAAgBA,QAAQ,CAACC,CAAD,CAAQ,CAClCR,CAAA,CAAUQ,CAAA,CACHC,CAAA,CAAQD,CAAR,CAAA,CACKA,CADL,CAEKA,CAAAE,MAAA,CAAY,QAAZ,CAHF,CAIJ,IACNb,EAAAc,SAAA,EANkC,CAShCP,EAAJ,EACEG,CAAA,CAAcb,CAAAkB,MAAA,CAAYR,CAAZ,CAAd,CACA,CAAAV,CAAAmB,iBAAA,CAAuBT,CAAvB,CAAmCG,CAAnC,CAFF,EAIEA,CAAA,CAAcN,CAAd,CAnB+D,KAsB7Da,CAtB6D,CAsB7CC,CACpBlB,EAAAmB,SAAA,CAAwBjB,CAAxB,CAAqCgB,CAArC,CAAmD,CACjDE,KAAMA,QAAQ,CAACC,CAAD,CAAO,CACHlB,IAAAA,EAAAA,CAsCtB,EAAA,CADEmB,CAAJ,CACSV,CAAA,CAAQU,CAAR,CAAA,CAC0B,CAD1B,EACDA,CAAAC,QAAA,CAvCyBF,CAuCzB,CADC,CAEDC,CAAAE,eAAA,CAxCyBH,CAwCzB,CAHR,CADiC,IAAA,EApCzB,OAAO,EADY,CAD4B,CAIjDI,OAAQA,QAAQ,EAAG,CACZR,CAAL,EACEhB,CAAA,CAAYJ,CAAZ,CAAmB,QAAQ,CAAC6B,CAAD,CAAM,CAC/BlC,CAAAmC,MAAA,CAAeD,CAAf;AAAoB,IAApB,CAA0B5B,CAA1B,CACAmB,EAAA,CAAiBS,CAIjB,KAAIE,EAAaX,CAAAW,WAAbA,CAAyC5B,CAAA6B,YAAA,EAK7CZ,EAAAa,GAAA,CAAkB,UAAlB,CAA8B,QAAQ,EAAG,CACnCb,CAAJ,EAAsBA,CAAAW,WAAtB,GAAoDA,CAApD,GACE5B,CAAA+B,WAAA,CAA0B7B,CAA1B,CACA,CAAAgB,CAAAc,OAAA,EAFF,CADuC,CAAzC,CAX+B,CAAjC,CAFe,CAJ8B,CA0BjDA,OAAQA,QAAQ,EAAG,CACjB,GAAIf,CAAJ,CAAoB,CAClB,IAAIS,EAAMT,CACVA,EAAA,CAAiB,IACjBzB,EAAAyC,MAAA,CAAeP,CAAf,CAHkB,CADH,CA1B8B,CAAnD,CAvBiE,CAL9D,CAD8B,CAAhC,CADoC,CArnB7C,IAAId,EAAUxB,CAAAwB,QAAd,CACIsB,EAAU9C,CAAA8C,QADd,CAEIC,EAAW/C,CAAA+C,SAFf,CAGIC,EAAShD,CAAAU,QAiQbV,EAAAiD,OAAA,CAAe,YAAf,CAA6B,EAA7B,CAAAC,UAAA,CA0Ec,YA1Ed,CA0E4B,CAAC,UAAD,CAAa,QAAQ,CAAC9C,CAAD,CAAW,CAqKvD+C,QAASA,EAAY,CAAC1C,CAAD,CAAQ2C,CAAR,CAAc,CAClC,MAAQL,EAAA,CAASK,CAAT,CAAR,EAA0C,CAA1C,GAA0BA,CAAAC,OAA1B,EACOC,CAAA,CAAO7C,CAAAkB,MAAA,CAAYyB,CAAZ,CAAP,CAF2B,CAKnCE,QAASA,EAAM,CAACC,CAAD,CAAM,CACnB,MAAOR,EAAA,CAASQ,CAAT,CAAA,CAAgBA,CAAAF,OAAhB,CAA6B,CAAEE,CAAAA,CADnB,CAtKrB,MAAO,CACLhD,QAAS,YADJ,CAELJ,SAAU,IAFL,CAGLqD,WAAY,CAAC,UAAD,CAAa,QAAb,CAAuB,QAAvB,CAAiC,QAAQ,CAACC,CAAD;AAAWC,CAAX,CAAmBC,CAAnB,CAA2B,CAyG9EC,QAASA,EAAmB,CAACC,CAAD,CAASC,CAAT,CAAkB,CAI5C,IAHA,IAAIC,EAAWD,CAAf,CACIE,EAAe,EAEnB,CAAOD,CAAP,EAAmBA,CAAnB,GAAgCF,CAAhC,CAAA,CAAwC,CACtC,IAAII,EAAUF,CAAAG,gBACd,IAAID,CAAJ,EAAeA,CAAAZ,OAAf,CACE,MAAOc,EAAA,CAASF,CAAT,CAKLF,EAAAK,WAAAf,OAAJ,EAAqE,EAArE,EAAkCW,CAAA7B,QAAA,CAAqB4B,CAArB,CAAlC,EACEC,CAAAK,KAAA,CAAkBN,CAAlB,CACA,CAAAA,CAAA,CAAWA,CAAAK,WAAA,CAAoBL,CAAAK,WAAAf,OAApB,CAAiD,CAAjD,CAFb,EAGWU,CAAAO,gBAAJ,CACLP,CADK,CACMA,CAAAO,gBADN,EAGLP,CACA,CADWA,CAAAQ,WACX,CAAAP,CAAAK,KAAA,CAAkBN,CAAlB,CAJK,CAX+B,CAJI,CAxG9C,IAAIS,EAAO,IAAX,CACIC,EAAY,CADhB,CAEIC,EAAe,CAEnB,KAAAjC,YAAA,CAAmBkC,QAAoB,EAAG,CAAE,MAAOD,EAAA,EAAT,CAE1C,KAAIP,EAAW,IAAAA,SAAXA,CAA2B,EAA/B,CACIS,CADJ,CACiBC,CAEjB,KAAAC,OAAA,CAAcC,QAAQ,CAAC7C,CAAD,CAAa,CACjCA,CAAA,CAAaA,CAAb,EAA2B,EAE3B0C,EAAA,CAAc,CAAA,CACdC,EAAA,CAAmB3C,CAanB,KAVA,IAAI8C,EAAW7B,CAAA,CAAaO,CAAb,CAAqBC,CAAAsB,mBAArB,CAAXD,EACW7B,CAAA,CAAaO,CAAb,CAAqBC,CAAAqB,SAArB,CADf,CAGIE,EAAoB,EAHxB,CAIIC,EAAc,EAJlB,CAKIC,EAAcZ,CAAAa,KALlB,CAMIC,EAAe,CAAA,CANnB,CAOIC,EAAgB,CAGpB,CAAsB,IAAtB,EAAOH,CAAP,CAAA,CAA4B,CAC1BG,CAAA,EACA,KAAIzD,EAAcsD,CAAAI,QAAlB,CAEIC,EAAc,CAAA,CACbH,EAAL,EACExC,CAAA,CAAQZ,CAAR;AAAoB,QAAQ,CAACwD,CAAD,CAAQC,CAAR,CAAa,CAClCF,CAAAA,CAAL,EAAoBnC,CAAA,CAAOoC,CAAP,CAApB,EAAqC5D,CAAAE,KAAA,CAAiB2D,CAAjB,CAArC,EAEM,CAAAR,CAAA,CAAYQ,CAAZ,CAFN,GAKEF,CACA,CAHAN,CAAA,CAAYQ,CAAZ,CAGA,CAHmB,CAAA,CAGnB,CAAA7D,CAAAO,OAAA,EANF,CADuC,CAAzC,CAYEoD,EAAJ,CAGEH,CAHF,CAGiB,CAACN,CAHlB,CAKEE,CAAAb,KAAA,CAAuBvC,CAAvB,CAGFsD,EAAA,CAAcA,CAAAQ,KA1BY,CA6B5B9C,CAAA,CAAQoC,CAAR,CAA2B,QAAQ,CAACpD,CAAD,CAAc,CAC/CA,CAAAc,OAAA,EAD+C,CAAjD,CAIAsC,EAAA7B,OAAA,GAA6BkC,CAA7B,CACKnF,CAAAyF,SAAA,CAAkBpC,CAAlB,CAnEQqC,WAmER,CAlEUC,aAkEV,CADL,CAEK3F,CAAAyF,SAAA,CAAkBpC,CAAlB,CAnEUsC,aAmEV,CApEQD,WAoER,CApD4B,CAuDnCpC,EAAA9B,iBAAA,CAAwB+B,CAAAqC,WAAxB,EAA6CrC,CAAA,CAAO,KAAP,CAA7C,CAA4Da,CAAAM,OAA5D,CAGArB,EAAAf,GAAA,CAAY,UAAZ,CAAwB,QAAQ,EAAG,CACjCI,CAAA,CAAQqB,CAAR,CAAkB,QAAQ,CAAC8B,CAAD,CAAO,CAC/BA,CAAAT,QAAA5C,OAAA,EAD+B,CAAjC,CADiC,CAAnC,CAMA,KAAAlB,SAAA,CAAgBwE,QAAQ,EAAG,CACpBtB,CAAL,GACEA,CACA,CADc,CAAA,CACd,CAAAlB,CAAAyC,WAAA,CAAkB,QAAQ,EAAG,CACvBvB,CAAJ,EACEC,CADF,EACsBL,CAAAM,OAAA,CAAYD,CAAZ,CAFK,CAA7B,CAFF,CADyB,CAW3B,KAAA9C,SAAA,CAAgBqE,QAAQ,CAACtC,CAAD,CAAUhC,CAAV,CAAuB,CAC7C,IAAIuE,EAAU5B,CAAA6B,SAAA,EACdnC,EAAA,CAASkC,CAAT,CAAA,CAAoB,CAClBb,QAAS1D,CADS,CAGF,KAAA,EAAA2B,CAAA,CAAS,CAAT,CAAA,CAwCd8C,EAAcpC,CAAA,CAxCsBkC,CAwCtB,CACb7B,EAAAa,KAAL;AAIE,CADImB,CACJ,CADY5C,CAAA,CAAoBC,CAApB,CA5CiBC,CA4CjB,CACZ,GACEyC,CAAAX,KACA,CADmBY,CAAAZ,KACnB,CAAAY,CAAAZ,KAAA,CAAaW,CAFf,GAIEA,CAAAX,KACA,CADmBpB,CAAAa,KACnB,CAAAb,CAAAa,KAAA,CAAYkB,CALd,CAJF,CACE/B,CAAAa,KADF,CACckB,CAzCdzC,EAAAI,gBAAA,CAA0BmC,CAC1B5B,EAAA,EAEAD,EAAA9C,SAAA,EAT6C,CAY/C,KAAAiB,WAAA,CAAkB8D,QAAQ,CAAC3C,CAAD,CAAU,CAClC,IAAI6B,EAAM7B,CAAAI,gBACV,QAAOJ,CAAAI,gBA+CP,KAAIqC,EAAcpC,CAAA,CA9CsBwB,CA8CtB,CAGlB,EADIa,CACJ,CADY5C,CAAA,CAhDMH,CAAAI,CAAS,CAATA,CAgDN,CAhDmBC,CAgDnB,CACZ,EACE0C,CAAAZ,KADF,CACeW,CAAAX,KADf,CAGEpB,CAAAa,KAHF,CAGckB,CAAAX,KAnDd,QAAOzB,CAAA,CAASwB,CAAT,CACPnB,EAAA9C,SAAA,EALkC,CAjG0C,CAApE,CAHP,CAJgD,CAAhC,CA1E5B,CAAAwB,UAAA,CAuRc,mBAvRd,CAwRK,CAAC,kBAAD,CAAqB,WAArB,CAAkC,UAAlC,CAA8C,QAAQ,CAACwD,CAAD,CAAmBC,CAAnB,CAA8BC,CAA9B,CAAwC,CAE9F,MAAO,CACLzG,SAAU,IADL,CAELI,QAAS,cAFJ,CAGLC,KAAMA,QAAQ,CAACkD,CAAD,CAAShD,CAAT,CAAkBC,CAAlB,CAAyB,CACrC,IAAIkG,EAAMlG,CAAAmG,kBAAND,EAAiClG,CAAAkG,IACrCH,EAAA,CAAiBG,CAAjB,CAAAE,KAAA,CAA2B,QAAQ,CAACC,CAAD,CAAO,CACxCJ,CAAA,CAASI,CAAT,CAAA,CAAetD,CAAf,CAAuB,QAAQ,CAACuD,CAAD,CAAW,CACxCvG,CAAAwG,MAAA,CAAcD,CAAd,CAGIE;CAAAA,CAASnE,CAAA,CAAO2D,CAAA,CAAU,CAAV,CAAAS,cAAA,CAA2B,sBAA3B,CAAoDP,CAApD,CAA0D,GAA1D,CAAP,CACbnG,EAAAwG,MAAA,CAAcC,CAAd,CAGAzG,EAAA2G,OAAA,EARwC,CAA1C,CADwC,CAA1C,CAFqC,CAHlC,CAFuF,CAA9F,CAxRL,CAAAnE,UAAA,CA+Ua,WA/Ub,CA+U0BhD,CAAA,CAA0B,IAA1B,CA/U1B,CAAAgD,UAAA,CA+Wa,cA/Wb,CA+W6BhD,CAAA,CAA0B,GAA1B,CA/W7B,CAxQsC,CAArC,CAAD,CAusBGH,MAvsBH,CAusBWA,MAAAC,QAvsBX;",
+"sources":["angular-messages.js"],
+"names":["window","angular","undefined","ngMessageDirectiveFactory","restrict","$animate","transclude","terminal","require","link","scope","element","attrs","ngMessagesCtrl","$transclude","commentNode","records","staticExp","ngMessage","when","dynamicExp","ngMessageExp","whenExp","assignRecords","items","isArray","split","reRender","$eval","$watchCollection","currentElement","messageCtrl","register","test","name","collection","indexOf","hasOwnProperty","attach","elm","enter","$$attachId","getAttachId","on","deregister","detach","leave","forEach","isString","jqLite","module","directive","isAttrTruthy","attr","length","truthy","val","controller","$element","$scope","$attrs","findPreviousMessage","parent","comment","prevNode","parentLookup","prevKey","$$ngMessageNode","messages","childNodes","push","previousSibling","parentNode","ctrl","latestKey","nextAttachId","this.getAttachId","renderLater","cachedCollection","render","this.render","multiple","ngMessagesMultiple","unmatchedMessages","matchedKeys","messageItem","head","messageFound","totalMessages","message","messageUsed","value","key","next","setClass","ACTIVE_CLASS","INACTIVE_CLASS","ngMessages","item","this.reRender","$evalAsync","this.register","nextKey","toString","messageNode","match","this.deregister","$templateRequest","$document","$compile","src","ngMessagesInclude","then","html","contents","after","anchor","createComment","remove"]
+}
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-mocks.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-mocks.js
index 917d8427..36314268 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-mocks.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-mocks.js
@@ -1,5 +1,5 @@
/**
- * @license AngularJS v1.4.8
+ * @license AngularJS v1.4.13
* (c) 2010-2015 Google, Inc. http://angularjs.org
* License: MIT
*/
@@ -758,6 +758,15 @@ angular.mock.TzDate = function(offset, timestamp) {
angular.mock.TzDate.prototype = Date.prototype;
/* jshint +W101 */
+
+/**
+ * @ngdoc service
+ * @name $animate
+ *
+ * @description
+ * Mock implementation of the {@link ng.$animate `$animate`} service. Exposes two additional methods
+ * for testing animations.
+ */
angular.mock.animate = angular.module('ngAnimateMock', ['ng'])
.config(['$provide', function($provide) {
@@ -790,9 +799,50 @@ angular.mock.animate = angular.module('ngAnimateMock', ['ng'])
return queueFn;
});
- $provide.decorator('$animate', ['$delegate', '$timeout', '$browser', '$$rAF',
+ $provide.decorator('$$animateJs', ['$delegate', function($delegate) {
+ var runners = [];
+
+ var animateJsConstructor = function() {
+ var animator = $delegate.apply($delegate, arguments);
+ // If no javascript animation is found, animator is undefined
+ if (animator) {
+ runners.push(animator);
+ }
+ return animator;
+ };
+
+ animateJsConstructor.$closeAndFlush = function() {
+ runners.forEach(function(runner) {
+ runner.end();
+ });
+ runners = [];
+ };
+
+ return animateJsConstructor;
+ }]);
+
+ $provide.decorator('$animateCss', ['$delegate', function($delegate) {
+ var runners = [];
+
+ var animateCssConstructor = function(element, options) {
+ var animator = $delegate(element, options);
+ runners.push(animator);
+ return animator;
+ };
+
+ animateCssConstructor.$closeAndFlush = function() {
+ runners.forEach(function(runner) {
+ runner.end();
+ });
+ runners = [];
+ };
+
+ return animateCssConstructor;
+ }]);
+
+ $provide.decorator('$animate', ['$delegate', '$timeout', '$browser', '$$rAF', '$animateCss', '$$animateJs',
'$$forceReflow', '$$animateAsyncRun', '$rootScope',
- function($delegate, $timeout, $browser, $$rAF,
+ function($delegate, $timeout, $browser, $$rAF, $animateCss, $$animateJs,
$$forceReflow, $$animateAsyncRun, $rootScope) {
var animate = {
queue: [],
@@ -804,7 +854,35 @@ angular.mock.animate = angular.module('ngAnimateMock', ['ng'])
return $$forceReflow.totalReflows;
},
enabled: $delegate.enabled,
- flush: function() {
+ /**
+ * @ngdoc method
+ * @name $animate#closeAndFlush
+ * @description
+ *
+ * This method will close all pending animations (both {@link ngAnimate#javascript-based-animations Javascript}
+ * and {@link ngAnimate.$animateCss CSS}) and it will also flush any remaining animation frames and/or callbacks.
+ */
+ closeAndFlush: function() {
+ // we allow the flush command to swallow the errors
+ // because depending on whether CSS or JS animations are
+ // used, there may not be a RAF flush. The primary flush
+ // at the end of this function must throw an exception
+ // because it will track if there were pending animations
+ this.flush(true);
+ $animateCss.$closeAndFlush();
+ $$animateJs.$closeAndFlush();
+ this.flush();
+ },
+ /**
+ * @ngdoc method
+ * @name $animate#flush
+ * @description
+ *
+ * This method is used to flush the pending callbacks and animation frames to either start
+ * an animation or conclude an animation. Note that this will not actually close an
+ * actively running animation (see {@link ngMock.$animate#closeAndFlush `closeAndFlush()`} for that).
+ */
+ flush: function(hideErrors) {
$rootScope.$digest();
var doNextRun, somethingFlushed = false;
@@ -821,7 +899,7 @@ angular.mock.animate = angular.module('ngAnimateMock', ['ng'])
}
} while (doNextRun);
- if (!somethingFlushed) {
+ if (!somethingFlushed && !hideErrors) {
throw new Error('No pending animations ready to be closed or flushed');
}
@@ -1170,7 +1248,8 @@ function createHttpBackendMock($rootScope, $timeout, $delegate, $browser) {
}
// TODO(vojta): change params to: method, url, data, headers, callback
- function $httpBackend(method, url, data, callback, headers, timeout, withCredentials) {
+ function $httpBackend(method, url, data, callback, headers, timeout, withCredentials, responseType) {
+
var xhr = new MockXhr(),
expectation = expectations[0],
wasExpected = false;
@@ -1234,7 +1313,7 @@ function createHttpBackendMock($rootScope, $timeout, $delegate, $browser) {
// if $browser specified, we do auto flush all requests
($browser ? $browser.defer : responsesPush)(wrapResponse(definition));
} else if (definition.passThrough) {
- $delegate(method, url, data, callback, headers, timeout, withCredentials);
+ $delegate(method, url, data, callback, headers, timeout, withCredentials, responseType);
} else throw new Error('No response defined !');
return;
}
@@ -1837,9 +1916,9 @@ angular.mock.$RootElementProvider = function() {
*
* // Controller definition ...
*
- * myMod.controller('MyDirectiveController', ['log', function($log) {
+ * myMod.controller('MyDirectiveController', ['$log', function($log) {
* $log.info(this.name);
- * })];
+ * }]);
*
*
* // In a test ...
@@ -1849,7 +1928,7 @@ angular.mock.$RootElementProvider = function() {
* var ctrl = $controller('MyDirectiveController', { /* no locals &#42;/ }, { name: 'Clark Kent' });
* expect(ctrl.name).toEqual('Clark Kent');
* expect($log.info.logs).toEqual(['Clark Kent']);
- * });
+ * }));
* });
*
* ```
@@ -2408,6 +2487,12 @@ if (window.jasmine || window.mocha) {
window.inject = angular.mock.inject = function() {
var blockFns = Array.prototype.slice.call(arguments, 0);
var errorForStack = new Error('Declaration Location');
+ // IE10+ and PhanthomJS do not set stack trace information, until the error is thrown
+ if (!errorForStack.stack) {
+ try {
+ throw errorForStack;
+ } catch (e) {}
+ }
return isSpecRunning() ? workFn.call(currentSpec) : workFn;
/////////////////////
function workFn() {
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-resource.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-resource.js
index 335859f7..acada0c5 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-resource.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-resource.js
@@ -1,5 +1,5 @@
/**
- * @license AngularJS v1.4.8
+ * @license AngularJS v1.4.13
* (c) 2010-2015 Google, Inc. http://angularjs.org
* License: MIT
*/
@@ -102,7 +102,7 @@ function shallowClearAndCopy(src, dst) {
* can escape it with `/\.`.
*
* @param {Object=} paramDefaults Default values for `url` parameters. These can be overridden in
- * `actions` methods. If any of the parameter value is a function, it will be executed every time
+ * `actions` methods. If a parameter value is a function, it will be executed every time
* when a param value needs to be obtained for a request (unless the param was overridden).
*
* Each key value in the parameter object is first bound to url template if present and then any
@@ -155,8 +155,11 @@ function shallowClearAndCopy(src, dst) {
* GET request, otherwise if a cache instance built with
* {@link ng.$cacheFactory $cacheFactory}, this cache will be used for
* caching.
- * - **`timeout`** – `{number|Promise}` – timeout in milliseconds, or {@link ng.$q promise} that
- * should abort the request when resolved.
+ * - **`timeout`** – `{number}` – timeout in milliseconds.<br />
+ * **Note:** In contrast to {@link ng.$http#usage $http.config}, {@link ng.$q promises} are
+ * **not** supported in $resource, because the same value would be used for multiple requests.
+ * If you need support for cancellable $resource actions, you should upgrade to version 1.5 or
+ * higher.
* - **`withCredentials`** - `{boolean}` - whether to set the `withCredentials` flag on the
* XHR object. See
* [requests with credentials](https://developer.mozilla.org/en/http_access_control#section_5)
@@ -231,7 +234,7 @@ function shallowClearAndCopy(src, dst) {
* {@link ngRoute.$routeProvider resolve section of $routeProvider.when()} to defer view
* rendering until the resource(s) are loaded.
*
- * On failure, the promise is resolved with the {@link ng.$http http response} object, without
+ * On failure, the promise is rejected with the {@link ng.$http http response} object, without
* the `resource` property.
*
* If an interceptor object was provided, the promise will instead be resolved with the value
@@ -370,7 +373,7 @@ angular.module('ngResource', ['ng']).
}
};
- this.$get = ['$http', '$q', function($http, $q) {
+ this.$get = ['$http', '$log', '$q', function($http, $log, $q) {
var noop = angular.noop,
forEach = angular.forEach,
@@ -582,7 +585,14 @@ angular.module('ngResource', ['ng']).
case 'interceptor':
break;
case 'timeout':
- httpConfig[key] = value;
+ if (value && !angular.isNumber(value)) {
+ $log.debug('ngResource:\n' +
+ ' Only numeric values are allowed as `timeout`.\n' +
+ ' Promises are not supported in $resource, because the same value would ' +
+ 'be used for multiple requests.\n' +
+ ' If you need support for cancellable $resource actions, you should ' +
+ 'upgrade to version 1.5 or higher.');
+ }
break;
}
});
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-resource.min.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-resource.min.js
new file mode 100644
index 00000000..02c135d5
--- /dev/null
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-resource.min.js
@@ -0,0 +1,14 @@
+/*
+ AngularJS v1.4.13
+ (c) 2010-2015 Google, Inc. http://angularjs.org
+ License: MIT
+*/
+(function(J,f,C){'use strict';function D(t,e){e=e||{};f.forEach(e,function(f,k){delete e[k]});for(var k in t)!t.hasOwnProperty(k)||"$"===k.charAt(0)&&"$"===k.charAt(1)||(e[k]=t[k]);return e}var y=f.$$minErr("$resource"),B=/^(\.[a-zA-Z_$@][0-9a-zA-Z_$@]*)+$/;f.module("ngResource",["ng"]).provider("$resource",function(){var t=/^https?:\/\/[^\/]*/,e=this;this.defaults={stripTrailingSlashes:!0,actions:{get:{method:"GET"},save:{method:"POST"},query:{method:"GET",isArray:!0},remove:{method:"DELETE"},"delete":{method:"DELETE"}}};
+this.$get=["$http","$log","$q",function(k,F,G){function w(f,g){this.template=f;this.defaults=r({},e.defaults,g);this.urlParams={}}function z(l,g,s,h){function c(a,q){var c={};q=r({},g,q);u(q,function(b,q){x(b)&&(b=b());var m;if(b&&b.charAt&&"@"==b.charAt(0)){m=a;var d=b.substr(1);if(null==d||""===d||"hasOwnProperty"===d||!B.test("."+d))throw y("badmember",d);for(var d=d.split("."),n=0,g=d.length;n<g&&f.isDefined(m);n++){var e=d[n];m=null!==m?m[e]:C}}else m=b;c[q]=m});return c}function H(a){return a.resource}
+function d(a){D(a||{},this)}var t=new w(l,h);s=r({},e.defaults.actions,s);d.prototype.toJSON=function(){var a=r({},this);delete a.$promise;delete a.$resolved;return a};u(s,function(a,q){var g=/^(POST|PUT|PATCH)$/i.test(a.method);d[q]=function(b,A,m,e){var n={},h,l,s;switch(arguments.length){case 4:s=e,l=m;case 3:case 2:if(x(A)){if(x(b)){l=b;s=A;break}l=A;s=m}else{n=b;h=A;l=m;break}case 1:x(b)?l=b:g?h=b:n=b;break;case 0:break;default:throw y("badargs",arguments.length);}var w=this instanceof d,p=w?
+h:a.isArray?[]:new d(h),v={},z=a.interceptor&&a.interceptor.response||H,B=a.interceptor&&a.interceptor.responseError||C;u(a,function(a,b){switch(b){default:v[b]=I(a);break;case "params":case "isArray":case "interceptor":break;case "timeout":a&&!f.isNumber(a)&&F.debug("ngResource:\n Only numeric values are allowed as `timeout`.\n Promises are not supported in $resource, because the same value would be used for multiple requests.\n If you need support for cancellable $resource actions, you should upgrade to version 1.5 or higher.")}});
+g&&(v.data=h);t.setUrlParams(v,r({},c(h,a.params||{}),n),a.url);n=k(v).then(function(b){var c=b.data,m=p.$promise;if(c){if(f.isArray(c)!==!!a.isArray)throw y("badcfg",q,a.isArray?"array":"object",f.isArray(c)?"array":"object",v.method,v.url);a.isArray?(p.length=0,u(c,function(b){"object"===typeof b?p.push(new d(b)):p.push(b)})):(D(c,p),p.$promise=m)}p.$resolved=!0;b.resource=p;return b},function(b){p.$resolved=!0;(s||E)(b);return G.reject(b)});n=n.then(function(b){var a=z(b);(l||E)(a,b.headers);return a},
+B);return w?n:(p.$promise=n,p.$resolved=!1,p)};d.prototype["$"+q]=function(b,a,c){x(b)&&(c=a,a=b,b={});b=d[q].call(this,b,this,a,c);return b.$promise||b}});d.bind=function(a){return z(l,r({},g,a),s)};return d}var E=f.noop,u=f.forEach,r=f.extend,I=f.copy,x=f.isFunction;w.prototype={setUrlParams:function(l,g,e){var h=this,c=e||h.template,k,d,r="",a=h.urlParams={};u(c.split(/\W/),function(d){if("hasOwnProperty"===d)throw y("badname");!/^\d+$/.test(d)&&d&&(new RegExp("(^|[^\\\\]):"+d+"(\\W|$)")).test(c)&&
+(a[d]=!0)});c=c.replace(/\\:/g,":");c=c.replace(t,function(a){r=a;return""});g=g||{};u(h.urlParams,function(a,e){k=g.hasOwnProperty(e)?g[e]:h.defaults[e];f.isDefined(k)&&null!==k?(d=encodeURIComponent(k).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"%20").replace(/%26/gi,"&").replace(/%3D/gi,"=").replace(/%2B/gi,"+"),c=c.replace(new RegExp(":"+e+"(\\W|$)","g"),function(b,a){return d+a})):c=c.replace(new RegExp("(/?):"+e+"(\\W|$)","g"),function(b,
+a,c){return"/"==c.charAt(0)?c:a+c})});h.defaults.stripTrailingSlashes&&(c=c.replace(/\/+$/,"")||"/");c=c.replace(/\/\.(?=\w+($|\?))/,".");l.url=r+c.replace(/\/\\\./,"/.");u(g,function(a,c){h.urlParams[c]||(l.params=l.params||{},l.params[c]=a)})}};return z}]})})(window,window.angular);
+//# sourceMappingURL=angular-resource.min.js.map
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-resource.min.js.map b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-resource.min.js.map
new file mode 100644
index 00000000..ad69acdb
--- /dev/null
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-resource.min.js.map
@@ -0,0 +1,8 @@
+{
+"version":3,
+"file":"angular-resource.min.js",
+"lineCount":13,
+"mappings":"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",
+"sources":["angular-resource.js"],
+"names":["window","angular","undefined","shallowClearAndCopy","src","dst","forEach","value","key","hasOwnProperty","charAt","$resourceMinErr","$$minErr","MEMBER_NAME_REGEX","module","provider","PROTOCOL_AND_DOMAIN_REGEX","defaults","stripTrailingSlashes","actions","method","isArray","$get","$http","$log","$q","Route","template","extend","urlParams","resourceFactory","url","paramDefaults","options","extractParams","data","actionParams","ids","isFunction","path","test","keys","split","i","ii","length","isDefined","obj","defaultResponseInterceptor","response","resource","Resource","route","prototype","toJSON","Resource.prototype.toJSON","$promise","$resolved","action","name","hasBody","a1","a2","a3","a4","params","success","error","arguments","isInstanceCall","httpConfig","responseInterceptor","interceptor","responseErrorInterceptor","responseError","copy","isNumber","debug","setUrlParams","promise","then","item","push","noop","reject","headers","result","call","bind","Resource.bind","additionalParamDefaults","config","actionUrl","self","val","encodedVal","protocolAndDomain","param","RegExp","replace","match","_","urlParam","encodeURIComponent","p1","leadingSlashes","tail"]
+}
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-route.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-route.js
index 86ab235d..c6cabe12 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-route.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-route.js
@@ -1,5 +1,5 @@
/**
- * @license AngularJS v1.4.8
+ * @license AngularJS v1.4.13
* (c) 2010-2015 Google, Inc. http://angularjs.org
* License: MIT
*/
@@ -206,9 +206,9 @@ function $RouteProvider() {
path = path
.replace(/([().])/g, '\\$1')
- .replace(/(\/)?:(\w+)([\?\*])?/g, function(_, slash, key, option) {
- var optional = option === '?' ? option : null;
- var star = option === '*' ? option : null;
+ .replace(/(\/)?:(\w+)(\*\?|[\?\*])?/g, function(_, slash, key, option) {
+ var optional = (option === '?' || option === '*?') ? '?' : null;
+ var star = (option === '*' || option === '*?') ? '*' : null;
keys.push({ name: key, optional: !!optional });
slash = slash || '';
return ''
@@ -468,10 +468,18 @@ function $RouteProvider() {
*/
reload: function() {
forceReload = true;
+
+ var fakeLocationEvent = {
+ defaultPrevented: false,
+ preventDefault: function fakePreventDefault() {
+ this.defaultPrevented = true;
+ forceReload = false;
+ }
+ };
+
$rootScope.$evalAsync(function() {
- // Don't support cancellation of a reload for now...
- prepareRoute();
- commitRoute();
+ prepareRoute(fakeLocationEvent);
+ if (!fakeLocationEvent.defaultPrevented) commitRoute();
});
},
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-route.min.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-route.min.js
new file mode 100644
index 00000000..3ed2a101
--- /dev/null
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-route.min.js
@@ -0,0 +1,15 @@
+/*
+ AngularJS v1.4.13
+ (c) 2010-2015 Google, Inc. http://angularjs.org
+ License: MIT
+*/
+(function(q,d,C){'use strict';function w(s,k,h){return{restrict:"ECA",terminal:!0,priority:400,transclude:"element",link:function(a,f,b,c,y){function z(){l&&(h.cancel(l),l=null);m&&(m.$destroy(),m=null);n&&(l=h.leave(n),l.then(function(){l=null}),n=null)}function x(){var b=s.current&&s.current.locals;if(d.isDefined(b&&b.$template)){var b=a.$new(),c=s.current;n=y(b,function(b){h.enter(b,null,n||f).then(function(){!d.isDefined(u)||u&&!a.$eval(u)||k()});z()});m=c.scope=b;m.$emit("$viewContentLoaded");
+m.$eval(v)}else z()}var m,n,l,u=b.autoscroll,v=b.onload||"";a.$on("$routeChangeSuccess",x);x()}}}function A(d,k,h){return{restrict:"ECA",priority:-400,link:function(a,f){var b=h.current,c=b.locals;f.html(c.$template);var y=d(f.contents());b.controller&&(c.$scope=a,c=k(b.controller,c),b.controllerAs&&(a[b.controllerAs]=c),f.data("$ngControllerController",c),f.children().data("$ngControllerController",c));y(a)}}}q=d.module("ngRoute",["ng"]).provider("$route",function(){function s(a,f){return d.extend(Object.create(a),
+f)}function k(a,d){var b=d.caseInsensitiveMatch,c={originalPath:a,regexp:a},h=c.keys=[];a=a.replace(/([().])/g,"\\$1").replace(/(\/)?:(\w+)(\*\?|[\?\*])?/g,function(a,d,b,c){a="?"===c||"*?"===c?"?":null;c="*"===c||"*?"===c?"*":null;h.push({name:b,optional:!!a});d=d||"";return""+(a?"":d)+"(?:"+(a?d:"")+(c&&"(.+?)"||"([^/]+)")+(a||"")+")"+(a||"")}).replace(/([\/$\*])/g,"\\$1");c.regexp=new RegExp("^"+a+"$",b?"i":"");return c}var h={};this.when=function(a,f){var b=d.copy(f);d.isUndefined(b.reloadOnSearch)&&
+(b.reloadOnSearch=!0);d.isUndefined(b.caseInsensitiveMatch)&&(b.caseInsensitiveMatch=this.caseInsensitiveMatch);h[a]=d.extend(b,a&&k(a,b));if(a){var c="/"==a[a.length-1]?a.substr(0,a.length-1):a+"/";h[c]=d.extend({redirectTo:a},k(c,b))}return this};this.caseInsensitiveMatch=!1;this.otherwise=function(a){"string"===typeof a&&(a={redirectTo:a});this.when(null,a);return this};this.$get=["$rootScope","$location","$routeParams","$q","$injector","$templateRequest","$sce",function(a,f,b,c,k,q,x){function m(b){var e=
+t.current;(w=(p=l())&&e&&p.$$route===e.$$route&&d.equals(p.pathParams,e.pathParams)&&!p.reloadOnSearch&&!v)||!e&&!p||a.$broadcast("$routeChangeStart",p,e).defaultPrevented&&b&&b.preventDefault()}function n(){var g=t.current,e=p;if(w)g.params=e.params,d.copy(g.params,b),a.$broadcast("$routeUpdate",g);else if(e||g)v=!1,(t.current=e)&&e.redirectTo&&(d.isString(e.redirectTo)?f.path(u(e.redirectTo,e.params)).search(e.params).replace():f.url(e.redirectTo(e.pathParams,f.path(),f.search())).replace()),c.when(e).then(function(){if(e){var a=
+d.extend({},e.resolve),b,g;d.forEach(a,function(b,e){a[e]=d.isString(b)?k.get(b):k.invoke(b,null,null,e)});d.isDefined(b=e.template)?d.isFunction(b)&&(b=b(e.params)):d.isDefined(g=e.templateUrl)&&(d.isFunction(g)&&(g=g(e.params)),d.isDefined(g)&&(e.loadedTemplateUrl=x.valueOf(g),b=q(g)));d.isDefined(b)&&(a.$template=b);return c.all(a)}}).then(function(c){e==t.current&&(e&&(e.locals=c,d.copy(e.params,b)),a.$broadcast("$routeChangeSuccess",e,g))},function(b){e==t.current&&a.$broadcast("$routeChangeError",
+e,g,b)})}function l(){var a,b;d.forEach(h,function(c,h){var r;if(r=!b){var k=f.path();r=c.keys;var m={};if(c.regexp)if(k=c.regexp.exec(k)){for(var l=1,n=k.length;l<n;++l){var p=r[l-1],q=k[l];p&&q&&(m[p.name]=q)}r=m}else r=null;else r=null;r=a=r}r&&(b=s(c,{params:d.extend({},f.search(),a),pathParams:a}),b.$$route=c)});return b||h[null]&&s(h[null],{params:{},pathParams:{}})}function u(a,b){var c=[];d.forEach((a||"").split(":"),function(a,d){if(0===d)c.push(a);else{var g=a.match(/(\w+)(?:[?*])?(.*)/),
+f=g[1];c.push(b[f]);c.push(g[2]||"");delete b[f]}});return c.join("")}var v=!1,p,w,t={routes:h,reload:function(){v=!0;var b={defaultPrevented:!1,preventDefault:function(){this.defaultPrevented=!0;v=!1}};a.$evalAsync(function(){m(b);b.defaultPrevented||n()})},updateParams:function(a){if(this.current&&this.current.$$route)a=d.extend({},this.current.params,a),f.path(u(this.current.$$route.originalPath,a)),f.search(a);else throw B("norout");}};a.$on("$locationChangeStart",m);a.$on("$locationChangeSuccess",
+n);return t}]});var B=d.$$minErr("ngRoute");q.provider("$routeParams",function(){this.$get=function(){return{}}});q.directive("ngView",w);q.directive("ngView",A);w.$inject=["$route","$anchorScroll","$animate"];A.$inject=["$compile","$controller","$route"]})(window,window.angular);
+//# sourceMappingURL=angular-route.min.js.map
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-route.min.js.map b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-route.min.js.map
new file mode 100644
index 00000000..628d0b0c
--- /dev/null
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-route.min.js.map
@@ -0,0 +1,8 @@
+{
+"version":3,
+"file":"angular-route.min.js",
+"lineCount":14,
+"mappings":"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",
+"sources":["angular-route.js"],
+"names":["window","angular","undefined","ngViewFactory","$route","$anchorScroll","$animate","restrict","terminal","priority","transclude","link","scope","$element","attr","ctrl","$transclude","cleanupLastView","previousLeaveAnimation","cancel","currentScope","$destroy","currentElement","leave","then","update","locals","current","isDefined","$template","newScope","$new","clone","enter","onNgViewEnter","autoScrollExp","$eval","$emit","onloadExp","autoscroll","onload","$on","ngViewFillContentFactory","$compile","$controller","html","contents","controller","$scope","controllerAs","data","children","ngRouteModule","module","provider","$RouteProvider","inherit","parent","extra","extend","Object","create","pathRegExp","path","opts","insensitive","caseInsensitiveMatch","ret","originalPath","regexp","keys","replace","_","slash","key","option","optional","star","push","name","RegExp","routes","when","this.when","route","routeCopy","copy","isUndefined","reloadOnSearch","redirectPath","length","substr","redirectTo","otherwise","this.otherwise","params","$get","$rootScope","$location","$routeParams","$q","$injector","$templateRequest","$sce","prepareRoute","$locationEvent","lastRoute","preparedRouteIsUpdateOnly","preparedRoute","parseRoute","$$route","equals","pathParams","forceReload","$broadcast","defaultPrevented","preventDefault","commitRoute","nextRoute","isString","interpolate","search","url","resolve","template","templateUrl","forEach","value","get","invoke","isFunction","loadedTemplateUrl","valueOf","all","error","match","m","exec","on","i","len","val","string","result","split","segment","segmentMatch","join","reload","fakeLocationEvent","fakePreventDefault","$evalAsync","updateParams","newParams","$routeMinErr","$$minErr","$RouteParamsProvider","this.$get","directive","$inject"]
+}
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-sanitize.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-sanitize.js
index 5e5c1f20..3ab0c4c3 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-sanitize.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-sanitize.js
@@ -1,5 +1,5 @@
/**
- * @license AngularJS v1.4.8
+ * @license AngularJS v1.4.13
* (c) 2010-2015 Google, Inc. http://angularjs.org
* License: MIT
*/
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-sanitize.min.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-sanitize.min.js
index a1e654ce..74fed67a 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-sanitize.min.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-sanitize.min.js
@@ -1,5 +1,5 @@
/*
- AngularJS v1.4.8
+ AngularJS v1.4.13
(c) 2010-2015 Google, Inc. http://angularjs.org
License: MIT
*/
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-sanitize.min.js.map b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-sanitize.min.js.map
index 2f360f4d..2f360f4d 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-sanitize.min.js.map
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-sanitize.min.js.map
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-scenario.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-scenario.js
index 78dd37d0..f8300f2e 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-scenario.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-scenario.js
@@ -9190,7 +9190,7 @@ return jQuery;
}));
/**
- * @license AngularJS v1.4.8
+ * @license AngularJS v1.4.13
* (c) 2010-2015 Google, Inc. http://angularjs.org
* License: MIT
*/
@@ -9249,7 +9249,7 @@ function minErr(module, ErrorConstructor) {
return match;
});
- message += '\nhttp://errors.angularjs.org/1.4.8/' +
+ message += '\nhttp://errors.angularjs.org/1.4.13/' +
(module ? module + '/' : '') + code;
for (i = SKIP_INDEXES, paramPrefix = '?'; i < templateArgs.length; i++, paramPrefix = '&') {
@@ -9476,7 +9476,8 @@ function isArrayLike(obj) {
// NodeList objects (with `item` method) and
// other objects with suitable length characteristics are array-like
return isNumber(length) &&
- (length >= 0 && (length - 1) in obj || typeof obj.item == 'function');
+ (length >= 0 && ((length - 1) in obj || obj instanceof Array) || typeof obj.item == 'function');
+
}
/**
@@ -9496,7 +9497,7 @@ function isArrayLike(obj) {
*
* Unlike ES262's
* [Array.prototype.forEach](http://www.ecma-international.org/ecma-262/5.1/#sec-15.4.4.18),
- * Providing 'undefined' or 'null' values for `obj` will not throw a TypeError, but rather just
+ * providing 'undefined' or 'null' values for `obj` will not throw a TypeError, but rather just
* return the value provided.
*
```js
@@ -9573,7 +9574,7 @@ function forEachSorted(obj, iterator, context) {
* @returns {function(*, string)}
*/
function reverseParams(iteratorFn) {
- return function(value, key) { iteratorFn(key, value); };
+ return function(value, key) {iteratorFn(key, value);};
}
/**
@@ -9726,12 +9727,22 @@ noop.$inject = [];
* functional style.
*
```js
- function transformer(transformationFn, value) {
- return (transformationFn || angular.identity)(value);
- };
+ function transformer(transformationFn, value) {
+ return (transformationFn || angular.identity)(value);
+ };
+
+ // E.g.
+ function getResult(fn, input) {
+ return (fn || angular.identity)(input);
+ };
+
+ getResult(function(n) { return n * 2; }, 21); // returns 42
+ getResult(null, 21); // returns 21
+ getResult(undefined, 21); // returns 21
```
- * @param {*} value to be returned.
- * @returns {*} the value passed in.
+ *
+ * @param {*} value to be returned.
+ * @returns {*} the value passed in.
*/
function identity($) {return $;}
identity.$inject = [];
@@ -9981,7 +9992,7 @@ function isElement(node) {
* @returns {object} in the form of {key1:true, key2:true, ...}
*/
function makeMap(str) {
- var obj = {}, items = str.split(","), i;
+ var obj = {}, items = str.split(','), i;
for (i = 0; i < items.length; i++) {
obj[items[i]] = true;
}
@@ -10154,6 +10165,8 @@ function copy(source, destination) {
} else if (isRegExp(source)) {
destination = new RegExp(source.source, source.toString().match(/[^\/]*$/)[0]);
destination.lastIndex = source.lastIndex;
+ } else if (isBlob(source)) {
+ destination = new source.constructor([source], {type: source.type});
} else if (isFunction(source.cloneNode)) {
destination = source.cloneNode(true);
} else {
@@ -10438,7 +10451,7 @@ function toJsonReplacer(key, value) {
* @returns {string|undefined} JSON-ified string representing `obj`.
*/
function toJson(obj, pretty) {
- if (typeof obj === 'undefined') return undefined;
+ if (isUndefined(obj)) return undefined;
if (!isNumber(pretty)) {
pretty = pretty ? 2 : null;
}
@@ -10465,7 +10478,10 @@ function fromJson(json) {
}
+var ALL_COLONS = /:/g;
function timezoneToOffset(timezone, fallback) {
+ // IE/Edge do not "understand" colon (`:`) in timezone
+ timezone = timezone.replace(ALL_COLONS, '');
var requestedTimezoneOffset = Date.parse('Jan 01, 1970 00:00:00 ' + timezone) / 60000;
return isNaN(requestedTimezoneOffset) ? fallback : requestedTimezoneOffset;
}
@@ -10480,8 +10496,9 @@ function addDateMinutes(date, minutes) {
function convertTimezoneToLocal(date, timezone, reverse) {
reverse = reverse ? -1 : 1;
- var timezoneOffset = timezoneToOffset(timezone, date.getTimezoneOffset());
- return addDateMinutes(date, reverse * (timezoneOffset - date.getTimezoneOffset()));
+ var dateTimezoneOffset = date.getTimezoneOffset();
+ var timezoneOffset = timezoneToOffset(timezone, dateTimezoneOffset);
+ return addDateMinutes(date, reverse * (timezoneOffset - dateTimezoneOffset));
}
@@ -10500,7 +10517,7 @@ function startingTag(element) {
return element[0].nodeType === NODE_TYPE_TEXT ? lowercase(elemHtml) :
elemHtml.
match(/^(<[^>]+>)/)[1].
- replace(/^<([\w\-]+)/, function(match, nodeName) { return '<' + lowercase(nodeName); });
+ replace(/^<([\w\-]+)/, function(match, nodeName) {return '<' + lowercase(nodeName);});
} catch (e) {
return lowercase(elemHtml);
}
@@ -10848,7 +10865,7 @@ function bootstrap(element, modules, config) {
//Encode angle brackets to prevent input from being sanitized to empty string #8683
throw ngMinErr(
'btstrpd',
- "App Already Bootstrapped with this Element '{0}'",
+ "App already bootstrapped with this element '{0}'",
tag.replace(/</,'&lt;').replace(/>/,'&gt;'));
}
@@ -11179,7 +11196,7 @@ function setupModuleLoader(window) {
* unspecified then the module is being retrieved for further configuration.
* @param {Function=} configFn Optional configuration function for the module. Same as
* {@link angular.Module#config Module#config()}.
- * @returns {module} new module with the {@link angular.Module} api.
+ * @returns {angular.Module} new module with the {@link angular.Module} api.
*/
return function module(name, requires, configFn) {
var assertNotHasOwnProperty = function(name, context) {
@@ -11300,9 +11317,9 @@ function setupModuleLoader(window) {
* @ngdoc method
* @name angular.Module#decorator
* @module ng
- * @param {string} The name of the service to decorate.
- * @param {Function} This function will be invoked when the service needs to be
- * instantiated and should return the decorated service instance.
+ * @param {string} name The name of the service to decorate.
+ * @param {Function} decorFn This function will be invoked when the service needs to be
+ * instantiated and should return the decorated service instance.
* @description
* See {@link auto.$provide#decorator $provide.decorator()}.
*/
@@ -11536,8 +11553,10 @@ function toDebugString(obj) {
$AnchorScrollProvider,
$AnimateProvider,
$CoreAnimateCssProvider,
+ $$CoreAnimateJsProvider,
$$CoreAnimateQueueProvider,
- $$CoreAnimateRunnerProvider,
+ $$AnimateRunnerFactoryProvider,
+ $$AnimateAsyncRunFactoryProvider,
$BrowserProvider,
$CacheFactoryProvider,
$ControllerProvider,
@@ -11590,11 +11609,11 @@ function toDebugString(obj) {
* - `codeName` – `{string}` – Code name of the release, such as "jiggling-armfat".
*/
var version = {
- full: '1.4.8', // all of these placeholder strings will be replaced by grunt's
+ full: '1.4.13', // all of these placeholder strings will be replaced by grunt's
major: 1, // package task
minor: 4,
- dot: 8,
- codeName: 'ice-manipulation'
+ dot: 13,
+ codeName: 'croaking-elderweed'
};
@@ -11696,8 +11715,10 @@ function publishExternalAPI(angular) {
$anchorScroll: $AnchorScrollProvider,
$animate: $AnimateProvider,
$animateCss: $CoreAnimateCssProvider,
+ $$animateJs: $$CoreAnimateJsProvider,
$$animateQueue: $$CoreAnimateQueueProvider,
- $$AnimateRunner: $$CoreAnimateRunnerProvider,
+ $$AnimateRunner: $$AnimateRunnerFactoryProvider,
+ $$animateAsyncRun: $$AnimateAsyncRunFactoryProvider,
$browser: $BrowserProvider,
$cacheFactory: $CacheFactoryProvider,
$controller: $ControllerProvider,
@@ -11768,16 +11789,22 @@ function publishExternalAPI(angular) {
*
* If jQuery is available, `angular.element` is an alias for the
* [jQuery](http://api.jquery.com/jQuery/) function. If jQuery is not available, `angular.element`
- * delegates to Angular's built-in subset of jQuery, called "jQuery lite" or "jqLite."
+ * delegates to Angular's built-in subset of jQuery, called "jQuery lite" or **jqLite**.
*
- * <div class="alert alert-success">jqLite is a tiny, API-compatible subset of jQuery that allows
- * Angular to manipulate the DOM in a cross-browser compatible way. **jqLite** implements only the most
- * commonly needed functionality with the goal of having a very small footprint.</div>
+ * jqLite is a tiny, API-compatible subset of jQuery that allows
+ * Angular to manipulate the DOM in a cross-browser compatible way. jqLite implements only the most
+ * commonly needed functionality with the goal of having a very small footprint.
*
- * To use `jQuery`, simply ensure it is loaded before the `angular.js` file.
+ * To use `jQuery`, simply ensure it is loaded before the `angular.js` file. You can also use the
+ * {@link ngJq `ngJq`} directive to specify that jqlite should be used over jQuery, or to use a
+ * specific version of jQuery if multiple versions exist on the page.
*
- * <div class="alert">**Note:** all element references in Angular are always wrapped with jQuery or
- * jqLite; they are never raw DOM references.</div>
+ * <div class="alert alert-info">**Note:** All element references in Angular are always wrapped with jQuery or
+ * jqLite (such as the element argument in a directive's compile / link function). They are never raw DOM references.</div>
+ *
+ * <div class="alert alert-warning">**Note:** Keep in mind that this function will not find elements
+ * by tag name / CSS selector. For lookups by tag name, try instead `angular.element(document).find(...)`
+ * or `$document.find()`, or use the standard DOM APIs, e.g. `document.querySelectorAll()`.</div>
*
* ## Angular's jqLite
* jqLite provides only the following jQuery methods:
@@ -11790,7 +11817,8 @@ function publishExternalAPI(angular) {
* - [`children()`](http://api.jquery.com/children/) - Does not support selectors
* - [`clone()`](http://api.jquery.com/clone/)
* - [`contents()`](http://api.jquery.com/contents/)
- * - [`css()`](http://api.jquery.com/css/) - Only retrieves inline-styles, does not call `getComputedStyle()`. As a setter, does not convert numbers to strings or append 'px'.
+ * - [`css()`](http://api.jquery.com/css/) - Only retrieves inline-styles, does not call `getComputedStyle()`.
+ * As a setter, does not convert numbers to strings or append 'px', and also does not have automatic property prefixing.
* - [`data()`](http://api.jquery.com/data/)
* - [`detach()`](http://api.jquery.com/detach/)
* - [`empty()`](http://api.jquery.com/empty/)
@@ -11976,6 +12004,16 @@ function jqLiteParseHTML(html, context) {
return [];
}
+function jqLiteWrapNode(node, wrapper) {
+ var parent = node.parentNode;
+
+ if (parent) {
+ parent.replaceChild(wrapper, node);
+ }
+
+ wrapper.appendChild(node);
+}
+
// IE9-11 has no method "contains" in SVG element and in Node.prototype. Bug #10259.
var jqLiteContains = Node.prototype.contains || function(arg) {
@@ -12667,12 +12705,7 @@ forEach({
},
wrap: function(element, wrapNode) {
- wrapNode = jqLite(wrapNode).eq(0).clone()[0];
- var parent = element.parentNode;
- if (parent) {
- parent.replaceChild(wrapNode, element);
- }
- wrapNode.appendChild(element);
+ jqLiteWrapNode(element, jqLite(wrapNode).eq(0).clone()[0]);
},
remove: jqLiteRemove,
@@ -13375,8 +13408,20 @@ function annotate(fn, strictDi, name) {
*
* Register a **service constructor**, which will be invoked with `new` to create the service
* instance.
- * This is short for registering a service where its provider's `$get` property is the service
- * constructor function that will be used to instantiate the service instance.
+ * This is short for registering a service where its provider's `$get` property is a factory
+ * function that returns an instance instantiated by the injector from the service constructor
+ * function.
+ *
+ * Internally it looks a bit like this:
+ *
+ * ```
+ * {
+ * $get: function() {
+ * return $injector.instantiate(constructor);
+ * }
+ * }
+ * ```
+ *
*
* You should use {@link auto.$provide#service $provide.service(class)} if you define your service
* as a type/class.
@@ -13416,14 +13461,13 @@ function annotate(fn, strictDi, name) {
* @description
*
* Register a **value service** with the {@link auto.$injector $injector}, such as a string, a
- * number, an array, an object or a function. This is short for registering a service where its
+ * number, an array, an object or a function. This is short for registering a service where its
* provider's `$get` property is a factory function that takes no arguments and returns the **value
- * service**.
+ * service**. That also means it is not possible to inject other services into a value service.
*
* Value services are similar to constant services, except that they cannot be injected into a
* module configuration function (see {@link angular.Module#config}) but they can be overridden by
- * an Angular
- * {@link auto.$provide#decorator decorator}.
+ * an Angular {@link auto.$provide#decorator decorator}.
*
* @param {string} name The name of the instance.
* @param {*} value The value.
@@ -13448,8 +13492,11 @@ function annotate(fn, strictDi, name) {
* @name $provide#constant
* @description
*
- * Register a **constant service**, such as a string, a number, an array, an object or a function,
- * with the {@link auto.$injector $injector}. Unlike {@link auto.$provide#value value} it can be
+ * Register a **constant service** with the {@link auto.$injector $injector}, such as a string,
+ * a number, an array, an object or a function. Like the {@link auto.$provide#value value}, it is not
+ * possible to inject other services into a constant.
+ *
+ * But unlike {@link auto.$provide#value value}, a constant can be
* injected into a module configuration function (see {@link angular.Module#config}) and it cannot
* be overridden by an Angular {@link auto.$provide#decorator decorator}.
*
@@ -13477,7 +13524,7 @@ function annotate(fn, strictDi, name) {
* @description
*
* Register a **service decorator** with the {@link auto.$injector $injector}. A service decorator
- * intercepts the creation of a service, allowing it to override or modify the behaviour of the
+ * intercepts the creation of a service, allowing it to override or modify the behavior of the
* service. The object returned by the decorator may be the original service, or a new service
* object which replaces or wraps and delegates to the original service.
*
@@ -13780,7 +13827,7 @@ function $AnchorScrollProvider() {
* When called, it scrolls to the element related to the specified `hash` or (if omitted) to the
* current value of {@link ng.$location#hash $location.hash()}, according to the rules specified
* in the
- * [HTML5 spec](http://www.w3.org/html/wg/drafts/html/master/browsers.html#the-indicated-part-of-the-document).
+ * [HTML5 spec](http://www.w3.org/html/wg/drafts/html/master/browsers.html#an-indicated-part-of-the-document).
*
* It also watches the {@link ng.$location#hash $location.hash()} and automatically scrolls to
* match any anchor whenever it changes. This can be disabled by calling
@@ -14063,27 +14110,8 @@ function prepareAnimateOptions(options) {
: {};
}
-var $$CoreAnimateRunnerProvider = function() {
- this.$get = ['$q', '$$rAF', function($q, $$rAF) {
- function AnimateRunner() {}
- AnimateRunner.all = noop;
- AnimateRunner.chain = noop;
- AnimateRunner.prototype = {
- end: noop,
- cancel: noop,
- resume: noop,
- pause: noop,
- complete: noop,
- then: function(pass, fail) {
- return $q(function(resolve) {
- $$rAF(function() {
- resolve();
- });
- }).then(pass, fail);
- }
- };
- return AnimateRunner;
- }];
+var $$CoreAnimateJsProvider = function() {
+ this.$get = function() {};
};
// this is prefixed with Core since it conflicts with
@@ -14111,7 +14139,12 @@ var $$CoreAnimateQueueProvider = function() {
addRemoveClassesPostDigest(element, options.addClass, options.removeClass);
}
- return new $$AnimateRunner(); // jshint ignore:line
+ var runner = new $$AnimateRunner(); // jshint ignore:line
+
+ // since there are no animations to run the runner needs to be
+ // notified that the animation call is complete.
+ runner.complete();
+ return runner;
}
};
@@ -14576,10 +14609,23 @@ var $AnimateProvider = ['$provide', function($provide) {
* @kind function
*
* @description Performs an inline animation on the element which applies the provided to and from CSS styles to the element.
- * If any detected CSS transition, keyframe or JavaScript matches the provided className value then the animation will take
- * on the provided styles. For example, if a transition animation is set for the given className then the provided from and
- * to styles will be applied alongside the given transition. If a JavaScript animation is detected then the provided styles
- * will be given in as function paramters into the `animate` method (or as apart of the `options` parameter).
+ * If any detected CSS transition, keyframe or JavaScript matches the provided className value, then the animation will take
+ * on the provided styles. For example, if a transition animation is set for the given className, then the provided `from` and
+ * `to` styles will be applied alongside the given transition. If the CSS style provided in `from` does not have a corresponding
+ * style in `to`, the style in `from` is applied immediately, and no animation is run.
+ * If a JavaScript animation is detected then the provided styles will be given in as function parameters into the `animate`
+ * method (or as part of the `options` parameter):
+ *
+ * ```js
+ * ngModule.animation('.my-inline-animation', function() {
+ * return {
+ * animate : function(element, from, to, done, options) {
+ * //animation
+ * done();
+ * }
+ * }
+ * });
+ * ```
*
* @param {DOMElement} element the element which the CSS styles will be applied to
* @param {object} from the from (starting) CSS styles that will be applied to the element and across the animation.
@@ -14604,6 +14650,190 @@ var $AnimateProvider = ['$provide', function($provide) {
}];
}];
+var $$AnimateAsyncRunFactoryProvider = function() {
+ this.$get = ['$$rAF', function($$rAF) {
+ var waitQueue = [];
+
+ function waitForTick(fn) {
+ waitQueue.push(fn);
+ if (waitQueue.length > 1) return;
+ $$rAF(function() {
+ for (var i = 0; i < waitQueue.length; i++) {
+ waitQueue[i]();
+ }
+ waitQueue = [];
+ });
+ }
+
+ return function() {
+ var passed = false;
+ waitForTick(function() {
+ passed = true;
+ });
+ return function(callback) {
+ passed ? callback() : waitForTick(callback);
+ };
+ };
+ }];
+};
+
+var $$AnimateRunnerFactoryProvider = function() {
+ this.$get = ['$q', '$sniffer', '$$animateAsyncRun', '$document', '$timeout',
+ function($q, $sniffer, $$animateAsyncRun, $document, $timeout) {
+
+ var INITIAL_STATE = 0;
+ var DONE_PENDING_STATE = 1;
+ var DONE_COMPLETE_STATE = 2;
+
+ AnimateRunner.chain = function(chain, callback) {
+ var index = 0;
+
+ next();
+ function next() {
+ if (index === chain.length) {
+ callback(true);
+ return;
+ }
+
+ chain[index](function(response) {
+ if (response === false) {
+ callback(false);
+ return;
+ }
+ index++;
+ next();
+ });
+ }
+ };
+
+ AnimateRunner.all = function(runners, callback) {
+ var count = 0;
+ var status = true;
+ forEach(runners, function(runner) {
+ runner.done(onProgress);
+ });
+
+ function onProgress(response) {
+ status = status && response;
+ if (++count === runners.length) {
+ callback(status);
+ }
+ }
+ };
+
+ function AnimateRunner(host) {
+ this.setHost(host);
+
+ var rafTick = $$animateAsyncRun();
+ var timeoutTick = function(fn) {
+ $timeout(fn, 0, false);
+ };
+
+ this._doneCallbacks = [];
+ this._tick = function(fn) {
+ var doc = $document[0];
+
+ // the document may not be ready or attached
+ // to the module for some internal tests
+ if (doc && doc.hidden) {
+ timeoutTick(fn);
+ } else {
+ rafTick(fn);
+ }
+ };
+ this._state = 0;
+ }
+
+ AnimateRunner.prototype = {
+ setHost: function(host) {
+ this.host = host || {};
+ },
+
+ done: function(fn) {
+ if (this._state === DONE_COMPLETE_STATE) {
+ fn();
+ } else {
+ this._doneCallbacks.push(fn);
+ }
+ },
+
+ progress: noop,
+
+ getPromise: function() {
+ if (!this.promise) {
+ var self = this;
+ this.promise = $q(function(resolve, reject) {
+ self.done(function(status) {
+ status === false ? reject() : resolve();
+ });
+ });
+ }
+ return this.promise;
+ },
+
+ then: function(resolveHandler, rejectHandler) {
+ return this.getPromise().then(resolveHandler, rejectHandler);
+ },
+
+ 'catch': function(handler) {
+ return this.getPromise()['catch'](handler);
+ },
+
+ 'finally': function(handler) {
+ return this.getPromise()['finally'](handler);
+ },
+
+ pause: function() {
+ if (this.host.pause) {
+ this.host.pause();
+ }
+ },
+
+ resume: function() {
+ if (this.host.resume) {
+ this.host.resume();
+ }
+ },
+
+ end: function() {
+ if (this.host.end) {
+ this.host.end();
+ }
+ this._resolve(true);
+ },
+
+ cancel: function() {
+ if (this.host.cancel) {
+ this.host.cancel();
+ }
+ this._resolve(false);
+ },
+
+ complete: function(response) {
+ var self = this;
+ if (self._state === INITIAL_STATE) {
+ self._state = DONE_PENDING_STATE;
+ self._tick(function() {
+ self._resolve(response);
+ });
+ }
+ },
+
+ _resolve: function(response) {
+ if (this._state !== DONE_COMPLETE_STATE) {
+ forEach(this._doneCallbacks, function(fn) {
+ fn(response);
+ });
+ this._doneCallbacks.length = 0;
+ this._state = DONE_COMPLETE_STATE;
+ }
+ }
+ };
+
+ return AnimateRunner;
+ }];
+};
+
/**
* @ngdoc service
* @name $animateCss
@@ -14616,37 +14846,18 @@ var $AnimateProvider = ['$provide', function($provide) {
* Click here {@link ngAnimate.$animateCss to read the documentation for $animateCss}.
*/
var $CoreAnimateCssProvider = function() {
- this.$get = ['$$rAF', '$q', function($$rAF, $q) {
+ this.$get = ['$$rAF', '$q', '$$AnimateRunner', function($$rAF, $q, $$AnimateRunner) {
- var RAFPromise = function() {};
- RAFPromise.prototype = {
- done: function(cancel) {
- this.defer && this.defer[cancel === true ? 'reject' : 'resolve']();
- },
- end: function() {
- this.done();
- },
- cancel: function() {
- this.done(true);
- },
- getPromise: function() {
- if (!this.defer) {
- this.defer = $q.defer();
- }
- return this.defer.promise;
- },
- then: function(f1,f2) {
- return this.getPromise().then(f1,f2);
- },
- 'catch': function(f1) {
- return this.getPromise()['catch'](f1);
- },
- 'finally': function(f1) {
- return this.getPromise()['finally'](f1);
+ return function(element, initialOptions) {
+ // all of the animation functions should create
+ // a copy of the options data, however, if a
+ // parent service has already created a copy then
+ // we should stick to using that
+ var options = initialOptions || {};
+ if (!options.$$prepared) {
+ options = copy(options);
}
- };
- return function(element, options) {
// there is no point in applying the styles since
// there is no animation that goes on at all in
// this version of $animateCss.
@@ -14659,7 +14870,8 @@ var $CoreAnimateCssProvider = function() {
options.from = null;
}
- var closed, runner = new RAFPromise();
+ /* jshint newcap: false*/
+ var closed, runner = new $$AnimateRunner();
return {
start: run,
end: run
@@ -14667,16 +14879,16 @@ var $CoreAnimateCssProvider = function() {
function run() {
$$rAF(function() {
- close();
+ applyAnimationContents();
if (!closed) {
- runner.done();
+ runner.complete();
}
closed = true;
});
return runner;
}
- function close() {
+ function applyAnimationContents() {
if (options.addClass) {
element.addClass(options.addClass);
options.addClass = null;
@@ -15622,35 +15834,38 @@ function $TemplateCacheProvider() {
* is bound to the parent scope, via matching attributes on the directive's element:
*
* * `@` or `@attr` - bind a local scope property to the value of DOM attribute. The result is
- * always a string since DOM attributes are strings. If no `attr` name is specified then the
- * attribute name is assumed to be the same as the local name.
- * Given `<widget my-attr="hello {{name}}">` and widget definition
- * of `scope: { localName:'@myAttr' }`, then widget scope property `localName` will reflect
- * the interpolated value of `hello {{name}}`. As the `name` attribute changes so will the
- * `localName` property on the widget scope. The `name` is read from the parent scope (not
- * component scope).
- *
- * * `=` or `=attr` - set up bi-directional binding between a local scope property and the
- * parent scope property of name defined via the value of the `attr` attribute. If no `attr`
- * name is specified then the attribute name is assumed to be the same as the local name.
- * Given `<widget my-attr="parentModel">` and widget definition of
- * `scope: { localModel:'=myAttr' }`, then widget scope property `localModel` will reflect the
- * value of `parentModel` on the parent scope. Any changes to `parentModel` will be reflected
- * in `localModel` and any changes in `localModel` will reflect in `parentModel`. If the parent
- * scope property doesn't exist, it will throw a NON_ASSIGNABLE_MODEL_EXPRESSION exception. You
- * can avoid this behavior using `=?` or `=?attr` in order to flag the property as optional. If
- * you want to shallow watch for changes (i.e. $watchCollection instead of $watch) you can use
- * `=*` or `=*attr` (`=*?` or `=*?attr` if the property is optional).
- *
- * * `&` or `&attr` - provides a way to execute an expression in the context of the parent scope.
- * If no `attr` name is specified then the attribute name is assumed to be the same as the
- * local name. Given `<widget my-attr="count = count + value">` and widget definition of
- * `scope: { localFn:'&myAttr' }`, then isolate scope property `localFn` will point to
- * a function wrapper for the `count = count + value` expression. Often it's desirable to
- * pass data from the isolated scope via an expression to the parent scope, this can be
- * done by passing a map of local variable names and values into the expression wrapper fn.
- * For example, if the expression is `increment(amount)` then we can specify the amount value
- * by calling the `localFn` as `localFn({amount: 22})`.
+ * always a string since DOM attributes are strings. If no `attr` name is specified then the
+ * attribute name is assumed to be the same as the local name. Given `<my-component
+ * my-attr="hello {{name}}">` and the isolate scope definition `scope: { localName:'@myAttr' }`,
+ * the directive's scope property `localName` will reflect the interpolated value of `hello
+ * {{name}}`. As the `name` attribute changes so will the `localName` property on the directive's
+ * scope. The `name` is read from the parent scope (not the directive's scope).
+ *
+ * * `=` or `=attr` - set up a bidirectional binding between a local scope property and an expression
+ * passed via the attribute `attr`. The expression is evaluated in the context of the parent scope.
+ * If no `attr` name is specified then the attribute name is assumed to be the same as the local
+ * name. Given `<my-component my-attr="parentModel">` and the isolate scope definition `scope: {
+ * localModel: '=myAttr' }`, the property `localModel` on the directive's scope will reflect the
+ * value of `parentModel` on the parent scope. Changes to `parentModel` will be reflected in
+ * `localModel` and vice versa. Optional attributes should be marked as such with a question mark:
+ * `=?` or `=?attr`. If the binding expression is non-assignable, or if the attribute isn't
+ * optional and doesn't exist, an exception ({@link error/$compile/nonassign `$compile:nonassign`})
+ * will be thrown upon discovering changes to the local value, since it will be impossible to sync
+ * them back to the parent scope. By default, the {@link ng.$rootScope.Scope#$watch `$watch`}
+ * method is used for tracking changes, and the equality check is based on object identity.
+ * However, if an object literal or an array literal is passed as the binding expression, the
+ * equality check is done by value (using the {@link angular.equals} function). It's also possible
+ * to watch the evaluated value shallowly with {@link ng.$rootScope.Scope#$watchCollection
+ * `$watchCollection`}: use `=*` or `=*attr` (`=*?` or `=*?attr` if the attribute is optional).
+ *
+ * * `&` or `&attr` - provides a way to execute an expression in the context of the parent scope. If
+ * no `attr` name is specified then the attribute name is assumed to be the same as the local name.
+ * Given `<my-component my-attr="count = count + value">` and the isolate scope definition `scope: {
+ * localFn:'&myAttr' }`, the isolate scope property `localFn` will point to a function wrapper for
+ * the `count = count + value` expression. Often it's desirable to pass data from the isolated scope
+ * via an expression to the parent scope. This can be done by passing a map of local variable names
+ * and values into the expression wrapper fn. For example, if the expression is `increment(amount)`
+ * then we can specify the amount value by calling the `localFn` as `localFn({amount: 22})`.
*
* In general it's possible to apply more than one directive to one element, but there might be limitations
* depending on the type of scope required by the directives. The following points will help explain these limitations.
@@ -15668,10 +15883,23 @@ function $TemplateCacheProvider() {
*
*
* #### `bindToController`
- * When an isolate scope is used for a component (see above), and `controllerAs` is used, `bindToController: true` will
+ * This property is used to bind scope properties directly to the controller. It can be either
+ * `true` or an object hash with the same format as the `scope` property. Additionally, a controller
+ * alias must be set, either by using `controllerAs: 'myAlias'` or by specifying the alias in the controller
+ * definition: `controller: 'myCtrl as myAlias'`.
+ *
+ * When an isolate scope is used for a directive (see above), `bindToController: true` will
* allow a component to have its properties bound to the controller, rather than to scope. When the controller
* is instantiated, the initial values of the isolate scope bindings are already available.
*
+ * It is also possible to set `bindToController` to an object hash with the same format as the `scope` property.
+ * This will set up the scope bindings to the controller directly. Note that `scope` can still be used
+ * to define which kind of scope is created. By default, no scope is created. Use `scope: {}` to create an isolate
+ * scope (useful for component directives).
+ *
+ * If both `bindToController` and `scope` are defined and have object hashes, `bindToController` overrides `scope`.
+ *
+ *
* #### `controller`
* Controller constructor function. The controller is instantiated before the
* pre-linking phase and can be accessed by other directives (see
@@ -15828,7 +16056,7 @@ function $TemplateCacheProvider() {
* <div class="alert alert-warning">
* **Note:** The compile function cannot handle directives that recursively use themselves in their
- * own templates or compile functions. Compiling these directives results in an infinite loop and a
+ * own templates or compile functions. Compiling these directives results in an infinite loop and
* stack overflow errors.
*
* This can be avoided by manually using $compile in the postLink function to imperatively compile
@@ -16007,19 +16235,19 @@ function $TemplateCacheProvider() {
*
* The `$parent` scope hierarchy will look like this:
*
- * ```
- * - $rootScope
- * - isolate
- * - transclusion
- * ```
+ ```
+ - $rootScope
+ - isolate
+ - transclusion
+ ```
*
* but the scopes will inherit prototypically from different scopes to their `$parent`.
*
- * ```
- * - $rootScope
- * - transclusion
- * - isolate
- * ```
+ ```
+ - $rootScope
+ - transclusion
+ - isolate
+ ```
*
*
* ### Attributes
@@ -16027,10 +16255,9 @@ function $TemplateCacheProvider() {
* The {@link ng.$compile.directive.Attributes Attributes} object - passed as a parameter in the
* `link()` or `compile()` functions. It has a variety of uses.
*
- * accessing *Normalized attribute names:*
- * Directives like 'ngBind' can be expressed in many ways: 'ng:bind', `data-ng-bind`, or 'x-ng-bind'.
- * the attributes object allows for normalized access to
- * the attributes.
+ * * *Accessing normalized attribute names:* Directives like 'ngBind' can be expressed in many ways:
+ * 'ng:bind', `data-ng-bind`, or 'x-ng-bind'. The attributes object allows for normalized access
+ * to the attributes.
*
* * *Directive inter-communication:* All directives share the same instance of the attributes
* object which allows the directives to use the attributes object as inter directive
@@ -16151,8 +16378,15 @@ function $TemplateCacheProvider() {
* directives; if given, it will be passed through to the link functions of
* directives found in `element` during compilation.
* * `transcludeControllers` - an object hash with keys that map controller names
- * to controller instances; if given, it will make the controllers
- * available to directives.
+ * to a hash with the key `instance`, which maps to the controller instance;
+ * if given, it will make the controllers available to directives on the compileNode:
+ * ```
+ * {
+ * parent: {
+ * instance: parentControllerInstance
+ * }
+ * }
+ * ```
* * `futureParentElement` - defines the parent to which the `cloneAttachFn` will add
* the cloned elements; only needed for transcludes that are allowed to contain non html
* elements (e.g. SVG elements). See also the directive.controller property.
@@ -16211,13 +16445,18 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
// The assumption is that future DOM event attribute names will begin with
// 'on' and be composed of only English letters.
var EVENT_HANDLER_ATTR_REGEXP = /^(on[a-z]+|formaction)$/;
+ var bindingCache = createMap();
function parseIsolateBindings(scope, directiveName, isController) {
var LOCAL_REGEXP = /^\s*([@&]|=(\*?))(\??)\s*(\w*)\s*$/;
- var bindings = {};
+ var bindings = createMap();
forEach(scope, function(definition, scopeName) {
+ if (definition in bindingCache) {
+ bindings[scopeName] = bindingCache[definition];
+ return;
+ }
var match = definition.match(LOCAL_REGEXP);
if (!match) {
@@ -16235,6 +16474,9 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
optional: match[3] === '?',
attrName: match[4] || scopeName
};
+ if (match[4]) {
+ bindingCache[definition] = bindings[scopeName];
+ }
});
return bindings;
@@ -16327,11 +16569,6 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
directive.name = directive.name || name;
directive.require = directive.require || (directive.controller && directive.name);
directive.restrict = directive.restrict || 'EA';
- var bindings = directive.$$bindings =
- parseDirectiveBindings(directive, directive.name);
- if (isObject(bindings.isolateScope)) {
- directive.$$isolateBindings = bindings.isolateScope;
- }
directive.$$moduleName = directiveFactory.$$moduleName;
directives.push(directive);
} catch (e) {
@@ -16441,9 +16678,9 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
this.$get = [
'$injector', '$interpolate', '$exceptionHandler', '$templateRequest', '$parse',
- '$controller', '$rootScope', '$document', '$sce', '$animate', '$$sanitizeUri',
+ '$controller', '$rootScope', '$sce', '$animate', '$$sanitizeUri',
function($injector, $interpolate, $exceptionHandler, $templateRequest, $parse,
- $controller, $rootScope, $document, $sce, $animate, $$sanitizeUri) {
+ $controller, $rootScope, $sce, $animate, $$sanitizeUri) {
var Attributes = function(element, attributesToCopy) {
if (attributesToCopy) {
@@ -16584,7 +16821,7 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
(nodeName === 'img' && key === 'src')) {
// sanitize a[href] and img[src] values
this[key] = value = $$sanitizeUri(value, key === 'src');
- } else if (nodeName === 'img' && key === 'srcset') {
+ } else if (nodeName === 'img' && key === 'srcset' && isDefined(value)) {
// sanitize img[srcset] values
var result = "";
@@ -16655,7 +16892,8 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
* @param {string} key Normalized key. (ie ngAttribute) .
* @param {function(interpolatedValue)} fn Function that will be called whenever
the interpolated value of the attribute changes.
- * See the {@link guide/directive#text-and-attribute-bindings Directives} guide for more info.
+ * See the {@link guide/interpolation#how-text-and-attribute-bindings-work Interpolation
+ * guide} for more info.
* @returns {function()} Returns a deregistration function for this observer.
*/
$observe: function(key, fn) {
@@ -16690,7 +16928,7 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
var startSymbol = $interpolate.startSymbol(),
endSymbol = $interpolate.endSymbol(),
- denormalizeTemplate = (startSymbol == '{{' || endSymbol == '}}')
+ denormalizeTemplate = (startSymbol == '{{' && endSymbol == '}}')
? identity
: function denormalizeTemplate(template) {
return template.replace(/\{\{/g, startSymbol).replace(/}}/g, endSymbol);
@@ -16734,13 +16972,19 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
// modify it.
$compileNodes = jqLite($compileNodes);
}
+
+ var NOT_EMPTY = /\S+/;
+
// We can not compile top level text elements since text nodes can be merged and we will
// not be able to attach scope data to them, so we will wrap them in <span>
- forEach($compileNodes, function(node, index) {
- if (node.nodeType == NODE_TYPE_TEXT && node.nodeValue.match(/\S+/) /* non-empty */ ) {
- $compileNodes[index] = jqLite(node).wrap('<span></span>').parent()[0];
+ for (var i = 0, len = $compileNodes.length; i < len; i++) {
+ var domNode = $compileNodes[i];
+
+ if (domNode.nodeType === NODE_TYPE_TEXT && domNode.nodeValue.match(NOT_EMPTY) /* non-empty */) {
+ jqLiteWrapNode(domNode, $compileNodes[i] = document.createElement('span'));
}
- });
+ }
+
var compositeLinkFn =
compileNodes($compileNodes, transcludeFn, $compileNodes,
maxPriority, ignoreDirective, previousCompileContext);
@@ -17419,15 +17663,12 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
var controllerInstance = $controller(controller, locals, true, directive.controllerAs);
- // For directives with element transclusion the element is a comment,
- // but jQuery .data doesn't support attaching data to comment nodes as it's hard to
- // clean up (http://bugs.jquery.com/ticket/8335).
+ // For directives with element transclusion the element is a comment.
+ // In this case .data will not attach any data.
// Instead, we save the controllers for the element in a local hash and attach to .data
// later, once we have the actual element.
elementControllers[directive.name] = controllerInstance;
- if (!hasElementTranscludeDirective) {
- $element.data('$' + directive.name + 'Controller', controllerInstance.instance);
- }
+ $element.data('$' + directive.name + 'Controller', controllerInstance.instance);
}
return elementControllers;
}
@@ -17596,6 +17837,13 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
if (startAttrName) {
directive = inherit(directive, {$$start: startAttrName, $$end: endAttrName});
}
+ if (!directive.$$bindings) {
+ var bindings = directive.$$bindings =
+ parseDirectiveBindings(directive, directive.name);
+ if (isObject(bindings.isolateScope)) {
+ directive.$$isolateBindings = bindings.isolateScope;
+ }
+ }
tDirectives.push(directive);
match = directive;
}
@@ -18060,10 +18308,15 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
}
});
attrs.$$observers[attrName].$$scope = scope;
- if (isString(attrs[attrName])) {
+ lastValue = attrs[attrName];
+ if (isString(lastValue)) {
// If the attribute has been provided then we trigger an interpolation to ensure
// the value is there for use in the link fn
- destination[scopeName] = $interpolate(attrs[attrName])(scope);
+ destination[scopeName] = $interpolate(lastValue)(scope);
+ } else if (isBoolean(lastValue)) {
+ // If the attributes is one of the BOOLEAN_ATTR then Angular will have converted
+ // the value to boolean rather than a string, so we special case this situation
+ destination[scopeName] = lastValue;
}
break;
@@ -18084,8 +18337,8 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
// reset the change, or we will throw this exception on every $digest
lastValue = destination[scopeName] = parentGet(scope);
throw $compileMinErr('nonassign',
- "Expression '{0}' used with directive '{1}' is non-assignable!",
- attrs[attrName], directive.name);
+ "Expression '{0}' in attribute '{1}' used with directive '{2}' is non-assignable!",
+ attrs[attrName], attrName, directive.name);
};
lastValue = destination[scopeName] = parentGet(scope);
var parentValueWatch = function parentValueWatch(parentValue) {
@@ -18239,7 +18492,7 @@ function removeComments(jqNodes) {
var $controllerMinErr = minErr('$controller');
-var CNTRL_REG = /^(\S+)(\s+as\s+(\w+))?$/;
+var CNTRL_REG = /^(\S+)(\s+as\s+([\w$]+))?$/;
function identifierForController(controller, ident) {
if (ident && isString(ident)) return ident;
if (isString(controller)) {
@@ -18766,10 +19019,9 @@ function $HttpProvider() {
*
* Object containing default values for all {@link ng.$http $http} requests.
*
- * - **`defaults.cache`** - {Object} - an object built with {@link ng.$cacheFactory `$cacheFactory`}
- * that will provide the cache for all requests who set their `cache` property to `true`.
- * If you set the `defaults.cache = false` then only requests that specify their own custom
- * cache object will be cached. See {@link $http#caching $http Caching} for more information.
+ * - **`defaults.cache`** - {boolean|Object} - A boolean value or object created with
+ * {@link ng.$cacheFactory `$cacheFactory`} to enable or disable caching of HTTP responses
+ * by default. See {@link $http#caching $http Caching} for more information.
*
* - **`defaults.xsrfCookieName`** - {string} - Name of cookie containing the XSRF token.
* Defaults value is `'XSRF-TOKEN'`.
@@ -19060,6 +19312,15 @@ function $HttpProvider() {
* the transformed value (`function(data, headersGetter, status)`) or an array of such transformation functions,
* which allows you to `push` or `unshift` a new transformation function into the transformation chain.
*
+ * <div class="alert alert-warning">
+ * **Note:** Angular does not make a copy of the `data` parameter before it is passed into the `transformRequest` pipeline.
+ * That means changes to the properties of `data` are not local to the transform function (since Javascript passes objects by reference).
+ * For example, when calling `$http.get(url, $scope.myObject)`, modifications to the object's properties in a transformRequest
+ * function will be reflected on the scope and in any templates where the object is data-bound.
+ * To prevent this, transform functions should have no side-effects.
+ * If you need to modify properties, it is recommended to make a copy of the data, or create new object to return.
+ * </div>
+ *
* ### Default Transformations
*
* The `$httpProvider` provider and `$http` service expose `defaults.transformRequest` and
@@ -19117,26 +19378,35 @@ function $HttpProvider() {
*
* ## Caching
*
- * To enable caching, set the request configuration `cache` property to `true` (to use default
- * cache) or to a custom cache object (built with {@link ng.$cacheFactory `$cacheFactory`}).
- * When the cache is enabled, `$http` stores the response from the server in the specified
- * cache. The next time the same request is made, the response is served from the cache without
- * sending a request to the server.
+ * {@link ng.$http `$http`} responses are not cached by default. To enable caching, you must
+ * set the config.cache value or the default cache value to TRUE or to a cache object (created
+ * with {@link ng.$cacheFactory `$cacheFactory`}). If defined, the value of config.cache takes
+ * precedence over the default cache value.
+ *
+ * In order to:
+ * * cache all responses - set the default cache value to TRUE or to a cache object
+ * * cache a specific response - set config.cache value to TRUE or to a cache object
*
- * Note that even if the response is served from cache, delivery of the data is asynchronous in
- * the same way that real requests are.
+ * If caching is enabled, but neither the default cache nor config.cache are set to a cache object,
+ * then the default `$cacheFactory($http)` object is used.
*
- * If there are multiple GET requests for the same URL that should be cached using the same
- * cache, but the cache is not populated yet, only one request to the server will be made and
- * the remaining requests will be fulfilled using the response from the first request.
+ * The default cache value can be set by updating the
+ * {@link ng.$http#defaults `$http.defaults.cache`} property or the
+ * {@link $httpProvider#defaults `$httpProvider.defaults.cache`} property.
*
- * You can change the default cache to a new object (built with
- * {@link ng.$cacheFactory `$cacheFactory`}) by updating the
- * {@link ng.$http#defaults `$http.defaults.cache`} property. All requests who set
- * their `cache` property to `true` will now use this cache object.
+ * When caching is enabled, {@link ng.$http `$http`} stores the response from the server using
+ * the relevant cache object. The next time the same request is made, the response is returned
+ * from the cache without sending a request to the server.
+ *
+ * Take note that:
+ *
+ * * Only GET and JSONP requests are cached.
+ * * The cache key is the request URL including search parameters; headers are not considered.
+ * * Cached responses are returned asynchronously, in the same way as responses from the server.
+ * * If multiple identical requests are made using the same cache, which is not yet populated,
+ * one request will be made to the server and remaining requests will return the same response.
+ * * A cache-control header on the response does not affect if or how responses are cached.
*
- * If you set the default cache to `false` then only requests that specify their own custom
- * cache object will be cached.
*
* ## Interceptors
*
@@ -19258,13 +19528,13 @@ function $HttpProvider() {
*
* ### Cross Site Request Forgery (XSRF) Protection
*
- * [XSRF](http://en.wikipedia.org/wiki/Cross-site_request_forgery) is a technique by which
- * an unauthorized site can gain your user's private data. Angular provides a mechanism
- * to counter XSRF. When performing XHR requests, the $http service reads a token from a cookie
- * (by default, `XSRF-TOKEN`) and sets it as an HTTP header (`X-XSRF-TOKEN`). Since only
- * JavaScript that runs on your domain could read the cookie, your server can be assured that
- * the XHR came from JavaScript running on your domain. The header will not be set for
- * cross-domain requests.
+ * [XSRF](http://en.wikipedia.org/wiki/Cross-site_request_forgery) is an attack technique by
+ * which the attacker can trick an authenticated user into unknowingly executing actions on your
+ * website. Angular provides a mechanism to counter XSRF. When performing XHR requests, the
+ * $http service reads a token from a cookie (by default, `XSRF-TOKEN`) and sets it as an HTTP
+ * header (`X-XSRF-TOKEN`). Since only JavaScript that runs on your domain could read the
+ * cookie, your server can be assured that the XHR came from JavaScript running on your domain.
+ * The header will not be set for cross-domain requests.
*
* To take advantage of this, your server needs to set a token in a JavaScript readable session
* cookie called `XSRF-TOKEN` on the first HTTP GET request. On subsequent XHR requests the
@@ -19306,7 +19576,7 @@ function $HttpProvider() {
* transform function or an array of such functions. The transform function takes the http
* response body, headers and status and returns its transformed (typically deserialized) version.
* See {@link ng.$http#overriding-the-default-transformations-per-request
- * Overriding the Default TransformationjqLiks}
+ * Overriding the Default Transformations}
* - **paramSerializer** - `{string|function(Object<string,string>):string}` - A function used to
* prepare the string representation of request parameters (specified as an object).
* If specified as string, it is interpreted as function registered with the
@@ -19314,10 +19584,9 @@ function $HttpProvider() {
* by registering it as a {@link auto.$provide#service service}.
* The default serializer is the {@link $httpParamSerializer $httpParamSerializer};
* alternatively, you can use the {@link $httpParamSerializerJQLike $httpParamSerializerJQLike}
- * - **cache** – `{boolean|Cache}` – If true, a default $http cache will be used to cache the
- * GET request, otherwise if a cache instance built with
- * {@link ng.$cacheFactory $cacheFactory}, this cache will be used for
- * caching.
+ * - **cache** – `{boolean|Object}` – A boolean value or object created with
+ * {@link ng.$cacheFactory `$cacheFactory`} to enable or disable caching of the HTTP response.
+ * See {@link $http#caching $http Caching} for more information.
* - **timeout** – `{number|Promise}` – timeout in milliseconds, or {@link ng.$q promise}
* that should abort the request when resolved.
* - **withCredentials** - `{boolean}` - whether to set the `withCredentials` flag on the
@@ -19427,6 +19696,10 @@ function $HttpProvider() {
throw minErr('$http')('badreq', 'Http request configuration must be an object. Received: {0}', requestConfig);
}
+ if (!isString(requestConfig.url)) {
+ throw minErr('$http')('badreq', 'Http request configuration url must be a string. Received: {0}', requestConfig.url);
+ }
+
var config = extend({
method: 'get',
transformRequest: defaults.transformRequest,
@@ -20039,7 +20312,7 @@ $interpolateMinErr.interr = function(text, err) {
* Used for configuring the interpolation markup. Defaults to `{{` and `}}`.
*
* @example
-<example module="customInterpolationApp">
+<example name="custom-interpolation-markup" module="customInterpolationApp">
<file name="index.html">
<script>
var customInterpolationApp = angular.module('customInterpolationApp', []);
@@ -20054,7 +20327,7 @@ $interpolateMinErr.interr = function(text, err) {
this.label = "This binding is brought you by // interpolation symbols.";
});
</script>
-<div ng-app="App" ng-controller="DemoController as demo">
+<div ng-controller="DemoController as demo">
//demo.label//
</div>
</file>
@@ -20217,6 +20490,11 @@ function $InterpolateProvider() {
* </file>
* </example>
*
+ * @knownIssue
+ * It is currently not possible for an interpolated expression to contain the interpolation end
+ * symbol. For example, `{{ '}}' }}` will be incorrectly interpreted as `{{ ' }}` + `' }}`, i.e.
+ * an interpolated expression consisting of a single-quote (`'`) and the `' }}` string.
+ *
* @param {string} text The text with markup to interpolate.
* @param {boolean=} mustHaveExpression if set to true then the interpolation string must have
* embedded expression in order to return an interpolation function. Strings with no
@@ -21051,7 +21329,7 @@ var locationPrototype = {
* ```
*
* @param {(string|number)=} path New path
- * @return {string} path
+ * @return {(string|object)} path if called with no parameters, or `$location` if called with a parameter
*/
path: locationGetterSetter('$$path', function(path) {
path = path !== null ? path.toString() : '';
@@ -22710,6 +22988,9 @@ ASTCompiler.prototype = {
intoId = intoId || this.nextId();
self.recurse(ast.object, left, undefined, function() {
self.if_(self.notNull(left), function() {
+ if (create && create !== 1) {
+ self.addEnsureSafeAssignContext(left);
+ }
if (ast.computed) {
right = self.nextId();
self.recurse(ast.property, right);
@@ -22791,7 +23072,7 @@ ASTCompiler.prototype = {
right = this.nextId();
left = {};
if (!isAssignable(ast.left)) {
- throw $parseMinErr('lval', 'Trying to assing a value to a non l-value');
+ throw $parseMinErr('lval', 'Trying to assign a value to a non l-value');
}
this.recurse(ast.left, undefined, left, function() {
self.if_(self.notNull(left.context), function() {
@@ -23324,8 +23605,11 @@ ASTInterpreter.prototype = {
rhs = right(scope, locals, assign, inputs);
rhs = getStringValue(rhs);
ensureSafeMemberName(rhs, expression);
- if (create && create !== 1 && lhs && !(lhs[rhs])) {
- lhs[rhs] = {};
+ if (create && create !== 1) {
+ ensureSafeAssignContext(lhs);
+ if (lhs && !(lhs[rhs])) {
+ lhs[rhs] = {};
+ }
}
value = lhs[rhs];
ensureSafeObject(value, expression);
@@ -23340,8 +23624,11 @@ ASTInterpreter.prototype = {
nonComputedMember: function(left, right, expensiveChecks, context, create, expression) {
return function(scope, locals, assign, inputs) {
var lhs = left(scope, locals, assign, inputs);
- if (create && create !== 1 && lhs && !(lhs[right])) {
- lhs[right] = {};
+ if (create && create !== 1) {
+ ensureSafeAssignContext(lhs);
+ if (lhs && !(lhs[right])) {
+ lhs[right] = {};
+ }
}
var value = lhs != null ? lhs[right] : undefined;
if (expensiveChecks || isPossiblyDangerousMemberName(right)) {
@@ -23382,9 +23669,6 @@ Parser.prototype = {
}
};
-var getterFnCacheDefault = createMap();
-var getterFnCacheExpensive = createMap();
-
function isPossiblyDangerousMemberName(name) {
return name == 'constructor';
}
@@ -23460,10 +23744,19 @@ function $ParseProvider() {
csp: noUnsafeEval,
expensiveChecks: true
};
+ var runningChecksEnabled = false;
+
+ $parse.$$runningExpensiveChecks = function() {
+ return runningChecksEnabled;
+ };
- return function $parse(exp, interceptorFn, expensiveChecks) {
+ return $parse;
+
+ function $parse(exp, interceptorFn, expensiveChecks) {
var parsedExpression, oneTime, cacheKey;
+ expensiveChecks = expensiveChecks || runningChecksEnabled;
+
switch (typeof exp) {
case 'string':
exp = exp.trim();
@@ -23489,6 +23782,9 @@ function $ParseProvider() {
} else if (parsedExpression.inputs) {
parsedExpression.$$watchDelegate = inputsWatchDelegate;
}
+ if (expensiveChecks) {
+ parsedExpression = expensiveChecksInterceptor(parsedExpression);
+ }
cache[cacheKey] = parsedExpression;
}
return addInterceptor(parsedExpression, interceptorFn);
@@ -23497,9 +23793,33 @@ function $ParseProvider() {
return addInterceptor(exp, interceptorFn);
default:
- return noop;
+ return addInterceptor(noop, interceptorFn);
}
- };
+ }
+
+ function expensiveChecksInterceptor(fn) {
+ if (!fn) return fn;
+ expensiveCheckFn.$$watchDelegate = fn.$$watchDelegate;
+ expensiveCheckFn.assign = expensiveChecksInterceptor(fn.assign);
+ expensiveCheckFn.constant = fn.constant;
+ expensiveCheckFn.literal = fn.literal;
+ for (var i = 0; fn.inputs && i < fn.inputs.length; ++i) {
+ fn.inputs[i] = expensiveChecksInterceptor(fn.inputs[i]);
+ }
+ expensiveCheckFn.inputs = fn.inputs;
+
+ return expensiveCheckFn;
+
+ function expensiveCheckFn(scope, locals, assign, inputs) {
+ var expensiveCheckOldValue = runningChecksEnabled;
+ runningChecksEnabled = true;
+ try {
+ return fn(scope, locals, assign, inputs);
+ } finally {
+ runningChecksEnabled = expensiveCheckOldValue;
+ }
+ }
+ }
function expressionInputDirtyCheck(newValue, oldValueOfValue) {
@@ -23675,15 +23995,15 @@ function $ParseProvider() {
* [Kris Kowal's Q](https://github.com/kriskowal/q).
*
* $q can be used in two fashions --- one which is more similar to Kris Kowal's Q or jQuery's Deferred
- * implementations, and the other which resembles ES6 promises to some degree.
+ * implementations, and the other which resembles ES6 (ES2015) promises to some degree.
*
* # $q constructor
*
* The streamlined ES6 style promise is essentially just using $q as a constructor which takes a `resolver`
- * function as the first argument. This is similar to the native Promise implementation from ES6 Harmony,
+ * function as the first argument. This is similar to the native Promise implementation from ES6,
* see [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise).
*
- * While the constructor-style use is supported, not all of the supporting methods from ES6 Harmony promises are
+ * While the constructor-style use is supported, not all of the supporting methods from ES6 promises are
* available yet.
*
* It can be used like so:
@@ -25031,7 +25351,7 @@ function $RootScopeProvider() {
*
*/
$digest: function() {
- var watch, value, last,
+ var watch, value, last, fn, get,
watchers,
length,
dirty, ttl = TTL,
@@ -25077,7 +25397,8 @@ function $RootScopeProvider() {
// Most common watches are on primitives, in which case we can short
// circuit it with === operator, only when === fails do we use .equals
if (watch) {
- if ((value = watch.get(current)) !== (last = watch.last) &&
+ get = watch.get;
+ if ((value = get(current)) !== (last = watch.last) &&
!(watch.eq
? equals(value, last)
: (typeof value === 'number' && typeof last === 'number'
@@ -25085,7 +25406,8 @@ function $RootScopeProvider() {
dirty = true;
lastDirtyWatch = watch;
watch.last = watch.eq ? copy(value, null) : value;
- watch.fn(value, ((last === initWatchVal) ? value : last), current);
+ fn = watch.fn;
+ fn(value, ((last === initWatchVal) ? value : last), current);
if (ttl < 5) {
logIdx = 4 - ttl;
if (!watchLog[logIdx]) watchLog[logIdx] = [];
@@ -25285,7 +25607,7 @@ function $RootScopeProvider() {
});
}
- asyncQueue.push({scope: this, expression: expr, locals: locals});
+ asyncQueue.push({scope: this, expression: $parse(expr), locals: locals});
},
$$postDigest: function(fn) {
@@ -25377,6 +25699,7 @@ function $RootScopeProvider() {
$applyAsync: function(expr) {
var scope = this;
expr && applyAsyncQueue.push($applyAsyncExpression);
+ expr = $parse(expr);
scheduleApplyAsync();
function $applyAsyncExpression() {
@@ -25652,6 +25975,21 @@ function $RootScopeProvider() {
}
/**
+ * @ngdoc service
+ * @name $rootElement
+ *
+ * @description
+ * The root element of Angular application. This is either the element where {@link
+ * ng.directive:ngApp ngApp} was declared or the element passed into
+ * {@link angular.bootstrap}. The element represents the root element of application. It is also the
+ * location where the application's {@link auto.$injector $injector} service gets
+ * published, and can be retrieved using `$rootElement.injector()`.
+ */
+
+
+// the implementation is in angular.bootstrap
+
+/**
* @description
* Private service to sanitize uris for links and images. Used by $compile and $sanitize.
*/
@@ -25865,13 +26203,15 @@ function $SceDelegateProvider() {
* @kind function
*
* @param {Array=} whitelist When provided, replaces the resourceUrlWhitelist with the value
- * provided. This must be an array or null. A snapshot of this array is used so further
- * changes to the array are ignored.
+ * provided. This must be an array or null. A snapshot of this array is used so further
+ * changes to the array are ignored.
*
- * Follow {@link ng.$sce#resourceUrlPatternItem this link} for a description of the items
- * allowed in this array.
+ * Follow {@link ng.$sce#resourceUrlPatternItem this link} for a description of the items
+ * allowed in this array.
*
- * Note: **an empty whitelist array will block all URLs**!
+ * <div class="alert alert-warning">
+ * **Note:** an empty whitelist array will block all URLs!
+ * </div>
*
* @return {Array} the currently set whitelist array.
*
@@ -25894,17 +26234,17 @@ function $SceDelegateProvider() {
* @kind function
*
* @param {Array=} blacklist When provided, replaces the resourceUrlBlacklist with the value
- * provided. This must be an array or null. A snapshot of this array is used so further
- * changes to the array are ignored.
+ * provided. This must be an array or null. A snapshot of this array is used so further
+ * changes to the array are ignored.
*
- * Follow {@link ng.$sce#resourceUrlPatternItem this link} for a description of the items
- * allowed in this array.
+ * Follow {@link ng.$sce#resourceUrlPatternItem this link} for a description of the items
+ * allowed in this array.
*
- * The typical usage for the blacklist is to **block
- * [open redirects](http://cwe.mitre.org/data/definitions/601.html)** served by your domain as
- * these would otherwise be trusted but actually return content from the redirected domain.
+ * The typical usage for the blacklist is to **block
+ * [open redirects](http://cwe.mitre.org/data/definitions/601.html)** served by your domain as
+ * these would otherwise be trusted but actually return content from the redirected domain.
*
- * Finally, **the blacklist overrides the whitelist** and has the final say.
+ * Finally, **the blacklist overrides the whitelist** and has the final say.
*
* @return {Array} the currently set blacklist array.
*
@@ -26898,7 +27238,7 @@ function $TemplateRequestProvider() {
// are included in there. This also makes Angular accept any script
// directive, no matter its name. However, we still need to unwrap trusted
// types.
- if (!isString(tpl) || !$templateCache.get(tpl)) {
+ if (!isString(tpl) || isUndefined($templateCache.get(tpl))) {
tpl = $sce.getTrustedResourceUrl(tpl);
}
@@ -27088,8 +27428,8 @@ function $TimeoutProvider() {
* @param {boolean=} [invokeApply=true] If set to `false` skips model dirty checking, otherwise
* will invoke `fn` within the {@link ng.$rootScope.Scope#$apply $apply} block.
* @param {...*=} Pass additional parameters to the executed function.
- * @returns {Promise} Promise that will be resolved when the timeout is reached. The value this
- * promise will be resolved with is the return value of the `fn` function.
+ * @returns {Promise} Promise that will be resolved when the timeout is reached. The promise
+ * will be resolved with the return value of the `fn` function.
*
*/
function timeout(fn, delay, invokeApply) {
@@ -27765,6 +28105,10 @@ function getTypeForFilter(val) {
return (val === null) ? 'null' : typeof val;
}
+var MAX_DIGITS = 22;
+var DECIMAL_SEP = '.';
+var ZERO_CHAR = '0';
+
/**
* @ngdoc filter
* @name currency
@@ -27846,7 +28190,7 @@ function currencyFilter($locale) {
* Formats a number as text.
*
* If the input is null or undefined, it will just be returned.
- * If the input is infinite (Infinity/-Infinity) the Infinity symbol '∞' is returned.
+ * If the input is infinite (Infinity or -Infinity), the Infinity symbol '∞' or '-∞' is returned, respectively.
* If the input is not a number an empty string is returned.
*
*
@@ -27854,7 +28198,9 @@ function currencyFilter($locale) {
* @param {(number|string)=} fractionSize Number of decimal places to round the number to.
* If this is not provided then the fraction size is computed from the current locale's number
* formatting pattern. In the case of the default locale, it will be 3.
- * @returns {string} Number rounded to decimalPlaces and places a “,” after each third digit.
+ * @returns {string} Number rounded to `fractionSize` appropriately formatted based on the current
+ * locale (e.g., in the en_US locale it will have "." as the decimal separator and
+ * include "," group separators after each third digit).
*
* @example
<example module="numberFilterExample">
@@ -27889,8 +28235,6 @@ function currencyFilter($locale) {
</file>
</example>
*/
-
-
numberFilter.$inject = ['$locale'];
function numberFilter($locale) {
var formats = $locale.NUMBER_FORMATS;
@@ -27904,93 +28248,194 @@ function numberFilter($locale) {
};
}
-var DECIMAL_SEP = '.';
-function formatNumber(number, pattern, groupSep, decimalSep, fractionSize) {
- if (isObject(number)) return '';
+/**
+ * Parse a number (as a string) into three components that can be used
+ * for formatting the number.
+ *
+ * (Significant bits of this parse algorithm came from https://github.com/MikeMcl/big.js/)
+ *
+ * @param {string} numStr The number to parse
+ * @return {object} An object describing this number, containing the following keys:
+ * - d : an array of digits containing leading zeros as necessary
+ * - i : the number of the digits in `d` that are to the left of the decimal point
+ * - e : the exponent for numbers that would need more than `MAX_DIGITS` digits in `d`
+ *
+ */
+function parse(numStr) {
+ var exponent = 0, digits, numberOfIntegerDigits;
+ var i, j, zeros;
- var isNegative = number < 0;
- number = Math.abs(number);
+ // Decimal point?
+ if ((numberOfIntegerDigits = numStr.indexOf(DECIMAL_SEP)) > -1) {
+ numStr = numStr.replace(DECIMAL_SEP, '');
+ }
- var isInfinity = number === Infinity;
- if (!isInfinity && !isFinite(number)) return '';
+ // Exponential form?
+ if ((i = numStr.search(/e/i)) > 0) {
+ // Work out the exponent.
+ if (numberOfIntegerDigits < 0) numberOfIntegerDigits = i;
+ numberOfIntegerDigits += +numStr.slice(i + 1);
+ numStr = numStr.substring(0, i);
+ } else if (numberOfIntegerDigits < 0) {
+ // There was no decimal point or exponent so it is an integer.
+ numberOfIntegerDigits = numStr.length;
+ }
- var numStr = number + '',
- formatedText = '',
- hasExponent = false,
- parts = [];
+ // Count the number of leading zeros.
+ for (i = 0; numStr.charAt(i) == ZERO_CHAR; i++) {/* jshint noempty: false */}
- if (isInfinity) formatedText = '\u221e';
+ if (i == (zeros = numStr.length)) {
+ // The digits are all zero.
+ digits = [0];
+ numberOfIntegerDigits = 1;
+ } else {
+ // Count the number of trailing zeros
+ zeros--;
+ while (numStr.charAt(zeros) == ZERO_CHAR) zeros--;
- if (!isInfinity && numStr.indexOf('e') !== -1) {
- var match = numStr.match(/([\d\.]+)e(-?)(\d+)/);
- if (match && match[2] == '-' && match[3] > fractionSize + 1) {
- number = 0;
- } else {
- formatedText = numStr;
- hasExponent = true;
+ // Trailing zeros are insignificant so ignore them
+ numberOfIntegerDigits -= i;
+ digits = [];
+ // Convert string to array of digits without leading/trailing zeros.
+ for (j = 0; i <= zeros; i++, j++) {
+ digits[j] = +numStr.charAt(i);
}
}
- if (!isInfinity && !hasExponent) {
- var fractionLen = (numStr.split(DECIMAL_SEP)[1] || '').length;
+ // If the number overflows the maximum allowed digits then use an exponent.
+ if (numberOfIntegerDigits > MAX_DIGITS) {
+ digits = digits.splice(0, MAX_DIGITS - 1);
+ exponent = numberOfIntegerDigits - 1;
+ numberOfIntegerDigits = 1;
+ }
- // determine fractionSize if it is not specified
- if (isUndefined(fractionSize)) {
- fractionSize = Math.min(Math.max(pattern.minFrac, fractionLen), pattern.maxFrac);
+ return { d: digits, e: exponent, i: numberOfIntegerDigits };
+}
+
+/**
+ * Round the parsed number to the specified number of decimal places
+ * This function changed the parsedNumber in-place
+ */
+function roundNumber(parsedNumber, fractionSize, minFrac, maxFrac) {
+ var digits = parsedNumber.d;
+ var fractionLen = digits.length - parsedNumber.i;
+
+ // determine fractionSize if it is not specified; `+fractionSize` converts it to a number
+ fractionSize = (isUndefined(fractionSize)) ? Math.min(Math.max(minFrac, fractionLen), maxFrac) : +fractionSize;
+
+ // The index of the digit to where rounding is to occur
+ var roundAt = fractionSize + parsedNumber.i;
+ var digit = digits[roundAt];
+
+ if (roundAt > 0) {
+ digits.splice(roundAt);
+ } else {
+ // We rounded to zero so reset the parsedNumber
+ parsedNumber.i = 1;
+ digits.length = roundAt = fractionSize + 1;
+ for (var i=0; i < roundAt; i++) digits[i] = 0;
}
- // safely round numbers in JS without hitting imprecisions of floating-point arithmetics
- // inspired by:
- // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math/round
- number = +(Math.round(+(number.toString() + 'e' + fractionSize)).toString() + 'e' + -fractionSize);
+ if (digit >= 5) digits[roundAt - 1]++;
- var fraction = ('' + number).split(DECIMAL_SEP);
- var whole = fraction[0];
- fraction = fraction[1] || '';
+ // Pad out with zeros to get the required fraction length
+ for (; fractionLen < fractionSize; fractionLen++) digits.push(0);
- var i, pos = 0,
- lgroup = pattern.lgSize,
- group = pattern.gSize;
- if (whole.length >= (lgroup + group)) {
- pos = whole.length - lgroup;
- for (i = 0; i < pos; i++) {
- if ((pos - i) % group === 0 && i !== 0) {
- formatedText += groupSep;
- }
- formatedText += whole.charAt(i);
- }
+ // Do any carrying, e.g. a digit was rounded up to 10
+ var carry = digits.reduceRight(function(carry, d, i, digits) {
+ d = d + carry;
+ digits[i] = d % 10;
+ return Math.floor(d / 10);
+ }, 0);
+ if (carry) {
+ digits.unshift(carry);
+ parsedNumber.i++;
}
+}
- for (i = pos; i < whole.length; i++) {
- if ((whole.length - i) % lgroup === 0 && i !== 0) {
- formatedText += groupSep;
- }
- formatedText += whole.charAt(i);
+/**
+ * Format a number into a string
+ * @param {number} number The number to format
+ * @param {{
+ * minFrac, // the minimum number of digits required in the fraction part of the number
+ * maxFrac, // the maximum number of digits required in the fraction part of the number
+ * gSize, // number of digits in each group of separated digits
+ * lgSize, // number of digits in the last group of digits before the decimal separator
+ * negPre, // the string to go in front of a negative number (e.g. `-` or `(`))
+ * posPre, // the string to go in front of a positive number
+ * negSuf, // the string to go after a negative number (e.g. `)`)
+ * posSuf // the string to go after a positive number
+ * }} pattern
+ * @param {string} groupSep The string to separate groups of number (e.g. `,`)
+ * @param {string} decimalSep The string to act as the decimal separator (e.g. `.`)
+ * @param {[type]} fractionSize The size of the fractional part of the number
+ * @return {string} The number formatted as a string
+ */
+function formatNumber(number, pattern, groupSep, decimalSep, fractionSize) {
+
+ if (!(isString(number) || isNumber(number)) || isNaN(number)) return '';
+
+ var isInfinity = !isFinite(number);
+ var isZero = false;
+ var numStr = Math.abs(number) + '',
+ formattedText = '',
+ parsedNumber;
+
+ if (isInfinity) {
+ formattedText = '\u221e';
+ } else {
+ parsedNumber = parse(numStr);
+
+ roundNumber(parsedNumber, fractionSize, pattern.minFrac, pattern.maxFrac);
+
+ var digits = parsedNumber.d;
+ var integerLen = parsedNumber.i;
+ var exponent = parsedNumber.e;
+ var decimals = [];
+ isZero = digits.reduce(function(isZero, d) { return isZero && !d; }, true);
+
+ // pad zeros for small numbers
+ while (integerLen < 0) {
+ digits.unshift(0);
+ integerLen++;
+ }
+
+ // extract decimals digits
+ if (integerLen > 0) {
+ decimals = digits.splice(integerLen, digits.length);
+ } else {
+ decimals = digits;
+ digits = [0];
}
- // format fraction part.
- while (fraction.length < fractionSize) {
- fraction += '0';
+ // format the integer digits with grouping separators
+ var groups = [];
+ if (digits.length >= pattern.lgSize) {
+ groups.unshift(digits.splice(-pattern.lgSize, digits.length).join(''));
+ }
+ while (digits.length > pattern.gSize) {
+ groups.unshift(digits.splice(-pattern.gSize, digits.length).join(''));
+ }
+ if (digits.length) {
+ groups.unshift(digits.join(''));
}
+ formattedText = groups.join(groupSep);
- if (fractionSize && fractionSize !== "0") formatedText += decimalSep + fraction.substr(0, fractionSize);
- } else {
- if (fractionSize > 0 && number < 1) {
- formatedText = number.toFixed(fractionSize);
- number = parseFloat(formatedText);
- formatedText = formatedText.replace(DECIMAL_SEP, decimalSep);
+ // append the decimal digits
+ if (decimals.length) {
+ formattedText += decimalSep + decimals.join('');
}
- }
- if (number === 0) {
- isNegative = false;
+ if (exponent) {
+ formattedText += 'e+' + exponent;
+ }
+ }
+ if (number < 0 && !isZero) {
+ return pattern.negPre + formattedText + pattern.negSuf;
+ } else {
+ return pattern.posPre + formattedText + pattern.posSuf;
}
-
- parts.push(isNegative ? pattern.negPre : pattern.posPre,
- formatedText,
- isNegative ? pattern.negSuf : pattern.posSuf);
- return parts.join('');
}
function padNumber(num, digits, trim) {
@@ -28000,7 +28445,7 @@ function padNumber(num, digits, trim) {
num = -num;
}
num = '' + num;
- while (num.length < digits) num = '0' + num;
+ while (num.length < digits) num = ZERO_CHAR + num;
if (trim) {
num = num.substr(num.length - digits);
}
@@ -28269,13 +28714,13 @@ function dateFilter($locale) {
var dateTimezoneOffset = date.getTimezoneOffset();
if (timezone) {
- dateTimezoneOffset = timezoneToOffset(timezone, date.getTimezoneOffset());
+ dateTimezoneOffset = timezoneToOffset(timezone, dateTimezoneOffset);
date = convertTimezoneToLocal(date, timezone, true);
}
forEach(parts, function(value) {
fn = DATE_FORMATS[value];
text += fn ? fn(date, $locale.DATETIME_FORMATS, dateTimezoneOffset)
- : value.replace(/(^'|'$)/g, '').replace(/''/g, "'");
+ : value === "''" ? "'" : value.replace(/(^'|'$)/g, '').replace(/''/g, "'");
});
return text;
@@ -28511,17 +28956,6 @@ function limitToFilter() {
* `reverse` is not set, which means it defaults to `false`.
<example module="orderByExample">
<file name="index.html">
- <script>
- angular.module('orderByExample', [])
- .controller('ExampleController', ['$scope', function($scope) {
- $scope.friends =
- [{name:'John', phone:'555-1212', age:10},
- {name:'Mary', phone:'555-9876', age:19},
- {name:'Mike', phone:'555-4321', age:21},
- {name:'Adam', phone:'555-5678', age:35},
- {name:'Julie', phone:'555-8765', age:29}];
- }]);
- </script>
<div ng-controller="ExampleController">
<table class="friend">
<tr>
@@ -28537,6 +28971,17 @@ function limitToFilter() {
</table>
</div>
</file>
+ <file name="script.js">
+ angular.module('orderByExample', [])
+ .controller('ExampleController', ['$scope', function($scope) {
+ $scope.friends =
+ [{name:'John', phone:'555-1212', age:10},
+ {name:'Mary', phone:'555-9876', age:19},
+ {name:'Mike', phone:'555-4321', age:21},
+ {name:'Adam', phone:'555-5678', age:35},
+ {name:'Julie', phone:'555-8765', age:29}];
+ }]);
+ </file>
</example>
*
* The predicate and reverse parameters can be controlled dynamically through scope properties,
@@ -28544,49 +28989,24 @@ function limitToFilter() {
* @example
<example module="orderByExample">
<file name="index.html">
- <script>
- angular.module('orderByExample', [])
- .controller('ExampleController', ['$scope', function($scope) {
- $scope.friends =
- [{name:'John', phone:'555-1212', age:10},
- {name:'Mary', phone:'555-9876', age:19},
- {name:'Mike', phone:'555-4321', age:21},
- {name:'Adam', phone:'555-5678', age:35},
- {name:'Julie', phone:'555-8765', age:29}];
- $scope.predicate = 'age';
- $scope.reverse = true;
- $scope.order = function(predicate) {
- $scope.reverse = ($scope.predicate === predicate) ? !$scope.reverse : false;
- $scope.predicate = predicate;
- };
- }]);
- </script>
- <style type="text/css">
- .sortorder:after {
- content: '\25b2';
- }
- .sortorder.reverse:after {
- content: '\25bc';
- }
- </style>
<div ng-controller="ExampleController">
<pre>Sorting predicate = {{predicate}}; reverse = {{reverse}}</pre>
<hr/>
- [ <a href="" ng-click="predicate=''">unsorted</a> ]
+ <button ng-click="predicate=''">Set to unsorted</button>
<table class="friend">
<tr>
- <th>
- <a href="" ng-click="order('name')">Name</a>
- <span class="sortorder" ng-show="predicate === 'name'" ng-class="{reverse:reverse}"></span>
- </th>
- <th>
- <a href="" ng-click="order('phone')">Phone Number</a>
- <span class="sortorder" ng-show="predicate === 'phone'" ng-class="{reverse:reverse}"></span>
- </th>
- <th>
- <a href="" ng-click="order('age')">Age</a>
- <span class="sortorder" ng-show="predicate === 'age'" ng-class="{reverse:reverse}"></span>
- </th>
+ <th>
+ <button ng-click="order('name')">Name</button>
+ <span class="sortorder" ng-show="predicate === 'name'" ng-class="{reverse:reverse}"></span>
+ </th>
+ <th>
+ <button ng-click="order('phone')">Phone Number</button>
+ <span class="sortorder" ng-show="predicate === 'phone'" ng-class="{reverse:reverse}"></span>
+ </th>
+ <th>
+ <button ng-click="order('age')">Age</button>
+ <span class="sortorder" ng-show="predicate === 'age'" ng-class="{reverse:reverse}"></span>
+ </th>
</tr>
<tr ng-repeat="friend in friends | orderBy:predicate:reverse">
<td>{{friend.name}}</td>
@@ -28596,6 +29016,31 @@ function limitToFilter() {
</table>
</div>
</file>
+ <file name="script.js">
+ angular.module('orderByExample', [])
+ .controller('ExampleController', ['$scope', function($scope) {
+ $scope.friends =
+ [{name:'John', phone:'555-1212', age:10},
+ {name:'Mary', phone:'555-9876', age:19},
+ {name:'Mike', phone:'555-4321', age:21},
+ {name:'Adam', phone:'555-5678', age:35},
+ {name:'Julie', phone:'555-8765', age:29}];
+ $scope.predicate = 'age';
+ $scope.reverse = true;
+ $scope.order = function(predicate) {
+ $scope.reverse = ($scope.predicate === predicate) ? !$scope.reverse : false;
+ $scope.predicate = predicate;
+ };
+ }]);
+ </file>
+ <file name="style.css">
+ .sortorder:after {
+ content: '\25b2';
+ }
+ .sortorder.reverse:after {
+ content: '\25bc';
+ }
+ </file>
</example>
*
* It's also possible to call the orderBy filter manually, by injecting `$filter`, retrieving the
@@ -28607,21 +29052,30 @@ function limitToFilter() {
* @example
<example module="orderByExample">
<file name="index.html">
- <div ng-controller="ExampleController">
- <table class="friend">
- <tr>
- <th><a href="" ng-click="reverse=false;order('name', false)">Name</a>
- (<a href="" ng-click="order('-name',false)">^</a>)</th>
- <th><a href="" ng-click="reverse=!reverse;order('phone', reverse)">Phone Number</a></th>
- <th><a href="" ng-click="reverse=!reverse;order('age',reverse)">Age</a></th>
- </tr>
- <tr ng-repeat="friend in friends">
- <td>{{friend.name}}</td>
- <td>{{friend.phone}}</td>
- <td>{{friend.age}}</td>
- </tr>
- </table>
- </div>
+ <div ng-controller="ExampleController">
+ <pre>Sorting predicate = {{predicate}}; reverse = {{reverse}}</pre>
+ <table class="friend">
+ <tr>
+ <th>
+ <button ng-click="order('name')">Name</button>
+ <span class="sortorder" ng-show="predicate === 'name'" ng-class="{reverse:reverse}"></span>
+ </th>
+ <th>
+ <button ng-click="order('phone')">Phone Number</button>
+ <span class="sortorder" ng-show="predicate === 'phone'" ng-class="{reverse:reverse}"></span>
+ </th>
+ <th>
+ <button ng-click="order('age')">Age</button>
+ <span class="sortorder" ng-show="predicate === 'age'" ng-class="{reverse:reverse}"></span>
+ </th>
+ </tr>
+ <tr ng-repeat="friend in friends">
+ <td>{{friend.name}}</td>
+ <td>{{friend.phone}}</td>
+ <td>{{friend.age}}</td>
+ </tr>
+ </table>
+ </div>
</file>
<file name="script.js">
@@ -28635,12 +29089,23 @@ function limitToFilter() {
{ name: 'Adam', phone: '555-5678', age: 35 },
{ name: 'Julie', phone: '555-8765', age: 29 }
];
- $scope.order = function(predicate, reverse) {
- $scope.friends = orderBy($scope.friends, predicate, reverse);
+ $scope.order = function(predicate) {
+ $scope.predicate = predicate;
+ $scope.reverse = ($scope.predicate === predicate) ? !$scope.reverse : false;
+ $scope.friends = orderBy($scope.friends, predicate, $scope.reverse);
};
- $scope.order('-age',false);
+ $scope.order('age', true);
}]);
</file>
+
+ <file name="style.css">
+ .sortorder:after {
+ content: '\25b2';
+ }
+ .sortorder.reverse:after {
+ content: '\25bc';
+ }
+ </file>
</example>
*/
orderByFilter.$inject = ['$parse'];
@@ -28970,20 +29435,7 @@ var htmlAnchorDirective = valueFn({
* {@link guide/expression expression} inside `ngDisabled` evaluates to truthy.
*
* A special directive is necessary because we cannot use interpolation inside the `disabled`
- * attribute. The following example would make the button enabled on Chrome/Firefox
- * but not on older IEs:
- *
- * ```html
- * <!-- See below for an example of ng-disabled being used correctly -->
- * <div ng-init="isDisabled = false">
- * <button disabled="{{isDisabled}}">Disabled</button>
- * </div>
- * ```
- *
- * This is because the HTML specification does not require browsers to preserve the values of
- * boolean attributes such as `disabled` (Their presence means true and their absence means false.)
- * If we put an Angular interpolation expression into such an attribute then the
- * binding information would be lost when the browser removes the attribute.
+ * attribute. See the {@link guide/interpolation interpolation guide} for more info.
*
* @example
<example>
@@ -29018,15 +29470,9 @@ var htmlAnchorDirective = valueFn({
* Note that this directive should not be used together with {@link ngModel `ngModel`},
* as this can lead to unexpected behavior.
*
- * ### Why do we need `ngChecked`?
+ * A special directive is necessary because we cannot use interpolation inside the `checked`
+ * attribute. See the {@link guide/interpolation interpolation guide} for more info.
*
- * The HTML specification does not require browsers to preserve the values of boolean attributes
- * such as checked. (Their presence means true and their absence means false.)
- * If we put an Angular interpolation expression into such an attribute then the
- * binding information would be lost when the browser removes the attribute.
- * The `ngChecked` directive solves this problem for the `checked` attribute.
- * This complementary directive is not removed by the browser and so provides
- * a permanent reliable place to store the binding information.
* @example
<example>
<file name="index.html">
@@ -29055,13 +29501,12 @@ var htmlAnchorDirective = valueFn({
* @priority 100
*
* @description
- * The HTML specification does not require browsers to preserve the values of boolean attributes
- * such as readonly. (Their presence means true and their absence means false.)
- * If we put an Angular interpolation expression into such an attribute then the
- * binding information would be lost when the browser removes the attribute.
- * The `ngReadonly` directive solves this problem for the `readonly` attribute.
- * This complementary directive is not removed by the browser and so provides
- * a permanent reliable place to store the binding information.
+ *
+ * Sets the `readOnly` attribute on the element, if the expression inside `ngReadonly` is truthy.
+ *
+ * A special directive is necessary because we cannot use interpolation inside the `readOnly`
+ * attribute. See the {@link guide/interpolation interpolation guide} for more info.
+ *
* @example
<example>
<file name="index.html">
@@ -29090,13 +29535,11 @@ var htmlAnchorDirective = valueFn({
* @priority 100
*
* @description
- * The HTML specification does not require browsers to preserve the values of boolean attributes
- * such as selected. (Their presence means true and their absence means false.)
- * If we put an Angular interpolation expression into such an attribute then the
- * binding information would be lost when the browser removes the attribute.
- * The `ngSelected` directive solves this problem for the `selected` attribute.
- * This complementary directive is not removed by the browser and so provides
- * a permanent reliable place to store the binding information.
+ *
+ * Sets the `selected` attribute on the element, if the expression inside `ngSelected` is truthy.
+ *
+ * A special directive is necessary because we cannot use interpolation inside the `selected`
+ * attribute. See the {@link guide/interpolation interpolation guide} for more info.
*
* @example
<example>
@@ -29128,13 +29571,12 @@ var htmlAnchorDirective = valueFn({
* @priority 100
*
* @description
- * The HTML specification does not require browsers to preserve the values of boolean attributes
- * such as open. (Their presence means true and their absence means false.)
- * If we put an Angular interpolation expression into such an attribute then the
- * binding information would be lost when the browser removes the attribute.
- * The `ngOpen` directive solves this problem for the `open` attribute.
- * This complementary directive is not removed by the browser and so provides
- * a permanent reliable place to store the binding information.
+ *
+ * Sets the `open` attribute on the element, if the expression inside `ngOpen` is truthy.
+ *
+ * A special directive is necessary because we cannot use interpolation inside the `open`
+ * attribute. See the {@link guide/interpolation interpolation guide} for more info.
+ *
* @example
<example>
<file name="index.html">
@@ -29590,13 +30032,9 @@ function FormController(element, attrs, $scope, $animate, $interpolate) {
*
* In Angular, forms can be nested. This means that the outer form is valid when all of the child
* forms are valid as well. However, browsers do not allow nesting of `<form>` elements, so
- * Angular provides the {@link ng.directive:ngForm `ngForm`} directive which behaves identically to
- * `<form>` but can be nested. This allows you to have nested forms, which is very useful when
- * using Angular validation directives in forms that are dynamically generated using the
- * {@link ng.directive:ngRepeat `ngRepeat`} directive. Since you cannot dynamically generate the `name`
- * attribute of input elements using interpolation, you have to wrap each set of repeated inputs in an
- * `ngForm` directive and nest these in an outer `form` element.
- *
+ * Angular provides the {@link ng.directive:ngForm `ngForm`} directive, which behaves identically to
+ * `form` but can be nested. Nested forms can be useful, for example, if the validity of a sub-group
+ * of controls needs to be determined.
*
* # CSS classes
* - `ng-valid` is set if the form is valid.
@@ -29817,7 +30255,18 @@ var ngFormDirective = formDirectiveFactory(true);
// Regex code is obtained from SO: https://stackoverflow.com/questions/3143070/javascript-regex-iso-datetime#answer-3143231
var ISO_DATE_REGEXP = /\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+([+-][0-2]\d:[0-5]\d|Z)/;
// See valid URLs in RFC3987 (http://tools.ietf.org/html/rfc3987)
-var URL_REGEXP = /^[A-Za-z][A-Za-z\d.+-]*:\/*(?:\w+(?::\w+)?@)?[^\s/]+(?::\d+)?(?:\/[\w#!:.?+=&%@\-/]*)?$/;
+// Note: We are being more lenient, because browsers are too.
+// 1. Scheme
+// 2. Slashes
+// 3. Username
+// 4. Password
+// 5. Hostname
+// 6. Port
+// 7. Path
+// 8. Query
+// 9. Fragment
+// 1111111111111111 222 333333 44444 555555555555555555555555 666 77777777 8888888 999
+var URL_REGEXP = /^[a-z][a-z\d.+-]*:\/*(?:[^:@]+(?::[^@]+)?@)?(?:[^\s:/?#]+|\[[a-f\d:]+\])(?::\d+)?(?:\/[^?#]*)?(?:\?[^#]*)?(?:#.*)?$/i;
var EMAIL_REGEXP = /^[a-z0-9!#$%&'*+\/=?^_`{|}~.-]+@[a-z0-9]([a-z0-9-]*[a-z0-9])?(\.[a-z0-9]([a-z0-9-]*[a-z0-9])?)*$/i;
var NUMBER_REGEXP = /^\s*(\-|\+)?(\d+|(\d*(\.\d*)))([eE][+-]?\d+)?\s*$/;
var DATE_REGEXP = /^(\d{4})-(\d{2})-(\d{2})$/;
@@ -29826,6 +30275,12 @@ var WEEK_REGEXP = /^(\d{4})-W(\d\d)$/;
var MONTH_REGEXP = /^(\d{4})-(\d\d)$/;
var TIME_REGEXP = /^(\d\d):(\d\d)(?::(\d\d)(\.\d{1,3})?)?$/;
+var PARTIAL_VALIDATION_EVENTS = 'keydown wheel mousedown';
+var PARTIAL_VALIDATION_TYPES = createMap();
+forEach('date,datetime-local,month,time,week'.split(','), function(type) {
+ PARTIAL_VALIDATION_TYPES[type] = true;
+});
+
var inputType = {
/**
@@ -30181,7 +30636,7 @@ var inputType = {
}]);
</script>
<form name="myForm" ng-controller="DateController as dateCtrl">
- <label for="exampleInput">Pick a between 8am and 5pm:</label>
+ <label for="exampleInput">Pick a time between 8am and 5pm:</label>
<input type="time" id="exampleInput" name="input" ng-model="example.value"
placeholder="HH:mm:ss" min="08:00:00" max="17:00:00" required />
<div role="alert">
@@ -30912,6 +31367,8 @@ function baseInputType(scope, element, attr, ctrl, $sniffer, $browser) {
});
}
+ var timeout;
+
var listener = function(ev) {
if (timeout) {
$browser.defer.cancel(timeout);
@@ -30941,8 +31398,6 @@ function baseInputType(scope, element, attr, ctrl, $sniffer, $browser) {
if ($sniffer.hasEvent('input')) {
element.on('input', listener);
} else {
- var timeout;
-
var deferListener = function(ev, input, origValue) {
if (!timeout) {
timeout = $browser.defer(function() {
@@ -30974,6 +31429,26 @@ function baseInputType(scope, element, attr, ctrl, $sniffer, $browser) {
// or form autocomplete on newer browser, we need "change" event to catch it
element.on('change', listener);
+ // Some native input types (date-family) have the ability to change validity without
+ // firing any input/change events.
+ // For these event types, when native validators are present and the browser supports the type,
+ // check for validity changes on various DOM events.
+ if (PARTIAL_VALIDATION_TYPES[type] && ctrl.$$hasNativeValidators && type === attr.type) {
+ element.on(PARTIAL_VALIDATION_EVENTS, function(ev) {
+ if (!timeout) {
+ var validity = this[VALIDITY_STATE_PROPERTY];
+ var origBadInput = validity.badInput;
+ var origTypeMismatch = validity.typeMismatch;
+ timeout = $browser.defer(function() {
+ timeout = null;
+ if (validity.badInput !== origBadInput || validity.typeMismatch !== origTypeMismatch) {
+ listener(ev);
+ }
+ });
+ }
+ });
+ }
+
ctrl.$render = function() {
// Workaround for Firefox validation #12102.
var value = ctrl.$isEmpty(ctrl.$viewValue) ? '' : ctrl.$viewValue;
@@ -31476,13 +31951,16 @@ var inputDirective = ['$browser', '$sniffer', '$filter', '$parse',
return {
restrict: 'E',
require: ['?ngModel'],
- link: {
- pre: function(scope, element, attr, ctrls) {
- if (ctrls[0]) {
- (inputType[lowercase(attr.type)] || inputType.text)(scope, element, attr, ctrls[0], $sniffer,
- $browser, $filter, $parse);
+ compile: function(tElement, tAttr) {
+ if (lowercase(tAttr.type) === 'hidden') tAttr.$set('autocomplete', 'off');
+ return {
+ pre: function(scope, element, attr, ctrls) {
+ if (ctrls[0]) {
+ (inputType[lowercase(attr.type)] || inputType.text)(scope, element, attr, ctrls[0], $sniffer,
+ $browser, $filter, $parse);
+ }
}
- }
+ };
}
};
}];
@@ -31755,8 +32233,9 @@ var ngBindHtmlDirective = ['$sce', '$parse', '$compile', function($sce, $parse,
restrict: 'A',
compile: function ngBindHtmlCompile(tElement, tAttrs) {
var ngBindHtmlGetter = $parse(tAttrs.ngBindHtml);
- var ngBindHtmlWatch = $parse(tAttrs.ngBindHtml, function getStringValue(value) {
- return (value || '').toString();
+ var ngBindHtmlWatch = $parse(tAttrs.ngBindHtml, function sceValueOf(val) {
+ // Unwrap the value to compare the actual inner safe value, not the wrapper object.
+ return $sce.valueOf(val);
});
$compile.$$addBindingClass(tElement);
@@ -31764,9 +32243,9 @@ var ngBindHtmlDirective = ['$sce', '$parse', '$compile', function($sce, $parse,
$compile.$$addBindingInfo(element, attr.ngBindHtml);
scope.$watch(ngBindHtmlWatch, function ngBindHtmlWatchAction() {
- // we re-evaluate the expr because we want a TrustedValueHolderType
- // for $sce, not a string
- element.html($sce.getTrustedHtml(ngBindHtmlGetter(scope)) || '');
+ // The watched value is the unwrapped value. To avoid re-escaping, use the direct getter.
+ var value = ngBindHtmlGetter(scope);
+ element.html($sce.getTrustedHtml(value) || '');
});
};
}
@@ -31928,7 +32407,11 @@ function classDirective(name, selector) {
updateClasses(oldClasses, newClasses);
}
}
- oldVal = shallowCopy(newVal);
+ if (isArray(newVal)) {
+ oldVal = newVal.map(function(v) { return shallowCopy(v); });
+ } else {
+ oldVal = shallowCopy(newVal);
+ }
}
}
};
@@ -33581,6 +34064,8 @@ var ngIncludeDirective = ['$templateRequest', '$anchorScroll', '$animate',
//set the 2nd param to true to ignore the template request error so that the inner
//contents and scope can be cleaned up.
$templateRequest(src, true).then(function(response) {
+ if (scope.$$destroyed) return;
+
if (thisChangeId !== changeCounter) return;
var newScope = scope.$new();
ctrl.template = response;
@@ -33602,6 +34087,8 @@ var ngIncludeDirective = ['$templateRequest', '$anchorScroll', '$animate',
currentScope.$emit('$includeContentLoaded', src);
scope.$eval(onloadExp);
}, function() {
+ if (scope.$$destroyed) return;
+
if (thisChangeId === changeCounter) {
cleanupLastIncludeContent();
scope.$emit('$includeContentError', src);
@@ -34280,11 +34767,14 @@ var NgModelController = ['$scope', '$exceptionHandler', '$attrs', '$element', '$
* which may be caused by a pending debounced event or because the input is waiting for a some
* future event.
*
- * If you have an input that uses `ng-model-options` to set up debounced events or events such
- * as blur you can have a situation where there is a period when the `$viewValue`
- * is out of synch with the ngModel's `$modelValue`.
+ * If you have an input that uses `ng-model-options` to set up debounced updates or updates that
+ * depend on special events such as blur, you can have a situation where there is a period when
+ * the `$viewValue` is out of sync with the ngModel's `$modelValue`.
+ *
+ * In this case, you can use `$rollbackViewValue()` to manually cancel the debounced / future update
+ * and reset the input to the last committed view value.
*
- * In this case, you can run into difficulties if you try to update the ngModel's `$modelValue`
+ * It is also possible that you run into difficulties if you try to update the ngModel's `$modelValue`
* programmatically before these debounced/future events have resolved/occurred, because Angular's
* dirty checking mechanism is not able to tell whether the model has actually changed or not.
*
@@ -34297,39 +34787,63 @@ var NgModelController = ['$scope', '$exceptionHandler', '$attrs', '$element', '$
* angular.module('cancel-update-example', [])
*
* .controller('CancelUpdateController', ['$scope', function($scope) {
- * $scope.resetWithCancel = function(e) {
- * if (e.keyCode == 27) {
- * $scope.myForm.myInput1.$rollbackViewValue();
- * $scope.myValue = '';
- * }
- * };
- * $scope.resetWithoutCancel = function(e) {
+ * $scope.model = {};
+ *
+ * $scope.setEmpty = function(e, value, rollback) {
* if (e.keyCode == 27) {
- * $scope.myValue = '';
+ * e.preventDefault();
+ * if (rollback) {
+ * $scope.myForm[value].$rollbackViewValue();
+ * }
+ * $scope.model[value] = '';
* }
* };
* }]);
* </file>
* <file name="index.html">
* <div ng-controller="CancelUpdateController">
- * <p>Try typing something in each input. See that the model only updates when you
- * blur off the input.
- * </p>
- * <p>Now see what happens if you start typing then press the Escape key</p>
+ * <p>Both of these inputs are only updated if they are blurred. Hitting escape should
+ * empty them. Follow these steps and observe the difference:</p>
+ * <ol>
+ * <li>Type something in the input. You will see that the model is not yet updated</li>
+ * <li>Press the Escape key.
+ * <ol>
+ * <li> In the first example, nothing happens, because the model is already '', and no
+ * update is detected. If you blur the input, the model will be set to the current view.
+ * </li>
+ * <li> In the second example, the pending update is cancelled, and the input is set back
+ * to the last committed view value (''). Blurring the input does nothing.
+ * </li>
+ * </ol>
+ * </li>
+ * </ol>
*
* <form name="myForm" ng-model-options="{ updateOn: 'blur' }">
- * <p id="inputDescription1">With $rollbackViewValue()</p>
- * <input name="myInput1" aria-describedby="inputDescription1" ng-model="myValue"
- * ng-keydown="resetWithCancel($event)"><br/>
- * myValue: "{{ myValue }}"
- *
- * <p id="inputDescription2">Without $rollbackViewValue()</p>
- * <input name="myInput2" aria-describedby="inputDescription2" ng-model="myValue"
- * ng-keydown="resetWithoutCancel($event)"><br/>
- * myValue: "{{ myValue }}"
+ * <div>
+ * <p id="inputDescription1">Without $rollbackViewValue():</p>
+ * <input name="value1" aria-describedby="inputDescription1" ng-model="model.value1"
+ * ng-keydown="setEmpty($event, 'value1')">
+ * value1: "{{ model.value1 }}"
+ * </div>
+ *
+ * <div>
+ * <p id="inputDescription2">With $rollbackViewValue():</p>
+ * <input name="value2" aria-describedby="inputDescription2" ng-model="model.value2"
+ * ng-keydown="setEmpty($event, 'value2', true)">
+ * value2: "{{ model.value2 }}"
+ * </div>
* </form>
* </div>
* </file>
+ <file name="style.css">
+ div {
+ display: table-cell;
+ }
+ div:nth-child(1) {
+ padding-right: 30px;
+ }
+
+ </file>
* </example>
*/
this.$rollbackViewValue = function() {
@@ -34443,7 +34957,7 @@ var NgModelController = ['$scope', '$exceptionHandler', '$attrs', '$element', '$
forEach(ctrl.$asyncValidators, function(validator, name) {
var promise = validator(modelValue, viewValue);
if (!isPromiseLike(promise)) {
- throw ngModelMinErr("$asyncValidators",
+ throw ngModelMinErr('nopromise',
"Expected asynchronous validator to return a promise but got '{0}' instead.", promise);
}
setValidity(name, undefined);
@@ -34739,6 +35253,22 @@ var NgModelController = ['$scope', '$exceptionHandler', '$attrs', '$element', '$
* - {@link ng.directive:select select}
* - {@link ng.directive:textarea textarea}
*
+ * # Complex Models (objects or collections)
+ *
+ * By default, `ngModel` watches the model by reference, not value. This is important to know when
+ * binding inputs to models that are objects (e.g. `Date`) or collections (e.g. arrays). If only properties of the
+ * object or collection change, `ngModel` will not be notified and so the input will not be re-rendered.
+ *
+ * The model must be assigned an entirely new object or collection before a re-rendering will occur.
+ *
+ * Some directives have options that will cause them to use a custom `$watchCollection` on the model expression
+ * - for example, `ngOptions` will do so when a `track by` clause is included in the comprehension expression or
+ * if the select is given the `multiple` attribute.
+ *
+ * The `$watchCollection()` method only does a shallow comparison, meaning that changing properties deeper than the
+ * first level of the object (or only changing the properties of an item in the collection if it's an array) will still
+ * not trigger a re-rendering of the model.
+ *
* # CSS classes
* The following CSS classes are added and removed on the associated input/select/textarea element
* depending on the validity of the model.
@@ -35714,14 +36244,20 @@ var ngOptionsDirective = ['$compile', '$parse', function($compile, $parse) {
var option = options.getOptionFromViewValue(value);
if (option && !option.disabled) {
+ // Don't update the option when it is already selected.
+ // For example, the browser will select the first option by default. In that case,
+ // most properties are set automatically - except the `selected` attribute, which we
+ // set always
+
if (selectElement[0].value !== option.selectValue) {
removeUnknownOption();
removeEmptyOption();
selectElement[0].value = option.selectValue;
option.element.selected = true;
- option.element.setAttribute('selected', 'selected');
}
+
+ option.element.setAttribute('selected', 'selected');
} else {
if (value === null || providedEmptyOption) {
removeUnknownOption();
@@ -35889,7 +36425,7 @@ var ngOptionsDirective = ['$compile', '$parse', function($compile, $parse) {
(current === emptyOption_ ||
current === unknownOption_ ||
current.nodeType === NODE_TYPE_COMMENT ||
- current.value === '')) {
+ (nodeName_(current) === 'option' && current.value === ''))) {
current = current.nextSibling;
}
}
@@ -35979,7 +36515,8 @@ var ngOptionsDirective = ['$compile', '$parse', function($compile, $parse) {
// Check to see if the value has changed due to the update to the options
if (!ngModelCtrl.$isEmpty(previousValue)) {
var nextValue = selectCtrl.readValue();
- if (ngOptions.trackBy ? !equals(previousValue, nextValue) : previousValue !== nextValue) {
+ var isNotPrimitive = ngOptions.trackBy || multiple;
+ if (isNotPrimitive ? !equals(previousValue, nextValue) : previousValue !== nextValue) {
ngModelCtrl.$setViewValue(nextValue);
ngModelCtrl.$render();
}
@@ -36751,7 +37288,7 @@ var ngRepeatDirective = ['$parse', '$animate', function($parse, $animate) {
if (getBlockStart(block) != nextNode) {
// existing item which got moved
- $animate.move(getBlockNodes(block.clone), null, jqLite(previousNode));
+ $animate.move(getBlockNodes(block.clone), null, previousNode);
}
previousNode = getBlockEnd(block);
updateScope(block.scope, index, valueIdentifier, value, keyIdentifier, key, collectionLength);
@@ -36763,8 +37300,7 @@ var ngRepeatDirective = ['$parse', '$animate', function($parse, $animate) {
var endNode = ngRepeatEndComment.cloneNode(false);
clone[clone.length++] = endNode;
- // TODO(perf): support naked previousNode in `enter` to avoid creation of jqLite wrapper?
- $animate.enter(clone, null, jqLite(previousNode));
+ $animate.enter(clone, null, previousNode);
previousNode = endNode;
// Note: We only need the first/last node of the cloned nodes.
// However, we need to keep the reference to the jqlite wrapper as it might be changed later
@@ -37574,6 +38110,9 @@ var SelectController =
// Tell the select control that an option, with the given value, has been added
self.addOption = function(value, element) {
+ // Skip comment nodes, as they only pollute the `optionsMap`
+ if (element[0].nodeType === NODE_TYPE_COMMENT) return;
+
assertNotHasOwnProperty(value, '"option value"');
if (value === '') {
self.emptyOption = element;
@@ -37648,7 +38187,7 @@ var SelectController =
*
* The `select` directive is used together with {@link ngModel `ngModel`} to provide data-binding
* between the scope and the `<select>` control (including setting default values).
- * Ìt also handles dynamic `<option>` elements, which can be added using the {@link ngRepeat `ngRepeat}` or
+ * It also handles dynamic `<option>` elements, which can be added using the {@link ngRepeat `ngRepeat}` or
* {@link ngOptions `ngOptions`} directives.
*
* When an item in the `<select>` menu is selected, the value of the selected option will be bound
@@ -37850,7 +38389,8 @@ var selectDirective = function() {
controller: SelectController,
priority: 1,
link: {
- pre: selectPreLink
+ pre: selectPreLink,
+ post: selectPostLink
}
};
@@ -37864,13 +38404,6 @@ var selectDirective = function() {
selectCtrl.ngModelCtrl = ngModelCtrl;
- // We delegate rendering to the `writeValue` method, which can be changed
- // if the select can have multiple selected values or if the options are being
- // generated by `ngOptions`
- ngModelCtrl.$render = function() {
- selectCtrl.writeValue(ngModelCtrl.$viewValue);
- };
-
// When the selected item(s) changes we delegate getting the value of the select control
// to the `readValue` method, which can be changed if the select can have multiple
// selected values or if the options are being generated by `ngOptions`
@@ -37924,6 +38457,23 @@ var selectDirective = function() {
}
}
+
+ function selectPostLink(scope, element, attrs, ctrls) {
+ // if ngModel is not defined, we don't need to do anything
+ var ngModelCtrl = ctrls[1];
+ if (!ngModelCtrl) return;
+
+ var selectCtrl = ctrls[0];
+
+ // We delegate rendering to the `writeValue` method, which can be changed
+ // if the select can have multiple selected values or if the options are being
+ // generated by `ngOptions`.
+ // This must be done in the postLink fn to prevent $render to be called before
+ // all nodes have been linked correctly.
+ ngModelCtrl.$render = function() {
+ selectCtrl.writeValue(ngModelCtrl.$viewValue);
+ };
+ }
};
@@ -37935,7 +38485,6 @@ var optionDirective = ['$interpolate', function($interpolate) {
restrict: 'E',
priority: 100,
compile: function(element, attr) {
-
if (isDefined(attr.value)) {
// If the value attribute is defined, check if it contains an interpolation
var interpolateValueFn = $interpolate(attr.value, true);
@@ -37949,7 +38498,6 @@ var optionDirective = ['$interpolate', function($interpolate) {
}
return function(scope, element, attr) {
-
// This is an optimization over using ^^ since we don't want to have to search
// all the way to the root of the DOM for every single option element
var selectCtrlName = '$selectController',
@@ -37970,6 +38518,65 @@ var styleDirective = valueFn({
terminal: false
});
+/**
+ * @ngdoc directive
+ * @name ngRequired
+ * @restrict A
+ *
+ * @description
+ *
+ * ngRequired adds the required {@link ngModel.NgModelController#$validators `validator`} to {@link ngModel `ngModel`}.
+ * It is most often used for {@link input `input`} and {@link select `select`} controls, but can also be
+ * applied to custom controls.
+ *
+ * The directive sets the `required` attribute on the element if the Angular expression inside
+ * `ngRequired` evaluates to true. A special directive for setting `required` is necessary because we
+ * cannot use interpolation inside `required`. See the {@link guide/interpolation interpolation guide}
+ * for more info.
+ *
+ * The validator will set the `required` error key to true if the `required` attribute is set and
+ * calling {@link ngModel.NgModelController#$isEmpty `NgModelController.$isEmpty`} with the
+ * {@link ngModel.NgModelController#$viewValue `ngModel.$viewValue`} returns `true`. For example, the
+ * `$isEmpty()` implementation for `input[text]` checks the length of the `$viewValue`. When developing
+ * custom controls, `$isEmpty()` can be overwritten to account for a $viewValue that is not string-based.
+ *
+ * @example
+ * <example name="ngRequiredDirective" module="ngRequiredExample">
+ * <file name="index.html">
+ * <script>
+ * angular.module('ngRequiredExample', [])
+ * .controller('ExampleController', ['$scope', function($scope) {
+ * $scope.required = true;
+ * }]);
+ * </script>
+ * <div ng-controller="ExampleController">
+ * <form name="form">
+ * <label for="required">Toggle required: </label>
+ * <input type="checkbox" ng-model="required" id="required" />
+ * <br>
+ * <label for="input">This input must be filled if `required` is true: </label>
+ * <input type="text" ng-model="model" id="input" name="input" ng-required="required" /><br>
+ * <hr>
+ * required error set? = <code>{{form.input.$error.required}}</code><br>
+ * model = <code>{{model}}</code>
+ * </form>
+ * </div>
+ * </file>
+ * <file name="protractor.js" type="protractor">
+ var required = element(by.binding('form.input.$error.required'));
+ var model = element(by.binding('model'));
+ var input = element(by.id('input'));
+
+ it('should set the required error', function() {
+ expect(required.getText()).toContain('true');
+
+ input.sendKeys('123');
+ expect(required.getText()).not.toContain('true');
+ expect(model.getText()).toContain('123');
+ });
+ * </file>
+ * </example>
+ */
var requiredDirective = function() {
return {
restrict: 'A',
@@ -37989,7 +38596,81 @@ var requiredDirective = function() {
};
};
+/**
+ * @ngdoc directive
+ * @name ngPattern
+ *
+ * @description
+ *
+ * ngPattern adds the pattern {@link ngModel.NgModelController#$validators `validator`} to {@link ngModel `ngModel`}.
+ * It is most often used for text-based {@link input `input`} controls, but can also be applied to custom text-based controls.
+ *
+ * The validator sets the `pattern` error key if the {@link ngModel.NgModelController#$viewValue `ngModel.$viewValue`}
+ * does not match a RegExp which is obtained by evaluating the Angular expression given in the
+ * `ngPattern` attribute value:
+ * * If the expression evaluates to a RegExp object, then this is used directly.
+ * * If the expression evaluates to a string, then it will be converted to a RegExp after wrapping it
+ * in `^` and `$` characters. For instance, `"abc"` will be converted to `new RegExp('^abc$')`.
+ *
+ * <div class="alert alert-info">
+ * **Note:** Avoid using the `g` flag on the RegExp, as it will cause each successive search to
+ * start at the index of the last search's match, thus not taking the whole input value into
+ * account.
+ * </div>
+ *
+ * <div class="alert alert-info">
+ * **Note:** This directive is also added when the plain `pattern` attribute is used, with two
+ * differences:
+ * <ol>
+ * <li>
+ * `ngPattern` does not set the `pattern` attribute and therefore HTML5 constraint validation is
+ * not available.
+ * </li>
+ * <li>
+ * The `ngPattern` attribute must be an expression, while the `pattern` value must be
+ * interpolated.
+ * </li>
+ * </ol>
+ * </div>
+ *
+ * @example
+ * <example name="ngPatternDirective" module="ngPatternExample">
+ * <file name="index.html">
+ * <script>
+ * angular.module('ngPatternExample', [])
+ * .controller('ExampleController', ['$scope', function($scope) {
+ * $scope.regex = '\\d+';
+ * }]);
+ * </script>
+ * <div ng-controller="ExampleController">
+ * <form name="form">
+ * <label for="regex">Set a pattern (regex string): </label>
+ * <input type="text" ng-model="regex" id="regex" />
+ * <br>
+ * <label for="input">This input is restricted by the current pattern: </label>
+ * <input type="text" ng-model="model" id="input" name="input" ng-pattern="regex" /><br>
+ * <hr>
+ * input valid? = <code>{{form.input.$valid}}</code><br>
+ * model = <code>{{model}}</code>
+ * </form>
+ * </div>
+ * </file>
+ * <file name="protractor.js" type="protractor">
+ var model = element(by.binding('model'));
+ var input = element(by.id('input'));
+ it('should validate the input with the default pattern', function() {
+ input.sendKeys('aaa');
+ expect(model.getText()).not.toContain('aaa');
+
+ input.clear().then(function() {
+ input.sendKeys('123');
+ expect(model.getText()).toContain('123');
+ });
+ });
+ * </file>
+ * </example>
+ */
var patternDirective = function() {
return {
restrict: 'A',
@@ -38021,7 +38702,72 @@ var patternDirective = function() {
};
};
+/**
+ * @ngdoc directive
+ * @name ngMaxlength
+ *
+ * @description
+ *
+ * ngMaxlength adds the maxlength {@link ngModel.NgModelController#$validators `validator`} to {@link ngModel `ngModel`}.
+ * It is most often used for text-based {@link input `input`} controls, but can also be applied to custom text-based controls.
+ *
+ * The validator sets the `maxlength` error key if the {@link ngModel.NgModelController#$viewValue `ngModel.$viewValue`}
+ * is longer than the integer obtained by evaluating the Angular expression given in the
+ * `ngMaxlength` attribute value.
+ *
+ * <div class="alert alert-info">
+ * **Note:** This directive is also added when the plain `maxlength` attribute is used, with two
+ * differences:
+ * <ol>
+ * <li>
+ * `ngMaxlength` does not set the `maxlength` attribute and therefore HTML5 constraint
+ * validation is not available.
+ * </li>
+ * <li>
+ * The `ngMaxlength` attribute must be an expression, while the `maxlength` value must be
+ * interpolated.
+ * </li>
+ * </ol>
+ * </div>
+ *
+ * @example
+ * <example name="ngMaxlengthDirective" module="ngMaxlengthExample">
+ * <file name="index.html">
+ * <script>
+ * angular.module('ngMaxlengthExample', [])
+ * .controller('ExampleController', ['$scope', function($scope) {
+ * $scope.maxlength = 5;
+ * }]);
+ * </script>
+ * <div ng-controller="ExampleController">
+ * <form name="form">
+ * <label for="maxlength">Set a maxlength: </label>
+ * <input type="number" ng-model="maxlength" id="maxlength" />
+ * <br>
+ * <label for="input">This input is restricted by the current maxlength: </label>
+ * <input type="text" ng-model="model" id="input" name="input" ng-maxlength="maxlength" /><br>
+ * <hr>
+ * input valid? = <code>{{form.input.$valid}}</code><br>
+ * model = <code>{{model}}</code>
+ * </form>
+ * </div>
+ * </file>
+ * <file name="protractor.js" type="protractor">
+ var model = element(by.binding('model'));
+ var input = element(by.id('input'));
+
+ it('should validate the input with the default maxlength', function() {
+ input.sendKeys('abcdef');
+ expect(model.getText()).not.toContain('abcdef');
+ input.clear().then(function() {
+ input.sendKeys('abcde');
+ expect(model.getText()).toContain('abcde');
+ });
+ });
+ * </file>
+ * </example>
+ */
var maxlengthDirective = function() {
return {
restrict: 'A',
@@ -38042,6 +38788,70 @@ var maxlengthDirective = function() {
};
};
+/**
+ * @ngdoc directive
+ * @name ngMinlength
+ *
+ * @description
+ *
+ * ngMinlength adds the minlength {@link ngModel.NgModelController#$validators `validator`} to {@link ngModel `ngModel`}.
+ * It is most often used for text-based {@link input `input`} controls, but can also be applied to custom text-based controls.
+ *
+ * The validator sets the `minlength` error key if the {@link ngModel.NgModelController#$viewValue `ngModel.$viewValue`}
+ * is shorter than the integer obtained by evaluating the Angular expression given in the
+ * `ngMinlength` attribute value.
+ *
+ * <div class="alert alert-info">
+ * **Note:** This directive is also added when the plain `minlength` attribute is used, with two
+ * differences:
+ * <ol>
+ * <li>
+ * `ngMinlength` does not set the `minlength` attribute and therefore HTML5 constraint
+ * validation is not available.
+ * </li>
+ * <li>
+ * The `ngMinlength` value must be an expression, while the `minlength` value must be
+ * interpolated.
+ * </li>
+ * </ol>
+ * </div>
+ *
+ * @example
+ * <example name="ngMinlengthDirective" module="ngMinlengthExample">
+ * <file name="index.html">
+ * <script>
+ * angular.module('ngMinlengthExample', [])
+ * .controller('ExampleController', ['$scope', function($scope) {
+ * $scope.minlength = 3;
+ * }]);
+ * </script>
+ * <div ng-controller="ExampleController">
+ * <form name="form">
+ * <label for="minlength">Set a minlength: </label>
+ * <input type="number" ng-model="minlength" id="minlength" />
+ * <br>
+ * <label for="input">This input is restricted by the current minlength: </label>
+ * <input type="text" ng-model="model" id="input" name="input" ng-minlength="minlength" /><br>
+ * <hr>
+ * input valid? = <code>{{form.input.$valid}}</code><br>
+ * model = <code>{{model}}</code>
+ * </form>
+ * </div>
+ * </file>
+ * <file name="protractor.js" type="protractor">
+ var model = element(by.binding('model'));
+ var input = element(by.id('input'));
+
+ it('should validate the input with the default minlength', function() {
+ input.sendKeys('ab');
+ expect(model.getText()).not.toContain('ab');
+
+ input.sendKeys('abc');
+ expect(model.getText()).toContain('abc');
+ });
+ * </file>
+ * </example>
+ */
var minlengthDirective = function() {
return {
restrict: 'A',
@@ -38063,7 +38873,9 @@ var minlengthDirective = function() {
if (window.angular.bootstrap) {
//AngularJS is already loaded, so we can return here...
- console.log('WARNING: Tried to load angular more than once.');
+ if (window.console) {
+ console.log('WARNING: Tried to load angular more than once.');
+ }
return;
}
@@ -38154,6 +38966,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -38197,6 +39023,7 @@ $provide.value("$locale", {
]
},
"id": "en-us",
+ "localeID": "en_US",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-touch.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-touch.js
index f622e943..64406171 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-touch.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-touch.js
@@ -1,5 +1,5 @@
/**
- * @license AngularJS v1.4.8
+ * @license AngularJS v1.4.13
* (c) 2010-2015 Google, Inc. http://angularjs.org
* License: MIT
*/
@@ -43,8 +43,7 @@ function nodeName_(element) {
*
* Requires the {@link ngTouch `ngTouch`} module to be installed.
*
- * `$swipe` is used by the `ngSwipeLeft` and `ngSwipeRight` directives in `ngTouch`, and by
- * `ngCarousel` in a separate component.
+ * `$swipe` is used by the `ngSwipeLeft` and `ngSwipeRight` directives in `ngTouch`.
*
* # Usage
* The `$swipe` service is an object with a single method: `bind`. `bind` takes an element
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-touch.min.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-touch.min.js
index 165fba28..b5d1b93d 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-touch.min.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-touch.min.js
@@ -1,5 +1,5 @@
/*
- AngularJS v1.4.8
+ AngularJS v1.4.13
(c) 2010-2015 Google, Inc. http://angularjs.org
License: MIT
*/
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-touch.min.js.map b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-touch.min.js.map
index 029bd32c..f35df429 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-touch.min.js.map
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular-touch.min.js.map
@@ -2,7 +2,7 @@
"version":3,
"file":"angular-touch.min.js",
"lineCount":12,
-"mappings":"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",
+"mappings":"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",
"sources":["angular-touch.js"],
"names":["window","angular","undefined","makeSwipeDirective","directiveName","direction","eventName","ngTouch","directive","$parse","$swipe","scope","element","attr","validSwipe","coords","startCoords","deltaY","Math","abs","y","deltaX","x","valid","MAX_VERTICAL_DISTANCE","MIN_HORIZONTAL_DISTANCE","MAX_VERTICAL_RATIO","swipeHandler","pointerTypes","isDefined","push","bind","start","event","cancel","end","$apply","triggerHandler","$event","module","factory","getCoordinates","originalEvent","touches","length","e","changedTouches","clientX","clientY","getEvents","eventType","res","forEach","pointerType","POINTER_EVENTS","join","move","eventHandlers","totalX","totalY","lastPos","active","on","events","MOVE_BUFFER_RADIUS","preventDefault","config","$provide","decorator","$delegate","shift","$timeout","$rootElement","checkAllowableRegions","touchCoordinates","i","CLICKBUSTER_THRESHOLD","x1","y1","y2","splice","onClick","PREVENT_DURATION","Date","now","lastPreventedTime","lastLabelClickCoordinates","target","lowercase","nodeName","stopPropagation","blur","onTouchStart","clickHandler","ngClick","tapping","tapElement","startTime","touchStartX","touchStartY","srcElement","nodeType","parentNode","addClass","ACTIVE_CLASS_NAME","removeClass","diff","dist","sqrt","pow","TAP_DURATION","MOVE_TOLERANCE","addEventListener","disabled","onclick","element.onclick","touchend"]
}
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular.js
index a3aee7d6..cda7c6ca 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular.js
@@ -1,5 +1,5 @@
/**
- * @license AngularJS v1.4.8
+ * @license AngularJS v1.4.13
* (c) 2010-2015 Google, Inc. http://angularjs.org
* License: MIT
*/
@@ -57,7 +57,7 @@ function minErr(module, ErrorConstructor) {
return match;
});
- message += '\nhttp://errors.angularjs.org/1.4.8/' +
+ message += '\nhttp://errors.angularjs.org/1.4.13/' +
(module ? module + '/' : '') + code;
for (i = SKIP_INDEXES, paramPrefix = '?'; i < templateArgs.length; i++, paramPrefix = '&') {
@@ -284,7 +284,8 @@ function isArrayLike(obj) {
// NodeList objects (with `item` method) and
// other objects with suitable length characteristics are array-like
return isNumber(length) &&
- (length >= 0 && (length - 1) in obj || typeof obj.item == 'function');
+ (length >= 0 && ((length - 1) in obj || obj instanceof Array) || typeof obj.item == 'function');
+
}
/**
@@ -304,7 +305,7 @@ function isArrayLike(obj) {
*
* Unlike ES262's
* [Array.prototype.forEach](http://www.ecma-international.org/ecma-262/5.1/#sec-15.4.4.18),
- * Providing 'undefined' or 'null' values for `obj` will not throw a TypeError, but rather just
+ * providing 'undefined' or 'null' values for `obj` will not throw a TypeError, but rather just
* return the value provided.
*
```js
@@ -381,7 +382,7 @@ function forEachSorted(obj, iterator, context) {
* @returns {function(*, string)}
*/
function reverseParams(iteratorFn) {
- return function(value, key) { iteratorFn(key, value); };
+ return function(value, key) {iteratorFn(key, value);};
}
/**
@@ -534,12 +535,22 @@ noop.$inject = [];
* functional style.
*
```js
- function transformer(transformationFn, value) {
- return (transformationFn || angular.identity)(value);
- };
+ function transformer(transformationFn, value) {
+ return (transformationFn || angular.identity)(value);
+ };
+
+ // E.g.
+ function getResult(fn, input) {
+ return (fn || angular.identity)(input);
+ };
+
+ getResult(function(n) { return n * 2; }, 21); // returns 42
+ getResult(null, 21); // returns 21
+ getResult(undefined, 21); // returns 21
```
- * @param {*} value to be returned.
- * @returns {*} the value passed in.
+ *
+ * @param {*} value to be returned.
+ * @returns {*} the value passed in.
*/
function identity($) {return $;}
identity.$inject = [];
@@ -789,7 +800,7 @@ function isElement(node) {
* @returns {object} in the form of {key1:true, key2:true, ...}
*/
function makeMap(str) {
- var obj = {}, items = str.split(","), i;
+ var obj = {}, items = str.split(','), i;
for (i = 0; i < items.length; i++) {
obj[items[i]] = true;
}
@@ -962,6 +973,8 @@ function copy(source, destination) {
} else if (isRegExp(source)) {
destination = new RegExp(source.source, source.toString().match(/[^\/]*$/)[0]);
destination.lastIndex = source.lastIndex;
+ } else if (isBlob(source)) {
+ destination = new source.constructor([source], {type: source.type});
} else if (isFunction(source.cloneNode)) {
destination = source.cloneNode(true);
} else {
@@ -1246,7 +1259,7 @@ function toJsonReplacer(key, value) {
* @returns {string|undefined} JSON-ified string representing `obj`.
*/
function toJson(obj, pretty) {
- if (typeof obj === 'undefined') return undefined;
+ if (isUndefined(obj)) return undefined;
if (!isNumber(pretty)) {
pretty = pretty ? 2 : null;
}
@@ -1273,7 +1286,10 @@ function fromJson(json) {
}
+var ALL_COLONS = /:/g;
function timezoneToOffset(timezone, fallback) {
+ // IE/Edge do not "understand" colon (`:`) in timezone
+ timezone = timezone.replace(ALL_COLONS, '');
var requestedTimezoneOffset = Date.parse('Jan 01, 1970 00:00:00 ' + timezone) / 60000;
return isNaN(requestedTimezoneOffset) ? fallback : requestedTimezoneOffset;
}
@@ -1288,8 +1304,9 @@ function addDateMinutes(date, minutes) {
function convertTimezoneToLocal(date, timezone, reverse) {
reverse = reverse ? -1 : 1;
- var timezoneOffset = timezoneToOffset(timezone, date.getTimezoneOffset());
- return addDateMinutes(date, reverse * (timezoneOffset - date.getTimezoneOffset()));
+ var dateTimezoneOffset = date.getTimezoneOffset();
+ var timezoneOffset = timezoneToOffset(timezone, dateTimezoneOffset);
+ return addDateMinutes(date, reverse * (timezoneOffset - dateTimezoneOffset));
}
@@ -1308,7 +1325,7 @@ function startingTag(element) {
return element[0].nodeType === NODE_TYPE_TEXT ? lowercase(elemHtml) :
elemHtml.
match(/^(<[^>]+>)/)[1].
- replace(/^<([\w\-]+)/, function(match, nodeName) { return '<' + lowercase(nodeName); });
+ replace(/^<([\w\-]+)/, function(match, nodeName) {return '<' + lowercase(nodeName);});
} catch (e) {
return lowercase(elemHtml);
}
@@ -1656,7 +1673,7 @@ function bootstrap(element, modules, config) {
//Encode angle brackets to prevent input from being sanitized to empty string #8683
throw ngMinErr(
'btstrpd',
- "App Already Bootstrapped with this Element '{0}'",
+ "App already bootstrapped with this element '{0}'",
tag.replace(/</,'&lt;').replace(/>/,'&gt;'));
}
@@ -1987,7 +2004,7 @@ function setupModuleLoader(window) {
* unspecified then the module is being retrieved for further configuration.
* @param {Function=} configFn Optional configuration function for the module. Same as
* {@link angular.Module#config Module#config()}.
- * @returns {module} new module with the {@link angular.Module} api.
+ * @returns {angular.Module} new module with the {@link angular.Module} api.
*/
return function module(name, requires, configFn) {
var assertNotHasOwnProperty = function(name, context) {
@@ -2108,9 +2125,9 @@ function setupModuleLoader(window) {
* @ngdoc method
* @name angular.Module#decorator
* @module ng
- * @param {string} The name of the service to decorate.
- * @param {Function} This function will be invoked when the service needs to be
- * instantiated and should return the decorated service instance.
+ * @param {string} name The name of the service to decorate.
+ * @param {Function} decorFn This function will be invoked when the service needs to be
+ * instantiated and should return the decorated service instance.
* @description
* See {@link auto.$provide#decorator $provide.decorator()}.
*/
@@ -2344,8 +2361,10 @@ function toDebugString(obj) {
$AnchorScrollProvider,
$AnimateProvider,
$CoreAnimateCssProvider,
+ $$CoreAnimateJsProvider,
$$CoreAnimateQueueProvider,
- $$CoreAnimateRunnerProvider,
+ $$AnimateRunnerFactoryProvider,
+ $$AnimateAsyncRunFactoryProvider,
$BrowserProvider,
$CacheFactoryProvider,
$ControllerProvider,
@@ -2398,11 +2417,11 @@ function toDebugString(obj) {
* - `codeName` – `{string}` – Code name of the release, such as "jiggling-armfat".
*/
var version = {
- full: '1.4.8', // all of these placeholder strings will be replaced by grunt's
+ full: '1.4.13', // all of these placeholder strings will be replaced by grunt's
major: 1, // package task
minor: 4,
- dot: 8,
- codeName: 'ice-manipulation'
+ dot: 13,
+ codeName: 'croaking-elderweed'
};
@@ -2504,8 +2523,10 @@ function publishExternalAPI(angular) {
$anchorScroll: $AnchorScrollProvider,
$animate: $AnimateProvider,
$animateCss: $CoreAnimateCssProvider,
+ $$animateJs: $$CoreAnimateJsProvider,
$$animateQueue: $$CoreAnimateQueueProvider,
- $$AnimateRunner: $$CoreAnimateRunnerProvider,
+ $$AnimateRunner: $$AnimateRunnerFactoryProvider,
+ $$animateAsyncRun: $$AnimateAsyncRunFactoryProvider,
$browser: $BrowserProvider,
$cacheFactory: $CacheFactoryProvider,
$controller: $ControllerProvider,
@@ -2576,16 +2597,22 @@ function publishExternalAPI(angular) {
*
* If jQuery is available, `angular.element` is an alias for the
* [jQuery](http://api.jquery.com/jQuery/) function. If jQuery is not available, `angular.element`
- * delegates to Angular's built-in subset of jQuery, called "jQuery lite" or "jqLite."
+ * delegates to Angular's built-in subset of jQuery, called "jQuery lite" or **jqLite**.
*
- * <div class="alert alert-success">jqLite is a tiny, API-compatible subset of jQuery that allows
- * Angular to manipulate the DOM in a cross-browser compatible way. **jqLite** implements only the most
- * commonly needed functionality with the goal of having a very small footprint.</div>
+ * jqLite is a tiny, API-compatible subset of jQuery that allows
+ * Angular to manipulate the DOM in a cross-browser compatible way. jqLite implements only the most
+ * commonly needed functionality with the goal of having a very small footprint.
*
- * To use `jQuery`, simply ensure it is loaded before the `angular.js` file.
+ * To use `jQuery`, simply ensure it is loaded before the `angular.js` file. You can also use the
+ * {@link ngJq `ngJq`} directive to specify that jqlite should be used over jQuery, or to use a
+ * specific version of jQuery if multiple versions exist on the page.
*
- * <div class="alert">**Note:** all element references in Angular are always wrapped with jQuery or
- * jqLite; they are never raw DOM references.</div>
+ * <div class="alert alert-info">**Note:** All element references in Angular are always wrapped with jQuery or
+ * jqLite (such as the element argument in a directive's compile / link function). They are never raw DOM references.</div>
+ *
+ * <div class="alert alert-warning">**Note:** Keep in mind that this function will not find elements
+ * by tag name / CSS selector. For lookups by tag name, try instead `angular.element(document).find(...)`
+ * or `$document.find()`, or use the standard DOM APIs, e.g. `document.querySelectorAll()`.</div>
*
* ## Angular's jqLite
* jqLite provides only the following jQuery methods:
@@ -2598,7 +2625,8 @@ function publishExternalAPI(angular) {
* - [`children()`](http://api.jquery.com/children/) - Does not support selectors
* - [`clone()`](http://api.jquery.com/clone/)
* - [`contents()`](http://api.jquery.com/contents/)
- * - [`css()`](http://api.jquery.com/css/) - Only retrieves inline-styles, does not call `getComputedStyle()`. As a setter, does not convert numbers to strings or append 'px'.
+ * - [`css()`](http://api.jquery.com/css/) - Only retrieves inline-styles, does not call `getComputedStyle()`.
+ * As a setter, does not convert numbers to strings or append 'px', and also does not have automatic property prefixing.
* - [`data()`](http://api.jquery.com/data/)
* - [`detach()`](http://api.jquery.com/detach/)
* - [`empty()`](http://api.jquery.com/empty/)
@@ -2784,6 +2812,16 @@ function jqLiteParseHTML(html, context) {
return [];
}
+function jqLiteWrapNode(node, wrapper) {
+ var parent = node.parentNode;
+
+ if (parent) {
+ parent.replaceChild(wrapper, node);
+ }
+
+ wrapper.appendChild(node);
+}
+
// IE9-11 has no method "contains" in SVG element and in Node.prototype. Bug #10259.
var jqLiteContains = Node.prototype.contains || function(arg) {
@@ -3475,12 +3513,7 @@ forEach({
},
wrap: function(element, wrapNode) {
- wrapNode = jqLite(wrapNode).eq(0).clone()[0];
- var parent = element.parentNode;
- if (parent) {
- parent.replaceChild(wrapNode, element);
- }
- wrapNode.appendChild(element);
+ jqLiteWrapNode(element, jqLite(wrapNode).eq(0).clone()[0]);
},
remove: jqLiteRemove,
@@ -4183,8 +4216,20 @@ function annotate(fn, strictDi, name) {
*
* Register a **service constructor**, which will be invoked with `new` to create the service
* instance.
- * This is short for registering a service where its provider's `$get` property is the service
- * constructor function that will be used to instantiate the service instance.
+ * This is short for registering a service where its provider's `$get` property is a factory
+ * function that returns an instance instantiated by the injector from the service constructor
+ * function.
+ *
+ * Internally it looks a bit like this:
+ *
+ * ```
+ * {
+ * $get: function() {
+ * return $injector.instantiate(constructor);
+ * }
+ * }
+ * ```
+ *
*
* You should use {@link auto.$provide#service $provide.service(class)} if you define your service
* as a type/class.
@@ -4224,14 +4269,13 @@ function annotate(fn, strictDi, name) {
* @description
*
* Register a **value service** with the {@link auto.$injector $injector}, such as a string, a
- * number, an array, an object or a function. This is short for registering a service where its
+ * number, an array, an object or a function. This is short for registering a service where its
* provider's `$get` property is a factory function that takes no arguments and returns the **value
- * service**.
+ * service**. That also means it is not possible to inject other services into a value service.
*
* Value services are similar to constant services, except that they cannot be injected into a
* module configuration function (see {@link angular.Module#config}) but they can be overridden by
- * an Angular
- * {@link auto.$provide#decorator decorator}.
+ * an Angular {@link auto.$provide#decorator decorator}.
*
* @param {string} name The name of the instance.
* @param {*} value The value.
@@ -4256,8 +4300,11 @@ function annotate(fn, strictDi, name) {
* @name $provide#constant
* @description
*
- * Register a **constant service**, such as a string, a number, an array, an object or a function,
- * with the {@link auto.$injector $injector}. Unlike {@link auto.$provide#value value} it can be
+ * Register a **constant service** with the {@link auto.$injector $injector}, such as a string,
+ * a number, an array, an object or a function. Like the {@link auto.$provide#value value}, it is not
+ * possible to inject other services into a constant.
+ *
+ * But unlike {@link auto.$provide#value value}, a constant can be
* injected into a module configuration function (see {@link angular.Module#config}) and it cannot
* be overridden by an Angular {@link auto.$provide#decorator decorator}.
*
@@ -4285,7 +4332,7 @@ function annotate(fn, strictDi, name) {
* @description
*
* Register a **service decorator** with the {@link auto.$injector $injector}. A service decorator
- * intercepts the creation of a service, allowing it to override or modify the behaviour of the
+ * intercepts the creation of a service, allowing it to override or modify the behavior of the
* service. The object returned by the decorator may be the original service, or a new service
* object which replaces or wraps and delegates to the original service.
*
@@ -4588,7 +4635,7 @@ function $AnchorScrollProvider() {
* When called, it scrolls to the element related to the specified `hash` or (if omitted) to the
* current value of {@link ng.$location#hash $location.hash()}, according to the rules specified
* in the
- * [HTML5 spec](http://www.w3.org/html/wg/drafts/html/master/browsers.html#the-indicated-part-of-the-document).
+ * [HTML5 spec](http://www.w3.org/html/wg/drafts/html/master/browsers.html#an-indicated-part-of-the-document).
*
* It also watches the {@link ng.$location#hash $location.hash()} and automatically scrolls to
* match any anchor whenever it changes. This can be disabled by calling
@@ -4871,27 +4918,8 @@ function prepareAnimateOptions(options) {
: {};
}
-var $$CoreAnimateRunnerProvider = function() {
- this.$get = ['$q', '$$rAF', function($q, $$rAF) {
- function AnimateRunner() {}
- AnimateRunner.all = noop;
- AnimateRunner.chain = noop;
- AnimateRunner.prototype = {
- end: noop,
- cancel: noop,
- resume: noop,
- pause: noop,
- complete: noop,
- then: function(pass, fail) {
- return $q(function(resolve) {
- $$rAF(function() {
- resolve();
- });
- }).then(pass, fail);
- }
- };
- return AnimateRunner;
- }];
+var $$CoreAnimateJsProvider = function() {
+ this.$get = function() {};
};
// this is prefixed with Core since it conflicts with
@@ -4919,7 +4947,12 @@ var $$CoreAnimateQueueProvider = function() {
addRemoveClassesPostDigest(element, options.addClass, options.removeClass);
}
- return new $$AnimateRunner(); // jshint ignore:line
+ var runner = new $$AnimateRunner(); // jshint ignore:line
+
+ // since there are no animations to run the runner needs to be
+ // notified that the animation call is complete.
+ runner.complete();
+ return runner;
}
};
@@ -5384,10 +5417,23 @@ var $AnimateProvider = ['$provide', function($provide) {
* @kind function
*
* @description Performs an inline animation on the element which applies the provided to and from CSS styles to the element.
- * If any detected CSS transition, keyframe or JavaScript matches the provided className value then the animation will take
- * on the provided styles. For example, if a transition animation is set for the given className then the provided from and
- * to styles will be applied alongside the given transition. If a JavaScript animation is detected then the provided styles
- * will be given in as function paramters into the `animate` method (or as apart of the `options` parameter).
+ * If any detected CSS transition, keyframe or JavaScript matches the provided className value, then the animation will take
+ * on the provided styles. For example, if a transition animation is set for the given className, then the provided `from` and
+ * `to` styles will be applied alongside the given transition. If the CSS style provided in `from` does not have a corresponding
+ * style in `to`, the style in `from` is applied immediately, and no animation is run.
+ * If a JavaScript animation is detected then the provided styles will be given in as function parameters into the `animate`
+ * method (or as part of the `options` parameter):
+ *
+ * ```js
+ * ngModule.animation('.my-inline-animation', function() {
+ * return {
+ * animate : function(element, from, to, done, options) {
+ * //animation
+ * done();
+ * }
+ * }
+ * });
+ * ```
*
* @param {DOMElement} element the element which the CSS styles will be applied to
* @param {object} from the from (starting) CSS styles that will be applied to the element and across the animation.
@@ -5412,6 +5458,190 @@ var $AnimateProvider = ['$provide', function($provide) {
}];
}];
+var $$AnimateAsyncRunFactoryProvider = function() {
+ this.$get = ['$$rAF', function($$rAF) {
+ var waitQueue = [];
+
+ function waitForTick(fn) {
+ waitQueue.push(fn);
+ if (waitQueue.length > 1) return;
+ $$rAF(function() {
+ for (var i = 0; i < waitQueue.length; i++) {
+ waitQueue[i]();
+ }
+ waitQueue = [];
+ });
+ }
+
+ return function() {
+ var passed = false;
+ waitForTick(function() {
+ passed = true;
+ });
+ return function(callback) {
+ passed ? callback() : waitForTick(callback);
+ };
+ };
+ }];
+};
+
+var $$AnimateRunnerFactoryProvider = function() {
+ this.$get = ['$q', '$sniffer', '$$animateAsyncRun', '$document', '$timeout',
+ function($q, $sniffer, $$animateAsyncRun, $document, $timeout) {
+
+ var INITIAL_STATE = 0;
+ var DONE_PENDING_STATE = 1;
+ var DONE_COMPLETE_STATE = 2;
+
+ AnimateRunner.chain = function(chain, callback) {
+ var index = 0;
+
+ next();
+ function next() {
+ if (index === chain.length) {
+ callback(true);
+ return;
+ }
+
+ chain[index](function(response) {
+ if (response === false) {
+ callback(false);
+ return;
+ }
+ index++;
+ next();
+ });
+ }
+ };
+
+ AnimateRunner.all = function(runners, callback) {
+ var count = 0;
+ var status = true;
+ forEach(runners, function(runner) {
+ runner.done(onProgress);
+ });
+
+ function onProgress(response) {
+ status = status && response;
+ if (++count === runners.length) {
+ callback(status);
+ }
+ }
+ };
+
+ function AnimateRunner(host) {
+ this.setHost(host);
+
+ var rafTick = $$animateAsyncRun();
+ var timeoutTick = function(fn) {
+ $timeout(fn, 0, false);
+ };
+
+ this._doneCallbacks = [];
+ this._tick = function(fn) {
+ var doc = $document[0];
+
+ // the document may not be ready or attached
+ // to the module for some internal tests
+ if (doc && doc.hidden) {
+ timeoutTick(fn);
+ } else {
+ rafTick(fn);
+ }
+ };
+ this._state = 0;
+ }
+
+ AnimateRunner.prototype = {
+ setHost: function(host) {
+ this.host = host || {};
+ },
+
+ done: function(fn) {
+ if (this._state === DONE_COMPLETE_STATE) {
+ fn();
+ } else {
+ this._doneCallbacks.push(fn);
+ }
+ },
+
+ progress: noop,
+
+ getPromise: function() {
+ if (!this.promise) {
+ var self = this;
+ this.promise = $q(function(resolve, reject) {
+ self.done(function(status) {
+ status === false ? reject() : resolve();
+ });
+ });
+ }
+ return this.promise;
+ },
+
+ then: function(resolveHandler, rejectHandler) {
+ return this.getPromise().then(resolveHandler, rejectHandler);
+ },
+
+ 'catch': function(handler) {
+ return this.getPromise()['catch'](handler);
+ },
+
+ 'finally': function(handler) {
+ return this.getPromise()['finally'](handler);
+ },
+
+ pause: function() {
+ if (this.host.pause) {
+ this.host.pause();
+ }
+ },
+
+ resume: function() {
+ if (this.host.resume) {
+ this.host.resume();
+ }
+ },
+
+ end: function() {
+ if (this.host.end) {
+ this.host.end();
+ }
+ this._resolve(true);
+ },
+
+ cancel: function() {
+ if (this.host.cancel) {
+ this.host.cancel();
+ }
+ this._resolve(false);
+ },
+
+ complete: function(response) {
+ var self = this;
+ if (self._state === INITIAL_STATE) {
+ self._state = DONE_PENDING_STATE;
+ self._tick(function() {
+ self._resolve(response);
+ });
+ }
+ },
+
+ _resolve: function(response) {
+ if (this._state !== DONE_COMPLETE_STATE) {
+ forEach(this._doneCallbacks, function(fn) {
+ fn(response);
+ });
+ this._doneCallbacks.length = 0;
+ this._state = DONE_COMPLETE_STATE;
+ }
+ }
+ };
+
+ return AnimateRunner;
+ }];
+};
+
/**
* @ngdoc service
* @name $animateCss
@@ -5424,37 +5654,18 @@ var $AnimateProvider = ['$provide', function($provide) {
* Click here {@link ngAnimate.$animateCss to read the documentation for $animateCss}.
*/
var $CoreAnimateCssProvider = function() {
- this.$get = ['$$rAF', '$q', function($$rAF, $q) {
+ this.$get = ['$$rAF', '$q', '$$AnimateRunner', function($$rAF, $q, $$AnimateRunner) {
- var RAFPromise = function() {};
- RAFPromise.prototype = {
- done: function(cancel) {
- this.defer && this.defer[cancel === true ? 'reject' : 'resolve']();
- },
- end: function() {
- this.done();
- },
- cancel: function() {
- this.done(true);
- },
- getPromise: function() {
- if (!this.defer) {
- this.defer = $q.defer();
- }
- return this.defer.promise;
- },
- then: function(f1,f2) {
- return this.getPromise().then(f1,f2);
- },
- 'catch': function(f1) {
- return this.getPromise()['catch'](f1);
- },
- 'finally': function(f1) {
- return this.getPromise()['finally'](f1);
+ return function(element, initialOptions) {
+ // all of the animation functions should create
+ // a copy of the options data, however, if a
+ // parent service has already created a copy then
+ // we should stick to using that
+ var options = initialOptions || {};
+ if (!options.$$prepared) {
+ options = copy(options);
}
- };
- return function(element, options) {
// there is no point in applying the styles since
// there is no animation that goes on at all in
// this version of $animateCss.
@@ -5467,7 +5678,8 @@ var $CoreAnimateCssProvider = function() {
options.from = null;
}
- var closed, runner = new RAFPromise();
+ /* jshint newcap: false*/
+ var closed, runner = new $$AnimateRunner();
return {
start: run,
end: run
@@ -5475,16 +5687,16 @@ var $CoreAnimateCssProvider = function() {
function run() {
$$rAF(function() {
- close();
+ applyAnimationContents();
if (!closed) {
- runner.done();
+ runner.complete();
}
closed = true;
});
return runner;
}
- function close() {
+ function applyAnimationContents() {
if (options.addClass) {
element.addClass(options.addClass);
options.addClass = null;
@@ -6430,35 +6642,38 @@ function $TemplateCacheProvider() {
* is bound to the parent scope, via matching attributes on the directive's element:
*
* * `@` or `@attr` - bind a local scope property to the value of DOM attribute. The result is
- * always a string since DOM attributes are strings. If no `attr` name is specified then the
- * attribute name is assumed to be the same as the local name.
- * Given `<widget my-attr="hello {{name}}">` and widget definition
- * of `scope: { localName:'@myAttr' }`, then widget scope property `localName` will reflect
- * the interpolated value of `hello {{name}}`. As the `name` attribute changes so will the
- * `localName` property on the widget scope. The `name` is read from the parent scope (not
- * component scope).
- *
- * * `=` or `=attr` - set up bi-directional binding between a local scope property and the
- * parent scope property of name defined via the value of the `attr` attribute. If no `attr`
- * name is specified then the attribute name is assumed to be the same as the local name.
- * Given `<widget my-attr="parentModel">` and widget definition of
- * `scope: { localModel:'=myAttr' }`, then widget scope property `localModel` will reflect the
- * value of `parentModel` on the parent scope. Any changes to `parentModel` will be reflected
- * in `localModel` and any changes in `localModel` will reflect in `parentModel`. If the parent
- * scope property doesn't exist, it will throw a NON_ASSIGNABLE_MODEL_EXPRESSION exception. You
- * can avoid this behavior using `=?` or `=?attr` in order to flag the property as optional. If
- * you want to shallow watch for changes (i.e. $watchCollection instead of $watch) you can use
- * `=*` or `=*attr` (`=*?` or `=*?attr` if the property is optional).
- *
- * * `&` or `&attr` - provides a way to execute an expression in the context of the parent scope.
- * If no `attr` name is specified then the attribute name is assumed to be the same as the
- * local name. Given `<widget my-attr="count = count + value">` and widget definition of
- * `scope: { localFn:'&myAttr' }`, then isolate scope property `localFn` will point to
- * a function wrapper for the `count = count + value` expression. Often it's desirable to
- * pass data from the isolated scope via an expression to the parent scope, this can be
- * done by passing a map of local variable names and values into the expression wrapper fn.
- * For example, if the expression is `increment(amount)` then we can specify the amount value
- * by calling the `localFn` as `localFn({amount: 22})`.
+ * always a string since DOM attributes are strings. If no `attr` name is specified then the
+ * attribute name is assumed to be the same as the local name. Given `<my-component
+ * my-attr="hello {{name}}">` and the isolate scope definition `scope: { localName:'@myAttr' }`,
+ * the directive's scope property `localName` will reflect the interpolated value of `hello
+ * {{name}}`. As the `name` attribute changes so will the `localName` property on the directive's
+ * scope. The `name` is read from the parent scope (not the directive's scope).
+ *
+ * * `=` or `=attr` - set up a bidirectional binding between a local scope property and an expression
+ * passed via the attribute `attr`. The expression is evaluated in the context of the parent scope.
+ * If no `attr` name is specified then the attribute name is assumed to be the same as the local
+ * name. Given `<my-component my-attr="parentModel">` and the isolate scope definition `scope: {
+ * localModel: '=myAttr' }`, the property `localModel` on the directive's scope will reflect the
+ * value of `parentModel` on the parent scope. Changes to `parentModel` will be reflected in
+ * `localModel` and vice versa. Optional attributes should be marked as such with a question mark:
+ * `=?` or `=?attr`. If the binding expression is non-assignable, or if the attribute isn't
+ * optional and doesn't exist, an exception ({@link error/$compile/nonassign `$compile:nonassign`})
+ * will be thrown upon discovering changes to the local value, since it will be impossible to sync
+ * them back to the parent scope. By default, the {@link ng.$rootScope.Scope#$watch `$watch`}
+ * method is used for tracking changes, and the equality check is based on object identity.
+ * However, if an object literal or an array literal is passed as the binding expression, the
+ * equality check is done by value (using the {@link angular.equals} function). It's also possible
+ * to watch the evaluated value shallowly with {@link ng.$rootScope.Scope#$watchCollection
+ * `$watchCollection`}: use `=*` or `=*attr` (`=*?` or `=*?attr` if the attribute is optional).
+ *
+ * * `&` or `&attr` - provides a way to execute an expression in the context of the parent scope. If
+ * no `attr` name is specified then the attribute name is assumed to be the same as the local name.
+ * Given `<my-component my-attr="count = count + value">` and the isolate scope definition `scope: {
+ * localFn:'&myAttr' }`, the isolate scope property `localFn` will point to a function wrapper for
+ * the `count = count + value` expression. Often it's desirable to pass data from the isolated scope
+ * via an expression to the parent scope. This can be done by passing a map of local variable names
+ * and values into the expression wrapper fn. For example, if the expression is `increment(amount)`
+ * then we can specify the amount value by calling the `localFn` as `localFn({amount: 22})`.
*
* In general it's possible to apply more than one directive to one element, but there might be limitations
* depending on the type of scope required by the directives. The following points will help explain these limitations.
@@ -6476,10 +6691,23 @@ function $TemplateCacheProvider() {
*
*
* #### `bindToController`
- * When an isolate scope is used for a component (see above), and `controllerAs` is used, `bindToController: true` will
+ * This property is used to bind scope properties directly to the controller. It can be either
+ * `true` or an object hash with the same format as the `scope` property. Additionally, a controller
+ * alias must be set, either by using `controllerAs: 'myAlias'` or by specifying the alias in the controller
+ * definition: `controller: 'myCtrl as myAlias'`.
+ *
+ * When an isolate scope is used for a directive (see above), `bindToController: true` will
* allow a component to have its properties bound to the controller, rather than to scope. When the controller
* is instantiated, the initial values of the isolate scope bindings are already available.
*
+ * It is also possible to set `bindToController` to an object hash with the same format as the `scope` property.
+ * This will set up the scope bindings to the controller directly. Note that `scope` can still be used
+ * to define which kind of scope is created. By default, no scope is created. Use `scope: {}` to create an isolate
+ * scope (useful for component directives).
+ *
+ * If both `bindToController` and `scope` are defined and have object hashes, `bindToController` overrides `scope`.
+ *
+ *
* #### `controller`
* Controller constructor function. The controller is instantiated before the
* pre-linking phase and can be accessed by other directives (see
@@ -6636,7 +6864,7 @@ function $TemplateCacheProvider() {
* <div class="alert alert-warning">
* **Note:** The compile function cannot handle directives that recursively use themselves in their
- * own templates or compile functions. Compiling these directives results in an infinite loop and a
+ * own templates or compile functions. Compiling these directives results in an infinite loop and
* stack overflow errors.
*
* This can be avoided by manually using $compile in the postLink function to imperatively compile
@@ -6815,19 +7043,19 @@ function $TemplateCacheProvider() {
*
* The `$parent` scope hierarchy will look like this:
*
- * ```
- * - $rootScope
- * - isolate
- * - transclusion
- * ```
+ ```
+ - $rootScope
+ - isolate
+ - transclusion
+ ```
*
* but the scopes will inherit prototypically from different scopes to their `$parent`.
*
- * ```
- * - $rootScope
- * - transclusion
- * - isolate
- * ```
+ ```
+ - $rootScope
+ - transclusion
+ - isolate
+ ```
*
*
* ### Attributes
@@ -6835,10 +7063,9 @@ function $TemplateCacheProvider() {
* The {@link ng.$compile.directive.Attributes Attributes} object - passed as a parameter in the
* `link()` or `compile()` functions. It has a variety of uses.
*
- * accessing *Normalized attribute names:*
- * Directives like 'ngBind' can be expressed in many ways: 'ng:bind', `data-ng-bind`, or 'x-ng-bind'.
- * the attributes object allows for normalized access to
- * the attributes.
+ * * *Accessing normalized attribute names:* Directives like 'ngBind' can be expressed in many ways:
+ * 'ng:bind', `data-ng-bind`, or 'x-ng-bind'. The attributes object allows for normalized access
+ * to the attributes.
*
* * *Directive inter-communication:* All directives share the same instance of the attributes
* object which allows the directives to use the attributes object as inter directive
@@ -6959,8 +7186,15 @@ function $TemplateCacheProvider() {
* directives; if given, it will be passed through to the link functions of
* directives found in `element` during compilation.
* * `transcludeControllers` - an object hash with keys that map controller names
- * to controller instances; if given, it will make the controllers
- * available to directives.
+ * to a hash with the key `instance`, which maps to the controller instance;
+ * if given, it will make the controllers available to directives on the compileNode:
+ * ```
+ * {
+ * parent: {
+ * instance: parentControllerInstance
+ * }
+ * }
+ * ```
* * `futureParentElement` - defines the parent to which the `cloneAttachFn` will add
* the cloned elements; only needed for transcludes that are allowed to contain non html
* elements (e.g. SVG elements). See also the directive.controller property.
@@ -7019,13 +7253,18 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
// The assumption is that future DOM event attribute names will begin with
// 'on' and be composed of only English letters.
var EVENT_HANDLER_ATTR_REGEXP = /^(on[a-z]+|formaction)$/;
+ var bindingCache = createMap();
function parseIsolateBindings(scope, directiveName, isController) {
var LOCAL_REGEXP = /^\s*([@&]|=(\*?))(\??)\s*(\w*)\s*$/;
- var bindings = {};
+ var bindings = createMap();
forEach(scope, function(definition, scopeName) {
+ if (definition in bindingCache) {
+ bindings[scopeName] = bindingCache[definition];
+ return;
+ }
var match = definition.match(LOCAL_REGEXP);
if (!match) {
@@ -7043,6 +7282,9 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
optional: match[3] === '?',
attrName: match[4] || scopeName
};
+ if (match[4]) {
+ bindingCache[definition] = bindings[scopeName];
+ }
});
return bindings;
@@ -7135,11 +7377,6 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
directive.name = directive.name || name;
directive.require = directive.require || (directive.controller && directive.name);
directive.restrict = directive.restrict || 'EA';
- var bindings = directive.$$bindings =
- parseDirectiveBindings(directive, directive.name);
- if (isObject(bindings.isolateScope)) {
- directive.$$isolateBindings = bindings.isolateScope;
- }
directive.$$moduleName = directiveFactory.$$moduleName;
directives.push(directive);
} catch (e) {
@@ -7249,9 +7486,9 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
this.$get = [
'$injector', '$interpolate', '$exceptionHandler', '$templateRequest', '$parse',
- '$controller', '$rootScope', '$document', '$sce', '$animate', '$$sanitizeUri',
+ '$controller', '$rootScope', '$sce', '$animate', '$$sanitizeUri',
function($injector, $interpolate, $exceptionHandler, $templateRequest, $parse,
- $controller, $rootScope, $document, $sce, $animate, $$sanitizeUri) {
+ $controller, $rootScope, $sce, $animate, $$sanitizeUri) {
var Attributes = function(element, attributesToCopy) {
if (attributesToCopy) {
@@ -7392,7 +7629,7 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
(nodeName === 'img' && key === 'src')) {
// sanitize a[href] and img[src] values
this[key] = value = $$sanitizeUri(value, key === 'src');
- } else if (nodeName === 'img' && key === 'srcset') {
+ } else if (nodeName === 'img' && key === 'srcset' && isDefined(value)) {
// sanitize img[srcset] values
var result = "";
@@ -7463,7 +7700,8 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
* @param {string} key Normalized key. (ie ngAttribute) .
* @param {function(interpolatedValue)} fn Function that will be called whenever
the interpolated value of the attribute changes.
- * See the {@link guide/directive#text-and-attribute-bindings Directives} guide for more info.
+ * See the {@link guide/interpolation#how-text-and-attribute-bindings-work Interpolation
+ * guide} for more info.
* @returns {function()} Returns a deregistration function for this observer.
*/
$observe: function(key, fn) {
@@ -7498,7 +7736,7 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
var startSymbol = $interpolate.startSymbol(),
endSymbol = $interpolate.endSymbol(),
- denormalizeTemplate = (startSymbol == '{{' || endSymbol == '}}')
+ denormalizeTemplate = (startSymbol == '{{' && endSymbol == '}}')
? identity
: function denormalizeTemplate(template) {
return template.replace(/\{\{/g, startSymbol).replace(/}}/g, endSymbol);
@@ -7542,13 +7780,19 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
// modify it.
$compileNodes = jqLite($compileNodes);
}
+
+ var NOT_EMPTY = /\S+/;
+
// We can not compile top level text elements since text nodes can be merged and we will
// not be able to attach scope data to them, so we will wrap them in <span>
- forEach($compileNodes, function(node, index) {
- if (node.nodeType == NODE_TYPE_TEXT && node.nodeValue.match(/\S+/) /* non-empty */ ) {
- $compileNodes[index] = jqLite(node).wrap('<span></span>').parent()[0];
+ for (var i = 0, len = $compileNodes.length; i < len; i++) {
+ var domNode = $compileNodes[i];
+
+ if (domNode.nodeType === NODE_TYPE_TEXT && domNode.nodeValue.match(NOT_EMPTY) /* non-empty */) {
+ jqLiteWrapNode(domNode, $compileNodes[i] = document.createElement('span'));
}
- });
+ }
+
var compositeLinkFn =
compileNodes($compileNodes, transcludeFn, $compileNodes,
maxPriority, ignoreDirective, previousCompileContext);
@@ -8227,15 +8471,12 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
var controllerInstance = $controller(controller, locals, true, directive.controllerAs);
- // For directives with element transclusion the element is a comment,
- // but jQuery .data doesn't support attaching data to comment nodes as it's hard to
- // clean up (http://bugs.jquery.com/ticket/8335).
+ // For directives with element transclusion the element is a comment.
+ // In this case .data will not attach any data.
// Instead, we save the controllers for the element in a local hash and attach to .data
// later, once we have the actual element.
elementControllers[directive.name] = controllerInstance;
- if (!hasElementTranscludeDirective) {
- $element.data('$' + directive.name + 'Controller', controllerInstance.instance);
- }
+ $element.data('$' + directive.name + 'Controller', controllerInstance.instance);
}
return elementControllers;
}
@@ -8404,6 +8645,13 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
if (startAttrName) {
directive = inherit(directive, {$$start: startAttrName, $$end: endAttrName});
}
+ if (!directive.$$bindings) {
+ var bindings = directive.$$bindings =
+ parseDirectiveBindings(directive, directive.name);
+ if (isObject(bindings.isolateScope)) {
+ directive.$$isolateBindings = bindings.isolateScope;
+ }
+ }
tDirectives.push(directive);
match = directive;
}
@@ -8868,10 +9116,15 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
}
});
attrs.$$observers[attrName].$$scope = scope;
- if (isString(attrs[attrName])) {
+ lastValue = attrs[attrName];
+ if (isString(lastValue)) {
// If the attribute has been provided then we trigger an interpolation to ensure
// the value is there for use in the link fn
- destination[scopeName] = $interpolate(attrs[attrName])(scope);
+ destination[scopeName] = $interpolate(lastValue)(scope);
+ } else if (isBoolean(lastValue)) {
+ // If the attributes is one of the BOOLEAN_ATTR then Angular will have converted
+ // the value to boolean rather than a string, so we special case this situation
+ destination[scopeName] = lastValue;
}
break;
@@ -8892,8 +9145,8 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
// reset the change, or we will throw this exception on every $digest
lastValue = destination[scopeName] = parentGet(scope);
throw $compileMinErr('nonassign',
- "Expression '{0}' used with directive '{1}' is non-assignable!",
- attrs[attrName], directive.name);
+ "Expression '{0}' in attribute '{1}' used with directive '{2}' is non-assignable!",
+ attrs[attrName], attrName, directive.name);
};
lastValue = destination[scopeName] = parentGet(scope);
var parentValueWatch = function parentValueWatch(parentValue) {
@@ -9047,7 +9300,7 @@ function removeComments(jqNodes) {
var $controllerMinErr = minErr('$controller');
-var CNTRL_REG = /^(\S+)(\s+as\s+(\w+))?$/;
+var CNTRL_REG = /^(\S+)(\s+as\s+([\w$]+))?$/;
function identifierForController(controller, ident) {
if (ident && isString(ident)) return ident;
if (isString(controller)) {
@@ -9574,10 +9827,9 @@ function $HttpProvider() {
*
* Object containing default values for all {@link ng.$http $http} requests.
*
- * - **`defaults.cache`** - {Object} - an object built with {@link ng.$cacheFactory `$cacheFactory`}
- * that will provide the cache for all requests who set their `cache` property to `true`.
- * If you set the `defaults.cache = false` then only requests that specify their own custom
- * cache object will be cached. See {@link $http#caching $http Caching} for more information.
+ * - **`defaults.cache`** - {boolean|Object} - A boolean value or object created with
+ * {@link ng.$cacheFactory `$cacheFactory`} to enable or disable caching of HTTP responses
+ * by default. See {@link $http#caching $http Caching} for more information.
*
* - **`defaults.xsrfCookieName`** - {string} - Name of cookie containing the XSRF token.
* Defaults value is `'XSRF-TOKEN'`.
@@ -9868,6 +10120,15 @@ function $HttpProvider() {
* the transformed value (`function(data, headersGetter, status)`) or an array of such transformation functions,
* which allows you to `push` or `unshift` a new transformation function into the transformation chain.
*
+ * <div class="alert alert-warning">
+ * **Note:** Angular does not make a copy of the `data` parameter before it is passed into the `transformRequest` pipeline.
+ * That means changes to the properties of `data` are not local to the transform function (since Javascript passes objects by reference).
+ * For example, when calling `$http.get(url, $scope.myObject)`, modifications to the object's properties in a transformRequest
+ * function will be reflected on the scope and in any templates where the object is data-bound.
+ * To prevent this, transform functions should have no side-effects.
+ * If you need to modify properties, it is recommended to make a copy of the data, or create new object to return.
+ * </div>
+ *
* ### Default Transformations
*
* The `$httpProvider` provider and `$http` service expose `defaults.transformRequest` and
@@ -9925,26 +10186,35 @@ function $HttpProvider() {
*
* ## Caching
*
- * To enable caching, set the request configuration `cache` property to `true` (to use default
- * cache) or to a custom cache object (built with {@link ng.$cacheFactory `$cacheFactory`}).
- * When the cache is enabled, `$http` stores the response from the server in the specified
- * cache. The next time the same request is made, the response is served from the cache without
- * sending a request to the server.
+ * {@link ng.$http `$http`} responses are not cached by default. To enable caching, you must
+ * set the config.cache value or the default cache value to TRUE or to a cache object (created
+ * with {@link ng.$cacheFactory `$cacheFactory`}). If defined, the value of config.cache takes
+ * precedence over the default cache value.
+ *
+ * In order to:
+ * * cache all responses - set the default cache value to TRUE or to a cache object
+ * * cache a specific response - set config.cache value to TRUE or to a cache object
*
- * Note that even if the response is served from cache, delivery of the data is asynchronous in
- * the same way that real requests are.
+ * If caching is enabled, but neither the default cache nor config.cache are set to a cache object,
+ * then the default `$cacheFactory($http)` object is used.
*
- * If there are multiple GET requests for the same URL that should be cached using the same
- * cache, but the cache is not populated yet, only one request to the server will be made and
- * the remaining requests will be fulfilled using the response from the first request.
+ * The default cache value can be set by updating the
+ * {@link ng.$http#defaults `$http.defaults.cache`} property or the
+ * {@link $httpProvider#defaults `$httpProvider.defaults.cache`} property.
*
- * You can change the default cache to a new object (built with
- * {@link ng.$cacheFactory `$cacheFactory`}) by updating the
- * {@link ng.$http#defaults `$http.defaults.cache`} property. All requests who set
- * their `cache` property to `true` will now use this cache object.
+ * When caching is enabled, {@link ng.$http `$http`} stores the response from the server using
+ * the relevant cache object. The next time the same request is made, the response is returned
+ * from the cache without sending a request to the server.
+ *
+ * Take note that:
+ *
+ * * Only GET and JSONP requests are cached.
+ * * The cache key is the request URL including search parameters; headers are not considered.
+ * * Cached responses are returned asynchronously, in the same way as responses from the server.
+ * * If multiple identical requests are made using the same cache, which is not yet populated,
+ * one request will be made to the server and remaining requests will return the same response.
+ * * A cache-control header on the response does not affect if or how responses are cached.
*
- * If you set the default cache to `false` then only requests that specify their own custom
- * cache object will be cached.
*
* ## Interceptors
*
@@ -10066,13 +10336,13 @@ function $HttpProvider() {
*
* ### Cross Site Request Forgery (XSRF) Protection
*
- * [XSRF](http://en.wikipedia.org/wiki/Cross-site_request_forgery) is a technique by which
- * an unauthorized site can gain your user's private data. Angular provides a mechanism
- * to counter XSRF. When performing XHR requests, the $http service reads a token from a cookie
- * (by default, `XSRF-TOKEN`) and sets it as an HTTP header (`X-XSRF-TOKEN`). Since only
- * JavaScript that runs on your domain could read the cookie, your server can be assured that
- * the XHR came from JavaScript running on your domain. The header will not be set for
- * cross-domain requests.
+ * [XSRF](http://en.wikipedia.org/wiki/Cross-site_request_forgery) is an attack technique by
+ * which the attacker can trick an authenticated user into unknowingly executing actions on your
+ * website. Angular provides a mechanism to counter XSRF. When performing XHR requests, the
+ * $http service reads a token from a cookie (by default, `XSRF-TOKEN`) and sets it as an HTTP
+ * header (`X-XSRF-TOKEN`). Since only JavaScript that runs on your domain could read the
+ * cookie, your server can be assured that the XHR came from JavaScript running on your domain.
+ * The header will not be set for cross-domain requests.
*
* To take advantage of this, your server needs to set a token in a JavaScript readable session
* cookie called `XSRF-TOKEN` on the first HTTP GET request. On subsequent XHR requests the
@@ -10114,7 +10384,7 @@ function $HttpProvider() {
* transform function or an array of such functions. The transform function takes the http
* response body, headers and status and returns its transformed (typically deserialized) version.
* See {@link ng.$http#overriding-the-default-transformations-per-request
- * Overriding the Default TransformationjqLiks}
+ * Overriding the Default Transformations}
* - **paramSerializer** - `{string|function(Object<string,string>):string}` - A function used to
* prepare the string representation of request parameters (specified as an object).
* If specified as string, it is interpreted as function registered with the
@@ -10122,10 +10392,9 @@ function $HttpProvider() {
* by registering it as a {@link auto.$provide#service service}.
* The default serializer is the {@link $httpParamSerializer $httpParamSerializer};
* alternatively, you can use the {@link $httpParamSerializerJQLike $httpParamSerializerJQLike}
- * - **cache** – `{boolean|Cache}` – If true, a default $http cache will be used to cache the
- * GET request, otherwise if a cache instance built with
- * {@link ng.$cacheFactory $cacheFactory}, this cache will be used for
- * caching.
+ * - **cache** – `{boolean|Object}` – A boolean value or object created with
+ * {@link ng.$cacheFactory `$cacheFactory`} to enable or disable caching of the HTTP response.
+ * See {@link $http#caching $http Caching} for more information.
* - **timeout** – `{number|Promise}` – timeout in milliseconds, or {@link ng.$q promise}
* that should abort the request when resolved.
* - **withCredentials** - `{boolean}` - whether to set the `withCredentials` flag on the
@@ -10235,6 +10504,10 @@ function $HttpProvider() {
throw minErr('$http')('badreq', 'Http request configuration must be an object. Received: {0}', requestConfig);
}
+ if (!isString(requestConfig.url)) {
+ throw minErr('$http')('badreq', 'Http request configuration url must be a string. Received: {0}', requestConfig.url);
+ }
+
var config = extend({
method: 'get',
transformRequest: defaults.transformRequest,
@@ -10847,7 +11120,7 @@ $interpolateMinErr.interr = function(text, err) {
* Used for configuring the interpolation markup. Defaults to `{{` and `}}`.
*
* @example
-<example module="customInterpolationApp">
+<example name="custom-interpolation-markup" module="customInterpolationApp">
<file name="index.html">
<script>
var customInterpolationApp = angular.module('customInterpolationApp', []);
@@ -10862,7 +11135,7 @@ $interpolateMinErr.interr = function(text, err) {
this.label = "This binding is brought you by // interpolation symbols.";
});
</script>
-<div ng-app="App" ng-controller="DemoController as demo">
+<div ng-controller="DemoController as demo">
//demo.label//
</div>
</file>
@@ -11025,6 +11298,11 @@ function $InterpolateProvider() {
* </file>
* </example>
*
+ * @knownIssue
+ * It is currently not possible for an interpolated expression to contain the interpolation end
+ * symbol. For example, `{{ '}}' }}` will be incorrectly interpreted as `{{ ' }}` + `' }}`, i.e.
+ * an interpolated expression consisting of a single-quote (`'`) and the `' }}` string.
+ *
* @param {string} text The text with markup to interpolate.
* @param {boolean=} mustHaveExpression if set to true then the interpolation string must have
* embedded expression in order to return an interpolation function. Strings with no
@@ -11859,7 +12137,7 @@ var locationPrototype = {
* ```
*
* @param {(string|number)=} path New path
- * @return {string} path
+ * @return {(string|object)} path if called with no parameters, or `$location` if called with a parameter
*/
path: locationGetterSetter('$$path', function(path) {
path = path !== null ? path.toString() : '';
@@ -13518,6 +13796,9 @@ ASTCompiler.prototype = {
intoId = intoId || this.nextId();
self.recurse(ast.object, left, undefined, function() {
self.if_(self.notNull(left), function() {
+ if (create && create !== 1) {
+ self.addEnsureSafeAssignContext(left);
+ }
if (ast.computed) {
right = self.nextId();
self.recurse(ast.property, right);
@@ -13599,7 +13880,7 @@ ASTCompiler.prototype = {
right = this.nextId();
left = {};
if (!isAssignable(ast.left)) {
- throw $parseMinErr('lval', 'Trying to assing a value to a non l-value');
+ throw $parseMinErr('lval', 'Trying to assign a value to a non l-value');
}
this.recurse(ast.left, undefined, left, function() {
self.if_(self.notNull(left.context), function() {
@@ -14132,8 +14413,11 @@ ASTInterpreter.prototype = {
rhs = right(scope, locals, assign, inputs);
rhs = getStringValue(rhs);
ensureSafeMemberName(rhs, expression);
- if (create && create !== 1 && lhs && !(lhs[rhs])) {
- lhs[rhs] = {};
+ if (create && create !== 1) {
+ ensureSafeAssignContext(lhs);
+ if (lhs && !(lhs[rhs])) {
+ lhs[rhs] = {};
+ }
}
value = lhs[rhs];
ensureSafeObject(value, expression);
@@ -14148,8 +14432,11 @@ ASTInterpreter.prototype = {
nonComputedMember: function(left, right, expensiveChecks, context, create, expression) {
return function(scope, locals, assign, inputs) {
var lhs = left(scope, locals, assign, inputs);
- if (create && create !== 1 && lhs && !(lhs[right])) {
- lhs[right] = {};
+ if (create && create !== 1) {
+ ensureSafeAssignContext(lhs);
+ if (lhs && !(lhs[right])) {
+ lhs[right] = {};
+ }
}
var value = lhs != null ? lhs[right] : undefined;
if (expensiveChecks || isPossiblyDangerousMemberName(right)) {
@@ -14190,9 +14477,6 @@ Parser.prototype = {
}
};
-var getterFnCacheDefault = createMap();
-var getterFnCacheExpensive = createMap();
-
function isPossiblyDangerousMemberName(name) {
return name == 'constructor';
}
@@ -14268,10 +14552,19 @@ function $ParseProvider() {
csp: noUnsafeEval,
expensiveChecks: true
};
+ var runningChecksEnabled = false;
+
+ $parse.$$runningExpensiveChecks = function() {
+ return runningChecksEnabled;
+ };
- return function $parse(exp, interceptorFn, expensiveChecks) {
+ return $parse;
+
+ function $parse(exp, interceptorFn, expensiveChecks) {
var parsedExpression, oneTime, cacheKey;
+ expensiveChecks = expensiveChecks || runningChecksEnabled;
+
switch (typeof exp) {
case 'string':
exp = exp.trim();
@@ -14297,6 +14590,9 @@ function $ParseProvider() {
} else if (parsedExpression.inputs) {
parsedExpression.$$watchDelegate = inputsWatchDelegate;
}
+ if (expensiveChecks) {
+ parsedExpression = expensiveChecksInterceptor(parsedExpression);
+ }
cache[cacheKey] = parsedExpression;
}
return addInterceptor(parsedExpression, interceptorFn);
@@ -14305,9 +14601,33 @@ function $ParseProvider() {
return addInterceptor(exp, interceptorFn);
default:
- return noop;
+ return addInterceptor(noop, interceptorFn);
}
- };
+ }
+
+ function expensiveChecksInterceptor(fn) {
+ if (!fn) return fn;
+ expensiveCheckFn.$$watchDelegate = fn.$$watchDelegate;
+ expensiveCheckFn.assign = expensiveChecksInterceptor(fn.assign);
+ expensiveCheckFn.constant = fn.constant;
+ expensiveCheckFn.literal = fn.literal;
+ for (var i = 0; fn.inputs && i < fn.inputs.length; ++i) {
+ fn.inputs[i] = expensiveChecksInterceptor(fn.inputs[i]);
+ }
+ expensiveCheckFn.inputs = fn.inputs;
+
+ return expensiveCheckFn;
+
+ function expensiveCheckFn(scope, locals, assign, inputs) {
+ var expensiveCheckOldValue = runningChecksEnabled;
+ runningChecksEnabled = true;
+ try {
+ return fn(scope, locals, assign, inputs);
+ } finally {
+ runningChecksEnabled = expensiveCheckOldValue;
+ }
+ }
+ }
function expressionInputDirtyCheck(newValue, oldValueOfValue) {
@@ -14483,15 +14803,15 @@ function $ParseProvider() {
* [Kris Kowal's Q](https://github.com/kriskowal/q).
*
* $q can be used in two fashions --- one which is more similar to Kris Kowal's Q or jQuery's Deferred
- * implementations, and the other which resembles ES6 promises to some degree.
+ * implementations, and the other which resembles ES6 (ES2015) promises to some degree.
*
* # $q constructor
*
* The streamlined ES6 style promise is essentially just using $q as a constructor which takes a `resolver`
- * function as the first argument. This is similar to the native Promise implementation from ES6 Harmony,
+ * function as the first argument. This is similar to the native Promise implementation from ES6,
* see [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise).
*
- * While the constructor-style use is supported, not all of the supporting methods from ES6 Harmony promises are
+ * While the constructor-style use is supported, not all of the supporting methods from ES6 promises are
* available yet.
*
* It can be used like so:
@@ -15839,7 +16159,7 @@ function $RootScopeProvider() {
*
*/
$digest: function() {
- var watch, value, last,
+ var watch, value, last, fn, get,
watchers,
length,
dirty, ttl = TTL,
@@ -15885,7 +16205,8 @@ function $RootScopeProvider() {
// Most common watches are on primitives, in which case we can short
// circuit it with === operator, only when === fails do we use .equals
if (watch) {
- if ((value = watch.get(current)) !== (last = watch.last) &&
+ get = watch.get;
+ if ((value = get(current)) !== (last = watch.last) &&
!(watch.eq
? equals(value, last)
: (typeof value === 'number' && typeof last === 'number'
@@ -15893,7 +16214,8 @@ function $RootScopeProvider() {
dirty = true;
lastDirtyWatch = watch;
watch.last = watch.eq ? copy(value, null) : value;
- watch.fn(value, ((last === initWatchVal) ? value : last), current);
+ fn = watch.fn;
+ fn(value, ((last === initWatchVal) ? value : last), current);
if (ttl < 5) {
logIdx = 4 - ttl;
if (!watchLog[logIdx]) watchLog[logIdx] = [];
@@ -16093,7 +16415,7 @@ function $RootScopeProvider() {
});
}
- asyncQueue.push({scope: this, expression: expr, locals: locals});
+ asyncQueue.push({scope: this, expression: $parse(expr), locals: locals});
},
$$postDigest: function(fn) {
@@ -16185,6 +16507,7 @@ function $RootScopeProvider() {
$applyAsync: function(expr) {
var scope = this;
expr && applyAsyncQueue.push($applyAsyncExpression);
+ expr = $parse(expr);
scheduleApplyAsync();
function $applyAsyncExpression() {
@@ -16460,6 +16783,21 @@ function $RootScopeProvider() {
}
/**
+ * @ngdoc service
+ * @name $rootElement
+ *
+ * @description
+ * The root element of Angular application. This is either the element where {@link
+ * ng.directive:ngApp ngApp} was declared or the element passed into
+ * {@link angular.bootstrap}. The element represents the root element of application. It is also the
+ * location where the application's {@link auto.$injector $injector} service gets
+ * published, and can be retrieved using `$rootElement.injector()`.
+ */
+
+
+// the implementation is in angular.bootstrap
+
+/**
* @description
* Private service to sanitize uris for links and images. Used by $compile and $sanitize.
*/
@@ -16673,13 +17011,15 @@ function $SceDelegateProvider() {
* @kind function
*
* @param {Array=} whitelist When provided, replaces the resourceUrlWhitelist with the value
- * provided. This must be an array or null. A snapshot of this array is used so further
- * changes to the array are ignored.
+ * provided. This must be an array or null. A snapshot of this array is used so further
+ * changes to the array are ignored.
*
- * Follow {@link ng.$sce#resourceUrlPatternItem this link} for a description of the items
- * allowed in this array.
+ * Follow {@link ng.$sce#resourceUrlPatternItem this link} for a description of the items
+ * allowed in this array.
*
- * Note: **an empty whitelist array will block all URLs**!
+ * <div class="alert alert-warning">
+ * **Note:** an empty whitelist array will block all URLs!
+ * </div>
*
* @return {Array} the currently set whitelist array.
*
@@ -16702,17 +17042,17 @@ function $SceDelegateProvider() {
* @kind function
*
* @param {Array=} blacklist When provided, replaces the resourceUrlBlacklist with the value
- * provided. This must be an array or null. A snapshot of this array is used so further
- * changes to the array are ignored.
+ * provided. This must be an array or null. A snapshot of this array is used so further
+ * changes to the array are ignored.
*
- * Follow {@link ng.$sce#resourceUrlPatternItem this link} for a description of the items
- * allowed in this array.
+ * Follow {@link ng.$sce#resourceUrlPatternItem this link} for a description of the items
+ * allowed in this array.
*
- * The typical usage for the blacklist is to **block
- * [open redirects](http://cwe.mitre.org/data/definitions/601.html)** served by your domain as
- * these would otherwise be trusted but actually return content from the redirected domain.
+ * The typical usage for the blacklist is to **block
+ * [open redirects](http://cwe.mitre.org/data/definitions/601.html)** served by your domain as
+ * these would otherwise be trusted but actually return content from the redirected domain.
*
- * Finally, **the blacklist overrides the whitelist** and has the final say.
+ * Finally, **the blacklist overrides the whitelist** and has the final say.
*
* @return {Array} the currently set blacklist array.
*
@@ -17706,7 +18046,7 @@ function $TemplateRequestProvider() {
// are included in there. This also makes Angular accept any script
// directive, no matter its name. However, we still need to unwrap trusted
// types.
- if (!isString(tpl) || !$templateCache.get(tpl)) {
+ if (!isString(tpl) || isUndefined($templateCache.get(tpl))) {
tpl = $sce.getTrustedResourceUrl(tpl);
}
@@ -17896,8 +18236,8 @@ function $TimeoutProvider() {
* @param {boolean=} [invokeApply=true] If set to `false` skips model dirty checking, otherwise
* will invoke `fn` within the {@link ng.$rootScope.Scope#$apply $apply} block.
* @param {...*=} Pass additional parameters to the executed function.
- * @returns {Promise} Promise that will be resolved when the timeout is reached. The value this
- * promise will be resolved with is the return value of the `fn` function.
+ * @returns {Promise} Promise that will be resolved when the timeout is reached. The promise
+ * will be resolved with the return value of the `fn` function.
*
*/
function timeout(fn, delay, invokeApply) {
@@ -18573,6 +18913,10 @@ function getTypeForFilter(val) {
return (val === null) ? 'null' : typeof val;
}
+var MAX_DIGITS = 22;
+var DECIMAL_SEP = '.';
+var ZERO_CHAR = '0';
+
/**
* @ngdoc filter
* @name currency
@@ -18654,7 +18998,7 @@ function currencyFilter($locale) {
* Formats a number as text.
*
* If the input is null or undefined, it will just be returned.
- * If the input is infinite (Infinity/-Infinity) the Infinity symbol '∞' is returned.
+ * If the input is infinite (Infinity or -Infinity), the Infinity symbol '∞' or '-∞' is returned, respectively.
* If the input is not a number an empty string is returned.
*
*
@@ -18662,7 +19006,9 @@ function currencyFilter($locale) {
* @param {(number|string)=} fractionSize Number of decimal places to round the number to.
* If this is not provided then the fraction size is computed from the current locale's number
* formatting pattern. In the case of the default locale, it will be 3.
- * @returns {string} Number rounded to decimalPlaces and places a “,” after each third digit.
+ * @returns {string} Number rounded to `fractionSize` appropriately formatted based on the current
+ * locale (e.g., in the en_US locale it will have "." as the decimal separator and
+ * include "," group separators after each third digit).
*
* @example
<example module="numberFilterExample">
@@ -18697,8 +19043,6 @@ function currencyFilter($locale) {
</file>
</example>
*/
-
-
numberFilter.$inject = ['$locale'];
function numberFilter($locale) {
var formats = $locale.NUMBER_FORMATS;
@@ -18712,93 +19056,194 @@ function numberFilter($locale) {
};
}
-var DECIMAL_SEP = '.';
-function formatNumber(number, pattern, groupSep, decimalSep, fractionSize) {
- if (isObject(number)) return '';
+/**
+ * Parse a number (as a string) into three components that can be used
+ * for formatting the number.
+ *
+ * (Significant bits of this parse algorithm came from https://github.com/MikeMcl/big.js/)
+ *
+ * @param {string} numStr The number to parse
+ * @return {object} An object describing this number, containing the following keys:
+ * - d : an array of digits containing leading zeros as necessary
+ * - i : the number of the digits in `d` that are to the left of the decimal point
+ * - e : the exponent for numbers that would need more than `MAX_DIGITS` digits in `d`
+ *
+ */
+function parse(numStr) {
+ var exponent = 0, digits, numberOfIntegerDigits;
+ var i, j, zeros;
- var isNegative = number < 0;
- number = Math.abs(number);
+ // Decimal point?
+ if ((numberOfIntegerDigits = numStr.indexOf(DECIMAL_SEP)) > -1) {
+ numStr = numStr.replace(DECIMAL_SEP, '');
+ }
- var isInfinity = number === Infinity;
- if (!isInfinity && !isFinite(number)) return '';
+ // Exponential form?
+ if ((i = numStr.search(/e/i)) > 0) {
+ // Work out the exponent.
+ if (numberOfIntegerDigits < 0) numberOfIntegerDigits = i;
+ numberOfIntegerDigits += +numStr.slice(i + 1);
+ numStr = numStr.substring(0, i);
+ } else if (numberOfIntegerDigits < 0) {
+ // There was no decimal point or exponent so it is an integer.
+ numberOfIntegerDigits = numStr.length;
+ }
- var numStr = number + '',
- formatedText = '',
- hasExponent = false,
- parts = [];
+ // Count the number of leading zeros.
+ for (i = 0; numStr.charAt(i) == ZERO_CHAR; i++) {/* jshint noempty: false */}
- if (isInfinity) formatedText = '\u221e';
+ if (i == (zeros = numStr.length)) {
+ // The digits are all zero.
+ digits = [0];
+ numberOfIntegerDigits = 1;
+ } else {
+ // Count the number of trailing zeros
+ zeros--;
+ while (numStr.charAt(zeros) == ZERO_CHAR) zeros--;
- if (!isInfinity && numStr.indexOf('e') !== -1) {
- var match = numStr.match(/([\d\.]+)e(-?)(\d+)/);
- if (match && match[2] == '-' && match[3] > fractionSize + 1) {
- number = 0;
- } else {
- formatedText = numStr;
- hasExponent = true;
+ // Trailing zeros are insignificant so ignore them
+ numberOfIntegerDigits -= i;
+ digits = [];
+ // Convert string to array of digits without leading/trailing zeros.
+ for (j = 0; i <= zeros; i++, j++) {
+ digits[j] = +numStr.charAt(i);
}
}
- if (!isInfinity && !hasExponent) {
- var fractionLen = (numStr.split(DECIMAL_SEP)[1] || '').length;
+ // If the number overflows the maximum allowed digits then use an exponent.
+ if (numberOfIntegerDigits > MAX_DIGITS) {
+ digits = digits.splice(0, MAX_DIGITS - 1);
+ exponent = numberOfIntegerDigits - 1;
+ numberOfIntegerDigits = 1;
+ }
- // determine fractionSize if it is not specified
- if (isUndefined(fractionSize)) {
- fractionSize = Math.min(Math.max(pattern.minFrac, fractionLen), pattern.maxFrac);
+ return { d: digits, e: exponent, i: numberOfIntegerDigits };
+}
+
+/**
+ * Round the parsed number to the specified number of decimal places
+ * This function changed the parsedNumber in-place
+ */
+function roundNumber(parsedNumber, fractionSize, minFrac, maxFrac) {
+ var digits = parsedNumber.d;
+ var fractionLen = digits.length - parsedNumber.i;
+
+ // determine fractionSize if it is not specified; `+fractionSize` converts it to a number
+ fractionSize = (isUndefined(fractionSize)) ? Math.min(Math.max(minFrac, fractionLen), maxFrac) : +fractionSize;
+
+ // The index of the digit to where rounding is to occur
+ var roundAt = fractionSize + parsedNumber.i;
+ var digit = digits[roundAt];
+
+ if (roundAt > 0) {
+ digits.splice(roundAt);
+ } else {
+ // We rounded to zero so reset the parsedNumber
+ parsedNumber.i = 1;
+ digits.length = roundAt = fractionSize + 1;
+ for (var i=0; i < roundAt; i++) digits[i] = 0;
}
- // safely round numbers in JS without hitting imprecisions of floating-point arithmetics
- // inspired by:
- // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math/round
- number = +(Math.round(+(number.toString() + 'e' + fractionSize)).toString() + 'e' + -fractionSize);
+ if (digit >= 5) digits[roundAt - 1]++;
- var fraction = ('' + number).split(DECIMAL_SEP);
- var whole = fraction[0];
- fraction = fraction[1] || '';
+ // Pad out with zeros to get the required fraction length
+ for (; fractionLen < fractionSize; fractionLen++) digits.push(0);
- var i, pos = 0,
- lgroup = pattern.lgSize,
- group = pattern.gSize;
- if (whole.length >= (lgroup + group)) {
- pos = whole.length - lgroup;
- for (i = 0; i < pos; i++) {
- if ((pos - i) % group === 0 && i !== 0) {
- formatedText += groupSep;
- }
- formatedText += whole.charAt(i);
- }
+ // Do any carrying, e.g. a digit was rounded up to 10
+ var carry = digits.reduceRight(function(carry, d, i, digits) {
+ d = d + carry;
+ digits[i] = d % 10;
+ return Math.floor(d / 10);
+ }, 0);
+ if (carry) {
+ digits.unshift(carry);
+ parsedNumber.i++;
}
+}
- for (i = pos; i < whole.length; i++) {
- if ((whole.length - i) % lgroup === 0 && i !== 0) {
- formatedText += groupSep;
- }
- formatedText += whole.charAt(i);
+/**
+ * Format a number into a string
+ * @param {number} number The number to format
+ * @param {{
+ * minFrac, // the minimum number of digits required in the fraction part of the number
+ * maxFrac, // the maximum number of digits required in the fraction part of the number
+ * gSize, // number of digits in each group of separated digits
+ * lgSize, // number of digits in the last group of digits before the decimal separator
+ * negPre, // the string to go in front of a negative number (e.g. `-` or `(`))
+ * posPre, // the string to go in front of a positive number
+ * negSuf, // the string to go after a negative number (e.g. `)`)
+ * posSuf // the string to go after a positive number
+ * }} pattern
+ * @param {string} groupSep The string to separate groups of number (e.g. `,`)
+ * @param {string} decimalSep The string to act as the decimal separator (e.g. `.`)
+ * @param {[type]} fractionSize The size of the fractional part of the number
+ * @return {string} The number formatted as a string
+ */
+function formatNumber(number, pattern, groupSep, decimalSep, fractionSize) {
+
+ if (!(isString(number) || isNumber(number)) || isNaN(number)) return '';
+
+ var isInfinity = !isFinite(number);
+ var isZero = false;
+ var numStr = Math.abs(number) + '',
+ formattedText = '',
+ parsedNumber;
+
+ if (isInfinity) {
+ formattedText = '\u221e';
+ } else {
+ parsedNumber = parse(numStr);
+
+ roundNumber(parsedNumber, fractionSize, pattern.minFrac, pattern.maxFrac);
+
+ var digits = parsedNumber.d;
+ var integerLen = parsedNumber.i;
+ var exponent = parsedNumber.e;
+ var decimals = [];
+ isZero = digits.reduce(function(isZero, d) { return isZero && !d; }, true);
+
+ // pad zeros for small numbers
+ while (integerLen < 0) {
+ digits.unshift(0);
+ integerLen++;
+ }
+
+ // extract decimals digits
+ if (integerLen > 0) {
+ decimals = digits.splice(integerLen, digits.length);
+ } else {
+ decimals = digits;
+ digits = [0];
}
- // format fraction part.
- while (fraction.length < fractionSize) {
- fraction += '0';
+ // format the integer digits with grouping separators
+ var groups = [];
+ if (digits.length >= pattern.lgSize) {
+ groups.unshift(digits.splice(-pattern.lgSize, digits.length).join(''));
+ }
+ while (digits.length > pattern.gSize) {
+ groups.unshift(digits.splice(-pattern.gSize, digits.length).join(''));
+ }
+ if (digits.length) {
+ groups.unshift(digits.join(''));
}
+ formattedText = groups.join(groupSep);
- if (fractionSize && fractionSize !== "0") formatedText += decimalSep + fraction.substr(0, fractionSize);
- } else {
- if (fractionSize > 0 && number < 1) {
- formatedText = number.toFixed(fractionSize);
- number = parseFloat(formatedText);
- formatedText = formatedText.replace(DECIMAL_SEP, decimalSep);
+ // append the decimal digits
+ if (decimals.length) {
+ formattedText += decimalSep + decimals.join('');
}
- }
- if (number === 0) {
- isNegative = false;
+ if (exponent) {
+ formattedText += 'e+' + exponent;
+ }
+ }
+ if (number < 0 && !isZero) {
+ return pattern.negPre + formattedText + pattern.negSuf;
+ } else {
+ return pattern.posPre + formattedText + pattern.posSuf;
}
-
- parts.push(isNegative ? pattern.negPre : pattern.posPre,
- formatedText,
- isNegative ? pattern.negSuf : pattern.posSuf);
- return parts.join('');
}
function padNumber(num, digits, trim) {
@@ -18808,7 +19253,7 @@ function padNumber(num, digits, trim) {
num = -num;
}
num = '' + num;
- while (num.length < digits) num = '0' + num;
+ while (num.length < digits) num = ZERO_CHAR + num;
if (trim) {
num = num.substr(num.length - digits);
}
@@ -19077,13 +19522,13 @@ function dateFilter($locale) {
var dateTimezoneOffset = date.getTimezoneOffset();
if (timezone) {
- dateTimezoneOffset = timezoneToOffset(timezone, date.getTimezoneOffset());
+ dateTimezoneOffset = timezoneToOffset(timezone, dateTimezoneOffset);
date = convertTimezoneToLocal(date, timezone, true);
}
forEach(parts, function(value) {
fn = DATE_FORMATS[value];
text += fn ? fn(date, $locale.DATETIME_FORMATS, dateTimezoneOffset)
- : value.replace(/(^'|'$)/g, '').replace(/''/g, "'");
+ : value === "''" ? "'" : value.replace(/(^'|'$)/g, '').replace(/''/g, "'");
});
return text;
@@ -19319,17 +19764,6 @@ function limitToFilter() {
* `reverse` is not set, which means it defaults to `false`.
<example module="orderByExample">
<file name="index.html">
- <script>
- angular.module('orderByExample', [])
- .controller('ExampleController', ['$scope', function($scope) {
- $scope.friends =
- [{name:'John', phone:'555-1212', age:10},
- {name:'Mary', phone:'555-9876', age:19},
- {name:'Mike', phone:'555-4321', age:21},
- {name:'Adam', phone:'555-5678', age:35},
- {name:'Julie', phone:'555-8765', age:29}];
- }]);
- </script>
<div ng-controller="ExampleController">
<table class="friend">
<tr>
@@ -19345,6 +19779,17 @@ function limitToFilter() {
</table>
</div>
</file>
+ <file name="script.js">
+ angular.module('orderByExample', [])
+ .controller('ExampleController', ['$scope', function($scope) {
+ $scope.friends =
+ [{name:'John', phone:'555-1212', age:10},
+ {name:'Mary', phone:'555-9876', age:19},
+ {name:'Mike', phone:'555-4321', age:21},
+ {name:'Adam', phone:'555-5678', age:35},
+ {name:'Julie', phone:'555-8765', age:29}];
+ }]);
+ </file>
</example>
*
* The predicate and reverse parameters can be controlled dynamically through scope properties,
@@ -19352,49 +19797,24 @@ function limitToFilter() {
* @example
<example module="orderByExample">
<file name="index.html">
- <script>
- angular.module('orderByExample', [])
- .controller('ExampleController', ['$scope', function($scope) {
- $scope.friends =
- [{name:'John', phone:'555-1212', age:10},
- {name:'Mary', phone:'555-9876', age:19},
- {name:'Mike', phone:'555-4321', age:21},
- {name:'Adam', phone:'555-5678', age:35},
- {name:'Julie', phone:'555-8765', age:29}];
- $scope.predicate = 'age';
- $scope.reverse = true;
- $scope.order = function(predicate) {
- $scope.reverse = ($scope.predicate === predicate) ? !$scope.reverse : false;
- $scope.predicate = predicate;
- };
- }]);
- </script>
- <style type="text/css">
- .sortorder:after {
- content: '\25b2';
- }
- .sortorder.reverse:after {
- content: '\25bc';
- }
- </style>
<div ng-controller="ExampleController">
<pre>Sorting predicate = {{predicate}}; reverse = {{reverse}}</pre>
<hr/>
- [ <a href="" ng-click="predicate=''">unsorted</a> ]
+ <button ng-click="predicate=''">Set to unsorted</button>
<table class="friend">
<tr>
- <th>
- <a href="" ng-click="order('name')">Name</a>
- <span class="sortorder" ng-show="predicate === 'name'" ng-class="{reverse:reverse}"></span>
- </th>
- <th>
- <a href="" ng-click="order('phone')">Phone Number</a>
- <span class="sortorder" ng-show="predicate === 'phone'" ng-class="{reverse:reverse}"></span>
- </th>
- <th>
- <a href="" ng-click="order('age')">Age</a>
- <span class="sortorder" ng-show="predicate === 'age'" ng-class="{reverse:reverse}"></span>
- </th>
+ <th>
+ <button ng-click="order('name')">Name</button>
+ <span class="sortorder" ng-show="predicate === 'name'" ng-class="{reverse:reverse}"></span>
+ </th>
+ <th>
+ <button ng-click="order('phone')">Phone Number</button>
+ <span class="sortorder" ng-show="predicate === 'phone'" ng-class="{reverse:reverse}"></span>
+ </th>
+ <th>
+ <button ng-click="order('age')">Age</button>
+ <span class="sortorder" ng-show="predicate === 'age'" ng-class="{reverse:reverse}"></span>
+ </th>
</tr>
<tr ng-repeat="friend in friends | orderBy:predicate:reverse">
<td>{{friend.name}}</td>
@@ -19404,6 +19824,31 @@ function limitToFilter() {
</table>
</div>
</file>
+ <file name="script.js">
+ angular.module('orderByExample', [])
+ .controller('ExampleController', ['$scope', function($scope) {
+ $scope.friends =
+ [{name:'John', phone:'555-1212', age:10},
+ {name:'Mary', phone:'555-9876', age:19},
+ {name:'Mike', phone:'555-4321', age:21},
+ {name:'Adam', phone:'555-5678', age:35},
+ {name:'Julie', phone:'555-8765', age:29}];
+ $scope.predicate = 'age';
+ $scope.reverse = true;
+ $scope.order = function(predicate) {
+ $scope.reverse = ($scope.predicate === predicate) ? !$scope.reverse : false;
+ $scope.predicate = predicate;
+ };
+ }]);
+ </file>
+ <file name="style.css">
+ .sortorder:after {
+ content: '\25b2';
+ }
+ .sortorder.reverse:after {
+ content: '\25bc';
+ }
+ </file>
</example>
*
* It's also possible to call the orderBy filter manually, by injecting `$filter`, retrieving the
@@ -19415,21 +19860,30 @@ function limitToFilter() {
* @example
<example module="orderByExample">
<file name="index.html">
- <div ng-controller="ExampleController">
- <table class="friend">
- <tr>
- <th><a href="" ng-click="reverse=false;order('name', false)">Name</a>
- (<a href="" ng-click="order('-name',false)">^</a>)</th>
- <th><a href="" ng-click="reverse=!reverse;order('phone', reverse)">Phone Number</a></th>
- <th><a href="" ng-click="reverse=!reverse;order('age',reverse)">Age</a></th>
- </tr>
- <tr ng-repeat="friend in friends">
- <td>{{friend.name}}</td>
- <td>{{friend.phone}}</td>
- <td>{{friend.age}}</td>
- </tr>
- </table>
- </div>
+ <div ng-controller="ExampleController">
+ <pre>Sorting predicate = {{predicate}}; reverse = {{reverse}}</pre>
+ <table class="friend">
+ <tr>
+ <th>
+ <button ng-click="order('name')">Name</button>
+ <span class="sortorder" ng-show="predicate === 'name'" ng-class="{reverse:reverse}"></span>
+ </th>
+ <th>
+ <button ng-click="order('phone')">Phone Number</button>
+ <span class="sortorder" ng-show="predicate === 'phone'" ng-class="{reverse:reverse}"></span>
+ </th>
+ <th>
+ <button ng-click="order('age')">Age</button>
+ <span class="sortorder" ng-show="predicate === 'age'" ng-class="{reverse:reverse}"></span>
+ </th>
+ </tr>
+ <tr ng-repeat="friend in friends">
+ <td>{{friend.name}}</td>
+ <td>{{friend.phone}}</td>
+ <td>{{friend.age}}</td>
+ </tr>
+ </table>
+ </div>
</file>
<file name="script.js">
@@ -19443,12 +19897,23 @@ function limitToFilter() {
{ name: 'Adam', phone: '555-5678', age: 35 },
{ name: 'Julie', phone: '555-8765', age: 29 }
];
- $scope.order = function(predicate, reverse) {
- $scope.friends = orderBy($scope.friends, predicate, reverse);
+ $scope.order = function(predicate) {
+ $scope.predicate = predicate;
+ $scope.reverse = ($scope.predicate === predicate) ? !$scope.reverse : false;
+ $scope.friends = orderBy($scope.friends, predicate, $scope.reverse);
};
- $scope.order('-age',false);
+ $scope.order('age', true);
}]);
</file>
+
+ <file name="style.css">
+ .sortorder:after {
+ content: '\25b2';
+ }
+ .sortorder.reverse:after {
+ content: '\25bc';
+ }
+ </file>
</example>
*/
orderByFilter.$inject = ['$parse'];
@@ -19778,20 +20243,7 @@ var htmlAnchorDirective = valueFn({
* {@link guide/expression expression} inside `ngDisabled` evaluates to truthy.
*
* A special directive is necessary because we cannot use interpolation inside the `disabled`
- * attribute. The following example would make the button enabled on Chrome/Firefox
- * but not on older IEs:
- *
- * ```html
- * <!-- See below for an example of ng-disabled being used correctly -->
- * <div ng-init="isDisabled = false">
- * <button disabled="{{isDisabled}}">Disabled</button>
- * </div>
- * ```
- *
- * This is because the HTML specification does not require browsers to preserve the values of
- * boolean attributes such as `disabled` (Their presence means true and their absence means false.)
- * If we put an Angular interpolation expression into such an attribute then the
- * binding information would be lost when the browser removes the attribute.
+ * attribute. See the {@link guide/interpolation interpolation guide} for more info.
*
* @example
<example>
@@ -19826,15 +20278,9 @@ var htmlAnchorDirective = valueFn({
* Note that this directive should not be used together with {@link ngModel `ngModel`},
* as this can lead to unexpected behavior.
*
- * ### Why do we need `ngChecked`?
+ * A special directive is necessary because we cannot use interpolation inside the `checked`
+ * attribute. See the {@link guide/interpolation interpolation guide} for more info.
*
- * The HTML specification does not require browsers to preserve the values of boolean attributes
- * such as checked. (Their presence means true and their absence means false.)
- * If we put an Angular interpolation expression into such an attribute then the
- * binding information would be lost when the browser removes the attribute.
- * The `ngChecked` directive solves this problem for the `checked` attribute.
- * This complementary directive is not removed by the browser and so provides
- * a permanent reliable place to store the binding information.
* @example
<example>
<file name="index.html">
@@ -19863,13 +20309,12 @@ var htmlAnchorDirective = valueFn({
* @priority 100
*
* @description
- * The HTML specification does not require browsers to preserve the values of boolean attributes
- * such as readonly. (Their presence means true and their absence means false.)
- * If we put an Angular interpolation expression into such an attribute then the
- * binding information would be lost when the browser removes the attribute.
- * The `ngReadonly` directive solves this problem for the `readonly` attribute.
- * This complementary directive is not removed by the browser and so provides
- * a permanent reliable place to store the binding information.
+ *
+ * Sets the `readOnly` attribute on the element, if the expression inside `ngReadonly` is truthy.
+ *
+ * A special directive is necessary because we cannot use interpolation inside the `readOnly`
+ * attribute. See the {@link guide/interpolation interpolation guide} for more info.
+ *
* @example
<example>
<file name="index.html">
@@ -19898,13 +20343,11 @@ var htmlAnchorDirective = valueFn({
* @priority 100
*
* @description
- * The HTML specification does not require browsers to preserve the values of boolean attributes
- * such as selected. (Their presence means true and their absence means false.)
- * If we put an Angular interpolation expression into such an attribute then the
- * binding information would be lost when the browser removes the attribute.
- * The `ngSelected` directive solves this problem for the `selected` attribute.
- * This complementary directive is not removed by the browser and so provides
- * a permanent reliable place to store the binding information.
+ *
+ * Sets the `selected` attribute on the element, if the expression inside `ngSelected` is truthy.
+ *
+ * A special directive is necessary because we cannot use interpolation inside the `selected`
+ * attribute. See the {@link guide/interpolation interpolation guide} for more info.
*
* @example
<example>
@@ -19936,13 +20379,12 @@ var htmlAnchorDirective = valueFn({
* @priority 100
*
* @description
- * The HTML specification does not require browsers to preserve the values of boolean attributes
- * such as open. (Their presence means true and their absence means false.)
- * If we put an Angular interpolation expression into such an attribute then the
- * binding information would be lost when the browser removes the attribute.
- * The `ngOpen` directive solves this problem for the `open` attribute.
- * This complementary directive is not removed by the browser and so provides
- * a permanent reliable place to store the binding information.
+ *
+ * Sets the `open` attribute on the element, if the expression inside `ngOpen` is truthy.
+ *
+ * A special directive is necessary because we cannot use interpolation inside the `open`
+ * attribute. See the {@link guide/interpolation interpolation guide} for more info.
+ *
* @example
<example>
<file name="index.html">
@@ -20398,13 +20840,9 @@ function FormController(element, attrs, $scope, $animate, $interpolate) {
*
* In Angular, forms can be nested. This means that the outer form is valid when all of the child
* forms are valid as well. However, browsers do not allow nesting of `<form>` elements, so
- * Angular provides the {@link ng.directive:ngForm `ngForm`} directive which behaves identically to
- * `<form>` but can be nested. This allows you to have nested forms, which is very useful when
- * using Angular validation directives in forms that are dynamically generated using the
- * {@link ng.directive:ngRepeat `ngRepeat`} directive. Since you cannot dynamically generate the `name`
- * attribute of input elements using interpolation, you have to wrap each set of repeated inputs in an
- * `ngForm` directive and nest these in an outer `form` element.
- *
+ * Angular provides the {@link ng.directive:ngForm `ngForm`} directive, which behaves identically to
+ * `form` but can be nested. Nested forms can be useful, for example, if the validity of a sub-group
+ * of controls needs to be determined.
*
* # CSS classes
* - `ng-valid` is set if the form is valid.
@@ -20625,7 +21063,18 @@ var ngFormDirective = formDirectiveFactory(true);
// Regex code is obtained from SO: https://stackoverflow.com/questions/3143070/javascript-regex-iso-datetime#answer-3143231
var ISO_DATE_REGEXP = /\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+([+-][0-2]\d:[0-5]\d|Z)/;
// See valid URLs in RFC3987 (http://tools.ietf.org/html/rfc3987)
-var URL_REGEXP = /^[A-Za-z][A-Za-z\d.+-]*:\/*(?:\w+(?::\w+)?@)?[^\s/]+(?::\d+)?(?:\/[\w#!:.?+=&%@\-/]*)?$/;
+// Note: We are being more lenient, because browsers are too.
+// 1. Scheme
+// 2. Slashes
+// 3. Username
+// 4. Password
+// 5. Hostname
+// 6. Port
+// 7. Path
+// 8. Query
+// 9. Fragment
+// 1111111111111111 222 333333 44444 555555555555555555555555 666 77777777 8888888 999
+var URL_REGEXP = /^[a-z][a-z\d.+-]*:\/*(?:[^:@]+(?::[^@]+)?@)?(?:[^\s:/?#]+|\[[a-f\d:]+\])(?::\d+)?(?:\/[^?#]*)?(?:\?[^#]*)?(?:#.*)?$/i;
var EMAIL_REGEXP = /^[a-z0-9!#$%&'*+\/=?^_`{|}~.-]+@[a-z0-9]([a-z0-9-]*[a-z0-9])?(\.[a-z0-9]([a-z0-9-]*[a-z0-9])?)*$/i;
var NUMBER_REGEXP = /^\s*(\-|\+)?(\d+|(\d*(\.\d*)))([eE][+-]?\d+)?\s*$/;
var DATE_REGEXP = /^(\d{4})-(\d{2})-(\d{2})$/;
@@ -20634,6 +21083,12 @@ var WEEK_REGEXP = /^(\d{4})-W(\d\d)$/;
var MONTH_REGEXP = /^(\d{4})-(\d\d)$/;
var TIME_REGEXP = /^(\d\d):(\d\d)(?::(\d\d)(\.\d{1,3})?)?$/;
+var PARTIAL_VALIDATION_EVENTS = 'keydown wheel mousedown';
+var PARTIAL_VALIDATION_TYPES = createMap();
+forEach('date,datetime-local,month,time,week'.split(','), function(type) {
+ PARTIAL_VALIDATION_TYPES[type] = true;
+});
+
var inputType = {
/**
@@ -20989,7 +21444,7 @@ var inputType = {
}]);
</script>
<form name="myForm" ng-controller="DateController as dateCtrl">
- <label for="exampleInput">Pick a between 8am and 5pm:</label>
+ <label for="exampleInput">Pick a time between 8am and 5pm:</label>
<input type="time" id="exampleInput" name="input" ng-model="example.value"
placeholder="HH:mm:ss" min="08:00:00" max="17:00:00" required />
<div role="alert">
@@ -21720,6 +22175,8 @@ function baseInputType(scope, element, attr, ctrl, $sniffer, $browser) {
});
}
+ var timeout;
+
var listener = function(ev) {
if (timeout) {
$browser.defer.cancel(timeout);
@@ -21749,8 +22206,6 @@ function baseInputType(scope, element, attr, ctrl, $sniffer, $browser) {
if ($sniffer.hasEvent('input')) {
element.on('input', listener);
} else {
- var timeout;
-
var deferListener = function(ev, input, origValue) {
if (!timeout) {
timeout = $browser.defer(function() {
@@ -21782,6 +22237,26 @@ function baseInputType(scope, element, attr, ctrl, $sniffer, $browser) {
// or form autocomplete on newer browser, we need "change" event to catch it
element.on('change', listener);
+ // Some native input types (date-family) have the ability to change validity without
+ // firing any input/change events.
+ // For these event types, when native validators are present and the browser supports the type,
+ // check for validity changes on various DOM events.
+ if (PARTIAL_VALIDATION_TYPES[type] && ctrl.$$hasNativeValidators && type === attr.type) {
+ element.on(PARTIAL_VALIDATION_EVENTS, function(ev) {
+ if (!timeout) {
+ var validity = this[VALIDITY_STATE_PROPERTY];
+ var origBadInput = validity.badInput;
+ var origTypeMismatch = validity.typeMismatch;
+ timeout = $browser.defer(function() {
+ timeout = null;
+ if (validity.badInput !== origBadInput || validity.typeMismatch !== origTypeMismatch) {
+ listener(ev);
+ }
+ });
+ }
+ });
+ }
+
ctrl.$render = function() {
// Workaround for Firefox validation #12102.
var value = ctrl.$isEmpty(ctrl.$viewValue) ? '' : ctrl.$viewValue;
@@ -22284,13 +22759,16 @@ var inputDirective = ['$browser', '$sniffer', '$filter', '$parse',
return {
restrict: 'E',
require: ['?ngModel'],
- link: {
- pre: function(scope, element, attr, ctrls) {
- if (ctrls[0]) {
- (inputType[lowercase(attr.type)] || inputType.text)(scope, element, attr, ctrls[0], $sniffer,
- $browser, $filter, $parse);
+ compile: function(tElement, tAttr) {
+ if (lowercase(tAttr.type) === 'hidden') tAttr.$set('autocomplete', 'off');
+ return {
+ pre: function(scope, element, attr, ctrls) {
+ if (ctrls[0]) {
+ (inputType[lowercase(attr.type)] || inputType.text)(scope, element, attr, ctrls[0], $sniffer,
+ $browser, $filter, $parse);
+ }
}
- }
+ };
}
};
}];
@@ -22563,8 +23041,9 @@ var ngBindHtmlDirective = ['$sce', '$parse', '$compile', function($sce, $parse,
restrict: 'A',
compile: function ngBindHtmlCompile(tElement, tAttrs) {
var ngBindHtmlGetter = $parse(tAttrs.ngBindHtml);
- var ngBindHtmlWatch = $parse(tAttrs.ngBindHtml, function getStringValue(value) {
- return (value || '').toString();
+ var ngBindHtmlWatch = $parse(tAttrs.ngBindHtml, function sceValueOf(val) {
+ // Unwrap the value to compare the actual inner safe value, not the wrapper object.
+ return $sce.valueOf(val);
});
$compile.$$addBindingClass(tElement);
@@ -22572,9 +23051,9 @@ var ngBindHtmlDirective = ['$sce', '$parse', '$compile', function($sce, $parse,
$compile.$$addBindingInfo(element, attr.ngBindHtml);
scope.$watch(ngBindHtmlWatch, function ngBindHtmlWatchAction() {
- // we re-evaluate the expr because we want a TrustedValueHolderType
- // for $sce, not a string
- element.html($sce.getTrustedHtml(ngBindHtmlGetter(scope)) || '');
+ // The watched value is the unwrapped value. To avoid re-escaping, use the direct getter.
+ var value = ngBindHtmlGetter(scope);
+ element.html($sce.getTrustedHtml(value) || '');
});
};
}
@@ -22736,7 +23215,11 @@ function classDirective(name, selector) {
updateClasses(oldClasses, newClasses);
}
}
- oldVal = shallowCopy(newVal);
+ if (isArray(newVal)) {
+ oldVal = newVal.map(function(v) { return shallowCopy(v); });
+ } else {
+ oldVal = shallowCopy(newVal);
+ }
}
}
};
@@ -24389,6 +24872,8 @@ var ngIncludeDirective = ['$templateRequest', '$anchorScroll', '$animate',
//set the 2nd param to true to ignore the template request error so that the inner
//contents and scope can be cleaned up.
$templateRequest(src, true).then(function(response) {
+ if (scope.$$destroyed) return;
+
if (thisChangeId !== changeCounter) return;
var newScope = scope.$new();
ctrl.template = response;
@@ -24410,6 +24895,8 @@ var ngIncludeDirective = ['$templateRequest', '$anchorScroll', '$animate',
currentScope.$emit('$includeContentLoaded', src);
scope.$eval(onloadExp);
}, function() {
+ if (scope.$$destroyed) return;
+
if (thisChangeId === changeCounter) {
cleanupLastIncludeContent();
scope.$emit('$includeContentError', src);
@@ -25088,11 +25575,14 @@ var NgModelController = ['$scope', '$exceptionHandler', '$attrs', '$element', '$
* which may be caused by a pending debounced event or because the input is waiting for a some
* future event.
*
- * If you have an input that uses `ng-model-options` to set up debounced events or events such
- * as blur you can have a situation where there is a period when the `$viewValue`
- * is out of synch with the ngModel's `$modelValue`.
+ * If you have an input that uses `ng-model-options` to set up debounced updates or updates that
+ * depend on special events such as blur, you can have a situation where there is a period when
+ * the `$viewValue` is out of sync with the ngModel's `$modelValue`.
+ *
+ * In this case, you can use `$rollbackViewValue()` to manually cancel the debounced / future update
+ * and reset the input to the last committed view value.
*
- * In this case, you can run into difficulties if you try to update the ngModel's `$modelValue`
+ * It is also possible that you run into difficulties if you try to update the ngModel's `$modelValue`
* programmatically before these debounced/future events have resolved/occurred, because Angular's
* dirty checking mechanism is not able to tell whether the model has actually changed or not.
*
@@ -25105,39 +25595,63 @@ var NgModelController = ['$scope', '$exceptionHandler', '$attrs', '$element', '$
* angular.module('cancel-update-example', [])
*
* .controller('CancelUpdateController', ['$scope', function($scope) {
- * $scope.resetWithCancel = function(e) {
- * if (e.keyCode == 27) {
- * $scope.myForm.myInput1.$rollbackViewValue();
- * $scope.myValue = '';
- * }
- * };
- * $scope.resetWithoutCancel = function(e) {
+ * $scope.model = {};
+ *
+ * $scope.setEmpty = function(e, value, rollback) {
* if (e.keyCode == 27) {
- * $scope.myValue = '';
+ * e.preventDefault();
+ * if (rollback) {
+ * $scope.myForm[value].$rollbackViewValue();
+ * }
+ * $scope.model[value] = '';
* }
* };
* }]);
* </file>
* <file name="index.html">
* <div ng-controller="CancelUpdateController">
- * <p>Try typing something in each input. See that the model only updates when you
- * blur off the input.
- * </p>
- * <p>Now see what happens if you start typing then press the Escape key</p>
+ * <p>Both of these inputs are only updated if they are blurred. Hitting escape should
+ * empty them. Follow these steps and observe the difference:</p>
+ * <ol>
+ * <li>Type something in the input. You will see that the model is not yet updated</li>
+ * <li>Press the Escape key.
+ * <ol>
+ * <li> In the first example, nothing happens, because the model is already '', and no
+ * update is detected. If you blur the input, the model will be set to the current view.
+ * </li>
+ * <li> In the second example, the pending update is cancelled, and the input is set back
+ * to the last committed view value (''). Blurring the input does nothing.
+ * </li>
+ * </ol>
+ * </li>
+ * </ol>
*
* <form name="myForm" ng-model-options="{ updateOn: 'blur' }">
- * <p id="inputDescription1">With $rollbackViewValue()</p>
- * <input name="myInput1" aria-describedby="inputDescription1" ng-model="myValue"
- * ng-keydown="resetWithCancel($event)"><br/>
- * myValue: "{{ myValue }}"
- *
- * <p id="inputDescription2">Without $rollbackViewValue()</p>
- * <input name="myInput2" aria-describedby="inputDescription2" ng-model="myValue"
- * ng-keydown="resetWithoutCancel($event)"><br/>
- * myValue: "{{ myValue }}"
+ * <div>
+ * <p id="inputDescription1">Without $rollbackViewValue():</p>
+ * <input name="value1" aria-describedby="inputDescription1" ng-model="model.value1"
+ * ng-keydown="setEmpty($event, 'value1')">
+ * value1: "{{ model.value1 }}"
+ * </div>
+ *
+ * <div>
+ * <p id="inputDescription2">With $rollbackViewValue():</p>
+ * <input name="value2" aria-describedby="inputDescription2" ng-model="model.value2"
+ * ng-keydown="setEmpty($event, 'value2', true)">
+ * value2: "{{ model.value2 }}"
+ * </div>
* </form>
* </div>
* </file>
+ <file name="style.css">
+ div {
+ display: table-cell;
+ }
+ div:nth-child(1) {
+ padding-right: 30px;
+ }
+
+ </file>
* </example>
*/
this.$rollbackViewValue = function() {
@@ -25251,7 +25765,7 @@ var NgModelController = ['$scope', '$exceptionHandler', '$attrs', '$element', '$
forEach(ctrl.$asyncValidators, function(validator, name) {
var promise = validator(modelValue, viewValue);
if (!isPromiseLike(promise)) {
- throw ngModelMinErr("$asyncValidators",
+ throw ngModelMinErr('nopromise',
"Expected asynchronous validator to return a promise but got '{0}' instead.", promise);
}
setValidity(name, undefined);
@@ -25547,6 +26061,22 @@ var NgModelController = ['$scope', '$exceptionHandler', '$attrs', '$element', '$
* - {@link ng.directive:select select}
* - {@link ng.directive:textarea textarea}
*
+ * # Complex Models (objects or collections)
+ *
+ * By default, `ngModel` watches the model by reference, not value. This is important to know when
+ * binding inputs to models that are objects (e.g. `Date`) or collections (e.g. arrays). If only properties of the
+ * object or collection change, `ngModel` will not be notified and so the input will not be re-rendered.
+ *
+ * The model must be assigned an entirely new object or collection before a re-rendering will occur.
+ *
+ * Some directives have options that will cause them to use a custom `$watchCollection` on the model expression
+ * - for example, `ngOptions` will do so when a `track by` clause is included in the comprehension expression or
+ * if the select is given the `multiple` attribute.
+ *
+ * The `$watchCollection()` method only does a shallow comparison, meaning that changing properties deeper than the
+ * first level of the object (or only changing the properties of an item in the collection if it's an array) will still
+ * not trigger a re-rendering of the model.
+ *
* # CSS classes
* The following CSS classes are added and removed on the associated input/select/textarea element
* depending on the validity of the model.
@@ -26522,14 +27052,20 @@ var ngOptionsDirective = ['$compile', '$parse', function($compile, $parse) {
var option = options.getOptionFromViewValue(value);
if (option && !option.disabled) {
+ // Don't update the option when it is already selected.
+ // For example, the browser will select the first option by default. In that case,
+ // most properties are set automatically - except the `selected` attribute, which we
+ // set always
+
if (selectElement[0].value !== option.selectValue) {
removeUnknownOption();
removeEmptyOption();
selectElement[0].value = option.selectValue;
option.element.selected = true;
- option.element.setAttribute('selected', 'selected');
}
+
+ option.element.setAttribute('selected', 'selected');
} else {
if (value === null || providedEmptyOption) {
removeUnknownOption();
@@ -26697,7 +27233,7 @@ var ngOptionsDirective = ['$compile', '$parse', function($compile, $parse) {
(current === emptyOption_ ||
current === unknownOption_ ||
current.nodeType === NODE_TYPE_COMMENT ||
- current.value === '')) {
+ (nodeName_(current) === 'option' && current.value === ''))) {
current = current.nextSibling;
}
}
@@ -26787,7 +27323,8 @@ var ngOptionsDirective = ['$compile', '$parse', function($compile, $parse) {
// Check to see if the value has changed due to the update to the options
if (!ngModelCtrl.$isEmpty(previousValue)) {
var nextValue = selectCtrl.readValue();
- if (ngOptions.trackBy ? !equals(previousValue, nextValue) : previousValue !== nextValue) {
+ var isNotPrimitive = ngOptions.trackBy || multiple;
+ if (isNotPrimitive ? !equals(previousValue, nextValue) : previousValue !== nextValue) {
ngModelCtrl.$setViewValue(nextValue);
ngModelCtrl.$render();
}
@@ -27559,7 +28096,7 @@ var ngRepeatDirective = ['$parse', '$animate', function($parse, $animate) {
if (getBlockStart(block) != nextNode) {
// existing item which got moved
- $animate.move(getBlockNodes(block.clone), null, jqLite(previousNode));
+ $animate.move(getBlockNodes(block.clone), null, previousNode);
}
previousNode = getBlockEnd(block);
updateScope(block.scope, index, valueIdentifier, value, keyIdentifier, key, collectionLength);
@@ -27571,8 +28108,7 @@ var ngRepeatDirective = ['$parse', '$animate', function($parse, $animate) {
var endNode = ngRepeatEndComment.cloneNode(false);
clone[clone.length++] = endNode;
- // TODO(perf): support naked previousNode in `enter` to avoid creation of jqLite wrapper?
- $animate.enter(clone, null, jqLite(previousNode));
+ $animate.enter(clone, null, previousNode);
previousNode = endNode;
// Note: We only need the first/last node of the cloned nodes.
// However, we need to keep the reference to the jqlite wrapper as it might be changed later
@@ -28382,6 +28918,9 @@ var SelectController =
// Tell the select control that an option, with the given value, has been added
self.addOption = function(value, element) {
+ // Skip comment nodes, as they only pollute the `optionsMap`
+ if (element[0].nodeType === NODE_TYPE_COMMENT) return;
+
assertNotHasOwnProperty(value, '"option value"');
if (value === '') {
self.emptyOption = element;
@@ -28456,7 +28995,7 @@ var SelectController =
*
* The `select` directive is used together with {@link ngModel `ngModel`} to provide data-binding
* between the scope and the `<select>` control (including setting default values).
- * Ìt also handles dynamic `<option>` elements, which can be added using the {@link ngRepeat `ngRepeat}` or
+ * It also handles dynamic `<option>` elements, which can be added using the {@link ngRepeat `ngRepeat}` or
* {@link ngOptions `ngOptions`} directives.
*
* When an item in the `<select>` menu is selected, the value of the selected option will be bound
@@ -28658,7 +29197,8 @@ var selectDirective = function() {
controller: SelectController,
priority: 1,
link: {
- pre: selectPreLink
+ pre: selectPreLink,
+ post: selectPostLink
}
};
@@ -28672,13 +29212,6 @@ var selectDirective = function() {
selectCtrl.ngModelCtrl = ngModelCtrl;
- // We delegate rendering to the `writeValue` method, which can be changed
- // if the select can have multiple selected values or if the options are being
- // generated by `ngOptions`
- ngModelCtrl.$render = function() {
- selectCtrl.writeValue(ngModelCtrl.$viewValue);
- };
-
// When the selected item(s) changes we delegate getting the value of the select control
// to the `readValue` method, which can be changed if the select can have multiple
// selected values or if the options are being generated by `ngOptions`
@@ -28732,6 +29265,23 @@ var selectDirective = function() {
}
}
+
+ function selectPostLink(scope, element, attrs, ctrls) {
+ // if ngModel is not defined, we don't need to do anything
+ var ngModelCtrl = ctrls[1];
+ if (!ngModelCtrl) return;
+
+ var selectCtrl = ctrls[0];
+
+ // We delegate rendering to the `writeValue` method, which can be changed
+ // if the select can have multiple selected values or if the options are being
+ // generated by `ngOptions`.
+ // This must be done in the postLink fn to prevent $render to be called before
+ // all nodes have been linked correctly.
+ ngModelCtrl.$render = function() {
+ selectCtrl.writeValue(ngModelCtrl.$viewValue);
+ };
+ }
};
@@ -28743,7 +29293,6 @@ var optionDirective = ['$interpolate', function($interpolate) {
restrict: 'E',
priority: 100,
compile: function(element, attr) {
-
if (isDefined(attr.value)) {
// If the value attribute is defined, check if it contains an interpolation
var interpolateValueFn = $interpolate(attr.value, true);
@@ -28757,7 +29306,6 @@ var optionDirective = ['$interpolate', function($interpolate) {
}
return function(scope, element, attr) {
-
// This is an optimization over using ^^ since we don't want to have to search
// all the way to the root of the DOM for every single option element
var selectCtrlName = '$selectController',
@@ -28778,6 +29326,65 @@ var styleDirective = valueFn({
terminal: false
});
+/**
+ * @ngdoc directive
+ * @name ngRequired
+ * @restrict A
+ *
+ * @description
+ *
+ * ngRequired adds the required {@link ngModel.NgModelController#$validators `validator`} to {@link ngModel `ngModel`}.
+ * It is most often used for {@link input `input`} and {@link select `select`} controls, but can also be
+ * applied to custom controls.
+ *
+ * The directive sets the `required` attribute on the element if the Angular expression inside
+ * `ngRequired` evaluates to true. A special directive for setting `required` is necessary because we
+ * cannot use interpolation inside `required`. See the {@link guide/interpolation interpolation guide}
+ * for more info.
+ *
+ * The validator will set the `required` error key to true if the `required` attribute is set and
+ * calling {@link ngModel.NgModelController#$isEmpty `NgModelController.$isEmpty`} with the
+ * {@link ngModel.NgModelController#$viewValue `ngModel.$viewValue`} returns `true`. For example, the
+ * `$isEmpty()` implementation for `input[text]` checks the length of the `$viewValue`. When developing
+ * custom controls, `$isEmpty()` can be overwritten to account for a $viewValue that is not string-based.
+ *
+ * @example
+ * <example name="ngRequiredDirective" module="ngRequiredExample">
+ * <file name="index.html">
+ * <script>
+ * angular.module('ngRequiredExample', [])
+ * .controller('ExampleController', ['$scope', function($scope) {
+ * $scope.required = true;
+ * }]);
+ * </script>
+ * <div ng-controller="ExampleController">
+ * <form name="form">
+ * <label for="required">Toggle required: </label>
+ * <input type="checkbox" ng-model="required" id="required" />
+ * <br>
+ * <label for="input">This input must be filled if `required` is true: </label>
+ * <input type="text" ng-model="model" id="input" name="input" ng-required="required" /><br>
+ * <hr>
+ * required error set? = <code>{{form.input.$error.required}}</code><br>
+ * model = <code>{{model}}</code>
+ * </form>
+ * </div>
+ * </file>
+ * <file name="protractor.js" type="protractor">
+ var required = element(by.binding('form.input.$error.required'));
+ var model = element(by.binding('model'));
+ var input = element(by.id('input'));
+
+ it('should set the required error', function() {
+ expect(required.getText()).toContain('true');
+
+ input.sendKeys('123');
+ expect(required.getText()).not.toContain('true');
+ expect(model.getText()).toContain('123');
+ });
+ * </file>
+ * </example>
+ */
var requiredDirective = function() {
return {
restrict: 'A',
@@ -28797,7 +29404,81 @@ var requiredDirective = function() {
};
};
+/**
+ * @ngdoc directive
+ * @name ngPattern
+ *
+ * @description
+ *
+ * ngPattern adds the pattern {@link ngModel.NgModelController#$validators `validator`} to {@link ngModel `ngModel`}.
+ * It is most often used for text-based {@link input `input`} controls, but can also be applied to custom text-based controls.
+ *
+ * The validator sets the `pattern` error key if the {@link ngModel.NgModelController#$viewValue `ngModel.$viewValue`}
+ * does not match a RegExp which is obtained by evaluating the Angular expression given in the
+ * `ngPattern` attribute value:
+ * * If the expression evaluates to a RegExp object, then this is used directly.
+ * * If the expression evaluates to a string, then it will be converted to a RegExp after wrapping it
+ * in `^` and `$` characters. For instance, `"abc"` will be converted to `new RegExp('^abc$')`.
+ *
+ * <div class="alert alert-info">
+ * **Note:** Avoid using the `g` flag on the RegExp, as it will cause each successive search to
+ * start at the index of the last search's match, thus not taking the whole input value into
+ * account.
+ * </div>
+ *
+ * <div class="alert alert-info">
+ * **Note:** This directive is also added when the plain `pattern` attribute is used, with two
+ * differences:
+ * <ol>
+ * <li>
+ * `ngPattern` does not set the `pattern` attribute and therefore HTML5 constraint validation is
+ * not available.
+ * </li>
+ * <li>
+ * The `ngPattern` attribute must be an expression, while the `pattern` value must be
+ * interpolated.
+ * </li>
+ * </ol>
+ * </div>
+ *
+ * @example
+ * <example name="ngPatternDirective" module="ngPatternExample">
+ * <file name="index.html">
+ * <script>
+ * angular.module('ngPatternExample', [])
+ * .controller('ExampleController', ['$scope', function($scope) {
+ * $scope.regex = '\\d+';
+ * }]);
+ * </script>
+ * <div ng-controller="ExampleController">
+ * <form name="form">
+ * <label for="regex">Set a pattern (regex string): </label>
+ * <input type="text" ng-model="regex" id="regex" />
+ * <br>
+ * <label for="input">This input is restricted by the current pattern: </label>
+ * <input type="text" ng-model="model" id="input" name="input" ng-pattern="regex" /><br>
+ * <hr>
+ * input valid? = <code>{{form.input.$valid}}</code><br>
+ * model = <code>{{model}}</code>
+ * </form>
+ * </div>
+ * </file>
+ * <file name="protractor.js" type="protractor">
+ var model = element(by.binding('model'));
+ var input = element(by.id('input'));
+ it('should validate the input with the default pattern', function() {
+ input.sendKeys('aaa');
+ expect(model.getText()).not.toContain('aaa');
+
+ input.clear().then(function() {
+ input.sendKeys('123');
+ expect(model.getText()).toContain('123');
+ });
+ });
+ * </file>
+ * </example>
+ */
var patternDirective = function() {
return {
restrict: 'A',
@@ -28829,7 +29510,72 @@ var patternDirective = function() {
};
};
+/**
+ * @ngdoc directive
+ * @name ngMaxlength
+ *
+ * @description
+ *
+ * ngMaxlength adds the maxlength {@link ngModel.NgModelController#$validators `validator`} to {@link ngModel `ngModel`}.
+ * It is most often used for text-based {@link input `input`} controls, but can also be applied to custom text-based controls.
+ *
+ * The validator sets the `maxlength` error key if the {@link ngModel.NgModelController#$viewValue `ngModel.$viewValue`}
+ * is longer than the integer obtained by evaluating the Angular expression given in the
+ * `ngMaxlength` attribute value.
+ *
+ * <div class="alert alert-info">
+ * **Note:** This directive is also added when the plain `maxlength` attribute is used, with two
+ * differences:
+ * <ol>
+ * <li>
+ * `ngMaxlength` does not set the `maxlength` attribute and therefore HTML5 constraint
+ * validation is not available.
+ * </li>
+ * <li>
+ * The `ngMaxlength` attribute must be an expression, while the `maxlength` value must be
+ * interpolated.
+ * </li>
+ * </ol>
+ * </div>
+ *
+ * @example
+ * <example name="ngMaxlengthDirective" module="ngMaxlengthExample">
+ * <file name="index.html">
+ * <script>
+ * angular.module('ngMaxlengthExample', [])
+ * .controller('ExampleController', ['$scope', function($scope) {
+ * $scope.maxlength = 5;
+ * }]);
+ * </script>
+ * <div ng-controller="ExampleController">
+ * <form name="form">
+ * <label for="maxlength">Set a maxlength: </label>
+ * <input type="number" ng-model="maxlength" id="maxlength" />
+ * <br>
+ * <label for="input">This input is restricted by the current maxlength: </label>
+ * <input type="text" ng-model="model" id="input" name="input" ng-maxlength="maxlength" /><br>
+ * <hr>
+ * input valid? = <code>{{form.input.$valid}}</code><br>
+ * model = <code>{{model}}</code>
+ * </form>
+ * </div>
+ * </file>
+ * <file name="protractor.js" type="protractor">
+ var model = element(by.binding('model'));
+ var input = element(by.id('input'));
+
+ it('should validate the input with the default maxlength', function() {
+ input.sendKeys('abcdef');
+ expect(model.getText()).not.toContain('abcdef');
+ input.clear().then(function() {
+ input.sendKeys('abcde');
+ expect(model.getText()).toContain('abcde');
+ });
+ });
+ * </file>
+ * </example>
+ */
var maxlengthDirective = function() {
return {
restrict: 'A',
@@ -28850,6 +29596,70 @@ var maxlengthDirective = function() {
};
};
+/**
+ * @ngdoc directive
+ * @name ngMinlength
+ *
+ * @description
+ *
+ * ngMinlength adds the minlength {@link ngModel.NgModelController#$validators `validator`} to {@link ngModel `ngModel`}.
+ * It is most often used for text-based {@link input `input`} controls, but can also be applied to custom text-based controls.
+ *
+ * The validator sets the `minlength` error key if the {@link ngModel.NgModelController#$viewValue `ngModel.$viewValue`}
+ * is shorter than the integer obtained by evaluating the Angular expression given in the
+ * `ngMinlength` attribute value.
+ *
+ * <div class="alert alert-info">
+ * **Note:** This directive is also added when the plain `minlength` attribute is used, with two
+ * differences:
+ * <ol>
+ * <li>
+ * `ngMinlength` does not set the `minlength` attribute and therefore HTML5 constraint
+ * validation is not available.
+ * </li>
+ * <li>
+ * The `ngMinlength` value must be an expression, while the `minlength` value must be
+ * interpolated.
+ * </li>
+ * </ol>
+ * </div>
+ *
+ * @example
+ * <example name="ngMinlengthDirective" module="ngMinlengthExample">
+ * <file name="index.html">
+ * <script>
+ * angular.module('ngMinlengthExample', [])
+ * .controller('ExampleController', ['$scope', function($scope) {
+ * $scope.minlength = 3;
+ * }]);
+ * </script>
+ * <div ng-controller="ExampleController">
+ * <form name="form">
+ * <label for="minlength">Set a minlength: </label>
+ * <input type="number" ng-model="minlength" id="minlength" />
+ * <br>
+ * <label for="input">This input is restricted by the current minlength: </label>
+ * <input type="text" ng-model="model" id="input" name="input" ng-minlength="minlength" /><br>
+ * <hr>
+ * input valid? = <code>{{form.input.$valid}}</code><br>
+ * model = <code>{{model}}</code>
+ * </form>
+ * </div>
+ * </file>
+ * <file name="protractor.js" type="protractor">
+ var model = element(by.binding('model'));
+ var input = element(by.id('input'));
+
+ it('should validate the input with the default minlength', function() {
+ input.sendKeys('ab');
+ expect(model.getText()).not.toContain('ab');
+
+ input.sendKeys('abc');
+ expect(model.getText()).toContain('abc');
+ });
+ * </file>
+ * </example>
+ */
var minlengthDirective = function() {
return {
restrict: 'A',
@@ -28871,7 +29681,9 @@ var minlengthDirective = function() {
if (window.angular.bootstrap) {
//AngularJS is already loaded, so we can return here...
- console.log('WARNING: Tried to load angular more than once.');
+ if (window.console) {
+ console.log('WARNING: Tried to load angular more than once.');
+ }
return;
}
@@ -28962,6 +29774,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -29005,6 +29831,7 @@ $provide.value("$locale", {
]
},
"id": "en-us",
+ "localeID": "en_US",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular.min.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular.min.js
new file mode 100644
index 00000000..8121d375
--- /dev/null
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular.min.js
@@ -0,0 +1,301 @@
+/*
+ AngularJS v1.4.13
+ (c) 2010-2015 Google, Inc. http://angularjs.org
+ License: MIT
+*/
+(function(R,U,u){'use strict';function A(a){return function(){var b=arguments[0],d;d="["+(a?a+":":"")+b+"] http://errors.angularjs.org/1.4.13/"+(a?a+"/":"")+b;for(b=1;b<arguments.length;b++){d=d+(1==b?"?":"&")+"p"+(b-1)+"=";var c=encodeURIComponent,e;e=arguments[b];e="function"==typeof e?e.toString().replace(/ \{[\s\S]*$/,""):"undefined"==typeof e?"undefined":"string"!=typeof e?JSON.stringify(e):e;d+=c(e)}return Error(d)}}function Aa(a){if(null==a||Ya(a))return!1;if(L(a)||I(a)||D&&a instanceof D)return!0;
+var b="length"in Object(a)&&a.length;return P(b)&&(0<=b&&(b-1 in a||a instanceof Array)||"function"==typeof a.item)}function p(a,b,d){var c,e;if(a)if(H(a))for(c in a)"prototype"==c||"length"==c||"name"==c||a.hasOwnProperty&&!a.hasOwnProperty(c)||b.call(d,a[c],c,a);else if(L(a)||Aa(a)){var f="object"!==typeof a;c=0;for(e=a.length;c<e;c++)(f||c in a)&&b.call(d,a[c],c,a)}else if(a.forEach&&a.forEach!==p)a.forEach(b,d,a);else if(nc(a))for(c in a)b.call(d,a[c],c,a);else if("function"===typeof a.hasOwnProperty)for(c in a)a.hasOwnProperty(c)&&
+b.call(d,a[c],c,a);else for(c in a)sa.call(a,c)&&b.call(d,a[c],c,a);return a}function oc(a,b,d){for(var c=Object.keys(a).sort(),e=0;e<c.length;e++)b.call(d,a[c[e]],c[e]);return c}function pc(a){return function(b,d){a(d,b)}}function Xd(){return++mb}function Mb(a,b,d){for(var c=a.$$hashKey,e=0,f=b.length;e<f;++e){var g=b[e];if(K(g)||H(g))for(var h=Object.keys(g),k=0,m=h.length;k<m;k++){var l=h[k],n=g[l];d&&K(n)?ea(n)?a[l]=new Date(n.valueOf()):La(n)?a[l]=new RegExp(n):n.nodeName?a[l]=n.cloneNode(!0):
+Nb(n)?a[l]=n.clone():(K(a[l])||(a[l]=L(n)?[]:{}),Mb(a[l],[n],!0)):a[l]=n}}c?a.$$hashKey=c:delete a.$$hashKey;return a}function N(a){return Mb(a,ta.call(arguments,1),!1)}function Yd(a){return Mb(a,ta.call(arguments,1),!0)}function ca(a){return parseInt(a,10)}function Ob(a,b){return N(Object.create(a),b)}function v(){}function Za(a){return a}function ma(a){return function(){return a}}function qc(a){return H(a.toString)&&a.toString!==na}function r(a){return"undefined"===typeof a}function w(a){return"undefined"!==
+typeof a}function K(a){return null!==a&&"object"===typeof a}function nc(a){return null!==a&&"object"===typeof a&&!rc(a)}function I(a){return"string"===typeof a}function P(a){return"number"===typeof a}function ea(a){return"[object Date]"===na.call(a)}function H(a){return"function"===typeof a}function La(a){return"[object RegExp]"===na.call(a)}function Ya(a){return a&&a.window===a}function $a(a){return a&&a.$evalAsync&&a.$watch}function Ma(a){return"boolean"===typeof a}function sc(a){return a&&P(a.length)&&
+Zd.test(na.call(a))}function Nb(a){return!(!a||!(a.nodeName||a.prop&&a.attr&&a.find))}function $d(a){var b={};a=a.split(",");var d;for(d=0;d<a.length;d++)b[a[d]]=!0;return b}function oa(a){return M(a.nodeName||a[0]&&a[0].nodeName)}function ab(a,b){var d=a.indexOf(b);0<=d&&a.splice(d,1);return d}function Na(a,b){function d(a,b){var d=b.$$hashKey,e;if(L(a)){e=0;for(var f=a.length;e<f;e++)b.push(c(a[e]))}else if(nc(a))for(e in a)b[e]=c(a[e]);else if(a&&"function"===typeof a.hasOwnProperty)for(e in a)a.hasOwnProperty(e)&&
+(b[e]=c(a[e]));else for(e in a)sa.call(a,e)&&(b[e]=c(a[e]));d?b.$$hashKey=d:delete b.$$hashKey;return b}function c(a){if(!K(a))return a;var b=e.indexOf(a);if(-1!==b)return f[b];if(Ya(a)||$a(a))throw Ba("cpws");var b=!1,c;L(a)?(c=[],b=!0):sc(a)?c=new a.constructor(a):ea(a)?c=new Date(a.getTime()):La(a)?(c=new RegExp(a.source,a.toString().match(/[^\/]*$/)[0]),c.lastIndex=a.lastIndex):"[object Blob]"===na.call(a)?c=new a.constructor([a],{type:a.type}):H(a.cloneNode)?c=a.cloneNode(!0):(c=Object.create(rc(a)),
+b=!0);e.push(a);f.push(c);return b?d(a,c):c}var e=[],f=[];if(b){if(sc(b))throw Ba("cpta");if(a===b)throw Ba("cpi");L(b)?b.length=0:p(b,function(a,c){"$$hashKey"!==c&&delete b[c]});e.push(a);f.push(b);return d(a,b)}return c(a)}function fa(a,b){if(L(a)){b=b||[];for(var d=0,c=a.length;d<c;d++)b[d]=a[d]}else if(K(a))for(d in b=b||{},a)if("$"!==d.charAt(0)||"$"!==d.charAt(1))b[d]=a[d];return b||a}function la(a,b){if(a===b)return!0;if(null===a||null===b)return!1;if(a!==a&&b!==b)return!0;var d=typeof a,
+c;if(d==typeof b&&"object"==d)if(L(a)){if(!L(b))return!1;if((d=a.length)==b.length){for(c=0;c<d;c++)if(!la(a[c],b[c]))return!1;return!0}}else{if(ea(a))return ea(b)?la(a.getTime(),b.getTime()):!1;if(La(a))return La(b)?a.toString()==b.toString():!1;if($a(a)||$a(b)||Ya(a)||Ya(b)||L(b)||ea(b)||La(b))return!1;d=Z();for(c in a)if("$"!==c.charAt(0)&&!H(a[c])){if(!la(a[c],b[c]))return!1;d[c]=!0}for(c in b)if(!(c in d)&&"$"!==c.charAt(0)&&w(b[c])&&!H(b[c]))return!1;return!0}return!1}function bb(a,b,d){return a.concat(ta.call(b,
+d))}function tc(a,b){var d=2<arguments.length?ta.call(arguments,2):[];return!H(b)||b instanceof RegExp?b:d.length?function(){return arguments.length?b.apply(a,bb(d,arguments,0)):b.apply(a,d)}:function(){return arguments.length?b.apply(a,arguments):b.call(a)}}function ae(a,b){var d=b;"string"===typeof a&&"$"===a.charAt(0)&&"$"===a.charAt(1)?d=u:Ya(b)?d="$WINDOW":b&&U===b?d="$DOCUMENT":$a(b)&&(d="$SCOPE");return d}function cb(a,b){if(r(a))return u;P(b)||(b=b?2:null);return JSON.stringify(a,ae,b)}function uc(a){return I(a)?
+JSON.parse(a):a}function vc(a,b){a=a.replace(be,"");var d=Date.parse("Jan 01, 1970 00:00:00 "+a)/6E4;return isNaN(d)?b:d}function Pb(a,b,d){d=d?-1:1;var c=a.getTimezoneOffset();b=vc(b,c);d*=b-c;a=new Date(a.getTime());a.setMinutes(a.getMinutes()+d);return a}function ua(a){a=D(a).clone();try{a.empty()}catch(b){}var d=D("<div>").append(a).html();try{return a[0].nodeType===Oa?M(d):d.match(/^(<[^>]+>)/)[1].replace(/^<([\w\-]+)/,function(a,b){return"<"+M(b)})}catch(c){return M(d)}}function wc(a){try{return decodeURIComponent(a)}catch(b){}}
+function xc(a){var b={};p((a||"").split("&"),function(a){var c,e,f;a&&(e=a=a.replace(/\+/g,"%20"),c=a.indexOf("="),-1!==c&&(e=a.substring(0,c),f=a.substring(c+1)),e=wc(e),w(e)&&(f=w(f)?wc(f):!0,sa.call(b,e)?L(b[e])?b[e].push(f):b[e]=[b[e],f]:b[e]=f))});return b}function Qb(a){var b=[];p(a,function(a,c){L(a)?p(a,function(a){b.push(ha(c,!0)+(!0===a?"":"="+ha(a,!0)))}):b.push(ha(c,!0)+(!0===a?"":"="+ha(a,!0)))});return b.length?b.join("&"):""}function nb(a){return ha(a,!0).replace(/%26/gi,"&").replace(/%3D/gi,
+"=").replace(/%2B/gi,"+")}function ha(a,b){return encodeURIComponent(a).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%3B/gi,";").replace(/%20/g,b?"%20":"+")}function ce(a,b){var d,c,e=Pa.length;for(c=0;c<e;++c)if(d=Pa[c]+b,I(d=a.getAttribute(d)))return d;return null}function de(a,b){var d,c,e={};p(Pa,function(b){b+="app";!d&&a.hasAttribute&&a.hasAttribute(b)&&(d=a,c=a.getAttribute(b))});p(Pa,function(b){b+="app";var e;!d&&(e=a.querySelector("["+b.replace(":",
+"\\:")+"]"))&&(d=e,c=e.getAttribute(b))});d&&(e.strictDi=null!==ce(d,"strict-di"),b(d,c?[c]:[],e))}function yc(a,b,d){K(d)||(d={});d=N({strictDi:!1},d);var c=function(){a=D(a);if(a.injector()){var c=a[0]===U?"document":ua(a);throw Ba("btstrpd",c.replace(/</,"&lt;").replace(/>/,"&gt;"));}b=b||[];b.unshift(["$provide",function(b){b.value("$rootElement",a)}]);d.debugInfoEnabled&&b.push(["$compileProvider",function(a){a.debugInfoEnabled(!0)}]);b.unshift("ng");c=db(b,d.strictDi);c.invoke(["$rootScope",
+"$rootElement","$compile","$injector",function(a,b,c,d){a.$apply(function(){b.data("$injector",d);c(b)(a)})}]);return c},e=/^NG_ENABLE_DEBUG_INFO!/,f=/^NG_DEFER_BOOTSTRAP!/;R&&e.test(R.name)&&(d.debugInfoEnabled=!0,R.name=R.name.replace(e,""));if(R&&!f.test(R.name))return c();R.name=R.name.replace(f,"");da.resumeBootstrap=function(a){p(a,function(a){b.push(a)});return c()};H(da.resumeDeferredBootstrap)&&da.resumeDeferredBootstrap()}function ee(){R.name="NG_ENABLE_DEBUG_INFO!"+R.name;R.location.reload()}
+function fe(a){a=da.element(a).injector();if(!a)throw Ba("test");return a.get("$$testability")}function zc(a,b){b=b||"_";return a.replace(ge,function(a,c){return(c?b:"")+a.toLowerCase()})}function he(){var a;if(!Ac){var b=ob();(pa=r(b)?R.jQuery:b?R[b]:u)&&pa.fn.on?(D=pa,N(pa.fn,{scope:Qa.scope,isolateScope:Qa.isolateScope,controller:Qa.controller,injector:Qa.injector,inheritedData:Qa.inheritedData}),a=pa.cleanData,pa.cleanData=function(b){var c;if(Rb)Rb=!1;else for(var e=0,f;null!=(f=b[e]);e++)(c=
+pa._data(f,"events"))&&c.$destroy&&pa(f).triggerHandler("$destroy");a(b)}):D=S;da.element=D;Ac=!0}}function pb(a,b,d){if(!a)throw Ba("areq",b||"?",d||"required");return a}function Ra(a,b,d){d&&L(a)&&(a=a[a.length-1]);pb(H(a),b,"not a function, got "+(a&&"object"===typeof a?a.constructor.name||"Object":typeof a));return a}function Sa(a,b){if("hasOwnProperty"===a)throw Ba("badname",b);}function Bc(a,b,d){if(!b)return a;b=b.split(".");for(var c,e=a,f=b.length,g=0;g<f;g++)c=b[g],a&&(a=(e=a)[c]);return!d&&
+H(a)?tc(e,a):a}function qb(a){for(var b=a[0],d=a[a.length-1],c,e=1;b!==d&&(b=b.nextSibling);e++)if(c||a[e]!==b)c||(c=D(ta.call(a,0,e))),c.push(b);return c||a}function Z(){return Object.create(null)}function ie(a){function b(a,b,c){return a[b]||(a[b]=c())}var d=A("$injector"),c=A("ng");a=b(a,"angular",Object);a.$$minErr=a.$$minErr||A;return b(a,"module",function(){var a={};return function(f,g,h){if("hasOwnProperty"===f)throw c("badname","module");g&&a.hasOwnProperty(f)&&(a[f]=null);return b(a,f,function(){function a(b,
+d,e,f){f||(f=c);return function(){f[e||"push"]([b,d,arguments]);return t}}function b(a,d){return function(b,e){e&&H(e)&&(e.$$moduleName=f);c.push([a,d,arguments]);return t}}if(!g)throw d("nomod",f);var c=[],e=[],G=[],z=a("$injector","invoke","push",e),t={_invokeQueue:c,_configBlocks:e,_runBlocks:G,requires:g,name:f,provider:b("$provide","provider"),factory:b("$provide","factory"),service:b("$provide","service"),value:a("$provide","value"),constant:a("$provide","constant","unshift"),decorator:b("$provide",
+"decorator"),animation:b("$animateProvider","register"),filter:b("$filterProvider","register"),controller:b("$controllerProvider","register"),directive:b("$compileProvider","directive"),config:z,run:function(a){G.push(a);return this}};h&&z(h);return t})}})}function je(a){N(a,{bootstrap:yc,copy:Na,extend:N,merge:Yd,equals:la,element:D,forEach:p,injector:db,noop:v,bind:tc,toJson:cb,fromJson:uc,identity:Za,isUndefined:r,isDefined:w,isString:I,isFunction:H,isObject:K,isNumber:P,isElement:Nb,isArray:L,
+version:ke,isDate:ea,lowercase:M,uppercase:rb,callbacks:{counter:0},getTestability:fe,$$minErr:A,$$csp:Ca,reloadWithDebugInfo:ee});Sb=ie(R);Sb("ng",["ngLocale"],["$provide",function(a){a.provider({$$sanitizeUri:le});a.provider("$compile",Cc).directive({a:me,input:Dc,textarea:Dc,form:ne,script:oe,select:pe,style:qe,option:re,ngBind:se,ngBindHtml:te,ngBindTemplate:ue,ngClass:ve,ngClassEven:we,ngClassOdd:xe,ngCloak:ye,ngController:ze,ngForm:Ae,ngHide:Be,ngIf:Ce,ngInclude:De,ngInit:Ee,ngNonBindable:Fe,
+ngPluralize:Ge,ngRepeat:He,ngShow:Ie,ngStyle:Je,ngSwitch:Ke,ngSwitchWhen:Le,ngSwitchDefault:Me,ngOptions:Ne,ngTransclude:Oe,ngModel:Pe,ngList:Qe,ngChange:Re,pattern:Ec,ngPattern:Ec,required:Fc,ngRequired:Fc,minlength:Gc,ngMinlength:Gc,maxlength:Hc,ngMaxlength:Hc,ngValue:Se,ngModelOptions:Te}).directive({ngInclude:Ue}).directive(sb).directive(Ic);a.provider({$anchorScroll:Ve,$animate:We,$animateCss:Xe,$$animateJs:Ye,$$animateQueue:Ze,$$AnimateRunner:$e,$$animateAsyncRun:af,$browser:bf,$cacheFactory:cf,
+$controller:df,$document:ef,$exceptionHandler:ff,$filter:Jc,$$forceReflow:gf,$interpolate:hf,$interval:jf,$http:kf,$httpParamSerializer:lf,$httpParamSerializerJQLike:mf,$httpBackend:nf,$xhrFactory:of,$location:pf,$log:qf,$parse:rf,$rootScope:sf,$q:tf,$$q:uf,$sce:vf,$sceDelegate:wf,$sniffer:xf,$templateCache:yf,$templateRequest:zf,$$testability:Af,$timeout:Bf,$window:Cf,$$rAF:Df,$$jqLite:Ef,$$HashMap:Ff,$$cookieReader:Gf})}])}function eb(a){return a.replace(Hf,function(a,d,c,e){return e?c.toUpperCase():
+c}).replace(If,"Moz$1")}function Kc(a){a=a.nodeType;return 1===a||!a||9===a}function Lc(a,b){var d,c,e=b.createDocumentFragment(),f=[];if(Tb.test(a)){d=d||e.appendChild(b.createElement("div"));c=(Jf.exec(a)||["",""])[1].toLowerCase();c=ja[c]||ja._default;d.innerHTML=c[1]+a.replace(Kf,"<$1></$2>")+c[2];for(c=c[0];c--;)d=d.lastChild;f=bb(f,d.childNodes);d=e.firstChild;d.textContent=""}else f.push(b.createTextNode(a));e.textContent="";e.innerHTML="";p(f,function(a){e.appendChild(a)});return e}function Mc(a,
+b){var d=a.parentNode;d&&d.replaceChild(b,a);b.appendChild(a)}function S(a){if(a instanceof S)return a;var b;I(a)&&(a=T(a),b=!0);if(!(this instanceof S)){if(b&&"<"!=a.charAt(0))throw Ub("nosel");return new S(a)}if(b){b=U;var d;a=(d=Lf.exec(a))?[b.createElement(d[1])]:(d=Lc(a,b))?d.childNodes:[]}Nc(this,a)}function Vb(a){return a.cloneNode(!0)}function tb(a,b){b||ub(a);if(a.querySelectorAll)for(var d=a.querySelectorAll("*"),c=0,e=d.length;c<e;c++)ub(d[c])}function Oc(a,b,d,c){if(w(c))throw Ub("offargs");
+var e=(c=vb(a))&&c.events,f=c&&c.handle;if(f)if(b){var g=function(b){var c=e[b];w(d)&&ab(c||[],d);w(d)&&c&&0<c.length||(a.removeEventListener(b,f,!1),delete e[b])};p(b.split(" "),function(a){g(a);wb[a]&&g(wb[a])})}else for(b in e)"$destroy"!==b&&a.removeEventListener(b,f,!1),delete e[b]}function ub(a,b){var d=a.ng339,c=d&&fb[d];c&&(b?delete c.data[b]:(c.handle&&(c.events.$destroy&&c.handle({},"$destroy"),Oc(a)),delete fb[d],a.ng339=u))}function vb(a,b){var d=a.ng339,d=d&&fb[d];b&&!d&&(a.ng339=d=++Mf,
+d=fb[d]={events:{},data:{},handle:u});return d}function Wb(a,b,d){if(Kc(a)){var c=w(d),e=!c&&b&&!K(b),f=!b;a=(a=vb(a,!e))&&a.data;if(c)a[b]=d;else{if(f)return a;if(e)return a&&a[b];N(a,b)}}}function xb(a,b){return a.getAttribute?-1<(" "+(a.getAttribute("class")||"")+" ").replace(/[\n\t]/g," ").indexOf(" "+b+" "):!1}function yb(a,b){b&&a.setAttribute&&p(b.split(" "),function(b){a.setAttribute("class",T((" "+(a.getAttribute("class")||"")+" ").replace(/[\n\t]/g," ").replace(" "+T(b)+" "," ")))})}function zb(a,
+b){if(b&&a.setAttribute){var d=(" "+(a.getAttribute("class")||"")+" ").replace(/[\n\t]/g," ");p(b.split(" "),function(a){a=T(a);-1===d.indexOf(" "+a+" ")&&(d+=a+" ")});a.setAttribute("class",T(d))}}function Nc(a,b){if(b)if(b.nodeType)a[a.length++]=b;else{var d=b.length;if("number"===typeof d&&b.window!==b){if(d)for(var c=0;c<d;c++)a[a.length++]=b[c]}else a[a.length++]=b}}function Pc(a,b){return Ab(a,"$"+(b||"ngController")+"Controller")}function Ab(a,b,d){9==a.nodeType&&(a=a.documentElement);for(b=
+L(b)?b:[b];a;){for(var c=0,e=b.length;c<e;c++)if(w(d=D.data(a,b[c])))return d;a=a.parentNode||11===a.nodeType&&a.host}}function Qc(a){for(tb(a,!0);a.firstChild;)a.removeChild(a.firstChild)}function Xb(a,b){b||tb(a);var d=a.parentNode;d&&d.removeChild(a)}function Nf(a,b){b=b||R;if("complete"===b.document.readyState)b.setTimeout(a);else D(b).on("load",a)}function Rc(a,b){var d=Bb[b.toLowerCase()];return d&&Sc[oa(a)]&&d}function Of(a,b){var d=function(c,d){c.isDefaultPrevented=function(){return c.defaultPrevented};
+var f=b[d||c.type],g=f?f.length:0;if(g){if(r(c.immediatePropagationStopped)){var h=c.stopImmediatePropagation;c.stopImmediatePropagation=function(){c.immediatePropagationStopped=!0;c.stopPropagation&&c.stopPropagation();h&&h.call(c)}}c.isImmediatePropagationStopped=function(){return!0===c.immediatePropagationStopped};var k=f.specialHandlerWrapper||Pf;1<g&&(f=fa(f));for(var m=0;m<g;m++)c.isImmediatePropagationStopped()||k(a,c,f[m])}};d.elem=a;return d}function Pf(a,b,d){d.call(a,b)}function Qf(a,b,
+d){var c=b.relatedTarget;c&&(c===a||Rf.call(a,c))||d.call(a,b)}function Ef(){this.$get=function(){return N(S,{hasClass:function(a,b){a.attr&&(a=a[0]);return xb(a,b)},addClass:function(a,b){a.attr&&(a=a[0]);return zb(a,b)},removeClass:function(a,b){a.attr&&(a=a[0]);return yb(a,b)}})}}function Da(a,b){var d=a&&a.$$hashKey;if(d)return"function"===typeof d&&(d=a.$$hashKey()),d;d=typeof a;return d="function"==d||"object"==d&&null!==a?a.$$hashKey=d+":"+(b||Xd)():d+":"+a}function Ta(a,b){if(b){var d=0;this.nextUid=
+function(){return++d}}p(a,this.put,this)}function Sf(a){return(a=a.toString().replace(Tc,"").match(Uc))?"function("+(a[1]||"").replace(/[\s\r\n]+/," ")+")":"fn"}function db(a,b){function d(a){return function(b,c){if(K(b))p(b,pc(a));else return a(b,c)}}function c(a,b){Sa(a,"service");if(H(b)||L(b))b=G.instantiate(b);if(!b.$get)throw Ea("pget",a);return n[a+"Provider"]=b}function e(a,b){return function(){var c=t.invoke(b,this);if(r(c))throw Ea("undef",a);return c}}function f(a,b,d){return c(a,{$get:!1!==
+d?e(a,b):b})}function g(a){pb(r(a)||L(a),"modulesToLoad","not an array");var b=[],c;p(a,function(a){function d(a){var b,c;b=0;for(c=a.length;b<c;b++){var e=a[b],f=G.get(e[0]);f[e[1]].apply(f,e[2])}}if(!l.get(a)){l.put(a,!0);try{I(a)?(c=Sb(a),b=b.concat(g(c.requires)).concat(c._runBlocks),d(c._invokeQueue),d(c._configBlocks)):H(a)?b.push(G.invoke(a)):L(a)?b.push(G.invoke(a)):Ra(a,"module")}catch(e){throw L(a)&&(a=a[a.length-1]),e.message&&e.stack&&-1==e.stack.indexOf(e.message)&&(e=e.message+"\n"+
+e.stack),Ea("modulerr",a,e.stack||e.message||e);}}});return b}function h(a,c){function d(b,e){if(a.hasOwnProperty(b)){if(a[b]===k)throw Ea("cdep",b+" <- "+m.join(" <- "));return a[b]}try{return m.unshift(b),a[b]=k,a[b]=c(b,e)}catch(f){throw a[b]===k&&delete a[b],f;}finally{m.shift()}}function e(a,c,f,g){"string"===typeof f&&(g=f,f=null);var k=[],h=db.$$annotate(a,b,g),m,l,q;l=0;for(m=h.length;l<m;l++){q=h[l];if("string"!==typeof q)throw Ea("itkn",q);k.push(f&&f.hasOwnProperty(q)?f[q]:d(q,g))}L(a)&&
+(a=a[m]);return a.apply(c,k)}return{invoke:e,instantiate:function(a,b,c){var d=Object.create((L(a)?a[a.length-1]:a).prototype||null);a=e(a,d,b,c);return K(a)||H(a)?a:d},get:d,annotate:db.$$annotate,has:function(b){return n.hasOwnProperty(b+"Provider")||a.hasOwnProperty(b)}}}b=!0===b;var k={},m=[],l=new Ta([],!0),n={$provide:{provider:d(c),factory:d(f),service:d(function(a,b){return f(a,["$injector",function(a){return a.instantiate(b)}])}),value:d(function(a,b){return f(a,ma(b),!1)}),constant:d(function(a,
+b){Sa(a,"constant");n[a]=b;z[a]=b}),decorator:function(a,b){var c=G.get(a+"Provider"),d=c.$get;c.$get=function(){var a=t.invoke(d,c);return t.invoke(b,null,{$delegate:a})}}}},G=n.$injector=h(n,function(a,b){da.isString(b)&&m.push(b);throw Ea("unpr",m.join(" <- "));}),z={},t=z.$injector=h(z,function(a,b){var c=G.get(a+"Provider",b);return t.invoke(c.$get,c,u,a)});p(g(a),function(a){a&&t.invoke(a)});return t}function Ve(){var a=!0;this.disableAutoScrolling=function(){a=!1};this.$get=["$window","$location",
+"$rootScope",function(b,d,c){function e(a){var b=null;Array.prototype.some.call(a,function(a){if("a"===oa(a))return b=a,!0});return b}function f(a){if(a){a.scrollIntoView();var c;c=g.yOffset;H(c)?c=c():Nb(c)?(c=c[0],c="fixed"!==b.getComputedStyle(c).position?0:c.getBoundingClientRect().bottom):P(c)||(c=0);c&&(a=a.getBoundingClientRect().top,b.scrollBy(0,a-c))}else b.scrollTo(0,0)}function g(a){a=I(a)?a:d.hash();var b;a?(b=h.getElementById(a))?f(b):(b=e(h.getElementsByName(a)))?f(b):"top"===a&&f(null):
+f(null)}var h=b.document;a&&c.$watch(function(){return d.hash()},function(a,b){a===b&&""===a||Nf(function(){c.$evalAsync(g)})});return g}]}function gb(a,b){if(!a&&!b)return"";if(!a)return b;if(!b)return a;L(a)&&(a=a.join(" "));L(b)&&(b=b.join(" "));return a+" "+b}function Tf(a){I(a)&&(a=a.split(" "));var b=Z();p(a,function(a){a.length&&(b[a]=!0)});return b}function Fa(a){return K(a)?a:{}}function Uf(a,b,d,c){function e(a){try{a.apply(null,ta.call(arguments,1))}finally{if(t--,0===t)for(;F.length;)try{F.pop()()}catch(b){d.error(b)}}}
+function f(){E=null;g();h()}function g(){a:{try{q=l.state;break a}catch(a){}q=void 0}q=r(q)?null:q;la(q,C)&&(q=C);C=q}function h(){if(x!==k.url()||y!==q)x=k.url(),y=q,p(Q,function(a){a(k.url(),q)})}var k=this,m=a.location,l=a.history,n=a.setTimeout,G=a.clearTimeout,z={};k.isMock=!1;var t=0,F=[];k.$$completeOutstandingRequest=e;k.$$incOutstandingRequestCount=function(){t++};k.notifyWhenNoOutstandingRequests=function(a){0===t?a():F.push(a)};var q,y,x=m.href,V=b.find("base"),E=null;g();y=q;k.url=function(b,
+d,e){r(e)&&(e=null);m!==a.location&&(m=a.location);l!==a.history&&(l=a.history);if(b){var f=y===e;if(x===b&&(!c.history||f))return k;var h=x&&Ga(x)===Ga(b);x=b;y=e;if(!c.history||h&&f){if(!h||E)E=b;d?m.replace(b):h?(d=m,e=b.indexOf("#"),e=-1===e?"":b.substr(e),d.hash=e):m.href=b;m.href!==b&&(E=b)}else l[d?"replaceState":"pushState"](e,"",b),g(),y=q;return k}return E||m.href.replace(/%27/g,"'")};k.state=function(){return q};var Q=[],B=!1,C=null;k.onUrlChange=function(b){if(!B){if(c.history)D(a).on("popstate",
+f);D(a).on("hashchange",f);B=!0}Q.push(b);return b};k.$$applicationDestroyed=function(){D(a).off("hashchange popstate",f)};k.$$checkUrlChange=h;k.baseHref=function(){var a=V.attr("href");return a?a.replace(/^(https?\:)?\/\/[^\/]*/,""):""};k.defer=function(a,b){var c;t++;c=n(function(){delete z[c];e(a)},b||0);z[c]=!0;return c};k.defer.cancel=function(a){return z[a]?(delete z[a],G(a),e(v),!0):!1}}function bf(){this.$get=["$window","$log","$sniffer","$document",function(a,b,d,c){return new Uf(a,c,b,
+d)}]}function cf(){this.$get=function(){function a(a,c){function e(a){a!=n&&(G?G==a&&(G=a.n):G=a,f(a.n,a.p),f(a,n),n=a,n.n=null)}function f(a,b){a!=b&&(a&&(a.p=b),b&&(b.n=a))}if(a in b)throw A("$cacheFactory")("iid",a);var g=0,h=N({},c,{id:a}),k=Z(),m=c&&c.capacity||Number.MAX_VALUE,l=Z(),n=null,G=null;return b[a]={put:function(a,b){if(!r(b)){if(m<Number.MAX_VALUE){var c=l[a]||(l[a]={key:a});e(c)}a in k||g++;k[a]=b;g>m&&this.remove(G.key);return b}},get:function(a){if(m<Number.MAX_VALUE){var b=l[a];
+if(!b)return;e(b)}return k[a]},remove:function(a){if(m<Number.MAX_VALUE){var b=l[a];if(!b)return;b==n&&(n=b.p);b==G&&(G=b.n);f(b.n,b.p);delete l[a]}a in k&&(delete k[a],g--)},removeAll:function(){k=Z();g=0;l=Z();n=G=null},destroy:function(){l=h=k=null;delete b[a]},info:function(){return N({},h,{size:g})}}}var b={};a.info=function(){var a={};p(b,function(b,e){a[e]=b.info()});return a};a.get=function(a){return b[a]};return a}}function yf(){this.$get=["$cacheFactory",function(a){return a("templates")}]}
+function Cc(a,b){function d(a,b,c){var d=/^\s*([@&]|=(\*?))(\??)\s*(\w*)\s*$/,e=Z();p(a,function(a,f){if(a in l)e[f]=l[a];else{var g=a.match(d);if(!g)throw ga("iscp",b,f,a,c?"controller bindings definition":"isolate scope definition");e[f]={mode:g[1][0],collection:"*"===g[2],optional:"?"===g[3],attrName:g[4]||f};g[4]&&(l[a]=e[f])}});return e}function c(a){var b=a.charAt(0);if(!b||b!==M(b))throw ga("baddir",a);if(a!==a.trim())throw ga("baddir",a);}var e={},f=/^\s*directive\:\s*([\w\-]+)\s+(.*)$/,g=
+/(([\w\-]+)(?:\:([^;]+))?;?)/,h=$d("ngSrc,ngSrcset,src,srcset"),k=/^(?:(\^\^?)?(\?)?(\^\^?)?)?/,m=/^(on[a-z]+|formaction)$/,l=Z();this.directive=function z(b,d){Sa(b,"directive");I(b)?(c(b),pb(d,"directiveFactory"),e.hasOwnProperty(b)||(e[b]=[],a.factory(b+"Directive",["$injector","$exceptionHandler",function(a,c){var d=[];p(e[b],function(e,f){try{var g=a.invoke(e);H(g)?g={compile:ma(g)}:!g.compile&&g.link&&(g.compile=ma(g.link));g.priority=g.priority||0;g.index=f;g.name=g.name||b;g.require=g.require||
+g.controller&&g.name;g.restrict=g.restrict||"EA";g.$$moduleName=e.$$moduleName;d.push(g)}catch(h){c(h)}});return d}])),e[b].push(d)):p(b,pc(z));return this};this.aHrefSanitizationWhitelist=function(a){return w(a)?(b.aHrefSanitizationWhitelist(a),this):b.aHrefSanitizationWhitelist()};this.imgSrcSanitizationWhitelist=function(a){return w(a)?(b.imgSrcSanitizationWhitelist(a),this):b.imgSrcSanitizationWhitelist()};var n=!0;this.debugInfoEnabled=function(a){return w(a)?(n=a,this):n};this.$get=["$injector",
+"$interpolate","$exceptionHandler","$templateRequest","$parse","$controller","$rootScope","$sce","$animate","$$sanitizeUri",function(a,b,c,l,y,x,V,E,Q,B){function C(a,b){try{a.addClass(b)}catch(c){}}function J(a,b,c,d,e){a instanceof D||(a=D(a));for(var f=/\S+/,g=0,h=a.length;g<h;g++){var k=a[g];k.nodeType===Oa&&k.nodeValue.match(f)&&Mc(k,a[g]=U.createElement("span"))}var m=W(a,b,a,c,d,e);J.$$addScopeClass(a);var l=null;return function(b,c,d){pb(b,"scope");e&&e.needsNewScope&&(b=b.$parent.$new());
+d=d||{};var f=d.parentBoundTranscludeFn,g=d.transcludeControllers;d=d.futureParentElement;f&&f.$$boundTransclude&&(f=f.$$boundTransclude);l||(l=(d=d&&d[0])?"foreignobject"!==oa(d)&&d.toString().match(/SVG/)?"svg":"html":"html");d="html"!==l?D(Yb(l,D("<div>").append(a).html())):c?Qa.clone.call(a):a;if(g)for(var h in g)d.data("$"+h+"Controller",g[h].instance);J.$$addScopeInfo(d,b);c&&c(d,b);m&&m(b,d,d,f);return d}}function W(a,b,c,d,e,f){function g(a,c,d,e){var f,k,m,l,n,B,F;if(q)for(F=Array(c.length),
+l=0;l<h.length;l+=3)f=h[l],F[f]=c[f];else F=c;l=0;for(n=h.length;l<n;)k=F[h[l++]],c=h[l++],f=h[l++],c?(c.scope?(m=a.$new(),J.$$addScopeInfo(D(k),m)):m=a,B=c.transcludeOnThisElement?O(a,c.transclude,e):!c.templateOnThisElement&&e?e:!e&&b?O(a,b):null,c(f,m,k,d,B)):f&&f(a,k.childNodes,u,e)}for(var h=[],k,m,l,n,q,B=0;B<a.length;B++){k=new da;m=ia(a[B],[],k,0===B?d:u,e);(f=m.length?$(m,a[B],k,b,c,null,[],[],f):null)&&f.scope&&J.$$addScopeClass(k.$$element);k=f&&f.terminal||!(l=a[B].childNodes)||!l.length?
+null:W(l,f?(f.transcludeOnThisElement||!f.templateOnThisElement)&&f.transclude:b);if(f||k)h.push(B,f,k),n=!0,q=q||f;f=null}return n?g:null}function O(a,b,c){return function(d,e,f,g,h){d||(d=a.$new(!1,h),d.$$transcluded=!0);return b(d,e,{parentBoundTranscludeFn:c,transcludeControllers:f,futureParentElement:g})}}function ia(a,b,c,d,e){var h=c.$attr,k;switch(a.nodeType){case 1:qa(b,va(oa(a)),"E",d,e);for(var m,l,n,q=a.attributes,B=0,F=q&&q.length;B<F;B++){var x=!1,J=!1;m=q[B];k=m.name;l=T(m.value);m=
+va(k);if(n=ja.test(m))k=k.replace(Wc,"").substr(8).replace(/_(.)/g,function(a,b){return b.toUpperCase()});(m=m.match(ka))&&A(m[1])&&(x=k,J=k.substr(0,k.length-5)+"end",k=k.substr(0,k.length-6));m=va(k.toLowerCase());h[m]=k;if(n||!c.hasOwnProperty(m))c[m]=l,Rc(a,m)&&(c[m]=!0);X(a,b,l,m,n);qa(b,m,"A",d,e,x,J)}a=a.className;K(a)&&(a=a.animVal);if(I(a)&&""!==a)for(;k=g.exec(a);)m=va(k[2]),qa(b,m,"C",d,e)&&(c[m]=T(k[3])),a=a.substr(k.index+k[0].length);break;case Oa:if(11===Ha)for(;a.parentNode&&a.nextSibling&&
+a.nextSibling.nodeType===Oa;)a.nodeValue+=a.nextSibling.nodeValue,a.parentNode.removeChild(a.nextSibling);P(b,a.nodeValue);break;case 8:try{if(k=f.exec(a.nodeValue))m=va(k[1]),qa(b,m,"M",d,e)&&(c[m]=T(k[2]))}catch(y){}}b.sort(wa);return b}function Ua(a,b,c){var d=[],e=0;if(b&&a.hasAttribute&&a.hasAttribute(b)){do{if(!a)throw ga("uterdir",b,c);1==a.nodeType&&(a.hasAttribute(b)&&e++,a.hasAttribute(c)&&e--);d.push(a);a=a.nextSibling}while(0<e)}else d.push(a);return D(d)}function s(a,b,c){return function(d,
+e,f,g,k){e=Ua(e[0],b,c);return a(d,e,f,g,k)}}function $(a,b,d,e,f,g,h,m,l){function n(a,b,c,d){if(a){c&&(a=s(a,c,d));a.require=r.require;a.directiveName=w;if(C===r||r.$$isolateScope)a=ba(a,{isolateScope:!0});h.push(a)}if(b){c&&(b=s(b,c,d));b.require=r.require;b.directiveName=w;if(C===r||r.$$isolateScope)b=ba(b,{isolateScope:!0});m.push(b)}}function q(a,b,c,d){var e;if(I(b)){var f=b.match(k);b=b.substring(f[0].length);var g=f[1]||f[3],f="?"===f[2];"^^"===g?c=c.parent():e=(e=d&&d[b])&&e.instance;e||
+(d="$"+b+"Controller",e=g?c.inheritedData(d):c.data(d));if(!e&&!f)throw ga("ctreq",b,a);}else if(L(b))for(e=[],g=0,f=b.length;g<f;g++)e[g]=q(a,b[g],c,d);return e||null}function B(a,b,c,d,e,f){var g=Z(),k;for(k in d){var h=d[k],m={$scope:h===C||h.$$isolateScope?e:f,$element:a,$attrs:b,$transclude:c},l=h.controller;"@"==l&&(l=b[h.name]);m=x(l,m,!0,h.controllerAs);g[h.name]=m;a.data("$"+h.name+"Controller",m.instance)}return g}function y(a,c,e,f,g){function k(a,b,c){var d;$a(a)||(c=b,b=a,a=u);Q&&(d=
+x);c||(c=Q?E.parent():E);return g(a,b,d,c,Ua)}var l,n,F,x,O,E,ia;b===e?(f=d,E=d.$$element):(E=D(e),f=new da(E,d));F=c;C?n=c.$new(!0):t&&(F=c.$parent);g&&(O=k,O.$$boundTransclude=g);z&&(x=B(E,f,O,z,n,c));C&&(J.$$addScopeInfo(E,n,!0,!(W&&(W===C||W===C.$$originalDirective))),J.$$addScopeClass(E,!0),n.$$isolateBindings=C.$$isolateBindings,(ia=aa(c,f,n,n.$$isolateBindings,C))&&n.$on("$destroy",ia));for(var Vc in x){ia=z[Vc];var V=x[Vc],p=ia.$$bindings.bindToController;V.identifier&&p&&(l=aa(F,f,V.instance,
+p,ia));var r=V();r!==V.instance&&(V.instance=r,E.data("$"+ia.name+"Controller",r),l&&l(),l=aa(F,f,V.instance,p,ia))}A=0;for(M=h.length;A<M;A++)l=h[A],ca(l,l.isolateScope?n:c,E,f,l.require&&q(l.directiveName,l.require,E,x),O);var Ua=c;C&&(C.template||null===C.templateUrl)&&(Ua=n);a&&a(Ua,e.childNodes,u,g);for(A=m.length-1;0<=A;A--)l=m[A],ca(l,l.isolateScope?n:c,E,f,l.require&&q(l.directiveName,l.require,E,x),O)}l=l||{};for(var O=-Number.MAX_VALUE,t=l.newScopeDirective,z=l.controllerDirectives,C=l.newIsolateScopeDirective,
+W=l.templateDirective,E=l.nonTlbTranscludeDirective,V=!1,p=!1,Q=l.hasElementTranscludeDirective,$=d.$$element=D(b),r,w,v,qa=e,wa,A=0,M=a.length;A<M;A++){r=a[A];var N=r.$$start,P=r.$$end;N&&($=Ua(b,N,P));v=u;if(O>r.priority)break;if(v=r.scope)r.templateUrl||(K(v)?(Va("new/isolated scope",C||t,r,$),C=r):Va("new/isolated scope",C,r,$)),t=t||r;w=r.name;!r.templateUrl&&r.controller&&(v=r.controller,z=z||Z(),Va("'"+w+"' controller",z[w],r,$),z[w]=r);if(v=r.transclude)V=!0,r.$$tlb||(Va("transclusion",E,
+r,$),E=r),"element"==v?(Q=!0,O=r.priority,v=$,$=d.$$element=D(U.createComment(" "+w+": "+d[w]+" ")),b=$[0],Y(f,ta.call(v,0),b),qa=J(v,e,O,g&&g.name,{nonTlbTranscludeDirective:E})):(v=D(Vb(b)).contents(),$.empty(),qa=J(v,e,u,u,{needsNewScope:r.$$isolateScope||r.$$newScope}));if(r.template)if(p=!0,Va("template",W,r,$),W=r,v=H(r.template)?r.template($,d):r.template,v=ha(v),r.replace){g=r;v=Tb.test(v)?Xc(Yb(r.templateNamespace,T(v))):[];b=v[0];if(1!=v.length||1!==b.nodeType)throw ga("tplrt",w,"");Y(f,
+$,b);v={$attr:{}};var S=ia(b,[],v),Vf=a.splice(A+1,a.length-(A+1));(C||t)&&Yc(S,C,t);a=a.concat(S).concat(Vf);R(d,v);M=a.length}else $.html(v);if(r.templateUrl)p=!0,Va("template",W,r,$),W=r,r.replace&&(g=r),y=Wf(a.splice(A,a.length-A),$,d,f,V&&qa,h,m,{controllerDirectives:z,newScopeDirective:t!==r&&t,newIsolateScopeDirective:C,templateDirective:W,nonTlbTranscludeDirective:E}),M=a.length;else if(r.compile)try{wa=r.compile($,d,qa),H(wa)?n(null,wa,N,P):wa&&n(wa.pre,wa.post,N,P)}catch(X){c(X,ua($))}r.terminal&&
+(y.terminal=!0,O=Math.max(O,r.priority))}y.scope=t&&!0===t.scope;y.transcludeOnThisElement=V;y.templateOnThisElement=p;y.transclude=qa;l.hasElementTranscludeDirective=Q;return y}function Yc(a,b,c){for(var d=0,e=a.length;d<e;d++)a[d]=Ob(a[d],{$$isolateScope:b,$$newScope:c})}function qa(b,f,g,h,k,m,l){if(f===k)return null;k=null;if(e.hasOwnProperty(f)){var n;f=a.get(f+"Directive");for(var q=0,B=f.length;q<B;q++)try{if(n=f[q],(r(h)||h>n.priority)&&-1!=n.restrict.indexOf(g)){m&&(n=Ob(n,{$$start:m,$$end:l}));
+if(!n.$$bindings){var x=n,J=n,y=n.name,O={isolateScope:null,bindToController:null};K(J.scope)&&(!0===J.bindToController?(O.bindToController=d(J.scope,y,!0),O.isolateScope={}):O.isolateScope=d(J.scope,y,!1));K(J.bindToController)&&(O.bindToController=d(J.bindToController,y,!0));if(K(O.bindToController)){var t=J.controller,C=J.controllerAs;if(!t)throw ga("noctrl",y);var E;a:{var J=t,W=C;if(W&&I(W))E=W;else{if(I(J)){var ia=Zc.exec(J);if(ia){E=ia[3];break a}}E=void 0}}if(!E)throw ga("noident",y);}var V=
+x.$$bindings=O;K(V.isolateScope)&&(n.$$isolateBindings=V.isolateScope)}b.push(n);k=n}}catch(p){c(p)}}return k}function A(b){if(e.hasOwnProperty(b))for(var c=a.get(b+"Directive"),d=0,f=c.length;d<f;d++)if(b=c[d],b.multiElement)return!0;return!1}function R(a,b){var c=b.$attr,d=a.$attr,e=a.$$element;p(a,function(d,e){"$"!=e.charAt(0)&&(b[e]&&b[e]!==d&&(d+=("style"===e?";":" ")+b[e]),a.$set(e,d,!0,c[e]))});p(b,function(b,f){"class"==f?(C(e,b),a["class"]=(a["class"]?a["class"]+" ":"")+b):"style"==f?(e.attr("style",
+e.attr("style")+";"+b),a.style=(a.style?a.style+";":"")+b):"$"==f.charAt(0)||a.hasOwnProperty(f)||(a[f]=b,d[f]=c[f])})}function Wf(a,b,c,d,e,f,g,k){var h=[],m,n,B=b[0],F=a.shift(),x=Ob(F,{templateUrl:null,transclude:null,replace:null,$$originalDirective:F}),J=H(F.templateUrl)?F.templateUrl(b,c):F.templateUrl,y=F.templateNamespace;b.empty();l(J).then(function(l){var q,t;l=ha(l);if(F.replace){l=Tb.test(l)?Xc(Yb(y,T(l))):[];q=l[0];if(1!=l.length||1!==q.nodeType)throw ga("tplrt",F.name,J);l={$attr:{}};
+Y(d,b,q);var z=ia(q,[],l);K(F.scope)&&Yc(z,!0);a=z.concat(a);R(c,l)}else q=B,b.html(l);a.unshift(x);m=$(a,q,c,e,b,F,f,g,k);p(d,function(a,c){a==q&&(d[c]=b[0])});for(n=W(b[0].childNodes,e);h.length;){l=h.shift();t=h.shift();var E=h.shift(),V=h.shift(),z=b[0];if(!l.$$destroyed){if(t!==B){var Q=t.className;k.hasElementTranscludeDirective&&F.replace||(z=Vb(q));Y(E,D(t),z);C(D(z),Q)}t=m.transcludeOnThisElement?O(l,m.transclude,V):V;m(n,l,z,d,t)}}h=null});return function(a,b,c,d,e){a=e;b.$$destroyed||(h?
+h.push(b,c,d,a):(m.transcludeOnThisElement&&(a=O(b,m.transclude,e)),m(n,b,c,d,a)))}}function wa(a,b){var c=b.priority-a.priority;return 0!==c?c:a.name!==b.name?a.name<b.name?-1:1:a.index-b.index}function Va(a,b,c,d){function e(a){return a?" (module: "+a+")":""}if(b)throw ga("multidir",b.name,e(b.$$moduleName),c.name,e(c.$$moduleName),a,ua(d));}function P(a,c){var d=b(c,!0);d&&a.push({priority:0,compile:function(a){a=a.parent();var b=!!a.length;b&&J.$$addBindingClass(a);return function(a,c){var e=
+c.parent();b||J.$$addBindingClass(e);J.$$addBindingInfo(e,d.expressions);a.$watch(d,function(a){c[0].nodeValue=a})}}})}function Yb(a,b){a=M(a||"html");switch(a){case "svg":case "math":var c=U.createElement("div");c.innerHTML="<"+a+">"+b+"</"+a+">";return c.childNodes[0].childNodes;default:return b}}function S(a,b){if("srcdoc"==b)return E.HTML;var c=oa(a);if("xlinkHref"==b||"form"==c&&"action"==b||"img"!=c&&("src"==b||"ngSrc"==b))return E.RESOURCE_URL}function X(a,c,d,e,f){var g=S(a,e);f=h[e]||f;var k=
+b(d,!0,g,f);if(k){if("multiple"===e&&"select"===oa(a))throw ga("selmulti",ua(a));c.push({priority:100,compile:function(){return{pre:function(a,c,h){c=h.$$observers||(h.$$observers=Z());if(m.test(e))throw ga("nodomevents");var l=h[e];l!==d&&(k=l&&b(l,!0,g,f),d=l);k&&(h[e]=k(a),(c[e]||(c[e]=[])).$$inter=!0,(h.$$observers&&h.$$observers[e].$$scope||a).$watch(k,function(a,b){"class"===e&&a!=b?h.$updateClass(a,b):h.$set(e,a)}))}}}})}}function Y(a,b,c){var d=b[0],e=b.length,f=d.parentNode,g,h;if(a)for(g=
+0,h=a.length;g<h;g++)if(a[g]==d){a[g++]=c;h=g+e-1;for(var k=a.length;g<k;g++,h++)h<k?a[g]=a[h]:delete a[g];a.length-=e-1;a.context===d&&(a.context=c);break}f&&f.replaceChild(c,d);a=U.createDocumentFragment();a.appendChild(d);D.hasData(d)&&(D.data(c,D.data(d)),pa?(Rb=!0,pa.cleanData([d])):delete D.cache[d[D.expando]]);d=1;for(e=b.length;d<e;d++)f=b[d],D(f).remove(),a.appendChild(f),delete b[d];b[0]=c;b.length=1}function ba(a,b){return N(function(){return a.apply(null,arguments)},a,b)}function ca(a,
+b,d,e,f,g){try{a(b,d,e,f,g)}catch(h){c(h,ua(d))}}function aa(a,c,d,e,f){var g=[];p(e,function(e,h){var k=e.attrName,m=e.optional,l,n,q,B;switch(e.mode){case "@":m||sa.call(c,k)||(d[h]=c[k]=void 0);c.$observe(k,function(a){I(a)&&(d[h]=a)});c.$$observers[k].$$scope=a;l=c[k];I(l)?d[h]=b(l)(a):Ma(l)&&(d[h]=l);break;case "=":if(!sa.call(c,k)){if(m)break;c[k]=void 0}if(m&&!c[k])break;n=y(c[k]);B=n.literal?la:function(a,b){return a===b||a!==a&&b!==b};q=n.assign||function(){l=d[h]=n(a);throw ga("nonassign",
+c[k],k,f.name);};l=d[h]=n(a);m=function(b){B(b,d[h])||(B(b,l)?q(a,b=d[h]):d[h]=b);return l=b};m.$stateful=!0;m=e.collection?a.$watchCollection(c[k],m):a.$watch(y(c[k],m),null,n.literal);g.push(m);break;case "&":n=c.hasOwnProperty(k)?y(c[k]):v;if(n===v&&m)break;d[h]=function(b){return n(a,b)}}});return g.length&&function(){for(var a=0,b=g.length;a<b;++a)g[a]()}}var da=function(a,b){if(b){var c=Object.keys(b),d,e,f;d=0;for(e=c.length;d<e;d++)f=c[d],this[f]=b[f]}else this.$attr={};this.$$element=a};
+da.prototype={$normalize:va,$addClass:function(a){a&&0<a.length&&Q.addClass(this.$$element,a)},$removeClass:function(a){a&&0<a.length&&Q.removeClass(this.$$element,a)},$updateClass:function(a,b){var c=$c(a,b);c&&c.length&&Q.addClass(this.$$element,c);(c=$c(b,a))&&c.length&&Q.removeClass(this.$$element,c)},$set:function(a,b,d,e){var f=Rc(this.$$element[0],a),g=ad[a],h=a;f?(this.$$element.prop(a,b),e=f):g&&(this[g]=b,h=g);this[a]=b;e?this.$attr[a]=e:(e=this.$attr[a])||(this.$attr[a]=e=zc(a,"-"));f=
+oa(this.$$element);if("a"===f&&"href"===a||"img"===f&&"src"===a)this[a]=b=B(b,"src"===a);else if("img"===f&&"srcset"===a&&w(b)){for(var f="",g=T(b),k=/(\s+\d+x\s*,|\s+\d+w\s*,|\s+,|,\s+)/,k=/\s/.test(g)?k:/(,)/,g=g.split(k),k=Math.floor(g.length/2),m=0;m<k;m++)var l=2*m,f=f+B(T(g[l]),!0),f=f+(" "+T(g[l+1]));g=T(g[2*m]).split(/\s/);f+=B(T(g[0]),!0);2===g.length&&(f+=" "+T(g[1]));this[a]=b=f}!1!==d&&(null===b||r(b)?this.$$element.removeAttr(e):this.$$element.attr(e,b));(a=this.$$observers)&&p(a[h],
+function(a){try{a(b)}catch(d){c(d)}})},$observe:function(a,b){var c=this,d=c.$$observers||(c.$$observers=Z()),e=d[a]||(d[a]=[]);e.push(b);V.$evalAsync(function(){e.$$inter||!c.hasOwnProperty(a)||r(c[a])||b(c[a])});return function(){ab(e,b)}}};var ea=b.startSymbol(),fa=b.endSymbol(),ha="{{"==ea&&"}}"==fa?Za:function(a){return a.replace(/\{\{/g,ea).replace(/}}/g,fa)},ja=/^ngAttr[A-Z]/,ka=/^(.+)Start$/;J.$$addBindingInfo=n?function(a,b){var c=a.data("$binding")||[];L(b)?c=c.concat(b):c.push(b);a.data("$binding",
+c)}:v;J.$$addBindingClass=n?function(a){C(a,"ng-binding")}:v;J.$$addScopeInfo=n?function(a,b,c,d){a.data(c?d?"$isolateScopeNoTemplate":"$isolateScope":"$scope",b)}:v;J.$$addScopeClass=n?function(a,b){C(a,b?"ng-isolate-scope":"ng-scope")}:v;return J}]}function va(a){return eb(a.replace(Wc,""))}function $c(a,b){var d="",c=a.split(/\s+/),e=b.split(/\s+/),f=0;a:for(;f<c.length;f++){for(var g=c[f],h=0;h<e.length;h++)if(g==e[h])continue a;d+=(0<d.length?" ":"")+g}return d}function Xc(a){a=D(a);var b=a.length;
+if(1>=b)return a;for(;b--;)8===a[b].nodeType&&Xf.call(a,b,1);return a}function df(){var a={},b=!1;this.register=function(b,c){Sa(b,"controller");K(b)?N(a,b):a[b]=c};this.allowGlobals=function(){b=!0};this.$get=["$injector","$window",function(d,c){function e(a,b,c,d){if(!a||!K(a.$scope))throw A("$controller")("noscp",d,b);a.$scope[b]=c}return function(f,g,h,k){var m,l,n;h=!0===h;k&&I(k)&&(n=k);if(I(f)){k=f.match(Zc);if(!k)throw Yf("ctrlfmt",f);l=k[1];n=n||k[3];f=a.hasOwnProperty(l)?a[l]:Bc(g.$scope,
+l,!0)||(b?Bc(c,l,!0):u);Ra(f,l,!0)}if(h)return h=(L(f)?f[f.length-1]:f).prototype,m=Object.create(h||null),n&&e(g,n,m,l||f.name),N(function(){var a=d.invoke(f,m,g,l);a!==m&&(K(a)||H(a))&&(m=a,n&&e(g,n,m,l||f.name));return m},{instance:m,identifier:n});m=d.instantiate(f,g,l);n&&e(g,n,m,l||f.name);return m}}]}function ef(){this.$get=["$window",function(a){return D(a.document)}]}function ff(){this.$get=["$log",function(a){return function(b,d){a.error.apply(a,arguments)}}]}function Zb(a){return K(a)?
+ea(a)?a.toISOString():cb(a):a}function lf(){this.$get=function(){return function(a){if(!a)return"";var b=[];oc(a,function(a,c){null===a||r(a)||(L(a)?p(a,function(a,d){b.push(ha(c)+"="+ha(Zb(a)))}):b.push(ha(c)+"="+ha(Zb(a))))});return b.join("&")}}}function mf(){this.$get=function(){return function(a){function b(a,e,f){null===a||r(a)||(L(a)?p(a,function(a,c){b(a,e+"["+(K(a)?c:"")+"]")}):K(a)&&!ea(a)?oc(a,function(a,c){b(a,e+(f?"":"[")+c+(f?"":"]"))}):d.push(ha(e)+"="+ha(Zb(a))))}if(!a)return"";var d=
+[];b(a,"",!0);return d.join("&")}}}function $b(a,b){if(I(a)){var d=a.replace(Zf,"").trim();if(d){var c=b("Content-Type");(c=c&&0===c.indexOf(bd))||(c=(c=d.match($f))&&ag[c[0]].test(d));c&&(a=uc(d))}}return a}function cd(a){var b=Z(),d;I(a)?p(a.split("\n"),function(a){d=a.indexOf(":");var e=M(T(a.substr(0,d)));a=T(a.substr(d+1));e&&(b[e]=b[e]?b[e]+", "+a:a)}):K(a)&&p(a,function(a,d){var f=M(d),g=T(a);f&&(b[f]=b[f]?b[f]+", "+g:g)});return b}function dd(a){var b;return function(d){b||(b=cd(a));return d?
+(d=b[M(d)],void 0===d&&(d=null),d):b}}function ed(a,b,d,c){if(H(c))return c(a,b,d);p(c,function(c){a=c(a,b,d)});return a}function kf(){var a=this.defaults={transformResponse:[$b],transformRequest:[function(a){return K(a)&&"[object File]"!==na.call(a)&&"[object Blob]"!==na.call(a)&&"[object FormData]"!==na.call(a)?cb(a):a}],headers:{common:{Accept:"application/json, text/plain, */*"},post:fa(ac),put:fa(ac),patch:fa(ac)},xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",paramSerializer:"$httpParamSerializer"},
+b=!1;this.useApplyAsync=function(a){return w(a)?(b=!!a,this):b};var d=!0;this.useLegacyPromiseExtensions=function(a){return w(a)?(d=!!a,this):d};var c=this.interceptors=[];this.$get=["$httpBackend","$$cookieReader","$cacheFactory","$rootScope","$q","$injector",function(e,f,g,h,k,m){function l(b){function c(a){var b=N({},a);b.data=ed(a.data,a.headers,a.status,f.transformResponse);a=a.status;return 200<=a&&300>a?b:k.reject(b)}function e(a,b){var c,d={};p(a,function(a,e){H(a)?(c=a(b),null!=c&&(d[e]=
+c)):d[e]=a});return d}if(!da.isObject(b))throw A("$http")("badreq",b);if(!I(b.url))throw A("$http")("badreq",b.url);var f=N({method:"get",transformRequest:a.transformRequest,transformResponse:a.transformResponse,paramSerializer:a.paramSerializer},b);f.headers=function(b){var c=a.headers,d=N({},b.headers),f,g,h,c=N({},c.common,c[M(b.method)]);a:for(f in c){g=M(f);for(h in d)if(M(h)===g)continue a;d[f]=c[f]}return e(d,fa(b))}(b);f.method=rb(f.method);f.paramSerializer=I(f.paramSerializer)?m.get(f.paramSerializer):
+f.paramSerializer;var g=[function(b){var d=b.headers,e=ed(b.data,dd(d),u,b.transformRequest);r(e)&&p(d,function(a,b){"content-type"===M(b)&&delete d[b]});r(b.withCredentials)&&!r(a.withCredentials)&&(b.withCredentials=a.withCredentials);return n(b,e).then(c,c)},u],h=k.when(f);for(p(t,function(a){(a.request||a.requestError)&&g.unshift(a.request,a.requestError);(a.response||a.responseError)&&g.push(a.response,a.responseError)});g.length;){b=g.shift();var l=g.shift(),h=h.then(b,l)}d?(h.success=function(a){Ra(a,
+"fn");h.then(function(b){a(b.data,b.status,b.headers,f)});return h},h.error=function(a){Ra(a,"fn");h.then(null,function(b){a(b.data,b.status,b.headers,f)});return h}):(h.success=fd("success"),h.error=fd("error"));return h}function n(c,d){function g(a,c,d,e){function f(){m(c,a,d,e)}C&&(200<=a&&300>a?C.put(O,[a,c,cd(d),e]):C.remove(O));b?h.$applyAsync(f):(f(),h.$$phase||h.$apply())}function m(a,b,d,e){b=-1<=b?b:0;(200<=b&&300>b?p.resolve:p.reject)({data:a,status:b,headers:dd(d),config:c,statusText:e})}
+function n(a){m(a.data,a.status,fa(a.headers()),a.statusText)}function t(){var a=l.pendingRequests.indexOf(c);-1!==a&&l.pendingRequests.splice(a,1)}var p=k.defer(),B=p.promise,C,J,W=c.headers,O=G(c.url,c.paramSerializer(c.params));l.pendingRequests.push(c);B.then(t,t);!c.cache&&!a.cache||!1===c.cache||"GET"!==c.method&&"JSONP"!==c.method||(C=K(c.cache)?c.cache:K(a.cache)?a.cache:z);C&&(J=C.get(O),w(J)?J&&H(J.then)?J.then(n,n):L(J)?m(J[1],J[0],fa(J[2]),J[3]):m(J,200,{},"OK"):C.put(O,B));r(J)&&((J=
+gd(c.url)?f()[c.xsrfCookieName||a.xsrfCookieName]:u)&&(W[c.xsrfHeaderName||a.xsrfHeaderName]=J),e(c.method,O,d,g,W,c.timeout,c.withCredentials,c.responseType));return B}function G(a,b){0<b.length&&(a+=(-1==a.indexOf("?")?"?":"&")+b);return a}var z=g("$http");a.paramSerializer=I(a.paramSerializer)?m.get(a.paramSerializer):a.paramSerializer;var t=[];p(c,function(a){t.unshift(I(a)?m.get(a):m.invoke(a))});l.pendingRequests=[];(function(a){p(arguments,function(a){l[a]=function(b,c){return l(N({},c||{},
+{method:a,url:b}))}})})("get","delete","head","jsonp");(function(a){p(arguments,function(a){l[a]=function(b,c,d){return l(N({},d||{},{method:a,url:b,data:c}))}})})("post","put","patch");l.defaults=a;return l}]}function of(){this.$get=function(){return function(){return new R.XMLHttpRequest}}}function nf(){this.$get=["$browser","$window","$document","$xhrFactory",function(a,b,d,c){return bg(a,c,a.defer,b.angular.callbacks,d[0])}]}function bg(a,b,d,c,e){function f(a,b,d){var f=e.createElement("script"),
+l=null;f.type="text/javascript";f.src=a;f.async=!0;l=function(a){f.removeEventListener("load",l,!1);f.removeEventListener("error",l,!1);e.body.removeChild(f);f=null;var g=-1,z="unknown";a&&("load"!==a.type||c[b].called||(a={type:"error"}),z=a.type,g="error"===a.type?404:200);d&&d(g,z)};f.addEventListener("load",l,!1);f.addEventListener("error",l,!1);e.body.appendChild(f);return l}return function(e,h,k,m,l,n,G,z){function t(){y&&y();x&&x.abort()}function F(b,c,e,f,g){w(E)&&d.cancel(E);y=x=null;b(c,
+e,f,g);a.$$completeOutstandingRequest(v)}a.$$incOutstandingRequestCount();h=h||a.url();if("jsonp"==M(e)){var q="_"+(c.counter++).toString(36);c[q]=function(a){c[q].data=a;c[q].called=!0};var y=f(h.replace("JSON_CALLBACK","angular.callbacks."+q),q,function(a,b){F(m,a,c[q].data,"",b);c[q]=v})}else{var x=b(e,h);x.open(e,h,!0);p(l,function(a,b){w(a)&&x.setRequestHeader(b,a)});x.onload=function(){var a=x.statusText||"",b="response"in x?x.response:x.responseText,c=1223===x.status?204:x.status;0===c&&(c=
+b?200:"file"==xa(h).protocol?404:0);F(m,c,b,x.getAllResponseHeaders(),a)};e=function(){F(m,-1,null,null,"")};x.onerror=e;x.onabort=e;G&&(x.withCredentials=!0);if(z)try{x.responseType=z}catch(V){if("json"!==z)throw V;}x.send(r(k)?null:k)}if(0<n)var E=d(t,n);else n&&H(n.then)&&n.then(t)}}function hf(){var a="{{",b="}}";this.startSymbol=function(b){return b?(a=b,this):a};this.endSymbol=function(a){return a?(b=a,this):b};this.$get=["$parse","$exceptionHandler","$sce",function(d,c,e){function f(a){return"\\\\\\"+
+a}function g(c){return c.replace(l,a).replace(n,b)}function h(f,h,l,n){function q(a){try{var b=a;a=l?e.getTrusted(l,b):e.valueOf(b);var d;if(n&&!w(a))d=a;else if(null==a)d="";else{switch(typeof a){case "string":break;case "number":a=""+a;break;default:a=cb(a)}d=a}return d}catch(g){c(Ia.interr(f,g))}}n=!!n;for(var y,x,p=0,E=[],Q=[],B=f.length,C=[],J=[];p<B;)if(-1!=(y=f.indexOf(a,p))&&-1!=(x=f.indexOf(b,y+k)))p!==y&&C.push(g(f.substring(p,y))),p=f.substring(y+k,x),E.push(p),Q.push(d(p,q)),p=x+m,J.push(C.length),
+C.push("");else{p!==B&&C.push(g(f.substring(p)));break}l&&1<C.length&&Ia.throwNoconcat(f);if(!h||E.length){var W=function(a){for(var b=0,c=E.length;b<c;b++){if(n&&r(a[b]))return;C[J[b]]=a[b]}return C.join("")};return N(function(a){var b=0,d=E.length,e=Array(d);try{for(;b<d;b++)e[b]=Q[b](a);return W(e)}catch(g){c(Ia.interr(f,g))}},{exp:f,expressions:E,$$watchDelegate:function(a,b){var c;return a.$watchGroup(Q,function(d,e){var f=W(d);H(b)&&b.call(this,f,d!==e?c:f,a);c=f})}})}}var k=a.length,m=b.length,
+l=new RegExp(a.replace(/./g,f),"g"),n=new RegExp(b.replace(/./g,f),"g");h.startSymbol=function(){return a};h.endSymbol=function(){return b};return h}]}function jf(){this.$get=["$rootScope","$window","$q","$$q",function(a,b,d,c){function e(e,h,k,m){var l=4<arguments.length,n=l?ta.call(arguments,4):[],G=b.setInterval,z=b.clearInterval,t=0,F=w(m)&&!m,q=(F?c:d).defer(),y=q.promise;k=w(k)?k:0;y.then(null,null,l?function(){e.apply(null,n)}:e);y.$$intervalId=G(function(){q.notify(t++);0<k&&t>=k&&(q.resolve(t),
+z(y.$$intervalId),delete f[y.$$intervalId]);F||a.$apply()},h);f[y.$$intervalId]=q;return y}var f={};e.cancel=function(a){return a&&a.$$intervalId in f?(f[a.$$intervalId].reject("canceled"),b.clearInterval(a.$$intervalId),delete f[a.$$intervalId],!0):!1};return e}]}function bc(a){a=a.split("/");for(var b=a.length;b--;)a[b]=nb(a[b]);return a.join("/")}function hd(a,b){var d=xa(a);b.$$protocol=d.protocol;b.$$host=d.hostname;b.$$port=ca(d.port)||cg[d.protocol]||null}function id(a,b){var d="/"!==a.charAt(0);
+d&&(a="/"+a);var c=xa(a);b.$$path=decodeURIComponent(d&&"/"===c.pathname.charAt(0)?c.pathname.substring(1):c.pathname);b.$$search=xc(c.search);b.$$hash=decodeURIComponent(c.hash);b.$$path&&"/"!=b.$$path.charAt(0)&&(b.$$path="/"+b.$$path)}function ra(a,b){if(0===b.indexOf(a))return b.substr(a.length)}function Ga(a){var b=a.indexOf("#");return-1==b?a:a.substr(0,b)}function hb(a){return a.replace(/(#.+)|#$/,"$1")}function cc(a,b,d){this.$$html5=!0;d=d||"";hd(a,this);this.$$parse=function(a){var d=ra(b,
+a);if(!I(d))throw Cb("ipthprfx",a,b);id(d,this);this.$$path||(this.$$path="/");this.$$compose()};this.$$compose=function(){var a=Qb(this.$$search),d=this.$$hash?"#"+nb(this.$$hash):"";this.$$url=bc(this.$$path)+(a?"?"+a:"")+d;this.$$absUrl=b+this.$$url.substr(1)};this.$$parseLinkUrl=function(c,e){if(e&&"#"===e[0])return this.hash(e.slice(1)),!0;var f,g;w(f=ra(a,c))?(g=f,g=w(f=ra(d,f))?b+(ra("/",f)||f):a+g):w(f=ra(b,c))?g=b+f:b==c+"/"&&(g=b);g&&this.$$parse(g);return!!g}}function dc(a,b,d){hd(a,this);
+this.$$parse=function(c){var e=ra(a,c)||ra(b,c),f;r(e)||"#"!==e.charAt(0)?this.$$html5?f=e:(f="",r(e)&&(a=c,this.replace())):(f=ra(d,e),r(f)&&(f=e));id(f,this);c=this.$$path;var e=a,g=/^\/[A-Z]:(\/.*)/;0===f.indexOf(e)&&(f=f.replace(e,""));g.exec(f)||(c=(f=g.exec(c))?f[1]:c);this.$$path=c;this.$$compose()};this.$$compose=function(){var b=Qb(this.$$search),e=this.$$hash?"#"+nb(this.$$hash):"";this.$$url=bc(this.$$path)+(b?"?"+b:"")+e;this.$$absUrl=a+(this.$$url?d+this.$$url:"")};this.$$parseLinkUrl=
+function(b,d){return Ga(a)==Ga(b)?(this.$$parse(b),!0):!1}}function jd(a,b,d){this.$$html5=!0;dc.apply(this,arguments);this.$$parseLinkUrl=function(c,e){if(e&&"#"===e[0])return this.hash(e.slice(1)),!0;var f,g;a==Ga(c)?f=c:(g=ra(b,c))?f=a+d+g:b===c+"/"&&(f=b);f&&this.$$parse(f);return!!f};this.$$compose=function(){var b=Qb(this.$$search),e=this.$$hash?"#"+nb(this.$$hash):"";this.$$url=bc(this.$$path)+(b?"?"+b:"")+e;this.$$absUrl=a+d+this.$$url}}function Db(a){return function(){return this[a]}}function kd(a,
+b){return function(d){if(r(d))return this[a];this[a]=b(d);this.$$compose();return this}}function pf(){var a="",b={enabled:!1,requireBase:!0,rewriteLinks:!0};this.hashPrefix=function(b){return w(b)?(a=b,this):a};this.html5Mode=function(a){return Ma(a)?(b.enabled=a,this):K(a)?(Ma(a.enabled)&&(b.enabled=a.enabled),Ma(a.requireBase)&&(b.requireBase=a.requireBase),Ma(a.rewriteLinks)&&(b.rewriteLinks=a.rewriteLinks),this):b};this.$get=["$rootScope","$browser","$sniffer","$rootElement","$window",function(d,
+c,e,f,g){function h(a,b,d){var e=m.url(),f=m.$$state;try{c.url(a,b,d),m.$$state=c.state()}catch(g){throw m.url(e),m.$$state=f,g;}}function k(a,b){d.$broadcast("$locationChangeSuccess",m.absUrl(),a,m.$$state,b)}var m,l;l=c.baseHref();var n=c.url(),G;if(b.enabled){if(!l&&b.requireBase)throw Cb("nobase");G=n.substring(0,n.indexOf("/",n.indexOf("//")+2))+(l||"/");l=e.history?cc:jd}else G=Ga(n),l=dc;var z=G.substr(0,Ga(G).lastIndexOf("/")+1);m=new l(G,z,"#"+a);m.$$parseLinkUrl(n,n);m.$$state=c.state();
+var t=/^\s*(javascript|mailto):/i;f.on("click",function(a){if(b.rewriteLinks&&!a.ctrlKey&&!a.metaKey&&!a.shiftKey&&2!=a.which&&2!=a.button){for(var e=D(a.target);"a"!==oa(e[0]);)if(e[0]===f[0]||!(e=e.parent())[0])return;var h=e.prop("href"),k=e.attr("href")||e.attr("xlink:href");K(h)&&"[object SVGAnimatedString]"===h.toString()&&(h=xa(h.animVal).href);t.test(h)||!h||e.attr("target")||a.isDefaultPrevented()||!m.$$parseLinkUrl(h,k)||(a.preventDefault(),m.absUrl()!=c.url()&&(d.$apply(),g.angular["ff-684208-preventDefault"]=
+!0))}});hb(m.absUrl())!=hb(n)&&c.url(m.absUrl(),!0);var F=!0;c.onUrlChange(function(a,b){r(ra(z,a))?g.location.href=a:(d.$evalAsync(function(){var c=m.absUrl(),e=m.$$state,f;a=hb(a);m.$$parse(a);m.$$state=b;f=d.$broadcast("$locationChangeStart",a,c,b,e).defaultPrevented;m.absUrl()===a&&(f?(m.$$parse(c),m.$$state=e,h(c,!1,e)):(F=!1,k(c,e)))}),d.$$phase||d.$digest())});d.$watch(function(){var a=hb(c.url()),b=hb(m.absUrl()),f=c.state(),g=m.$$replace,l=a!==b||m.$$html5&&e.history&&f!==m.$$state;if(F||
+l)F=!1,d.$evalAsync(function(){var b=m.absUrl(),c=d.$broadcast("$locationChangeStart",b,a,m.$$state,f).defaultPrevented;m.absUrl()===b&&(c?(m.$$parse(a),m.$$state=f):(l&&h(b,g,f===m.$$state?null:m.$$state),k(a,f)))});m.$$replace=!1});return m}]}function qf(){var a=!0,b=this;this.debugEnabled=function(b){return w(b)?(a=b,this):a};this.$get=["$window",function(d){function c(a){a instanceof Error&&(a.stack?a=a.message&&-1===a.stack.indexOf(a.message)?"Error: "+a.message+"\n"+a.stack:a.stack:a.sourceURL&&
+(a=a.message+"\n"+a.sourceURL+":"+a.line));return a}function e(a){var b=d.console||{},e=b[a]||b.log||v;a=!1;try{a=!!e.apply}catch(k){}return a?function(){var a=[];p(arguments,function(b){a.push(c(b))});return e.apply(b,a)}:function(a,b){e(a,null==b?"":b)}}return{log:e("log"),info:e("info"),warn:e("warn"),error:e("error"),debug:function(){var c=e("debug");return function(){a&&c.apply(b,arguments)}}()}}]}function Wa(a,b){if("__defineGetter__"===a||"__defineSetter__"===a||"__lookupGetter__"===a||"__lookupSetter__"===
+a||"__proto__"===a)throw aa("isecfld",b);return a}function ld(a,b){a+="";if(!I(a))throw aa("iseccst",b);return a}function ya(a,b){if(a){if(a.constructor===a)throw aa("isecfn",b);if(a.window===a)throw aa("isecwindow",b);if(a.children&&(a.nodeName||a.prop&&a.attr&&a.find))throw aa("isecdom",b);if(a===Object)throw aa("isecobj",b);}return a}function md(a,b){if(a){if(a.constructor===a)throw aa("isecfn",b);if(a===dg||a===eg||a===fg)throw aa("isecff",b);}}function Eb(a,b){if(a&&(a===(0).constructor||a===
+(!1).constructor||a==="".constructor||a==={}.constructor||a===[].constructor||a===Function.constructor))throw aa("isecaf",b);}function gg(a,b){return"undefined"!==typeof a?a:b}function nd(a,b){return"undefined"===typeof a?b:"undefined"===typeof b?a:a+b}function X(a,b){var d,c;switch(a.type){case s.Program:d=!0;p(a.body,function(a){X(a.expression,b);d=d&&a.expression.constant});a.constant=d;break;case s.Literal:a.constant=!0;a.toWatch=[];break;case s.UnaryExpression:X(a.argument,b);a.constant=a.argument.constant;
+a.toWatch=a.argument.toWatch;break;case s.BinaryExpression:X(a.left,b);X(a.right,b);a.constant=a.left.constant&&a.right.constant;a.toWatch=a.left.toWatch.concat(a.right.toWatch);break;case s.LogicalExpression:X(a.left,b);X(a.right,b);a.constant=a.left.constant&&a.right.constant;a.toWatch=a.constant?[]:[a];break;case s.ConditionalExpression:X(a.test,b);X(a.alternate,b);X(a.consequent,b);a.constant=a.test.constant&&a.alternate.constant&&a.consequent.constant;a.toWatch=a.constant?[]:[a];break;case s.Identifier:a.constant=
+!1;a.toWatch=[a];break;case s.MemberExpression:X(a.object,b);a.computed&&X(a.property,b);a.constant=a.object.constant&&(!a.computed||a.property.constant);a.toWatch=[a];break;case s.CallExpression:d=a.filter?!b(a.callee.name).$stateful:!1;c=[];p(a.arguments,function(a){X(a,b);d=d&&a.constant;a.constant||c.push.apply(c,a.toWatch)});a.constant=d;a.toWatch=a.filter&&!b(a.callee.name).$stateful?c:[a];break;case s.AssignmentExpression:X(a.left,b);X(a.right,b);a.constant=a.left.constant&&a.right.constant;
+a.toWatch=[a];break;case s.ArrayExpression:d=!0;c=[];p(a.elements,function(a){X(a,b);d=d&&a.constant;a.constant||c.push.apply(c,a.toWatch)});a.constant=d;a.toWatch=c;break;case s.ObjectExpression:d=!0;c=[];p(a.properties,function(a){X(a.value,b);d=d&&a.value.constant;a.value.constant||c.push.apply(c,a.value.toWatch)});a.constant=d;a.toWatch=c;break;case s.ThisExpression:a.constant=!1,a.toWatch=[]}}function od(a){if(1==a.length){a=a[0].expression;var b=a.toWatch;return 1!==b.length?b:b[0]!==a?b:u}}
+function pd(a){return a.type===s.Identifier||a.type===s.MemberExpression}function qd(a){if(1===a.body.length&&pd(a.body[0].expression))return{type:s.AssignmentExpression,left:a.body[0].expression,right:{type:s.NGValueParameter},operator:"="}}function rd(a){return 0===a.body.length||1===a.body.length&&(a.body[0].expression.type===s.Literal||a.body[0].expression.type===s.ArrayExpression||a.body[0].expression.type===s.ObjectExpression)}function sd(a,b){this.astBuilder=a;this.$filter=b}function td(a,
+b){this.astBuilder=a;this.$filter=b}function Fb(a){return"constructor"==a}function ec(a){return H(a.valueOf)?a.valueOf():hg.call(a)}function rf(){var a=Z(),b=Z();this.$get=["$filter",function(d){function c(c,f,n){var x,p,E;n=n||t;switch(typeof c){case "string":E=c=c.trim();var r=n?b:a;x=r[E];if(!x){":"===c.charAt(0)&&":"===c.charAt(1)&&(p=!0,c=c.substring(2));x=n?z:G;var B=new fc(x);x=(new gc(B,d,x)).parse(c);x.constant?x.$$watchDelegate=m:p?x.$$watchDelegate=x.literal?k:h:x.inputs&&(x.$$watchDelegate=
+g);n&&(x=e(x));r[E]=x}return l(x,f);case "function":return l(c,f);default:return l(v,f)}}function e(a){function b(c,d,e,f){var g=t;t=!0;try{return a(c,d,e,f)}finally{t=g}}if(!a)return a;b.$$watchDelegate=a.$$watchDelegate;b.assign=e(a.assign);b.constant=a.constant;b.literal=a.literal;for(var c=0;a.inputs&&c<a.inputs.length;++c)a.inputs[c]=e(a.inputs[c]);b.inputs=a.inputs;return b}function f(a,b){return null==a||null==b?a===b:"object"===typeof a&&(a=ec(a),"object"===typeof a)?!1:a===b||a!==a&&b!==
+b}function g(a,b,c,d,e){var g=d.inputs,h;if(1===g.length){var k=f,g=g[0];return a.$watch(function(a){var b=g(a);f(b,k)||(h=d(a,u,u,[b]),k=b&&ec(b));return h},b,c,e)}for(var m=[],l=[],n=0,G=g.length;n<G;n++)m[n]=f,l[n]=null;return a.$watch(function(a){for(var b=!1,c=0,e=g.length;c<e;c++){var k=g[c](a);if(b||(b=!f(k,m[c])))l[c]=k,m[c]=k&&ec(k)}b&&(h=d(a,u,u,l));return h},b,c,e)}function h(a,b,c,d){var e,f;return e=a.$watch(function(a){return d(a)},function(a,c,d){f=a;H(b)&&b.apply(this,arguments);w(a)&&
+d.$$postDigest(function(){w(f)&&e()})},c)}function k(a,b,c,d){function e(a){var b=!0;p(a,function(a){w(a)||(b=!1)});return b}var f,g;return f=a.$watch(function(a){return d(a)},function(a,c,d){g=a;H(b)&&b.call(this,a,c,d);e(a)&&d.$$postDigest(function(){e(g)&&f()})},c)}function m(a,b,c,d){var e;return e=a.$watch(function(a){return d(a)},function(a,c,d){H(b)&&b.apply(this,arguments);e()},c)}function l(a,b){if(!b)return a;var c=a.$$watchDelegate,d=!1,c=c!==k&&c!==h?function(c,e,f,g){f=d&&g?g[0]:a(c,
+e,f,g);return b(f,c,e)}:function(c,d,e,f){e=a(c,d,e,f);c=b(e,c,d);return w(e)?c:e};a.$$watchDelegate&&a.$$watchDelegate!==g?c.$$watchDelegate=a.$$watchDelegate:b.$stateful||(c.$$watchDelegate=g,d=!a.inputs,c.inputs=a.inputs?a.inputs:[a]);return c}var n=Ca().noUnsafeEval,G={csp:n,expensiveChecks:!1},z={csp:n,expensiveChecks:!0},t=!1;c.$$runningExpensiveChecks=function(){return t};return c}]}function tf(){this.$get=["$rootScope","$exceptionHandler",function(a,b){return ud(function(b){a.$evalAsync(b)},
+b)}]}function uf(){this.$get=["$browser","$exceptionHandler",function(a,b){return ud(function(b){a.defer(b)},b)}]}function ud(a,b){function d(a,b,c){function d(b){return function(c){e||(e=!0,b.call(a,c))}}var e=!1;return[d(b),d(c)]}function c(){this.$$state={status:0}}function e(a,b){return function(c){b.call(a,c)}}function f(c){!c.processScheduled&&c.pending&&(c.processScheduled=!0,a(function(){var a,d,e;e=c.pending;c.processScheduled=!1;c.pending=u;for(var f=0,g=e.length;f<g;++f){d=e[f][0];a=e[f][c.status];
+try{H(a)?d.resolve(a(c.value)):1===c.status?d.resolve(c.value):d.reject(c.value)}catch(h){d.reject(h),b(h)}}}))}function g(){this.promise=new c;this.resolve=e(this,this.resolve);this.reject=e(this,this.reject);this.notify=e(this,this.notify)}var h=A("$q",TypeError);N(c.prototype,{then:function(a,b,c){if(r(a)&&r(b)&&r(c))return this;var d=new g;this.$$state.pending=this.$$state.pending||[];this.$$state.pending.push([d,a,b,c]);0<this.$$state.status&&f(this.$$state);return d.promise},"catch":function(a){return this.then(null,
+a)},"finally":function(a,b){return this.then(function(b){return m(b,!0,a)},function(b){return m(b,!1,a)},b)}});N(g.prototype,{resolve:function(a){this.promise.$$state.status||(a===this.promise?this.$$reject(h("qcycle",a)):this.$$resolve(a))},$$resolve:function(a){var c,e;e=d(this,this.$$resolve,this.$$reject);try{if(K(a)||H(a))c=a&&a.then;H(c)?(this.promise.$$state.status=-1,c.call(a,e[0],e[1],this.notify)):(this.promise.$$state.value=a,this.promise.$$state.status=1,f(this.promise.$$state))}catch(g){e[1](g),
+b(g)}},reject:function(a){this.promise.$$state.status||this.$$reject(a)},$$reject:function(a){this.promise.$$state.value=a;this.promise.$$state.status=2;f(this.promise.$$state)},notify:function(c){var d=this.promise.$$state.pending;0>=this.promise.$$state.status&&d&&d.length&&a(function(){for(var a,e,f=0,g=d.length;f<g;f++){e=d[f][0];a=d[f][3];try{e.notify(H(a)?a(c):c)}catch(h){b(h)}}})}});var k=function(a,b){var c=new g;b?c.resolve(a):c.reject(a);return c.promise},m=function(a,b,c){var d=null;try{H(c)&&
+(d=c())}catch(e){return k(e,!1)}return d&&H(d.then)?d.then(function(){return k(a,b)},function(a){return k(a,!1)}):k(a,b)},l=function(a,b,c,d){var e=new g;e.resolve(a);return e.promise.then(b,c,d)},n=function z(a){if(!H(a))throw h("norslvr",a);if(!(this instanceof z))return new z(a);var b=new g;a(function(a){b.resolve(a)},function(a){b.reject(a)});return b.promise};n.defer=function(){return new g};n.reject=function(a){var b=new g;b.reject(a);return b.promise};n.when=l;n.resolve=l;n.all=function(a){var b=
+new g,c=0,d=L(a)?[]:{};p(a,function(a,e){c++;l(a).then(function(a){d.hasOwnProperty(e)||(d[e]=a,--c||b.resolve(d))},function(a){d.hasOwnProperty(e)||b.reject(a)})});0===c&&b.resolve(d);return b.promise};return n}function Df(){this.$get=["$window","$timeout",function(a,b){var d=a.requestAnimationFrame||a.webkitRequestAnimationFrame,c=a.cancelAnimationFrame||a.webkitCancelAnimationFrame||a.webkitCancelRequestAnimationFrame,e=!!d,f=e?function(a){var b=d(a);return function(){c(b)}}:function(a){var c=
+b(a,16.66,!1);return function(){b.cancel(c)}};f.supported=e;return f}]}function sf(){function a(a){function b(){this.$$watchers=this.$$nextSibling=this.$$childHead=this.$$childTail=null;this.$$listeners={};this.$$listenerCount={};this.$$watchersCount=0;this.$id=++mb;this.$$ChildScope=null}b.prototype=a;return b}var b=10,d=A("$rootScope"),c=null,e=null;this.digestTtl=function(a){arguments.length&&(b=a);return b};this.$get=["$injector","$exceptionHandler","$parse","$browser",function(f,g,h,k){function m(a){a.currentScope.$$destroyed=
+!0}function l(a){9===Ha&&(a.$$childHead&&l(a.$$childHead),a.$$nextSibling&&l(a.$$nextSibling));a.$parent=a.$$nextSibling=a.$$prevSibling=a.$$childHead=a.$$childTail=a.$root=a.$$watchers=null}function n(){this.$id=++mb;this.$$phase=this.$parent=this.$$watchers=this.$$nextSibling=this.$$prevSibling=this.$$childHead=this.$$childTail=null;this.$root=this;this.$$destroyed=!1;this.$$listeners={};this.$$listenerCount={};this.$$watchersCount=0;this.$$isolateBindings=null}function G(a){if(x.$$phase)throw d("inprog",
+x.$$phase);x.$$phase=a}function z(a,b){do a.$$watchersCount+=b;while(a=a.$parent)}function t(a,b,c){do a.$$listenerCount[c]-=b,0===a.$$listenerCount[c]&&delete a.$$listenerCount[c];while(a=a.$parent)}function F(){}function q(){for(;Q.length;)try{Q.shift()()}catch(a){g(a)}e=null}function y(){null===e&&(e=k.defer(function(){x.$apply(q)}))}n.prototype={constructor:n,$new:function(b,c){var d;c=c||this;b?(d=new n,d.$root=this.$root):(this.$$ChildScope||(this.$$ChildScope=a(this)),d=new this.$$ChildScope);
+d.$parent=c;d.$$prevSibling=c.$$childTail;c.$$childHead?(c.$$childTail.$$nextSibling=d,c.$$childTail=d):c.$$childHead=c.$$childTail=d;(b||c!=this)&&d.$on("$destroy",m);return d},$watch:function(a,b,d,e){var f=h(a);if(f.$$watchDelegate)return f.$$watchDelegate(this,b,d,f,a);var g=this,k=g.$$watchers,m={fn:b,last:F,get:f,exp:e||a,eq:!!d};c=null;H(b)||(m.fn=v);k||(k=g.$$watchers=[]);k.unshift(m);z(this,1);return function(){0<=ab(k,m)&&z(g,-1);c=null}},$watchGroup:function(a,b){function c(){h=!1;k?(k=
+!1,b(e,e,g)):b(e,d,g)}var d=Array(a.length),e=Array(a.length),f=[],g=this,h=!1,k=!0;if(!a.length){var m=!0;g.$evalAsync(function(){m&&b(e,e,g)});return function(){m=!1}}if(1===a.length)return this.$watch(a[0],function(a,c,f){e[0]=a;d[0]=c;b(e,a===c?e:d,f)});p(a,function(a,b){var k=g.$watch(a,function(a,f){e[b]=a;d[b]=f;h||(h=!0,g.$evalAsync(c))});f.push(k)});return function(){for(;f.length;)f.shift()()}},$watchCollection:function(a,b){function c(a){e=a;var b,d,g,h;if(!r(e)){if(K(e))if(Aa(e))for(f!==
+n&&(f=n,p=f.length=0,m++),a=e.length,p!==a&&(m++,f.length=p=a),b=0;b<a;b++)h=f[b],g=e[b],d=h!==h&&g!==g,d||h===g||(m++,f[b]=g);else{f!==q&&(f=q={},p=0,m++);a=0;for(b in e)sa.call(e,b)&&(a++,g=e[b],h=f[b],b in f?(d=h!==h&&g!==g,d||h===g||(m++,f[b]=g)):(p++,f[b]=g,m++));if(p>a)for(b in m++,f)sa.call(e,b)||(p--,delete f[b])}else f!==e&&(f=e,m++);return m}}c.$stateful=!0;var d=this,e,f,g,k=1<b.length,m=0,l=h(a,c),n=[],q={},G=!0,p=0;return this.$watch(l,function(){G?(G=!1,b(e,e,d)):b(e,g,d);if(k)if(K(e))if(Aa(e)){g=
+Array(e.length);for(var a=0;a<e.length;a++)g[a]=e[a]}else for(a in g={},e)sa.call(e,a)&&(g[a]=e[a]);else g=e})},$digest:function(){var a,f,h,m,l,n,p,z,y=b,t,r=[],Q,u;G("$digest");k.$$checkUrlChange();this===x&&null!==e&&(k.defer.cancel(e),q());c=null;do{z=!1;for(t=this;s.length;){try{u=s.shift(),u.scope.$eval(u.expression,u.locals)}catch(w){g(w)}c=null}a:do{if(n=t.$$watchers)for(p=n.length;p--;)try{if(a=n[p])if(l=a.get,(f=l(t))!==(h=a.last)&&!(a.eq?la(f,h):"number"===typeof f&&"number"===typeof h&&
+isNaN(f)&&isNaN(h)))z=!0,c=a,a.last=a.eq?Na(f,null):f,m=a.fn,m(f,h===F?f:h,t),5>y&&(Q=4-y,r[Q]||(r[Q]=[]),r[Q].push({msg:H(a.exp)?"fn: "+(a.exp.name||a.exp.toString()):a.exp,newVal:f,oldVal:h}));else if(a===c){z=!1;break a}}catch(v){g(v)}if(!(n=t.$$watchersCount&&t.$$childHead||t!==this&&t.$$nextSibling))for(;t!==this&&!(n=t.$$nextSibling);)t=t.$parent}while(t=n);if((z||s.length)&&!y--)throw x.$$phase=null,d("infdig",b,r);}while(z||s.length);for(x.$$phase=null;E.length;)try{E.shift()()}catch(D){g(D)}},
+$destroy:function(){if(!this.$$destroyed){var a=this.$parent;this.$broadcast("$destroy");this.$$destroyed=!0;this===x&&k.$$applicationDestroyed();z(this,-this.$$watchersCount);for(var b in this.$$listenerCount)t(this,this.$$listenerCount[b],b);a&&a.$$childHead==this&&(a.$$childHead=this.$$nextSibling);a&&a.$$childTail==this&&(a.$$childTail=this.$$prevSibling);this.$$prevSibling&&(this.$$prevSibling.$$nextSibling=this.$$nextSibling);this.$$nextSibling&&(this.$$nextSibling.$$prevSibling=this.$$prevSibling);
+this.$destroy=this.$digest=this.$apply=this.$evalAsync=this.$applyAsync=v;this.$on=this.$watch=this.$watchGroup=function(){return v};this.$$listeners={};this.$$nextSibling=null;l(this)}},$eval:function(a,b){return h(a)(this,b)},$evalAsync:function(a,b){x.$$phase||s.length||k.defer(function(){s.length&&x.$digest()});s.push({scope:this,expression:h(a),locals:b})},$$postDigest:function(a){E.push(a)},$apply:function(a){try{G("$apply");try{return this.$eval(a)}finally{x.$$phase=null}}catch(b){g(b)}finally{try{x.$digest()}catch(c){throw g(c),
+c;}}},$applyAsync:function(a){function b(){c.$eval(a)}var c=this;a&&Q.push(b);a=h(a);y()},$on:function(a,b){var c=this.$$listeners[a];c||(this.$$listeners[a]=c=[]);c.push(b);var d=this;do d.$$listenerCount[a]||(d.$$listenerCount[a]=0),d.$$listenerCount[a]++;while(d=d.$parent);var e=this;return function(){var d=c.indexOf(b);-1!==d&&(c[d]=null,t(e,1,a))}},$emit:function(a,b){var c=[],d,e=this,f=!1,h={name:a,targetScope:e,stopPropagation:function(){f=!0},preventDefault:function(){h.defaultPrevented=
+!0},defaultPrevented:!1},k=bb([h],arguments,1),m,l;do{d=e.$$listeners[a]||c;h.currentScope=e;m=0;for(l=d.length;m<l;m++)if(d[m])try{d[m].apply(null,k)}catch(n){g(n)}else d.splice(m,1),m--,l--;if(f)return h.currentScope=null,h;e=e.$parent}while(e);h.currentScope=null;return h},$broadcast:function(a,b){var c=this,d=this,e={name:a,targetScope:this,preventDefault:function(){e.defaultPrevented=!0},defaultPrevented:!1};if(!this.$$listenerCount[a])return e;for(var f=bb([e],arguments,1),h,k;c=d;){e.currentScope=
+c;d=c.$$listeners[a]||[];h=0;for(k=d.length;h<k;h++)if(d[h])try{d[h].apply(null,f)}catch(m){g(m)}else d.splice(h,1),h--,k--;if(!(d=c.$$listenerCount[a]&&c.$$childHead||c!==this&&c.$$nextSibling))for(;c!==this&&!(d=c.$$nextSibling);)c=c.$parent}e.currentScope=null;return e}};var x=new n,s=x.$$asyncQueue=[],E=x.$$postDigestQueue=[],Q=x.$$applyAsyncQueue=[];return x}]}function le(){var a=/^\s*(https?|ftp|mailto|tel|file):/,b=/^\s*((https?|ftp|file|blob):|data:image\/)/;this.aHrefSanitizationWhitelist=
+function(b){return w(b)?(a=b,this):a};this.imgSrcSanitizationWhitelist=function(a){return w(a)?(b=a,this):b};this.$get=function(){return function(d,c){var e=c?b:a,f;f=xa(d).href;return""===f||f.match(e)?d:"unsafe:"+f}}}function ig(a){if("self"===a)return a;if(I(a)){if(-1<a.indexOf("***"))throw za("iwcard",a);a=vd(a).replace("\\*\\*",".*").replace("\\*","[^:/.?&;]*");return new RegExp("^"+a+"$")}if(La(a))return new RegExp("^"+a.source+"$");throw za("imatcher");}function wd(a){var b=[];w(a)&&p(a,function(a){b.push(ig(a))});
+return b}function wf(){this.SCE_CONTEXTS=ka;var a=["self"],b=[];this.resourceUrlWhitelist=function(b){arguments.length&&(a=wd(b));return a};this.resourceUrlBlacklist=function(a){arguments.length&&(b=wd(a));return b};this.$get=["$injector",function(d){function c(a,b){return"self"===a?gd(b):!!a.exec(b.href)}function e(a){var b=function(a){this.$$unwrapTrustedValue=function(){return a}};a&&(b.prototype=new a);b.prototype.valueOf=function(){return this.$$unwrapTrustedValue()};b.prototype.toString=function(){return this.$$unwrapTrustedValue().toString()};
+return b}var f=function(a){throw za("unsafe");};d.has("$sanitize")&&(f=d.get("$sanitize"));var g=e(),h={};h[ka.HTML]=e(g);h[ka.CSS]=e(g);h[ka.URL]=e(g);h[ka.JS]=e(g);h[ka.RESOURCE_URL]=e(h[ka.URL]);return{trustAs:function(a,b){var c=h.hasOwnProperty(a)?h[a]:null;if(!c)throw za("icontext",a,b);if(null===b||r(b)||""===b)return b;if("string"!==typeof b)throw za("itype",a);return new c(b)},getTrusted:function(d,e){if(null===e||r(e)||""===e)return e;var g=h.hasOwnProperty(d)?h[d]:null;if(g&&e instanceof
+g)return e.$$unwrapTrustedValue();if(d===ka.RESOURCE_URL){var g=xa(e.toString()),n,p,z=!1;n=0;for(p=a.length;n<p;n++)if(c(a[n],g)){z=!0;break}if(z)for(n=0,p=b.length;n<p;n++)if(c(b[n],g)){z=!1;break}if(z)return e;throw za("insecurl",e.toString());}if(d===ka.HTML)return f(e);throw za("unsafe");},valueOf:function(a){return a instanceof g?a.$$unwrapTrustedValue():a}}}]}function vf(){var a=!0;this.enabled=function(b){arguments.length&&(a=!!b);return a};this.$get=["$parse","$sceDelegate",function(b,d){if(a&&
+8>Ha)throw za("iequirks");var c=fa(ka);c.isEnabled=function(){return a};c.trustAs=d.trustAs;c.getTrusted=d.getTrusted;c.valueOf=d.valueOf;a||(c.trustAs=c.getTrusted=function(a,b){return b},c.valueOf=Za);c.parseAs=function(a,d){var e=b(d);return e.literal&&e.constant?e:b(d,function(b){return c.getTrusted(a,b)})};var e=c.parseAs,f=c.getTrusted,g=c.trustAs;p(ka,function(a,b){var d=M(b);c[eb("parse_as_"+d)]=function(b){return e(a,b)};c[eb("get_trusted_"+d)]=function(b){return f(a,b)};c[eb("trust_as_"+
+d)]=function(b){return g(a,b)}});return c}]}function xf(){this.$get=["$window","$document",function(a,b){var d={},c=ca((/android (\d+)/.exec(M((a.navigator||{}).userAgent))||[])[1]),e=/Boxee/i.test((a.navigator||{}).userAgent),f=b[0]||{},g,h=/^(Moz|webkit|ms)(?=[A-Z])/,k=f.body&&f.body.style,m=!1,l=!1;if(k){for(var n in k)if(m=h.exec(n)){g=m[0];g=g.substr(0,1).toUpperCase()+g.substr(1);break}g||(g="WebkitOpacity"in k&&"webkit");m=!!("transition"in k||g+"Transition"in k);l=!!("animation"in k||g+"Animation"in
+k);!c||m&&l||(m=I(k.webkitTransition),l=I(k.webkitAnimation))}return{history:!(!a.history||!a.history.pushState||4>c||e),hasEvent:function(a){if("input"===a&&11>=Ha)return!1;if(r(d[a])){var b=f.createElement("div");d[a]="on"+a in b}return d[a]},csp:Ca(),vendorPrefix:g,transitions:m,animations:l,android:c}}]}function zf(){this.$get=["$templateCache","$http","$q","$sce",function(a,b,d,c){function e(f,g){e.totalPendingRequests++;if(!I(f)||r(a.get(f)))f=c.getTrustedResourceUrl(f);var h=b.defaults&&b.defaults.transformResponse;
+L(h)?h=h.filter(function(a){return a!==$b}):h===$b&&(h=null);return b.get(f,{cache:a,transformResponse:h})["finally"](function(){e.totalPendingRequests--}).then(function(b){a.put(f,b.data);return b.data},function(a){if(!g)throw ga("tpload",f,a.status,a.statusText);return d.reject(a)})}e.totalPendingRequests=0;return e}]}function Af(){this.$get=["$rootScope","$browser","$location",function(a,b,d){return{findBindings:function(a,b,d){a=a.getElementsByClassName("ng-binding");var g=[];p(a,function(a){var c=
+da.element(a).data("$binding");c&&p(c,function(c){d?(new RegExp("(^|\\s)"+vd(b)+"(\\s|\\||$)")).test(c)&&g.push(a):-1!=c.indexOf(b)&&g.push(a)})});return g},findModels:function(a,b,d){for(var g=["ng-","data-ng-","ng\\:"],h=0;h<g.length;++h){var k=a.querySelectorAll("["+g[h]+"model"+(d?"=":"*=")+'"'+b+'"]');if(k.length)return k}},getLocation:function(){return d.url()},setLocation:function(b){b!==d.url()&&(d.url(b),a.$digest())},whenStable:function(a){b.notifyWhenNoOutstandingRequests(a)}}}]}function Bf(){this.$get=
+["$rootScope","$browser","$q","$$q","$exceptionHandler",function(a,b,d,c,e){function f(f,k,m){H(f)||(m=k,k=f,f=v);var l=ta.call(arguments,3),n=w(m)&&!m,p=(n?c:d).defer(),z=p.promise,t;t=b.defer(function(){try{p.resolve(f.apply(null,l))}catch(b){p.reject(b),e(b)}finally{delete g[z.$$timeoutId]}n||a.$apply()},k);z.$$timeoutId=t;g[t]=p;return z}var g={};f.cancel=function(a){return a&&a.$$timeoutId in g?(g[a.$$timeoutId].reject("canceled"),delete g[a.$$timeoutId],b.defer.cancel(a.$$timeoutId)):!1};return f}]}
+function xa(a){Ha&&(Y.setAttribute("href",a),a=Y.href);Y.setAttribute("href",a);return{href:Y.href,protocol:Y.protocol?Y.protocol.replace(/:$/,""):"",host:Y.host,search:Y.search?Y.search.replace(/^\?/,""):"",hash:Y.hash?Y.hash.replace(/^#/,""):"",hostname:Y.hostname,port:Y.port,pathname:"/"===Y.pathname.charAt(0)?Y.pathname:"/"+Y.pathname}}function gd(a){a=I(a)?xa(a):a;return a.protocol===xd.protocol&&a.host===xd.host}function Cf(){this.$get=ma(R)}function yd(a){function b(a){try{return decodeURIComponent(a)}catch(b){return a}}
+var d=a[0]||{},c={},e="";return function(){var a,g,h,k,m;a=d.cookie||"";if(a!==e)for(e=a,a=e.split("; "),c={},h=0;h<a.length;h++)g=a[h],k=g.indexOf("="),0<k&&(m=b(g.substring(0,k)),r(c[m])&&(c[m]=b(g.substring(k+1))));return c}}function Gf(){this.$get=yd}function Jc(a){function b(d,c){if(K(d)){var e={};p(d,function(a,c){e[c]=b(c,a)});return e}return a.factory(d+"Filter",c)}this.register=b;this.$get=["$injector",function(a){return function(b){return a.get(b+"Filter")}}];b("currency",zd);b("date",Ad);
+b("filter",jg);b("json",kg);b("limitTo",lg);b("lowercase",mg);b("number",Bd);b("orderBy",Cd);b("uppercase",ng)}function jg(){return function(a,b,d){if(!Aa(a)){if(null==a)return a;throw A("filter")("notarray",a);}var c;switch(hc(b)){case "function":break;case "boolean":case "null":case "number":case "string":c=!0;case "object":b=og(b,d,c);break;default:return a}return Array.prototype.filter.call(a,b)}}function og(a,b,d){var c=K(a)&&"$"in a;!0===b?b=la:H(b)||(b=function(a,b){if(r(a))return!1;if(null===
+a||null===b)return a===b;if(K(b)||K(a)&&!qc(a))return!1;a=M(""+a);b=M(""+b);return-1!==a.indexOf(b)});return function(e){return c&&!K(e)?Ja(e,a.$,b,!1):Ja(e,a,b,d)}}function Ja(a,b,d,c,e){var f=hc(a),g=hc(b);if("string"===g&&"!"===b.charAt(0))return!Ja(a,b.substring(1),d,c);if(L(a))return a.some(function(a){return Ja(a,b,d,c)});switch(f){case "object":var h;if(c){for(h in a)if("$"!==h.charAt(0)&&Ja(a[h],b,d,!0))return!0;return e?!1:Ja(a,b,d,!1)}if("object"===g){for(h in b)if(e=b[h],!H(e)&&!r(e)&&
+(f="$"===h,!Ja(f?a:a[h],e,d,f,f)))return!1;return!0}return d(a,b);case "function":return!1;default:return d(a,b)}}function hc(a){return null===a?"null":typeof a}function zd(a){var b=a.NUMBER_FORMATS;return function(a,c,e){r(c)&&(c=b.CURRENCY_SYM);r(e)&&(e=b.PATTERNS[1].maxFrac);return null==a?a:Dd(a,b.PATTERNS[1],b.GROUP_SEP,b.DECIMAL_SEP,e).replace(/\u00A4/g,c)}}function Bd(a){var b=a.NUMBER_FORMATS;return function(a,c){return null==a?a:Dd(a,b.PATTERNS[0],b.GROUP_SEP,b.DECIMAL_SEP,c)}}function pg(a){var b=
+0,d,c,e,f,g;-1<(c=a.indexOf(Ed))&&(a=a.replace(Ed,""));0<(e=a.search(/e/i))?(0>c&&(c=e),c+=+a.slice(e+1),a=a.substring(0,e)):0>c&&(c=a.length);for(e=0;a.charAt(e)==ic;e++);if(e==(g=a.length))d=[0],c=1;else{for(g--;a.charAt(g)==ic;)g--;c-=e;d=[];for(f=0;e<=g;e++,f++)d[f]=+a.charAt(e)}c>Fd&&(d=d.splice(0,Fd-1),b=c-1,c=1);return{d:d,e:b,i:c}}function qg(a,b,d,c){var e=a.d,f=e.length-a.i;b=r(b)?Math.min(Math.max(d,f),c):+b;d=b+a.i;c=e[d];if(0<d)e.splice(d);else{a.i=1;e.length=d=b+1;for(var g=0;g<d;g++)e[g]=
+0}for(5<=c&&e[d-1]++;f<b;f++)e.push(0);if(b=e.reduceRight(function(a,b,c,d){b+=a;d[c]=b%10;return Math.floor(b/10)},0))e.unshift(b),a.i++}function Dd(a,b,d,c,e){if(!I(a)&&!P(a)||isNaN(a))return"";var f=!isFinite(a),g=!1,h=Math.abs(a)+"",k="";if(f)k="\u221e";else{g=pg(h);qg(g,e,b.minFrac,b.maxFrac);k=g.d;h=g.i;e=g.e;f=[];for(g=k.reduce(function(a,b){return a&&!b},!0);0>h;)k.unshift(0),h++;0<h?f=k.splice(h,k.length):(f=k,k=[0]);h=[];for(k.length>=b.lgSize&&h.unshift(k.splice(-b.lgSize,k.length).join(""));k.length>
+b.gSize;)h.unshift(k.splice(-b.gSize,k.length).join(""));k.length&&h.unshift(k.join(""));k=h.join(d);f.length&&(k+=c+f.join(""));e&&(k+="e+"+e)}return 0>a&&!g?b.negPre+k+b.negSuf:b.posPre+k+b.posSuf}function Gb(a,b,d){var c="";0>a&&(c="-",a=-a);for(a=""+a;a.length<b;)a=ic+a;d&&(a=a.substr(a.length-b));return c+a}function ba(a,b,d,c){d=d||0;return function(e){e=e["get"+a]();if(0<d||e>-d)e+=d;0===e&&-12==d&&(e=12);return Gb(e,b,c)}}function Hb(a,b){return function(d,c){var e=d["get"+a](),f=rb(b?"SHORT"+
+a:a);return c[f][e]}}function Gd(a){var b=(new Date(a,0,1)).getDay();return new Date(a,0,(4>=b?5:12)-b)}function Hd(a){return function(b){var d=Gd(b.getFullYear());b=+new Date(b.getFullYear(),b.getMonth(),b.getDate()+(4-b.getDay()))-+d;b=1+Math.round(b/6048E5);return Gb(b,a)}}function jc(a,b){return 0>=a.getFullYear()?b.ERAS[0]:b.ERAS[1]}function Ad(a){function b(a){var b;if(b=a.match(d)){a=new Date(0);var f=0,g=0,h=b[8]?a.setUTCFullYear:a.setFullYear,k=b[8]?a.setUTCHours:a.setHours;b[9]&&(f=ca(b[9]+
+b[10]),g=ca(b[9]+b[11]));h.call(a,ca(b[1]),ca(b[2])-1,ca(b[3]));f=ca(b[4]||0)-f;g=ca(b[5]||0)-g;h=ca(b[6]||0);b=Math.round(1E3*parseFloat("0."+(b[7]||0)));k.call(a,f,g,h,b)}return a}var d=/^(\d{4})-?(\d\d)-?(\d\d)(?:T(\d\d)(?::?(\d\d)(?::?(\d\d)(?:\.(\d+))?)?)?(Z|([+-])(\d\d):?(\d\d))?)?$/;return function(c,d,f){var g="",h=[],k,m;d=d||"mediumDate";d=a.DATETIME_FORMATS[d]||d;I(c)&&(c=rg.test(c)?ca(c):b(c));P(c)&&(c=new Date(c));if(!ea(c)||!isFinite(c.getTime()))return c;for(;d;)(m=sg.exec(d))?(h=bb(h,
+m,1),d=h.pop()):(h.push(d),d=null);var l=c.getTimezoneOffset();f&&(l=vc(f,l),c=Pb(c,f,!0));p(h,function(b){k=tg[b];g+=k?k(c,a.DATETIME_FORMATS,l):"''"===b?"'":b.replace(/(^'|'$)/g,"").replace(/''/g,"'")});return g}}function kg(){return function(a,b){r(b)&&(b=2);return cb(a,b)}}function lg(){return function(a,b,d){b=Infinity===Math.abs(Number(b))?Number(b):ca(b);if(isNaN(b))return a;P(a)&&(a=a.toString());if(!L(a)&&!I(a))return a;d=!d||isNaN(d)?0:ca(d);d=0>d?Math.max(0,a.length+d):d;return 0<=b?a.slice(d,
+d+b):0===d?a.slice(b,a.length):a.slice(Math.max(0,d+b),d)}}function Cd(a){function b(b,d){d=d?-1:1;return b.map(function(b){var c=1,h=Za;if(H(b))h=b;else if(I(b)){if("+"==b.charAt(0)||"-"==b.charAt(0))c="-"==b.charAt(0)?-1:1,b=b.substring(1);if(""!==b&&(h=a(b),h.constant))var k=h(),h=function(a){return a[k]}}return{get:h,descending:c*d}})}function d(a){switch(typeof a){case "number":case "boolean":case "string":return!0;default:return!1}}return function(a,e,f){if(!Aa(a))return a;L(e)||(e=[e]);0===
+e.length&&(e=["+"]);var g=b(e,f);g.push({get:function(){return{}},descending:f?-1:1});a=Array.prototype.map.call(a,function(a,b){return{value:a,predicateValues:g.map(function(c){var e=c.get(a);c=typeof e;if(null===e)c="string",e="null";else if("string"===c)e=e.toLowerCase();else if("object"===c)a:{if("function"===typeof e.valueOf&&(e=e.valueOf(),d(e)))break a;if(qc(e)&&(e=e.toString(),d(e)))break a;e=b}return{value:e,type:c}})}});a.sort(function(a,b){for(var c=0,d=0,e=g.length;d<e;++d){var c=a.predicateValues[d],
+f=b.predicateValues[d],p=0;c.type===f.type?c.value!==f.value&&(p=c.value<f.value?-1:1):p=c.type<f.type?-1:1;if(c=p*g[d].descending)break}return c});return a=a.map(function(a){return a.value})}}function Ka(a){H(a)&&(a={link:a});a.restrict=a.restrict||"AC";return ma(a)}function Id(a,b,d,c,e){var f=this,g=[];f.$error={};f.$$success={};f.$pending=u;f.$name=e(b.name||b.ngForm||"")(d);f.$dirty=!1;f.$pristine=!0;f.$valid=!0;f.$invalid=!1;f.$submitted=!1;f.$$parentForm=Ib;f.$rollbackViewValue=function(){p(g,
+function(a){a.$rollbackViewValue()})};f.$commitViewValue=function(){p(g,function(a){a.$commitViewValue()})};f.$addControl=function(a){Sa(a.$name,"input");g.push(a);a.$name&&(f[a.$name]=a);a.$$parentForm=f};f.$$renameControl=function(a,b){var c=a.$name;f[c]===a&&delete f[c];f[b]=a;a.$name=b};f.$removeControl=function(a){a.$name&&f[a.$name]===a&&delete f[a.$name];p(f.$pending,function(b,c){f.$setValidity(c,null,a)});p(f.$error,function(b,c){f.$setValidity(c,null,a)});p(f.$$success,function(b,c){f.$setValidity(c,
+null,a)});ab(g,a);a.$$parentForm=Ib};Jd({ctrl:this,$element:a,set:function(a,b,c){var d=a[b];d?-1===d.indexOf(c)&&d.push(c):a[b]=[c]},unset:function(a,b,c){var d=a[b];d&&(ab(d,c),0===d.length&&delete a[b])},$animate:c});f.$setDirty=function(){c.removeClass(a,Xa);c.addClass(a,Jb);f.$dirty=!0;f.$pristine=!1;f.$$parentForm.$setDirty()};f.$setPristine=function(){c.setClass(a,Xa,Jb+" ng-submitted");f.$dirty=!1;f.$pristine=!0;f.$submitted=!1;p(g,function(a){a.$setPristine()})};f.$setUntouched=function(){p(g,
+function(a){a.$setUntouched()})};f.$setSubmitted=function(){c.addClass(a,"ng-submitted");f.$submitted=!0;f.$$parentForm.$setSubmitted()}}function kc(a){a.$formatters.push(function(b){return a.$isEmpty(b)?b:b.toString()})}function ib(a,b,d,c,e,f){var g=M(b[0].type);if(!e.android){var h=!1;b.on("compositionstart",function(a){h=!0});b.on("compositionend",function(){h=!1;m()})}var k,m=function(a){k&&(f.defer.cancel(k),k=null);if(!h){var e=b.val();a=a&&a.type;"password"===g||d.ngTrim&&"false"===d.ngTrim||
+(e=T(e));(c.$viewValue!==e||""===e&&c.$$hasNativeValidators)&&c.$setViewValue(e,a)}};if(e.hasEvent("input"))b.on("input",m);else{var l=function(a,b,c){k||(k=f.defer(function(){k=null;b&&b.value===c||m(a)}))};b.on("keydown",function(a){var b=a.keyCode;91===b||15<b&&19>b||37<=b&&40>=b||l(a,this,this.value)});if(e.hasEvent("paste"))b.on("paste cut",l)}b.on("change",m);if(Kd[g]&&c.$$hasNativeValidators&&g===d.type)b.on("keydown wheel mousedown",function(a){if(!k){var b=this.validity,c=b.badInput,d=b.typeMismatch;
+k=f.defer(function(){k=null;b.badInput===c&&b.typeMismatch===d||m(a)})}});c.$render=function(){var a=c.$isEmpty(c.$viewValue)?"":c.$viewValue;b.val()!==a&&b.val(a)}}function Kb(a,b){return function(d,c){var e,f;if(ea(d))return d;if(I(d)){'"'==d.charAt(0)&&'"'==d.charAt(d.length-1)&&(d=d.substring(1,d.length-1));if(ug.test(d))return new Date(d);a.lastIndex=0;if(e=a.exec(d))return e.shift(),f=c?{yyyy:c.getFullYear(),MM:c.getMonth()+1,dd:c.getDate(),HH:c.getHours(),mm:c.getMinutes(),ss:c.getSeconds(),
+sss:c.getMilliseconds()/1E3}:{yyyy:1970,MM:1,dd:1,HH:0,mm:0,ss:0,sss:0},p(e,function(a,c){c<b.length&&(f[b[c]]=+a)}),new Date(f.yyyy,f.MM-1,f.dd,f.HH,f.mm,f.ss||0,1E3*f.sss||0)}return NaN}}function jb(a,b,d,c){return function(e,f,g,h,k,m,l){function n(a){return a&&!(a.getTime&&a.getTime()!==a.getTime())}function p(a){return w(a)&&!ea(a)?d(a)||u:a}Ld(e,f,g,h);ib(e,f,g,h,k,m);var z=h&&h.$options&&h.$options.timezone,t;h.$$parserName=a;h.$parsers.push(function(a){return h.$isEmpty(a)?null:b.test(a)?
+(a=d(a,t),z&&(a=Pb(a,z)),a):u});h.$formatters.push(function(a){if(a&&!ea(a))throw kb("datefmt",a);if(n(a))return(t=a)&&z&&(t=Pb(t,z,!0)),l("date")(a,c,z);t=null;return""});if(w(g.min)||g.ngMin){var s;h.$validators.min=function(a){return!n(a)||r(s)||d(a)>=s};g.$observe("min",function(a){s=p(a);h.$validate()})}if(w(g.max)||g.ngMax){var q;h.$validators.max=function(a){return!n(a)||r(q)||d(a)<=q};g.$observe("max",function(a){q=p(a);h.$validate()})}}}function Ld(a,b,d,c){(c.$$hasNativeValidators=K(b[0].validity))&&
+c.$parsers.push(function(a){var c=b.prop("validity")||{};return c.badInput&&!c.typeMismatch?u:a})}function Md(a,b,d,c,e){if(w(c)){a=a(c);if(!a.constant)throw kb("constexpr",d,c);return a(b)}return e}function lc(a,b){a="ngClass"+a;return["$animate",function(d){function c(a,b){var c=[],d=0;a:for(;d<a.length;d++){for(var e=a[d],l=0;l<b.length;l++)if(e==b[l])continue a;c.push(e)}return c}function e(a){var b=[];return L(a)?(p(a,function(a){b=b.concat(e(a))}),b):I(a)?a.split(" "):K(a)?(p(a,function(a,c){a&&
+(b=b.concat(c.split(" ")))}),b):a}return{restrict:"AC",link:function(f,g,h){function k(a){a=m(a,1);h.$addClass(a)}function m(a,b){var c=g.data("$classCounts")||Z(),d=[];p(a,function(a){if(0<b||c[a])c[a]=(c[a]||0)+b,c[a]===+(0<b)&&d.push(a)});g.data("$classCounts",c);return d.join(" ")}function l(a,b){var e=c(b,a),f=c(a,b),e=m(e,1),f=m(f,-1);e&&e.length&&d.addClass(g,e);f&&f.length&&d.removeClass(g,f)}function n(a){if(!0===b||f.$index%2===b){var c=e(a||[]);if(!r)k(c);else if(!la(a,r)){var d=e(r);l(d,
+c)}}r=L(a)?a.map(function(a){return fa(a)}):fa(a)}var r;f.$watch(h[a],n,!0);h.$observe("class",function(b){n(f.$eval(h[a]))});"ngClass"!==a&&f.$watch("$index",function(c,d){var g=c&1;if(g!==(d&1)){var l=e(f.$eval(h[a]));g===b?k(l):(g=m(l,-1),h.$removeClass(g))}})}}}]}function Jd(a){function b(a,b){b&&!f[a]?(k.addClass(e,a),f[a]=!0):!b&&f[a]&&(k.removeClass(e,a),f[a]=!1)}function d(a,c){a=a?"-"+zc(a,"-"):"";b(lb+a,!0===c);b(Nd+a,!1===c)}var c=a.ctrl,e=a.$element,f={},g=a.set,h=a.unset,k=a.$animate;
+f[Nd]=!(f[lb]=e.hasClass(lb));c.$setValidity=function(a,e,f){r(e)?(c.$pending||(c.$pending={}),g(c.$pending,a,f)):(c.$pending&&h(c.$pending,a,f),Od(c.$pending)&&(c.$pending=u));Ma(e)?e?(h(c.$error,a,f),g(c.$$success,a,f)):(g(c.$error,a,f),h(c.$$success,a,f)):(h(c.$error,a,f),h(c.$$success,a,f));c.$pending?(b(Pd,!0),c.$valid=c.$invalid=u,d("",null)):(b(Pd,!1),c.$valid=Od(c.$error),c.$invalid=!c.$valid,d("",c.$valid));e=c.$pending&&c.$pending[a]?u:c.$error[a]?!1:c.$$success[a]?!0:null;d(a,e);c.$$parentForm.$setValidity(a,
+e,c)}}function Od(a){if(a)for(var b in a)if(a.hasOwnProperty(b))return!1;return!0}var vg=/^\/(.+)\/([a-z]*)$/,M=function(a){return I(a)?a.toLowerCase():a},sa=Object.prototype.hasOwnProperty,rb=function(a){return I(a)?a.toUpperCase():a},Ha,D,pa,ta=[].slice,Xf=[].splice,wg=[].push,na=Object.prototype.toString,rc=Object.getPrototypeOf,Ba=A("ng"),da=R.angular||(R.angular={}),Sb,mb=0;Ha=U.documentMode;v.$inject=[];Za.$inject=[];var L=Array.isArray,Zd=/^\[object (?:Uint8|Uint8Clamped|Uint16|Uint32|Int8|Int16|Int32|Float32|Float64)Array\]$/,
+T=function(a){return I(a)?a.trim():a},vd=function(a){return a.replace(/([-()\[\]{}+?*.$\^|,:#<!\\])/g,"\\$1").replace(/\x08/g,"\\x08")},Ca=function(){if(!w(Ca.rules)){var a=U.querySelector("[ng-csp]")||U.querySelector("[data-ng-csp]");if(a){var b=a.getAttribute("ng-csp")||a.getAttribute("data-ng-csp");Ca.rules={noUnsafeEval:!b||-1!==b.indexOf("no-unsafe-eval"),noInlineStyle:!b||-1!==b.indexOf("no-inline-style")}}else{a=Ca;try{new Function(""),b=!1}catch(d){b=!0}a.rules={noUnsafeEval:b,noInlineStyle:!1}}}return Ca.rules},
+ob=function(){if(w(ob.name_))return ob.name_;var a,b,d=Pa.length,c,e;for(b=0;b<d;++b)if(c=Pa[b],a=U.querySelector("["+c.replace(":","\\:")+"jq]")){e=a.getAttribute(c+"jq");break}return ob.name_=e},be=/:/g,Pa=["ng-","data-ng-","ng:","x-ng-"],ge=/[A-Z]/g,Ac=!1,Rb,Oa=3,ke={full:"1.4.13",major:1,minor:4,dot:13,codeName:"croaking-elderweed"};S.expando="ng339";var fb=S.cache={},Mf=1;S._data=function(a){return this.cache[a[this.expando]]||{}};var Hf=/([\:\-\_]+(.))/g,If=/^moz([A-Z])/,wb={mouseleave:"mouseout",
+mouseenter:"mouseover"},Ub=A("jqLite"),Lf=/^<([\w-]+)\s*\/?>(?:<\/\1>|)$/,Tb=/<|&#?\w+;/,Jf=/<([\w:-]+)/,Kf=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:-]+)[^>]*)\/>/gi,ja={option:[1,'<select multiple="multiple">',"</select>"],thead:[1,"<table>","</table>"],col:[2,"<table><colgroup>","</colgroup></table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:[0,"",""]};ja.optgroup=ja.option;ja.tbody=ja.tfoot=ja.colgroup=ja.caption=ja.thead;
+ja.th=ja.td;var Rf=Node.prototype.contains||function(a){return!!(this.compareDocumentPosition(a)&16)},Qa=S.prototype={ready:function(a){function b(){d||(d=!0,a())}var d=!1;"complete"===U.readyState?setTimeout(b):(this.on("DOMContentLoaded",b),S(R).on("load",b))},toString:function(){var a=[];p(this,function(b){a.push(""+b)});return"["+a.join(", ")+"]"},eq:function(a){return 0<=a?D(this[a]):D(this[this.length+a])},length:0,push:wg,sort:[].sort,splice:[].splice},Bb={};p("multiple selected checked disabled readOnly required open".split(" "),
+function(a){Bb[M(a)]=a});var Sc={};p("input select option textarea button form details".split(" "),function(a){Sc[a]=!0});var ad={ngMinlength:"minlength",ngMaxlength:"maxlength",ngMin:"min",ngMax:"max",ngPattern:"pattern"};p({data:Wb,removeData:ub,hasData:function(a){for(var b in fb[a.ng339])return!0;return!1}},function(a,b){S[b]=a});p({data:Wb,inheritedData:Ab,scope:function(a){return D.data(a,"$scope")||Ab(a.parentNode||a,["$isolateScope","$scope"])},isolateScope:function(a){return D.data(a,"$isolateScope")||
+D.data(a,"$isolateScopeNoTemplate")},controller:Pc,injector:function(a){return Ab(a,"$injector")},removeAttr:function(a,b){a.removeAttribute(b)},hasClass:xb,css:function(a,b,d){b=eb(b);if(w(d))a.style[b]=d;else return a.style[b]},attr:function(a,b,d){var c=a.nodeType;if(c!==Oa&&2!==c&&8!==c)if(c=M(b),Bb[c])if(w(d))d?(a[b]=!0,a.setAttribute(b,c)):(a[b]=!1,a.removeAttribute(c));else return a[b]||(a.attributes.getNamedItem(b)||v).specified?c:u;else if(w(d))a.setAttribute(b,d);else if(a.getAttribute)return a=
+a.getAttribute(b,2),null===a?u:a},prop:function(a,b,d){if(w(d))a[b]=d;else return a[b]},text:function(){function a(a,d){if(r(d)){var c=a.nodeType;return 1===c||c===Oa?a.textContent:""}a.textContent=d}a.$dv="";return a}(),val:function(a,b){if(r(b)){if(a.multiple&&"select"===oa(a)){var d=[];p(a.options,function(a){a.selected&&d.push(a.value||a.text)});return 0===d.length?null:d}return a.value}a.value=b},html:function(a,b){if(r(b))return a.innerHTML;tb(a,!0);a.innerHTML=b},empty:Qc},function(a,b){S.prototype[b]=
+function(b,c){var e,f,g=this.length;if(a!==Qc&&r(2==a.length&&a!==xb&&a!==Pc?b:c)){if(K(b)){for(e=0;e<g;e++)if(a===Wb)a(this[e],b);else for(f in b)a(this[e],f,b[f]);return this}e=a.$dv;g=r(e)?Math.min(g,1):g;for(f=0;f<g;f++){var h=a(this[f],b,c);e=e?e+h:h}return e}for(e=0;e<g;e++)a(this[e],b,c);return this}});p({removeData:ub,on:function(a,b,d,c){if(w(c))throw Ub("onargs");if(Kc(a)){c=vb(a,!0);var e=c.events,f=c.handle;f||(f=c.handle=Of(a,e));c=0<=b.indexOf(" ")?b.split(" "):[b];for(var g=c.length,
+h=function(b,c,g){var h=e[b];h||(h=e[b]=[],h.specialHandlerWrapper=c,"$destroy"===b||g||a.addEventListener(b,f,!1));h.push(d)};g--;)b=c[g],wb[b]?(h(wb[b],Qf),h(b,u,!0)):h(b)}},off:Oc,one:function(a,b,d){a=D(a);a.on(b,function e(){a.off(b,d);a.off(b,e)});a.on(b,d)},replaceWith:function(a,b){var d,c=a.parentNode;tb(a);p(new S(b),function(b){d?c.insertBefore(b,d.nextSibling):c.replaceChild(b,a);d=b})},children:function(a){var b=[];p(a.childNodes,function(a){1===a.nodeType&&b.push(a)});return b},contents:function(a){return a.contentDocument||
+a.childNodes||[]},append:function(a,b){var d=a.nodeType;if(1===d||11===d){b=new S(b);for(var d=0,c=b.length;d<c;d++)a.appendChild(b[d])}},prepend:function(a,b){if(1===a.nodeType){var d=a.firstChild;p(new S(b),function(b){a.insertBefore(b,d)})}},wrap:function(a,b){Mc(a,D(b).eq(0).clone()[0])},remove:Xb,detach:function(a){Xb(a,!0)},after:function(a,b){var d=a,c=a.parentNode;b=new S(b);for(var e=0,f=b.length;e<f;e++){var g=b[e];c.insertBefore(g,d.nextSibling);d=g}},addClass:zb,removeClass:yb,toggleClass:function(a,
+b,d){b&&p(b.split(" "),function(b){var e=d;r(e)&&(e=!xb(a,b));(e?zb:yb)(a,b)})},parent:function(a){return(a=a.parentNode)&&11!==a.nodeType?a:null},next:function(a){return a.nextElementSibling},find:function(a,b){return a.getElementsByTagName?a.getElementsByTagName(b):[]},clone:Vb,triggerHandler:function(a,b,d){var c,e,f=b.type||b,g=vb(a);if(g=(g=g&&g.events)&&g[f])c={preventDefault:function(){this.defaultPrevented=!0},isDefaultPrevented:function(){return!0===this.defaultPrevented},stopImmediatePropagation:function(){this.immediatePropagationStopped=
+!0},isImmediatePropagationStopped:function(){return!0===this.immediatePropagationStopped},stopPropagation:v,type:f,target:a},b.type&&(c=N(c,b)),b=fa(g),e=d?[c].concat(d):[c],p(b,function(b){c.isImmediatePropagationStopped()||b.apply(a,e)})}},function(a,b){S.prototype[b]=function(b,c,e){for(var f,g=0,h=this.length;g<h;g++)r(f)?(f=a(this[g],b,c,e),w(f)&&(f=D(f))):Nc(f,a(this[g],b,c,e));return w(f)?f:this};S.prototype.bind=S.prototype.on;S.prototype.unbind=S.prototype.off});Ta.prototype={put:function(a,
+b){this[Da(a,this.nextUid)]=b},get:function(a){return this[Da(a,this.nextUid)]},remove:function(a){var b=this[a=Da(a,this.nextUid)];delete this[a];return b}};var Ff=[function(){this.$get=[function(){return Ta}]}],Uc=/^[^\(]*\(\s*([^\)]*)\)/m,xg=/,/,yg=/^\s*(_?)(\S+?)\1\s*$/,Tc=/((\/\/.*$)|(\/\*[\s\S]*?\*\/))/mg,Ea=A("$injector");db.$$annotate=function(a,b,d){var c;if("function"===typeof a){if(!(c=a.$inject)){c=[];if(a.length){if(b)throw I(d)&&d||(d=a.name||Sf(a)),Ea("strictdi",d);b=a.toString().replace(Tc,
+"");b=b.match(Uc);p(b[1].split(xg),function(a){a.replace(yg,function(a,b,d){c.push(d)})})}a.$inject=c}}else L(a)?(b=a.length-1,Ra(a[b],"fn"),c=a.slice(0,b)):Ra(a,"fn",!0);return c};var Qd=A("$animate"),Ye=function(){this.$get=function(){}},Ze=function(){var a=new Ta,b=[];this.$get=["$$AnimateRunner","$rootScope",function(d,c){function e(a,b,c){var d=!1;b&&(b=I(b)?b.split(" "):L(b)?b:[],p(b,function(b){b&&(d=!0,a[b]=c)}));return d}function f(){p(b,function(b){var c=a.get(b);if(c){var d=Tf(b.attr("class")),
+e="",f="";p(c,function(a,b){a!==!!d[b]&&(a?e+=(e.length?" ":"")+b:f+=(f.length?" ":"")+b)});p(b,function(a){e&&zb(a,e);f&&yb(a,f)});a.remove(b)}});b.length=0}return{enabled:v,on:v,off:v,pin:v,push:function(g,h,k,m){m&&m();k=k||{};k.from&&g.css(k.from);k.to&&g.css(k.to);if(k.addClass||k.removeClass)if(h=k.addClass,m=k.removeClass,k=a.get(g)||{},h=e(k,h,!0),m=e(k,m,!1),h||m)a.put(g,k),b.push(g),1===b.length&&c.$$postDigest(f);g=new d;g.complete();return g}}}]},We=["$provide",function(a){var b=this;
+this.$$registeredAnimations=Object.create(null);this.register=function(d,c){if(d&&"."!==d.charAt(0))throw Qd("notcsel",d);var e=d+"-animation";b.$$registeredAnimations[d.substr(1)]=e;a.factory(e,c)};this.classNameFilter=function(a){if(1===arguments.length&&(this.$$classNameFilter=a instanceof RegExp?a:null)&&/(\s+|\/)ng-animate(\s+|\/)/.test(this.$$classNameFilter.toString()))throw Qd("nongcls","ng-animate");return this.$$classNameFilter};this.$get=["$$animateQueue",function(a){function b(a,c,d){if(d){var h;
+a:{for(h=0;h<d.length;h++){var k=d[h];if(1===k.nodeType){h=k;break a}}h=void 0}!h||h.parentNode||h.previousElementSibling||(d=null)}d?d.after(a):c.prepend(a)}return{on:a.on,off:a.off,pin:a.pin,enabled:a.enabled,cancel:function(a){a.end&&a.end()},enter:function(e,f,g,h){f=f&&D(f);g=g&&D(g);f=f||g.parent();b(e,f,g);return a.push(e,"enter",Fa(h))},move:function(e,f,g,h){f=f&&D(f);g=g&&D(g);f=f||g.parent();b(e,f,g);return a.push(e,"move",Fa(h))},leave:function(b,c){return a.push(b,"leave",Fa(c),function(){b.remove()})},
+addClass:function(b,c,g){g=Fa(g);g.addClass=gb(g.addclass,c);return a.push(b,"addClass",g)},removeClass:function(b,c,g){g=Fa(g);g.removeClass=gb(g.removeClass,c);return a.push(b,"removeClass",g)},setClass:function(b,c,g,h){h=Fa(h);h.addClass=gb(h.addClass,c);h.removeClass=gb(h.removeClass,g);return a.push(b,"setClass",h)},animate:function(b,c,g,h,k){k=Fa(k);k.from=k.from?N(k.from,c):c;k.to=k.to?N(k.to,g):g;k.tempClasses=gb(k.tempClasses,h||"ng-inline-animate");return a.push(b,"animate",k)}}}]}],af=
+function(){this.$get=["$$rAF",function(a){function b(b){d.push(b);1<d.length||a(function(){for(var a=0;a<d.length;a++)d[a]();d=[]})}var d=[];return function(){var a=!1;b(function(){a=!0});return function(d){a?d():b(d)}}}]},$e=function(){this.$get=["$q","$sniffer","$$animateAsyncRun","$document","$timeout",function(a,b,d,c,e){function f(a){this.setHost(a);var b=d();this._doneCallbacks=[];this._tick=function(a){var d=c[0];d&&d.hidden?e(a,0,!1):b(a)};this._state=0}f.chain=function(a,b){function c(){if(d===
+a.length)b(!0);else a[d](function(a){!1===a?b(!1):(d++,c())})}var d=0;c()};f.all=function(a,b){function c(f){e=e&&f;++d===a.length&&b(e)}var d=0,e=!0;p(a,function(a){a.done(c)})};f.prototype={setHost:function(a){this.host=a||{}},done:function(a){2===this._state?a():this._doneCallbacks.push(a)},progress:v,getPromise:function(){if(!this.promise){var b=this;this.promise=a(function(a,c){b.done(function(b){!1===b?c():a()})})}return this.promise},then:function(a,b){return this.getPromise().then(a,b)},"catch":function(a){return this.getPromise()["catch"](a)},
+"finally":function(a){return this.getPromise()["finally"](a)},pause:function(){this.host.pause&&this.host.pause()},resume:function(){this.host.resume&&this.host.resume()},end:function(){this.host.end&&this.host.end();this._resolve(!0)},cancel:function(){this.host.cancel&&this.host.cancel();this._resolve(!1)},complete:function(a){var b=this;0===b._state&&(b._state=1,b._tick(function(){b._resolve(a)}))},_resolve:function(a){2!==this._state&&(p(this._doneCallbacks,function(b){b(a)}),this._doneCallbacks.length=
+0,this._state=2)}};return f}]},Xe=function(){this.$get=["$$rAF","$q","$$AnimateRunner",function(a,b,d){return function(b,e){function f(){a(function(){g.addClass&&(b.addClass(g.addClass),g.addClass=null);g.removeClass&&(b.removeClass(g.removeClass),g.removeClass=null);g.to&&(b.css(g.to),g.to=null);h||k.complete();h=!0});return k}var g=e||{};g.$$prepared||(g=Na(g));g.cleanupStyles&&(g.from=g.to=null);g.from&&(b.css(g.from),g.from=null);var h,k=new d;return{start:f,end:f}}}]},ga=A("$compile");Cc.$inject=
+["$provide","$$sanitizeUriProvider"];var Wc=/^((?:x|data)[\:\-_])/i,Yf=A("$controller"),Zc=/^(\S+)(\s+as\s+([\w$]+))?$/,gf=function(){this.$get=["$document",function(a){return function(b){b?!b.nodeType&&b instanceof D&&(b=b[0]):b=a[0].body;return b.offsetWidth+1}}]},bd="application/json",ac={"Content-Type":bd+";charset=utf-8"},$f=/^\[|^\{(?!\{)/,ag={"[":/]$/,"{":/}$/},Zf=/^\)\]\}',?\n/,zg=A("$http"),fd=function(a){return function(){throw zg("legacy",a);}},Ia=da.$interpolateMinErr=A("$interpolate");
+Ia.throwNoconcat=function(a){throw Ia("noconcat",a);};Ia.interr=function(a,b){return Ia("interr",a,b.toString())};var Ag=/^([^\?#]*)(\?([^#]*))?(#(.*))?$/,cg={http:80,https:443,ftp:21},Cb=A("$location"),Bg={$$html5:!1,$$replace:!1,absUrl:Db("$$absUrl"),url:function(a){if(r(a))return this.$$url;var b=Ag.exec(a);(b[1]||""===a)&&this.path(decodeURIComponent(b[1]));(b[2]||b[1]||""===a)&&this.search(b[3]||"");this.hash(b[5]||"");return this},protocol:Db("$$protocol"),host:Db("$$host"),port:Db("$$port"),
+path:kd("$$path",function(a){a=null!==a?a.toString():"";return"/"==a.charAt(0)?a:"/"+a}),search:function(a,b){switch(arguments.length){case 0:return this.$$search;case 1:if(I(a)||P(a))a=a.toString(),this.$$search=xc(a);else if(K(a))a=Na(a,{}),p(a,function(b,c){null==b&&delete a[c]}),this.$$search=a;else throw Cb("isrcharg");break;default:r(b)||null===b?delete this.$$search[a]:this.$$search[a]=b}this.$$compose();return this},hash:kd("$$hash",function(a){return null!==a?a.toString():""}),replace:function(){this.$$replace=
+!0;return this}};p([jd,dc,cc],function(a){a.prototype=Object.create(Bg);a.prototype.state=function(b){if(!arguments.length)return this.$$state;if(a!==cc||!this.$$html5)throw Cb("nostate");this.$$state=r(b)?null:b;return this}});var aa=A("$parse"),dg=Function.prototype.call,eg=Function.prototype.apply,fg=Function.prototype.bind,Lb=Z();p("+ - * / % === !== == != < > <= >= && || ! = |".split(" "),function(a){Lb[a]=!0});var Cg={n:"\n",f:"\f",r:"\r",t:"\t",v:"\v","'":"'",'"':'"'},fc=function(a){this.options=
+a};fc.prototype={constructor:fc,lex:function(a){this.text=a;this.index=0;for(this.tokens=[];this.index<this.text.length;)if(a=this.text.charAt(this.index),'"'===a||"'"===a)this.readString(a);else if(this.isNumber(a)||"."===a&&this.isNumber(this.peek()))this.readNumber();else if(this.isIdent(a))this.readIdent();else if(this.is(a,"(){}[].,;:?"))this.tokens.push({index:this.index,text:a}),this.index++;else if(this.isWhitespace(a))this.index++;else{var b=a+this.peek(),d=b+this.peek(2),c=Lb[b],e=Lb[d];
+Lb[a]||c||e?(a=e?d:c?b:a,this.tokens.push({index:this.index,text:a,operator:!0}),this.index+=a.length):this.throwError("Unexpected next character ",this.index,this.index+1)}return this.tokens},is:function(a,b){return-1!==b.indexOf(a)},peek:function(a){a=a||1;return this.index+a<this.text.length?this.text.charAt(this.index+a):!1},isNumber:function(a){return"0"<=a&&"9">=a&&"string"===typeof a},isWhitespace:function(a){return" "===a||"\r"===a||"\t"===a||"\n"===a||"\v"===a||"\u00a0"===a},isIdent:function(a){return"a"<=
+a&&"z">=a||"A"<=a&&"Z">=a||"_"===a||"$"===a},isExpOperator:function(a){return"-"===a||"+"===a||this.isNumber(a)},throwError:function(a,b,d){d=d||this.index;b=w(b)?"s "+b+"-"+this.index+" ["+this.text.substring(b,d)+"]":" "+d;throw aa("lexerr",a,b,this.text);},readNumber:function(){for(var a="",b=this.index;this.index<this.text.length;){var d=M(this.text.charAt(this.index));if("."==d||this.isNumber(d))a+=d;else{var c=this.peek();if("e"==d&&this.isExpOperator(c))a+=d;else if(this.isExpOperator(d)&&
+c&&this.isNumber(c)&&"e"==a.charAt(a.length-1))a+=d;else if(!this.isExpOperator(d)||c&&this.isNumber(c)||"e"!=a.charAt(a.length-1))break;else this.throwError("Invalid exponent")}this.index++}this.tokens.push({index:b,text:a,constant:!0,value:Number(a)})},readIdent:function(){for(var a=this.index;this.index<this.text.length;){var b=this.text.charAt(this.index);if(!this.isIdent(b)&&!this.isNumber(b))break;this.index++}this.tokens.push({index:a,text:this.text.slice(a,this.index),identifier:!0})},readString:function(a){var b=
+this.index;this.index++;for(var d="",c=a,e=!1;this.index<this.text.length;){var f=this.text.charAt(this.index),c=c+f;if(e)"u"===f?(e=this.text.substring(this.index+1,this.index+5),e.match(/[\da-f]{4}/i)||this.throwError("Invalid unicode escape [\\u"+e+"]"),this.index+=4,d+=String.fromCharCode(parseInt(e,16))):d+=Cg[f]||f,e=!1;else if("\\"===f)e=!0;else{if(f===a){this.index++;this.tokens.push({index:b,text:c,constant:!0,value:d});return}d+=f}this.index++}this.throwError("Unterminated quote",b)}};var s=
+function(a,b){this.lexer=a;this.options=b};s.Program="Program";s.ExpressionStatement="ExpressionStatement";s.AssignmentExpression="AssignmentExpression";s.ConditionalExpression="ConditionalExpression";s.LogicalExpression="LogicalExpression";s.BinaryExpression="BinaryExpression";s.UnaryExpression="UnaryExpression";s.CallExpression="CallExpression";s.MemberExpression="MemberExpression";s.Identifier="Identifier";s.Literal="Literal";s.ArrayExpression="ArrayExpression";s.Property="Property";s.ObjectExpression=
+"ObjectExpression";s.ThisExpression="ThisExpression";s.NGValueParameter="NGValueParameter";s.prototype={ast:function(a){this.text=a;this.tokens=this.lexer.lex(a);a=this.program();0!==this.tokens.length&&this.throwError("is an unexpected token",this.tokens[0]);return a},program:function(){for(var a=[];;)if(0<this.tokens.length&&!this.peek("}",")",";","]")&&a.push(this.expressionStatement()),!this.expect(";"))return{type:s.Program,body:a}},expressionStatement:function(){return{type:s.ExpressionStatement,
+expression:this.filterChain()}},filterChain:function(){for(var a=this.expression();this.expect("|");)a=this.filter(a);return a},expression:function(){return this.assignment()},assignment:function(){var a=this.ternary();this.expect("=")&&(a={type:s.AssignmentExpression,left:a,right:this.assignment(),operator:"="});return a},ternary:function(){var a=this.logicalOR(),b,d;return this.expect("?")&&(b=this.expression(),this.consume(":"))?(d=this.expression(),{type:s.ConditionalExpression,test:a,alternate:b,
+consequent:d}):a},logicalOR:function(){for(var a=this.logicalAND();this.expect("||");)a={type:s.LogicalExpression,operator:"||",left:a,right:this.logicalAND()};return a},logicalAND:function(){for(var a=this.equality();this.expect("&&");)a={type:s.LogicalExpression,operator:"&&",left:a,right:this.equality()};return a},equality:function(){for(var a=this.relational(),b;b=this.expect("==","!=","===","!==");)a={type:s.BinaryExpression,operator:b.text,left:a,right:this.relational()};return a},relational:function(){for(var a=
+this.additive(),b;b=this.expect("<",">","<=",">=");)a={type:s.BinaryExpression,operator:b.text,left:a,right:this.additive()};return a},additive:function(){for(var a=this.multiplicative(),b;b=this.expect("+","-");)a={type:s.BinaryExpression,operator:b.text,left:a,right:this.multiplicative()};return a},multiplicative:function(){for(var a=this.unary(),b;b=this.expect("*","/","%");)a={type:s.BinaryExpression,operator:b.text,left:a,right:this.unary()};return a},unary:function(){var a;return(a=this.expect("+",
+"-","!"))?{type:s.UnaryExpression,operator:a.text,prefix:!0,argument:this.unary()}:this.primary()},primary:function(){var a;this.expect("(")?(a=this.filterChain(),this.consume(")")):this.expect("[")?a=this.arrayDeclaration():this.expect("{")?a=this.object():this.constants.hasOwnProperty(this.peek().text)?a=Na(this.constants[this.consume().text]):this.peek().identifier?a=this.identifier():this.peek().constant?a=this.constant():this.throwError("not a primary expression",this.peek());for(var b;b=this.expect("(",
+"[",".");)"("===b.text?(a={type:s.CallExpression,callee:a,arguments:this.parseArguments()},this.consume(")")):"["===b.text?(a={type:s.MemberExpression,object:a,property:this.expression(),computed:!0},this.consume("]")):"."===b.text?a={type:s.MemberExpression,object:a,property:this.identifier(),computed:!1}:this.throwError("IMPOSSIBLE");return a},filter:function(a){a=[a];for(var b={type:s.CallExpression,callee:this.identifier(),arguments:a,filter:!0};this.expect(":");)a.push(this.expression());return b},
+parseArguments:function(){var a=[];if(")"!==this.peekToken().text){do a.push(this.expression());while(this.expect(","))}return a},identifier:function(){var a=this.consume();a.identifier||this.throwError("is not a valid identifier",a);return{type:s.Identifier,name:a.text}},constant:function(){return{type:s.Literal,value:this.consume().value}},arrayDeclaration:function(){var a=[];if("]"!==this.peekToken().text){do{if(this.peek("]"))break;a.push(this.expression())}while(this.expect(","))}this.consume("]");
+return{type:s.ArrayExpression,elements:a}},object:function(){var a=[],b;if("}"!==this.peekToken().text){do{if(this.peek("}"))break;b={type:s.Property,kind:"init"};this.peek().constant?b.key=this.constant():this.peek().identifier?b.key=this.identifier():this.throwError("invalid key",this.peek());this.consume(":");b.value=this.expression();a.push(b)}while(this.expect(","))}this.consume("}");return{type:s.ObjectExpression,properties:a}},throwError:function(a,b){throw aa("syntax",b.text,a,b.index+1,this.text,
+this.text.substring(b.index));},consume:function(a){if(0===this.tokens.length)throw aa("ueoe",this.text);var b=this.expect(a);b||this.throwError("is unexpected, expecting ["+a+"]",this.peek());return b},peekToken:function(){if(0===this.tokens.length)throw aa("ueoe",this.text);return this.tokens[0]},peek:function(a,b,d,c){return this.peekAhead(0,a,b,d,c)},peekAhead:function(a,b,d,c,e){if(this.tokens.length>a){a=this.tokens[a];var f=a.text;if(f===b||f===d||f===c||f===e||!(b||d||c||e))return a}return!1},
+expect:function(a,b,d,c){return(a=this.peek(a,b,d,c))?(this.tokens.shift(),a):!1},constants:{"true":{type:s.Literal,value:!0},"false":{type:s.Literal,value:!1},"null":{type:s.Literal,value:null},undefined:{type:s.Literal,value:u},"this":{type:s.ThisExpression}}};sd.prototype={compile:function(a,b){var d=this,c=this.astBuilder.ast(a);this.state={nextId:0,filters:{},expensiveChecks:b,fn:{vars:[],body:[],own:{}},assign:{vars:[],body:[],own:{}},inputs:[]};X(c,d.$filter);var e="",f;this.stage="assign";
+if(f=qd(c))this.state.computing="assign",e=this.nextId(),this.recurse(f,e),this.return_(e),e="fn.assign="+this.generateFunction("assign","s,v,l");f=od(c.body);d.stage="inputs";p(f,function(a,b){var c="fn"+b;d.state[c]={vars:[],body:[],own:{}};d.state.computing=c;var e=d.nextId();d.recurse(a,e);d.return_(e);d.state.inputs.push(c);a.watchId=b});this.state.computing="fn";this.stage="main";this.recurse(c);e='"'+this.USE+" "+this.STRICT+'";\n'+this.filterPrefix()+"var fn="+this.generateFunction("fn","s,l,a,i")+
+e+this.watchFns()+"return fn;";e=(new Function("$filter","ensureSafeMemberName","ensureSafeObject","ensureSafeFunction","getStringValue","ensureSafeAssignContext","ifDefined","plus","text",e))(this.$filter,Wa,ya,md,ld,Eb,gg,nd,a);this.state=this.stage=u;e.literal=rd(c);e.constant=c.constant;return e},USE:"use",STRICT:"strict",watchFns:function(){var a=[],b=this.state.inputs,d=this;p(b,function(b){a.push("var "+b+"="+d.generateFunction(b,"s"))});b.length&&a.push("fn.inputs=["+b.join(",")+"];");return a.join("")},
+generateFunction:function(a,b){return"function("+b+"){"+this.varsPrefix(a)+this.body(a)+"};"},filterPrefix:function(){var a=[],b=this;p(this.state.filters,function(d,c){a.push(d+"=$filter("+b.escape(c)+")")});return a.length?"var "+a.join(",")+";":""},varsPrefix:function(a){return this.state[a].vars.length?"var "+this.state[a].vars.join(",")+";":""},body:function(a){return this.state[a].body.join("")},recurse:function(a,b,d,c,e,f){var g,h,k=this,m,l;c=c||v;if(!f&&w(a.watchId))b=b||this.nextId(),this.if_("i",
+this.lazyAssign(b,this.computedMember("i",a.watchId)),this.lazyRecurse(a,b,d,c,e,!0));else switch(a.type){case s.Program:p(a.body,function(b,c){k.recurse(b.expression,u,u,function(a){h=a});c!==a.body.length-1?k.current().body.push(h,";"):k.return_(h)});break;case s.Literal:l=this.escape(a.value);this.assign(b,l);c(l);break;case s.UnaryExpression:this.recurse(a.argument,u,u,function(a){h=a});l=a.operator+"("+this.ifDefined(h,0)+")";this.assign(b,l);c(l);break;case s.BinaryExpression:this.recurse(a.left,
+u,u,function(a){g=a});this.recurse(a.right,u,u,function(a){h=a});l="+"===a.operator?this.plus(g,h):"-"===a.operator?this.ifDefined(g,0)+a.operator+this.ifDefined(h,0):"("+g+")"+a.operator+"("+h+")";this.assign(b,l);c(l);break;case s.LogicalExpression:b=b||this.nextId();k.recurse(a.left,b);k.if_("&&"===a.operator?b:k.not(b),k.lazyRecurse(a.right,b));c(b);break;case s.ConditionalExpression:b=b||this.nextId();k.recurse(a.test,b);k.if_(b,k.lazyRecurse(a.alternate,b),k.lazyRecurse(a.consequent,b));c(b);
+break;case s.Identifier:b=b||this.nextId();d&&(d.context="inputs"===k.stage?"s":this.assign(this.nextId(),this.getHasOwnProperty("l",a.name)+"?l:s"),d.computed=!1,d.name=a.name);Wa(a.name);k.if_("inputs"===k.stage||k.not(k.getHasOwnProperty("l",a.name)),function(){k.if_("inputs"===k.stage||"s",function(){e&&1!==e&&k.if_(k.not(k.nonComputedMember("s",a.name)),k.lazyAssign(k.nonComputedMember("s",a.name),"{}"));k.assign(b,k.nonComputedMember("s",a.name))})},b&&k.lazyAssign(b,k.nonComputedMember("l",
+a.name)));(k.state.expensiveChecks||Fb(a.name))&&k.addEnsureSafeObject(b);c(b);break;case s.MemberExpression:g=d&&(d.context=this.nextId())||this.nextId();b=b||this.nextId();k.recurse(a.object,g,u,function(){k.if_(k.notNull(g),function(){e&&1!==e&&k.addEnsureSafeAssignContext(g);if(a.computed)h=k.nextId(),k.recurse(a.property,h),k.getStringValue(h),k.addEnsureSafeMemberName(h),e&&1!==e&&k.if_(k.not(k.computedMember(g,h)),k.lazyAssign(k.computedMember(g,h),"{}")),l=k.ensureSafeObject(k.computedMember(g,
+h)),k.assign(b,l),d&&(d.computed=!0,d.name=h);else{Wa(a.property.name);e&&1!==e&&k.if_(k.not(k.nonComputedMember(g,a.property.name)),k.lazyAssign(k.nonComputedMember(g,a.property.name),"{}"));l=k.nonComputedMember(g,a.property.name);if(k.state.expensiveChecks||Fb(a.property.name))l=k.ensureSafeObject(l);k.assign(b,l);d&&(d.computed=!1,d.name=a.property.name)}},function(){k.assign(b,"undefined")});c(b)},!!e);break;case s.CallExpression:b=b||this.nextId();a.filter?(h=k.filter(a.callee.name),m=[],p(a.arguments,
+function(a){var b=k.nextId();k.recurse(a,b);m.push(b)}),l=h+"("+m.join(",")+")",k.assign(b,l),c(b)):(h=k.nextId(),g={},m=[],k.recurse(a.callee,h,g,function(){k.if_(k.notNull(h),function(){k.addEnsureSafeFunction(h);p(a.arguments,function(a){k.recurse(a,k.nextId(),u,function(a){m.push(k.ensureSafeObject(a))})});g.name?(k.state.expensiveChecks||k.addEnsureSafeObject(g.context),l=k.member(g.context,g.name,g.computed)+"("+m.join(",")+")"):l=h+"("+m.join(",")+")";l=k.ensureSafeObject(l);k.assign(b,l)},
+function(){k.assign(b,"undefined")});c(b)}));break;case s.AssignmentExpression:h=this.nextId();g={};if(!pd(a.left))throw aa("lval");this.recurse(a.left,u,g,function(){k.if_(k.notNull(g.context),function(){k.recurse(a.right,h);k.addEnsureSafeObject(k.member(g.context,g.name,g.computed));k.addEnsureSafeAssignContext(g.context);l=k.member(g.context,g.name,g.computed)+a.operator+h;k.assign(b,l);c(b||l)})},1);break;case s.ArrayExpression:m=[];p(a.elements,function(a){k.recurse(a,k.nextId(),u,function(a){m.push(a)})});
+l="["+m.join(",")+"]";this.assign(b,l);c(l);break;case s.ObjectExpression:m=[];p(a.properties,function(a){k.recurse(a.value,k.nextId(),u,function(b){m.push(k.escape(a.key.type===s.Identifier?a.key.name:""+a.key.value)+":"+b)})});l="{"+m.join(",")+"}";this.assign(b,l);c(l);break;case s.ThisExpression:this.assign(b,"s");c("s");break;case s.NGValueParameter:this.assign(b,"v"),c("v")}},getHasOwnProperty:function(a,b){var d=a+"."+b,c=this.current().own;c.hasOwnProperty(d)||(c[d]=this.nextId(!1,a+"&&("+
+this.escape(b)+" in "+a+")"));return c[d]},assign:function(a,b){if(a)return this.current().body.push(a,"=",b,";"),a},filter:function(a){this.state.filters.hasOwnProperty(a)||(this.state.filters[a]=this.nextId(!0));return this.state.filters[a]},ifDefined:function(a,b){return"ifDefined("+a+","+this.escape(b)+")"},plus:function(a,b){return"plus("+a+","+b+")"},return_:function(a){this.current().body.push("return ",a,";")},if_:function(a,b,d){if(!0===a)b();else{var c=this.current().body;c.push("if(",a,
+"){");b();c.push("}");d&&(c.push("else{"),d(),c.push("}"))}},not:function(a){return"!("+a+")"},notNull:function(a){return a+"!=null"},nonComputedMember:function(a,b){return a+"."+b},computedMember:function(a,b){return a+"["+b+"]"},member:function(a,b,d){return d?this.computedMember(a,b):this.nonComputedMember(a,b)},addEnsureSafeObject:function(a){this.current().body.push(this.ensureSafeObject(a),";")},addEnsureSafeMemberName:function(a){this.current().body.push(this.ensureSafeMemberName(a),";")},
+addEnsureSafeFunction:function(a){this.current().body.push(this.ensureSafeFunction(a),";")},addEnsureSafeAssignContext:function(a){this.current().body.push(this.ensureSafeAssignContext(a),";")},ensureSafeObject:function(a){return"ensureSafeObject("+a+",text)"},ensureSafeMemberName:function(a){return"ensureSafeMemberName("+a+",text)"},ensureSafeFunction:function(a){return"ensureSafeFunction("+a+",text)"},getStringValue:function(a){this.assign(a,"getStringValue("+a+",text)")},ensureSafeAssignContext:function(a){return"ensureSafeAssignContext("+
+a+",text)"},lazyRecurse:function(a,b,d,c,e,f){var g=this;return function(){g.recurse(a,b,d,c,e,f)}},lazyAssign:function(a,b){var d=this;return function(){d.assign(a,b)}},stringEscapeRegex:/[^ a-zA-Z0-9]/g,stringEscapeFn:function(a){return"\\u"+("0000"+a.charCodeAt(0).toString(16)).slice(-4)},escape:function(a){if(I(a))return"'"+a.replace(this.stringEscapeRegex,this.stringEscapeFn)+"'";if(P(a))return a.toString();if(!0===a)return"true";if(!1===a)return"false";if(null===a)return"null";if("undefined"===
+typeof a)return"undefined";throw aa("esc");},nextId:function(a,b){var d="v"+this.state.nextId++;a||this.current().vars.push(d+(b?"="+b:""));return d},current:function(){return this.state[this.state.computing]}};td.prototype={compile:function(a,b){var d=this,c=this.astBuilder.ast(a);this.expression=a;this.expensiveChecks=b;X(c,d.$filter);var e,f;if(e=qd(c))f=this.recurse(e);e=od(c.body);var g;e&&(g=[],p(e,function(a,b){var c=d.recurse(a);a.input=c;g.push(c);a.watchId=b}));var h=[];p(c.body,function(a){h.push(d.recurse(a.expression))});
+e=0===c.body.length?function(){}:1===c.body.length?h[0]:function(a,b){var c;p(h,function(d){c=d(a,b)});return c};f&&(e.assign=function(a,b,c){return f(a,c,b)});g&&(e.inputs=g);e.literal=rd(c);e.constant=c.constant;return e},recurse:function(a,b,d){var c,e,f=this,g;if(a.input)return this.inputs(a.input,a.watchId);switch(a.type){case s.Literal:return this.value(a.value,b);case s.UnaryExpression:return e=this.recurse(a.argument),this["unary"+a.operator](e,b);case s.BinaryExpression:return c=this.recurse(a.left),
+e=this.recurse(a.right),this["binary"+a.operator](c,e,b);case s.LogicalExpression:return c=this.recurse(a.left),e=this.recurse(a.right),this["binary"+a.operator](c,e,b);case s.ConditionalExpression:return this["ternary?:"](this.recurse(a.test),this.recurse(a.alternate),this.recurse(a.consequent),b);case s.Identifier:return Wa(a.name,f.expression),f.identifier(a.name,f.expensiveChecks||Fb(a.name),b,d,f.expression);case s.MemberExpression:return c=this.recurse(a.object,!1,!!d),a.computed||(Wa(a.property.name,
+f.expression),e=a.property.name),a.computed&&(e=this.recurse(a.property)),a.computed?this.computedMember(c,e,b,d,f.expression):this.nonComputedMember(c,e,f.expensiveChecks,b,d,f.expression);case s.CallExpression:return g=[],p(a.arguments,function(a){g.push(f.recurse(a))}),a.filter&&(e=this.$filter(a.callee.name)),a.filter||(e=this.recurse(a.callee,!0)),a.filter?function(a,c,d,f){for(var n=[],p=0;p<g.length;++p)n.push(g[p](a,c,d,f));a=e.apply(u,n,f);return b?{context:u,name:u,value:a}:a}:function(a,
+c,d,l){var n=e(a,c,d,l),p;if(null!=n.value){ya(n.context,f.expression);md(n.value,f.expression);p=[];for(var r=0;r<g.length;++r)p.push(ya(g[r](a,c,d,l),f.expression));p=ya(n.value.apply(n.context,p),f.expression)}return b?{value:p}:p};case s.AssignmentExpression:return c=this.recurse(a.left,!0,1),e=this.recurse(a.right),function(a,d,g,l){var n=c(a,d,g,l);a=e(a,d,g,l);ya(n.value,f.expression);Eb(n.context);n.context[n.name]=a;return b?{value:a}:a};case s.ArrayExpression:return g=[],p(a.elements,function(a){g.push(f.recurse(a))}),
+function(a,c,d,e){for(var f=[],p=0;p<g.length;++p)f.push(g[p](a,c,d,e));return b?{value:f}:f};case s.ObjectExpression:return g=[],p(a.properties,function(a){g.push({key:a.key.type===s.Identifier?a.key.name:""+a.key.value,value:f.recurse(a.value)})}),function(a,c,d,e){for(var f={},p=0;p<g.length;++p)f[g[p].key]=g[p].value(a,c,d,e);return b?{value:f}:f};case s.ThisExpression:return function(a){return b?{value:a}:a};case s.NGValueParameter:return function(a,c,d,e){return b?{value:d}:d}}},"unary+":function(a,
+b){return function(d,c,e,f){d=a(d,c,e,f);d=w(d)?+d:0;return b?{value:d}:d}},"unary-":function(a,b){return function(d,c,e,f){d=a(d,c,e,f);d=w(d)?-d:0;return b?{value:d}:d}},"unary!":function(a,b){return function(d,c,e,f){d=!a(d,c,e,f);return b?{value:d}:d}},"binary+":function(a,b,d){return function(c,e,f,g){var h=a(c,e,f,g);c=b(c,e,f,g);h=nd(h,c);return d?{value:h}:h}},"binary-":function(a,b,d){return function(c,e,f,g){var h=a(c,e,f,g);c=b(c,e,f,g);h=(w(h)?h:0)-(w(c)?c:0);return d?{value:h}:h}},"binary*":function(a,
+b,d){return function(c,e,f,g){c=a(c,e,f,g)*b(c,e,f,g);return d?{value:c}:c}},"binary/":function(a,b,d){return function(c,e,f,g){c=a(c,e,f,g)/b(c,e,f,g);return d?{value:c}:c}},"binary%":function(a,b,d){return function(c,e,f,g){c=a(c,e,f,g)%b(c,e,f,g);return d?{value:c}:c}},"binary===":function(a,b,d){return function(c,e,f,g){c=a(c,e,f,g)===b(c,e,f,g);return d?{value:c}:c}},"binary!==":function(a,b,d){return function(c,e,f,g){c=a(c,e,f,g)!==b(c,e,f,g);return d?{value:c}:c}},"binary==":function(a,b,
+d){return function(c,e,f,g){c=a(c,e,f,g)==b(c,e,f,g);return d?{value:c}:c}},"binary!=":function(a,b,d){return function(c,e,f,g){c=a(c,e,f,g)!=b(c,e,f,g);return d?{value:c}:c}},"binary<":function(a,b,d){return function(c,e,f,g){c=a(c,e,f,g)<b(c,e,f,g);return d?{value:c}:c}},"binary>":function(a,b,d){return function(c,e,f,g){c=a(c,e,f,g)>b(c,e,f,g);return d?{value:c}:c}},"binary<=":function(a,b,d){return function(c,e,f,g){c=a(c,e,f,g)<=b(c,e,f,g);return d?{value:c}:c}},"binary>=":function(a,b,d){return function(c,
+e,f,g){c=a(c,e,f,g)>=b(c,e,f,g);return d?{value:c}:c}},"binary&&":function(a,b,d){return function(c,e,f,g){c=a(c,e,f,g)&&b(c,e,f,g);return d?{value:c}:c}},"binary||":function(a,b,d){return function(c,e,f,g){c=a(c,e,f,g)||b(c,e,f,g);return d?{value:c}:c}},"ternary?:":function(a,b,d,c){return function(e,f,g,h){e=a(e,f,g,h)?b(e,f,g,h):d(e,f,g,h);return c?{value:e}:e}},value:function(a,b){return function(){return b?{context:u,name:u,value:a}:a}},identifier:function(a,b,d,c,e){return function(f,g,h,k){f=
+g&&a in g?g:f;c&&1!==c&&f&&!f[a]&&(f[a]={});g=f?f[a]:u;b&&ya(g,e);return d?{context:f,name:a,value:g}:g}},computedMember:function(a,b,d,c,e){return function(f,g,h,k){var m=a(f,g,h,k),l,n;null!=m&&(l=b(f,g,h,k),l=ld(l),Wa(l,e),c&&1!==c&&(Eb(m),m&&!m[l]&&(m[l]={})),n=m[l],ya(n,e));return d?{context:m,name:l,value:n}:n}},nonComputedMember:function(a,b,d,c,e,f){return function(g,h,k,m){g=a(g,h,k,m);e&&1!==e&&(Eb(g),g&&!g[b]&&(g[b]={}));h=null!=g?g[b]:u;(d||Fb(b))&&ya(h,f);return c?{context:g,name:b,value:h}:
+h}},inputs:function(a,b){return function(d,c,e,f){return f?f[b]:a(d,c,e)}}};var gc=function(a,b,d){this.lexer=a;this.$filter=b;this.options=d;this.ast=new s(this.lexer);this.astCompiler=d.csp?new td(this.ast,b):new sd(this.ast,b)};gc.prototype={constructor:gc,parse:function(a){return this.astCompiler.compile(a,this.options.expensiveChecks)}};var hg=Object.prototype.valueOf,za=A("$sce"),ka={HTML:"html",CSS:"css",URL:"url",RESOURCE_URL:"resourceUrl",JS:"js"},ga=A("$compile"),Y=U.createElement("a"),
+xd=xa(R.location.href);yd.$inject=["$document"];Jc.$inject=["$provide"];var Fd=22,Ed=".",ic="0";zd.$inject=["$locale"];Bd.$inject=["$locale"];var tg={yyyy:ba("FullYear",4),yy:ba("FullYear",2,0,!0),y:ba("FullYear",1),MMMM:Hb("Month"),MMM:Hb("Month",!0),MM:ba("Month",2,1),M:ba("Month",1,1),dd:ba("Date",2),d:ba("Date",1),HH:ba("Hours",2),H:ba("Hours",1),hh:ba("Hours",2,-12),h:ba("Hours",1,-12),mm:ba("Minutes",2),m:ba("Minutes",1),ss:ba("Seconds",2),s:ba("Seconds",1),sss:ba("Milliseconds",3),EEEE:Hb("Day"),
+EEE:Hb("Day",!0),a:function(a,b){return 12>a.getHours()?b.AMPMS[0]:b.AMPMS[1]},Z:function(a,b,d){a=-1*d;return a=(0<=a?"+":"")+(Gb(Math[0<a?"floor":"ceil"](a/60),2)+Gb(Math.abs(a%60),2))},ww:Hd(2),w:Hd(1),G:jc,GG:jc,GGG:jc,GGGG:function(a,b){return 0>=a.getFullYear()?b.ERANAMES[0]:b.ERANAMES[1]}},sg=/((?:[^yMdHhmsaZEwG']+)|(?:'(?:[^']|'')*')|(?:E+|y+|M+|d+|H+|h+|m+|s+|a|Z|G+|w+))(.*)/,rg=/^\-?\d+$/;Ad.$inject=["$locale"];var mg=ma(M),ng=ma(rb);Cd.$inject=["$parse"];var me=ma({restrict:"E",compile:function(a,
+b){if(!b.href&&!b.xlinkHref)return function(a,b){if("a"===b[0].nodeName.toLowerCase()){var e="[object SVGAnimatedString]"===na.call(b.prop("href"))?"xlink:href":"href";b.on("click",function(a){b.attr(e)||a.preventDefault()})}}}}),sb={};p(Bb,function(a,b){function d(a,d,e){a.$watch(e[c],function(a){e.$set(b,!!a)})}if("multiple"!=a){var c=va("ng-"+b),e=d;"checked"===a&&(e=function(a,b,e){e.ngModel!==e[c]&&d(a,b,e)});sb[c]=function(){return{restrict:"A",priority:100,link:e}}}});p(ad,function(a,b){sb[b]=
+function(){return{priority:100,link:function(a,c,e){if("ngPattern"===b&&"/"==e.ngPattern.charAt(0)&&(c=e.ngPattern.match(vg))){e.$set("ngPattern",new RegExp(c[1],c[2]));return}a.$watch(e[b],function(a){e.$set(b,a)})}}}});p(["src","srcset","href"],function(a){var b=va("ng-"+a);sb[b]=function(){return{priority:99,link:function(d,c,e){var f=a,g=a;"href"===a&&"[object SVGAnimatedString]"===na.call(c.prop("href"))&&(g="xlinkHref",e.$attr[g]="xlink:href",f=null);e.$observe(b,function(b){b?(e.$set(g,b),
+Ha&&f&&c.prop(f,e[g])):"href"===a&&e.$set(g,null)})}}}});var Ib={$addControl:v,$$renameControl:function(a,b){a.$name=b},$removeControl:v,$setValidity:v,$setDirty:v,$setPristine:v,$setSubmitted:v};Id.$inject=["$element","$attrs","$scope","$animate","$interpolate"];var Rd=function(a){return["$timeout","$parse",function(b,d){function c(a){return""===a?d('this[""]').assign:d(a).assign||v}return{name:"form",restrict:a?"EAC":"E",require:["form","^^?form"],controller:Id,compile:function(d,f){d.addClass(Xa).addClass(lb);
+var g=f.name?"name":a&&f.ngForm?"ngForm":!1;return{pre:function(a,d,e,f){var n=f[0];if(!("action"in e)){var p=function(b){a.$apply(function(){n.$commitViewValue();n.$setSubmitted()});b.preventDefault()};d[0].addEventListener("submit",p,!1);d.on("$destroy",function(){b(function(){d[0].removeEventListener("submit",p,!1)},0,!1)})}(f[1]||n.$$parentForm).$addControl(n);var r=g?c(n.$name):v;g&&(r(a,n),e.$observe(g,function(b){n.$name!==b&&(r(a,u),n.$$parentForm.$$renameControl(n,b),r=c(n.$name),r(a,n))}));
+d.on("$destroy",function(){n.$$parentForm.$removeControl(n);r(a,u);N(n,Ib)})}}}}}]},ne=Rd(),Ae=Rd(!0),ug=/\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+([+-][0-2]\d:[0-5]\d|Z)/,Dg=/^[a-z][a-z\d.+-]*:\/*(?:[^:@]+(?::[^@]+)?@)?(?:[^\s:/?#]+|\[[a-f\d:]+\])(?::\d+)?(?:\/[^?#]*)?(?:\?[^#]*)?(?:#.*)?$/i,Eg=/^[a-z0-9!#$%&'*+\/=?^_`{|}~.-]+@[a-z0-9]([a-z0-9-]*[a-z0-9])?(\.[a-z0-9]([a-z0-9-]*[a-z0-9])?)*$/i,Fg=/^\s*(\-|\+)?(\d+|(\d*(\.\d*)))([eE][+-]?\d+)?\s*$/,Sd=/^(\d{4})-(\d{2})-(\d{2})$/,Td=/^(\d{4})-(\d\d)-(\d\d)T(\d\d):(\d\d)(?::(\d\d)(\.\d{1,3})?)?$/,
+mc=/^(\d{4})-W(\d\d)$/,Ud=/^(\d{4})-(\d\d)$/,Vd=/^(\d\d):(\d\d)(?::(\d\d)(\.\d{1,3})?)?$/,Kd=Z();p(["date","datetime-local","month","time","week"],function(a){Kd[a]=!0});var Wd={text:function(a,b,d,c,e,f){ib(a,b,d,c,e,f);kc(c)},date:jb("date",Sd,Kb(Sd,["yyyy","MM","dd"]),"yyyy-MM-dd"),"datetime-local":jb("datetimelocal",Td,Kb(Td,"yyyy MM dd HH mm ss sss".split(" ")),"yyyy-MM-ddTHH:mm:ss.sss"),time:jb("time",Vd,Kb(Vd,["HH","mm","ss","sss"]),"HH:mm:ss.sss"),week:jb("week",mc,function(a,b){if(ea(a))return a;
+if(I(a)){mc.lastIndex=0;var d=mc.exec(a);if(d){var c=+d[1],e=+d[2],f=d=0,g=0,h=0,k=Gd(c),e=7*(e-1);b&&(d=b.getHours(),f=b.getMinutes(),g=b.getSeconds(),h=b.getMilliseconds());return new Date(c,0,k.getDate()+e,d,f,g,h)}}return NaN},"yyyy-Www"),month:jb("month",Ud,Kb(Ud,["yyyy","MM"]),"yyyy-MM"),number:function(a,b,d,c,e,f){Ld(a,b,d,c);ib(a,b,d,c,e,f);c.$$parserName="number";c.$parsers.push(function(a){return c.$isEmpty(a)?null:Fg.test(a)?parseFloat(a):u});c.$formatters.push(function(a){if(!c.$isEmpty(a)){if(!P(a))throw kb("numfmt",
+a);a=a.toString()}return a});if(w(d.min)||d.ngMin){var g;c.$validators.min=function(a){return c.$isEmpty(a)||r(g)||a>=g};d.$observe("min",function(a){w(a)&&!P(a)&&(a=parseFloat(a,10));g=P(a)&&!isNaN(a)?a:u;c.$validate()})}if(w(d.max)||d.ngMax){var h;c.$validators.max=function(a){return c.$isEmpty(a)||r(h)||a<=h};d.$observe("max",function(a){w(a)&&!P(a)&&(a=parseFloat(a,10));h=P(a)&&!isNaN(a)?a:u;c.$validate()})}},url:function(a,b,d,c,e,f){ib(a,b,d,c,e,f);kc(c);c.$$parserName="url";c.$validators.url=
+function(a,b){var d=a||b;return c.$isEmpty(d)||Dg.test(d)}},email:function(a,b,d,c,e,f){ib(a,b,d,c,e,f);kc(c);c.$$parserName="email";c.$validators.email=function(a,b){var d=a||b;return c.$isEmpty(d)||Eg.test(d)}},radio:function(a,b,d,c){r(d.name)&&b.attr("name",++mb);b.on("click",function(a){b[0].checked&&c.$setViewValue(d.value,a&&a.type)});c.$render=function(){b[0].checked=d.value==c.$viewValue};d.$observe("value",c.$render)},checkbox:function(a,b,d,c,e,f,g,h){var k=Md(h,a,"ngTrueValue",d.ngTrueValue,
+!0),m=Md(h,a,"ngFalseValue",d.ngFalseValue,!1);b.on("click",function(a){c.$setViewValue(b[0].checked,a&&a.type)});c.$render=function(){b[0].checked=c.$viewValue};c.$isEmpty=function(a){return!1===a};c.$formatters.push(function(a){return la(a,k)});c.$parsers.push(function(a){return a?k:m})},hidden:v,button:v,submit:v,reset:v,file:v},Dc=["$browser","$sniffer","$filter","$parse",function(a,b,d,c){return{restrict:"E",require:["?ngModel"],compile:function(e,f){"hidden"===M(f.type)&&f.$set("autocomplete",
+"off");return{pre:function(e,f,k,m){m[0]&&(Wd[M(k.type)]||Wd.text)(e,f,k,m[0],b,a,d,c)}}}}}],Gg=/^(true|false|\d+)$/,Se=function(){return{restrict:"A",priority:100,compile:function(a,b){return Gg.test(b.ngValue)?function(a,b,e){e.$set("value",a.$eval(e.ngValue))}:function(a,b,e){a.$watch(e.ngValue,function(a){e.$set("value",a)})}}}},se=["$compile",function(a){return{restrict:"AC",compile:function(b){a.$$addBindingClass(b);return function(b,c,e){a.$$addBindingInfo(c,e.ngBind);c=c[0];b.$watch(e.ngBind,
+function(a){c.textContent=r(a)?"":a})}}}}],ue=["$interpolate","$compile",function(a,b){return{compile:function(d){b.$$addBindingClass(d);return function(c,d,f){c=a(d.attr(f.$attr.ngBindTemplate));b.$$addBindingInfo(d,c.expressions);d=d[0];f.$observe("ngBindTemplate",function(a){d.textContent=r(a)?"":a})}}}}],te=["$sce","$parse","$compile",function(a,b,d){return{restrict:"A",compile:function(c,e){var f=b(e.ngBindHtml),g=b(e.ngBindHtml,function(b){return a.valueOf(b)});d.$$addBindingClass(c);return function(b,
+c,e){d.$$addBindingInfo(c,e.ngBindHtml);b.$watch(g,function(){var d=f(b);c.html(a.getTrustedHtml(d)||"")})}}}}],Re=ma({restrict:"A",require:"ngModel",link:function(a,b,d,c){c.$viewChangeListeners.push(function(){a.$eval(d.ngChange)})}}),ve=lc("",!0),xe=lc("Odd",0),we=lc("Even",1),ye=Ka({compile:function(a,b){b.$set("ngCloak",u);a.removeClass("ng-cloak")}}),ze=[function(){return{restrict:"A",scope:!0,controller:"@",priority:500}}],Ic={},Hg={blur:!0,focus:!0};p("click dblclick mousedown mouseup mouseover mouseout mousemove mouseenter mouseleave keydown keyup keypress submit focus blur copy cut paste".split(" "),
+function(a){var b=va("ng-"+a);Ic[b]=["$parse","$rootScope",function(d,c){return{restrict:"A",compile:function(e,f){var g=d(f[b],null,!0);return function(b,d){d.on(a,function(d){var e=function(){g(b,{$event:d})};Hg[a]&&c.$$phase?b.$evalAsync(e):b.$apply(e)})}}}}]});var Ce=["$animate",function(a){return{multiElement:!0,transclude:"element",priority:600,terminal:!0,restrict:"A",$$tlb:!0,link:function(b,d,c,e,f){var g,h,k;b.$watch(c.ngIf,function(b){b?h||f(function(b,e){h=e;b[b.length++]=U.createComment(" end ngIf: "+
+c.ngIf+" ");g={clone:b};a.enter(b,d.parent(),d)}):(k&&(k.remove(),k=null),h&&(h.$destroy(),h=null),g&&(k=qb(g.clone),a.leave(k).then(function(){k=null}),g=null))})}}}],De=["$templateRequest","$anchorScroll","$animate",function(a,b,d){return{restrict:"ECA",priority:400,terminal:!0,transclude:"element",controller:da.noop,compile:function(c,e){var f=e.ngInclude||e.src,g=e.onload||"",h=e.autoscroll;return function(c,e,l,n,p){var r=0,t,s,q,y=function(){s&&(s.remove(),s=null);t&&(t.$destroy(),t=null);q&&
+(d.leave(q).then(function(){s=null}),s=q,q=null)};c.$watch(f,function(f){var l=function(){!w(h)||h&&!c.$eval(h)||b()},s=++r;f?(a(f,!0).then(function(a){if(!c.$$destroyed&&s===r){var b=c.$new();n.template=a;a=p(b,function(a){y();d.enter(a,null,e).then(l)});t=b;q=a;t.$emit("$includeContentLoaded",f);c.$eval(g)}},function(){c.$$destroyed||s!==r||(y(),c.$emit("$includeContentError",f))}),c.$emit("$includeContentRequested",f)):(y(),n.template=null)})}}}}],Ue=["$compile",function(a){return{restrict:"ECA",
+priority:-400,require:"ngInclude",link:function(b,d,c,e){/SVG/.test(d[0].toString())?(d.empty(),a(Lc(e.template,U).childNodes)(b,function(a){d.append(a)},{futureParentElement:d})):(d.html(e.template),a(d.contents())(b))}}}],Ee=Ka({priority:450,compile:function(){return{pre:function(a,b,d){a.$eval(d.ngInit)}}}}),Qe=function(){return{restrict:"A",priority:100,require:"ngModel",link:function(a,b,d,c){var e=b.attr(d.$attr.ngList)||", ",f="false"!==d.ngTrim,g=f?T(e):e;c.$parsers.push(function(a){if(!r(a)){var b=
+[];a&&p(a.split(g),function(a){a&&b.push(f?T(a):a)});return b}});c.$formatters.push(function(a){return L(a)?a.join(e):u});c.$isEmpty=function(a){return!a||!a.length}}}},lb="ng-valid",Nd="ng-invalid",Xa="ng-pristine",Jb="ng-dirty",Pd="ng-pending",kb=A("ngModel"),Ig=["$scope","$exceptionHandler","$attrs","$element","$parse","$animate","$timeout","$rootScope","$q","$interpolate",function(a,b,d,c,e,f,g,h,k,m){this.$modelValue=this.$viewValue=Number.NaN;this.$$rawModelValue=u;this.$validators={};this.$asyncValidators=
+{};this.$parsers=[];this.$formatters=[];this.$viewChangeListeners=[];this.$untouched=!0;this.$touched=!1;this.$pristine=!0;this.$dirty=!1;this.$valid=!0;this.$invalid=!1;this.$error={};this.$$success={};this.$pending=u;this.$name=m(d.name||"",!1)(a);this.$$parentForm=Ib;var l=e(d.ngModel),n=l.assign,s=l,z=n,t=null,F,q=this;this.$$setOptions=function(a){if((q.$options=a)&&a.getterSetter){var b=e(d.ngModel+"()"),f=e(d.ngModel+"($$$p)");s=function(a){var c=l(a);H(c)&&(c=b(a));return c};z=function(a,
+b){H(l(a))?f(a,{$$$p:q.$modelValue}):n(a,q.$modelValue)}}else if(!l.assign)throw kb("nonassign",d.ngModel,ua(c));};this.$render=v;this.$isEmpty=function(a){return r(a)||""===a||null===a||a!==a};var y=0;Jd({ctrl:this,$element:c,set:function(a,b){a[b]=!0},unset:function(a,b){delete a[b]},$animate:f});this.$setPristine=function(){q.$dirty=!1;q.$pristine=!0;f.removeClass(c,Jb);f.addClass(c,Xa)};this.$setDirty=function(){q.$dirty=!0;q.$pristine=!1;f.removeClass(c,Xa);f.addClass(c,Jb);q.$$parentForm.$setDirty()};
+this.$setUntouched=function(){q.$touched=!1;q.$untouched=!0;f.setClass(c,"ng-untouched","ng-touched")};this.$setTouched=function(){q.$touched=!0;q.$untouched=!1;f.setClass(c,"ng-touched","ng-untouched")};this.$rollbackViewValue=function(){g.cancel(t);q.$viewValue=q.$$lastCommittedViewValue;q.$render()};this.$validate=function(){if(!P(q.$modelValue)||!isNaN(q.$modelValue)){var a=q.$$rawModelValue,b=q.$valid,c=q.$modelValue,d=q.$options&&q.$options.allowInvalid;q.$$runValidators(a,q.$$lastCommittedViewValue,
+function(e){d||b===e||(q.$modelValue=e?a:u,q.$modelValue!==c&&q.$$writeModelToScope())})}};this.$$runValidators=function(a,b,c){function d(){var c=!0;p(q.$validators,function(d,e){var g=d(a,b);c=c&&g;f(e,g)});return c?!0:(p(q.$asyncValidators,function(a,b){f(b,null)}),!1)}function e(){var c=[],d=!0;p(q.$asyncValidators,function(e,g){var h=e(a,b);if(!h||!H(h.then))throw kb("nopromise",h);f(g,u);c.push(h.then(function(){f(g,!0)},function(a){d=!1;f(g,!1)}))});c.length?k.all(c).then(function(){g(d)},
+v):g(!0)}function f(a,b){h===y&&q.$setValidity(a,b)}function g(a){h===y&&c(a)}y++;var h=y;(function(){var a=q.$$parserName||"parse";if(r(F))f(a,null);else return F||(p(q.$validators,function(a,b){f(b,null)}),p(q.$asyncValidators,function(a,b){f(b,null)})),f(a,F),F;return!0})()?d()?e():g(!1):g(!1)};this.$commitViewValue=function(){var a=q.$viewValue;g.cancel(t);if(q.$$lastCommittedViewValue!==a||""===a&&q.$$hasNativeValidators)q.$$lastCommittedViewValue=a,q.$pristine&&this.$setDirty(),this.$$parseAndValidate()};
+this.$$parseAndValidate=function(){var b=q.$$lastCommittedViewValue;if(F=r(b)?u:!0)for(var c=0;c<q.$parsers.length;c++)if(b=q.$parsers[c](b),r(b)){F=!1;break}P(q.$modelValue)&&isNaN(q.$modelValue)&&(q.$modelValue=s(a));var d=q.$modelValue,e=q.$options&&q.$options.allowInvalid;q.$$rawModelValue=b;e&&(q.$modelValue=b,q.$modelValue!==d&&q.$$writeModelToScope());q.$$runValidators(b,q.$$lastCommittedViewValue,function(a){e||(q.$modelValue=a?b:u,q.$modelValue!==d&&q.$$writeModelToScope())})};this.$$writeModelToScope=
+function(){z(a,q.$modelValue);p(q.$viewChangeListeners,function(a){try{a()}catch(c){b(c)}})};this.$setViewValue=function(a,b){q.$viewValue=a;q.$options&&!q.$options.updateOnDefault||q.$$debounceViewValueCommit(b)};this.$$debounceViewValueCommit=function(b){var c=0,d=q.$options;d&&w(d.debounce)&&(d=d.debounce,P(d)?c=d:P(d[b])?c=d[b]:P(d["default"])&&(c=d["default"]));g.cancel(t);c?t=g(function(){q.$commitViewValue()},c):h.$$phase?q.$commitViewValue():a.$apply(function(){q.$commitViewValue()})};a.$watch(function(){var b=
+s(a);if(b!==q.$modelValue&&(q.$modelValue===q.$modelValue||b===b)){q.$modelValue=q.$$rawModelValue=b;F=u;for(var c=q.$formatters,d=c.length,e=b;d--;)e=c[d](e);q.$viewValue!==e&&(q.$viewValue=q.$$lastCommittedViewValue=e,q.$render(),q.$$runValidators(b,e,v))}return b})}],Pe=["$rootScope",function(a){return{restrict:"A",require:["ngModel","^?form","^?ngModelOptions"],controller:Ig,priority:1,compile:function(b){b.addClass(Xa).addClass("ng-untouched").addClass(lb);return{pre:function(a,b,e,f){var g=
+f[0];b=f[1]||g.$$parentForm;g.$$setOptions(f[2]&&f[2].$options);b.$addControl(g);e.$observe("name",function(a){g.$name!==a&&g.$$parentForm.$$renameControl(g,a)});a.$on("$destroy",function(){g.$$parentForm.$removeControl(g)})},post:function(b,c,e,f){var g=f[0];if(g.$options&&g.$options.updateOn)c.on(g.$options.updateOn,function(a){g.$$debounceViewValueCommit(a&&a.type)});c.on("blur",function(c){g.$touched||(a.$$phase?b.$evalAsync(g.$setTouched):b.$apply(g.$setTouched))})}}}}}],Jg=/(\s+|^)default(\s+|$)/,
+Te=function(){return{restrict:"A",controller:["$scope","$attrs",function(a,b){var d=this;this.$options=Na(a.$eval(b.ngModelOptions));w(this.$options.updateOn)?(this.$options.updateOnDefault=!1,this.$options.updateOn=T(this.$options.updateOn.replace(Jg,function(){d.$options.updateOnDefault=!0;return" "}))):this.$options.updateOnDefault=!0}]}},Fe=Ka({terminal:!0,priority:1E3}),Kg=A("ngOptions"),Lg=/^\s*([\s\S]+?)(?:\s+as\s+([\s\S]+?))?(?:\s+group\s+by\s+([\s\S]+?))?(?:\s+disable\s+when\s+([\s\S]+?))?\s+for\s+(?:([\$\w][\$\w]*)|(?:\(\s*([\$\w][\$\w]*)\s*,\s*([\$\w][\$\w]*)\s*\)))\s+in\s+([\s\S]+?)(?:\s+track\s+by\s+([\s\S]+?))?$/,
+Ne=["$compile","$parse",function(a,b){function d(a,c,d){function e(a,b,c,d,f){this.selectValue=a;this.viewValue=b;this.label=c;this.group=d;this.disabled=f}function m(a){var b;if(!p&&Aa(a))b=a;else{b=[];for(var c in a)a.hasOwnProperty(c)&&"$"!==c.charAt(0)&&b.push(c)}return b}var l=a.match(Lg);if(!l)throw Kg("iexp",a,ua(c));var n=l[5]||l[7],p=l[6];a=/ as /.test(l[0])&&l[1];var r=l[9];c=b(l[2]?l[1]:n);var s=a&&b(a)||c,u=r&&b(r),q=r?function(a,b){return u(d,b)}:function(a){return Da(a)},y=function(a,
+b){return q(a,C(a,b))},x=b(l[2]||l[1]),w=b(l[3]||""),E=b(l[4]||""),v=b(l[8]),B={},C=p?function(a,b){B[p]=b;B[n]=a;return B}:function(a){B[n]=a;return B};return{trackBy:r,getTrackByValue:y,getWatchables:b(v,function(a){var b=[];a=a||[];for(var c=m(a),e=c.length,f=0;f<e;f++){var g=a===c?f:c[f],k=C(a[g],g),g=q(a[g],k);b.push(g);if(l[2]||l[1])g=x(d,k),b.push(g);l[4]&&(k=E(d,k),b.push(k))}return b}),getOptions:function(){for(var a=[],b={},c=v(d)||[],f=m(c),g=f.length,l=0;l<g;l++){var n=c===f?l:f[l],p=
+C(c[n],n),u=s(d,p),n=q(u,p),F=x(d,p),G=w(d,p),p=E(d,p),u=new e(n,u,F,G,p);a.push(u);b[n]=u}return{items:a,selectValueMap:b,getOptionFromViewValue:function(a){return b[y(a)]},getViewValueFromOption:function(a){return r?da.copy(a.viewValue):a.viewValue}}}}}var c=U.createElement("option"),e=U.createElement("optgroup");return{restrict:"A",terminal:!0,require:["select","?ngModel"],link:{pre:function(a,b,c,d){d[0].registerOption=v},post:function(b,g,h,k){function m(a,b){a.element=b;b.disabled=a.disabled;
+a.label!==b.label&&(b.label=a.label,b.textContent=a.label);a.value!==b.value&&(b.value=a.selectValue)}function l(a,b,c,d){b&&M(b.nodeName)===c?c=b:(c=d.cloneNode(!1),b?a.insertBefore(c,b):a.appendChild(c));return c}function n(a){for(var b;a;)b=a.nextSibling,Xb(a),a=b}function r(a){var b=y&&y[0],c=v&&v[0];if(b||c)for(;a&&(a===b||a===c||8===a.nodeType||"option"===oa(a)&&""===a.value);)a=a.nextSibling;return a}function s(){var a=B&&u.readValue();B=C.getOptions();var b={},d=g[0].firstChild;E&&g.prepend(y);
+d=r(d);B.items.forEach(function(a){var f,h;a.group?(f=b[a.group],f||(f=l(g[0],d,"optgroup",e),d=f.nextSibling,f.label=a.group,f=b[a.group]={groupElement:f,currentOptionElement:f.firstChild}),h=l(f.groupElement,f.currentOptionElement,"option",c),m(a,h),f.currentOptionElement=h.nextSibling):(h=l(g[0],d,"option",c),m(a,h),d=h.nextSibling)});Object.keys(b).forEach(function(a){n(b[a].currentOptionElement)});n(d);t.$render();if(!t.$isEmpty(a)){var f=u.readValue();(C.trackBy||q?la(a,f):a===f)||(t.$setViewValue(f),
+t.$render())}}var t=k[1];if(t){var u=k[0],q=h.multiple,y;k=0;for(var x=g.children(),w=x.length;k<w;k++)if(""===x[k].value){y=x.eq(k);break}var E=!!y,v=D(c.cloneNode(!1));v.val("?");var B,C=d(h.ngOptions,g,b);q?(t.$isEmpty=function(a){return!a||0===a.length},u.writeValue=function(a){B.items.forEach(function(a){a.element.selected=!1});a&&a.forEach(function(a){(a=B.getOptionFromViewValue(a))&&!a.disabled&&(a.element.selected=!0)})},u.readValue=function(){var a=g.val()||[],b=[];p(a,function(a){(a=B.selectValueMap[a])&&
+!a.disabled&&b.push(B.getViewValueFromOption(a))});return b},C.trackBy&&b.$watchCollection(function(){if(L(t.$viewValue))return t.$viewValue.map(function(a){return C.getTrackByValue(a)})},function(){t.$render()})):(u.writeValue=function(a){var b=B.getOptionFromViewValue(a);b&&!b.disabled?(g[0].value!==b.selectValue&&(v.remove(),E||y.remove(),g[0].value=b.selectValue,b.element.selected=!0),b.element.setAttribute("selected","selected")):null===a||E?(v.remove(),E||g.prepend(y),g.val(""),y.prop("selected",
+!0),y.attr("selected",!0)):(E||y.remove(),g.prepend(v),g.val("?"),v.prop("selected",!0),v.attr("selected",!0))},u.readValue=function(){var a=B.selectValueMap[g.val()];return a&&!a.disabled?(E||y.remove(),v.remove(),B.getViewValueFromOption(a)):null},C.trackBy&&b.$watch(function(){return C.getTrackByValue(t.$viewValue)},function(){t.$render()}));E?(y.remove(),a(y)(b),y.removeClass("ng-scope")):y=D(c.cloneNode(!1));s();b.$watchCollection(C.getWatchables,s)}}}}}],Ge=["$locale","$interpolate","$log",
+function(a,b,d){var c=/{}/g,e=/^when(Minus)?(.+)$/;return{link:function(f,g,h){function k(a){g.text(a||"")}var m=h.count,l=h.$attr.when&&g.attr(h.$attr.when),n=h.offset||0,s=f.$eval(l)||{},u={},t=b.startSymbol(),w=b.endSymbol(),q=t+m+"-"+n+w,y=da.noop,x;p(h,function(a,b){var c=e.exec(b);c&&(c=(c[1]?"-":"")+M(c[2]),s[c]=g.attr(h.$attr[b]))});p(s,function(a,d){u[d]=b(a.replace(c,q))});f.$watch(m,function(b){var c=parseFloat(b),e=isNaN(c);e||c in s||(c=a.pluralCat(c-n));c===x||e&&P(x)&&isNaN(x)||(y(),
+e=u[c],r(e)?(null!=b&&d.debug("ngPluralize: no rule defined for '"+c+"' in "+l),y=v,k()):y=f.$watch(e,k),x=c)})}}}],He=["$parse","$animate",function(a,b){var d=A("ngRepeat"),c=function(a,b,c,d,k,m,l){a[c]=d;k&&(a[k]=m);a.$index=b;a.$first=0===b;a.$last=b===l-1;a.$middle=!(a.$first||a.$last);a.$odd=!(a.$even=0===(b&1))};return{restrict:"A",multiElement:!0,transclude:"element",priority:1E3,terminal:!0,$$tlb:!0,compile:function(e,f){var g=f.ngRepeat,h=U.createComment(" end ngRepeat: "+g+" "),k=g.match(/^\s*([\s\S]+?)\s+in\s+([\s\S]+?)(?:\s+as\s+([\s\S]+?))?(?:\s+track\s+by\s+([\s\S]+?))?\s*$/);
+if(!k)throw d("iexp",g);var m=k[1],l=k[2],n=k[3],r=k[4],k=m.match(/^(?:(\s*[\$\w]+)|\(\s*([\$\w]+)\s*,\s*([\$\w]+)\s*\))$/);if(!k)throw d("iidexp",m);var s=k[3]||k[1],t=k[2];if(n&&(!/^[$a-zA-Z_][$a-zA-Z0-9_]*$/.test(n)||/^(null|undefined|this|\$index|\$first|\$middle|\$last|\$even|\$odd|\$parent|\$root|\$id)$/.test(n)))throw d("badident",n);var v,q,y,x,w={$id:Da};r?v=a(r):(y=function(a,b){return Da(b)},x=function(a){return a});return function(a,e,f,k,m){v&&(q=function(b,c,d){t&&(w[t]=b);w[s]=c;w.$index=
+d;return v(a,w)});var r=Z();a.$watchCollection(l,function(f){var k,l,v=e[0],w,B=Z(),C,F,D,G,H,A,I;n&&(a[n]=f);if(Aa(f))H=f,l=q||y;else for(I in l=q||x,H=[],f)sa.call(f,I)&&"$"!==I.charAt(0)&&H.push(I);C=H.length;I=Array(C);for(k=0;k<C;k++)if(F=f===H?k:H[k],D=f[F],G=l(F,D,k),r[G])A=r[G],delete r[G],B[G]=A,I[k]=A;else{if(B[G])throw p(I,function(a){a&&a.scope&&(r[a.id]=a)}),d("dupes",g,G,D);I[k]={id:G,scope:u,clone:u};B[G]=!0}for(w in r){A=r[w];G=qb(A.clone);b.leave(G);if(G[0].parentNode)for(k=0,l=G.length;k<
+l;k++)G[k].$$NG_REMOVED=!0;A.scope.$destroy()}for(k=0;k<C;k++)if(F=f===H?k:H[k],D=f[F],A=I[k],A.scope){w=v;do w=w.nextSibling;while(w&&w.$$NG_REMOVED);A.clone[0]!=w&&b.move(qb(A.clone),null,v);v=A.clone[A.clone.length-1];c(A.scope,k,s,D,t,F,C)}else m(function(a,d){A.scope=d;var e=h.cloneNode(!1);a[a.length++]=e;b.enter(a,null,v);v=e;A.clone=a;B[A.id]=A;c(A.scope,k,s,D,t,F,C)});r=B})}}}}],Ie=["$animate",function(a){return{restrict:"A",multiElement:!0,link:function(b,d,c){b.$watch(c.ngShow,function(b){a[b?
+"removeClass":"addClass"](d,"ng-hide",{tempClasses:"ng-hide-animate"})})}}}],Be=["$animate",function(a){return{restrict:"A",multiElement:!0,link:function(b,d,c){b.$watch(c.ngHide,function(b){a[b?"addClass":"removeClass"](d,"ng-hide",{tempClasses:"ng-hide-animate"})})}}}],Je=Ka(function(a,b,d){a.$watch(d.ngStyle,function(a,d){d&&a!==d&&p(d,function(a,c){b.css(c,"")});a&&b.css(a)},!0)}),Ke=["$animate",function(a){return{require:"ngSwitch",controller:["$scope",function(){this.cases={}}],link:function(b,
+d,c,e){var f=[],g=[],h=[],k=[],m=function(a,b){return function(){a.splice(b,1)}};b.$watch(c.ngSwitch||c.on,function(b){var c,d;c=0;for(d=h.length;c<d;++c)a.cancel(h[c]);c=h.length=0;for(d=k.length;c<d;++c){var r=qb(g[c].clone);k[c].$destroy();(h[c]=a.leave(r)).then(m(h,c))}g.length=0;k.length=0;(f=e.cases["!"+b]||e.cases["?"])&&p(f,function(b){b.transclude(function(c,d){k.push(d);var e=b.element;c[c.length++]=U.createComment(" end ngSwitchWhen: ");g.push({clone:c});a.enter(c,e.parent(),e)})})})}}}],
+Le=Ka({transclude:"element",priority:1200,require:"^ngSwitch",multiElement:!0,link:function(a,b,d,c,e){c.cases["!"+d.ngSwitchWhen]=c.cases["!"+d.ngSwitchWhen]||[];c.cases["!"+d.ngSwitchWhen].push({transclude:e,element:b})}}),Me=Ka({transclude:"element",priority:1200,require:"^ngSwitch",multiElement:!0,link:function(a,b,d,c,e){c.cases["?"]=c.cases["?"]||[];c.cases["?"].push({transclude:e,element:b})}}),Oe=Ka({restrict:"EAC",link:function(a,b,d,c,e){if(!e)throw A("ngTransclude")("orphan",ua(b));e(function(a){b.empty();
+b.append(a)})}}),oe=["$templateCache",function(a){return{restrict:"E",terminal:!0,compile:function(b,d){"text/ng-template"==d.type&&a.put(d.id,b[0].text)}}}],Mg={$setViewValue:v,$render:v},Ng=["$element","$scope","$attrs",function(a,b,d){var c=this,e=new Ta;c.ngModelCtrl=Mg;c.unknownOption=D(U.createElement("option"));c.renderUnknownOption=function(b){b="? "+Da(b)+" ?";c.unknownOption.val(b);a.prepend(c.unknownOption);a.val(b)};b.$on("$destroy",function(){c.renderUnknownOption=v});c.removeUnknownOption=
+function(){c.unknownOption.parent()&&c.unknownOption.remove()};c.readValue=function(){c.removeUnknownOption();return a.val()};c.writeValue=function(b){c.hasOption(b)?(c.removeUnknownOption(),a.val(b),""===b&&c.emptyOption.prop("selected",!0)):null==b&&c.emptyOption?(c.removeUnknownOption(),a.val("")):c.renderUnknownOption(b)};c.addOption=function(a,b){if(8!==b[0].nodeType){Sa(a,'"option value"');""===a&&(c.emptyOption=b);var d=e.get(a)||0;e.put(a,d+1);c.ngModelCtrl.$render();b[0].hasAttribute("selected")&&
+(b[0].selected=!0)}};c.removeOption=function(a){var b=e.get(a);b&&(1===b?(e.remove(a),""===a&&(c.emptyOption=u)):e.put(a,b-1))};c.hasOption=function(a){return!!e.get(a)};c.registerOption=function(a,b,d,e,m){if(e){var l;d.$observe("value",function(a){w(l)&&c.removeOption(l);l=a;c.addOption(a,b)})}else m?a.$watch(m,function(a,e){d.$set("value",a);e!==a&&c.removeOption(e);c.addOption(a,b)}):c.addOption(d.value,b);b.on("$destroy",function(){c.removeOption(d.value);c.ngModelCtrl.$render()})}}],pe=function(){return{restrict:"E",
+require:["select","?ngModel"],controller:Ng,priority:1,link:{pre:function(a,b,d,c){var e=c[1];if(e){var f=c[0];f.ngModelCtrl=e;b.on("change",function(){a.$apply(function(){e.$setViewValue(f.readValue())})});if(d.multiple){f.readValue=function(){var a=[];p(b.find("option"),function(b){b.selected&&a.push(b.value)});return a};f.writeValue=function(a){var c=new Ta(a);p(b.find("option"),function(a){a.selected=w(c.get(a.value))})};var g,h=NaN;a.$watch(function(){h!==e.$viewValue||la(g,e.$viewValue)||(g=
+fa(e.$viewValue),e.$render());h=e.$viewValue});e.$isEmpty=function(a){return!a||0===a.length}}}},post:function(a,b,d,c){var e=c[1];if(e){var f=c[0];e.$render=function(){f.writeValue(e.$viewValue)}}}}}},re=["$interpolate",function(a){return{restrict:"E",priority:100,compile:function(b,d){if(w(d.value))var c=a(d.value,!0);else{var e=a(b.text(),!0);e||d.$set("value",b.text())}return function(a,b,d){var k=b.parent();(k=k.data("$selectController")||k.parent().data("$selectController"))&&k.registerOption(a,
+b,d,c,e)}}}}],qe=ma({restrict:"E",terminal:!1}),Fc=function(){return{restrict:"A",require:"?ngModel",link:function(a,b,d,c){c&&(d.required=!0,c.$validators.required=function(a,b){return!d.required||!c.$isEmpty(b)},d.$observe("required",function(){c.$validate()}))}}},Ec=function(){return{restrict:"A",require:"?ngModel",link:function(a,b,d,c){if(c){var e,f=d.ngPattern||d.pattern;d.$observe("pattern",function(a){I(a)&&0<a.length&&(a=new RegExp("^"+a+"$"));if(a&&!a.test)throw A("ngPattern")("noregexp",
+f,a,ua(b));e=a||u;c.$validate()});c.$validators.pattern=function(a,b){return c.$isEmpty(b)||r(e)||e.test(b)}}}}},Hc=function(){return{restrict:"A",require:"?ngModel",link:function(a,b,d,c){if(c){var e=-1;d.$observe("maxlength",function(a){a=ca(a);e=isNaN(a)?-1:a;c.$validate()});c.$validators.maxlength=function(a,b){return 0>e||c.$isEmpty(b)||b.length<=e}}}}},Gc=function(){return{restrict:"A",require:"?ngModel",link:function(a,b,d,c){if(c){var e=0;d.$observe("minlength",function(a){e=ca(a)||0;c.$validate()});
+c.$validators.minlength=function(a,b){return c.$isEmpty(b)||b.length>=e}}}}};R.angular.bootstrap?R.console&&console.log("WARNING: Tried to load angular more than once."):(he(),je(da),da.module("ngLocale",[],["$provide",function(a){function b(a){a+="";var b=a.indexOf(".");return-1==b?0:a.length-b-1}a.value("$locale",{DATETIME_FORMATS:{AMPMS:["AM","PM"],DAY:"Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),ERANAMES:["Before Christ","Anno Domini"],ERAS:["BC","AD"],FIRSTDAYOFWEEK:6,
+MONTH:"January February March April May June July August September October November December".split(" "),SHORTDAY:"Sun Mon Tue Wed Thu Fri Sat".split(" "),SHORTMONTH:"Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec".split(" "),STANDALONEMONTH:"January February March April May June July August September October November December".split(" "),WEEKENDRANGE:[5,6],fullDate:"EEEE, MMMM d, y",longDate:"MMMM d, y",medium:"MMM d, y h:mm:ss a",mediumDate:"MMM d, y",mediumTime:"h:mm:ss a","short":"M/d/yy h:mm a",
+shortDate:"M/d/yy",shortTime:"h:mm a"},NUMBER_FORMATS:{CURRENCY_SYM:"$",DECIMAL_SEP:".",GROUP_SEP:",",PATTERNS:[{gSize:3,lgSize:3,maxFrac:3,minFrac:0,minInt:1,negPre:"-",negSuf:"",posPre:"",posSuf:""},{gSize:3,lgSize:3,maxFrac:2,minFrac:2,minInt:1,negPre:"-\u00a4",negSuf:"",posPre:"\u00a4",posSuf:""}]},id:"en-us",localeID:"en_US",pluralCat:function(a,c){var e=a|0,f=c;u===f&&(f=Math.min(b(a),3));Math.pow(10,f);return 1==e&&0==f?"one":"other"}})}]),D(U).ready(function(){de(U,yc)}))})(window,document);
+!window.angular.$$csp().noInlineStyle&&window.angular.element(document.head).prepend('<style type="text/css">@charset "UTF-8";[ng\\:cloak],[ng-cloak],[data-ng-cloak],[x-ng-cloak],.ng-cloak,.x-ng-cloak,.ng-hide:not(.ng-hide-animate){display:none !important;}ng\\:form{display:block;}.ng-animate-shim{visibility:hidden;}.ng-anchor{position:absolute;}</style>');
+//# sourceMappingURL=angular.min.js.map
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular.min.js.map b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular.min.js.map
new file mode 100644
index 00000000..136cea87
--- /dev/null
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/angular.min.js.map
@@ -0,0 +1,8 @@
+{
+"version":3,
+"file":"angular.min.js",
+"lineCount":300,
+"mappings":"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",
+"sources":["angular.js"],
+"names":["window","document","undefined","minErr","isArrayLike","obj","isWindow","isArray","isString","jqLite","length","Object","isNumber","Array","item","forEach","iterator","context","key","isFunction","hasOwnProperty","call","isPrimitive","isBlankObject","forEachSorted","keys","sort","i","reverseParams","iteratorFn","value","nextUid","uid","baseExtend","dst","objs","deep","h","$$hashKey","ii","isObject","j","jj","src","isDate","Date","valueOf","isRegExp","RegExp","nodeName","cloneNode","isElement","clone","extend","slice","arguments","merge","toInt","str","parseInt","inherit","parent","extra","create","noop","identity","$","valueFn","hasCustomToString","toString","isUndefined","isDefined","getPrototypeOf","isScope","$evalAsync","$watch","isBoolean","isTypedArray","TYPED_ARRAY_REGEXP","test","node","prop","attr","find","makeMap","items","split","nodeName_","element","lowercase","arrayRemove","array","index","indexOf","splice","copy","source","destination","copyRecurse","push","copyElement","stackSource","stackDest","ngMinErr","needsRecurse","constructor","getTime","match","lastIndex","type","shallowCopy","charAt","equals","o1","o2","t1","t2","keySet","createMap","concat","array1","array2","bind","self","fn","curryArgs","startIndex","apply","toJsonReplacer","val","toJson","pretty","JSON","stringify","fromJson","json","parse","timezoneToOffset","timezone","fallback","replace","ALL_COLONS","requestedTimezoneOffset","isNaN","convertTimezoneToLocal","date","reverse","dateTimezoneOffset","getTimezoneOffset","timezoneOffset","setMinutes","getMinutes","minutes","startingTag","empty","e","elemHtml","append","html","nodeType","NODE_TYPE_TEXT","tryDecodeURIComponent","decodeURIComponent","parseKeyValue","keyValue","splitPoint","substring","toKeyValue","parts","arrayValue","encodeUriQuery","join","encodeUriSegment","pctEncodeSpaces","encodeURIComponent","getNgAttribute","ngAttr","ngAttrPrefixes","getAttribute","angularInit","bootstrap","appElement","module","config","prefix","name","hasAttribute","candidate","querySelector","strictDi","modules","defaultConfig","doBootstrap","injector","tag","unshift","$provide","debugInfoEnabled","$compileProvider","createInjector","invoke","bootstrapApply","scope","compile","$apply","data","NG_ENABLE_DEBUG_INFO","NG_DEFER_BOOTSTRAP","angular","resumeBootstrap","angular.resumeBootstrap","extraModules","resumeDeferredBootstrap","reloadWithDebugInfo","location","reload","getTestability","rootElement","get","snake_case","separator","SNAKE_CASE_REGEXP","letter","pos","toLowerCase","bindJQuery","originalCleanData","bindJQueryFired","jqName","jq","jQuery","on","JQLitePrototype","isolateScope","controller","inheritedData","cleanData","jQuery.cleanData","elems","events","skipDestroyOnNextJQueryCleanData","elem","_data","$destroy","triggerHandler","JQLite","assertArg","arg","reason","assertArgFn","acceptArrayAnnotation","assertNotHasOwnProperty","getter","path","bindFnToScope","lastInstance","len","getBlockNodes","nodes","endNode","blockNodes","nextSibling","setupModuleLoader","ensure","factory","$injectorMinErr","$$minErr","requires","configFn","invokeLater","provider","method","insertMethod","queue","invokeQueue","moduleInstance","invokeLaterAndSetModuleName","recipeName","factoryFunction","$$moduleName","configBlocks","runBlocks","_invokeQueue","_configBlocks","_runBlocks","service","constant","decorator","animation","filter","directive","run","block","publishExternalAPI","version","uppercase","counter","csp","angularModule","ngModule","$$sanitizeUri","$$SanitizeUriProvider","$CompileProvider","a","htmlAnchorDirective","input","inputDirective","textarea","form","formDirective","script","scriptDirective","select","selectDirective","style","styleDirective","option","optionDirective","ngBind","ngBindDirective","ngBindHtml","ngBindHtmlDirective","ngBindTemplate","ngBindTemplateDirective","ngClass","ngClassDirective","ngClassEven","ngClassEvenDirective","ngClassOdd","ngClassOddDirective","ngCloak","ngCloakDirective","ngController","ngControllerDirective","ngForm","ngFormDirective","ngHide","ngHideDirective","ngIf","ngIfDirective","ngInclude","ngIncludeDirective","ngInit","ngInitDirective","ngNonBindable","ngNonBindableDirective","ngPluralize","ngPluralizeDirective","ngRepeat","ngRepeatDirective","ngShow","ngShowDirective","ngStyle","ngStyleDirective","ngSwitch","ngSwitchDirective","ngSwitchWhen","ngSwitchWhenDirective","ngSwitchDefault","ngSwitchDefaultDirective","ngOptions","ngOptionsDirective","ngTransclude","ngTranscludeDirective","ngModel","ngModelDirective","ngList","ngListDirective","ngChange","ngChangeDirective","pattern","patternDirective","ngPattern","required","requiredDirective","ngRequired","minlength","minlengthDirective","ngMinlength","maxlength","maxlengthDirective","ngMaxlength","ngValue","ngValueDirective","ngModelOptions","ngModelOptionsDirective","ngIncludeFillContentDirective","ngAttributeAliasDirectives","ngEventDirectives","$anchorScroll","$AnchorScrollProvider","$animate","$AnimateProvider","$animateCss","$CoreAnimateCssProvider","$$animateJs","$$CoreAnimateJsProvider","$$animateQueue","$$CoreAnimateQueueProvider","$$AnimateRunner","$$AnimateRunnerFactoryProvider","$$animateAsyncRun","$$AnimateAsyncRunFactoryProvider","$browser","$BrowserProvider","$cacheFactory","$CacheFactoryProvider","$controller","$ControllerProvider","$document","$DocumentProvider","$exceptionHandler","$ExceptionHandlerProvider","$filter","$FilterProvider","$$forceReflow","$$ForceReflowProvider","$interpolate","$InterpolateProvider","$interval","$IntervalProvider","$http","$HttpProvider","$httpParamSerializer","$HttpParamSerializerProvider","$httpParamSerializerJQLike","$HttpParamSerializerJQLikeProvider","$httpBackend","$HttpBackendProvider","$xhrFactory","$xhrFactoryProvider","$location","$LocationProvider","$log","$LogProvider","$parse","$ParseProvider","$rootScope","$RootScopeProvider","$q","$QProvider","$$q","$$QProvider","$sce","$SceProvider","$sceDelegate","$SceDelegateProvider","$sniffer","$SnifferProvider","$templateCache","$TemplateCacheProvider","$templateRequest","$TemplateRequestProvider","$$testability","$$TestabilityProvider","$timeout","$TimeoutProvider","$window","$WindowProvider","$$rAF","$$RAFProvider","$$jqLite","$$jqLiteProvider","$$HashMap","$$HashMapProvider","$$cookieReader","$$CookieReaderProvider","camelCase","SPECIAL_CHARS_REGEXP","_","offset","toUpperCase","MOZ_HACK_REGEXP","jqLiteAcceptsData","NODE_TYPE_ELEMENT","NODE_TYPE_DOCUMENT","jqLiteBuildFragment","tmp","fragment","createDocumentFragment","HTML_REGEXP","appendChild","createElement","TAG_NAME_REGEXP","exec","wrap","wrapMap","_default","innerHTML","XHTML_TAG_REGEXP","lastChild","childNodes","firstChild","textContent","createTextNode","jqLiteWrapNode","wrapper","parentNode","replaceChild","argIsString","trim","jqLiteMinErr","parsed","SINGLE_TAG_REGEXP","jqLiteAddNodes","jqLiteClone","jqLiteDealoc","onlyDescendants","jqLiteRemoveData","querySelectorAll","descendants","l","jqLiteOff","unsupported","expandoStore","jqLiteExpandoStore","handle","removeHandler","listenerFns","removeEventListener","MOUSE_EVENT_MAP","expandoId","ng339","jqCache","createIfNecessary","jqId","jqLiteData","isSimpleSetter","isSimpleGetter","massGetter","jqLiteHasClass","selector","jqLiteRemoveClass","cssClasses","setAttribute","cssClass","jqLiteAddClass","existingClasses","root","elements","jqLiteController","jqLiteInheritedData","documentElement","names","NODE_TYPE_DOCUMENT_FRAGMENT","host","jqLiteEmpty","removeChild","jqLiteRemove","keepData","jqLiteDocumentLoaded","action","win","readyState","setTimeout","getBooleanAttrName","booleanAttr","BOOLEAN_ATTR","BOOLEAN_ELEMENTS","createEventHandler","eventHandler","event","isDefaultPrevented","event.isDefaultPrevented","defaultPrevented","eventFns","eventFnsLength","immediatePropagationStopped","originalStopImmediatePropagation","stopImmediatePropagation","event.stopImmediatePropagation","stopPropagation","isImmediatePropagationStopped","event.isImmediatePropagationStopped","handlerWrapper","specialHandlerWrapper","defaultHandlerWrapper","handler","specialMouseHandlerWrapper","target","related","relatedTarget","jqLiteContains","$get","this.$get","hasClass","classes","addClass","removeClass","hashKey","nextUidFn","objType","HashMap","isolatedUid","this.nextUid","put","anonFn","args","fnText","STRIP_COMMENTS","FN_ARGS","modulesToLoad","supportObject","delegate","provider_","providerInjector","instantiate","providerCache","providerSuffix","enforceReturnValue","enforcedReturnValue","result","instanceInjector","factoryFn","enforce","loadModules","moduleFn","runInvokeQueue","invokeArgs","loadedModules","message","stack","createInternalInjector","cache","getService","serviceName","caller","INSTANTIATING","err","shift","locals","$inject","$$annotate","Type","instance","prototype","returnedValue","annotate","has","$injector","instanceCache","decorFn","origProvider","orig$get","origProvider.$get","origInstance","$delegate","autoScrollingEnabled","disableAutoScrolling","this.disableAutoScrolling","getFirstAnchor","list","some","scrollTo","scrollIntoView","scroll","yOffset","getComputedStyle","position","getBoundingClientRect","bottom","elemTop","top","scrollBy","hash","elm","getElementById","getElementsByName","autoScrollWatch","autoScrollWatchAction","newVal","oldVal","mergeClasses","b","splitClasses","klass","prepareAnimateOptions","options","Browser","completeOutstandingRequest","outstandingRequestCount","outstandingRequestCallbacks","pop","error","cacheStateAndFireUrlChange","pendingLocation","cacheState","fireUrlChange","history","state","cachedState","lastCachedState","lastBrowserUrl","url","lastHistoryState","urlChangeListeners","listener","clearTimeout","pendingDeferIds","isMock","$$completeOutstandingRequest","$$incOutstandingRequestCount","self.$$incOutstandingRequestCount","notifyWhenNoOutstandingRequests","self.notifyWhenNoOutstandingRequests","callback","href","baseElement","self.url","sameState","sameBase","stripHash","substr","self.state","urlChangeInit","onUrlChange","self.onUrlChange","$$applicationDestroyed","self.$$applicationDestroyed","off","$$checkUrlChange","baseHref","self.baseHref","defer","self.defer","delay","timeoutId","cancel","self.defer.cancel","deferId","cacheFactory","cacheId","refresh","entry","freshEnd","staleEnd","n","link","p","nextEntry","prevEntry","caches","size","stats","id","capacity","Number","MAX_VALUE","lruHash","lruEntry","remove","removeAll","destroy","info","cacheFactory.info","cacheFactory.get","$$sanitizeUriProvider","parseIsolateBindings","directiveName","isController","LOCAL_REGEXP","bindings","definition","scopeName","bindingCache","$compileMinErr","mode","collection","optional","attrName","assertValidDirectiveName","hasDirectives","COMMENT_DIRECTIVE_REGEXP","CLASS_DIRECTIVE_REGEXP","ALL_OR_NOTHING_ATTRS","REQUIRE_PREFIX_REGEXP","EVENT_HANDLER_ATTR_REGEXP","this.directive","registerDirective","directiveFactory","Suffix","directives","priority","require","restrict","aHrefSanitizationWhitelist","this.aHrefSanitizationWhitelist","regexp","imgSrcSanitizationWhitelist","this.imgSrcSanitizationWhitelist","this.debugInfoEnabled","enabled","safeAddClass","$element","className","$compileNodes","transcludeFn","maxPriority","ignoreDirective","previousCompileContext","NOT_EMPTY","domNode","nodeValue","compositeLinkFn","compileNodes","$$addScopeClass","namespace","publicLinkFn","cloneConnectFn","needsNewScope","$parent","$new","parentBoundTranscludeFn","transcludeControllers","futureParentElement","$$boundTransclude","$linkNode","wrapTemplate","controllerName","$$addScopeInfo","nodeList","$rootElement","childLinkFn","childScope","childBoundTranscludeFn","stableNodeList","nodeLinkFnFound","linkFns","idx","nodeLinkFn","transcludeOnThisElement","createBoundTranscludeFn","transclude","templateOnThisElement","attrs","linkFnFound","Attributes","collectDirectives","applyDirectivesToNode","$$element","terminal","previousBoundTranscludeFn","boundTranscludeFn","transcludedScope","cloneFn","controllers","containingScope","$$transcluded","attrsMap","$attr","addDirective","directiveNormalize","isNgAttr","nAttrs","attributes","attrStartName","attrEndName","ngAttrName","NG_ATTR_BINDING","PREFIX_REGEXP","multiElementMatch","MULTI_ELEMENT_DIR_RE","directiveIsMultiElement","nName","addAttrInterpolateDirective","animVal","msie","addTextInterpolateDirective","NODE_TYPE_COMMENT","byPriority","groupScan","attrStart","attrEnd","depth","groupElementsLinkFnWrapper","linkFn","compileNode","templateAttrs","jqCollection","originalReplaceDirective","preLinkFns","postLinkFns","addLinkFns","pre","post","newIsolateScopeDirective","$$isolateScope","cloneAndAnnotateFn","getControllers","elementControllers","inheritType","dataName","setupControllers","controllerDirectives","controllerKey","$scope","$attrs","$transclude","controllerInstance","controllerAs","linkNode","controllersBoundTransclude","cloneAttachFn","hasElementTranscludeDirective","scopeToChild","controllerScope","removeScopeBindingWatches","newScopeDirective","templateDirective","$$originalDirective","$$isolateBindings","initializeDirectiveBindings","$on","controllerDirective","$$bindings","bindToController","identifier","removeControllerBindingWatches","controllerResult","invokeLinkFn","template","templateUrl","terminalPriority","nonTlbTranscludeDirective","hasTranscludeDirective","hasTemplate","$compileNode","$template","childTranscludeFn","$$start","$$end","directiveValue","assertNoDuplicate","$$tlb","createComment","replaceWith","replaceDirective","contents","$$newScope","denormalizeTemplate","removeComments","templateNamespace","newTemplateAttrs","templateDirectives","unprocessedDirectives","markDirectiveScope","mergeTemplateAttributes","compileTemplateUrl","Math","max","newScope","tDirectives","startAttrName","endAttrName","ident","CNTRL_REG","multiElement","srcAttr","dstAttr","$set","tAttrs","linkQueue","afterTemplateNodeLinkFn","afterTemplateChildLinkFn","beforeTemplateCompileNode","origAsyncDirective","derivedSyncDirective","then","content","tempTemplateAttrs","beforeTemplateLinkNode","linkRootElement","$$destroyed","oldClasses","delayedNodeLinkFn","ignoreChildLinkFn","diff","what","previousDirective","wrapModuleNameIfDefined","moduleName","text","interpolateFn","textInterpolateCompileFn","templateNode","templateNodeParent","hasCompileParent","$$addBindingClass","textInterpolateLinkFn","$$addBindingInfo","expressions","interpolateFnWatchAction","getTrustedContext","attrNormalizedName","HTML","RESOURCE_URL","allOrNothing","trustedContext","attrInterpolatePreLinkFn","$$observers","newValue","$$inter","$$scope","oldValue","$updateClass","elementsToRemove","newNode","firstElementToRemove","removeCount","j2","hasData","expando","k","kk","annotation","removeWatchCollection","lastValue","parentGet","parentSet","compare","$observe","literal","assign","parentValueWatch","parentValue","$stateful","removeWatch","$watchCollection","removeWatches","attributesToCopy","$normalize","$addClass","classVal","$removeClass","newClasses","toAdd","tokenDifference","toRemove","writeAttr","booleanKey","aliasedKey","ALIASED_ATTR","observer","trimmedSrcset","srcPattern","rawUris","nbrUrisWith2parts","floor","innerIdx","lastTuple","removeAttr","listeners","startSymbol","endSymbol","binding","isolated","noTemplate","str1","str2","values","tokens1","tokens2","token","jqNodes","globals","register","this.register","allowGlobals","this.allowGlobals","addIdentifier","expression","later","$controllerMinErr","controllerPrototype","exception","cause","serializeValue","v","toISOString","ngParamSerializer","params","jQueryLikeParamSerializer","serialize","toSerialize","topLevel","defaultHttpResponseTransform","headers","tempData","JSON_PROTECTION_PREFIX","contentType","jsonStart","JSON_START","JSON_ENDS","parseHeaders","line","headerVal","headerKey","headersGetter","headersObj","transformData","status","fns","defaults","transformResponse","transformRequest","d","common","CONTENT_TYPE_APPLICATION_JSON","patch","xsrfCookieName","xsrfHeaderName","paramSerializer","useApplyAsync","this.useApplyAsync","useLegacyPromise","useLegacyPromiseExtensions","this.useLegacyPromiseExtensions","interceptorFactories","interceptors","requestConfig","response","resp","reject","executeHeaderFns","headerContent","processedHeaders","headerFn","header","mergeHeaders","defHeaders","reqHeaders","defHeaderName","lowercaseDefHeaderName","reqHeaderName","chain","serverRequest","reqData","withCredentials","sendReq","promise","when","reversedInterceptors","interceptor","request","requestError","responseError","thenFn","rejectFn","success","promise.success","promise.error","$httpMinErrLegacyFn","done","headersString","statusText","resolveHttpPromise","resolvePromise","$applyAsync","$$phase","deferred","resolve","resolvePromiseWithResult","removePendingReq","pendingRequests","cachedResp","buildUrl","defaultCache","xsrfValue","urlIsSameOrigin","timeout","responseType","serializedParams","interceptorFactory","createShortMethods","createShortMethodsWithData","createXhr","XMLHttpRequest","createHttpBackend","callbacks","$browserDefer","rawDocument","jsonpReq","callbackId","async","body","called","addEventListener","timeoutRequest","jsonpDone","xhr","abort","completeRequest","open","setRequestHeader","onload","xhr.onload","responseText","urlResolve","protocol","getAllResponseHeaders","onerror","onabort","send","this.startSymbol","this.endSymbol","escape","ch","unescapeText","escapedStartRegexp","escapedEndRegexp","mustHaveExpression","parseStringifyInterceptor","getTrusted","$interpolateMinErr","interr","endIndex","parseFns","textLength","expressionPositions","startSymbolLength","exp","endSymbolLength","throwNoconcat","compute","interpolationFn","$$watchDelegate","$watchGroup","interpolateFnWatcher","oldValues","currValue","$interpolate.startSymbol","$interpolate.endSymbol","interval","count","invokeApply","hasParams","setInterval","clearInterval","iteration","skipApply","$$intervalId","tick","notify","intervals","interval.cancel","encodePath","segments","parseAbsoluteUrl","absoluteUrl","locationObj","parsedUrl","$$protocol","$$host","hostname","$$port","port","DEFAULT_PORTS","parseAppUrl","relativeUrl","prefixed","$$path","pathname","$$search","search","$$hash","beginsWith","begin","whole","trimEmptyHash","LocationHtml5Url","appBase","appBaseNoFile","basePrefix","$$html5","$$parse","this.$$parse","pathUrl","$locationMinErr","$$compose","this.$$compose","$$url","$$absUrl","$$parseLinkUrl","this.$$parseLinkUrl","relHref","appUrl","prevAppUrl","rewrittenUrl","LocationHashbangUrl","hashPrefix","withoutBaseUrl","withoutHashUrl","windowsFilePathExp","base","firstPathSegmentMatch","LocationHashbangInHtml5Url","locationGetter","property","locationGetterSetter","preprocess","html5Mode","requireBase","rewriteLinks","this.hashPrefix","this.html5Mode","setBrowserUrlWithFallback","oldUrl","oldState","$$state","afterLocationChange","$broadcast","absUrl","LocationMode","initialUrl","lastIndexOf","IGNORE_URI_REGEXP","ctrlKey","metaKey","shiftKey","which","button","absHref","preventDefault","initializing","newUrl","newState","$digest","$locationWatch","currentReplace","$$replace","urlOrStateChanged","debug","debugEnabled","this.debugEnabled","flag","formatError","Error","sourceURL","consoleLog","console","logFn","log","hasApply","arg1","arg2","warn","ensureSafeMemberName","fullExpression","$parseMinErr","getStringValue","ensureSafeObject","children","ensureSafeFunction","CALL","APPLY","BIND","ensureSafeAssignContext","Function","ifDefined","plusFn","r","findConstantAndWatchExpressions","ast","allConstants","argsToWatch","AST","Program","expr","Literal","toWatch","UnaryExpression","argument","BinaryExpression","left","right","LogicalExpression","ConditionalExpression","alternate","consequent","Identifier","MemberExpression","object","computed","CallExpression","callee","AssignmentExpression","ArrayExpression","ObjectExpression","properties","ThisExpression","getInputs","lastExpression","isAssignable","assignableAST","NGValueParameter","operator","isLiteral","ASTCompiler","astBuilder","ASTInterpreter","isPossiblyDangerousMemberName","getValueOf","objectValueOf","cacheDefault","cacheExpensive","interceptorFn","expensiveChecks","parsedExpression","oneTime","cacheKey","runningChecksEnabled","parseOptions","$parseOptionsExpensive","$parseOptions","lexer","Lexer","parser","Parser","constantWatchDelegate","oneTimeLiteralWatchDelegate","oneTimeWatchDelegate","inputs","inputsWatchDelegate","expensiveChecksInterceptor","addInterceptor","expensiveCheckFn","expensiveCheckOldValue","expressionInputDirtyCheck","oldValueOfValue","objectEquality","prettyPrintExpression","inputExpressions","lastResult","oldInputValueOf","expressionInputWatch","newInputValue","oldInputValueOfValues","oldInputValues","expressionInputsWatch","changed","unwatch","oneTimeWatch","oneTimeListener","old","$$postDigest","isAllDefined","allDefined","constantWatch","constantListener","watchDelegate","useInputs","regularInterceptedExpression","oneTimeInterceptedExpression","noUnsafeEval","$$runningExpensiveChecks","$parse.$$runningExpensiveChecks","qFactory","nextTick","exceptionHandler","callOnce","resolveFn","Promise","simpleBind","scheduleProcessQueue","processScheduled","pending","Deferred","$qMinErr","TypeError","onFulfilled","onRejected","progressBack","catch","finally","handleCallback","$$reject","$$resolve","progress","makePromise","resolved","isResolved","callbackOutput","errback","$Q","Q","resolver","all","promises","results","requestAnimationFrame","webkitRequestAnimationFrame","cancelAnimationFrame","webkitCancelAnimationFrame","webkitCancelRequestAnimationFrame","rafSupported","raf","timer","supported","createChildScopeClass","ChildScope","$$watchers","$$nextSibling","$$childHead","$$childTail","$$listeners","$$listenerCount","$$watchersCount","$id","$$ChildScope","TTL","$rootScopeMinErr","lastDirtyWatch","applyAsyncId","digestTtl","this.digestTtl","destroyChildScope","$event","currentScope","cleanUpScope","$$prevSibling","$root","Scope","beginPhase","phase","incrementWatchersCount","current","decrementListenerCount","initWatchVal","flushApplyAsync","applyAsyncQueue","scheduleApplyAsync","isolate","child","watchExp","watcher","last","eq","deregisterWatch","watchExpressions","watchGroupAction","changeReactionScheduled","firstRun","newValues","deregisterFns","shouldCall","deregisterWatchGroup","unwatchFn","watchGroupSubAction","$watchCollectionInterceptor","_value","bothNaN","newItem","oldItem","internalArray","oldLength","changeDetected","newLength","internalObject","veryOldValue","trackVeryOldValue","changeDetector","initRun","$watchCollectionAction","watch","watchers","dirty","ttl","watchLog","logIdx","asyncTask","asyncQueue","$eval","msg","next","postDigestQueue","eventName","this.$watchGroup","$applyAsyncExpression","namedListeners","indexOfListener","$emit","targetScope","listenerArgs","$$asyncQueue","$$postDigestQueue","$$applyAsyncQueue","sanitizeUri","uri","isImage","regex","normalizedVal","adjustMatcher","matcher","$sceMinErr","escapeForRegexp","adjustMatchers","matchers","adjustedMatchers","SCE_CONTEXTS","resourceUrlWhitelist","resourceUrlBlacklist","this.resourceUrlWhitelist","this.resourceUrlBlacklist","matchUrl","generateHolderType","Base","holderType","trustedValue","$$unwrapTrustedValue","this.$$unwrapTrustedValue","holderType.prototype.valueOf","holderType.prototype.toString","htmlSanitizer","trustedValueHolderBase","byType","CSS","URL","JS","trustAs","Constructor","maybeTrusted","allowed","this.enabled","sce","isEnabled","sce.isEnabled","sce.getTrusted","parseAs","sce.parseAs","enumValue","lName","eventSupport","android","userAgent","navigator","boxee","vendorPrefix","vendorRegex","bodyStyle","transitions","animations","webkitTransition","webkitAnimation","pushState","hasEvent","divElm","handleRequestFn","tpl","ignoreRequestError","totalPendingRequests","getTrustedResourceUrl","transformer","httpOptions","handleError","testability","testability.findBindings","opt_exactMatch","getElementsByClassName","matches","dataBinding","bindingName","testability.findModels","prefixes","attributeEquals","testability.getLocation","testability.setLocation","testability.whenStable","deferreds","$$timeoutId","timeout.cancel","urlParsingNode","requestUrl","originUrl","$$CookieReader","safeDecodeURIComponent","lastCookies","lastCookieString","cookieArray","cookie","currentCookieString","filters","suffix","currencyFilter","dateFilter","filterFilter","jsonFilter","limitToFilter","lowercaseFilter","numberFilter","orderByFilter","uppercaseFilter","comparator","matchAgainstAnyProp","getTypeForFilter","expressionType","predicateFn","createPredicateFn","shouldMatchPrimitives","actual","expected","deepCompare","dontMatchWholeObject","actualType","expectedType","expectedVal","matchAnyProperty","actualVal","$locale","formats","NUMBER_FORMATS","amount","currencySymbol","fractionSize","CURRENCY_SYM","PATTERNS","maxFrac","formatNumber","GROUP_SEP","DECIMAL_SEP","number","numStr","exponent","digits","numberOfIntegerDigits","zeros","ZERO_CHAR","MAX_DIGITS","roundNumber","parsedNumber","minFrac","fractionLen","min","roundAt","digit","carry","reduceRight","groupSep","decimalSep","isInfinity","isFinite","isZero","abs","formattedText","integerLen","decimals","reduce","groups","lgSize","gSize","negPre","negSuf","posPre","posSuf","padNumber","num","neg","dateGetter","dateStrGetter","shortForm","getFirstThursdayOfYear","year","dayOfWeekOnFirst","getDay","weekGetter","firstThurs","getFullYear","thisThurs","getMonth","getDate","round","eraGetter","ERAS","jsonStringToDate","string","R_ISO8601_STR","tzHour","tzMin","dateSetter","setUTCFullYear","setFullYear","timeSetter","setUTCHours","setHours","m","s","ms","parseFloat","format","DATETIME_FORMATS","NUMBER_STRING","DATE_FORMATS_SPLIT","DATE_FORMATS","spacing","limit","Infinity","processPredicates","sortPredicate","reverseOrder","map","predicate","descending","predicates","compareValues","getComparisonObject","predicateValues","doComparison","v1","v2","ngDirective","FormController","controls","$error","$$success","$pending","$name","$dirty","$pristine","$valid","$invalid","$submitted","$$parentForm","nullFormCtrl","$rollbackViewValue","form.$rollbackViewValue","control","$commitViewValue","form.$commitViewValue","$addControl","form.$addControl","$$renameControl","form.$$renameControl","newName","oldName","$removeControl","form.$removeControl","$setValidity","addSetValidityMethod","ctrl","set","unset","$setDirty","form.$setDirty","PRISTINE_CLASS","DIRTY_CLASS","$setPristine","form.$setPristine","setClass","SUBMITTED_CLASS","$setUntouched","form.$setUntouched","$setSubmitted","form.$setSubmitted","stringBasedInputType","$formatters","$isEmpty","baseInputType","composing","ev","ngTrim","$viewValue","$$hasNativeValidators","$setViewValue","deferListener","origValue","keyCode","PARTIAL_VALIDATION_TYPES","PARTIAL_VALIDATION_EVENTS","validity","origBadInput","badInput","origTypeMismatch","typeMismatch","$render","ctrl.$render","createDateParser","mapping","iso","ISO_DATE_REGEXP","yyyy","MM","dd","HH","getHours","mm","ss","getSeconds","sss","getMilliseconds","part","NaN","createDateInputType","parseDate","dynamicDateInputType","isValidDate","parseObservedDateValue","badInputChecker","$options","previousDate","$$parserName","$parsers","parsedDate","ngModelMinErr","ngMin","minVal","$validators","ctrl.$validators.min","$validate","ngMax","maxVal","ctrl.$validators.max","VALIDITY_STATE_PROPERTY","parseConstantExpr","parseFn","classDirective","arrayDifference","arrayClasses","addClasses","digestClassCounts","classCounts","classesToUpdate","updateClasses","ngClassWatchAction","$index","old$index","mod","cachedToggleClass","switchValue","classCache","toggleValidationCss","validationErrorKey","isValid","VALID_CLASS","INVALID_CLASS","setValidity","isObjectEmpty","PENDING_CLASS","combinedState","REGEX_STRING_REGEXP","documentMode","rules","ngCspElement","ngCspAttribute","noInlineStyle","name_","el","full","major","minor","dot","codeName","JQLite._data","mouseleave","mouseenter","optgroup","tbody","tfoot","colgroup","caption","thead","th","td","Node","contains","compareDocumentPosition","ready","trigger","fired","removeData","jqLiteHasData","removeAttribute","css","NODE_TYPE_ATTRIBUTE","lowercasedName","specified","getNamedItem","ret","getText","$dv","multiple","selected","nodeCount","jqLiteOn","types","addHandler","noEventListener","one","onFn","replaceNode","insertBefore","contentDocument","prepend","wrapNode","detach","after","newElement","toggleClass","condition","classCondition","nextElementSibling","getElementsByTagName","extraParameters","dummyEvent","handlerArgs","eventFnsCopy","arg3","unbind","FN_ARG_SPLIT","FN_ARG","argDecl","underscore","$animateMinErr","postDigestElements","updateData","handleCSSClassChanges","existing","pin","domOperation","from","to","classesAdded","add","classesRemoved","runner","complete","$$registeredAnimations","classNameFilter","this.classNameFilter","$$classNameFilter","reservedRegex","NG_ANIMATE_CLASSNAME","domInsert","parentElement","afterElement","afterNode","ELEMENT_NODE","previousElementSibling","end","enter","move","leave","addclass","animate","tempClasses","waitForTick","waitQueue","passed","AnimateRunner","setHost","rafTick","_doneCallbacks","_tick","this._tick","doc","hidden","_state","AnimateRunner.chain","AnimateRunner.all","runners","onProgress","DONE_COMPLETE_STATE","getPromise","resolveHandler","rejectHandler","pause","resume","_resolve","INITIAL_STATE","DONE_PENDING_STATE","initialOptions","closed","$$prepared","cleanupStyles","start","offsetWidth","APPLICATION_JSON","$httpMinErr","$interpolateMinErr.throwNoconcat","$interpolateMinErr.interr","PATH_MATCH","locationPrototype","paramValue","Location","Location.prototype.state","OPERATORS","ESCAPE","lex","tokens","readString","peek","readNumber","isIdent","readIdent","is","isWhitespace","ch2","ch3","op2","op3","op1","throwError","chars","isExpOperator","colStr","peekCh","quote","rawString","hex","String","fromCharCode","rep","ExpressionStatement","Property","program","expressionStatement","expect","filterChain","assignment","ternary","logicalOR","consume","logicalAND","equality","relational","additive","multiplicative","unary","primary","arrayDeclaration","constants","parseArguments","baseExpression","peekToken","kind","e1","e2","e3","e4","peekAhead","t","nextId","vars","own","assignable","stage","computing","recurse","return_","generateFunction","fnKey","intoId","watchId","fnString","USE","STRICT","filterPrefix","watchFns","varsPrefix","section","nameId","recursionFn","skipWatchIdCheck","if_","lazyAssign","computedMember","lazyRecurse","plus","not","getHasOwnProperty","nonComputedMember","addEnsureSafeObject","notNull","addEnsureSafeAssignContext","addEnsureSafeMemberName","addEnsureSafeFunction","member","filterName","defaultValue","stringEscapeRegex","stringEscapeFn","c","charCodeAt","skip","init","fn.assign","rhs","lhs","unary+","unary-","unary!","binary+","binary-","binary*","binary/","binary%","binary===","binary!==","binary==","binary!=","binary<","binary>","binary<=","binary>=","binary&&","binary||","ternary?:","astCompiler","yy","y","MMMM","MMM","M","H","hh","EEEE","EEE","ampmGetter","AMPMS","Z","timeZoneGetter","zone","paddedZone","ww","w","G","GG","GGG","GGGG","longEraGetter","ERANAMES","xlinkHref","propName","defaultLinkFn","normalized","ngBooleanAttrWatchAction","htmlAttr","ngAttrAliasWatchAction","nullFormRenameControl","formDirectiveFactory","isNgForm","getSetter","ngFormCompile","formElement","nameAttr","ngFormPreLink","ctrls","handleFormSubmission","setter","URL_REGEXP","EMAIL_REGEXP","NUMBER_REGEXP","DATE_REGEXP","DATETIMELOCAL_REGEXP","WEEK_REGEXP","MONTH_REGEXP","TIME_REGEXP","inputType","textInputType","weekParser","isoWeek","existingDate","week","hours","seconds","milliseconds","addDays","numberInputType","urlInputType","ctrl.$validators.url","modelValue","viewValue","emailInputType","email","ctrl.$validators.email","radioInputType","checked","checkboxInputType","trueValue","ngTrueValue","falseValue","ngFalseValue","ctrl.$isEmpty","tElement","tAttr","CONSTANT_VALUE_REGEXP","tplAttr","ngValueConstantLink","ngValueLink","valueWatchAction","$compile","ngBindCompile","templateElement","ngBindLink","ngBindWatchAction","ngBindTemplateCompile","ngBindTemplateLink","ngBindHtmlCompile","ngBindHtmlGetter","ngBindHtmlWatch","sceValueOf","ngBindHtmlLink","ngBindHtmlWatchAction","getTrustedHtml","$viewChangeListeners","forceAsyncEvents","ngEventHandler","previousElements","ngIfWatchAction","srcExp","onloadExp","autoScrollExp","autoscroll","changeCounter","previousElement","currentElement","cleanupLastIncludeContent","ngIncludeWatchAction","afterAnimation","thisChangeId","namespaceAdaptedClone","trimValues","NgModelController","$modelValue","$$rawModelValue","$asyncValidators","$untouched","$touched","parsedNgModel","parsedNgModelAssign","ngModelGet","ngModelSet","pendingDebounce","parserValid","$$setOptions","this.$$setOptions","getterSetter","invokeModelGetter","invokeModelSetter","$$$p","this.$isEmpty","currentValidationRunId","this.$setPristine","this.$setDirty","this.$setUntouched","UNTOUCHED_CLASS","TOUCHED_CLASS","$setTouched","this.$setTouched","this.$rollbackViewValue","$$lastCommittedViewValue","this.$validate","prevValid","prevModelValue","allowInvalid","$$runValidators","allValid","$$writeModelToScope","this.$$runValidators","doneCallback","processSyncValidators","syncValidatorsValid","validator","processAsyncValidators","validatorPromises","validationDone","localValidationRunId","processParseErrors","errorKey","this.$commitViewValue","$$parseAndValidate","this.$$parseAndValidate","this.$$writeModelToScope","this.$setViewValue","updateOnDefault","$$debounceViewValueCommit","this.$$debounceViewValueCommit","debounceDelay","debounce","ngModelWatch","formatters","ngModelCompile","ngModelPreLink","modelCtrl","formCtrl","ngModelPostLink","updateOn","DEFAULT_REGEXP","that","ngOptionsMinErr","NG_OPTIONS_REGEXP","parseOptionsExpression","optionsExp","selectElement","Option","selectValue","label","group","disabled","getOptionValuesKeys","optionValues","optionValuesKeys","keyName","itemKey","valueName","selectAs","trackBy","viewValueFn","trackByFn","getTrackByValueFn","getHashOfValue","getTrackByValue","getLocals","displayFn","groupByFn","disableWhenFn","valuesFn","getWatchables","watchedArray","optionValuesLength","disableWhen","getOptions","optionItems","selectValueMap","optionItem","getOptionFromViewValue","getViewValueFromOption","optionTemplate","optGroupTemplate","ngOptionsPreLink","registerOption","ngOptionsPostLink","updateOptionElement","addOrReuseElement","removeExcessElements","skipEmptyAndUnknownOptions","emptyOption_","emptyOption","unknownOption_","unknownOption","updateOptions","previousValue","selectCtrl","readValue","groupMap","providedEmptyOption","updateOption","optionElement","groupElement","currentOptionElement","ngModelCtrl","nextValue","ngModelCtrl.$isEmpty","writeValue","selectCtrl.writeValue","selectCtrl.readValue","selectedValues","selections","selectedOption","BRACE","IS_WHEN","updateElementText","newText","numberExp","whenExp","whens","whensExpFns","braceReplacement","watchRemover","lastCount","attributeName","tmpMatch","whenKey","ngPluralizeWatchAction","countIsNaN","pluralCat","whenExpFn","ngRepeatMinErr","updateScope","valueIdentifier","keyIdentifier","arrayLength","$first","$last","$middle","$odd","$even","ngRepeatCompile","ngRepeatEndComment","aliasAs","trackByExp","trackByExpGetter","trackByIdExpFn","trackByIdArrayFn","trackByIdObjFn","hashFnLocals","ngRepeatLink","lastBlockMap","ngRepeatAction","previousNode","nextNode","nextBlockMap","collectionLength","trackById","collectionKeys","nextBlockOrder","trackByIdFn","blockKey","ngRepeatTransclude","ngShowWatchAction","NG_HIDE_CLASS","NG_HIDE_IN_PROGRESS_CLASS","ngHideWatchAction","ngStyleWatchAction","newStyles","oldStyles","ngSwitchController","cases","selectedTranscludes","selectedElements","previousLeaveAnimations","selectedScopes","spliceFactory","ngSwitchWatchAction","selectedTransclude","caseElement","selectedScope","anchor","noopNgModelController","SelectController","optionsMap","renderUnknownOption","self.renderUnknownOption","unknownVal","removeUnknownOption","self.removeUnknownOption","self.readValue","self.writeValue","hasOption","addOption","self.addOption","removeOption","self.removeOption","self.hasOption","self.registerOption","optionScope","optionAttrs","interpolateValueFn","interpolateTextFn","valueAttributeObserveAction","interpolateWatchAction","selectPreLink","lastView","lastViewRef","selectMultipleWatch","selectPostLink","ngModelCtrl.$render","selectCtrlName","ctrl.$validators.required","patternExp","ctrl.$validators.pattern","intVal","ctrl.$validators.maxlength","ctrl.$validators.minlength","getDecimals","opt_precision","pow","ONE","OTHER","$$csp","head"]
+}
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/errors.json b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/errors.json
new file mode 100644
index 00000000..886168a8
--- /dev/null
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/errors.json
@@ -0,0 +1 @@
+{"id":"ng","generated":"Mon Oct 10 2016 14:35:04 GMT-0700 (PDT)","errors":{"ng":{"areq":"Argument '{0}' is {1}","cpta":"Can't copy! TypedArray destination cannot be mutated.","test":"no injector found for element argument to getTestability","cpws":"Can't copy! Making copies of Window or Scope instances is not supported.","btstrpd":"App already bootstrapped with this element '{0}'","cpi":"Can't copy! Source and destination are identical.","badname":"hasOwnProperty is not a valid {0} name"},"$http":{"legacy":"The method `{0}` on the promise returned from `$http` has been disabled.","badreq":"Http request configuration url must be a string. Received: {0}"},"ngRepeat":{"badident":"alias '{0}' is invalid --- must be a valid JS identifier which is not a reserved name.","iexp":"Expected expression in form of '_item_ in _collection_[ track by _id_]' but got '{0}'.","dupes":"Duplicates in a repeater are not allowed. Use 'track by' expression to specify unique keys. Repeater: {0}, Duplicate key: {1}, Duplicate value: {2}","iidexp":"'_item_' in '_item_ in _collection_' should be an identifier or '(_key_, _value_)' expression, but got '{0}'."},"$sce":{"imatcher":"Matchers may only be \"self\", string patterns or RegExp objects","icontext":"Attempted to trust a value in invalid context. Context: {0}; Value: {1}","iwcard":"Illegal sequence *** in string matcher. String: {0}","insecurl":"Blocked loading resource from url not allowed by $sceDelegate policy. URL: {0}","iequirks":"Strict Contextual Escaping does not support Internet Explorer version < 11 in quirks mode. You can fix this by adding the text <!doctype html> to the top of your HTML document. See http://docs.angularjs.org/api/ng.$sce for more information.","unsafe":"Attempting to use an unsafe value in a safe context.","itype":"Attempted to trust a non-string value in a content requiring a string: Context: {0}"},"ngPattern":{"noregexp":"Expected {0} to be a RegExp but was {1}. Element: {2}"},"$controller":{"ctrlfmt":"Badly formed controller string '{0}'. Must match `__name__ as __id__` or `__name__`.","noscp":"Cannot export controller '{0}' as '{1}'! No $scope object provided via `locals`."},"$parse":{"isecfn":"Referencing Function in Angular expressions is disallowed! Expression: {0}","isecobj":"Referencing Object in Angular expressions is disallowed! Expression: {0}","lval":"Trying to assign a value to a non l-value","isecwindow":"Referencing the Window in Angular expressions is disallowed! Expression: {0}","ueoe":"Unexpected end of expression: {0}","isecdom":"Referencing DOM nodes in Angular expressions is disallowed! Expression: {0}","lexerr":"Lexer Error: {0} at column{1} in expression [{2}].","esc":"IMPOSSIBLE","iseccst":"Cannot convert object to primitive value! Expression: {0}","isecff":"Referencing call, apply or bind in Angular expressions is disallowed! Expression: {0}","syntax":"Syntax Error: Token '{0}' {1} at column {2} of the expression [{3}] starting at [{4}].","isecaf":"Assigning to a constructor is disallowed! Expression: {0}","isecfld":"Attempting to access a disallowed field in Angular expressions! Expression: {0}"},"jqLite":{"offargs":"jqLite#off() does not support the `selector` argument","onargs":"jqLite#on() does not support the `selector` or `eventData` parameters","nosel":"Looking up elements via selectors is not supported by jqLite! See: http://docs.angularjs.org/api/angular.element"},"$animate":{"notcsel":"Expecting class selector starting with '.' got '{0}'.","nongcls":"$animateProvider.classNameFilter(regex) prohibits accepting a regex value which matches/contains the \"{0}\" CSS class."},"$q":{"norslvr":"Expected resolverFn, got '{0}'","qcycle":"Expected promise to be resolved with value other than itself '{0}'"},"$injector":{"pget":"Provider '{0}' must define $get factory method.","cdep":"Circular dependency found: {0}","nomod":"Module '{0}' is not available! You either misspelled the module name or forgot to load it. If registering a module ensure that you specify the dependencies as the second argument.","strictdi":"{0} is not using explicit annotation and cannot be invoked in strict mode","modulerr":"Failed to instantiate module {0} due to:\n{1}","undef":"Provider '{0}' must return a value from $get factory method.","unpr":"Unknown provider: {0}","itkn":"Incorrect injection token! Expected service name as string, got {0}"},"filter":{"notarray":"Expected array but received: {0}"},"ngTransclude":{"orphan":"Illegal use of ngTransclude directive in the template! No parent directive that requires a transclusion found. Element: {0}"},"ngModel":{"nopromise":"Expected asynchronous validator to return a promise but got '{0}' instead.","nonassign":"Expression '{0}' is non-assignable. Element: {1}","datefmt":"Expected `{0}` to be a date","constexpr":"Expected constant expression for `{0}`, but saw `{1}`.","numfmt":"Expected `{0}` to be a number"},"$location":{"nostate":"History API state support is available only in HTML5 mode and only in browsers supporting HTML5 History API","ipthprfx":"Invalid url \"{0}\", missing path prefix \"{1}\".","isrcharg":"The first argument of the `$location#search()` call must be a string or an object.","nobase":"$location in HTML5 mode requires a <base> tag to be present!"},"$cacheFactory":{"iid":"CacheId '{0}' is already taken!"},"$interpolate":{"noconcat":"Error while interpolating: {0}\nStrict Contextual Escaping disallows interpolations that concatenate multiple expressions when a trusted value is required. See http://docs.angularjs.org/api/ng.$sce","interr":"Can't interpolate: {0}\n{1}","nochgmustache":"angular-message-format.js currently does not allow you to use custom start and end symbols for interpolation.","reqcomma":"Expected a comma after the keyword “{0}” at line {1}, column {2} of text “{3}”","untermstr":"The string beginning at line {0}, column {1} is unterminated in text “{2}”","badexpr":"Unexpected operator “{0}” at line {1}, column {2} in text. Was expecting “{3}”. Text: “{4}”","dupvalue":"The choice “{0}” is specified more than once. Duplicate key is at line {1}, column {2} in text “{3}”","unsafe":"Use of select/plural MessageFormat syntax is currently disallowed in a secure context ({0}). At line {1}, column {2} of text “{3}”","reqother":"“other” is a required option.","reqendinterp":"Expecting end of interpolation symbol, “{0}”, at line {1}, column {2} in text “{3}”","reqarg":"Expected one of “plural” or “select” at line {0}, column {1} of text “{2}”","wantstring":"Expected the beginning of a string at line {0}, column {1} in text “{2}”","logicbug":"The messageformat parser has encountered an internal error. Please file a github issue against the AngularJS project and provide this message text that triggers the bug. Text: “{0}”","reqopenbrace":"The plural choice “{0}” must be followed by a message in braces at line {1}, column {2} in text “{3}”","unknarg":"Unsupported keyword “{0}” at line {0}, column {1}. Only “plural” and “select” are currently supported. Text: “{3}”","reqendbrace":"The plural/select choice “{0}” message starting at line {1}, column {2} does not have an ending closing brace. Text “{3}”"},"ngOptions":{"iexp":"Expected expression in form of '_select_ (as _label_)? for (_key_,)?_value_ in _collection_' but got '{0}'. Element: {1}"},"$rootScope":{"inprog":"{0} already in progress","infdig":"{0} $digest() iterations reached. Aborting!\nWatchers fired in the last 5 iterations: {1}"},"$compile":{"noident":"Cannot bind to controller without identifier for directive '{0}'.","selmulti":"Binding to the 'multiple' attribute is not supported. Element: {0}","nodomevents":"Interpolations for HTML DOM event attributes are disallowed. Please use the ng- versions (such as ng-click instead of onclick) instead.","ctreq":"Controller '{0}', required by directive '{1}', can't be found!","nonassign":"Expression '{0}' in attribute '{1}' used with directive '{2}' is non-assignable!","tplrt":"Template for directive '{0}' must have exactly one root element. {1}","iscp":"Invalid {3} for directive '{0}'. Definition: {... {1}: '{2}' ...}","baddir":"Directive name '{0}' is invalid. The name should not contain leading or trailing whitespaces","noctrl":"Cannot bind to controller without directive '{0}'s controller.","multidir":"Multiple directives [{0}{1}, {2}{3}] asking for {4} on: {5}","tpload":"Failed to load template: {0} (HTTP status: {1} {2})","uterdir":"Unterminated attribute, found '{0}' but no matching '{1}' found."},"$resource":{"badargs":"Expected up to 4 arguments [params, data, success, error], got {0} arguments","badmember":"Dotted member path \"@{0}\" is invalid.","badname":"hasOwnProperty is not a valid parameter name.","badcfg":"Error in resource configuration for action `{0}`. Expected response to contain an {1} but got an {2} (Request: {3} {4})"},"$route":{"norout":"Tried updating route when with no current route"},"$sanitize":{"badparse":"The sanitizer was unable to parse the following block of html: {0}"}}} \ No newline at end of file
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_aa-dj.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_aa-dj.js
index 2fe0c303..2fe0c303 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_aa-dj.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_aa-dj.js
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_aa-er.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_aa-er.js
index 48c1e7c3..48c1e7c3 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_aa-er.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_aa-er.js
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_aa-et.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_aa-et.js
index 03b62551..03b62551 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_aa-et.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_aa-et.js
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_aa.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_aa.js
index 661fa2e1..661fa2e1 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_aa.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_aa.js
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_af-na.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_af-na.js
index 4647a92b..32b9181d 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_af-na.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_af-na.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"Nov",
"Des"
],
+ "STANDALONEMONTH": [
+ "Januarie",
+ "Februarie",
+ "Maart",
+ "April",
+ "Mei",
+ "Junie",
+ "Julie",
+ "Augustus",
+ "September",
+ "Oktober",
+ "November",
+ "Desember"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "af-na",
+ "localeID": "af_NA",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_af-za.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_af-za.js
index 38c2217c..b667ded2 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_af-za.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_af-za.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"Nov",
"Des"
],
+ "STANDALONEMONTH": [
+ "Januarie",
+ "Februarie",
+ "Maart",
+ "April",
+ "Mei",
+ "Junie",
+ "Julie",
+ "Augustus",
+ "September",
+ "Oktober",
+ "November",
+ "Desember"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "af-za",
+ "localeID": "af_ZA",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_af.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_af.js
index 9ed43d14..5c2e7f79 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_af.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_af.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"Nov",
"Des"
],
+ "STANDALONEMONTH": [
+ "Januarie",
+ "Februarie",
+ "Maart",
+ "April",
+ "Mei",
+ "Junie",
+ "Julie",
+ "Augustus",
+ "September",
+ "Oktober",
+ "November",
+ "Desember"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "af",
+ "localeID": "af",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_agq-cm.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_agq-cm.js
index 9d3f9e9c..102f5b2a 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_agq-cm.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_agq-cm.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"kaa",
"fwo"
],
+ "STANDALONEMONTH": [
+ "ndz\u0254\u0300\u014b\u0254\u0300n\u00f9m",
+ "ndz\u0254\u0300\u014b\u0254\u0300k\u0197\u0300z\u00f9\u0294",
+ "ndz\u0254\u0300\u014b\u0254\u0300t\u0197\u0300d\u0289\u0300gh\u00e0",
+ "ndz\u0254\u0300\u014b\u0254\u0300t\u01ceaf\u0289\u0304gh\u0101",
+ "ndz\u0254\u0300\u014b\u00e8s\u00e8e",
+ "ndz\u0254\u0300\u014b\u0254\u0300nz\u00f9gh\u00f2",
+ "ndz\u0254\u0300\u014b\u0254\u0300d\u00f9mlo",
+ "ndz\u0254\u0300\u014b\u0254\u0300kw\u00eef\u0254\u0300e",
+ "ndz\u0254\u0300\u014b\u0254\u0300t\u0197\u0300f\u0289\u0300gh\u00e0dzugh\u00f9",
+ "ndz\u0254\u0300\u014b\u0254\u0300gh\u01d4uwel\u0254\u0300m",
+ "ndz\u0254\u0300\u014b\u0254\u0300chwa\u0294\u00e0kaa wo",
+ "ndz\u0254\u0300\u014b\u00e8fw\u00f2o"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "agq-cm",
+ "localeID": "agq_CM",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_agq.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_agq.js
index 2bd28260..cf57315f 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_agq.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_agq.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"kaa",
"fwo"
],
+ "STANDALONEMONTH": [
+ "ndz\u0254\u0300\u014b\u0254\u0300n\u00f9m",
+ "ndz\u0254\u0300\u014b\u0254\u0300k\u0197\u0300z\u00f9\u0294",
+ "ndz\u0254\u0300\u014b\u0254\u0300t\u0197\u0300d\u0289\u0300gh\u00e0",
+ "ndz\u0254\u0300\u014b\u0254\u0300t\u01ceaf\u0289\u0304gh\u0101",
+ "ndz\u0254\u0300\u014b\u00e8s\u00e8e",
+ "ndz\u0254\u0300\u014b\u0254\u0300nz\u00f9gh\u00f2",
+ "ndz\u0254\u0300\u014b\u0254\u0300d\u00f9mlo",
+ "ndz\u0254\u0300\u014b\u0254\u0300kw\u00eef\u0254\u0300e",
+ "ndz\u0254\u0300\u014b\u0254\u0300t\u0197\u0300f\u0289\u0300gh\u00e0dzugh\u00f9",
+ "ndz\u0254\u0300\u014b\u0254\u0300gh\u01d4uwel\u0254\u0300m",
+ "ndz\u0254\u0300\u014b\u0254\u0300chwa\u0294\u00e0kaa wo",
+ "ndz\u0254\u0300\u014b\u00e8fw\u00f2o"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "agq",
+ "localeID": "agq",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ak-gh.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ak-gh.js
index 8407b96f..c58c9a22 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ak-gh.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ak-gh.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u0186-O",
"M-\u0186"
],
+ "STANDALONEMONTH": [
+ "Sanda-\u0186p\u025bp\u0254n",
+ "Kwakwar-\u0186gyefuo",
+ "Eb\u0254w-\u0186benem",
+ "Eb\u0254bira-Oforisuo",
+ "Esusow Aketseaba-K\u0254t\u0254nimba",
+ "Obirade-Ay\u025bwohomumu",
+ "Ay\u025bwoho-Kitawonsa",
+ "Difuu-\u0186sandaa",
+ "Fankwa-\u0190b\u0254",
+ "\u0186b\u025bs\u025b-Ahinime",
+ "\u0186ber\u025bf\u025bw-Obubuo",
+ "Mumu-\u0186p\u025bnimba"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ak-gh",
+ "localeID": "ak_GH",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ak.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ak.js
index 9117b354..1f9a7c3f 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ak.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ak.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u0186-O",
"M-\u0186"
],
+ "STANDALONEMONTH": [
+ "Sanda-\u0186p\u025bp\u0254n",
+ "Kwakwar-\u0186gyefuo",
+ "Eb\u0254w-\u0186benem",
+ "Eb\u0254bira-Oforisuo",
+ "Esusow Aketseaba-K\u0254t\u0254nimba",
+ "Obirade-Ay\u025bwohomumu",
+ "Ay\u025bwoho-Kitawonsa",
+ "Difuu-\u0186sandaa",
+ "Fankwa-\u0190b\u0254",
+ "\u0186b\u025bs\u025b-Ahinime",
+ "\u0186ber\u025bf\u025bw-Obubuo",
+ "Mumu-\u0186p\u025bnimba"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ak",
+ "localeID": "ak",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_am-et.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_am-et.js
index 77b38ff8..7384a08f 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_am-et.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_am-et.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u1296\u126c\u121d",
"\u12f2\u1234\u121d"
],
+ "STANDALONEMONTH": [
+ "\u1303\u1295\u12e9\u12c8\u122a",
+ "\u134c\u1265\u1229\u12c8\u122a",
+ "\u121b\u122d\u127d",
+ "\u12a4\u1355\u122a\u120d",
+ "\u121c\u12ed",
+ "\u1301\u1295",
+ "\u1301\u120b\u12ed",
+ "\u12a6\u1308\u1235\u1275",
+ "\u1234\u1355\u1274\u121d\u1260\u122d",
+ "\u12a6\u12ad\u1276\u1260\u122d",
+ "\u1296\u126c\u121d\u1260\u122d",
+ "\u12f2\u1234\u121d\u1260\u122d"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "am-et",
+ "localeID": "am_ET",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_am.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_am.js
index 03146492..4f3fca1a 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_am.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_am.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u1296\u126c\u121d",
"\u12f2\u1234\u121d"
],
+ "STANDALONEMONTH": [
+ "\u1303\u1295\u12e9\u12c8\u122a",
+ "\u134c\u1265\u1229\u12c8\u122a",
+ "\u121b\u122d\u127d",
+ "\u12a4\u1355\u122a\u120d",
+ "\u121c\u12ed",
+ "\u1301\u1295",
+ "\u1301\u120b\u12ed",
+ "\u12a6\u1308\u1235\u1275",
+ "\u1234\u1355\u1274\u121d\u1260\u122d",
+ "\u12a6\u12ad\u1276\u1260\u122d",
+ "\u1296\u126c\u121d\u1260\u122d",
+ "\u12f2\u1234\u121d\u1260\u122d"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "am",
+ "localeID": "am",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-001.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-001.js
index a9a7875a..4da6ab6a 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-001.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-001.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u0646\u0648\u0641\u0645\u0628\u0631",
"\u062f\u064a\u0633\u0645\u0628\u0631"
],
+ "STANDALONEMONTH": [
+ "\u064a\u0646\u0627\u064a\u0631",
+ "\u0641\u0628\u0631\u0627\u064a\u0631",
+ "\u0645\u0627\u0631\u0633",
+ "\u0623\u0628\u0631\u064a\u0644",
+ "\u0645\u0627\u064a\u0648",
+ "\u064a\u0648\u0646\u064a\u0648",
+ "\u064a\u0648\u0644\u064a\u0648",
+ "\u0623\u063a\u0633\u0637\u0633",
+ "\u0633\u0628\u062a\u0645\u0628\u0631",
+ "\u0623\u0643\u062a\u0648\u0628\u0631",
+ "\u0646\u0648\u0641\u0645\u0628\u0631",
+ "\u062f\u064a\u0633\u0645\u0628\u0631"
+ ],
"WEEKENDRANGE": [
4,
5
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "ar-001",
+ "localeID": "ar_001",
"pluralCat": function(n, opt_precision) { if (n == 0) { return PLURAL_CATEGORY.ZERO; } if (n == 1) { return PLURAL_CATEGORY.ONE; } if (n == 2) { return PLURAL_CATEGORY.TWO; } if (n % 100 >= 3 && n % 100 <= 10) { return PLURAL_CATEGORY.FEW; } if (n % 100 >= 11 && n % 100 <= 99) { return PLURAL_CATEGORY.MANY; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-ae.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-ae.js
index 6b335da1..a1524dc9 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-ae.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-ae.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u0646\u0648\u0641\u0645\u0628\u0631",
"\u062f\u064a\u0633\u0645\u0628\u0631"
],
+ "STANDALONEMONTH": [
+ "\u064a\u0646\u0627\u064a\u0631",
+ "\u0641\u0628\u0631\u0627\u064a\u0631",
+ "\u0645\u0627\u0631\u0633",
+ "\u0623\u0628\u0631\u064a\u0644",
+ "\u0645\u0627\u064a\u0648",
+ "\u064a\u0648\u0646\u064a\u0648",
+ "\u064a\u0648\u0644\u064a\u0648",
+ "\u0623\u063a\u0633\u0637\u0633",
+ "\u0633\u0628\u062a\u0645\u0628\u0631",
+ "\u0623\u0643\u062a\u0648\u0628\u0631",
+ "\u0646\u0648\u0641\u0645\u0628\u0631",
+ "\u062f\u064a\u0633\u0645\u0628\u0631"
+ ],
"WEEKENDRANGE": [
4,
5
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "ar-ae",
+ "localeID": "ar_AE",
"pluralCat": function(n, opt_precision) { if (n == 0) { return PLURAL_CATEGORY.ZERO; } if (n == 1) { return PLURAL_CATEGORY.ONE; } if (n == 2) { return PLURAL_CATEGORY.TWO; } if (n % 100 >= 3 && n % 100 <= 10) { return PLURAL_CATEGORY.FEW; } if (n % 100 >= 11 && n % 100 <= 99) { return PLURAL_CATEGORY.MANY; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-bh.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-bh.js
index 361f8ab9..8b24a404 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-bh.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-bh.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u0646\u0648\u0641\u0645\u0628\u0631",
"\u062f\u064a\u0633\u0645\u0628\u0631"
],
+ "STANDALONEMONTH": [
+ "\u064a\u0646\u0627\u064a\u0631",
+ "\u0641\u0628\u0631\u0627\u064a\u0631",
+ "\u0645\u0627\u0631\u0633",
+ "\u0623\u0628\u0631\u064a\u0644",
+ "\u0645\u0627\u064a\u0648",
+ "\u064a\u0648\u0646\u064a\u0648",
+ "\u064a\u0648\u0644\u064a\u0648",
+ "\u0623\u063a\u0633\u0637\u0633",
+ "\u0633\u0628\u062a\u0645\u0628\u0631",
+ "\u0623\u0643\u062a\u0648\u0628\u0631",
+ "\u0646\u0648\u0641\u0645\u0628\u0631",
+ "\u062f\u064a\u0633\u0645\u0628\u0631"
+ ],
"WEEKENDRANGE": [
4,
5
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "ar-bh",
+ "localeID": "ar_BH",
"pluralCat": function(n, opt_precision) { if (n == 0) { return PLURAL_CATEGORY.ZERO; } if (n == 1) { return PLURAL_CATEGORY.ONE; } if (n == 2) { return PLURAL_CATEGORY.TWO; } if (n % 100 >= 3 && n % 100 <= 10) { return PLURAL_CATEGORY.FEW; } if (n % 100 >= 11 && n % 100 <= 99) { return PLURAL_CATEGORY.MANY; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-dj.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-dj.js
index d44bbce0..673aa7e8 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-dj.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-dj.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u0646\u0648\u0641\u0645\u0628\u0631",
"\u062f\u064a\u0633\u0645\u0628\u0631"
],
+ "STANDALONEMONTH": [
+ "\u064a\u0646\u0627\u064a\u0631",
+ "\u0641\u0628\u0631\u0627\u064a\u0631",
+ "\u0645\u0627\u0631\u0633",
+ "\u0623\u0628\u0631\u064a\u0644",
+ "\u0645\u0627\u064a\u0648",
+ "\u064a\u0648\u0646\u064a\u0648",
+ "\u064a\u0648\u0644\u064a\u0648",
+ "\u0623\u063a\u0633\u0637\u0633",
+ "\u0633\u0628\u062a\u0645\u0628\u0631",
+ "\u0623\u0643\u062a\u0648\u0628\u0631",
+ "\u0646\u0648\u0641\u0645\u0628\u0631",
+ "\u062f\u064a\u0633\u0645\u0628\u0631"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "ar-dj",
+ "localeID": "ar_DJ",
"pluralCat": function(n, opt_precision) { if (n == 0) { return PLURAL_CATEGORY.ZERO; } if (n == 1) { return PLURAL_CATEGORY.ONE; } if (n == 2) { return PLURAL_CATEGORY.TWO; } if (n % 100 >= 3 && n % 100 <= 10) { return PLURAL_CATEGORY.FEW; } if (n % 100 >= 11 && n % 100 <= 99) { return PLURAL_CATEGORY.MANY; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-dz.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-dz.js
index 871d2ce4..037cc995 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-dz.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-dz.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u0646\u0648\u0641\u0645\u0628\u0631",
"\u062f\u064a\u0633\u0645\u0628\u0631"
],
+ "STANDALONEMONTH": [
+ "\u062c\u0627\u0646\u0641\u064a",
+ "\u0641\u064a\u0641\u0631\u064a",
+ "\u0645\u0627\u0631\u0633",
+ "\u0623\u0641\u0631\u064a\u0644",
+ "\u0645\u0627\u064a",
+ "\u062c\u0648\u0627\u0646",
+ "\u062c\u0648\u064a\u0644\u064a\u0629",
+ "\u0623\u0648\u062a",
+ "\u0633\u0628\u062a\u0645\u0628\u0631",
+ "\u0623\u0643\u062a\u0648\u0628\u0631",
+ "\u0646\u0648\u0641\u0645\u0628\u0631",
+ "\u062f\u064a\u0633\u0645\u0628\u0631"
+ ],
"WEEKENDRANGE": [
4,
5
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "ar-dz",
+ "localeID": "ar_DZ",
"pluralCat": function(n, opt_precision) { if (n == 0) { return PLURAL_CATEGORY.ZERO; } if (n == 1) { return PLURAL_CATEGORY.ONE; } if (n == 2) { return PLURAL_CATEGORY.TWO; } if (n % 100 >= 3 && n % 100 <= 10) { return PLURAL_CATEGORY.FEW; } if (n % 100 >= 11 && n % 100 <= 99) { return PLURAL_CATEGORY.MANY; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-eg.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-eg.js
index 734c629a..07e70071 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-eg.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-eg.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u0646\u0648\u0641\u0645\u0628\u0631",
"\u062f\u064a\u0633\u0645\u0628\u0631"
],
+ "STANDALONEMONTH": [
+ "\u064a\u0646\u0627\u064a\u0631",
+ "\u0641\u0628\u0631\u0627\u064a\u0631",
+ "\u0645\u0627\u0631\u0633",
+ "\u0623\u0628\u0631\u064a\u0644",
+ "\u0645\u0627\u064a\u0648",
+ "\u064a\u0648\u0646\u064a\u0648",
+ "\u064a\u0648\u0644\u064a\u0648",
+ "\u0623\u063a\u0633\u0637\u0633",
+ "\u0633\u0628\u062a\u0645\u0628\u0631",
+ "\u0623\u0643\u062a\u0648\u0628\u0631",
+ "\u0646\u0648\u0641\u0645\u0628\u0631",
+ "\u062f\u064a\u0633\u0645\u0628\u0631"
+ ],
"WEEKENDRANGE": [
4,
5
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "ar-eg",
+ "localeID": "ar_EG",
"pluralCat": function(n, opt_precision) { if (n == 0) { return PLURAL_CATEGORY.ZERO; } if (n == 1) { return PLURAL_CATEGORY.ONE; } if (n == 2) { return PLURAL_CATEGORY.TWO; } if (n % 100 >= 3 && n % 100 <= 10) { return PLURAL_CATEGORY.FEW; } if (n % 100 >= 11 && n % 100 <= 99) { return PLURAL_CATEGORY.MANY; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-eh.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-eh.js
index f9c2666a..a1e4460c 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-eh.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-eh.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u0646\u0648\u0641\u0645\u0628\u0631",
"\u062f\u064a\u0633\u0645\u0628\u0631"
],
+ "STANDALONEMONTH": [
+ "\u064a\u0646\u0627\u064a\u0631",
+ "\u0641\u0628\u0631\u0627\u064a\u0631",
+ "\u0645\u0627\u0631\u0633",
+ "\u0623\u0628\u0631\u064a\u0644",
+ "\u0645\u0627\u064a\u0648",
+ "\u064a\u0648\u0646\u064a\u0648",
+ "\u064a\u0648\u0644\u064a\u0648",
+ "\u0623\u063a\u0633\u0637\u0633",
+ "\u0633\u0628\u062a\u0645\u0628\u0631",
+ "\u0623\u0643\u062a\u0648\u0628\u0631",
+ "\u0646\u0648\u0641\u0645\u0628\u0631",
+ "\u062f\u064a\u0633\u0645\u0628\u0631"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "ar-eh",
+ "localeID": "ar_EH",
"pluralCat": function(n, opt_precision) { if (n == 0) { return PLURAL_CATEGORY.ZERO; } if (n == 1) { return PLURAL_CATEGORY.ONE; } if (n == 2) { return PLURAL_CATEGORY.TWO; } if (n % 100 >= 3 && n % 100 <= 10) { return PLURAL_CATEGORY.FEW; } if (n % 100 >= 11 && n % 100 <= 99) { return PLURAL_CATEGORY.MANY; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-er.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-er.js
index 0510d70b..edbbccda 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-er.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-er.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u0646\u0648\u0641\u0645\u0628\u0631",
"\u062f\u064a\u0633\u0645\u0628\u0631"
],
+ "STANDALONEMONTH": [
+ "\u064a\u0646\u0627\u064a\u0631",
+ "\u0641\u0628\u0631\u0627\u064a\u0631",
+ "\u0645\u0627\u0631\u0633",
+ "\u0623\u0628\u0631\u064a\u0644",
+ "\u0645\u0627\u064a\u0648",
+ "\u064a\u0648\u0646\u064a\u0648",
+ "\u064a\u0648\u0644\u064a\u0648",
+ "\u0623\u063a\u0633\u0637\u0633",
+ "\u0633\u0628\u062a\u0645\u0628\u0631",
+ "\u0623\u0643\u062a\u0648\u0628\u0631",
+ "\u0646\u0648\u0641\u0645\u0628\u0631",
+ "\u062f\u064a\u0633\u0645\u0628\u0631"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "ar-er",
+ "localeID": "ar_ER",
"pluralCat": function(n, opt_precision) { if (n == 0) { return PLURAL_CATEGORY.ZERO; } if (n == 1) { return PLURAL_CATEGORY.ONE; } if (n == 2) { return PLURAL_CATEGORY.TWO; } if (n % 100 >= 3 && n % 100 <= 10) { return PLURAL_CATEGORY.FEW; } if (n % 100 >= 11 && n % 100 <= 99) { return PLURAL_CATEGORY.MANY; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-il.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-il.js
index ea6e8932..7c1e4fd7 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-il.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-il.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u0646\u0648\u0641\u0645\u0628\u0631",
"\u062f\u064a\u0633\u0645\u0628\u0631"
],
+ "STANDALONEMONTH": [
+ "\u064a\u0646\u0627\u064a\u0631",
+ "\u0641\u0628\u0631\u0627\u064a\u0631",
+ "\u0645\u0627\u0631\u0633",
+ "\u0623\u0628\u0631\u064a\u0644",
+ "\u0645\u0627\u064a\u0648",
+ "\u064a\u0648\u0646\u064a\u0648",
+ "\u064a\u0648\u0644\u064a\u0648",
+ "\u0623\u063a\u0633\u0637\u0633",
+ "\u0633\u0628\u062a\u0645\u0628\u0631",
+ "\u0623\u0643\u062a\u0648\u0628\u0631",
+ "\u0646\u0648\u0641\u0645\u0628\u0631",
+ "\u062f\u064a\u0633\u0645\u0628\u0631"
+ ],
"WEEKENDRANGE": [
4,
5
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "ar-il",
+ "localeID": "ar_IL",
"pluralCat": function(n, opt_precision) { if (n == 0) { return PLURAL_CATEGORY.ZERO; } if (n == 1) { return PLURAL_CATEGORY.ONE; } if (n == 2) { return PLURAL_CATEGORY.TWO; } if (n % 100 >= 3 && n % 100 <= 10) { return PLURAL_CATEGORY.FEW; } if (n % 100 >= 11 && n % 100 <= 99) { return PLURAL_CATEGORY.MANY; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-iq.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-iq.js
index 9f08ac2f..4c26108f 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-iq.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-iq.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u062a\u0634\u0631\u064a\u0646 \u0627\u0644\u062b\u0627\u0646\u064a",
"\u0643\u0627\u0646\u0648\u0646 \u0627\u0644\u0623\u0648\u0644"
],
+ "STANDALONEMONTH": [
+ "\u0643\u0627\u0646\u0648\u0646 \u0627\u0644\u062b\u0627\u0646\u064a",
+ "\u0634\u0628\u0627\u0637",
+ "\u0622\u0630\u0627\u0631",
+ "\u0646\u064a\u0633\u0627\u0646",
+ "\u0623\u064a\u0627\u0631",
+ "\u062d\u0632\u064a\u0631\u0627\u0646",
+ "\u062a\u0645\u0648\u0632",
+ "\u0622\u0628",
+ "\u0623\u064a\u0644\u0648\u0644",
+ "\u062a\u0634\u0631\u064a\u0646 \u0627\u0644\u0623\u0648\u0644",
+ "\u062a\u0634\u0631\u064a\u0646 \u0627\u0644\u062b\u0627\u0646\u064a",
+ "\u0643\u0627\u0646\u0648\u0646 \u0627\u0644\u0623\u0648\u0644"
+ ],
"WEEKENDRANGE": [
4,
5
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "ar-iq",
+ "localeID": "ar_IQ",
"pluralCat": function(n, opt_precision) { if (n == 0) { return PLURAL_CATEGORY.ZERO; } if (n == 1) { return PLURAL_CATEGORY.ONE; } if (n == 2) { return PLURAL_CATEGORY.TWO; } if (n % 100 >= 3 && n % 100 <= 10) { return PLURAL_CATEGORY.FEW; } if (n % 100 >= 11 && n % 100 <= 99) { return PLURAL_CATEGORY.MANY; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-jo.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-jo.js
index 793b3534..8bd5a66b 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-jo.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-jo.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u062a\u0634\u0631\u064a\u0646 \u0627\u0644\u062b\u0627\u0646\u064a",
"\u0643\u0627\u0646\u0648\u0646 \u0627\u0644\u0623\u0648\u0644"
],
+ "STANDALONEMONTH": [
+ "\u0643\u0627\u0646\u0648\u0646 \u0627\u0644\u062b\u0627\u0646\u064a",
+ "\u0634\u0628\u0627\u0637",
+ "\u0622\u0630\u0627\u0631",
+ "\u0646\u064a\u0633\u0627\u0646",
+ "\u0623\u064a\u0627\u0631",
+ "\u062d\u0632\u064a\u0631\u0627\u0646",
+ "\u062a\u0645\u0648\u0632",
+ "\u0622\u0628",
+ "\u0623\u064a\u0644\u0648\u0644",
+ "\u062a\u0634\u0631\u064a\u0646 \u0627\u0644\u0623\u0648\u0644",
+ "\u062a\u0634\u0631\u064a\u0646 \u0627\u0644\u062b\u0627\u0646\u064a",
+ "\u0643\u0627\u0646\u0648\u0646 \u0627\u0644\u0623\u0648\u0644"
+ ],
"WEEKENDRANGE": [
4,
5
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "ar-jo",
+ "localeID": "ar_JO",
"pluralCat": function(n, opt_precision) { if (n == 0) { return PLURAL_CATEGORY.ZERO; } if (n == 1) { return PLURAL_CATEGORY.ONE; } if (n == 2) { return PLURAL_CATEGORY.TWO; } if (n % 100 >= 3 && n % 100 <= 10) { return PLURAL_CATEGORY.FEW; } if (n % 100 >= 11 && n % 100 <= 99) { return PLURAL_CATEGORY.MANY; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-km.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-km.js
index 6f9031de..00d205d3 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-km.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-km.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u0646\u0648\u0641\u0645\u0628\u0631",
"\u062f\u064a\u0633\u0645\u0628\u0631"
],
+ "STANDALONEMONTH": [
+ "\u064a\u0646\u0627\u064a\u0631",
+ "\u0641\u0628\u0631\u0627\u064a\u0631",
+ "\u0645\u0627\u0631\u0633",
+ "\u0623\u0628\u0631\u064a\u0644",
+ "\u0645\u0627\u064a\u0648",
+ "\u064a\u0648\u0646\u064a\u0648",
+ "\u064a\u0648\u0644\u064a\u0648",
+ "\u0623\u063a\u0633\u0637\u0633",
+ "\u0633\u0628\u062a\u0645\u0628\u0631",
+ "\u0623\u0643\u062a\u0648\u0628\u0631",
+ "\u0646\u0648\u0641\u0645\u0628\u0631",
+ "\u062f\u064a\u0633\u0645\u0628\u0631"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "ar-km",
+ "localeID": "ar_KM",
"pluralCat": function(n, opt_precision) { if (n == 0) { return PLURAL_CATEGORY.ZERO; } if (n == 1) { return PLURAL_CATEGORY.ONE; } if (n == 2) { return PLURAL_CATEGORY.TWO; } if (n % 100 >= 3 && n % 100 <= 10) { return PLURAL_CATEGORY.FEW; } if (n % 100 >= 11 && n % 100 <= 99) { return PLURAL_CATEGORY.MANY; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-kw.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-kw.js
index b0b55a7b..c9863118 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-kw.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-kw.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u0646\u0648\u0641\u0645\u0628\u0631",
"\u062f\u064a\u0633\u0645\u0628\u0631"
],
+ "STANDALONEMONTH": [
+ "\u064a\u0646\u0627\u064a\u0631",
+ "\u0641\u0628\u0631\u0627\u064a\u0631",
+ "\u0645\u0627\u0631\u0633",
+ "\u0623\u0628\u0631\u064a\u0644",
+ "\u0645\u0627\u064a\u0648",
+ "\u064a\u0648\u0646\u064a\u0648",
+ "\u064a\u0648\u0644\u064a\u0648",
+ "\u0623\u063a\u0633\u0637\u0633",
+ "\u0633\u0628\u062a\u0645\u0628\u0631",
+ "\u0623\u0643\u062a\u0648\u0628\u0631",
+ "\u0646\u0648\u0641\u0645\u0628\u0631",
+ "\u062f\u064a\u0633\u0645\u0628\u0631"
+ ],
"WEEKENDRANGE": [
4,
5
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "ar-kw",
+ "localeID": "ar_KW",
"pluralCat": function(n, opt_precision) { if (n == 0) { return PLURAL_CATEGORY.ZERO; } if (n == 1) { return PLURAL_CATEGORY.ONE; } if (n == 2) { return PLURAL_CATEGORY.TWO; } if (n % 100 >= 3 && n % 100 <= 10) { return PLURAL_CATEGORY.FEW; } if (n % 100 >= 11 && n % 100 <= 99) { return PLURAL_CATEGORY.MANY; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-lb.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-lb.js
index b2eb263a..2bb07fc4 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-lb.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-lb.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u062a\u0634\u0631\u064a\u0646 \u0627\u0644\u062b\u0627\u0646\u064a",
"\u0643\u0627\u0646\u0648\u0646 \u0627\u0644\u0623\u0648\u0644"
],
+ "STANDALONEMONTH": [
+ "\u0643\u0627\u0646\u0648\u0646 \u0627\u0644\u062b\u0627\u0646\u064a",
+ "\u0634\u0628\u0627\u0637",
+ "\u0622\u0630\u0627\u0631",
+ "\u0646\u064a\u0633\u0627\u0646",
+ "\u0623\u064a\u0627\u0631",
+ "\u062d\u0632\u064a\u0631\u0627\u0646",
+ "\u062a\u0645\u0648\u0632",
+ "\u0622\u0628",
+ "\u0623\u064a\u0644\u0648\u0644",
+ "\u062a\u0634\u0631\u064a\u0646 \u0627\u0644\u0623\u0648\u0644",
+ "\u062a\u0634\u0631\u064a\u0646 \u0627\u0644\u062b\u0627\u0646\u064a",
+ "\u0643\u0627\u0646\u0648\u0646 \u0627\u0644\u0623\u0648\u0644"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "ar-lb",
+ "localeID": "ar_LB",
"pluralCat": function(n, opt_precision) { if (n == 0) { return PLURAL_CATEGORY.ZERO; } if (n == 1) { return PLURAL_CATEGORY.ONE; } if (n == 2) { return PLURAL_CATEGORY.TWO; } if (n % 100 >= 3 && n % 100 <= 10) { return PLURAL_CATEGORY.FEW; } if (n % 100 >= 11 && n % 100 <= 99) { return PLURAL_CATEGORY.MANY; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-ly.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-ly.js
index 0a9dbf62..622bde2d 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-ly.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-ly.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u0646\u0648\u0641\u0645\u0628\u0631",
"\u062f\u064a\u0633\u0645\u0628\u0631"
],
+ "STANDALONEMONTH": [
+ "\u064a\u0646\u0627\u064a\u0631",
+ "\u0641\u0628\u0631\u0627\u064a\u0631",
+ "\u0645\u0627\u0631\u0633",
+ "\u0623\u0628\u0631\u064a\u0644",
+ "\u0645\u0627\u064a\u0648",
+ "\u064a\u0648\u0646\u064a\u0648",
+ "\u064a\u0648\u0644\u064a\u0648",
+ "\u0623\u063a\u0633\u0637\u0633",
+ "\u0633\u0628\u062a\u0645\u0628\u0631",
+ "\u0623\u0643\u062a\u0648\u0628\u0631",
+ "\u0646\u0648\u0641\u0645\u0628\u0631",
+ "\u062f\u064a\u0633\u0645\u0628\u0631"
+ ],
"WEEKENDRANGE": [
4,
5
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "ar-ly",
+ "localeID": "ar_LY",
"pluralCat": function(n, opt_precision) { if (n == 0) { return PLURAL_CATEGORY.ZERO; } if (n == 1) { return PLURAL_CATEGORY.ONE; } if (n == 2) { return PLURAL_CATEGORY.TWO; } if (n % 100 >= 3 && n % 100 <= 10) { return PLURAL_CATEGORY.FEW; } if (n % 100 >= 11 && n % 100 <= 99) { return PLURAL_CATEGORY.MANY; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-ma.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-ma.js
index 589e258a..e00bfd73 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-ma.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-ma.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u0646\u0648\u0646\u0628\u0631",
"\u062f\u062c\u0646\u0628\u0631"
],
+ "STANDALONEMONTH": [
+ "\u064a\u0646\u0627\u064a\u0631",
+ "\u0641\u0628\u0631\u0627\u064a\u0631",
+ "\u0645\u0627\u0631\u0633",
+ "\u0623\u0628\u0631\u064a\u0644",
+ "\u0645\u0627\u064a",
+ "\u064a\u0648\u0646\u064a\u0648",
+ "\u064a\u0648\u0644\u064a\u0648\u0632",
+ "\u063a\u0634\u062a",
+ "\u0634\u062a\u0646\u0628\u0631",
+ "\u0623\u0643\u062a\u0648\u0628\u0631",
+ "\u0646\u0648\u0646\u0628\u0631",
+ "\u062f\u062c\u0646\u0628\u0631"
+ ],
"WEEKENDRANGE": [
4,
5
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "ar-ma",
+ "localeID": "ar_MA",
"pluralCat": function(n, opt_precision) { if (n == 0) { return PLURAL_CATEGORY.ZERO; } if (n == 1) { return PLURAL_CATEGORY.ONE; } if (n == 2) { return PLURAL_CATEGORY.TWO; } if (n % 100 >= 3 && n % 100 <= 10) { return PLURAL_CATEGORY.FEW; } if (n % 100 >= 11 && n % 100 <= 99) { return PLURAL_CATEGORY.MANY; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-mr.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-mr.js
index 6fbc49a5..259a617d 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-mr.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-mr.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u0646\u0648\u0641\u0645\u0628\u0631",
"\u062f\u062c\u0645\u0628\u0631"
],
+ "STANDALONEMONTH": [
+ "\u064a\u0646\u0627\u064a\u0631",
+ "\u0641\u0628\u0631\u0627\u064a\u0631",
+ "\u0645\u0627\u0631\u0633",
+ "\u0625\u0628\u0631\u064a\u0644",
+ "\u0645\u0627\u064a\u0648",
+ "\u064a\u0648\u0646\u064a\u0648",
+ "\u064a\u0648\u0644\u064a\u0648",
+ "\u0623\u063a\u0634\u062a",
+ "\u0634\u062a\u0645\u0628\u0631",
+ "\u0623\u0643\u062a\u0648\u0628\u0631",
+ "\u0646\u0648\u0641\u0645\u0628\u0631",
+ "\u062f\u062c\u0645\u0628\u0631"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "ar-mr",
+ "localeID": "ar_MR",
"pluralCat": function(n, opt_precision) { if (n == 0) { return PLURAL_CATEGORY.ZERO; } if (n == 1) { return PLURAL_CATEGORY.ONE; } if (n == 2) { return PLURAL_CATEGORY.TWO; } if (n % 100 >= 3 && n % 100 <= 10) { return PLURAL_CATEGORY.FEW; } if (n % 100 >= 11 && n % 100 <= 99) { return PLURAL_CATEGORY.MANY; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-om.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-om.js
index b12fc576..947fe89c 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-om.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-om.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u0646\u0648\u0641\u0645\u0628\u0631",
"\u062f\u064a\u0633\u0645\u0628\u0631"
],
+ "STANDALONEMONTH": [
+ "\u064a\u0646\u0627\u064a\u0631",
+ "\u0641\u0628\u0631\u0627\u064a\u0631",
+ "\u0645\u0627\u0631\u0633",
+ "\u0623\u0628\u0631\u064a\u0644",
+ "\u0645\u0627\u064a\u0648",
+ "\u064a\u0648\u0646\u064a\u0648",
+ "\u064a\u0648\u0644\u064a\u0648",
+ "\u0623\u063a\u0633\u0637\u0633",
+ "\u0633\u0628\u062a\u0645\u0628\u0631",
+ "\u0623\u0643\u062a\u0648\u0628\u0631",
+ "\u0646\u0648\u0641\u0645\u0628\u0631",
+ "\u062f\u064a\u0633\u0645\u0628\u0631"
+ ],
"WEEKENDRANGE": [
4,
5
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "ar-om",
+ "localeID": "ar_OM",
"pluralCat": function(n, opt_precision) { if (n == 0) { return PLURAL_CATEGORY.ZERO; } if (n == 1) { return PLURAL_CATEGORY.ONE; } if (n == 2) { return PLURAL_CATEGORY.TWO; } if (n % 100 >= 3 && n % 100 <= 10) { return PLURAL_CATEGORY.FEW; } if (n % 100 >= 11 && n % 100 <= 99) { return PLURAL_CATEGORY.MANY; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-ps.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-ps.js
index 0e5a8aec..26baca00 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-ps.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-ps.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u062a\u0634\u0631\u064a\u0646 \u0627\u0644\u062b\u0627\u0646\u064a",
"\u0643\u0627\u0646\u0648\u0646 \u0627\u0644\u0623\u0648\u0644"
],
+ "STANDALONEMONTH": [
+ "\u0643\u0627\u0646\u0648\u0646 \u0627\u0644\u062b\u0627\u0646\u064a",
+ "\u0634\u0628\u0627\u0637",
+ "\u0622\u0630\u0627\u0631",
+ "\u0646\u064a\u0633\u0627\u0646",
+ "\u0623\u064a\u0627\u0631",
+ "\u062d\u0632\u064a\u0631\u0627\u0646",
+ "\u062a\u0645\u0648\u0632",
+ "\u0622\u0628",
+ "\u0623\u064a\u0644\u0648\u0644",
+ "\u062a\u0634\u0631\u064a\u0646 \u0627\u0644\u0623\u0648\u0644",
+ "\u062a\u0634\u0631\u064a\u0646 \u0627\u0644\u062b\u0627\u0646\u064a",
+ "\u0643\u0627\u0646\u0648\u0646 \u0627\u0644\u0623\u0648\u0644"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "ar-ps",
+ "localeID": "ar_PS",
"pluralCat": function(n, opt_precision) { if (n == 0) { return PLURAL_CATEGORY.ZERO; } if (n == 1) { return PLURAL_CATEGORY.ONE; } if (n == 2) { return PLURAL_CATEGORY.TWO; } if (n % 100 >= 3 && n % 100 <= 10) { return PLURAL_CATEGORY.FEW; } if (n % 100 >= 11 && n % 100 <= 99) { return PLURAL_CATEGORY.MANY; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-qa.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-qa.js
index 0007850d..7d9ea688 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-qa.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-qa.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u0646\u0648\u0641\u0645\u0628\u0631",
"\u062f\u064a\u0633\u0645\u0628\u0631"
],
+ "STANDALONEMONTH": [
+ "\u064a\u0646\u0627\u064a\u0631",
+ "\u0641\u0628\u0631\u0627\u064a\u0631",
+ "\u0645\u0627\u0631\u0633",
+ "\u0623\u0628\u0631\u064a\u0644",
+ "\u0645\u0627\u064a\u0648",
+ "\u064a\u0648\u0646\u064a\u0648",
+ "\u064a\u0648\u0644\u064a\u0648",
+ "\u0623\u063a\u0633\u0637\u0633",
+ "\u0633\u0628\u062a\u0645\u0628\u0631",
+ "\u0623\u0643\u062a\u0648\u0628\u0631",
+ "\u0646\u0648\u0641\u0645\u0628\u0631",
+ "\u062f\u064a\u0633\u0645\u0628\u0631"
+ ],
"WEEKENDRANGE": [
4,
5
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "ar-qa",
+ "localeID": "ar_QA",
"pluralCat": function(n, opt_precision) { if (n == 0) { return PLURAL_CATEGORY.ZERO; } if (n == 1) { return PLURAL_CATEGORY.ONE; } if (n == 2) { return PLURAL_CATEGORY.TWO; } if (n % 100 >= 3 && n % 100 <= 10) { return PLURAL_CATEGORY.FEW; } if (n % 100 >= 11 && n % 100 <= 99) { return PLURAL_CATEGORY.MANY; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-sa.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-sa.js
index dcaa4a68..5fb66535 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-sa.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-sa.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u0646\u0648\u0641\u0645\u0628\u0631",
"\u062f\u064a\u0633\u0645\u0628\u0631"
],
+ "STANDALONEMONTH": [
+ "\u064a\u0646\u0627\u064a\u0631",
+ "\u0641\u0628\u0631\u0627\u064a\u0631",
+ "\u0645\u0627\u0631\u0633",
+ "\u0623\u0628\u0631\u064a\u0644",
+ "\u0645\u0627\u064a\u0648",
+ "\u064a\u0648\u0646\u064a\u0648",
+ "\u064a\u0648\u0644\u064a\u0648",
+ "\u0623\u063a\u0633\u0637\u0633",
+ "\u0633\u0628\u062a\u0645\u0628\u0631",
+ "\u0623\u0643\u062a\u0648\u0628\u0631",
+ "\u0646\u0648\u0641\u0645\u0628\u0631",
+ "\u062f\u064a\u0633\u0645\u0628\u0631"
+ ],
"WEEKENDRANGE": [
4,
5
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "ar-sa",
+ "localeID": "ar_SA",
"pluralCat": function(n, opt_precision) { if (n == 0) { return PLURAL_CATEGORY.ZERO; } if (n == 1) { return PLURAL_CATEGORY.ONE; } if (n == 2) { return PLURAL_CATEGORY.TWO; } if (n % 100 >= 3 && n % 100 <= 10) { return PLURAL_CATEGORY.FEW; } if (n % 100 >= 11 && n % 100 <= 99) { return PLURAL_CATEGORY.MANY; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-sd.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-sd.js
index 769ce9bf..e8c6494b 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-sd.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-sd.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u0646\u0648\u0641\u0645\u0628\u0631",
"\u062f\u064a\u0633\u0645\u0628\u0631"
],
+ "STANDALONEMONTH": [
+ "\u064a\u0646\u0627\u064a\u0631",
+ "\u0641\u0628\u0631\u0627\u064a\u0631",
+ "\u0645\u0627\u0631\u0633",
+ "\u0623\u0628\u0631\u064a\u0644",
+ "\u0645\u0627\u064a\u0648",
+ "\u064a\u0648\u0646\u064a\u0648",
+ "\u064a\u0648\u0644\u064a\u0648",
+ "\u0623\u063a\u0633\u0637\u0633",
+ "\u0633\u0628\u062a\u0645\u0628\u0631",
+ "\u0623\u0643\u062a\u0648\u0628\u0631",
+ "\u0646\u0648\u0641\u0645\u0628\u0631",
+ "\u062f\u064a\u0633\u0645\u0628\u0631"
+ ],
"WEEKENDRANGE": [
4,
5
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "ar-sd",
+ "localeID": "ar_SD",
"pluralCat": function(n, opt_precision) { if (n == 0) { return PLURAL_CATEGORY.ZERO; } if (n == 1) { return PLURAL_CATEGORY.ONE; } if (n == 2) { return PLURAL_CATEGORY.TWO; } if (n % 100 >= 3 && n % 100 <= 10) { return PLURAL_CATEGORY.FEW; } if (n % 100 >= 11 && n % 100 <= 99) { return PLURAL_CATEGORY.MANY; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-so.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-so.js
index 4aea4a8e..7ab6a54d 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-so.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-so.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u0646\u0648\u0641\u0645\u0628\u0631",
"\u062f\u064a\u0633\u0645\u0628\u0631"
],
+ "STANDALONEMONTH": [
+ "\u064a\u0646\u0627\u064a\u0631",
+ "\u0641\u0628\u0631\u0627\u064a\u0631",
+ "\u0645\u0627\u0631\u0633",
+ "\u0623\u0628\u0631\u064a\u0644",
+ "\u0645\u0627\u064a\u0648",
+ "\u064a\u0648\u0646\u064a\u0648",
+ "\u064a\u0648\u0644\u064a\u0648",
+ "\u0623\u063a\u0633\u0637\u0633",
+ "\u0633\u0628\u062a\u0645\u0628\u0631",
+ "\u0623\u0643\u062a\u0648\u0628\u0631",
+ "\u0646\u0648\u0641\u0645\u0628\u0631",
+ "\u062f\u064a\u0633\u0645\u0628\u0631"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "ar-so",
+ "localeID": "ar_SO",
"pluralCat": function(n, opt_precision) { if (n == 0) { return PLURAL_CATEGORY.ZERO; } if (n == 1) { return PLURAL_CATEGORY.ONE; } if (n == 2) { return PLURAL_CATEGORY.TWO; } if (n % 100 >= 3 && n % 100 <= 10) { return PLURAL_CATEGORY.FEW; } if (n % 100 >= 11 && n % 100 <= 99) { return PLURAL_CATEGORY.MANY; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-ss.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-ss.js
index 23338b3f..c5afc29c 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-ss.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-ss.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u0646\u0648\u0641\u0645\u0628\u0631",
"\u062f\u064a\u0633\u0645\u0628\u0631"
],
+ "STANDALONEMONTH": [
+ "\u064a\u0646\u0627\u064a\u0631",
+ "\u0641\u0628\u0631\u0627\u064a\u0631",
+ "\u0645\u0627\u0631\u0633",
+ "\u0623\u0628\u0631\u064a\u0644",
+ "\u0645\u0627\u064a\u0648",
+ "\u064a\u0648\u0646\u064a\u0648",
+ "\u064a\u0648\u0644\u064a\u0648",
+ "\u0623\u063a\u0633\u0637\u0633",
+ "\u0633\u0628\u062a\u0645\u0628\u0631",
+ "\u0623\u0643\u062a\u0648\u0628\u0631",
+ "\u0646\u0648\u0641\u0645\u0628\u0631",
+ "\u062f\u064a\u0633\u0645\u0628\u0631"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "ar-ss",
+ "localeID": "ar_SS",
"pluralCat": function(n, opt_precision) { if (n == 0) { return PLURAL_CATEGORY.ZERO; } if (n == 1) { return PLURAL_CATEGORY.ONE; } if (n == 2) { return PLURAL_CATEGORY.TWO; } if (n % 100 >= 3 && n % 100 <= 10) { return PLURAL_CATEGORY.FEW; } if (n % 100 >= 11 && n % 100 <= 99) { return PLURAL_CATEGORY.MANY; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-sy.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-sy.js
index 80f4b5ee..9ddd6add 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-sy.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-sy.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u062a\u0634\u0631\u064a\u0646 \u0627\u0644\u062b\u0627\u0646\u064a",
"\u0643\u0627\u0646\u0648\u0646 \u0627\u0644\u0623\u0648\u0644"
],
+ "STANDALONEMONTH": [
+ "\u0643\u0627\u0646\u0648\u0646 \u0627\u0644\u062b\u0627\u0646\u064a",
+ "\u0634\u0628\u0627\u0637",
+ "\u0622\u0630\u0627\u0631",
+ "\u0646\u064a\u0633\u0627\u0646",
+ "\u0623\u064a\u0627\u0631",
+ "\u062d\u0632\u064a\u0631\u0627\u0646",
+ "\u062a\u0645\u0648\u0632",
+ "\u0622\u0628",
+ "\u0623\u064a\u0644\u0648\u0644",
+ "\u062a\u0634\u0631\u064a\u0646 \u0627\u0644\u0623\u0648\u0644",
+ "\u062a\u0634\u0631\u064a\u0646 \u0627\u0644\u062b\u0627\u0646\u064a",
+ "\u0643\u0627\u0646\u0648\u0646 \u0627\u0644\u0623\u0648\u0644"
+ ],
"WEEKENDRANGE": [
4,
5
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "ar-sy",
+ "localeID": "ar_SY",
"pluralCat": function(n, opt_precision) { if (n == 0) { return PLURAL_CATEGORY.ZERO; } if (n == 1) { return PLURAL_CATEGORY.ONE; } if (n == 2) { return PLURAL_CATEGORY.TWO; } if (n % 100 >= 3 && n % 100 <= 10) { return PLURAL_CATEGORY.FEW; } if (n % 100 >= 11 && n % 100 <= 99) { return PLURAL_CATEGORY.MANY; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-td.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-td.js
index 408e9393..b28152a4 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-td.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-td.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u0646\u0648\u0641\u0645\u0628\u0631",
"\u062f\u064a\u0633\u0645\u0628\u0631"
],
+ "STANDALONEMONTH": [
+ "\u064a\u0646\u0627\u064a\u0631",
+ "\u0641\u0628\u0631\u0627\u064a\u0631",
+ "\u0645\u0627\u0631\u0633",
+ "\u0623\u0628\u0631\u064a\u0644",
+ "\u0645\u0627\u064a\u0648",
+ "\u064a\u0648\u0646\u064a\u0648",
+ "\u064a\u0648\u0644\u064a\u0648",
+ "\u0623\u063a\u0633\u0637\u0633",
+ "\u0633\u0628\u062a\u0645\u0628\u0631",
+ "\u0623\u0643\u062a\u0648\u0628\u0631",
+ "\u0646\u0648\u0641\u0645\u0628\u0631",
+ "\u062f\u064a\u0633\u0645\u0628\u0631"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "ar-td",
+ "localeID": "ar_TD",
"pluralCat": function(n, opt_precision) { if (n == 0) { return PLURAL_CATEGORY.ZERO; } if (n == 1) { return PLURAL_CATEGORY.ONE; } if (n == 2) { return PLURAL_CATEGORY.TWO; } if (n % 100 >= 3 && n % 100 <= 10) { return PLURAL_CATEGORY.FEW; } if (n % 100 >= 11 && n % 100 <= 99) { return PLURAL_CATEGORY.MANY; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-tn.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-tn.js
index 2784ed5f..eaba5053 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-tn.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-tn.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u0646\u0648\u0641\u0645\u0628\u0631",
"\u062f\u064a\u0633\u0645\u0628\u0631"
],
+ "STANDALONEMONTH": [
+ "\u062c\u0627\u0646\u0641\u064a",
+ "\u0641\u064a\u0641\u0631\u064a",
+ "\u0645\u0627\u0631\u0633",
+ "\u0623\u0641\u0631\u064a\u0644",
+ "\u0645\u0627\u064a",
+ "\u062c\u0648\u0627\u0646",
+ "\u062c\u0648\u064a\u0644\u064a\u0629",
+ "\u0623\u0648\u062a",
+ "\u0633\u0628\u062a\u0645\u0628\u0631",
+ "\u0623\u0643\u062a\u0648\u0628\u0631",
+ "\u0646\u0648\u0641\u0645\u0628\u0631",
+ "\u062f\u064a\u0633\u0645\u0628\u0631"
+ ],
"WEEKENDRANGE": [
4,
5
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "ar-tn",
+ "localeID": "ar_TN",
"pluralCat": function(n, opt_precision) { if (n == 0) { return PLURAL_CATEGORY.ZERO; } if (n == 1) { return PLURAL_CATEGORY.ONE; } if (n == 2) { return PLURAL_CATEGORY.TWO; } if (n % 100 >= 3 && n % 100 <= 10) { return PLURAL_CATEGORY.FEW; } if (n % 100 >= 11 && n % 100 <= 99) { return PLURAL_CATEGORY.MANY; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-ye.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-ye.js
index 700b4aef..b0d8356f 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar-ye.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar-ye.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u0646\u0648\u0641\u0645\u0628\u0631",
"\u062f\u064a\u0633\u0645\u0628\u0631"
],
+ "STANDALONEMONTH": [
+ "\u064a\u0646\u0627\u064a\u0631",
+ "\u0641\u0628\u0631\u0627\u064a\u0631",
+ "\u0645\u0627\u0631\u0633",
+ "\u0623\u0628\u0631\u064a\u0644",
+ "\u0645\u0627\u064a\u0648",
+ "\u064a\u0648\u0646\u064a\u0648",
+ "\u064a\u0648\u0644\u064a\u0648",
+ "\u0623\u063a\u0633\u0637\u0633",
+ "\u0633\u0628\u062a\u0645\u0628\u0631",
+ "\u0623\u0643\u062a\u0648\u0628\u0631",
+ "\u0646\u0648\u0641\u0645\u0628\u0631",
+ "\u062f\u064a\u0633\u0645\u0628\u0631"
+ ],
"WEEKENDRANGE": [
4,
5
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "ar-ye",
+ "localeID": "ar_YE",
"pluralCat": function(n, opt_precision) { if (n == 0) { return PLURAL_CATEGORY.ZERO; } if (n == 1) { return PLURAL_CATEGORY.ONE; } if (n == 2) { return PLURAL_CATEGORY.TWO; } if (n % 100 >= 3 && n % 100 <= 10) { return PLURAL_CATEGORY.FEW; } if (n % 100 >= 11 && n % 100 <= 99) { return PLURAL_CATEGORY.MANY; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar.js
index dd58093d..1ac223ad 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ar.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ar.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u0646\u0648\u0641\u0645\u0628\u0631",
"\u062f\u064a\u0633\u0645\u0628\u0631"
],
+ "STANDALONEMONTH": [
+ "\u064a\u0646\u0627\u064a\u0631",
+ "\u0641\u0628\u0631\u0627\u064a\u0631",
+ "\u0645\u0627\u0631\u0633",
+ "\u0623\u0628\u0631\u064a\u0644",
+ "\u0645\u0627\u064a\u0648",
+ "\u064a\u0648\u0646\u064a\u0648",
+ "\u064a\u0648\u0644\u064a\u0648",
+ "\u0623\u063a\u0633\u0637\u0633",
+ "\u0633\u0628\u062a\u0645\u0628\u0631",
+ "\u0623\u0643\u062a\u0648\u0628\u0631",
+ "\u0646\u0648\u0641\u0645\u0628\u0631",
+ "\u062f\u064a\u0633\u0645\u0628\u0631"
+ ],
"WEEKENDRANGE": [
4,
5
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "ar",
+ "localeID": "ar",
"pluralCat": function(n, opt_precision) { if (n == 0) { return PLURAL_CATEGORY.ZERO; } if (n == 1) { return PLURAL_CATEGORY.ONE; } if (n == 2) { return PLURAL_CATEGORY.TWO; } if (n % 100 >= 3 && n % 100 <= 10) { return PLURAL_CATEGORY.FEW; } if (n % 100 >= 11 && n % 100 <= 99) { return PLURAL_CATEGORY.MANY; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_as-in.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_as-in.js
index 27f59242..a7beeabb 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_as-in.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_as-in.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u09a8\u09ad\u09c7",
"\u09a1\u09bf\u09b8\u09c7"
],
+ "STANDALONEMONTH": [
+ "\u099c\u09be\u09a8\u09c1\u09f1\u09be\u09f0\u09c0",
+ "\u09ab\u09c7\u09ac\u09cd\u09f0\u09c1\u09f1\u09be\u09f0\u09c0",
+ "\u09ae\u09be\u09f0\u09cd\u099a",
+ "\u098f\u09aa\u09cd\u09f0\u09bf\u09b2",
+ "\u09ae\u09c7",
+ "\u099c\u09c1\u09a8",
+ "\u099c\u09c1\u09b2\u09be\u0987",
+ "\u0986\u0997\u09b7\u09cd\u099f",
+ "\u099b\u09c7\u09aa\u09cd\u09a4\u09c7\u09ae\u09cd\u09ac\u09f0",
+ "\u0985\u0995\u09cd\u099f\u09cb\u09ac\u09f0",
+ "\u09a8\u09f1\u09c7\u09ae\u09cd\u09ac\u09f0",
+ "\u09a1\u09bf\u099a\u09c7\u09ae\u09cd\u09ac\u09f0"
+ ],
"WEEKENDRANGE": [
6,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "as-in",
+ "localeID": "as_IN",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_as.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_as.js
index 5172d54c..6c4fd512 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_as.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_as.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u09a8\u09ad\u09c7",
"\u09a1\u09bf\u09b8\u09c7"
],
+ "STANDALONEMONTH": [
+ "\u099c\u09be\u09a8\u09c1\u09f1\u09be\u09f0\u09c0",
+ "\u09ab\u09c7\u09ac\u09cd\u09f0\u09c1\u09f1\u09be\u09f0\u09c0",
+ "\u09ae\u09be\u09f0\u09cd\u099a",
+ "\u098f\u09aa\u09cd\u09f0\u09bf\u09b2",
+ "\u09ae\u09c7",
+ "\u099c\u09c1\u09a8",
+ "\u099c\u09c1\u09b2\u09be\u0987",
+ "\u0986\u0997\u09b7\u09cd\u099f",
+ "\u099b\u09c7\u09aa\u09cd\u09a4\u09c7\u09ae\u09cd\u09ac\u09f0",
+ "\u0985\u0995\u09cd\u099f\u09cb\u09ac\u09f0",
+ "\u09a8\u09f1\u09c7\u09ae\u09cd\u09ac\u09f0",
+ "\u09a1\u09bf\u099a\u09c7\u09ae\u09cd\u09ac\u09f0"
+ ],
"WEEKENDRANGE": [
6,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "as",
+ "localeID": "as",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_asa-tz.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_asa-tz.js
index 5add04ff..8bff7253 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_asa-tz.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_asa-tz.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "Januari",
+ "Februari",
+ "Machi",
+ "Aprili",
+ "Mei",
+ "Juni",
+ "Julai",
+ "Agosti",
+ "Septemba",
+ "Oktoba",
+ "Novemba",
+ "Desemba"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "asa-tz",
+ "localeID": "asa_TZ",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_asa.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_asa.js
index 05e1f0bc..c6e4c178 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_asa.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_asa.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "Januari",
+ "Februari",
+ "Machi",
+ "Aprili",
+ "Mei",
+ "Juni",
+ "Julai",
+ "Agosti",
+ "Septemba",
+ "Oktoba",
+ "Novemba",
+ "Desemba"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "asa",
+ "localeID": "asa",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ast-es.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ast-es.js
index af513b1a..7d429d6e 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ast-es.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ast-es.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"pay",
"avi"
],
+ "STANDALONEMONTH": [
+ "xineru",
+ "febreru",
+ "marzu",
+ "abril",
+ "mayu",
+ "xunu",
+ "xunetu",
+ "agostu",
+ "setiembre",
+ "ochobre",
+ "payares",
+ "avientu"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ast-es",
+ "localeID": "ast_ES",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ast.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ast.js
index 2fc061ee..38058bc7 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ast.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ast.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"pay",
"avi"
],
+ "STANDALONEMONTH": [
+ "xineru",
+ "febreru",
+ "marzu",
+ "abril",
+ "mayu",
+ "xunu",
+ "xunetu",
+ "agostu",
+ "setiembre",
+ "ochobre",
+ "payares",
+ "avientu"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ast",
+ "localeID": "ast",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_az-cyrl-az.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_az-cyrl-az.js
index 1b9a6ad9..83075e79 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_az-cyrl-az.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_az-cyrl-az.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u043d\u043e\u0458\u0430\u0431\u0440",
"\u0434\u0435\u043a\u0430\u0431\u0440"
],
+ "STANDALONEMONTH": [
+ "\u0458\u0430\u043d\u0432\u0430\u0440",
+ "\u0444\u0435\u0432\u0440\u0430\u043b",
+ "\u043c\u0430\u0440\u0442",
+ "\u0430\u043f\u0440\u0435\u043b",
+ "\u043c\u0430\u0439",
+ "\u0438\u0458\u0443\u043d",
+ "\u0438\u0458\u0443\u043b",
+ "\u0430\u0432\u0433\u0443\u0441\u0442",
+ "\u0441\u0435\u043d\u0442\u0458\u0430\u0431\u0440",
+ "\u043e\u043a\u0442\u0458\u0430\u0431\u0440",
+ "\u043d\u043e\u0458\u0430\u0431\u0440",
+ "\u0434\u0435\u043a\u0430\u0431\u0440"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "az-cyrl-az",
+ "localeID": "az_Cyrl_AZ",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_az-cyrl.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_az-cyrl.js
index d9f52819..256f4e32 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_az-cyrl.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_az-cyrl.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u043d\u043e\u0458\u0430\u0431\u0440",
"\u0434\u0435\u043a\u0430\u0431\u0440"
],
+ "STANDALONEMONTH": [
+ "\u0458\u0430\u043d\u0432\u0430\u0440",
+ "\u0444\u0435\u0432\u0440\u0430\u043b",
+ "\u043c\u0430\u0440\u0442",
+ "\u0430\u043f\u0440\u0435\u043b",
+ "\u043c\u0430\u0439",
+ "\u0438\u0458\u0443\u043d",
+ "\u0438\u0458\u0443\u043b",
+ "\u0430\u0432\u0433\u0443\u0441\u0442",
+ "\u0441\u0435\u043d\u0442\u0458\u0430\u0431\u0440",
+ "\u043e\u043a\u0442\u0458\u0430\u0431\u0440",
+ "\u043d\u043e\u0458\u0430\u0431\u0440",
+ "\u0434\u0435\u043a\u0430\u0431\u0440"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "az-cyrl",
+ "localeID": "az_Cyrl",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_az-latn-az.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_az-latn-az.js
index 72ff9e80..8daf7b1a 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_az-latn-az.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_az-latn-az.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"noy",
"dek"
],
+ "STANDALONEMONTH": [
+ "Yanvar",
+ "Fevral",
+ "Mart",
+ "Aprel",
+ "May",
+ "\u0130yun",
+ "\u0130yul",
+ "Avqust",
+ "Sentyabr",
+ "Oktyabr",
+ "Noyabr",
+ "Dekabr"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "az-latn-az",
+ "localeID": "az_Latn_AZ",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_az-latn.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_az-latn.js
index c01135c8..145c3c3b 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_az-latn.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_az-latn.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"noy",
"dek"
],
+ "STANDALONEMONTH": [
+ "Yanvar",
+ "Fevral",
+ "Mart",
+ "Aprel",
+ "May",
+ "\u0130yun",
+ "\u0130yul",
+ "Avqust",
+ "Sentyabr",
+ "Oktyabr",
+ "Noyabr",
+ "Dekabr"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "az-latn",
+ "localeID": "az_Latn",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_az.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_az.js
index df1dd9e4..84791b30 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_az.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_az.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"noy",
"dek"
],
+ "STANDALONEMONTH": [
+ "Yanvar",
+ "Fevral",
+ "Mart",
+ "Aprel",
+ "May",
+ "\u0130yun",
+ "\u0130yul",
+ "Avqust",
+ "Sentyabr",
+ "Oktyabr",
+ "Noyabr",
+ "Dekabr"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "az",
+ "localeID": "az",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bas-cm.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bas-cm.js
index ccc7ea07..0511efcd 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bas-cm.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bas-cm.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"may",
"li\u0253"
],
+ "STANDALONEMONTH": [
+ "K\u0254nd\u0254\u014b",
+ "M\u00e0c\u025b\u0302l",
+ "M\u00e0t\u00f9mb",
+ "M\u00e0top",
+ "M\u0300puy\u025b",
+ "H\u00ecl\u00f2nd\u025b\u0300",
+ "Nj\u00e8b\u00e0",
+ "H\u00ecka\u014b",
+ "D\u00ecp\u0254\u0300s",
+ "B\u00ec\u00f2\u00f4m",
+ "M\u00e0y\u025bs\u00e8p",
+ "L\u00ecbuy li \u0144y\u00e8e"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "bas-cm",
+ "localeID": "bas_CM",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bas.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bas.js
index e32cc420..3bdcaedb 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bas.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bas.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"may",
"li\u0253"
],
+ "STANDALONEMONTH": [
+ "K\u0254nd\u0254\u014b",
+ "M\u00e0c\u025b\u0302l",
+ "M\u00e0t\u00f9mb",
+ "M\u00e0top",
+ "M\u0300puy\u025b",
+ "H\u00ecl\u00f2nd\u025b\u0300",
+ "Nj\u00e8b\u00e0",
+ "H\u00ecka\u014b",
+ "D\u00ecp\u0254\u0300s",
+ "B\u00ec\u00f2\u00f4m",
+ "M\u00e0y\u025bs\u00e8p",
+ "L\u00ecbuy li \u0144y\u00e8e"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "bas",
+ "localeID": "bas",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_be-by.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_be-by.js
index 87fb319b..dd98e650 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_be-by.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_be-by.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u043b\u0456\u0441",
"\u0441\u043d\u0435"
],
+ "STANDALONEMONTH": [
+ "\u0441\u0442\u0443\u0434\u0437\u0435\u043d\u044c",
+ "\u043b\u044e\u0442\u044b",
+ "\u0441\u0430\u043a\u0430\u0432\u0456\u043a",
+ "\u043a\u0440\u0430\u0441\u0430\u0432\u0456\u043a",
+ "\u043c\u0430\u0439",
+ "\u0447\u044d\u0440\u0432\u0435\u043d\u044c",
+ "\u043b\u0456\u043f\u0435\u043d\u044c",
+ "\u0436\u043d\u0456\u0432\u0435\u043d\u044c",
+ "\u0432\u0435\u0440\u0430\u0441\u0435\u043d\u044c",
+ "\u043a\u0430\u0441\u0442\u0440\u044b\u0447\u043d\u0456\u043a",
+ "\u043b\u0456\u0441\u0442\u0430\u043f\u0430\u0434",
+ "\u0441\u043d\u0435\u0436\u0430\u043d\u044c"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "be-by",
+ "localeID": "be_BY",
"pluralCat": function(n, opt_precision) { if (n % 10 == 1 && n % 100 != 11) { return PLURAL_CATEGORY.ONE; } if (n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14)) { return PLURAL_CATEGORY.FEW; } if (n % 10 == 0 || n % 10 >= 5 && n % 10 <= 9 || n % 100 >= 11 && n % 100 <= 14) { return PLURAL_CATEGORY.MANY; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_be.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_be.js
index 8baa3ced..7f557eb9 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_be.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_be.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u043b\u0456\u0441",
"\u0441\u043d\u0435"
],
+ "STANDALONEMONTH": [
+ "\u0441\u0442\u0443\u0434\u0437\u0435\u043d\u044c",
+ "\u043b\u044e\u0442\u044b",
+ "\u0441\u0430\u043a\u0430\u0432\u0456\u043a",
+ "\u043a\u0440\u0430\u0441\u0430\u0432\u0456\u043a",
+ "\u043c\u0430\u0439",
+ "\u0447\u044d\u0440\u0432\u0435\u043d\u044c",
+ "\u043b\u0456\u043f\u0435\u043d\u044c",
+ "\u0436\u043d\u0456\u0432\u0435\u043d\u044c",
+ "\u0432\u0435\u0440\u0430\u0441\u0435\u043d\u044c",
+ "\u043a\u0430\u0441\u0442\u0440\u044b\u0447\u043d\u0456\u043a",
+ "\u043b\u0456\u0441\u0442\u0430\u043f\u0430\u0434",
+ "\u0441\u043d\u0435\u0436\u0430\u043d\u044c"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "be",
+ "localeID": "be",
"pluralCat": function(n, opt_precision) { if (n % 10 == 1 && n % 100 != 11) { return PLURAL_CATEGORY.ONE; } if (n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14)) { return PLURAL_CATEGORY.FEW; } if (n % 10 == 0 || n % 10 >= 5 && n % 10 <= 9 || n % 100 >= 11 && n % 100 <= 14) { return PLURAL_CATEGORY.MANY; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bem-zm.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bem-zm.js
index 307347a8..6881a377 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bem-zm.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bem-zm.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dis"
],
+ "STANDALONEMONTH": [
+ "Januari",
+ "Februari",
+ "Machi",
+ "Epreo",
+ "Mei",
+ "Juni",
+ "Julai",
+ "Ogasti",
+ "Septemba",
+ "Oktoba",
+ "Novemba",
+ "Disemba"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "bem-zm",
+ "localeID": "bem_ZM",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bem.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bem.js
index 99778938..8a8229d5 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bem.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bem.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dis"
],
+ "STANDALONEMONTH": [
+ "Januari",
+ "Februari",
+ "Machi",
+ "Epreo",
+ "Mei",
+ "Juni",
+ "Julai",
+ "Ogasti",
+ "Septemba",
+ "Oktoba",
+ "Novemba",
+ "Disemba"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "bem",
+ "localeID": "bem",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bez-tz.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bez-tz.js
index d8d80a1b..9e5fa35e 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bez-tz.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bez-tz.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Kmj",
"Kmb"
],
+ "STANDALONEMONTH": [
+ "pa mwedzi gwa hutala",
+ "pa mwedzi gwa wuvili",
+ "pa mwedzi gwa wudatu",
+ "pa mwedzi gwa wutai",
+ "pa mwedzi gwa wuhanu",
+ "pa mwedzi gwa sita",
+ "pa mwedzi gwa saba",
+ "pa mwedzi gwa nane",
+ "pa mwedzi gwa tisa",
+ "pa mwedzi gwa kumi",
+ "pa mwedzi gwa kumi na moja",
+ "pa mwedzi gwa kumi na mbili"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "bez-tz",
+ "localeID": "bez_TZ",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bez.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bez.js
index a240ee9b..3788f08e 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bez.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bez.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Kmj",
"Kmb"
],
+ "STANDALONEMONTH": [
+ "pa mwedzi gwa hutala",
+ "pa mwedzi gwa wuvili",
+ "pa mwedzi gwa wudatu",
+ "pa mwedzi gwa wutai",
+ "pa mwedzi gwa wuhanu",
+ "pa mwedzi gwa sita",
+ "pa mwedzi gwa saba",
+ "pa mwedzi gwa nane",
+ "pa mwedzi gwa tisa",
+ "pa mwedzi gwa kumi",
+ "pa mwedzi gwa kumi na moja",
+ "pa mwedzi gwa kumi na mbili"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "bez",
+ "localeID": "bez",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bg-bg.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bg-bg.js
index 984801da..cd8d37dd 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bg-bg.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bg-bg.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u043d\u043e\u0435\u043c.",
"\u0434\u0435\u043a."
],
+ "STANDALONEMONTH": [
+ "\u044f\u043d\u0443\u0430\u0440\u0438",
+ "\u0444\u0435\u0432\u0440\u0443\u0430\u0440\u0438",
+ "\u043c\u0430\u0440\u0442",
+ "\u0430\u043f\u0440\u0438\u043b",
+ "\u043c\u0430\u0439",
+ "\u044e\u043d\u0438",
+ "\u044e\u043b\u0438",
+ "\u0430\u0432\u0433\u0443\u0441\u0442",
+ "\u0441\u0435\u043f\u0442\u0435\u043c\u0432\u0440\u0438",
+ "\u043e\u043a\u0442\u043e\u043c\u0432\u0440\u0438",
+ "\u043d\u043e\u0435\u043c\u0432\u0440\u0438",
+ "\u0434\u0435\u043a\u0435\u043c\u0432\u0440\u0438"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "bg-bg",
+ "localeID": "bg_BG",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bg.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bg.js
index 1bfb1328..2b62eaf0 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bg.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bg.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u043d\u043e\u0435\u043c.",
"\u0434\u0435\u043a."
],
+ "STANDALONEMONTH": [
+ "\u044f\u043d\u0443\u0430\u0440\u0438",
+ "\u0444\u0435\u0432\u0440\u0443\u0430\u0440\u0438",
+ "\u043c\u0430\u0440\u0442",
+ "\u0430\u043f\u0440\u0438\u043b",
+ "\u043c\u0430\u0439",
+ "\u044e\u043d\u0438",
+ "\u044e\u043b\u0438",
+ "\u0430\u0432\u0433\u0443\u0441\u0442",
+ "\u0441\u0435\u043f\u0442\u0435\u043c\u0432\u0440\u0438",
+ "\u043e\u043a\u0442\u043e\u043c\u0432\u0440\u0438",
+ "\u043d\u043e\u0435\u043c\u0432\u0440\u0438",
+ "\u0434\u0435\u043a\u0435\u043c\u0432\u0440\u0438"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "bg",
+ "localeID": "bg",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bm-latn-ml.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bm-latn-ml.js
index 6a0b184a..d5d72582 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bm-latn-ml.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bm-latn-ml.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"now",
"des"
],
+ "STANDALONEMONTH": [
+ "zanwuye",
+ "feburuye",
+ "marisi",
+ "awirili",
+ "m\u025b",
+ "zuw\u025bn",
+ "zuluye",
+ "uti",
+ "s\u025btanburu",
+ "\u0254kut\u0254buru",
+ "nowanburu",
+ "desanburu"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "bm-latn-ml",
+ "localeID": "bm_Latn_ML",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bm-latn.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bm-latn.js
index 686fcf15..1d2721bd 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bm-latn.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bm-latn.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"now",
"des"
],
+ "STANDALONEMONTH": [
+ "zanwuye",
+ "feburuye",
+ "marisi",
+ "awirili",
+ "m\u025b",
+ "zuw\u025bn",
+ "zuluye",
+ "uti",
+ "s\u025btanburu",
+ "\u0254kut\u0254buru",
+ "nowanburu",
+ "desanburu"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "bm-latn",
+ "localeID": "bm_Latn",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bm-ml.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bm-ml.js
index 1fd18527..1fd18527 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bm-ml.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bm-ml.js
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bm.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bm.js
index 30c2cf0b..af07e44b 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bm.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bm.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"now",
"des"
],
+ "STANDALONEMONTH": [
+ "zanwuye",
+ "feburuye",
+ "marisi",
+ "awirili",
+ "m\u025b",
+ "zuw\u025bn",
+ "zuluye",
+ "uti",
+ "s\u025btanburu",
+ "\u0254kut\u0254buru",
+ "nowanburu",
+ "desanburu"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "bm",
+ "localeID": "bm",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bn-bd.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bn-bd.js
index 24fb37ae..a6009d7d 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bn-bd.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bn-bd.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u09a8\u09ad\u09c7\u09ae\u09cd\u09ac\u09b0",
"\u09a1\u09bf\u09b8\u09c7\u09ae\u09cd\u09ac\u09b0"
],
+ "STANDALONEMONTH": [
+ "\u099c\u09be\u09a8\u09c1\u09af\u09bc\u09be\u09b0\u09c0",
+ "\u09ab\u09c7\u09ac\u09cd\u09b0\u09c1\u09af\u09bc\u09be\u09b0\u09c0",
+ "\u09ae\u09be\u09b0\u09cd\u099a",
+ "\u098f\u09aa\u09cd\u09b0\u09bf\u09b2",
+ "\u09ae\u09c7",
+ "\u099c\u09c1\u09a8",
+ "\u099c\u09c1\u09b2\u09be\u0987",
+ "\u0986\u0997\u09b8\u09cd\u099f",
+ "\u09b8\u09c7\u09aa\u09cd\u099f\u09c7\u09ae\u09cd\u09ac\u09b0",
+ "\u0985\u0995\u09cd\u099f\u09cb\u09ac\u09b0",
+ "\u09a8\u09ad\u09c7\u09ae\u09cd\u09ac\u09b0",
+ "\u09a1\u09bf\u09b8\u09c7\u09ae\u09cd\u09ac\u09b0"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "bn-bd",
+ "localeID": "bn_BD",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bn-in.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bn-in.js
index 63a3c3e6..021644d4 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bn-in.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bn-in.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u09a8\u09ad\u09c7\u09ae\u09cd\u09ac\u09b0",
"\u09a1\u09bf\u09b8\u09c7\u09ae\u09cd\u09ac\u09b0"
],
+ "STANDALONEMONTH": [
+ "\u099c\u09be\u09a8\u09c1\u09af\u09bc\u09be\u09b0\u09c0",
+ "\u09ab\u09c7\u09ac\u09cd\u09b0\u09c1\u09af\u09bc\u09be\u09b0\u09c0",
+ "\u09ae\u09be\u09b0\u09cd\u099a",
+ "\u098f\u09aa\u09cd\u09b0\u09bf\u09b2",
+ "\u09ae\u09c7",
+ "\u099c\u09c1\u09a8",
+ "\u099c\u09c1\u09b2\u09be\u0987",
+ "\u0986\u0997\u09b8\u09cd\u099f",
+ "\u09b8\u09c7\u09aa\u09cd\u099f\u09c7\u09ae\u09cd\u09ac\u09b0",
+ "\u0985\u0995\u09cd\u099f\u09cb\u09ac\u09b0",
+ "\u09a8\u09ad\u09c7\u09ae\u09cd\u09ac\u09b0",
+ "\u09a1\u09bf\u09b8\u09c7\u09ae\u09cd\u09ac\u09b0"
+ ],
"WEEKENDRANGE": [
6,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "bn-in",
+ "localeID": "bn_IN",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bn.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bn.js
index 022ce931..866471e5 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bn.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bn.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u09a8\u09ad\u09c7\u09ae\u09cd\u09ac\u09b0",
"\u09a1\u09bf\u09b8\u09c7\u09ae\u09cd\u09ac\u09b0"
],
+ "STANDALONEMONTH": [
+ "\u099c\u09be\u09a8\u09c1\u09af\u09bc\u09be\u09b0\u09c0",
+ "\u09ab\u09c7\u09ac\u09cd\u09b0\u09c1\u09af\u09bc\u09be\u09b0\u09c0",
+ "\u09ae\u09be\u09b0\u09cd\u099a",
+ "\u098f\u09aa\u09cd\u09b0\u09bf\u09b2",
+ "\u09ae\u09c7",
+ "\u099c\u09c1\u09a8",
+ "\u099c\u09c1\u09b2\u09be\u0987",
+ "\u0986\u0997\u09b8\u09cd\u099f",
+ "\u09b8\u09c7\u09aa\u09cd\u099f\u09c7\u09ae\u09cd\u09ac\u09b0",
+ "\u0985\u0995\u09cd\u099f\u09cb\u09ac\u09b0",
+ "\u09a8\u09ad\u09c7\u09ae\u09cd\u09ac\u09b0",
+ "\u09a1\u09bf\u09b8\u09c7\u09ae\u09cd\u09ac\u09b0"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "bn",
+ "localeID": "bn",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bo-cn.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bo-cn.js
index ea070697..643db4da 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bo-cn.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bo-cn.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u0f5f\u0fb3\u0f0b\u0f21\u0f21",
"\u0f5f\u0fb3\u0f0b\u0f21\u0f22"
],
+ "STANDALONEMONTH": [
+ "\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f51\u0f44\u0f0b\u0f54\u0f7c\u0f0b",
+ "\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f42\u0f49\u0f72\u0f66\u0f0b\u0f54\u0f0b",
+ "\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f66\u0f74\u0f58\u0f0b\u0f54\u0f0b",
+ "\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f56\u0f5e\u0f72\u0f0b\u0f54\u0f0b",
+ "\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f63\u0f94\u0f0b\u0f54\u0f0b",
+ "\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f51\u0fb2\u0f74\u0f42\u0f0b\u0f54\u0f0b",
+ "\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f56\u0f51\u0f74\u0f53\u0f0b\u0f54\u0f0b",
+ "\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f56\u0f62\u0f92\u0fb1\u0f51\u0f0b\u0f54\u0f0b",
+ "\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f51\u0f42\u0f74\u0f0b\u0f54\u0f0b",
+ "\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f56\u0f45\u0f74\u0f0b\u0f54\u0f0b",
+ "\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f56\u0f45\u0f74\u0f0b\u0f42\u0f45\u0f72\u0f42\u0f0b\u0f54\u0f0b",
+ "\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f56\u0f45\u0f74\u0f0b\u0f42\u0f49\u0f72\u0f66\u0f0b\u0f54\u0f0b"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "bo-cn",
+ "localeID": "bo_CN",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bo-in.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bo-in.js
index 89738d38..4f153037 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bo-in.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bo-in.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u0f5f\u0fb3\u0f0b\u0f21\u0f21",
"\u0f5f\u0fb3\u0f0b\u0f21\u0f22"
],
+ "STANDALONEMONTH": [
+ "\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f51\u0f44\u0f0b\u0f54\u0f7c\u0f0b",
+ "\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f42\u0f49\u0f72\u0f66\u0f0b\u0f54\u0f0b",
+ "\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f66\u0f74\u0f58\u0f0b\u0f54\u0f0b",
+ "\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f56\u0f5e\u0f72\u0f0b\u0f54\u0f0b",
+ "\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f63\u0f94\u0f0b\u0f54\u0f0b",
+ "\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f51\u0fb2\u0f74\u0f42\u0f0b\u0f54\u0f0b",
+ "\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f56\u0f51\u0f74\u0f53\u0f0b\u0f54\u0f0b",
+ "\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f56\u0f62\u0f92\u0fb1\u0f51\u0f0b\u0f54\u0f0b",
+ "\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f51\u0f42\u0f74\u0f0b\u0f54\u0f0b",
+ "\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f56\u0f45\u0f74\u0f0b\u0f54\u0f0b",
+ "\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f56\u0f45\u0f74\u0f0b\u0f42\u0f45\u0f72\u0f42\u0f0b\u0f54\u0f0b",
+ "\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f56\u0f45\u0f74\u0f0b\u0f42\u0f49\u0f72\u0f66\u0f0b\u0f54\u0f0b"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "bo-in",
+ "localeID": "bo_IN",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bo.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bo.js
index 117e4d6a..75c2a869 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bo.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bo.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u0f5f\u0fb3\u0f0b\u0f21\u0f21",
"\u0f5f\u0fb3\u0f0b\u0f21\u0f22"
],
+ "STANDALONEMONTH": [
+ "\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f51\u0f44\u0f0b\u0f54\u0f7c\u0f0b",
+ "\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f42\u0f49\u0f72\u0f66\u0f0b\u0f54\u0f0b",
+ "\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f66\u0f74\u0f58\u0f0b\u0f54\u0f0b",
+ "\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f56\u0f5e\u0f72\u0f0b\u0f54\u0f0b",
+ "\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f63\u0f94\u0f0b\u0f54\u0f0b",
+ "\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f51\u0fb2\u0f74\u0f42\u0f0b\u0f54\u0f0b",
+ "\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f56\u0f51\u0f74\u0f53\u0f0b\u0f54\u0f0b",
+ "\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f56\u0f62\u0f92\u0fb1\u0f51\u0f0b\u0f54\u0f0b",
+ "\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f51\u0f42\u0f74\u0f0b\u0f54\u0f0b",
+ "\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f56\u0f45\u0f74\u0f0b\u0f54\u0f0b",
+ "\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f56\u0f45\u0f74\u0f0b\u0f42\u0f45\u0f72\u0f42\u0f0b\u0f54\u0f0b",
+ "\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f56\u0f45\u0f74\u0f0b\u0f42\u0f49\u0f72\u0f66\u0f0b\u0f54\u0f0b"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "bo",
+ "localeID": "bo",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_br-fr.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_br-fr.js
index 111b19cf..2e1b3465 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_br-fr.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_br-fr.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"Du",
"Ker"
],
+ "STANDALONEMONTH": [
+ "Genver",
+ "C\u02bchwevrer",
+ "Meurzh",
+ "Ebrel",
+ "Mae",
+ "Mezheven",
+ "Gouere",
+ "Eost",
+ "Gwengolo",
+ "Here",
+ "Du",
+ "Kerzu"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "br-fr",
+ "localeID": "br_FR",
"pluralCat": function(n, opt_precision) { if (n % 10 == 1 && n % 100 != 11 && n % 100 != 71 && n % 100 != 91) { return PLURAL_CATEGORY.ONE; } if (n % 10 == 2 && n % 100 != 12 && n % 100 != 72 && n % 100 != 92) { return PLURAL_CATEGORY.TWO; } if ((n % 10 >= 3 && n % 10 <= 4 || n % 10 == 9) && (n % 100 < 10 || n % 100 > 19) && (n % 100 < 70 || n % 100 > 79) && (n % 100 < 90 || n % 100 > 99)) { return PLURAL_CATEGORY.FEW; } if (n != 0 && n % 1000000 == 0) { return PLURAL_CATEGORY.MANY; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_br.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_br.js
index 2fbf8714..9434aafb 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_br.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_br.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"Du",
"Ker"
],
+ "STANDALONEMONTH": [
+ "Genver",
+ "C\u02bchwevrer",
+ "Meurzh",
+ "Ebrel",
+ "Mae",
+ "Mezheven",
+ "Gouere",
+ "Eost",
+ "Gwengolo",
+ "Here",
+ "Du",
+ "Kerzu"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "br",
+ "localeID": "br",
"pluralCat": function(n, opt_precision) { if (n % 10 == 1 && n % 100 != 11 && n % 100 != 71 && n % 100 != 91) { return PLURAL_CATEGORY.ONE; } if (n % 10 == 2 && n % 100 != 12 && n % 100 != 72 && n % 100 != 92) { return PLURAL_CATEGORY.TWO; } if ((n % 10 >= 3 && n % 10 <= 4 || n % 10 == 9) && (n % 100 < 10 || n % 100 > 19) && (n % 100 < 70 || n % 100 > 79) && (n % 100 < 90 || n % 100 > 99)) { return PLURAL_CATEGORY.FEW; } if (n != 0 && n % 1000000 == 0) { return PLURAL_CATEGORY.MANY; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_brx-in.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_brx-in.js
index 2d6ad847..a0417d13 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_brx-in.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_brx-in.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u0928\u092c\u0947\u091c\u094d\u092c\u093c\u0930",
"\u0926\u093f\u0938\u0947\u091c\u094d\u092c\u093c\u0930"
],
+ "STANDALONEMONTH": [
+ "\u091c\u093e\u0928\u0941\u0935\u093e\u0930\u0940",
+ "\u092b\u0947\u092c\u094d\u0930\u0941\u0935\u093e\u0930\u0940",
+ "\u092e\u093e\u0930\u094d\u0938",
+ "\u090f\u092b\u094d\u0930\u093f\u0932",
+ "\u092e\u0947",
+ "\u091c\u0941\u0928",
+ "\u091c\u0941\u0932\u093e\u0907",
+ "\u0906\u0917\u0938\u094d\u0925",
+ "\u0938\u0947\u092c\u0925\u0947\u091c\u094d\u092c\u093c\u0930",
+ "\u0905\u0916\u0925\u092c\u0930",
+ "\u0928\u092c\u0947\u091c\u094d\u092c\u093c\u0930",
+ "\u0926\u093f\u0938\u0947\u091c\u094d\u092c\u093c\u0930"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "brx-in",
+ "localeID": "brx_IN",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_brx.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_brx.js
index 85aa1d7d..b909ab27 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_brx.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_brx.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u0928\u092c\u0947\u091c\u094d\u092c\u093c\u0930",
"\u0926\u093f\u0938\u0947\u091c\u094d\u092c\u093c\u0930"
],
+ "STANDALONEMONTH": [
+ "\u091c\u093e\u0928\u0941\u0935\u093e\u0930\u0940",
+ "\u092b\u0947\u092c\u094d\u0930\u0941\u0935\u093e\u0930\u0940",
+ "\u092e\u093e\u0930\u094d\u0938",
+ "\u090f\u092b\u094d\u0930\u093f\u0932",
+ "\u092e\u0947",
+ "\u091c\u0941\u0928",
+ "\u091c\u0941\u0932\u093e\u0907",
+ "\u0906\u0917\u0938\u094d\u0925",
+ "\u0938\u0947\u092c\u0925\u0947\u091c\u094d\u092c\u093c\u0930",
+ "\u0905\u0916\u0925\u092c\u0930",
+ "\u0928\u092c\u0947\u091c\u094d\u092c\u093c\u0930",
+ "\u0926\u093f\u0938\u0947\u091c\u094d\u092c\u093c\u0930"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "brx",
+ "localeID": "brx",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bs-cyrl-ba.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bs-cyrl-ba.js
index 24322a44..45e4450d 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bs-cyrl-ba.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bs-cyrl-ba.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u043d\u043e\u0432",
"\u0434\u0435\u0446"
],
+ "STANDALONEMONTH": [
+ "\u0458\u0430\u043d\u0443\u0430\u0440",
+ "\u0444\u0435\u0431\u0440\u0443\u0430\u0440",
+ "\u043c\u0430\u0440\u0442",
+ "\u0430\u043f\u0440\u0438\u043b",
+ "\u043c\u0430\u0458",
+ "\u0458\u0443\u043d\u0438",
+ "\u0458\u0443\u043b\u0438",
+ "\u0430\u0432\u0433\u0443\u0441\u0442",
+ "\u0441\u0435\u043f\u0442\u0435\u043c\u0431\u0430\u0440",
+ "\u043e\u043a\u0442\u043e\u0431\u0430\u0440",
+ "\u043d\u043e\u0432\u0435\u043c\u0431\u0430\u0440",
+ "\u0434\u0435\u0446\u0435\u043c\u0431\u0430\u0440"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "bs-cyrl-ba",
+ "localeID": "bs_Cyrl_BA",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (vf.v == 0 && i % 10 == 1 && i % 100 != 11 || vf.f % 10 == 1 && vf.f % 100 != 11) { return PLURAL_CATEGORY.ONE; } if (vf.v == 0 && i % 10 >= 2 && i % 10 <= 4 && (i % 100 < 12 || i % 100 > 14) || vf.f % 10 >= 2 && vf.f % 10 <= 4 && (vf.f % 100 < 12 || vf.f % 100 > 14)) { return PLURAL_CATEGORY.FEW; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bs-cyrl.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bs-cyrl.js
index 63e52e07..0f0cdf22 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bs-cyrl.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bs-cyrl.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u043d\u043e\u0432",
"\u0434\u0435\u0446"
],
+ "STANDALONEMONTH": [
+ "\u0458\u0430\u043d\u0443\u0430\u0440",
+ "\u0444\u0435\u0431\u0440\u0443\u0430\u0440",
+ "\u043c\u0430\u0440\u0442",
+ "\u0430\u043f\u0440\u0438\u043b",
+ "\u043c\u0430\u0458",
+ "\u0458\u0443\u043d\u0438",
+ "\u0458\u0443\u043b\u0438",
+ "\u0430\u0432\u0433\u0443\u0441\u0442",
+ "\u0441\u0435\u043f\u0442\u0435\u043c\u0431\u0430\u0440",
+ "\u043e\u043a\u0442\u043e\u0431\u0430\u0440",
+ "\u043d\u043e\u0432\u0435\u043c\u0431\u0430\u0440",
+ "\u0434\u0435\u0446\u0435\u043c\u0431\u0430\u0440"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "bs-cyrl",
+ "localeID": "bs_Cyrl",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (vf.v == 0 && i % 10 == 1 && i % 100 != 11 || vf.f % 10 == 1 && vf.f % 100 != 11) { return PLURAL_CATEGORY.ONE; } if (vf.v == 0 && i % 10 >= 2 && i % 10 <= 4 && (i % 100 < 12 || i % 100 > 14) || vf.f % 10 >= 2 && vf.f % 10 <= 4 && (vf.f % 100 < 12 || vf.f % 100 > 14)) { return PLURAL_CATEGORY.FEW; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bs-latn-ba.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bs-latn-ba.js
index 32c933ac..0a819c99 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bs-latn-ba.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bs-latn-ba.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"nov",
"dec"
],
+ "STANDALONEMONTH": [
+ "januar",
+ "februar",
+ "mart",
+ "april",
+ "maj",
+ "juni",
+ "juli",
+ "august",
+ "septembar",
+ "oktobar",
+ "novembar",
+ "decembar"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "bs-latn-ba",
+ "localeID": "bs_Latn_BA",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (vf.v == 0 && i % 10 == 1 && i % 100 != 11 || vf.f % 10 == 1 && vf.f % 100 != 11) { return PLURAL_CATEGORY.ONE; } if (vf.v == 0 && i % 10 >= 2 && i % 10 <= 4 && (i % 100 < 12 || i % 100 > 14) || vf.f % 10 >= 2 && vf.f % 10 <= 4 && (vf.f % 100 < 12 || vf.f % 100 > 14)) { return PLURAL_CATEGORY.FEW; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bs-latn.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bs-latn.js
index b5e5f925..404daf8d 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bs-latn.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bs-latn.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"nov",
"dec"
],
+ "STANDALONEMONTH": [
+ "januar",
+ "februar",
+ "mart",
+ "april",
+ "maj",
+ "juni",
+ "juli",
+ "august",
+ "septembar",
+ "oktobar",
+ "novembar",
+ "decembar"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "bs-latn",
+ "localeID": "bs_Latn",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (vf.v == 0 && i % 10 == 1 && i % 100 != 11 || vf.f % 10 == 1 && vf.f % 100 != 11) { return PLURAL_CATEGORY.ONE; } if (vf.v == 0 && i % 10 >= 2 && i % 10 <= 4 && (i % 100 < 12 || i % 100 > 14) || vf.f % 10 >= 2 && vf.f % 10 <= 4 && (vf.f % 100 < 12 || vf.f % 100 > 14)) { return PLURAL_CATEGORY.FEW; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bs.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bs.js
index c9cf4634..e1f4cd1f 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_bs.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_bs.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"nov",
"dec"
],
+ "STANDALONEMONTH": [
+ "januar",
+ "februar",
+ "mart",
+ "april",
+ "maj",
+ "juni",
+ "juli",
+ "august",
+ "septembar",
+ "oktobar",
+ "novembar",
+ "decembar"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "bs",
+ "localeID": "bs",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (vf.v == 0 && i % 10 == 1 && i % 100 != 11 || vf.f % 10 == 1 && vf.f % 100 != 11) { return PLURAL_CATEGORY.ONE; } if (vf.v == 0 && i % 10 >= 2 && i % 10 <= 4 && (i % 100 < 12 || i % 100 > 14) || vf.f % 10 >= 2 && vf.f % 10 <= 4 && (vf.f % 100 < 12 || vf.f % 100 > 14)) { return PLURAL_CATEGORY.FEW; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_byn-er.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_byn-er.js
index f6ee233b..f6ee233b 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_byn-er.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_byn-er.js
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_byn.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_byn.js
index 578ce6dd..578ce6dd 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_byn.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_byn.js
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ca-ad.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ca-ad.js
index 44830645..12248284 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ca-ad.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ca-ad.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"nov.",
"des."
],
+ "STANDALONEMONTH": [
+ "gener",
+ "febrer",
+ "mar\u00e7",
+ "abril",
+ "maig",
+ "juny",
+ "juliol",
+ "agost",
+ "setembre",
+ "octubre",
+ "novembre",
+ "desembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ca-ad",
+ "localeID": "ca_AD",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ca-es-valencia.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ca-es-valencia.js
index 725478c4..388980e9 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ca-es-valencia.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ca-es-valencia.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"nov.",
"des."
],
+ "STANDALONEMONTH": [
+ "gener",
+ "febrer",
+ "mar\u00e7",
+ "abril",
+ "maig",
+ "juny",
+ "juliol",
+ "agost",
+ "setembre",
+ "octubre",
+ "novembre",
+ "desembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ca-es-valencia",
+ "localeID": "ca_ES_VALENCIA",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ca-es.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ca-es.js
index 427201b6..85a01a6d 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ca-es.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ca-es.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"nov.",
"des."
],
+ "STANDALONEMONTH": [
+ "gener",
+ "febrer",
+ "mar\u00e7",
+ "abril",
+ "maig",
+ "juny",
+ "juliol",
+ "agost",
+ "setembre",
+ "octubre",
+ "novembre",
+ "desembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ca-es",
+ "localeID": "ca_ES",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ca-fr.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ca-fr.js
index 22f1f7b3..d7b15e6e 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ca-fr.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ca-fr.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"nov.",
"des."
],
+ "STANDALONEMONTH": [
+ "gener",
+ "febrer",
+ "mar\u00e7",
+ "abril",
+ "maig",
+ "juny",
+ "juliol",
+ "agost",
+ "setembre",
+ "octubre",
+ "novembre",
+ "desembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ca-fr",
+ "localeID": "ca_FR",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ca-it.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ca-it.js
index 8bb952cf..72cb3842 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ca-it.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ca-it.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"nov.",
"des."
],
+ "STANDALONEMONTH": [
+ "gener",
+ "febrer",
+ "mar\u00e7",
+ "abril",
+ "maig",
+ "juny",
+ "juliol",
+ "agost",
+ "setembre",
+ "octubre",
+ "novembre",
+ "desembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ca-it",
+ "localeID": "ca_IT",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ca.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ca.js
index 9f1a6069..2fcc4afe 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ca.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ca.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"nov.",
"des."
],
+ "STANDALONEMONTH": [
+ "gener",
+ "febrer",
+ "mar\u00e7",
+ "abril",
+ "maig",
+ "juny",
+ "juliol",
+ "agost",
+ "setembre",
+ "octubre",
+ "novembre",
+ "desembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ca",
+ "localeID": "ca",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_cgg-ug.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_cgg-ug.js
index 544346c0..ce47a8d4 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_cgg-ug.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_cgg-ug.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"KNK",
"KNB"
],
+ "STANDALONEMONTH": [
+ "Okwokubanza",
+ "Okwakabiri",
+ "Okwakashatu",
+ "Okwakana",
+ "Okwakataana",
+ "Okwamukaaga",
+ "Okwamushanju",
+ "Okwamunaana",
+ "Okwamwenda",
+ "Okwaikumi",
+ "Okwaikumi na kumwe",
+ "Okwaikumi na ibiri"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "cgg-ug",
+ "localeID": "cgg_UG",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_cgg.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_cgg.js
index 7068c522..86e8630d 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_cgg.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_cgg.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"KNK",
"KNB"
],
+ "STANDALONEMONTH": [
+ "Okwokubanza",
+ "Okwakabiri",
+ "Okwakashatu",
+ "Okwakana",
+ "Okwakataana",
+ "Okwamukaaga",
+ "Okwamushanju",
+ "Okwamunaana",
+ "Okwamwenda",
+ "Okwaikumi",
+ "Okwaikumi na kumwe",
+ "Okwaikumi na ibiri"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "cgg",
+ "localeID": "cgg",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_chr-us.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_chr-us.js
index bc9e9220..1445824c 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_chr-us.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_chr-us.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u13c5\u13d3",
"\u13a5\u13cd"
],
+ "STANDALONEMONTH": [
+ "\u13a4\u13c3\u13b8\u13d4\u13c5",
+ "\u13a7\u13a6\u13b5",
+ "\u13a0\u13c5\u13f1",
+ "\u13a7\u13ec\u13c2",
+ "\u13a0\u13c2\u13cd\u13ac\u13d8",
+ "\u13d5\u13ad\u13b7\u13f1",
+ "\u13ab\u13f0\u13c9\u13c2",
+ "\u13a6\u13b6\u13c2",
+ "\u13da\u13b5\u13cd\u13d7",
+ "\u13da\u13c2\u13c5\u13d7",
+ "\u13c5\u13d3\u13d5\u13c6",
+ "\u13a5\u13cd\u13a9\u13f1"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "chr-us",
+ "localeID": "chr_US",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_chr.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_chr.js
index 589816f9..61030c4e 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_chr.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_chr.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u13c5\u13d3",
"\u13a5\u13cd"
],
+ "STANDALONEMONTH": [
+ "\u13a4\u13c3\u13b8\u13d4\u13c5",
+ "\u13a7\u13a6\u13b5",
+ "\u13a0\u13c5\u13f1",
+ "\u13a7\u13ec\u13c2",
+ "\u13a0\u13c2\u13cd\u13ac\u13d8",
+ "\u13d5\u13ad\u13b7\u13f1",
+ "\u13ab\u13f0\u13c9\u13c2",
+ "\u13a6\u13b6\u13c2",
+ "\u13da\u13b5\u13cd\u13d7",
+ "\u13da\u13c2\u13c5\u13d7",
+ "\u13c5\u13d3\u13d5\u13c6",
+ "\u13a5\u13cd\u13a9\u13f1"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "chr",
+ "localeID": "chr",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ckb-arab-iq.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ckb-arab-iq.js
index 083bf182..bc6cf63d 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ckb-arab-iq.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ckb-arab-iq.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u062a\u0634\u0631\u06cc\u0646\u06cc \u062f\u0648\u0648\u06d5\u0645",
"\u06a9\u0627\u0646\u0648\u0646\u06cc \u06cc\u06d5\u06a9\u06d5\u0645"
],
+ "STANDALONEMONTH": [
+ "\u06a9\u0627\u0646\u0648\u0648\u0646\u06cc \u062f\u0648\u0648\u06d5\u0645",
+ "\u0634\u0648\u0628\u0627\u062a",
+ "\u0626\u0627\u0632\u0627\u0631",
+ "\u0646\u06cc\u0633\u0627\u0646",
+ "\u0626\u0627\u06cc\u0627\u0631",
+ "\u062d\u0648\u0632\u06d5\u06cc\u0631\u0627\u0646",
+ "\u062a\u06d5\u0645\u0648\u0648\u0632",
+ "\u0626\u0627\u0628",
+ "\u0626\u06d5\u06cc\u0644\u0648\u0648\u0644",
+ "\u062a\u0634\u0631\u06cc\u0646\u06cc \u06cc\u06d5\u06a9\u06d5\u0645",
+ "\u062a\u0634\u0631\u06cc\u0646\u06cc \u062f\u0648\u0648\u06d5\u0645",
+ "\u06a9\u0627\u0646\u0648\u0646\u06cc \u06cc\u06d5\u06a9\u06d5\u0645"
+ ],
"WEEKENDRANGE": [
4,
5
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ckb-arab-iq",
+ "localeID": "ckb_Arab_IQ",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ckb-arab-ir.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ckb-arab-ir.js
index cc23f51e..9a83d4a3 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ckb-arab-ir.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ckb-arab-ir.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u062a\u0634\u0631\u06cc\u0646\u06cc \u062f\u0648\u0648\u06d5\u0645",
"\u06a9\u0627\u0646\u0648\u0646\u06cc \u06cc\u06d5\u06a9\u06d5\u0645"
],
+ "STANDALONEMONTH": [
+ "\u06a9\u0627\u0646\u0648\u0648\u0646\u06cc \u062f\u0648\u0648\u06d5\u0645",
+ "\u0634\u0648\u0628\u0627\u062a",
+ "\u0626\u0627\u0632\u0627\u0631",
+ "\u0646\u06cc\u0633\u0627\u0646",
+ "\u0626\u0627\u06cc\u0627\u0631",
+ "\u062d\u0648\u0632\u06d5\u06cc\u0631\u0627\u0646",
+ "\u062a\u06d5\u0645\u0648\u0648\u0632",
+ "\u0626\u0627\u0628",
+ "\u0626\u06d5\u06cc\u0644\u0648\u0648\u0644",
+ "\u062a\u0634\u0631\u06cc\u0646\u06cc \u06cc\u06d5\u06a9\u06d5\u0645",
+ "\u062a\u0634\u0631\u06cc\u0646\u06cc \u062f\u0648\u0648\u06d5\u0645",
+ "\u06a9\u0627\u0646\u0648\u0646\u06cc \u06cc\u06d5\u06a9\u06d5\u0645"
+ ],
"WEEKENDRANGE": [
4,
5
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ckb-arab-ir",
+ "localeID": "ckb_Arab_IR",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ckb-arab.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ckb-arab.js
index 8f1fd700..6f4f7a84 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ckb-arab.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ckb-arab.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u062a\u0634\u0631\u06cc\u0646\u06cc \u062f\u0648\u0648\u06d5\u0645",
"\u06a9\u0627\u0646\u0648\u0646\u06cc \u06cc\u06d5\u06a9\u06d5\u0645"
],
+ "STANDALONEMONTH": [
+ "\u06a9\u0627\u0646\u0648\u0648\u0646\u06cc \u062f\u0648\u0648\u06d5\u0645",
+ "\u0634\u0648\u0628\u0627\u062a",
+ "\u0626\u0627\u0632\u0627\u0631",
+ "\u0646\u06cc\u0633\u0627\u0646",
+ "\u0626\u0627\u06cc\u0627\u0631",
+ "\u062d\u0648\u0632\u06d5\u06cc\u0631\u0627\u0646",
+ "\u062a\u06d5\u0645\u0648\u0648\u0632",
+ "\u0626\u0627\u0628",
+ "\u0626\u06d5\u06cc\u0644\u0648\u0648\u0644",
+ "\u062a\u0634\u0631\u06cc\u0646\u06cc \u06cc\u06d5\u06a9\u06d5\u0645",
+ "\u062a\u0634\u0631\u06cc\u0646\u06cc \u062f\u0648\u0648\u06d5\u0645",
+ "\u06a9\u0627\u0646\u0648\u0646\u06cc \u06cc\u06d5\u06a9\u06d5\u0645"
+ ],
"WEEKENDRANGE": [
4,
5
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ckb-arab",
+ "localeID": "ckb_Arab",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ckb-iq.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ckb-iq.js
index 2786ebd7..07f32c0a 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ckb-iq.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ckb-iq.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u062a\u0634\u0631\u06cc\u0646\u06cc \u062f\u0648\u0648\u06d5\u0645",
"\u06a9\u0627\u0646\u0648\u0646\u06cc \u06cc\u06d5\u06a9\u06d5\u0645"
],
+ "STANDALONEMONTH": [
+ "\u06a9\u0627\u0646\u0648\u0648\u0646\u06cc \u062f\u0648\u0648\u06d5\u0645",
+ "\u0634\u0648\u0628\u0627\u062a",
+ "\u0626\u0627\u0632\u0627\u0631",
+ "\u0646\u06cc\u0633\u0627\u0646",
+ "\u0626\u0627\u06cc\u0627\u0631",
+ "\u062d\u0648\u0632\u06d5\u06cc\u0631\u0627\u0646",
+ "\u062a\u06d5\u0645\u0648\u0648\u0632",
+ "\u0626\u0627\u0628",
+ "\u0626\u06d5\u06cc\u0644\u0648\u0648\u0644",
+ "\u062a\u0634\u0631\u06cc\u0646\u06cc \u06cc\u06d5\u06a9\u06d5\u0645",
+ "\u062a\u0634\u0631\u06cc\u0646\u06cc \u062f\u0648\u0648\u06d5\u0645",
+ "\u06a9\u0627\u0646\u0648\u0646\u06cc \u06cc\u06d5\u06a9\u06d5\u0645"
+ ],
"WEEKENDRANGE": [
4,
5
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ckb-iq",
+ "localeID": "ckb_IQ",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ckb-ir.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ckb-ir.js
index fb0bd006..03dced5e 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ckb-ir.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ckb-ir.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u062a\u0634\u0631\u06cc\u0646\u06cc \u062f\u0648\u0648\u06d5\u0645",
"\u06a9\u0627\u0646\u0648\u0646\u06cc \u06cc\u06d5\u06a9\u06d5\u0645"
],
+ "STANDALONEMONTH": [
+ "\u06a9\u0627\u0646\u0648\u0648\u0646\u06cc \u062f\u0648\u0648\u06d5\u0645",
+ "\u0634\u0648\u0628\u0627\u062a",
+ "\u0626\u0627\u0632\u0627\u0631",
+ "\u0646\u06cc\u0633\u0627\u0646",
+ "\u0626\u0627\u06cc\u0627\u0631",
+ "\u062d\u0648\u0632\u06d5\u06cc\u0631\u0627\u0646",
+ "\u062a\u06d5\u0645\u0648\u0648\u0632",
+ "\u0626\u0627\u0628",
+ "\u0626\u06d5\u06cc\u0644\u0648\u0648\u0644",
+ "\u062a\u0634\u0631\u06cc\u0646\u06cc \u06cc\u06d5\u06a9\u06d5\u0645",
+ "\u062a\u0634\u0631\u06cc\u0646\u06cc \u062f\u0648\u0648\u06d5\u0645",
+ "\u06a9\u0627\u0646\u0648\u0646\u06cc \u06cc\u06d5\u06a9\u06d5\u0645"
+ ],
"WEEKENDRANGE": [
4,
5
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ckb-ir",
+ "localeID": "ckb_IR",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ckb-latn-iq.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ckb-latn-iq.js
index 4e3c8b79..07eaee8c 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ckb-latn-iq.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ckb-latn-iq.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u062a\u0634\u0631\u06cc\u0646\u06cc \u062f\u0648\u0648\u06d5\u0645",
"\u06a9\u0627\u0646\u0648\u0646\u06cc \u06cc\u06d5\u06a9\u06d5\u0645"
],
+ "STANDALONEMONTH": [
+ "\u06a9\u0627\u0646\u0648\u0648\u0646\u06cc \u062f\u0648\u0648\u06d5\u0645",
+ "\u0634\u0648\u0628\u0627\u062a",
+ "\u0626\u0627\u0632\u0627\u0631",
+ "\u0646\u06cc\u0633\u0627\u0646",
+ "\u0626\u0627\u06cc\u0627\u0631",
+ "\u062d\u0648\u0632\u06d5\u06cc\u0631\u0627\u0646",
+ "\u062a\u06d5\u0645\u0648\u0648\u0632",
+ "\u0626\u0627\u0628",
+ "\u0626\u06d5\u06cc\u0644\u0648\u0648\u0644",
+ "\u062a\u0634\u0631\u06cc\u0646\u06cc \u06cc\u06d5\u06a9\u06d5\u0645",
+ "\u062a\u0634\u0631\u06cc\u0646\u06cc \u062f\u0648\u0648\u06d5\u0645",
+ "\u06a9\u0627\u0646\u0648\u0646\u06cc \u06cc\u06d5\u06a9\u06d5\u0645"
+ ],
"WEEKENDRANGE": [
4,
5
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ckb-latn-iq",
+ "localeID": "ckb_Latn_IQ",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ckb-latn.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ckb-latn.js
index e2a333fd..26f961f6 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ckb-latn.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ckb-latn.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u062a\u0634\u0631\u06cc\u0646\u06cc \u062f\u0648\u0648\u06d5\u0645",
"\u06a9\u0627\u0646\u0648\u0646\u06cc \u06cc\u06d5\u06a9\u06d5\u0645"
],
+ "STANDALONEMONTH": [
+ "\u06a9\u0627\u0646\u0648\u0648\u0646\u06cc \u062f\u0648\u0648\u06d5\u0645",
+ "\u0634\u0648\u0628\u0627\u062a",
+ "\u0626\u0627\u0632\u0627\u0631",
+ "\u0646\u06cc\u0633\u0627\u0646",
+ "\u0626\u0627\u06cc\u0627\u0631",
+ "\u062d\u0648\u0632\u06d5\u06cc\u0631\u0627\u0646",
+ "\u062a\u06d5\u0645\u0648\u0648\u0632",
+ "\u0626\u0627\u0628",
+ "\u0626\u06d5\u06cc\u0644\u0648\u0648\u0644",
+ "\u062a\u0634\u0631\u06cc\u0646\u06cc \u06cc\u06d5\u06a9\u06d5\u0645",
+ "\u062a\u0634\u0631\u06cc\u0646\u06cc \u062f\u0648\u0648\u06d5\u0645",
+ "\u06a9\u0627\u0646\u0648\u0646\u06cc \u06cc\u06d5\u06a9\u06d5\u0645"
+ ],
"WEEKENDRANGE": [
4,
5
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ckb-latn",
+ "localeID": "ckb_Latn",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ckb.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ckb.js
index e0321122..47f879e1 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ckb.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ckb.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u062a\u0634\u0631\u06cc\u0646\u06cc \u062f\u0648\u0648\u06d5\u0645",
"\u06a9\u0627\u0646\u0648\u0646\u06cc \u06cc\u06d5\u06a9\u06d5\u0645"
],
+ "STANDALONEMONTH": [
+ "\u06a9\u0627\u0646\u0648\u0648\u0646\u06cc \u062f\u0648\u0648\u06d5\u0645",
+ "\u0634\u0648\u0628\u0627\u062a",
+ "\u0626\u0627\u0632\u0627\u0631",
+ "\u0646\u06cc\u0633\u0627\u0646",
+ "\u0626\u0627\u06cc\u0627\u0631",
+ "\u062d\u0648\u0632\u06d5\u06cc\u0631\u0627\u0646",
+ "\u062a\u06d5\u0645\u0648\u0648\u0632",
+ "\u0626\u0627\u0628",
+ "\u0626\u06d5\u06cc\u0644\u0648\u0648\u0644",
+ "\u062a\u0634\u0631\u06cc\u0646\u06cc \u06cc\u06d5\u06a9\u06d5\u0645",
+ "\u062a\u0634\u0631\u06cc\u0646\u06cc \u062f\u0648\u0648\u06d5\u0645",
+ "\u06a9\u0627\u0646\u0648\u0646\u06cc \u06cc\u06d5\u06a9\u06d5\u0645"
+ ],
"WEEKENDRANGE": [
4,
5
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ckb",
+ "localeID": "ckb",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_cs-cz.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_cs-cz.js
index d260d8de..237ee3af 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_cs-cz.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_cs-cz.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"lis",
"pro"
],
+ "STANDALONEMONTH": [
+ "leden",
+ "\u00fanor",
+ "b\u0159ezen",
+ "duben",
+ "kv\u011bten",
+ "\u010derven",
+ "\u010dervenec",
+ "srpen",
+ "z\u00e1\u0159\u00ed",
+ "\u0159\u00edjen",
+ "listopad",
+ "prosinec"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "cs-cz",
+ "localeID": "cs_CZ",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } if (i >= 2 && i <= 4 && vf.v == 0) { return PLURAL_CATEGORY.FEW; } if (vf.v != 0) { return PLURAL_CATEGORY.MANY; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_cs.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_cs.js
index 3f9cb70e..5be6dafb 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_cs.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_cs.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"lis",
"pro"
],
+ "STANDALONEMONTH": [
+ "leden",
+ "\u00fanor",
+ "b\u0159ezen",
+ "duben",
+ "kv\u011bten",
+ "\u010derven",
+ "\u010dervenec",
+ "srpen",
+ "z\u00e1\u0159\u00ed",
+ "\u0159\u00edjen",
+ "listopad",
+ "prosinec"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "cs",
+ "localeID": "cs",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } if (i >= 2 && i <= 4 && vf.v == 0) { return PLURAL_CATEGORY.FEW; } if (vf.v != 0) { return PLURAL_CATEGORY.MANY; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_cy-gb.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_cy-gb.js
index d6a9b5d7..d0074f88 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_cy-gb.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_cy-gb.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"Tach",
"Rhag"
],
+ "STANDALONEMONTH": [
+ "Ionawr",
+ "Chwefror",
+ "Mawrth",
+ "Ebrill",
+ "Mai",
+ "Mehefin",
+ "Gorffennaf",
+ "Awst",
+ "Medi",
+ "Hydref",
+ "Tachwedd",
+ "Rhagfyr"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "cy-gb",
+ "localeID": "cy_GB",
"pluralCat": function(n, opt_precision) { if (n == 0) { return PLURAL_CATEGORY.ZERO; } if (n == 1) { return PLURAL_CATEGORY.ONE; } if (n == 2) { return PLURAL_CATEGORY.TWO; } if (n == 3) { return PLURAL_CATEGORY.FEW; } if (n == 6) { return PLURAL_CATEGORY.MANY; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_cy.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_cy.js
index 057a5278..ca37d810 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_cy.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_cy.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"Tach",
"Rhag"
],
+ "STANDALONEMONTH": [
+ "Ionawr",
+ "Chwefror",
+ "Mawrth",
+ "Ebrill",
+ "Mai",
+ "Mehefin",
+ "Gorffennaf",
+ "Awst",
+ "Medi",
+ "Hydref",
+ "Tachwedd",
+ "Rhagfyr"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "cy",
+ "localeID": "cy",
"pluralCat": function(n, opt_precision) { if (n == 0) { return PLURAL_CATEGORY.ZERO; } if (n == 1) { return PLURAL_CATEGORY.ONE; } if (n == 2) { return PLURAL_CATEGORY.TWO; } if (n == 3) { return PLURAL_CATEGORY.FEW; } if (n == 6) { return PLURAL_CATEGORY.MANY; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_da-dk.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_da-dk.js
index fe2f432a..f0ef36f2 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_da-dk.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_da-dk.js
@@ -93,6 +93,20 @@ $provide.value("$locale", {
"nov.",
"dec."
],
+ "STANDALONEMONTH": [
+ "januar",
+ "februar",
+ "marts",
+ "april",
+ "maj",
+ "juni",
+ "juli",
+ "august",
+ "september",
+ "oktober",
+ "november",
+ "december"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -136,6 +150,7 @@ $provide.value("$locale", {
]
},
"id": "da-dk",
+ "localeID": "da_DK",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); var wt = getWT(vf.v, vf.f); if (n == 1 || wt.t != 0 && (i == 0 || i == 1)) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_da-gl.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_da-gl.js
index 9714d083..f1329d02 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_da-gl.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_da-gl.js
@@ -93,6 +93,20 @@ $provide.value("$locale", {
"nov.",
"dec."
],
+ "STANDALONEMONTH": [
+ "januar",
+ "februar",
+ "marts",
+ "april",
+ "maj",
+ "juni",
+ "juli",
+ "august",
+ "september",
+ "oktober",
+ "november",
+ "december"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -136,6 +150,7 @@ $provide.value("$locale", {
]
},
"id": "da-gl",
+ "localeID": "da_GL",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); var wt = getWT(vf.v, vf.f); if (n == 1 || wt.t != 0 && (i == 0 || i == 1)) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_da.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_da.js
index 7e263cf9..5297d984 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_da.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_da.js
@@ -93,6 +93,20 @@ $provide.value("$locale", {
"nov.",
"dec."
],
+ "STANDALONEMONTH": [
+ "januar",
+ "februar",
+ "marts",
+ "april",
+ "maj",
+ "juni",
+ "juli",
+ "august",
+ "september",
+ "oktober",
+ "november",
+ "december"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -136,6 +150,7 @@ $provide.value("$locale", {
]
},
"id": "da",
+ "localeID": "da",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); var wt = getWT(vf.v, vf.f); if (n == 1 || wt.t != 0 && (i == 0 || i == 1)) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_dav-ke.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_dav-ke.js
index 4a689b50..45111814 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_dav-ke.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_dav-ke.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Imw",
"Iwi"
],
+ "STANDALONEMONTH": [
+ "Mori ghwa imbiri",
+ "Mori ghwa kawi",
+ "Mori ghwa kadadu",
+ "Mori ghwa kana",
+ "Mori ghwa kasanu",
+ "Mori ghwa karandadu",
+ "Mori ghwa mfungade",
+ "Mori ghwa wunyanya",
+ "Mori ghwa ikenda",
+ "Mori ghwa ikumi",
+ "Mori ghwa ikumi na imweri",
+ "Mori ghwa ikumi na iwi"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "dav-ke",
+ "localeID": "dav_KE",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_dav.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_dav.js
index 946c59f4..642c1fea 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_dav.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_dav.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Imw",
"Iwi"
],
+ "STANDALONEMONTH": [
+ "Mori ghwa imbiri",
+ "Mori ghwa kawi",
+ "Mori ghwa kadadu",
+ "Mori ghwa kana",
+ "Mori ghwa kasanu",
+ "Mori ghwa karandadu",
+ "Mori ghwa mfungade",
+ "Mori ghwa wunyanya",
+ "Mori ghwa ikenda",
+ "Mori ghwa ikumi",
+ "Mori ghwa ikumi na imweri",
+ "Mori ghwa ikumi na iwi"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "dav",
+ "localeID": "dav",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_de-at.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_de-at.js
index b3ee8e15..22f83e49 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_de-at.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_de-at.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov.",
"Dez."
],
+ "STANDALONEMONTH": [
+ "J\u00e4nner",
+ "Februar",
+ "M\u00e4rz",
+ "April",
+ "Mai",
+ "Juni",
+ "Juli",
+ "August",
+ "September",
+ "Oktober",
+ "November",
+ "Dezember"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "de-at",
+ "localeID": "de_AT",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_de-be.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_de-be.js
index 61390da4..0b519bd0 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_de-be.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_de-be.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov.",
"Dez."
],
+ "STANDALONEMONTH": [
+ "Januar",
+ "Februar",
+ "M\u00e4rz",
+ "April",
+ "Mai",
+ "Juni",
+ "Juli",
+ "August",
+ "September",
+ "Oktober",
+ "November",
+ "Dezember"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "de-be",
+ "localeID": "de_BE",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_de-ch.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_de-ch.js
index cdb75cac..14554f96 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_de-ch.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_de-ch.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov.",
"Dez."
],
+ "STANDALONEMONTH": [
+ "Januar",
+ "Februar",
+ "M\u00e4rz",
+ "April",
+ "Mai",
+ "Juni",
+ "Juli",
+ "August",
+ "September",
+ "Oktober",
+ "November",
+ "Dezember"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "de-ch",
+ "localeID": "de_CH",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_de-de.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_de-de.js
index b69252f5..52273122 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_de-de.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_de-de.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov.",
"Dez."
],
+ "STANDALONEMONTH": [
+ "Januar",
+ "Februar",
+ "M\u00e4rz",
+ "April",
+ "Mai",
+ "Juni",
+ "Juli",
+ "August",
+ "September",
+ "Oktober",
+ "November",
+ "Dezember"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "de-de",
+ "localeID": "de_DE",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_de-li.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_de-li.js
index 867e08d9..fa93e9d1 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_de-li.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_de-li.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov.",
"Dez."
],
+ "STANDALONEMONTH": [
+ "Januar",
+ "Februar",
+ "M\u00e4rz",
+ "April",
+ "Mai",
+ "Juni",
+ "Juli",
+ "August",
+ "September",
+ "Oktober",
+ "November",
+ "Dezember"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "de-li",
+ "localeID": "de_LI",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_de-lu.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_de-lu.js
index f141217c..2bca130f 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_de-lu.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_de-lu.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov.",
"Dez."
],
+ "STANDALONEMONTH": [
+ "Januar",
+ "Februar",
+ "M\u00e4rz",
+ "April",
+ "Mai",
+ "Juni",
+ "Juli",
+ "August",
+ "September",
+ "Oktober",
+ "November",
+ "Dezember"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "de-lu",
+ "localeID": "de_LU",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_de.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_de.js
index cbc6643f..cc69b3af 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_de.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_de.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov.",
"Dez."
],
+ "STANDALONEMONTH": [
+ "Januar",
+ "Februar",
+ "M\u00e4rz",
+ "April",
+ "Mai",
+ "Juni",
+ "Juli",
+ "August",
+ "September",
+ "Oktober",
+ "November",
+ "Dezember"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "de",
+ "localeID": "de",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_dje-ne.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_dje-ne.js
index a5f24033..468c8559 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_dje-ne.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_dje-ne.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Noo",
"Dee"
],
+ "STANDALONEMONTH": [
+ "\u017danwiye",
+ "Feewiriye",
+ "Marsi",
+ "Awiril",
+ "Me",
+ "\u017duwe\u014b",
+ "\u017duyye",
+ "Ut",
+ "Sektanbur",
+ "Oktoobur",
+ "Noowanbur",
+ "Deesanbur"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "dje-ne",
+ "localeID": "dje_NE",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_dje.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_dje.js
index 630c9f4a..6b1f1220 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_dje.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_dje.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Noo",
"Dee"
],
+ "STANDALONEMONTH": [
+ "\u017danwiye",
+ "Feewiriye",
+ "Marsi",
+ "Awiril",
+ "Me",
+ "\u017duwe\u014b",
+ "\u017duyye",
+ "Ut",
+ "Sektanbur",
+ "Oktoobur",
+ "Noowanbur",
+ "Deesanbur"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "dje",
+ "localeID": "dje",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_dsb-de.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_dsb-de.js
index 8d7ca9f2..43e3c7e7 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_dsb-de.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_dsb-de.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"now.",
"dec."
],
+ "STANDALONEMONTH": [
+ "januar",
+ "februar",
+ "m\u011brc",
+ "apryl",
+ "maj",
+ "junij",
+ "julij",
+ "awgust",
+ "september",
+ "oktober",
+ "nowember",
+ "december"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "dsb-de",
+ "localeID": "dsb_DE",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_dsb.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_dsb.js
index f774a75b..01137dad 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_dsb.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_dsb.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"now.",
"dec."
],
+ "STANDALONEMONTH": [
+ "januar",
+ "februar",
+ "m\u011brc",
+ "apryl",
+ "maj",
+ "junij",
+ "julij",
+ "awgust",
+ "september",
+ "oktober",
+ "nowember",
+ "december"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "dsb",
+ "localeID": "dsb",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_dua-cm.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_dua-cm.js
index 84d78017..eacb47f0 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_dua-cm.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_dua-cm.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"tin",
"el\u00e1"
],
+ "STANDALONEMONTH": [
+ "dim\u0254\u0301di",
+ "\u014bg\u0254nd\u025b",
+ "s\u0254\u014b\u025b",
+ "di\u0253\u00e1\u0253\u00e1",
+ "emiasele",
+ "es\u0254p\u025bs\u0254p\u025b",
+ "madi\u0253\u025b\u0301d\u00ed\u0253\u025b\u0301",
+ "di\u014bgindi",
+ "ny\u025bt\u025bki",
+ "may\u00e9s\u025b\u0301",
+ "tin\u00edn\u00ed",
+ "el\u00e1\u014bg\u025b\u0301"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "dua-cm",
+ "localeID": "dua_CM",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_dua.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_dua.js
index c2ffe945..cf31aef6 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_dua.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_dua.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"tin",
"el\u00e1"
],
+ "STANDALONEMONTH": [
+ "dim\u0254\u0301di",
+ "\u014bg\u0254nd\u025b",
+ "s\u0254\u014b\u025b",
+ "di\u0253\u00e1\u0253\u00e1",
+ "emiasele",
+ "es\u0254p\u025bs\u0254p\u025b",
+ "madi\u0253\u025b\u0301d\u00ed\u0253\u025b\u0301",
+ "di\u014bgindi",
+ "ny\u025bt\u025bki",
+ "may\u00e9s\u025b\u0301",
+ "tin\u00edn\u00ed",
+ "el\u00e1\u014bg\u025b\u0301"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "dua",
+ "localeID": "dua",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_dyo-sn.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_dyo-sn.js
index e8fadc71..2e1c1fc2 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_dyo-sn.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_dyo-sn.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"No",
"De"
],
+ "STANDALONEMONTH": [
+ "Sanvie",
+ "F\u00e9birie",
+ "Mars",
+ "Aburil",
+ "Mee",
+ "Sue\u014b",
+ "S\u00fauyee",
+ "Ut",
+ "Settembar",
+ "Oktobar",
+ "Novembar",
+ "Disambar"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "dyo-sn",
+ "localeID": "dyo_SN",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_dyo.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_dyo.js
index 5699f4a2..7978c73d 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_dyo.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_dyo.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"No",
"De"
],
+ "STANDALONEMONTH": [
+ "Sanvie",
+ "F\u00e9birie",
+ "Mars",
+ "Aburil",
+ "Mee",
+ "Sue\u014b",
+ "S\u00fauyee",
+ "Ut",
+ "Settembar",
+ "Oktobar",
+ "Novembar",
+ "Disambar"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "dyo",
+ "localeID": "dyo",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_dz-bt.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_dz-bt.js
index c82e0508..58d59efd 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_dz-bt.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_dz-bt.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u0f21\u0f21",
"12"
],
+ "STANDALONEMONTH": [
+ "\u0f66\u0fa4\u0fb1\u0f72\u0f0b\u0f5f\u0fb3\u0f0b\u0f51\u0f44\u0f54\u0f0b",
+ "\u0f66\u0fa4\u0fb1\u0f72\u0f0b\u0f5f\u0fb3\u0f0b\u0f42\u0f49\u0f72\u0f66\u0f0b\u0f54\u0f0b",
+ "\u0f66\u0fa4\u0fb1\u0f72\u0f0b\u0f5f\u0fb3\u0f0b\u0f42\u0f66\u0f74\u0f58\u0f0b\u0f54\u0f0b",
+ "\u0f66\u0fa4\u0fb1\u0f72\u0f0b\u0f5f\u0fb3\u0f0b\u0f56\u0f5e\u0f72\u0f0b\u0f54",
+ "\u0f66\u0fa4\u0fb1\u0f72\u0f0b\u0f5f\u0fb3\u0f0b\u0f63\u0f94\u0f0b\u0f54\u0f0b",
+ "\u0f66\u0fa4\u0fb1\u0f72\u0f0b\u0f5f\u0fb3\u0f0b\u0f51\u0fb2\u0f74\u0f42\u0f0b\u0f54",
+ "\u0f66\u0fa4\u0fb1\u0f72\u0f0b\u0f5f\u0fb3\u0f0b\u0f56\u0f51\u0f74\u0f53\u0f0b\u0f54\u0f0b",
+ "\u0f66\u0fa4\u0fb1\u0f72\u0f0b\u0f5f\u0fb3\u0f0b\u0f56\u0f62\u0f92\u0fb1\u0f51\u0f0b\u0f54\u0f0b",
+ "\u0f66\u0fa4\u0fb1\u0f72\u0f0b\u0f5f\u0fb3\u0f0b\u0f51\u0f42\u0f74\u0f0b\u0f54\u0f0b",
+ "\u0f66\u0fa4\u0fb1\u0f72\u0f0b\u0f5f\u0fb3\u0f0b\u0f56\u0f45\u0f74\u0f0b\u0f54\u0f0b",
+ "\u0f66\u0fa4\u0fb1\u0f72\u0f0b\u0f5f\u0fb3\u0f0b\u0f56\u0f45\u0f74\u0f0b\u0f42\u0f45\u0f72\u0f42\u0f0b\u0f54\u0f0b",
+ "\u0f66\u0fa4\u0fb1\u0f72\u0f0b\u0f5f\u0fb3\u0f0b\u0f56\u0f45\u0f74\u0f0b\u0f42\u0f49\u0f72\u0f66\u0f0b\u0f54\u0f0b"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "dz-bt",
+ "localeID": "dz_BT",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_dz.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_dz.js
index 3ef63d10..d1c2cc80 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_dz.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_dz.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u0f21\u0f21",
"12"
],
+ "STANDALONEMONTH": [
+ "\u0f66\u0fa4\u0fb1\u0f72\u0f0b\u0f5f\u0fb3\u0f0b\u0f51\u0f44\u0f54\u0f0b",
+ "\u0f66\u0fa4\u0fb1\u0f72\u0f0b\u0f5f\u0fb3\u0f0b\u0f42\u0f49\u0f72\u0f66\u0f0b\u0f54\u0f0b",
+ "\u0f66\u0fa4\u0fb1\u0f72\u0f0b\u0f5f\u0fb3\u0f0b\u0f42\u0f66\u0f74\u0f58\u0f0b\u0f54\u0f0b",
+ "\u0f66\u0fa4\u0fb1\u0f72\u0f0b\u0f5f\u0fb3\u0f0b\u0f56\u0f5e\u0f72\u0f0b\u0f54",
+ "\u0f66\u0fa4\u0fb1\u0f72\u0f0b\u0f5f\u0fb3\u0f0b\u0f63\u0f94\u0f0b\u0f54\u0f0b",
+ "\u0f66\u0fa4\u0fb1\u0f72\u0f0b\u0f5f\u0fb3\u0f0b\u0f51\u0fb2\u0f74\u0f42\u0f0b\u0f54",
+ "\u0f66\u0fa4\u0fb1\u0f72\u0f0b\u0f5f\u0fb3\u0f0b\u0f56\u0f51\u0f74\u0f53\u0f0b\u0f54\u0f0b",
+ "\u0f66\u0fa4\u0fb1\u0f72\u0f0b\u0f5f\u0fb3\u0f0b\u0f56\u0f62\u0f92\u0fb1\u0f51\u0f0b\u0f54\u0f0b",
+ "\u0f66\u0fa4\u0fb1\u0f72\u0f0b\u0f5f\u0fb3\u0f0b\u0f51\u0f42\u0f74\u0f0b\u0f54\u0f0b",
+ "\u0f66\u0fa4\u0fb1\u0f72\u0f0b\u0f5f\u0fb3\u0f0b\u0f56\u0f45\u0f74\u0f0b\u0f54\u0f0b",
+ "\u0f66\u0fa4\u0fb1\u0f72\u0f0b\u0f5f\u0fb3\u0f0b\u0f56\u0f45\u0f74\u0f0b\u0f42\u0f45\u0f72\u0f42\u0f0b\u0f54\u0f0b",
+ "\u0f66\u0fa4\u0fb1\u0f72\u0f0b\u0f5f\u0fb3\u0f0b\u0f56\u0f45\u0f74\u0f0b\u0f42\u0f49\u0f72\u0f66\u0f0b\u0f54\u0f0b"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "dz",
+ "localeID": "dz",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ebu-ke.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ebu-ke.js
index 6f6761f1..28b3a894 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ebu-ke.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ebu-ke.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Imw",
"Igi"
],
+ "STANDALONEMONTH": [
+ "Mweri wa mbere",
+ "Mweri wa ka\u0129ri",
+ "Mweri wa kathat\u0169",
+ "Mweri wa kana",
+ "Mweri wa gatano",
+ "Mweri wa gatantat\u0169",
+ "Mweri wa m\u0169gwanja",
+ "Mweri wa kanana",
+ "Mweri wa kenda",
+ "Mweri wa ik\u0169mi",
+ "Mweri wa ik\u0169mi na \u0169mwe",
+ "Mweri wa ik\u0169mi na Ka\u0129r\u0129"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ebu-ke",
+ "localeID": "ebu_KE",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ebu.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ebu.js
index d92a16d2..3ccd0863 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ebu.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ebu.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Imw",
"Igi"
],
+ "STANDALONEMONTH": [
+ "Mweri wa mbere",
+ "Mweri wa ka\u0129ri",
+ "Mweri wa kathat\u0169",
+ "Mweri wa kana",
+ "Mweri wa gatano",
+ "Mweri wa gatantat\u0169",
+ "Mweri wa m\u0169gwanja",
+ "Mweri wa kanana",
+ "Mweri wa kenda",
+ "Mweri wa ik\u0169mi",
+ "Mweri wa ik\u0169mi na \u0169mwe",
+ "Mweri wa ik\u0169mi na Ka\u0129r\u0129"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ebu",
+ "localeID": "ebu",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ee-gh.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ee-gh.js
index 16848bab..d89ffc65 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ee-gh.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ee-gh.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"ade",
"dzm"
],
+ "STANDALONEMONTH": [
+ "dzove",
+ "dzodze",
+ "tedoxe",
+ "af\u0254f\u0129e",
+ "dama",
+ "masa",
+ "siaml\u0254m",
+ "deasiamime",
+ "any\u0254ny\u0254",
+ "kele",
+ "ade\u025bmekp\u0254xe",
+ "dzome"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ee-gh",
+ "localeID": "ee_GH",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ee-tg.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ee-tg.js
index de48746a..4fbc3775 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ee-tg.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ee-tg.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"ade",
"dzm"
],
+ "STANDALONEMONTH": [
+ "dzove",
+ "dzodze",
+ "tedoxe",
+ "af\u0254f\u0129e",
+ "dama",
+ "masa",
+ "siaml\u0254m",
+ "deasiamime",
+ "any\u0254ny\u0254",
+ "kele",
+ "ade\u025bmekp\u0254xe",
+ "dzome"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ee-tg",
+ "localeID": "ee_TG",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ee.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ee.js
index fdc03beb..dbd4d3c5 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ee.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ee.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"ade",
"dzm"
],
+ "STANDALONEMONTH": [
+ "dzove",
+ "dzodze",
+ "tedoxe",
+ "af\u0254f\u0129e",
+ "dama",
+ "masa",
+ "siaml\u0254m",
+ "deasiamime",
+ "any\u0254ny\u0254",
+ "kele",
+ "ade\u025bmekp\u0254xe",
+ "dzome"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ee",
+ "localeID": "ee",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_el-cy.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_el-cy.js
index 5637d3fb..41b44d3e 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_el-cy.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_el-cy.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u039d\u03bf\u03b5",
"\u0394\u03b5\u03ba"
],
+ "STANDALONEMONTH": [
+ "\u0399\u03b1\u03bd\u03bf\u03c5\u03ac\u03c1\u03b9\u03bf\u03c2",
+ "\u03a6\u03b5\u03b2\u03c1\u03bf\u03c5\u03ac\u03c1\u03b9\u03bf\u03c2",
+ "\u039c\u03ac\u03c1\u03c4\u03b9\u03bf\u03c2",
+ "\u0391\u03c0\u03c1\u03af\u03bb\u03b9\u03bf\u03c2",
+ "\u039c\u03ac\u03b9\u03bf\u03c2",
+ "\u0399\u03bf\u03cd\u03bd\u03b9\u03bf\u03c2",
+ "\u0399\u03bf\u03cd\u03bb\u03b9\u03bf\u03c2",
+ "\u0391\u03cd\u03b3\u03bf\u03c5\u03c3\u03c4\u03bf\u03c2",
+ "\u03a3\u03b5\u03c0\u03c4\u03ad\u03bc\u03b2\u03c1\u03b9\u03bf\u03c2",
+ "\u039f\u03ba\u03c4\u03ce\u03b2\u03c1\u03b9\u03bf\u03c2",
+ "\u039d\u03bf\u03ad\u03bc\u03b2\u03c1\u03b9\u03bf\u03c2",
+ "\u0394\u03b5\u03ba\u03ad\u03bc\u03b2\u03c1\u03b9\u03bf\u03c2"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "el-cy",
+ "localeID": "el_CY",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_el-gr.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_el-gr.js
index 72c8b719..775d3fb7 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_el-gr.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_el-gr.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u039d\u03bf\u03b5",
"\u0394\u03b5\u03ba"
],
+ "STANDALONEMONTH": [
+ "\u0399\u03b1\u03bd\u03bf\u03c5\u03ac\u03c1\u03b9\u03bf\u03c2",
+ "\u03a6\u03b5\u03b2\u03c1\u03bf\u03c5\u03ac\u03c1\u03b9\u03bf\u03c2",
+ "\u039c\u03ac\u03c1\u03c4\u03b9\u03bf\u03c2",
+ "\u0391\u03c0\u03c1\u03af\u03bb\u03b9\u03bf\u03c2",
+ "\u039c\u03ac\u03b9\u03bf\u03c2",
+ "\u0399\u03bf\u03cd\u03bd\u03b9\u03bf\u03c2",
+ "\u0399\u03bf\u03cd\u03bb\u03b9\u03bf\u03c2",
+ "\u0391\u03cd\u03b3\u03bf\u03c5\u03c3\u03c4\u03bf\u03c2",
+ "\u03a3\u03b5\u03c0\u03c4\u03ad\u03bc\u03b2\u03c1\u03b9\u03bf\u03c2",
+ "\u039f\u03ba\u03c4\u03ce\u03b2\u03c1\u03b9\u03bf\u03c2",
+ "\u039d\u03bf\u03ad\u03bc\u03b2\u03c1\u03b9\u03bf\u03c2",
+ "\u0394\u03b5\u03ba\u03ad\u03bc\u03b2\u03c1\u03b9\u03bf\u03c2"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "el-gr",
+ "localeID": "el_GR",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_el.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_el.js
index 216542b8..0cfa7757 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_el.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_el.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u039d\u03bf\u03b5",
"\u0394\u03b5\u03ba"
],
+ "STANDALONEMONTH": [
+ "\u0399\u03b1\u03bd\u03bf\u03c5\u03ac\u03c1\u03b9\u03bf\u03c2",
+ "\u03a6\u03b5\u03b2\u03c1\u03bf\u03c5\u03ac\u03c1\u03b9\u03bf\u03c2",
+ "\u039c\u03ac\u03c1\u03c4\u03b9\u03bf\u03c2",
+ "\u0391\u03c0\u03c1\u03af\u03bb\u03b9\u03bf\u03c2",
+ "\u039c\u03ac\u03b9\u03bf\u03c2",
+ "\u0399\u03bf\u03cd\u03bd\u03b9\u03bf\u03c2",
+ "\u0399\u03bf\u03cd\u03bb\u03b9\u03bf\u03c2",
+ "\u0391\u03cd\u03b3\u03bf\u03c5\u03c3\u03c4\u03bf\u03c2",
+ "\u03a3\u03b5\u03c0\u03c4\u03ad\u03bc\u03b2\u03c1\u03b9\u03bf\u03c2",
+ "\u039f\u03ba\u03c4\u03ce\u03b2\u03c1\u03b9\u03bf\u03c2",
+ "\u039d\u03bf\u03ad\u03bc\u03b2\u03c1\u03b9\u03bf\u03c2",
+ "\u0394\u03b5\u03ba\u03ad\u03bc\u03b2\u03c1\u03b9\u03bf\u03c2"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "el",
+ "localeID": "el",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-001.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-001.js
index 49c98073..568867f6 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-001.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-001.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-001",
+ "localeID": "en_001",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-150.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-150.js
index 88468dad..0768eb85 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-150.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-150.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-150",
+ "localeID": "en_150",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-ag.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-ag.js
index effeae65..756d6f22 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-ag.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-ag.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-ag",
+ "localeID": "en_AG",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-ai.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-ai.js
index 29a39cb3..b400589a 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-ai.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-ai.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-ai",
+ "localeID": "en_AI",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-as.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-as.js
index b121ecba..4939e011 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-as.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-as.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-as",
+ "localeID": "en_AS",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-au.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-au.js
index a1ea9d76..7414041a 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-au.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-au.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-au",
+ "localeID": "en_AU",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-bb.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-bb.js
index a183bab2..c1fba3a4 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-bb.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-bb.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-bb",
+ "localeID": "en_BB",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-be.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-be.js
index 8a79877f..6fe24e0c 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-be.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-be.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-be",
+ "localeID": "en_BE",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-bm.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-bm.js
index 217c162f..67d117f1 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-bm.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-bm.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-bm",
+ "localeID": "en_BM",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-bs.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-bs.js
index dfcf301e..c60b8d87 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-bs.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-bs.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-bs",
+ "localeID": "en_BS",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-bw.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-bw.js
index 9433a32d..6ecf7889 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-bw.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-bw.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-bw",
+ "localeID": "en_BW",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-bz.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-bz.js
index 50b70783..3f7379ce 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-bz.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-bz.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-bz",
+ "localeID": "en_BZ",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-ca.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-ca.js
index 5ca0d1d3..0904d0d8 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-ca.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-ca.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-ca",
+ "localeID": "en_CA",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-cc.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-cc.js
index e840c699..f83123e7 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-cc.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-cc.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-cc",
+ "localeID": "en_CC",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-ck.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-ck.js
index 5cdb9138..e374bab8 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-ck.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-ck.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-ck",
+ "localeID": "en_CK",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-cm.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-cm.js
index 06821311..775d9986 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-cm.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-cm.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-cm",
+ "localeID": "en_CM",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-cx.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-cx.js
index e6c4f106..6b98f3ce 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-cx.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-cx.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-cx",
+ "localeID": "en_CX",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-dg.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-dg.js
index 6c2c605f..33647106 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-dg.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-dg.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-dg",
+ "localeID": "en_DG",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-dm.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-dm.js
index 7225a1dd..9461a315 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-dm.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-dm.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-dm",
+ "localeID": "en_DM",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-er.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-er.js
index 85232a6a..4a1296c5 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-er.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-er.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-er",
+ "localeID": "en_ER",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-fj.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-fj.js
index a7dfbe68..5bf426bc 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-fj.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-fj.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-fj",
+ "localeID": "en_FJ",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-fk.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-fk.js
index 5da1bcb8..ffb38181 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-fk.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-fk.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-fk",
+ "localeID": "en_FK",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-fm.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-fm.js
index 19cfa055..33e0e81b 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-fm.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-fm.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-fm",
+ "localeID": "en_FM",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-gb.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-gb.js
index 3eb37db2..a88c8204 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-gb.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-gb.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-gb",
+ "localeID": "en_GB",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-gd.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-gd.js
index 4fbcd1c3..1afb4c74 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-gd.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-gd.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-gd",
+ "localeID": "en_GD",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-gg.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-gg.js
index 8da65cc0..973cbc5b 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-gg.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-gg.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-gg",
+ "localeID": "en_GG",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-gh.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-gh.js
index bcaa1bcc..cc33fe0f 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-gh.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-gh.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-gh",
+ "localeID": "en_GH",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-gi.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-gi.js
index 926bacd0..97c48232 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-gi.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-gi.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-gi",
+ "localeID": "en_GI",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-gm.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-gm.js
index fec1b604..e982df38 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-gm.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-gm.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-gm",
+ "localeID": "en_GM",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-gu.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-gu.js
index 68d66d51..d11933bd 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-gu.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-gu.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-gu",
+ "localeID": "en_GU",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-gy.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-gy.js
index 405cfc39..d3d543e8 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-gy.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-gy.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-gy",
+ "localeID": "en_GY",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-hk.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-hk.js
index 6efd6924..f366c1a9 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-hk.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-hk.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-hk",
+ "localeID": "en_HK",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-ie.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-ie.js
index d6eb9505..9c79dd4c 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-ie.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-ie.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-ie",
+ "localeID": "en_IE",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-im.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-im.js
index b9d1717c..c81583b4 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-im.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-im.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-im",
+ "localeID": "en_IM",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-in.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-in.js
index 050ef178..617f6bf5 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-in.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-in.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
6,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-in",
+ "localeID": "en_IN",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-io.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-io.js
index 3e0cc47f..69252795 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-io.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-io.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-io",
+ "localeID": "en_IO",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-iso.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-iso.js
index 4e1ba795..a2970930 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-iso.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-iso.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-iso",
+ "localeID": "en_ISO",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-je.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-je.js
index 6883396c..1186c5c7 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-je.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-je.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-je",
+ "localeID": "en_JE",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-jm.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-jm.js
index 080daec1..174002b6 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-jm.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-jm.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-jm",
+ "localeID": "en_JM",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-ke.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-ke.js
index e0e16af6..3af38b41 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-ke.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-ke.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-ke",
+ "localeID": "en_KE",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-ki.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-ki.js
index de6c4ff5..2fe2ef39 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-ki.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-ki.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-ki",
+ "localeID": "en_KI",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-kn.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-kn.js
index 88f8d651..09101c94 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-kn.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-kn.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-kn",
+ "localeID": "en_KN",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-ky.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-ky.js
index f19fdb76..1d7d4545 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-ky.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-ky.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-ky",
+ "localeID": "en_KY",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-lc.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-lc.js
index cf95b831..5a82bd01 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-lc.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-lc.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-lc",
+ "localeID": "en_LC",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-lr.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-lr.js
index 87c7c8c5..ade846be 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-lr.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-lr.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-lr",
+ "localeID": "en_LR",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-ls.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-ls.js
index 08575f9e..cd8e927b 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-ls.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-ls.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-ls",
+ "localeID": "en_LS",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-mg.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-mg.js
index 10c070ab..23a37d87 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-mg.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-mg.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-mg",
+ "localeID": "en_MG",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-mh.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-mh.js
index 3ec0b3d4..8c068a5c 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-mh.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-mh.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-mh",
+ "localeID": "en_MH",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-mo.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-mo.js
index e56ec63c..d24c8b3f 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-mo.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-mo.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-mo",
+ "localeID": "en_MO",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-mp.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-mp.js
index 1d830bf7..ff8b6b49 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-mp.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-mp.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-mp",
+ "localeID": "en_MP",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-ms.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-ms.js
index 599a03fe..7c44e8fd 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-ms.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-ms.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-ms",
+ "localeID": "en_MS",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-mt.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-mt.js
index 05818a8b..63c4255d 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-mt.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-mt.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-mt",
+ "localeID": "en_MT",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-mu.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-mu.js
index 37e64915..5ededb9b 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-mu.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-mu.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-mu",
+ "localeID": "en_MU",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-mw.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-mw.js
index d850392c..ed680125 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-mw.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-mw.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-mw",
+ "localeID": "en_MW",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-my.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-my.js
index f02af281..ae1315b8 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-my.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-my.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-my",
+ "localeID": "en_MY",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-na.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-na.js
index 13dc95aa..d7240f38 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-na.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-na.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-na",
+ "localeID": "en_NA",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-nf.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-nf.js
index 72154ecb..d2385070 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-nf.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-nf.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-nf",
+ "localeID": "en_NF",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-ng.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-ng.js
index 3f506f47..a6e01a58 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-ng.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-ng.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-ng",
+ "localeID": "en_NG",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-nr.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-nr.js
index fb7e1319..43ccef72 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-nr.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-nr.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-nr",
+ "localeID": "en_NR",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-nu.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-nu.js
index 3ff530dd..cf38b296 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-nu.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-nu.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-nu",
+ "localeID": "en_NU",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-nz.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-nz.js
index b0c2ce07..ed8882d5 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-nz.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-nz.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-nz",
+ "localeID": "en_NZ",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-pg.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-pg.js
index e4379057..2d1f0f2c 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-pg.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-pg.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-pg",
+ "localeID": "en_PG",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-ph.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-ph.js
index a1ae7ea8..d0de5aa2 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-ph.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-ph.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-ph",
+ "localeID": "en_PH",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-pk.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-pk.js
index 4d99a3e6..8b29fb59 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-pk.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-pk.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-pk",
+ "localeID": "en_PK",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-pn.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-pn.js
index 460e76ab..ea48b8c9 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-pn.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-pn.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-pn",
+ "localeID": "en_PN",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-pr.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-pr.js
index 5a2e9ef5..0afbf677 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-pr.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-pr.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-pr",
+ "localeID": "en_PR",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-pw.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-pw.js
index 5be68581..b8ae5913 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-pw.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-pw.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-pw",
+ "localeID": "en_PW",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-rw.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-rw.js
index 477fe01e..f61e44f8 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-rw.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-rw.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-rw",
+ "localeID": "en_RW",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-sb.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-sb.js
index 4f195c03..86078c71 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-sb.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-sb.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-sb",
+ "localeID": "en_SB",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-sc.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-sc.js
index c77368e4..2a568dce 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-sc.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-sc.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-sc",
+ "localeID": "en_SC",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-sd.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-sd.js
index 642fed13..661129d3 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-sd.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-sd.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
4,
5
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-sd",
+ "localeID": "en_SD",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-sg.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-sg.js
index 9a573044..d27b9b29 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-sg.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-sg.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-sg",
+ "localeID": "en_SG",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-sh.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-sh.js
index f44ca8a1..14d81f99 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-sh.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-sh.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-sh",
+ "localeID": "en_SH",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-sl.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-sl.js
index c66cc354..752d458c 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-sl.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-sl.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-sl",
+ "localeID": "en_SL",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-ss.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-ss.js
index 8c0e6947..691fa959 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-ss.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-ss.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-ss",
+ "localeID": "en_SS",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-sx.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-sx.js
index b84c964f..dc3610a4 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-sx.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-sx.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-sx",
+ "localeID": "en_SX",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-sz.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-sz.js
index 5dc361c0..502409cf 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-sz.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-sz.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-sz",
+ "localeID": "en_SZ",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-tc.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-tc.js
index d075f25c..f9a8a67b 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-tc.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-tc.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-tc",
+ "localeID": "en_TC",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-tk.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-tk.js
index 048c9256..0180bdd5 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-tk.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-tk.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-tk",
+ "localeID": "en_TK",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-to.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-to.js
index a208e521..34890a7a 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-to.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-to.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-to",
+ "localeID": "en_TO",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-tt.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-tt.js
index c10e2eea..f2614404 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-tt.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-tt.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-tt",
+ "localeID": "en_TT",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-tv.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-tv.js
index 32c7a2c8..9726bbe8 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-tv.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-tv.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-tv",
+ "localeID": "en_TV",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-tz.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-tz.js
index 488954d7..d6ae6b97 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-tz.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-tz.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-tz",
+ "localeID": "en_TZ",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-ug.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-ug.js
index 9cde496b..da8b4338 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-ug.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-ug.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-ug",
+ "localeID": "en_UG",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-um.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-um.js
index 827b56c1..5c47c05e 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-um.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-um.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-um",
+ "localeID": "en_UM",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-us.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-us.js
index 9a9bfe82..515632a6 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-us.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-us.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-us",
+ "localeID": "en_US",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-vc.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-vc.js
index f9c1ab9b..3e1d2f6c 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-vc.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-vc.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-vc",
+ "localeID": "en_VC",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-vg.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-vg.js
index 74fabbf8..64fc9204 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-vg.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-vg.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-vg",
+ "localeID": "en_VG",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-vi.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-vi.js
index 3d02ce57..47ecf3ab 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-vi.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-vi.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-vi",
+ "localeID": "en_VI",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-vu.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-vu.js
index a9f6a6ac..61bf223e 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-vu.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-vu.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-vu",
+ "localeID": "en_VU",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-ws.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-ws.js
index 49d0931e..89b3a130 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-ws.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-ws.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-ws",
+ "localeID": "en_WS",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-za.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-za.js
index 56283c80..65ce4d7b 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-za.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-za.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-za",
+ "localeID": "en_ZA",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-zm.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-zm.js
index 78a5cd99..0b5d5fc5 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-zm.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-zm.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-zm",
+ "localeID": "en_ZM",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-zw.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-zw.js
index 84125681..2f81e30e 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en-zw.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en-zw.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en-zw",
+ "localeID": "en_ZW",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en.js
index 55076c84..f794bab8 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_en.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_en.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "en",
+ "localeID": "en",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_eo-001.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_eo-001.js
index 4a153257..53fb0f7d 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_eo-001.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_eo-001.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"nov",
"dec"
],
+ "STANDALONEMONTH": [
+ "januaro",
+ "februaro",
+ "marto",
+ "aprilo",
+ "majo",
+ "junio",
+ "julio",
+ "a\u016dgusto",
+ "septembro",
+ "oktobro",
+ "novembro",
+ "decembro"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "eo-001",
+ "localeID": "eo_001",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_eo.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_eo.js
index b70d7a05..7ca8adea 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_eo.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_eo.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"nov",
"dec"
],
+ "STANDALONEMONTH": [
+ "januaro",
+ "februaro",
+ "marto",
+ "aprilo",
+ "majo",
+ "junio",
+ "julio",
+ "a\u016dgusto",
+ "septembro",
+ "oktobro",
+ "novembro",
+ "decembro"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "eo",
+ "localeID": "eo",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-419.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-419.js
index 00dcab26..ed247e73 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-419.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-419.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"dic."
],
+ "STANDALONEMONTH": [
+ "Enero",
+ "Febrero",
+ "Marzo",
+ "Abril",
+ "Mayo",
+ "Junio",
+ "Julio",
+ "Agosto",
+ "Septiembre",
+ "Octubre",
+ "Noviembre",
+ "Diciembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "es-419",
+ "localeID": "es_419",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-ar.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-ar.js
index 155dfad9..55b28c9e 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-ar.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-ar.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"dic."
],
+ "STANDALONEMONTH": [
+ "Enero",
+ "Febrero",
+ "Marzo",
+ "Abril",
+ "Mayo",
+ "Junio",
+ "Julio",
+ "Agosto",
+ "Septiembre",
+ "Octubre",
+ "Noviembre",
+ "Diciembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "es-ar",
+ "localeID": "es_AR",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-bo.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-bo.js
index b7aa597b..27bb9516 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-bo.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-bo.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"dic."
],
+ "STANDALONEMONTH": [
+ "Enero",
+ "Febrero",
+ "Marzo",
+ "Abril",
+ "Mayo",
+ "Junio",
+ "Julio",
+ "Agosto",
+ "Septiembre",
+ "Octubre",
+ "Noviembre",
+ "Diciembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "es-bo",
+ "localeID": "es_BO",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-cl.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-cl.js
index 2b4a8a5a..f253f6f0 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-cl.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-cl.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"dic."
],
+ "STANDALONEMONTH": [
+ "Enero",
+ "Febrero",
+ "Marzo",
+ "Abril",
+ "Mayo",
+ "Junio",
+ "Julio",
+ "Agosto",
+ "Septiembre",
+ "Octubre",
+ "Noviembre",
+ "Diciembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "es-cl",
+ "localeID": "es_CL",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-co.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-co.js
index 46b4d6bf..740be11a 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-co.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-co.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"dic."
],
+ "STANDALONEMONTH": [
+ "Enero",
+ "Febrero",
+ "Marzo",
+ "Abril",
+ "Mayo",
+ "Junio",
+ "Julio",
+ "Agosto",
+ "Septiembre",
+ "Octubre",
+ "Noviembre",
+ "Diciembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "es-co",
+ "localeID": "es_CO",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-cr.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-cr.js
index 42927de9..2e0920b9 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-cr.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-cr.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"dic."
],
+ "STANDALONEMONTH": [
+ "Enero",
+ "Febrero",
+ "Marzo",
+ "Abril",
+ "Mayo",
+ "Junio",
+ "Julio",
+ "Agosto",
+ "Septiembre",
+ "Octubre",
+ "Noviembre",
+ "Diciembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "es-cr",
+ "localeID": "es_CR",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-cu.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-cu.js
index ec16c71b..c2323a9a 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-cu.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-cu.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"dic."
],
+ "STANDALONEMONTH": [
+ "Enero",
+ "Febrero",
+ "Marzo",
+ "Abril",
+ "Mayo",
+ "Junio",
+ "Julio",
+ "Agosto",
+ "Septiembre",
+ "Octubre",
+ "Noviembre",
+ "Diciembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "es-cu",
+ "localeID": "es_CU",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-do.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-do.js
index beedf8a3..d2a79854 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-do.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-do.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"dic."
],
+ "STANDALONEMONTH": [
+ "Enero",
+ "Febrero",
+ "Marzo",
+ "Abril",
+ "Mayo",
+ "Junio",
+ "Julio",
+ "Agosto",
+ "Septiembre",
+ "Octubre",
+ "Noviembre",
+ "Diciembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "es-do",
+ "localeID": "es_DO",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-ea.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-ea.js
index ffefb9d1..59fb667d 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-ea.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-ea.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"dic."
],
+ "STANDALONEMONTH": [
+ "Enero",
+ "Febrero",
+ "Marzo",
+ "Abril",
+ "Mayo",
+ "Junio",
+ "Julio",
+ "Agosto",
+ "Septiembre",
+ "Octubre",
+ "Noviembre",
+ "Diciembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "es-ea",
+ "localeID": "es_EA",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-ec.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-ec.js
index 10949c12..06590519 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-ec.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-ec.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"dic."
],
+ "STANDALONEMONTH": [
+ "Enero",
+ "Febrero",
+ "Marzo",
+ "Abril",
+ "Mayo",
+ "Junio",
+ "Julio",
+ "Agosto",
+ "Septiembre",
+ "Octubre",
+ "Noviembre",
+ "Diciembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "es-ec",
+ "localeID": "es_EC",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-es.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-es.js
index 9d0eb656..454bbd66 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-es.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-es.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"dic."
],
+ "STANDALONEMONTH": [
+ "Enero",
+ "Febrero",
+ "Marzo",
+ "Abril",
+ "Mayo",
+ "Junio",
+ "Julio",
+ "Agosto",
+ "Septiembre",
+ "Octubre",
+ "Noviembre",
+ "Diciembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "es-es",
+ "localeID": "es_ES",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-gq.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-gq.js
index d8fcd4b7..a21f08a4 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-gq.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-gq.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"dic."
],
+ "STANDALONEMONTH": [
+ "Enero",
+ "Febrero",
+ "Marzo",
+ "Abril",
+ "Mayo",
+ "Junio",
+ "Julio",
+ "Agosto",
+ "Septiembre",
+ "Octubre",
+ "Noviembre",
+ "Diciembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "es-gq",
+ "localeID": "es_GQ",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-gt.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-gt.js
index e9b27cc0..69e65c16 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-gt.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-gt.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"dic."
],
+ "STANDALONEMONTH": [
+ "Enero",
+ "Febrero",
+ "Marzo",
+ "Abril",
+ "Mayo",
+ "Junio",
+ "Julio",
+ "Agosto",
+ "Septiembre",
+ "Octubre",
+ "Noviembre",
+ "Diciembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "es-gt",
+ "localeID": "es_GT",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-hn.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-hn.js
index 1fc839e6..6b88ccc5 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-hn.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-hn.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"dic."
],
+ "STANDALONEMONTH": [
+ "Enero",
+ "Febrero",
+ "Marzo",
+ "Abril",
+ "Mayo",
+ "Junio",
+ "Julio",
+ "Agosto",
+ "Septiembre",
+ "Octubre",
+ "Noviembre",
+ "Diciembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "es-hn",
+ "localeID": "es_HN",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-ic.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-ic.js
index 10987395..0b665f08 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-ic.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-ic.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"dic."
],
+ "STANDALONEMONTH": [
+ "Enero",
+ "Febrero",
+ "Marzo",
+ "Abril",
+ "Mayo",
+ "Junio",
+ "Julio",
+ "Agosto",
+ "Septiembre",
+ "Octubre",
+ "Noviembre",
+ "Diciembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "es-ic",
+ "localeID": "es_IC",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-mx.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-mx.js
index 95eb1456..508c9495 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-mx.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-mx.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov",
"dic"
],
+ "STANDALONEMONTH": [
+ "Enero",
+ "Febrero",
+ "Marzo",
+ "Abril",
+ "Mayo",
+ "Junio",
+ "Julio",
+ "Agosto",
+ "Septiembre",
+ "Octubre",
+ "Noviembre",
+ "Diciembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "es-mx",
+ "localeID": "es_MX",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-ni.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-ni.js
index 775fb5fd..2e05e6c9 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-ni.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-ni.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"dic."
],
+ "STANDALONEMONTH": [
+ "Enero",
+ "Febrero",
+ "Marzo",
+ "Abril",
+ "Mayo",
+ "Junio",
+ "Julio",
+ "Agosto",
+ "Septiembre",
+ "Octubre",
+ "Noviembre",
+ "Diciembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "es-ni",
+ "localeID": "es_NI",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-pa.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-pa.js
index 141605ed..d633bdda 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-pa.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-pa.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"dic."
],
+ "STANDALONEMONTH": [
+ "Enero",
+ "Febrero",
+ "Marzo",
+ "Abril",
+ "Mayo",
+ "Junio",
+ "Julio",
+ "Agosto",
+ "Septiembre",
+ "Octubre",
+ "Noviembre",
+ "Diciembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "es-pa",
+ "localeID": "es_PA",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-pe.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-pe.js
index ea7dfd22..bf10aba0 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-pe.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-pe.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"dic."
],
+ "STANDALONEMONTH": [
+ "Enero",
+ "Febrero",
+ "Marzo",
+ "Abril",
+ "Mayo",
+ "Junio",
+ "Julio",
+ "Agosto",
+ "Setiembre",
+ "Octubre",
+ "Noviembre",
+ "Diciembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "es-pe",
+ "localeID": "es_PE",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-ph.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-ph.js
index 0d7bc983..23ad6dc3 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-ph.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-ph.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"dic."
],
+ "STANDALONEMONTH": [
+ "Enero",
+ "Febrero",
+ "Marzo",
+ "Abril",
+ "Mayo",
+ "Junio",
+ "Julio",
+ "Agosto",
+ "Septiembre",
+ "Octubre",
+ "Noviembre",
+ "Diciembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "es-ph",
+ "localeID": "es_PH",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-pr.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-pr.js
index 0ac3ff95..bb4f7b89 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-pr.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-pr.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"dic."
],
+ "STANDALONEMONTH": [
+ "Enero",
+ "Febrero",
+ "Marzo",
+ "Abril",
+ "Mayo",
+ "Junio",
+ "Julio",
+ "Agosto",
+ "Septiembre",
+ "Octubre",
+ "Noviembre",
+ "Diciembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "es-pr",
+ "localeID": "es_PR",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-py.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-py.js
index 3dd2301b..4f93e842 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-py.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-py.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"dic."
],
+ "STANDALONEMONTH": [
+ "Enero",
+ "Febrero",
+ "Marzo",
+ "Abril",
+ "Mayo",
+ "Junio",
+ "Julio",
+ "Agosto",
+ "Septiembre",
+ "Octubre",
+ "Noviembre",
+ "Diciembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "es-py",
+ "localeID": "es_PY",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-sv.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-sv.js
index 9a7574f2..c9140566 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-sv.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-sv.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"dic."
],
+ "STANDALONEMONTH": [
+ "Enero",
+ "Febrero",
+ "Marzo",
+ "Abril",
+ "Mayo",
+ "Junio",
+ "Julio",
+ "Agosto",
+ "Septiembre",
+ "Octubre",
+ "Noviembre",
+ "Diciembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "es-sv",
+ "localeID": "es_SV",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-us.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-us.js
index bb8e3ccc..8af9e0ab 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-us.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-us.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"dic."
],
+ "STANDALONEMONTH": [
+ "Enero",
+ "Febrero",
+ "Marzo",
+ "Abril",
+ "Mayo",
+ "Junio",
+ "Julio",
+ "Agosto",
+ "Septiembre",
+ "Octubre",
+ "Noviembre",
+ "Diciembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "es-us",
+ "localeID": "es_US",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-uy.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-uy.js
index adfccd9f..0aea1b77 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-uy.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-uy.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"dic."
],
+ "STANDALONEMONTH": [
+ "Enero",
+ "Febrero",
+ "Marzo",
+ "Abril",
+ "Mayo",
+ "Junio",
+ "Julio",
+ "Agosto",
+ "Setiembre",
+ "Octubre",
+ "Noviembre",
+ "Diciembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "es-uy",
+ "localeID": "es_UY",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-ve.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-ve.js
index ed2093cf..f53ce5f6 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es-ve.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es-ve.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"dic."
],
+ "STANDALONEMONTH": [
+ "Enero",
+ "Febrero",
+ "Marzo",
+ "Abril",
+ "Mayo",
+ "Junio",
+ "Julio",
+ "Agosto",
+ "Septiembre",
+ "Octubre",
+ "Noviembre",
+ "Diciembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "es-ve",
+ "localeID": "es_VE",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es.js
index 929ab026..07c4d2ab 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_es.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_es.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"dic."
],
+ "STANDALONEMONTH": [
+ "Enero",
+ "Febrero",
+ "Marzo",
+ "Abril",
+ "Mayo",
+ "Junio",
+ "Julio",
+ "Agosto",
+ "Septiembre",
+ "Octubre",
+ "Noviembre",
+ "Diciembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "es",
+ "localeID": "es",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_et-ee.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_et-ee.js
index 3b900ae3..d891b9df 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_et-ee.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_et-ee.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"nov",
"dets"
],
+ "STANDALONEMONTH": [
+ "jaanuar",
+ "veebruar",
+ "m\u00e4rts",
+ "aprill",
+ "mai",
+ "juuni",
+ "juuli",
+ "august",
+ "september",
+ "oktoober",
+ "november",
+ "detsember"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "et-ee",
+ "localeID": "et_EE",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_et.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_et.js
index d10ad68a..3c545d80 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_et.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_et.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"nov",
"dets"
],
+ "STANDALONEMONTH": [
+ "jaanuar",
+ "veebruar",
+ "m\u00e4rts",
+ "aprill",
+ "mai",
+ "juuni",
+ "juuli",
+ "august",
+ "september",
+ "oktoober",
+ "november",
+ "detsember"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "et",
+ "localeID": "et",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_eu-es.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_eu-es.js
index 3a38161c..1f27109e 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_eu-es.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_eu-es.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"aza.",
"abe."
],
+ "STANDALONEMONTH": [
+ "Urtarrila",
+ "Otsaila",
+ "Martxoa",
+ "Apirila",
+ "Maiatza",
+ "Ekaina",
+ "Uztaila",
+ "Abuztua",
+ "Iraila",
+ "Urria",
+ "Azaroa",
+ "Abendua"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "eu-es",
+ "localeID": "eu_ES",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_eu.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_eu.js
index 47e84711..c1ea375c 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_eu.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_eu.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"aza.",
"abe."
],
+ "STANDALONEMONTH": [
+ "Urtarrila",
+ "Otsaila",
+ "Martxoa",
+ "Apirila",
+ "Maiatza",
+ "Ekaina",
+ "Uztaila",
+ "Abuztua",
+ "Iraila",
+ "Urria",
+ "Azaroa",
+ "Abendua"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "eu",
+ "localeID": "eu",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ewo-cm.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ewo-cm.js
index 0acddea8..70c6fef0 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ewo-cm.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ewo-cm.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"ngad",
"ngab"
],
+ "STANDALONEMONTH": [
+ "ng\u0254n os\u00fa",
+ "ng\u0254n b\u025b\u030c",
+ "ng\u0254n l\u00e1la",
+ "ng\u0254n nyina",
+ "ng\u0254n t\u00e1na",
+ "ng\u0254n sam\u0259na",
+ "ng\u0254n zamgb\u00e1la",
+ "ng\u0254n mwom",
+ "ng\u0254n ebul\u00fa",
+ "ng\u0254n aw\u00f3m",
+ "ng\u0254n aw\u00f3m ai dzi\u00e1",
+ "ng\u0254n aw\u00f3m ai b\u025b\u030c"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ewo-cm",
+ "localeID": "ewo_CM",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ewo.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ewo.js
index dbef8cde..f036bd88 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ewo.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ewo.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"ngad",
"ngab"
],
+ "STANDALONEMONTH": [
+ "ng\u0254n os\u00fa",
+ "ng\u0254n b\u025b\u030c",
+ "ng\u0254n l\u00e1la",
+ "ng\u0254n nyina",
+ "ng\u0254n t\u00e1na",
+ "ng\u0254n sam\u0259na",
+ "ng\u0254n zamgb\u00e1la",
+ "ng\u0254n mwom",
+ "ng\u0254n ebul\u00fa",
+ "ng\u0254n aw\u00f3m",
+ "ng\u0254n aw\u00f3m ai dzi\u00e1",
+ "ng\u0254n aw\u00f3m ai b\u025b\u030c"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ewo",
+ "localeID": "ewo",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fa-af.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fa-af.js
index e3fccd39..a231b3c5 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fa-af.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fa-af.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u0646\u0648\u0627\u0645\u0628\u0631",
"\u062f\u0633\u0645"
],
+ "STANDALONEMONTH": [
+ "\u0698\u0627\u0646\u0648\u06cc\u0647",
+ "\u0641\u0648\u0631\u06cc\u0647",
+ "\u0645\u0627\u0631\u0633",
+ "\u0622\u0648\u0631\u06cc\u0644",
+ "\u0645\u0647",
+ "\u0698\u0648\u0626\u0646",
+ "\u0698\u0648\u0626\u06cc\u0647",
+ "\u0627\u0648\u062a",
+ "\u0633\u067e\u062a\u0627\u0645\u0628\u0631",
+ "\u0627\u06a9\u062a\u0628\u0631",
+ "\u0646\u0648\u0627\u0645\u0628\u0631",
+ "\u062f\u0633\u0627\u0645\u0628\u0631"
+ ],
"WEEKENDRANGE": [
3,
4
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "fa-af",
+ "localeID": "fa_AF",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fa-ir.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fa-ir.js
index 44a72b74..01d13ad9 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fa-ir.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fa-ir.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u0646\u0648\u0627\u0645\u0628\u0631",
"\u062f\u0633\u0627\u0645\u0628\u0631"
],
+ "STANDALONEMONTH": [
+ "\u0698\u0627\u0646\u0648\u06cc\u0647",
+ "\u0641\u0648\u0631\u06cc\u0647",
+ "\u0645\u0627\u0631\u0633",
+ "\u0622\u0648\u0631\u06cc\u0644",
+ "\u0645\u0647",
+ "\u0698\u0648\u0626\u0646",
+ "\u0698\u0648\u0626\u06cc\u0647",
+ "\u0627\u0648\u062a",
+ "\u0633\u067e\u062a\u0627\u0645\u0628\u0631",
+ "\u0627\u06a9\u062a\u0628\u0631",
+ "\u0646\u0648\u0627\u0645\u0628\u0631",
+ "\u062f\u0633\u0627\u0645\u0628\u0631"
+ ],
"WEEKENDRANGE": [
4,
4
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "fa-ir",
+ "localeID": "fa_IR",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fa.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fa.js
index 48eb5dd0..bc276238 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fa.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fa.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u0646\u0648\u0627\u0645\u0628\u0631",
"\u062f\u0633\u0627\u0645\u0628\u0631"
],
+ "STANDALONEMONTH": [
+ "\u0698\u0627\u0646\u0648\u06cc\u0647",
+ "\u0641\u0648\u0631\u06cc\u0647",
+ "\u0645\u0627\u0631\u0633",
+ "\u0622\u0648\u0631\u06cc\u0644",
+ "\u0645\u0647",
+ "\u0698\u0648\u0626\u0646",
+ "\u0698\u0648\u0626\u06cc\u0647",
+ "\u0627\u0648\u062a",
+ "\u0633\u067e\u062a\u0627\u0645\u0628\u0631",
+ "\u0627\u06a9\u062a\u0628\u0631",
+ "\u0646\u0648\u0627\u0645\u0628\u0631",
+ "\u062f\u0633\u0627\u0645\u0628\u0631"
+ ],
"WEEKENDRANGE": [
4,
4
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "fa",
+ "localeID": "fa",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ff-cm.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ff-cm.js
index 87589cf1..fc81b6e0 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ff-cm.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ff-cm.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"jol",
"bow"
],
+ "STANDALONEMONTH": [
+ "siilo",
+ "colte",
+ "mbooy",
+ "see\u0257to",
+ "duujal",
+ "korse",
+ "morso",
+ "juko",
+ "siilto",
+ "yarkomaa",
+ "jolal",
+ "bowte"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ff-cm",
+ "localeID": "ff_CM",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ff-gn.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ff-gn.js
index a7678f02..f88c63e7 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ff-gn.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ff-gn.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"jol",
"bow"
],
+ "STANDALONEMONTH": [
+ "siilo",
+ "colte",
+ "mbooy",
+ "see\u0257to",
+ "duujal",
+ "korse",
+ "morso",
+ "juko",
+ "siilto",
+ "yarkomaa",
+ "jolal",
+ "bowte"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ff-gn",
+ "localeID": "ff_GN",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ff-mr.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ff-mr.js
index c36b8a25..841316e2 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ff-mr.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ff-mr.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"jol",
"bow"
],
+ "STANDALONEMONTH": [
+ "siilo",
+ "colte",
+ "mbooy",
+ "see\u0257to",
+ "duujal",
+ "korse",
+ "morso",
+ "juko",
+ "siilto",
+ "yarkomaa",
+ "jolal",
+ "bowte"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ff-mr",
+ "localeID": "ff_MR",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ff-sn.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ff-sn.js
index e71e7b62..de6849ea 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ff-sn.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ff-sn.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"jol",
"bow"
],
+ "STANDALONEMONTH": [
+ "siilo",
+ "colte",
+ "mbooy",
+ "see\u0257to",
+ "duujal",
+ "korse",
+ "morso",
+ "juko",
+ "siilto",
+ "yarkomaa",
+ "jolal",
+ "bowte"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ff-sn",
+ "localeID": "ff_SN",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ff.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ff.js
index 9ce7b830..da4684f7 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ff.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ff.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"jol",
"bow"
],
+ "STANDALONEMONTH": [
+ "siilo",
+ "colte",
+ "mbooy",
+ "see\u0257to",
+ "duujal",
+ "korse",
+ "morso",
+ "juko",
+ "siilto",
+ "yarkomaa",
+ "jolal",
+ "bowte"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ff",
+ "localeID": "ff",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fi-fi.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fi-fi.js
index 44bd4120..c3e6a46c 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fi-fi.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fi-fi.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"marraskuuta",
"joulukuuta"
],
+ "STANDALONEMONTH": [
+ "tammikuu",
+ "helmikuu",
+ "maaliskuu",
+ "huhtikuu",
+ "toukokuu",
+ "kes\u00e4kuu",
+ "hein\u00e4kuu",
+ "elokuu",
+ "syyskuu",
+ "lokakuu",
+ "marraskuu",
+ "joulukuu"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "fi-fi",
+ "localeID": "fi_FI",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fi.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fi.js
index ade16564..f10f66e4 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fi.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fi.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"marraskuuta",
"joulukuuta"
],
+ "STANDALONEMONTH": [
+ "tammikuu",
+ "helmikuu",
+ "maaliskuu",
+ "huhtikuu",
+ "toukokuu",
+ "kes\u00e4kuu",
+ "hein\u00e4kuu",
+ "elokuu",
+ "syyskuu",
+ "lokakuu",
+ "marraskuu",
+ "joulukuu"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "fi",
+ "localeID": "fi",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fil-ph.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fil-ph.js
index 541d3cde..2d222db0 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fil-ph.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fil-ph.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nob",
"Dis"
],
+ "STANDALONEMONTH": [
+ "Enero",
+ "Pebrero",
+ "Marso",
+ "Abril",
+ "Mayo",
+ "Hunyo",
+ "Hulyo",
+ "Agosto",
+ "Setyembre",
+ "Oktubre",
+ "Nobyembre",
+ "Disyembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "fil-ph",
+ "localeID": "fil_PH",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (vf.v == 0 && (i == 1 || i == 2 || i == 3) || vf.v == 0 && i % 10 != 4 && i % 10 != 6 && i % 10 != 9 || vf.v != 0 && vf.f % 10 != 4 && vf.f % 10 != 6 && vf.f % 10 != 9) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fil.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fil.js
index 5cded550..b7e3074e 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fil.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fil.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nob",
"Dis"
],
+ "STANDALONEMONTH": [
+ "Enero",
+ "Pebrero",
+ "Marso",
+ "Abril",
+ "Mayo",
+ "Hunyo",
+ "Hulyo",
+ "Agosto",
+ "Setyembre",
+ "Oktubre",
+ "Nobyembre",
+ "Disyembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "fil",
+ "localeID": "fil",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (vf.v == 0 && (i == 1 || i == 2 || i == 3) || vf.v == 0 && i % 10 != 4 && i % 10 != 6 && i % 10 != 9 || vf.v != 0 && vf.f % 10 != 4 && vf.f % 10 != 6 && vf.f % 10 != 9) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fo-fo.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fo-fo.js
index a861d8c3..ef42c7ab 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fo-fo.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fo-fo.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"nov",
"des"
],
+ "STANDALONEMONTH": [
+ "januar",
+ "februar",
+ "mars",
+ "apr\u00edl",
+ "mai",
+ "juni",
+ "juli",
+ "august",
+ "september",
+ "oktober",
+ "november",
+ "desember"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "fo-fo",
+ "localeID": "fo_FO",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fo.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fo.js
index aa33cd32..9d83231e 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fo.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fo.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"nov",
"des"
],
+ "STANDALONEMONTH": [
+ "januar",
+ "februar",
+ "mars",
+ "apr\u00edl",
+ "mai",
+ "juni",
+ "juli",
+ "august",
+ "september",
+ "oktober",
+ "november",
+ "desember"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "fo",
+ "localeID": "fo",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-be.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-be.js
index acec9a42..a8d99bbb 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-be.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-be.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"d\u00e9c."
],
+ "STANDALONEMONTH": [
+ "Janvier",
+ "F\u00e9vrier",
+ "Mars",
+ "Avril",
+ "Mai",
+ "Juin",
+ "Juillet",
+ "Ao\u00fbt",
+ "Septembre",
+ "Octobre",
+ "Novembre",
+ "D\u00e9cembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "fr-be",
+ "localeID": "fr_BE",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || i == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-bf.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-bf.js
index bd30d550..6e336975 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-bf.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-bf.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"d\u00e9c."
],
+ "STANDALONEMONTH": [
+ "Janvier",
+ "F\u00e9vrier",
+ "Mars",
+ "Avril",
+ "Mai",
+ "Juin",
+ "Juillet",
+ "Ao\u00fbt",
+ "Septembre",
+ "Octobre",
+ "Novembre",
+ "D\u00e9cembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "fr-bf",
+ "localeID": "fr_BF",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || i == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-bi.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-bi.js
index 39d3b329..52bb8fc5 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-bi.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-bi.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"d\u00e9c."
],
+ "STANDALONEMONTH": [
+ "Janvier",
+ "F\u00e9vrier",
+ "Mars",
+ "Avril",
+ "Mai",
+ "Juin",
+ "Juillet",
+ "Ao\u00fbt",
+ "Septembre",
+ "Octobre",
+ "Novembre",
+ "D\u00e9cembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "fr-bi",
+ "localeID": "fr_BI",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || i == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-bj.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-bj.js
index 6753f020..19ee6863 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-bj.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-bj.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"d\u00e9c."
],
+ "STANDALONEMONTH": [
+ "Janvier",
+ "F\u00e9vrier",
+ "Mars",
+ "Avril",
+ "Mai",
+ "Juin",
+ "Juillet",
+ "Ao\u00fbt",
+ "Septembre",
+ "Octobre",
+ "Novembre",
+ "D\u00e9cembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "fr-bj",
+ "localeID": "fr_BJ",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || i == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-bl.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-bl.js
index 2f15f5a3..415d9caa 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-bl.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-bl.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"d\u00e9c."
],
+ "STANDALONEMONTH": [
+ "Janvier",
+ "F\u00e9vrier",
+ "Mars",
+ "Avril",
+ "Mai",
+ "Juin",
+ "Juillet",
+ "Ao\u00fbt",
+ "Septembre",
+ "Octobre",
+ "Novembre",
+ "D\u00e9cembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "fr-bl",
+ "localeID": "fr_BL",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || i == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-ca.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-ca.js
index 6f5f703b..4f1327d8 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-ca.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-ca.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"d\u00e9c."
],
+ "STANDALONEMONTH": [
+ "janvier",
+ "f\u00e9vrier",
+ "mars",
+ "avril",
+ "mai",
+ "juin",
+ "juillet",
+ "ao\u00fbt",
+ "septembre",
+ "octobre",
+ "novembre",
+ "d\u00e9cembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "fr-ca",
+ "localeID": "fr_CA",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || i == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-cd.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-cd.js
index 1e1d1cc3..5a920e65 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-cd.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-cd.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"d\u00e9c."
],
+ "STANDALONEMONTH": [
+ "Janvier",
+ "F\u00e9vrier",
+ "Mars",
+ "Avril",
+ "Mai",
+ "Juin",
+ "Juillet",
+ "Ao\u00fbt",
+ "Septembre",
+ "Octobre",
+ "Novembre",
+ "D\u00e9cembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "fr-cd",
+ "localeID": "fr_CD",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || i == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-cf.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-cf.js
index bf605538..e76a32b8 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-cf.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-cf.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"d\u00e9c."
],
+ "STANDALONEMONTH": [
+ "Janvier",
+ "F\u00e9vrier",
+ "Mars",
+ "Avril",
+ "Mai",
+ "Juin",
+ "Juillet",
+ "Ao\u00fbt",
+ "Septembre",
+ "Octobre",
+ "Novembre",
+ "D\u00e9cembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "fr-cf",
+ "localeID": "fr_CF",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || i == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-cg.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-cg.js
index c4417732..3b4ee678 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-cg.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-cg.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"d\u00e9c."
],
+ "STANDALONEMONTH": [
+ "Janvier",
+ "F\u00e9vrier",
+ "Mars",
+ "Avril",
+ "Mai",
+ "Juin",
+ "Juillet",
+ "Ao\u00fbt",
+ "Septembre",
+ "Octobre",
+ "Novembre",
+ "D\u00e9cembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "fr-cg",
+ "localeID": "fr_CG",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || i == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-ch.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-ch.js
index e69d2fe3..df05fe9b 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-ch.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-ch.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"d\u00e9c."
],
+ "STANDALONEMONTH": [
+ "Janvier",
+ "F\u00e9vrier",
+ "Mars",
+ "Avril",
+ "Mai",
+ "Juin",
+ "Juillet",
+ "Ao\u00fbt",
+ "Septembre",
+ "Octobre",
+ "Novembre",
+ "D\u00e9cembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "fr-ch",
+ "localeID": "fr_CH",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || i == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-ci.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-ci.js
index 2954b103..032a6ff7 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-ci.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-ci.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"d\u00e9c."
],
+ "STANDALONEMONTH": [
+ "Janvier",
+ "F\u00e9vrier",
+ "Mars",
+ "Avril",
+ "Mai",
+ "Juin",
+ "Juillet",
+ "Ao\u00fbt",
+ "Septembre",
+ "Octobre",
+ "Novembre",
+ "D\u00e9cembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "fr-ci",
+ "localeID": "fr_CI",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || i == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-cm.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-cm.js
index d8f03d2e..74d3d1b9 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-cm.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-cm.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"d\u00e9c."
],
+ "STANDALONEMONTH": [
+ "Janvier",
+ "F\u00e9vrier",
+ "Mars",
+ "Avril",
+ "Mai",
+ "Juin",
+ "Juillet",
+ "Ao\u00fbt",
+ "Septembre",
+ "Octobre",
+ "Novembre",
+ "D\u00e9cembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "fr-cm",
+ "localeID": "fr_CM",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || i == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-dj.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-dj.js
index 9c850c29..471c1e7c 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-dj.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-dj.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"d\u00e9c."
],
+ "STANDALONEMONTH": [
+ "Janvier",
+ "F\u00e9vrier",
+ "Mars",
+ "Avril",
+ "Mai",
+ "Juin",
+ "Juillet",
+ "Ao\u00fbt",
+ "Septembre",
+ "Octobre",
+ "Novembre",
+ "D\u00e9cembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "fr-dj",
+ "localeID": "fr_DJ",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || i == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-dz.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-dz.js
index ae1e1c67..c7f4956c 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-dz.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-dz.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"d\u00e9c."
],
+ "STANDALONEMONTH": [
+ "Janvier",
+ "F\u00e9vrier",
+ "Mars",
+ "Avril",
+ "Mai",
+ "Juin",
+ "Juillet",
+ "Ao\u00fbt",
+ "Septembre",
+ "Octobre",
+ "Novembre",
+ "D\u00e9cembre"
+ ],
"WEEKENDRANGE": [
4,
5
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "fr-dz",
+ "localeID": "fr_DZ",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || i == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-fr.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-fr.js
index bdef4eff..b910e03f 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-fr.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-fr.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"d\u00e9c."
],
+ "STANDALONEMONTH": [
+ "Janvier",
+ "F\u00e9vrier",
+ "Mars",
+ "Avril",
+ "Mai",
+ "Juin",
+ "Juillet",
+ "Ao\u00fbt",
+ "Septembre",
+ "Octobre",
+ "Novembre",
+ "D\u00e9cembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "fr-fr",
+ "localeID": "fr_FR",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || i == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-ga.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-ga.js
index 6268c777..1d4a5a75 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-ga.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-ga.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"d\u00e9c."
],
+ "STANDALONEMONTH": [
+ "Janvier",
+ "F\u00e9vrier",
+ "Mars",
+ "Avril",
+ "Mai",
+ "Juin",
+ "Juillet",
+ "Ao\u00fbt",
+ "Septembre",
+ "Octobre",
+ "Novembre",
+ "D\u00e9cembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "fr-ga",
+ "localeID": "fr_GA",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || i == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-gf.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-gf.js
index a7d37a0f..d1dc69b0 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-gf.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-gf.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"d\u00e9c."
],
+ "STANDALONEMONTH": [
+ "Janvier",
+ "F\u00e9vrier",
+ "Mars",
+ "Avril",
+ "Mai",
+ "Juin",
+ "Juillet",
+ "Ao\u00fbt",
+ "Septembre",
+ "Octobre",
+ "Novembre",
+ "D\u00e9cembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "fr-gf",
+ "localeID": "fr_GF",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || i == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-gn.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-gn.js
index 34f4b101..062e0f4b 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-gn.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-gn.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"d\u00e9c."
],
+ "STANDALONEMONTH": [
+ "Janvier",
+ "F\u00e9vrier",
+ "Mars",
+ "Avril",
+ "Mai",
+ "Juin",
+ "Juillet",
+ "Ao\u00fbt",
+ "Septembre",
+ "Octobre",
+ "Novembre",
+ "D\u00e9cembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "fr-gn",
+ "localeID": "fr_GN",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || i == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-gp.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-gp.js
index 9db67089..d0a9b069 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-gp.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-gp.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"d\u00e9c."
],
+ "STANDALONEMONTH": [
+ "Janvier",
+ "F\u00e9vrier",
+ "Mars",
+ "Avril",
+ "Mai",
+ "Juin",
+ "Juillet",
+ "Ao\u00fbt",
+ "Septembre",
+ "Octobre",
+ "Novembre",
+ "D\u00e9cembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "fr-gp",
+ "localeID": "fr_GP",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || i == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-gq.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-gq.js
index 02bbba29..47a105a9 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-gq.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-gq.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"d\u00e9c."
],
+ "STANDALONEMONTH": [
+ "Janvier",
+ "F\u00e9vrier",
+ "Mars",
+ "Avril",
+ "Mai",
+ "Juin",
+ "Juillet",
+ "Ao\u00fbt",
+ "Septembre",
+ "Octobre",
+ "Novembre",
+ "D\u00e9cembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "fr-gq",
+ "localeID": "fr_GQ",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || i == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-ht.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-ht.js
index 116e0da6..7b3de3de 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-ht.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-ht.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"d\u00e9c."
],
+ "STANDALONEMONTH": [
+ "Janvier",
+ "F\u00e9vrier",
+ "Mars",
+ "Avril",
+ "Mai",
+ "Juin",
+ "Juillet",
+ "Ao\u00fbt",
+ "Septembre",
+ "Octobre",
+ "Novembre",
+ "D\u00e9cembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "fr-ht",
+ "localeID": "fr_HT",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || i == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-km.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-km.js
index e178c7f3..3e2880ea 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-km.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-km.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"d\u00e9c."
],
+ "STANDALONEMONTH": [
+ "Janvier",
+ "F\u00e9vrier",
+ "Mars",
+ "Avril",
+ "Mai",
+ "Juin",
+ "Juillet",
+ "Ao\u00fbt",
+ "Septembre",
+ "Octobre",
+ "Novembre",
+ "D\u00e9cembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "fr-km",
+ "localeID": "fr_KM",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || i == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-lu.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-lu.js
index bb236277..7dd9fa4b 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-lu.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-lu.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"d\u00e9c."
],
+ "STANDALONEMONTH": [
+ "Janvier",
+ "F\u00e9vrier",
+ "Mars",
+ "Avril",
+ "Mai",
+ "Juin",
+ "Juillet",
+ "Ao\u00fbt",
+ "Septembre",
+ "Octobre",
+ "Novembre",
+ "D\u00e9cembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "fr-lu",
+ "localeID": "fr_LU",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || i == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-ma.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-ma.js
index 92edf74b..bc697041 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-ma.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-ma.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"d\u00e9c."
],
+ "STANDALONEMONTH": [
+ "Janvier",
+ "F\u00e9vrier",
+ "Mars",
+ "Avril",
+ "Mai",
+ "Juin",
+ "Juillet",
+ "Ao\u00fbt",
+ "Septembre",
+ "Octobre",
+ "Novembre",
+ "D\u00e9cembre"
+ ],
"WEEKENDRANGE": [
4,
5
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "fr-ma",
+ "localeID": "fr_MA",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || i == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-mc.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-mc.js
index 85e0233e..db81a80a 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-mc.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-mc.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"d\u00e9c."
],
+ "STANDALONEMONTH": [
+ "Janvier",
+ "F\u00e9vrier",
+ "Mars",
+ "Avril",
+ "Mai",
+ "Juin",
+ "Juillet",
+ "Ao\u00fbt",
+ "Septembre",
+ "Octobre",
+ "Novembre",
+ "D\u00e9cembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "fr-mc",
+ "localeID": "fr_MC",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || i == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-mf.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-mf.js
index 2abced5c..ff06ac7a 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-mf.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-mf.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"d\u00e9c."
],
+ "STANDALONEMONTH": [
+ "Janvier",
+ "F\u00e9vrier",
+ "Mars",
+ "Avril",
+ "Mai",
+ "Juin",
+ "Juillet",
+ "Ao\u00fbt",
+ "Septembre",
+ "Octobre",
+ "Novembre",
+ "D\u00e9cembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "fr-mf",
+ "localeID": "fr_MF",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || i == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-mg.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-mg.js
index 02d27478..1c40fe5b 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-mg.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-mg.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"d\u00e9c."
],
+ "STANDALONEMONTH": [
+ "Janvier",
+ "F\u00e9vrier",
+ "Mars",
+ "Avril",
+ "Mai",
+ "Juin",
+ "Juillet",
+ "Ao\u00fbt",
+ "Septembre",
+ "Octobre",
+ "Novembre",
+ "D\u00e9cembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "fr-mg",
+ "localeID": "fr_MG",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || i == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-ml.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-ml.js
index e4549e2b..1cead4c4 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-ml.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-ml.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"d\u00e9c."
],
+ "STANDALONEMONTH": [
+ "Janvier",
+ "F\u00e9vrier",
+ "Mars",
+ "Avril",
+ "Mai",
+ "Juin",
+ "Juillet",
+ "Ao\u00fbt",
+ "Septembre",
+ "Octobre",
+ "Novembre",
+ "D\u00e9cembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "fr-ml",
+ "localeID": "fr_ML",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || i == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-mq.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-mq.js
index 3973b32e..120873b3 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-mq.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-mq.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"d\u00e9c."
],
+ "STANDALONEMONTH": [
+ "Janvier",
+ "F\u00e9vrier",
+ "Mars",
+ "Avril",
+ "Mai",
+ "Juin",
+ "Juillet",
+ "Ao\u00fbt",
+ "Septembre",
+ "Octobre",
+ "Novembre",
+ "D\u00e9cembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "fr-mq",
+ "localeID": "fr_MQ",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || i == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-mr.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-mr.js
index 5b993c6d..e2077a6d 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-mr.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-mr.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"d\u00e9c."
],
+ "STANDALONEMONTH": [
+ "Janvier",
+ "F\u00e9vrier",
+ "Mars",
+ "Avril",
+ "Mai",
+ "Juin",
+ "Juillet",
+ "Ao\u00fbt",
+ "Septembre",
+ "Octobre",
+ "Novembre",
+ "D\u00e9cembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "fr-mr",
+ "localeID": "fr_MR",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || i == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-mu.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-mu.js
index 7b09bd2e..49d3369d 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-mu.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-mu.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"d\u00e9c."
],
+ "STANDALONEMONTH": [
+ "Janvier",
+ "F\u00e9vrier",
+ "Mars",
+ "Avril",
+ "Mai",
+ "Juin",
+ "Juillet",
+ "Ao\u00fbt",
+ "Septembre",
+ "Octobre",
+ "Novembre",
+ "D\u00e9cembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "fr-mu",
+ "localeID": "fr_MU",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || i == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-nc.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-nc.js
index a0694a9f..c24e82a6 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-nc.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-nc.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"d\u00e9c."
],
+ "STANDALONEMONTH": [
+ "Janvier",
+ "F\u00e9vrier",
+ "Mars",
+ "Avril",
+ "Mai",
+ "Juin",
+ "Juillet",
+ "Ao\u00fbt",
+ "Septembre",
+ "Octobre",
+ "Novembre",
+ "D\u00e9cembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "fr-nc",
+ "localeID": "fr_NC",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || i == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-ne.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-ne.js
index 7fd04821..0b605a24 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-ne.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-ne.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"d\u00e9c."
],
+ "STANDALONEMONTH": [
+ "Janvier",
+ "F\u00e9vrier",
+ "Mars",
+ "Avril",
+ "Mai",
+ "Juin",
+ "Juillet",
+ "Ao\u00fbt",
+ "Septembre",
+ "Octobre",
+ "Novembre",
+ "D\u00e9cembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "fr-ne",
+ "localeID": "fr_NE",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || i == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-pf.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-pf.js
index d5d023a3..6ff4bcc0 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-pf.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-pf.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"d\u00e9c."
],
+ "STANDALONEMONTH": [
+ "Janvier",
+ "F\u00e9vrier",
+ "Mars",
+ "Avril",
+ "Mai",
+ "Juin",
+ "Juillet",
+ "Ao\u00fbt",
+ "Septembre",
+ "Octobre",
+ "Novembre",
+ "D\u00e9cembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "fr-pf",
+ "localeID": "fr_PF",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || i == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-pm.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-pm.js
index 2ed15ec9..4b715dcb 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-pm.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-pm.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"d\u00e9c."
],
+ "STANDALONEMONTH": [
+ "Janvier",
+ "F\u00e9vrier",
+ "Mars",
+ "Avril",
+ "Mai",
+ "Juin",
+ "Juillet",
+ "Ao\u00fbt",
+ "Septembre",
+ "Octobre",
+ "Novembre",
+ "D\u00e9cembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "fr-pm",
+ "localeID": "fr_PM",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || i == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-re.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-re.js
index 1c1e849e..d25850cb 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-re.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-re.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"d\u00e9c."
],
+ "STANDALONEMONTH": [
+ "Janvier",
+ "F\u00e9vrier",
+ "Mars",
+ "Avril",
+ "Mai",
+ "Juin",
+ "Juillet",
+ "Ao\u00fbt",
+ "Septembre",
+ "Octobre",
+ "Novembre",
+ "D\u00e9cembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "fr-re",
+ "localeID": "fr_RE",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || i == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-rw.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-rw.js
index 8966b7a8..1ecd2a07 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-rw.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-rw.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"d\u00e9c."
],
+ "STANDALONEMONTH": [
+ "Janvier",
+ "F\u00e9vrier",
+ "Mars",
+ "Avril",
+ "Mai",
+ "Juin",
+ "Juillet",
+ "Ao\u00fbt",
+ "Septembre",
+ "Octobre",
+ "Novembre",
+ "D\u00e9cembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "fr-rw",
+ "localeID": "fr_RW",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || i == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-sc.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-sc.js
index 80410913..4cbc7148 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-sc.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-sc.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"d\u00e9c."
],
+ "STANDALONEMONTH": [
+ "Janvier",
+ "F\u00e9vrier",
+ "Mars",
+ "Avril",
+ "Mai",
+ "Juin",
+ "Juillet",
+ "Ao\u00fbt",
+ "Septembre",
+ "Octobre",
+ "Novembre",
+ "D\u00e9cembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "fr-sc",
+ "localeID": "fr_SC",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || i == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-sn.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-sn.js
index 100a1025..89ba8ede 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-sn.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-sn.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"d\u00e9c."
],
+ "STANDALONEMONTH": [
+ "Janvier",
+ "F\u00e9vrier",
+ "Mars",
+ "Avril",
+ "Mai",
+ "Juin",
+ "Juillet",
+ "Ao\u00fbt",
+ "Septembre",
+ "Octobre",
+ "Novembre",
+ "D\u00e9cembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "fr-sn",
+ "localeID": "fr_SN",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || i == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-sy.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-sy.js
index 8bcfaf1a..d5517079 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-sy.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-sy.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"d\u00e9c."
],
+ "STANDALONEMONTH": [
+ "Janvier",
+ "F\u00e9vrier",
+ "Mars",
+ "Avril",
+ "Mai",
+ "Juin",
+ "Juillet",
+ "Ao\u00fbt",
+ "Septembre",
+ "Octobre",
+ "Novembre",
+ "D\u00e9cembre"
+ ],
"WEEKENDRANGE": [
4,
5
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "fr-sy",
+ "localeID": "fr_SY",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || i == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-td.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-td.js
index 2341ef76..09753eaa 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-td.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-td.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"d\u00e9c."
],
+ "STANDALONEMONTH": [
+ "Janvier",
+ "F\u00e9vrier",
+ "Mars",
+ "Avril",
+ "Mai",
+ "Juin",
+ "Juillet",
+ "Ao\u00fbt",
+ "Septembre",
+ "Octobre",
+ "Novembre",
+ "D\u00e9cembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "fr-td",
+ "localeID": "fr_TD",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || i == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-tg.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-tg.js
index a7c21313..ae0123f8 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-tg.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-tg.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"d\u00e9c."
],
+ "STANDALONEMONTH": [
+ "Janvier",
+ "F\u00e9vrier",
+ "Mars",
+ "Avril",
+ "Mai",
+ "Juin",
+ "Juillet",
+ "Ao\u00fbt",
+ "Septembre",
+ "Octobre",
+ "Novembre",
+ "D\u00e9cembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "fr-tg",
+ "localeID": "fr_TG",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || i == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-tn.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-tn.js
index 14a31151..0dec1f1b 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-tn.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-tn.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"d\u00e9c."
],
+ "STANDALONEMONTH": [
+ "Janvier",
+ "F\u00e9vrier",
+ "Mars",
+ "Avril",
+ "Mai",
+ "Juin",
+ "Juillet",
+ "Ao\u00fbt",
+ "Septembre",
+ "Octobre",
+ "Novembre",
+ "D\u00e9cembre"
+ ],
"WEEKENDRANGE": [
4,
5
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "fr-tn",
+ "localeID": "fr_TN",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || i == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-vu.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-vu.js
index d23d528c..6553fe4b 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-vu.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-vu.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"d\u00e9c."
],
+ "STANDALONEMONTH": [
+ "Janvier",
+ "F\u00e9vrier",
+ "Mars",
+ "Avril",
+ "Mai",
+ "Juin",
+ "Juillet",
+ "Ao\u00fbt",
+ "Septembre",
+ "Octobre",
+ "Novembre",
+ "D\u00e9cembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "fr-vu",
+ "localeID": "fr_VU",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || i == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-wf.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-wf.js
index bf5a357b..3b4d376b 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-wf.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-wf.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"d\u00e9c."
],
+ "STANDALONEMONTH": [
+ "Janvier",
+ "F\u00e9vrier",
+ "Mars",
+ "Avril",
+ "Mai",
+ "Juin",
+ "Juillet",
+ "Ao\u00fbt",
+ "Septembre",
+ "Octobre",
+ "Novembre",
+ "D\u00e9cembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "fr-wf",
+ "localeID": "fr_WF",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || i == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-yt.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-yt.js
index 265a0324..e4651cd4 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr-yt.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr-yt.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"d\u00e9c."
],
+ "STANDALONEMONTH": [
+ "Janvier",
+ "F\u00e9vrier",
+ "Mars",
+ "Avril",
+ "Mai",
+ "Juin",
+ "Juillet",
+ "Ao\u00fbt",
+ "Septembre",
+ "Octobre",
+ "Novembre",
+ "D\u00e9cembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "fr-yt",
+ "localeID": "fr_YT",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || i == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr.js
index f4d89ba2..895c9ac4 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fr.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fr.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"d\u00e9c."
],
+ "STANDALONEMONTH": [
+ "Janvier",
+ "F\u00e9vrier",
+ "Mars",
+ "Avril",
+ "Mai",
+ "Juin",
+ "Juillet",
+ "Ao\u00fbt",
+ "Septembre",
+ "Octobre",
+ "Novembre",
+ "D\u00e9cembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "fr",
+ "localeID": "fr",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || i == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fur-it.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fur-it.js
index 8f1e80b9..4b5472cc 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fur-it.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fur-it.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dic"
],
+ "STANDALONEMONTH": [
+ "Zen\u00e2r",
+ "Fevr\u00e2r",
+ "Mar\u00e7",
+ "Avr\u00eel",
+ "Mai",
+ "Jugn",
+ "Lui",
+ "Avost",
+ "Setembar",
+ "Otubar",
+ "Novembar",
+ "Dicembar"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "fur-it",
+ "localeID": "fur_IT",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fur.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fur.js
index ccb73300..f25f4409 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fur.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fur.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dic"
],
+ "STANDALONEMONTH": [
+ "Zen\u00e2r",
+ "Fevr\u00e2r",
+ "Mar\u00e7",
+ "Avr\u00eel",
+ "Mai",
+ "Jugn",
+ "Lui",
+ "Avost",
+ "Setembar",
+ "Otubar",
+ "Novembar",
+ "Dicembar"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "fur",
+ "localeID": "fur",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fy-nl.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fy-nl.js
index 234e983b..8b6214ee 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fy-nl.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fy-nl.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"nov.",
"des."
],
+ "STANDALONEMONTH": [
+ "jannewaris",
+ "febrewaris",
+ "maart",
+ "april",
+ "maaie",
+ "juny",
+ "july",
+ "augustus",
+ "septimber",
+ "oktober",
+ "novimber",
+ "desimber"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "fy-nl",
+ "localeID": "fy_NL",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fy.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fy.js
index 6bf7ba6b..06169fc5 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_fy.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_fy.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"nov.",
"des."
],
+ "STANDALONEMONTH": [
+ "jannewaris",
+ "febrewaris",
+ "maart",
+ "april",
+ "maaie",
+ "juny",
+ "july",
+ "augustus",
+ "septimber",
+ "oktober",
+ "novimber",
+ "desimber"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "fy",
+ "localeID": "fy",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ga-ie.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ga-ie.js
index 5740a197..13b91b7d 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ga-ie.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ga-ie.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"Samh",
"Noll"
],
+ "STANDALONEMONTH": [
+ "Ean\u00e1ir",
+ "Feabhra",
+ "M\u00e1rta",
+ "Aibre\u00e1n",
+ "Bealtaine",
+ "Meitheamh",
+ "I\u00fail",
+ "L\u00fanasa",
+ "Me\u00e1n F\u00f3mhair",
+ "Deireadh F\u00f3mhair",
+ "Samhain",
+ "Nollaig"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "ga-ie",
+ "localeID": "ga_IE",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } if (n == 2) { return PLURAL_CATEGORY.TWO; } if (n >= 3 && n <= 6) { return PLURAL_CATEGORY.FEW; } if (n >= 7 && n <= 10) { return PLURAL_CATEGORY.MANY; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ga.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ga.js
index 76f0d145..6aa830ad 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ga.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ga.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"Samh",
"Noll"
],
+ "STANDALONEMONTH": [
+ "Ean\u00e1ir",
+ "Feabhra",
+ "M\u00e1rta",
+ "Aibre\u00e1n",
+ "Bealtaine",
+ "Meitheamh",
+ "I\u00fail",
+ "L\u00fanasa",
+ "Me\u00e1n F\u00f3mhair",
+ "Deireadh F\u00f3mhair",
+ "Samhain",
+ "Nollaig"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "ga",
+ "localeID": "ga",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } if (n == 2) { return PLURAL_CATEGORY.TWO; } if (n >= 3 && n <= 6) { return PLURAL_CATEGORY.FEW; } if (n >= 7 && n <= 10) { return PLURAL_CATEGORY.MANY; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_gd-gb.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_gd-gb.js
index c245bc5d..732788c0 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_gd-gb.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_gd-gb.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Samh",
"D\u00f9bh"
],
+ "STANDALONEMONTH": [
+ "Am Faoilleach",
+ "An Gearran",
+ "Am M\u00e0rt",
+ "An Giblean",
+ "An C\u00e8itean",
+ "An t-\u00d2gmhios",
+ "An t-Iuchar",
+ "An L\u00f9nastal",
+ "An t-Sultain",
+ "An D\u00e0mhair",
+ "An t-Samhain",
+ "An D\u00f9bhlachd"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "gd-gb",
+ "localeID": "gd_GB",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_gd.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_gd.js
index 9fe0c4d8..e44083e7 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_gd.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_gd.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Samh",
"D\u00f9bh"
],
+ "STANDALONEMONTH": [
+ "Am Faoilleach",
+ "An Gearran",
+ "Am M\u00e0rt",
+ "An Giblean",
+ "An C\u00e8itean",
+ "An t-\u00d2gmhios",
+ "An t-Iuchar",
+ "An L\u00f9nastal",
+ "An t-Sultain",
+ "An D\u00e0mhair",
+ "An t-Samhain",
+ "An D\u00f9bhlachd"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "gd",
+ "localeID": "gd",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_gl-es.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_gl-es.js
index fff9928c..9c68a404 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_gl-es.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_gl-es.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"nov",
"dec"
],
+ "STANDALONEMONTH": [
+ "Xaneiro",
+ "Febreiro",
+ "Marzo",
+ "Abril",
+ "Maio",
+ "Xu\u00f1o",
+ "Xullo",
+ "Agosto",
+ "Setembro",
+ "Outubro",
+ "Novembro",
+ "Decembro"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "gl-es",
+ "localeID": "gl_ES",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_gl.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_gl.js
index 9223c276..966ef01c 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_gl.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_gl.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"nov",
"dec"
],
+ "STANDALONEMONTH": [
+ "Xaneiro",
+ "Febreiro",
+ "Marzo",
+ "Abril",
+ "Maio",
+ "Xu\u00f1o",
+ "Xullo",
+ "Agosto",
+ "Setembro",
+ "Outubro",
+ "Novembro",
+ "Decembro"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "gl",
+ "localeID": "gl",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_gsw-ch.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_gsw-ch.js
index 54278de0..bc494c81 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_gsw-ch.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_gsw-ch.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"Nov",
"Dez"
],
+ "STANDALONEMONTH": [
+ "Januar",
+ "Februar",
+ "M\u00e4rz",
+ "April",
+ "Mai",
+ "Juni",
+ "Juli",
+ "Auguscht",
+ "Sept\u00e4mber",
+ "Oktoober",
+ "Nov\u00e4mber",
+ "Dez\u00e4mber"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "gsw-ch",
+ "localeID": "gsw_CH",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_gsw-fr.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_gsw-fr.js
index 979ced7a..253ae294 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_gsw-fr.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_gsw-fr.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"Nov",
"Dez"
],
+ "STANDALONEMONTH": [
+ "Januar",
+ "Februar",
+ "M\u00e4rz",
+ "April",
+ "Mai",
+ "Juni",
+ "Juli",
+ "Auguscht",
+ "Sept\u00e4mber",
+ "Oktoober",
+ "Nov\u00e4mber",
+ "Dez\u00e4mber"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "gsw-fr",
+ "localeID": "gsw_FR",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_gsw-li.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_gsw-li.js
index c1a5aebc..615fafd0 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_gsw-li.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_gsw-li.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"Nov",
"Dez"
],
+ "STANDALONEMONTH": [
+ "Januar",
+ "Februar",
+ "M\u00e4rz",
+ "April",
+ "Mai",
+ "Juni",
+ "Juli",
+ "Auguscht",
+ "Sept\u00e4mber",
+ "Oktoober",
+ "Nov\u00e4mber",
+ "Dez\u00e4mber"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "gsw-li",
+ "localeID": "gsw_LI",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_gsw.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_gsw.js
index 93ef2cd0..13c517de 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_gsw.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_gsw.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"Nov",
"Dez"
],
+ "STANDALONEMONTH": [
+ "Januar",
+ "Februar",
+ "M\u00e4rz",
+ "April",
+ "Mai",
+ "Juni",
+ "Juli",
+ "Auguscht",
+ "Sept\u00e4mber",
+ "Oktoober",
+ "Nov\u00e4mber",
+ "Dez\u00e4mber"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "gsw",
+ "localeID": "gsw",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_gu-in.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_gu-in.js
index db7daba8..ecc7a448 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_gu-in.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_gu-in.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u0aa8\u0ab5\u0ac7",
"\u0aa1\u0abf\u0ab8\u0ac7"
],
+ "STANDALONEMONTH": [
+ "\u0a9c\u0abe\u0aa8\u0acd\u0aaf\u0ac1\u0a86\u0ab0\u0ac0",
+ "\u0aab\u0ac7\u0aac\u0acd\u0ab0\u0ac1\u0a86\u0ab0\u0ac0",
+ "\u0aae\u0abe\u0ab0\u0acd\u0a9a",
+ "\u0a8f\u0aaa\u0acd\u0ab0\u0abf\u0ab2",
+ "\u0aae\u0ac7",
+ "\u0a9c\u0ac2\u0aa8",
+ "\u0a9c\u0ac1\u0ab2\u0abe\u0a88",
+ "\u0a91\u0a97\u0ab8\u0acd\u0a9f",
+ "\u0ab8\u0aaa\u0acd\u0a9f\u0ac7\u0aae\u0acd\u0aac\u0ab0",
+ "\u0a91\u0a95\u0acd\u0a9f\u0acb\u0aac\u0ab0",
+ "\u0aa8\u0ab5\u0ac7\u0aae\u0acd\u0aac\u0ab0",
+ "\u0aa1\u0abf\u0ab8\u0ac7\u0aae\u0acd\u0aac\u0ab0"
+ ],
"WEEKENDRANGE": [
6,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "gu-in",
+ "localeID": "gu_IN",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_gu.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_gu.js
index a66e2b54..3804acd3 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_gu.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_gu.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u0aa8\u0ab5\u0ac7",
"\u0aa1\u0abf\u0ab8\u0ac7"
],
+ "STANDALONEMONTH": [
+ "\u0a9c\u0abe\u0aa8\u0acd\u0aaf\u0ac1\u0a86\u0ab0\u0ac0",
+ "\u0aab\u0ac7\u0aac\u0acd\u0ab0\u0ac1\u0a86\u0ab0\u0ac0",
+ "\u0aae\u0abe\u0ab0\u0acd\u0a9a",
+ "\u0a8f\u0aaa\u0acd\u0ab0\u0abf\u0ab2",
+ "\u0aae\u0ac7",
+ "\u0a9c\u0ac2\u0aa8",
+ "\u0a9c\u0ac1\u0ab2\u0abe\u0a88",
+ "\u0a91\u0a97\u0ab8\u0acd\u0a9f",
+ "\u0ab8\u0aaa\u0acd\u0a9f\u0ac7\u0aae\u0acd\u0aac\u0ab0",
+ "\u0a91\u0a95\u0acd\u0a9f\u0acb\u0aac\u0ab0",
+ "\u0aa8\u0ab5\u0ac7\u0aae\u0acd\u0aac\u0ab0",
+ "\u0aa1\u0abf\u0ab8\u0ac7\u0aae\u0acd\u0aac\u0ab0"
+ ],
"WEEKENDRANGE": [
6,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "gu",
+ "localeID": "gu",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_guz-ke.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_guz-ke.js
index 675efe95..67ed8c6a 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_guz-ke.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_guz-ke.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nob",
"Dis"
],
+ "STANDALONEMONTH": [
+ "Chanuari",
+ "Feburari",
+ "Machi",
+ "Apiriri",
+ "Mei",
+ "Juni",
+ "Chulai",
+ "Agosti",
+ "Septemba",
+ "Okitoba",
+ "Nobemba",
+ "Disemba"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "guz-ke",
+ "localeID": "guz_KE",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_guz.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_guz.js
index 9ce1ce3f..8c2b1e69 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_guz.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_guz.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nob",
"Dis"
],
+ "STANDALONEMONTH": [
+ "Chanuari",
+ "Feburari",
+ "Machi",
+ "Apiriri",
+ "Mei",
+ "Juni",
+ "Chulai",
+ "Agosti",
+ "Septemba",
+ "Okitoba",
+ "Nobemba",
+ "Disemba"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "guz",
+ "localeID": "guz",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_gv-im.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_gv-im.js
index aca51df1..9c38f7aa 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_gv-im.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_gv-im.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"M.Houney",
"M.Nollick"
],
+ "STANDALONEMONTH": [
+ "Jerrey-geuree",
+ "Toshiaght-arree",
+ "Mayrnt",
+ "Averil",
+ "Boaldyn",
+ "Mean-souree",
+ "Jerrey-souree",
+ "Luanistyn",
+ "Mean-fouyir",
+ "Jerrey-fouyir",
+ "Mee Houney",
+ "Mee ny Nollick"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "gv-im",
+ "localeID": "gv_IM",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_gv.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_gv.js
index 0f99b6a4..fefc641f 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_gv.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_gv.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"M.Houney",
"M.Nollick"
],
+ "STANDALONEMONTH": [
+ "Jerrey-geuree",
+ "Toshiaght-arree",
+ "Mayrnt",
+ "Averil",
+ "Boaldyn",
+ "Mean-souree",
+ "Jerrey-souree",
+ "Luanistyn",
+ "Mean-fouyir",
+ "Jerrey-fouyir",
+ "Mee Houney",
+ "Mee ny Nollick"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "gv",
+ "localeID": "gv",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ha-latn-gh.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ha-latn-gh.js
index c5209311..61edae72 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ha-latn-gh.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ha-latn-gh.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nuw",
"Dis"
],
+ "STANDALONEMONTH": [
+ "Janairu",
+ "Faburairu",
+ "Maris",
+ "Afirilu",
+ "Mayu",
+ "Yuni",
+ "Yuli",
+ "Agusta",
+ "Satumba",
+ "Oktoba",
+ "Nuwamba",
+ "Disamba"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ha-latn-gh",
+ "localeID": "ha_Latn_GH",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ha-latn-ne.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ha-latn-ne.js
index f4b280c5..05debb8a 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ha-latn-ne.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ha-latn-ne.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nuw",
"Dis"
],
+ "STANDALONEMONTH": [
+ "Janairu",
+ "Faburairu",
+ "Maris",
+ "Afirilu",
+ "Mayu",
+ "Yuni",
+ "Yuli",
+ "Agusta",
+ "Satumba",
+ "Oktoba",
+ "Nuwamba",
+ "Disamba"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ha-latn-ne",
+ "localeID": "ha_Latn_NE",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ha-latn-ng.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ha-latn-ng.js
index 81af53eb..28397089 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ha-latn-ng.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ha-latn-ng.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nuw",
"Dis"
],
+ "STANDALONEMONTH": [
+ "Janairu",
+ "Faburairu",
+ "Maris",
+ "Afirilu",
+ "Mayu",
+ "Yuni",
+ "Yuli",
+ "Agusta",
+ "Satumba",
+ "Oktoba",
+ "Nuwamba",
+ "Disamba"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ha-latn-ng",
+ "localeID": "ha_Latn_NG",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ha-latn.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ha-latn.js
index 615939cd..92666a20 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ha-latn.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ha-latn.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nuw",
"Dis"
],
+ "STANDALONEMONTH": [
+ "Janairu",
+ "Faburairu",
+ "Maris",
+ "Afirilu",
+ "Mayu",
+ "Yuni",
+ "Yuli",
+ "Agusta",
+ "Satumba",
+ "Oktoba",
+ "Nuwamba",
+ "Disamba"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ha-latn",
+ "localeID": "ha_Latn",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ha.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ha.js
index 0f36507e..1550a070 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ha.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ha.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nuw",
"Dis"
],
+ "STANDALONEMONTH": [
+ "Janairu",
+ "Faburairu",
+ "Maris",
+ "Afirilu",
+ "Mayu",
+ "Yuni",
+ "Yuli",
+ "Agusta",
+ "Satumba",
+ "Oktoba",
+ "Nuwamba",
+ "Disamba"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ha",
+ "localeID": "ha",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_haw-us.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_haw-us.js
index 4091590e..2dab59b5 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_haw-us.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_haw-us.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"Now.",
"Kek."
],
+ "STANDALONEMONTH": [
+ "Ianuali",
+ "Pepeluali",
+ "Malaki",
+ "\u02bbApelila",
+ "Mei",
+ "Iune",
+ "Iulai",
+ "\u02bbAukake",
+ "Kepakemapa",
+ "\u02bbOkakopa",
+ "Nowemapa",
+ "Kekemapa"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "haw-us",
+ "localeID": "haw_US",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_haw.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_haw.js
index a1253a4a..c1cd77e6 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_haw.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_haw.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"Now.",
"Kek."
],
+ "STANDALONEMONTH": [
+ "Ianuali",
+ "Pepeluali",
+ "Malaki",
+ "\u02bbApelila",
+ "Mei",
+ "Iune",
+ "Iulai",
+ "\u02bbAukake",
+ "Kepakemapa",
+ "\u02bbOkakopa",
+ "Nowemapa",
+ "Kekemapa"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "haw",
+ "localeID": "haw",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_he-il.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_he-il.js
index 7a05b986..df764adb 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_he-il.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_he-il.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u05e0\u05d5\u05d1\u05f3",
"\u05d3\u05e6\u05de\u05f3"
],
+ "STANDALONEMONTH": [
+ "\u05d9\u05e0\u05d5\u05d0\u05e8",
+ "\u05e4\u05d1\u05e8\u05d5\u05d0\u05e8",
+ "\u05de\u05e8\u05e5",
+ "\u05d0\u05e4\u05e8\u05d9\u05dc",
+ "\u05de\u05d0\u05d9",
+ "\u05d9\u05d5\u05e0\u05d9",
+ "\u05d9\u05d5\u05dc\u05d9",
+ "\u05d0\u05d5\u05d2\u05d5\u05e1\u05d8",
+ "\u05e1\u05e4\u05d8\u05de\u05d1\u05e8",
+ "\u05d0\u05d5\u05e7\u05d8\u05d5\u05d1\u05e8",
+ "\u05e0\u05d5\u05d1\u05de\u05d1\u05e8",
+ "\u05d3\u05e6\u05de\u05d1\u05e8"
+ ],
"WEEKENDRANGE": [
4,
5
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "he-il",
+ "localeID": "he_IL",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } if (i == 2 && vf.v == 0) { return PLURAL_CATEGORY.TWO; } if (vf.v == 0 && (n < 0 || n > 10) && n % 10 == 0) { return PLURAL_CATEGORY.MANY; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_he.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_he.js
index 2ef1d3c2..9978dc77 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_he.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_he.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u05e0\u05d5\u05d1\u05f3",
"\u05d3\u05e6\u05de\u05f3"
],
+ "STANDALONEMONTH": [
+ "\u05d9\u05e0\u05d5\u05d0\u05e8",
+ "\u05e4\u05d1\u05e8\u05d5\u05d0\u05e8",
+ "\u05de\u05e8\u05e5",
+ "\u05d0\u05e4\u05e8\u05d9\u05dc",
+ "\u05de\u05d0\u05d9",
+ "\u05d9\u05d5\u05e0\u05d9",
+ "\u05d9\u05d5\u05dc\u05d9",
+ "\u05d0\u05d5\u05d2\u05d5\u05e1\u05d8",
+ "\u05e1\u05e4\u05d8\u05de\u05d1\u05e8",
+ "\u05d0\u05d5\u05e7\u05d8\u05d5\u05d1\u05e8",
+ "\u05e0\u05d5\u05d1\u05de\u05d1\u05e8",
+ "\u05d3\u05e6\u05de\u05d1\u05e8"
+ ],
"WEEKENDRANGE": [
4,
5
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "he",
+ "localeID": "he",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } if (i == 2 && vf.v == 0) { return PLURAL_CATEGORY.TWO; } if (vf.v == 0 && (n < 0 || n > 10) && n % 10 == 0) { return PLURAL_CATEGORY.MANY; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_hi-in.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_hi-in.js
index febae399..f6117003 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_hi-in.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_hi-in.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u0928\u0935\u0970",
"\u0926\u093f\u0938\u0970"
],
+ "STANDALONEMONTH": [
+ "\u091c\u0928\u0935\u0930\u0940",
+ "\u092b\u093c\u0930\u0935\u0930\u0940",
+ "\u092e\u093e\u0930\u094d\u091a",
+ "\u0905\u092a\u094d\u0930\u0948\u0932",
+ "\u092e\u0908",
+ "\u091c\u0942\u0928",
+ "\u091c\u0941\u0932\u093e\u0908",
+ "\u0905\u0917\u0938\u094d\u0924",
+ "\u0938\u093f\u0924\u0902\u092c\u0930",
+ "\u0905\u0915\u094d\u0924\u0942\u092c\u0930",
+ "\u0928\u0935\u0902\u092c\u0930",
+ "\u0926\u093f\u0938\u0902\u092c\u0930"
+ ],
"WEEKENDRANGE": [
6,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "hi-in",
+ "localeID": "hi_IN",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_hi.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_hi.js
index e5c34123..246678f1 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_hi.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_hi.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u0928\u0935\u0970",
"\u0926\u093f\u0938\u0970"
],
+ "STANDALONEMONTH": [
+ "\u091c\u0928\u0935\u0930\u0940",
+ "\u092b\u093c\u0930\u0935\u0930\u0940",
+ "\u092e\u093e\u0930\u094d\u091a",
+ "\u0905\u092a\u094d\u0930\u0948\u0932",
+ "\u092e\u0908",
+ "\u091c\u0942\u0928",
+ "\u091c\u0941\u0932\u093e\u0908",
+ "\u0905\u0917\u0938\u094d\u0924",
+ "\u0938\u093f\u0924\u0902\u092c\u0930",
+ "\u0905\u0915\u094d\u0924\u0942\u092c\u0930",
+ "\u0928\u0935\u0902\u092c\u0930",
+ "\u0926\u093f\u0938\u0902\u092c\u0930"
+ ],
"WEEKENDRANGE": [
6,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "hi",
+ "localeID": "hi",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_hr-ba.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_hr-ba.js
index cb70c76e..a01047fd 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_hr-ba.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_hr-ba.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"stu",
"pro"
],
+ "STANDALONEMONTH": [
+ "sije\u010danj",
+ "velja\u010da",
+ "o\u017eujak",
+ "travanj",
+ "svibanj",
+ "lipanj",
+ "srpanj",
+ "kolovoz",
+ "rujan",
+ "listopad",
+ "studeni",
+ "prosinac"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "hr-ba",
+ "localeID": "hr_BA",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (vf.v == 0 && i % 10 == 1 && i % 100 != 11 || vf.f % 10 == 1 && vf.f % 100 != 11) { return PLURAL_CATEGORY.ONE; } if (vf.v == 0 && i % 10 >= 2 && i % 10 <= 4 && (i % 100 < 12 || i % 100 > 14) || vf.f % 10 >= 2 && vf.f % 10 <= 4 && (vf.f % 100 < 12 || vf.f % 100 > 14)) { return PLURAL_CATEGORY.FEW; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_hr-hr.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_hr-hr.js
index 248734f6..31f0059a 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_hr-hr.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_hr-hr.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"stu",
"pro"
],
+ "STANDALONEMONTH": [
+ "sije\u010danj",
+ "velja\u010da",
+ "o\u017eujak",
+ "travanj",
+ "svibanj",
+ "lipanj",
+ "srpanj",
+ "kolovoz",
+ "rujan",
+ "listopad",
+ "studeni",
+ "prosinac"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "hr-hr",
+ "localeID": "hr_HR",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (vf.v == 0 && i % 10 == 1 && i % 100 != 11 || vf.f % 10 == 1 && vf.f % 100 != 11) { return PLURAL_CATEGORY.ONE; } if (vf.v == 0 && i % 10 >= 2 && i % 10 <= 4 && (i % 100 < 12 || i % 100 > 14) || vf.f % 10 >= 2 && vf.f % 10 <= 4 && (vf.f % 100 < 12 || vf.f % 100 > 14)) { return PLURAL_CATEGORY.FEW; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_hr.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_hr.js
index 4f6f1c14..d56c7706 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_hr.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_hr.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"stu",
"pro"
],
+ "STANDALONEMONTH": [
+ "sije\u010danj",
+ "velja\u010da",
+ "o\u017eujak",
+ "travanj",
+ "svibanj",
+ "lipanj",
+ "srpanj",
+ "kolovoz",
+ "rujan",
+ "listopad",
+ "studeni",
+ "prosinac"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "hr",
+ "localeID": "hr",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (vf.v == 0 && i % 10 == 1 && i % 100 != 11 || vf.f % 10 == 1 && vf.f % 100 != 11) { return PLURAL_CATEGORY.ONE; } if (vf.v == 0 && i % 10 >= 2 && i % 10 <= 4 && (i % 100 < 12 || i % 100 > 14) || vf.f % 10 >= 2 && vf.f % 10 <= 4 && (vf.f % 100 < 12 || vf.f % 100 > 14)) { return PLURAL_CATEGORY.FEW; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_hsb-de.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_hsb-de.js
index f432ed94..5e5ff8dd 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_hsb-de.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_hsb-de.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"now.",
"dec."
],
+ "STANDALONEMONTH": [
+ "januar",
+ "februar",
+ "m\u011brc",
+ "apryl",
+ "meja",
+ "junij",
+ "julij",
+ "awgust",
+ "september",
+ "oktober",
+ "nowember",
+ "december"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "hsb-de",
+ "localeID": "hsb_DE",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_hsb.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_hsb.js
index c11ebc78..513d7010 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_hsb.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_hsb.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"now.",
"dec."
],
+ "STANDALONEMONTH": [
+ "januar",
+ "februar",
+ "m\u011brc",
+ "apryl",
+ "meja",
+ "junij",
+ "julij",
+ "awgust",
+ "september",
+ "oktober",
+ "nowember",
+ "december"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "hsb",
+ "localeID": "hsb",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_hu-hu.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_hu-hu.js
index 10a3bbc5..9d0bd6da 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_hu-hu.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_hu-hu.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"dec."
],
+ "STANDALONEMONTH": [
+ "janu\u00e1r",
+ "febru\u00e1r",
+ "m\u00e1rcius",
+ "\u00e1prilis",
+ "m\u00e1jus",
+ "j\u00fanius",
+ "j\u00falius",
+ "augusztus",
+ "szeptember",
+ "okt\u00f3ber",
+ "november",
+ "december"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "hu-hu",
+ "localeID": "hu_HU",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_hu.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_hu.js
index 1e61f045..6fe1ec1e 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_hu.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_hu.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"dec."
],
+ "STANDALONEMONTH": [
+ "janu\u00e1r",
+ "febru\u00e1r",
+ "m\u00e1rcius",
+ "\u00e1prilis",
+ "m\u00e1jus",
+ "j\u00fanius",
+ "j\u00falius",
+ "augusztus",
+ "szeptember",
+ "okt\u00f3ber",
+ "november",
+ "december"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "hu",
+ "localeID": "hu",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_hy-am.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_hy-am.js
index 17afd276..a11f55a7 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_hy-am.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_hy-am.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u0576\u0578\u0575",
"\u0564\u0565\u056f"
],
+ "STANDALONEMONTH": [
+ "\u0570\u0578\u0582\u0576\u057e\u0561\u0580",
+ "\u0583\u0565\u057f\u0580\u057e\u0561\u0580",
+ "\u0574\u0561\u0580\u057f",
+ "\u0561\u057a\u0580\u056b\u056c",
+ "\u0574\u0561\u0575\u056b\u057d",
+ "\u0570\u0578\u0582\u0576\u056b\u057d",
+ "\u0570\u0578\u0582\u056c\u056b\u057d",
+ "\u0585\u0563\u0578\u057d\u057f\u0578\u057d",
+ "\u057d\u0565\u057a\u057f\u0565\u0574\u0562\u0565\u0580",
+ "\u0570\u0578\u056f\u057f\u0565\u0574\u0562\u0565\u0580",
+ "\u0576\u0578\u0575\u0565\u0574\u0562\u0565\u0580",
+ "\u0564\u0565\u056f\u057f\u0565\u0574\u0562\u0565\u0580"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "hy-am",
+ "localeID": "hy_AM",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || i == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_hy.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_hy.js
index c54fe770..8e493394 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_hy.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_hy.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u0576\u0578\u0575",
"\u0564\u0565\u056f"
],
+ "STANDALONEMONTH": [
+ "\u0570\u0578\u0582\u0576\u057e\u0561\u0580",
+ "\u0583\u0565\u057f\u0580\u057e\u0561\u0580",
+ "\u0574\u0561\u0580\u057f",
+ "\u0561\u057a\u0580\u056b\u056c",
+ "\u0574\u0561\u0575\u056b\u057d",
+ "\u0570\u0578\u0582\u0576\u056b\u057d",
+ "\u0570\u0578\u0582\u056c\u056b\u057d",
+ "\u0585\u0563\u0578\u057d\u057f\u0578\u057d",
+ "\u057d\u0565\u057a\u057f\u0565\u0574\u0562\u0565\u0580",
+ "\u0570\u0578\u056f\u057f\u0565\u0574\u0562\u0565\u0580",
+ "\u0576\u0578\u0575\u0565\u0574\u0562\u0565\u0580",
+ "\u0564\u0565\u056f\u057f\u0565\u0574\u0562\u0565\u0580"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "hy",
+ "localeID": "hy",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || i == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ia-fr.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ia-fr.js
index f7b636b3..f7b636b3 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ia-fr.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ia-fr.js
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ia.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ia.js
index 38ead226..38ead226 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ia.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ia.js
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_id-id.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_id-id.js
index 8324dce6..021ede17 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_id-id.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_id-id.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"Nov",
"Des"
],
+ "STANDALONEMONTH": [
+ "Januari",
+ "Februari",
+ "Maret",
+ "April",
+ "Mei",
+ "Juni",
+ "Juli",
+ "Agustus",
+ "September",
+ "Oktober",
+ "November",
+ "Desember"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "id-id",
+ "localeID": "id_ID",
"pluralCat": function(n, opt_precision) { return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_id.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_id.js
index b91f32dd..09a2c51b 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_id.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_id.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"Nov",
"Des"
],
+ "STANDALONEMONTH": [
+ "Januari",
+ "Februari",
+ "Maret",
+ "April",
+ "Mei",
+ "Juni",
+ "Juli",
+ "Agustus",
+ "September",
+ "Oktober",
+ "November",
+ "Desember"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "id",
+ "localeID": "id",
"pluralCat": function(n, opt_precision) { return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ig-ng.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ig-ng.js
index 0515635b..c6691f9f 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ig-ng.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ig-ng.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dis"
],
+ "STANDALONEMONTH": [
+ "Jen\u1ee5war\u1ecb",
+ "Febr\u1ee5war\u1ecb",
+ "Maach\u1ecb",
+ "Eprel",
+ "Mee",
+ "Juun",
+ "Jula\u1ecb",
+ "\u1eccg\u1ecd\u1ecdst",
+ "Septemba",
+ "\u1eccktoba",
+ "Novemba",
+ "Disemba"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ig-ng",
+ "localeID": "ig_NG",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ig.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ig.js
index 2c9cfe40..040376f6 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ig.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ig.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dis"
],
+ "STANDALONEMONTH": [
+ "Jen\u1ee5war\u1ecb",
+ "Febr\u1ee5war\u1ecb",
+ "Maach\u1ecb",
+ "Eprel",
+ "Mee",
+ "Juun",
+ "Jula\u1ecb",
+ "\u1eccg\u1ecd\u1ecdst",
+ "Septemba",
+ "\u1eccktoba",
+ "Novemba",
+ "Disemba"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ig",
+ "localeID": "ig",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ii-cn.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ii-cn.js
index 5cddd202..a4d6c3b9 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ii-cn.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ii-cn.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"11",
"12"
],
+ "STANDALONEMONTH": [
+ "\ua2cd\ua1aa",
+ "\ua44d\ua1aa",
+ "\ua315\ua1aa",
+ "\ua1d6\ua1aa",
+ "\ua26c\ua1aa",
+ "\ua0d8\ua1aa",
+ "\ua3c3\ua1aa",
+ "\ua246\ua1aa",
+ "\ua22c\ua1aa",
+ "\ua2b0\ua1aa",
+ "\ua2b0\ua2aa\ua1aa",
+ "\ua2b0\ua44b\ua1aa"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ii-cn",
+ "localeID": "ii_CN",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ii.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ii.js
index 2b4f22f8..3929d885 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ii.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ii.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"11",
"12"
],
+ "STANDALONEMONTH": [
+ "\ua2cd\ua1aa",
+ "\ua44d\ua1aa",
+ "\ua315\ua1aa",
+ "\ua1d6\ua1aa",
+ "\ua26c\ua1aa",
+ "\ua0d8\ua1aa",
+ "\ua3c3\ua1aa",
+ "\ua246\ua1aa",
+ "\ua22c\ua1aa",
+ "\ua2b0\ua1aa",
+ "\ua2b0\ua2aa\ua1aa",
+ "\ua2b0\ua44b\ua1aa"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ii",
+ "localeID": "ii",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_in.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_in.js
index f9d523ae..44bb3c9d 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_in.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_in.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"Nov",
"Des"
],
+ "STANDALONEMONTH": [
+ "Januari",
+ "Februari",
+ "Maret",
+ "April",
+ "Mei",
+ "Juni",
+ "Juli",
+ "Agustus",
+ "September",
+ "Oktober",
+ "November",
+ "Desember"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "in",
+ "localeID": "in",
"pluralCat": function(n, opt_precision) { return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_is-is.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_is-is.js
index b38bd19f..a8266d1e 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_is-is.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_is-is.js
@@ -93,6 +93,20 @@ $provide.value("$locale", {
"n\u00f3v.",
"des."
],
+ "STANDALONEMONTH": [
+ "jan\u00faar",
+ "febr\u00faar",
+ "mars",
+ "apr\u00edl",
+ "ma\u00ed",
+ "j\u00fan\u00ed",
+ "j\u00fal\u00ed",
+ "\u00e1g\u00fast",
+ "september",
+ "okt\u00f3ber",
+ "n\u00f3vember",
+ "desember"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -136,6 +150,7 @@ $provide.value("$locale", {
]
},
"id": "is-is",
+ "localeID": "is_IS",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); var wt = getWT(vf.v, vf.f); if (wt.t == 0 && i % 10 == 1 && i % 100 != 11 || wt.t != 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_is.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_is.js
index 5b3ad431..8a602c2f 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_is.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_is.js
@@ -93,6 +93,20 @@ $provide.value("$locale", {
"n\u00f3v.",
"des."
],
+ "STANDALONEMONTH": [
+ "jan\u00faar",
+ "febr\u00faar",
+ "mars",
+ "apr\u00edl",
+ "ma\u00ed",
+ "j\u00fan\u00ed",
+ "j\u00fal\u00ed",
+ "\u00e1g\u00fast",
+ "september",
+ "okt\u00f3ber",
+ "n\u00f3vember",
+ "desember"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -136,6 +150,7 @@ $provide.value("$locale", {
]
},
"id": "is",
+ "localeID": "is",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); var wt = getWT(vf.v, vf.f); if (wt.t == 0 && i % 10 == 1 && i % 100 != 11 || wt.t != 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_it-ch.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_it-ch.js
index 1adbbe48..7c827487 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_it-ch.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_it-ch.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"nov",
"dic"
],
+ "STANDALONEMONTH": [
+ "Gennaio",
+ "Febbraio",
+ "Marzo",
+ "Aprile",
+ "Maggio",
+ "Giugno",
+ "Luglio",
+ "Agosto",
+ "Settembre",
+ "Ottobre",
+ "Novembre",
+ "Dicembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "it-ch",
+ "localeID": "it_CH",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_it-it.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_it-it.js
index f02cc459..cc68abea 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_it-it.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_it-it.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"nov",
"dic"
],
+ "STANDALONEMONTH": [
+ "Gennaio",
+ "Febbraio",
+ "Marzo",
+ "Aprile",
+ "Maggio",
+ "Giugno",
+ "Luglio",
+ "Agosto",
+ "Settembre",
+ "Ottobre",
+ "Novembre",
+ "Dicembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "it-it",
+ "localeID": "it_IT",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_it-sm.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_it-sm.js
index 5ee2ce18..49fe7c19 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_it-sm.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_it-sm.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"nov",
"dic"
],
+ "STANDALONEMONTH": [
+ "Gennaio",
+ "Febbraio",
+ "Marzo",
+ "Aprile",
+ "Maggio",
+ "Giugno",
+ "Luglio",
+ "Agosto",
+ "Settembre",
+ "Ottobre",
+ "Novembre",
+ "Dicembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "it-sm",
+ "localeID": "it_SM",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_it.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_it.js
index b4b5e4e5..9b6a662f 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_it.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_it.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"nov",
"dic"
],
+ "STANDALONEMONTH": [
+ "Gennaio",
+ "Febbraio",
+ "Marzo",
+ "Aprile",
+ "Maggio",
+ "Giugno",
+ "Luglio",
+ "Agosto",
+ "Settembre",
+ "Ottobre",
+ "Novembre",
+ "Dicembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "it",
+ "localeID": "it",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_iw.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_iw.js
index 02622c14..d4e5cfa4 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_iw.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_iw.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u05e0\u05d5\u05d1\u05f3",
"\u05d3\u05e6\u05de\u05f3"
],
+ "STANDALONEMONTH": [
+ "\u05d9\u05e0\u05d5\u05d0\u05e8",
+ "\u05e4\u05d1\u05e8\u05d5\u05d0\u05e8",
+ "\u05de\u05e8\u05e5",
+ "\u05d0\u05e4\u05e8\u05d9\u05dc",
+ "\u05de\u05d0\u05d9",
+ "\u05d9\u05d5\u05e0\u05d9",
+ "\u05d9\u05d5\u05dc\u05d9",
+ "\u05d0\u05d5\u05d2\u05d5\u05e1\u05d8",
+ "\u05e1\u05e4\u05d8\u05de\u05d1\u05e8",
+ "\u05d0\u05d5\u05e7\u05d8\u05d5\u05d1\u05e8",
+ "\u05e0\u05d5\u05d1\u05de\u05d1\u05e8",
+ "\u05d3\u05e6\u05de\u05d1\u05e8"
+ ],
"WEEKENDRANGE": [
4,
5
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "iw",
+ "localeID": "iw",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } if (i == 2 && vf.v == 0) { return PLURAL_CATEGORY.TWO; } if (vf.v == 0 && (n < 0 || n > 10) && n % 10 == 0) { return PLURAL_CATEGORY.MANY; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ja-jp.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ja-jp.js
index 78cd0694..daaede0d 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ja-jp.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ja-jp.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"11\u6708",
"12\u6708"
],
+ "STANDALONEMONTH": [
+ "1\u6708",
+ "2\u6708",
+ "3\u6708",
+ "4\u6708",
+ "5\u6708",
+ "6\u6708",
+ "7\u6708",
+ "8\u6708",
+ "9\u6708",
+ "10\u6708",
+ "11\u6708",
+ "12\u6708"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "ja-jp",
+ "localeID": "ja_JP",
"pluralCat": function(n, opt_precision) { return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ja.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ja.js
index 0011b5cc..f528314e 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ja.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ja.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"11\u6708",
"12\u6708"
],
+ "STANDALONEMONTH": [
+ "1\u6708",
+ "2\u6708",
+ "3\u6708",
+ "4\u6708",
+ "5\u6708",
+ "6\u6708",
+ "7\u6708",
+ "8\u6708",
+ "9\u6708",
+ "10\u6708",
+ "11\u6708",
+ "12\u6708"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "ja",
+ "localeID": "ja",
"pluralCat": function(n, opt_precision) { return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_jgo-cm.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_jgo-cm.js
index ae05a5a7..0365a685 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_jgo-cm.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_jgo-cm.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"P\u025bsa\u014b Nts\u0254\u030cpm\u0254\u0301",
"P\u025bsa\u014b Nts\u0254\u030cpp\u00e1"
],
+ "STANDALONEMONTH": [
+ "Ndu\u014bmbi Sa\u014b",
+ "P\u025bsa\u014b P\u025b\u0301p\u00e1",
+ "P\u025bsa\u014b P\u025b\u0301t\u00e1t",
+ "P\u025bsa\u014b P\u025b\u0301n\u025b\u0301kwa",
+ "P\u025bsa\u014b Pataa",
+ "P\u025bsa\u014b P\u025b\u0301n\u025b\u0301nt\u00fak\u00fa",
+ "P\u025bsa\u014b Saamb\u00e1",
+ "P\u025bsa\u014b P\u025b\u0301n\u025b\u0301f\u0254m",
+ "P\u025bsa\u014b P\u025b\u0301n\u025b\u0301pf\u00fa\ua78b\u00fa",
+ "P\u025bsa\u014b N\u025bg\u025b\u0301m",
+ "P\u025bsa\u014b Nts\u0254\u030cpm\u0254\u0301",
+ "P\u025bsa\u014b Nts\u0254\u030cpp\u00e1"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "jgo-cm",
+ "localeID": "jgo_CM",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_jgo.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_jgo.js
index f27c22c3..a50b9b83 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_jgo.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_jgo.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"P\u025bsa\u014b Nts\u0254\u030cpm\u0254\u0301",
"P\u025bsa\u014b Nts\u0254\u030cpp\u00e1"
],
+ "STANDALONEMONTH": [
+ "Ndu\u014bmbi Sa\u014b",
+ "P\u025bsa\u014b P\u025b\u0301p\u00e1",
+ "P\u025bsa\u014b P\u025b\u0301t\u00e1t",
+ "P\u025bsa\u014b P\u025b\u0301n\u025b\u0301kwa",
+ "P\u025bsa\u014b Pataa",
+ "P\u025bsa\u014b P\u025b\u0301n\u025b\u0301nt\u00fak\u00fa",
+ "P\u025bsa\u014b Saamb\u00e1",
+ "P\u025bsa\u014b P\u025b\u0301n\u025b\u0301f\u0254m",
+ "P\u025bsa\u014b P\u025b\u0301n\u025b\u0301pf\u00fa\ua78b\u00fa",
+ "P\u025bsa\u014b N\u025bg\u025b\u0301m",
+ "P\u025bsa\u014b Nts\u0254\u030cpm\u0254\u0301",
+ "P\u025bsa\u014b Nts\u0254\u030cpp\u00e1"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "jgo",
+ "localeID": "jgo",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_jmc-tz.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_jmc-tz.js
index 8eff91df..d8b9a397 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_jmc-tz.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_jmc-tz.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Des"
],
+ "STANDALONEMONTH": [
+ "Januari",
+ "Februari",
+ "Machi",
+ "Aprilyi",
+ "Mei",
+ "Junyi",
+ "Julyai",
+ "Agusti",
+ "Septemba",
+ "Oktoba",
+ "Novemba",
+ "Desemba"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "jmc-tz",
+ "localeID": "jmc_TZ",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_jmc.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_jmc.js
index dd754e93..f081fddd 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_jmc.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_jmc.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Des"
],
+ "STANDALONEMONTH": [
+ "Januari",
+ "Februari",
+ "Machi",
+ "Aprilyi",
+ "Mei",
+ "Junyi",
+ "Julyai",
+ "Agusti",
+ "Septemba",
+ "Oktoba",
+ "Novemba",
+ "Desemba"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "jmc",
+ "localeID": "jmc",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ka-ge.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ka-ge.js
index 4383940a..24894aff 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ka-ge.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ka-ge.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u10dc\u10dd\u10d4",
"\u10d3\u10d4\u10d9"
],
+ "STANDALONEMONTH": [
+ "\u10d8\u10d0\u10dc\u10d5\u10d0\u10e0\u10d8",
+ "\u10d7\u10d4\u10d1\u10d4\u10e0\u10d5\u10d0\u10da\u10d8",
+ "\u10db\u10d0\u10e0\u10e2\u10d8",
+ "\u10d0\u10de\u10e0\u10d8\u10da\u10d8",
+ "\u10db\u10d0\u10d8\u10e1\u10d8",
+ "\u10d8\u10d5\u10dc\u10d8\u10e1\u10d8",
+ "\u10d8\u10d5\u10da\u10d8\u10e1\u10d8",
+ "\u10d0\u10d2\u10d5\u10d8\u10e1\u10e2\u10dd",
+ "\u10e1\u10d4\u10e5\u10e2\u10d4\u10db\u10d1\u10d4\u10e0\u10d8",
+ "\u10dd\u10e5\u10e2\u10dd\u10db\u10d1\u10d4\u10e0\u10d8",
+ "\u10dc\u10dd\u10d4\u10db\u10d1\u10d4\u10e0\u10d8",
+ "\u10d3\u10d4\u10d9\u10d4\u10db\u10d1\u10d4\u10e0\u10d8"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "ka-ge",
+ "localeID": "ka_GE",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ka.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ka.js
index fc846cae..f70ade8e 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ka.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ka.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u10dc\u10dd\u10d4",
"\u10d3\u10d4\u10d9"
],
+ "STANDALONEMONTH": [
+ "\u10d8\u10d0\u10dc\u10d5\u10d0\u10e0\u10d8",
+ "\u10d7\u10d4\u10d1\u10d4\u10e0\u10d5\u10d0\u10da\u10d8",
+ "\u10db\u10d0\u10e0\u10e2\u10d8",
+ "\u10d0\u10de\u10e0\u10d8\u10da\u10d8",
+ "\u10db\u10d0\u10d8\u10e1\u10d8",
+ "\u10d8\u10d5\u10dc\u10d8\u10e1\u10d8",
+ "\u10d8\u10d5\u10da\u10d8\u10e1\u10d8",
+ "\u10d0\u10d2\u10d5\u10d8\u10e1\u10e2\u10dd",
+ "\u10e1\u10d4\u10e5\u10e2\u10d4\u10db\u10d1\u10d4\u10e0\u10d8",
+ "\u10dd\u10e5\u10e2\u10dd\u10db\u10d1\u10d4\u10e0\u10d8",
+ "\u10dc\u10dd\u10d4\u10db\u10d1\u10d4\u10e0\u10d8",
+ "\u10d3\u10d4\u10d9\u10d4\u10db\u10d1\u10d4\u10e0\u10d8"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "ka",
+ "localeID": "ka",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kab-dz.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kab-dz.js
index 6063c588..feb24360 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kab-dz.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kab-dz.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nun",
"Du\u01e7"
],
+ "STANDALONEMONTH": [
+ "Yennayer",
+ "Fu\u1e5bar",
+ "Me\u0263res",
+ "Yebrir",
+ "Mayyu",
+ "Yunyu",
+ "Yulyu",
+ "\u0194uct",
+ "Ctembe\u1e5b",
+ "Tube\u1e5b",
+ "Nunembe\u1e5b",
+ "Du\u01e7embe\u1e5b"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "kab-dz",
+ "localeID": "kab_DZ",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kab.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kab.js
index d7b82a94..0c07e725 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kab.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kab.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nun",
"Du\u01e7"
],
+ "STANDALONEMONTH": [
+ "Yennayer",
+ "Fu\u1e5bar",
+ "Me\u0263res",
+ "Yebrir",
+ "Mayyu",
+ "Yunyu",
+ "Yulyu",
+ "\u0194uct",
+ "Ctembe\u1e5b",
+ "Tube\u1e5b",
+ "Nunembe\u1e5b",
+ "Du\u01e7embe\u1e5b"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "kab",
+ "localeID": "kab",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kam-ke.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kam-ke.js
index 669f17f1..4b8adc5f 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kam-ke.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kam-ke.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u0128km",
"\u0128kl"
],
+ "STANDALONEMONTH": [
+ "Mwai wa mbee",
+ "Mwai wa kel\u0129",
+ "Mwai wa katat\u0169",
+ "Mwai wa kana",
+ "Mwai wa katano",
+ "Mwai wa thanthat\u0169",
+ "Mwai wa muonza",
+ "Mwai wa nyaanya",
+ "Mwai wa kenda",
+ "Mwai wa \u0129kumi",
+ "Mwai wa \u0129kumi na \u0129mwe",
+ "Mwai wa \u0129kumi na il\u0129"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "kam-ke",
+ "localeID": "kam_KE",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kam.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kam.js
index f0998400..ad16d674 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kam.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kam.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u0128km",
"\u0128kl"
],
+ "STANDALONEMONTH": [
+ "Mwai wa mbee",
+ "Mwai wa kel\u0129",
+ "Mwai wa katat\u0169",
+ "Mwai wa kana",
+ "Mwai wa katano",
+ "Mwai wa thanthat\u0169",
+ "Mwai wa muonza",
+ "Mwai wa nyaanya",
+ "Mwai wa kenda",
+ "Mwai wa \u0129kumi",
+ "Mwai wa \u0129kumi na \u0129mwe",
+ "Mwai wa \u0129kumi na il\u0129"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "kam",
+ "localeID": "kam",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kde-tz.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kde-tz.js
index 0363929f..2a0de5b2 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kde-tz.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kde-tz.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Des"
],
+ "STANDALONEMONTH": [
+ "Mwedi Ntandi",
+ "Mwedi wa Pili",
+ "Mwedi wa Tatu",
+ "Mwedi wa Nchechi",
+ "Mwedi wa Nnyano",
+ "Mwedi wa Nnyano na Umo",
+ "Mwedi wa Nnyano na Mivili",
+ "Mwedi wa Nnyano na Mitatu",
+ "Mwedi wa Nnyano na Nchechi",
+ "Mwedi wa Nnyano na Nnyano",
+ "Mwedi wa Nnyano na Nnyano na U",
+ "Mwedi wa Nnyano na Nnyano na M"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "kde-tz",
+ "localeID": "kde_TZ",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kde.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kde.js
index 6dcc55eb..184e0308 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kde.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kde.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Des"
],
+ "STANDALONEMONTH": [
+ "Mwedi Ntandi",
+ "Mwedi wa Pili",
+ "Mwedi wa Tatu",
+ "Mwedi wa Nchechi",
+ "Mwedi wa Nnyano",
+ "Mwedi wa Nnyano na Umo",
+ "Mwedi wa Nnyano na Mivili",
+ "Mwedi wa Nnyano na Mitatu",
+ "Mwedi wa Nnyano na Nchechi",
+ "Mwedi wa Nnyano na Nnyano",
+ "Mwedi wa Nnyano na Nnyano na U",
+ "Mwedi wa Nnyano na Nnyano na M"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "kde",
+ "localeID": "kde",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kea-cv.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kea-cv.js
index 1fc8d8e6..e396a697 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kea-cv.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kea-cv.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nuv",
"Diz"
],
+ "STANDALONEMONTH": [
+ "Janeru",
+ "Febreru",
+ "Marsu",
+ "Abril",
+ "Maiu",
+ "Junhu",
+ "Julhu",
+ "Agostu",
+ "Setenbru",
+ "Otubru",
+ "Nuvenbru",
+ "Dizenbru"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "kea-cv",
+ "localeID": "kea_CV",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kea.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kea.js
index 0bab114d..7bd3cab3 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kea.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kea.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nuv",
"Diz"
],
+ "STANDALONEMONTH": [
+ "Janeru",
+ "Febreru",
+ "Marsu",
+ "Abril",
+ "Maiu",
+ "Junhu",
+ "Julhu",
+ "Agostu",
+ "Setenbru",
+ "Otubru",
+ "Nuvenbru",
+ "Dizenbru"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "kea",
+ "localeID": "kea",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_khq-ml.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_khq-ml.js
index 328809e1..5ec71480 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_khq-ml.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_khq-ml.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Noo",
"Dee"
],
+ "STANDALONEMONTH": [
+ "\u017danwiye",
+ "Feewiriye",
+ "Marsi",
+ "Awiril",
+ "Me",
+ "\u017duwe\u014b",
+ "\u017duyye",
+ "Ut",
+ "Sektanbur",
+ "Oktoobur",
+ "Noowanbur",
+ "Deesanbur"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "khq-ml",
+ "localeID": "khq_ML",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_khq.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_khq.js
index 90fa7e6b..8035933c 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_khq.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_khq.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Noo",
"Dee"
],
+ "STANDALONEMONTH": [
+ "\u017danwiye",
+ "Feewiriye",
+ "Marsi",
+ "Awiril",
+ "Me",
+ "\u017duwe\u014b",
+ "\u017duyye",
+ "Ut",
+ "Sektanbur",
+ "Oktoobur",
+ "Noowanbur",
+ "Deesanbur"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "khq",
+ "localeID": "khq",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ki-ke.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ki-ke.js
index c8d312b7..b0497637 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ki-ke.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ki-ke.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"WMW",
"DIT"
],
+ "STANDALONEMONTH": [
+ "Njenuar\u0129",
+ "Mwere wa ker\u0129",
+ "Mwere wa gatat\u0169",
+ "Mwere wa kana",
+ "Mwere wa gatano",
+ "Mwere wa gatandat\u0169",
+ "Mwere wa m\u0169gwanja",
+ "Mwere wa kanana",
+ "Mwere wa kenda",
+ "Mwere wa ik\u0169mi",
+ "Mwere wa ik\u0169mi na \u0169mwe",
+ "Ndithemba"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ki-ke",
+ "localeID": "ki_KE",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ki.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ki.js
index b21103da..f79a4579 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ki.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ki.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"WMW",
"DIT"
],
+ "STANDALONEMONTH": [
+ "Njenuar\u0129",
+ "Mwere wa ker\u0129",
+ "Mwere wa gatat\u0169",
+ "Mwere wa kana",
+ "Mwere wa gatano",
+ "Mwere wa gatandat\u0169",
+ "Mwere wa m\u0169gwanja",
+ "Mwere wa kanana",
+ "Mwere wa kenda",
+ "Mwere wa ik\u0169mi",
+ "Mwere wa ik\u0169mi na \u0169mwe",
+ "Ndithemba"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ki",
+ "localeID": "ki",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kk-cyrl-kz.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kk-cyrl-kz.js
index 828abbf4..20738da1 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kk-cyrl-kz.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kk-cyrl-kz.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u049b\u0430\u0440.",
"\u0436\u0435\u043b\u0442."
],
+ "STANDALONEMONTH": [
+ "\u049b\u0430\u04a3\u0442\u0430\u0440",
+ "\u0430\u049b\u043f\u0430\u043d",
+ "\u043d\u0430\u0443\u0440\u044b\u0437",
+ "\u0441\u04d9\u0443\u0456\u0440",
+ "\u043c\u0430\u043c\u044b\u0440",
+ "\u043c\u0430\u0443\u0441\u044b\u043c",
+ "\u0448\u0456\u043b\u0434\u0435",
+ "\u0442\u0430\u043c\u044b\u0437",
+ "\u049b\u044b\u0440\u043a\u04af\u0439\u0435\u043a",
+ "\u049b\u0430\u0437\u0430\u043d",
+ "\u049b\u0430\u0440\u0430\u0448\u0430",
+ "\u0436\u0435\u043b\u0442\u043e\u049b\u0441\u0430\u043d"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "kk-cyrl-kz",
+ "localeID": "kk_Cyrl_KZ",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kk-cyrl.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kk-cyrl.js
index 321fad88..f716820c 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kk-cyrl.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kk-cyrl.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u049b\u0430\u0440.",
"\u0436\u0435\u043b\u0442."
],
+ "STANDALONEMONTH": [
+ "\u049b\u0430\u04a3\u0442\u0430\u0440",
+ "\u0430\u049b\u043f\u0430\u043d",
+ "\u043d\u0430\u0443\u0440\u044b\u0437",
+ "\u0441\u04d9\u0443\u0456\u0440",
+ "\u043c\u0430\u043c\u044b\u0440",
+ "\u043c\u0430\u0443\u0441\u044b\u043c",
+ "\u0448\u0456\u043b\u0434\u0435",
+ "\u0442\u0430\u043c\u044b\u0437",
+ "\u049b\u044b\u0440\u043a\u04af\u0439\u0435\u043a",
+ "\u049b\u0430\u0437\u0430\u043d",
+ "\u049b\u0430\u0440\u0430\u0448\u0430",
+ "\u0436\u0435\u043b\u0442\u043e\u049b\u0441\u0430\u043d"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "kk-cyrl",
+ "localeID": "kk_Cyrl",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kk.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kk.js
index 3d4a44e0..976d500f 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kk.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kk.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u049b\u0430\u0440.",
"\u0436\u0435\u043b\u0442."
],
+ "STANDALONEMONTH": [
+ "\u049b\u0430\u04a3\u0442\u0430\u0440",
+ "\u0430\u049b\u043f\u0430\u043d",
+ "\u043d\u0430\u0443\u0440\u044b\u0437",
+ "\u0441\u04d9\u0443\u0456\u0440",
+ "\u043c\u0430\u043c\u044b\u0440",
+ "\u043c\u0430\u0443\u0441\u044b\u043c",
+ "\u0448\u0456\u043b\u0434\u0435",
+ "\u0442\u0430\u043c\u044b\u0437",
+ "\u049b\u044b\u0440\u043a\u04af\u0439\u0435\u043a",
+ "\u049b\u0430\u0437\u0430\u043d",
+ "\u049b\u0430\u0440\u0430\u0448\u0430",
+ "\u0436\u0435\u043b\u0442\u043e\u049b\u0441\u0430\u043d"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "kk",
+ "localeID": "kk",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kkj-cm.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kkj-cm.js
index 8b2a2538..9247110a 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kkj-cm.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kkj-cm.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"11",
"\u0253ul\u0253us\u025b"
],
+ "STANDALONEMONTH": [
+ "pamba",
+ "wanja",
+ "mbiy\u0254 m\u025bndo\u014bg\u0254",
+ "Ny\u0254l\u0254mb\u0254\u014bg\u0254",
+ "M\u0254n\u0254 \u014bgbanja",
+ "Nya\u014bgw\u025b \u014bgbanja",
+ "ku\u014bgw\u025b",
+ "f\u025b",
+ "njapi",
+ "nyukul",
+ "11",
+ "\u0253ul\u0253us\u025b"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "kkj-cm",
+ "localeID": "kkj_CM",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kkj.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kkj.js
index dc0b25ad..247c7aaf 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kkj.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kkj.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"11",
"\u0253ul\u0253us\u025b"
],
+ "STANDALONEMONTH": [
+ "pamba",
+ "wanja",
+ "mbiy\u0254 m\u025bndo\u014bg\u0254",
+ "Ny\u0254l\u0254mb\u0254\u014bg\u0254",
+ "M\u0254n\u0254 \u014bgbanja",
+ "Nya\u014bgw\u025b \u014bgbanja",
+ "ku\u014bgw\u025b",
+ "f\u025b",
+ "njapi",
+ "nyukul",
+ "11",
+ "\u0253ul\u0253us\u025b"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "kkj",
+ "localeID": "kkj",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kl-gl.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kl-gl.js
index 3b3e77d0..bf1c87e8 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kl-gl.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kl-gl.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"nov",
"dec"
],
+ "STANDALONEMONTH": [
+ "januari",
+ "februari",
+ "martsi",
+ "aprili",
+ "maji",
+ "juni",
+ "juli",
+ "augustusi",
+ "septemberi",
+ "oktoberi",
+ "novemberi",
+ "decemberi"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "kl-gl",
+ "localeID": "kl_GL",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kl.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kl.js
index a20a1950..96d12859 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kl.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kl.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"nov",
"dec"
],
+ "STANDALONEMONTH": [
+ "januari",
+ "februari",
+ "martsi",
+ "aprili",
+ "maji",
+ "juni",
+ "juli",
+ "augustusi",
+ "septemberi",
+ "oktoberi",
+ "novemberi",
+ "decemberi"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "kl",
+ "localeID": "kl",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kln-ke.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kln-ke.js
index 41e74050..69f61796 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kln-ke.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kln-ke.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Kpt",
"Kpa"
],
+ "STANDALONEMONTH": [
+ "Mulgul",
+ "Ng\u2019atyaato",
+ "Kiptaamo",
+ "Iwootkuut",
+ "Mamuut",
+ "Paagi",
+ "Ng\u2019eiyeet",
+ "Rooptui",
+ "Bureet",
+ "Epeeso",
+ "Kipsuunde ne taai",
+ "Kipsuunde nebo aeng\u2019"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "kln-ke",
+ "localeID": "kln_KE",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kln.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kln.js
index 973b711f..5362331d 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kln.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kln.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Kpt",
"Kpa"
],
+ "STANDALONEMONTH": [
+ "Mulgul",
+ "Ng\u2019atyaato",
+ "Kiptaamo",
+ "Iwootkuut",
+ "Mamuut",
+ "Paagi",
+ "Ng\u2019eiyeet",
+ "Rooptui",
+ "Bureet",
+ "Epeeso",
+ "Kipsuunde ne taai",
+ "Kipsuunde nebo aeng\u2019"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "kln",
+ "localeID": "kln",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_km-kh.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_km-kh.js
index 43649cd6..185486b0 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_km-kh.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_km-kh.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u179c\u17b7\u1785\u17d2\u1786\u17b7\u1780\u17b6",
"\u1792\u17d2\u1793\u17bc"
],
+ "STANDALONEMONTH": [
+ "\u1798\u1780\u179a\u17b6",
+ "\u1780\u17bb\u1798\u17d2\u1797\u17c8",
+ "\u1798\u17b8\u1793\u17b6",
+ "\u1798\u17c1\u179f\u17b6",
+ "\u17a7\u179f\u1797\u17b6",
+ "\u1798\u17b7\u1790\u17bb\u1793\u17b6",
+ "\u1780\u1780\u17d2\u1780\u178a\u17b6",
+ "\u179f\u17b8\u17a0\u17b6",
+ "\u1780\u1789\u17d2\u1789\u17b6",
+ "\u178f\u17bb\u179b\u17b6",
+ "\u179c\u17b7\u1785\u17d2\u1786\u17b7\u1780\u17b6",
+ "\u1792\u17d2\u1793\u17bc"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "km-kh",
+ "localeID": "km_KH",
"pluralCat": function(n, opt_precision) { return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_km.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_km.js
index ee21ccc1..42914542 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_km.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_km.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u179c\u17b7\u1785\u17d2\u1786\u17b7\u1780\u17b6",
"\u1792\u17d2\u1793\u17bc"
],
+ "STANDALONEMONTH": [
+ "\u1798\u1780\u179a\u17b6",
+ "\u1780\u17bb\u1798\u17d2\u1797\u17c8",
+ "\u1798\u17b8\u1793\u17b6",
+ "\u1798\u17c1\u179f\u17b6",
+ "\u17a7\u179f\u1797\u17b6",
+ "\u1798\u17b7\u1790\u17bb\u1793\u17b6",
+ "\u1780\u1780\u17d2\u1780\u178a\u17b6",
+ "\u179f\u17b8\u17a0\u17b6",
+ "\u1780\u1789\u17d2\u1789\u17b6",
+ "\u178f\u17bb\u179b\u17b6",
+ "\u179c\u17b7\u1785\u17d2\u1786\u17b7\u1780\u17b6",
+ "\u1792\u17d2\u1793\u17bc"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "km",
+ "localeID": "km",
"pluralCat": function(n, opt_precision) { return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kn-in.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kn-in.js
index 59f60a75..372dd635 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kn-in.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kn-in.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u0ca8\u0cb5\u0cc6\u0c82",
"\u0ca1\u0cbf\u0cb8\u0cc6\u0c82"
],
+ "STANDALONEMONTH": [
+ "\u0c9c\u0ca8\u0cb5\u0cb0\u0cbf",
+ "\u0cab\u0cc6\u0cac\u0ccd\u0cb0\u0cb5\u0cb0\u0cbf",
+ "\u0cae\u0cbe\u0cb0\u0ccd\u0c9a\u0ccd",
+ "\u0c8f\u0caa\u0ccd\u0cb0\u0cbf\u0cb2\u0ccd",
+ "\u0cae\u0cc7",
+ "\u0c9c\u0cc2\u0ca8\u0ccd",
+ "\u0c9c\u0cc1\u0cb2\u0cc8",
+ "\u0c86\u0c97\u0cb8\u0ccd\u0c9f\u0ccd",
+ "\u0cb8\u0cc6\u0caa\u0ccd\u0c9f\u0cc6\u0c82\u0cac\u0cb0\u0ccd",
+ "\u0c85\u0c95\u0ccd\u0c9f\u0ccb\u0cac\u0cb0\u0ccd",
+ "\u0ca8\u0cb5\u0cc6\u0c82\u0cac\u0cb0\u0ccd",
+ "\u0ca1\u0cbf\u0cb8\u0cc6\u0c82\u0cac\u0cb0\u0ccd"
+ ],
"WEEKENDRANGE": [
6,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "kn-in",
+ "localeID": "kn_IN",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kn.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kn.js
index 4dcebb61..26679561 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kn.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kn.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u0ca8\u0cb5\u0cc6\u0c82",
"\u0ca1\u0cbf\u0cb8\u0cc6\u0c82"
],
+ "STANDALONEMONTH": [
+ "\u0c9c\u0ca8\u0cb5\u0cb0\u0cbf",
+ "\u0cab\u0cc6\u0cac\u0ccd\u0cb0\u0cb5\u0cb0\u0cbf",
+ "\u0cae\u0cbe\u0cb0\u0ccd\u0c9a\u0ccd",
+ "\u0c8f\u0caa\u0ccd\u0cb0\u0cbf\u0cb2\u0ccd",
+ "\u0cae\u0cc7",
+ "\u0c9c\u0cc2\u0ca8\u0ccd",
+ "\u0c9c\u0cc1\u0cb2\u0cc8",
+ "\u0c86\u0c97\u0cb8\u0ccd\u0c9f\u0ccd",
+ "\u0cb8\u0cc6\u0caa\u0ccd\u0c9f\u0cc6\u0c82\u0cac\u0cb0\u0ccd",
+ "\u0c85\u0c95\u0ccd\u0c9f\u0ccb\u0cac\u0cb0\u0ccd",
+ "\u0ca8\u0cb5\u0cc6\u0c82\u0cac\u0cb0\u0ccd",
+ "\u0ca1\u0cbf\u0cb8\u0cc6\u0c82\u0cac\u0cb0\u0ccd"
+ ],
"WEEKENDRANGE": [
6,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "kn",
+ "localeID": "kn",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ko-kp.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ko-kp.js
index 61ae2b1b..2763f7b2 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ko-kp.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ko-kp.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"11\uc6d4",
"12\uc6d4"
],
+ "STANDALONEMONTH": [
+ "1\uc6d4",
+ "2\uc6d4",
+ "3\uc6d4",
+ "4\uc6d4",
+ "5\uc6d4",
+ "6\uc6d4",
+ "7\uc6d4",
+ "8\uc6d4",
+ "9\uc6d4",
+ "10\uc6d4",
+ "11\uc6d4",
+ "12\uc6d4"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "ko-kp",
+ "localeID": "ko_KP",
"pluralCat": function(n, opt_precision) { return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ko-kr.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ko-kr.js
index 004a2d8d..016c5230 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ko-kr.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ko-kr.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"11\uc6d4",
"12\uc6d4"
],
+ "STANDALONEMONTH": [
+ "1\uc6d4",
+ "2\uc6d4",
+ "3\uc6d4",
+ "4\uc6d4",
+ "5\uc6d4",
+ "6\uc6d4",
+ "7\uc6d4",
+ "8\uc6d4",
+ "9\uc6d4",
+ "10\uc6d4",
+ "11\uc6d4",
+ "12\uc6d4"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "ko-kr",
+ "localeID": "ko_KR",
"pluralCat": function(n, opt_precision) { return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ko.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ko.js
index b9c6fea3..d3ff9ee5 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ko.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ko.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"11\uc6d4",
"12\uc6d4"
],
+ "STANDALONEMONTH": [
+ "1\uc6d4",
+ "2\uc6d4",
+ "3\uc6d4",
+ "4\uc6d4",
+ "5\uc6d4",
+ "6\uc6d4",
+ "7\uc6d4",
+ "8\uc6d4",
+ "9\uc6d4",
+ "10\uc6d4",
+ "11\uc6d4",
+ "12\uc6d4"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "ko",
+ "localeID": "ko",
"pluralCat": function(n, opt_precision) { return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kok-in.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kok-in.js
index fde838b7..abfcd60d 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kok-in.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kok-in.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u0928\u094b\u0935\u094d\u0939\u0947\u0902\u092c\u0930",
"\u0921\u093f\u0938\u0947\u0902\u092c\u0930"
],
+ "STANDALONEMONTH": [
+ "\u091c\u093e\u0928\u0947\u0935\u093e\u0930\u0940",
+ "\u092b\u0947\u092c\u094d\u0930\u0941\u0935\u093e\u0930\u0940",
+ "\u092e\u093e\u0930\u094d\u091a",
+ "\u090f\u092a\u094d\u0930\u093f\u0932",
+ "\u092e\u0947",
+ "\u091c\u0942\u0928",
+ "\u091c\u0941\u0932\u0948",
+ "\u0913\u0917\u0938\u094d\u091f",
+ "\u0938\u0947\u092a\u094d\u091f\u0947\u0902\u092c\u0930",
+ "\u0913\u0915\u094d\u091f\u094b\u092c\u0930",
+ "\u0928\u094b\u0935\u094d\u0939\u0947\u0902\u092c\u0930",
+ "\u0921\u093f\u0938\u0947\u0902\u092c\u0930"
+ ],
"WEEKENDRANGE": [
6,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "kok-in",
+ "localeID": "kok_IN",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kok.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kok.js
index 701c8f7e..4a59d032 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kok.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kok.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u0928\u094b\u0935\u094d\u0939\u0947\u0902\u092c\u0930",
"\u0921\u093f\u0938\u0947\u0902\u092c\u0930"
],
+ "STANDALONEMONTH": [
+ "\u091c\u093e\u0928\u0947\u0935\u093e\u0930\u0940",
+ "\u092b\u0947\u092c\u094d\u0930\u0941\u0935\u093e\u0930\u0940",
+ "\u092e\u093e\u0930\u094d\u091a",
+ "\u090f\u092a\u094d\u0930\u093f\u0932",
+ "\u092e\u0947",
+ "\u091c\u0942\u0928",
+ "\u091c\u0941\u0932\u0948",
+ "\u0913\u0917\u0938\u094d\u091f",
+ "\u0938\u0947\u092a\u094d\u091f\u0947\u0902\u092c\u0930",
+ "\u0913\u0915\u094d\u091f\u094b\u092c\u0930",
+ "\u0928\u094b\u0935\u094d\u0939\u0947\u0902\u092c\u0930",
+ "\u0921\u093f\u0938\u0947\u0902\u092c\u0930"
+ ],
"WEEKENDRANGE": [
6,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "kok",
+ "localeID": "kok",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ks-arab-in.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ks-arab-in.js
index 3f2caf1c..0ab04e6d 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ks-arab-in.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ks-arab-in.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u0646\u0648\u0645\u0628\u0631",
"\u062f\u0633\u0645\u0628\u0631"
],
+ "STANDALONEMONTH": [
+ "\u062c\u0646\u0624\u0631\u06cc",
+ "\u0641\u0631\u0624\u0631\u06cc",
+ "\u0645\u0627\u0631\u0655\u0686",
+ "\u0627\u067e\u0631\u06cc\u0644",
+ "\u0645\u06cc\u0654",
+ "\u062c\u0648\u0657\u0646",
+ "\u062c\u0648\u0657\u0644\u0627\u06cc\u06cc",
+ "\u0627\u06af\u0633\u062a",
+ "\u0633\u062a\u0645\u0628\u0631",
+ "\u0627\u06a9\u062a\u0648\u0657\u0628\u0631",
+ "\u0646\u0648\u0645\u0628\u0631",
+ "\u062f\u0633\u0645\u0628\u0631"
+ ],
"WEEKENDRANGE": [
6,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ks-arab-in",
+ "localeID": "ks_Arab_IN",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ks-arab.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ks-arab.js
index 364703ca..b1d807bd 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ks-arab.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ks-arab.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u0646\u0648\u0645\u0628\u0631",
"\u062f\u0633\u0645\u0628\u0631"
],
+ "STANDALONEMONTH": [
+ "\u062c\u0646\u0624\u0631\u06cc",
+ "\u0641\u0631\u0624\u0631\u06cc",
+ "\u0645\u0627\u0631\u0655\u0686",
+ "\u0627\u067e\u0631\u06cc\u0644",
+ "\u0645\u06cc\u0654",
+ "\u062c\u0648\u0657\u0646",
+ "\u062c\u0648\u0657\u0644\u0627\u06cc\u06cc",
+ "\u0627\u06af\u0633\u062a",
+ "\u0633\u062a\u0645\u0628\u0631",
+ "\u0627\u06a9\u062a\u0648\u0657\u0628\u0631",
+ "\u0646\u0648\u0645\u0628\u0631",
+ "\u062f\u0633\u0645\u0628\u0631"
+ ],
"WEEKENDRANGE": [
6,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ks-arab",
+ "localeID": "ks_Arab",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ks.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ks.js
index d5d58c66..7c64c70b 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ks.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ks.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u0646\u0648\u0645\u0628\u0631",
"\u062f\u0633\u0645\u0628\u0631"
],
+ "STANDALONEMONTH": [
+ "\u062c\u0646\u0624\u0631\u06cc",
+ "\u0641\u0631\u0624\u0631\u06cc",
+ "\u0645\u0627\u0631\u0655\u0686",
+ "\u0627\u067e\u0631\u06cc\u0644",
+ "\u0645\u06cc\u0654",
+ "\u062c\u0648\u0657\u0646",
+ "\u062c\u0648\u0657\u0644\u0627\u06cc\u06cc",
+ "\u0627\u06af\u0633\u062a",
+ "\u0633\u062a\u0645\u0628\u0631",
+ "\u0627\u06a9\u062a\u0648\u0657\u0628\u0631",
+ "\u0646\u0648\u0645\u0628\u0631",
+ "\u062f\u0633\u0645\u0628\u0631"
+ ],
"WEEKENDRANGE": [
6,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ks",
+ "localeID": "ks",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ksb-tz.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ksb-tz.js
index f52a6f36..8082838a 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ksb-tz.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ksb-tz.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Des"
],
+ "STANDALONEMONTH": [
+ "Januali",
+ "Febluali",
+ "Machi",
+ "Aplili",
+ "Mei",
+ "Juni",
+ "Julai",
+ "Agosti",
+ "Septemba",
+ "Oktoba",
+ "Novemba",
+ "Desemba"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ksb-tz",
+ "localeID": "ksb_TZ",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ksb.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ksb.js
index 14528926..796a2986 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ksb.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ksb.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Des"
],
+ "STANDALONEMONTH": [
+ "Januali",
+ "Febluali",
+ "Machi",
+ "Aplili",
+ "Mei",
+ "Juni",
+ "Julai",
+ "Agosti",
+ "Septemba",
+ "Oktoba",
+ "Novemba",
+ "Desemba"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ksb",
+ "localeID": "ksb",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ksf-cm.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ksf-cm.js
index a3f69547..459b8505 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ksf-cm.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ksf-cm.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u014b11",
"\u014b12"
],
+ "STANDALONEMONTH": [
+ "\u014bw\u00ed\u00ed a nt\u0254\u0301nt\u0254",
+ "\u014bw\u00ed\u00ed ak\u01dd b\u025b\u0301\u025b",
+ "\u014bw\u00ed\u00ed ak\u01dd r\u00e1\u00e1",
+ "\u014bw\u00ed\u00ed ak\u01dd nin",
+ "\u014bw\u00ed\u00ed ak\u01dd t\u00e1an",
+ "\u014bw\u00ed\u00ed ak\u01dd t\u00e1af\u0254k",
+ "\u014bw\u00ed\u00ed ak\u01dd t\u00e1ab\u025b\u025b",
+ "\u014bw\u00ed\u00ed ak\u01dd t\u00e1araa",
+ "\u014bw\u00ed\u00ed ak\u01dd t\u00e1anin",
+ "\u014bw\u00ed\u00ed ak\u01dd nt\u025bk",
+ "\u014bw\u00ed\u00ed ak\u01dd nt\u025bk di b\u0254\u0301k",
+ "\u014bw\u00ed\u00ed ak\u01dd nt\u025bk di b\u025b\u0301\u025b"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ksf-cm",
+ "localeID": "ksf_CM",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ksf.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ksf.js
index dfd65a2e..36e62a8d 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ksf.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ksf.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u014b11",
"\u014b12"
],
+ "STANDALONEMONTH": [
+ "\u014bw\u00ed\u00ed a nt\u0254\u0301nt\u0254",
+ "\u014bw\u00ed\u00ed ak\u01dd b\u025b\u0301\u025b",
+ "\u014bw\u00ed\u00ed ak\u01dd r\u00e1\u00e1",
+ "\u014bw\u00ed\u00ed ak\u01dd nin",
+ "\u014bw\u00ed\u00ed ak\u01dd t\u00e1an",
+ "\u014bw\u00ed\u00ed ak\u01dd t\u00e1af\u0254k",
+ "\u014bw\u00ed\u00ed ak\u01dd t\u00e1ab\u025b\u025b",
+ "\u014bw\u00ed\u00ed ak\u01dd t\u00e1araa",
+ "\u014bw\u00ed\u00ed ak\u01dd t\u00e1anin",
+ "\u014bw\u00ed\u00ed ak\u01dd nt\u025bk",
+ "\u014bw\u00ed\u00ed ak\u01dd nt\u025bk di b\u0254\u0301k",
+ "\u014bw\u00ed\u00ed ak\u01dd nt\u025bk di b\u025b\u0301\u025b"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ksf",
+ "localeID": "ksf",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ksh-de.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ksh-de.js
index c69f40d7..793b20a0 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ksh-de.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ksh-de.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dez"
],
+ "STANDALONEMONTH": [
+ "Jannewa",
+ "F\u00e4browa",
+ "M\u00e4\u00e4z",
+ "Aprell",
+ "M\u00e4i",
+ "Juuni",
+ "Juuli",
+ "Oujo\u00df",
+ "Sept\u00e4mber",
+ "Oktoober",
+ "Nov\u00e4mber",
+ "Dez\u00e4mber"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ksh-de",
+ "localeID": "ksh_DE",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ksh.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ksh.js
index cb166982..312fbee7 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ksh.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ksh.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dez"
],
+ "STANDALONEMONTH": [
+ "Jannewa",
+ "F\u00e4browa",
+ "M\u00e4\u00e4z",
+ "Aprell",
+ "M\u00e4i",
+ "Juuni",
+ "Juuli",
+ "Oujo\u00df",
+ "Sept\u00e4mber",
+ "Oktoober",
+ "Nov\u00e4mber",
+ "Dez\u00e4mber"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ksh",
+ "localeID": "ksh",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kw-gb.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kw-gb.js
index 45be1507..46a8c103 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kw-gb.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kw-gb.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Du",
"Kev"
],
+ "STANDALONEMONTH": [
+ "mis Genver",
+ "mis Hwevrer",
+ "mis Meurth",
+ "mis Ebrel",
+ "mis Me",
+ "mis Metheven",
+ "mis Gortheren",
+ "mis Est",
+ "mis Gwynngala",
+ "mis Hedra",
+ "mis Du",
+ "mis Kevardhu"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "kw-gb",
+ "localeID": "kw_GB",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kw.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kw.js
index b1349d6a..d6a128b8 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_kw.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_kw.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Du",
"Kev"
],
+ "STANDALONEMONTH": [
+ "mis Genver",
+ "mis Hwevrer",
+ "mis Meurth",
+ "mis Ebrel",
+ "mis Me",
+ "mis Metheven",
+ "mis Gortheren",
+ "mis Est",
+ "mis Gwynngala",
+ "mis Hedra",
+ "mis Du",
+ "mis Kevardhu"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "kw",
+ "localeID": "kw",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ky-cyrl-kg.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ky-cyrl-kg.js
index 75a59471..31b8ace4 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ky-cyrl-kg.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ky-cyrl-kg.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u043d\u043e\u044f.",
"\u0434\u0435\u043a."
],
+ "STANDALONEMONTH": [
+ "\u042f\u043d\u0432\u0430\u0440\u044c",
+ "\u0424\u0435\u0432\u0440\u0430\u043b\u044c",
+ "\u041c\u0430\u0440\u0442",
+ "\u0410\u043f\u0440\u0435\u043b\u044c",
+ "\u041c\u0430\u0439",
+ "\u0418\u044e\u043d\u044c",
+ "\u0418\u044e\u043b\u044c",
+ "\u0410\u0432\u0433\u0443\u0441\u0442",
+ "\u0421\u0435\u043d\u0442\u044f\u0431\u0440\u044c",
+ "\u041e\u043a\u0442\u044f\u0431\u0440\u044c",
+ "\u041d\u043e\u044f\u0431\u0440\u044c",
+ "\u0414\u0435\u043a\u0430\u0431\u0440\u044c"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "ky-cyrl-kg",
+ "localeID": "ky_Cyrl_KG",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ky-cyrl.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ky-cyrl.js
index 7c5a5778..a3c91234 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ky-cyrl.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ky-cyrl.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u043d\u043e\u044f.",
"\u0434\u0435\u043a."
],
+ "STANDALONEMONTH": [
+ "\u042f\u043d\u0432\u0430\u0440\u044c",
+ "\u0424\u0435\u0432\u0440\u0430\u043b\u044c",
+ "\u041c\u0430\u0440\u0442",
+ "\u0410\u043f\u0440\u0435\u043b\u044c",
+ "\u041c\u0430\u0439",
+ "\u0418\u044e\u043d\u044c",
+ "\u0418\u044e\u043b\u044c",
+ "\u0410\u0432\u0433\u0443\u0441\u0442",
+ "\u0421\u0435\u043d\u0442\u044f\u0431\u0440\u044c",
+ "\u041e\u043a\u0442\u044f\u0431\u0440\u044c",
+ "\u041d\u043e\u044f\u0431\u0440\u044c",
+ "\u0414\u0435\u043a\u0430\u0431\u0440\u044c"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "ky-cyrl",
+ "localeID": "ky_Cyrl",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ky.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ky.js
index b7fe2635..bba5e7a8 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ky.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ky.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u043d\u043e\u044f.",
"\u0434\u0435\u043a."
],
+ "STANDALONEMONTH": [
+ "\u042f\u043d\u0432\u0430\u0440\u044c",
+ "\u0424\u0435\u0432\u0440\u0430\u043b\u044c",
+ "\u041c\u0430\u0440\u0442",
+ "\u0410\u043f\u0440\u0435\u043b\u044c",
+ "\u041c\u0430\u0439",
+ "\u0418\u044e\u043d\u044c",
+ "\u0418\u044e\u043b\u044c",
+ "\u0410\u0432\u0433\u0443\u0441\u0442",
+ "\u0421\u0435\u043d\u0442\u044f\u0431\u0440\u044c",
+ "\u041e\u043a\u0442\u044f\u0431\u0440\u044c",
+ "\u041d\u043e\u044f\u0431\u0440\u044c",
+ "\u0414\u0435\u043a\u0430\u0431\u0440\u044c"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "ky",
+ "localeID": "ky",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_lag-tz.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_lag-tz.js
index a76e7696..016705cc 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_lag-tz.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_lag-tz.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Saano",
"Sasat\u0289"
],
+ "STANDALONEMONTH": [
+ "K\u0289f\u00fangat\u0268",
+ "K\u0289naan\u0268",
+ "K\u0289keenda",
+ "Kwiikumi",
+ "Kwiinyamb\u00e1la",
+ "Kwiidwaata",
+ "K\u0289m\u0289\u0289nch\u0268",
+ "K\u0289v\u0268\u0268r\u0268",
+ "K\u0289saat\u0289",
+ "Kwiinyi",
+ "K\u0289saano",
+ "K\u0289sasat\u0289"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "lag-tz",
+ "localeID": "lag_TZ",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_lag.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_lag.js
index 6fb2f6e5..db5682f9 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_lag.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_lag.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Saano",
"Sasat\u0289"
],
+ "STANDALONEMONTH": [
+ "K\u0289f\u00fangat\u0268",
+ "K\u0289naan\u0268",
+ "K\u0289keenda",
+ "Kwiikumi",
+ "Kwiinyamb\u00e1la",
+ "Kwiidwaata",
+ "K\u0289m\u0289\u0289nch\u0268",
+ "K\u0289v\u0268\u0268r\u0268",
+ "K\u0289saat\u0289",
+ "Kwiinyi",
+ "K\u0289saano",
+ "K\u0289sasat\u0289"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "lag",
+ "localeID": "lag",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_lb-lu.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_lb-lu.js
index 64ef9776..a55c1f03 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_lb-lu.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_lb-lu.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov.",
"Dez."
],
+ "STANDALONEMONTH": [
+ "Januar",
+ "Februar",
+ "M\u00e4erz",
+ "Abr\u00ebll",
+ "Mee",
+ "Juni",
+ "Juli",
+ "August",
+ "September",
+ "Oktober",
+ "November",
+ "Dezember"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "lb-lu",
+ "localeID": "lb_LU",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_lb.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_lb.js
index dd721993..92fd0f93 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_lb.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_lb.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov.",
"Dez."
],
+ "STANDALONEMONTH": [
+ "Januar",
+ "Februar",
+ "M\u00e4erz",
+ "Abr\u00ebll",
+ "Mee",
+ "Juni",
+ "Juli",
+ "August",
+ "September",
+ "Oktober",
+ "November",
+ "Dezember"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "lb",
+ "localeID": "lb",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_lg-ug.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_lg-ug.js
index 78d1c9f0..6e884f33 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_lg-ug.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_lg-ug.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Des"
],
+ "STANDALONEMONTH": [
+ "Janwaliyo",
+ "Febwaliyo",
+ "Marisi",
+ "Apuli",
+ "Maayi",
+ "Juuni",
+ "Julaayi",
+ "Agusito",
+ "Sebuttemba",
+ "Okitobba",
+ "Novemba",
+ "Desemba"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "lg-ug",
+ "localeID": "lg_UG",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_lg.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_lg.js
index e0bbf02f..dd566144 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_lg.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_lg.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Des"
],
+ "STANDALONEMONTH": [
+ "Janwaliyo",
+ "Febwaliyo",
+ "Marisi",
+ "Apuli",
+ "Maayi",
+ "Juuni",
+ "Julaayi",
+ "Agusito",
+ "Sebuttemba",
+ "Okitobba",
+ "Novemba",
+ "Desemba"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "lg",
+ "localeID": "lg",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_lkt-us.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_lkt-us.js
index e5b488b8..8f0f754f 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_lkt-us.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_lkt-us.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Wan\u00edyetu W\u00ed",
"T\u021fah\u00e9kap\u0161u\u014b W\u00ed"
],
+ "STANDALONEMONTH": [
+ "Wi\u00f3the\u021fika W\u00ed",
+ "Thiy\u00f3\u021feyu\u014bka W\u00ed",
+ "I\u0161t\u00e1wi\u010dhayaza\u014b W\u00ed",
+ "P\u021fe\u017e\u00edt\u021fo W\u00ed",
+ "\u010cha\u014bw\u00e1pet\u021fo W\u00ed",
+ "W\u00edpazuk\u021fa-wa\u0161t\u00e9 W\u00ed",
+ "\u010cha\u014bp\u021f\u00e1sapa W\u00ed",
+ "Was\u00fat\u021fu\u014b W\u00ed",
+ "\u010cha\u014bw\u00e1pe\u01e7i W\u00ed",
+ "\u010cha\u014bw\u00e1pe-kasn\u00e1 W\u00ed",
+ "Wan\u00edyetu W\u00ed",
+ "T\u021fah\u00e9kap\u0161u\u014b W\u00ed"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "lkt-us",
+ "localeID": "lkt_US",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_lkt.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_lkt.js
index 57398cb3..7b66c440 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_lkt.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_lkt.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Wan\u00edyetu W\u00ed",
"T\u021fah\u00e9kap\u0161u\u014b W\u00ed"
],
+ "STANDALONEMONTH": [
+ "Wi\u00f3the\u021fika W\u00ed",
+ "Thiy\u00f3\u021feyu\u014bka W\u00ed",
+ "I\u0161t\u00e1wi\u010dhayaza\u014b W\u00ed",
+ "P\u021fe\u017e\u00edt\u021fo W\u00ed",
+ "\u010cha\u014bw\u00e1pet\u021fo W\u00ed",
+ "W\u00edpazuk\u021fa-wa\u0161t\u00e9 W\u00ed",
+ "\u010cha\u014bp\u021f\u00e1sapa W\u00ed",
+ "Was\u00fat\u021fu\u014b W\u00ed",
+ "\u010cha\u014bw\u00e1pe\u01e7i W\u00ed",
+ "\u010cha\u014bw\u00e1pe-kasn\u00e1 W\u00ed",
+ "Wan\u00edyetu W\u00ed",
+ "T\u021fah\u00e9kap\u0161u\u014b W\u00ed"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "lkt",
+ "localeID": "lkt",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ln-ao.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ln-ao.js
index 8a88e889..a3bc1090 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ln-ao.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ln-ao.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nvb",
"dsb"
],
+ "STANDALONEMONTH": [
+ "s\u00e1nz\u00e1 ya yambo",
+ "s\u00e1nz\u00e1 ya m\u00edbal\u00e9",
+ "s\u00e1nz\u00e1 ya m\u00eds\u00e1to",
+ "s\u00e1nz\u00e1 ya m\u00ednei",
+ "s\u00e1nz\u00e1 ya m\u00edt\u00e1no",
+ "s\u00e1nz\u00e1 ya mot\u00f3b\u00e1",
+ "s\u00e1nz\u00e1 ya nsambo",
+ "s\u00e1nz\u00e1 ya mwambe",
+ "s\u00e1nz\u00e1 ya libwa",
+ "s\u00e1nz\u00e1 ya z\u00f3mi",
+ "s\u00e1nz\u00e1 ya z\u00f3mi na m\u0254\u030ck\u0254\u0301",
+ "s\u00e1nz\u00e1 ya z\u00f3mi na m\u00edbal\u00e9"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "ln-ao",
+ "localeID": "ln_AO",
"pluralCat": function(n, opt_precision) { if (n >= 0 && n <= 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ln-cd.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ln-cd.js
index f08e4f4f..d46aa944 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ln-cd.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ln-cd.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nvb",
"dsb"
],
+ "STANDALONEMONTH": [
+ "s\u00e1nz\u00e1 ya yambo",
+ "s\u00e1nz\u00e1 ya m\u00edbal\u00e9",
+ "s\u00e1nz\u00e1 ya m\u00eds\u00e1to",
+ "s\u00e1nz\u00e1 ya m\u00ednei",
+ "s\u00e1nz\u00e1 ya m\u00edt\u00e1no",
+ "s\u00e1nz\u00e1 ya mot\u00f3b\u00e1",
+ "s\u00e1nz\u00e1 ya nsambo",
+ "s\u00e1nz\u00e1 ya mwambe",
+ "s\u00e1nz\u00e1 ya libwa",
+ "s\u00e1nz\u00e1 ya z\u00f3mi",
+ "s\u00e1nz\u00e1 ya z\u00f3mi na m\u0254\u030ck\u0254\u0301",
+ "s\u00e1nz\u00e1 ya z\u00f3mi na m\u00edbal\u00e9"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "ln-cd",
+ "localeID": "ln_CD",
"pluralCat": function(n, opt_precision) { if (n >= 0 && n <= 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ln-cf.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ln-cf.js
index 7af86d5a..8a2d9997 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ln-cf.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ln-cf.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nvb",
"dsb"
],
+ "STANDALONEMONTH": [
+ "s\u00e1nz\u00e1 ya yambo",
+ "s\u00e1nz\u00e1 ya m\u00edbal\u00e9",
+ "s\u00e1nz\u00e1 ya m\u00eds\u00e1to",
+ "s\u00e1nz\u00e1 ya m\u00ednei",
+ "s\u00e1nz\u00e1 ya m\u00edt\u00e1no",
+ "s\u00e1nz\u00e1 ya mot\u00f3b\u00e1",
+ "s\u00e1nz\u00e1 ya nsambo",
+ "s\u00e1nz\u00e1 ya mwambe",
+ "s\u00e1nz\u00e1 ya libwa",
+ "s\u00e1nz\u00e1 ya z\u00f3mi",
+ "s\u00e1nz\u00e1 ya z\u00f3mi na m\u0254\u030ck\u0254\u0301",
+ "s\u00e1nz\u00e1 ya z\u00f3mi na m\u00edbal\u00e9"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "ln-cf",
+ "localeID": "ln_CF",
"pluralCat": function(n, opt_precision) { if (n >= 0 && n <= 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ln-cg.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ln-cg.js
index 5c8e41cd..fd47f4ab 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ln-cg.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ln-cg.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nvb",
"dsb"
],
+ "STANDALONEMONTH": [
+ "s\u00e1nz\u00e1 ya yambo",
+ "s\u00e1nz\u00e1 ya m\u00edbal\u00e9",
+ "s\u00e1nz\u00e1 ya m\u00eds\u00e1to",
+ "s\u00e1nz\u00e1 ya m\u00ednei",
+ "s\u00e1nz\u00e1 ya m\u00edt\u00e1no",
+ "s\u00e1nz\u00e1 ya mot\u00f3b\u00e1",
+ "s\u00e1nz\u00e1 ya nsambo",
+ "s\u00e1nz\u00e1 ya mwambe",
+ "s\u00e1nz\u00e1 ya libwa",
+ "s\u00e1nz\u00e1 ya z\u00f3mi",
+ "s\u00e1nz\u00e1 ya z\u00f3mi na m\u0254\u030ck\u0254\u0301",
+ "s\u00e1nz\u00e1 ya z\u00f3mi na m\u00edbal\u00e9"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "ln-cg",
+ "localeID": "ln_CG",
"pluralCat": function(n, opt_precision) { if (n >= 0 && n <= 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ln.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ln.js
index 300de98e..63ad366e 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ln.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ln.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nvb",
"dsb"
],
+ "STANDALONEMONTH": [
+ "s\u00e1nz\u00e1 ya yambo",
+ "s\u00e1nz\u00e1 ya m\u00edbal\u00e9",
+ "s\u00e1nz\u00e1 ya m\u00eds\u00e1to",
+ "s\u00e1nz\u00e1 ya m\u00ednei",
+ "s\u00e1nz\u00e1 ya m\u00edt\u00e1no",
+ "s\u00e1nz\u00e1 ya mot\u00f3b\u00e1",
+ "s\u00e1nz\u00e1 ya nsambo",
+ "s\u00e1nz\u00e1 ya mwambe",
+ "s\u00e1nz\u00e1 ya libwa",
+ "s\u00e1nz\u00e1 ya z\u00f3mi",
+ "s\u00e1nz\u00e1 ya z\u00f3mi na m\u0254\u030ck\u0254\u0301",
+ "s\u00e1nz\u00e1 ya z\u00f3mi na m\u00edbal\u00e9"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "ln",
+ "localeID": "ln",
"pluralCat": function(n, opt_precision) { if (n >= 0 && n <= 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_lo-la.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_lo-la.js
index f6bf34f1..17092698 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_lo-la.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_lo-la.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u0e9e.\u0e88.",
"\u0e97.\u0ea7."
],
+ "STANDALONEMONTH": [
+ "\u0ea1\u0eb1\u0e87\u0e81\u0ead\u0e99",
+ "\u0e81\u0eb8\u0ea1\u0e9e\u0eb2",
+ "\u0ea1\u0eb5\u0e99\u0eb2",
+ "\u0ec0\u0ea1\u0eaa\u0eb2",
+ "\u0e9e\u0eb6\u0e94\u0eaa\u0eb0\u0e9e\u0eb2",
+ "\u0ea1\u0eb4\u0e96\u0eb8\u0e99\u0eb2",
+ "\u0e81\u0ecd\u0ea5\u0eb0\u0e81\u0ebb\u0e94",
+ "\u0eaa\u0eb4\u0e87\u0eab\u0eb2",
+ "\u0e81\u0eb1\u0e99\u0e8d\u0eb2",
+ "\u0e95\u0eb8\u0ea5\u0eb2",
+ "\u0e9e\u0eb0\u0e88\u0eb4\u0e81",
+ "\u0e97\u0eb1\u0e99\u0ea7\u0eb2"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "lo-la",
+ "localeID": "lo_LA",
"pluralCat": function(n, opt_precision) { return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_lo.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_lo.js
index 76d51754..9d273937 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_lo.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_lo.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u0e9e.\u0e88.",
"\u0e97.\u0ea7."
],
+ "STANDALONEMONTH": [
+ "\u0ea1\u0eb1\u0e87\u0e81\u0ead\u0e99",
+ "\u0e81\u0eb8\u0ea1\u0e9e\u0eb2",
+ "\u0ea1\u0eb5\u0e99\u0eb2",
+ "\u0ec0\u0ea1\u0eaa\u0eb2",
+ "\u0e9e\u0eb6\u0e94\u0eaa\u0eb0\u0e9e\u0eb2",
+ "\u0ea1\u0eb4\u0e96\u0eb8\u0e99\u0eb2",
+ "\u0e81\u0ecd\u0ea5\u0eb0\u0e81\u0ebb\u0e94",
+ "\u0eaa\u0eb4\u0e87\u0eab\u0eb2",
+ "\u0e81\u0eb1\u0e99\u0e8d\u0eb2",
+ "\u0e95\u0eb8\u0ea5\u0eb2",
+ "\u0e9e\u0eb0\u0e88\u0eb4\u0e81",
+ "\u0e97\u0eb1\u0e99\u0ea7\u0eb2"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "lo",
+ "localeID": "lo",
"pluralCat": function(n, opt_precision) { return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_lt-lt.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_lt-lt.js
index 34e16f9d..cd4d0e9a 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_lt-lt.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_lt-lt.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"lapkr.",
"gruod."
],
+ "STANDALONEMONTH": [
+ "sausis",
+ "vasaris",
+ "kovas",
+ "balandis",
+ "gegu\u017e\u0117",
+ "bir\u017eelis",
+ "liepa",
+ "rugpj\u016btis",
+ "rugs\u0117jis",
+ "spalis",
+ "lapkritis",
+ "gruodis"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "lt-lt",
+ "localeID": "lt_LT",
"pluralCat": function(n, opt_precision) { var vf = getVF(n, opt_precision); if (n % 10 == 1 && (n % 100 < 11 || n % 100 > 19)) { return PLURAL_CATEGORY.ONE; } if (n % 10 >= 2 && n % 10 <= 9 && (n % 100 < 11 || n % 100 > 19)) { return PLURAL_CATEGORY.FEW; } if (vf.f != 0) { return PLURAL_CATEGORY.MANY; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_lt.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_lt.js
index b8f7a9b3..24cb3150 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_lt.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_lt.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"lapkr.",
"gruod."
],
+ "STANDALONEMONTH": [
+ "sausis",
+ "vasaris",
+ "kovas",
+ "balandis",
+ "gegu\u017e\u0117",
+ "bir\u017eelis",
+ "liepa",
+ "rugpj\u016btis",
+ "rugs\u0117jis",
+ "spalis",
+ "lapkritis",
+ "gruodis"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "lt",
+ "localeID": "lt",
"pluralCat": function(n, opt_precision) { var vf = getVF(n, opt_precision); if (n % 10 == 1 && (n % 100 < 11 || n % 100 > 19)) { return PLURAL_CATEGORY.ONE; } if (n % 10 >= 2 && n % 10 <= 9 && (n % 100 < 11 || n % 100 > 19)) { return PLURAL_CATEGORY.FEW; } if (vf.f != 0) { return PLURAL_CATEGORY.MANY; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_lu-cd.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_lu-cd.js
index 05533233..a274e9d8 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_lu-cd.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_lu-cd.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Kas",
"Cis"
],
+ "STANDALONEMONTH": [
+ "Ciongo",
+ "L\u00f9ishi",
+ "Lus\u00f2lo",
+ "M\u00f9uy\u00e0",
+ "Lum\u00f9ng\u00f9l\u00f9",
+ "Lufuimi",
+ "Kab\u00e0l\u00e0sh\u00ecp\u00f9",
+ "L\u00f9sh\u00eck\u00e0",
+ "Lutongolo",
+ "Lung\u00f9di",
+ "Kasw\u00e8k\u00e8s\u00e8",
+ "Cisw\u00e0"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "lu-cd",
+ "localeID": "lu_CD",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_lu.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_lu.js
index 9cddb8fa..efbfd6a8 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_lu.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_lu.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Kas",
"Cis"
],
+ "STANDALONEMONTH": [
+ "Ciongo",
+ "L\u00f9ishi",
+ "Lus\u00f2lo",
+ "M\u00f9uy\u00e0",
+ "Lum\u00f9ng\u00f9l\u00f9",
+ "Lufuimi",
+ "Kab\u00e0l\u00e0sh\u00ecp\u00f9",
+ "L\u00f9sh\u00eck\u00e0",
+ "Lutongolo",
+ "Lung\u00f9di",
+ "Kasw\u00e8k\u00e8s\u00e8",
+ "Cisw\u00e0"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "lu",
+ "localeID": "lu",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_luo-ke.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_luo-ke.js
index 0f85ee6b..2bb386fd 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_luo-ke.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_luo-ke.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"DGI",
"DAG"
],
+ "STANDALONEMONTH": [
+ "Dwe mar Achiel",
+ "Dwe mar Ariyo",
+ "Dwe mar Adek",
+ "Dwe mar Ang\u2019wen",
+ "Dwe mar Abich",
+ "Dwe mar Auchiel",
+ "Dwe mar Abiriyo",
+ "Dwe mar Aboro",
+ "Dwe mar Ochiko",
+ "Dwe mar Apar",
+ "Dwe mar gi achiel",
+ "Dwe mar Apar gi ariyo"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "luo-ke",
+ "localeID": "luo_KE",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_luo.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_luo.js
index 0067d1f4..8ca950bc 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_luo.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_luo.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"DGI",
"DAG"
],
+ "STANDALONEMONTH": [
+ "Dwe mar Achiel",
+ "Dwe mar Ariyo",
+ "Dwe mar Adek",
+ "Dwe mar Ang\u2019wen",
+ "Dwe mar Abich",
+ "Dwe mar Auchiel",
+ "Dwe mar Abiriyo",
+ "Dwe mar Aboro",
+ "Dwe mar Ochiko",
+ "Dwe mar Apar",
+ "Dwe mar gi achiel",
+ "Dwe mar Apar gi ariyo"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "luo",
+ "localeID": "luo",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_luy-ke.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_luy-ke.js
index 301f5bf8..77474236 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_luy-ke.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_luy-ke.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Des"
],
+ "STANDALONEMONTH": [
+ "Januari",
+ "Februari",
+ "Machi",
+ "Aprili",
+ "Mei",
+ "Juni",
+ "Julai",
+ "Agosti",
+ "Septemba",
+ "Oktoba",
+ "Novemba",
+ "Desemba"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "luy-ke",
+ "localeID": "luy_KE",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_luy.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_luy.js
index 01f683a5..23a74ab0 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_luy.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_luy.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Des"
],
+ "STANDALONEMONTH": [
+ "Januari",
+ "Februari",
+ "Machi",
+ "Aprili",
+ "Mei",
+ "Juni",
+ "Julai",
+ "Agosti",
+ "Septemba",
+ "Oktoba",
+ "Novemba",
+ "Desemba"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "luy",
+ "localeID": "luy",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_lv-lv.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_lv-lv.js
index e892fd43..55d42b4a 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_lv-lv.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_lv-lv.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"nov.",
"dec."
],
+ "STANDALONEMONTH": [
+ "Janv\u0101ris",
+ "Febru\u0101ris",
+ "Marts",
+ "Apr\u012blis",
+ "Maijs",
+ "J\u016bnijs",
+ "J\u016blijs",
+ "Augusts",
+ "Septembris",
+ "Oktobris",
+ "Novembris",
+ "Decembris"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "lv-lv",
+ "localeID": "lv_LV",
"pluralCat": function(n, opt_precision) { var vf = getVF(n, opt_precision); if (n % 10 == 0 || n % 100 >= 11 && n % 100 <= 19 || vf.v == 2 && vf.f % 100 >= 11 && vf.f % 100 <= 19) { return PLURAL_CATEGORY.ZERO; } if (n % 10 == 1 && n % 100 != 11 || vf.v == 2 && vf.f % 10 == 1 && vf.f % 100 != 11 || vf.v != 2 && vf.f % 10 == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_lv.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_lv.js
index c22256cb..5394baf5 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_lv.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_lv.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"nov.",
"dec."
],
+ "STANDALONEMONTH": [
+ "Janv\u0101ris",
+ "Febru\u0101ris",
+ "Marts",
+ "Apr\u012blis",
+ "Maijs",
+ "J\u016bnijs",
+ "J\u016blijs",
+ "Augusts",
+ "Septembris",
+ "Oktobris",
+ "Novembris",
+ "Decembris"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "lv",
+ "localeID": "lv",
"pluralCat": function(n, opt_precision) { var vf = getVF(n, opt_precision); if (n % 10 == 0 || n % 100 >= 11 && n % 100 <= 19 || vf.v == 2 && vf.f % 100 >= 11 && vf.f % 100 <= 19) { return PLURAL_CATEGORY.ZERO; } if (n % 10 == 1 && n % 100 != 11 || vf.v == 2 && vf.f % 10 == 1 && vf.f % 100 != 11 || vf.v != 2 && vf.f % 10 == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mas-ke.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mas-ke.js
index 74bf268b..4b5be412 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mas-ke.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mas-ke.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Sh\u0289\u0301",
"Nt\u0289\u0301"
],
+ "STANDALONEMONTH": [
+ "Oladal\u0289\u0301",
+ "Ar\u00e1t",
+ "\u0186\u025bn\u0268\u0301\u0254\u0268\u014b\u0254k",
+ "Olodoy\u00ed\u00f3r\u00ed\u00ea ink\u00f3k\u00fa\u00e2",
+ "Oloil\u00e9p\u016bny\u012b\u0113 ink\u00f3k\u00fa\u00e2",
+ "K\u00faj\u00fa\u0254r\u0254k",
+ "M\u00f3rus\u00e1sin",
+ "\u0186l\u0254\u0301\u0268\u0301b\u0254\u0301r\u00e1r\u025b",
+ "K\u00fash\u00een",
+ "Olg\u00edsan",
+ "P\u0289sh\u0289\u0301ka",
+ "Nt\u0289\u0301\u014b\u0289\u0301s"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "mas-ke",
+ "localeID": "mas_KE",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mas-tz.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mas-tz.js
index 0a81920b..bf88154c 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mas-tz.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mas-tz.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Sh\u0289\u0301",
"Nt\u0289\u0301"
],
+ "STANDALONEMONTH": [
+ "Oladal\u0289\u0301",
+ "Ar\u00e1t",
+ "\u0186\u025bn\u0268\u0301\u0254\u0268\u014b\u0254k",
+ "Olodoy\u00ed\u00f3r\u00ed\u00ea ink\u00f3k\u00fa\u00e2",
+ "Oloil\u00e9p\u016bny\u012b\u0113 ink\u00f3k\u00fa\u00e2",
+ "K\u00faj\u00fa\u0254r\u0254k",
+ "M\u00f3rus\u00e1sin",
+ "\u0186l\u0254\u0301\u0268\u0301b\u0254\u0301r\u00e1r\u025b",
+ "K\u00fash\u00een",
+ "Olg\u00edsan",
+ "P\u0289sh\u0289\u0301ka",
+ "Nt\u0289\u0301\u014b\u0289\u0301s"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "mas-tz",
+ "localeID": "mas_TZ",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mas.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mas.js
index 16938f98..a1557f56 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mas.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mas.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Sh\u0289\u0301",
"Nt\u0289\u0301"
],
+ "STANDALONEMONTH": [
+ "Oladal\u0289\u0301",
+ "Ar\u00e1t",
+ "\u0186\u025bn\u0268\u0301\u0254\u0268\u014b\u0254k",
+ "Olodoy\u00ed\u00f3r\u00ed\u00ea ink\u00f3k\u00fa\u00e2",
+ "Oloil\u00e9p\u016bny\u012b\u0113 ink\u00f3k\u00fa\u00e2",
+ "K\u00faj\u00fa\u0254r\u0254k",
+ "M\u00f3rus\u00e1sin",
+ "\u0186l\u0254\u0301\u0268\u0301b\u0254\u0301r\u00e1r\u025b",
+ "K\u00fash\u00een",
+ "Olg\u00edsan",
+ "P\u0289sh\u0289\u0301ka",
+ "Nt\u0289\u0301\u014b\u0289\u0301s"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "mas",
+ "localeID": "mas",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mer-ke.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mer-ke.js
index da3e57d0..a4eda25e 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mer-ke.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mer-ke.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"NOV",
"DEC"
],
+ "STANDALONEMONTH": [
+ "Januar\u0129",
+ "Feburuar\u0129",
+ "Machi",
+ "\u0128pur\u0169",
+ "M\u0129\u0129",
+ "Njuni",
+ "Njura\u0129",
+ "Agasti",
+ "Septemba",
+ "Okt\u0169ba",
+ "Novemba",
+ "Dicemba"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "mer-ke",
+ "localeID": "mer_KE",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mer.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mer.js
index 8c359f30..6cc84a0f 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mer.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mer.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"NOV",
"DEC"
],
+ "STANDALONEMONTH": [
+ "Januar\u0129",
+ "Feburuar\u0129",
+ "Machi",
+ "\u0128pur\u0169",
+ "M\u0129\u0129",
+ "Njuni",
+ "Njura\u0129",
+ "Agasti",
+ "Septemba",
+ "Okt\u0169ba",
+ "Novemba",
+ "Dicemba"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "mer",
+ "localeID": "mer",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mfe-mu.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mfe-mu.js
index 1222582e..55ef1ff2 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mfe-mu.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mfe-mu.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"nov",
"des"
],
+ "STANDALONEMONTH": [
+ "zanvie",
+ "fevriye",
+ "mars",
+ "avril",
+ "me",
+ "zin",
+ "zilye",
+ "out",
+ "septam",
+ "oktob",
+ "novam",
+ "desam"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "mfe-mu",
+ "localeID": "mfe_MU",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mfe.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mfe.js
index 56029318..e48e27bd 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mfe.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mfe.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"nov",
"des"
],
+ "STANDALONEMONTH": [
+ "zanvie",
+ "fevriye",
+ "mars",
+ "avril",
+ "me",
+ "zin",
+ "zilye",
+ "out",
+ "septam",
+ "oktob",
+ "novam",
+ "desam"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "mfe",
+ "localeID": "mfe",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mg-mg.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mg-mg.js
index 7d649917..1bb99a0e 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mg-mg.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mg-mg.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Des"
],
+ "STANDALONEMONTH": [
+ "Janoary",
+ "Febroary",
+ "Martsa",
+ "Aprily",
+ "Mey",
+ "Jona",
+ "Jolay",
+ "Aogositra",
+ "Septambra",
+ "Oktobra",
+ "Novambra",
+ "Desambra"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "mg-mg",
+ "localeID": "mg_MG",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mg.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mg.js
index 7b4b8716..5c277903 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mg.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mg.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Des"
],
+ "STANDALONEMONTH": [
+ "Janoary",
+ "Febroary",
+ "Martsa",
+ "Aprily",
+ "Mey",
+ "Jona",
+ "Jolay",
+ "Aogositra",
+ "Septambra",
+ "Oktobra",
+ "Novambra",
+ "Desambra"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "mg",
+ "localeID": "mg",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mgh-mz.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mgh-mz.js
index 3a96657c..f883d1ce 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mgh-mz.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mgh-mz.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Moj",
"Yel"
],
+ "STANDALONEMONTH": [
+ "Mweri wo kwanza",
+ "Mweri wo unayeli",
+ "Mweri wo uneraru",
+ "Mweri wo unecheshe",
+ "Mweri wo unethanu",
+ "Mweri wo thanu na mocha",
+ "Mweri wo saba",
+ "Mweri wo nane",
+ "Mweri wo tisa",
+ "Mweri wo kumi",
+ "Mweri wo kumi na moja",
+ "Mweri wo kumi na yel\u2019li"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "mgh-mz",
+ "localeID": "mgh_MZ",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mgh.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mgh.js
index 8b52d094..e35cb07c 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mgh.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mgh.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Moj",
"Yel"
],
+ "STANDALONEMONTH": [
+ "Mweri wo kwanza",
+ "Mweri wo unayeli",
+ "Mweri wo uneraru",
+ "Mweri wo unecheshe",
+ "Mweri wo unethanu",
+ "Mweri wo thanu na mocha",
+ "Mweri wo saba",
+ "Mweri wo nane",
+ "Mweri wo tisa",
+ "Mweri wo kumi",
+ "Mweri wo kumi na moja",
+ "Mweri wo kumi na yel\u2019li"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "mgh",
+ "localeID": "mgh",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mgo-cm.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mgo-cm.js
index da0baa9d..d1dc4f67 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mgo-cm.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mgo-cm.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"im\u0259g z\u00f2",
"im\u0259g krizmed"
],
+ "STANDALONEMONTH": [
+ "im\u0259g mbegtug",
+ "imeg \u00e0b\u00f9b\u00ec",
+ "imeg mb\u0259\u014bchubi",
+ "im\u0259g ngw\u0259\u0300t",
+ "im\u0259g fog",
+ "im\u0259g ichiib\u0254d",
+ "im\u0259g \u00e0d\u00f9mb\u0259\u0300\u014b",
+ "im\u0259g ichika",
+ "im\u0259g kud",
+ "im\u0259g t\u00e8si\u02bce",
+ "im\u0259g z\u00f2",
+ "im\u0259g krizmed"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "mgo-cm",
+ "localeID": "mgo_CM",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mgo.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mgo.js
index 74bc53ec..23ab0b1e 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mgo.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mgo.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"im\u0259g z\u00f2",
"im\u0259g krizmed"
],
+ "STANDALONEMONTH": [
+ "im\u0259g mbegtug",
+ "imeg \u00e0b\u00f9b\u00ec",
+ "imeg mb\u0259\u014bchubi",
+ "im\u0259g ngw\u0259\u0300t",
+ "im\u0259g fog",
+ "im\u0259g ichiib\u0254d",
+ "im\u0259g \u00e0d\u00f9mb\u0259\u0300\u014b",
+ "im\u0259g ichika",
+ "im\u0259g kud",
+ "im\u0259g t\u00e8si\u02bce",
+ "im\u0259g z\u00f2",
+ "im\u0259g krizmed"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "mgo",
+ "localeID": "mgo",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mk-mk.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mk-mk.js
index bd775d86..1eb48374 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mk-mk.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mk-mk.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u043d\u043e\u0435\u043c.",
"\u0434\u0435\u043a."
],
+ "STANDALONEMONTH": [
+ "\u0458\u0430\u043d\u0443\u0430\u0440\u0438",
+ "\u0444\u0435\u0432\u0440\u0443\u0430\u0440\u0438",
+ "\u043c\u0430\u0440\u0442",
+ "\u0430\u043f\u0440\u0438\u043b",
+ "\u043c\u0430\u0458",
+ "\u0458\u0443\u043d\u0438",
+ "\u0458\u0443\u043b\u0438",
+ "\u0430\u0432\u0433\u0443\u0441\u0442",
+ "\u0441\u0435\u043f\u0442\u0435\u043c\u0432\u0440\u0438",
+ "\u043e\u043a\u0442\u043e\u043c\u0432\u0440\u0438",
+ "\u043d\u043e\u0435\u043c\u0432\u0440\u0438",
+ "\u0434\u0435\u043a\u0435\u043c\u0432\u0440\u0438"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "mk-mk",
+ "localeID": "mk_MK",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (vf.v == 0 && i % 10 == 1 || vf.f % 10 == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mk.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mk.js
index b456dc6e..81b07fd9 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mk.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mk.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u043d\u043e\u0435\u043c.",
"\u0434\u0435\u043a."
],
+ "STANDALONEMONTH": [
+ "\u0458\u0430\u043d\u0443\u0430\u0440\u0438",
+ "\u0444\u0435\u0432\u0440\u0443\u0430\u0440\u0438",
+ "\u043c\u0430\u0440\u0442",
+ "\u0430\u043f\u0440\u0438\u043b",
+ "\u043c\u0430\u0458",
+ "\u0458\u0443\u043d\u0438",
+ "\u0458\u0443\u043b\u0438",
+ "\u0430\u0432\u0433\u0443\u0441\u0442",
+ "\u0441\u0435\u043f\u0442\u0435\u043c\u0432\u0440\u0438",
+ "\u043e\u043a\u0442\u043e\u043c\u0432\u0440\u0438",
+ "\u043d\u043e\u0435\u043c\u0432\u0440\u0438",
+ "\u0434\u0435\u043a\u0435\u043c\u0432\u0440\u0438"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "mk",
+ "localeID": "mk",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (vf.v == 0 && i % 10 == 1 || vf.f % 10 == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ml-in.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ml-in.js
index c3d012ff..e160fa91 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ml-in.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ml-in.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u0d28\u0d35\u0d02",
"\u0d21\u0d3f\u0d38\u0d02"
],
+ "STANDALONEMONTH": [
+ "\u0d1c\u0d28\u0d41\u0d35\u0d30\u0d3f",
+ "\u0d2b\u0d46\u0d2c\u0d4d\u0d30\u0d41\u0d35\u0d30\u0d3f",
+ "\u0d2e\u0d3e\u0d7c\u0d1a\u0d4d\u0d1a\u0d4d",
+ "\u0d0f\u0d2a\u0d4d\u0d30\u0d3f\u0d7d",
+ "\u0d2e\u0d47\u0d2f\u0d4d",
+ "\u0d1c\u0d42\u0d7a",
+ "\u0d1c\u0d42\u0d32\u0d48",
+ "\u0d06\u0d17\u0d38\u0d4d\u0d31\u0d4d\u0d31\u0d4d",
+ "\u0d38\u0d46\u0d2a\u0d4d\u0d31\u0d4d\u0d31\u0d02\u0d2c\u0d7c",
+ "\u0d12\u0d15\u0d4d\u200c\u0d1f\u0d4b\u0d2c\u0d7c",
+ "\u0d28\u0d35\u0d02\u0d2c\u0d7c",
+ "\u0d21\u0d3f\u0d38\u0d02\u0d2c\u0d7c"
+ ],
"WEEKENDRANGE": [
6,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "ml-in",
+ "localeID": "ml_IN",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ml.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ml.js
index 8d50656e..1e2bcc88 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ml.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ml.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u0d28\u0d35\u0d02",
"\u0d21\u0d3f\u0d38\u0d02"
],
+ "STANDALONEMONTH": [
+ "\u0d1c\u0d28\u0d41\u0d35\u0d30\u0d3f",
+ "\u0d2b\u0d46\u0d2c\u0d4d\u0d30\u0d41\u0d35\u0d30\u0d3f",
+ "\u0d2e\u0d3e\u0d7c\u0d1a\u0d4d\u0d1a\u0d4d",
+ "\u0d0f\u0d2a\u0d4d\u0d30\u0d3f\u0d7d",
+ "\u0d2e\u0d47\u0d2f\u0d4d",
+ "\u0d1c\u0d42\u0d7a",
+ "\u0d1c\u0d42\u0d32\u0d48",
+ "\u0d06\u0d17\u0d38\u0d4d\u0d31\u0d4d\u0d31\u0d4d",
+ "\u0d38\u0d46\u0d2a\u0d4d\u0d31\u0d4d\u0d31\u0d02\u0d2c\u0d7c",
+ "\u0d12\u0d15\u0d4d\u200c\u0d1f\u0d4b\u0d2c\u0d7c",
+ "\u0d28\u0d35\u0d02\u0d2c\u0d7c",
+ "\u0d21\u0d3f\u0d38\u0d02\u0d2c\u0d7c"
+ ],
"WEEKENDRANGE": [
6,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "ml",
+ "localeID": "ml",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mn-cyrl-mn.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mn-cyrl-mn.js
index 961fdd2c..88632077 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mn-cyrl-mn.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mn-cyrl-mn.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"11-\u0440 \u0441\u0430\u0440",
"12-\u0440 \u0441\u0430\u0440"
],
+ "STANDALONEMONTH": [
+ "\u041d\u044d\u0433\u0434\u04af\u0433\u044d\u044d\u0440 \u0441\u0430\u0440",
+ "\u0425\u043e\u0451\u0440\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440",
+ "\u0413\u0443\u0440\u0430\u0432\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440",
+ "\u0414\u04e9\u0440\u04e9\u0432\u0434\u04af\u0433\u044d\u044d\u0440 \u0441\u0430\u0440",
+ "\u0422\u0430\u0432\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440",
+ "\u0417\u0443\u0440\u0433\u0430\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440",
+ "\u0414\u043e\u043b\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440",
+ "\u041d\u0430\u0439\u043c\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440",
+ "\u0415\u0441\u0434\u04af\u0433\u044d\u044d\u0440 \u0441\u0430\u0440",
+ "\u0410\u0440\u0430\u0432\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440",
+ "\u0410\u0440\u0432\u0430\u043d \u043d\u044d\u0433\u0434\u04af\u0433\u044d\u044d\u0440 \u0441\u0430\u0440",
+ "\u0410\u0440\u0432\u0430\u043d \u0445\u043e\u0451\u0440\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "mn-cyrl-mn",
+ "localeID": "mn_Cyrl_MN",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mn-cyrl.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mn-cyrl.js
index c69a40d3..6b29e4e9 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mn-cyrl.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mn-cyrl.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"11-\u0440 \u0441\u0430\u0440",
"12-\u0440 \u0441\u0430\u0440"
],
+ "STANDALONEMONTH": [
+ "\u041d\u044d\u0433\u0434\u04af\u0433\u044d\u044d\u0440 \u0441\u0430\u0440",
+ "\u0425\u043e\u0451\u0440\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440",
+ "\u0413\u0443\u0440\u0430\u0432\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440",
+ "\u0414\u04e9\u0440\u04e9\u0432\u0434\u04af\u0433\u044d\u044d\u0440 \u0441\u0430\u0440",
+ "\u0422\u0430\u0432\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440",
+ "\u0417\u0443\u0440\u0433\u0430\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440",
+ "\u0414\u043e\u043b\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440",
+ "\u041d\u0430\u0439\u043c\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440",
+ "\u0415\u0441\u0434\u04af\u0433\u044d\u044d\u0440 \u0441\u0430\u0440",
+ "\u0410\u0440\u0430\u0432\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440",
+ "\u0410\u0440\u0432\u0430\u043d \u043d\u044d\u0433\u0434\u04af\u0433\u044d\u044d\u0440 \u0441\u0430\u0440",
+ "\u0410\u0440\u0432\u0430\u043d \u0445\u043e\u0451\u0440\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "mn-cyrl",
+ "localeID": "mn_Cyrl",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mn.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mn.js
index 0b424093..05f44fc6 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mn.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mn.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"11-\u0440 \u0441\u0430\u0440",
"12-\u0440 \u0441\u0430\u0440"
],
+ "STANDALONEMONTH": [
+ "\u041d\u044d\u0433\u0434\u04af\u0433\u044d\u044d\u0440 \u0441\u0430\u0440",
+ "\u0425\u043e\u0451\u0440\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440",
+ "\u0413\u0443\u0440\u0430\u0432\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440",
+ "\u0414\u04e9\u0440\u04e9\u0432\u0434\u04af\u0433\u044d\u044d\u0440 \u0441\u0430\u0440",
+ "\u0422\u0430\u0432\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440",
+ "\u0417\u0443\u0440\u0433\u0430\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440",
+ "\u0414\u043e\u043b\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440",
+ "\u041d\u0430\u0439\u043c\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440",
+ "\u0415\u0441\u0434\u04af\u0433\u044d\u044d\u0440 \u0441\u0430\u0440",
+ "\u0410\u0440\u0430\u0432\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440",
+ "\u0410\u0440\u0432\u0430\u043d \u043d\u044d\u0433\u0434\u04af\u0433\u044d\u044d\u0440 \u0441\u0430\u0440",
+ "\u0410\u0440\u0432\u0430\u043d \u0445\u043e\u0451\u0440\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "mn",
+ "localeID": "mn",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mr-in.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mr-in.js
index b040d89d..d184dd6c 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mr-in.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mr-in.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u0928\u094b\u0935\u094d\u0939\u0947\u0902",
"\u0921\u093f\u0938\u0947\u0902"
],
+ "STANDALONEMONTH": [
+ "\u091c\u093e\u0928\u0947\u0935\u093e\u0930\u0940",
+ "\u092b\u0947\u092c\u094d\u0930\u0941\u0935\u093e\u0930\u0940",
+ "\u092e\u093e\u0930\u094d\u091a",
+ "\u090f\u092a\u094d\u0930\u093f\u0932",
+ "\u092e\u0947",
+ "\u091c\u0942\u0928",
+ "\u091c\u0941\u0932\u0948",
+ "\u0911\u0917\u0938\u094d\u091f",
+ "\u0938\u092a\u094d\u091f\u0947\u0902\u092c\u0930",
+ "\u0911\u0915\u094d\u091f\u094b\u092c\u0930",
+ "\u0928\u094b\u0935\u094d\u0939\u0947\u0902\u092c\u0930",
+ "\u0921\u093f\u0938\u0947\u0902\u092c\u0930"
+ ],
"WEEKENDRANGE": [
6,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "mr-in",
+ "localeID": "mr_IN",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mr.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mr.js
index 5f5847df..868b0d0e 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mr.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mr.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u0928\u094b\u0935\u094d\u0939\u0947\u0902",
"\u0921\u093f\u0938\u0947\u0902"
],
+ "STANDALONEMONTH": [
+ "\u091c\u093e\u0928\u0947\u0935\u093e\u0930\u0940",
+ "\u092b\u0947\u092c\u094d\u0930\u0941\u0935\u093e\u0930\u0940",
+ "\u092e\u093e\u0930\u094d\u091a",
+ "\u090f\u092a\u094d\u0930\u093f\u0932",
+ "\u092e\u0947",
+ "\u091c\u0942\u0928",
+ "\u091c\u0941\u0932\u0948",
+ "\u0911\u0917\u0938\u094d\u091f",
+ "\u0938\u092a\u094d\u091f\u0947\u0902\u092c\u0930",
+ "\u0911\u0915\u094d\u091f\u094b\u092c\u0930",
+ "\u0928\u094b\u0935\u094d\u0939\u0947\u0902\u092c\u0930",
+ "\u0921\u093f\u0938\u0947\u0902\u092c\u0930"
+ ],
"WEEKENDRANGE": [
6,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "mr",
+ "localeID": "mr",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ms-latn-bn.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ms-latn-bn.js
index 1bc9d07c..05e662d2 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ms-latn-bn.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ms-latn-bn.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"Nov",
"Dis"
],
+ "STANDALONEMONTH": [
+ "Januari",
+ "Februari",
+ "Mac",
+ "April",
+ "Mei",
+ "Jun",
+ "Julai",
+ "Ogos",
+ "September",
+ "Oktober",
+ "November",
+ "Disember"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "ms-latn-bn",
+ "localeID": "ms_Latn_BN",
"pluralCat": function(n, opt_precision) { return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ms-latn-my.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ms-latn-my.js
index 5177e15f..b55fbdaa 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ms-latn-my.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ms-latn-my.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"Nov",
"Dis"
],
+ "STANDALONEMONTH": [
+ "Januari",
+ "Februari",
+ "Mac",
+ "April",
+ "Mei",
+ "Jun",
+ "Julai",
+ "Ogos",
+ "September",
+ "Oktober",
+ "November",
+ "Disember"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "ms-latn-my",
+ "localeID": "ms_Latn_MY",
"pluralCat": function(n, opt_precision) { return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ms-latn-sg.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ms-latn-sg.js
index ebd3bd4c..74c1c306 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ms-latn-sg.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ms-latn-sg.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"Nov",
"Dis"
],
+ "STANDALONEMONTH": [
+ "Januari",
+ "Februari",
+ "Mac",
+ "April",
+ "Mei",
+ "Jun",
+ "Julai",
+ "Ogos",
+ "September",
+ "Oktober",
+ "November",
+ "Disember"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "ms-latn-sg",
+ "localeID": "ms_Latn_SG",
"pluralCat": function(n, opt_precision) { return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ms-latn.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ms-latn.js
index 2d4c07a8..43a31025 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ms-latn.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ms-latn.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"Nov",
"Dis"
],
+ "STANDALONEMONTH": [
+ "Januari",
+ "Februari",
+ "Mac",
+ "April",
+ "Mei",
+ "Jun",
+ "Julai",
+ "Ogos",
+ "September",
+ "Oktober",
+ "November",
+ "Disember"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "ms-latn",
+ "localeID": "ms_Latn",
"pluralCat": function(n, opt_precision) { return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ms.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ms.js
index 0549f85b..14b9b40b 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ms.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ms.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"Nov",
"Dis"
],
+ "STANDALONEMONTH": [
+ "Januari",
+ "Februari",
+ "Mac",
+ "April",
+ "Mei",
+ "Jun",
+ "Julai",
+ "Ogos",
+ "September",
+ "Oktober",
+ "November",
+ "Disember"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "ms",
+ "localeID": "ms",
"pluralCat": function(n, opt_precision) { return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mt-mt.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mt-mt.js
index 20170a1a..bb1e89d8 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mt-mt.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mt-mt.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"Nov",
"Di\u010b"
],
+ "STANDALONEMONTH": [
+ "Jannar",
+ "Frar",
+ "Marzu",
+ "April",
+ "Mejju",
+ "\u0120unju",
+ "Lulju",
+ "Awwissu",
+ "Settembru",
+ "Ottubru",
+ "Novembru",
+ "Di\u010bembru"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "mt-mt",
+ "localeID": "mt_MT",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } if (n == 0 || n % 100 >= 2 && n % 100 <= 10) { return PLURAL_CATEGORY.FEW; } if (n % 100 >= 11 && n % 100 <= 19) { return PLURAL_CATEGORY.MANY; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mt.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mt.js
index 94902b19..48da84e9 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mt.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mt.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"Nov",
"Di\u010b"
],
+ "STANDALONEMONTH": [
+ "Jannar",
+ "Frar",
+ "Marzu",
+ "April",
+ "Mejju",
+ "\u0120unju",
+ "Lulju",
+ "Awwissu",
+ "Settembru",
+ "Ottubru",
+ "Novembru",
+ "Di\u010bembru"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "mt",
+ "localeID": "mt",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } if (n == 0 || n % 100 >= 2 && n % 100 <= 10) { return PLURAL_CATEGORY.FEW; } if (n % 100 >= 11 && n % 100 <= 19) { return PLURAL_CATEGORY.MANY; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mua-cm.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mua-cm.js
index 49c1012d..2584507a 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mua-cm.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mua-cm.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"FGW",
"FYU"
],
+ "STANDALONEMONTH": [
+ "F\u0129i Loo",
+ "Cokcwakla\u014bne",
+ "Cokcwaklii",
+ "F\u0129i Marfoo",
+ "Mad\u01dd\u01dduut\u01ddbija\u014b",
+ "Mam\u01dd\u014bgw\u00e3afahbii",
+ "Mam\u01dd\u014bgw\u00e3alii",
+ "Mad\u01ddmbii",
+ "F\u0129i D\u01dd\u0253lii",
+ "F\u0129i Munda\u014b",
+ "F\u0129i Gwahlle",
+ "F\u0129i Yuru"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "mua-cm",
+ "localeID": "mua_CM",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mua.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mua.js
index c5f30a2f..3035de87 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_mua.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_mua.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"FGW",
"FYU"
],
+ "STANDALONEMONTH": [
+ "F\u0129i Loo",
+ "Cokcwakla\u014bne",
+ "Cokcwaklii",
+ "F\u0129i Marfoo",
+ "Mad\u01dd\u01dduut\u01ddbija\u014b",
+ "Mam\u01dd\u014bgw\u00e3afahbii",
+ "Mam\u01dd\u014bgw\u00e3alii",
+ "Mad\u01ddmbii",
+ "F\u0129i D\u01dd\u0253lii",
+ "F\u0129i Munda\u014b",
+ "F\u0129i Gwahlle",
+ "F\u0129i Yuru"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "mua",
+ "localeID": "mua",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_my-mm.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_my-mm.js
index d658ac96..f39a9d1b 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_my-mm.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_my-mm.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u1014\u102d\u102f",
"\u1012\u102e"
],
+ "STANDALONEMONTH": [
+ "\u1007\u1014\u103a\u1014\u101d\u102b\u101b\u102e",
+ "\u1016\u1031\u1016\u1031\u102c\u103a\u101d\u102b\u101b\u102e",
+ "\u1019\u1010\u103a",
+ "\u1027\u1015\u103c\u102e",
+ "\u1019\u1031",
+ "\u1007\u103d\u1014\u103a",
+ "\u1007\u1030\u101c\u102d\u102f\u1004\u103a",
+ "\u1029\u1002\u102f\u1010\u103a",
+ "\u1005\u1000\u103a\u1010\u1004\u103a\u1018\u102c",
+ "\u1021\u1031\u102c\u1000\u103a\u1010\u102d\u102f\u1018\u102c",
+ "\u1014\u102d\u102f\u101d\u1004\u103a\u1018\u102c",
+ "\u1012\u102e\u1007\u1004\u103a\u1018\u102c"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "my-mm",
+ "localeID": "my_MM",
"pluralCat": function(n, opt_precision) { return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_my.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_my.js
index 7a6c02b4..610432e6 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_my.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_my.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u1014\u102d\u102f",
"\u1012\u102e"
],
+ "STANDALONEMONTH": [
+ "\u1007\u1014\u103a\u1014\u101d\u102b\u101b\u102e",
+ "\u1016\u1031\u1016\u1031\u102c\u103a\u101d\u102b\u101b\u102e",
+ "\u1019\u1010\u103a",
+ "\u1027\u1015\u103c\u102e",
+ "\u1019\u1031",
+ "\u1007\u103d\u1014\u103a",
+ "\u1007\u1030\u101c\u102d\u102f\u1004\u103a",
+ "\u1029\u1002\u102f\u1010\u103a",
+ "\u1005\u1000\u103a\u1010\u1004\u103a\u1018\u102c",
+ "\u1021\u1031\u102c\u1000\u103a\u1010\u102d\u102f\u1018\u102c",
+ "\u1014\u102d\u102f\u101d\u1004\u103a\u1018\u102c",
+ "\u1012\u102e\u1007\u1004\u103a\u1018\u102c"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "my",
+ "localeID": "my",
"pluralCat": function(n, opt_precision) { return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_naq-na.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_naq-na.js
index 699ab621..89b0ae42 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_naq-na.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_naq-na.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "\u01c3Khanni",
+ "\u01c3Khan\u01c0g\u00f4ab",
+ "\u01c0Khuu\u01c1kh\u00e2b",
+ "\u01c3H\u00f4a\u01c2khaib",
+ "\u01c3Khaits\u00e2b",
+ "Gama\u01c0aeb",
+ "\u01c2Khoesaob",
+ "Ao\u01c1khuum\u00fb\u01c1kh\u00e2b",
+ "Tara\u01c0khuum\u00fb\u01c1kh\u00e2b",
+ "\u01c2N\u00fb\u01c1n\u00e2iseb",
+ "\u01c0Hoo\u01c2gaeb",
+ "H\u00f4asore\u01c1kh\u00e2b"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "naq-na",
+ "localeID": "naq_NA",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_naq.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_naq.js
index 3c376cdb..e4297ea4 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_naq.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_naq.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "\u01c3Khanni",
+ "\u01c3Khan\u01c0g\u00f4ab",
+ "\u01c0Khuu\u01c1kh\u00e2b",
+ "\u01c3H\u00f4a\u01c2khaib",
+ "\u01c3Khaits\u00e2b",
+ "Gama\u01c0aeb",
+ "\u01c2Khoesaob",
+ "Ao\u01c1khuum\u00fb\u01c1kh\u00e2b",
+ "Tara\u01c0khuum\u00fb\u01c1kh\u00e2b",
+ "\u01c2N\u00fb\u01c1n\u00e2iseb",
+ "\u01c0Hoo\u01c2gaeb",
+ "H\u00f4asore\u01c1kh\u00e2b"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "naq",
+ "localeID": "naq",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nb-no.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nb-no.js
index 931bf639..5c3c749e 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nb-no.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nb-no.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"des."
],
+ "STANDALONEMONTH": [
+ "januar",
+ "februar",
+ "mars",
+ "april",
+ "mai",
+ "juni",
+ "juli",
+ "august",
+ "september",
+ "oktober",
+ "november",
+ "desember"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "nb-no",
+ "localeID": "nb_NO",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nb-sj.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nb-sj.js
index 487815bf..76df065b 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nb-sj.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nb-sj.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"des."
],
+ "STANDALONEMONTH": [
+ "januar",
+ "februar",
+ "mars",
+ "april",
+ "mai",
+ "juni",
+ "juli",
+ "august",
+ "september",
+ "oktober",
+ "november",
+ "desember"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "nb-sj",
+ "localeID": "nb_SJ",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nb.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nb.js
index 61106d82..3edcbba6 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nb.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nb.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"des."
],
+ "STANDALONEMONTH": [
+ "januar",
+ "februar",
+ "mars",
+ "april",
+ "mai",
+ "juni",
+ "juli",
+ "august",
+ "september",
+ "oktober",
+ "november",
+ "desember"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "nb",
+ "localeID": "nb",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nd-zw.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nd-zw.js
index b9ac5814..701e00bb 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nd-zw.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nd-zw.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Lwe",
"Mpal"
],
+ "STANDALONEMONTH": [
+ "Zibandlela",
+ "Nhlolanja",
+ "Mbimbitho",
+ "Mabasa",
+ "Nkwenkwezi",
+ "Nhlangula",
+ "Ntulikazi",
+ "Ncwabakazi",
+ "Mpandula",
+ "Mfumfu",
+ "Lwezi",
+ "Mpalakazi"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "nd-zw",
+ "localeID": "nd_ZW",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nd.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nd.js
index 96d113bd..5faebec5 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nd.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nd.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Lwe",
"Mpal"
],
+ "STANDALONEMONTH": [
+ "Zibandlela",
+ "Nhlolanja",
+ "Mbimbitho",
+ "Mabasa",
+ "Nkwenkwezi",
+ "Nhlangula",
+ "Ntulikazi",
+ "Ncwabakazi",
+ "Mpandula",
+ "Mfumfu",
+ "Lwezi",
+ "Mpalakazi"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "nd",
+ "localeID": "nd",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ne-in.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ne-in.js
index 283c8ca2..a672c6d4 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ne-in.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ne-in.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u0928\u094b\u092d\u0947\u092e\u094d\u092c\u0930",
"\u0921\u093f\u0938\u0947\u092e\u094d\u092c\u0930"
],
+ "STANDALONEMONTH": [
+ "\u091c\u0928\u0935\u0930\u0940",
+ "\u092b\u0947\u092c\u094d\u0930\u0941\u0905\u0930\u0940",
+ "\u092e\u093e\u0930\u094d\u091a",
+ "\u0905\u092a\u094d\u0930\u093f\u0932",
+ "\u092e\u0947",
+ "\u091c\u0941\u0928",
+ "\u091c\u0941\u0932\u093e\u0908",
+ "\u0905\u0917\u0938\u094d\u091f",
+ "\u0938\u0947\u092a\u094d\u091f\u0947\u092e\u094d\u092c\u0930",
+ "\u0905\u0915\u094d\u091f\u094b\u092c\u0930",
+ "\u0928\u094b\u092d\u0947\u092e\u094d\u092c\u0930",
+ "\u0921\u093f\u0938\u0947\u092e\u094d\u092c\u0930"
+ ],
"WEEKENDRANGE": [
6,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "ne-in",
+ "localeID": "ne_IN",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ne-np.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ne-np.js
index d8e52d08..2f241a74 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ne-np.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ne-np.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u0928\u094b\u092d\u0947\u092e\u094d\u092c\u0930",
"\u0921\u093f\u0938\u0947\u092e\u094d\u092c\u0930"
],
+ "STANDALONEMONTH": [
+ "\u091c\u0928\u0935\u0930\u0940",
+ "\u092b\u0947\u092c\u094d\u0930\u0941\u0905\u0930\u0940",
+ "\u092e\u093e\u0930\u094d\u091a",
+ "\u0905\u092a\u094d\u0930\u093f\u0932",
+ "\u092e\u0947",
+ "\u091c\u0941\u0928",
+ "\u091c\u0941\u0932\u093e\u0908",
+ "\u0905\u0917\u0938\u094d\u091f",
+ "\u0938\u0947\u092a\u094d\u091f\u0947\u092e\u094d\u092c\u0930",
+ "\u0905\u0915\u094d\u091f\u094b\u092c\u0930",
+ "\u0928\u094b\u092d\u0947\u092e\u094d\u092c\u0930",
+ "\u0921\u093f\u0938\u0947\u092e\u094d\u092c\u0930"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "ne-np",
+ "localeID": "ne_NP",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ne.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ne.js
index cff99fec..59b8ac04 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ne.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ne.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u0928\u094b\u092d\u0947\u092e\u094d\u092c\u0930",
"\u0921\u093f\u0938\u0947\u092e\u094d\u092c\u0930"
],
+ "STANDALONEMONTH": [
+ "\u091c\u0928\u0935\u0930\u0940",
+ "\u092b\u0947\u092c\u094d\u0930\u0941\u0905\u0930\u0940",
+ "\u092e\u093e\u0930\u094d\u091a",
+ "\u0905\u092a\u094d\u0930\u093f\u0932",
+ "\u092e\u0947",
+ "\u091c\u0941\u0928",
+ "\u091c\u0941\u0932\u093e\u0908",
+ "\u0905\u0917\u0938\u094d\u091f",
+ "\u0938\u0947\u092a\u094d\u091f\u0947\u092e\u094d\u092c\u0930",
+ "\u0905\u0915\u094d\u091f\u094b\u092c\u0930",
+ "\u0928\u094b\u092d\u0947\u092e\u094d\u092c\u0930",
+ "\u0921\u093f\u0938\u0947\u092e\u094d\u092c\u0930"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "ne",
+ "localeID": "ne",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nl-aw.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nl-aw.js
index 3e22477d..711340e3 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nl-aw.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nl-aw.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"nov.",
"dec."
],
+ "STANDALONEMONTH": [
+ "Januari",
+ "Februari",
+ "Maart",
+ "April",
+ "Mei",
+ "Juni",
+ "Juli",
+ "Augustus",
+ "September",
+ "Oktober",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "nl-aw",
+ "localeID": "nl_AW",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nl-be.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nl-be.js
index 38ba3ab8..505cffec 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nl-be.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nl-be.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"nov.",
"dec."
],
+ "STANDALONEMONTH": [
+ "Januari",
+ "Februari",
+ "Maart",
+ "April",
+ "Mei",
+ "Juni",
+ "Juli",
+ "Augustus",
+ "September",
+ "Oktober",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "nl-be",
+ "localeID": "nl_BE",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nl-bq.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nl-bq.js
index 87c008a2..28eb5a84 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nl-bq.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nl-bq.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"nov.",
"dec."
],
+ "STANDALONEMONTH": [
+ "Januari",
+ "Februari",
+ "Maart",
+ "April",
+ "Mei",
+ "Juni",
+ "Juli",
+ "Augustus",
+ "September",
+ "Oktober",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "nl-bq",
+ "localeID": "nl_BQ",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nl-cw.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nl-cw.js
index 7475f6ed..77aca674 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nl-cw.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nl-cw.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"nov.",
"dec."
],
+ "STANDALONEMONTH": [
+ "Januari",
+ "Februari",
+ "Maart",
+ "April",
+ "Mei",
+ "Juni",
+ "Juli",
+ "Augustus",
+ "September",
+ "Oktober",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "nl-cw",
+ "localeID": "nl_CW",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nl-nl.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nl-nl.js
index 3b7bd150..0eb3e7c3 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nl-nl.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nl-nl.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"nov.",
"dec."
],
+ "STANDALONEMONTH": [
+ "Januari",
+ "Februari",
+ "Maart",
+ "April",
+ "Mei",
+ "Juni",
+ "Juli",
+ "Augustus",
+ "September",
+ "Oktober",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "nl-nl",
+ "localeID": "nl_NL",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nl-sr.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nl-sr.js
index 06875a81..98984fe2 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nl-sr.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nl-sr.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"nov.",
"dec."
],
+ "STANDALONEMONTH": [
+ "Januari",
+ "Februari",
+ "Maart",
+ "April",
+ "Mei",
+ "Juni",
+ "Juli",
+ "Augustus",
+ "September",
+ "Oktober",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "nl-sr",
+ "localeID": "nl_SR",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nl-sx.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nl-sx.js
index c59dfb5a..264e9a0c 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nl-sx.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nl-sx.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"nov.",
"dec."
],
+ "STANDALONEMONTH": [
+ "Januari",
+ "Februari",
+ "Maart",
+ "April",
+ "Mei",
+ "Juni",
+ "Juli",
+ "Augustus",
+ "September",
+ "Oktober",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "nl-sx",
+ "localeID": "nl_SX",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nl.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nl.js
index 79428d98..4f6311b2 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nl.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nl.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"nov.",
"dec."
],
+ "STANDALONEMONTH": [
+ "Januari",
+ "Februari",
+ "Maart",
+ "April",
+ "Mei",
+ "Juni",
+ "Juli",
+ "Augustus",
+ "September",
+ "Oktober",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "nl",
+ "localeID": "nl",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nmg-cm.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nmg-cm.js
index 24594190..518ef7c8 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nmg-cm.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nmg-cm.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"ng11",
"kris"
],
+ "STANDALONEMONTH": [
+ "ngw\u025bn mat\u00e1hra",
+ "ngw\u025bn \u0144mba",
+ "ngw\u025bn \u0144lal",
+ "ngw\u025bn \u0144na",
+ "ngw\u025bn \u0144tan",
+ "ngw\u025bn \u0144tu\u00f3",
+ "ngw\u025bn h\u025bmbu\u025br\u00ed",
+ "ngw\u025bn l\u0254mbi",
+ "ngw\u025bn r\u025bbvu\u00e2",
+ "ngw\u025bn wum",
+ "ngw\u025bn wum nav\u01d4r",
+ "kr\u00edsimin"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "nmg-cm",
+ "localeID": "nmg_CM",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nmg.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nmg.js
index 98f5073e..25457251 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nmg.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nmg.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"ng11",
"kris"
],
+ "STANDALONEMONTH": [
+ "ngw\u025bn mat\u00e1hra",
+ "ngw\u025bn \u0144mba",
+ "ngw\u025bn \u0144lal",
+ "ngw\u025bn \u0144na",
+ "ngw\u025bn \u0144tan",
+ "ngw\u025bn \u0144tu\u00f3",
+ "ngw\u025bn h\u025bmbu\u025br\u00ed",
+ "ngw\u025bn l\u0254mbi",
+ "ngw\u025bn r\u025bbvu\u00e2",
+ "ngw\u025bn wum",
+ "ngw\u025bn wum nav\u01d4r",
+ "kr\u00edsimin"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "nmg",
+ "localeID": "nmg",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nn-no.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nn-no.js
index c303718b..15370bc0 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nn-no.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nn-no.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"nov.",
"des."
],
+ "STANDALONEMONTH": [
+ "januar",
+ "februar",
+ "mars",
+ "april",
+ "mai",
+ "juni",
+ "juli",
+ "august",
+ "september",
+ "oktober",
+ "november",
+ "desember"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "nn-no",
+ "localeID": "nn_NO",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nn.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nn.js
index 6d2f0370..2ca6886b 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nn.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nn.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"nov.",
"des."
],
+ "STANDALONEMONTH": [
+ "januar",
+ "februar",
+ "mars",
+ "april",
+ "mai",
+ "juni",
+ "juli",
+ "august",
+ "september",
+ "oktober",
+ "november",
+ "desember"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "nn",
+ "localeID": "nn",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nnh-cm.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nnh-cm.js
index 92eef3bf..549ae5bc 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nnh-cm.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nnh-cm.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"sa\u014b mejwo\u014b\u00f3",
"sa\u014b l\u00f9m"
],
+ "STANDALONEMONTH": [
+ "sa\u014b tsets\u025b\u0300\u025b l\u00f9m",
+ "sa\u014b k\u00e0g ngw\u00f3\u014b",
+ "sa\u014b lepy\u00e8 sh\u00fam",
+ "sa\u014b c\u00ff\u00f3",
+ "sa\u014b ts\u025b\u0300\u025b c\u00ff\u00f3",
+ "sa\u014b nj\u00ffol\u00e1\u02bc",
+ "sa\u014b ty\u025b\u0300b ty\u025b\u0300b mb\u0289\u0300",
+ "sa\u014b mb\u0289\u0300\u014b",
+ "sa\u014b ngw\u0254\u0300\u02bc mb\u00ff\u025b",
+ "sa\u014b t\u00e0\u014ba tsets\u00e1\u02bc",
+ "sa\u014b mejwo\u014b\u00f3",
+ "sa\u014b l\u00f9m"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "nnh-cm",
+ "localeID": "nnh_CM",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nnh.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nnh.js
index b8745d19..6552c81e 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nnh.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nnh.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"sa\u014b mejwo\u014b\u00f3",
"sa\u014b l\u00f9m"
],
+ "STANDALONEMONTH": [
+ "sa\u014b tsets\u025b\u0300\u025b l\u00f9m",
+ "sa\u014b k\u00e0g ngw\u00f3\u014b",
+ "sa\u014b lepy\u00e8 sh\u00fam",
+ "sa\u014b c\u00ff\u00f3",
+ "sa\u014b ts\u025b\u0300\u025b c\u00ff\u00f3",
+ "sa\u014b nj\u00ffol\u00e1\u02bc",
+ "sa\u014b ty\u025b\u0300b ty\u025b\u0300b mb\u0289\u0300",
+ "sa\u014b mb\u0289\u0300\u014b",
+ "sa\u014b ngw\u0254\u0300\u02bc mb\u00ff\u025b",
+ "sa\u014b t\u00e0\u014ba tsets\u00e1\u02bc",
+ "sa\u014b mejwo\u014b\u00f3",
+ "sa\u014b l\u00f9m"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "nnh",
+ "localeID": "nnh",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_no-no.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_no-no.js
index dc93791c..89e161d4 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_no-no.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_no-no.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"des."
],
+ "STANDALONEMONTH": [
+ "januar",
+ "februar",
+ "mars",
+ "april",
+ "mai",
+ "juni",
+ "juli",
+ "august",
+ "september",
+ "oktober",
+ "november",
+ "desember"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "no-no",
+ "localeID": "no_NO",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_no.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_no.js
index b0b2fec1..d9dd6a3f 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_no.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_no.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov.",
"des."
],
+ "STANDALONEMONTH": [
+ "januar",
+ "februar",
+ "mars",
+ "april",
+ "mai",
+ "juni",
+ "juli",
+ "august",
+ "september",
+ "oktober",
+ "november",
+ "desember"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "no",
+ "localeID": "no",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nr-za.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nr-za.js
index 60a2745f..60a2745f 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nr-za.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nr-za.js
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nr.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nr.js
index daa76c0a..daa76c0a 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nr.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nr.js
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nso-za.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nso-za.js
index 493ec38e..493ec38e 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nso-za.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nso-za.js
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nso.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nso.js
index 50d5663a..50d5663a 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nso.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nso.js
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nus-sd.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nus-sd.js
index a46aee48..4c19d632 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nus-sd.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nus-sd.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Kur",
"Tid"
],
+ "STANDALONEMONTH": [
+ "Tiop thar p\u025bt",
+ "P\u025bt",
+ "Du\u0254\u0331\u0254\u0331\u014b",
+ "Guak",
+ "Du\u00e4t",
+ "Kornyoot",
+ "Pay yie\u0331tni",
+ "Tho\u0331o\u0331r",
+ "T\u025b\u025br",
+ "Laath",
+ "Kur",
+ "Tio\u0331p in di\u0331i\u0331t"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "nus-sd",
+ "localeID": "nus_SD",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nus.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nus.js
index 8d201498..24c8efdf 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nus.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nus.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Kur",
"Tid"
],
+ "STANDALONEMONTH": [
+ "Tiop thar p\u025bt",
+ "P\u025bt",
+ "Du\u0254\u0331\u0254\u0331\u014b",
+ "Guak",
+ "Du\u00e4t",
+ "Kornyoot",
+ "Pay yie\u0331tni",
+ "Tho\u0331o\u0331r",
+ "T\u025b\u025br",
+ "Laath",
+ "Kur",
+ "Tio\u0331p in di\u0331i\u0331t"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "nus",
+ "localeID": "nus",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nyn-ug.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nyn-ug.js
index bc15a7dc..0d02342c 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nyn-ug.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nyn-ug.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"KNK",
"KNB"
],
+ "STANDALONEMONTH": [
+ "Okwokubanza",
+ "Okwakabiri",
+ "Okwakashatu",
+ "Okwakana",
+ "Okwakataana",
+ "Okwamukaaga",
+ "Okwamushanju",
+ "Okwamunaana",
+ "Okwamwenda",
+ "Okwaikumi",
+ "Okwaikumi na kumwe",
+ "Okwaikumi na ibiri"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "nyn-ug",
+ "localeID": "nyn_UG",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nyn.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nyn.js
index ecc65b9b..ffeed082 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_nyn.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_nyn.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"KNK",
"KNB"
],
+ "STANDALONEMONTH": [
+ "Okwokubanza",
+ "Okwakabiri",
+ "Okwakashatu",
+ "Okwakana",
+ "Okwakataana",
+ "Okwamukaaga",
+ "Okwamushanju",
+ "Okwamunaana",
+ "Okwamwenda",
+ "Okwaikumi",
+ "Okwaikumi na kumwe",
+ "Okwaikumi na ibiri"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "nyn",
+ "localeID": "nyn",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_om-et.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_om-et.js
index 3857abd0..83ab18d8 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_om-et.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_om-et.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Sad",
"Mud"
],
+ "STANDALONEMONTH": [
+ "Amajjii",
+ "Guraandhala",
+ "Bitooteessa",
+ "Elba",
+ "Caamsa",
+ "Waxabajjii",
+ "Adooleessa",
+ "Hagayya",
+ "Fuulbana",
+ "Onkololeessa",
+ "Sadaasa",
+ "Muddee"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "om-et",
+ "localeID": "om_ET",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_om-ke.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_om-ke.js
index dba7fd1f..0d74a9a3 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_om-ke.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_om-ke.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Sad",
"Mud"
],
+ "STANDALONEMONTH": [
+ "Amajjii",
+ "Guraandhala",
+ "Bitooteessa",
+ "Elba",
+ "Caamsa",
+ "Waxabajjii",
+ "Adooleessa",
+ "Hagayya",
+ "Fuulbana",
+ "Onkololeessa",
+ "Sadaasa",
+ "Muddee"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "om-ke",
+ "localeID": "om_KE",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_om.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_om.js
index c41c2772..46083873 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_om.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_om.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Sad",
"Mud"
],
+ "STANDALONEMONTH": [
+ "Amajjii",
+ "Guraandhala",
+ "Bitooteessa",
+ "Elba",
+ "Caamsa",
+ "Waxabajjii",
+ "Adooleessa",
+ "Hagayya",
+ "Fuulbana",
+ "Onkololeessa",
+ "Sadaasa",
+ "Muddee"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "om",
+ "localeID": "om",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_or-in.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_or-in.js
index 5f1da84c..1e560908 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_or-in.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_or-in.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u0b28\u0b2d\u0b47\u0b2e\u0b4d\u0b2c\u0b30",
"\u0b21\u0b3f\u0b38\u0b47\u0b2e\u0b4d\u0b2c\u0b30"
],
+ "STANDALONEMONTH": [
+ "\u0b1c\u0b3e\u0b28\u0b41\u0b06\u0b30\u0b40",
+ "\u0b2b\u0b47\u0b2c\u0b43\u0b06\u0b30\u0b40",
+ "\u0b2e\u0b3e\u0b30\u0b4d\u0b1a\u0b4d\u0b1a",
+ "\u0b05\u0b2a\u0b4d\u0b30\u0b47\u0b32",
+ "\u0b2e\u0b07",
+ "\u0b1c\u0b41\u0b28",
+ "\u0b1c\u0b41\u0b32\u0b3e\u0b07",
+ "\u0b05\u0b17\u0b37\u0b4d\u0b1f",
+ "\u0b38\u0b47\u0b2a\u0b4d\u0b1f\u0b47\u0b2e\u0b4d\u0b2c\u0b30",
+ "\u0b05\u0b15\u0b4d\u0b1f\u0b4b\u0b2c\u0b30",
+ "\u0b28\u0b2d\u0b47\u0b2e\u0b4d\u0b2c\u0b30",
+ "\u0b21\u0b3f\u0b38\u0b47\u0b2e\u0b4d\u0b2c\u0b30"
+ ],
"WEEKENDRANGE": [
6,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "or-in",
+ "localeID": "or_IN",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_or.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_or.js
index 43c4fd3a..9e462352 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_or.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_or.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u0b28\u0b2d\u0b47\u0b2e\u0b4d\u0b2c\u0b30",
"\u0b21\u0b3f\u0b38\u0b47\u0b2e\u0b4d\u0b2c\u0b30"
],
+ "STANDALONEMONTH": [
+ "\u0b1c\u0b3e\u0b28\u0b41\u0b06\u0b30\u0b40",
+ "\u0b2b\u0b47\u0b2c\u0b43\u0b06\u0b30\u0b40",
+ "\u0b2e\u0b3e\u0b30\u0b4d\u0b1a\u0b4d\u0b1a",
+ "\u0b05\u0b2a\u0b4d\u0b30\u0b47\u0b32",
+ "\u0b2e\u0b07",
+ "\u0b1c\u0b41\u0b28",
+ "\u0b1c\u0b41\u0b32\u0b3e\u0b07",
+ "\u0b05\u0b17\u0b37\u0b4d\u0b1f",
+ "\u0b38\u0b47\u0b2a\u0b4d\u0b1f\u0b47\u0b2e\u0b4d\u0b2c\u0b30",
+ "\u0b05\u0b15\u0b4d\u0b1f\u0b4b\u0b2c\u0b30",
+ "\u0b28\u0b2d\u0b47\u0b2e\u0b4d\u0b2c\u0b30",
+ "\u0b21\u0b3f\u0b38\u0b47\u0b2e\u0b4d\u0b2c\u0b30"
+ ],
"WEEKENDRANGE": [
6,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "or",
+ "localeID": "or",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_os-ge.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_os-ge.js
index 3516f726..45f56341 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_os-ge.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_os-ge.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u043d\u043e\u044f.",
"\u0434\u0435\u043a."
],
+ "STANDALONEMONTH": [
+ "\u042f\u043d\u0432\u0430\u0440\u044c",
+ "\u0424\u0435\u0432\u0440\u0430\u043b\u044c",
+ "\u041c\u0430\u0440\u0442\u044a\u0438",
+ "\u0410\u043f\u0440\u0435\u043b\u044c",
+ "\u041c\u0430\u0439",
+ "\u0418\u044e\u043d\u044c",
+ "\u0418\u044e\u043b\u044c",
+ "\u0410\u0432\u0433\u0443\u0441\u0442",
+ "\u0421\u0435\u043d\u0442\u044f\u0431\u0440\u044c",
+ "\u041e\u043a\u0442\u044f\u0431\u0440\u044c",
+ "\u041d\u043e\u044f\u0431\u0440\u044c",
+ "\u0414\u0435\u043a\u0430\u0431\u0440\u044c"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "os-ge",
+ "localeID": "os_GE",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_os-ru.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_os-ru.js
index d740670b..c183cc27 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_os-ru.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_os-ru.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u043d\u043e\u044f.",
"\u0434\u0435\u043a."
],
+ "STANDALONEMONTH": [
+ "\u042f\u043d\u0432\u0430\u0440\u044c",
+ "\u0424\u0435\u0432\u0440\u0430\u043b\u044c",
+ "\u041c\u0430\u0440\u0442\u044a\u0438",
+ "\u0410\u043f\u0440\u0435\u043b\u044c",
+ "\u041c\u0430\u0439",
+ "\u0418\u044e\u043d\u044c",
+ "\u0418\u044e\u043b\u044c",
+ "\u0410\u0432\u0433\u0443\u0441\u0442",
+ "\u0421\u0435\u043d\u0442\u044f\u0431\u0440\u044c",
+ "\u041e\u043a\u0442\u044f\u0431\u0440\u044c",
+ "\u041d\u043e\u044f\u0431\u0440\u044c",
+ "\u0414\u0435\u043a\u0430\u0431\u0440\u044c"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "os-ru",
+ "localeID": "os_RU",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_os.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_os.js
index a643a330..281b4a9c 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_os.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_os.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u043d\u043e\u044f.",
"\u0434\u0435\u043a."
],
+ "STANDALONEMONTH": [
+ "\u042f\u043d\u0432\u0430\u0440\u044c",
+ "\u0424\u0435\u0432\u0440\u0430\u043b\u044c",
+ "\u041c\u0430\u0440\u0442\u044a\u0438",
+ "\u0410\u043f\u0440\u0435\u043b\u044c",
+ "\u041c\u0430\u0439",
+ "\u0418\u044e\u043d\u044c",
+ "\u0418\u044e\u043b\u044c",
+ "\u0410\u0432\u0433\u0443\u0441\u0442",
+ "\u0421\u0435\u043d\u0442\u044f\u0431\u0440\u044c",
+ "\u041e\u043a\u0442\u044f\u0431\u0440\u044c",
+ "\u041d\u043e\u044f\u0431\u0440\u044c",
+ "\u0414\u0435\u043a\u0430\u0431\u0440\u044c"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "os",
+ "localeID": "os",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_pa-arab-pk.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_pa-arab-pk.js
index 90f60579..1a3d2ead 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_pa-arab-pk.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_pa-arab-pk.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u0646\u0648\u0645\u0628\u0631",
"\u062f\u0633\u0645\u0628\u0631"
],
+ "STANDALONEMONTH": [
+ "\u062c\u0646\u0648\u0631\u06cc",
+ "\u0641\u0631\u0648\u0631\u06cc",
+ "\u0645\u0627\u0631\u0686",
+ "\u0627\u067e\u0631\u06cc\u0644",
+ "\u0645\u0626",
+ "\u062c\u0648\u0646",
+ "\u062c\u0648\u0644\u0627\u0626\u06cc",
+ "\u0627\u06af\u0633\u062a",
+ "\u0633\u062a\u0645\u0628\u0631",
+ "\u0627\u06a9\u062a\u0648\u0628\u0631",
+ "\u0646\u0648\u0645\u0628\u0631",
+ "\u062f\u0633\u0645\u0628\u0631"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "pa-arab-pk",
+ "localeID": "pa_Arab_PK",
"pluralCat": function(n, opt_precision) { if (n >= 0 && n <= 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_pa-arab.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_pa-arab.js
index 184a60c7..4dd0134e 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_pa-arab.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_pa-arab.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u0646\u0648\u0645\u0628\u0631",
"\u062f\u0633\u0645\u0628\u0631"
],
+ "STANDALONEMONTH": [
+ "\u062c\u0646\u0648\u0631\u06cc",
+ "\u0641\u0631\u0648\u0631\u06cc",
+ "\u0645\u0627\u0631\u0686",
+ "\u0627\u067e\u0631\u06cc\u0644",
+ "\u0645\u0626",
+ "\u062c\u0648\u0646",
+ "\u062c\u0648\u0644\u0627\u0626\u06cc",
+ "\u0627\u06af\u0633\u062a",
+ "\u0633\u062a\u0645\u0628\u0631",
+ "\u0627\u06a9\u062a\u0648\u0628\u0631",
+ "\u0646\u0648\u0645\u0628\u0631",
+ "\u062f\u0633\u0645\u0628\u0631"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "pa-arab",
+ "localeID": "pa_Arab",
"pluralCat": function(n, opt_precision) { if (n >= 0 && n <= 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_pa-guru-in.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_pa-guru-in.js
index 3572f992..c9fc7c2f 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_pa-guru-in.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_pa-guru-in.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u0a28\u0a35\u0a70",
"\u0a26\u0a38\u0a70"
],
+ "STANDALONEMONTH": [
+ "\u0a1c\u0a28\u0a35\u0a30\u0a40",
+ "\u0a2b\u0a3c\u0a30\u0a35\u0a30\u0a40",
+ "\u0a2e\u0a3e\u0a30\u0a1a",
+ "\u0a05\u0a2a\u0a4d\u0a30\u0a48\u0a32",
+ "\u0a2e\u0a08",
+ "\u0a1c\u0a42\u0a28",
+ "\u0a1c\u0a41\u0a32\u0a3e\u0a08",
+ "\u0a05\u0a17\u0a38\u0a24",
+ "\u0a38\u0a24\u0a70\u0a2c\u0a30",
+ "\u0a05\u0a15\u0a24\u0a42\u0a2c\u0a30",
+ "\u0a28\u0a35\u0a70\u0a2c\u0a30",
+ "\u0a26\u0a38\u0a70\u0a2c\u0a30"
+ ],
"WEEKENDRANGE": [
6,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "pa-guru-in",
+ "localeID": "pa_Guru_IN",
"pluralCat": function(n, opt_precision) { if (n >= 0 && n <= 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_pa-guru.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_pa-guru.js
index 18c8431c..4705ac92 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_pa-guru.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_pa-guru.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u0a28\u0a35\u0a70",
"\u0a26\u0a38\u0a70"
],
+ "STANDALONEMONTH": [
+ "\u0a1c\u0a28\u0a35\u0a30\u0a40",
+ "\u0a2b\u0a3c\u0a30\u0a35\u0a30\u0a40",
+ "\u0a2e\u0a3e\u0a30\u0a1a",
+ "\u0a05\u0a2a\u0a4d\u0a30\u0a48\u0a32",
+ "\u0a2e\u0a08",
+ "\u0a1c\u0a42\u0a28",
+ "\u0a1c\u0a41\u0a32\u0a3e\u0a08",
+ "\u0a05\u0a17\u0a38\u0a24",
+ "\u0a38\u0a24\u0a70\u0a2c\u0a30",
+ "\u0a05\u0a15\u0a24\u0a42\u0a2c\u0a30",
+ "\u0a28\u0a35\u0a70\u0a2c\u0a30",
+ "\u0a26\u0a38\u0a70\u0a2c\u0a30"
+ ],
"WEEKENDRANGE": [
6,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "pa-guru",
+ "localeID": "pa_Guru",
"pluralCat": function(n, opt_precision) { if (n >= 0 && n <= 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_pa.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_pa.js
index 6f6dc995..e2a9a69a 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_pa.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_pa.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u0a28\u0a35\u0a70",
"\u0a26\u0a38\u0a70"
],
+ "STANDALONEMONTH": [
+ "\u0a1c\u0a28\u0a35\u0a30\u0a40",
+ "\u0a2b\u0a3c\u0a30\u0a35\u0a30\u0a40",
+ "\u0a2e\u0a3e\u0a30\u0a1a",
+ "\u0a05\u0a2a\u0a4d\u0a30\u0a48\u0a32",
+ "\u0a2e\u0a08",
+ "\u0a1c\u0a42\u0a28",
+ "\u0a1c\u0a41\u0a32\u0a3e\u0a08",
+ "\u0a05\u0a17\u0a38\u0a24",
+ "\u0a38\u0a24\u0a70\u0a2c\u0a30",
+ "\u0a05\u0a15\u0a24\u0a42\u0a2c\u0a30",
+ "\u0a28\u0a35\u0a70\u0a2c\u0a30",
+ "\u0a26\u0a38\u0a70\u0a2c\u0a30"
+ ],
"WEEKENDRANGE": [
6,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "pa",
+ "localeID": "pa",
"pluralCat": function(n, opt_precision) { if (n >= 0 && n <= 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_pl-pl.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_pl-pl.js
index fae20c89..f3d2667a 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_pl-pl.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_pl-pl.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"lis",
"gru"
],
+ "STANDALONEMONTH": [
+ "stycze\u0144",
+ "luty",
+ "marzec",
+ "kwiecie\u0144",
+ "maj",
+ "czerwiec",
+ "lipiec",
+ "sierpie\u0144",
+ "wrzesie\u0144",
+ "pa\u017adziernik",
+ "listopad",
+ "grudzie\u0144"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "pl-pl",
+ "localeID": "pl_PL",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } if (vf.v == 0 && i % 10 >= 2 && i % 10 <= 4 && (i % 100 < 12 || i % 100 > 14)) { return PLURAL_CATEGORY.FEW; } if (vf.v == 0 && i != 1 && i % 10 >= 0 && i % 10 <= 1 || vf.v == 0 && i % 10 >= 5 && i % 10 <= 9 || vf.v == 0 && i % 100 >= 12 && i % 100 <= 14) { return PLURAL_CATEGORY.MANY; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_pl.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_pl.js
index a37a284f..0bd69594 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_pl.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_pl.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"lis",
"gru"
],
+ "STANDALONEMONTH": [
+ "stycze\u0144",
+ "luty",
+ "marzec",
+ "kwiecie\u0144",
+ "maj",
+ "czerwiec",
+ "lipiec",
+ "sierpie\u0144",
+ "wrzesie\u0144",
+ "pa\u017adziernik",
+ "listopad",
+ "grudzie\u0144"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "pl",
+ "localeID": "pl",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } if (vf.v == 0 && i % 10 >= 2 && i % 10 <= 4 && (i % 100 < 12 || i % 100 > 14)) { return PLURAL_CATEGORY.FEW; } if (vf.v == 0 && i != 1 && i % 10 >= 0 && i % 10 <= 1 || vf.v == 0 && i % 10 >= 5 && i % 10 <= 9 || vf.v == 0 && i % 100 >= 12 && i % 100 <= 14) { return PLURAL_CATEGORY.MANY; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ps-af.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ps-af.js
index d6d40775..1c41578b 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ps-af.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ps-af.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u0646\u0648\u0645\u0628\u0631",
"\u062f\u0633\u0645\u0628\u0631"
],
+ "STANDALONEMONTH": [
+ "\u062c\u0646\u0648\u0631\u064a",
+ "\u0641\u0628\u0631\u0648\u0631\u064a",
+ "\u0645\u0627\u0631\u0686",
+ "\u0627\u067e\u0631\u06cc\u0644",
+ "\u0645\u06cc",
+ "\u062c\u0648\u0646",
+ "\u062c\u0648\u0644\u0627\u06cc",
+ "\u0627\u06ab\u0633\u062a",
+ "\u0633\u067e\u062a\u0645\u0628\u0631",
+ "\u0627\u06a9\u062a\u0648\u0628\u0631",
+ "\u0646\u0648\u0645\u0628\u0631",
+ "\u062f\u0633\u0645\u0628\u0631"
+ ],
"WEEKENDRANGE": [
3,
4
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ps-af",
+ "localeID": "ps_AF",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ps.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ps.js
index 4bbe5111..cea6bd24 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ps.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ps.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u0646\u0648\u0645\u0628\u0631",
"\u062f\u0633\u0645\u0628\u0631"
],
+ "STANDALONEMONTH": [
+ "\u062c\u0646\u0648\u0631\u064a",
+ "\u0641\u0628\u0631\u0648\u0631\u064a",
+ "\u0645\u0627\u0631\u0686",
+ "\u0627\u067e\u0631\u06cc\u0644",
+ "\u0645\u06cc",
+ "\u062c\u0648\u0646",
+ "\u062c\u0648\u0644\u0627\u06cc",
+ "\u0627\u06ab\u0633\u062a",
+ "\u0633\u067e\u062a\u0645\u0628\u0631",
+ "\u0627\u06a9\u062a\u0648\u0628\u0631",
+ "\u0646\u0648\u0645\u0628\u0631",
+ "\u062f\u0633\u0645\u0628\u0631"
+ ],
"WEEKENDRANGE": [
3,
4
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ps",
+ "localeID": "ps",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_pt-ao.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_pt-ao.js
index dcc91dab..7b469e6a 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_pt-ao.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_pt-ao.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov",
"dez"
],
+ "STANDALONEMONTH": [
+ "janeiro",
+ "fevereiro",
+ "mar\u00e7o",
+ "abril",
+ "maio",
+ "junho",
+ "julho",
+ "agosto",
+ "setembro",
+ "outubro",
+ "novembro",
+ "dezembro"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "pt-ao",
+ "localeID": "pt_AO",
"pluralCat": function(n, opt_precision) { if (n >= 0 && n <= 2 && n != 2) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_pt-br.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_pt-br.js
index 146aad33..85ed9e2f 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_pt-br.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_pt-br.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov",
"dez"
],
+ "STANDALONEMONTH": [
+ "janeiro",
+ "fevereiro",
+ "mar\u00e7o",
+ "abril",
+ "maio",
+ "junho",
+ "julho",
+ "agosto",
+ "setembro",
+ "outubro",
+ "novembro",
+ "dezembro"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "pt-br",
+ "localeID": "pt_BR",
"pluralCat": function(n, opt_precision) { if (n >= 0 && n <= 2 && n != 2) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_pt-cv.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_pt-cv.js
index d9beaa1d..1f2a2879 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_pt-cv.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_pt-cv.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov",
"dez"
],
+ "STANDALONEMONTH": [
+ "janeiro",
+ "fevereiro",
+ "mar\u00e7o",
+ "abril",
+ "maio",
+ "junho",
+ "julho",
+ "agosto",
+ "setembro",
+ "outubro",
+ "novembro",
+ "dezembro"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "pt-cv",
+ "localeID": "pt_CV",
"pluralCat": function(n, opt_precision) { if (n >= 0 && n <= 2 && n != 2) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_pt-gw.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_pt-gw.js
index 801f3e72..9e73f1b0 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_pt-gw.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_pt-gw.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov",
"dez"
],
+ "STANDALONEMONTH": [
+ "janeiro",
+ "fevereiro",
+ "mar\u00e7o",
+ "abril",
+ "maio",
+ "junho",
+ "julho",
+ "agosto",
+ "setembro",
+ "outubro",
+ "novembro",
+ "dezembro"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "pt-gw",
+ "localeID": "pt_GW",
"pluralCat": function(n, opt_precision) { if (n >= 0 && n <= 2 && n != 2) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_pt-mo.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_pt-mo.js
index fecce7cb..1ab1912f 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_pt-mo.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_pt-mo.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov",
"dez"
],
+ "STANDALONEMONTH": [
+ "janeiro",
+ "fevereiro",
+ "mar\u00e7o",
+ "abril",
+ "maio",
+ "junho",
+ "julho",
+ "agosto",
+ "setembro",
+ "outubro",
+ "novembro",
+ "dezembro"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "pt-mo",
+ "localeID": "pt_MO",
"pluralCat": function(n, opt_precision) { if (n >= 0 && n <= 2 && n != 2) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_pt-mz.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_pt-mz.js
index e7450a21..18c42f7a 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_pt-mz.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_pt-mz.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov",
"dez"
],
+ "STANDALONEMONTH": [
+ "janeiro",
+ "fevereiro",
+ "mar\u00e7o",
+ "abril",
+ "maio",
+ "junho",
+ "julho",
+ "agosto",
+ "setembro",
+ "outubro",
+ "novembro",
+ "dezembro"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "pt-mz",
+ "localeID": "pt_MZ",
"pluralCat": function(n, opt_precision) { if (n >= 0 && n <= 2 && n != 2) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_pt-pt.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_pt-pt.js
index 6718f9dc..dbaeea6f 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_pt-pt.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_pt-pt.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov",
"dez"
],
+ "STANDALONEMONTH": [
+ "janeiro",
+ "fevereiro",
+ "mar\u00e7o",
+ "abril",
+ "maio",
+ "junho",
+ "julho",
+ "agosto",
+ "setembro",
+ "outubro",
+ "novembro",
+ "dezembro"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "pt-pt",
+ "localeID": "pt_PT",
"pluralCat": function(n, opt_precision) { if (n >= 0 && n <= 2 && n != 2) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_pt-st.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_pt-st.js
index a6ff9cd7..4d1a1752 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_pt-st.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_pt-st.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov",
"dez"
],
+ "STANDALONEMONTH": [
+ "janeiro",
+ "fevereiro",
+ "mar\u00e7o",
+ "abril",
+ "maio",
+ "junho",
+ "julho",
+ "agosto",
+ "setembro",
+ "outubro",
+ "novembro",
+ "dezembro"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "pt-st",
+ "localeID": "pt_ST",
"pluralCat": function(n, opt_precision) { if (n >= 0 && n <= 2 && n != 2) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_pt-tl.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_pt-tl.js
index bb36d6dc..0e4e281d 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_pt-tl.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_pt-tl.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov",
"dez"
],
+ "STANDALONEMONTH": [
+ "janeiro",
+ "fevereiro",
+ "mar\u00e7o",
+ "abril",
+ "maio",
+ "junho",
+ "julho",
+ "agosto",
+ "setembro",
+ "outubro",
+ "novembro",
+ "dezembro"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "pt-tl",
+ "localeID": "pt_TL",
"pluralCat": function(n, opt_precision) { if (n >= 0 && n <= 2 && n != 2) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_pt.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_pt.js
index 4c80611e..5b3e4420 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_pt.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_pt.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"nov",
"dez"
],
+ "STANDALONEMONTH": [
+ "janeiro",
+ "fevereiro",
+ "mar\u00e7o",
+ "abril",
+ "maio",
+ "junho",
+ "julho",
+ "agosto",
+ "setembro",
+ "outubro",
+ "novembro",
+ "dezembro"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "pt",
+ "localeID": "pt",
"pluralCat": function(n, opt_precision) { if (n >= 0 && n <= 2 && n != 2) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_qu-bo.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_qu-bo.js
index cb05d91a..b31aa612 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_qu-bo.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_qu-bo.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Aya",
"Kap"
],
+ "STANDALONEMONTH": [
+ "Qulla puquy",
+ "Hatun puquy",
+ "Pauqar waray",
+ "Ayriwa",
+ "Aymuray",
+ "Inti raymi",
+ "Anta Sitwa",
+ "Qhapaq Sitwa",
+ "Uma raymi",
+ "Kantaray",
+ "Ayamarq\u02bca",
+ "Kapaq Raymi"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "qu-bo",
+ "localeID": "qu_BO",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_qu-ec.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_qu-ec.js
index 9978c4a3..45c55aaa 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_qu-ec.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_qu-ec.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Aya",
"Kap"
],
+ "STANDALONEMONTH": [
+ "Qulla puquy",
+ "Hatun puquy",
+ "Pauqar waray",
+ "Ayriwa",
+ "Aymuray",
+ "Inti raymi",
+ "Anta Sitwa",
+ "Qhapaq Sitwa",
+ "Uma raymi",
+ "Kantaray",
+ "Ayamarq\u02bca",
+ "Kapaq Raymi"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "qu-ec",
+ "localeID": "qu_EC",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_qu-pe.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_qu-pe.js
index 942275b6..32fe7d47 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_qu-pe.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_qu-pe.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Aya",
"Kap"
],
+ "STANDALONEMONTH": [
+ "Qulla puquy",
+ "Hatun puquy",
+ "Pauqar waray",
+ "Ayriwa",
+ "Aymuray",
+ "Inti raymi",
+ "Anta Sitwa",
+ "Qhapaq Sitwa",
+ "Uma raymi",
+ "Kantaray",
+ "Ayamarq\u02bca",
+ "Kapaq Raymi"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "qu-pe",
+ "localeID": "qu_PE",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_qu.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_qu.js
index e2b56e6d..7b9a9c72 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_qu.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_qu.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Aya",
"Kap"
],
+ "STANDALONEMONTH": [
+ "Qulla puquy",
+ "Hatun puquy",
+ "Pauqar waray",
+ "Ayriwa",
+ "Aymuray",
+ "Inti raymi",
+ "Anta Sitwa",
+ "Qhapaq Sitwa",
+ "Uma raymi",
+ "Kantaray",
+ "Ayamarq\u02bca",
+ "Kapaq Raymi"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "qu",
+ "localeID": "qu",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_rm-ch.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_rm-ch.js
index 091c0827..4e80899a 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_rm-ch.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_rm-ch.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"nov.",
"dec."
],
+ "STANDALONEMONTH": [
+ "schaner",
+ "favrer",
+ "mars",
+ "avrigl",
+ "matg",
+ "zercladur",
+ "fanadur",
+ "avust",
+ "settember",
+ "october",
+ "november",
+ "december"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "rm-ch",
+ "localeID": "rm_CH",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_rm.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_rm.js
index 7bddcf97..bb3a11bf 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_rm.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_rm.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"nov.",
"dec."
],
+ "STANDALONEMONTH": [
+ "schaner",
+ "favrer",
+ "mars",
+ "avrigl",
+ "matg",
+ "zercladur",
+ "fanadur",
+ "avust",
+ "settember",
+ "october",
+ "november",
+ "december"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "rm",
+ "localeID": "rm",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_rn-bi.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_rn-bi.js
index cd61a1d4..806d589b 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_rn-bi.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_rn-bi.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Ugu.",
"Uku."
],
+ "STANDALONEMONTH": [
+ "Nzero",
+ "Ruhuhuma",
+ "Ntwarante",
+ "Ndamukiza",
+ "Rusama",
+ "Ruheshi",
+ "Mukakaro",
+ "Nyandagaro",
+ "Nyakanga",
+ "Gitugutu",
+ "Munyonyo",
+ "Kigarama"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "rn-bi",
+ "localeID": "rn_BI",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_rn.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_rn.js
index 0a2a5e8e..8dee14ce 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_rn.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_rn.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Ugu.",
"Uku."
],
+ "STANDALONEMONTH": [
+ "Nzero",
+ "Ruhuhuma",
+ "Ntwarante",
+ "Ndamukiza",
+ "Rusama",
+ "Ruheshi",
+ "Mukakaro",
+ "Nyandagaro",
+ "Nyakanga",
+ "Gitugutu",
+ "Munyonyo",
+ "Kigarama"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "rn",
+ "localeID": "rn",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ro-md.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ro-md.js
index b3630470..4bb6f08e 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ro-md.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ro-md.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"nov.",
"dec."
],
+ "STANDALONEMONTH": [
+ "Ianuarie",
+ "Februarie",
+ "Martie",
+ "Aprilie",
+ "Mai",
+ "Iunie",
+ "Iulie",
+ "August",
+ "Septembrie",
+ "Octombrie",
+ "Noiembrie",
+ "Decembrie"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ro-md",
+ "localeID": "ro_MD",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } if (vf.v != 0 || n == 0 || n != 1 && n % 100 >= 1 && n % 100 <= 19) { return PLURAL_CATEGORY.FEW; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ro-ro.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ro-ro.js
index d8792260..ee845270 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ro-ro.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ro-ro.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"nov.",
"dec."
],
+ "STANDALONEMONTH": [
+ "Ianuarie",
+ "Februarie",
+ "Martie",
+ "Aprilie",
+ "Mai",
+ "Iunie",
+ "Iulie",
+ "August",
+ "Septembrie",
+ "Octombrie",
+ "Noiembrie",
+ "Decembrie"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ro-ro",
+ "localeID": "ro_RO",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } if (vf.v != 0 || n == 0 || n != 1 && n % 100 >= 1 && n % 100 <= 19) { return PLURAL_CATEGORY.FEW; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ro.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ro.js
index 3c52dd2a..355646ef 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ro.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ro.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"nov.",
"dec."
],
+ "STANDALONEMONTH": [
+ "Ianuarie",
+ "Februarie",
+ "Martie",
+ "Aprilie",
+ "Mai",
+ "Iunie",
+ "Iulie",
+ "August",
+ "Septembrie",
+ "Octombrie",
+ "Noiembrie",
+ "Decembrie"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ro",
+ "localeID": "ro",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } if (vf.v != 0 || n == 0 || n != 1 && n % 100 >= 1 && n % 100 <= 19) { return PLURAL_CATEGORY.FEW; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_rof-tz.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_rof-tz.js
index 8458d5ca..bced9f20 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_rof-tz.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_rof-tz.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"M11",
"M12"
],
+ "STANDALONEMONTH": [
+ "Mweri wa kwanza",
+ "Mweri wa kaili",
+ "Mweri wa katatu",
+ "Mweri wa kaana",
+ "Mweri wa tanu",
+ "Mweri wa sita",
+ "Mweri wa saba",
+ "Mweri wa nane",
+ "Mweri wa tisa",
+ "Mweri wa ikumi",
+ "Mweri wa ikumi na moja",
+ "Mweri wa ikumi na mbili"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "rof-tz",
+ "localeID": "rof_TZ",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_rof.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_rof.js
index a233d6ca..d54daaa4 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_rof.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_rof.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"M11",
"M12"
],
+ "STANDALONEMONTH": [
+ "Mweri wa kwanza",
+ "Mweri wa kaili",
+ "Mweri wa katatu",
+ "Mweri wa kaana",
+ "Mweri wa tanu",
+ "Mweri wa sita",
+ "Mweri wa saba",
+ "Mweri wa nane",
+ "Mweri wa tisa",
+ "Mweri wa ikumi",
+ "Mweri wa ikumi na moja",
+ "Mweri wa ikumi na mbili"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "rof",
+ "localeID": "rof",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ru-by.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ru-by.js
index f735266c..0b45136c 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ru-by.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ru-by.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u043d\u043e\u044f\u0431.",
"\u0434\u0435\u043a."
],
+ "STANDALONEMONTH": [
+ "\u044f\u043d\u0432\u0430\u0440\u044c",
+ "\u0444\u0435\u0432\u0440\u0430\u043b\u044c",
+ "\u043c\u0430\u0440\u0442",
+ "\u0430\u043f\u0440\u0435\u043b\u044c",
+ "\u043c\u0430\u0439",
+ "\u0438\u044e\u043d\u044c",
+ "\u0438\u044e\u043b\u044c",
+ "\u0430\u0432\u0433\u0443\u0441\u0442",
+ "\u0441\u0435\u043d\u0442\u044f\u0431\u0440\u044c",
+ "\u043e\u043a\u0442\u044f\u0431\u0440\u044c",
+ "\u043d\u043e\u044f\u0431\u0440\u044c",
+ "\u0434\u0435\u043a\u0430\u0431\u0440\u044c"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ru-by",
+ "localeID": "ru_BY",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (vf.v == 0 && i % 10 == 1 && i % 100 != 11) { return PLURAL_CATEGORY.ONE; } if (vf.v == 0 && i % 10 >= 2 && i % 10 <= 4 && (i % 100 < 12 || i % 100 > 14)) { return PLURAL_CATEGORY.FEW; } if (vf.v == 0 && i % 10 == 0 || vf.v == 0 && i % 10 >= 5 && i % 10 <= 9 || vf.v == 0 && i % 100 >= 11 && i % 100 <= 14) { return PLURAL_CATEGORY.MANY; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ru-kg.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ru-kg.js
index b1d9db98..8d9a6a56 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ru-kg.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ru-kg.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u043d\u043e\u044f\u0431.",
"\u0434\u0435\u043a."
],
+ "STANDALONEMONTH": [
+ "\u044f\u043d\u0432\u0430\u0440\u044c",
+ "\u0444\u0435\u0432\u0440\u0430\u043b\u044c",
+ "\u043c\u0430\u0440\u0442",
+ "\u0430\u043f\u0440\u0435\u043b\u044c",
+ "\u043c\u0430\u0439",
+ "\u0438\u044e\u043d\u044c",
+ "\u0438\u044e\u043b\u044c",
+ "\u0430\u0432\u0433\u0443\u0441\u0442",
+ "\u0441\u0435\u043d\u0442\u044f\u0431\u0440\u044c",
+ "\u043e\u043a\u0442\u044f\u0431\u0440\u044c",
+ "\u043d\u043e\u044f\u0431\u0440\u044c",
+ "\u0434\u0435\u043a\u0430\u0431\u0440\u044c"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ru-kg",
+ "localeID": "ru_KG",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (vf.v == 0 && i % 10 == 1 && i % 100 != 11) { return PLURAL_CATEGORY.ONE; } if (vf.v == 0 && i % 10 >= 2 && i % 10 <= 4 && (i % 100 < 12 || i % 100 > 14)) { return PLURAL_CATEGORY.FEW; } if (vf.v == 0 && i % 10 == 0 || vf.v == 0 && i % 10 >= 5 && i % 10 <= 9 || vf.v == 0 && i % 100 >= 11 && i % 100 <= 14) { return PLURAL_CATEGORY.MANY; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ru-kz.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ru-kz.js
index a1c93672..0d7072b8 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ru-kz.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ru-kz.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u043d\u043e\u044f\u0431.",
"\u0434\u0435\u043a."
],
+ "STANDALONEMONTH": [
+ "\u044f\u043d\u0432\u0430\u0440\u044c",
+ "\u0444\u0435\u0432\u0440\u0430\u043b\u044c",
+ "\u043c\u0430\u0440\u0442",
+ "\u0430\u043f\u0440\u0435\u043b\u044c",
+ "\u043c\u0430\u0439",
+ "\u0438\u044e\u043d\u044c",
+ "\u0438\u044e\u043b\u044c",
+ "\u0430\u0432\u0433\u0443\u0441\u0442",
+ "\u0441\u0435\u043d\u0442\u044f\u0431\u0440\u044c",
+ "\u043e\u043a\u0442\u044f\u0431\u0440\u044c",
+ "\u043d\u043e\u044f\u0431\u0440\u044c",
+ "\u0434\u0435\u043a\u0430\u0431\u0440\u044c"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ru-kz",
+ "localeID": "ru_KZ",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (vf.v == 0 && i % 10 == 1 && i % 100 != 11) { return PLURAL_CATEGORY.ONE; } if (vf.v == 0 && i % 10 >= 2 && i % 10 <= 4 && (i % 100 < 12 || i % 100 > 14)) { return PLURAL_CATEGORY.FEW; } if (vf.v == 0 && i % 10 == 0 || vf.v == 0 && i % 10 >= 5 && i % 10 <= 9 || vf.v == 0 && i % 100 >= 11 && i % 100 <= 14) { return PLURAL_CATEGORY.MANY; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ru-md.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ru-md.js
index de3f0498..7f1e9aaf 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ru-md.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ru-md.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u043d\u043e\u044f\u0431.",
"\u0434\u0435\u043a."
],
+ "STANDALONEMONTH": [
+ "\u044f\u043d\u0432\u0430\u0440\u044c",
+ "\u0444\u0435\u0432\u0440\u0430\u043b\u044c",
+ "\u043c\u0430\u0440\u0442",
+ "\u0430\u043f\u0440\u0435\u043b\u044c",
+ "\u043c\u0430\u0439",
+ "\u0438\u044e\u043d\u044c",
+ "\u0438\u044e\u043b\u044c",
+ "\u0430\u0432\u0433\u0443\u0441\u0442",
+ "\u0441\u0435\u043d\u0442\u044f\u0431\u0440\u044c",
+ "\u043e\u043a\u0442\u044f\u0431\u0440\u044c",
+ "\u043d\u043e\u044f\u0431\u0440\u044c",
+ "\u0434\u0435\u043a\u0430\u0431\u0440\u044c"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ru-md",
+ "localeID": "ru_MD",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (vf.v == 0 && i % 10 == 1 && i % 100 != 11) { return PLURAL_CATEGORY.ONE; } if (vf.v == 0 && i % 10 >= 2 && i % 10 <= 4 && (i % 100 < 12 || i % 100 > 14)) { return PLURAL_CATEGORY.FEW; } if (vf.v == 0 && i % 10 == 0 || vf.v == 0 && i % 10 >= 5 && i % 10 <= 9 || vf.v == 0 && i % 100 >= 11 && i % 100 <= 14) { return PLURAL_CATEGORY.MANY; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ru-ru.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ru-ru.js
index e9337210..bd249f6c 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ru-ru.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ru-ru.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u043d\u043e\u044f\u0431.",
"\u0434\u0435\u043a."
],
+ "STANDALONEMONTH": [
+ "\u044f\u043d\u0432\u0430\u0440\u044c",
+ "\u0444\u0435\u0432\u0440\u0430\u043b\u044c",
+ "\u043c\u0430\u0440\u0442",
+ "\u0430\u043f\u0440\u0435\u043b\u044c",
+ "\u043c\u0430\u0439",
+ "\u0438\u044e\u043d\u044c",
+ "\u0438\u044e\u043b\u044c",
+ "\u0430\u0432\u0433\u0443\u0441\u0442",
+ "\u0441\u0435\u043d\u0442\u044f\u0431\u0440\u044c",
+ "\u043e\u043a\u0442\u044f\u0431\u0440\u044c",
+ "\u043d\u043e\u044f\u0431\u0440\u044c",
+ "\u0434\u0435\u043a\u0430\u0431\u0440\u044c"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ru-ru",
+ "localeID": "ru_RU",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (vf.v == 0 && i % 10 == 1 && i % 100 != 11) { return PLURAL_CATEGORY.ONE; } if (vf.v == 0 && i % 10 >= 2 && i % 10 <= 4 && (i % 100 < 12 || i % 100 > 14)) { return PLURAL_CATEGORY.FEW; } if (vf.v == 0 && i % 10 == 0 || vf.v == 0 && i % 10 >= 5 && i % 10 <= 9 || vf.v == 0 && i % 100 >= 11 && i % 100 <= 14) { return PLURAL_CATEGORY.MANY; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ru-ua.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ru-ua.js
index f6dfc507..bbf7b33d 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ru-ua.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ru-ua.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u043d\u043e\u044f\u0431.",
"\u0434\u0435\u043a."
],
+ "STANDALONEMONTH": [
+ "\u044f\u043d\u0432\u0430\u0440\u044c",
+ "\u0444\u0435\u0432\u0440\u0430\u043b\u044c",
+ "\u043c\u0430\u0440\u0442",
+ "\u0430\u043f\u0440\u0435\u043b\u044c",
+ "\u043c\u0430\u0439",
+ "\u0438\u044e\u043d\u044c",
+ "\u0438\u044e\u043b\u044c",
+ "\u0430\u0432\u0433\u0443\u0441\u0442",
+ "\u0441\u0435\u043d\u0442\u044f\u0431\u0440\u044c",
+ "\u043e\u043a\u0442\u044f\u0431\u0440\u044c",
+ "\u043d\u043e\u044f\u0431\u0440\u044c",
+ "\u0434\u0435\u043a\u0430\u0431\u0440\u044c"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ru-ua",
+ "localeID": "ru_UA",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (vf.v == 0 && i % 10 == 1 && i % 100 != 11) { return PLURAL_CATEGORY.ONE; } if (vf.v == 0 && i % 10 >= 2 && i % 10 <= 4 && (i % 100 < 12 || i % 100 > 14)) { return PLURAL_CATEGORY.FEW; } if (vf.v == 0 && i % 10 == 0 || vf.v == 0 && i % 10 >= 5 && i % 10 <= 9 || vf.v == 0 && i % 100 >= 11 && i % 100 <= 14) { return PLURAL_CATEGORY.MANY; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ru.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ru.js
index 553360f0..1ed06bd0 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ru.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ru.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u043d\u043e\u044f\u0431.",
"\u0434\u0435\u043a."
],
+ "STANDALONEMONTH": [
+ "\u044f\u043d\u0432\u0430\u0440\u044c",
+ "\u0444\u0435\u0432\u0440\u0430\u043b\u044c",
+ "\u043c\u0430\u0440\u0442",
+ "\u0430\u043f\u0440\u0435\u043b\u044c",
+ "\u043c\u0430\u0439",
+ "\u0438\u044e\u043d\u044c",
+ "\u0438\u044e\u043b\u044c",
+ "\u0430\u0432\u0433\u0443\u0441\u0442",
+ "\u0441\u0435\u043d\u0442\u044f\u0431\u0440\u044c",
+ "\u043e\u043a\u0442\u044f\u0431\u0440\u044c",
+ "\u043d\u043e\u044f\u0431\u0440\u044c",
+ "\u0434\u0435\u043a\u0430\u0431\u0440\u044c"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ru",
+ "localeID": "ru",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (vf.v == 0 && i % 10 == 1 && i % 100 != 11) { return PLURAL_CATEGORY.ONE; } if (vf.v == 0 && i % 10 >= 2 && i % 10 <= 4 && (i % 100 < 12 || i % 100 > 14)) { return PLURAL_CATEGORY.FEW; } if (vf.v == 0 && i % 10 == 0 || vf.v == 0 && i % 10 >= 5 && i % 10 <= 9 || vf.v == 0 && i % 100 >= 11 && i % 100 <= 14) { return PLURAL_CATEGORY.MANY; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_rw-rw.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_rw-rw.js
index 7e679df6..1778548c 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_rw-rw.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_rw-rw.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"ugu.",
"uku."
],
+ "STANDALONEMONTH": [
+ "Mutarama",
+ "Gashyantare",
+ "Werurwe",
+ "Mata",
+ "Gicuransi",
+ "Kamena",
+ "Nyakanga",
+ "Kanama",
+ "Nzeli",
+ "Ukwakira",
+ "Ugushyingo",
+ "Ukuboza"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "rw-rw",
+ "localeID": "rw_RW",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_rw.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_rw.js
index 2e5db17a..11806021 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_rw.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_rw.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"ugu.",
"uku."
],
+ "STANDALONEMONTH": [
+ "Mutarama",
+ "Gashyantare",
+ "Werurwe",
+ "Mata",
+ "Gicuransi",
+ "Kamena",
+ "Nyakanga",
+ "Kanama",
+ "Nzeli",
+ "Ukwakira",
+ "Ugushyingo",
+ "Ukuboza"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "rw",
+ "localeID": "rw",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_rwk-tz.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_rwk-tz.js
index 3dcb29ae..7e845939 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_rwk-tz.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_rwk-tz.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Des"
],
+ "STANDALONEMONTH": [
+ "Januari",
+ "Februari",
+ "Machi",
+ "Aprilyi",
+ "Mei",
+ "Junyi",
+ "Julyai",
+ "Agusti",
+ "Septemba",
+ "Oktoba",
+ "Novemba",
+ "Desemba"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "rwk-tz",
+ "localeID": "rwk_TZ",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_rwk.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_rwk.js
index 726ed59a..8d4aae47 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_rwk.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_rwk.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Des"
],
+ "STANDALONEMONTH": [
+ "Januari",
+ "Februari",
+ "Machi",
+ "Aprilyi",
+ "Mei",
+ "Junyi",
+ "Julyai",
+ "Agusti",
+ "Septemba",
+ "Oktoba",
+ "Novemba",
+ "Desemba"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "rwk",
+ "localeID": "rwk",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sah-ru.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sah-ru.js
index 85b3776f..24c2aa40 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sah-ru.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sah-ru.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u0421\u044d\u0442",
"\u0410\u0445\u0441"
],
+ "STANDALONEMONTH": [
+ "\u0422\u043e\u0445\u0441\u0443\u043d\u043d\u044c\u0443",
+ "\u041e\u043b\u0443\u043d\u043d\u044c\u0443",
+ "\u041a\u0443\u043b\u0443\u043d \u0442\u0443\u0442\u0430\u0440",
+ "\u041c\u0443\u0443\u0441 \u0443\u0441\u0442\u0430\u0440",
+ "\u042b\u0430\u043c \u044b\u0439\u044b\u043d",
+ "\u0411\u044d\u0441 \u044b\u0439\u044b\u043d",
+ "\u041e\u0442 \u044b\u0439\u044b\u043d",
+ "\u0410\u0442\u044b\u0440\u0434\u044c\u044b\u0445 \u044b\u0439\u044b\u043d",
+ "\u0411\u0430\u043b\u0430\u0495\u0430\u043d \u044b\u0439\u044b\u043d",
+ "\u0410\u043b\u0442\u044b\u043d\u043d\u044c\u044b",
+ "\u0421\u044d\u0442\u0438\u043d\u043d\u044c\u0438",
+ "\u0410\u0445\u0441\u044b\u043d\u043d\u044c\u044b"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "sah-ru",
+ "localeID": "sah_RU",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sah.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sah.js
index 23bd88ee..8e57afce 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sah.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sah.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u0421\u044d\u0442",
"\u0410\u0445\u0441"
],
+ "STANDALONEMONTH": [
+ "\u0422\u043e\u0445\u0441\u0443\u043d\u043d\u044c\u0443",
+ "\u041e\u043b\u0443\u043d\u043d\u044c\u0443",
+ "\u041a\u0443\u043b\u0443\u043d \u0442\u0443\u0442\u0430\u0440",
+ "\u041c\u0443\u0443\u0441 \u0443\u0441\u0442\u0430\u0440",
+ "\u042b\u0430\u043c \u044b\u0439\u044b\u043d",
+ "\u0411\u044d\u0441 \u044b\u0439\u044b\u043d",
+ "\u041e\u0442 \u044b\u0439\u044b\u043d",
+ "\u0410\u0442\u044b\u0440\u0434\u044c\u044b\u0445 \u044b\u0439\u044b\u043d",
+ "\u0411\u0430\u043b\u0430\u0495\u0430\u043d \u044b\u0439\u044b\u043d",
+ "\u0410\u043b\u0442\u044b\u043d\u043d\u044c\u044b",
+ "\u0421\u044d\u0442\u0438\u043d\u043d\u044c\u0438",
+ "\u0410\u0445\u0441\u044b\u043d\u043d\u044c\u044b"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "sah",
+ "localeID": "sah",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_saq-ke.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_saq-ke.js
index a7f89980..c4fdb68f 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_saq-ke.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_saq-ke.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Tob",
"Tow"
],
+ "STANDALONEMONTH": [
+ "Lapa le obo",
+ "Lapa le waare",
+ "Lapa le okuni",
+ "Lapa le ong\u2019wan",
+ "Lapa le imet",
+ "Lapa le ile",
+ "Lapa le sapa",
+ "Lapa le isiet",
+ "Lapa le saal",
+ "Lapa le tomon",
+ "Lapa le tomon obo",
+ "Lapa le tomon waare"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "saq-ke",
+ "localeID": "saq_KE",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_saq.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_saq.js
index b515603a..3b916785 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_saq.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_saq.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Tob",
"Tow"
],
+ "STANDALONEMONTH": [
+ "Lapa le obo",
+ "Lapa le waare",
+ "Lapa le okuni",
+ "Lapa le ong\u2019wan",
+ "Lapa le imet",
+ "Lapa le ile",
+ "Lapa le sapa",
+ "Lapa le isiet",
+ "Lapa le saal",
+ "Lapa le tomon",
+ "Lapa le tomon obo",
+ "Lapa le tomon waare"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "saq",
+ "localeID": "saq",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sbp-tz.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sbp-tz.js
index 1e5a0e82..b476af4d 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sbp-tz.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sbp-tz.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Mus",
"Muh"
],
+ "STANDALONEMONTH": [
+ "Mupalangulwa",
+ "Mwitope",
+ "Mushende",
+ "Munyi",
+ "Mushende Magali",
+ "Mujimbi",
+ "Mushipepo",
+ "Mupuguto",
+ "Munyense",
+ "Mokhu",
+ "Musongandembwe",
+ "Muhaano"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "sbp-tz",
+ "localeID": "sbp_TZ",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sbp.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sbp.js
index da6106a6..65a582b7 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sbp.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sbp.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Mus",
"Muh"
],
+ "STANDALONEMONTH": [
+ "Mupalangulwa",
+ "Mwitope",
+ "Mushende",
+ "Munyi",
+ "Mushende Magali",
+ "Mujimbi",
+ "Mushipepo",
+ "Mupuguto",
+ "Munyense",
+ "Mokhu",
+ "Musongandembwe",
+ "Muhaano"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "sbp",
+ "localeID": "sbp",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_se-fi.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_se-fi.js
index 62de6b1a..0d3b4777 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_se-fi.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_se-fi.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"sk\u00e1bma",
"juovla"
],
+ "STANDALONEMONTH": [
+ "o\u0111\u0111ajagem\u00e1nnu",
+ "guovvam\u00e1nnu",
+ "njuk\u010dam\u00e1nnu",
+ "cuo\u014bom\u00e1nnu",
+ "miessem\u00e1nnu",
+ "geassem\u00e1nnu",
+ "suoidnem\u00e1nnu",
+ "borgem\u00e1nnu",
+ "\u010dak\u010dam\u00e1nnu",
+ "golggotm\u00e1nnu",
+ "sk\u00e1bmam\u00e1nnu",
+ "juovlam\u00e1nnu"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "se-fi",
+ "localeID": "se_FI",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_se-no.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_se-no.js
index b2e24ae6..4fa6e3a1 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_se-no.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_se-no.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"sk\u00e1b",
"juov"
],
+ "STANDALONEMONTH": [
+ "o\u0111\u0111ajagem\u00e1nnu",
+ "guovvam\u00e1nnu",
+ "njuk\u010dam\u00e1nnu",
+ "cuo\u014bom\u00e1nnu",
+ "miessem\u00e1nnu",
+ "geassem\u00e1nnu",
+ "suoidnem\u00e1nnu",
+ "borgem\u00e1nnu",
+ "\u010dak\u010dam\u00e1nnu",
+ "golggotm\u00e1nnu",
+ "sk\u00e1bmam\u00e1nnu",
+ "juovlam\u00e1nnu"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "se-no",
+ "localeID": "se_NO",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_se-se.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_se-se.js
index 7915d431..ea4545ea 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_se-se.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_se-se.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"sk\u00e1b",
"juov"
],
+ "STANDALONEMONTH": [
+ "o\u0111\u0111ajagem\u00e1nnu",
+ "guovvam\u00e1nnu",
+ "njuk\u010dam\u00e1nnu",
+ "cuo\u014bom\u00e1nnu",
+ "miessem\u00e1nnu",
+ "geassem\u00e1nnu",
+ "suoidnem\u00e1nnu",
+ "borgem\u00e1nnu",
+ "\u010dak\u010dam\u00e1nnu",
+ "golggotm\u00e1nnu",
+ "sk\u00e1bmam\u00e1nnu",
+ "juovlam\u00e1nnu"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "se-se",
+ "localeID": "se_SE",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_se.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_se.js
index 0a6d7d66..2434e7bd 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_se.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_se.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"sk\u00e1b",
"juov"
],
+ "STANDALONEMONTH": [
+ "o\u0111\u0111ajagem\u00e1nnu",
+ "guovvam\u00e1nnu",
+ "njuk\u010dam\u00e1nnu",
+ "cuo\u014bom\u00e1nnu",
+ "miessem\u00e1nnu",
+ "geassem\u00e1nnu",
+ "suoidnem\u00e1nnu",
+ "borgem\u00e1nnu",
+ "\u010dak\u010dam\u00e1nnu",
+ "golggotm\u00e1nnu",
+ "sk\u00e1bmam\u00e1nnu",
+ "juovlam\u00e1nnu"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "se",
+ "localeID": "se",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_seh-mz.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_seh-mz.js
index f723c867..f9341d9c 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_seh-mz.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_seh-mz.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "Janeiro",
+ "Fevreiro",
+ "Marco",
+ "Abril",
+ "Maio",
+ "Junho",
+ "Julho",
+ "Augusto",
+ "Setembro",
+ "Otubro",
+ "Novembro",
+ "Decembro"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "seh-mz",
+ "localeID": "seh_MZ",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_seh.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_seh.js
index d9c55eec..135b223e 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_seh.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_seh.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "Janeiro",
+ "Fevreiro",
+ "Marco",
+ "Abril",
+ "Maio",
+ "Junho",
+ "Julho",
+ "Augusto",
+ "Setembro",
+ "Otubro",
+ "Novembro",
+ "Decembro"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "seh",
+ "localeID": "seh",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ses-ml.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ses-ml.js
index 596dfe43..071f8a43 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ses-ml.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ses-ml.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Noo",
"Dee"
],
+ "STANDALONEMONTH": [
+ "\u017danwiye",
+ "Feewiriye",
+ "Marsi",
+ "Awiril",
+ "Me",
+ "\u017duwe\u014b",
+ "\u017duyye",
+ "Ut",
+ "Sektanbur",
+ "Oktoobur",
+ "Noowanbur",
+ "Deesanbur"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ses-ml",
+ "localeID": "ses_ML",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ses.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ses.js
index e150d779..816e7d87 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ses.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ses.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Noo",
"Dee"
],
+ "STANDALONEMONTH": [
+ "\u017danwiye",
+ "Feewiriye",
+ "Marsi",
+ "Awiril",
+ "Me",
+ "\u017duwe\u014b",
+ "\u017duyye",
+ "Ut",
+ "Sektanbur",
+ "Oktoobur",
+ "Noowanbur",
+ "Deesanbur"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ses",
+ "localeID": "ses",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sg-cf.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sg-cf.js
index fb6d2f76..8cb4ce04 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sg-cf.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sg-cf.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nab",
"Kak"
],
+ "STANDALONEMONTH": [
+ "Nyenye",
+ "Fulund\u00efgi",
+ "Mb\u00e4ng\u00fc",
+ "Ngub\u00f9e",
+ "B\u00eal\u00e4w\u00fc",
+ "F\u00f6ndo",
+ "Lengua",
+ "K\u00fck\u00fcr\u00fc",
+ "Mvuka",
+ "Ngberere",
+ "Nab\u00e4nd\u00fcru",
+ "Kakauka"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "sg-cf",
+ "localeID": "sg_CF",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sg.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sg.js
index 3b671dae..d4b9a504 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sg.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sg.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nab",
"Kak"
],
+ "STANDALONEMONTH": [
+ "Nyenye",
+ "Fulund\u00efgi",
+ "Mb\u00e4ng\u00fc",
+ "Ngub\u00f9e",
+ "B\u00eal\u00e4w\u00fc",
+ "F\u00f6ndo",
+ "Lengua",
+ "K\u00fck\u00fcr\u00fc",
+ "Mvuka",
+ "Ngberere",
+ "Nab\u00e4nd\u00fcru",
+ "Kakauka"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "sg",
+ "localeID": "sg",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_shi-latn-ma.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_shi-latn-ma.js
index 02156c69..31565461 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_shi-latn-ma.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_shi-latn-ma.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"nuw",
"duj"
],
+ "STANDALONEMONTH": [
+ "innayr",
+ "b\u1e5bay\u1e5b",
+ "ma\u1e5b\u1e63",
+ "ibrir",
+ "mayyu",
+ "yunyu",
+ "yulyuz",
+ "\u0263uct",
+ "cutanbir",
+ "ktubr",
+ "nuwanbir",
+ "dujanbir"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "shi-latn-ma",
+ "localeID": "shi_Latn_MA",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_shi-latn.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_shi-latn.js
index 6b8b6f70..d754079b 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_shi-latn.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_shi-latn.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"nuw",
"duj"
],
+ "STANDALONEMONTH": [
+ "innayr",
+ "b\u1e5bay\u1e5b",
+ "ma\u1e5b\u1e63",
+ "ibrir",
+ "mayyu",
+ "yunyu",
+ "yulyuz",
+ "\u0263uct",
+ "cutanbir",
+ "ktubr",
+ "nuwanbir",
+ "dujanbir"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "shi-latn",
+ "localeID": "shi_Latn",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_shi-tfng-ma.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_shi-tfng-ma.js
index 998d17a2..bcbd7c19 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_shi-tfng-ma.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_shi-tfng-ma.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u2d4f\u2d53\u2d61",
"\u2d37\u2d53\u2d4a"
],
+ "STANDALONEMONTH": [
+ "\u2d49\u2d4f\u2d4f\u2d30\u2d62\u2d54",
+ "\u2d31\u2d55\u2d30\u2d62\u2d55",
+ "\u2d4e\u2d30\u2d55\u2d5a",
+ "\u2d49\u2d31\u2d54\u2d49\u2d54",
+ "\u2d4e\u2d30\u2d62\u2d62\u2d53",
+ "\u2d62\u2d53\u2d4f\u2d62\u2d53",
+ "\u2d62\u2d53\u2d4d\u2d62\u2d53\u2d63",
+ "\u2d56\u2d53\u2d5b\u2d5c",
+ "\u2d5b\u2d53\u2d5c\u2d30\u2d4f\u2d31\u2d49\u2d54",
+ "\u2d3d\u2d5c\u2d53\u2d31\u2d54",
+ "\u2d4f\u2d53\u2d61\u2d30\u2d4f\u2d31\u2d49\u2d54",
+ "\u2d37\u2d53\u2d4a\u2d30\u2d4f\u2d31\u2d49\u2d54"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "shi-tfng-ma",
+ "localeID": "shi_Tfng_MA",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_shi-tfng.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_shi-tfng.js
index a2d825b3..be8968d5 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_shi-tfng.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_shi-tfng.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u2d4f\u2d53\u2d61",
"\u2d37\u2d53\u2d4a"
],
+ "STANDALONEMONTH": [
+ "\u2d49\u2d4f\u2d4f\u2d30\u2d62\u2d54",
+ "\u2d31\u2d55\u2d30\u2d62\u2d55",
+ "\u2d4e\u2d30\u2d55\u2d5a",
+ "\u2d49\u2d31\u2d54\u2d49\u2d54",
+ "\u2d4e\u2d30\u2d62\u2d62\u2d53",
+ "\u2d62\u2d53\u2d4f\u2d62\u2d53",
+ "\u2d62\u2d53\u2d4d\u2d62\u2d53\u2d63",
+ "\u2d56\u2d53\u2d5b\u2d5c",
+ "\u2d5b\u2d53\u2d5c\u2d30\u2d4f\u2d31\u2d49\u2d54",
+ "\u2d3d\u2d5c\u2d53\u2d31\u2d54",
+ "\u2d4f\u2d53\u2d61\u2d30\u2d4f\u2d31\u2d49\u2d54",
+ "\u2d37\u2d53\u2d4a\u2d30\u2d4f\u2d31\u2d49\u2d54"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "shi-tfng",
+ "localeID": "shi_Tfng",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_shi.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_shi.js
index 5f2fe453..cc1e5316 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_shi.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_shi.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u2d4f\u2d53\u2d61",
"\u2d37\u2d53\u2d4a"
],
+ "STANDALONEMONTH": [
+ "\u2d49\u2d4f\u2d4f\u2d30\u2d62\u2d54",
+ "\u2d31\u2d55\u2d30\u2d62\u2d55",
+ "\u2d4e\u2d30\u2d55\u2d5a",
+ "\u2d49\u2d31\u2d54\u2d49\u2d54",
+ "\u2d4e\u2d30\u2d62\u2d62\u2d53",
+ "\u2d62\u2d53\u2d4f\u2d62\u2d53",
+ "\u2d62\u2d53\u2d4d\u2d62\u2d53\u2d63",
+ "\u2d56\u2d53\u2d5b\u2d5c",
+ "\u2d5b\u2d53\u2d5c\u2d30\u2d4f\u2d31\u2d49\u2d54",
+ "\u2d3d\u2d5c\u2d53\u2d31\u2d54",
+ "\u2d4f\u2d53\u2d61\u2d30\u2d4f\u2d31\u2d49\u2d54",
+ "\u2d37\u2d53\u2d4a\u2d30\u2d4f\u2d31\u2d49\u2d54"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "shi",
+ "localeID": "shi",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_si-lk.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_si-lk.js
index c216c753..d5093237 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_si-lk.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_si-lk.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u0db1\u0ddc\u0dc0\u0dd0",
"\u0daf\u0dd9\u0dc3\u0dd0"
],
+ "STANDALONEMONTH": [
+ "\u0da2\u0db1\u0dc0\u0dcf\u0dbb\u0dd2",
+ "\u0db4\u0dd9\u0db6\u0dbb\u0dc0\u0dcf\u0dbb\u0dd2",
+ "\u0db8\u0dcf\u0dbb\u0dca\u0dad\u0dd4",
+ "\u0d85\u0db4\u0dca\u200d\u0dbb\u0dda\u0dbd\u0dca",
+ "\u0db8\u0dd0\u0dba\u0dd2",
+ "\u0da2\u0dd6\u0db1\u0dd2",
+ "\u0da2\u0dd6\u0dbd\u0dd2",
+ "\u0d85\u0d9c\u0ddd\u0dc3\u0dca\u0dad\u0dd4",
+ "\u0dc3\u0dd0\u0db4\u0dca\u0dad\u0dd0\u0db8\u0dca\u0db6\u0dbb\u0dca",
+ "\u0d94\u0d9a\u0dca\u0dad\u0ddd\u0db6\u0dbb\u0dca",
+ "\u0db1\u0ddc\u0dc0\u0dd0\u0db8\u0dca\u0db6\u0dbb\u0dca",
+ "\u0daf\u0dd9\u0dc3\u0dd0\u0db8\u0dca\u0db6\u0dbb\u0dca"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "si-lk",
+ "localeID": "si_LK",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if ((n == 0 || n == 1) || i == 0 && vf.f == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_si.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_si.js
index bfcdd628..83f5fb54 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_si.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_si.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u0db1\u0ddc\u0dc0\u0dd0",
"\u0daf\u0dd9\u0dc3\u0dd0"
],
+ "STANDALONEMONTH": [
+ "\u0da2\u0db1\u0dc0\u0dcf\u0dbb\u0dd2",
+ "\u0db4\u0dd9\u0db6\u0dbb\u0dc0\u0dcf\u0dbb\u0dd2",
+ "\u0db8\u0dcf\u0dbb\u0dca\u0dad\u0dd4",
+ "\u0d85\u0db4\u0dca\u200d\u0dbb\u0dda\u0dbd\u0dca",
+ "\u0db8\u0dd0\u0dba\u0dd2",
+ "\u0da2\u0dd6\u0db1\u0dd2",
+ "\u0da2\u0dd6\u0dbd\u0dd2",
+ "\u0d85\u0d9c\u0ddd\u0dc3\u0dca\u0dad\u0dd4",
+ "\u0dc3\u0dd0\u0db4\u0dca\u0dad\u0dd0\u0db8\u0dca\u0db6\u0dbb\u0dca",
+ "\u0d94\u0d9a\u0dca\u0dad\u0ddd\u0db6\u0dbb\u0dca",
+ "\u0db1\u0ddc\u0dc0\u0dd0\u0db8\u0dca\u0db6\u0dbb\u0dca",
+ "\u0daf\u0dd9\u0dc3\u0dd0\u0db8\u0dca\u0db6\u0dbb\u0dca"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "si",
+ "localeID": "si",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if ((n == 0 || n == 1) || i == 0 && vf.f == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sk-sk.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sk-sk.js
index 01f0f0cb..2f5ba5d7 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sk-sk.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sk-sk.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"nov",
"dec"
],
+ "STANDALONEMONTH": [
+ "janu\u00e1r",
+ "febru\u00e1r",
+ "marec",
+ "apr\u00edl",
+ "m\u00e1j",
+ "j\u00fan",
+ "j\u00fal",
+ "august",
+ "september",
+ "okt\u00f3ber",
+ "november",
+ "december"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "sk-sk",
+ "localeID": "sk_SK",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } if (i >= 2 && i <= 4 && vf.v == 0) { return PLURAL_CATEGORY.FEW; } if (vf.v != 0) { return PLURAL_CATEGORY.MANY; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sk.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sk.js
index 7618fe38..aa745cf3 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sk.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sk.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"nov",
"dec"
],
+ "STANDALONEMONTH": [
+ "janu\u00e1r",
+ "febru\u00e1r",
+ "marec",
+ "apr\u00edl",
+ "m\u00e1j",
+ "j\u00fan",
+ "j\u00fal",
+ "august",
+ "september",
+ "okt\u00f3ber",
+ "november",
+ "december"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "sk",
+ "localeID": "sk",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } if (i >= 2 && i <= 4 && vf.v == 0) { return PLURAL_CATEGORY.FEW; } if (vf.v != 0) { return PLURAL_CATEGORY.MANY; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sl-si.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sl-si.js
index f480b789..6bec18e6 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sl-si.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sl-si.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"nov.",
"dec."
],
+ "STANDALONEMONTH": [
+ "januar",
+ "februar",
+ "marec",
+ "april",
+ "maj",
+ "junij",
+ "julij",
+ "avgust",
+ "september",
+ "oktober",
+ "november",
+ "december"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "sl-si",
+ "localeID": "sl_SI",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (vf.v == 0 && i % 100 == 1) { return PLURAL_CATEGORY.ONE; } if (vf.v == 0 && i % 100 == 2) { return PLURAL_CATEGORY.TWO; } if (vf.v == 0 && i % 100 >= 3 && i % 100 <= 4 || vf.v != 0) { return PLURAL_CATEGORY.FEW; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sl.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sl.js
index 24d4a779..8155bfc7 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sl.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sl.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"nov.",
"dec."
],
+ "STANDALONEMONTH": [
+ "januar",
+ "februar",
+ "marec",
+ "april",
+ "maj",
+ "junij",
+ "julij",
+ "avgust",
+ "september",
+ "oktober",
+ "november",
+ "december"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "sl",
+ "localeID": "sl",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (vf.v == 0 && i % 100 == 1) { return PLURAL_CATEGORY.ONE; } if (vf.v == 0 && i % 100 == 2) { return PLURAL_CATEGORY.TWO; } if (vf.v == 0 && i % 100 >= 3 && i % 100 <= 4 || vf.v != 0) { return PLURAL_CATEGORY.FEW; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_smn-fi.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_smn-fi.js
index 027b0a2c..912e2182 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_smn-fi.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_smn-fi.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"M11",
"M12"
],
+ "STANDALONEMONTH": [
+ "u\u0111\u0111\u00e2ivem\u00e1\u00e1nu",
+ "kuov\u00e2m\u00e1\u00e1nu",
+ "njuh\u010d\u00e2m\u00e1\u00e1nu",
+ "cu\u00e1\u014buim\u00e1\u00e1nu",
+ "vyesim\u00e1\u00e1nu",
+ "kesim\u00e1\u00e1nu",
+ "syeinim\u00e1\u00e1nu",
+ "porgem\u00e1\u00e1nu",
+ "\u010doh\u010d\u00e2m\u00e1\u00e1nu",
+ "roovv\u00e2dm\u00e1\u00e1nu",
+ "skamm\u00e2m\u00e1\u00e1nu",
+ "juovl\u00e2m\u00e1\u00e1nu"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "smn-fi",
+ "localeID": "smn_FI",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_smn.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_smn.js
index 68c71cfa..c7cba3cc 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_smn.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_smn.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"M11",
"M12"
],
+ "STANDALONEMONTH": [
+ "u\u0111\u0111\u00e2ivem\u00e1\u00e1nu",
+ "kuov\u00e2m\u00e1\u00e1nu",
+ "njuh\u010d\u00e2m\u00e1\u00e1nu",
+ "cu\u00e1\u014buim\u00e1\u00e1nu",
+ "vyesim\u00e1\u00e1nu",
+ "kesim\u00e1\u00e1nu",
+ "syeinim\u00e1\u00e1nu",
+ "porgem\u00e1\u00e1nu",
+ "\u010doh\u010d\u00e2m\u00e1\u00e1nu",
+ "roovv\u00e2dm\u00e1\u00e1nu",
+ "skamm\u00e2m\u00e1\u00e1nu",
+ "juovl\u00e2m\u00e1\u00e1nu"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "smn",
+ "localeID": "smn",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sn-zw.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sn-zw.js
index 1d8cd0ff..6a802890 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sn-zw.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sn-zw.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Mb",
"Zvi"
],
+ "STANDALONEMONTH": [
+ "Ndira",
+ "Kukadzi",
+ "Kurume",
+ "Kubvumbi",
+ "Chivabvu",
+ "Chikumi",
+ "Chikunguru",
+ "Nyamavhuvhu",
+ "Gunyana",
+ "Gumiguru",
+ "Mbudzi",
+ "Zvita"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "sn-zw",
+ "localeID": "sn_ZW",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sn.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sn.js
index 7b16b4dc..96f0168f 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sn.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sn.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Mb",
"Zvi"
],
+ "STANDALONEMONTH": [
+ "Ndira",
+ "Kukadzi",
+ "Kurume",
+ "Kubvumbi",
+ "Chivabvu",
+ "Chikumi",
+ "Chikunguru",
+ "Nyamavhuvhu",
+ "Gunyana",
+ "Gumiguru",
+ "Mbudzi",
+ "Zvita"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "sn",
+ "localeID": "sn",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_so-dj.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_so-dj.js
index d8307cbd..bc58c004 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_so-dj.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_so-dj.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"KIT",
"LIT"
],
+ "STANDALONEMONTH": [
+ "Bisha Koobaad",
+ "Bisha Labaad",
+ "Bisha Saddexaad",
+ "Bisha Afraad",
+ "Bisha Shanaad",
+ "Bisha Lixaad",
+ "Bisha Todobaad",
+ "Bisha Sideedaad",
+ "Bisha Sagaalaad",
+ "Bisha Tobnaad",
+ "Bisha Kow iyo Tobnaad",
+ "Bisha Laba iyo Tobnaad"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "so-dj",
+ "localeID": "so_DJ",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_so-et.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_so-et.js
index ef34ea2c..98b5e4df 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_so-et.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_so-et.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"KIT",
"LIT"
],
+ "STANDALONEMONTH": [
+ "Bisha Koobaad",
+ "Bisha Labaad",
+ "Bisha Saddexaad",
+ "Bisha Afraad",
+ "Bisha Shanaad",
+ "Bisha Lixaad",
+ "Bisha Todobaad",
+ "Bisha Sideedaad",
+ "Bisha Sagaalaad",
+ "Bisha Tobnaad",
+ "Bisha Kow iyo Tobnaad",
+ "Bisha Laba iyo Tobnaad"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "so-et",
+ "localeID": "so_ET",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_so-ke.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_so-ke.js
index 67fc74e0..55b88382 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_so-ke.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_so-ke.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"KIT",
"LIT"
],
+ "STANDALONEMONTH": [
+ "Bisha Koobaad",
+ "Bisha Labaad",
+ "Bisha Saddexaad",
+ "Bisha Afraad",
+ "Bisha Shanaad",
+ "Bisha Lixaad",
+ "Bisha Todobaad",
+ "Bisha Sideedaad",
+ "Bisha Sagaalaad",
+ "Bisha Tobnaad",
+ "Bisha Kow iyo Tobnaad",
+ "Bisha Laba iyo Tobnaad"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "so-ke",
+ "localeID": "so_KE",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_so-so.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_so-so.js
index c91a4235..32784296 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_so-so.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_so-so.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"KIT",
"LIT"
],
+ "STANDALONEMONTH": [
+ "Bisha Koobaad",
+ "Bisha Labaad",
+ "Bisha Saddexaad",
+ "Bisha Afraad",
+ "Bisha Shanaad",
+ "Bisha Lixaad",
+ "Bisha Todobaad",
+ "Bisha Sideedaad",
+ "Bisha Sagaalaad",
+ "Bisha Tobnaad",
+ "Bisha Kow iyo Tobnaad",
+ "Bisha Laba iyo Tobnaad"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "so-so",
+ "localeID": "so_SO",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_so.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_so.js
index 743a24ba..33068e35 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_so.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_so.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"KIT",
"LIT"
],
+ "STANDALONEMONTH": [
+ "Bisha Koobaad",
+ "Bisha Labaad",
+ "Bisha Saddexaad",
+ "Bisha Afraad",
+ "Bisha Shanaad",
+ "Bisha Lixaad",
+ "Bisha Todobaad",
+ "Bisha Sideedaad",
+ "Bisha Sagaalaad",
+ "Bisha Tobnaad",
+ "Bisha Kow iyo Tobnaad",
+ "Bisha Laba iyo Tobnaad"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "so",
+ "localeID": "so",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sq-al.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sq-al.js
index 6dac5e79..d72e4dd8 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sq-al.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sq-al.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"N\u00ebn",
"Dhj"
],
+ "STANDALONEMONTH": [
+ "Janar",
+ "Shkurt",
+ "Mars",
+ "Prill",
+ "Maj",
+ "Qershor",
+ "Korrik",
+ "Gusht",
+ "Shtator",
+ "Tetor",
+ "N\u00ebntor",
+ "Dhjetor"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "sq-al",
+ "localeID": "sq_AL",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sq-mk.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sq-mk.js
index e7f5c31e..c7cb626e 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sq-mk.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sq-mk.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"N\u00ebn",
"Dhj"
],
+ "STANDALONEMONTH": [
+ "Janar",
+ "Shkurt",
+ "Mars",
+ "Prill",
+ "Maj",
+ "Qershor",
+ "Korrik",
+ "Gusht",
+ "Shtator",
+ "Tetor",
+ "N\u00ebntor",
+ "Dhjetor"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "sq-mk",
+ "localeID": "sq_MK",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sq-xk.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sq-xk.js
index ccdf61f5..5b5e0c5d 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sq-xk.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sq-xk.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"N\u00ebn",
"Dhj"
],
+ "STANDALONEMONTH": [
+ "Janar",
+ "Shkurt",
+ "Mars",
+ "Prill",
+ "Maj",
+ "Qershor",
+ "Korrik",
+ "Gusht",
+ "Shtator",
+ "Tetor",
+ "N\u00ebntor",
+ "Dhjetor"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "sq-xk",
+ "localeID": "sq_XK",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sq.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sq.js
index bc614eed..c39b126b 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sq.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sq.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"N\u00ebn",
"Dhj"
],
+ "STANDALONEMONTH": [
+ "Janar",
+ "Shkurt",
+ "Mars",
+ "Prill",
+ "Maj",
+ "Qershor",
+ "Korrik",
+ "Gusht",
+ "Shtator",
+ "Tetor",
+ "N\u00ebntor",
+ "Dhjetor"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "sq",
+ "localeID": "sq",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sr-cyrl-ba.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sr-cyrl-ba.js
index e3843b15..9db54861 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sr-cyrl-ba.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sr-cyrl-ba.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u043d\u043e\u0432",
"\u0434\u0435\u0446"
],
+ "STANDALONEMONTH": [
+ "\u0458\u0430\u043d\u0443\u0430\u0440",
+ "\u0444\u0435\u0431\u0440\u0443\u0430\u0440",
+ "\u043c\u0430\u0440\u0442",
+ "\u0430\u043f\u0440\u0438\u043b",
+ "\u043c\u0430\u0458",
+ "\u0458\u0443\u043d",
+ "\u0458\u0443\u043b",
+ "\u0430\u0432\u0433\u0443\u0441\u0442",
+ "\u0441\u0435\u043f\u0442\u0435\u043c\u0431\u0430\u0440",
+ "\u043e\u043a\u0442\u043e\u0431\u0430\u0440",
+ "\u043d\u043e\u0432\u0435\u043c\u0431\u0430\u0440",
+ "\u0434\u0435\u0446\u0435\u043c\u0431\u0430\u0440"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "sr-cyrl-ba",
+ "localeID": "sr_Cyrl_BA",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (vf.v == 0 && i % 10 == 1 && i % 100 != 11 || vf.f % 10 == 1 && vf.f % 100 != 11) { return PLURAL_CATEGORY.ONE; } if (vf.v == 0 && i % 10 >= 2 && i % 10 <= 4 && (i % 100 < 12 || i % 100 > 14) || vf.f % 10 >= 2 && vf.f % 10 <= 4 && (vf.f % 100 < 12 || vf.f % 100 > 14)) { return PLURAL_CATEGORY.FEW; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sr-cyrl-me.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sr-cyrl-me.js
index 3bf9c2cc..7a978c06 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sr-cyrl-me.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sr-cyrl-me.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u043d\u043e\u0432",
"\u0434\u0435\u0446"
],
+ "STANDALONEMONTH": [
+ "\u0458\u0430\u043d\u0443\u0430\u0440",
+ "\u0444\u0435\u0431\u0440\u0443\u0430\u0440",
+ "\u043c\u0430\u0440\u0442",
+ "\u0430\u043f\u0440\u0438\u043b",
+ "\u043c\u0430\u0458",
+ "\u0458\u0443\u043d",
+ "\u0458\u0443\u043b",
+ "\u0430\u0432\u0433\u0443\u0441\u0442",
+ "\u0441\u0435\u043f\u0442\u0435\u043c\u0431\u0430\u0440",
+ "\u043e\u043a\u0442\u043e\u0431\u0430\u0440",
+ "\u043d\u043e\u0432\u0435\u043c\u0431\u0430\u0440",
+ "\u0434\u0435\u0446\u0435\u043c\u0431\u0430\u0440"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "sr-cyrl-me",
+ "localeID": "sr_Cyrl_ME",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (vf.v == 0 && i % 10 == 1 && i % 100 != 11 || vf.f % 10 == 1 && vf.f % 100 != 11) { return PLURAL_CATEGORY.ONE; } if (vf.v == 0 && i % 10 >= 2 && i % 10 <= 4 && (i % 100 < 12 || i % 100 > 14) || vf.f % 10 >= 2 && vf.f % 10 <= 4 && (vf.f % 100 < 12 || vf.f % 100 > 14)) { return PLURAL_CATEGORY.FEW; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sr-cyrl-rs.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sr-cyrl-rs.js
index 0f883f0b..420af9b1 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sr-cyrl-rs.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sr-cyrl-rs.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u043d\u043e\u0432",
"\u0434\u0435\u0446"
],
+ "STANDALONEMONTH": [
+ "\u0458\u0430\u043d\u0443\u0430\u0440",
+ "\u0444\u0435\u0431\u0440\u0443\u0430\u0440",
+ "\u043c\u0430\u0440\u0442",
+ "\u0430\u043f\u0440\u0438\u043b",
+ "\u043c\u0430\u0458",
+ "\u0458\u0443\u043d",
+ "\u0458\u0443\u043b",
+ "\u0430\u0432\u0433\u0443\u0441\u0442",
+ "\u0441\u0435\u043f\u0442\u0435\u043c\u0431\u0430\u0440",
+ "\u043e\u043a\u0442\u043e\u0431\u0430\u0440",
+ "\u043d\u043e\u0432\u0435\u043c\u0431\u0430\u0440",
+ "\u0434\u0435\u0446\u0435\u043c\u0431\u0430\u0440"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "sr-cyrl-rs",
+ "localeID": "sr_Cyrl_RS",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (vf.v == 0 && i % 10 == 1 && i % 100 != 11 || vf.f % 10 == 1 && vf.f % 100 != 11) { return PLURAL_CATEGORY.ONE; } if (vf.v == 0 && i % 10 >= 2 && i % 10 <= 4 && (i % 100 < 12 || i % 100 > 14) || vf.f % 10 >= 2 && vf.f % 10 <= 4 && (vf.f % 100 < 12 || vf.f % 100 > 14)) { return PLURAL_CATEGORY.FEW; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sr-cyrl-xk.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sr-cyrl-xk.js
index cf7c3e2f..655c151f 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sr-cyrl-xk.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sr-cyrl-xk.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u043d\u043e\u0432",
"\u0434\u0435\u0446"
],
+ "STANDALONEMONTH": [
+ "\u0458\u0430\u043d\u0443\u0430\u0440",
+ "\u0444\u0435\u0431\u0440\u0443\u0430\u0440",
+ "\u043c\u0430\u0440\u0442",
+ "\u0430\u043f\u0440\u0438\u043b",
+ "\u043c\u0430\u0458",
+ "\u0458\u0443\u043d",
+ "\u0458\u0443\u043b",
+ "\u0430\u0432\u0433\u0443\u0441\u0442",
+ "\u0441\u0435\u043f\u0442\u0435\u043c\u0431\u0430\u0440",
+ "\u043e\u043a\u0442\u043e\u0431\u0430\u0440",
+ "\u043d\u043e\u0432\u0435\u043c\u0431\u0430\u0440",
+ "\u0434\u0435\u0446\u0435\u043c\u0431\u0430\u0440"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "sr-cyrl-xk",
+ "localeID": "sr_Cyrl_XK",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (vf.v == 0 && i % 10 == 1 && i % 100 != 11 || vf.f % 10 == 1 && vf.f % 100 != 11) { return PLURAL_CATEGORY.ONE; } if (vf.v == 0 && i % 10 >= 2 && i % 10 <= 4 && (i % 100 < 12 || i % 100 > 14) || vf.f % 10 >= 2 && vf.f % 10 <= 4 && (vf.f % 100 < 12 || vf.f % 100 > 14)) { return PLURAL_CATEGORY.FEW; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sr-cyrl.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sr-cyrl.js
index a917cf7f..910bccbf 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sr-cyrl.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sr-cyrl.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u043d\u043e\u0432",
"\u0434\u0435\u0446"
],
+ "STANDALONEMONTH": [
+ "\u0458\u0430\u043d\u0443\u0430\u0440",
+ "\u0444\u0435\u0431\u0440\u0443\u0430\u0440",
+ "\u043c\u0430\u0440\u0442",
+ "\u0430\u043f\u0440\u0438\u043b",
+ "\u043c\u0430\u0458",
+ "\u0458\u0443\u043d",
+ "\u0458\u0443\u043b",
+ "\u0430\u0432\u0433\u0443\u0441\u0442",
+ "\u0441\u0435\u043f\u0442\u0435\u043c\u0431\u0430\u0440",
+ "\u043e\u043a\u0442\u043e\u0431\u0430\u0440",
+ "\u043d\u043e\u0432\u0435\u043c\u0431\u0430\u0440",
+ "\u0434\u0435\u0446\u0435\u043c\u0431\u0430\u0440"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "sr-cyrl",
+ "localeID": "sr_Cyrl",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (vf.v == 0 && i % 10 == 1 && i % 100 != 11 || vf.f % 10 == 1 && vf.f % 100 != 11) { return PLURAL_CATEGORY.ONE; } if (vf.v == 0 && i % 10 >= 2 && i % 10 <= 4 && (i % 100 < 12 || i % 100 > 14) || vf.f % 10 >= 2 && vf.f % 10 <= 4 && (vf.f % 100 < 12 || vf.f % 100 > 14)) { return PLURAL_CATEGORY.FEW; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sr-latn-ba.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sr-latn-ba.js
index 54d8cd0e..0fa1414a 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sr-latn-ba.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sr-latn-ba.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"nov",
"dec"
],
+ "STANDALONEMONTH": [
+ "januar",
+ "februar",
+ "mart",
+ "april",
+ "maj",
+ "jun",
+ "jul",
+ "avgust",
+ "septembar",
+ "oktobar",
+ "novembar",
+ "decembar"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "sr-latn-ba",
+ "localeID": "sr_Latn_BA",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (vf.v == 0 && i % 10 == 1 && i % 100 != 11 || vf.f % 10 == 1 && vf.f % 100 != 11) { return PLURAL_CATEGORY.ONE; } if (vf.v == 0 && i % 10 >= 2 && i % 10 <= 4 && (i % 100 < 12 || i % 100 > 14) || vf.f % 10 >= 2 && vf.f % 10 <= 4 && (vf.f % 100 < 12 || vf.f % 100 > 14)) { return PLURAL_CATEGORY.FEW; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sr-latn-me.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sr-latn-me.js
index cc0607a1..9a5748d8 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sr-latn-me.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sr-latn-me.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"nov",
"dec"
],
+ "STANDALONEMONTH": [
+ "januar",
+ "februar",
+ "mart",
+ "april",
+ "maj",
+ "jun",
+ "jul",
+ "avgust",
+ "septembar",
+ "oktobar",
+ "novembar",
+ "decembar"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "sr-latn-me",
+ "localeID": "sr_Latn_ME",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (vf.v == 0 && i % 10 == 1 && i % 100 != 11 || vf.f % 10 == 1 && vf.f % 100 != 11) { return PLURAL_CATEGORY.ONE; } if (vf.v == 0 && i % 10 >= 2 && i % 10 <= 4 && (i % 100 < 12 || i % 100 > 14) || vf.f % 10 >= 2 && vf.f % 10 <= 4 && (vf.f % 100 < 12 || vf.f % 100 > 14)) { return PLURAL_CATEGORY.FEW; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sr-latn-rs.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sr-latn-rs.js
index 517e8eab..24b2a8d1 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sr-latn-rs.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sr-latn-rs.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"nov",
"dec"
],
+ "STANDALONEMONTH": [
+ "januar",
+ "februar",
+ "mart",
+ "april",
+ "maj",
+ "jun",
+ "jul",
+ "avgust",
+ "septembar",
+ "oktobar",
+ "novembar",
+ "decembar"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "sr-latn-rs",
+ "localeID": "sr_Latn_RS",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (vf.v == 0 && i % 10 == 1 && i % 100 != 11 || vf.f % 10 == 1 && vf.f % 100 != 11) { return PLURAL_CATEGORY.ONE; } if (vf.v == 0 && i % 10 >= 2 && i % 10 <= 4 && (i % 100 < 12 || i % 100 > 14) || vf.f % 10 >= 2 && vf.f % 10 <= 4 && (vf.f % 100 < 12 || vf.f % 100 > 14)) { return PLURAL_CATEGORY.FEW; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sr-latn-xk.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sr-latn-xk.js
index 1cb50a73..0e14f7bb 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sr-latn-xk.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sr-latn-xk.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"nov",
"dec"
],
+ "STANDALONEMONTH": [
+ "januar",
+ "februar",
+ "mart",
+ "april",
+ "maj",
+ "jun",
+ "jul",
+ "avgust",
+ "septembar",
+ "oktobar",
+ "novembar",
+ "decembar"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "sr-latn-xk",
+ "localeID": "sr_Latn_XK",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (vf.v == 0 && i % 10 == 1 && i % 100 != 11 || vf.f % 10 == 1 && vf.f % 100 != 11) { return PLURAL_CATEGORY.ONE; } if (vf.v == 0 && i % 10 >= 2 && i % 10 <= 4 && (i % 100 < 12 || i % 100 > 14) || vf.f % 10 >= 2 && vf.f % 10 <= 4 && (vf.f % 100 < 12 || vf.f % 100 > 14)) { return PLURAL_CATEGORY.FEW; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sr-latn.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sr-latn.js
index 040041da..97320ef3 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sr-latn.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sr-latn.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"nov",
"dec"
],
+ "STANDALONEMONTH": [
+ "januar",
+ "februar",
+ "mart",
+ "april",
+ "maj",
+ "jun",
+ "jul",
+ "avgust",
+ "septembar",
+ "oktobar",
+ "novembar",
+ "decembar"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "sr-latn",
+ "localeID": "sr_Latn",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (vf.v == 0 && i % 10 == 1 && i % 100 != 11 || vf.f % 10 == 1 && vf.f % 100 != 11) { return PLURAL_CATEGORY.ONE; } if (vf.v == 0 && i % 10 >= 2 && i % 10 <= 4 && (i % 100 < 12 || i % 100 > 14) || vf.f % 10 >= 2 && vf.f % 10 <= 4 && (vf.f % 100 < 12 || vf.f % 100 > 14)) { return PLURAL_CATEGORY.FEW; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sr.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sr.js
index 15f2f1de..06d1ae5d 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sr.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sr.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u043d\u043e\u0432",
"\u0434\u0435\u0446"
],
+ "STANDALONEMONTH": [
+ "\u0458\u0430\u043d\u0443\u0430\u0440",
+ "\u0444\u0435\u0431\u0440\u0443\u0430\u0440",
+ "\u043c\u0430\u0440\u0442",
+ "\u0430\u043f\u0440\u0438\u043b",
+ "\u043c\u0430\u0458",
+ "\u0458\u0443\u043d",
+ "\u0458\u0443\u043b",
+ "\u0430\u0432\u0433\u0443\u0441\u0442",
+ "\u0441\u0435\u043f\u0442\u0435\u043c\u0431\u0430\u0440",
+ "\u043e\u043a\u0442\u043e\u0431\u0430\u0440",
+ "\u043d\u043e\u0432\u0435\u043c\u0431\u0430\u0440",
+ "\u0434\u0435\u0446\u0435\u043c\u0431\u0430\u0440"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "sr",
+ "localeID": "sr",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (vf.v == 0 && i % 10 == 1 && i % 100 != 11 || vf.f % 10 == 1 && vf.f % 100 != 11) { return PLURAL_CATEGORY.ONE; } if (vf.v == 0 && i % 10 >= 2 && i % 10 <= 4 && (i % 100 < 12 || i % 100 > 14) || vf.f % 10 >= 2 && vf.f % 10 <= 4 && (vf.f % 100 < 12 || vf.f % 100 > 14)) { return PLURAL_CATEGORY.FEW; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ss-sz.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ss-sz.js
index ae1fdd5f..ae1fdd5f 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ss-sz.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ss-sz.js
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ss-za.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ss-za.js
index afb5b99b..afb5b99b 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ss-za.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ss-za.js
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ss.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ss.js
index 3ff88460..3ff88460 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ss.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ss.js
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ssy-er.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ssy-er.js
index d4cb8e5d..d4cb8e5d 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ssy-er.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ssy-er.js
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ssy.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ssy.js
index 93c0eba0..93c0eba0 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ssy.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ssy.js
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_st-ls.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_st-ls.js
index c17e6a3c..c17e6a3c 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_st-ls.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_st-ls.js
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_st-za.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_st-za.js
index ed1ac9cd..ed1ac9cd 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_st-za.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_st-za.js
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_st.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_st.js
index 64d95b6b..64d95b6b 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_st.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_st.js
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sv-ax.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sv-ax.js
index 3c2e1f0d..039f6733 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sv-ax.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sv-ax.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"nov.",
"dec."
],
+ "STANDALONEMONTH": [
+ "Januari",
+ "Februari",
+ "Mars",
+ "April",
+ "Maj",
+ "Juni",
+ "Juli",
+ "Augusti",
+ "September",
+ "Oktober",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "sv-ax",
+ "localeID": "sv_AX",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sv-fi.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sv-fi.js
index 2d62ce66..de2e20a1 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sv-fi.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sv-fi.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"nov.",
"dec."
],
+ "STANDALONEMONTH": [
+ "Januari",
+ "Februari",
+ "Mars",
+ "April",
+ "Maj",
+ "Juni",
+ "Juli",
+ "Augusti",
+ "September",
+ "Oktober",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "sv-fi",
+ "localeID": "sv_FI",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sv-se.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sv-se.js
index 124285db..774beb1c 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sv-se.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sv-se.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"nov.",
"dec."
],
+ "STANDALONEMONTH": [
+ "Januari",
+ "Februari",
+ "Mars",
+ "April",
+ "Maj",
+ "Juni",
+ "Juli",
+ "Augusti",
+ "September",
+ "Oktober",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "sv-se",
+ "localeID": "sv_SE",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sv.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sv.js
index dfd1aa78..1dcdc271 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sv.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sv.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"nov.",
"dec."
],
+ "STANDALONEMONTH": [
+ "Januari",
+ "Februari",
+ "Mars",
+ "April",
+ "Maj",
+ "Juni",
+ "Juli",
+ "Augusti",
+ "September",
+ "Oktober",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "sv",
+ "localeID": "sv",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sw-cd.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sw-cd.js
index b41d77c8..5fbbd34d 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sw-cd.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sw-cd.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"mkm",
"mkb"
],
+ "STANDALONEMONTH": [
+ "Januari",
+ "Februari",
+ "Machi",
+ "Aprili",
+ "Mei",
+ "Juni",
+ "Julai",
+ "Agosti",
+ "Septemba",
+ "Oktoba",
+ "Novemba",
+ "Desemba"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "sw-cd",
+ "localeID": "sw_CD",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sw-ke.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sw-ke.js
index 6230e7c9..ed521a01 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sw-ke.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sw-ke.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Des"
],
+ "STANDALONEMONTH": [
+ "Januari",
+ "Februari",
+ "Machi",
+ "Aprili",
+ "Mei",
+ "Juni",
+ "Julai",
+ "Agosti",
+ "Septemba",
+ "Oktoba",
+ "Novemba",
+ "Desemba"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "sw-ke",
+ "localeID": "sw_KE",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sw-tz.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sw-tz.js
index 3f1cc2d2..9e0d0973 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sw-tz.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sw-tz.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Des"
],
+ "STANDALONEMONTH": [
+ "Januari",
+ "Februari",
+ "Machi",
+ "Aprili",
+ "Mei",
+ "Juni",
+ "Julai",
+ "Agosti",
+ "Septemba",
+ "Oktoba",
+ "Novemba",
+ "Desemba"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "sw-tz",
+ "localeID": "sw_TZ",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sw-ug.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sw-ug.js
index f2d03120..10a92101 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sw-ug.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sw-ug.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Des"
],
+ "STANDALONEMONTH": [
+ "Januari",
+ "Februari",
+ "Machi",
+ "Aprili",
+ "Mei",
+ "Juni",
+ "Julai",
+ "Agosti",
+ "Septemba",
+ "Oktoba",
+ "Novemba",
+ "Desemba"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "sw-ug",
+ "localeID": "sw_UG",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sw.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sw.js
index e6dd8fe8..f6ed28cc 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_sw.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_sw.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Des"
],
+ "STANDALONEMONTH": [
+ "Januari",
+ "Februari",
+ "Machi",
+ "Aprili",
+ "Mei",
+ "Juni",
+ "Julai",
+ "Agosti",
+ "Septemba",
+ "Oktoba",
+ "Novemba",
+ "Desemba"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "sw",
+ "localeID": "sw",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_swc-cd.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_swc-cd.js
index 4e51c156..4e51c156 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_swc-cd.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_swc-cd.js
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_swc.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_swc.js
index 5390f3bf..5390f3bf 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_swc.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_swc.js
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ta-in.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ta-in.js
index 8ef2205a..0d6ba578 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ta-in.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ta-in.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u0ba8\u0bb5.",
"\u0b9f\u0bbf\u0b9a."
],
+ "STANDALONEMONTH": [
+ "\u0b9c\u0ba9\u0bb5\u0bb0\u0bbf",
+ "\u0baa\u0bbf\u0baa\u0bcd\u0bb0\u0bb5\u0bb0\u0bbf",
+ "\u0bae\u0bbe\u0bb0\u0bcd\u0b9a\u0bcd",
+ "\u0b8f\u0baa\u0bcd\u0bb0\u0bb2\u0bcd",
+ "\u0bae\u0bc7",
+ "\u0b9c\u0bc2\u0ba9\u0bcd",
+ "\u0b9c\u0bc2\u0bb2\u0bc8",
+ "\u0b86\u0b95\u0bb8\u0bcd\u0b9f\u0bc1",
+ "\u0b9a\u0bc6\u0baa\u0bcd\u0b9f\u0bae\u0bcd\u0baa\u0bb0\u0bcd",
+ "\u0b85\u0b95\u0bcd\u0b9f\u0bcb\u0baa\u0bb0\u0bcd",
+ "\u0ba8\u0bb5\u0bae\u0bcd\u0baa\u0bb0\u0bcd",
+ "\u0b9f\u0bbf\u0b9a\u0bae\u0bcd\u0baa\u0bb0\u0bcd"
+ ],
"WEEKENDRANGE": [
6,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "ta-in",
+ "localeID": "ta_IN",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ta-lk.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ta-lk.js
index ffb0e7ca..db3fd136 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ta-lk.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ta-lk.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u0ba8\u0bb5.",
"\u0b9f\u0bbf\u0b9a."
],
+ "STANDALONEMONTH": [
+ "\u0b9c\u0ba9\u0bb5\u0bb0\u0bbf",
+ "\u0baa\u0bbf\u0baa\u0bcd\u0bb0\u0bb5\u0bb0\u0bbf",
+ "\u0bae\u0bbe\u0bb0\u0bcd\u0b9a\u0bcd",
+ "\u0b8f\u0baa\u0bcd\u0bb0\u0bb2\u0bcd",
+ "\u0bae\u0bc7",
+ "\u0b9c\u0bc2\u0ba9\u0bcd",
+ "\u0b9c\u0bc2\u0bb2\u0bc8",
+ "\u0b86\u0b95\u0bb8\u0bcd\u0b9f\u0bc1",
+ "\u0b9a\u0bc6\u0baa\u0bcd\u0b9f\u0bae\u0bcd\u0baa\u0bb0\u0bcd",
+ "\u0b85\u0b95\u0bcd\u0b9f\u0bcb\u0baa\u0bb0\u0bcd",
+ "\u0ba8\u0bb5\u0bae\u0bcd\u0baa\u0bb0\u0bcd",
+ "\u0b9f\u0bbf\u0b9a\u0bae\u0bcd\u0baa\u0bb0\u0bcd"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "ta-lk",
+ "localeID": "ta_LK",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ta-my.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ta-my.js
index 3a9287a6..1bb2da9e 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ta-my.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ta-my.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u0ba8\u0bb5.",
"\u0b9f\u0bbf\u0b9a."
],
+ "STANDALONEMONTH": [
+ "\u0b9c\u0ba9\u0bb5\u0bb0\u0bbf",
+ "\u0baa\u0bbf\u0baa\u0bcd\u0bb0\u0bb5\u0bb0\u0bbf",
+ "\u0bae\u0bbe\u0bb0\u0bcd\u0b9a\u0bcd",
+ "\u0b8f\u0baa\u0bcd\u0bb0\u0bb2\u0bcd",
+ "\u0bae\u0bc7",
+ "\u0b9c\u0bc2\u0ba9\u0bcd",
+ "\u0b9c\u0bc2\u0bb2\u0bc8",
+ "\u0b86\u0b95\u0bb8\u0bcd\u0b9f\u0bc1",
+ "\u0b9a\u0bc6\u0baa\u0bcd\u0b9f\u0bae\u0bcd\u0baa\u0bb0\u0bcd",
+ "\u0b85\u0b95\u0bcd\u0b9f\u0bcb\u0baa\u0bb0\u0bcd",
+ "\u0ba8\u0bb5\u0bae\u0bcd\u0baa\u0bb0\u0bcd",
+ "\u0b9f\u0bbf\u0b9a\u0bae\u0bcd\u0baa\u0bb0\u0bcd"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "ta-my",
+ "localeID": "ta_MY",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ta-sg.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ta-sg.js
index fc6a77d8..b049d9b0 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ta-sg.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ta-sg.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u0ba8\u0bb5.",
"\u0b9f\u0bbf\u0b9a."
],
+ "STANDALONEMONTH": [
+ "\u0b9c\u0ba9\u0bb5\u0bb0\u0bbf",
+ "\u0baa\u0bbf\u0baa\u0bcd\u0bb0\u0bb5\u0bb0\u0bbf",
+ "\u0bae\u0bbe\u0bb0\u0bcd\u0b9a\u0bcd",
+ "\u0b8f\u0baa\u0bcd\u0bb0\u0bb2\u0bcd",
+ "\u0bae\u0bc7",
+ "\u0b9c\u0bc2\u0ba9\u0bcd",
+ "\u0b9c\u0bc2\u0bb2\u0bc8",
+ "\u0b86\u0b95\u0bb8\u0bcd\u0b9f\u0bc1",
+ "\u0b9a\u0bc6\u0baa\u0bcd\u0b9f\u0bae\u0bcd\u0baa\u0bb0\u0bcd",
+ "\u0b85\u0b95\u0bcd\u0b9f\u0bcb\u0baa\u0bb0\u0bcd",
+ "\u0ba8\u0bb5\u0bae\u0bcd\u0baa\u0bb0\u0bcd",
+ "\u0b9f\u0bbf\u0b9a\u0bae\u0bcd\u0baa\u0bb0\u0bcd"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "ta-sg",
+ "localeID": "ta_SG",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ta.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ta.js
index 62726246..affb1b78 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ta.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ta.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u0ba8\u0bb5.",
"\u0b9f\u0bbf\u0b9a."
],
+ "STANDALONEMONTH": [
+ "\u0b9c\u0ba9\u0bb5\u0bb0\u0bbf",
+ "\u0baa\u0bbf\u0baa\u0bcd\u0bb0\u0bb5\u0bb0\u0bbf",
+ "\u0bae\u0bbe\u0bb0\u0bcd\u0b9a\u0bcd",
+ "\u0b8f\u0baa\u0bcd\u0bb0\u0bb2\u0bcd",
+ "\u0bae\u0bc7",
+ "\u0b9c\u0bc2\u0ba9\u0bcd",
+ "\u0b9c\u0bc2\u0bb2\u0bc8",
+ "\u0b86\u0b95\u0bb8\u0bcd\u0b9f\u0bc1",
+ "\u0b9a\u0bc6\u0baa\u0bcd\u0b9f\u0bae\u0bcd\u0baa\u0bb0\u0bcd",
+ "\u0b85\u0b95\u0bcd\u0b9f\u0bcb\u0baa\u0bb0\u0bcd",
+ "\u0ba8\u0bb5\u0bae\u0bcd\u0baa\u0bb0\u0bcd",
+ "\u0b9f\u0bbf\u0b9a\u0bae\u0bcd\u0baa\u0bb0\u0bcd"
+ ],
"WEEKENDRANGE": [
6,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "ta",
+ "localeID": "ta",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_te-in.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_te-in.js
index fccdcfe8..b912a94e 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_te-in.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_te-in.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u0c28\u0c35\u0c02",
"\u0c21\u0c3f\u0c38\u0c46\u0c02"
],
+ "STANDALONEMONTH": [
+ "\u0c1c\u0c28\u0c35\u0c30\u0c3f",
+ "\u0c2b\u0c3f\u0c2c\u0c4d\u0c30\u0c35\u0c30\u0c3f",
+ "\u0c2e\u0c3e\u0c30\u0c4d\u0c1a\u0c3f",
+ "\u0c0f\u0c2a\u0c4d\u0c30\u0c3f\u0c32\u0c4d",
+ "\u0c2e\u0c47",
+ "\u0c1c\u0c42\u0c28\u0c4d",
+ "\u0c1c\u0c41\u0c32\u0c48",
+ "\u0c06\u0c17\u0c38\u0c4d\u0c1f\u0c41",
+ "\u0c38\u0c46\u0c2a\u0c4d\u0c1f\u0c46\u0c02\u0c2c\u0c30\u0c4d",
+ "\u0c05\u0c15\u0c4d\u0c1f\u0c4b\u0c2c\u0c30\u0c4d",
+ "\u0c28\u0c35\u0c02\u0c2c\u0c30\u0c4d",
+ "\u0c21\u0c3f\u0c38\u0c46\u0c02\u0c2c\u0c30\u0c4d"
+ ],
"WEEKENDRANGE": [
6,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "te-in",
+ "localeID": "te_IN",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_te.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_te.js
index a3c493fc..8011dd46 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_te.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_te.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u0c28\u0c35\u0c02",
"\u0c21\u0c3f\u0c38\u0c46\u0c02"
],
+ "STANDALONEMONTH": [
+ "\u0c1c\u0c28\u0c35\u0c30\u0c3f",
+ "\u0c2b\u0c3f\u0c2c\u0c4d\u0c30\u0c35\u0c30\u0c3f",
+ "\u0c2e\u0c3e\u0c30\u0c4d\u0c1a\u0c3f",
+ "\u0c0f\u0c2a\u0c4d\u0c30\u0c3f\u0c32\u0c4d",
+ "\u0c2e\u0c47",
+ "\u0c1c\u0c42\u0c28\u0c4d",
+ "\u0c1c\u0c41\u0c32\u0c48",
+ "\u0c06\u0c17\u0c38\u0c4d\u0c1f\u0c41",
+ "\u0c38\u0c46\u0c2a\u0c4d\u0c1f\u0c46\u0c02\u0c2c\u0c30\u0c4d",
+ "\u0c05\u0c15\u0c4d\u0c1f\u0c4b\u0c2c\u0c30\u0c4d",
+ "\u0c28\u0c35\u0c02\u0c2c\u0c30\u0c4d",
+ "\u0c21\u0c3f\u0c38\u0c46\u0c02\u0c2c\u0c30\u0c4d"
+ ],
"WEEKENDRANGE": [
6,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "te",
+ "localeID": "te",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_teo-ke.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_teo-ke.js
index 04178e1c..c4d30f92 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_teo-ke.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_teo-ke.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Lab",
"Poo"
],
+ "STANDALONEMONTH": [
+ "Orara",
+ "Omuk",
+ "Okwamg\u2019",
+ "Odung\u2019el",
+ "Omaruk",
+ "Omodok\u2019king\u2019ol",
+ "Ojola",
+ "Opedel",
+ "Osokosokoma",
+ "Otibar",
+ "Olabor",
+ "Opoo"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "teo-ke",
+ "localeID": "teo_KE",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_teo-ug.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_teo-ug.js
index 8a6e1a78..bfa1f2a9 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_teo-ug.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_teo-ug.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Lab",
"Poo"
],
+ "STANDALONEMONTH": [
+ "Orara",
+ "Omuk",
+ "Okwamg\u2019",
+ "Odung\u2019el",
+ "Omaruk",
+ "Omodok\u2019king\u2019ol",
+ "Ojola",
+ "Opedel",
+ "Osokosokoma",
+ "Otibar",
+ "Olabor",
+ "Opoo"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "teo-ug",
+ "localeID": "teo_UG",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_teo.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_teo.js
index b3a750c6..80c2663c 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_teo.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_teo.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Lab",
"Poo"
],
+ "STANDALONEMONTH": [
+ "Orara",
+ "Omuk",
+ "Okwamg\u2019",
+ "Odung\u2019el",
+ "Omaruk",
+ "Omodok\u2019king\u2019ol",
+ "Ojola",
+ "Opedel",
+ "Osokosokoma",
+ "Otibar",
+ "Olabor",
+ "Opoo"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "teo",
+ "localeID": "teo",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_tg-cyrl-tj.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_tg-cyrl-tj.js
index c25e8f70..c25e8f70 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_tg-cyrl-tj.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_tg-cyrl-tj.js
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_tg-cyrl.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_tg-cyrl.js
index 7c0b60f6..7c0b60f6 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_tg-cyrl.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_tg-cyrl.js
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_tg.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_tg.js
index 6a15c5c6..6a15c5c6 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_tg.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_tg.js
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_th-th.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_th-th.js
index 93c1cce8..6918c564 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_th-th.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_th-th.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u0e1e.\u0e22.",
"\u0e18.\u0e04."
],
+ "STANDALONEMONTH": [
+ "\u0e21\u0e01\u0e23\u0e32\u0e04\u0e21",
+ "\u0e01\u0e38\u0e21\u0e20\u0e32\u0e1e\u0e31\u0e19\u0e18\u0e4c",
+ "\u0e21\u0e35\u0e19\u0e32\u0e04\u0e21",
+ "\u0e40\u0e21\u0e29\u0e32\u0e22\u0e19",
+ "\u0e1e\u0e24\u0e29\u0e20\u0e32\u0e04\u0e21",
+ "\u0e21\u0e34\u0e16\u0e38\u0e19\u0e32\u0e22\u0e19",
+ "\u0e01\u0e23\u0e01\u0e0e\u0e32\u0e04\u0e21",
+ "\u0e2a\u0e34\u0e07\u0e2b\u0e32\u0e04\u0e21",
+ "\u0e01\u0e31\u0e19\u0e22\u0e32\u0e22\u0e19",
+ "\u0e15\u0e38\u0e25\u0e32\u0e04\u0e21",
+ "\u0e1e\u0e24\u0e28\u0e08\u0e34\u0e01\u0e32\u0e22\u0e19",
+ "\u0e18\u0e31\u0e19\u0e27\u0e32\u0e04\u0e21"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "th-th",
+ "localeID": "th_TH",
"pluralCat": function(n, opt_precision) { return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_th.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_th.js
index d9c21b28..4a8ebc3a 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_th.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_th.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u0e1e.\u0e22.",
"\u0e18.\u0e04."
],
+ "STANDALONEMONTH": [
+ "\u0e21\u0e01\u0e23\u0e32\u0e04\u0e21",
+ "\u0e01\u0e38\u0e21\u0e20\u0e32\u0e1e\u0e31\u0e19\u0e18\u0e4c",
+ "\u0e21\u0e35\u0e19\u0e32\u0e04\u0e21",
+ "\u0e40\u0e21\u0e29\u0e32\u0e22\u0e19",
+ "\u0e1e\u0e24\u0e29\u0e20\u0e32\u0e04\u0e21",
+ "\u0e21\u0e34\u0e16\u0e38\u0e19\u0e32\u0e22\u0e19",
+ "\u0e01\u0e23\u0e01\u0e0e\u0e32\u0e04\u0e21",
+ "\u0e2a\u0e34\u0e07\u0e2b\u0e32\u0e04\u0e21",
+ "\u0e01\u0e31\u0e19\u0e22\u0e32\u0e22\u0e19",
+ "\u0e15\u0e38\u0e25\u0e32\u0e04\u0e21",
+ "\u0e1e\u0e24\u0e28\u0e08\u0e34\u0e01\u0e32\u0e22\u0e19",
+ "\u0e18\u0e31\u0e19\u0e27\u0e32\u0e04\u0e21"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "th",
+ "localeID": "th",
"pluralCat": function(n, opt_precision) { return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ti-er.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ti-er.js
index 26948d7c..dcc74c88 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ti-er.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ti-er.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u1215\u12f3\u122d",
"\u1273\u1215\u1233"
],
+ "STANDALONEMONTH": [
+ "\u1325\u122a",
+ "\u1208\u12ab\u1272\u1275",
+ "\u1218\u130b\u1262\u1275",
+ "\u121a\u12eb\u12dd\u12eb",
+ "\u130d\u1295\u1266\u1275",
+ "\u1230\u1290",
+ "\u1213\u121d\u1208",
+ "\u1290\u1213\u1230",
+ "\u1218\u1235\u12a8\u1228\u121d",
+ "\u1325\u1245\u121d\u1272",
+ "\u1215\u12f3\u122d",
+ "\u1273\u1215\u1233\u1235"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ti-er",
+ "localeID": "ti_ER",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ti-et.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ti-et.js
index 1be479a0..15b6d1a2 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ti-et.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ti-et.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u1296\u126c\u121d",
"\u12f2\u1234\u121d"
],
+ "STANDALONEMONTH": [
+ "\u1303\u1295\u12e9\u12c8\u122a",
+ "\u134c\u1265\u1229\u12c8\u122a",
+ "\u121b\u122d\u127d",
+ "\u12a4\u1355\u1228\u120d",
+ "\u121c\u12ed",
+ "\u1301\u1295",
+ "\u1301\u120b\u12ed",
+ "\u12a6\u1308\u1235\u1275",
+ "\u1234\u1355\u1274\u121d\u1260\u122d",
+ "\u12a6\u12ad\u1270\u12cd\u1260\u122d",
+ "\u1296\u126c\u121d\u1260\u122d",
+ "\u12f2\u1234\u121d\u1260\u122d"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ti-et",
+ "localeID": "ti_ET",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ti.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ti.js
index 872204c4..199b1010 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ti.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ti.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u1296\u126c\u121d",
"\u12f2\u1234\u121d"
],
+ "STANDALONEMONTH": [
+ "\u1303\u1295\u12e9\u12c8\u122a",
+ "\u134c\u1265\u1229\u12c8\u122a",
+ "\u121b\u122d\u127d",
+ "\u12a4\u1355\u1228\u120d",
+ "\u121c\u12ed",
+ "\u1301\u1295",
+ "\u1301\u120b\u12ed",
+ "\u12a6\u1308\u1235\u1275",
+ "\u1234\u1355\u1274\u121d\u1260\u122d",
+ "\u12a6\u12ad\u1270\u12cd\u1260\u122d",
+ "\u1296\u126c\u121d\u1260\u122d",
+ "\u12f2\u1234\u121d\u1260\u122d"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ti",
+ "localeID": "ti",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_tig-er.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_tig-er.js
index 0f137e05..0f137e05 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_tig-er.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_tig-er.js
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_tig.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_tig.js
index 493fd396..493fd396 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_tig.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_tig.js
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_tl.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_tl.js
index 59b7a10d..ba7e457b 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_tl.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_tl.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nob",
"Dis"
],
+ "STANDALONEMONTH": [
+ "Enero",
+ "Pebrero",
+ "Marso",
+ "Abril",
+ "Mayo",
+ "Hunyo",
+ "Hulyo",
+ "Agosto",
+ "Setyembre",
+ "Oktubre",
+ "Nobyembre",
+ "Disyembre"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "tl",
+ "localeID": "tl",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (vf.v == 0 && (i == 1 || i == 2 || i == 3) || vf.v == 0 && i % 10 != 4 && i % 10 != 6 && i % 10 != 9 || vf.v != 0 && vf.f % 10 != 4 && vf.f % 10 != 6 && vf.f % 10 != 9) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_tn-bw.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_tn-bw.js
index bc05b8e0..bc05b8e0 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_tn-bw.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_tn-bw.js
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_tn-za.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_tn-za.js
index cecb7eeb..cecb7eeb 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_tn-za.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_tn-za.js
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_tn.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_tn.js
index f2495560..f2495560 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_tn.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_tn.js
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_to-to.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_to-to.js
index 568ba879..65f6a5bf 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_to-to.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_to-to.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"N\u014dv",
"T\u012bs"
],
+ "STANDALONEMONTH": [
+ "S\u0101nuali",
+ "F\u0113pueli",
+ "Ma\u02bbasi",
+ "\u02bbEpeleli",
+ "M\u0113",
+ "Sune",
+ "Siulai",
+ "\u02bbAokosi",
+ "Sepitema",
+ "\u02bbOkatopa",
+ "N\u014dvema",
+ "T\u012bsema"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "to-to",
+ "localeID": "to_TO",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_to.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_to.js
index 81ee5758..cadf60ad 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_to.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_to.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"N\u014dv",
"T\u012bs"
],
+ "STANDALONEMONTH": [
+ "S\u0101nuali",
+ "F\u0113pueli",
+ "Ma\u02bbasi",
+ "\u02bbEpeleli",
+ "M\u0113",
+ "Sune",
+ "Siulai",
+ "\u02bbAokosi",
+ "Sepitema",
+ "\u02bbOkatopa",
+ "N\u014dvema",
+ "T\u012bsema"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "to",
+ "localeID": "to",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_tr-cy.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_tr-cy.js
index ea484759..f1ec26e8 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_tr-cy.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_tr-cy.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"Kas",
"Ara"
],
+ "STANDALONEMONTH": [
+ "Ocak",
+ "\u015eubat",
+ "Mart",
+ "Nisan",
+ "May\u0131s",
+ "Haziran",
+ "Temmuz",
+ "A\u011fustos",
+ "Eyl\u00fcl",
+ "Ekim",
+ "Kas\u0131m",
+ "Aral\u0131k"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "tr-cy",
+ "localeID": "tr_CY",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_tr-tr.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_tr-tr.js
index e9575d34..4758a788 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_tr-tr.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_tr-tr.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"Kas",
"Ara"
],
+ "STANDALONEMONTH": [
+ "Ocak",
+ "\u015eubat",
+ "Mart",
+ "Nisan",
+ "May\u0131s",
+ "Haziran",
+ "Temmuz",
+ "A\u011fustos",
+ "Eyl\u00fcl",
+ "Ekim",
+ "Kas\u0131m",
+ "Aral\u0131k"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "tr-tr",
+ "localeID": "tr_TR",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_tr.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_tr.js
index e3521251..0de8ed88 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_tr.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_tr.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"Kas",
"Ara"
],
+ "STANDALONEMONTH": [
+ "Ocak",
+ "\u015eubat",
+ "Mart",
+ "Nisan",
+ "May\u0131s",
+ "Haziran",
+ "Temmuz",
+ "A\u011fustos",
+ "Eyl\u00fcl",
+ "Ekim",
+ "Kas\u0131m",
+ "Aral\u0131k"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "tr",
+ "localeID": "tr",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ts-za.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ts-za.js
index 077c4a58..077c4a58 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ts-za.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ts-za.js
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ts.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ts.js
index e5299089..e5299089 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ts.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ts.js
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_twq-ne.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_twq-ne.js
index 6213c47e..77c78dca 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_twq-ne.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_twq-ne.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Noo",
"Dee"
],
+ "STANDALONEMONTH": [
+ "\u017danwiye",
+ "Feewiriye",
+ "Marsi",
+ "Awiril",
+ "Me",
+ "\u017duwe\u014b",
+ "\u017duyye",
+ "Ut",
+ "Sektanbur",
+ "Oktoobur",
+ "Noowanbur",
+ "Deesanbur"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "twq-ne",
+ "localeID": "twq_NE",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_twq.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_twq.js
index b477674a..8fb664e6 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_twq.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_twq.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Noo",
"Dee"
],
+ "STANDALONEMONTH": [
+ "\u017danwiye",
+ "Feewiriye",
+ "Marsi",
+ "Awiril",
+ "Me",
+ "\u017duwe\u014b",
+ "\u017duyye",
+ "Ut",
+ "Sektanbur",
+ "Oktoobur",
+ "Noowanbur",
+ "Deesanbur"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "twq",
+ "localeID": "twq",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_tzm-latn-ma.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_tzm-latn-ma.js
index bbfe0a7e..49722198 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_tzm-latn-ma.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_tzm-latn-ma.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nwa",
"Duj"
],
+ "STANDALONEMONTH": [
+ "Yennayer",
+ "Yebrayer",
+ "Mars",
+ "Ibrir",
+ "Mayyu",
+ "Yunyu",
+ "Yulyuz",
+ "\u0194uct",
+ "Cutanbir",
+ "K\u1e6duber",
+ "Nwanbir",
+ "Dujanbir"
+ ],
"WEEKENDRANGE": [
4,
5
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "tzm-latn-ma",
+ "localeID": "tzm_Latn_MA",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_tzm-latn.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_tzm-latn.js
index b17a71dc..2b80fb7c 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_tzm-latn.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_tzm-latn.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nwa",
"Duj"
],
+ "STANDALONEMONTH": [
+ "Yennayer",
+ "Yebrayer",
+ "Mars",
+ "Ibrir",
+ "Mayyu",
+ "Yunyu",
+ "Yulyuz",
+ "\u0194uct",
+ "Cutanbir",
+ "K\u1e6duber",
+ "Nwanbir",
+ "Dujanbir"
+ ],
"WEEKENDRANGE": [
4,
5
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "tzm-latn",
+ "localeID": "tzm_Latn",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_tzm.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_tzm.js
index a2f34ff5..b51f0f9e 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_tzm.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_tzm.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nwa",
"Duj"
],
+ "STANDALONEMONTH": [
+ "Yennayer",
+ "Yebrayer",
+ "Mars",
+ "Ibrir",
+ "Mayyu",
+ "Yunyu",
+ "Yulyuz",
+ "\u0194uct",
+ "Cutanbir",
+ "K\u1e6duber",
+ "Nwanbir",
+ "Dujanbir"
+ ],
"WEEKENDRANGE": [
4,
5
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "tzm",
+ "localeID": "tzm",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ug-arab-cn.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ug-arab-cn.js
index 67092f1e..de43911e 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ug-arab-cn.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ug-arab-cn.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u0646\u0648\u064a\u0627\u0628\u0649\u0631",
"\u062f\u06d0\u0643\u0627\u0628\u0649\u0631"
],
+ "STANDALONEMONTH": [
+ "\u064a\u0627\u0646\u06cb\u0627\u0631",
+ "\u0641\u06d0\u06cb\u0631\u0627\u0644",
+ "\u0645\u0627\u0631\u062a",
+ "\u0626\u0627\u067e\u0631\u06d0\u0644",
+ "\u0645\u0627\u064a",
+ "\u0626\u0649\u064a\u06c7\u0646",
+ "\u0626\u0649\u064a\u06c7\u0644",
+ "\u0626\u0627\u06cb\u063a\u06c7\u0633\u062a",
+ "\u0633\u06d0\u0646\u062a\u06d5\u0628\u0649\u0631",
+ "\u0626\u06c6\u0643\u062a\u06d5\u0628\u0649\u0631",
+ "\u0628\u0648\u064a\u0627\u0628\u0649\u0631",
+ "\u062f\u06d0\u0643\u0627\u0628\u0649\u0631"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ug-arab-cn",
+ "localeID": "ug_Arab_CN",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ug-arab.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ug-arab.js
index bd9ae4ab..2e194fc8 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ug-arab.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ug-arab.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u0646\u0648\u064a\u0627\u0628\u0649\u0631",
"\u062f\u06d0\u0643\u0627\u0628\u0649\u0631"
],
+ "STANDALONEMONTH": [
+ "\u064a\u0627\u0646\u06cb\u0627\u0631",
+ "\u0641\u06d0\u06cb\u0631\u0627\u0644",
+ "\u0645\u0627\u0631\u062a",
+ "\u0626\u0627\u067e\u0631\u06d0\u0644",
+ "\u0645\u0627\u064a",
+ "\u0626\u0649\u064a\u06c7\u0646",
+ "\u0626\u0649\u064a\u06c7\u0644",
+ "\u0626\u0627\u06cb\u063a\u06c7\u0633\u062a",
+ "\u0633\u06d0\u0646\u062a\u06d5\u0628\u0649\u0631",
+ "\u0626\u06c6\u0643\u062a\u06d5\u0628\u0649\u0631",
+ "\u0628\u0648\u064a\u0627\u0628\u0649\u0631",
+ "\u062f\u06d0\u0643\u0627\u0628\u0649\u0631"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ug-arab",
+ "localeID": "ug_Arab",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ug.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ug.js
index 2ed49abc..698df9af 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ug.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ug.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u0646\u0648\u064a\u0627\u0628\u0649\u0631",
"\u062f\u06d0\u0643\u0627\u0628\u0649\u0631"
],
+ "STANDALONEMONTH": [
+ "\u064a\u0627\u0646\u06cb\u0627\u0631",
+ "\u0641\u06d0\u06cb\u0631\u0627\u0644",
+ "\u0645\u0627\u0631\u062a",
+ "\u0626\u0627\u067e\u0631\u06d0\u0644",
+ "\u0645\u0627\u064a",
+ "\u0626\u0649\u064a\u06c7\u0646",
+ "\u0626\u0649\u064a\u06c7\u0644",
+ "\u0626\u0627\u06cb\u063a\u06c7\u0633\u062a",
+ "\u0633\u06d0\u0646\u062a\u06d5\u0628\u0649\u0631",
+ "\u0626\u06c6\u0643\u062a\u06d5\u0628\u0649\u0631",
+ "\u0628\u0648\u064a\u0627\u0628\u0649\u0631",
+ "\u062f\u06d0\u0643\u0627\u0628\u0649\u0631"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ug",
+ "localeID": "ug",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_uk-ua.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_uk-ua.js
index 1fca063b..3c8cbaa5 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_uk-ua.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_uk-ua.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u043b\u0438\u0441\u0442.",
"\u0433\u0440\u0443\u0434."
],
+ "STANDALONEMONTH": [
+ "\u0421\u0456\u0447\u0435\u043d\u044c",
+ "\u041b\u044e\u0442\u0438\u0439",
+ "\u0411\u0435\u0440\u0435\u0437\u0435\u043d\u044c",
+ "\u041a\u0432\u0456\u0442\u0435\u043d\u044c",
+ "\u0422\u0440\u0430\u0432\u0435\u043d\u044c",
+ "\u0427\u0435\u0440\u0432\u0435\u043d\u044c",
+ "\u041b\u0438\u043f\u0435\u043d\u044c",
+ "\u0421\u0435\u0440\u043f\u0435\u043d\u044c",
+ "\u0412\u0435\u0440\u0435\u0441\u0435\u043d\u044c",
+ "\u0416\u043e\u0432\u0442\u0435\u043d\u044c",
+ "\u041b\u0438\u0441\u0442\u043e\u043f\u0430\u0434",
+ "\u0413\u0440\u0443\u0434\u0435\u043d\u044c"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "uk-ua",
+ "localeID": "uk_UA",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (vf.v == 0 && i % 10 == 1 && i % 100 != 11) { return PLURAL_CATEGORY.ONE; } if (vf.v == 0 && i % 10 >= 2 && i % 10 <= 4 && (i % 100 < 12 || i % 100 > 14)) { return PLURAL_CATEGORY.FEW; } if (vf.v == 0 && i % 10 == 0 || vf.v == 0 && i % 10 >= 5 && i % 10 <= 9 || vf.v == 0 && i % 100 >= 11 && i % 100 <= 14) { return PLURAL_CATEGORY.MANY; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_uk.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_uk.js
index 9519ad86..716d2441 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_uk.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_uk.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u043b\u0438\u0441\u0442.",
"\u0433\u0440\u0443\u0434."
],
+ "STANDALONEMONTH": [
+ "\u0421\u0456\u0447\u0435\u043d\u044c",
+ "\u041b\u044e\u0442\u0438\u0439",
+ "\u0411\u0435\u0440\u0435\u0437\u0435\u043d\u044c",
+ "\u041a\u0432\u0456\u0442\u0435\u043d\u044c",
+ "\u0422\u0440\u0430\u0432\u0435\u043d\u044c",
+ "\u0427\u0435\u0440\u0432\u0435\u043d\u044c",
+ "\u041b\u0438\u043f\u0435\u043d\u044c",
+ "\u0421\u0435\u0440\u043f\u0435\u043d\u044c",
+ "\u0412\u0435\u0440\u0435\u0441\u0435\u043d\u044c",
+ "\u0416\u043e\u0432\u0442\u0435\u043d\u044c",
+ "\u041b\u0438\u0441\u0442\u043e\u043f\u0430\u0434",
+ "\u0413\u0440\u0443\u0434\u0435\u043d\u044c"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "uk",
+ "localeID": "uk",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (vf.v == 0 && i % 10 == 1 && i % 100 != 11) { return PLURAL_CATEGORY.ONE; } if (vf.v == 0 && i % 10 >= 2 && i % 10 <= 4 && (i % 100 < 12 || i % 100 > 14)) { return PLURAL_CATEGORY.FEW; } if (vf.v == 0 && i % 10 == 0 || vf.v == 0 && i % 10 >= 5 && i % 10 <= 9 || vf.v == 0 && i % 100 >= 11 && i % 100 <= 14) { return PLURAL_CATEGORY.MANY; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ur-in.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ur-in.js
index c81b2df1..762a3d85 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ur-in.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ur-in.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u0646\u0648\u0645\u0628\u0631",
"\u062f\u0633\u0645\u0628\u0631"
],
+ "STANDALONEMONTH": [
+ "\u062c\u0646\u0648\u0631\u06cc",
+ "\u0641\u0631\u0648\u0631\u06cc",
+ "\u0645\u0627\u0631\u0686",
+ "\u0627\u067e\u0631\u06cc\u0644",
+ "\u0645\u0626\u06cc",
+ "\u062c\u0648\u0646",
+ "\u062c\u0648\u0644\u0627\u0626\u06cc",
+ "\u0627\u06af\u0633\u062a",
+ "\u0633\u062a\u0645\u0628\u0631",
+ "\u0627\u06a9\u062a\u0648\u0628\u0631",
+ "\u0646\u0648\u0645\u0628\u0631",
+ "\u062f\u0633\u0645\u0628\u0631"
+ ],
"WEEKENDRANGE": [
6,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ur-in",
+ "localeID": "ur_IN",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ur-pk.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ur-pk.js
index f64e8f60..6ab57c00 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ur-pk.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ur-pk.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u0646\u0648\u0645\u0628\u0631",
"\u062f\u0633\u0645\u0628\u0631"
],
+ "STANDALONEMONTH": [
+ "\u062c\u0646\u0648\u0631\u06cc",
+ "\u0641\u0631\u0648\u0631\u06cc",
+ "\u0645\u0627\u0631\u0686",
+ "\u0627\u067e\u0631\u06cc\u0644",
+ "\u0645\u0626\u06cc",
+ "\u062c\u0648\u0646",
+ "\u062c\u0648\u0644\u0627\u0626\u06cc",
+ "\u0627\u06af\u0633\u062a",
+ "\u0633\u062a\u0645\u0628\u0631",
+ "\u0627\u06a9\u062a\u0648\u0628\u0631",
+ "\u0646\u0648\u0645\u0628\u0631",
+ "\u062f\u0633\u0645\u0628\u0631"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ur-pk",
+ "localeID": "ur_PK",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ur.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ur.js
index 79bf686c..6a950edd 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ur.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ur.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u0646\u0648\u0645\u0628\u0631",
"\u062f\u0633\u0645\u0628\u0631"
],
+ "STANDALONEMONTH": [
+ "\u062c\u0646\u0648\u0631\u06cc",
+ "\u0641\u0631\u0648\u0631\u06cc",
+ "\u0645\u0627\u0631\u0686",
+ "\u0627\u067e\u0631\u06cc\u0644",
+ "\u0645\u0626\u06cc",
+ "\u062c\u0648\u0646",
+ "\u062c\u0648\u0644\u0627\u0626\u06cc",
+ "\u0627\u06af\u0633\u062a",
+ "\u0633\u062a\u0645\u0628\u0631",
+ "\u0627\u06a9\u062a\u0648\u0628\u0631",
+ "\u0646\u0648\u0645\u0628\u0631",
+ "\u062f\u0633\u0645\u0628\u0631"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "ur",
+ "localeID": "ur",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_uz-arab-af.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_uz-arab-af.js
index 118132ae..22875a19 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_uz-arab-af.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_uz-arab-af.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u0646\u0648\u0645",
"\u062f\u0633\u0645"
],
+ "STANDALONEMONTH": [
+ "\u062c\u0646\u0648\u0631\u06cc",
+ "\u0641\u0628\u0631\u0648\u0631\u06cc",
+ "\u0645\u0627\u0631\u0686",
+ "\u0627\u067e\u0631\u06cc\u0644",
+ "\u0645\u06cc",
+ "\u062c\u0648\u0646",
+ "\u062c\u0648\u0644\u0627\u06cc",
+ "\u0627\u06af\u0633\u062a",
+ "\u0633\u067e\u062a\u0645\u0628\u0631",
+ "\u0627\u06a9\u062a\u0648\u0628\u0631",
+ "\u0646\u0648\u0645\u0628\u0631",
+ "\u062f\u0633\u0645\u0628\u0631"
+ ],
"WEEKENDRANGE": [
3,
4
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "uz-arab-af",
+ "localeID": "uz_Arab_AF",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_uz-arab.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_uz-arab.js
index 3f1a20da..c25ffc71 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_uz-arab.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_uz-arab.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u0646\u0648\u0645",
"\u062f\u0633\u0645"
],
+ "STANDALONEMONTH": [
+ "\u062c\u0646\u0648\u0631\u06cc",
+ "\u0641\u0628\u0631\u0648\u0631\u06cc",
+ "\u0645\u0627\u0631\u0686",
+ "\u0627\u067e\u0631\u06cc\u0644",
+ "\u0645\u06cc",
+ "\u062c\u0648\u0646",
+ "\u062c\u0648\u0644\u0627\u06cc",
+ "\u0627\u06af\u0633\u062a",
+ "\u0633\u067e\u062a\u0645\u0628\u0631",
+ "\u0627\u06a9\u062a\u0648\u0628\u0631",
+ "\u0646\u0648\u0645\u0628\u0631",
+ "\u062f\u0633\u0645\u0628\u0631"
+ ],
"WEEKENDRANGE": [
3,
4
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "uz-arab",
+ "localeID": "uz_Arab",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_uz-cyrl-uz.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_uz-cyrl-uz.js
index 03e74ba6..3f3106a9 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_uz-cyrl-uz.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_uz-cyrl-uz.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u041d\u043e\u044f",
"\u0414\u0435\u043a"
],
+ "STANDALONEMONTH": [
+ "\u042f\u043d\u0432\u0430\u0440",
+ "\u0424\u0435\u0432\u0440\u0430\u043b",
+ "\u041c\u0430\u0440\u0442",
+ "\u0410\u043f\u0440\u0435\u043b",
+ "\u041c\u0430\u0439",
+ "\u0418\u044e\u043d",
+ "\u0418\u044e\u043b",
+ "\u0410\u0432\u0433\u0443\u0441\u0442",
+ "\u0421\u0435\u043d\u0442\u044f\u0431\u0440",
+ "\u041e\u043a\u0442\u044f\u0431\u0440",
+ "\u041d\u043e\u044f\u0431\u0440",
+ "\u0414\u0435\u043a\u0430\u0431\u0440"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "uz-cyrl-uz",
+ "localeID": "uz_Cyrl_UZ",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_uz-cyrl.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_uz-cyrl.js
index d284657c..824aaa44 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_uz-cyrl.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_uz-cyrl.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"\u041d\u043e\u044f",
"\u0414\u0435\u043a"
],
+ "STANDALONEMONTH": [
+ "\u042f\u043d\u0432\u0430\u0440",
+ "\u0424\u0435\u0432\u0440\u0430\u043b",
+ "\u041c\u0430\u0440\u0442",
+ "\u0410\u043f\u0440\u0435\u043b",
+ "\u041c\u0430\u0439",
+ "\u0418\u044e\u043d",
+ "\u0418\u044e\u043b",
+ "\u0410\u0432\u0433\u0443\u0441\u0442",
+ "\u0421\u0435\u043d\u0442\u044f\u0431\u0440",
+ "\u041e\u043a\u0442\u044f\u0431\u0440",
+ "\u041d\u043e\u044f\u0431\u0440",
+ "\u0414\u0435\u043a\u0430\u0431\u0440"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "uz-cyrl",
+ "localeID": "uz_Cyrl",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_uz-latn-uz.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_uz-latn-uz.js
index d7b41bd0..6872728b 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_uz-latn-uz.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_uz-latn-uz.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"Noya",
"Dek"
],
+ "STANDALONEMONTH": [
+ "Yanvar",
+ "Fevral",
+ "Mart",
+ "Aprel",
+ "May",
+ "Iyun",
+ "Iyul",
+ "Avgust",
+ "Sentabr",
+ "Oktabr",
+ "Noyabr",
+ "Dekabr"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "uz-latn-uz",
+ "localeID": "uz_Latn_UZ",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_uz-latn.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_uz-latn.js
index a0262271..ca53f82e 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_uz-latn.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_uz-latn.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"Noya",
"Dek"
],
+ "STANDALONEMONTH": [
+ "Yanvar",
+ "Fevral",
+ "Mart",
+ "Aprel",
+ "May",
+ "Iyun",
+ "Iyul",
+ "Avgust",
+ "Sentabr",
+ "Oktabr",
+ "Noyabr",
+ "Dekabr"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "uz-latn",
+ "localeID": "uz_Latn",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_uz.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_uz.js
index 1bf9a645..8eb442a4 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_uz.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_uz.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"Noya",
"Dek"
],
+ "STANDALONEMONTH": [
+ "Yanvar",
+ "Fevral",
+ "Mart",
+ "Aprel",
+ "May",
+ "Iyun",
+ "Iyul",
+ "Avgust",
+ "Sentabr",
+ "Oktabr",
+ "Noyabr",
+ "Dekabr"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "uz",
+ "localeID": "uz",
"pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_vai-latn-lr.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_vai-latn-lr.js
index a3d63c35..0800e469 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_vai-latn-lr.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_vai-latn-lr.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"kenpkato \u0253olol\u0254",
"luukao l\u0254ma"
],
+ "STANDALONEMONTH": [
+ "luukao kem\u00e3",
+ "\u0253anda\u0253u",
+ "v\u0254\u0254",
+ "fulu",
+ "goo",
+ "6",
+ "7",
+ "k\u0254nde",
+ "saah",
+ "galo",
+ "kenpkato \u0253olol\u0254",
+ "luukao l\u0254ma"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "vai-latn-lr",
+ "localeID": "vai_Latn_LR",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_vai-latn.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_vai-latn.js
index 3afe6629..8bb7e498 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_vai-latn.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_vai-latn.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"kenpkato \u0253olol\u0254",
"luukao l\u0254ma"
],
+ "STANDALONEMONTH": [
+ "luukao kem\u00e3",
+ "\u0253anda\u0253u",
+ "v\u0254\u0254",
+ "fulu",
+ "goo",
+ "6",
+ "7",
+ "k\u0254nde",
+ "saah",
+ "galo",
+ "kenpkato \u0253olol\u0254",
+ "luukao l\u0254ma"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "vai-latn",
+ "localeID": "vai_Latn",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_vai-vaii-lr.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_vai-vaii-lr.js
index 66666949..022470e7 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_vai-vaii-lr.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_vai-vaii-lr.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\ua51e\ua60b\ua554\ua57f \ua578\ua583\ua5cf",
"\ua5a8\ua56a\ua571 \ua5cf\ua56e"
],
+ "STANDALONEMONTH": [
+ "\ua5a8\ua56a\ua583 \ua51e\ua56e",
+ "\ua552\ua561\ua59d\ua595",
+ "\ua57e\ua5ba",
+ "\ua5a2\ua595",
+ "\ua591\ua571",
+ "6",
+ "7",
+ "\ua5db\ua515",
+ "\ua562\ua54c",
+ "\ua56d\ua583",
+ "\ua51e\ua60b\ua554\ua57f \ua578\ua583\ua5cf",
+ "\ua5a8\ua56a\ua571 \ua5cf\ua56e"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "vai-vaii-lr",
+ "localeID": "vai_Vaii_LR",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_vai-vaii.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_vai-vaii.js
index fc172f82..807b6aeb 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_vai-vaii.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_vai-vaii.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\ua51e\ua60b\ua554\ua57f \ua578\ua583\ua5cf",
"\ua5a8\ua56a\ua571 \ua5cf\ua56e"
],
+ "STANDALONEMONTH": [
+ "\ua5a8\ua56a\ua583 \ua51e\ua56e",
+ "\ua552\ua561\ua59d\ua595",
+ "\ua57e\ua5ba",
+ "\ua5a2\ua595",
+ "\ua591\ua571",
+ "6",
+ "7",
+ "\ua5db\ua515",
+ "\ua562\ua54c",
+ "\ua56d\ua583",
+ "\ua51e\ua60b\ua554\ua57f \ua578\ua583\ua5cf",
+ "\ua5a8\ua56a\ua571 \ua5cf\ua56e"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "vai-vaii",
+ "localeID": "vai_Vaii",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_vai.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_vai.js
index bdf3393a..36c32ae8 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_vai.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_vai.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\ua51e\ua60b\ua554\ua57f \ua578\ua583\ua5cf",
"\ua5a8\ua56a\ua571 \ua5cf\ua56e"
],
+ "STANDALONEMONTH": [
+ "\ua5a8\ua56a\ua583 \ua51e\ua56e",
+ "\ua552\ua561\ua59d\ua595",
+ "\ua57e\ua5ba",
+ "\ua5a2\ua595",
+ "\ua591\ua571",
+ "6",
+ "7",
+ "\ua5db\ua515",
+ "\ua562\ua54c",
+ "\ua56d\ua583",
+ "\ua51e\ua60b\ua554\ua57f \ua578\ua583\ua5cf",
+ "\ua5a8\ua56a\ua571 \ua5cf\ua56e"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "vai",
+ "localeID": "vai",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ve-za.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ve-za.js
index eb526307..eb526307 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ve-za.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ve-za.js
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ve.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ve.js
index 0acd86f1..0acd86f1 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_ve.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_ve.js
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_vi-vn.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_vi-vn.js
index 112e96ae..bd1ff23a 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_vi-vn.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_vi-vn.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"thg 11",
"thg 12"
],
+ "STANDALONEMONTH": [
+ "Th\u00e1ng 1",
+ "Th\u00e1ng 2",
+ "Th\u00e1ng 3",
+ "Th\u00e1ng 4",
+ "Th\u00e1ng 5",
+ "Th\u00e1ng 6",
+ "Th\u00e1ng 7",
+ "Th\u00e1ng 8",
+ "Th\u00e1ng 9",
+ "Th\u00e1ng 10",
+ "Th\u00e1ng 11",
+ "Th\u00e1ng 12"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "vi-vn",
+ "localeID": "vi_VN",
"pluralCat": function(n, opt_precision) { return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_vi.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_vi.js
index be70bd8e..cae6f1bc 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_vi.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_vi.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"thg 11",
"thg 12"
],
+ "STANDALONEMONTH": [
+ "Th\u00e1ng 1",
+ "Th\u00e1ng 2",
+ "Th\u00e1ng 3",
+ "Th\u00e1ng 4",
+ "Th\u00e1ng 5",
+ "Th\u00e1ng 6",
+ "Th\u00e1ng 7",
+ "Th\u00e1ng 8",
+ "Th\u00e1ng 9",
+ "Th\u00e1ng 10",
+ "Th\u00e1ng 11",
+ "Th\u00e1ng 12"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "vi",
+ "localeID": "vi",
"pluralCat": function(n, opt_precision) { return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_vo-001.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_vo-001.js
index a17a26da..a17a26da 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_vo-001.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_vo-001.js
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_vo.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_vo.js
index f8507993..f8507993 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_vo.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_vo.js
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_vun-tz.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_vun-tz.js
index 52b0670e..a25eb311 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_vun-tz.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_vun-tz.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Des"
],
+ "STANDALONEMONTH": [
+ "Januari",
+ "Februari",
+ "Machi",
+ "Aprilyi",
+ "Mei",
+ "Junyi",
+ "Julyai",
+ "Agusti",
+ "Septemba",
+ "Oktoba",
+ "Novemba",
+ "Desemba"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "vun-tz",
+ "localeID": "vun_TZ",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_vun.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_vun.js
index 4efacdf0..f539e2c3 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_vun.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_vun.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Des"
],
+ "STANDALONEMONTH": [
+ "Januari",
+ "Februari",
+ "Machi",
+ "Aprilyi",
+ "Mei",
+ "Junyi",
+ "Julyai",
+ "Agusti",
+ "Septemba",
+ "Oktoba",
+ "Novemba",
+ "Desemba"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "vun",
+ "localeID": "vun",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_wae-ch.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_wae-ch.js
index fba5d6ff..92aa7e8e 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_wae-ch.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_wae-ch.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Win",
"Chr"
],
+ "STANDALONEMONTH": [
+ "Jenner",
+ "Hornig",
+ "M\u00e4rze",
+ "Abrille",
+ "Meije",
+ "Br\u00e1\u010det",
+ "Heiwet",
+ "\u00d6ig\u0161te",
+ "Herb\u0161tm\u00e1net",
+ "W\u00edm\u00e1net",
+ "Winterm\u00e1net",
+ "Chri\u0161tm\u00e1net"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "wae-ch",
+ "localeID": "wae_CH",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_wae.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_wae.js
index 0e16d916..12a13a12 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_wae.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_wae.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Win",
"Chr"
],
+ "STANDALONEMONTH": [
+ "Jenner",
+ "Hornig",
+ "M\u00e4rze",
+ "Abrille",
+ "Meije",
+ "Br\u00e1\u010det",
+ "Heiwet",
+ "\u00d6ig\u0161te",
+ "Herb\u0161tm\u00e1net",
+ "W\u00edm\u00e1net",
+ "Winterm\u00e1net",
+ "Chri\u0161tm\u00e1net"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "wae",
+ "localeID": "wae",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_wal-et.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_wal-et.js
index 16a842ae..16a842ae 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_wal-et.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_wal-et.js
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_wal.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_wal.js
index 795c02d2..795c02d2 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_wal.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_wal.js
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_xh-za.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_xh-za.js
index 5eeb809a..5eeb809a 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_xh-za.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_xh-za.js
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_xh.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_xh.js
index 756a9f77..756a9f77 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_xh.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_xh.js
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_xog-ug.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_xog-ug.js
index 0288518e..0e265809 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_xog-ug.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_xog-ug.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Des"
],
+ "STANDALONEMONTH": [
+ "Janwaliyo",
+ "Febwaliyo",
+ "Marisi",
+ "Apuli",
+ "Maayi",
+ "Juuni",
+ "Julaayi",
+ "Agusito",
+ "Sebuttemba",
+ "Okitobba",
+ "Novemba",
+ "Desemba"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "xog-ug",
+ "localeID": "xog_UG",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_xog.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_xog.js
index 1a42ccf0..74286891 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_xog.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_xog.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"Nov",
"Des"
],
+ "STANDALONEMONTH": [
+ "Janwaliyo",
+ "Febwaliyo",
+ "Marisi",
+ "Apuli",
+ "Maayi",
+ "Juuni",
+ "Julaayi",
+ "Agusito",
+ "Sebuttemba",
+ "Okitobba",
+ "Novemba",
+ "Desemba"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "xog",
+ "localeID": "xog",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_yav-cm.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_yav-cm.js
index 142164fc..c880307b 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_yav-cm.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_yav-cm.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"o.11",
"o.12"
],
+ "STANDALONEMONTH": [
+ "pik\u00edt\u00edk\u00edtie, o\u00f3l\u00ed \u00fa kut\u00faan",
+ "si\u025by\u025b\u0301, o\u00f3li \u00fa k\u00e1nd\u00ed\u025b",
+ "\u0254ns\u00famb\u0254l, o\u00f3li \u00fa k\u00e1t\u00e1t\u00fa\u025b",
+ "mesi\u014b, o\u00f3li \u00fa k\u00e9nie",
+ "ensil, o\u00f3li \u00fa k\u00e1t\u00e1nu\u025b",
+ "\u0254s\u0254n",
+ "efute",
+ "pisuy\u00fa",
+ "im\u025b\u014b i pu\u0254s",
+ "im\u025b\u014b i put\u00fak,o\u00f3li \u00fa k\u00e1t\u00ed\u025b",
+ "makandik\u025b",
+ "pil\u0254nd\u0254\u0301"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "yav-cm",
+ "localeID": "yav_CM",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_yav.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_yav.js
index 01781a0d..77ba2f0d 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_yav.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_yav.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"o.11",
"o.12"
],
+ "STANDALONEMONTH": [
+ "pik\u00edt\u00edk\u00edtie, o\u00f3l\u00ed \u00fa kut\u00faan",
+ "si\u025by\u025b\u0301, o\u00f3li \u00fa k\u00e1nd\u00ed\u025b",
+ "\u0254ns\u00famb\u0254l, o\u00f3li \u00fa k\u00e1t\u00e1t\u00fa\u025b",
+ "mesi\u014b, o\u00f3li \u00fa k\u00e9nie",
+ "ensil, o\u00f3li \u00fa k\u00e1t\u00e1nu\u025b",
+ "\u0254s\u0254n",
+ "efute",
+ "pisuy\u00fa",
+ "im\u025b\u014b i pu\u0254s",
+ "im\u025b\u014b i put\u00fak,o\u00f3li \u00fa k\u00e1t\u00ed\u025b",
+ "makandik\u025b",
+ "pil\u0254nd\u0254\u0301"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "yav",
+ "localeID": "yav",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_yi-001.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_yi-001.js
index 0ba2042d..8698143a 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_yi-001.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_yi-001.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u05e0\u05d0\u05d5\u05d5\u05e2\u05de\u05d1\u05e2\u05e8",
"\u05d3\u05e2\u05e6\u05e2\u05de\u05d1\u05e2\u05e8"
],
+ "STANDALONEMONTH": [
+ "\u05d9\u05d0\u05b7\u05e0\u05d5\u05d0\u05b7\u05e8",
+ "\u05e4\u05bf\u05e2\u05d1\u05e8\u05d5\u05d0\u05b7\u05e8",
+ "\u05de\u05e2\u05e8\u05e5",
+ "\u05d0\u05b7\u05e4\u05bc\u05e8\u05d9\u05dc",
+ "\u05de\u05d9\u05d9",
+ "\u05d9\u05d5\u05e0\u05d9",
+ "\u05d9\u05d5\u05dc\u05d9",
+ "\u05d0\u05d5\u05d9\u05d2\u05d5\u05e1\u05d8",
+ "\u05e1\u05e2\u05e4\u05bc\u05d8\u05e2\u05de\u05d1\u05e2\u05e8",
+ "\u05d0\u05e7\u05d8\u05d0\u05d1\u05e2\u05e8",
+ "\u05e0\u05d0\u05d5\u05d5\u05e2\u05de\u05d1\u05e2\u05e8",
+ "\u05d3\u05e2\u05e6\u05e2\u05de\u05d1\u05e2\u05e8"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "yi-001",
+ "localeID": "yi_001",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_yi.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_yi.js
index 57fb4a9d..8f3e2827 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_yi.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_yi.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u05e0\u05d0\u05d5\u05d5\u05e2\u05de\u05d1\u05e2\u05e8",
"\u05d3\u05e2\u05e6\u05e2\u05de\u05d1\u05e2\u05e8"
],
+ "STANDALONEMONTH": [
+ "\u05d9\u05d0\u05b7\u05e0\u05d5\u05d0\u05b7\u05e8",
+ "\u05e4\u05bf\u05e2\u05d1\u05e8\u05d5\u05d0\u05b7\u05e8",
+ "\u05de\u05e2\u05e8\u05e5",
+ "\u05d0\u05b7\u05e4\u05bc\u05e8\u05d9\u05dc",
+ "\u05de\u05d9\u05d9",
+ "\u05d9\u05d5\u05e0\u05d9",
+ "\u05d9\u05d5\u05dc\u05d9",
+ "\u05d0\u05d5\u05d9\u05d2\u05d5\u05e1\u05d8",
+ "\u05e1\u05e2\u05e4\u05bc\u05d8\u05e2\u05de\u05d1\u05e2\u05e8",
+ "\u05d0\u05e7\u05d8\u05d0\u05d1\u05e2\u05e8",
+ "\u05e0\u05d0\u05d5\u05d5\u05e2\u05de\u05d1\u05e2\u05e8",
+ "\u05d3\u05e2\u05e6\u05e2\u05de\u05d1\u05e2\u05e8"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "yi",
+ "localeID": "yi",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_yo-bj.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_yo-bj.js
index afc112c3..a3fa2273 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_yo-bj.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_yo-bj.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"B\u00e9l\u00fa",
"\u0186\u0300p\u025b\u0300"
],
+ "STANDALONEMONTH": [
+ "Osh\u00f9 Sh\u025b\u0301r\u025b\u0301",
+ "Osh\u00f9 \u00c8r\u00e8l\u00e8",
+ "Osh\u00f9 \u0190r\u025b\u0300n\u00e0",
+ "Osh\u00f9 \u00ccgb\u00e9",
+ "Osh\u00f9 \u0190\u0300bibi",
+ "Osh\u00f9 \u00d2k\u00fadu",
+ "Osh\u00f9 Ag\u025bm\u0254",
+ "Osh\u00f9 \u00d2g\u00fan",
+ "Osh\u00f9 Owewe",
+ "Osh\u00f9 \u0186\u0300w\u00e0r\u00e0",
+ "Osh\u00f9 B\u00e9l\u00fa",
+ "Osh\u00f9 \u0186\u0300p\u025b\u0300"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "yo-bj",
+ "localeID": "yo_BJ",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_yo-ng.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_yo-ng.js
index 37b44503..6af884e6 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_yo-ng.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_yo-ng.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"B\u00e9l\u00fa",
"\u1ecc\u0300p\u1eb9\u0300"
],
+ "STANDALONEMONTH": [
+ "O\u1e63\u00f9 \u1e62\u1eb9\u0301r\u1eb9\u0301",
+ "O\u1e63\u00f9 \u00c8r\u00e8l\u00e8",
+ "O\u1e63\u00f9 \u1eb8r\u1eb9\u0300n\u00e0",
+ "O\u1e63\u00f9 \u00ccgb\u00e9",
+ "O\u1e63\u00f9 \u1eb8\u0300bibi",
+ "O\u1e63\u00f9 \u00d2k\u00fadu",
+ "O\u1e63\u00f9 Ag\u1eb9m\u1ecd",
+ "O\u1e63\u00f9 \u00d2g\u00fan",
+ "O\u1e63\u00f9 Owewe",
+ "O\u1e63\u00f9 \u1ecc\u0300w\u00e0r\u00e0",
+ "O\u1e63\u00f9 B\u00e9l\u00fa",
+ "O\u1e63\u00f9 \u1ecc\u0300p\u1eb9\u0300"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "yo-ng",
+ "localeID": "yo_NG",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_yo.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_yo.js
index 49d87d4f..02fe5499 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_yo.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_yo.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"B\u00e9l\u00fa",
"\u1ecc\u0300p\u1eb9\u0300"
],
+ "STANDALONEMONTH": [
+ "O\u1e63\u00f9 \u1e62\u1eb9\u0301r\u1eb9\u0301",
+ "O\u1e63\u00f9 \u00c8r\u00e8l\u00e8",
+ "O\u1e63\u00f9 \u1eb8r\u1eb9\u0300n\u00e0",
+ "O\u1e63\u00f9 \u00ccgb\u00e9",
+ "O\u1e63\u00f9 \u1eb8\u0300bibi",
+ "O\u1e63\u00f9 \u00d2k\u00fadu",
+ "O\u1e63\u00f9 Ag\u1eb9m\u1ecd",
+ "O\u1e63\u00f9 \u00d2g\u00fan",
+ "O\u1e63\u00f9 Owewe",
+ "O\u1e63\u00f9 \u1ecc\u0300w\u00e0r\u00e0",
+ "O\u1e63\u00f9 B\u00e9l\u00fa",
+ "O\u1e63\u00f9 \u1ecc\u0300p\u1eb9\u0300"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "yo",
+ "localeID": "yo",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_zgh-ma.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_zgh-ma.js
index ec0c86b1..70aaf858 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_zgh-ma.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_zgh-ma.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u2d4f\u2d53\u2d61",
"\u2d37\u2d53\u2d4a"
],
+ "STANDALONEMONTH": [
+ "\u2d49\u2d4f\u2d4f\u2d30\u2d62\u2d54",
+ "\u2d31\u2d55\u2d30\u2d62\u2d55",
+ "\u2d4e\u2d30\u2d55\u2d5a",
+ "\u2d49\u2d31\u2d54\u2d49\u2d54",
+ "\u2d4e\u2d30\u2d62\u2d62\u2d53",
+ "\u2d62\u2d53\u2d4f\u2d62\u2d53",
+ "\u2d62\u2d53\u2d4d\u2d62\u2d53\u2d63",
+ "\u2d56\u2d53\u2d5b\u2d5c",
+ "\u2d5b\u2d53\u2d5c\u2d30\u2d4f\u2d31\u2d49\u2d54",
+ "\u2d3d\u2d5c\u2d53\u2d31\u2d54",
+ "\u2d4f\u2d53\u2d61\u2d30\u2d4f\u2d31\u2d49\u2d54",
+ "\u2d37\u2d53\u2d4a\u2d30\u2d4f\u2d31\u2d49\u2d54"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "zgh-ma",
+ "localeID": "zgh_MA",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_zgh.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_zgh.js
index c4c7a64e..dc8b56af 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_zgh.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_zgh.js
@@ -80,6 +80,20 @@ $provide.value("$locale", {
"\u2d4f\u2d53\u2d61",
"\u2d37\u2d53\u2d4a"
],
+ "STANDALONEMONTH": [
+ "\u2d49\u2d4f\u2d4f\u2d30\u2d62\u2d54",
+ "\u2d31\u2d55\u2d30\u2d62\u2d55",
+ "\u2d4e\u2d30\u2d55\u2d5a",
+ "\u2d49\u2d31\u2d54\u2d49\u2d54",
+ "\u2d4e\u2d30\u2d62\u2d62\u2d53",
+ "\u2d62\u2d53\u2d4f\u2d62\u2d53",
+ "\u2d62\u2d53\u2d4d\u2d62\u2d53\u2d63",
+ "\u2d56\u2d53\u2d5b\u2d5c",
+ "\u2d5b\u2d53\u2d5c\u2d30\u2d4f\u2d31\u2d49\u2d54",
+ "\u2d3d\u2d5c\u2d53\u2d31\u2d54",
+ "\u2d4f\u2d53\u2d61\u2d30\u2d4f\u2d31\u2d49\u2d54",
+ "\u2d37\u2d53\u2d4a\u2d30\u2d4f\u2d31\u2d49\u2d54"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -123,6 +137,7 @@ $provide.value("$locale", {
]
},
"id": "zgh",
+ "localeID": "zgh",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_zh-cn.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_zh-cn.js
index d15cdd61..9dcded23 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_zh-cn.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_zh-cn.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"11\u6708",
"12\u6708"
],
+ "STANDALONEMONTH": [
+ "\u4e00\u6708",
+ "\u4e8c\u6708",
+ "\u4e09\u6708",
+ "\u56db\u6708",
+ "\u4e94\u6708",
+ "\u516d\u6708",
+ "\u4e03\u6708",
+ "\u516b\u6708",
+ "\u4e5d\u6708",
+ "\u5341\u6708",
+ "\u5341\u4e00\u6708",
+ "\u5341\u4e8c\u6708"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "zh-cn",
+ "localeID": "zh_CN",
"pluralCat": function(n, opt_precision) { return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_zh-hans-cn.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_zh-hans-cn.js
index 120aa830..9caf0a9e 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_zh-hans-cn.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_zh-hans-cn.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"11\u6708",
"12\u6708"
],
+ "STANDALONEMONTH": [
+ "\u4e00\u6708",
+ "\u4e8c\u6708",
+ "\u4e09\u6708",
+ "\u56db\u6708",
+ "\u4e94\u6708",
+ "\u516d\u6708",
+ "\u4e03\u6708",
+ "\u516b\u6708",
+ "\u4e5d\u6708",
+ "\u5341\u6708",
+ "\u5341\u4e00\u6708",
+ "\u5341\u4e8c\u6708"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "zh-hans-cn",
+ "localeID": "zh_Hans_CN",
"pluralCat": function(n, opt_precision) { return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_zh-hans-hk.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_zh-hans-hk.js
index d47c48b1..f19d3ffd 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_zh-hans-hk.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_zh-hans-hk.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"11\u6708",
"12\u6708"
],
+ "STANDALONEMONTH": [
+ "\u4e00\u6708",
+ "\u4e8c\u6708",
+ "\u4e09\u6708",
+ "\u56db\u6708",
+ "\u4e94\u6708",
+ "\u516d\u6708",
+ "\u4e03\u6708",
+ "\u516b\u6708",
+ "\u4e5d\u6708",
+ "\u5341\u6708",
+ "\u5341\u4e00\u6708",
+ "\u5341\u4e8c\u6708"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "zh-hans-hk",
+ "localeID": "zh_Hans_HK",
"pluralCat": function(n, opt_precision) { return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_zh-hans-mo.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_zh-hans-mo.js
index 750fd374..a5f5f6b8 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_zh-hans-mo.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_zh-hans-mo.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"11\u6708",
"12\u6708"
],
+ "STANDALONEMONTH": [
+ "\u4e00\u6708",
+ "\u4e8c\u6708",
+ "\u4e09\u6708",
+ "\u56db\u6708",
+ "\u4e94\u6708",
+ "\u516d\u6708",
+ "\u4e03\u6708",
+ "\u516b\u6708",
+ "\u4e5d\u6708",
+ "\u5341\u6708",
+ "\u5341\u4e00\u6708",
+ "\u5341\u4e8c\u6708"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "zh-hans-mo",
+ "localeID": "zh_Hans_MO",
"pluralCat": function(n, opt_precision) { return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_zh-hans-sg.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_zh-hans-sg.js
index 329df2df..9e9f6a42 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_zh-hans-sg.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_zh-hans-sg.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"11\u6708",
"12\u6708"
],
+ "STANDALONEMONTH": [
+ "\u4e00\u6708",
+ "\u4e8c\u6708",
+ "\u4e09\u6708",
+ "\u56db\u6708",
+ "\u4e94\u6708",
+ "\u516d\u6708",
+ "\u4e03\u6708",
+ "\u516b\u6708",
+ "\u4e5d\u6708",
+ "\u5341\u6708",
+ "\u5341\u4e00\u6708",
+ "\u5341\u4e8c\u6708"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "zh-hans-sg",
+ "localeID": "zh_Hans_SG",
"pluralCat": function(n, opt_precision) { return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_zh-hans.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_zh-hans.js
index 920d39d0..8cc744e2 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_zh-hans.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_zh-hans.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"11\u6708",
"12\u6708"
],
+ "STANDALONEMONTH": [
+ "\u4e00\u6708",
+ "\u4e8c\u6708",
+ "\u4e09\u6708",
+ "\u56db\u6708",
+ "\u4e94\u6708",
+ "\u516d\u6708",
+ "\u4e03\u6708",
+ "\u516b\u6708",
+ "\u4e5d\u6708",
+ "\u5341\u6708",
+ "\u5341\u4e00\u6708",
+ "\u5341\u4e8c\u6708"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "zh-hans",
+ "localeID": "zh_Hans",
"pluralCat": function(n, opt_precision) { return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_zh-hant-hk.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_zh-hant-hk.js
index 23d60d7c..83afa08c 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_zh-hant-hk.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_zh-hant-hk.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"11\u6708",
"12\u6708"
],
+ "STANDALONEMONTH": [
+ "1\u6708",
+ "2\u6708",
+ "3\u6708",
+ "4\u6708",
+ "5\u6708",
+ "6\u6708",
+ "7\u6708",
+ "8\u6708",
+ "9\u6708",
+ "10\u6708",
+ "11\u6708",
+ "12\u6708"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "zh-hant-hk",
+ "localeID": "zh_Hant_HK",
"pluralCat": function(n, opt_precision) { return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_zh-hant-mo.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_zh-hant-mo.js
index a6e4a328..9e7dff0e 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_zh-hant-mo.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_zh-hant-mo.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"11\u6708",
"12\u6708"
],
+ "STANDALONEMONTH": [
+ "1\u6708",
+ "2\u6708",
+ "3\u6708",
+ "4\u6708",
+ "5\u6708",
+ "6\u6708",
+ "7\u6708",
+ "8\u6708",
+ "9\u6708",
+ "10\u6708",
+ "11\u6708",
+ "12\u6708"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "zh-hant-mo",
+ "localeID": "zh_Hant_MO",
"pluralCat": function(n, opt_precision) { return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_zh-hant-tw.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_zh-hant-tw.js
index 7caaa086..870b74a5 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_zh-hant-tw.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_zh-hant-tw.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"11\u6708",
"12\u6708"
],
+ "STANDALONEMONTH": [
+ "1\u6708",
+ "2\u6708",
+ "3\u6708",
+ "4\u6708",
+ "5\u6708",
+ "6\u6708",
+ "7\u6708",
+ "8\u6708",
+ "9\u6708",
+ "10\u6708",
+ "11\u6708",
+ "12\u6708"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "zh-hant-tw",
+ "localeID": "zh_Hant_TW",
"pluralCat": function(n, opt_precision) { return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_zh-hant.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_zh-hant.js
index 99b7e43d..38dbf142 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_zh-hant.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_zh-hant.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"11\u6708",
"12\u6708"
],
+ "STANDALONEMONTH": [
+ "1\u6708",
+ "2\u6708",
+ "3\u6708",
+ "4\u6708",
+ "5\u6708",
+ "6\u6708",
+ "7\u6708",
+ "8\u6708",
+ "9\u6708",
+ "10\u6708",
+ "11\u6708",
+ "12\u6708"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "zh-hant",
+ "localeID": "zh_Hant",
"pluralCat": function(n, opt_precision) { return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_zh-hk.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_zh-hk.js
index 6c8fefb3..c6c3620b 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_zh-hk.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_zh-hk.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"11\u6708",
"12\u6708"
],
+ "STANDALONEMONTH": [
+ "1\u6708",
+ "2\u6708",
+ "3\u6708",
+ "4\u6708",
+ "5\u6708",
+ "6\u6708",
+ "7\u6708",
+ "8\u6708",
+ "9\u6708",
+ "10\u6708",
+ "11\u6708",
+ "12\u6708"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "zh-hk",
+ "localeID": "zh_HK",
"pluralCat": function(n, opt_precision) { return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_zh-tw.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_zh-tw.js
index b834a617..53b1b3db 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_zh-tw.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_zh-tw.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"11\u6708",
"12\u6708"
],
+ "STANDALONEMONTH": [
+ "1\u6708",
+ "2\u6708",
+ "3\u6708",
+ "4\u6708",
+ "5\u6708",
+ "6\u6708",
+ "7\u6708",
+ "8\u6708",
+ "9\u6708",
+ "10\u6708",
+ "11\u6708",
+ "12\u6708"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "zh-tw",
+ "localeID": "zh_TW",
"pluralCat": function(n, opt_precision) { return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_zh.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_zh.js
index 8c764a76..41f05a89 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_zh.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_zh.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"11\u6708",
"12\u6708"
],
+ "STANDALONEMONTH": [
+ "\u4e00\u6708",
+ "\u4e8c\u6708",
+ "\u4e09\u6708",
+ "\u56db\u6708",
+ "\u4e94\u6708",
+ "\u516d\u6708",
+ "\u4e03\u6708",
+ "\u516b\u6708",
+ "\u4e5d\u6708",
+ "\u5341\u6708",
+ "\u5341\u4e00\u6708",
+ "\u5341\u4e8c\u6708"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "zh",
+ "localeID": "zh",
"pluralCat": function(n, opt_precision) { return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_zu-za.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_zu-za.js
index 4f48a9fd..e11f8d46 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_zu-za.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_zu-za.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"Nov",
"Dis"
],
+ "STANDALONEMONTH": [
+ "Januwari",
+ "Februwari",
+ "Mashi",
+ "Apreli",
+ "Meyi",
+ "Juni",
+ "Julayi",
+ "Agasti",
+ "Septhemba",
+ "Okthoba",
+ "Novemba",
+ "Disemba"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "zu-za",
+ "localeID": "zu_ZA",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_zu.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_zu.js
index bd4d00ec..50372f67 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/i18n/angular-locale_zu.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/i18n/angular-locale_zu.js
@@ -62,6 +62,20 @@ $provide.value("$locale", {
"Nov",
"Dis"
],
+ "STANDALONEMONTH": [
+ "Januwari",
+ "Februwari",
+ "Mashi",
+ "Apreli",
+ "Meyi",
+ "Juni",
+ "Julayi",
+ "Agasti",
+ "Septhemba",
+ "Okthoba",
+ "Novemba",
+ "Disemba"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -105,6 +119,7 @@ $provide.value("$locale", {
]
},
"id": "zu",
+ "localeID": "zu",
"pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/version.json b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/version.json
new file mode 100644
index 00000000..7007f218
--- /dev/null
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/version.json
@@ -0,0 +1 @@
+{"raw":"v1.4.13","major":1,"minor":4,"patch":13,"prerelease":[],"build":[],"version":"1.4.13","codeName":"croaking-elderweed","full":"1.4.13","branch":"v1.4.x","cdn":{"raw":"v1.4.12","major":1,"minor":4,"patch":12,"prerelease":[],"build":[],"version":"1.4.12","docsUrl":"http://code.angularjs.org/1.4.12/docs"}} \ No newline at end of file
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/version.txt b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/version.txt
new file mode 100644
index 00000000..d0199d3e
--- /dev/null
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.13/version.txt
@@ -0,0 +1 @@
+1.4.13 \ No newline at end of file
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-animate.min.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-animate.min.js
deleted file mode 100644
index 9461603d..00000000
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-animate.min.js
+++ /dev/null
@@ -1,56 +0,0 @@
-/*
- AngularJS v1.4.8
- (c) 2010-2015 Google, Inc. http://angularjs.org
- License: MIT
-*/
-(function(H,u,Sa){'use strict';function wa(a,b,c){if(!a)throw ngMinErr("areq",b||"?",c||"required");return a}function xa(a,b){if(!a&&!b)return"";if(!a)return b;if(!b)return a;X(a)&&(a=a.join(" "));X(b)&&(b=b.join(" "));return a+" "+b}function Ia(a){var b={};a&&(a.to||a.from)&&(b.to=a.to,b.from=a.from);return b}function T(a,b,c){var d="";a=X(a)?a:a&&I(a)&&a.length?a.split(/\s+/):[];q(a,function(a,s){a&&0<a.length&&(d+=0<s?" ":"",d+=c?b+a:a+b)});return d}function Ja(a){if(a instanceof L)switch(a.length){case 0:return[];
-case 1:if(1===a[0].nodeType)return a;break;default:return L(ma(a))}if(1===a.nodeType)return L(a)}function ma(a){if(!a[0])return a;for(var b=0;b<a.length;b++){var c=a[b];if(1==c.nodeType)return c}}function Ka(a,b,c){q(b,function(b){a.addClass(b,c)})}function La(a,b,c){q(b,function(b){a.removeClass(b,c)})}function N(a){return function(b,c){c.addClass&&(Ka(a,b,c.addClass),c.addClass=null);c.removeClass&&(La(a,b,c.removeClass),c.removeClass=null)}}function ia(a){a=a||{};if(!a.$$prepared){var b=a.domOperation||
-M;a.domOperation=function(){a.$$domOperationFired=!0;b();b=M};a.$$prepared=!0}return a}function da(a,b){ya(a,b);za(a,b)}function ya(a,b){b.from&&(a.css(b.from),b.from=null)}function za(a,b){b.to&&(a.css(b.to),b.to=null)}function Q(a,b,c){var d=(b.addClass||"")+" "+(c.addClass||""),e=(b.removeClass||"")+" "+(c.removeClass||"");a=Ma(a.attr("class"),d,e);c.preparationClasses&&(b.preparationClasses=Y(c.preparationClasses,b.preparationClasses),delete c.preparationClasses);d=b.domOperation!==M?b.domOperation:
-null;Aa(b,c);d&&(b.domOperation=d);b.addClass=a.addClass?a.addClass:null;b.removeClass=a.removeClass?a.removeClass:null;return b}function Ma(a,b,c){function d(a){I(a)&&(a=a.split(" "));var b={};q(a,function(a){a.length&&(b[a]=!0)});return b}var e={};a=d(a);b=d(b);q(b,function(a,b){e[b]=1});c=d(c);q(c,function(a,b){e[b]=1===e[b]?null:-1});var s={addClass:"",removeClass:""};q(e,function(b,c){var e,d;1===b?(e="addClass",d=!a[c]):-1===b&&(e="removeClass",d=a[c]);d&&(s[e].length&&(s[e]+=" "),s[e]+=c)});
-return s}function B(a){return a instanceof u.element?a[0]:a}function Na(a,b,c){var d="";b&&(d=T(b,"ng-",!0));c.addClass&&(d=Y(d,T(c.addClass,"-add")));c.removeClass&&(d=Y(d,T(c.removeClass,"-remove")));d.length&&(c.preparationClasses=d,a.addClass(d))}function ja(a,b){var c=b?"-"+b+"s":"";ea(a,[fa,c]);return[fa,c]}function na(a,b){var c=b?"paused":"",d=U+"PlayState";ea(a,[d,c]);return[d,c]}function ea(a,b){a.style[b[0]]=b[1]}function Y(a,b){return a?b?a+" "+b:a:b}function Ba(a,b,c){var d=Object.create(null),
-e=a.getComputedStyle(b)||{};q(c,function(a,b){var c=e[a];if(c){var v=c.charAt(0);if("-"===v||"+"===v||0<=v)c=Oa(c);0===c&&(c=null);d[b]=c}});return d}function Oa(a){var b=0;a=a.split(/\s*,\s*/);q(a,function(a){"s"==a.charAt(a.length-1)&&(a=a.substring(0,a.length-1));a=parseFloat(a)||0;b=b?Math.max(a,b):a});return b}function oa(a){return 0===a||null!=a}function Ca(a,b){var c=O,d=a+"s";b?c+="Duration":d+=" linear all";return[c,d]}function Da(){var a=Object.create(null);return{flush:function(){a=Object.create(null)},
-count:function(b){return(b=a[b])?b.total:0},get:function(b){return(b=a[b])&&b.value},put:function(b,c){a[b]?a[b].total++:a[b]={total:1,value:c}}}}function Ea(a,b,c){q(c,function(c){a[c]=V(a[c])?a[c]:b.style.getPropertyValue(c)})}var M=u.noop,Aa=u.extend,L=u.element,q=u.forEach,X=u.isArray,I=u.isString,pa=u.isObject,qa=u.isUndefined,V=u.isDefined,Fa=u.isFunction,ra=u.isElement,O,sa,U,ta;qa(H.ontransitionend)&&V(H.onwebkittransitionend)?(O="WebkitTransition",sa="webkitTransitionEnd transitionend"):
-(O="transition",sa="transitionend");qa(H.onanimationend)&&V(H.onwebkitanimationend)?(U="WebkitAnimation",ta="webkitAnimationEnd animationend"):(U="animation",ta="animationend");var ka=U+"Delay",ua=U+"Duration",fa=O+"Delay";H=O+"Duration";var Pa={transitionDuration:H,transitionDelay:fa,transitionProperty:O+"Property",animationDuration:ua,animationDelay:ka,animationIterationCount:U+"IterationCount"},Qa={transitionDuration:H,transitionDelay:fa,animationDuration:ua,animationDelay:ka};u.module("ngAnimate",
-[]).directive("ngAnimateChildren",[function(){return function(a,b,c){a=c.ngAnimateChildren;u.isString(a)&&0===a.length?b.data("$$ngAnimateChildren",!0):c.$observe("ngAnimateChildren",function(a){b.data("$$ngAnimateChildren","on"===a||"true"===a)})}}]).factory("$$rAFScheduler",["$$rAF",function(a){function b(a){d=d.concat(a);c()}function c(){if(d.length){for(var b=d.shift(),h=0;h<b.length;h++)b[h]();e||a(function(){e||c()})}}var d,e;d=b.queue=[];b.waitUntilQuiet=function(b){e&&e();e=a(function(){e=
-null;b();c()})};return b}]).factory("$$AnimateRunner",["$q","$sniffer","$$animateAsyncRun",function(a,b,c){function d(a){this.setHost(a);this._doneCallbacks=[];this._runInAnimationFrame=c();this._state=0}d.chain=function(a,b){function c(){if(d===a.length)b(!0);else a[d](function(a){!1===a?b(!1):(d++,c())})}var d=0;c()};d.all=function(a,b){function c(h){v=v&&h;++d===a.length&&b(v)}var d=0,v=!0;q(a,function(a){a.done(c)})};d.prototype={setHost:function(a){this.host=a||{}},done:function(a){2===this._state?
-a():this._doneCallbacks.push(a)},progress:M,getPromise:function(){if(!this.promise){var b=this;this.promise=a(function(a,c){b.done(function(b){!1===b?c():a()})})}return this.promise},then:function(a,b){return this.getPromise().then(a,b)},"catch":function(a){return this.getPromise()["catch"](a)},"finally":function(a){return this.getPromise()["finally"](a)},pause:function(){this.host.pause&&this.host.pause()},resume:function(){this.host.resume&&this.host.resume()},end:function(){this.host.end&&this.host.end();
-this._resolve(!0)},cancel:function(){this.host.cancel&&this.host.cancel();this._resolve(!1)},complete:function(a){var b=this;0===b._state&&(b._state=1,b._runInAnimationFrame(function(){b._resolve(a)}))},_resolve:function(a){2!==this._state&&(q(this._doneCallbacks,function(b){b(a)}),this._doneCallbacks.length=0,this._state=2)}};return d}]).factory("$$animateAsyncRun",["$$rAF",function(a){function b(b){c.push(b);1<c.length||a(function(){for(var a=0;a<c.length;a++)c[a]();c=[]})}var c=[];return function(){var a=
-!1;b(function(){a=!0});return function(c){a?c():b(c)}}}]).provider("$$animateQueue",["$animateProvider",function(a){function b(a,b,c,q){return d[a].some(function(a){return a(b,c,q)})}function c(a,b){a=a||{};var c=0<(a.addClass||"").length,d=0<(a.removeClass||"").length;return b?c&&d:c||d}var d=this.rules={skip:[],cancel:[],join:[]};d.join.push(function(a,b,d){return!b.structural&&c(b.options)});d.skip.push(function(a,b,d){return!b.structural&&!c(b.options)});d.skip.push(function(a,b,c){return"leave"==
-c.event&&b.structural});d.skip.push(function(a,b,c){return c.structural&&2===c.state&&!b.structural});d.cancel.push(function(a,b,c){return c.structural&&b.structural});d.cancel.push(function(a,b,c){return 2===c.state&&b.structural});d.cancel.push(function(a,b,c){a=b.options;c=c.options;return a.addClass&&a.addClass===c.removeClass||a.removeClass&&a.removeClass===c.addClass});this.$get=["$$rAF","$rootScope","$rootElement","$document","$$HashMap","$$animation","$$AnimateRunner","$templateRequest","$$jqLite",
-"$$forceReflow",function(d,s,h,g,v,r,$,u,R,C){function D(){var a=!1;return function(b){a?b():s.$$postDigest(function(){a=!0;b()})}}function K(a,b,c){var f=B(b),d=B(a),n=[];(a=t[c])&&q(a,function(a){a.node.contains(f)?n.push(a.callback):"leave"===c&&a.node.contains(d)&&n.push(a.callback)});return n}function l(a,f,k){function n(b,c,f,t){R(function(){var b=K(v,a,c);b.length&&d(function(){q(b,function(b){b(a,f,t)})})});b.progress(c,f,t)}function t(b){var c=a,f=k;f.preparationClasses&&(c.removeClass(f.preparationClasses),
-f.preparationClasses=null);f.activeClasses&&(c.removeClass(f.activeClasses),f.activeClasses=null);Ha(a,k);da(a,k);k.domOperation();h.complete(!b)}var A,v;if(a=Ja(a))A=B(a),v=a.parent();k=ia(k);var h=new $,R=D();X(k.addClass)&&(k.addClass=k.addClass.join(" "));k.addClass&&!I(k.addClass)&&(k.addClass=null);X(k.removeClass)&&(k.removeClass=k.removeClass.join(" "));k.removeClass&&!I(k.removeClass)&&(k.removeClass=null);k.from&&!pa(k.from)&&(k.from=null);k.to&&!pa(k.to)&&(k.to=null);if(!A)return t(),h;
-var z=[A.className,k.addClass,k.removeClass].join(" ");if(!Ra(z))return t(),h;var l=0<=["enter","move","leave"].indexOf(f),g=!G||F.get(A),z=!g&&m.get(A)||{},C=!!z.state;g||C&&1==z.state||(g=!la(a,v,f));if(g)return t(),h;l&&y(a);g={structural:l,element:a,event:f,close:t,options:k,runner:h};if(C){if(b("skip",a,g,z)){if(2===z.state)return t(),h;Q(a,z.options,k);return z.runner}if(b("cancel",a,g,z))if(2===z.state)z.runner.end();else if(z.structural)z.close();else return Q(a,z.options,g.options),z.runner;
-else if(b("join",a,g,z))if(2===z.state)Q(a,k,{});else return Na(a,l?f:null,k),f=g.event=z.event,k=Q(a,z.options,g.options),z.runner}else Q(a,k,{});(C=g.structural)||(C="animate"===g.event&&0<Object.keys(g.options.to||{}).length||c(g.options));if(!C)return t(),w(a),h;var u=(z.counter||0)+1;g.counter=u;x(a,1,g);s.$$postDigest(function(){var b=m.get(A),d=!b,b=b||{},K=0<(a.parent()||[]).length&&("animate"===b.event||b.structural||c(b.options));if(d||b.counter!==u||!K){d&&(Ha(a,k),da(a,k));if(d||l&&b.event!==
-f)k.domOperation(),h.end();K||w(a)}else f=!b.structural&&c(b.options,!0)?"setClass":b.event,x(a,2),b=r(a,f,b.options),b.done(function(b){t(!b);(b=m.get(A))&&b.counter===u&&w(B(a));n(h,f,"close",{})}),h.setHost(b),n(h,f,"start",{})});return h}function y(a){a=B(a).querySelectorAll("[data-ng-animate]");q(a,function(a){var b=parseInt(a.getAttribute("data-ng-animate")),c=m.get(a);switch(b){case 2:c.runner.end();case 1:c&&m.remove(a)}})}function w(a){a=B(a);a.removeAttribute("data-ng-animate");m.remove(a)}
-function f(a,b){return B(a)===B(b)}function la(a,b,c){c=L(g[0].body);var d=f(a,c)||"HTML"===a[0].nodeName,t=f(a,h),n=!1,w;for((a=a.data("$ngAnimatePin"))&&(b=a);b&&b.length;){t||(t=f(b,h));a=b[0];if(1!==a.nodeType)break;var x=m.get(a)||{};n||(n=x.structural||F.get(a));if(qa(w)||!0===w)a=b.data("$$ngAnimateChildren"),V(a)&&(w=a);if(n&&!1===w)break;t||(t=f(b,h),t||(a=b.data("$ngAnimatePin"))&&(b=a));d||(d=f(b,c));b=b.parent()}return(!n||w)&&t&&d}function x(a,b,c){c=c||{};c.state=b;a=B(a);a.setAttribute("data-ng-animate",
-b);c=(b=m.get(a))?Aa(b,c):c;m.put(a,c)}var m=new v,F=new v,G=null,A=s.$watch(function(){return 0===u.totalPendingRequests},function(a){a&&(A(),s.$$postDigest(function(){s.$$postDigest(function(){null===G&&(G=!0)})}))}),t={},n=a.classNameFilter(),Ra=n?function(a){return n.test(a)}:function(){return!0},Ha=N(R);return{on:function(a,b,c){b=ma(b);t[a]=t[a]||[];t[a].push({node:b,callback:c})},off:function(a,b,c){function f(a,b,c){var d=ma(b);return a.filter(function(a){return!(a.node===d&&(!c||a.callback===
-c))})}var d=t[a];d&&(t[a]=1===arguments.length?null:f(d,b,c))},pin:function(a,b){wa(ra(a),"element","not an element");wa(ra(b),"parentElement","not an element");a.data("$ngAnimatePin",b)},push:function(a,b,c,f){c=c||{};c.domOperation=f;return l(a,b,c)},enabled:function(a,b){var c=arguments.length;if(0===c)b=!!G;else if(ra(a)){var f=B(a),d=F.get(f);1===c?b=!d:(b=!!b)?d&&F.remove(f):F.put(f,!0)}else b=G=!!a;return b}}}]}]).provider("$$animation",["$animateProvider",function(a){function b(a){return a.data("$$animationRunner")}
-var c=this.drivers=[];this.$get=["$$jqLite","$rootScope","$injector","$$AnimateRunner","$$HashMap","$$rAFScheduler",function(a,e,s,h,g,v){function r(a){function b(a){if(a.processed)return a;a.processed=!0;var f=a.domNode,d=f.parentNode;e.put(f,a);for(var x;d;){if(x=e.get(d)){x.processed||(x=b(x));break}d=d.parentNode}(x||c).children.push(a);return a}var c={children:[]},d,e=new g;for(d=0;d<a.length;d++){var h=a[d];e.put(h.domNode,a[d]={domNode:h.domNode,fn:h.fn,children:[]})}for(d=0;d<a.length;d++)b(a[d]);
-return function(a){var b=[],c=[],d;for(d=0;d<a.children.length;d++)c.push(a.children[d]);a=c.length;var m=0,e=[];for(d=0;d<c.length;d++){var h=c[d];0>=a&&(a=m,m=0,b.push(e),e=[]);e.push(h.fn);h.children.forEach(function(a){m++;c.push(a)});a--}e.length&&b.push(e);return b}(c)}var $=[],u=N(a);return function(g,C,D){function K(a){a=a.hasAttribute("ng-animate-ref")?[a]:a.querySelectorAll("[ng-animate-ref]");var b=[];q(a,function(a){var c=a.getAttribute("ng-animate-ref");c&&c.length&&b.push(a)});return b}
-function l(a){var b=[],c={};q(a,function(a,f){var d=B(a.element),t=0<=["enter","move"].indexOf(a.event),d=a.structural?K(d):[];if(d.length){var m=t?"to":"from";q(d,function(a){var b=a.getAttribute("ng-animate-ref");c[b]=c[b]||{};c[b][m]={animationID:f,element:L(a)}})}else b.push(a)});var f={},d={};q(c,function(c,m){var w=c.from,e=c.to;if(w&&e){var h=a[w.animationID],g=a[e.animationID],x=w.animationID.toString();if(!d[x]){var A=d[x]={structural:!0,beforeStart:function(){h.beforeStart();g.beforeStart()},
-close:function(){h.close();g.close()},classes:y(h.classes,g.classes),from:h,to:g,anchors:[]};A.classes.length?b.push(A):(b.push(h),b.push(g))}d[x].anchors.push({out:w.element,"in":e.element})}else w=w?w.animationID:e.animationID,e=w.toString(),f[e]||(f[e]=!0,b.push(a[w]))});return b}function y(a,b){a=a.split(" ");b=b.split(" ");for(var c=[],f=0;f<a.length;f++){var d=a[f];if("ng-"!==d.substring(0,3))for(var m=0;m<b.length;m++)if(d===b[m]){c.push(d);break}}return c.join(" ")}function w(a){for(var b=
-c.length-1;0<=b;b--){var f=c[b];if(s.has(f)&&(f=s.get(f)(a)))return f}}function f(a,c){a.from&&a.to?(b(a.from.element).setHost(c),b(a.to.element).setHost(c)):b(a.element).setHost(c)}function la(){var a=b(g);!a||"leave"===C&&D.$$domOperationFired||a.end()}function x(b){g.off("$destroy",la);g.removeData("$$animationRunner");u(g,D);da(g,D);D.domOperation();A&&a.removeClass(g,A);g.removeClass("ng-animate");F.complete(!b)}D=ia(D);var m=0<=["enter","move","leave"].indexOf(C),F=new h({end:function(){x()},
-cancel:function(){x(!0)}});if(!c.length)return x(),F;g.data("$$animationRunner",F);var G=xa(g.attr("class"),xa(D.addClass,D.removeClass)),A=D.tempClasses;A&&(G+=" "+A,D.tempClasses=null);$.push({element:g,classes:G,event:C,structural:m,options:D,beforeStart:function(){g.addClass("ng-animate");A&&a.addClass(g,A)},close:x});g.on("$destroy",la);if(1<$.length)return F;e.$$postDigest(function(){var a=[];q($,function(c){b(c.element)?a.push(c):c.close()});$.length=0;var c=l(a),d=[];q(c,function(a){d.push({domNode:B(a.from?
-a.from.element:a.element),fn:function(){a.beforeStart();var c,d=a.close;if(b(a.anchors?a.from.element||a.to.element:a.element)){var m=w(a);m&&(c=m.start)}c?(c=c(),c.done(function(a){d(!a)}),f(a,c)):d()}})});v(r(d))});return F}}]}]).provider("$animateCss",["$animateProvider",function(a){var b=Da(),c=Da();this.$get=["$window","$$jqLite","$$AnimateRunner","$timeout","$$forceReflow","$sniffer","$$rAFScheduler","$animate",function(a,e,s,h,g,v,r,u){function Ga(a,b){var c=a.parentNode;return(c.$$ngAnimateParentKey||
-(c.$$ngAnimateParentKey=++l))+"-"+a.getAttribute("class")+"-"+b}function R(w,f,h,g){var m;0<b.count(h)&&(m=c.get(h),m||(f=T(f,"-stagger"),e.addClass(w,f),m=Ba(a,w,g),m.animationDuration=Math.max(m.animationDuration,0),m.transitionDuration=Math.max(m.transitionDuration,0),e.removeClass(w,f),c.put(h,m)));return m||{}}function C(a){y.push(a);r.waitUntilQuiet(function(){b.flush();c.flush();for(var a=g(),d=0;d<y.length;d++)y[d](a);y.length=0})}function D(c,f,e){f=b.get(e);f||(f=Ba(a,c,Pa),"infinite"===
-f.animationIterationCount&&(f.animationIterationCount=1));b.put(e,f);c=f;e=c.animationDelay;f=c.transitionDelay;c.maxDelay=e&&f?Math.max(e,f):e||f;c.maxDuration=Math.max(c.animationDuration*c.animationIterationCount,c.transitionDuration);return c}var K=N(e),l=0,y=[];return function(a,c){function d(){m()}function g(){m(!0)}function m(b){if(!(ga||va&&k)){ga=!0;k=!1;c.$$skipPreparationClasses||e.removeClass(a,Z);e.removeClass(a,Y);na(n,!1);ja(n,!1);q(y,function(a){n.style[a[0]]=""});K(a,c);da(a,c);Object.keys(t).length&&
-q(t,function(a,b){a?n.style.setProperty(b,a):n.style.removeProperty(b)});if(c.onDone)c.onDone();H&&H.complete(!b)}}function F(a){p.blockTransition&&ja(n,a);p.blockKeyframeAnimation&&na(n,!!a)}function G(){H=new s({end:d,cancel:g});C(M);m();return{$$willAnimate:!1,start:function(){return H},end:d}}function A(){function b(){if(!ga){F(!1);q(y,function(a){n.style[a[0]]=a[1]});K(a,c);e.addClass(a,Y);if(p.recalculateTimingStyles){ha=n.className+" "+Z;aa=Ga(n,ha);E=D(n,ha,aa);W=E.maxDelay;I=Math.max(W,0);
-J=E.maxDuration;if(0===J){m();return}p.hasTransitions=0<E.transitionDuration;p.hasAnimations=0<E.animationDuration}p.applyAnimationDelay&&(W="boolean"!==typeof c.delay&&oa(c.delay)?parseFloat(c.delay):W,I=Math.max(W,0),E.animationDelay=W,ca=[ka,W+"s"],y.push(ca),n.style[ca[0]]=ca[1]);N=1E3*I;z=1E3*J;if(c.easing){var k,l=c.easing;p.hasTransitions&&(k=O+"TimingFunction",y.push([k,l]),n.style[k]=l);p.hasAnimations&&(k=U+"TimingFunction",y.push([k,l]),n.style[k]=l)}E.transitionDuration&&x.push(sa);E.animationDuration&&
-x.push(ta);A=Date.now();var v=N+1.5*z;k=A+v;var l=a.data("$$animateCss")||[],r=!0;if(l.length){var G=l[0];(r=k>G.expectedEndTime)?h.cancel(G.timer):l.push(m)}r&&(v=h(d,v,!1),l[0]={timer:v,expectedEndTime:k},l.push(m),a.data("$$animateCss",l));a.on(x.join(" "),g);c.to&&(c.cleanupStyles&&Ea(t,n,Object.keys(c.to)),za(a,c))}}function d(){var b=a.data("$$animateCss");if(b){for(var c=1;c<b.length;c++)b[c]();a.removeData("$$animateCss")}}function g(a){a.stopPropagation();var b=a.originalEvent||a;a=b.$manualTimeStamp||
-b.timeStamp||Date.now();b=parseFloat(b.elapsedTime.toFixed(3));Math.max(a-A,0)>=N&&b>=J&&(va=!0,m())}if(!ga)if(n.parentNode){var A,x=[],l=function(a){if(va)k&&a&&(k=!1,m());else if(k=!a,E.animationDuration)if(a=na(n,k),k)y.push(a);else{var b=y,c=b.indexOf(a);0<=a&&b.splice(c,1)}},v=0<V&&(E.transitionDuration&&0===S.transitionDuration||E.animationDuration&&0===S.animationDuration)&&Math.max(S.animationDelay,S.transitionDelay);v?h(b,Math.floor(v*V*1E3),!1):b();L.resume=function(){l(!0)};L.pause=function(){l(!1)}}else m()}
-var t={},n=B(a);if(!n||!n.parentNode||!u.enabled())return G();c=ia(c);var y=[],r=a.attr("class"),l=Ia(c),ga,k,va,H,L,I,N,J,z;if(0===c.duration||!v.animations&&!v.transitions)return G();var ba=c.event&&X(c.event)?c.event.join(" "):c.event,Q="",P="";ba&&c.structural?Q=T(ba,"ng-",!0):ba&&(Q=ba);c.addClass&&(P+=T(c.addClass,"-add"));c.removeClass&&(P.length&&(P+=" "),P+=T(c.removeClass,"-remove"));c.applyClassesEarly&&P.length&&K(a,c);var Z=[Q,P].join(" ").trim(),ha=r+" "+Z,Y=T(Z,"-active"),r=l.to&&0<
-Object.keys(l.to).length;if(!(0<(c.keyframeStyle||"").length||r||Z))return G();var aa,S;0<c.stagger?(l=parseFloat(c.stagger),S={transitionDelay:l,animationDelay:l,transitionDuration:0,animationDuration:0}):(aa=Ga(n,ha),S=R(n,Z,aa,Qa));c.$$skipPreparationClasses||e.addClass(a,Z);c.transitionStyle&&(l=[O,c.transitionStyle],ea(n,l),y.push(l));0<=c.duration&&(l=0<n.style[O].length,l=Ca(c.duration,l),ea(n,l),y.push(l));c.keyframeStyle&&(l=[U,c.keyframeStyle],ea(n,l),y.push(l));var V=S?0<=c.staggerIndex?
-c.staggerIndex:b.count(aa):0;(ba=0===V)&&!c.skipBlocking&&ja(n,9999);var E=D(n,ha,aa),W=E.maxDelay;I=Math.max(W,0);J=E.maxDuration;var p={};p.hasTransitions=0<E.transitionDuration;p.hasAnimations=0<E.animationDuration;p.hasTransitionAll=p.hasTransitions&&"all"==E.transitionProperty;p.applyTransitionDuration=r&&(p.hasTransitions&&!p.hasTransitionAll||p.hasAnimations&&!p.hasTransitions);p.applyAnimationDuration=c.duration&&p.hasAnimations;p.applyTransitionDelay=oa(c.delay)&&(p.applyTransitionDuration||
-p.hasTransitions);p.applyAnimationDelay=oa(c.delay)&&p.hasAnimations;p.recalculateTimingStyles=0<P.length;if(p.applyTransitionDuration||p.applyAnimationDuration)J=c.duration?parseFloat(c.duration):J,p.applyTransitionDuration&&(p.hasTransitions=!0,E.transitionDuration=J,l=0<n.style[O+"Property"].length,y.push(Ca(J,l))),p.applyAnimationDuration&&(p.hasAnimations=!0,E.animationDuration=J,y.push([ua,J+"s"]));if(0===J&&!p.recalculateTimingStyles)return G();if(null!=c.delay){var ca=parseFloat(c.delay);
-p.applyTransitionDelay&&y.push([fa,ca+"s"]);p.applyAnimationDelay&&y.push([ka,ca+"s"])}null==c.duration&&0<E.transitionDuration&&(p.recalculateTimingStyles=p.recalculateTimingStyles||ba);N=1E3*I;z=1E3*J;c.skipBlocking||(p.blockTransition=0<E.transitionDuration,p.blockKeyframeAnimation=0<E.animationDuration&&0<S.animationDelay&&0===S.animationDuration);c.from&&(c.cleanupStyles&&Ea(t,n,Object.keys(c.from)),ya(a,c));p.blockTransition||p.blockKeyframeAnimation?F(J):c.skipBlocking||ja(n,!1);return{$$willAnimate:!0,
-end:d,start:function(){if(!ga)return L={end:d,cancel:g,resume:null,pause:null},H=new s(L),C(A),H}}}}]}]).provider("$$animateCssDriver",["$$animationProvider",function(a){a.drivers.push("$$animateCssDriver");this.$get=["$animateCss","$rootScope","$$AnimateRunner","$rootElement","$sniffer","$$jqLite","$document",function(a,c,d,e,s,h,g){function v(a){return a.replace(/\bng-\S+\b/g,"")}function r(a,b){I(a)&&(a=a.split(" "));I(b)&&(b=b.split(" "));return a.filter(function(a){return-1===b.indexOf(a)}).join(" ")}
-function u(c,e,g){function h(a){var b={},c=B(a).getBoundingClientRect();q(["width","height","top","left"],function(a){var d=c[a];switch(a){case "top":d+=C.scrollTop;break;case "left":d+=C.scrollLeft}b[a]=Math.floor(d)+"px"});return b}function f(){var c=v(g.attr("class")||""),d=r(c,m),c=r(m,c),d=a(x,{to:h(g),addClass:"ng-anchor-in "+d,removeClass:"ng-anchor-out "+c,delay:!0});return d.$$willAnimate?d:null}function s(){x.remove();e.removeClass("ng-animate-shim");g.removeClass("ng-animate-shim")}var x=
-L(B(e).cloneNode(!0)),m=v(x.attr("class")||"");e.addClass("ng-animate-shim");g.addClass("ng-animate-shim");x.addClass("ng-anchor");D.append(x);var F;c=function(){var c=a(x,{addClass:"ng-anchor-out",delay:!0,from:h(e)});return c.$$willAnimate?c:null}();if(!c&&(F=f(),!F))return s();var G=c||F;return{start:function(){function a(){c&&c.end()}var b,c=G.start();c.done(function(){c=null;if(!F&&(F=f()))return c=F.start(),c.done(function(){c=null;s();b.complete()}),c;s();b.complete()});return b=new d({end:a,
-cancel:a})}}}function H(a,b,c,e){var f=R(a,M),g=R(b,M),h=[];q(e,function(a){(a=u(c,a.out,a["in"]))&&h.push(a)});if(f||g||0!==h.length)return{start:function(){function a(){q(b,function(a){a.end()})}var b=[];f&&b.push(f.start());g&&b.push(g.start());q(h,function(a){b.push(a.start())});var c=new d({end:a,cancel:a});d.all(b,function(a){c.complete(a)});return c}}}function R(c){var d=c.element,e=c.options||{};c.structural&&(e.event=c.event,e.structural=!0,e.applyClassesEarly=!0,"leave"===c.event&&(e.onDone=
-e.domOperation));e.preparationClasses&&(e.event=Y(e.event,e.preparationClasses));c=a(d,e);return c.$$willAnimate?c:null}if(!s.animations&&!s.transitions)return M;var C=g[0].body;c=B(e);var D=L(c.parentNode&&11===c.parentNode.nodeType||C.contains(c)?c:C);N(h);return function(a){return a.from&&a.to?H(a.from,a.to,a.classes,a.anchors):R(a)}}]}]).provider("$$animateJs",["$animateProvider",function(a){this.$get=["$injector","$$AnimateRunner","$$jqLite",function(b,c,d){function e(c){c=X(c)?c:c.split(" ");
-for(var d=[],e={},r=0;r<c.length;r++){var q=c[r],s=a.$$registeredAnimations[q];s&&!e[q]&&(d.push(b.get(s)),e[q]=!0)}return d}var s=N(d);return function(a,b,d,r){function u(){r.domOperation();s(a,r)}function H(a,b,d,e,f){switch(d){case "animate":b=[b,e.from,e.to,f];break;case "setClass":b=[b,D,K,f];break;case "addClass":b=[b,D,f];break;case "removeClass":b=[b,K,f];break;default:b=[b,f]}b.push(e);if(a=a.apply(a,b))if(Fa(a.start)&&(a=a.start()),a instanceof c)a.done(f);else if(Fa(a))return a;return M}
-function B(a,b,d,e,f){var g=[];q(e,function(e){var h=e[f];h&&g.push(function(){var e,f,g=!1,k=function(a){g||(g=!0,(f||M)(a),e.complete(!a))};e=new c({end:function(){k()},cancel:function(){k(!0)}});f=H(h,a,b,d,function(a){k(!1===a)});return e})});return g}function C(a,b,d,e,f){var g=B(a,b,d,e,f);if(0===g.length){var h,l;"beforeSetClass"===f?(h=B(a,"removeClass",d,e,"beforeRemoveClass"),l=B(a,"addClass",d,e,"beforeAddClass")):"setClass"===f&&(h=B(a,"removeClass",d,e,"removeClass"),l=B(a,"addClass",
-d,e,"addClass"));h&&(g=g.concat(h));l&&(g=g.concat(l))}if(0!==g.length)return function(a){var b=[];g.length&&q(g,function(a){b.push(a())});b.length?c.all(b,a):a();return function(a){q(b,function(b){a?b.cancel():b.end()})}}}3===arguments.length&&pa(d)&&(r=d,d=null);r=ia(r);d||(d=a.attr("class")||"",r.addClass&&(d+=" "+r.addClass),r.removeClass&&(d+=" "+r.removeClass));var D=r.addClass,K=r.removeClass,l=e(d),y,w;if(l.length){var f,I;"leave"==b?(I="leave",f="afterLeave"):(I="before"+b.charAt(0).toUpperCase()+
-b.substr(1),f=b);"enter"!==b&&"move"!==b&&(y=C(a,b,r,l,I));w=C(a,b,r,l,f)}if(y||w)return{start:function(){function b(c){f=!0;u();da(a,r);g.complete(c)}var d,e=[];y&&e.push(function(a){d=y(a)});e.length?e.push(function(a){u();a(!0)}):u();w&&e.push(function(a){d=w(a)});var f=!1,g=new c({end:function(){f||((d||M)(void 0),b(void 0))},cancel:function(){f||((d||M)(!0),b(!0))}});c.chain(e,b);return g}}}}]}]).provider("$$animateJsDriver",["$$animationProvider",function(a){a.drivers.push("$$animateJsDriver");
-this.$get=["$$animateJs","$$AnimateRunner",function(a,c){function d(c){return a(c.element,c.event,c.classes,c.options)}return function(a){if(a.from&&a.to){var b=d(a.from),h=d(a.to);if(b||h)return{start:function(){function a(){return function(){q(d,function(a){a.end()})}}var d=[];b&&d.push(b.start());h&&d.push(h.start());c.all(d,function(a){e.complete(a)});var e=new c({end:a(),cancel:a()});return e}}}else return d(a)}}]}])})(window,window.angular);
-//# sourceMappingURL=angular-animate.min.js.map
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-animate.min.js.map b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-animate.min.js.map
deleted file mode 100644
index 11d5fe57..00000000
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-animate.min.js.map
+++ /dev/null
@@ -1,8 +0,0 @@
-{
-"version":3,
-"file":"angular-animate.min.js",
-"lineCount":55,
-"mappings":"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",
-"sources":["angular-animate.js"],
-"names":["window","angular","undefined","assertArg","arg","name","reason","ngMinErr","mergeClasses","a","b","isArray","join","packageStyles","options","styles","to","from","pendClasses","classes","fix","isPrefix","className","isString","length","split","forEach","klass","i","stripCommentsFromElement","element","jqLite","ELEMENT_NODE","nodeType","extractElementNode","elm","$$addClass","$$jqLite","addClass","$$removeClass","removeClass","applyAnimationClassesFactory","prepareAnimationOptions","$$prepared","domOperation","noop","options.domOperation","$$domOperationFired","applyAnimationStyles","applyAnimationFromStyles","applyAnimationToStyles","css","mergeAnimationOptions","target","newOptions","toAdd","toRemove","resolveElementClasses","attr","preparationClasses","concatWithSpace","realDomOperation","extend","existing","splitClassesToLookup","obj","flags","value","key","ADD_CLASS","REMOVE_CLASS","val","prop","allow","getDomNode","applyGeneratedPreparationClasses","event","EVENT_CLASS_PREFIX","ADD_CLASS_SUFFIX","REMOVE_CLASS_SUFFIX","blockTransitions","node","duration","applyInlineStyle","TRANSITION_DELAY_PROP","blockKeyframeAnimations","applyBlock","ANIMATION_PROP","ANIMATION_PLAYSTATE_KEY","styleTuple","style","computeCssStyles","$window","properties","Object","create","detectedStyles","getComputedStyle","formalStyleName","actualStyleName","c","charAt","parseMaxTime","str","maxValue","values","substring","parseFloat","Math","max","truthyTimingValue","getCssTransitionDurationStyle","applyOnlyDuration","TRANSITION_PROP","DURATION_KEY","createLocalCacheLookup","cache","flush","count","entry","total","get","put","registerRestorableStyles","backup","isDefined","getPropertyValue","isObject","isUndefined","isFunction","isElement","TRANSITIONEND_EVENT","ANIMATIONEND_EVENT","ontransitionend","onwebkittransitionend","onanimationend","onwebkitanimationend","ANIMATION_DELAY_PROP","DELAY_KEY","ANIMATION_DURATION_PROP","TRANSITION_DURATION_PROP","DETECT_CSS_PROPERTIES","transitionDuration","transitionDelay","transitionProperty","PROPERTY_KEY","animationDuration","animationDelay","animationIterationCount","ANIMATION_ITERATION_COUNT_KEY","DETECT_STAGGER_CSS_PROPERTIES","module","directive","$$AnimateChildrenDirective","scope","attrs","ngAnimateChildren","data","NG_ANIMATE_CHILDREN_DATA","$observe","factory","$$rAFSchedulerFactory","$$rAF","scheduler","tasks","queue","concat","nextTick","items","shift","cancelFn","waitUntilQuiet","scheduler.waitUntilQuiet","fn","$$AnimateRunnerFactory","$q","$sniffer","$$animateAsyncRun","AnimateRunner","host","setHost","_doneCallbacks","_runInAnimationFrame","_state","chain","AnimateRunner.chain","callback","next","index","response","all","AnimateRunner.all","runners","onProgress","status","runner","done","prototype","DONE_COMPLETE_STATE","push","progress","getPromise","promise","self","resolve","reject","then","resolveHandler","rejectHandler","catch","handler","finally","pause","resume","end","_resolve","cancel","complete","INITIAL_STATE","DONE_PENDING_STATE","$$AnimateAsyncRunFactory","waitForTick","waitQueue","passed","provider","$$AnimateQueueProvider","$animateProvider","isAllowed","ruleType","currentAnimation","previousAnimation","rules","some","hasAnimationClasses","and","skip","newAnimation","structural","RUNNING_STATE","state","nO","cO","$get","$rootScope","$rootElement","$document","$$HashMap","$$animation","$$AnimateRunner","$templateRequest","$$forceReflow","postDigestTaskFactory","postDigestCalled","$$postDigest","findCallbacks","parent","targetNode","targetParentNode","matches","entries","callbackRegistry","contains","queueAnimation","notifyProgress","phase","runInNextPostDigestOrNow","callbacks","close","activeClasses","applyAnimationClasses","isAnimatableClassName","isStructural","indexOf","skipAnimations","animationsEnabled","disabledElementsLookup","existingAnimation","activeAnimationsLookup","hasExistingAnimation","PRE_DIGEST_STATE","areAnimationsAllowed","closeChildAnimations","skipAnimationFlag","cancelAnimationFlag","joinAnimationFlag","isValidAnimation","keys","clearElementAnimationState","counter","markElementAnimationState","animationDetails","animationCancelled","realRunner","children","querySelectorAll","child","parseInt","getAttribute","NG_ANIMATE_ATTR_NAME","remove","removeAttribute","isMatchingElement","nodeOrElmA","nodeOrElmB","parentElement","bodyElement","body","bodyElementDetected","nodeName","rootElementDetected","parentAnimationDetected","animateChildren","parentHost","NG_ANIMATE_PIN_DATA","parentNode","details","setAttribute","newValue","oldValue","deregisterWatch","$watch","totalPendingRequests","isEmpty","classNameFilter","test","on","container","off","filterFromRegistry","list","matchContainer","matchCallback","containerNode","filter","arguments","pin","enabled","bool","argCount","hasElement","recordExists","$$AnimationProvider","getRunner","RUNNER_STORAGE_KEY","drivers","$injector","$$rAFScheduler","sortAnimations","animations","processNode","processed","elementNode","domNode","lookup","parentEntry","tree","animation","flatten","result","remainingLevelEntries","nextLevelEntries","row","childEntry","animationQueue","getAnchorNodes","hasAttribute","NG_ANIMATE_REF_ATTR","SELECTOR","anchors","groupAnimations","preparedAnimations","refLookup","enterOrMove","anchorNodes","direction","anchor","animationID","usedIndicesLookup","anchorGroups","operations","fromAnimation","toAnimation","lookupKey","toString","group","beforeStart","cssClassesIntersection","indexKey","aa","j","invokeFirstDriver","driverName","has","driver","updateAnimationRunners","newRunner","handleDestroyedElement","rejected","removeData","tempClasses","NG_ANIMATE_CLASSNAME","groupedAnimations","toBeSortedAnimations","animationEntry","triggerAnimationStart","startAnimationFn","closeFn","targetElement","operation","start","animationRunner","$AnimateCssProvider","gcsLookup","gcsStaggerLookup","$timeout","$animate","gcsHashFn","extraClasses","parentCounter","computeCachedCssStaggerStyles","cacheKey","stagger","staggerClassName","rafWaitQueue","pageWidth","computeTimings","timings","aD","tD","maxDelay","maxDuration","init","endFn","animationClosed","animationCompleted","animationPaused","$$skipPreparationClasses","temporaryStyles","restoreStyles","setProperty","removeProperty","onDone","applyBlocking","blockTransition","blockKeyframeAnimation","closeAndReturnNoopAnimator","$$willAnimate","recalculateTimingStyles","fullClassName","relativeDelay","hasTransitions","hasAnimations","applyAnimationDelay","delay","delayStyle","maxDelayTime","ONE_SECOND","maxDurationTime","easing","easeProp","easeVal","TIMING_KEY","events","startTime","Date","now","timerTime","CLOSING_TIME_BUFFER","endTime","animationsData","ANIMATE_TIMER_KEY","setupFallbackTimer","currentTimerData","expectedEndTime","timer","onAnimationExpired","onAnimationProgress","cleanupStyles","stopPropagation","ev","originalEvent","timeStamp","$manualTimeStamp","elapsedTime","toFixed","ELAPSED_TIME_MAX_DECIMAL_PLACES","playPause","playAnimation","arr","splice","maxStagger","itemIndex","floor","runnerHost","runnerHost.resume","runnerHost.pause","transitions","method","structuralClassName","addRemoveClassName","applyClassesEarly","trim","ACTIVE_CLASS_SUFFIX","hasToStyles","keyframeStyle","staggerVal","transitionStyle","durationStyle","staggerIndex","isFirst","skipBlocking","SAFE_FAST_FORWARD_DURATION_VALUE","hasTransitionAll","applyTransitionDuration","applyAnimationDuration","applyTransitionDelay","$$AnimateCssDriverProvider","$$animationProvider","$animateCss","filterCssClasses","replace","getUniqueValues","prepareAnchoredAnimation","outAnchor","inAnchor","calculateAnchorStyles","coords","getBoundingClientRect","bodyNode","scrollTop","scrollLeft","prepareInAnimation","endingClasses","startingClasses","animator","clone","NG_ANIMATE_SHIM_CLASS_NAME","cloneNode","NG_ANIMATE_ANCHOR_CLASS_NAME","rootBodyElement","append","animatorIn","animatorOut","prepareOutAnimation","NG_OUT_ANCHOR_CLASS_NAME","startingAnimator","prepareFromToAnchorAnimation","prepareRegularAnimation","anchorAnimations","outElement","inElement","animationRunners","rootNode","initDriverFn","$$AnimateJsProvider","lookupAnimations","flagMap","animationFactory","$$registeredAnimations","applyOptions","executeAnimationFn","args","classesToAdd","classesToRemove","apply","groupEventedAnimations","fnName","ani","endProgressCb","resolved","onAnimationComplete","packageAnimations","startAnimation","animateFn","before","after","afterFn","beforeFn","toUpperCase","substr","onComplete","success","closeActiveAnimations","cancelled","$$AnimateJsDriverProvider","$$animateJs","prepareAnimation","endFnFactory"]
-}
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-messages.min.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-messages.min.js
deleted file mode 100644
index e7f8119d..00000000
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-messages.min.js
+++ /dev/null
@@ -1,12 +0,0 @@
-/*
- AngularJS v1.4.8
- (c) 2010-2015 Google, Inc. http://angularjs.org
- License: MIT
-*/
-(function(z,h,A){'use strict';function m(h){return["$animate",function(r){return{restrict:"AE",transclude:"element",terminal:!0,require:"^^ngMessages",link:function(n,f,a,g,l){var c=f[0],p,h=a.ngMessage||a.when;a=a.ngMessageExp||a.whenExp;var k=function(b){p=b?v(b)?b:b.split(/[\s,]+/):null;g.reRender()};a?(k(n.$eval(a)),n.$watchCollection(a,k)):k(h);var e,q;g.register(c,q={test:function(b){var a=p;b=a?v(a)?0<=a.indexOf(b):a.hasOwnProperty(b):void 0;return b},attach:function(){e||l(n,function(b){r.enter(b,
-null,f);e=b;var a=e.$$attachId=g.getAttachId();e.on("$destroy",function(){e&&e.$$attachId===a&&(g.deregister(c),q.detach())})})},detach:function(){if(e){var b=e;e=null;r.leave(b)}}})}}}]}var v=h.isArray,w=h.forEach,x=h.isString,y=h.element;h.module("ngMessages",[]).directive("ngMessages",["$animate",function(h){function r(f,a){return x(a)&&0===a.length||n(f.$eval(a))}function n(f){return x(f)?f.length:!!f}return{require:"ngMessages",restrict:"AE",controller:["$element","$scope","$attrs",function(f,
-a,g){function l(b,a){for(var d=a,f=[];d&&d!==b;){var c=d.$$ngMessageNode;if(c&&c.length)return k[c];d.childNodes.length&&-1==f.indexOf(d)?(f.push(d),d=d.childNodes[d.childNodes.length-1]):d=d.previousSibling||d.parentNode}}var c=this,p=0,m=0;this.getAttachId=function(){return m++};var k=this.messages={},e,q;this.render=function(b){b=b||{};e=!1;q=b;for(var p=r(a,g.ngMessagesMultiple)||r(a,g.multiple),d=[],k={},s=c.head,l=!1,m=0;null!=s;){m++;var t=s.message,u=!1;l||w(b,function(a,b){!u&&n(a)&&t.test(b)&&
-!k[b]&&(u=k[b]=!0,t.attach())});u?l=!p:d.push(t);s=s.next}w(d,function(b){b.detach()});d.length!==m?h.setClass(f,"ng-active","ng-inactive"):h.setClass(f,"ng-inactive","ng-active")};a.$watchCollection(g.ngMessages||g["for"],c.render);this.reRender=function(){e||(e=!0,a.$evalAsync(function(){e&&q&&c.render(q)}))};this.register=function(b,a){var d=p.toString();k[d]={message:a};var e=f[0],g=k[d];c.head?(e=l(e,b))?(g.next=e.next,e.next=g):(g.next=c.head,c.head=g):c.head=g;b.$$ngMessageNode=d;p++;c.reRender()};
-this.deregister=function(b){var a=b.$$ngMessageNode;delete b.$$ngMessageNode;var d=k[a];(b=l(f[0],b))?b.next=d.next:c.head=d.next;delete k[a];c.reRender()}}]}}]).directive("ngMessagesInclude",["$templateRequest","$document","$compile",function(h,m,n){return{restrict:"AE",require:"^^ngMessages",link:function(f,a,g){var l=g.ngMessagesInclude||g.src;h(l).then(function(c){n(c)(f,function(c){a.after(c);c=y(m[0].createComment(" ngMessagesInclude: "+l+" "));a.after(c);a.remove()})})}}}]).directive("ngMessage",
-m("AE")).directive("ngMessageExp",m("A"))})(window,window.angular);
-//# sourceMappingURL=angular-messages.min.js.map
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-messages.min.js.map b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-messages.min.js.map
deleted file mode 100644
index 506e76c0..00000000
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-messages.min.js.map
+++ /dev/null
@@ -1,8 +0,0 @@
-{
-"version":3,
-"file":"angular-messages.min.js",
-"lineCount":11,
-"mappings":"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",
-"sources":["angular-messages.js"],
-"names":["window","angular","undefined","ngMessageDirectiveFactory","restrict","$animate","transclude","terminal","require","link","scope","element","attrs","ngMessagesCtrl","$transclude","commentNode","records","staticExp","ngMessage","when","dynamicExp","ngMessageExp","whenExp","assignRecords","items","isArray","split","reRender","$eval","$watchCollection","currentElement","messageCtrl","register","test","name","collection","indexOf","hasOwnProperty","attach","elm","enter","$$attachId","getAttachId","on","deregister","detach","leave","forEach","isString","jqLite","module","directive","isAttrTruthy","attr","length","truthy","val","controller","$element","$scope","$attrs","findPreviousMessage","parent","comment","prevNode","parentLookup","prevKey","$$ngMessageNode","messages","childNodes","push","previousSibling","parentNode","ctrl","latestKey","nextAttachId","this.getAttachId","renderLater","cachedCollection","render","this.render","multiple","ngMessagesMultiple","unmatchedMessages","matchedKeys","messageItem","head","messageFound","totalMessages","message","messageUsed","value","key","next","setClass","ACTIVE_CLASS","INACTIVE_CLASS","ngMessages","this.reRender","$evalAsync","this.register","nextKey","toString","messageNode","match","this.deregister","$templateRequest","$document","$compile","src","ngMessagesInclude","then","html","contents","after","anchor","createComment","remove"]
-}
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-resource.min.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-resource.min.js
deleted file mode 100644
index c3fb7aab..00000000
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-resource.min.js
+++ /dev/null
@@ -1,14 +0,0 @@
-/*
- AngularJS v1.4.8
- (c) 2010-2015 Google, Inc. http://angularjs.org
- License: MIT
-*/
-(function(I,f,C){'use strict';function D(t,e){e=e||{};f.forEach(e,function(f,k){delete e[k]});for(var k in t)!t.hasOwnProperty(k)||"$"===k.charAt(0)&&"$"===k.charAt(1)||(e[k]=t[k]);return e}var y=f.$$minErr("$resource"),B=/^(\.[a-zA-Z_$@][0-9a-zA-Z_$@]*)+$/;f.module("ngResource",["ng"]).provider("$resource",function(){var t=/^https?:\/\/[^\/]*/,e=this;this.defaults={stripTrailingSlashes:!0,actions:{get:{method:"GET"},save:{method:"POST"},query:{method:"GET",isArray:!0},remove:{method:"DELETE"},"delete":{method:"DELETE"}}};
-this.$get=["$http","$q",function(k,F){function w(f,g){this.template=f;this.defaults=r({},e.defaults,g);this.urlParams={}}function z(l,g,s,h){function c(a,q){var c={};q=r({},g,q);u(q,function(b,q){x(b)&&(b=b());var m;if(b&&b.charAt&&"@"==b.charAt(0)){m=a;var d=b.substr(1);if(null==d||""===d||"hasOwnProperty"===d||!B.test("."+d))throw y("badmember",d);for(var d=d.split("."),n=0,g=d.length;n<g&&f.isDefined(m);n++){var e=d[n];m=null!==m?m[e]:C}}else m=b;c[q]=m});return c}function G(a){return a.resource}
-function d(a){D(a||{},this)}var t=new w(l,h);s=r({},e.defaults.actions,s);d.prototype.toJSON=function(){var a=r({},this);delete a.$promise;delete a.$resolved;return a};u(s,function(a,q){var g=/^(POST|PUT|PATCH)$/i.test(a.method);d[q]=function(b,A,m,e){var n={},h,l,s;switch(arguments.length){case 4:s=e,l=m;case 3:case 2:if(x(A)){if(x(b)){l=b;s=A;break}l=A;s=m}else{n=b;h=A;l=m;break}case 1:x(b)?l=b:g?h=b:n=b;break;case 0:break;default:throw y("badargs",arguments.length);}var w=this instanceof d,p=w?
-h:a.isArray?[]:new d(h),v={},z=a.interceptor&&a.interceptor.response||G,B=a.interceptor&&a.interceptor.responseError||C;u(a,function(a,b){switch(b){default:v[b]=H(a);break;case "params":case "isArray":case "interceptor":break;case "timeout":v[b]=a}});g&&(v.data=h);t.setUrlParams(v,r({},c(h,a.params||{}),n),a.url);n=k(v).then(function(b){var c=b.data,m=p.$promise;if(c){if(f.isArray(c)!==!!a.isArray)throw y("badcfg",q,a.isArray?"array":"object",f.isArray(c)?"array":"object",v.method,v.url);a.isArray?
-(p.length=0,u(c,function(b){"object"===typeof b?p.push(new d(b)):p.push(b)})):(D(c,p),p.$promise=m)}p.$resolved=!0;b.resource=p;return b},function(b){p.$resolved=!0;(s||E)(b);return F.reject(b)});n=n.then(function(b){var a=z(b);(l||E)(a,b.headers);return a},B);return w?n:(p.$promise=n,p.$resolved=!1,p)};d.prototype["$"+q]=function(b,a,c){x(b)&&(c=a,a=b,b={});b=d[q].call(this,b,this,a,c);return b.$promise||b}});d.bind=function(a){return z(l,r({},g,a),s)};return d}var E=f.noop,u=f.forEach,r=f.extend,
-H=f.copy,x=f.isFunction;w.prototype={setUrlParams:function(l,g,e){var h=this,c=e||h.template,k,d,r="",a=h.urlParams={};u(c.split(/\W/),function(d){if("hasOwnProperty"===d)throw y("badname");!/^\d+$/.test(d)&&d&&(new RegExp("(^|[^\\\\]):"+d+"(\\W|$)")).test(c)&&(a[d]=!0)});c=c.replace(/\\:/g,":");c=c.replace(t,function(a){r=a;return""});g=g||{};u(h.urlParams,function(a,e){k=g.hasOwnProperty(e)?g[e]:h.defaults[e];f.isDefined(k)&&null!==k?(d=encodeURIComponent(k).replace(/%40/gi,"@").replace(/%3A/gi,
-":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"%20").replace(/%26/gi,"&").replace(/%3D/gi,"=").replace(/%2B/gi,"+"),c=c.replace(new RegExp(":"+e+"(\\W|$)","g"),function(b,a){return d+a})):c=c.replace(new RegExp("(/?):"+e+"(\\W|$)","g"),function(b,a,c){return"/"==c.charAt(0)?c:a+c})});h.defaults.stripTrailingSlashes&&(c=c.replace(/\/+$/,"")||"/");c=c.replace(/\/\.(?=\w+($|\?))/,".");l.url=r+c.replace(/\/\\\./,"/.");u(g,function(a,c){h.urlParams[c]||(l.params=l.params||{},l.params[c]=
-a)})}};return z}]})})(window,window.angular);
-//# sourceMappingURL=angular-resource.min.js.map
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-resource.min.js.map b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-resource.min.js.map
deleted file mode 100644
index c2302084..00000000
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-resource.min.js.map
+++ /dev/null
@@ -1,8 +0,0 @@
-{
-"version":3,
-"file":"angular-resource.min.js",
-"lineCount":13,
-"mappings":"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",
-"sources":["angular-resource.js"],
-"names":["window","angular","undefined","shallowClearAndCopy","src","dst","forEach","value","key","hasOwnProperty","charAt","$resourceMinErr","$$minErr","MEMBER_NAME_REGEX","module","provider","PROTOCOL_AND_DOMAIN_REGEX","defaults","stripTrailingSlashes","actions","method","isArray","$get","$http","$q","Route","template","extend","urlParams","resourceFactory","url","paramDefaults","options","extractParams","data","actionParams","ids","isFunction","path","test","keys","split","i","ii","length","isDefined","obj","defaultResponseInterceptor","response","resource","Resource","route","prototype","toJSON","Resource.prototype.toJSON","$promise","$resolved","action","name","hasBody","a1","a2","a3","a4","params","success","error","arguments","isInstanceCall","httpConfig","responseInterceptor","interceptor","responseErrorInterceptor","responseError","copy","setUrlParams","promise","then","item","push","noop","reject","headers","result","call","bind","Resource.bind","additionalParamDefaults","config","actionUrl","self","val","encodedVal","protocolAndDomain","param","RegExp","replace","match","_","urlParam","encodeURIComponent","p1","leadingSlashes","tail"]
-}
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-route.min.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-route.min.js
deleted file mode 100644
index 3c5fd343..00000000
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-route.min.js
+++ /dev/null
@@ -1,15 +0,0 @@
-/*
- AngularJS v1.4.8
- (c) 2010-2015 Google, Inc. http://angularjs.org
- License: MIT
-*/
-(function(p,c,C){'use strict';function v(r,h,g){return{restrict:"ECA",terminal:!0,priority:400,transclude:"element",link:function(a,f,b,d,y){function z(){k&&(g.cancel(k),k=null);l&&(l.$destroy(),l=null);m&&(k=g.leave(m),k.then(function(){k=null}),m=null)}function x(){var b=r.current&&r.current.locals;if(c.isDefined(b&&b.$template)){var b=a.$new(),d=r.current;m=y(b,function(b){g.enter(b,null,m||f).then(function(){!c.isDefined(t)||t&&!a.$eval(t)||h()});z()});l=d.scope=b;l.$emit("$viewContentLoaded");
-l.$eval(w)}else z()}var l,m,k,t=b.autoscroll,w=b.onload||"";a.$on("$routeChangeSuccess",x);x()}}}function A(c,h,g){return{restrict:"ECA",priority:-400,link:function(a,f){var b=g.current,d=b.locals;f.html(d.$template);var y=c(f.contents());b.controller&&(d.$scope=a,d=h(b.controller,d),b.controllerAs&&(a[b.controllerAs]=d),f.data("$ngControllerController",d),f.children().data("$ngControllerController",d));y(a)}}}p=c.module("ngRoute",["ng"]).provider("$route",function(){function r(a,f){return c.extend(Object.create(a),
-f)}function h(a,c){var b=c.caseInsensitiveMatch,d={originalPath:a,regexp:a},g=d.keys=[];a=a.replace(/([().])/g,"\\$1").replace(/(\/)?:(\w+)([\?\*])?/g,function(a,c,b,d){a="?"===d?d:null;d="*"===d?d:null;g.push({name:b,optional:!!a});c=c||"";return""+(a?"":c)+"(?:"+(a?c:"")+(d&&"(.+?)"||"([^/]+)")+(a||"")+")"+(a||"")}).replace(/([\/$\*])/g,"\\$1");d.regexp=new RegExp("^"+a+"$",b?"i":"");return d}var g={};this.when=function(a,f){var b=c.copy(f);c.isUndefined(b.reloadOnSearch)&&(b.reloadOnSearch=!0);
-c.isUndefined(b.caseInsensitiveMatch)&&(b.caseInsensitiveMatch=this.caseInsensitiveMatch);g[a]=c.extend(b,a&&h(a,b));if(a){var d="/"==a[a.length-1]?a.substr(0,a.length-1):a+"/";g[d]=c.extend({redirectTo:a},h(d,b))}return this};this.caseInsensitiveMatch=!1;this.otherwise=function(a){"string"===typeof a&&(a={redirectTo:a});this.when(null,a);return this};this.$get=["$rootScope","$location","$routeParams","$q","$injector","$templateRequest","$sce",function(a,f,b,d,h,p,x){function l(b){var e=s.current;
-(v=(n=k())&&e&&n.$$route===e.$$route&&c.equals(n.pathParams,e.pathParams)&&!n.reloadOnSearch&&!w)||!e&&!n||a.$broadcast("$routeChangeStart",n,e).defaultPrevented&&b&&b.preventDefault()}function m(){var u=s.current,e=n;if(v)u.params=e.params,c.copy(u.params,b),a.$broadcast("$routeUpdate",u);else if(e||u)w=!1,(s.current=e)&&e.redirectTo&&(c.isString(e.redirectTo)?f.path(t(e.redirectTo,e.params)).search(e.params).replace():f.url(e.redirectTo(e.pathParams,f.path(),f.search())).replace()),d.when(e).then(function(){if(e){var a=
-c.extend({},e.resolve),b,f;c.forEach(a,function(b,e){a[e]=c.isString(b)?h.get(b):h.invoke(b,null,null,e)});c.isDefined(b=e.template)?c.isFunction(b)&&(b=b(e.params)):c.isDefined(f=e.templateUrl)&&(c.isFunction(f)&&(f=f(e.params)),c.isDefined(f)&&(e.loadedTemplateUrl=x.valueOf(f),b=p(f)));c.isDefined(b)&&(a.$template=b);return d.all(a)}}).then(function(f){e==s.current&&(e&&(e.locals=f,c.copy(e.params,b)),a.$broadcast("$routeChangeSuccess",e,u))},function(b){e==s.current&&a.$broadcast("$routeChangeError",
-e,u,b)})}function k(){var a,b;c.forEach(g,function(d,g){var q;if(q=!b){var h=f.path();q=d.keys;var l={};if(d.regexp)if(h=d.regexp.exec(h)){for(var k=1,m=h.length;k<m;++k){var n=q[k-1],p=h[k];n&&p&&(l[n.name]=p)}q=l}else q=null;else q=null;q=a=q}q&&(b=r(d,{params:c.extend({},f.search(),a),pathParams:a}),b.$$route=d)});return b||g[null]&&r(g[null],{params:{},pathParams:{}})}function t(a,b){var d=[];c.forEach((a||"").split(":"),function(a,c){if(0===c)d.push(a);else{var f=a.match(/(\w+)(?:[?*])?(.*)/),
-g=f[1];d.push(b[g]);d.push(f[2]||"");delete b[g]}});return d.join("")}var w=!1,n,v,s={routes:g,reload:function(){w=!0;a.$evalAsync(function(){l();m()})},updateParams:function(a){if(this.current&&this.current.$$route)a=c.extend({},this.current.params,a),f.path(t(this.current.$$route.originalPath,a)),f.search(a);else throw B("norout");}};a.$on("$locationChangeStart",l);a.$on("$locationChangeSuccess",m);return s}]});var B=c.$$minErr("ngRoute");p.provider("$routeParams",function(){this.$get=function(){return{}}});
-p.directive("ngView",v);p.directive("ngView",A);v.$inject=["$route","$anchorScroll","$animate"];A.$inject=["$compile","$controller","$route"]})(window,window.angular);
-//# sourceMappingURL=angular-route.min.js.map
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-route.min.js.map b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-route.min.js.map
deleted file mode 100644
index c0b2f5ca..00000000
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular-route.min.js.map
+++ /dev/null
@@ -1,8 +0,0 @@
-{
-"version":3,
-"file":"angular-route.min.js",
-"lineCount":14,
-"mappings":"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",
-"sources":["angular-route.js"],
-"names":["window","angular","undefined","ngViewFactory","$route","$anchorScroll","$animate","restrict","terminal","priority","transclude","link","scope","$element","attr","ctrl","$transclude","cleanupLastView","previousLeaveAnimation","cancel","currentScope","$destroy","currentElement","leave","then","update","locals","current","isDefined","$template","newScope","$new","clone","enter","onNgViewEnter","autoScrollExp","$eval","$emit","onloadExp","autoscroll","onload","$on","ngViewFillContentFactory","$compile","$controller","html","contents","controller","$scope","controllerAs","data","children","ngRouteModule","module","provider","$RouteProvider","inherit","parent","extra","extend","Object","create","pathRegExp","path","opts","insensitive","caseInsensitiveMatch","ret","originalPath","regexp","keys","replace","_","slash","key","option","optional","star","push","name","RegExp","routes","when","this.when","route","routeCopy","copy","isUndefined","reloadOnSearch","redirectPath","length","substr","redirectTo","otherwise","this.otherwise","params","$get","$rootScope","$location","$routeParams","$q","$injector","$templateRequest","$sce","prepareRoute","$locationEvent","lastRoute","preparedRouteIsUpdateOnly","preparedRoute","parseRoute","$$route","equals","pathParams","forceReload","$broadcast","defaultPrevented","preventDefault","commitRoute","nextRoute","isString","interpolate","search","url","resolve","template","templateUrl","forEach","value","get","invoke","isFunction","loadedTemplateUrl","valueOf","all","error","match","m","exec","on","i","len","val","string","result","split","segment","segmentMatch","join","reload","$evalAsync","updateParams","newParams","$routeMinErr","$$minErr","$RouteParamsProvider","this.$get","directive","$inject"]
-}
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular.min.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular.min.js
deleted file mode 100644
index b4f9b07e..00000000
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular.min.js
+++ /dev/null
@@ -1,295 +0,0 @@
-/*
- AngularJS v1.4.8
- (c) 2010-2015 Google, Inc. http://angularjs.org
- License: MIT
-*/
-(function(S,X,u){'use strict';function G(a){return function(){var b=arguments[0],d;d="["+(a?a+":":"")+b+"] http://errors.angularjs.org/1.4.8/"+(a?a+"/":"")+b;for(b=1;b<arguments.length;b++){d=d+(1==b?"?":"&")+"p"+(b-1)+"=";var c=encodeURIComponent,e;e=arguments[b];e="function"==typeof e?e.toString().replace(/ \{[\s\S]*$/,""):"undefined"==typeof e?"undefined":"string"!=typeof e?JSON.stringify(e):e;d+=c(e)}return Error(d)}}function za(a){if(null==a||Xa(a))return!1;if(I(a)||E(a)||B&&a instanceof B)return!0;
-var b="length"in Object(a)&&a.length;return Q(b)&&(0<=b&&b-1 in a||"function"==typeof a.item)}function n(a,b,d){var c,e;if(a)if(z(a))for(c in a)"prototype"==c||"length"==c||"name"==c||a.hasOwnProperty&&!a.hasOwnProperty(c)||b.call(d,a[c],c,a);else if(I(a)||za(a)){var f="object"!==typeof a;c=0;for(e=a.length;c<e;c++)(f||c in a)&&b.call(d,a[c],c,a)}else if(a.forEach&&a.forEach!==n)a.forEach(b,d,a);else if(nc(a))for(c in a)b.call(d,a[c],c,a);else if("function"===typeof a.hasOwnProperty)for(c in a)a.hasOwnProperty(c)&&
-b.call(d,a[c],c,a);else for(c in a)qa.call(a,c)&&b.call(d,a[c],c,a);return a}function oc(a,b,d){for(var c=Object.keys(a).sort(),e=0;e<c.length;e++)b.call(d,a[c[e]],c[e]);return c}function pc(a){return function(b,d){a(d,b)}}function Td(){return++nb}function Mb(a,b,d){for(var c=a.$$hashKey,e=0,f=b.length;e<f;++e){var g=b[e];if(H(g)||z(g))for(var h=Object.keys(g),k=0,l=h.length;k<l;k++){var m=h[k],r=g[m];d&&H(r)?da(r)?a[m]=new Date(r.valueOf()):Ma(r)?a[m]=new RegExp(r):r.nodeName?a[m]=r.cloneNode(!0):
-Nb(r)?a[m]=r.clone():(H(a[m])||(a[m]=I(r)?[]:{}),Mb(a[m],[r],!0)):a[m]=r}}c?a.$$hashKey=c:delete a.$$hashKey;return a}function M(a){return Mb(a,ra.call(arguments,1),!1)}function Ud(a){return Mb(a,ra.call(arguments,1),!0)}function ea(a){return parseInt(a,10)}function Ob(a,b){return M(Object.create(a),b)}function x(){}function Ya(a){return a}function na(a){return function(){return a}}function qc(a){return z(a.toString)&&a.toString!==sa}function q(a){return"undefined"===typeof a}function y(a){return"undefined"!==
-typeof a}function H(a){return null!==a&&"object"===typeof a}function nc(a){return null!==a&&"object"===typeof a&&!rc(a)}function E(a){return"string"===typeof a}function Q(a){return"number"===typeof a}function da(a){return"[object Date]"===sa.call(a)}function z(a){return"function"===typeof a}function Ma(a){return"[object RegExp]"===sa.call(a)}function Xa(a){return a&&a.window===a}function Za(a){return a&&a.$evalAsync&&a.$watch}function $a(a){return"boolean"===typeof a}function sc(a){return a&&Q(a.length)&&
-Vd.test(sa.call(a))}function Nb(a){return!(!a||!(a.nodeName||a.prop&&a.attr&&a.find))}function Wd(a){var b={};a=a.split(",");var d;for(d=0;d<a.length;d++)b[a[d]]=!0;return b}function ta(a){return F(a.nodeName||a[0]&&a[0].nodeName)}function ab(a,b){var d=a.indexOf(b);0<=d&&a.splice(d,1);return d}function bb(a,b){function d(a,b){var d=b.$$hashKey,e;if(I(a)){e=0;for(var f=a.length;e<f;e++)b.push(c(a[e]))}else if(nc(a))for(e in a)b[e]=c(a[e]);else if(a&&"function"===typeof a.hasOwnProperty)for(e in a)a.hasOwnProperty(e)&&
-(b[e]=c(a[e]));else for(e in a)qa.call(a,e)&&(b[e]=c(a[e]));d?b.$$hashKey=d:delete b.$$hashKey;return b}function c(a){if(!H(a))return a;var b=e.indexOf(a);if(-1!==b)return f[b];if(Xa(a)||Za(a))throw Aa("cpws");var b=!1,c;I(a)?(c=[],b=!0):sc(a)?c=new a.constructor(a):da(a)?c=new Date(a.getTime()):Ma(a)?(c=new RegExp(a.source,a.toString().match(/[^\/]*$/)[0]),c.lastIndex=a.lastIndex):z(a.cloneNode)?c=a.cloneNode(!0):(c=Object.create(rc(a)),b=!0);e.push(a);f.push(c);return b?d(a,c):c}var e=[],f=[];if(b){if(sc(b))throw Aa("cpta");
-if(a===b)throw Aa("cpi");I(b)?b.length=0:n(b,function(a,c){"$$hashKey"!==c&&delete b[c]});e.push(a);f.push(b);return d(a,b)}return c(a)}function ia(a,b){if(I(a)){b=b||[];for(var d=0,c=a.length;d<c;d++)b[d]=a[d]}else if(H(a))for(d in b=b||{},a)if("$"!==d.charAt(0)||"$"!==d.charAt(1))b[d]=a[d];return b||a}function ma(a,b){if(a===b)return!0;if(null===a||null===b)return!1;if(a!==a&&b!==b)return!0;var d=typeof a,c;if(d==typeof b&&"object"==d)if(I(a)){if(!I(b))return!1;if((d=a.length)==b.length){for(c=
-0;c<d;c++)if(!ma(a[c],b[c]))return!1;return!0}}else{if(da(a))return da(b)?ma(a.getTime(),b.getTime()):!1;if(Ma(a))return Ma(b)?a.toString()==b.toString():!1;if(Za(a)||Za(b)||Xa(a)||Xa(b)||I(b)||da(b)||Ma(b))return!1;d=$();for(c in a)if("$"!==c.charAt(0)&&!z(a[c])){if(!ma(a[c],b[c]))return!1;d[c]=!0}for(c in b)if(!(c in d)&&"$"!==c.charAt(0)&&y(b[c])&&!z(b[c]))return!1;return!0}return!1}function cb(a,b,d){return a.concat(ra.call(b,d))}function tc(a,b){var d=2<arguments.length?ra.call(arguments,2):
-[];return!z(b)||b instanceof RegExp?b:d.length?function(){return arguments.length?b.apply(a,cb(d,arguments,0)):b.apply(a,d)}:function(){return arguments.length?b.apply(a,arguments):b.call(a)}}function Xd(a,b){var d=b;"string"===typeof a&&"$"===a.charAt(0)&&"$"===a.charAt(1)?d=u:Xa(b)?d="$WINDOW":b&&X===b?d="$DOCUMENT":Za(b)&&(d="$SCOPE");return d}function db(a,b){if("undefined"===typeof a)return u;Q(b)||(b=b?2:null);return JSON.stringify(a,Xd,b)}function uc(a){return E(a)?JSON.parse(a):a}function vc(a,
-b){var d=Date.parse("Jan 01, 1970 00:00:00 "+a)/6E4;return isNaN(d)?b:d}function Pb(a,b,d){d=d?-1:1;var c=vc(b,a.getTimezoneOffset());b=a;a=d*(c-a.getTimezoneOffset());b=new Date(b.getTime());b.setMinutes(b.getMinutes()+a);return b}function ua(a){a=B(a).clone();try{a.empty()}catch(b){}var d=B("<div>").append(a).html();try{return a[0].nodeType===Na?F(d):d.match(/^(<[^>]+>)/)[1].replace(/^<([\w\-]+)/,function(a,b){return"<"+F(b)})}catch(c){return F(d)}}function wc(a){try{return decodeURIComponent(a)}catch(b){}}
-function xc(a){var b={};n((a||"").split("&"),function(a){var c,e,f;a&&(e=a=a.replace(/\+/g,"%20"),c=a.indexOf("="),-1!==c&&(e=a.substring(0,c),f=a.substring(c+1)),e=wc(e),y(e)&&(f=y(f)?wc(f):!0,qa.call(b,e)?I(b[e])?b[e].push(f):b[e]=[b[e],f]:b[e]=f))});return b}function Qb(a){var b=[];n(a,function(a,c){I(a)?n(a,function(a){b.push(ja(c,!0)+(!0===a?"":"="+ja(a,!0)))}):b.push(ja(c,!0)+(!0===a?"":"="+ja(a,!0)))});return b.length?b.join("&"):""}function ob(a){return ja(a,!0).replace(/%26/gi,"&").replace(/%3D/gi,
-"=").replace(/%2B/gi,"+")}function ja(a,b){return encodeURIComponent(a).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%3B/gi,";").replace(/%20/g,b?"%20":"+")}function Yd(a,b){var d,c,e=Oa.length;for(c=0;c<e;++c)if(d=Oa[c]+b,E(d=a.getAttribute(d)))return d;return null}function Zd(a,b){var d,c,e={};n(Oa,function(b){b+="app";!d&&a.hasAttribute&&a.hasAttribute(b)&&(d=a,c=a.getAttribute(b))});n(Oa,function(b){b+="app";var e;!d&&(e=a.querySelector("["+b.replace(":",
-"\\:")+"]"))&&(d=e,c=e.getAttribute(b))});d&&(e.strictDi=null!==Yd(d,"strict-di"),b(d,c?[c]:[],e))}function yc(a,b,d){H(d)||(d={});d=M({strictDi:!1},d);var c=function(){a=B(a);if(a.injector()){var c=a[0]===X?"document":ua(a);throw Aa("btstrpd",c.replace(/</,"&lt;").replace(/>/,"&gt;"));}b=b||[];b.unshift(["$provide",function(b){b.value("$rootElement",a)}]);d.debugInfoEnabled&&b.push(["$compileProvider",function(a){a.debugInfoEnabled(!0)}]);b.unshift("ng");c=eb(b,d.strictDi);c.invoke(["$rootScope",
-"$rootElement","$compile","$injector",function(a,b,c,d){a.$apply(function(){b.data("$injector",d);c(b)(a)})}]);return c},e=/^NG_ENABLE_DEBUG_INFO!/,f=/^NG_DEFER_BOOTSTRAP!/;S&&e.test(S.name)&&(d.debugInfoEnabled=!0,S.name=S.name.replace(e,""));if(S&&!f.test(S.name))return c();S.name=S.name.replace(f,"");fa.resumeBootstrap=function(a){n(a,function(a){b.push(a)});return c()};z(fa.resumeDeferredBootstrap)&&fa.resumeDeferredBootstrap()}function $d(){S.name="NG_ENABLE_DEBUG_INFO!"+S.name;S.location.reload()}
-function ae(a){a=fa.element(a).injector();if(!a)throw Aa("test");return a.get("$$testability")}function zc(a,b){b=b||"_";return a.replace(be,function(a,c){return(c?b:"")+a.toLowerCase()})}function ce(){var a;if(!Ac){var b=pb();(oa=q(b)?S.jQuery:b?S[b]:u)&&oa.fn.on?(B=oa,M(oa.fn,{scope:Pa.scope,isolateScope:Pa.isolateScope,controller:Pa.controller,injector:Pa.injector,inheritedData:Pa.inheritedData}),a=oa.cleanData,oa.cleanData=function(b){var c;if(Rb)Rb=!1;else for(var e=0,f;null!=(f=b[e]);e++)(c=
-oa._data(f,"events"))&&c.$destroy&&oa(f).triggerHandler("$destroy");a(b)}):B=N;fa.element=B;Ac=!0}}function qb(a,b,d){if(!a)throw Aa("areq",b||"?",d||"required");return a}function Qa(a,b,d){d&&I(a)&&(a=a[a.length-1]);qb(z(a),b,"not a function, got "+(a&&"object"===typeof a?a.constructor.name||"Object":typeof a));return a}function Ra(a,b){if("hasOwnProperty"===a)throw Aa("badname",b);}function Bc(a,b,d){if(!b)return a;b=b.split(".");for(var c,e=a,f=b.length,g=0;g<f;g++)c=b[g],a&&(a=(e=a)[c]);return!d&&
-z(a)?tc(e,a):a}function rb(a){for(var b=a[0],d=a[a.length-1],c,e=1;b!==d&&(b=b.nextSibling);e++)if(c||a[e]!==b)c||(c=B(ra.call(a,0,e))),c.push(b);return c||a}function $(){return Object.create(null)}function de(a){function b(a,b,c){return a[b]||(a[b]=c())}var d=G("$injector"),c=G("ng");a=b(a,"angular",Object);a.$$minErr=a.$$minErr||G;return b(a,"module",function(){var a={};return function(f,g,h){if("hasOwnProperty"===f)throw c("badname","module");g&&a.hasOwnProperty(f)&&(a[f]=null);return b(a,f,function(){function a(b,
-d,e,f){f||(f=c);return function(){f[e||"push"]([b,d,arguments]);return v}}function b(a,d){return function(b,e){e&&z(e)&&(e.$$moduleName=f);c.push([a,d,arguments]);return v}}if(!g)throw d("nomod",f);var c=[],e=[],t=[],A=a("$injector","invoke","push",e),v={_invokeQueue:c,_configBlocks:e,_runBlocks:t,requires:g,name:f,provider:b("$provide","provider"),factory:b("$provide","factory"),service:b("$provide","service"),value:a("$provide","value"),constant:a("$provide","constant","unshift"),decorator:b("$provide",
-"decorator"),animation:b("$animateProvider","register"),filter:b("$filterProvider","register"),controller:b("$controllerProvider","register"),directive:b("$compileProvider","directive"),config:A,run:function(a){t.push(a);return this}};h&&A(h);return v})}})}function ee(a){M(a,{bootstrap:yc,copy:bb,extend:M,merge:Ud,equals:ma,element:B,forEach:n,injector:eb,noop:x,bind:tc,toJson:db,fromJson:uc,identity:Ya,isUndefined:q,isDefined:y,isString:E,isFunction:z,isObject:H,isNumber:Q,isElement:Nb,isArray:I,
-version:fe,isDate:da,lowercase:F,uppercase:sb,callbacks:{counter:0},getTestability:ae,$$minErr:G,$$csp:Ba,reloadWithDebugInfo:$d});Sb=de(S);Sb("ng",["ngLocale"],["$provide",function(a){a.provider({$$sanitizeUri:ge});a.provider("$compile",Cc).directive({a:he,input:Dc,textarea:Dc,form:ie,script:je,select:ke,style:le,option:me,ngBind:ne,ngBindHtml:oe,ngBindTemplate:pe,ngClass:qe,ngClassEven:re,ngClassOdd:se,ngCloak:te,ngController:ue,ngForm:ve,ngHide:we,ngIf:xe,ngInclude:ye,ngInit:ze,ngNonBindable:Ae,
-ngPluralize:Be,ngRepeat:Ce,ngShow:De,ngStyle:Ee,ngSwitch:Fe,ngSwitchWhen:Ge,ngSwitchDefault:He,ngOptions:Ie,ngTransclude:Je,ngModel:Ke,ngList:Le,ngChange:Me,pattern:Ec,ngPattern:Ec,required:Fc,ngRequired:Fc,minlength:Gc,ngMinlength:Gc,maxlength:Hc,ngMaxlength:Hc,ngValue:Ne,ngModelOptions:Oe}).directive({ngInclude:Pe}).directive(tb).directive(Ic);a.provider({$anchorScroll:Qe,$animate:Re,$animateCss:Se,$$animateQueue:Te,$$AnimateRunner:Ue,$browser:Ve,$cacheFactory:We,$controller:Xe,$document:Ye,$exceptionHandler:Ze,
-$filter:Jc,$$forceReflow:$e,$interpolate:af,$interval:bf,$http:cf,$httpParamSerializer:df,$httpParamSerializerJQLike:ef,$httpBackend:ff,$xhrFactory:gf,$location:hf,$log:jf,$parse:kf,$rootScope:lf,$q:mf,$$q:nf,$sce:of,$sceDelegate:pf,$sniffer:qf,$templateCache:rf,$templateRequest:sf,$$testability:tf,$timeout:uf,$window:vf,$$rAF:wf,$$jqLite:xf,$$HashMap:yf,$$cookieReader:zf})}])}function fb(a){return a.replace(Af,function(a,d,c,e){return e?c.toUpperCase():c}).replace(Bf,"Moz$1")}function Kc(a){a=a.nodeType;
-return 1===a||!a||9===a}function Lc(a,b){var d,c,e=b.createDocumentFragment(),f=[];if(Tb.test(a)){d=d||e.appendChild(b.createElement("div"));c=(Cf.exec(a)||["",""])[1].toLowerCase();c=ka[c]||ka._default;d.innerHTML=c[1]+a.replace(Df,"<$1></$2>")+c[2];for(c=c[0];c--;)d=d.lastChild;f=cb(f,d.childNodes);d=e.firstChild;d.textContent=""}else f.push(b.createTextNode(a));e.textContent="";e.innerHTML="";n(f,function(a){e.appendChild(a)});return e}function N(a){if(a instanceof N)return a;var b;E(a)&&(a=U(a),
-b=!0);if(!(this instanceof N)){if(b&&"<"!=a.charAt(0))throw Ub("nosel");return new N(a)}if(b){b=X;var d;a=(d=Ef.exec(a))?[b.createElement(d[1])]:(d=Lc(a,b))?d.childNodes:[]}Mc(this,a)}function Vb(a){return a.cloneNode(!0)}function ub(a,b){b||vb(a);if(a.querySelectorAll)for(var d=a.querySelectorAll("*"),c=0,e=d.length;c<e;c++)vb(d[c])}function Nc(a,b,d,c){if(y(c))throw Ub("offargs");var e=(c=wb(a))&&c.events,f=c&&c.handle;if(f)if(b){var g=function(b){var c=e[b];y(d)&&ab(c||[],d);y(d)&&c&&0<c.length||
-(a.removeEventListener(b,f,!1),delete e[b])};n(b.split(" "),function(a){g(a);xb[a]&&g(xb[a])})}else for(b in e)"$destroy"!==b&&a.removeEventListener(b,f,!1),delete e[b]}function vb(a,b){var d=a.ng339,c=d&&gb[d];c&&(b?delete c.data[b]:(c.handle&&(c.events.$destroy&&c.handle({},"$destroy"),Nc(a)),delete gb[d],a.ng339=u))}function wb(a,b){var d=a.ng339,d=d&&gb[d];b&&!d&&(a.ng339=d=++Ff,d=gb[d]={events:{},data:{},handle:u});return d}function Wb(a,b,d){if(Kc(a)){var c=y(d),e=!c&&b&&!H(b),f=!b;a=(a=wb(a,
-!e))&&a.data;if(c)a[b]=d;else{if(f)return a;if(e)return a&&a[b];M(a,b)}}}function yb(a,b){return a.getAttribute?-1<(" "+(a.getAttribute("class")||"")+" ").replace(/[\n\t]/g," ").indexOf(" "+b+" "):!1}function zb(a,b){b&&a.setAttribute&&n(b.split(" "),function(b){a.setAttribute("class",U((" "+(a.getAttribute("class")||"")+" ").replace(/[\n\t]/g," ").replace(" "+U(b)+" "," ")))})}function Ab(a,b){if(b&&a.setAttribute){var d=(" "+(a.getAttribute("class")||"")+" ").replace(/[\n\t]/g," ");n(b.split(" "),
-function(a){a=U(a);-1===d.indexOf(" "+a+" ")&&(d+=a+" ")});a.setAttribute("class",U(d))}}function Mc(a,b){if(b)if(b.nodeType)a[a.length++]=b;else{var d=b.length;if("number"===typeof d&&b.window!==b){if(d)for(var c=0;c<d;c++)a[a.length++]=b[c]}else a[a.length++]=b}}function Oc(a,b){return Bb(a,"$"+(b||"ngController")+"Controller")}function Bb(a,b,d){9==a.nodeType&&(a=a.documentElement);for(b=I(b)?b:[b];a;){for(var c=0,e=b.length;c<e;c++)if(y(d=B.data(a,b[c])))return d;a=a.parentNode||11===a.nodeType&&
-a.host}}function Pc(a){for(ub(a,!0);a.firstChild;)a.removeChild(a.firstChild)}function Xb(a,b){b||ub(a);var d=a.parentNode;d&&d.removeChild(a)}function Gf(a,b){b=b||S;if("complete"===b.document.readyState)b.setTimeout(a);else B(b).on("load",a)}function Qc(a,b){var d=Cb[b.toLowerCase()];return d&&Rc[ta(a)]&&d}function Hf(a,b){var d=function(c,d){c.isDefaultPrevented=function(){return c.defaultPrevented};var f=b[d||c.type],g=f?f.length:0;if(g){if(q(c.immediatePropagationStopped)){var h=c.stopImmediatePropagation;
-c.stopImmediatePropagation=function(){c.immediatePropagationStopped=!0;c.stopPropagation&&c.stopPropagation();h&&h.call(c)}}c.isImmediatePropagationStopped=function(){return!0===c.immediatePropagationStopped};var k=f.specialHandlerWrapper||If;1<g&&(f=ia(f));for(var l=0;l<g;l++)c.isImmediatePropagationStopped()||k(a,c,f[l])}};d.elem=a;return d}function If(a,b,d){d.call(a,b)}function Jf(a,b,d){var c=b.relatedTarget;c&&(c===a||Kf.call(a,c))||d.call(a,b)}function xf(){this.$get=function(){return M(N,
-{hasClass:function(a,b){a.attr&&(a=a[0]);return yb(a,b)},addClass:function(a,b){a.attr&&(a=a[0]);return Ab(a,b)},removeClass:function(a,b){a.attr&&(a=a[0]);return zb(a,b)}})}}function Ca(a,b){var d=a&&a.$$hashKey;if(d)return"function"===typeof d&&(d=a.$$hashKey()),d;d=typeof a;return d="function"==d||"object"==d&&null!==a?a.$$hashKey=d+":"+(b||Td)():d+":"+a}function Sa(a,b){if(b){var d=0;this.nextUid=function(){return++d}}n(a,this.put,this)}function Lf(a){return(a=a.toString().replace(Sc,"").match(Tc))?
-"function("+(a[1]||"").replace(/[\s\r\n]+/," ")+")":"fn"}function eb(a,b){function d(a){return function(b,c){if(H(b))n(b,pc(a));else return a(b,c)}}function c(a,b){Ra(a,"service");if(z(b)||I(b))b=t.instantiate(b);if(!b.$get)throw Da("pget",a);return r[a+"Provider"]=b}function e(a,b){return function(){var c=v.invoke(b,this);if(q(c))throw Da("undef",a);return c}}function f(a,b,d){return c(a,{$get:!1!==d?e(a,b):b})}function g(a){qb(q(a)||I(a),"modulesToLoad","not an array");var b=[],c;n(a,function(a){function d(a){var b,
-c;b=0;for(c=a.length;b<c;b++){var e=a[b],f=t.get(e[0]);f[e[1]].apply(f,e[2])}}if(!m.get(a)){m.put(a,!0);try{E(a)?(c=Sb(a),b=b.concat(g(c.requires)).concat(c._runBlocks),d(c._invokeQueue),d(c._configBlocks)):z(a)?b.push(t.invoke(a)):I(a)?b.push(t.invoke(a)):Qa(a,"module")}catch(e){throw I(a)&&(a=a[a.length-1]),e.message&&e.stack&&-1==e.stack.indexOf(e.message)&&(e=e.message+"\n"+e.stack),Da("modulerr",a,e.stack||e.message||e);}}});return b}function h(a,c){function d(b,e){if(a.hasOwnProperty(b)){if(a[b]===
-k)throw Da("cdep",b+" <- "+l.join(" <- "));return a[b]}try{return l.unshift(b),a[b]=k,a[b]=c(b,e)}catch(f){throw a[b]===k&&delete a[b],f;}finally{l.shift()}}function e(a,c,f,g){"string"===typeof f&&(g=f,f=null);var h=[],k=eb.$$annotate(a,b,g),l,m,t;m=0;for(l=k.length;m<l;m++){t=k[m];if("string"!==typeof t)throw Da("itkn",t);h.push(f&&f.hasOwnProperty(t)?f[t]:d(t,g))}I(a)&&(a=a[l]);return a.apply(c,h)}return{invoke:e,instantiate:function(a,b,c){var d=Object.create((I(a)?a[a.length-1]:a).prototype||
-null);a=e(a,d,b,c);return H(a)||z(a)?a:d},get:d,annotate:eb.$$annotate,has:function(b){return r.hasOwnProperty(b+"Provider")||a.hasOwnProperty(b)}}}b=!0===b;var k={},l=[],m=new Sa([],!0),r={$provide:{provider:d(c),factory:d(f),service:d(function(a,b){return f(a,["$injector",function(a){return a.instantiate(b)}])}),value:d(function(a,b){return f(a,na(b),!1)}),constant:d(function(a,b){Ra(a,"constant");r[a]=b;A[a]=b}),decorator:function(a,b){var c=t.get(a+"Provider"),d=c.$get;c.$get=function(){var a=
-v.invoke(d,c);return v.invoke(b,null,{$delegate:a})}}}},t=r.$injector=h(r,function(a,b){fa.isString(b)&&l.push(b);throw Da("unpr",l.join(" <- "));}),A={},v=A.$injector=h(A,function(a,b){var c=t.get(a+"Provider",b);return v.invoke(c.$get,c,u,a)});n(g(a),function(a){a&&v.invoke(a)});return v}function Qe(){var a=!0;this.disableAutoScrolling=function(){a=!1};this.$get=["$window","$location","$rootScope",function(b,d,c){function e(a){var b=null;Array.prototype.some.call(a,function(a){if("a"===ta(a))return b=
-a,!0});return b}function f(a){if(a){a.scrollIntoView();var c;c=g.yOffset;z(c)?c=c():Nb(c)?(c=c[0],c="fixed"!==b.getComputedStyle(c).position?0:c.getBoundingClientRect().bottom):Q(c)||(c=0);c&&(a=a.getBoundingClientRect().top,b.scrollBy(0,a-c))}else b.scrollTo(0,0)}function g(a){a=E(a)?a:d.hash();var b;a?(b=h.getElementById(a))?f(b):(b=e(h.getElementsByName(a)))?f(b):"top"===a&&f(null):f(null)}var h=b.document;a&&c.$watch(function(){return d.hash()},function(a,b){a===b&&""===a||Gf(function(){c.$evalAsync(g)})});
-return g}]}function hb(a,b){if(!a&&!b)return"";if(!a)return b;if(!b)return a;I(a)&&(a=a.join(" "));I(b)&&(b=b.join(" "));return a+" "+b}function Mf(a){E(a)&&(a=a.split(" "));var b=$();n(a,function(a){a.length&&(b[a]=!0)});return b}function Ea(a){return H(a)?a:{}}function Nf(a,b,d,c){function e(a){try{a.apply(null,ra.call(arguments,1))}finally{if(v--,0===v)for(;T.length;)try{T.pop()()}catch(b){d.error(b)}}}function f(){L=null;g();h()}function g(){a:{try{p=m.state;break a}catch(a){}p=void 0}p=q(p)?
-null:p;ma(p,J)&&(p=J);J=p}function h(){if(w!==k.url()||C!==p)w=k.url(),C=p,n(aa,function(a){a(k.url(),p)})}var k=this,l=a.location,m=a.history,r=a.setTimeout,t=a.clearTimeout,A={};k.isMock=!1;var v=0,T=[];k.$$completeOutstandingRequest=e;k.$$incOutstandingRequestCount=function(){v++};k.notifyWhenNoOutstandingRequests=function(a){0===v?a():T.push(a)};var p,C,w=l.href,ga=b.find("base"),L=null;g();C=p;k.url=function(b,d,e){q(e)&&(e=null);l!==a.location&&(l=a.location);m!==a.history&&(m=a.history);if(b){var f=
-C===e;if(w===b&&(!c.history||f))return k;var h=w&&Fa(w)===Fa(b);w=b;C=e;if(!c.history||h&&f){if(!h||L)L=b;d?l.replace(b):h?(d=l,e=b.indexOf("#"),e=-1===e?"":b.substr(e),d.hash=e):l.href=b;l.href!==b&&(L=b)}else m[d?"replaceState":"pushState"](e,"",b),g(),C=p;return k}return L||l.href.replace(/%27/g,"'")};k.state=function(){return p};var aa=[],D=!1,J=null;k.onUrlChange=function(b){if(!D){if(c.history)B(a).on("popstate",f);B(a).on("hashchange",f);D=!0}aa.push(b);return b};k.$$applicationDestroyed=function(){B(a).off("hashchange popstate",
-f)};k.$$checkUrlChange=h;k.baseHref=function(){var a=ga.attr("href");return a?a.replace(/^(https?\:)?\/\/[^\/]*/,""):""};k.defer=function(a,b){var c;v++;c=r(function(){delete A[c];e(a)},b||0);A[c]=!0;return c};k.defer.cancel=function(a){return A[a]?(delete A[a],t(a),e(x),!0):!1}}function Ve(){this.$get=["$window","$log","$sniffer","$document",function(a,b,d,c){return new Nf(a,c,b,d)}]}function We(){this.$get=function(){function a(a,c){function e(a){a!=r&&(t?t==a&&(t=a.n):t=a,f(a.n,a.p),f(a,r),r=a,
-r.n=null)}function f(a,b){a!=b&&(a&&(a.p=b),b&&(b.n=a))}if(a in b)throw G("$cacheFactory")("iid",a);var g=0,h=M({},c,{id:a}),k=$(),l=c&&c.capacity||Number.MAX_VALUE,m=$(),r=null,t=null;return b[a]={put:function(a,b){if(!q(b)){if(l<Number.MAX_VALUE){var c=m[a]||(m[a]={key:a});e(c)}a in k||g++;k[a]=b;g>l&&this.remove(t.key);return b}},get:function(a){if(l<Number.MAX_VALUE){var b=m[a];if(!b)return;e(b)}return k[a]},remove:function(a){if(l<Number.MAX_VALUE){var b=m[a];if(!b)return;b==r&&(r=b.p);b==t&&
-(t=b.n);f(b.n,b.p);delete m[a]}a in k&&(delete k[a],g--)},removeAll:function(){k=$();g=0;m=$();r=t=null},destroy:function(){m=h=k=null;delete b[a]},info:function(){return M({},h,{size:g})}}}var b={};a.info=function(){var a={};n(b,function(b,e){a[e]=b.info()});return a};a.get=function(a){return b[a]};return a}}function rf(){this.$get=["$cacheFactory",function(a){return a("templates")}]}function Cc(a,b){function d(a,b,c){var d=/^\s*([@&]|=(\*?))(\??)\s*(\w*)\s*$/,e={};n(a,function(a,f){var g=a.match(d);
-if(!g)throw ha("iscp",b,f,a,c?"controller bindings definition":"isolate scope definition");e[f]={mode:g[1][0],collection:"*"===g[2],optional:"?"===g[3],attrName:g[4]||f}});return e}function c(a){var b=a.charAt(0);if(!b||b!==F(b))throw ha("baddir",a);if(a!==a.trim())throw ha("baddir",a);}var e={},f=/^\s*directive\:\s*([\w\-]+)\s+(.*)$/,g=/(([\w\-]+)(?:\:([^;]+))?;?)/,h=Wd("ngSrc,ngSrcset,src,srcset"),k=/^(?:(\^\^?)?(\?)?(\^\^?)?)?/,l=/^(on[a-z]+|formaction)$/;this.directive=function t(b,f){Ra(b,"directive");
-E(b)?(c(b),qb(f,"directiveFactory"),e.hasOwnProperty(b)||(e[b]=[],a.factory(b+"Directive",["$injector","$exceptionHandler",function(a,c){var f=[];n(e[b],function(e,g){try{var h=a.invoke(e);z(h)?h={compile:na(h)}:!h.compile&&h.link&&(h.compile=na(h.link));h.priority=h.priority||0;h.index=g;h.name=h.name||b;h.require=h.require||h.controller&&h.name;h.restrict=h.restrict||"EA";var k=h,l=h,m=h.name,t={isolateScope:null,bindToController:null};H(l.scope)&&(!0===l.bindToController?(t.bindToController=d(l.scope,
-m,!0),t.isolateScope={}):t.isolateScope=d(l.scope,m,!1));H(l.bindToController)&&(t.bindToController=d(l.bindToController,m,!0));if(H(t.bindToController)){var v=l.controller,R=l.controllerAs;if(!v)throw ha("noctrl",m);var V;a:if(R&&E(R))V=R;else{if(E(v)){var n=Uc.exec(v);if(n){V=n[3];break a}}V=void 0}if(!V)throw ha("noident",m);}var s=k.$$bindings=t;H(s.isolateScope)&&(h.$$isolateBindings=s.isolateScope);h.$$moduleName=e.$$moduleName;f.push(h)}catch(u){c(u)}});return f}])),e[b].push(f)):n(b,pc(t));
-return this};this.aHrefSanitizationWhitelist=function(a){return y(a)?(b.aHrefSanitizationWhitelist(a),this):b.aHrefSanitizationWhitelist()};this.imgSrcSanitizationWhitelist=function(a){return y(a)?(b.imgSrcSanitizationWhitelist(a),this):b.imgSrcSanitizationWhitelist()};var m=!0;this.debugInfoEnabled=function(a){return y(a)?(m=a,this):m};this.$get=["$injector","$interpolate","$exceptionHandler","$templateRequest","$parse","$controller","$rootScope","$document","$sce","$animate","$$sanitizeUri",function(a,
-b,c,d,p,C,w,ga,L,aa,D){function J(a,b){try{a.addClass(b)}catch(c){}}function K(a,b,c,d,e){a instanceof B||(a=B(a));n(a,function(b,c){b.nodeType==Na&&b.nodeValue.match(/\S+/)&&(a[c]=B(b).wrap("<span></span>").parent()[0])});var f=O(a,b,a,c,d,e);K.$$addScopeClass(a);var g=null;return function(b,c,d){qb(b,"scope");e&&e.needsNewScope&&(b=b.$parent.$new());d=d||{};var h=d.parentBoundTranscludeFn,k=d.transcludeControllers;d=d.futureParentElement;h&&h.$$boundTransclude&&(h=h.$$boundTransclude);g||(g=(d=
-d&&d[0])?"foreignobject"!==ta(d)&&d.toString().match(/SVG/)?"svg":"html":"html");d="html"!==g?B(Yb(g,B("<div>").append(a).html())):c?Pa.clone.call(a):a;if(k)for(var l in k)d.data("$"+l+"Controller",k[l].instance);K.$$addScopeInfo(d,b);c&&c(d,b);f&&f(b,d,d,h);return d}}function O(a,b,c,d,e,f){function g(a,c,d,e){var f,k,l,m,t,w,D;if(p)for(D=Array(c.length),m=0;m<h.length;m+=3)f=h[m],D[f]=c[f];else D=c;m=0;for(t=h.length;m<t;)k=D[h[m++]],c=h[m++],f=h[m++],c?(c.scope?(l=a.$new(),K.$$addScopeInfo(B(k),
-l)):l=a,w=c.transcludeOnThisElement?R(a,c.transclude,e):!c.templateOnThisElement&&e?e:!e&&b?R(a,b):null,c(f,l,k,d,w)):f&&f(a,k.childNodes,u,e)}for(var h=[],k,l,m,t,p,w=0;w<a.length;w++){k=new fa;l=V(a[w],[],k,0===w?d:u,e);(f=l.length?Z(l,a[w],k,b,c,null,[],[],f):null)&&f.scope&&K.$$addScopeClass(k.$$element);k=f&&f.terminal||!(m=a[w].childNodes)||!m.length?null:O(m,f?(f.transcludeOnThisElement||!f.templateOnThisElement)&&f.transclude:b);if(f||k)h.push(w,f,k),t=!0,p=p||f;f=null}return t?g:null}function R(a,
-b,c){return function(d,e,f,g,h){d||(d=a.$new(!1,h),d.$$transcluded=!0);return b(d,e,{parentBoundTranscludeFn:c,transcludeControllers:f,futureParentElement:g})}}function V(a,b,c,d,e){var h=c.$attr,k;switch(a.nodeType){case 1:P(b,va(ta(a)),"E",d,e);for(var l,m,t,p=a.attributes,w=0,D=p&&p.length;w<D;w++){var K=!1,A=!1;l=p[w];k=l.name;m=U(l.value);l=va(k);if(t=ka.test(l))k=k.replace(Vc,"").substr(8).replace(/_(.)/g,function(a,b){return b.toUpperCase()});(l=l.match(la))&&G(l[1])&&(K=k,A=k.substr(0,k.length-
-5)+"end",k=k.substr(0,k.length-6));l=va(k.toLowerCase());h[l]=k;if(t||!c.hasOwnProperty(l))c[l]=m,Qc(a,l)&&(c[l]=!0);W(a,b,m,l,t);P(b,l,"A",d,e,K,A)}a=a.className;H(a)&&(a=a.animVal);if(E(a)&&""!==a)for(;k=g.exec(a);)l=va(k[2]),P(b,l,"C",d,e)&&(c[l]=U(k[3])),a=a.substr(k.index+k[0].length);break;case Na:if(11===Ha)for(;a.parentNode&&a.nextSibling&&a.nextSibling.nodeType===Na;)a.nodeValue+=a.nextSibling.nodeValue,a.parentNode.removeChild(a.nextSibling);N(b,a.nodeValue);break;case 8:try{if(k=f.exec(a.nodeValue))l=
-va(k[1]),P(b,l,"M",d,e)&&(c[l]=U(k[2]))}catch(R){}}b.sort(Ia);return b}function Ta(a,b,c){var d=[],e=0;if(b&&a.hasAttribute&&a.hasAttribute(b)){do{if(!a)throw ha("uterdir",b,c);1==a.nodeType&&(a.hasAttribute(b)&&e++,a.hasAttribute(c)&&e--);d.push(a);a=a.nextSibling}while(0<e)}else d.push(a);return B(d)}function s(a,b,c){return function(d,e,f,g,h){e=Ta(e[0],b,c);return a(d,e,f,g,h)}}function Z(a,b,d,e,f,g,h,l,m){function t(a,b,c,d){if(a){c&&(a=s(a,c,d));a.require=q.require;a.directiveName=x;if(O===
-q||q.$$isolateScope)a=ca(a,{isolateScope:!0});h.push(a)}if(b){c&&(b=s(b,c,d));b.require=q.require;b.directiveName=x;if(O===q||q.$$isolateScope)b=ca(b,{isolateScope:!0});l.push(b)}}function p(a,b,c,d){var e;if(E(b)){var f=b.match(k);b=b.substring(f[0].length);var g=f[1]||f[3],f="?"===f[2];"^^"===g?c=c.parent():e=(e=d&&d[b])&&e.instance;e||(d="$"+b+"Controller",e=g?c.inheritedData(d):c.data(d));if(!e&&!f)throw ha("ctreq",b,a);}else if(I(b))for(e=[],g=0,f=b.length;g<f;g++)e[g]=p(a,b[g],c,d);return e||
-null}function w(a,b,c,d,e,f){var g=$(),h;for(h in d){var k=d[h],l={$scope:k===O||k.$$isolateScope?e:f,$element:a,$attrs:b,$transclude:c},m=k.controller;"@"==m&&(m=b[k.name]);l=C(m,l,!0,k.controllerAs);g[k.name]=l;aa||a.data("$"+k.name+"Controller",l.instance)}return g}function D(a,c,e,f,g){function k(a,b,c){var d;Za(a)||(c=b,b=a,a=u);aa&&(d=v);c||(c=aa?V.parent():V);return g(a,b,d,c,Ta)}var m,t,A,v,C,V,Ga;b===e?(f=d,V=d.$$element):(V=B(e),f=new fa(V,d));A=c;O?t=c.$new(!0):R&&(A=c.$parent);g&&(C=k,
-C.$$boundTransclude=g);T&&(v=w(V,f,C,T,t,c));O&&(K.$$addScopeInfo(V,t,!0,!(J&&(J===O||J===O.$$originalDirective))),K.$$addScopeClass(V,!0),t.$$isolateBindings=O.$$isolateBindings,(Ga=ba(c,f,t,t.$$isolateBindings,O))&&t.$on("$destroy",Ga));for(var n in v){Ga=T[n];var ga=v[n],L=Ga.$$bindings.bindToController;ga.identifier&&L&&(m=ba(A,f,ga.instance,L,Ga));var q=ga();q!==ga.instance&&(ga.instance=q,V.data("$"+Ga.name+"Controller",q),m&&m(),m=ba(A,f,ga.instance,L,Ga))}F=0;for(M=h.length;F<M;F++)m=h[F],
-ea(m,m.isolateScope?t:c,V,f,m.require&&p(m.directiveName,m.require,V,v),C);var Ta=c;O&&(O.template||null===O.templateUrl)&&(Ta=t);a&&a(Ta,e.childNodes,u,g);for(F=l.length-1;0<=F;F--)m=l[F],ea(m,m.isolateScope?t:c,V,f,m.require&&p(m.directiveName,m.require,V,v),C)}m=m||{};for(var A=-Number.MAX_VALUE,R=m.newScopeDirective,T=m.controllerDirectives,O=m.newIsolateScopeDirective,J=m.templateDirective,n=m.nonTlbTranscludeDirective,ga=!1,L=!1,aa=m.hasElementTranscludeDirective,Z=d.$$element=B(b),q,x,P,Ia=
-e,G,F=0,M=a.length;F<M;F++){q=a[F];var N=q.$$start,Q=q.$$end;N&&(Z=Ta(b,N,Q));P=u;if(A>q.priority)break;if(P=q.scope)q.templateUrl||(H(P)?(Ua("new/isolated scope",O||R,q,Z),O=q):Ua("new/isolated scope",O,q,Z)),R=R||q;x=q.name;!q.templateUrl&&q.controller&&(P=q.controller,T=T||$(),Ua("'"+x+"' controller",T[x],q,Z),T[x]=q);if(P=q.transclude)ga=!0,q.$$tlb||(Ua("transclusion",n,q,Z),n=q),"element"==P?(aa=!0,A=q.priority,P=Z,Z=d.$$element=B(X.createComment(" "+x+": "+d[x]+" ")),b=Z[0],Y(f,ra.call(P,0),
-b),Ia=K(P,e,A,g&&g.name,{nonTlbTranscludeDirective:n})):(P=B(Vb(b)).contents(),Z.empty(),Ia=K(P,e,u,u,{needsNewScope:q.$$isolateScope||q.$$newScope}));if(q.template)if(L=!0,Ua("template",J,q,Z),J=q,P=z(q.template)?q.template(Z,d):q.template,P=ja(P),q.replace){g=q;P=Tb.test(P)?Xc(Yb(q.templateNamespace,U(P))):[];b=P[0];if(1!=P.length||1!==b.nodeType)throw ha("tplrt",x,"");Y(f,Z,b);P={$attr:{}};var Wc=V(b,[],P),W=a.splice(F+1,a.length-(F+1));(O||R)&&y(Wc,O,R);a=a.concat(Wc).concat(W);S(d,P);M=a.length}else Z.html(P);
-if(q.templateUrl)L=!0,Ua("template",J,q,Z),J=q,q.replace&&(g=q),D=Of(a.splice(F,a.length-F),Z,d,f,ga&&Ia,h,l,{controllerDirectives:T,newScopeDirective:R!==q&&R,newIsolateScopeDirective:O,templateDirective:J,nonTlbTranscludeDirective:n}),M=a.length;else if(q.compile)try{G=q.compile(Z,d,Ia),z(G)?t(null,G,N,Q):G&&t(G.pre,G.post,N,Q)}catch(da){c(da,ua(Z))}q.terminal&&(D.terminal=!0,A=Math.max(A,q.priority))}D.scope=R&&!0===R.scope;D.transcludeOnThisElement=ga;D.templateOnThisElement=L;D.transclude=Ia;
-m.hasElementTranscludeDirective=aa;return D}function y(a,b,c){for(var d=0,e=a.length;d<e;d++)a[d]=Ob(a[d],{$$isolateScope:b,$$newScope:c})}function P(b,d,f,g,h,k,l){if(d===h)return null;h=null;if(e.hasOwnProperty(d)){var m;d=a.get(d+"Directive");for(var p=0,w=d.length;p<w;p++)try{m=d[p],(q(g)||g>m.priority)&&-1!=m.restrict.indexOf(f)&&(k&&(m=Ob(m,{$$start:k,$$end:l})),b.push(m),h=m)}catch(D){c(D)}}return h}function G(b){if(e.hasOwnProperty(b))for(var c=a.get(b+"Directive"),d=0,f=c.length;d<f;d++)if(b=
-c[d],b.multiElement)return!0;return!1}function S(a,b){var c=b.$attr,d=a.$attr,e=a.$$element;n(a,function(d,e){"$"!=e.charAt(0)&&(b[e]&&b[e]!==d&&(d+=("style"===e?";":" ")+b[e]),a.$set(e,d,!0,c[e]))});n(b,function(b,f){"class"==f?(J(e,b),a["class"]=(a["class"]?a["class"]+" ":"")+b):"style"==f?(e.attr("style",e.attr("style")+";"+b),a.style=(a.style?a.style+";":"")+b):"$"==f.charAt(0)||a.hasOwnProperty(f)||(a[f]=b,d[f]=c[f])})}function Of(a,b,c,e,f,g,h,k){var l=[],m,t,p=b[0],w=a.shift(),D=Ob(w,{templateUrl:null,
-transclude:null,replace:null,$$originalDirective:w}),A=z(w.templateUrl)?w.templateUrl(b,c):w.templateUrl,K=w.templateNamespace;b.empty();d(A).then(function(d){var T,v;d=ja(d);if(w.replace){d=Tb.test(d)?Xc(Yb(K,U(d))):[];T=d[0];if(1!=d.length||1!==T.nodeType)throw ha("tplrt",w.name,A);d={$attr:{}};Y(e,b,T);var C=V(T,[],d);H(w.scope)&&y(C,!0);a=C.concat(a);S(c,d)}else T=p,b.html(d);a.unshift(D);m=Z(a,T,c,f,b,w,g,h,k);n(e,function(a,c){a==T&&(e[c]=b[0])});for(t=O(b[0].childNodes,f);l.length;){d=l.shift();
-v=l.shift();var ga=l.shift(),L=l.shift(),C=b[0];if(!d.$$destroyed){if(v!==p){var q=v.className;k.hasElementTranscludeDirective&&w.replace||(C=Vb(T));Y(ga,B(v),C);J(B(C),q)}v=m.transcludeOnThisElement?R(d,m.transclude,L):L;m(t,d,C,e,v)}}l=null});return function(a,b,c,d,e){a=e;b.$$destroyed||(l?l.push(b,c,d,a):(m.transcludeOnThisElement&&(a=R(b,m.transclude,e)),m(t,b,c,d,a)))}}function Ia(a,b){var c=b.priority-a.priority;return 0!==c?c:a.name!==b.name?a.name<b.name?-1:1:a.index-b.index}function Ua(a,
-b,c,d){function e(a){return a?" (module: "+a+")":""}if(b)throw ha("multidir",b.name,e(b.$$moduleName),c.name,e(c.$$moduleName),a,ua(d));}function N(a,c){var d=b(c,!0);d&&a.push({priority:0,compile:function(a){a=a.parent();var b=!!a.length;b&&K.$$addBindingClass(a);return function(a,c){var e=c.parent();b||K.$$addBindingClass(e);K.$$addBindingInfo(e,d.expressions);a.$watch(d,function(a){c[0].nodeValue=a})}}})}function Yb(a,b){a=F(a||"html");switch(a){case "svg":case "math":var c=X.createElement("div");
-c.innerHTML="<"+a+">"+b+"</"+a+">";return c.childNodes[0].childNodes;default:return b}}function Q(a,b){if("srcdoc"==b)return L.HTML;var c=ta(a);if("xlinkHref"==b||"form"==c&&"action"==b||"img"!=c&&("src"==b||"ngSrc"==b))return L.RESOURCE_URL}function W(a,c,d,e,f){var g=Q(a,e);f=h[e]||f;var k=b(d,!0,g,f);if(k){if("multiple"===e&&"select"===ta(a))throw ha("selmulti",ua(a));c.push({priority:100,compile:function(){return{pre:function(a,c,h){c=h.$$observers||(h.$$observers=$());if(l.test(e))throw ha("nodomevents");
-var m=h[e];m!==d&&(k=m&&b(m,!0,g,f),d=m);k&&(h[e]=k(a),(c[e]||(c[e]=[])).$$inter=!0,(h.$$observers&&h.$$observers[e].$$scope||a).$watch(k,function(a,b){"class"===e&&a!=b?h.$updateClass(a,b):h.$set(e,a)}))}}}})}}function Y(a,b,c){var d=b[0],e=b.length,f=d.parentNode,g,h;if(a)for(g=0,h=a.length;g<h;g++)if(a[g]==d){a[g++]=c;h=g+e-1;for(var k=a.length;g<k;g++,h++)h<k?a[g]=a[h]:delete a[g];a.length-=e-1;a.context===d&&(a.context=c);break}f&&f.replaceChild(c,d);a=X.createDocumentFragment();a.appendChild(d);
-B.hasData(d)&&(B.data(c,B.data(d)),oa?(Rb=!0,oa.cleanData([d])):delete B.cache[d[B.expando]]);d=1;for(e=b.length;d<e;d++)f=b[d],B(f).remove(),a.appendChild(f),delete b[d];b[0]=c;b.length=1}function ca(a,b){return M(function(){return a.apply(null,arguments)},a,b)}function ea(a,b,d,e,f,g){try{a(b,d,e,f,g)}catch(h){c(h,ua(d))}}function ba(a,c,d,e,f){var g=[];n(e,function(e,h){var k=e.attrName,l=e.optional,m,t,w,D;switch(e.mode){case "@":l||qa.call(c,k)||(d[h]=c[k]=void 0);c.$observe(k,function(a){E(a)&&
-(d[h]=a)});c.$$observers[k].$$scope=a;E(c[k])&&(d[h]=b(c[k])(a));break;case "=":if(!qa.call(c,k)){if(l)break;c[k]=void 0}if(l&&!c[k])break;t=p(c[k]);D=t.literal?ma:function(a,b){return a===b||a!==a&&b!==b};w=t.assign||function(){m=d[h]=t(a);throw ha("nonassign",c[k],f.name);};m=d[h]=t(a);l=function(b){D(b,d[h])||(D(b,m)?w(a,b=d[h]):d[h]=b);return m=b};l.$stateful=!0;l=e.collection?a.$watchCollection(c[k],l):a.$watch(p(c[k],l),null,t.literal);g.push(l);break;case "&":t=c.hasOwnProperty(k)?p(c[k]):
-x;if(t===x&&l)break;d[h]=function(b){return t(a,b)}}});return g.length&&function(){for(var a=0,b=g.length;a<b;++a)g[a]()}}var fa=function(a,b){if(b){var c=Object.keys(b),d,e,f;d=0;for(e=c.length;d<e;d++)f=c[d],this[f]=b[f]}else this.$attr={};this.$$element=a};fa.prototype={$normalize:va,$addClass:function(a){a&&0<a.length&&aa.addClass(this.$$element,a)},$removeClass:function(a){a&&0<a.length&&aa.removeClass(this.$$element,a)},$updateClass:function(a,b){var c=Yc(a,b);c&&c.length&&aa.addClass(this.$$element,
-c);(c=Yc(b,a))&&c.length&&aa.removeClass(this.$$element,c)},$set:function(a,b,d,e){var f=Qc(this.$$element[0],a),g=Zc[a],h=a;f?(this.$$element.prop(a,b),e=f):g&&(this[g]=b,h=g);this[a]=b;e?this.$attr[a]=e:(e=this.$attr[a])||(this.$attr[a]=e=zc(a,"-"));f=ta(this.$$element);if("a"===f&&"href"===a||"img"===f&&"src"===a)this[a]=b=D(b,"src"===a);else if("img"===f&&"srcset"===a){for(var f="",g=U(b),k=/(\s+\d+x\s*,|\s+\d+w\s*,|\s+,|,\s+)/,k=/\s/.test(g)?k:/(,)/,g=g.split(k),k=Math.floor(g.length/2),l=0;l<
-k;l++)var m=2*l,f=f+D(U(g[m]),!0),f=f+(" "+U(g[m+1]));g=U(g[2*l]).split(/\s/);f+=D(U(g[0]),!0);2===g.length&&(f+=" "+U(g[1]));this[a]=b=f}!1!==d&&(null===b||q(b)?this.$$element.removeAttr(e):this.$$element.attr(e,b));(a=this.$$observers)&&n(a[h],function(a){try{a(b)}catch(d){c(d)}})},$observe:function(a,b){var c=this,d=c.$$observers||(c.$$observers=$()),e=d[a]||(d[a]=[]);e.push(b);w.$evalAsync(function(){e.$$inter||!c.hasOwnProperty(a)||q(c[a])||b(c[a])});return function(){ab(e,b)}}};var da=b.startSymbol(),
-ia=b.endSymbol(),ja="{{"==da||"}}"==ia?Ya:function(a){return a.replace(/\{\{/g,da).replace(/}}/g,ia)},ka=/^ngAttr[A-Z]/,la=/^(.+)Start$/;K.$$addBindingInfo=m?function(a,b){var c=a.data("$binding")||[];I(b)?c=c.concat(b):c.push(b);a.data("$binding",c)}:x;K.$$addBindingClass=m?function(a){J(a,"ng-binding")}:x;K.$$addScopeInfo=m?function(a,b,c,d){a.data(c?d?"$isolateScopeNoTemplate":"$isolateScope":"$scope",b)}:x;K.$$addScopeClass=m?function(a,b){J(a,b?"ng-isolate-scope":"ng-scope")}:x;return K}]}function va(a){return fb(a.replace(Vc,
-""))}function Yc(a,b){var d="",c=a.split(/\s+/),e=b.split(/\s+/),f=0;a:for(;f<c.length;f++){for(var g=c[f],h=0;h<e.length;h++)if(g==e[h])continue a;d+=(0<d.length?" ":"")+g}return d}function Xc(a){a=B(a);var b=a.length;if(1>=b)return a;for(;b--;)8===a[b].nodeType&&Pf.call(a,b,1);return a}function Xe(){var a={},b=!1;this.register=function(b,c){Ra(b,"controller");H(b)?M(a,b):a[b]=c};this.allowGlobals=function(){b=!0};this.$get=["$injector","$window",function(d,c){function e(a,b,c,d){if(!a||!H(a.$scope))throw G("$controller")("noscp",
-d,b);a.$scope[b]=c}return function(f,g,h,k){var l,m,r;h=!0===h;k&&E(k)&&(r=k);if(E(f)){k=f.match(Uc);if(!k)throw Qf("ctrlfmt",f);m=k[1];r=r||k[3];f=a.hasOwnProperty(m)?a[m]:Bc(g.$scope,m,!0)||(b?Bc(c,m,!0):u);Qa(f,m,!0)}if(h)return h=(I(f)?f[f.length-1]:f).prototype,l=Object.create(h||null),r&&e(g,r,l,m||f.name),M(function(){var a=d.invoke(f,l,g,m);a!==l&&(H(a)||z(a))&&(l=a,r&&e(g,r,l,m||f.name));return l},{instance:l,identifier:r});l=d.instantiate(f,g,m);r&&e(g,r,l,m||f.name);return l}}]}function Ye(){this.$get=
-["$window",function(a){return B(a.document)}]}function Ze(){this.$get=["$log",function(a){return function(b,d){a.error.apply(a,arguments)}}]}function Zb(a){return H(a)?da(a)?a.toISOString():db(a):a}function df(){this.$get=function(){return function(a){if(!a)return"";var b=[];oc(a,function(a,c){null===a||q(a)||(I(a)?n(a,function(a,d){b.push(ja(c)+"="+ja(Zb(a)))}):b.push(ja(c)+"="+ja(Zb(a))))});return b.join("&")}}}function ef(){this.$get=function(){return function(a){function b(a,e,f){null===a||q(a)||
-(I(a)?n(a,function(a,c){b(a,e+"["+(H(a)?c:"")+"]")}):H(a)&&!da(a)?oc(a,function(a,c){b(a,e+(f?"":"[")+c+(f?"":"]"))}):d.push(ja(e)+"="+ja(Zb(a))))}if(!a)return"";var d=[];b(a,"",!0);return d.join("&")}}}function $b(a,b){if(E(a)){var d=a.replace(Rf,"").trim();if(d){var c=b("Content-Type");(c=c&&0===c.indexOf($c))||(c=(c=d.match(Sf))&&Tf[c[0]].test(d));c&&(a=uc(d))}}return a}function ad(a){var b=$(),d;E(a)?n(a.split("\n"),function(a){d=a.indexOf(":");var e=F(U(a.substr(0,d)));a=U(a.substr(d+1));e&&
-(b[e]=b[e]?b[e]+", "+a:a)}):H(a)&&n(a,function(a,d){var f=F(d),g=U(a);f&&(b[f]=b[f]?b[f]+", "+g:g)});return b}function bd(a){var b;return function(d){b||(b=ad(a));return d?(d=b[F(d)],void 0===d&&(d=null),d):b}}function cd(a,b,d,c){if(z(c))return c(a,b,d);n(c,function(c){a=c(a,b,d)});return a}function cf(){var a=this.defaults={transformResponse:[$b],transformRequest:[function(a){return H(a)&&"[object File]"!==sa.call(a)&&"[object Blob]"!==sa.call(a)&&"[object FormData]"!==sa.call(a)?db(a):a}],headers:{common:{Accept:"application/json, text/plain, */*"},
-post:ia(ac),put:ia(ac),patch:ia(ac)},xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",paramSerializer:"$httpParamSerializer"},b=!1;this.useApplyAsync=function(a){return y(a)?(b=!!a,this):b};var d=!0;this.useLegacyPromiseExtensions=function(a){return y(a)?(d=!!a,this):d};var c=this.interceptors=[];this.$get=["$httpBackend","$$cookieReader","$cacheFactory","$rootScope","$q","$injector",function(e,f,g,h,k,l){function m(b){function c(a){var b=M({},a);b.data=cd(a.data,a.headers,a.status,f.transformResponse);
-a=a.status;return 200<=a&&300>a?b:k.reject(b)}function e(a,b){var c,d={};n(a,function(a,e){z(a)?(c=a(b),null!=c&&(d[e]=c)):d[e]=a});return d}if(!fa.isObject(b))throw G("$http")("badreq",b);var f=M({method:"get",transformRequest:a.transformRequest,transformResponse:a.transformResponse,paramSerializer:a.paramSerializer},b);f.headers=function(b){var c=a.headers,d=M({},b.headers),f,g,h,c=M({},c.common,c[F(b.method)]);a:for(f in c){g=F(f);for(h in d)if(F(h)===g)continue a;d[f]=c[f]}return e(d,ia(b))}(b);
-f.method=sb(f.method);f.paramSerializer=E(f.paramSerializer)?l.get(f.paramSerializer):f.paramSerializer;var g=[function(b){var d=b.headers,e=cd(b.data,bd(d),u,b.transformRequest);q(e)&&n(d,function(a,b){"content-type"===F(b)&&delete d[b]});q(b.withCredentials)&&!q(a.withCredentials)&&(b.withCredentials=a.withCredentials);return r(b,e).then(c,c)},u],h=k.when(f);for(n(v,function(a){(a.request||a.requestError)&&g.unshift(a.request,a.requestError);(a.response||a.responseError)&&g.push(a.response,a.responseError)});g.length;){b=
-g.shift();var m=g.shift(),h=h.then(b,m)}d?(h.success=function(a){Qa(a,"fn");h.then(function(b){a(b.data,b.status,b.headers,f)});return h},h.error=function(a){Qa(a,"fn");h.then(null,function(b){a(b.data,b.status,b.headers,f)});return h}):(h.success=dd("success"),h.error=dd("error"));return h}function r(c,d){function g(a,c,d,e){function f(){l(c,a,d,e)}J&&(200<=a&&300>a?J.put(R,[a,c,ad(d),e]):J.remove(R));b?h.$applyAsync(f):(f(),h.$$phase||h.$apply())}function l(a,b,d,e){b=-1<=b?b:0;(200<=b&&300>b?n.resolve:
-n.reject)({data:a,status:b,headers:bd(d),config:c,statusText:e})}function r(a){l(a.data,a.status,ia(a.headers()),a.statusText)}function v(){var a=m.pendingRequests.indexOf(c);-1!==a&&m.pendingRequests.splice(a,1)}var n=k.defer(),D=n.promise,J,K,O=c.headers,R=t(c.url,c.paramSerializer(c.params));m.pendingRequests.push(c);D.then(v,v);!c.cache&&!a.cache||!1===c.cache||"GET"!==c.method&&"JSONP"!==c.method||(J=H(c.cache)?c.cache:H(a.cache)?a.cache:A);J&&(K=J.get(R),y(K)?K&&z(K.then)?K.then(r,r):I(K)?l(K[1],
-K[0],ia(K[2]),K[3]):l(K,200,{},"OK"):J.put(R,D));q(K)&&((K=ed(c.url)?f()[c.xsrfCookieName||a.xsrfCookieName]:u)&&(O[c.xsrfHeaderName||a.xsrfHeaderName]=K),e(c.method,R,d,g,O,c.timeout,c.withCredentials,c.responseType));return D}function t(a,b){0<b.length&&(a+=(-1==a.indexOf("?")?"?":"&")+b);return a}var A=g("$http");a.paramSerializer=E(a.paramSerializer)?l.get(a.paramSerializer):a.paramSerializer;var v=[];n(c,function(a){v.unshift(E(a)?l.get(a):l.invoke(a))});m.pendingRequests=[];(function(a){n(arguments,
-function(a){m[a]=function(b,c){return m(M({},c||{},{method:a,url:b}))}})})("get","delete","head","jsonp");(function(a){n(arguments,function(a){m[a]=function(b,c,d){return m(M({},d||{},{method:a,url:b,data:c}))}})})("post","put","patch");m.defaults=a;return m}]}function gf(){this.$get=function(){return function(){return new S.XMLHttpRequest}}}function ff(){this.$get=["$browser","$window","$document","$xhrFactory",function(a,b,d,c){return Uf(a,c,a.defer,b.angular.callbacks,d[0])}]}function Uf(a,b,d,
-c,e){function f(a,b,d){var f=e.createElement("script"),m=null;f.type="text/javascript";f.src=a;f.async=!0;m=function(a){f.removeEventListener("load",m,!1);f.removeEventListener("error",m,!1);e.body.removeChild(f);f=null;var g=-1,A="unknown";a&&("load"!==a.type||c[b].called||(a={type:"error"}),A=a.type,g="error"===a.type?404:200);d&&d(g,A)};f.addEventListener("load",m,!1);f.addEventListener("error",m,!1);e.body.appendChild(f);return m}return function(e,h,k,l,m,r,t,A){function v(){C&&C();w&&w.abort()}
-function T(b,c,e,f,g){y(L)&&d.cancel(L);C=w=null;b(c,e,f,g);a.$$completeOutstandingRequest(x)}a.$$incOutstandingRequestCount();h=h||a.url();if("jsonp"==F(e)){var p="_"+(c.counter++).toString(36);c[p]=function(a){c[p].data=a;c[p].called=!0};var C=f(h.replace("JSON_CALLBACK","angular.callbacks."+p),p,function(a,b){T(l,a,c[p].data,"",b);c[p]=x})}else{var w=b(e,h);w.open(e,h,!0);n(m,function(a,b){y(a)&&w.setRequestHeader(b,a)});w.onload=function(){var a=w.statusText||"",b="response"in w?w.response:w.responseText,
-c=1223===w.status?204:w.status;0===c&&(c=b?200:"file"==wa(h).protocol?404:0);T(l,c,b,w.getAllResponseHeaders(),a)};e=function(){T(l,-1,null,null,"")};w.onerror=e;w.onabort=e;t&&(w.withCredentials=!0);if(A)try{w.responseType=A}catch(ga){if("json"!==A)throw ga;}w.send(q(k)?null:k)}if(0<r)var L=d(v,r);else r&&z(r.then)&&r.then(v)}}function af(){var a="{{",b="}}";this.startSymbol=function(b){return b?(a=b,this):a};this.endSymbol=function(a){return a?(b=a,this):b};this.$get=["$parse","$exceptionHandler",
-"$sce",function(d,c,e){function f(a){return"\\\\\\"+a}function g(c){return c.replace(m,a).replace(r,b)}function h(f,h,m,r){function p(a){try{var b=a;a=m?e.getTrusted(m,b):e.valueOf(b);var d;if(r&&!y(a))d=a;else if(null==a)d="";else{switch(typeof a){case "string":break;case "number":a=""+a;break;default:a=db(a)}d=a}return d}catch(g){c(Ja.interr(f,g))}}r=!!r;for(var C,w,n=0,L=[],s=[],D=f.length,J=[],K=[];n<D;)if(-1!=(C=f.indexOf(a,n))&&-1!=(w=f.indexOf(b,C+k)))n!==C&&J.push(g(f.substring(n,C))),n=f.substring(C+
-k,w),L.push(n),s.push(d(n,p)),n=w+l,K.push(J.length),J.push("");else{n!==D&&J.push(g(f.substring(n)));break}m&&1<J.length&&Ja.throwNoconcat(f);if(!h||L.length){var O=function(a){for(var b=0,c=L.length;b<c;b++){if(r&&q(a[b]))return;J[K[b]]=a[b]}return J.join("")};return M(function(a){var b=0,d=L.length,e=Array(d);try{for(;b<d;b++)e[b]=s[b](a);return O(e)}catch(g){c(Ja.interr(f,g))}},{exp:f,expressions:L,$$watchDelegate:function(a,b){var c;return a.$watchGroup(s,function(d,e){var f=O(d);z(b)&&b.call(this,
-f,d!==e?c:f,a);c=f})}})}}var k=a.length,l=b.length,m=new RegExp(a.replace(/./g,f),"g"),r=new RegExp(b.replace(/./g,f),"g");h.startSymbol=function(){return a};h.endSymbol=function(){return b};return h}]}function bf(){this.$get=["$rootScope","$window","$q","$$q",function(a,b,d,c){function e(e,h,k,l){var m=4<arguments.length,r=m?ra.call(arguments,4):[],t=b.setInterval,A=b.clearInterval,v=0,n=y(l)&&!l,p=(n?c:d).defer(),C=p.promise;k=y(k)?k:0;C.then(null,null,m?function(){e.apply(null,r)}:e);C.$$intervalId=
-t(function(){p.notify(v++);0<k&&v>=k&&(p.resolve(v),A(C.$$intervalId),delete f[C.$$intervalId]);n||a.$apply()},h);f[C.$$intervalId]=p;return C}var f={};e.cancel=function(a){return a&&a.$$intervalId in f?(f[a.$$intervalId].reject("canceled"),b.clearInterval(a.$$intervalId),delete f[a.$$intervalId],!0):!1};return e}]}function bc(a){a=a.split("/");for(var b=a.length;b--;)a[b]=ob(a[b]);return a.join("/")}function fd(a,b){var d=wa(a);b.$$protocol=d.protocol;b.$$host=d.hostname;b.$$port=ea(d.port)||Vf[d.protocol]||
-null}function gd(a,b){var d="/"!==a.charAt(0);d&&(a="/"+a);var c=wa(a);b.$$path=decodeURIComponent(d&&"/"===c.pathname.charAt(0)?c.pathname.substring(1):c.pathname);b.$$search=xc(c.search);b.$$hash=decodeURIComponent(c.hash);b.$$path&&"/"!=b.$$path.charAt(0)&&(b.$$path="/"+b.$$path)}function pa(a,b){if(0===b.indexOf(a))return b.substr(a.length)}function Fa(a){var b=a.indexOf("#");return-1==b?a:a.substr(0,b)}function ib(a){return a.replace(/(#.+)|#$/,"$1")}function cc(a,b,d){this.$$html5=!0;d=d||"";
-fd(a,this);this.$$parse=function(a){var d=pa(b,a);if(!E(d))throw Db("ipthprfx",a,b);gd(d,this);this.$$path||(this.$$path="/");this.$$compose()};this.$$compose=function(){var a=Qb(this.$$search),d=this.$$hash?"#"+ob(this.$$hash):"";this.$$url=bc(this.$$path)+(a?"?"+a:"")+d;this.$$absUrl=b+this.$$url.substr(1)};this.$$parseLinkUrl=function(c,e){if(e&&"#"===e[0])return this.hash(e.slice(1)),!0;var f,g;y(f=pa(a,c))?(g=f,g=y(f=pa(d,f))?b+(pa("/",f)||f):a+g):y(f=pa(b,c))?g=b+f:b==c+"/"&&(g=b);g&&this.$$parse(g);
-return!!g}}function dc(a,b,d){fd(a,this);this.$$parse=function(c){var e=pa(a,c)||pa(b,c),f;q(e)||"#"!==e.charAt(0)?this.$$html5?f=e:(f="",q(e)&&(a=c,this.replace())):(f=pa(d,e),q(f)&&(f=e));gd(f,this);c=this.$$path;var e=a,g=/^\/[A-Z]:(\/.*)/;0===f.indexOf(e)&&(f=f.replace(e,""));g.exec(f)||(c=(f=g.exec(c))?f[1]:c);this.$$path=c;this.$$compose()};this.$$compose=function(){var b=Qb(this.$$search),e=this.$$hash?"#"+ob(this.$$hash):"";this.$$url=bc(this.$$path)+(b?"?"+b:"")+e;this.$$absUrl=a+(this.$$url?
-d+this.$$url:"")};this.$$parseLinkUrl=function(b,d){return Fa(a)==Fa(b)?(this.$$parse(b),!0):!1}}function hd(a,b,d){this.$$html5=!0;dc.apply(this,arguments);this.$$parseLinkUrl=function(c,e){if(e&&"#"===e[0])return this.hash(e.slice(1)),!0;var f,g;a==Fa(c)?f=c:(g=pa(b,c))?f=a+d+g:b===c+"/"&&(f=b);f&&this.$$parse(f);return!!f};this.$$compose=function(){var b=Qb(this.$$search),e=this.$$hash?"#"+ob(this.$$hash):"";this.$$url=bc(this.$$path)+(b?"?"+b:"")+e;this.$$absUrl=a+d+this.$$url}}function Eb(a){return function(){return this[a]}}
-function id(a,b){return function(d){if(q(d))return this[a];this[a]=b(d);this.$$compose();return this}}function hf(){var a="",b={enabled:!1,requireBase:!0,rewriteLinks:!0};this.hashPrefix=function(b){return y(b)?(a=b,this):a};this.html5Mode=function(a){return $a(a)?(b.enabled=a,this):H(a)?($a(a.enabled)&&(b.enabled=a.enabled),$a(a.requireBase)&&(b.requireBase=a.requireBase),$a(a.rewriteLinks)&&(b.rewriteLinks=a.rewriteLinks),this):b};this.$get=["$rootScope","$browser","$sniffer","$rootElement","$window",
-function(d,c,e,f,g){function h(a,b,d){var e=l.url(),f=l.$$state;try{c.url(a,b,d),l.$$state=c.state()}catch(g){throw l.url(e),l.$$state=f,g;}}function k(a,b){d.$broadcast("$locationChangeSuccess",l.absUrl(),a,l.$$state,b)}var l,m;m=c.baseHref();var r=c.url(),t;if(b.enabled){if(!m&&b.requireBase)throw Db("nobase");t=r.substring(0,r.indexOf("/",r.indexOf("//")+2))+(m||"/");m=e.history?cc:hd}else t=Fa(r),m=dc;var A=t.substr(0,Fa(t).lastIndexOf("/")+1);l=new m(t,A,"#"+a);l.$$parseLinkUrl(r,r);l.$$state=
-c.state();var v=/^\s*(javascript|mailto):/i;f.on("click",function(a){if(b.rewriteLinks&&!a.ctrlKey&&!a.metaKey&&!a.shiftKey&&2!=a.which&&2!=a.button){for(var e=B(a.target);"a"!==ta(e[0]);)if(e[0]===f[0]||!(e=e.parent())[0])return;var h=e.prop("href"),k=e.attr("href")||e.attr("xlink:href");H(h)&&"[object SVGAnimatedString]"===h.toString()&&(h=wa(h.animVal).href);v.test(h)||!h||e.attr("target")||a.isDefaultPrevented()||!l.$$parseLinkUrl(h,k)||(a.preventDefault(),l.absUrl()!=c.url()&&(d.$apply(),g.angular["ff-684208-preventDefault"]=
-!0))}});ib(l.absUrl())!=ib(r)&&c.url(l.absUrl(),!0);var n=!0;c.onUrlChange(function(a,b){q(pa(A,a))?g.location.href=a:(d.$evalAsync(function(){var c=l.absUrl(),e=l.$$state,f;a=ib(a);l.$$parse(a);l.$$state=b;f=d.$broadcast("$locationChangeStart",a,c,b,e).defaultPrevented;l.absUrl()===a&&(f?(l.$$parse(c),l.$$state=e,h(c,!1,e)):(n=!1,k(c,e)))}),d.$$phase||d.$digest())});d.$watch(function(){var a=ib(c.url()),b=ib(l.absUrl()),f=c.state(),g=l.$$replace,m=a!==b||l.$$html5&&e.history&&f!==l.$$state;if(n||
-m)n=!1,d.$evalAsync(function(){var b=l.absUrl(),c=d.$broadcast("$locationChangeStart",b,a,l.$$state,f).defaultPrevented;l.absUrl()===b&&(c?(l.$$parse(a),l.$$state=f):(m&&h(b,g,f===l.$$state?null:l.$$state),k(a,f)))});l.$$replace=!1});return l}]}function jf(){var a=!0,b=this;this.debugEnabled=function(b){return y(b)?(a=b,this):a};this.$get=["$window",function(d){function c(a){a instanceof Error&&(a.stack?a=a.message&&-1===a.stack.indexOf(a.message)?"Error: "+a.message+"\n"+a.stack:a.stack:a.sourceURL&&
-(a=a.message+"\n"+a.sourceURL+":"+a.line));return a}function e(a){var b=d.console||{},e=b[a]||b.log||x;a=!1;try{a=!!e.apply}catch(k){}return a?function(){var a=[];n(arguments,function(b){a.push(c(b))});return e.apply(b,a)}:function(a,b){e(a,null==b?"":b)}}return{log:e("log"),info:e("info"),warn:e("warn"),error:e("error"),debug:function(){var c=e("debug");return function(){a&&c.apply(b,arguments)}}()}}]}function Va(a,b){if("__defineGetter__"===a||"__defineSetter__"===a||"__lookupGetter__"===a||"__lookupSetter__"===
-a||"__proto__"===a)throw ba("isecfld",b);return a}function jd(a,b){a+="";if(!E(a))throw ba("iseccst",b);return a}function xa(a,b){if(a){if(a.constructor===a)throw ba("isecfn",b);if(a.window===a)throw ba("isecwindow",b);if(a.children&&(a.nodeName||a.prop&&a.attr&&a.find))throw ba("isecdom",b);if(a===Object)throw ba("isecobj",b);}return a}function kd(a,b){if(a){if(a.constructor===a)throw ba("isecfn",b);if(a===Wf||a===Xf||a===Yf)throw ba("isecff",b);}}function ld(a,b){if(a&&(a===(0).constructor||a===
-(!1).constructor||a==="".constructor||a==={}.constructor||a===[].constructor||a===Function.constructor))throw ba("isecaf",b);}function Zf(a,b){return"undefined"!==typeof a?a:b}function md(a,b){return"undefined"===typeof a?b:"undefined"===typeof b?a:a+b}function W(a,b){var d,c;switch(a.type){case s.Program:d=!0;n(a.body,function(a){W(a.expression,b);d=d&&a.expression.constant});a.constant=d;break;case s.Literal:a.constant=!0;a.toWatch=[];break;case s.UnaryExpression:W(a.argument,b);a.constant=a.argument.constant;
-a.toWatch=a.argument.toWatch;break;case s.BinaryExpression:W(a.left,b);W(a.right,b);a.constant=a.left.constant&&a.right.constant;a.toWatch=a.left.toWatch.concat(a.right.toWatch);break;case s.LogicalExpression:W(a.left,b);W(a.right,b);a.constant=a.left.constant&&a.right.constant;a.toWatch=a.constant?[]:[a];break;case s.ConditionalExpression:W(a.test,b);W(a.alternate,b);W(a.consequent,b);a.constant=a.test.constant&&a.alternate.constant&&a.consequent.constant;a.toWatch=a.constant?[]:[a];break;case s.Identifier:a.constant=
-!1;a.toWatch=[a];break;case s.MemberExpression:W(a.object,b);a.computed&&W(a.property,b);a.constant=a.object.constant&&(!a.computed||a.property.constant);a.toWatch=[a];break;case s.CallExpression:d=a.filter?!b(a.callee.name).$stateful:!1;c=[];n(a.arguments,function(a){W(a,b);d=d&&a.constant;a.constant||c.push.apply(c,a.toWatch)});a.constant=d;a.toWatch=a.filter&&!b(a.callee.name).$stateful?c:[a];break;case s.AssignmentExpression:W(a.left,b);W(a.right,b);a.constant=a.left.constant&&a.right.constant;
-a.toWatch=[a];break;case s.ArrayExpression:d=!0;c=[];n(a.elements,function(a){W(a,b);d=d&&a.constant;a.constant||c.push.apply(c,a.toWatch)});a.constant=d;a.toWatch=c;break;case s.ObjectExpression:d=!0;c=[];n(a.properties,function(a){W(a.value,b);d=d&&a.value.constant;a.value.constant||c.push.apply(c,a.value.toWatch)});a.constant=d;a.toWatch=c;break;case s.ThisExpression:a.constant=!1,a.toWatch=[]}}function nd(a){if(1==a.length){a=a[0].expression;var b=a.toWatch;return 1!==b.length?b:b[0]!==a?b:u}}
-function od(a){return a.type===s.Identifier||a.type===s.MemberExpression}function pd(a){if(1===a.body.length&&od(a.body[0].expression))return{type:s.AssignmentExpression,left:a.body[0].expression,right:{type:s.NGValueParameter},operator:"="}}function qd(a){return 0===a.body.length||1===a.body.length&&(a.body[0].expression.type===s.Literal||a.body[0].expression.type===s.ArrayExpression||a.body[0].expression.type===s.ObjectExpression)}function rd(a,b){this.astBuilder=a;this.$filter=b}function sd(a,
-b){this.astBuilder=a;this.$filter=b}function Fb(a){return"constructor"==a}function ec(a){return z(a.valueOf)?a.valueOf():$f.call(a)}function kf(){var a=$(),b=$();this.$get=["$filter",function(d){function c(a,b){return null==a||null==b?a===b:"object"===typeof a&&(a=ec(a),"object"===typeof a)?!1:a===b||a!==a&&b!==b}function e(a,b,d,e,f){var g=e.inputs,h;if(1===g.length){var k=c,g=g[0];return a.$watch(function(a){var b=g(a);c(b,k)||(h=e(a,u,u,[b]),k=b&&ec(b));return h},b,d,f)}for(var l=[],m=[],r=0,n=
-g.length;r<n;r++)l[r]=c,m[r]=null;return a.$watch(function(a){for(var b=!1,d=0,f=g.length;d<f;d++){var k=g[d](a);if(b||(b=!c(k,l[d])))m[d]=k,l[d]=k&&ec(k)}b&&(h=e(a,u,u,m));return h},b,d,f)}function f(a,b,c,d){var e,f;return e=a.$watch(function(a){return d(a)},function(a,c,d){f=a;z(b)&&b.apply(this,arguments);y(a)&&d.$$postDigest(function(){y(f)&&e()})},c)}function g(a,b,c,d){function e(a){var b=!0;n(a,function(a){y(a)||(b=!1)});return b}var f,g;return f=a.$watch(function(a){return d(a)},function(a,
-c,d){g=a;z(b)&&b.call(this,a,c,d);e(a)&&d.$$postDigest(function(){e(g)&&f()})},c)}function h(a,b,c,d){var e;return e=a.$watch(function(a){return d(a)},function(a,c,d){z(b)&&b.apply(this,arguments);e()},c)}function k(a,b){if(!b)return a;var c=a.$$watchDelegate,d=!1,c=c!==g&&c!==f?function(c,e,f,g){f=d&&g?g[0]:a(c,e,f,g);return b(f,c,e)}:function(c,d,e,f){e=a(c,d,e,f);c=b(e,c,d);return y(e)?c:e};a.$$watchDelegate&&a.$$watchDelegate!==e?c.$$watchDelegate=a.$$watchDelegate:b.$stateful||(c.$$watchDelegate=
-e,d=!a.inputs,c.inputs=a.inputs?a.inputs:[a]);return c}var l=Ba().noUnsafeEval,m={csp:l,expensiveChecks:!1},r={csp:l,expensiveChecks:!0};return function(c,l,v){var n,p,q;switch(typeof c){case "string":q=c=c.trim();var w=v?b:a;n=w[q];n||(":"===c.charAt(0)&&":"===c.charAt(1)&&(p=!0,c=c.substring(2)),v=v?r:m,n=new fc(v),n=(new gc(n,d,v)).parse(c),n.constant?n.$$watchDelegate=h:p?n.$$watchDelegate=n.literal?g:f:n.inputs&&(n.$$watchDelegate=e),w[q]=n);return k(n,l);case "function":return k(c,l);default:return x}}}]}
-function mf(){this.$get=["$rootScope","$exceptionHandler",function(a,b){return td(function(b){a.$evalAsync(b)},b)}]}function nf(){this.$get=["$browser","$exceptionHandler",function(a,b){return td(function(b){a.defer(b)},b)}]}function td(a,b){function d(a,b,c){function d(b){return function(c){e||(e=!0,b.call(a,c))}}var e=!1;return[d(b),d(c)]}function c(){this.$$state={status:0}}function e(a,b){return function(c){b.call(a,c)}}function f(c){!c.processScheduled&&c.pending&&(c.processScheduled=!0,a(function(){var a,
-d,e;e=c.pending;c.processScheduled=!1;c.pending=u;for(var f=0,g=e.length;f<g;++f){d=e[f][0];a=e[f][c.status];try{z(a)?d.resolve(a(c.value)):1===c.status?d.resolve(c.value):d.reject(c.value)}catch(h){d.reject(h),b(h)}}}))}function g(){this.promise=new c;this.resolve=e(this,this.resolve);this.reject=e(this,this.reject);this.notify=e(this,this.notify)}var h=G("$q",TypeError);M(c.prototype,{then:function(a,b,c){if(q(a)&&q(b)&&q(c))return this;var d=new g;this.$$state.pending=this.$$state.pending||[];
-this.$$state.pending.push([d,a,b,c]);0<this.$$state.status&&f(this.$$state);return d.promise},"catch":function(a){return this.then(null,a)},"finally":function(a,b){return this.then(function(b){return l(b,!0,a)},function(b){return l(b,!1,a)},b)}});M(g.prototype,{resolve:function(a){this.promise.$$state.status||(a===this.promise?this.$$reject(h("qcycle",a)):this.$$resolve(a))},$$resolve:function(a){var c,e;e=d(this,this.$$resolve,this.$$reject);try{if(H(a)||z(a))c=a&&a.then;z(c)?(this.promise.$$state.status=
--1,c.call(a,e[0],e[1],this.notify)):(this.promise.$$state.value=a,this.promise.$$state.status=1,f(this.promise.$$state))}catch(g){e[1](g),b(g)}},reject:function(a){this.promise.$$state.status||this.$$reject(a)},$$reject:function(a){this.promise.$$state.value=a;this.promise.$$state.status=2;f(this.promise.$$state)},notify:function(c){var d=this.promise.$$state.pending;0>=this.promise.$$state.status&&d&&d.length&&a(function(){for(var a,e,f=0,g=d.length;f<g;f++){e=d[f][0];a=d[f][3];try{e.notify(z(a)?
-a(c):c)}catch(h){b(h)}}})}});var k=function(a,b){var c=new g;b?c.resolve(a):c.reject(a);return c.promise},l=function(a,b,c){var d=null;try{z(c)&&(d=c())}catch(e){return k(e,!1)}return d&&z(d.then)?d.then(function(){return k(a,b)},function(a){return k(a,!1)}):k(a,b)},m=function(a,b,c,d){var e=new g;e.resolve(a);return e.promise.then(b,c,d)},r=function A(a){if(!z(a))throw h("norslvr",a);if(!(this instanceof A))return new A(a);var b=new g;a(function(a){b.resolve(a)},function(a){b.reject(a)});return b.promise};
-r.defer=function(){return new g};r.reject=function(a){var b=new g;b.reject(a);return b.promise};r.when=m;r.resolve=m;r.all=function(a){var b=new g,c=0,d=I(a)?[]:{};n(a,function(a,e){c++;m(a).then(function(a){d.hasOwnProperty(e)||(d[e]=a,--c||b.resolve(d))},function(a){d.hasOwnProperty(e)||b.reject(a)})});0===c&&b.resolve(d);return b.promise};return r}function wf(){this.$get=["$window","$timeout",function(a,b){var d=a.requestAnimationFrame||a.webkitRequestAnimationFrame,c=a.cancelAnimationFrame||a.webkitCancelAnimationFrame||
-a.webkitCancelRequestAnimationFrame,e=!!d,f=e?function(a){var b=d(a);return function(){c(b)}}:function(a){var c=b(a,16.66,!1);return function(){b.cancel(c)}};f.supported=e;return f}]}function lf(){function a(a){function b(){this.$$watchers=this.$$nextSibling=this.$$childHead=this.$$childTail=null;this.$$listeners={};this.$$listenerCount={};this.$$watchersCount=0;this.$id=++nb;this.$$ChildScope=null}b.prototype=a;return b}var b=10,d=G("$rootScope"),c=null,e=null;this.digestTtl=function(a){arguments.length&&
-(b=a);return b};this.$get=["$injector","$exceptionHandler","$parse","$browser",function(f,g,h,k){function l(a){a.currentScope.$$destroyed=!0}function m(a){9===Ha&&(a.$$childHead&&m(a.$$childHead),a.$$nextSibling&&m(a.$$nextSibling));a.$parent=a.$$nextSibling=a.$$prevSibling=a.$$childHead=a.$$childTail=a.$root=a.$$watchers=null}function r(){this.$id=++nb;this.$$phase=this.$parent=this.$$watchers=this.$$nextSibling=this.$$prevSibling=this.$$childHead=this.$$childTail=null;this.$root=this;this.$$destroyed=
-!1;this.$$listeners={};this.$$listenerCount={};this.$$watchersCount=0;this.$$isolateBindings=null}function t(a){if(w.$$phase)throw d("inprog",w.$$phase);w.$$phase=a}function A(a,b){do a.$$watchersCount+=b;while(a=a.$parent)}function v(a,b,c){do a.$$listenerCount[c]-=b,0===a.$$listenerCount[c]&&delete a.$$listenerCount[c];while(a=a.$parent)}function s(){}function p(){for(;aa.length;)try{aa.shift()()}catch(a){g(a)}e=null}function C(){null===e&&(e=k.defer(function(){w.$apply(p)}))}r.prototype={constructor:r,
-$new:function(b,c){var d;c=c||this;b?(d=new r,d.$root=this.$root):(this.$$ChildScope||(this.$$ChildScope=a(this)),d=new this.$$ChildScope);d.$parent=c;d.$$prevSibling=c.$$childTail;c.$$childHead?(c.$$childTail.$$nextSibling=d,c.$$childTail=d):c.$$childHead=c.$$childTail=d;(b||c!=this)&&d.$on("$destroy",l);return d},$watch:function(a,b,d,e){var f=h(a);if(f.$$watchDelegate)return f.$$watchDelegate(this,b,d,f,a);var g=this,k=g.$$watchers,l={fn:b,last:s,get:f,exp:e||a,eq:!!d};c=null;z(b)||(l.fn=x);k||
-(k=g.$$watchers=[]);k.unshift(l);A(this,1);return function(){0<=ab(k,l)&&A(g,-1);c=null}},$watchGroup:function(a,b){function c(){h=!1;k?(k=!1,b(e,e,g)):b(e,d,g)}var d=Array(a.length),e=Array(a.length),f=[],g=this,h=!1,k=!0;if(!a.length){var l=!0;g.$evalAsync(function(){l&&b(e,e,g)});return function(){l=!1}}if(1===a.length)return this.$watch(a[0],function(a,c,f){e[0]=a;d[0]=c;b(e,a===c?e:d,f)});n(a,function(a,b){var k=g.$watch(a,function(a,f){e[b]=a;d[b]=f;h||(h=!0,g.$evalAsync(c))});f.push(k)});return function(){for(;f.length;)f.shift()()}},
-$watchCollection:function(a,b){function c(a){e=a;var b,d,g,h;if(!q(e)){if(H(e))if(za(e))for(f!==r&&(f=r,n=f.length=0,l++),a=e.length,n!==a&&(l++,f.length=n=a),b=0;b<a;b++)h=f[b],g=e[b],d=h!==h&&g!==g,d||h===g||(l++,f[b]=g);else{f!==t&&(f=t={},n=0,l++);a=0;for(b in e)qa.call(e,b)&&(a++,g=e[b],h=f[b],b in f?(d=h!==h&&g!==g,d||h===g||(l++,f[b]=g)):(n++,f[b]=g,l++));if(n>a)for(b in l++,f)qa.call(e,b)||(n--,delete f[b])}else f!==e&&(f=e,l++);return l}}c.$stateful=!0;var d=this,e,f,g,k=1<b.length,l=0,m=
-h(a,c),r=[],t={},p=!0,n=0;return this.$watch(m,function(){p?(p=!1,b(e,e,d)):b(e,g,d);if(k)if(H(e))if(za(e)){g=Array(e.length);for(var a=0;a<e.length;a++)g[a]=e[a]}else for(a in g={},e)qa.call(e,a)&&(g[a]=e[a]);else g=e})},$digest:function(){var a,f,h,l,m,r,n=b,A,q=[],v,C;t("$digest");k.$$checkUrlChange();this===w&&null!==e&&(k.defer.cancel(e),p());c=null;do{r=!1;for(A=this;u.length;){try{C=u.shift(),C.scope.$eval(C.expression,C.locals)}catch(aa){g(aa)}c=null}a:do{if(l=A.$$watchers)for(m=l.length;m--;)try{if(a=
-l[m])if((f=a.get(A))!==(h=a.last)&&!(a.eq?ma(f,h):"number"===typeof f&&"number"===typeof h&&isNaN(f)&&isNaN(h)))r=!0,c=a,a.last=a.eq?bb(f,null):f,a.fn(f,h===s?f:h,A),5>n&&(v=4-n,q[v]||(q[v]=[]),q[v].push({msg:z(a.exp)?"fn: "+(a.exp.name||a.exp.toString()):a.exp,newVal:f,oldVal:h}));else if(a===c){r=!1;break a}}catch(y){g(y)}if(!(l=A.$$watchersCount&&A.$$childHead||A!==this&&A.$$nextSibling))for(;A!==this&&!(l=A.$$nextSibling);)A=A.$parent}while(A=l);if((r||u.length)&&!n--)throw w.$$phase=null,d("infdig",
-b,q);}while(r||u.length);for(w.$$phase=null;L.length;)try{L.shift()()}catch(x){g(x)}},$destroy:function(){if(!this.$$destroyed){var a=this.$parent;this.$broadcast("$destroy");this.$$destroyed=!0;this===w&&k.$$applicationDestroyed();A(this,-this.$$watchersCount);for(var b in this.$$listenerCount)v(this,this.$$listenerCount[b],b);a&&a.$$childHead==this&&(a.$$childHead=this.$$nextSibling);a&&a.$$childTail==this&&(a.$$childTail=this.$$prevSibling);this.$$prevSibling&&(this.$$prevSibling.$$nextSibling=
-this.$$nextSibling);this.$$nextSibling&&(this.$$nextSibling.$$prevSibling=this.$$prevSibling);this.$destroy=this.$digest=this.$apply=this.$evalAsync=this.$applyAsync=x;this.$on=this.$watch=this.$watchGroup=function(){return x};this.$$listeners={};this.$$nextSibling=null;m(this)}},$eval:function(a,b){return h(a)(this,b)},$evalAsync:function(a,b){w.$$phase||u.length||k.defer(function(){u.length&&w.$digest()});u.push({scope:this,expression:a,locals:b})},$$postDigest:function(a){L.push(a)},$apply:function(a){try{t("$apply");
-try{return this.$eval(a)}finally{w.$$phase=null}}catch(b){g(b)}finally{try{w.$digest()}catch(c){throw g(c),c;}}},$applyAsync:function(a){function b(){c.$eval(a)}var c=this;a&&aa.push(b);C()},$on:function(a,b){var c=this.$$listeners[a];c||(this.$$listeners[a]=c=[]);c.push(b);var d=this;do d.$$listenerCount[a]||(d.$$listenerCount[a]=0),d.$$listenerCount[a]++;while(d=d.$parent);var e=this;return function(){var d=c.indexOf(b);-1!==d&&(c[d]=null,v(e,1,a))}},$emit:function(a,b){var c=[],d,e=this,f=!1,h=
-{name:a,targetScope:e,stopPropagation:function(){f=!0},preventDefault:function(){h.defaultPrevented=!0},defaultPrevented:!1},k=cb([h],arguments,1),l,m;do{d=e.$$listeners[a]||c;h.currentScope=e;l=0;for(m=d.length;l<m;l++)if(d[l])try{d[l].apply(null,k)}catch(r){g(r)}else d.splice(l,1),l--,m--;if(f)return h.currentScope=null,h;e=e.$parent}while(e);h.currentScope=null;return h},$broadcast:function(a,b){var c=this,d=this,e={name:a,targetScope:this,preventDefault:function(){e.defaultPrevented=!0},defaultPrevented:!1};
-if(!this.$$listenerCount[a])return e;for(var f=cb([e],arguments,1),h,k;c=d;){e.currentScope=c;d=c.$$listeners[a]||[];h=0;for(k=d.length;h<k;h++)if(d[h])try{d[h].apply(null,f)}catch(l){g(l)}else d.splice(h,1),h--,k--;if(!(d=c.$$listenerCount[a]&&c.$$childHead||c!==this&&c.$$nextSibling))for(;c!==this&&!(d=c.$$nextSibling);)c=c.$parent}e.currentScope=null;return e}};var w=new r,u=w.$$asyncQueue=[],L=w.$$postDigestQueue=[],aa=w.$$applyAsyncQueue=[];return w}]}function ge(){var a=/^\s*(https?|ftp|mailto|tel|file):/,
-b=/^\s*((https?|ftp|file|blob):|data:image\/)/;this.aHrefSanitizationWhitelist=function(b){return y(b)?(a=b,this):a};this.imgSrcSanitizationWhitelist=function(a){return y(a)?(b=a,this):b};this.$get=function(){return function(d,c){var e=c?b:a,f;f=wa(d).href;return""===f||f.match(e)?d:"unsafe:"+f}}}function ag(a){if("self"===a)return a;if(E(a)){if(-1<a.indexOf("***"))throw ya("iwcard",a);a=ud(a).replace("\\*\\*",".*").replace("\\*","[^:/.?&;]*");return new RegExp("^"+a+"$")}if(Ma(a))return new RegExp("^"+
-a.source+"$");throw ya("imatcher");}function vd(a){var b=[];y(a)&&n(a,function(a){b.push(ag(a))});return b}function pf(){this.SCE_CONTEXTS=la;var a=["self"],b=[];this.resourceUrlWhitelist=function(b){arguments.length&&(a=vd(b));return a};this.resourceUrlBlacklist=function(a){arguments.length&&(b=vd(a));return b};this.$get=["$injector",function(d){function c(a,b){return"self"===a?ed(b):!!a.exec(b.href)}function e(a){var b=function(a){this.$$unwrapTrustedValue=function(){return a}};a&&(b.prototype=
-new a);b.prototype.valueOf=function(){return this.$$unwrapTrustedValue()};b.prototype.toString=function(){return this.$$unwrapTrustedValue().toString()};return b}var f=function(a){throw ya("unsafe");};d.has("$sanitize")&&(f=d.get("$sanitize"));var g=e(),h={};h[la.HTML]=e(g);h[la.CSS]=e(g);h[la.URL]=e(g);h[la.JS]=e(g);h[la.RESOURCE_URL]=e(h[la.URL]);return{trustAs:function(a,b){var c=h.hasOwnProperty(a)?h[a]:null;if(!c)throw ya("icontext",a,b);if(null===b||q(b)||""===b)return b;if("string"!==typeof b)throw ya("itype",
-a);return new c(b)},getTrusted:function(d,e){if(null===e||q(e)||""===e)return e;var g=h.hasOwnProperty(d)?h[d]:null;if(g&&e instanceof g)return e.$$unwrapTrustedValue();if(d===la.RESOURCE_URL){var g=wa(e.toString()),r,t,n=!1;r=0;for(t=a.length;r<t;r++)if(c(a[r],g)){n=!0;break}if(n)for(r=0,t=b.length;r<t;r++)if(c(b[r],g)){n=!1;break}if(n)return e;throw ya("insecurl",e.toString());}if(d===la.HTML)return f(e);throw ya("unsafe");},valueOf:function(a){return a instanceof g?a.$$unwrapTrustedValue():a}}}]}
-function of(){var a=!0;this.enabled=function(b){arguments.length&&(a=!!b);return a};this.$get=["$parse","$sceDelegate",function(b,d){if(a&&8>Ha)throw ya("iequirks");var c=ia(la);c.isEnabled=function(){return a};c.trustAs=d.trustAs;c.getTrusted=d.getTrusted;c.valueOf=d.valueOf;a||(c.trustAs=c.getTrusted=function(a,b){return b},c.valueOf=Ya);c.parseAs=function(a,d){var e=b(d);return e.literal&&e.constant?e:b(d,function(b){return c.getTrusted(a,b)})};var e=c.parseAs,f=c.getTrusted,g=c.trustAs;n(la,function(a,
-b){var d=F(b);c[fb("parse_as_"+d)]=function(b){return e(a,b)};c[fb("get_trusted_"+d)]=function(b){return f(a,b)};c[fb("trust_as_"+d)]=function(b){return g(a,b)}});return c}]}function qf(){this.$get=["$window","$document",function(a,b){var d={},c=ea((/android (\d+)/.exec(F((a.navigator||{}).userAgent))||[])[1]),e=/Boxee/i.test((a.navigator||{}).userAgent),f=b[0]||{},g,h=/^(Moz|webkit|ms)(?=[A-Z])/,k=f.body&&f.body.style,l=!1,m=!1;if(k){for(var r in k)if(l=h.exec(r)){g=l[0];g=g.substr(0,1).toUpperCase()+
-g.substr(1);break}g||(g="WebkitOpacity"in k&&"webkit");l=!!("transition"in k||g+"Transition"in k);m=!!("animation"in k||g+"Animation"in k);!c||l&&m||(l=E(k.webkitTransition),m=E(k.webkitAnimation))}return{history:!(!a.history||!a.history.pushState||4>c||e),hasEvent:function(a){if("input"===a&&11>=Ha)return!1;if(q(d[a])){var b=f.createElement("div");d[a]="on"+a in b}return d[a]},csp:Ba(),vendorPrefix:g,transitions:l,animations:m,android:c}}]}function sf(){this.$get=["$templateCache","$http","$q","$sce",
-function(a,b,d,c){function e(f,g){e.totalPendingRequests++;E(f)&&a.get(f)||(f=c.getTrustedResourceUrl(f));var h=b.defaults&&b.defaults.transformResponse;I(h)?h=h.filter(function(a){return a!==$b}):h===$b&&(h=null);return b.get(f,{cache:a,transformResponse:h})["finally"](function(){e.totalPendingRequests--}).then(function(b){a.put(f,b.data);return b.data},function(a){if(!g)throw ha("tpload",f,a.status,a.statusText);return d.reject(a)})}e.totalPendingRequests=0;return e}]}function tf(){this.$get=["$rootScope",
-"$browser","$location",function(a,b,d){return{findBindings:function(a,b,d){a=a.getElementsByClassName("ng-binding");var g=[];n(a,function(a){var c=fa.element(a).data("$binding");c&&n(c,function(c){d?(new RegExp("(^|\\s)"+ud(b)+"(\\s|\\||$)")).test(c)&&g.push(a):-1!=c.indexOf(b)&&g.push(a)})});return g},findModels:function(a,b,d){for(var g=["ng-","data-ng-","ng\\:"],h=0;h<g.length;++h){var k=a.querySelectorAll("["+g[h]+"model"+(d?"=":"*=")+'"'+b+'"]');if(k.length)return k}},getLocation:function(){return d.url()},
-setLocation:function(b){b!==d.url()&&(d.url(b),a.$digest())},whenStable:function(a){b.notifyWhenNoOutstandingRequests(a)}}}]}function uf(){this.$get=["$rootScope","$browser","$q","$$q","$exceptionHandler",function(a,b,d,c,e){function f(f,k,l){z(f)||(l=k,k=f,f=x);var m=ra.call(arguments,3),r=y(l)&&!l,t=(r?c:d).defer(),n=t.promise,q;q=b.defer(function(){try{t.resolve(f.apply(null,m))}catch(b){t.reject(b),e(b)}finally{delete g[n.$$timeoutId]}r||a.$apply()},k);n.$$timeoutId=q;g[q]=t;return n}var g={};
-f.cancel=function(a){return a&&a.$$timeoutId in g?(g[a.$$timeoutId].reject("canceled"),delete g[a.$$timeoutId],b.defer.cancel(a.$$timeoutId)):!1};return f}]}function wa(a){Ha&&(Y.setAttribute("href",a),a=Y.href);Y.setAttribute("href",a);return{href:Y.href,protocol:Y.protocol?Y.protocol.replace(/:$/,""):"",host:Y.host,search:Y.search?Y.search.replace(/^\?/,""):"",hash:Y.hash?Y.hash.replace(/^#/,""):"",hostname:Y.hostname,port:Y.port,pathname:"/"===Y.pathname.charAt(0)?Y.pathname:"/"+Y.pathname}}function ed(a){a=
-E(a)?wa(a):a;return a.protocol===wd.protocol&&a.host===wd.host}function vf(){this.$get=na(S)}function xd(a){function b(a){try{return decodeURIComponent(a)}catch(b){return a}}var d=a[0]||{},c={},e="";return function(){var a,g,h,k,l;a=d.cookie||"";if(a!==e)for(e=a,a=e.split("; "),c={},h=0;h<a.length;h++)g=a[h],k=g.indexOf("="),0<k&&(l=b(g.substring(0,k)),q(c[l])&&(c[l]=b(g.substring(k+1))));return c}}function zf(){this.$get=xd}function Jc(a){function b(d,c){if(H(d)){var e={};n(d,function(a,c){e[c]=
-b(c,a)});return e}return a.factory(d+"Filter",c)}this.register=b;this.$get=["$injector",function(a){return function(b){return a.get(b+"Filter")}}];b("currency",yd);b("date",zd);b("filter",bg);b("json",cg);b("limitTo",dg);b("lowercase",eg);b("number",Ad);b("orderBy",Bd);b("uppercase",fg)}function bg(){return function(a,b,d){if(!za(a)){if(null==a)return a;throw G("filter")("notarray",a);}var c;switch(hc(b)){case "function":break;case "boolean":case "null":case "number":case "string":c=!0;case "object":b=
-gg(b,d,c);break;default:return a}return Array.prototype.filter.call(a,b)}}function gg(a,b,d){var c=H(a)&&"$"in a;!0===b?b=ma:z(b)||(b=function(a,b){if(q(a))return!1;if(null===a||null===b)return a===b;if(H(b)||H(a)&&!qc(a))return!1;a=F(""+a);b=F(""+b);return-1!==a.indexOf(b)});return function(e){return c&&!H(e)?Ka(e,a.$,b,!1):Ka(e,a,b,d)}}function Ka(a,b,d,c,e){var f=hc(a),g=hc(b);if("string"===g&&"!"===b.charAt(0))return!Ka(a,b.substring(1),d,c);if(I(a))return a.some(function(a){return Ka(a,b,d,c)});
-switch(f){case "object":var h;if(c){for(h in a)if("$"!==h.charAt(0)&&Ka(a[h],b,d,!0))return!0;return e?!1:Ka(a,b,d,!1)}if("object"===g){for(h in b)if(e=b[h],!z(e)&&!q(e)&&(f="$"===h,!Ka(f?a:a[h],e,d,f,f)))return!1;return!0}return d(a,b);case "function":return!1;default:return d(a,b)}}function hc(a){return null===a?"null":typeof a}function yd(a){var b=a.NUMBER_FORMATS;return function(a,c,e){q(c)&&(c=b.CURRENCY_SYM);q(e)&&(e=b.PATTERNS[1].maxFrac);return null==a?a:Cd(a,b.PATTERNS[1],b.GROUP_SEP,b.DECIMAL_SEP,
-e).replace(/\u00A4/g,c)}}function Ad(a){var b=a.NUMBER_FORMATS;return function(a,c){return null==a?a:Cd(a,b.PATTERNS[0],b.GROUP_SEP,b.DECIMAL_SEP,c)}}function Cd(a,b,d,c,e){if(H(a))return"";var f=0>a;a=Math.abs(a);var g=Infinity===a;if(!g&&!isFinite(a))return"";var h=a+"",k="",l=!1,m=[];g&&(k="\u221e");if(!g&&-1!==h.indexOf("e")){var r=h.match(/([\d\.]+)e(-?)(\d+)/);r&&"-"==r[2]&&r[3]>e+1?a=0:(k=h,l=!0)}if(g||l)0<e&&1>a&&(k=a.toFixed(e),a=parseFloat(k),k=k.replace(ic,c));else{g=(h.split(ic)[1]||"").length;
-q(e)&&(e=Math.min(Math.max(b.minFrac,g),b.maxFrac));a=+(Math.round(+(a.toString()+"e"+e)).toString()+"e"+-e);var g=(""+a).split(ic),h=g[0],g=g[1]||"",r=0,t=b.lgSize,n=b.gSize;if(h.length>=t+n)for(r=h.length-t,l=0;l<r;l++)0===(r-l)%n&&0!==l&&(k+=d),k+=h.charAt(l);for(l=r;l<h.length;l++)0===(h.length-l)%t&&0!==l&&(k+=d),k+=h.charAt(l);for(;g.length<e;)g+="0";e&&"0"!==e&&(k+=c+g.substr(0,e))}0===a&&(f=!1);m.push(f?b.negPre:b.posPre,k,f?b.negSuf:b.posSuf);return m.join("")}function Gb(a,b,d){var c="";
-0>a&&(c="-",a=-a);for(a=""+a;a.length<b;)a="0"+a;d&&(a=a.substr(a.length-b));return c+a}function ca(a,b,d,c){d=d||0;return function(e){e=e["get"+a]();if(0<d||e>-d)e+=d;0===e&&-12==d&&(e=12);return Gb(e,b,c)}}function Hb(a,b){return function(d,c){var e=d["get"+a](),f=sb(b?"SHORT"+a:a);return c[f][e]}}function Dd(a){var b=(new Date(a,0,1)).getDay();return new Date(a,0,(4>=b?5:12)-b)}function Ed(a){return function(b){var d=Dd(b.getFullYear());b=+new Date(b.getFullYear(),b.getMonth(),b.getDate()+(4-b.getDay()))-
-+d;b=1+Math.round(b/6048E5);return Gb(b,a)}}function jc(a,b){return 0>=a.getFullYear()?b.ERAS[0]:b.ERAS[1]}function zd(a){function b(a){var b;if(b=a.match(d)){a=new Date(0);var f=0,g=0,h=b[8]?a.setUTCFullYear:a.setFullYear,k=b[8]?a.setUTCHours:a.setHours;b[9]&&(f=ea(b[9]+b[10]),g=ea(b[9]+b[11]));h.call(a,ea(b[1]),ea(b[2])-1,ea(b[3]));f=ea(b[4]||0)-f;g=ea(b[5]||0)-g;h=ea(b[6]||0);b=Math.round(1E3*parseFloat("0."+(b[7]||0)));k.call(a,f,g,h,b)}return a}var d=/^(\d{4})-?(\d\d)-?(\d\d)(?:T(\d\d)(?::?(\d\d)(?::?(\d\d)(?:\.(\d+))?)?)?(Z|([+-])(\d\d):?(\d\d))?)?$/;
-return function(c,d,f){var g="",h=[],k,l;d=d||"mediumDate";d=a.DATETIME_FORMATS[d]||d;E(c)&&(c=hg.test(c)?ea(c):b(c));Q(c)&&(c=new Date(c));if(!da(c)||!isFinite(c.getTime()))return c;for(;d;)(l=ig.exec(d))?(h=cb(h,l,1),d=h.pop()):(h.push(d),d=null);var m=c.getTimezoneOffset();f&&(m=vc(f,c.getTimezoneOffset()),c=Pb(c,f,!0));n(h,function(b){k=jg[b];g+=k?k(c,a.DATETIME_FORMATS,m):b.replace(/(^'|'$)/g,"").replace(/''/g,"'")});return g}}function cg(){return function(a,b){q(b)&&(b=2);return db(a,b)}}function dg(){return function(a,
-b,d){b=Infinity===Math.abs(Number(b))?Number(b):ea(b);if(isNaN(b))return a;Q(a)&&(a=a.toString());if(!I(a)&&!E(a))return a;d=!d||isNaN(d)?0:ea(d);d=0>d?Math.max(0,a.length+d):d;return 0<=b?a.slice(d,d+b):0===d?a.slice(b,a.length):a.slice(Math.max(0,d+b),d)}}function Bd(a){function b(b,d){d=d?-1:1;return b.map(function(b){var c=1,h=Ya;if(z(b))h=b;else if(E(b)){if("+"==b.charAt(0)||"-"==b.charAt(0))c="-"==b.charAt(0)?-1:1,b=b.substring(1);if(""!==b&&(h=a(b),h.constant))var k=h(),h=function(a){return a[k]}}return{get:h,
-descending:c*d}})}function d(a){switch(typeof a){case "number":case "boolean":case "string":return!0;default:return!1}}return function(a,e,f){if(!za(a))return a;I(e)||(e=[e]);0===e.length&&(e=["+"]);var g=b(e,f);g.push({get:function(){return{}},descending:f?-1:1});a=Array.prototype.map.call(a,function(a,b){return{value:a,predicateValues:g.map(function(c){var e=c.get(a);c=typeof e;if(null===e)c="string",e="null";else if("string"===c)e=e.toLowerCase();else if("object"===c)a:{if("function"===typeof e.valueOf&&
-(e=e.valueOf(),d(e)))break a;if(qc(e)&&(e=e.toString(),d(e)))break a;e=b}return{value:e,type:c}})}});a.sort(function(a,b){for(var c=0,d=0,e=g.length;d<e;++d){var c=a.predicateValues[d],f=b.predicateValues[d],n=0;c.type===f.type?c.value!==f.value&&(n=c.value<f.value?-1:1):n=c.type<f.type?-1:1;if(c=n*g[d].descending)break}return c});return a=a.map(function(a){return a.value})}}function La(a){z(a)&&(a={link:a});a.restrict=a.restrict||"AC";return na(a)}function Fd(a,b,d,c,e){var f=this,g=[];f.$error=
-{};f.$$success={};f.$pending=u;f.$name=e(b.name||b.ngForm||"")(d);f.$dirty=!1;f.$pristine=!0;f.$valid=!0;f.$invalid=!1;f.$submitted=!1;f.$$parentForm=Ib;f.$rollbackViewValue=function(){n(g,function(a){a.$rollbackViewValue()})};f.$commitViewValue=function(){n(g,function(a){a.$commitViewValue()})};f.$addControl=function(a){Ra(a.$name,"input");g.push(a);a.$name&&(f[a.$name]=a);a.$$parentForm=f};f.$$renameControl=function(a,b){var c=a.$name;f[c]===a&&delete f[c];f[b]=a;a.$name=b};f.$removeControl=function(a){a.$name&&
-f[a.$name]===a&&delete f[a.$name];n(f.$pending,function(b,c){f.$setValidity(c,null,a)});n(f.$error,function(b,c){f.$setValidity(c,null,a)});n(f.$$success,function(b,c){f.$setValidity(c,null,a)});ab(g,a);a.$$parentForm=Ib};Gd({ctrl:this,$element:a,set:function(a,b,c){var d=a[b];d?-1===d.indexOf(c)&&d.push(c):a[b]=[c]},unset:function(a,b,c){var d=a[b];d&&(ab(d,c),0===d.length&&delete a[b])},$animate:c});f.$setDirty=function(){c.removeClass(a,Wa);c.addClass(a,Jb);f.$dirty=!0;f.$pristine=!1;f.$$parentForm.$setDirty()};
-f.$setPristine=function(){c.setClass(a,Wa,Jb+" ng-submitted");f.$dirty=!1;f.$pristine=!0;f.$submitted=!1;n(g,function(a){a.$setPristine()})};f.$setUntouched=function(){n(g,function(a){a.$setUntouched()})};f.$setSubmitted=function(){c.addClass(a,"ng-submitted");f.$submitted=!0;f.$$parentForm.$setSubmitted()}}function kc(a){a.$formatters.push(function(b){return a.$isEmpty(b)?b:b.toString()})}function jb(a,b,d,c,e,f){var g=F(b[0].type);if(!e.android){var h=!1;b.on("compositionstart",function(a){h=!0});
-b.on("compositionend",function(){h=!1;k()})}var k=function(a){l&&(f.defer.cancel(l),l=null);if(!h){var e=b.val();a=a&&a.type;"password"===g||d.ngTrim&&"false"===d.ngTrim||(e=U(e));(c.$viewValue!==e||""===e&&c.$$hasNativeValidators)&&c.$setViewValue(e,a)}};if(e.hasEvent("input"))b.on("input",k);else{var l,m=function(a,b,c){l||(l=f.defer(function(){l=null;b&&b.value===c||k(a)}))};b.on("keydown",function(a){var b=a.keyCode;91===b||15<b&&19>b||37<=b&&40>=b||m(a,this,this.value)});if(e.hasEvent("paste"))b.on("paste cut",
-m)}b.on("change",k);c.$render=function(){var a=c.$isEmpty(c.$viewValue)?"":c.$viewValue;b.val()!==a&&b.val(a)}}function Kb(a,b){return function(d,c){var e,f;if(da(d))return d;if(E(d)){'"'==d.charAt(0)&&'"'==d.charAt(d.length-1)&&(d=d.substring(1,d.length-1));if(kg.test(d))return new Date(d);a.lastIndex=0;if(e=a.exec(d))return e.shift(),f=c?{yyyy:c.getFullYear(),MM:c.getMonth()+1,dd:c.getDate(),HH:c.getHours(),mm:c.getMinutes(),ss:c.getSeconds(),sss:c.getMilliseconds()/1E3}:{yyyy:1970,MM:1,dd:1,HH:0,
-mm:0,ss:0,sss:0},n(e,function(a,c){c<b.length&&(f[b[c]]=+a)}),new Date(f.yyyy,f.MM-1,f.dd,f.HH,f.mm,f.ss||0,1E3*f.sss||0)}return NaN}}function kb(a,b,d,c){return function(e,f,g,h,k,l,m){function r(a){return a&&!(a.getTime&&a.getTime()!==a.getTime())}function n(a){return y(a)&&!da(a)?d(a)||u:a}Hd(e,f,g,h);jb(e,f,g,h,k,l);var A=h&&h.$options&&h.$options.timezone,v;h.$$parserName=a;h.$parsers.push(function(a){return h.$isEmpty(a)?null:b.test(a)?(a=d(a,v),A&&(a=Pb(a,A)),a):u});h.$formatters.push(function(a){if(a&&
-!da(a))throw lb("datefmt",a);if(r(a))return(v=a)&&A&&(v=Pb(v,A,!0)),m("date")(a,c,A);v=null;return""});if(y(g.min)||g.ngMin){var s;h.$validators.min=function(a){return!r(a)||q(s)||d(a)>=s};g.$observe("min",function(a){s=n(a);h.$validate()})}if(y(g.max)||g.ngMax){var p;h.$validators.max=function(a){return!r(a)||q(p)||d(a)<=p};g.$observe("max",function(a){p=n(a);h.$validate()})}}}function Hd(a,b,d,c){(c.$$hasNativeValidators=H(b[0].validity))&&c.$parsers.push(function(a){var c=b.prop("validity")||{};
-return c.badInput&&!c.typeMismatch?u:a})}function Id(a,b,d,c,e){if(y(c)){a=a(c);if(!a.constant)throw lb("constexpr",d,c);return a(b)}return e}function lc(a,b){a="ngClass"+a;return["$animate",function(d){function c(a,b){var c=[],d=0;a:for(;d<a.length;d++){for(var e=a[d],m=0;m<b.length;m++)if(e==b[m])continue a;c.push(e)}return c}function e(a){var b=[];return I(a)?(n(a,function(a){b=b.concat(e(a))}),b):E(a)?a.split(" "):H(a)?(n(a,function(a,c){a&&(b=b.concat(c.split(" ")))}),b):a}return{restrict:"AC",
-link:function(f,g,h){function k(a,b){var c=g.data("$classCounts")||$(),d=[];n(a,function(a){if(0<b||c[a])c[a]=(c[a]||0)+b,c[a]===+(0<b)&&d.push(a)});g.data("$classCounts",c);return d.join(" ")}function l(a){if(!0===b||f.$index%2===b){var l=e(a||[]);if(!m){var n=k(l,1);h.$addClass(n)}else if(!ma(a,m)){var q=e(m),n=c(l,q),l=c(q,l),n=k(n,1),l=k(l,-1);n&&n.length&&d.addClass(g,n);l&&l.length&&d.removeClass(g,l)}}m=ia(a)}var m;f.$watch(h[a],l,!0);h.$observe("class",function(b){l(f.$eval(h[a]))});"ngClass"!==
-a&&f.$watch("$index",function(c,d){var g=c&1;if(g!==(d&1)){var l=e(f.$eval(h[a]));g===b?(g=k(l,1),h.$addClass(g)):(g=k(l,-1),h.$removeClass(g))}})}}}]}function Gd(a){function b(a,b){b&&!f[a]?(k.addClass(e,a),f[a]=!0):!b&&f[a]&&(k.removeClass(e,a),f[a]=!1)}function d(a,c){a=a?"-"+zc(a,"-"):"";b(mb+a,!0===c);b(Jd+a,!1===c)}var c=a.ctrl,e=a.$element,f={},g=a.set,h=a.unset,k=a.$animate;f[Jd]=!(f[mb]=e.hasClass(mb));c.$setValidity=function(a,e,f){q(e)?(c.$pending||(c.$pending={}),g(c.$pending,a,f)):(c.$pending&&
-h(c.$pending,a,f),Kd(c.$pending)&&(c.$pending=u));$a(e)?e?(h(c.$error,a,f),g(c.$$success,a,f)):(g(c.$error,a,f),h(c.$$success,a,f)):(h(c.$error,a,f),h(c.$$success,a,f));c.$pending?(b(Ld,!0),c.$valid=c.$invalid=u,d("",null)):(b(Ld,!1),c.$valid=Kd(c.$error),c.$invalid=!c.$valid,d("",c.$valid));e=c.$pending&&c.$pending[a]?u:c.$error[a]?!1:c.$$success[a]?!0:null;d(a,e);c.$$parentForm.$setValidity(a,e,c)}}function Kd(a){if(a)for(var b in a)if(a.hasOwnProperty(b))return!1;return!0}var lg=/^\/(.+)\/([a-z]*)$/,
-F=function(a){return E(a)?a.toLowerCase():a},qa=Object.prototype.hasOwnProperty,sb=function(a){return E(a)?a.toUpperCase():a},Ha,B,oa,ra=[].slice,Pf=[].splice,mg=[].push,sa=Object.prototype.toString,rc=Object.getPrototypeOf,Aa=G("ng"),fa=S.angular||(S.angular={}),Sb,nb=0;Ha=X.documentMode;x.$inject=[];Ya.$inject=[];var I=Array.isArray,Vd=/^\[object (?:Uint8|Uint8Clamped|Uint16|Uint32|Int8|Int16|Int32|Float32|Float64)Array\]$/,U=function(a){return E(a)?a.trim():a},ud=function(a){return a.replace(/([-()\[\]{}+?*.$\^|,:#<!\\])/g,
-"\\$1").replace(/\x08/g,"\\x08")},Ba=function(){if(!y(Ba.rules)){var a=X.querySelector("[ng-csp]")||X.querySelector("[data-ng-csp]");if(a){var b=a.getAttribute("ng-csp")||a.getAttribute("data-ng-csp");Ba.rules={noUnsafeEval:!b||-1!==b.indexOf("no-unsafe-eval"),noInlineStyle:!b||-1!==b.indexOf("no-inline-style")}}else{a=Ba;try{new Function(""),b=!1}catch(d){b=!0}a.rules={noUnsafeEval:b,noInlineStyle:!1}}}return Ba.rules},pb=function(){if(y(pb.name_))return pb.name_;var a,b,d=Oa.length,c,e;for(b=0;b<
-d;++b)if(c=Oa[b],a=X.querySelector("["+c.replace(":","\\:")+"jq]")){e=a.getAttribute(c+"jq");break}return pb.name_=e},Oa=["ng-","data-ng-","ng:","x-ng-"],be=/[A-Z]/g,Ac=!1,Rb,Na=3,fe={full:"1.4.8",major:1,minor:4,dot:8,codeName:"ice-manipulation"};N.expando="ng339";var gb=N.cache={},Ff=1;N._data=function(a){return this.cache[a[this.expando]]||{}};var Af=/([\:\-\_]+(.))/g,Bf=/^moz([A-Z])/,xb={mouseleave:"mouseout",mouseenter:"mouseover"},Ub=G("jqLite"),Ef=/^<([\w-]+)\s*\/?>(?:<\/\1>|)$/,Tb=/<|&#?\w+;/,
-Cf=/<([\w:-]+)/,Df=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:-]+)[^>]*)\/>/gi,ka={option:[1,'<select multiple="multiple">',"</select>"],thead:[1,"<table>","</table>"],col:[2,"<table><colgroup>","</colgroup></table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:[0,"",""]};ka.optgroup=ka.option;ka.tbody=ka.tfoot=ka.colgroup=ka.caption=ka.thead;ka.th=ka.td;var Kf=Node.prototype.contains||function(a){return!!(this.compareDocumentPosition(a)&
-16)},Pa=N.prototype={ready:function(a){function b(){d||(d=!0,a())}var d=!1;"complete"===X.readyState?setTimeout(b):(this.on("DOMContentLoaded",b),N(S).on("load",b))},toString:function(){var a=[];n(this,function(b){a.push(""+b)});return"["+a.join(", ")+"]"},eq:function(a){return 0<=a?B(this[a]):B(this[this.length+a])},length:0,push:mg,sort:[].sort,splice:[].splice},Cb={};n("multiple selected checked disabled readOnly required open".split(" "),function(a){Cb[F(a)]=a});var Rc={};n("input select option textarea button form details".split(" "),
-function(a){Rc[a]=!0});var Zc={ngMinlength:"minlength",ngMaxlength:"maxlength",ngMin:"min",ngMax:"max",ngPattern:"pattern"};n({data:Wb,removeData:vb,hasData:function(a){for(var b in gb[a.ng339])return!0;return!1}},function(a,b){N[b]=a});n({data:Wb,inheritedData:Bb,scope:function(a){return B.data(a,"$scope")||Bb(a.parentNode||a,["$isolateScope","$scope"])},isolateScope:function(a){return B.data(a,"$isolateScope")||B.data(a,"$isolateScopeNoTemplate")},controller:Oc,injector:function(a){return Bb(a,
-"$injector")},removeAttr:function(a,b){a.removeAttribute(b)},hasClass:yb,css:function(a,b,d){b=fb(b);if(y(d))a.style[b]=d;else return a.style[b]},attr:function(a,b,d){var c=a.nodeType;if(c!==Na&&2!==c&&8!==c)if(c=F(b),Cb[c])if(y(d))d?(a[b]=!0,a.setAttribute(b,c)):(a[b]=!1,a.removeAttribute(c));else return a[b]||(a.attributes.getNamedItem(b)||x).specified?c:u;else if(y(d))a.setAttribute(b,d);else if(a.getAttribute)return a=a.getAttribute(b,2),null===a?u:a},prop:function(a,b,d){if(y(d))a[b]=d;else return a[b]},
-text:function(){function a(a,d){if(q(d)){var c=a.nodeType;return 1===c||c===Na?a.textContent:""}a.textContent=d}a.$dv="";return a}(),val:function(a,b){if(q(b)){if(a.multiple&&"select"===ta(a)){var d=[];n(a.options,function(a){a.selected&&d.push(a.value||a.text)});return 0===d.length?null:d}return a.value}a.value=b},html:function(a,b){if(q(b))return a.innerHTML;ub(a,!0);a.innerHTML=b},empty:Pc},function(a,b){N.prototype[b]=function(b,c){var e,f,g=this.length;if(a!==Pc&&q(2==a.length&&a!==yb&&a!==Oc?
-b:c)){if(H(b)){for(e=0;e<g;e++)if(a===Wb)a(this[e],b);else for(f in b)a(this[e],f,b[f]);return this}e=a.$dv;g=q(e)?Math.min(g,1):g;for(f=0;f<g;f++){var h=a(this[f],b,c);e=e?e+h:h}return e}for(e=0;e<g;e++)a(this[e],b,c);return this}});n({removeData:vb,on:function(a,b,d,c){if(y(c))throw Ub("onargs");if(Kc(a)){c=wb(a,!0);var e=c.events,f=c.handle;f||(f=c.handle=Hf(a,e));c=0<=b.indexOf(" ")?b.split(" "):[b];for(var g=c.length,h=function(b,c,g){var h=e[b];h||(h=e[b]=[],h.specialHandlerWrapper=c,"$destroy"===
-b||g||a.addEventListener(b,f,!1));h.push(d)};g--;)b=c[g],xb[b]?(h(xb[b],Jf),h(b,u,!0)):h(b)}},off:Nc,one:function(a,b,d){a=B(a);a.on(b,function e(){a.off(b,d);a.off(b,e)});a.on(b,d)},replaceWith:function(a,b){var d,c=a.parentNode;ub(a);n(new N(b),function(b){d?c.insertBefore(b,d.nextSibling):c.replaceChild(b,a);d=b})},children:function(a){var b=[];n(a.childNodes,function(a){1===a.nodeType&&b.push(a)});return b},contents:function(a){return a.contentDocument||a.childNodes||[]},append:function(a,b){var d=
-a.nodeType;if(1===d||11===d){b=new N(b);for(var d=0,c=b.length;d<c;d++)a.appendChild(b[d])}},prepend:function(a,b){if(1===a.nodeType){var d=a.firstChild;n(new N(b),function(b){a.insertBefore(b,d)})}},wrap:function(a,b){b=B(b).eq(0).clone()[0];var d=a.parentNode;d&&d.replaceChild(b,a);b.appendChild(a)},remove:Xb,detach:function(a){Xb(a,!0)},after:function(a,b){var d=a,c=a.parentNode;b=new N(b);for(var e=0,f=b.length;e<f;e++){var g=b[e];c.insertBefore(g,d.nextSibling);d=g}},addClass:Ab,removeClass:zb,
-toggleClass:function(a,b,d){b&&n(b.split(" "),function(b){var e=d;q(e)&&(e=!yb(a,b));(e?Ab:zb)(a,b)})},parent:function(a){return(a=a.parentNode)&&11!==a.nodeType?a:null},next:function(a){return a.nextElementSibling},find:function(a,b){return a.getElementsByTagName?a.getElementsByTagName(b):[]},clone:Vb,triggerHandler:function(a,b,d){var c,e,f=b.type||b,g=wb(a);if(g=(g=g&&g.events)&&g[f])c={preventDefault:function(){this.defaultPrevented=!0},isDefaultPrevented:function(){return!0===this.defaultPrevented},
-stopImmediatePropagation:function(){this.immediatePropagationStopped=!0},isImmediatePropagationStopped:function(){return!0===this.immediatePropagationStopped},stopPropagation:x,type:f,target:a},b.type&&(c=M(c,b)),b=ia(g),e=d?[c].concat(d):[c],n(b,function(b){c.isImmediatePropagationStopped()||b.apply(a,e)})}},function(a,b){N.prototype[b]=function(b,c,e){for(var f,g=0,h=this.length;g<h;g++)q(f)?(f=a(this[g],b,c,e),y(f)&&(f=B(f))):Mc(f,a(this[g],b,c,e));return y(f)?f:this};N.prototype.bind=N.prototype.on;
-N.prototype.unbind=N.prototype.off});Sa.prototype={put:function(a,b){this[Ca(a,this.nextUid)]=b},get:function(a){return this[Ca(a,this.nextUid)]},remove:function(a){var b=this[a=Ca(a,this.nextUid)];delete this[a];return b}};var yf=[function(){this.$get=[function(){return Sa}]}],Tc=/^[^\(]*\(\s*([^\)]*)\)/m,ng=/,/,og=/^\s*(_?)(\S+?)\1\s*$/,Sc=/((\/\/.*$)|(\/\*[\s\S]*?\*\/))/mg,Da=G("$injector");eb.$$annotate=function(a,b,d){var c;if("function"===typeof a){if(!(c=a.$inject)){c=[];if(a.length){if(b)throw E(d)&&
-d||(d=a.name||Lf(a)),Da("strictdi",d);b=a.toString().replace(Sc,"");b=b.match(Tc);n(b[1].split(ng),function(a){a.replace(og,function(a,b,d){c.push(d)})})}a.$inject=c}}else I(a)?(b=a.length-1,Qa(a[b],"fn"),c=a.slice(0,b)):Qa(a,"fn",!0);return c};var Md=G("$animate"),Ue=function(){this.$get=["$q","$$rAF",function(a,b){function d(){}d.all=x;d.chain=x;d.prototype={end:x,cancel:x,resume:x,pause:x,complete:x,then:function(c,d){return a(function(a){b(function(){a()})}).then(c,d)}};return d}]},Te=function(){var a=
-new Sa,b=[];this.$get=["$$AnimateRunner","$rootScope",function(d,c){function e(a,b,c){var d=!1;b&&(b=E(b)?b.split(" "):I(b)?b:[],n(b,function(b){b&&(d=!0,a[b]=c)}));return d}function f(){n(b,function(b){var c=a.get(b);if(c){var d=Mf(b.attr("class")),e="",f="";n(c,function(a,b){a!==!!d[b]&&(a?e+=(e.length?" ":"")+b:f+=(f.length?" ":"")+b)});n(b,function(a){e&&Ab(a,e);f&&zb(a,f)});a.remove(b)}});b.length=0}return{enabled:x,on:x,off:x,pin:x,push:function(g,h,k,l){l&&l();k=k||{};k.from&&g.css(k.from);
-k.to&&g.css(k.to);if(k.addClass||k.removeClass)if(h=k.addClass,l=k.removeClass,k=a.get(g)||{},h=e(k,h,!0),l=e(k,l,!1),h||l)a.put(g,k),b.push(g),1===b.length&&c.$$postDigest(f);return new d}}}]},Re=["$provide",function(a){var b=this;this.$$registeredAnimations=Object.create(null);this.register=function(d,c){if(d&&"."!==d.charAt(0))throw Md("notcsel",d);var e=d+"-animation";b.$$registeredAnimations[d.substr(1)]=e;a.factory(e,c)};this.classNameFilter=function(a){if(1===arguments.length&&(this.$$classNameFilter=
-a instanceof RegExp?a:null)&&/(\s+|\/)ng-animate(\s+|\/)/.test(this.$$classNameFilter.toString()))throw Md("nongcls","ng-animate");return this.$$classNameFilter};this.$get=["$$animateQueue",function(a){function b(a,c,d){if(d){var h;a:{for(h=0;h<d.length;h++){var k=d[h];if(1===k.nodeType){h=k;break a}}h=void 0}!h||h.parentNode||h.previousElementSibling||(d=null)}d?d.after(a):c.prepend(a)}return{on:a.on,off:a.off,pin:a.pin,enabled:a.enabled,cancel:function(a){a.end&&a.end()},enter:function(e,f,g,h){f=
-f&&B(f);g=g&&B(g);f=f||g.parent();b(e,f,g);return a.push(e,"enter",Ea(h))},move:function(e,f,g,h){f=f&&B(f);g=g&&B(g);f=f||g.parent();b(e,f,g);return a.push(e,"move",Ea(h))},leave:function(b,c){return a.push(b,"leave",Ea(c),function(){b.remove()})},addClass:function(b,c,g){g=Ea(g);g.addClass=hb(g.addclass,c);return a.push(b,"addClass",g)},removeClass:function(b,c,g){g=Ea(g);g.removeClass=hb(g.removeClass,c);return a.push(b,"removeClass",g)},setClass:function(b,c,g,h){h=Ea(h);h.addClass=hb(h.addClass,
-c);h.removeClass=hb(h.removeClass,g);return a.push(b,"setClass",h)},animate:function(b,c,g,h,k){k=Ea(k);k.from=k.from?M(k.from,c):c;k.to=k.to?M(k.to,g):g;k.tempClasses=hb(k.tempClasses,h||"ng-inline-animate");return a.push(b,"animate",k)}}}]}],Se=function(){this.$get=["$$rAF","$q",function(a,b){var d=function(){};d.prototype={done:function(a){this.defer&&this.defer[!0===a?"reject":"resolve"]()},end:function(){this.done()},cancel:function(){this.done(!0)},getPromise:function(){this.defer||(this.defer=
-b.defer());return this.defer.promise},then:function(a,b){return this.getPromise().then(a,b)},"catch":function(a){return this.getPromise()["catch"](a)},"finally":function(a){return this.getPromise()["finally"](a)}};return function(b,e){function f(){a(function(){e.addClass&&(b.addClass(e.addClass),e.addClass=null);e.removeClass&&(b.removeClass(e.removeClass),e.removeClass=null);e.to&&(b.css(e.to),e.to=null);g||h.done();g=!0});return h}e.cleanupStyles&&(e.from=e.to=null);e.from&&(b.css(e.from),e.from=
-null);var g,h=new d;return{start:f,end:f}}}]},ha=G("$compile");Cc.$inject=["$provide","$$sanitizeUriProvider"];var Vc=/^((?:x|data)[\:\-_])/i,Qf=G("$controller"),Uc=/^(\S+)(\s+as\s+(\w+))?$/,$e=function(){this.$get=["$document",function(a){return function(b){b?!b.nodeType&&b instanceof B&&(b=b[0]):b=a[0].body;return b.offsetWidth+1}}]},$c="application/json",ac={"Content-Type":$c+";charset=utf-8"},Sf=/^\[|^\{(?!\{)/,Tf={"[":/]$/,"{":/}$/},Rf=/^\)\]\}',?\n/,pg=G("$http"),dd=function(a){return function(){throw pg("legacy",
-a);}},Ja=fa.$interpolateMinErr=G("$interpolate");Ja.throwNoconcat=function(a){throw Ja("noconcat",a);};Ja.interr=function(a,b){return Ja("interr",a,b.toString())};var qg=/^([^\?#]*)(\?([^#]*))?(#(.*))?$/,Vf={http:80,https:443,ftp:21},Db=G("$location"),rg={$$html5:!1,$$replace:!1,absUrl:Eb("$$absUrl"),url:function(a){if(q(a))return this.$$url;var b=qg.exec(a);(b[1]||""===a)&&this.path(decodeURIComponent(b[1]));(b[2]||b[1]||""===a)&&this.search(b[3]||"");this.hash(b[5]||"");return this},protocol:Eb("$$protocol"),
-host:Eb("$$host"),port:Eb("$$port"),path:id("$$path",function(a){a=null!==a?a.toString():"";return"/"==a.charAt(0)?a:"/"+a}),search:function(a,b){switch(arguments.length){case 0:return this.$$search;case 1:if(E(a)||Q(a))a=a.toString(),this.$$search=xc(a);else if(H(a))a=bb(a,{}),n(a,function(b,c){null==b&&delete a[c]}),this.$$search=a;else throw Db("isrcharg");break;default:q(b)||null===b?delete this.$$search[a]:this.$$search[a]=b}this.$$compose();return this},hash:id("$$hash",function(a){return null!==
-a?a.toString():""}),replace:function(){this.$$replace=!0;return this}};n([hd,dc,cc],function(a){a.prototype=Object.create(rg);a.prototype.state=function(b){if(!arguments.length)return this.$$state;if(a!==cc||!this.$$html5)throw Db("nostate");this.$$state=q(b)?null:b;return this}});var ba=G("$parse"),Wf=Function.prototype.call,Xf=Function.prototype.apply,Yf=Function.prototype.bind,Lb=$();n("+ - * / % === !== == != < > <= >= && || ! = |".split(" "),function(a){Lb[a]=!0});var sg={n:"\n",f:"\f",r:"\r",
-t:"\t",v:"\v","'":"'",'"':'"'},fc=function(a){this.options=a};fc.prototype={constructor:fc,lex:function(a){this.text=a;this.index=0;for(this.tokens=[];this.index<this.text.length;)if(a=this.text.charAt(this.index),'"'===a||"'"===a)this.readString(a);else if(this.isNumber(a)||"."===a&&this.isNumber(this.peek()))this.readNumber();else if(this.isIdent(a))this.readIdent();else if(this.is(a,"(){}[].,;:?"))this.tokens.push({index:this.index,text:a}),this.index++;else if(this.isWhitespace(a))this.index++;
-else{var b=a+this.peek(),d=b+this.peek(2),c=Lb[b],e=Lb[d];Lb[a]||c||e?(a=e?d:c?b:a,this.tokens.push({index:this.index,text:a,operator:!0}),this.index+=a.length):this.throwError("Unexpected next character ",this.index,this.index+1)}return this.tokens},is:function(a,b){return-1!==b.indexOf(a)},peek:function(a){a=a||1;return this.index+a<this.text.length?this.text.charAt(this.index+a):!1},isNumber:function(a){return"0"<=a&&"9">=a&&"string"===typeof a},isWhitespace:function(a){return" "===a||"\r"===a||
-"\t"===a||"\n"===a||"\v"===a||"\u00a0"===a},isIdent:function(a){return"a"<=a&&"z">=a||"A"<=a&&"Z">=a||"_"===a||"$"===a},isExpOperator:function(a){return"-"===a||"+"===a||this.isNumber(a)},throwError:function(a,b,d){d=d||this.index;b=y(b)?"s "+b+"-"+this.index+" ["+this.text.substring(b,d)+"]":" "+d;throw ba("lexerr",a,b,this.text);},readNumber:function(){for(var a="",b=this.index;this.index<this.text.length;){var d=F(this.text.charAt(this.index));if("."==d||this.isNumber(d))a+=d;else{var c=this.peek();
-if("e"==d&&this.isExpOperator(c))a+=d;else if(this.isExpOperator(d)&&c&&this.isNumber(c)&&"e"==a.charAt(a.length-1))a+=d;else if(!this.isExpOperator(d)||c&&this.isNumber(c)||"e"!=a.charAt(a.length-1))break;else this.throwError("Invalid exponent")}this.index++}this.tokens.push({index:b,text:a,constant:!0,value:Number(a)})},readIdent:function(){for(var a=this.index;this.index<this.text.length;){var b=this.text.charAt(this.index);if(!this.isIdent(b)&&!this.isNumber(b))break;this.index++}this.tokens.push({index:a,
-text:this.text.slice(a,this.index),identifier:!0})},readString:function(a){var b=this.index;this.index++;for(var d="",c=a,e=!1;this.index<this.text.length;){var f=this.text.charAt(this.index),c=c+f;if(e)"u"===f?(e=this.text.substring(this.index+1,this.index+5),e.match(/[\da-f]{4}/i)||this.throwError("Invalid unicode escape [\\u"+e+"]"),this.index+=4,d+=String.fromCharCode(parseInt(e,16))):d+=sg[f]||f,e=!1;else if("\\"===f)e=!0;else{if(f===a){this.index++;this.tokens.push({index:b,text:c,constant:!0,
-value:d});return}d+=f}this.index++}this.throwError("Unterminated quote",b)}};var s=function(a,b){this.lexer=a;this.options=b};s.Program="Program";s.ExpressionStatement="ExpressionStatement";s.AssignmentExpression="AssignmentExpression";s.ConditionalExpression="ConditionalExpression";s.LogicalExpression="LogicalExpression";s.BinaryExpression="BinaryExpression";s.UnaryExpression="UnaryExpression";s.CallExpression="CallExpression";s.MemberExpression="MemberExpression";s.Identifier="Identifier";s.Literal=
-"Literal";s.ArrayExpression="ArrayExpression";s.Property="Property";s.ObjectExpression="ObjectExpression";s.ThisExpression="ThisExpression";s.NGValueParameter="NGValueParameter";s.prototype={ast:function(a){this.text=a;this.tokens=this.lexer.lex(a);a=this.program();0!==this.tokens.length&&this.throwError("is an unexpected token",this.tokens[0]);return a},program:function(){for(var a=[];;)if(0<this.tokens.length&&!this.peek("}",")",";","]")&&a.push(this.expressionStatement()),!this.expect(";"))return{type:s.Program,
-body:a}},expressionStatement:function(){return{type:s.ExpressionStatement,expression:this.filterChain()}},filterChain:function(){for(var a=this.expression();this.expect("|");)a=this.filter(a);return a},expression:function(){return this.assignment()},assignment:function(){var a=this.ternary();this.expect("=")&&(a={type:s.AssignmentExpression,left:a,right:this.assignment(),operator:"="});return a},ternary:function(){var a=this.logicalOR(),b,d;return this.expect("?")&&(b=this.expression(),this.consume(":"))?
-(d=this.expression(),{type:s.ConditionalExpression,test:a,alternate:b,consequent:d}):a},logicalOR:function(){for(var a=this.logicalAND();this.expect("||");)a={type:s.LogicalExpression,operator:"||",left:a,right:this.logicalAND()};return a},logicalAND:function(){for(var a=this.equality();this.expect("&&");)a={type:s.LogicalExpression,operator:"&&",left:a,right:this.equality()};return a},equality:function(){for(var a=this.relational(),b;b=this.expect("==","!=","===","!==");)a={type:s.BinaryExpression,
-operator:b.text,left:a,right:this.relational()};return a},relational:function(){for(var a=this.additive(),b;b=this.expect("<",">","<=",">=");)a={type:s.BinaryExpression,operator:b.text,left:a,right:this.additive()};return a},additive:function(){for(var a=this.multiplicative(),b;b=this.expect("+","-");)a={type:s.BinaryExpression,operator:b.text,left:a,right:this.multiplicative()};return a},multiplicative:function(){for(var a=this.unary(),b;b=this.expect("*","/","%");)a={type:s.BinaryExpression,operator:b.text,
-left:a,right:this.unary()};return a},unary:function(){var a;return(a=this.expect("+","-","!"))?{type:s.UnaryExpression,operator:a.text,prefix:!0,argument:this.unary()}:this.primary()},primary:function(){var a;this.expect("(")?(a=this.filterChain(),this.consume(")")):this.expect("[")?a=this.arrayDeclaration():this.expect("{")?a=this.object():this.constants.hasOwnProperty(this.peek().text)?a=bb(this.constants[this.consume().text]):this.peek().identifier?a=this.identifier():this.peek().constant?a=this.constant():
-this.throwError("not a primary expression",this.peek());for(var b;b=this.expect("(","[",".");)"("===b.text?(a={type:s.CallExpression,callee:a,arguments:this.parseArguments()},this.consume(")")):"["===b.text?(a={type:s.MemberExpression,object:a,property:this.expression(),computed:!0},this.consume("]")):"."===b.text?a={type:s.MemberExpression,object:a,property:this.identifier(),computed:!1}:this.throwError("IMPOSSIBLE");return a},filter:function(a){a=[a];for(var b={type:s.CallExpression,callee:this.identifier(),
-arguments:a,filter:!0};this.expect(":");)a.push(this.expression());return b},parseArguments:function(){var a=[];if(")"!==this.peekToken().text){do a.push(this.expression());while(this.expect(","))}return a},identifier:function(){var a=this.consume();a.identifier||this.throwError("is not a valid identifier",a);return{type:s.Identifier,name:a.text}},constant:function(){return{type:s.Literal,value:this.consume().value}},arrayDeclaration:function(){var a=[];if("]"!==this.peekToken().text){do{if(this.peek("]"))break;
-a.push(this.expression())}while(this.expect(","))}this.consume("]");return{type:s.ArrayExpression,elements:a}},object:function(){var a=[],b;if("}"!==this.peekToken().text){do{if(this.peek("}"))break;b={type:s.Property,kind:"init"};this.peek().constant?b.key=this.constant():this.peek().identifier?b.key=this.identifier():this.throwError("invalid key",this.peek());this.consume(":");b.value=this.expression();a.push(b)}while(this.expect(","))}this.consume("}");return{type:s.ObjectExpression,properties:a}},
-throwError:function(a,b){throw ba("syntax",b.text,a,b.index+1,this.text,this.text.substring(b.index));},consume:function(a){if(0===this.tokens.length)throw ba("ueoe",this.text);var b=this.expect(a);b||this.throwError("is unexpected, expecting ["+a+"]",this.peek());return b},peekToken:function(){if(0===this.tokens.length)throw ba("ueoe",this.text);return this.tokens[0]},peek:function(a,b,d,c){return this.peekAhead(0,a,b,d,c)},peekAhead:function(a,b,d,c,e){if(this.tokens.length>a){a=this.tokens[a];
-var f=a.text;if(f===b||f===d||f===c||f===e||!(b||d||c||e))return a}return!1},expect:function(a,b,d,c){return(a=this.peek(a,b,d,c))?(this.tokens.shift(),a):!1},constants:{"true":{type:s.Literal,value:!0},"false":{type:s.Literal,value:!1},"null":{type:s.Literal,value:null},undefined:{type:s.Literal,value:u},"this":{type:s.ThisExpression}}};rd.prototype={compile:function(a,b){var d=this,c=this.astBuilder.ast(a);this.state={nextId:0,filters:{},expensiveChecks:b,fn:{vars:[],body:[],own:{}},assign:{vars:[],
-body:[],own:{}},inputs:[]};W(c,d.$filter);var e="",f;this.stage="assign";if(f=pd(c))this.state.computing="assign",e=this.nextId(),this.recurse(f,e),this.return_(e),e="fn.assign="+this.generateFunction("assign","s,v,l");f=nd(c.body);d.stage="inputs";n(f,function(a,b){var c="fn"+b;d.state[c]={vars:[],body:[],own:{}};d.state.computing=c;var e=d.nextId();d.recurse(a,e);d.return_(e);d.state.inputs.push(c);a.watchId=b});this.state.computing="fn";this.stage="main";this.recurse(c);e='"'+this.USE+" "+this.STRICT+
-'";\n'+this.filterPrefix()+"var fn="+this.generateFunction("fn","s,l,a,i")+e+this.watchFns()+"return fn;";e=(new Function("$filter","ensureSafeMemberName","ensureSafeObject","ensureSafeFunction","getStringValue","ensureSafeAssignContext","ifDefined","plus","text",e))(this.$filter,Va,xa,kd,jd,ld,Zf,md,a);this.state=this.stage=u;e.literal=qd(c);e.constant=c.constant;return e},USE:"use",STRICT:"strict",watchFns:function(){var a=[],b=this.state.inputs,d=this;n(b,function(b){a.push("var "+b+"="+d.generateFunction(b,
-"s"))});b.length&&a.push("fn.inputs=["+b.join(",")+"];");return a.join("")},generateFunction:function(a,b){return"function("+b+"){"+this.varsPrefix(a)+this.body(a)+"};"},filterPrefix:function(){var a=[],b=this;n(this.state.filters,function(d,c){a.push(d+"=$filter("+b.escape(c)+")")});return a.length?"var "+a.join(",")+";":""},varsPrefix:function(a){return this.state[a].vars.length?"var "+this.state[a].vars.join(",")+";":""},body:function(a){return this.state[a].body.join("")},recurse:function(a,b,
-d,c,e,f){var g,h,k=this,l,m;c=c||x;if(!f&&y(a.watchId))b=b||this.nextId(),this.if_("i",this.lazyAssign(b,this.computedMember("i",a.watchId)),this.lazyRecurse(a,b,d,c,e,!0));else switch(a.type){case s.Program:n(a.body,function(b,c){k.recurse(b.expression,u,u,function(a){h=a});c!==a.body.length-1?k.current().body.push(h,";"):k.return_(h)});break;case s.Literal:m=this.escape(a.value);this.assign(b,m);c(m);break;case s.UnaryExpression:this.recurse(a.argument,u,u,function(a){h=a});m=a.operator+"("+this.ifDefined(h,
-0)+")";this.assign(b,m);c(m);break;case s.BinaryExpression:this.recurse(a.left,u,u,function(a){g=a});this.recurse(a.right,u,u,function(a){h=a});m="+"===a.operator?this.plus(g,h):"-"===a.operator?this.ifDefined(g,0)+a.operator+this.ifDefined(h,0):"("+g+")"+a.operator+"("+h+")";this.assign(b,m);c(m);break;case s.LogicalExpression:b=b||this.nextId();k.recurse(a.left,b);k.if_("&&"===a.operator?b:k.not(b),k.lazyRecurse(a.right,b));c(b);break;case s.ConditionalExpression:b=b||this.nextId();k.recurse(a.test,
-b);k.if_(b,k.lazyRecurse(a.alternate,b),k.lazyRecurse(a.consequent,b));c(b);break;case s.Identifier:b=b||this.nextId();d&&(d.context="inputs"===k.stage?"s":this.assign(this.nextId(),this.getHasOwnProperty("l",a.name)+"?l:s"),d.computed=!1,d.name=a.name);Va(a.name);k.if_("inputs"===k.stage||k.not(k.getHasOwnProperty("l",a.name)),function(){k.if_("inputs"===k.stage||"s",function(){e&&1!==e&&k.if_(k.not(k.nonComputedMember("s",a.name)),k.lazyAssign(k.nonComputedMember("s",a.name),"{}"));k.assign(b,k.nonComputedMember("s",
-a.name))})},b&&k.lazyAssign(b,k.nonComputedMember("l",a.name)));(k.state.expensiveChecks||Fb(a.name))&&k.addEnsureSafeObject(b);c(b);break;case s.MemberExpression:g=d&&(d.context=this.nextId())||this.nextId();b=b||this.nextId();k.recurse(a.object,g,u,function(){k.if_(k.notNull(g),function(){if(a.computed)h=k.nextId(),k.recurse(a.property,h),k.getStringValue(h),k.addEnsureSafeMemberName(h),e&&1!==e&&k.if_(k.not(k.computedMember(g,h)),k.lazyAssign(k.computedMember(g,h),"{}")),m=k.ensureSafeObject(k.computedMember(g,
-h)),k.assign(b,m),d&&(d.computed=!0,d.name=h);else{Va(a.property.name);e&&1!==e&&k.if_(k.not(k.nonComputedMember(g,a.property.name)),k.lazyAssign(k.nonComputedMember(g,a.property.name),"{}"));m=k.nonComputedMember(g,a.property.name);if(k.state.expensiveChecks||Fb(a.property.name))m=k.ensureSafeObject(m);k.assign(b,m);d&&(d.computed=!1,d.name=a.property.name)}},function(){k.assign(b,"undefined")});c(b)},!!e);break;case s.CallExpression:b=b||this.nextId();a.filter?(h=k.filter(a.callee.name),l=[],n(a.arguments,
-function(a){var b=k.nextId();k.recurse(a,b);l.push(b)}),m=h+"("+l.join(",")+")",k.assign(b,m),c(b)):(h=k.nextId(),g={},l=[],k.recurse(a.callee,h,g,function(){k.if_(k.notNull(h),function(){k.addEnsureSafeFunction(h);n(a.arguments,function(a){k.recurse(a,k.nextId(),u,function(a){l.push(k.ensureSafeObject(a))})});g.name?(k.state.expensiveChecks||k.addEnsureSafeObject(g.context),m=k.member(g.context,g.name,g.computed)+"("+l.join(",")+")"):m=h+"("+l.join(",")+")";m=k.ensureSafeObject(m);k.assign(b,m)},
-function(){k.assign(b,"undefined")});c(b)}));break;case s.AssignmentExpression:h=this.nextId();g={};if(!od(a.left))throw ba("lval");this.recurse(a.left,u,g,function(){k.if_(k.notNull(g.context),function(){k.recurse(a.right,h);k.addEnsureSafeObject(k.member(g.context,g.name,g.computed));k.addEnsureSafeAssignContext(g.context);m=k.member(g.context,g.name,g.computed)+a.operator+h;k.assign(b,m);c(b||m)})},1);break;case s.ArrayExpression:l=[];n(a.elements,function(a){k.recurse(a,k.nextId(),u,function(a){l.push(a)})});
-m="["+l.join(",")+"]";this.assign(b,m);c(m);break;case s.ObjectExpression:l=[];n(a.properties,function(a){k.recurse(a.value,k.nextId(),u,function(b){l.push(k.escape(a.key.type===s.Identifier?a.key.name:""+a.key.value)+":"+b)})});m="{"+l.join(",")+"}";this.assign(b,m);c(m);break;case s.ThisExpression:this.assign(b,"s");c("s");break;case s.NGValueParameter:this.assign(b,"v"),c("v")}},getHasOwnProperty:function(a,b){var d=a+"."+b,c=this.current().own;c.hasOwnProperty(d)||(c[d]=this.nextId(!1,a+"&&("+
-this.escape(b)+" in "+a+")"));return c[d]},assign:function(a,b){if(a)return this.current().body.push(a,"=",b,";"),a},filter:function(a){this.state.filters.hasOwnProperty(a)||(this.state.filters[a]=this.nextId(!0));return this.state.filters[a]},ifDefined:function(a,b){return"ifDefined("+a+","+this.escape(b)+")"},plus:function(a,b){return"plus("+a+","+b+")"},return_:function(a){this.current().body.push("return ",a,";")},if_:function(a,b,d){if(!0===a)b();else{var c=this.current().body;c.push("if(",a,
-"){");b();c.push("}");d&&(c.push("else{"),d(),c.push("}"))}},not:function(a){return"!("+a+")"},notNull:function(a){return a+"!=null"},nonComputedMember:function(a,b){return a+"."+b},computedMember:function(a,b){return a+"["+b+"]"},member:function(a,b,d){return d?this.computedMember(a,b):this.nonComputedMember(a,b)},addEnsureSafeObject:function(a){this.current().body.push(this.ensureSafeObject(a),";")},addEnsureSafeMemberName:function(a){this.current().body.push(this.ensureSafeMemberName(a),";")},
-addEnsureSafeFunction:function(a){this.current().body.push(this.ensureSafeFunction(a),";")},addEnsureSafeAssignContext:function(a){this.current().body.push(this.ensureSafeAssignContext(a),";")},ensureSafeObject:function(a){return"ensureSafeObject("+a+",text)"},ensureSafeMemberName:function(a){return"ensureSafeMemberName("+a+",text)"},ensureSafeFunction:function(a){return"ensureSafeFunction("+a+",text)"},getStringValue:function(a){this.assign(a,"getStringValue("+a+",text)")},ensureSafeAssignContext:function(a){return"ensureSafeAssignContext("+
-a+",text)"},lazyRecurse:function(a,b,d,c,e,f){var g=this;return function(){g.recurse(a,b,d,c,e,f)}},lazyAssign:function(a,b){var d=this;return function(){d.assign(a,b)}},stringEscapeRegex:/[^ a-zA-Z0-9]/g,stringEscapeFn:function(a){return"\\u"+("0000"+a.charCodeAt(0).toString(16)).slice(-4)},escape:function(a){if(E(a))return"'"+a.replace(this.stringEscapeRegex,this.stringEscapeFn)+"'";if(Q(a))return a.toString();if(!0===a)return"true";if(!1===a)return"false";if(null===a)return"null";if("undefined"===
-typeof a)return"undefined";throw ba("esc");},nextId:function(a,b){var d="v"+this.state.nextId++;a||this.current().vars.push(d+(b?"="+b:""));return d},current:function(){return this.state[this.state.computing]}};sd.prototype={compile:function(a,b){var d=this,c=this.astBuilder.ast(a);this.expression=a;this.expensiveChecks=b;W(c,d.$filter);var e,f;if(e=pd(c))f=this.recurse(e);e=nd(c.body);var g;e&&(g=[],n(e,function(a,b){var c=d.recurse(a);a.input=c;g.push(c);a.watchId=b}));var h=[];n(c.body,function(a){h.push(d.recurse(a.expression))});
-e=0===c.body.length?function(){}:1===c.body.length?h[0]:function(a,b){var c;n(h,function(d){c=d(a,b)});return c};f&&(e.assign=function(a,b,c){return f(a,c,b)});g&&(e.inputs=g);e.literal=qd(c);e.constant=c.constant;return e},recurse:function(a,b,d){var c,e,f=this,g;if(a.input)return this.inputs(a.input,a.watchId);switch(a.type){case s.Literal:return this.value(a.value,b);case s.UnaryExpression:return e=this.recurse(a.argument),this["unary"+a.operator](e,b);case s.BinaryExpression:return c=this.recurse(a.left),
-e=this.recurse(a.right),this["binary"+a.operator](c,e,b);case s.LogicalExpression:return c=this.recurse(a.left),e=this.recurse(a.right),this["binary"+a.operator](c,e,b);case s.ConditionalExpression:return this["ternary?:"](this.recurse(a.test),this.recurse(a.alternate),this.recurse(a.consequent),b);case s.Identifier:return Va(a.name,f.expression),f.identifier(a.name,f.expensiveChecks||Fb(a.name),b,d,f.expression);case s.MemberExpression:return c=this.recurse(a.object,!1,!!d),a.computed||(Va(a.property.name,
-f.expression),e=a.property.name),a.computed&&(e=this.recurse(a.property)),a.computed?this.computedMember(c,e,b,d,f.expression):this.nonComputedMember(c,e,f.expensiveChecks,b,d,f.expression);case s.CallExpression:return g=[],n(a.arguments,function(a){g.push(f.recurse(a))}),a.filter&&(e=this.$filter(a.callee.name)),a.filter||(e=this.recurse(a.callee,!0)),a.filter?function(a,c,d,f){for(var r=[],n=0;n<g.length;++n)r.push(g[n](a,c,d,f));a=e.apply(u,r,f);return b?{context:u,name:u,value:a}:a}:function(a,
-c,d,m){var r=e(a,c,d,m),n;if(null!=r.value){xa(r.context,f.expression);kd(r.value,f.expression);n=[];for(var q=0;q<g.length;++q)n.push(xa(g[q](a,c,d,m),f.expression));n=xa(r.value.apply(r.context,n),f.expression)}return b?{value:n}:n};case s.AssignmentExpression:return c=this.recurse(a.left,!0,1),e=this.recurse(a.right),function(a,d,g,m){var n=c(a,d,g,m);a=e(a,d,g,m);xa(n.value,f.expression);ld(n.context);n.context[n.name]=a;return b?{value:a}:a};case s.ArrayExpression:return g=[],n(a.elements,function(a){g.push(f.recurse(a))}),
-function(a,c,d,e){for(var f=[],n=0;n<g.length;++n)f.push(g[n](a,c,d,e));return b?{value:f}:f};case s.ObjectExpression:return g=[],n(a.properties,function(a){g.push({key:a.key.type===s.Identifier?a.key.name:""+a.key.value,value:f.recurse(a.value)})}),function(a,c,d,e){for(var f={},n=0;n<g.length;++n)f[g[n].key]=g[n].value(a,c,d,e);return b?{value:f}:f};case s.ThisExpression:return function(a){return b?{value:a}:a};case s.NGValueParameter:return function(a,c,d,e){return b?{value:d}:d}}},"unary+":function(a,
-b){return function(d,c,e,f){d=a(d,c,e,f);d=y(d)?+d:0;return b?{value:d}:d}},"unary-":function(a,b){return function(d,c,e,f){d=a(d,c,e,f);d=y(d)?-d:0;return b?{value:d}:d}},"unary!":function(a,b){return function(d,c,e,f){d=!a(d,c,e,f);return b?{value:d}:d}},"binary+":function(a,b,d){return function(c,e,f,g){var h=a(c,e,f,g);c=b(c,e,f,g);h=md(h,c);return d?{value:h}:h}},"binary-":function(a,b,d){return function(c,e,f,g){var h=a(c,e,f,g);c=b(c,e,f,g);h=(y(h)?h:0)-(y(c)?c:0);return d?{value:h}:h}},"binary*":function(a,
-b,d){return function(c,e,f,g){c=a(c,e,f,g)*b(c,e,f,g);return d?{value:c}:c}},"binary/":function(a,b,d){return function(c,e,f,g){c=a(c,e,f,g)/b(c,e,f,g);return d?{value:c}:c}},"binary%":function(a,b,d){return function(c,e,f,g){c=a(c,e,f,g)%b(c,e,f,g);return d?{value:c}:c}},"binary===":function(a,b,d){return function(c,e,f,g){c=a(c,e,f,g)===b(c,e,f,g);return d?{value:c}:c}},"binary!==":function(a,b,d){return function(c,e,f,g){c=a(c,e,f,g)!==b(c,e,f,g);return d?{value:c}:c}},"binary==":function(a,b,
-d){return function(c,e,f,g){c=a(c,e,f,g)==b(c,e,f,g);return d?{value:c}:c}},"binary!=":function(a,b,d){return function(c,e,f,g){c=a(c,e,f,g)!=b(c,e,f,g);return d?{value:c}:c}},"binary<":function(a,b,d){return function(c,e,f,g){c=a(c,e,f,g)<b(c,e,f,g);return d?{value:c}:c}},"binary>":function(a,b,d){return function(c,e,f,g){c=a(c,e,f,g)>b(c,e,f,g);return d?{value:c}:c}},"binary<=":function(a,b,d){return function(c,e,f,g){c=a(c,e,f,g)<=b(c,e,f,g);return d?{value:c}:c}},"binary>=":function(a,b,d){return function(c,
-e,f,g){c=a(c,e,f,g)>=b(c,e,f,g);return d?{value:c}:c}},"binary&&":function(a,b,d){return function(c,e,f,g){c=a(c,e,f,g)&&b(c,e,f,g);return d?{value:c}:c}},"binary||":function(a,b,d){return function(c,e,f,g){c=a(c,e,f,g)||b(c,e,f,g);return d?{value:c}:c}},"ternary?:":function(a,b,d,c){return function(e,f,g,h){e=a(e,f,g,h)?b(e,f,g,h):d(e,f,g,h);return c?{value:e}:e}},value:function(a,b){return function(){return b?{context:u,name:u,value:a}:a}},identifier:function(a,b,d,c,e){return function(f,g,h,k){f=
-g&&a in g?g:f;c&&1!==c&&f&&!f[a]&&(f[a]={});g=f?f[a]:u;b&&xa(g,e);return d?{context:f,name:a,value:g}:g}},computedMember:function(a,b,d,c,e){return function(f,g,h,k){var l=a(f,g,h,k),m,n;null!=l&&(m=b(f,g,h,k),m=jd(m),Va(m,e),c&&1!==c&&l&&!l[m]&&(l[m]={}),n=l[m],xa(n,e));return d?{context:l,name:m,value:n}:n}},nonComputedMember:function(a,b,d,c,e,f){return function(g,h,k,l){g=a(g,h,k,l);e&&1!==e&&g&&!g[b]&&(g[b]={});h=null!=g?g[b]:u;(d||Fb(b))&&xa(h,f);return c?{context:g,name:b,value:h}:h}},inputs:function(a,
-b){return function(d,c,e,f){return f?f[b]:a(d,c,e)}}};var gc=function(a,b,d){this.lexer=a;this.$filter=b;this.options=d;this.ast=new s(this.lexer);this.astCompiler=d.csp?new sd(this.ast,b):new rd(this.ast,b)};gc.prototype={constructor:gc,parse:function(a){return this.astCompiler.compile(a,this.options.expensiveChecks)}};$();$();var $f=Object.prototype.valueOf,ya=G("$sce"),la={HTML:"html",CSS:"css",URL:"url",RESOURCE_URL:"resourceUrl",JS:"js"},ha=G("$compile"),Y=X.createElement("a"),wd=wa(S.location.href);
-xd.$inject=["$document"];Jc.$inject=["$provide"];yd.$inject=["$locale"];Ad.$inject=["$locale"];var ic=".",jg={yyyy:ca("FullYear",4),yy:ca("FullYear",2,0,!0),y:ca("FullYear",1),MMMM:Hb("Month"),MMM:Hb("Month",!0),MM:ca("Month",2,1),M:ca("Month",1,1),dd:ca("Date",2),d:ca("Date",1),HH:ca("Hours",2),H:ca("Hours",1),hh:ca("Hours",2,-12),h:ca("Hours",1,-12),mm:ca("Minutes",2),m:ca("Minutes",1),ss:ca("Seconds",2),s:ca("Seconds",1),sss:ca("Milliseconds",3),EEEE:Hb("Day"),EEE:Hb("Day",!0),a:function(a,b){return 12>
-a.getHours()?b.AMPMS[0]:b.AMPMS[1]},Z:function(a,b,d){a=-1*d;return a=(0<=a?"+":"")+(Gb(Math[0<a?"floor":"ceil"](a/60),2)+Gb(Math.abs(a%60),2))},ww:Ed(2),w:Ed(1),G:jc,GG:jc,GGG:jc,GGGG:function(a,b){return 0>=a.getFullYear()?b.ERANAMES[0]:b.ERANAMES[1]}},ig=/((?:[^yMdHhmsaZEwG']+)|(?:'(?:[^']|'')*')|(?:E+|y+|M+|d+|H+|h+|m+|s+|a|Z|G+|w+))(.*)/,hg=/^\-?\d+$/;zd.$inject=["$locale"];var eg=na(F),fg=na(sb);Bd.$inject=["$parse"];var he=na({restrict:"E",compile:function(a,b){if(!b.href&&!b.xlinkHref)return function(a,
-b){if("a"===b[0].nodeName.toLowerCase()){var e="[object SVGAnimatedString]"===sa.call(b.prop("href"))?"xlink:href":"href";b.on("click",function(a){b.attr(e)||a.preventDefault()})}}}}),tb={};n(Cb,function(a,b){function d(a,d,e){a.$watch(e[c],function(a){e.$set(b,!!a)})}if("multiple"!=a){var c=va("ng-"+b),e=d;"checked"===a&&(e=function(a,b,e){e.ngModel!==e[c]&&d(a,b,e)});tb[c]=function(){return{restrict:"A",priority:100,link:e}}}});n(Zc,function(a,b){tb[b]=function(){return{priority:100,link:function(a,
-c,e){if("ngPattern"===b&&"/"==e.ngPattern.charAt(0)&&(c=e.ngPattern.match(lg))){e.$set("ngPattern",new RegExp(c[1],c[2]));return}a.$watch(e[b],function(a){e.$set(b,a)})}}}});n(["src","srcset","href"],function(a){var b=va("ng-"+a);tb[b]=function(){return{priority:99,link:function(d,c,e){var f=a,g=a;"href"===a&&"[object SVGAnimatedString]"===sa.call(c.prop("href"))&&(g="xlinkHref",e.$attr[g]="xlink:href",f=null);e.$observe(b,function(b){b?(e.$set(g,b),Ha&&f&&c.prop(f,e[g])):"href"===a&&e.$set(g,null)})}}}});
-var Ib={$addControl:x,$$renameControl:function(a,b){a.$name=b},$removeControl:x,$setValidity:x,$setDirty:x,$setPristine:x,$setSubmitted:x};Fd.$inject=["$element","$attrs","$scope","$animate","$interpolate"];var Nd=function(a){return["$timeout","$parse",function(b,d){function c(a){return""===a?d('this[""]').assign:d(a).assign||x}return{name:"form",restrict:a?"EAC":"E",require:["form","^^?form"],controller:Fd,compile:function(d,f){d.addClass(Wa).addClass(mb);var g=f.name?"name":a&&f.ngForm?"ngForm":
-!1;return{pre:function(a,d,e,f){var n=f[0];if(!("action"in e)){var q=function(b){a.$apply(function(){n.$commitViewValue();n.$setSubmitted()});b.preventDefault()};d[0].addEventListener("submit",q,!1);d.on("$destroy",function(){b(function(){d[0].removeEventListener("submit",q,!1)},0,!1)})}(f[1]||n.$$parentForm).$addControl(n);var s=g?c(n.$name):x;g&&(s(a,n),e.$observe(g,function(b){n.$name!==b&&(s(a,u),n.$$parentForm.$$renameControl(n,b),s=c(n.$name),s(a,n))}));d.on("$destroy",function(){n.$$parentForm.$removeControl(n);
-s(a,u);M(n,Ib)})}}}}}]},ie=Nd(),ve=Nd(!0),kg=/\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+([+-][0-2]\d:[0-5]\d|Z)/,tg=/^[A-Za-z][A-Za-z\d.+-]*:\/*(?:\w+(?::\w+)?@)?[^\s/]+(?::\d+)?(?:\/[\w#!:.?+=&%@\-/]*)?$/,ug=/^[a-z0-9!#$%&'*+\/=?^_`{|}~.-]+@[a-z0-9]([a-z0-9-]*[a-z0-9])?(\.[a-z0-9]([a-z0-9-]*[a-z0-9])?)*$/i,vg=/^\s*(\-|\+)?(\d+|(\d*(\.\d*)))([eE][+-]?\d+)?\s*$/,Od=/^(\d{4})-(\d{2})-(\d{2})$/,Pd=/^(\d{4})-(\d\d)-(\d\d)T(\d\d):(\d\d)(?::(\d\d)(\.\d{1,3})?)?$/,mc=/^(\d{4})-W(\d\d)$/,Qd=/^(\d{4})-(\d\d)$/,
-Rd=/^(\d\d):(\d\d)(?::(\d\d)(\.\d{1,3})?)?$/,Sd={text:function(a,b,d,c,e,f){jb(a,b,d,c,e,f);kc(c)},date:kb("date",Od,Kb(Od,["yyyy","MM","dd"]),"yyyy-MM-dd"),"datetime-local":kb("datetimelocal",Pd,Kb(Pd,"yyyy MM dd HH mm ss sss".split(" ")),"yyyy-MM-ddTHH:mm:ss.sss"),time:kb("time",Rd,Kb(Rd,["HH","mm","ss","sss"]),"HH:mm:ss.sss"),week:kb("week",mc,function(a,b){if(da(a))return a;if(E(a)){mc.lastIndex=0;var d=mc.exec(a);if(d){var c=+d[1],e=+d[2],f=d=0,g=0,h=0,k=Dd(c),e=7*(e-1);b&&(d=b.getHours(),f=
-b.getMinutes(),g=b.getSeconds(),h=b.getMilliseconds());return new Date(c,0,k.getDate()+e,d,f,g,h)}}return NaN},"yyyy-Www"),month:kb("month",Qd,Kb(Qd,["yyyy","MM"]),"yyyy-MM"),number:function(a,b,d,c,e,f){Hd(a,b,d,c);jb(a,b,d,c,e,f);c.$$parserName="number";c.$parsers.push(function(a){return c.$isEmpty(a)?null:vg.test(a)?parseFloat(a):u});c.$formatters.push(function(a){if(!c.$isEmpty(a)){if(!Q(a))throw lb("numfmt",a);a=a.toString()}return a});if(y(d.min)||d.ngMin){var g;c.$validators.min=function(a){return c.$isEmpty(a)||
-q(g)||a>=g};d.$observe("min",function(a){y(a)&&!Q(a)&&(a=parseFloat(a,10));g=Q(a)&&!isNaN(a)?a:u;c.$validate()})}if(y(d.max)||d.ngMax){var h;c.$validators.max=function(a){return c.$isEmpty(a)||q(h)||a<=h};d.$observe("max",function(a){y(a)&&!Q(a)&&(a=parseFloat(a,10));h=Q(a)&&!isNaN(a)?a:u;c.$validate()})}},url:function(a,b,d,c,e,f){jb(a,b,d,c,e,f);kc(c);c.$$parserName="url";c.$validators.url=function(a,b){var d=a||b;return c.$isEmpty(d)||tg.test(d)}},email:function(a,b,d,c,e,f){jb(a,b,d,c,e,f);kc(c);
-c.$$parserName="email";c.$validators.email=function(a,b){var d=a||b;return c.$isEmpty(d)||ug.test(d)}},radio:function(a,b,d,c){q(d.name)&&b.attr("name",++nb);b.on("click",function(a){b[0].checked&&c.$setViewValue(d.value,a&&a.type)});c.$render=function(){b[0].checked=d.value==c.$viewValue};d.$observe("value",c.$render)},checkbox:function(a,b,d,c,e,f,g,h){var k=Id(h,a,"ngTrueValue",d.ngTrueValue,!0),l=Id(h,a,"ngFalseValue",d.ngFalseValue,!1);b.on("click",function(a){c.$setViewValue(b[0].checked,a&&
-a.type)});c.$render=function(){b[0].checked=c.$viewValue};c.$isEmpty=function(a){return!1===a};c.$formatters.push(function(a){return ma(a,k)});c.$parsers.push(function(a){return a?k:l})},hidden:x,button:x,submit:x,reset:x,file:x},Dc=["$browser","$sniffer","$filter","$parse",function(a,b,d,c){return{restrict:"E",require:["?ngModel"],link:{pre:function(e,f,g,h){h[0]&&(Sd[F(g.type)]||Sd.text)(e,f,g,h[0],b,a,d,c)}}}}],wg=/^(true|false|\d+)$/,Ne=function(){return{restrict:"A",priority:100,compile:function(a,
-b){return wg.test(b.ngValue)?function(a,b,e){e.$set("value",a.$eval(e.ngValue))}:function(a,b,e){a.$watch(e.ngValue,function(a){e.$set("value",a)})}}}},ne=["$compile",function(a){return{restrict:"AC",compile:function(b){a.$$addBindingClass(b);return function(b,c,e){a.$$addBindingInfo(c,e.ngBind);c=c[0];b.$watch(e.ngBind,function(a){c.textContent=q(a)?"":a})}}}}],pe=["$interpolate","$compile",function(a,b){return{compile:function(d){b.$$addBindingClass(d);return function(c,d,f){c=a(d.attr(f.$attr.ngBindTemplate));
-b.$$addBindingInfo(d,c.expressions);d=d[0];f.$observe("ngBindTemplate",function(a){d.textContent=q(a)?"":a})}}}}],oe=["$sce","$parse","$compile",function(a,b,d){return{restrict:"A",compile:function(c,e){var f=b(e.ngBindHtml),g=b(e.ngBindHtml,function(a){return(a||"").toString()});d.$$addBindingClass(c);return function(b,c,e){d.$$addBindingInfo(c,e.ngBindHtml);b.$watch(g,function(){c.html(a.getTrustedHtml(f(b))||"")})}}}}],Me=na({restrict:"A",require:"ngModel",link:function(a,b,d,c){c.$viewChangeListeners.push(function(){a.$eval(d.ngChange)})}}),
-qe=lc("",!0),se=lc("Odd",0),re=lc("Even",1),te=La({compile:function(a,b){b.$set("ngCloak",u);a.removeClass("ng-cloak")}}),ue=[function(){return{restrict:"A",scope:!0,controller:"@",priority:500}}],Ic={},xg={blur:!0,focus:!0};n("click dblclick mousedown mouseup mouseover mouseout mousemove mouseenter mouseleave keydown keyup keypress submit focus blur copy cut paste".split(" "),function(a){var b=va("ng-"+a);Ic[b]=["$parse","$rootScope",function(d,c){return{restrict:"A",compile:function(e,f){var g=
-d(f[b],null,!0);return function(b,d){d.on(a,function(d){var e=function(){g(b,{$event:d})};xg[a]&&c.$$phase?b.$evalAsync(e):b.$apply(e)})}}}}]});var xe=["$animate",function(a){return{multiElement:!0,transclude:"element",priority:600,terminal:!0,restrict:"A",$$tlb:!0,link:function(b,d,c,e,f){var g,h,k;b.$watch(c.ngIf,function(b){b?h||f(function(b,e){h=e;b[b.length++]=X.createComment(" end ngIf: "+c.ngIf+" ");g={clone:b};a.enter(b,d.parent(),d)}):(k&&(k.remove(),k=null),h&&(h.$destroy(),h=null),g&&(k=
-rb(g.clone),a.leave(k).then(function(){k=null}),g=null))})}}}],ye=["$templateRequest","$anchorScroll","$animate",function(a,b,d){return{restrict:"ECA",priority:400,terminal:!0,transclude:"element",controller:fa.noop,compile:function(c,e){var f=e.ngInclude||e.src,g=e.onload||"",h=e.autoscroll;return function(c,e,m,n,q){var s=0,v,u,p,C=function(){u&&(u.remove(),u=null);v&&(v.$destroy(),v=null);p&&(d.leave(p).then(function(){u=null}),u=p,p=null)};c.$watch(f,function(f){var m=function(){!y(h)||h&&!c.$eval(h)||
-b()},u=++s;f?(a(f,!0).then(function(a){if(u===s){var b=c.$new();n.template=a;a=q(b,function(a){C();d.enter(a,null,e).then(m)});v=b;p=a;v.$emit("$includeContentLoaded",f);c.$eval(g)}},function(){u===s&&(C(),c.$emit("$includeContentError",f))}),c.$emit("$includeContentRequested",f)):(C(),n.template=null)})}}}}],Pe=["$compile",function(a){return{restrict:"ECA",priority:-400,require:"ngInclude",link:function(b,d,c,e){/SVG/.test(d[0].toString())?(d.empty(),a(Lc(e.template,X).childNodes)(b,function(a){d.append(a)},
-{futureParentElement:d})):(d.html(e.template),a(d.contents())(b))}}}],ze=La({priority:450,compile:function(){return{pre:function(a,b,d){a.$eval(d.ngInit)}}}}),Le=function(){return{restrict:"A",priority:100,require:"ngModel",link:function(a,b,d,c){var e=b.attr(d.$attr.ngList)||", ",f="false"!==d.ngTrim,g=f?U(e):e;c.$parsers.push(function(a){if(!q(a)){var b=[];a&&n(a.split(g),function(a){a&&b.push(f?U(a):a)});return b}});c.$formatters.push(function(a){return I(a)?a.join(e):u});c.$isEmpty=function(a){return!a||
-!a.length}}}},mb="ng-valid",Jd="ng-invalid",Wa="ng-pristine",Jb="ng-dirty",Ld="ng-pending",lb=G("ngModel"),yg=["$scope","$exceptionHandler","$attrs","$element","$parse","$animate","$timeout","$rootScope","$q","$interpolate",function(a,b,d,c,e,f,g,h,k,l){this.$modelValue=this.$viewValue=Number.NaN;this.$$rawModelValue=u;this.$validators={};this.$asyncValidators={};this.$parsers=[];this.$formatters=[];this.$viewChangeListeners=[];this.$untouched=!0;this.$touched=!1;this.$pristine=!0;this.$dirty=!1;
-this.$valid=!0;this.$invalid=!1;this.$error={};this.$$success={};this.$pending=u;this.$name=l(d.name||"",!1)(a);this.$$parentForm=Ib;var m=e(d.ngModel),r=m.assign,t=m,s=r,v=null,B,p=this;this.$$setOptions=function(a){if((p.$options=a)&&a.getterSetter){var b=e(d.ngModel+"()"),f=e(d.ngModel+"($$$p)");t=function(a){var c=m(a);z(c)&&(c=b(a));return c};s=function(a,b){z(m(a))?f(a,{$$$p:p.$modelValue}):r(a,p.$modelValue)}}else if(!m.assign)throw lb("nonassign",d.ngModel,ua(c));};this.$render=x;this.$isEmpty=
-function(a){return q(a)||""===a||null===a||a!==a};var C=0;Gd({ctrl:this,$element:c,set:function(a,b){a[b]=!0},unset:function(a,b){delete a[b]},$animate:f});this.$setPristine=function(){p.$dirty=!1;p.$pristine=!0;f.removeClass(c,Jb);f.addClass(c,Wa)};this.$setDirty=function(){p.$dirty=!0;p.$pristine=!1;f.removeClass(c,Wa);f.addClass(c,Jb);p.$$parentForm.$setDirty()};this.$setUntouched=function(){p.$touched=!1;p.$untouched=!0;f.setClass(c,"ng-untouched","ng-touched")};this.$setTouched=function(){p.$touched=
-!0;p.$untouched=!1;f.setClass(c,"ng-touched","ng-untouched")};this.$rollbackViewValue=function(){g.cancel(v);p.$viewValue=p.$$lastCommittedViewValue;p.$render()};this.$validate=function(){if(!Q(p.$modelValue)||!isNaN(p.$modelValue)){var a=p.$$rawModelValue,b=p.$valid,c=p.$modelValue,d=p.$options&&p.$options.allowInvalid;p.$$runValidators(a,p.$$lastCommittedViewValue,function(e){d||b===e||(p.$modelValue=e?a:u,p.$modelValue!==c&&p.$$writeModelToScope())})}};this.$$runValidators=function(a,b,c){function d(){var c=
-!0;n(p.$validators,function(d,e){var g=d(a,b);c=c&&g;f(e,g)});return c?!0:(n(p.$asyncValidators,function(a,b){f(b,null)}),!1)}function e(){var c=[],d=!0;n(p.$asyncValidators,function(e,g){var h=e(a,b);if(!h||!z(h.then))throw lb("$asyncValidators",h);f(g,u);c.push(h.then(function(){f(g,!0)},function(a){d=!1;f(g,!1)}))});c.length?k.all(c).then(function(){g(d)},x):g(!0)}function f(a,b){h===C&&p.$setValidity(a,b)}function g(a){h===C&&c(a)}C++;var h=C;(function(){var a=p.$$parserName||"parse";if(q(B))f(a,
-null);else return B||(n(p.$validators,function(a,b){f(b,null)}),n(p.$asyncValidators,function(a,b){f(b,null)})),f(a,B),B;return!0})()?d()?e():g(!1):g(!1)};this.$commitViewValue=function(){var a=p.$viewValue;g.cancel(v);if(p.$$lastCommittedViewValue!==a||""===a&&p.$$hasNativeValidators)p.$$lastCommittedViewValue=a,p.$pristine&&this.$setDirty(),this.$$parseAndValidate()};this.$$parseAndValidate=function(){var b=p.$$lastCommittedViewValue;if(B=q(b)?u:!0)for(var c=0;c<p.$parsers.length;c++)if(b=p.$parsers[c](b),
-q(b)){B=!1;break}Q(p.$modelValue)&&isNaN(p.$modelValue)&&(p.$modelValue=t(a));var d=p.$modelValue,e=p.$options&&p.$options.allowInvalid;p.$$rawModelValue=b;e&&(p.$modelValue=b,p.$modelValue!==d&&p.$$writeModelToScope());p.$$runValidators(b,p.$$lastCommittedViewValue,function(a){e||(p.$modelValue=a?b:u,p.$modelValue!==d&&p.$$writeModelToScope())})};this.$$writeModelToScope=function(){s(a,p.$modelValue);n(p.$viewChangeListeners,function(a){try{a()}catch(c){b(c)}})};this.$setViewValue=function(a,b){p.$viewValue=
-a;p.$options&&!p.$options.updateOnDefault||p.$$debounceViewValueCommit(b)};this.$$debounceViewValueCommit=function(b){var c=0,d=p.$options;d&&y(d.debounce)&&(d=d.debounce,Q(d)?c=d:Q(d[b])?c=d[b]:Q(d["default"])&&(c=d["default"]));g.cancel(v);c?v=g(function(){p.$commitViewValue()},c):h.$$phase?p.$commitViewValue():a.$apply(function(){p.$commitViewValue()})};a.$watch(function(){var b=t(a);if(b!==p.$modelValue&&(p.$modelValue===p.$modelValue||b===b)){p.$modelValue=p.$$rawModelValue=b;B=u;for(var c=p.$formatters,
-d=c.length,e=b;d--;)e=c[d](e);p.$viewValue!==e&&(p.$viewValue=p.$$lastCommittedViewValue=e,p.$render(),p.$$runValidators(b,e,x))}return b})}],Ke=["$rootScope",function(a){return{restrict:"A",require:["ngModel","^?form","^?ngModelOptions"],controller:yg,priority:1,compile:function(b){b.addClass(Wa).addClass("ng-untouched").addClass(mb);return{pre:function(a,b,e,f){var g=f[0];b=f[1]||g.$$parentForm;g.$$setOptions(f[2]&&f[2].$options);b.$addControl(g);e.$observe("name",function(a){g.$name!==a&&g.$$parentForm.$$renameControl(g,
-a)});a.$on("$destroy",function(){g.$$parentForm.$removeControl(g)})},post:function(b,c,e,f){var g=f[0];if(g.$options&&g.$options.updateOn)c.on(g.$options.updateOn,function(a){g.$$debounceViewValueCommit(a&&a.type)});c.on("blur",function(c){g.$touched||(a.$$phase?b.$evalAsync(g.$setTouched):b.$apply(g.$setTouched))})}}}}}],zg=/(\s+|^)default(\s+|$)/,Oe=function(){return{restrict:"A",controller:["$scope","$attrs",function(a,b){var d=this;this.$options=bb(a.$eval(b.ngModelOptions));y(this.$options.updateOn)?
-(this.$options.updateOnDefault=!1,this.$options.updateOn=U(this.$options.updateOn.replace(zg,function(){d.$options.updateOnDefault=!0;return" "}))):this.$options.updateOnDefault=!0}]}},Ae=La({terminal:!0,priority:1E3}),Ag=G("ngOptions"),Bg=/^\s*([\s\S]+?)(?:\s+as\s+([\s\S]+?))?(?:\s+group\s+by\s+([\s\S]+?))?(?:\s+disable\s+when\s+([\s\S]+?))?\s+for\s+(?:([\$\w][\$\w]*)|(?:\(\s*([\$\w][\$\w]*)\s*,\s*([\$\w][\$\w]*)\s*\)))\s+in\s+([\s\S]+?)(?:\s+track\s+by\s+([\s\S]+?))?$/,Ie=["$compile","$parse",function(a,
-b){function d(a,c,d){function e(a,b,c,d,f){this.selectValue=a;this.viewValue=b;this.label=c;this.group=d;this.disabled=f}function l(a){var b;if(!q&&za(a))b=a;else{b=[];for(var c in a)a.hasOwnProperty(c)&&"$"!==c.charAt(0)&&b.push(c)}return b}var m=a.match(Bg);if(!m)throw Ag("iexp",a,ua(c));var n=m[5]||m[7],q=m[6];a=/ as /.test(m[0])&&m[1];var s=m[9];c=b(m[2]?m[1]:n);var v=a&&b(a)||c,u=s&&b(s),p=s?function(a,b){return u(d,b)}:function(a){return Ca(a)},C=function(a,b){return p(a,z(a,b))},w=b(m[2]||
-m[1]),y=b(m[3]||""),B=b(m[4]||""),x=b(m[8]),D={},z=q?function(a,b){D[q]=b;D[n]=a;return D}:function(a){D[n]=a;return D};return{trackBy:s,getTrackByValue:C,getWatchables:b(x,function(a){var b=[];a=a||[];for(var c=l(a),e=c.length,f=0;f<e;f++){var g=a===c?f:c[f],k=z(a[g],g),g=p(a[g],k);b.push(g);if(m[2]||m[1])g=w(d,k),b.push(g);m[4]&&(k=B(d,k),b.push(k))}return b}),getOptions:function(){for(var a=[],b={},c=x(d)||[],f=l(c),g=f.length,m=0;m<g;m++){var n=c===f?m:f[m],r=z(c[n],n),q=v(d,r),n=p(q,r),t=w(d,
-r),u=y(d,r),r=B(d,r),q=new e(n,q,t,u,r);a.push(q);b[n]=q}return{items:a,selectValueMap:b,getOptionFromViewValue:function(a){return b[C(a)]},getViewValueFromOption:function(a){return s?fa.copy(a.viewValue):a.viewValue}}}}}var c=X.createElement("option"),e=X.createElement("optgroup");return{restrict:"A",terminal:!0,require:["select","?ngModel"],link:{pre:function(a,b,c,d){d[0].registerOption=x},post:function(b,g,h,k){function l(a,b){a.element=b;b.disabled=a.disabled;a.label!==b.label&&(b.label=a.label,
-b.textContent=a.label);a.value!==b.value&&(b.value=a.selectValue)}function m(a,b,c,d){b&&F(b.nodeName)===c?c=b:(c=d.cloneNode(!1),b?a.insertBefore(c,b):a.appendChild(c));return c}function r(a){for(var b;a;)b=a.nextSibling,Xb(a),a=b}function q(a){var b=p&&p[0],c=z&&z[0];if(b||c)for(;a&&(a===b||a===c||8===a.nodeType||""===a.value);)a=a.nextSibling;return a}function s(){var a=D&&u.readValue();D=E.getOptions();var b={},d=g[0].firstChild;x&&g.prepend(p);d=q(d);D.items.forEach(function(a){var f,h;a.group?
-(f=b[a.group],f||(f=m(g[0],d,"optgroup",e),d=f.nextSibling,f.label=a.group,f=b[a.group]={groupElement:f,currentOptionElement:f.firstChild}),h=m(f.groupElement,f.currentOptionElement,"option",c),l(a,h),f.currentOptionElement=h.nextSibling):(h=m(g[0],d,"option",c),l(a,h),d=h.nextSibling)});Object.keys(b).forEach(function(a){r(b[a].currentOptionElement)});r(d);v.$render();if(!v.$isEmpty(a)){var f=u.readValue();(E.trackBy?ma(a,f):a===f)||(v.$setViewValue(f),v.$render())}}var v=k[1];if(v){var u=k[0];k=
-h.multiple;for(var p,C=0,w=g.children(),y=w.length;C<y;C++)if(""===w[C].value){p=w.eq(C);break}var x=!!p,z=B(c.cloneNode(!1));z.val("?");var D,E=d(h.ngOptions,g,b);k?(v.$isEmpty=function(a){return!a||0===a.length},u.writeValue=function(a){D.items.forEach(function(a){a.element.selected=!1});a&&a.forEach(function(a){(a=D.getOptionFromViewValue(a))&&!a.disabled&&(a.element.selected=!0)})},u.readValue=function(){var a=g.val()||[],b=[];n(a,function(a){(a=D.selectValueMap[a])&&!a.disabled&&b.push(D.getViewValueFromOption(a))});
-return b},E.trackBy&&b.$watchCollection(function(){if(I(v.$viewValue))return v.$viewValue.map(function(a){return E.getTrackByValue(a)})},function(){v.$render()})):(u.writeValue=function(a){var b=D.getOptionFromViewValue(a);b&&!b.disabled?g[0].value!==b.selectValue&&(z.remove(),x||p.remove(),g[0].value=b.selectValue,b.element.selected=!0,b.element.setAttribute("selected","selected")):null===a||x?(z.remove(),x||g.prepend(p),g.val(""),p.prop("selected",!0),p.attr("selected",!0)):(x||p.remove(),g.prepend(z),
-g.val("?"),z.prop("selected",!0),z.attr("selected",!0))},u.readValue=function(){var a=D.selectValueMap[g.val()];return a&&!a.disabled?(x||p.remove(),z.remove(),D.getViewValueFromOption(a)):null},E.trackBy&&b.$watch(function(){return E.getTrackByValue(v.$viewValue)},function(){v.$render()}));x?(p.remove(),a(p)(b),p.removeClass("ng-scope")):p=B(c.cloneNode(!1));s();b.$watchCollection(E.getWatchables,s)}}}}}],Be=["$locale","$interpolate","$log",function(a,b,d){var c=/{}/g,e=/^when(Minus)?(.+)$/;return{link:function(f,
-g,h){function k(a){g.text(a||"")}var l=h.count,m=h.$attr.when&&g.attr(h.$attr.when),r=h.offset||0,s=f.$eval(m)||{},u={},v=b.startSymbol(),y=b.endSymbol(),p=v+l+"-"+r+y,C=fa.noop,w;n(h,function(a,b){var c=e.exec(b);c&&(c=(c[1]?"-":"")+F(c[2]),s[c]=g.attr(h.$attr[b]))});n(s,function(a,d){u[d]=b(a.replace(c,p))});f.$watch(l,function(b){var c=parseFloat(b),e=isNaN(c);e||c in s||(c=a.pluralCat(c-r));c===w||e&&Q(w)&&isNaN(w)||(C(),e=u[c],q(e)?(null!=b&&d.debug("ngPluralize: no rule defined for '"+c+"' in "+
-m),C=x,k()):C=f.$watch(e,k),w=c)})}}}],Ce=["$parse","$animate",function(a,b){var d=G("ngRepeat"),c=function(a,b,c,d,k,l,m){a[c]=d;k&&(a[k]=l);a.$index=b;a.$first=0===b;a.$last=b===m-1;a.$middle=!(a.$first||a.$last);a.$odd=!(a.$even=0===(b&1))};return{restrict:"A",multiElement:!0,transclude:"element",priority:1E3,terminal:!0,$$tlb:!0,compile:function(e,f){var g=f.ngRepeat,h=X.createComment(" end ngRepeat: "+g+" "),k=g.match(/^\s*([\s\S]+?)\s+in\s+([\s\S]+?)(?:\s+as\s+([\s\S]+?))?(?:\s+track\s+by\s+([\s\S]+?))?\s*$/);
-if(!k)throw d("iexp",g);var l=k[1],m=k[2],r=k[3],q=k[4],k=l.match(/^(?:(\s*[\$\w]+)|\(\s*([\$\w]+)\s*,\s*([\$\w]+)\s*\))$/);if(!k)throw d("iidexp",l);var s=k[3]||k[1],v=k[2];if(r&&(!/^[$a-zA-Z_][$a-zA-Z0-9_]*$/.test(r)||/^(null|undefined|this|\$index|\$first|\$middle|\$last|\$even|\$odd|\$parent|\$root|\$id)$/.test(r)))throw d("badident",r);var x,p,y,w,z={$id:Ca};q?x=a(q):(y=function(a,b){return Ca(b)},w=function(a){return a});return function(a,e,f,k,l){x&&(p=function(b,c,d){v&&(z[v]=b);z[s]=c;z.$index=
-d;return x(a,z)});var q=$();a.$watchCollection(m,function(f){var k,m,t=e[0],x,z=$(),D,E,H,F,I,G,J;r&&(a[r]=f);if(za(f))I=f,m=p||y;else for(J in m=p||w,I=[],f)qa.call(f,J)&&"$"!==J.charAt(0)&&I.push(J);D=I.length;J=Array(D);for(k=0;k<D;k++)if(E=f===I?k:I[k],H=f[E],F=m(E,H,k),q[F])G=q[F],delete q[F],z[F]=G,J[k]=G;else{if(z[F])throw n(J,function(a){a&&a.scope&&(q[a.id]=a)}),d("dupes",g,F,H);J[k]={id:F,scope:u,clone:u};z[F]=!0}for(x in q){G=q[x];F=rb(G.clone);b.leave(F);if(F[0].parentNode)for(k=0,m=F.length;k<
-m;k++)F[k].$$NG_REMOVED=!0;G.scope.$destroy()}for(k=0;k<D;k++)if(E=f===I?k:I[k],H=f[E],G=J[k],G.scope){x=t;do x=x.nextSibling;while(x&&x.$$NG_REMOVED);G.clone[0]!=x&&b.move(rb(G.clone),null,B(t));t=G.clone[G.clone.length-1];c(G.scope,k,s,H,v,E,D)}else l(function(a,d){G.scope=d;var e=h.cloneNode(!1);a[a.length++]=e;b.enter(a,null,B(t));t=e;G.clone=a;z[G.id]=G;c(G.scope,k,s,H,v,E,D)});q=z})}}}}],De=["$animate",function(a){return{restrict:"A",multiElement:!0,link:function(b,d,c){b.$watch(c.ngShow,function(b){a[b?
-"removeClass":"addClass"](d,"ng-hide",{tempClasses:"ng-hide-animate"})})}}}],we=["$animate",function(a){return{restrict:"A",multiElement:!0,link:function(b,d,c){b.$watch(c.ngHide,function(b){a[b?"addClass":"removeClass"](d,"ng-hide",{tempClasses:"ng-hide-animate"})})}}}],Ee=La(function(a,b,d){a.$watch(d.ngStyle,function(a,d){d&&a!==d&&n(d,function(a,c){b.css(c,"")});a&&b.css(a)},!0)}),Fe=["$animate",function(a){return{require:"ngSwitch",controller:["$scope",function(){this.cases={}}],link:function(b,
-d,c,e){var f=[],g=[],h=[],k=[],l=function(a,b){return function(){a.splice(b,1)}};b.$watch(c.ngSwitch||c.on,function(b){var c,d;c=0;for(d=h.length;c<d;++c)a.cancel(h[c]);c=h.length=0;for(d=k.length;c<d;++c){var q=rb(g[c].clone);k[c].$destroy();(h[c]=a.leave(q)).then(l(h,c))}g.length=0;k.length=0;(f=e.cases["!"+b]||e.cases["?"])&&n(f,function(b){b.transclude(function(c,d){k.push(d);var e=b.element;c[c.length++]=X.createComment(" end ngSwitchWhen: ");g.push({clone:c});a.enter(c,e.parent(),e)})})})}}}],
-Ge=La({transclude:"element",priority:1200,require:"^ngSwitch",multiElement:!0,link:function(a,b,d,c,e){c.cases["!"+d.ngSwitchWhen]=c.cases["!"+d.ngSwitchWhen]||[];c.cases["!"+d.ngSwitchWhen].push({transclude:e,element:b})}}),He=La({transclude:"element",priority:1200,require:"^ngSwitch",multiElement:!0,link:function(a,b,d,c,e){c.cases["?"]=c.cases["?"]||[];c.cases["?"].push({transclude:e,element:b})}}),Je=La({restrict:"EAC",link:function(a,b,d,c,e){if(!e)throw G("ngTransclude")("orphan",ua(b));e(function(a){b.empty();
-b.append(a)})}}),je=["$templateCache",function(a){return{restrict:"E",terminal:!0,compile:function(b,d){"text/ng-template"==d.type&&a.put(d.id,b[0].text)}}}],Cg={$setViewValue:x,$render:x},Dg=["$element","$scope","$attrs",function(a,b,d){var c=this,e=new Sa;c.ngModelCtrl=Cg;c.unknownOption=B(X.createElement("option"));c.renderUnknownOption=function(b){b="? "+Ca(b)+" ?";c.unknownOption.val(b);a.prepend(c.unknownOption);a.val(b)};b.$on("$destroy",function(){c.renderUnknownOption=x});c.removeUnknownOption=
-function(){c.unknownOption.parent()&&c.unknownOption.remove()};c.readValue=function(){c.removeUnknownOption();return a.val()};c.writeValue=function(b){c.hasOption(b)?(c.removeUnknownOption(),a.val(b),""===b&&c.emptyOption.prop("selected",!0)):null==b&&c.emptyOption?(c.removeUnknownOption(),a.val("")):c.renderUnknownOption(b)};c.addOption=function(a,b){Ra(a,'"option value"');""===a&&(c.emptyOption=b);var d=e.get(a)||0;e.put(a,d+1);c.ngModelCtrl.$render();b[0].hasAttribute("selected")&&(b[0].selected=
-!0)};c.removeOption=function(a){var b=e.get(a);b&&(1===b?(e.remove(a),""===a&&(c.emptyOption=u)):e.put(a,b-1))};c.hasOption=function(a){return!!e.get(a)};c.registerOption=function(a,b,d,e,l){if(e){var m;d.$observe("value",function(a){y(m)&&c.removeOption(m);m=a;c.addOption(a,b)})}else l?a.$watch(l,function(a,e){d.$set("value",a);e!==a&&c.removeOption(e);c.addOption(a,b)}):c.addOption(d.value,b);b.on("$destroy",function(){c.removeOption(d.value);c.ngModelCtrl.$render()})}}],ke=function(){return{restrict:"E",
-require:["select","?ngModel"],controller:Dg,priority:1,link:{pre:function(a,b,d,c){var e=c[1];if(e){var f=c[0];f.ngModelCtrl=e;e.$render=function(){f.writeValue(e.$viewValue)};b.on("change",function(){a.$apply(function(){e.$setViewValue(f.readValue())})});if(d.multiple){f.readValue=function(){var a=[];n(b.find("option"),function(b){b.selected&&a.push(b.value)});return a};f.writeValue=function(a){var c=new Sa(a);n(b.find("option"),function(a){a.selected=y(c.get(a.value))})};var g,h=NaN;a.$watch(function(){h!==
-e.$viewValue||ma(g,e.$viewValue)||(g=ia(e.$viewValue),e.$render());h=e.$viewValue});e.$isEmpty=function(a){return!a||0===a.length}}}}}}},me=["$interpolate",function(a){return{restrict:"E",priority:100,compile:function(b,d){if(y(d.value))var c=a(d.value,!0);else{var e=a(b.text(),!0);e||d.$set("value",b.text())}return function(a,b,d){var k=b.parent();(k=k.data("$selectController")||k.parent().data("$selectController"))&&k.registerOption(a,b,d,c,e)}}}}],le=na({restrict:"E",terminal:!1}),Fc=function(){return{restrict:"A",
-require:"?ngModel",link:function(a,b,d,c){c&&(d.required=!0,c.$validators.required=function(a,b){return!d.required||!c.$isEmpty(b)},d.$observe("required",function(){c.$validate()}))}}},Ec=function(){return{restrict:"A",require:"?ngModel",link:function(a,b,d,c){if(c){var e,f=d.ngPattern||d.pattern;d.$observe("pattern",function(a){E(a)&&0<a.length&&(a=new RegExp("^"+a+"$"));if(a&&!a.test)throw G("ngPattern")("noregexp",f,a,ua(b));e=a||u;c.$validate()});c.$validators.pattern=function(a,b){return c.$isEmpty(b)||
-q(e)||e.test(b)}}}}},Hc=function(){return{restrict:"A",require:"?ngModel",link:function(a,b,d,c){if(c){var e=-1;d.$observe("maxlength",function(a){a=ea(a);e=isNaN(a)?-1:a;c.$validate()});c.$validators.maxlength=function(a,b){return 0>e||c.$isEmpty(b)||b.length<=e}}}}},Gc=function(){return{restrict:"A",require:"?ngModel",link:function(a,b,d,c){if(c){var e=0;d.$observe("minlength",function(a){e=ea(a)||0;c.$validate()});c.$validators.minlength=function(a,b){return c.$isEmpty(b)||b.length>=e}}}}};S.angular.bootstrap?
-console.log("WARNING: Tried to load angular more than once."):(ce(),ee(fa),fa.module("ngLocale",[],["$provide",function(a){function b(a){a+="";var b=a.indexOf(".");return-1==b?0:a.length-b-1}a.value("$locale",{DATETIME_FORMATS:{AMPMS:["AM","PM"],DAY:"Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),ERANAMES:["Before Christ","Anno Domini"],ERAS:["BC","AD"],FIRSTDAYOFWEEK:6,MONTH:"January February March April May June July August September October November December".split(" "),SHORTDAY:"Sun Mon Tue Wed Thu Fri Sat".split(" "),
-SHORTMONTH:"Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec".split(" "),WEEKENDRANGE:[5,6],fullDate:"EEEE, MMMM d, y",longDate:"MMMM d, y",medium:"MMM d, y h:mm:ss a",mediumDate:"MMM d, y",mediumTime:"h:mm:ss a","short":"M/d/yy h:mm a",shortDate:"M/d/yy",shortTime:"h:mm a"},NUMBER_FORMATS:{CURRENCY_SYM:"$",DECIMAL_SEP:".",GROUP_SEP:",",PATTERNS:[{gSize:3,lgSize:3,maxFrac:3,minFrac:0,minInt:1,negPre:"-",negSuf:"",posPre:"",posSuf:""},{gSize:3,lgSize:3,maxFrac:2,minFrac:2,minInt:1,negPre:"-\u00a4",
-negSuf:"",posPre:"\u00a4",posSuf:""}]},id:"en-us",pluralCat:function(a,c){var e=a|0,f=c;u===f&&(f=Math.min(b(a),3));Math.pow(10,f);return 1==e&&0==f?"one":"other"}})}]),B(X).ready(function(){Zd(X,yc)}))})(window,document);!window.angular.$$csp().noInlineStyle&&window.angular.element(document.head).prepend('<style type="text/css">@charset "UTF-8";[ng\\:cloak],[ng-cloak],[data-ng-cloak],[x-ng-cloak],.ng-cloak,.x-ng-cloak,.ng-hide:not(.ng-hide-animate){display:none !important;}ng\\:form{display:block;}.ng-animate-shim{visibility:hidden;}.ng-anchor{position:absolute;}</style>');
-//# sourceMappingURL=angular.min.js.map
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular.min.js.map b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular.min.js.map
deleted file mode 100644
index fbb9d467..00000000
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/angular.min.js.map
+++ /dev/null
@@ -1,8 +0,0 @@
-{
-"version":3,
-"file":"angular.min.js",
-"lineCount":294,
-"mappings":"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",
-"sources":["angular.js"],
-"names":["window","document","undefined","minErr","isArrayLike","obj","isWindow","isArray","isString","jqLite","length","Object","isNumber","item","forEach","iterator","context","key","isFunction","hasOwnProperty","call","isPrimitive","isBlankObject","forEachSorted","keys","sort","i","reverseParams","iteratorFn","value","nextUid","uid","baseExtend","dst","objs","deep","h","$$hashKey","ii","isObject","j","jj","src","isDate","Date","valueOf","isRegExp","RegExp","nodeName","cloneNode","isElement","clone","extend","slice","arguments","merge","toInt","str","parseInt","inherit","parent","extra","create","noop","identity","$","valueFn","hasCustomToString","toString","isUndefined","isDefined","getPrototypeOf","isScope","$evalAsync","$watch","isBoolean","isTypedArray","TYPED_ARRAY_REGEXP","test","node","prop","attr","find","makeMap","items","split","nodeName_","element","lowercase","arrayRemove","array","index","indexOf","splice","copy","source","destination","copyRecurse","push","copyElement","stackSource","stackDest","ngMinErr","needsRecurse","constructor","getTime","match","lastIndex","shallowCopy","charAt","equals","o1","o2","t1","t2","keySet","createMap","concat","array1","array2","bind","self","fn","curryArgs","startIndex","apply","toJsonReplacer","val","toJson","pretty","JSON","stringify","fromJson","json","parse","timezoneToOffset","timezone","fallback","requestedTimezoneOffset","isNaN","convertTimezoneToLocal","date","reverse","timezoneOffset","getTimezoneOffset","setMinutes","getMinutes","minutes","startingTag","empty","e","elemHtml","append","html","nodeType","NODE_TYPE_TEXT","replace","tryDecodeURIComponent","decodeURIComponent","parseKeyValue","keyValue","splitPoint","substring","toKeyValue","parts","arrayValue","encodeUriQuery","join","encodeUriSegment","pctEncodeSpaces","encodeURIComponent","getNgAttribute","ngAttr","ngAttrPrefixes","getAttribute","angularInit","bootstrap","appElement","module","config","prefix","name","hasAttribute","candidate","querySelector","strictDi","modules","defaultConfig","doBootstrap","injector","tag","unshift","$provide","debugInfoEnabled","$compileProvider","createInjector","invoke","bootstrapApply","scope","compile","$apply","data","NG_ENABLE_DEBUG_INFO","NG_DEFER_BOOTSTRAP","angular","resumeBootstrap","angular.resumeBootstrap","extraModules","resumeDeferredBootstrap","reloadWithDebugInfo","location","reload","getTestability","rootElement","get","snake_case","separator","SNAKE_CASE_REGEXP","letter","pos","toLowerCase","bindJQuery","originalCleanData","bindJQueryFired","jqName","jq","jQuery","on","JQLitePrototype","isolateScope","controller","inheritedData","cleanData","jQuery.cleanData","elems","events","skipDestroyOnNextJQueryCleanData","elem","_data","$destroy","triggerHandler","JQLite","assertArg","arg","reason","assertArgFn","acceptArrayAnnotation","assertNotHasOwnProperty","getter","path","bindFnToScope","lastInstance","len","getBlockNodes","nodes","endNode","blockNodes","nextSibling","setupModuleLoader","ensure","factory","$injectorMinErr","$$minErr","requires","configFn","invokeLater","provider","method","insertMethod","queue","invokeQueue","moduleInstance","invokeLaterAndSetModuleName","recipeName","factoryFunction","$$moduleName","configBlocks","runBlocks","_invokeQueue","_configBlocks","_runBlocks","service","constant","decorator","animation","filter","directive","run","block","publishExternalAPI","version","uppercase","counter","csp","angularModule","ngModule","$$sanitizeUri","$$SanitizeUriProvider","$CompileProvider","a","htmlAnchorDirective","input","inputDirective","textarea","form","formDirective","script","scriptDirective","select","selectDirective","style","styleDirective","option","optionDirective","ngBind","ngBindDirective","ngBindHtml","ngBindHtmlDirective","ngBindTemplate","ngBindTemplateDirective","ngClass","ngClassDirective","ngClassEven","ngClassEvenDirective","ngClassOdd","ngClassOddDirective","ngCloak","ngCloakDirective","ngController","ngControllerDirective","ngForm","ngFormDirective","ngHide","ngHideDirective","ngIf","ngIfDirective","ngInclude","ngIncludeDirective","ngInit","ngInitDirective","ngNonBindable","ngNonBindableDirective","ngPluralize","ngPluralizeDirective","ngRepeat","ngRepeatDirective","ngShow","ngShowDirective","ngStyle","ngStyleDirective","ngSwitch","ngSwitchDirective","ngSwitchWhen","ngSwitchWhenDirective","ngSwitchDefault","ngSwitchDefaultDirective","ngOptions","ngOptionsDirective","ngTransclude","ngTranscludeDirective","ngModel","ngModelDirective","ngList","ngListDirective","ngChange","ngChangeDirective","pattern","patternDirective","ngPattern","required","requiredDirective","ngRequired","minlength","minlengthDirective","ngMinlength","maxlength","maxlengthDirective","ngMaxlength","ngValue","ngValueDirective","ngModelOptions","ngModelOptionsDirective","ngIncludeFillContentDirective","ngAttributeAliasDirectives","ngEventDirectives","$anchorScroll","$AnchorScrollProvider","$animate","$AnimateProvider","$animateCss","$CoreAnimateCssProvider","$$animateQueue","$$CoreAnimateQueueProvider","$$AnimateRunner","$$CoreAnimateRunnerProvider","$browser","$BrowserProvider","$cacheFactory","$CacheFactoryProvider","$controller","$ControllerProvider","$document","$DocumentProvider","$exceptionHandler","$ExceptionHandlerProvider","$filter","$FilterProvider","$$forceReflow","$$ForceReflowProvider","$interpolate","$InterpolateProvider","$interval","$IntervalProvider","$http","$HttpProvider","$httpParamSerializer","$HttpParamSerializerProvider","$httpParamSerializerJQLike","$HttpParamSerializerJQLikeProvider","$httpBackend","$HttpBackendProvider","$xhrFactory","$xhrFactoryProvider","$location","$LocationProvider","$log","$LogProvider","$parse","$ParseProvider","$rootScope","$RootScopeProvider","$q","$QProvider","$$q","$$QProvider","$sce","$SceProvider","$sceDelegate","$SceDelegateProvider","$sniffer","$SnifferProvider","$templateCache","$TemplateCacheProvider","$templateRequest","$TemplateRequestProvider","$$testability","$$TestabilityProvider","$timeout","$TimeoutProvider","$window","$WindowProvider","$$rAF","$$RAFProvider","$$jqLite","$$jqLiteProvider","$$HashMap","$$HashMapProvider","$$cookieReader","$$CookieReaderProvider","camelCase","SPECIAL_CHARS_REGEXP","_","offset","toUpperCase","MOZ_HACK_REGEXP","jqLiteAcceptsData","NODE_TYPE_ELEMENT","NODE_TYPE_DOCUMENT","jqLiteBuildFragment","tmp","fragment","createDocumentFragment","HTML_REGEXP","appendChild","createElement","TAG_NAME_REGEXP","exec","wrap","wrapMap","_default","innerHTML","XHTML_TAG_REGEXP","lastChild","childNodes","firstChild","textContent","createTextNode","argIsString","trim","jqLiteMinErr","parsed","SINGLE_TAG_REGEXP","jqLiteAddNodes","jqLiteClone","jqLiteDealoc","onlyDescendants","jqLiteRemoveData","querySelectorAll","descendants","l","jqLiteOff","type","unsupported","expandoStore","jqLiteExpandoStore","handle","removeHandler","listenerFns","removeEventListener","MOUSE_EVENT_MAP","expandoId","ng339","jqCache","createIfNecessary","jqId","jqLiteData","isSimpleSetter","isSimpleGetter","massGetter","jqLiteHasClass","selector","jqLiteRemoveClass","cssClasses","setAttribute","cssClass","jqLiteAddClass","existingClasses","root","elements","jqLiteController","jqLiteInheritedData","documentElement","names","parentNode","NODE_TYPE_DOCUMENT_FRAGMENT","host","jqLiteEmpty","removeChild","jqLiteRemove","keepData","jqLiteDocumentLoaded","action","win","readyState","setTimeout","getBooleanAttrName","booleanAttr","BOOLEAN_ATTR","BOOLEAN_ELEMENTS","createEventHandler","eventHandler","event","isDefaultPrevented","event.isDefaultPrevented","defaultPrevented","eventFns","eventFnsLength","immediatePropagationStopped","originalStopImmediatePropagation","stopImmediatePropagation","event.stopImmediatePropagation","stopPropagation","isImmediatePropagationStopped","event.isImmediatePropagationStopped","handlerWrapper","specialHandlerWrapper","defaultHandlerWrapper","handler","specialMouseHandlerWrapper","target","related","relatedTarget","jqLiteContains","$get","this.$get","hasClass","classes","addClass","removeClass","hashKey","nextUidFn","objType","HashMap","isolatedUid","this.nextUid","put","anonFn","args","fnText","STRIP_COMMENTS","FN_ARGS","modulesToLoad","supportObject","delegate","provider_","providerInjector","instantiate","providerCache","providerSuffix","enforceReturnValue","enforcedReturnValue","result","instanceInjector","factoryFn","enforce","loadModules","moduleFn","runInvokeQueue","invokeArgs","loadedModules","message","stack","createInternalInjector","cache","getService","serviceName","caller","INSTANTIATING","err","shift","locals","$inject","$$annotate","Type","instance","prototype","returnedValue","annotate","has","$injector","instanceCache","decorFn","origProvider","orig$get","origProvider.$get","origInstance","$delegate","autoScrollingEnabled","disableAutoScrolling","this.disableAutoScrolling","getFirstAnchor","list","Array","some","scrollTo","scrollIntoView","scroll","yOffset","getComputedStyle","position","getBoundingClientRect","bottom","elemTop","top","scrollBy","hash","elm","getElementById","getElementsByName","autoScrollWatch","autoScrollWatchAction","newVal","oldVal","mergeClasses","b","splitClasses","klass","prepareAnimateOptions","options","Browser","completeOutstandingRequest","outstandingRequestCount","outstandingRequestCallbacks","pop","error","cacheStateAndFireUrlChange","pendingLocation","cacheState","fireUrlChange","history","state","cachedState","lastCachedState","lastBrowserUrl","url","lastHistoryState","urlChangeListeners","listener","clearTimeout","pendingDeferIds","isMock","$$completeOutstandingRequest","$$incOutstandingRequestCount","self.$$incOutstandingRequestCount","notifyWhenNoOutstandingRequests","self.notifyWhenNoOutstandingRequests","callback","href","baseElement","self.url","sameState","sameBase","stripHash","substr","self.state","urlChangeInit","onUrlChange","self.onUrlChange","$$applicationDestroyed","self.$$applicationDestroyed","off","$$checkUrlChange","baseHref","self.baseHref","defer","self.defer","delay","timeoutId","cancel","self.defer.cancel","deferId","cacheFactory","cacheId","refresh","entry","freshEnd","staleEnd","n","link","p","nextEntry","prevEntry","caches","size","stats","id","capacity","Number","MAX_VALUE","lruHash","lruEntry","remove","removeAll","destroy","info","cacheFactory.info","cacheFactory.get","$$sanitizeUriProvider","parseIsolateBindings","directiveName","isController","LOCAL_REGEXP","bindings","definition","scopeName","$compileMinErr","mode","collection","optional","attrName","assertValidDirectiveName","hasDirectives","COMMENT_DIRECTIVE_REGEXP","CLASS_DIRECTIVE_REGEXP","ALL_OR_NOTHING_ATTRS","REQUIRE_PREFIX_REGEXP","EVENT_HANDLER_ATTR_REGEXP","this.directive","registerDirective","directiveFactory","Suffix","directives","priority","require","restrict","bindToController","controllerAs","CNTRL_REG","$$bindings","$$isolateBindings","aHrefSanitizationWhitelist","this.aHrefSanitizationWhitelist","regexp","imgSrcSanitizationWhitelist","this.imgSrcSanitizationWhitelist","this.debugInfoEnabled","enabled","safeAddClass","$element","className","$compileNodes","transcludeFn","maxPriority","ignoreDirective","previousCompileContext","nodeValue","compositeLinkFn","compileNodes","$$addScopeClass","namespace","publicLinkFn","cloneConnectFn","needsNewScope","$parent","$new","parentBoundTranscludeFn","transcludeControllers","futureParentElement","$$boundTransclude","$linkNode","wrapTemplate","controllerName","$$addScopeInfo","nodeList","$rootElement","childLinkFn","childScope","childBoundTranscludeFn","stableNodeList","nodeLinkFnFound","linkFns","idx","nodeLinkFn","transcludeOnThisElement","createBoundTranscludeFn","transclude","templateOnThisElement","attrs","linkFnFound","Attributes","collectDirectives","applyDirectivesToNode","$$element","terminal","previousBoundTranscludeFn","boundTranscludeFn","transcludedScope","cloneFn","controllers","containingScope","$$transcluded","attrsMap","$attr","addDirective","directiveNormalize","isNgAttr","nAttrs","attributes","attrStartName","attrEndName","ngAttrName","NG_ATTR_BINDING","PREFIX_REGEXP","multiElementMatch","MULTI_ELEMENT_DIR_RE","directiveIsMultiElement","nName","addAttrInterpolateDirective","animVal","msie","addTextInterpolateDirective","NODE_TYPE_COMMENT","byPriority","groupScan","attrStart","attrEnd","depth","groupElementsLinkFnWrapper","linkFn","compileNode","templateAttrs","jqCollection","originalReplaceDirective","preLinkFns","postLinkFns","addLinkFns","pre","post","newIsolateScopeDirective","$$isolateScope","cloneAndAnnotateFn","getControllers","elementControllers","inheritType","dataName","setupControllers","controllerDirectives","controllerKey","$scope","$attrs","$transclude","controllerInstance","hasElementTranscludeDirective","linkNode","controllersBoundTransclude","cloneAttachFn","scopeToChild","controllerScope","removeScopeBindingWatches","newScopeDirective","templateDirective","$$originalDirective","initializeDirectiveBindings","$on","controllerDirective","identifier","removeControllerBindingWatches","controllerResult","invokeLinkFn","template","templateUrl","terminalPriority","nonTlbTranscludeDirective","hasTranscludeDirective","hasTemplate","$compileNode","$template","childTranscludeFn","$$start","$$end","directiveValue","assertNoDuplicate","$$tlb","createComment","replaceWith","replaceDirective","contents","$$newScope","denormalizeTemplate","removeComments","templateNamespace","newTemplateAttrs","templateDirectives","unprocessedDirectives","markDirectiveScope","mergeTemplateAttributes","compileTemplateUrl","Math","max","newScope","tDirectives","startAttrName","endAttrName","multiElement","srcAttr","dstAttr","$set","tAttrs","linkQueue","afterTemplateNodeLinkFn","afterTemplateChildLinkFn","beforeTemplateCompileNode","origAsyncDirective","derivedSyncDirective","then","content","tempTemplateAttrs","beforeTemplateLinkNode","linkRootElement","$$destroyed","oldClasses","delayedNodeLinkFn","ignoreChildLinkFn","diff","what","previousDirective","wrapModuleNameIfDefined","moduleName","text","interpolateFn","textInterpolateCompileFn","templateNode","templateNodeParent","hasCompileParent","$$addBindingClass","textInterpolateLinkFn","$$addBindingInfo","expressions","interpolateFnWatchAction","wrapper","getTrustedContext","attrNormalizedName","HTML","RESOURCE_URL","allOrNothing","trustedContext","attrInterpolatePreLinkFn","$$observers","newValue","$$inter","$$scope","oldValue","$updateClass","elementsToRemove","newNode","firstElementToRemove","removeCount","j2","replaceChild","hasData","expando","k","kk","annotation","removeWatchCollection","lastValue","parentGet","parentSet","compare","$observe","literal","assign","parentValueWatch","parentValue","$stateful","removeWatch","$watchCollection","removeWatches","attributesToCopy","$normalize","$addClass","classVal","$removeClass","newClasses","toAdd","tokenDifference","toRemove","writeAttr","booleanKey","aliasedKey","ALIASED_ATTR","observer","trimmedSrcset","srcPattern","rawUris","nbrUrisWith2parts","floor","innerIdx","lastTuple","removeAttr","listeners","startSymbol","endSymbol","binding","isolated","noTemplate","str1","str2","values","tokens1","tokens2","token","jqNodes","globals","register","this.register","allowGlobals","this.allowGlobals","addIdentifier","expression","later","ident","$controllerMinErr","controllerPrototype","exception","cause","serializeValue","v","toISOString","ngParamSerializer","params","jQueryLikeParamSerializer","serialize","toSerialize","topLevel","defaultHttpResponseTransform","headers","tempData","JSON_PROTECTION_PREFIX","contentType","jsonStart","JSON_START","JSON_ENDS","parseHeaders","line","headerVal","headerKey","headersGetter","headersObj","transformData","status","fns","defaults","transformResponse","transformRequest","d","common","CONTENT_TYPE_APPLICATION_JSON","patch","xsrfCookieName","xsrfHeaderName","paramSerializer","useApplyAsync","this.useApplyAsync","useLegacyPromise","useLegacyPromiseExtensions","this.useLegacyPromiseExtensions","interceptorFactories","interceptors","requestConfig","response","resp","reject","executeHeaderFns","headerContent","processedHeaders","headerFn","header","mergeHeaders","defHeaders","reqHeaders","defHeaderName","lowercaseDefHeaderName","reqHeaderName","chain","serverRequest","reqData","withCredentials","sendReq","promise","when","reversedInterceptors","interceptor","request","requestError","responseError","thenFn","rejectFn","success","promise.success","promise.error","$httpMinErrLegacyFn","done","headersString","statusText","resolveHttpPromise","resolvePromise","$applyAsync","$$phase","deferred","resolve","resolvePromiseWithResult","removePendingReq","pendingRequests","cachedResp","buildUrl","defaultCache","xsrfValue","urlIsSameOrigin","timeout","responseType","serializedParams","interceptorFactory","createShortMethods","createShortMethodsWithData","createXhr","XMLHttpRequest","createHttpBackend","callbacks","$browserDefer","rawDocument","jsonpReq","callbackId","async","body","called","addEventListener","timeoutRequest","jsonpDone","xhr","abort","completeRequest","open","setRequestHeader","onload","xhr.onload","responseText","urlResolve","protocol","getAllResponseHeaders","onerror","onabort","send","this.startSymbol","this.endSymbol","escape","ch","unescapeText","escapedStartRegexp","escapedEndRegexp","mustHaveExpression","parseStringifyInterceptor","getTrusted","$interpolateMinErr","interr","endIndex","parseFns","textLength","expressionPositions","startSymbolLength","exp","endSymbolLength","throwNoconcat","compute","interpolationFn","$$watchDelegate","$watchGroup","interpolateFnWatcher","oldValues","currValue","$interpolate.startSymbol","$interpolate.endSymbol","interval","count","invokeApply","hasParams","setInterval","clearInterval","iteration","skipApply","$$intervalId","tick","notify","intervals","interval.cancel","encodePath","segments","parseAbsoluteUrl","absoluteUrl","locationObj","parsedUrl","$$protocol","$$host","hostname","$$port","port","DEFAULT_PORTS","parseAppUrl","relativeUrl","prefixed","$$path","pathname","$$search","search","$$hash","beginsWith","begin","whole","trimEmptyHash","LocationHtml5Url","appBase","appBaseNoFile","basePrefix","$$html5","$$parse","this.$$parse","pathUrl","$locationMinErr","$$compose","this.$$compose","$$url","$$absUrl","$$parseLinkUrl","this.$$parseLinkUrl","relHref","appUrl","prevAppUrl","rewrittenUrl","LocationHashbangUrl","hashPrefix","withoutBaseUrl","withoutHashUrl","windowsFilePathExp","base","firstPathSegmentMatch","LocationHashbangInHtml5Url","locationGetter","property","locationGetterSetter","preprocess","html5Mode","requireBase","rewriteLinks","this.hashPrefix","this.html5Mode","setBrowserUrlWithFallback","oldUrl","oldState","$$state","afterLocationChange","$broadcast","absUrl","LocationMode","initialUrl","lastIndexOf","IGNORE_URI_REGEXP","ctrlKey","metaKey","shiftKey","which","button","absHref","preventDefault","initializing","newUrl","newState","$digest","$locationWatch","currentReplace","$$replace","urlOrStateChanged","debug","debugEnabled","this.debugEnabled","flag","formatError","Error","sourceURL","consoleLog","console","logFn","log","hasApply","arg1","arg2","warn","ensureSafeMemberName","fullExpression","$parseMinErr","getStringValue","ensureSafeObject","children","ensureSafeFunction","CALL","APPLY","BIND","ensureSafeAssignContext","Function","ifDefined","plusFn","r","findConstantAndWatchExpressions","ast","allConstants","argsToWatch","AST","Program","expr","Literal","toWatch","UnaryExpression","argument","BinaryExpression","left","right","LogicalExpression","ConditionalExpression","alternate","consequent","Identifier","MemberExpression","object","computed","CallExpression","callee","AssignmentExpression","ArrayExpression","ObjectExpression","properties","ThisExpression","getInputs","lastExpression","isAssignable","assignableAST","NGValueParameter","operator","isLiteral","ASTCompiler","astBuilder","ASTInterpreter","isPossiblyDangerousMemberName","getValueOf","objectValueOf","cacheDefault","cacheExpensive","expressionInputDirtyCheck","oldValueOfValue","inputsWatchDelegate","objectEquality","parsedExpression","prettyPrintExpression","inputExpressions","inputs","lastResult","oldInputValueOf","expressionInputWatch","newInputValue","oldInputValueOfValues","oldInputValues","expressionInputsWatch","changed","oneTimeWatchDelegate","unwatch","oneTimeWatch","oneTimeListener","old","$$postDigest","oneTimeLiteralWatchDelegate","isAllDefined","allDefined","constantWatchDelegate","constantWatch","constantListener","addInterceptor","interceptorFn","watchDelegate","useInputs","regularInterceptedExpression","oneTimeInterceptedExpression","noUnsafeEval","$parseOptions","expensiveChecks","$parseOptionsExpensive","oneTime","cacheKey","parseOptions","lexer","Lexer","parser","Parser","qFactory","nextTick","exceptionHandler","callOnce","resolveFn","Promise","simpleBind","scheduleProcessQueue","processScheduled","pending","Deferred","$qMinErr","TypeError","onFulfilled","onRejected","progressBack","catch","finally","handleCallback","$$reject","$$resolve","progress","makePromise","resolved","isResolved","callbackOutput","errback","$Q","Q","resolver","all","promises","results","requestAnimationFrame","webkitRequestAnimationFrame","cancelAnimationFrame","webkitCancelAnimationFrame","webkitCancelRequestAnimationFrame","rafSupported","raf","timer","supported","createChildScopeClass","ChildScope","$$watchers","$$nextSibling","$$childHead","$$childTail","$$listeners","$$listenerCount","$$watchersCount","$id","$$ChildScope","TTL","$rootScopeMinErr","lastDirtyWatch","applyAsyncId","digestTtl","this.digestTtl","destroyChildScope","$event","currentScope","cleanUpScope","$$prevSibling","$root","Scope","beginPhase","phase","incrementWatchersCount","current","decrementListenerCount","initWatchVal","flushApplyAsync","applyAsyncQueue","scheduleApplyAsync","isolate","child","watchExp","watcher","last","eq","deregisterWatch","watchExpressions","watchGroupAction","changeReactionScheduled","firstRun","newValues","deregisterFns","shouldCall","deregisterWatchGroup","unwatchFn","watchGroupSubAction","$watchCollectionInterceptor","_value","bothNaN","newItem","oldItem","internalArray","oldLength","changeDetected","newLength","internalObject","veryOldValue","trackVeryOldValue","changeDetector","initRun","$watchCollectionAction","watch","watchers","dirty","ttl","watchLog","logIdx","asyncTask","asyncQueue","$eval","msg","next","postDigestQueue","eventName","this.$watchGroup","$applyAsyncExpression","namedListeners","indexOfListener","$emit","targetScope","listenerArgs","$$asyncQueue","$$postDigestQueue","$$applyAsyncQueue","sanitizeUri","uri","isImage","regex","normalizedVal","adjustMatcher","matcher","$sceMinErr","escapeForRegexp","adjustMatchers","matchers","adjustedMatchers","SCE_CONTEXTS","resourceUrlWhitelist","resourceUrlBlacklist","this.resourceUrlWhitelist","this.resourceUrlBlacklist","matchUrl","generateHolderType","Base","holderType","trustedValue","$$unwrapTrustedValue","this.$$unwrapTrustedValue","holderType.prototype.valueOf","holderType.prototype.toString","htmlSanitizer","trustedValueHolderBase","byType","CSS","URL","JS","trustAs","Constructor","maybeTrusted","allowed","this.enabled","sce","isEnabled","sce.isEnabled","sce.getTrusted","parseAs","sce.parseAs","enumValue","lName","eventSupport","android","userAgent","navigator","boxee","vendorPrefix","vendorRegex","bodyStyle","transitions","animations","webkitTransition","webkitAnimation","pushState","hasEvent","divElm","handleRequestFn","tpl","ignoreRequestError","totalPendingRequests","getTrustedResourceUrl","transformer","httpOptions","handleError","testability","testability.findBindings","opt_exactMatch","getElementsByClassName","matches","dataBinding","bindingName","testability.findModels","prefixes","attributeEquals","testability.getLocation","testability.setLocation","testability.whenStable","deferreds","$$timeoutId","timeout.cancel","urlParsingNode","requestUrl","originUrl","$$CookieReader","safeDecodeURIComponent","lastCookies","lastCookieString","cookieArray","cookie","currentCookieString","filters","suffix","currencyFilter","dateFilter","filterFilter","jsonFilter","limitToFilter","lowercaseFilter","numberFilter","orderByFilter","uppercaseFilter","comparator","matchAgainstAnyProp","getTypeForFilter","expressionType","predicateFn","createPredicateFn","shouldMatchPrimitives","actual","expected","deepCompare","dontMatchWholeObject","actualType","expectedType","expectedVal","matchAnyProperty","actualVal","$locale","formats","NUMBER_FORMATS","amount","currencySymbol","fractionSize","CURRENCY_SYM","PATTERNS","maxFrac","formatNumber","GROUP_SEP","DECIMAL_SEP","number","groupSep","decimalSep","isNegative","abs","isInfinity","Infinity","isFinite","numStr","formatedText","hasExponent","toFixed","parseFloat","fractionLen","min","minFrac","round","fraction","lgroup","lgSize","group","gSize","negPre","posPre","negSuf","posSuf","padNumber","num","digits","neg","dateGetter","dateStrGetter","shortForm","getFirstThursdayOfYear","year","dayOfWeekOnFirst","getDay","weekGetter","firstThurs","getFullYear","thisThurs","getMonth","getDate","eraGetter","ERAS","jsonStringToDate","string","R_ISO8601_STR","tzHour","tzMin","dateSetter","setUTCFullYear","setFullYear","timeSetter","setUTCHours","setHours","m","s","ms","format","DATETIME_FORMATS","NUMBER_STRING","DATE_FORMATS_SPLIT","dateTimezoneOffset","DATE_FORMATS","spacing","limit","processPredicates","sortPredicate","reverseOrder","map","predicate","descending","predicates","compareValues","getComparisonObject","predicateValues","doComparison","v1","v2","ngDirective","FormController","controls","$error","$$success","$pending","$name","$dirty","$pristine","$valid","$invalid","$submitted","$$parentForm","nullFormCtrl","$rollbackViewValue","form.$rollbackViewValue","control","$commitViewValue","form.$commitViewValue","$addControl","form.$addControl","$$renameControl","form.$$renameControl","newName","oldName","$removeControl","form.$removeControl","$setValidity","addSetValidityMethod","ctrl","set","unset","$setDirty","form.$setDirty","PRISTINE_CLASS","DIRTY_CLASS","$setPristine","form.$setPristine","setClass","SUBMITTED_CLASS","$setUntouched","form.$setUntouched","$setSubmitted","form.$setSubmitted","stringBasedInputType","$formatters","$isEmpty","baseInputType","composing","ev","ngTrim","$viewValue","$$hasNativeValidators","$setViewValue","deferListener","origValue","keyCode","$render","ctrl.$render","createDateParser","mapping","iso","ISO_DATE_REGEXP","yyyy","MM","dd","HH","getHours","mm","ss","getSeconds","sss","getMilliseconds","part","NaN","createDateInputType","parseDate","dynamicDateInputType","isValidDate","parseObservedDateValue","badInputChecker","$options","previousDate","$$parserName","$parsers","parsedDate","ngModelMinErr","ngMin","minVal","$validators","ctrl.$validators.min","$validate","ngMax","maxVal","ctrl.$validators.max","validity","VALIDITY_STATE_PROPERTY","badInput","typeMismatch","parseConstantExpr","parseFn","classDirective","arrayDifference","arrayClasses","digestClassCounts","classCounts","classesToUpdate","ngClassWatchAction","$index","old$index","mod","cachedToggleClass","switchValue","classCache","toggleValidationCss","validationErrorKey","isValid","VALID_CLASS","INVALID_CLASS","setValidity","isObjectEmpty","PENDING_CLASS","combinedState","REGEX_STRING_REGEXP","documentMode","rules","ngCspElement","ngCspAttribute","noInlineStyle","name_","el","full","major","minor","dot","codeName","JQLite._data","mouseleave","mouseenter","optgroup","tbody","tfoot","colgroup","caption","thead","th","td","Node","contains","compareDocumentPosition","ready","trigger","fired","removeData","jqLiteHasData","removeAttribute","css","NODE_TYPE_ATTRIBUTE","lowercasedName","specified","getNamedItem","ret","getText","$dv","multiple","selected","nodeCount","jqLiteOn","types","addHandler","noEventListener","one","onFn","replaceNode","insertBefore","contentDocument","prepend","wrapNode","detach","after","newElement","toggleClass","condition","classCondition","nextElementSibling","getElementsByTagName","extraParameters","dummyEvent","handlerArgs","eventFnsCopy","arg3","unbind","FN_ARG_SPLIT","FN_ARG","argDecl","underscore","$animateMinErr","AnimateRunner","end","resume","pause","complete","pass","fail","postDigestElements","updateData","handleCSSClassChanges","existing","pin","domOperation","from","to","classesAdded","add","classesRemoved","$$registeredAnimations","classNameFilter","this.classNameFilter","$$classNameFilter","reservedRegex","NG_ANIMATE_CLASSNAME","domInsert","parentElement","afterElement","afterNode","ELEMENT_NODE","previousElementSibling","runner","enter","move","leave","addclass","animate","tempClasses","RAFPromise","getPromise","f1","f2","closed","cleanupStyles","start","domNode","offsetWidth","APPLICATION_JSON","$httpMinErr","$interpolateMinErr.throwNoconcat","$interpolateMinErr.interr","PATH_MATCH","locationPrototype","paramValue","Location","Location.prototype.state","OPERATORS","ESCAPE","lex","tokens","readString","peek","readNumber","isIdent","readIdent","is","isWhitespace","ch2","ch3","op2","op3","op1","throwError","chars","isExpOperator","colStr","peekCh","quote","rawString","hex","String","fromCharCode","rep","ExpressionStatement","Property","program","expressionStatement","expect","filterChain","assignment","ternary","logicalOR","consume","logicalAND","equality","relational","additive","multiplicative","unary","primary","arrayDeclaration","constants","parseArguments","baseExpression","peekToken","kind","e1","e2","e3","e4","peekAhead","t","nextId","vars","own","assignable","stage","computing","recurse","return_","generateFunction","fnKey","intoId","watchId","fnString","USE","STRICT","filterPrefix","watchFns","varsPrefix","section","nameId","recursionFn","skipWatchIdCheck","if_","lazyAssign","computedMember","lazyRecurse","plus","not","getHasOwnProperty","nonComputedMember","addEnsureSafeObject","notNull","addEnsureSafeMemberName","addEnsureSafeFunction","member","addEnsureSafeAssignContext","filterName","defaultValue","stringEscapeRegex","stringEscapeFn","c","charCodeAt","skip","init","fn.assign","rhs","lhs","unary+","unary-","unary!","binary+","binary-","binary*","binary/","binary%","binary===","binary!==","binary==","binary!=","binary<","binary>","binary<=","binary>=","binary&&","binary||","ternary?:","astCompiler","yy","y","MMMM","MMM","M","H","hh","EEEE","EEE","ampmGetter","AMPMS","Z","timeZoneGetter","zone","paddedZone","ww","w","G","GG","GGG","GGGG","longEraGetter","ERANAMES","xlinkHref","propName","defaultLinkFn","normalized","ngBooleanAttrWatchAction","htmlAttr","ngAttrAliasWatchAction","nullFormRenameControl","formDirectiveFactory","isNgForm","getSetter","ngFormCompile","formElement","nameAttr","ngFormPreLink","ctrls","handleFormSubmission","setter","URL_REGEXP","EMAIL_REGEXP","NUMBER_REGEXP","DATE_REGEXP","DATETIMELOCAL_REGEXP","WEEK_REGEXP","MONTH_REGEXP","TIME_REGEXP","inputType","textInputType","weekParser","isoWeek","existingDate","week","hours","seconds","milliseconds","addDays","numberInputType","urlInputType","ctrl.$validators.url","modelValue","viewValue","emailInputType","email","ctrl.$validators.email","radioInputType","checked","checkboxInputType","trueValue","ngTrueValue","falseValue","ngFalseValue","ctrl.$isEmpty","CONSTANT_VALUE_REGEXP","tplAttr","ngValueConstantLink","ngValueLink","valueWatchAction","$compile","ngBindCompile","templateElement","ngBindLink","ngBindWatchAction","ngBindTemplateCompile","ngBindTemplateLink","ngBindHtmlCompile","tElement","ngBindHtmlGetter","ngBindHtmlWatch","ngBindHtmlLink","ngBindHtmlWatchAction","getTrustedHtml","$viewChangeListeners","forceAsyncEvents","ngEventHandler","previousElements","ngIfWatchAction","srcExp","onloadExp","autoScrollExp","autoscroll","changeCounter","previousElement","currentElement","cleanupLastIncludeContent","ngIncludeWatchAction","afterAnimation","thisChangeId","namespaceAdaptedClone","trimValues","NgModelController","$modelValue","$$rawModelValue","$asyncValidators","$untouched","$touched","parsedNgModel","parsedNgModelAssign","ngModelGet","ngModelSet","pendingDebounce","parserValid","$$setOptions","this.$$setOptions","getterSetter","invokeModelGetter","invokeModelSetter","$$$p","this.$isEmpty","currentValidationRunId","this.$setPristine","this.$setDirty","this.$setUntouched","UNTOUCHED_CLASS","TOUCHED_CLASS","$setTouched","this.$setTouched","this.$rollbackViewValue","$$lastCommittedViewValue","this.$validate","prevValid","prevModelValue","allowInvalid","$$runValidators","allValid","$$writeModelToScope","this.$$runValidators","doneCallback","processSyncValidators","syncValidatorsValid","validator","processAsyncValidators","validatorPromises","validationDone","localValidationRunId","processParseErrors","errorKey","this.$commitViewValue","$$parseAndValidate","this.$$parseAndValidate","this.$$writeModelToScope","this.$setViewValue","updateOnDefault","$$debounceViewValueCommit","this.$$debounceViewValueCommit","debounceDelay","debounce","ngModelWatch","formatters","ngModelCompile","ngModelPreLink","modelCtrl","formCtrl","ngModelPostLink","updateOn","DEFAULT_REGEXP","that","ngOptionsMinErr","NG_OPTIONS_REGEXP","parseOptionsExpression","optionsExp","selectElement","Option","selectValue","label","disabled","getOptionValuesKeys","optionValues","optionValuesKeys","keyName","itemKey","valueName","selectAs","trackBy","viewValueFn","trackByFn","getTrackByValueFn","getHashOfValue","getTrackByValue","getLocals","displayFn","groupByFn","disableWhenFn","valuesFn","getWatchables","watchedArray","optionValuesLength","disableWhen","getOptions","optionItems","selectValueMap","optionItem","getOptionFromViewValue","getViewValueFromOption","optionTemplate","optGroupTemplate","ngOptionsPreLink","registerOption","ngOptionsPostLink","updateOptionElement","addOrReuseElement","removeExcessElements","skipEmptyAndUnknownOptions","emptyOption_","emptyOption","unknownOption_","unknownOption","updateOptions","previousValue","selectCtrl","readValue","groupMap","providedEmptyOption","updateOption","optionElement","groupElement","currentOptionElement","ngModelCtrl","nextValue","ngModelCtrl.$isEmpty","writeValue","selectCtrl.writeValue","selectCtrl.readValue","selectedValues","selections","selectedOption","BRACE","IS_WHEN","updateElementText","newText","numberExp","whenExp","whens","whensExpFns","braceReplacement","watchRemover","lastCount","attributeName","tmpMatch","whenKey","ngPluralizeWatchAction","countIsNaN","pluralCat","whenExpFn","ngRepeatMinErr","updateScope","valueIdentifier","keyIdentifier","arrayLength","$first","$last","$middle","$odd","$even","ngRepeatCompile","ngRepeatEndComment","aliasAs","trackByExp","trackByExpGetter","trackByIdExpFn","trackByIdArrayFn","trackByIdObjFn","hashFnLocals","ngRepeatLink","lastBlockMap","ngRepeatAction","previousNode","nextNode","nextBlockMap","collectionLength","trackById","collectionKeys","nextBlockOrder","trackByIdFn","blockKey","ngRepeatTransclude","ngShowWatchAction","NG_HIDE_CLASS","NG_HIDE_IN_PROGRESS_CLASS","ngHideWatchAction","ngStyleWatchAction","newStyles","oldStyles","ngSwitchController","cases","selectedTranscludes","selectedElements","previousLeaveAnimations","selectedScopes","spliceFactory","ngSwitchWatchAction","selectedTransclude","caseElement","selectedScope","anchor","noopNgModelController","SelectController","optionsMap","renderUnknownOption","self.renderUnknownOption","unknownVal","removeUnknownOption","self.removeUnknownOption","self.readValue","self.writeValue","hasOption","addOption","self.addOption","removeOption","self.removeOption","self.hasOption","self.registerOption","optionScope","optionAttrs","interpolateValueFn","interpolateTextFn","valueAttributeObserveAction","interpolateWatchAction","selectPreLink","ngModelCtrl.$render","lastView","lastViewRef","selectMultipleWatch","selectCtrlName","ctrl.$validators.required","patternExp","ctrl.$validators.pattern","intVal","ctrl.$validators.maxlength","ctrl.$validators.minlength","getDecimals","opt_precision","pow","ONE","OTHER","$$csp","head"]
-}
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/errors.json b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/errors.json
deleted file mode 100644
index 954d1d9f..00000000
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/errors.json
+++ /dev/null
@@ -1 +0,0 @@
-{"id":"ng","generated":"Fri Nov 20 2015 00:03:11 GMT-0800 (PST)","errors":{"ng":{"areq":"Argument '{0}' is {1}","cpta":"Can't copy! TypedArray destination cannot be mutated.","test":"no injector found for element argument to getTestability","cpws":"Can't copy! Making copies of Window or Scope instances is not supported.","btstrpd":"App Already Bootstrapped with this Element '{0}'","cpi":"Can't copy! Source and destination are identical.","badname":"hasOwnProperty is not a valid {0} name"},"$http":{"legacy":"The method `{0}` on the promise returned from `$http` has been disabled.","badreq":"Http request configuration must be an object. Received: {0}"},"ngRepeat":{"badident":"alias '{0}' is invalid --- must be a valid JS identifier which is not a reserved name.","iexp":"Expected expression in form of '_item_ in _collection_[ track by _id_]' but got '{0}'.","dupes":"Duplicates in a repeater are not allowed. Use 'track by' expression to specify unique keys. Repeater: {0}, Duplicate key: {1}, Duplicate value: {2}","iidexp":"'_item_' in '_item_ in _collection_' should be an identifier or '(_key_, _value_)' expression, but got '{0}'."},"$sce":{"imatcher":"Matchers may only be \"self\", string patterns or RegExp objects","icontext":"Attempted to trust a value in invalid context. Context: {0}; Value: {1}","iwcard":"Illegal sequence *** in string matcher. String: {0}","insecurl":"Blocked loading resource from url not allowed by $sceDelegate policy. URL: {0}","iequirks":"Strict Contextual Escaping does not support Internet Explorer version < 11 in quirks mode. You can fix this by adding the text <!doctype html> to the top of your HTML document. See http://docs.angularjs.org/api/ng.$sce for more information.","unsafe":"Attempting to use an unsafe value in a safe context.","itype":"Attempted to trust a non-string value in a content requiring a string: Context: {0}"},"ngPattern":{"noregexp":"Expected {0} to be a RegExp but was {1}. Element: {2}"},"$controller":{"ctrlfmt":"Badly formed controller string '{0}'. Must match `__name__ as __id__` or `__name__`.","noscp":"Cannot export controller '{0}' as '{1}'! No $scope object provided via `locals`."},"$parse":{"isecfn":"Referencing Function in Angular expressions is disallowed! Expression: {0}","isecobj":"Referencing Object in Angular expressions is disallowed! Expression: {0}","lval":"Trying to assing a value to a non l-value","isecwindow":"Referencing the Window in Angular expressions is disallowed! Expression: {0}","ueoe":"Unexpected end of expression: {0}","isecdom":"Referencing DOM nodes in Angular expressions is disallowed! Expression: {0}","lexerr":"Lexer Error: {0} at column{1} in expression [{2}].","esc":"IMPOSSIBLE","iseccst":"Cannot convert object to primitive value! Expression: {0}","isecff":"Referencing call, apply or bind in Angular expressions is disallowed! Expression: {0}","syntax":"Syntax Error: Token '{0}' {1} at column {2} of the expression [{3}] starting at [{4}].","isecaf":"Assigning to a constructor is disallowed! Expression: {0}","isecfld":"Attempting to access a disallowed field in Angular expressions! Expression: {0}"},"jqLite":{"offargs":"jqLite#off() does not support the `selector` argument","onargs":"jqLite#on() does not support the `selector` or `eventData` parameters","nosel":"Looking up elements via selectors is not supported by jqLite! See: http://docs.angularjs.org/api/angular.element"},"$animate":{"notcsel":"Expecting class selector starting with '.' got '{0}'.","nongcls":"$animateProvider.classNameFilter(regex) prohibits accepting a regex value which matches/contains the \"{0}\" CSS class."},"$q":{"norslvr":"Expected resolverFn, got '{0}'","qcycle":"Expected promise to be resolved with value other than itself '{0}'"},"$injector":{"pget":"Provider '{0}' must define $get factory method.","cdep":"Circular dependency found: {0}","nomod":"Module '{0}' is not available! You either misspelled the module name or forgot to load it. If registering a module ensure that you specify the dependencies as the second argument.","strictdi":"{0} is not using explicit annotation and cannot be invoked in strict mode","modulerr":"Failed to instantiate module {0} due to:\n{1}","undef":"Provider '{0}' must return a value from $get factory method.","unpr":"Unknown provider: {0}","itkn":"Incorrect injection token! Expected service name as string, got {0}"},"filter":{"notarray":"Expected array but received: {0}"},"ngTransclude":{"orphan":"Illegal use of ngTransclude directive in the template! No parent directive that requires a transclusion found. Element: {0}"},"ngModel":{"nonassign":"Expression '{0}' is non-assignable. Element: {1}","datefmt":"Expected `{0}` to be a date","$asyncValidators":"Expected asynchronous validator to return a promise but got '{0}' instead.","constexpr":"Expected constant expression for `{0}`, but saw `{1}`.","numfmt":"Expected `{0}` to be a number"},"$location":{"nostate":"History API state support is available only in HTML5 mode and only in browsers supporting HTML5 History API","ipthprfx":"Invalid url \"{0}\", missing path prefix \"{1}\".","isrcharg":"The first argument of the `$location#search()` call must be a string or an object.","nobase":"$location in HTML5 mode requires a <base> tag to be present!"},"$cacheFactory":{"iid":"CacheId '{0}' is already taken!"},"$interpolate":{"noconcat":"Error while interpolating: {0}\nStrict Contextual Escaping disallows interpolations that concatenate multiple expressions when a trusted value is required. See http://docs.angularjs.org/api/ng.$sce","interr":"Can't interpolate: {0}\n{1}","nochgmustache":"angular-message-format.js currently does not allow you to use custom start and end symbols for interpolation.","reqcomma":"Expected a comma after the keyword “{0}” at line {1}, column {2} of text “{3}”","untermstr":"The string beginning at line {0}, column {1} is unterminated in text “{2}”","badexpr":"Unexpected operator “{0}” at line {1}, column {2} in text. Was expecting “{3}”. Text: “{4}”","dupvalue":"The choice “{0}” is specified more than once. Duplicate key is at line {1}, column {2} in text “{3}”","unsafe":"Use of select/plural MessageFormat syntax is currently disallowed in a secure context ({0}). At line {1}, column {2} of text “{3}”","reqother":"“other” is a required option.","reqendinterp":"Expecting end of interpolation symbol, “{0}”, at line {1}, column {2} in text “{3}”","reqarg":"Expected one of “plural” or “select” at line {0}, column {1} of text “{2}”","wantstring":"Expected the beginning of a string at line {0}, column {1} in text “{2}”","logicbug":"The messageformat parser has encountered an internal error. Please file a github issue against the AngularJS project and provide this message text that triggers the bug. Text: “{0}”","reqopenbrace":"The plural choice “{0}” must be followed by a message in braces at line {1}, column {2} in text “{3}”","unknarg":"Unsupported keyword “{0}” at line {0}, column {1}. Only “plural” and “select” are currently supported. Text: “{3}”","reqendbrace":"The plural/select choice “{0}” message starting at line {1}, column {2} does not have an ending closing brace. Text “{3}”"},"ngOptions":{"iexp":"Expected expression in form of '_select_ (as _label_)? for (_key_,)?_value_ in _collection_' but got '{0}'. Element: {1}"},"$rootScope":{"inprog":"{0} already in progress","infdig":"{0} $digest() iterations reached. Aborting!\nWatchers fired in the last 5 iterations: {1}"},"$compile":{"noident":"Cannot bind to controller without identifier for directive '{0}'.","selmulti":"Binding to the 'multiple' attribute is not supported. Element: {0}","nodomevents":"Interpolations for HTML DOM event attributes are disallowed. Please use the ng- versions (such as ng-click instead of onclick) instead.","ctreq":"Controller '{0}', required by directive '{1}', can't be found!","nonassign":"Expression '{0}' used with directive '{1}' is non-assignable!","tplrt":"Template for directive '{0}' must have exactly one root element. {1}","iscp":"Invalid {3} for directive '{0}'. Definition: {... {1}: '{2}' ...}","baddir":"Directive name '{0}' is invalid. The name should not contain leading or trailing whitespaces","noctrl":"Cannot bind to controller without directive '{0}'s controller.","multidir":"Multiple directives [{0}{1}, {2}{3}] asking for {4} on: {5}","tpload":"Failed to load template: {0} (HTTP status: {1} {2})","uterdir":"Unterminated attribute, found '{0}' but no matching '{1}' found."},"$resource":{"badargs":"Expected up to 4 arguments [params, data, success, error], got {0} arguments","badmember":"Dotted member path \"@{0}\" is invalid.","badname":"hasOwnProperty is not a valid parameter name.","badcfg":"Error in resource configuration for action `{0}`. Expected response to contain an {1} but got an {2} (Request: {3} {4})"},"$route":{"norout":"Tried updating route when with no current route"},"$sanitize":{"badparse":"The sanitizer was unable to parse the following block of html: {0}"}}} \ No newline at end of file
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/version.json b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/version.json
deleted file mode 100644
index f58f0b59..00000000
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/version.json
+++ /dev/null
@@ -1 +0,0 @@
-{"raw":"v1.4.8","major":1,"minor":4,"patch":8,"prerelease":[],"build":[],"version":"1.4.8","codeName":"ice-manipulation","full":"1.4.8","branch":"v1.4.x","cdn":{"raw":"v1.4.7","major":1,"minor":4,"patch":7,"prerelease":[],"build":[],"version":"1.4.7","docsUrl":"http://code.angularjs.org/1.4.7/docs"}} \ No newline at end of file
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/version.txt b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/version.txt
deleted file mode 100644
index 721b9931..00000000
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/external/angular-1.4.8/version.txt
+++ /dev/null
@@ -1 +0,0 @@
-1.4.8 \ No newline at end of file
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/notebook-integration/scripts/dependency/angular.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/notebook-integration/scripts/dependency/angular.js
index 9e6a4f4f..db30da8f 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/notebook-integration/scripts/dependency/angular.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/notebook-integration/scripts/dependency/angular.js
@@ -1,9 +1,9 @@
/**
- * @license AngularJS v1.5.0-beta.2
- * (c) 2010-2015 Google, Inc. http://angularjs.org
+ * @license AngularJS v1.6.3
+ * (c) 2010-2017 Google, Inc. http://angularjs.org
* License: MIT
*/
-(function(window, document, undefined) {'use strict';
+(function(window) {'use strict';
/**
* @description
@@ -38,131 +38,134 @@
function minErr(module, ErrorConstructor) {
ErrorConstructor = ErrorConstructor || Error;
return function() {
- var SKIP_INDEXES = 2;
-
- var templateArgs = arguments,
- code = templateArgs[0],
+ var code = arguments[0],
+ template = arguments[1],
message = '[' + (module ? module + ':' : '') + code + '] ',
- template = templateArgs[1],
+ templateArgs = sliceArgs(arguments, 2).map(function(arg) {
+ return toDebugString(arg, minErrConfig.objectMaxDepth);
+ }),
paramPrefix, i;
message += template.replace(/\{\d+\}/g, function(match) {
- var index = +match.slice(1, -1),
- shiftedIndex = index + SKIP_INDEXES;
+ var index = +match.slice(1, -1);
- if (shiftedIndex < templateArgs.length) {
- return toDebugString(templateArgs[shiftedIndex]);
+ if (index < templateArgs.length) {
+ return templateArgs[index];
}
return match;
});
- message += '\nhttp://errors.angularjs.org/1.5.0-beta.2/' +
+ message += '\nhttp://errors.angularjs.org/1.6.3/' +
(module ? module + '/' : '') + code;
- for (i = SKIP_INDEXES, paramPrefix = '?'; i < templateArgs.length; i++, paramPrefix = '&') {
- message += paramPrefix + 'p' + (i - SKIP_INDEXES) + '=' +
- encodeURIComponent(toDebugString(templateArgs[i]));
+ for (i = 0, paramPrefix = '?'; i < templateArgs.length; i++, paramPrefix = '&') {
+ message += paramPrefix + 'p' + i + '=' + encodeURIComponent(templateArgs[i]);
}
return new ErrorConstructor(message);
};
}
-/* We need to tell jshint what variables are being exported */
-/* global angular: true,
- msie: true,
- jqLite: true,
- jQuery: true,
- slice: true,
- splice: true,
- push: true,
- toString: true,
- ngMinErr: true,
- angularModule: true,
- uid: true,
- REGEX_STRING_REGEXP: true,
- VALIDITY_STATE_PROPERTY: true,
-
- lowercase: true,
- uppercase: true,
- manualLowercase: true,
- manualUppercase: true,
- nodeName_: true,
- isArrayLike: true,
- forEach: true,
- forEachSorted: true,
- reverseParams: true,
- nextUid: true,
- setHashKey: true,
- extend: true,
- toInt: true,
- inherit: true,
- merge: true,
- noop: true,
- identity: true,
- valueFn: true,
- isUndefined: true,
- isDefined: true,
- isObject: true,
- isBlankObject: true,
- isString: true,
- isNumber: true,
- isDate: true,
- isArray: true,
- isFunction: true,
- isRegExp: true,
- isWindow: true,
- isScope: true,
- isFile: true,
- isFormData: true,
- isBlob: true,
- isBoolean: true,
- isPromiseLike: true,
- trim: true,
- escapeForRegexp: true,
- isElement: true,
- makeMap: true,
- includes: true,
- arrayRemove: true,
- copy: true,
- shallowCopy: true,
- equals: true,
- csp: true,
- jq: true,
- concat: true,
- sliceArgs: true,
- bind: true,
- toJsonReplacer: true,
- toJson: true,
- fromJson: true,
- convertTimezoneToLocal: true,
- timezoneToOffset: true,
- startingTag: true,
- tryDecodeURIComponent: true,
- parseKeyValue: true,
- toKeyValue: true,
- encodeUriSegment: true,
- encodeUriQuery: true,
- angularInit: true,
- bootstrap: true,
- getTestability: true,
- snake_case: true,
- bindJQuery: true,
- assertArg: true,
- assertArgFn: true,
- assertNotHasOwnProperty: true,
- getter: true,
- getBlockNodes: true,
- hasOwnProperty: true,
- createMap: true,
-
- NODE_TYPE_ELEMENT: true,
- NODE_TYPE_ATTRIBUTE: true,
- NODE_TYPE_TEXT: true,
- NODE_TYPE_COMMENT: true,
- NODE_TYPE_DOCUMENT: true,
- NODE_TYPE_DOCUMENT_FRAGMENT: true,
+/* We need to tell ESLint what variables are being exported */
+/* exported
+ angular,
+ msie,
+ jqLite,
+ jQuery,
+ slice,
+ splice,
+ push,
+ toString,
+ minErrConfig,
+ errorHandlingConfig,
+ isValidObjectMaxDepth,
+ ngMinErr,
+ angularModule,
+ uid,
+ REGEX_STRING_REGEXP,
+ VALIDITY_STATE_PROPERTY,
+
+ lowercase,
+ uppercase,
+ manualLowercase,
+ manualUppercase,
+ nodeName_,
+ isArrayLike,
+ forEach,
+ forEachSorted,
+ reverseParams,
+ nextUid,
+ setHashKey,
+ extend,
+ toInt,
+ inherit,
+ merge,
+ noop,
+ identity,
+ valueFn,
+ isUndefined,
+ isDefined,
+ isObject,
+ isBlankObject,
+ isString,
+ isNumber,
+ isNumberNaN,
+ isDate,
+ isArray,
+ isFunction,
+ isRegExp,
+ isWindow,
+ isScope,
+ isFile,
+ isFormData,
+ isBlob,
+ isBoolean,
+ isPromiseLike,
+ trim,
+ escapeForRegexp,
+ isElement,
+ makeMap,
+ includes,
+ arrayRemove,
+ copy,
+ equals,
+ csp,
+ jq,
+ concat,
+ sliceArgs,
+ bind,
+ toJsonReplacer,
+ toJson,
+ fromJson,
+ convertTimezoneToLocal,
+ timezoneToOffset,
+ startingTag,
+ tryDecodeURIComponent,
+ parseKeyValue,
+ toKeyValue,
+ encodeUriSegment,
+ encodeUriQuery,
+ angularInit,
+ bootstrap,
+ getTestability,
+ snake_case,
+ bindJQuery,
+ assertArg,
+ assertArgFn,
+ assertNotHasOwnProperty,
+ getter,
+ getBlockNodes,
+ hasOwnProperty,
+ createMap,
+ stringify,
+
+ NODE_TYPE_ELEMENT,
+ NODE_TYPE_ATTRIBUTE,
+ NODE_TYPE_TEXT,
+ NODE_TYPE_COMMENT,
+ NODE_TYPE_DOCUMENT,
+ NODE_TYPE_DOCUMENT_FRAGMENT
*/
////////////////////////////////////
@@ -171,6 +174,7 @@ function minErr(module, ErrorConstructor) {
* @ngdoc module
* @name ng
* @module ng
+ * @installation
* @description
*
* # ng (core module)
@@ -188,18 +192,69 @@ var REGEX_STRING_REGEXP = /^\/(.+)\/([a-z]*)$/;
// This is used so that it's possible for internal tests to create mock ValidityStates.
var VALIDITY_STATE_PROPERTY = 'validity';
+
+var hasOwnProperty = Object.prototype.hasOwnProperty;
+
+var minErrConfig = {
+ objectMaxDepth: 5
+};
+
+ /**
+ * @ngdoc function
+ * @name angular.errorHandlingConfig
+ * @module ng
+ * @kind function
+ *
+ * @description
+ * Configure several aspects of error handling in AngularJS if used as a setter or return the
+ * current configuration if used as a getter. The following options are supported:
+ *
+ * - **objectMaxDepth**: The maximum depth to which objects are traversed when stringified for error messages.
+ *
+ * Omitted or undefined options will leave the corresponding configuration values unchanged.
+ *
+ * @param {Object=} config - The configuration object. May only contain the options that need to be
+ * updated. Supported keys:
+ *
+ * * `objectMaxDepth` **{Number}** - The max depth for stringifying objects. Setting to a
+ * non-positive or non-numeric value, removes the max depth limit.
+ * Default: 5
+ */
+function errorHandlingConfig(config) {
+ if (isObject(config)) {
+ if (isDefined(config.objectMaxDepth)) {
+ minErrConfig.objectMaxDepth = isValidObjectMaxDepth(config.objectMaxDepth) ? config.objectMaxDepth : NaN;
+ }
+ } else {
+ return minErrConfig;
+ }
+}
+
+/**
+ * @private
+ * @param {Number} maxDepth
+ * @return {boolean}
+ */
+function isValidObjectMaxDepth(maxDepth) {
+ return isNumber(maxDepth) && maxDepth > 0;
+}
+
/**
* @ngdoc function
* @name angular.lowercase
* @module ng
* @kind function
*
+ * @deprecated
+ * sinceVersion="1.5.0"
+ * removeVersion="1.7.0"
+ * Use [String.prototype.toLowerCase](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String/toLowerCase) instead.
+ *
* @description Converts the specified string to lowercase.
* @param {string} string String to be converted to lowercase.
* @returns {string} Lowercased string.
*/
var lowercase = function(string) {return isString(string) ? string.toLowerCase() : string;};
-var hasOwnProperty = Object.prototype.hasOwnProperty;
/**
* @ngdoc function
@@ -207,6 +262,11 @@ var hasOwnProperty = Object.prototype.hasOwnProperty;
* @module ng
* @kind function
*
+ * @deprecated
+ * sinceVersion="1.5.0"
+ * removeVersion="1.7.0"
+ * Use [String.prototype.toUpperCase](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String/toUpperCase) instead.
+ *
* @description Converts the specified string to uppercase.
* @param {string} string String to be converted to uppercase.
* @returns {string} Uppercased string.
@@ -215,22 +275,24 @@ var uppercase = function(string) {return isString(string) ? string.toUpperCase()
var manualLowercase = function(s) {
- /* jshint bitwise: false */
+ /* eslint-disable no-bitwise */
return isString(s)
? s.replace(/[A-Z]/g, function(ch) {return String.fromCharCode(ch.charCodeAt(0) | 32);})
: s;
+ /* eslint-enable */
};
var manualUppercase = function(s) {
- /* jshint bitwise: false */
+ /* eslint-disable no-bitwise */
return isString(s)
? s.replace(/[a-z]/g, function(ch) {return String.fromCharCode(ch.charCodeAt(0) & ~32);})
: s;
+ /* eslint-enable */
};
// String#toLowerCase and String#toUpperCase don't produce correct results in browsers with Turkish
// locale, for this reason we need to detect this case and redefine lowercase/uppercase methods
-// with correct but slower alternatives.
+// with correct but slower alternatives. See https://github.com/angular/angular.js/issues/11387
if ('i' !== 'I'.toLowerCase()) {
lowercase = manualLowercase;
uppercase = manualUppercase;
@@ -253,11 +315,12 @@ var
angularModule,
uid = 0;
+// Support: IE 9-11 only
/**
* documentMode is an IE-only property
* http://msdn.microsoft.com/en-us/library/ie/cc196988(v=vs.85).aspx
*/
-msie = document.documentMode;
+msie = window.document.documentMode;
/**
@@ -273,18 +336,19 @@ function isArrayLike(obj) {
// arrays, strings and jQuery/jqLite objects are array like
// * jqLite is either the jQuery or jqLite constructor function
- // * we have to check the existance of jqLite first as this method is called
+ // * we have to check the existence of jqLite first as this method is called
// via the forEach method when constructing the jqLite object in the first place
if (isArray(obj) || isString(obj) || (jqLite && obj instanceof jqLite)) return true;
// Support: iOS 8.2 (not reproducible in simulator)
// "length" in obj used to prevent JIT error (gh-11508)
- var length = "length" in Object(obj) && obj.length;
+ var length = 'length' in Object(obj) && obj.length;
// NodeList objects (with `item` method) and
// other objects with suitable length characteristics are array-like
return isNumber(length) &&
- (length >= 0 && (length - 1) in obj || typeof obj.item == 'function');
+ (length >= 0 && ((length - 1) in obj || obj instanceof Array) || typeof obj.item === 'function');
+
}
/**
@@ -304,7 +368,7 @@ function isArrayLike(obj) {
*
* Unlike ES262's
* [Array.prototype.forEach](http://www.ecma-international.org/ecma-262/5.1/#sec-15.4.4.18),
- * Providing 'undefined' or 'null' values for `obj` will not throw a TypeError, but rather just
+ * providing 'undefined' or 'null' values for `obj` will not throw a TypeError, but rather just
* return the value provided.
*
```js
@@ -327,9 +391,7 @@ function forEach(obj, iterator, context) {
if (obj) {
if (isFunction(obj)) {
for (key in obj) {
- // Need to check if hasOwnProperty exists,
- // as on IE8 the result of querySelectorAll is an object without a hasOwnProperty function
- if (key != 'prototype' && key != 'length' && key != 'name' && (!obj.hasOwnProperty || obj.hasOwnProperty(key))) {
+ if (key !== 'prototype' && key !== 'length' && key !== 'name' && obj.hasOwnProperty(key)) {
iterator.call(context, obj[key], key, obj);
}
}
@@ -381,7 +443,7 @@ function forEachSorted(obj, iterator, context) {
* @returns {function(*, string)}
*/
function reverseParams(iteratorFn) {
- return function(value, key) { iteratorFn(key, value); };
+ return function(value, key) {iteratorFn(key, value);};
}
/**
@@ -498,6 +560,11 @@ function toInt(str) {
return parseInt(str, 10);
}
+var isNumberNaN = Number.isNaN || function isNumberNaN(num) {
+ // eslint-disable-next-line no-self-compare
+ return num !== num;
+};
+
function inherit(parent, extra) {
return extend(Object.create(parent), extra);
@@ -534,18 +601,28 @@ noop.$inject = [];
* functional style.
*
```js
- function transformer(transformationFn, value) {
- return (transformationFn || angular.identity)(value);
- };
+ function transformer(transformationFn, value) {
+ return (transformationFn || angular.identity)(value);
+ };
+
+ // E.g.
+ function getResult(fn, input) {
+ return (fn || angular.identity)(input);
+ };
+
+ getResult(function(n) { return n * 2; }, 21); // returns 42
+ getResult(null, 21); // returns 21
+ getResult(undefined, 21); // returns 21
```
- * @param {*} value to be returned.
- * @returns {*} the value passed in.
+ *
+ * @param {*} value to be returned.
+ * @returns {*} the value passed in.
*/
function identity($) {return $;}
identity.$inject = [];
-function valueFn(value) {return function() {return value;};}
+function valueFn(value) {return function valueRef() {return value;};}
function hasCustomToString(obj) {
return isFunction(obj.toString) && obj.toString !== toString;
@@ -671,7 +748,7 @@ function isDate(value) {
* @kind function
*
* @description
- * Determines if a reference is an `Array`.
+ * Determines if a reference is an `Array`. Alias of Array.isArray.
*
* @param {*} value Reference to check.
* @returns {boolean} True if `value` is an `Array`.
@@ -747,11 +824,15 @@ function isPromiseLike(obj) {
}
-var TYPED_ARRAY_REGEXP = /^\[object (?:Uint8|Uint8Clamped|Uint16|Uint32|Int8|Int16|Int32|Float32|Float64)Array\]$/;
+var TYPED_ARRAY_REGEXP = /^\[object (?:Uint8|Uint8Clamped|Uint16|Uint32|Int8|Int16|Int32|Float32|Float64)Array]$/;
function isTypedArray(value) {
return value && isNumber(value.length) && TYPED_ARRAY_REGEXP.test(toString.call(value));
}
+function isArrayBuffer(obj) {
+ return toString.call(obj) === '[object ArrayBuffer]';
+}
+
var trim = function(value) {
return isString(value) ? value.trim() : value;
@@ -761,8 +842,10 @@ var trim = function(value) {
// http://docs.closure-library.googlecode.com/git/local_closure_goog_string_string.js.source.html#line1021
// Prereq: s is a string.
var escapeForRegexp = function(s) {
- return s.replace(/([-()\[\]{}+?*.$\^|,:#<!\\])/g, '\\$1').
- replace(/\x08/g, '\\x08');
+ return s
+ .replace(/([-()[\]{}+?*.$^|,:#<!\\])/g, '\\$1')
+ // eslint-disable-next-line no-control-regex
+ .replace(/\x08/g, '\\x08');
};
@@ -780,8 +863,8 @@ var escapeForRegexp = function(s) {
*/
function isElement(node) {
return !!(node &&
- (node.nodeName // we are a direct element
- || (node.prop && node.attr && node.find))); // we have an on and find method part of jQuery API
+ (node.nodeName // We are a direct element.
+ || (node.prop && node.attr && node.find))); // We have an on and find method part of jQuery API.
}
/**
@@ -789,7 +872,7 @@ function isElement(node) {
* @returns {object} in the form of {key1:true, key2:true, ...}
*/
function makeMap(str) {
- var obj = {}, items = str.split(","), i;
+ var obj = {}, items = str.split(','), i;
for (i = 0; i < items.length; i++) {
obj[items[i]] = true;
}
@@ -802,7 +885,7 @@ function nodeName_(element) {
}
function includes(array, obj) {
- return Array.prototype.indexOf.call(array, obj) != -1;
+ return Array.prototype.indexOf.call(array, obj) !== -1;
}
function arrayRemove(array, value) {
@@ -826,7 +909,13 @@ function arrayRemove(array, value) {
* * If a destination is provided, all of its elements (for arrays) or properties (for objects)
* are deleted and then all elements/properties from the source are copied to it.
* * If `source` is not an object or array (inc. `null` and `undefined`), `source` is returned.
- * * If `source` is identical to 'destination' an exception will be thrown.
+ * * If `source` is identical to `destination` an exception will be thrown.
+ *
+ * <br />
+ * <div class="alert alert-warning">
+ * Only enumerable properties are taken into account. Non-enumerable properties (both on `source`
+ * and on `destination`) will be ignored.
+ * </div>
*
* @param {*} source The source that will be used to make a copy.
* Can be any type, including primitives, `null`, and `undefined`.
@@ -835,52 +924,54 @@ function arrayRemove(array, value) {
* @returns {*} The copy or updated `destination`, if `destination` was specified.
*
* @example
- <example module="copyExample">
- <file name="index.html">
- <div ng-controller="ExampleController">
- <form novalidate class="simple-form">
- Name: <input type="text" ng-model="user.name" /><br />
- E-mail: <input type="email" ng-model="user.email" /><br />
- Gender: <input type="radio" ng-model="user.gender" value="male" />male
- <input type="radio" ng-model="user.gender" value="female" />female<br />
- <button ng-click="reset()">RESET</button>
- <button ng-click="update(user)">SAVE</button>
- </form>
- <pre>form = {{user | json}}</pre>
- <pre>master = {{master | json}}</pre>
- </div>
-
- <script>
- angular.module('copyExample', [])
- .controller('ExampleController', ['$scope', function($scope) {
- $scope.master= {};
-
- $scope.update = function(user) {
- // Example with 1 argument
- $scope.master= angular.copy(user);
- };
+ <example module="copyExample" name="angular-copy">
+ <file name="index.html">
+ <div ng-controller="ExampleController">
+ <form novalidate class="simple-form">
+ <label>Name: <input type="text" ng-model="user.name" /></label><br />
+ <label>Age: <input type="number" ng-model="user.age" /></label><br />
+ Gender: <label><input type="radio" ng-model="user.gender" value="male" />male</label>
+ <label><input type="radio" ng-model="user.gender" value="female" />female</label><br />
+ <button ng-click="reset()">RESET</button>
+ <button ng-click="update(user)">SAVE</button>
+ </form>
+ <pre>form = {{user | json}}</pre>
+ <pre>master = {{master | json}}</pre>
+ </div>
+ </file>
+ <file name="script.js">
+ // Module: copyExample
+ angular.
+ module('copyExample', []).
+ controller('ExampleController', ['$scope', function($scope) {
+ $scope.master = {};
+
+ $scope.reset = function() {
+ // Example with 1 argument
+ $scope.user = angular.copy($scope.master);
+ };
- $scope.reset = function() {
- // Example with 2 arguments
- angular.copy($scope.master, $scope.user);
- };
+ $scope.update = function(user) {
+ // Example with 2 arguments
+ angular.copy(user, $scope.master);
+ };
- $scope.reset();
- }]);
- </script>
- </file>
- </example>
+ $scope.reset();
+ }]);
+ </file>
+ </example>
*/
-function copy(source, destination) {
+function copy(source, destination, maxDepth) {
var stackSource = [];
var stackDest = [];
+ maxDepth = isValidObjectMaxDepth(maxDepth) ? maxDepth : NaN;
if (destination) {
- if (isTypedArray(destination)) {
- throw ngMinErr('cpta', "Can't copy! TypedArray destination cannot be mutated.");
+ if (isTypedArray(destination) || isArrayBuffer(destination)) {
+ throw ngMinErr('cpta', 'Can\'t copy! TypedArray destination cannot be mutated.');
}
if (source === destination) {
- throw ngMinErr('cpi', "Can't copy! Source and destination are identical.");
+ throw ngMinErr('cpi', 'Can\'t copy! Source and destination are identical.');
}
// Empty the destination object
@@ -896,35 +987,39 @@ function copy(source, destination) {
stackSource.push(source);
stackDest.push(destination);
- return copyRecurse(source, destination);
+ return copyRecurse(source, destination, maxDepth);
}
- return copyElement(source);
+ return copyElement(source, maxDepth);
- function copyRecurse(source, destination) {
+ function copyRecurse(source, destination, maxDepth) {
+ maxDepth--;
+ if (maxDepth < 0) {
+ return '...';
+ }
var h = destination.$$hashKey;
- var result, key;
+ var key;
if (isArray(source)) {
for (var i = 0, ii = source.length; i < ii; i++) {
- destination.push(copyElement(source[i]));
+ destination.push(copyElement(source[i], maxDepth));
}
} else if (isBlankObject(source)) {
// createMap() fast path --- Safe to avoid hasOwnProperty check because prototype chain is empty
for (key in source) {
- destination[key] = copyElement(source[key]);
+ destination[key] = copyElement(source[key], maxDepth);
}
} else if (source && typeof source.hasOwnProperty === 'function') {
// Slow path, which must rely on hasOwnProperty
for (key in source) {
if (source.hasOwnProperty(key)) {
- destination[key] = copyElement(source[key]);
+ destination[key] = copyElement(source[key], maxDepth);
}
}
} else {
// Slowest path --- hasOwnProperty can't be called as a method
for (key in source) {
if (hasOwnProperty.call(source, key)) {
- destination[key] = copyElement(source[key]);
+ destination[key] = copyElement(source[key], maxDepth);
}
}
}
@@ -932,7 +1027,7 @@ function copy(source, destination) {
return destination;
}
- function copyElement(source) {
+ function copyElement(source, maxDepth) {
// Simple values
if (!isObject(source)) {
return source;
@@ -946,26 +1041,14 @@ function copy(source, destination) {
if (isWindow(source) || isScope(source)) {
throw ngMinErr('cpws',
- "Can't copy! Making copies of Window or Scope instances is not supported.");
+ 'Can\'t copy! Making copies of Window or Scope instances is not supported.');
}
var needsRecurse = false;
- var destination;
+ var destination = copyType(source);
- if (isArray(source)) {
- destination = [];
- needsRecurse = true;
- } else if (isTypedArray(source)) {
- destination = new source.constructor(source);
- } else if (isDate(source)) {
- destination = new Date(source.getTime());
- } else if (isRegExp(source)) {
- destination = new RegExp(source.source, source.toString().match(/[^\/]*$/)[0]);
- destination.lastIndex = source.lastIndex;
- } else if (isFunction(source.cloneNode)) {
- destination = source.cloneNode(true);
- } else {
- destination = Object.create(getPrototypeOf(source));
+ if (destination === undefined) {
+ destination = isArray(source) ? [] : Object.create(getPrototypeOf(source));
needsRecurse = true;
}
@@ -973,34 +1056,54 @@ function copy(source, destination) {
stackDest.push(destination);
return needsRecurse
- ? copyRecurse(source, destination)
+ ? copyRecurse(source, destination, maxDepth)
: destination;
}
-}
-/**
- * Creates a shallow copy of an object, an array or a primitive.
- *
- * Assumes that there are no proto properties for objects.
- */
-function shallowCopy(src, dst) {
- if (isArray(src)) {
- dst = dst || [];
+ function copyType(source) {
+ switch (toString.call(source)) {
+ case '[object Int8Array]':
+ case '[object Int16Array]':
+ case '[object Int32Array]':
+ case '[object Float32Array]':
+ case '[object Float64Array]':
+ case '[object Uint8Array]':
+ case '[object Uint8ClampedArray]':
+ case '[object Uint16Array]':
+ case '[object Uint32Array]':
+ return new source.constructor(copyElement(source.buffer), source.byteOffset, source.length);
+
+ case '[object ArrayBuffer]':
+ // Support: IE10
+ if (!source.slice) {
+ // If we're in this case we know the environment supports ArrayBuffer
+ /* eslint-disable no-undef */
+ var copied = new ArrayBuffer(source.byteLength);
+ new Uint8Array(copied).set(new Uint8Array(source));
+ /* eslint-enable */
+ return copied;
+ }
+ return source.slice(0);
- for (var i = 0, ii = src.length; i < ii; i++) {
- dst[i] = src[i];
+ case '[object Boolean]':
+ case '[object Number]':
+ case '[object String]':
+ case '[object Date]':
+ return new source.constructor(source.valueOf());
+
+ case '[object RegExp]':
+ var re = new RegExp(source.source, source.toString().match(/[^/]*$/)[0]);
+ re.lastIndex = source.lastIndex;
+ return re;
+
+ case '[object Blob]':
+ return new source.constructor([source], {type: source.type});
}
- } else if (isObject(src)) {
- dst = dst || {};
- for (var key in src) {
- if (!(key.charAt(0) === '$' && key.charAt(1) === '$')) {
- dst[key] = src[key];
- }
+ if (isFunction(source.cloneNode)) {
+ return source.cloneNode(true);
}
}
-
- return dst || src;
}
@@ -1032,44 +1135,78 @@ function shallowCopy(src, dst) {
* @param {*} o1 Object or value to compare.
* @param {*} o2 Object or value to compare.
* @returns {boolean} True if arguments are equal.
+ *
+ * @example
+ <example module="equalsExample" name="equalsExample">
+ <file name="index.html">
+ <div ng-controller="ExampleController">
+ <form novalidate>
+ <h3>User 1</h3>
+ Name: <input type="text" ng-model="user1.name">
+ Age: <input type="number" ng-model="user1.age">
+
+ <h3>User 2</h3>
+ Name: <input type="text" ng-model="user2.name">
+ Age: <input type="number" ng-model="user2.age">
+
+ <div>
+ <br/>
+ <input type="button" value="Compare" ng-click="compare()">
+ </div>
+ User 1: <pre>{{user1 | json}}</pre>
+ User 2: <pre>{{user2 | json}}</pre>
+ Equal: <pre>{{result}}</pre>
+ </form>
+ </div>
+ </file>
+ <file name="script.js">
+ angular.module('equalsExample', []).controller('ExampleController', ['$scope', function($scope) {
+ $scope.user1 = {};
+ $scope.user2 = {};
+ $scope.compare = function() {
+ $scope.result = angular.equals($scope.user1, $scope.user2);
+ };
+ }]);
+ </file>
+ </example>
*/
function equals(o1, o2) {
if (o1 === o2) return true;
if (o1 === null || o2 === null) return false;
+ // eslint-disable-next-line no-self-compare
if (o1 !== o1 && o2 !== o2) return true; // NaN === NaN
var t1 = typeof o1, t2 = typeof o2, length, key, keySet;
- if (t1 == t2) {
- if (t1 == 'object') {
- if (isArray(o1)) {
- if (!isArray(o2)) return false;
- if ((length = o1.length) == o2.length) {
- for (key = 0; key < length; key++) {
- if (!equals(o1[key], o2[key])) return false;
- }
- return true;
- }
- } else if (isDate(o1)) {
- if (!isDate(o2)) return false;
- return equals(o1.getTime(), o2.getTime());
- } else if (isRegExp(o1)) {
- return isRegExp(o2) ? o1.toString() == o2.toString() : false;
- } else {
- if (isScope(o1) || isScope(o2) || isWindow(o1) || isWindow(o2) ||
- isArray(o2) || isDate(o2) || isRegExp(o2)) return false;
- keySet = createMap();
- for (key in o1) {
- if (key.charAt(0) === '$' || isFunction(o1[key])) continue;
+ if (t1 === t2 && t1 === 'object') {
+ if (isArray(o1)) {
+ if (!isArray(o2)) return false;
+ if ((length = o1.length) === o2.length) {
+ for (key = 0; key < length; key++) {
if (!equals(o1[key], o2[key])) return false;
- keySet[key] = true;
- }
- for (key in o2) {
- if (!(key in keySet) &&
- key.charAt(0) !== '$' &&
- isDefined(o2[key]) &&
- !isFunction(o2[key])) return false;
}
return true;
}
+ } else if (isDate(o1)) {
+ if (!isDate(o2)) return false;
+ return equals(o1.getTime(), o2.getTime());
+ } else if (isRegExp(o1)) {
+ if (!isRegExp(o2)) return false;
+ return o1.toString() === o2.toString();
+ } else {
+ if (isScope(o1) || isScope(o2) || isWindow(o1) || isWindow(o2) ||
+ isArray(o2) || isDate(o2) || isRegExp(o2)) return false;
+ keySet = createMap();
+ for (key in o1) {
+ if (key.charAt(0) === '$' || isFunction(o1[key])) continue;
+ if (!equals(o1[key], o2[key])) return false;
+ keySet[key] = true;
+ }
+ for (key in o2) {
+ if (!(key in keySet) &&
+ key.charAt(0) !== '$' &&
+ isDefined(o2[key]) &&
+ !isFunction(o2[key])) return false;
+ }
+ return true;
}
}
return false;
@@ -1079,8 +1216,8 @@ var csp = function() {
if (!isDefined(csp.rules)) {
- var ngCspElement = (document.querySelector('[ng-csp]') ||
- document.querySelector('[data-ng-csp]'));
+ var ngCspElement = (window.document.querySelector('[ng-csp]') ||
+ window.document.querySelector('[data-ng-csp]'));
if (ngCspElement) {
var ngCspAttribute = ngCspElement.getAttribute('ng-csp') ||
@@ -1101,9 +1238,8 @@ var csp = function() {
function noUnsafeEval() {
try {
- /* jshint -W031, -W054 */
+ // eslint-disable-next-line no-new, no-new-func
new Function('');
- /* jshint +W031, +W054 */
return false;
} catch (e) {
return true;
@@ -1155,7 +1291,8 @@ var jq = function() {
var i, ii = ngAttrPrefixes.length, prefix, name;
for (i = 0; i < ii; ++i) {
prefix = ngAttrPrefixes[i];
- if (el = document.querySelector('[' + prefix.replace(':', '\\:') + 'jq]')) {
+ el = window.document.querySelector('[' + prefix.replace(':', '\\:') + 'jq]');
+ if (el) {
name = el.getAttribute(prefix + 'jq');
break;
}
@@ -1173,7 +1310,6 @@ function sliceArgs(args, startIndex) {
}
-/* jshint -W101 */
/**
* @ngdoc function
* @name angular.bind
@@ -1191,7 +1327,6 @@ function sliceArgs(args, startIndex) {
* @param {...*} args Optional arguments to be prebound to the `fn` function call.
* @returns {function()} Function that wraps the `fn` with all the specified bindings.
*/
-/* jshint +W101 */
function bind(self, fn) {
var curryArgs = arguments.length > 2 ? sliceArgs(arguments, 2) : [];
if (isFunction(fn) && !(fn instanceof RegExp)) {
@@ -1207,7 +1342,7 @@ function bind(self, fn) {
: fn.call(self);
};
} else {
- // in IE, native methods are not functions so they cannot be bound (note: they don't need to be)
+ // In IE, native methods are not functions so they cannot be bound (note: they don't need to be).
return fn;
}
}
@@ -1220,7 +1355,7 @@ function toJsonReplacer(key, value) {
val = undefined;
} else if (isWindow(value)) {
val = '$WINDOW';
- } else if (value && document === value) {
+ } else if (value && window.document === value) {
val = '$DOCUMENT';
} else if (isScope(value)) {
val = '$SCOPE';
@@ -1240,13 +1375,34 @@ function toJsonReplacer(key, value) {
* Serializes input into a JSON-formatted string. Properties with leading $$ characters will be
* stripped since angular uses this notation internally.
*
- * @param {Object|Array|Date|string|number} obj Input to be serialized into JSON.
+ * @param {Object|Array|Date|string|number|boolean} obj Input to be serialized into JSON.
* @param {boolean|number} [pretty=2] If set to true, the JSON output will contain newlines and whitespace.
* If set to an integer, the JSON output will contain that many spaces per indentation.
* @returns {string|undefined} JSON-ified string representing `obj`.
+ * @knownIssue
+ *
+ * The Safari browser throws a `RangeError` instead of returning `null` when it tries to stringify a `Date`
+ * object with an invalid date value. The only reliable way to prevent this is to monkeypatch the
+ * `Date.prototype.toJSON` method as follows:
+ *
+ * ```
+ * var _DatetoJSON = Date.prototype.toJSON;
+ * Date.prototype.toJSON = function() {
+ * try {
+ * return _DatetoJSON.call(this);
+ * } catch(e) {
+ * if (e instanceof RangeError) {
+ * return null;
+ * }
+ * throw e;
+ * }
+ * };
+ * ```
+ *
+ * See https://github.com/angular/angular.js/pull/14221 for more information.
*/
function toJson(obj, pretty) {
- if (typeof obj === 'undefined') return undefined;
+ if (isUndefined(obj)) return undefined;
if (!isNumber(pretty)) {
pretty = pretty ? 2 : null;
}
@@ -1273,9 +1429,13 @@ function fromJson(json) {
}
+var ALL_COLONS = /:/g;
function timezoneToOffset(timezone, fallback) {
+ // Support: IE 9-11 only, Edge 13-14+
+ // IE/Edge do not "understand" colon (`:`) in timezone
+ timezone = timezone.replace(ALL_COLONS, '');
var requestedTimezoneOffset = Date.parse('Jan 01, 1970 00:00:00 ' + timezone) / 60000;
- return isNaN(requestedTimezoneOffset) ? fallback : requestedTimezoneOffset;
+ return isNumberNaN(requestedTimezoneOffset) ? fallback : requestedTimezoneOffset;
}
@@ -1288,8 +1448,9 @@ function addDateMinutes(date, minutes) {
function convertTimezoneToLocal(date, timezone, reverse) {
reverse = reverse ? -1 : 1;
- var timezoneOffset = timezoneToOffset(timezone, date.getTimezoneOffset());
- return addDateMinutes(date, reverse * (timezoneOffset - date.getTimezoneOffset()));
+ var dateTimezoneOffset = date.getTimezoneOffset();
+ var timezoneOffset = timezoneToOffset(timezone, dateTimezoneOffset);
+ return addDateMinutes(date, reverse * (timezoneOffset - dateTimezoneOffset));
}
@@ -1302,13 +1463,13 @@ function startingTag(element) {
// turns out IE does not let you set .html() on elements which
// are not allowed to have children. So we just ignore it.
element.empty();
- } catch (e) {}
+ } catch (e) { /* empty */ }
var elemHtml = jqLite('<div>').append(element).html();
try {
return element[0].nodeType === NODE_TYPE_TEXT ? lowercase(elemHtml) :
elemHtml.
match(/^(<[^>]+>)/)[1].
- replace(/^<([\w\-]+)/, function(match, nodeName) { return '<' + lowercase(nodeName); });
+ replace(/^<([\w-]+)/, function(match, nodeName) {return '<' + lowercase(nodeName);});
} catch (e) {
return lowercase(elemHtml);
}
@@ -1330,7 +1491,7 @@ function tryDecodeURIComponent(value) {
try {
return decodeURIComponent(value);
} catch (e) {
- // Ignore any invalid uri component
+ // Ignore any invalid uri component.
}
}
@@ -1341,7 +1502,7 @@ function tryDecodeURIComponent(value) {
*/
function parseKeyValue(/**string*/keyValue) {
var obj = {};
- forEach((keyValue || "").split('&'), function(keyValue) {
+ forEach((keyValue || '').split('&'), function(keyValue) {
var splitPoint, key, val;
if (keyValue) {
key = keyValue = keyValue.replace(/\+/g,'%20');
@@ -1406,7 +1567,7 @@ function encodeUriSegment(val) {
* This method is intended for encoding *key* or *value* parts of query component. We need a custom
* method because encodeURIComponent is too aggressive and encodes stuff that doesn't have to be
* encoded per http://tools.ietf.org/html/rfc3986:
- * query = *( pchar / "/" / "?" )
+ * query = *( pchar / "/" / "?" )
* pchar = unreserved / pct-encoded / sub-delims / ":" / "@"
* unreserved = ALPHA / DIGIT / "-" / "." / "_" / "~"
* pct-encoded = "%" HEXDIG HEXDIG
@@ -1436,6 +1597,57 @@ function getNgAttribute(element, ngAttr) {
return null;
}
+function allowAutoBootstrap(document) {
+ var script = document.currentScript;
+
+ if (!script) {
+ // IE does not have `document.currentScript`
+ return true;
+ }
+
+ // If the `currentScript` property has been clobbered just return false, since this indicates a probable attack
+ if (!(script instanceof window.HTMLScriptElement || script instanceof window.SVGScriptElement)) {
+ return false;
+ }
+
+ var attributes = script.attributes;
+ var srcs = [attributes.getNamedItem('src'), attributes.getNamedItem('href'), attributes.getNamedItem('xlink:href')];
+
+ return srcs.every(function(src) {
+ if (!src) {
+ return true;
+ }
+ if (!src.value) {
+ return false;
+ }
+
+ var link = document.createElement('a');
+ link.href = src.value;
+
+ if (document.location.origin === link.origin) {
+ // Same-origin resources are always allowed, even for non-whitelisted schemes.
+ return true;
+ }
+ // Disabled bootstrapping unless angular.js was loaded from a known scheme used on the web.
+ // This is to prevent angular.js bundled with browser extensions from being used to bypass the
+ // content security policy in web pages and other browser extensions.
+ switch (link.protocol) {
+ case 'http:':
+ case 'https:':
+ case 'ftp:':
+ case 'blob:':
+ case 'file:':
+ case 'data:':
+ return true;
+ default:
+ return false;
+ }
+ });
+}
+
+// Cached as it has to run during loading so that document.currentScript is available.
+var isAutoBootstrapAllowed = allowAutoBootstrap(window.document);
+
/**
* @ngdoc directive
* @name ngApp
@@ -1456,10 +1668,17 @@ function getNgAttribute(element, ngAttr) {
* designates the **root element** of the application and is typically placed near the root element
* of the page - e.g. on the `<body>` or `<html>` tags.
*
- * Only one AngularJS application can be auto-bootstrapped per HTML document. The first `ngApp`
- * found in the document will be used to define the root element to auto-bootstrap as an
- * application. To run multiple applications in an HTML document you must manually bootstrap them using
- * {@link angular.bootstrap} instead. AngularJS applications cannot be nested within each other.
+ * There are a few things to keep in mind when using `ngApp`:
+ * - only one AngularJS application can be auto-bootstrapped per HTML document. The first `ngApp`
+ * found in the document will be used to define the root element to auto-bootstrap as an
+ * application. To run multiple applications in an HTML document you must manually bootstrap them using
+ * {@link angular.bootstrap} instead.
+ * - AngularJS applications cannot be nested within each other.
+ * - Do not use a directive that uses {@link ng.$compile#transclusion transclusion} on the same element as `ngApp`.
+ * This includes directives such as {@link ng.ngIf `ngIf`}, {@link ng.ngInclude `ngInclude`} and
+ * {@link ngRoute.ngView `ngView`}.
+ * Doing this misplaces the app {@link ng.$rootElement `$rootElement`} and the app's {@link auto.$injector injector},
+ * causing animations to stop working and making the injector inaccessible from outside the app.
*
* You can specify an **AngularJS module** to be used as the root module for the application. This
* module will be loaded into the {@link auto.$injector} when the application is bootstrapped. It
@@ -1472,7 +1691,7 @@ function getNgAttribute(element, ngAttr) {
*
* `ngApp` is the easiest, and most common way to bootstrap an application.
*
- <example module="ngAppDemo">
+ <example module="ngAppDemo" name="ng-app">
<file name="index.html">
<div ng-controller="ngAppDemoController">
I can add: {{a}} + {{b}} = {{ a+b }}
@@ -1488,7 +1707,7 @@ function getNgAttribute(element, ngAttr) {
*
* Using `ngStrictDi`, you would see something like this:
*
- <example ng-app-included="true">
+ <example ng-app-included="true" name="strict-di">
<file name="index.html">
<div ng-app="ngAppStrictDemo" ng-strict-di>
<div ng-controller="GoodController1">
@@ -1537,7 +1756,7 @@ function getNgAttribute(element, ngAttr) {
}])
.controller('GoodController2', GoodController2);
function GoodController2($scope) {
- $scope.name = "World";
+ $scope.name = 'World';
}
GoodController2.$inject = ['$scope'];
</file>
@@ -1568,7 +1787,7 @@ function angularInit(element, bootstrap) {
module,
config = {};
- // The element `element` has priority over any other element
+ // The element `element` has priority over any other element.
forEach(ngAttrPrefixes, function(prefix) {
var name = prefix + 'app';
@@ -1587,7 +1806,12 @@ function angularInit(element, bootstrap) {
}
});
if (appElement) {
- config.strictDi = getNgAttribute(appElement, "strict-di") !== null;
+ if (!isAutoBootstrapAllowed) {
+ window.console.error('Angular: disabling automatic bootstrap. <script> protocol indicates ' +
+ 'an extension, document.location.href does not match.');
+ return;
+ }
+ config.strictDi = getNgAttribute(appElement, 'strict-di') !== null;
bootstrap(appElement, module ? [module] : [], config);
}
}
@@ -1599,16 +1823,25 @@ function angularInit(element, bootstrap) {
* @description
* Use this function to manually start up angular application.
*
- * See: {@link guide/bootstrap Bootstrap}
- *
- * Note that Protractor based end-to-end tests cannot use this function to bootstrap manually.
- * They must use {@link ng.directive:ngApp ngApp}.
+ * For more information, see the {@link guide/bootstrap Bootstrap guide}.
*
* Angular will detect if it has been loaded into the browser more than once and only allow the
* first loaded script to be bootstrapped and will report a warning to the browser console for
* each of the subsequent scripts. This prevents strange results in applications, where otherwise
* multiple instances of Angular try to work on the DOM.
*
+ * <div class="alert alert-warning">
+ * **Note:** Protractor based end-to-end tests cannot use this function to bootstrap manually.
+ * They must use {@link ng.directive:ngApp ngApp}.
+ * </div>
+ *
+ * <div class="alert alert-warning">
+ * **Note:** Do not bootstrap the app on an element with a directive that uses {@link ng.$compile#transclusion transclusion},
+ * such as {@link ng.ngIf `ngIf`}, {@link ng.ngInclude `ngInclude`} and {@link ngRoute.ngView `ngView`}.
+ * Doing this misplaces the app {@link ng.$rootElement `$rootElement`} and the app's {@link auto.$injector injector},
+ * causing animations to stop working and making the injector inaccessible from outside the app.
+ * </div>
+ *
* ```html
* <!doctype html>
* <html>
@@ -1652,11 +1885,11 @@ function bootstrap(element, modules, config) {
element = jqLite(element);
if (element.injector()) {
- var tag = (element[0] === document) ? 'document' : startingTag(element);
- //Encode angle brackets to prevent input from being sanitized to empty string #8683
+ var tag = (element[0] === window.document) ? 'document' : startingTag(element);
+ // Encode angle brackets to prevent input from being sanitized to empty string #8683.
throw ngMinErr(
'btstrpd',
- "App Already Bootstrapped with this Element '{0}'",
+ 'App already bootstrapped with this element \'{0}\'',
tag.replace(/</,'&lt;').replace(/>/,'&gt;'));
}
@@ -1773,7 +2006,7 @@ function bindJQuery() {
extend(jQuery.fn, {
scope: JQLitePrototype.scope,
isolateScope: JQLitePrototype.isolateScope,
- controller: JQLitePrototype.controller,
+ controller: /** @type {?} */ (JQLitePrototype).controller,
injector: JQLitePrototype.injector,
inheritedData: JQLitePrototype.inheritedData
});
@@ -1785,7 +2018,7 @@ function bindJQuery() {
jQuery.cleanData = function(elems) {
var events;
for (var i = 0, elem; (elem = elems[i]) != null; i++) {
- events = jQuery._data(elem, "events");
+ events = jQuery._data(elem, 'events');
if (events && events.$destroy) {
jQuery(elem).triggerHandler('$destroy');
}
@@ -1807,7 +2040,7 @@ function bindJQuery() {
*/
function assertArg(arg, name, reason) {
if (!arg) {
- throw ngMinErr('areq', "Argument '{0}' is {1}", (name || '?'), (reason || "required"));
+ throw ngMinErr('areq', 'Argument \'{0}\' is {1}', (name || '?'), (reason || 'required'));
}
return arg;
}
@@ -1829,7 +2062,7 @@ function assertArgFn(arg, name, acceptArrayAnnotation) {
*/
function assertNotHasOwnProperty(name, context) {
if (name === 'hasOwnProperty') {
- throw ngMinErr('badname', "hasOwnProperty is not a valid {0} name", context);
+ throw ngMinErr('badname', 'hasOwnProperty is not a valid {0} name', context);
}
}
@@ -1899,6 +2132,27 @@ function createMap() {
return Object.create(null);
}
+function stringify(value) {
+ if (value == null) { // null || undefined
+ return '';
+ }
+ switch (typeof value) {
+ case 'string':
+ break;
+ case 'number':
+ value = '' + value;
+ break;
+ default:
+ if (hasCustomToString(value) && !isArray(value) && !isDate(value)) {
+ value = value.toString();
+ } else {
+ value = toJson(value);
+ }
+ }
+
+ return value;
+}
+
var NODE_TYPE_ELEMENT = 1;
var NODE_TYPE_ATTRIBUTE = 2;
var NODE_TYPE_TEXT = 3;
@@ -1982,9 +2236,12 @@ function setupModuleLoader(window) {
* unspecified then the module is being retrieved for further configuration.
* @param {Function=} configFn Optional configuration function for the module. Same as
* {@link angular.Module#config Module#config()}.
- * @returns {module} new module with the {@link angular.Module} api.
+ * @returns {angular.Module} new module with the {@link angular.Module} api.
*/
return function module(name, requires, configFn) {
+
+ var info = {};
+
var assertNotHasOwnProperty = function(name, context) {
if (name === 'hasOwnProperty') {
throw ngMinErr('badname', 'hasOwnProperty is not a valid {0} name', context);
@@ -1997,9 +2254,9 @@ function setupModuleLoader(window) {
}
return ensure(modules, name, function() {
if (!requires) {
- throw $injectorMinErr('nomod', "Module '{0}' is not available! You either misspelled " +
- "the module name or forgot to load it. If registering a module ensure that you " +
- "specify the dependencies as the second argument.", name);
+ throw $injectorMinErr('nomod', 'Module \'{0}\' is not available! You either misspelled ' +
+ 'the module name or forgot to load it. If registering a module ensure that you ' +
+ 'specify the dependencies as the second argument.', name);
}
/** @type {!Array.<Array.<*>>} */
@@ -2021,6 +2278,45 @@ function setupModuleLoader(window) {
_runBlocks: runBlocks,
/**
+ * @ngdoc method
+ * @name angular.Module#info
+ * @module ng
+ *
+ * @param {Object=} info Information about the module
+ * @returns {Object|Module} The current info object for this module if called as a getter,
+ * or `this` if called as a setter.
+ *
+ * @description
+ * Read and write custom information about this module.
+ * For example you could put the version of the module in here.
+ *
+ * ```js
+ * angular.module('myModule', []).info({ version: '1.0.0' });
+ * ```
+ *
+ * The version could then be read back out by accessing the module elsewhere:
+ *
+ * ```
+ * var version = angular.module('myModule').info().version;
+ * ```
+ *
+ * You can also retrieve this information during runtime via the
+ * {@link $injector#modules `$injector.modules`} property:
+ *
+ * ```js
+ * var version = $injector.modules['myModule'].info().version;
+ * ```
+ */
+ info: function(value) {
+ if (isDefined(value)) {
+ if (!isObject(value)) throw ngMinErr('aobj', 'Argument \'{0}\' must be an object', 'value');
+ info = value;
+ return this;
+ }
+ return info;
+ },
+
+ /**
* @ngdoc property
* @name angular.Module#requires
* @module ng
@@ -2103,13 +2399,13 @@ function setupModuleLoader(window) {
* @ngdoc method
* @name angular.Module#decorator
* @module ng
- * @param {string} The name of the service to decorate.
- * @param {Function} This function will be invoked when the service needs to be
- * instantiated and should return the decorated service instance.
+ * @param {string} name The name of the service to decorate.
+ * @param {Function} decorFn This function will be invoked when the service needs to be
+ * instantiated and should return the decorated service instance.
* @description
* See {@link auto.$provide#decorator $provide.decorator()}.
*/
- decorator: invokeLaterAndSetModuleName('$provide', 'decorator'),
+ decorator: invokeLaterAndSetModuleName('$provide', 'decorator', configBlocks),
/**
* @ngdoc method
@@ -2194,112 +2490,12 @@ function setupModuleLoader(window) {
* @module ng
* @param {string} name Name of the component in camel-case (i.e. myComp which will match as my-comp)
* @param {Object} options Component definition object (a simplified
- * {@link ng.$compile#directive-definition-object directive definition object}),
- * has the following properties (all optional):
- *
- * - `controller` – `{(string|function()=}` – Controller constructor function that should be
- * associated with newly created scope or the name of a {@link ng.$compile#-controller-
- * registered controller} if passed as a string. Empty function by default.
- * - `controllerAs` – `{string=}` – An identifier name for a reference to the controller.
- * If present, the controller will be published to scope under the `controllerAs` name.
- * If not present, this will default to be the same as the component name.
- * - `template` – `{string=|function()=}` – html template as a string or a function that
- * returns an html template as a string which should be used as the contents of this component.
- * Empty string by default.
- *
- * If `template` is a function, then it is {@link auto.$injector#invoke injected} with
- * the following locals:
- *
- * - `$element` - Current element
- * - `$attrs` - Current attributes object for the element
- *
- * - `templateUrl` – `{string=|function()=}` – path or function that returns a path to an html
- * template that should be used as the contents of this component.
- *
- * If `templateUrl` is a function, then it is {@link auto.$injector#invoke injected} with
- * the following locals:
- *
- * - `$element` - Current element
- * - `$attrs` - Current attributes object for the element
- * - `bindings` – `{object=}` – Define DOM attribute binding to component properties.
- * Component properties are always bound to the component controller and not to the scope.
- * - `transclude` – `{boolean=}` – Whether {@link $compile#transclusion transclusion} is enabled.
- * Enabled by default.
- * - `isolate` – `{boolean=}` – Whether the new scope is isolated. Isolated by default.
- * - `restrict` - `{string=}` - String of subset of {@link ng.$compile#-restrict- EACM} which
- * restricts the component to specific directive declaration style. If omitted, this defaults to 'E'.
- * - `$canActivate` – `{function()=}` – TBD.
- * - `$routeConfig` – `{object=}` – TBD.
+ * {@link ng.$compile#directive-definition-object directive definition object})
*
* @description
- * Register a component definition with the compiler. This is short for registering a specific
- * subset of directives which represents actual UI components in your application. Component
- * definitions are very simple and do not require the complexity behind defining directives.
- * Component definitions usually consist only of the template and the controller backing it.
- * In order to make the definition easier, components enforce best practices like controllerAs
- * and default behaviors like scope isolation, restrict to elements and allow transclusion.
- *
- * Here are a few examples of how you would usually define components:
- *
- * ```js
- * var myMod = angular.module(...);
- * myMod.component('myComp', {
- * template: '<div>My name is {{myComp.name}}</div>',
- * controller: function() {
- * this.name = 'shahar';
- * }
- * });
- *
- * myMod.component('myComp', {
- * template: '<div>My name is {{myComp.name}}</div>',
- * bindings: {name: '@'}
- * });
- *
- * myMod.component('myComp', {
- * templateUrl: 'views/my-comp.html',
- * controller: 'MyCtrl as ctrl',
- * bindings: {name: '@'}
- * });
- *
- * ```
- *
- * See {@link ng.$compileProvider#directive $compileProvider.directive()}.
+ * See {@link ng.$compileProvider#component $compileProvider.component()}.
*/
- component: function(name, options) {
- function factory($injector) {
- function makeInjectable(fn) {
- if (angular.isFunction(fn)) {
- return function(tElement, tAttrs) {
- return $injector.invoke(fn, this, {$element: tElement, $attrs: tAttrs});
- };
- } else {
- return fn;
- }
- }
-
- var template = (!options.template && !options.templateUrl ? '' : options.template);
- return {
- controller: options.controller || function() {},
- controllerAs: identifierForController(options.controller) || options.controllerAs || name,
- template: makeInjectable(template),
- templateUrl: makeInjectable(options.templateUrl),
- transclude: options.transclude === undefined ? true : options.transclude,
- scope: options.isolate === false ? true : {},
- bindToController: options.bindings || {},
- restrict: options.restrict || 'E'
- };
- }
-
- if (options.$canActivate) {
- factory.$canActivate = options.$canActivate;
- }
- if (options.$routeConfig) {
- factory.$routeConfig = options.$routeConfig;
- }
- factory.$inject = ['$injector'];
-
- return moduleInstance.directive(name, factory);
- },
+ component: invokeLaterAndSetModuleName('$compileProvider', 'component'),
/**
* @ngdoc method
@@ -2355,10 +2551,11 @@ function setupModuleLoader(window) {
* @param {string} method
* @returns {angular.Module}
*/
- function invokeLaterAndSetModuleName(provider, method) {
+ function invokeLaterAndSetModuleName(provider, method, queue) {
+ if (!queue) queue = invokeQueue;
return function(recipeName, factoryFunction) {
if (factoryFunction && isFunction(factoryFunction)) factoryFunction.$$moduleName = name;
- invokeQueue.push([provider, method, arguments]);
+ queue.push([provider, method, arguments]);
return moduleInstance;
};
}
@@ -2368,11 +2565,44 @@ function setupModuleLoader(window) {
}
-/* global: toDebugString: true */
+/* global shallowCopy: true */
+
+/**
+ * Creates a shallow copy of an object, an array or a primitive.
+ *
+ * Assumes that there are no proto properties for objects.
+ */
+function shallowCopy(src, dst) {
+ if (isArray(src)) {
+ dst = dst || [];
+
+ for (var i = 0, ii = src.length; i < ii; i++) {
+ dst[i] = src[i];
+ }
+ } else if (isObject(src)) {
+ dst = dst || {};
+
+ for (var key in src) {
+ if (!(key.charAt(0) === '$' && key.charAt(1) === '$')) {
+ dst[key] = src[key];
+ }
+ }
+ }
-function serializeObject(obj) {
+ return dst || src;
+}
+
+/* global toDebugString: true */
+
+function serializeObject(obj, maxDepth) {
var seen = [];
+ // There is no direct way to stringify object until reaching a specific depth
+ // and a very deep object can cause a performance issue, so we copy the object
+ // based on this specific depth and then stringify it.
+ if (isValidObjectMaxDepth(maxDepth)) {
+ obj = copy(obj, null, maxDepth);
+ }
return JSON.stringify(obj, function(key, val) {
val = toJsonReplacer(key, val);
if (isObject(val)) {
@@ -2385,13 +2615,13 @@ function serializeObject(obj) {
});
}
-function toDebugString(obj) {
+function toDebugString(obj, maxDepth) {
if (typeof obj === 'function') {
return obj.toString().replace(/ \{[\s\S]*$/, '');
} else if (isUndefined(obj)) {
return 'undefined';
} else if (typeof obj !== 'string') {
- return serializeObject(obj);
+ return serializeObject(obj, maxDepth);
}
return obj;
}
@@ -2407,7 +2637,6 @@ function toDebugString(obj) {
formDirective,
scriptDirective,
selectDirective,
- styleDirective,
optionDirective,
ngBindDirective,
ngBindHtmlDirective,
@@ -2452,26 +2681,30 @@ function toDebugString(obj) {
$AnchorScrollProvider,
$AnimateProvider,
$CoreAnimateCssProvider,
+ $$CoreAnimateJsProvider,
$$CoreAnimateQueueProvider,
- $$CoreAnimateRunnerProvider,
+ $$AnimateRunnerFactoryProvider,
+ $$AnimateAsyncRunFactoryProvider,
$BrowserProvider,
$CacheFactoryProvider,
$ControllerProvider,
$DateProvider,
$DocumentProvider,
+ $$IsDocumentHiddenProvider,
$ExceptionHandlerProvider,
$FilterProvider,
$$ForceReflowProvider,
$InterpolateProvider,
$IntervalProvider,
- $$HashMapProvider,
$HttpProvider,
$HttpParamSerializerProvider,
$HttpParamSerializerJQLikeProvider,
$HttpBackendProvider,
$xhrFactoryProvider,
+ $jsonpCallbacksProvider,
$LocationProvider,
$LogProvider,
+ $$MapProvider,
$ParseProvider,
$RootScopeProvider,
$QProvider,
@@ -2507,16 +2740,19 @@ function toDebugString(obj) {
* - `codeName` – `{string}` – Code name of the release, such as "jiggling-armfat".
*/
var version = {
- full: '1.5.0-beta.2', // all of these placeholder strings will be replaced by grunt's
- major: 1, // package task
- minor: 5,
- dot: 0,
- codeName: 'effective-delegation'
+ // These placeholder strings will be replaced by grunt's `build` task.
+ // They need to be double- or single-quoted.
+ full: '1.6.3',
+ major: 1,
+ minor: 6,
+ dot: 3,
+ codeName: 'scriptalicious-bootstrapping'
};
function publishExternalAPI(angular) {
extend(angular, {
+ 'errorHandlingConfig': errorHandlingConfig,
'bootstrap': bootstrap,
'copy': copy,
'extend': extend,
@@ -2542,11 +2778,14 @@ function publishExternalAPI(angular) {
'isDate': isDate,
'lowercase': lowercase,
'uppercase': uppercase,
- 'callbacks': {counter: 0},
+ 'callbacks': {$$counter: 0},
'getTestability': getTestability,
+ 'reloadWithDebugInfo': reloadWithDebugInfo,
'$$minErr': minErr,
'$$csp': csp,
- 'reloadWithDebugInfo': reloadWithDebugInfo
+ '$$encodeUriSegment': encodeUriSegment,
+ '$$encodeUriQuery': encodeUriQuery,
+ '$$stringify': stringify
});
angularModule = setupModuleLoader(window);
@@ -2565,7 +2804,6 @@ function publishExternalAPI(angular) {
form: formDirective,
script: scriptDirective,
select: selectDirective,
- style: styleDirective,
option: optionDirective,
ngBind: ngBindDirective,
ngBindHtml: ngBindHtmlDirective,
@@ -2613,12 +2851,15 @@ function publishExternalAPI(angular) {
$anchorScroll: $AnchorScrollProvider,
$animate: $AnimateProvider,
$animateCss: $CoreAnimateCssProvider,
+ $$animateJs: $$CoreAnimateJsProvider,
$$animateQueue: $$CoreAnimateQueueProvider,
- $$AnimateRunner: $$CoreAnimateRunnerProvider,
+ $$AnimateRunner: $$AnimateRunnerFactoryProvider,
+ $$animateAsyncRun: $$AnimateAsyncRunFactoryProvider,
$browser: $BrowserProvider,
$cacheFactory: $CacheFactoryProvider,
$controller: $ControllerProvider,
$document: $DocumentProvider,
+ $$isDocumentHidden: $$IsDocumentHiddenProvider,
$exceptionHandler: $ExceptionHandlerProvider,
$filter: $FilterProvider,
$$forceReflow: $$ForceReflowProvider,
@@ -2629,6 +2870,7 @@ function publishExternalAPI(angular) {
$httpParamSerializerJQLike: $HttpParamSerializerJQLikeProvider,
$httpBackend: $HttpBackendProvider,
$xhrFactory: $xhrFactoryProvider,
+ $jsonpCallbacks: $jsonpCallbacksProvider,
$location: $LocationProvider,
$log: $LogProvider,
$parse: $ParseProvider,
@@ -2645,11 +2887,12 @@ function publishExternalAPI(angular) {
$window: $WindowProvider,
$$rAF: $$RAFProvider,
$$jqLite: $$jqLiteProvider,
- $$HashMap: $$HashMapProvider,
+ $$Map: $$MapProvider,
$$cookieReader: $$CookieReaderProvider
});
}
- ]);
+ ])
+ .info({ angularVersion: '1.6.3' });
}
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
@@ -2663,11 +2906,10 @@ function publishExternalAPI(angular) {
* Or gives undesired access to variables likes document or window? *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
-/* global JQLitePrototype: true,
- addEventListenerFn: true,
- removeEventListenerFn: true,
+/* global
+ JQLitePrototype: true,
BOOLEAN_ATTR: true,
- ALIASED_ATTR: true,
+ ALIASED_ATTR: true
*/
//////////////////////////////////
@@ -2685,29 +2927,36 @@ function publishExternalAPI(angular) {
*
* If jQuery is available, `angular.element` is an alias for the
* [jQuery](http://api.jquery.com/jQuery/) function. If jQuery is not available, `angular.element`
- * delegates to Angular's built-in subset of jQuery, called "jQuery lite" or "jqLite."
+ * delegates to Angular's built-in subset of jQuery, called "jQuery lite" or **jqLite**.
+ *
+ * jqLite is a tiny, API-compatible subset of jQuery that allows
+ * Angular to manipulate the DOM in a cross-browser compatible way. jqLite implements only the most
+ * commonly needed functionality with the goal of having a very small footprint.
*
- * <div class="alert alert-success">jqLite is a tiny, API-compatible subset of jQuery that allows
- * Angular to manipulate the DOM in a cross-browser compatible way. **jqLite** implements only the most
- * commonly needed functionality with the goal of having a very small footprint.</div>
+ * To use `jQuery`, simply ensure it is loaded before the `angular.js` file. You can also use the
+ * {@link ngJq `ngJq`} directive to specify that jqlite should be used over jQuery, or to use a
+ * specific version of jQuery if multiple versions exist on the page.
*
- * To use `jQuery`, simply ensure it is loaded before the `angular.js` file.
+ * <div class="alert alert-info">**Note:** All element references in Angular are always wrapped with jQuery or
+ * jqLite (such as the element argument in a directive's compile / link function). They are never raw DOM references.</div>
*
- * <div class="alert">**Note:** all element references in Angular are always wrapped with jQuery or
- * jqLite; they are never raw DOM references.</div>
+ * <div class="alert alert-warning">**Note:** Keep in mind that this function will not find elements
+ * by tag name / CSS selector. For lookups by tag name, try instead `angular.element(document).find(...)`
+ * or `$document.find()`, or use the standard DOM APIs, e.g. `document.querySelectorAll()`.</div>
*
* ## Angular's jqLite
* jqLite provides only the following jQuery methods:
*
- * - [`addClass()`](http://api.jquery.com/addClass/)
+ * - [`addClass()`](http://api.jquery.com/addClass/) - Does not support a function as first argument
* - [`after()`](http://api.jquery.com/after/)
* - [`append()`](http://api.jquery.com/append/)
* - [`attr()`](http://api.jquery.com/attr/) - Does not support functions as parameters
- * - [`bind()`](http://api.jquery.com/bind/) - Does not support namespaces, selectors or eventData
+ * - [`bind()`](http://api.jquery.com/bind/) (_deprecated_, use [`on()`](http://api.jquery.com/on/)) - Does not support namespaces, selectors or eventData
* - [`children()`](http://api.jquery.com/children/) - Does not support selectors
* - [`clone()`](http://api.jquery.com/clone/)
* - [`contents()`](http://api.jquery.com/contents/)
- * - [`css()`](http://api.jquery.com/css/) - Only retrieves inline-styles, does not call `getComputedStyle()`. As a setter, does not convert numbers to strings or append 'px'.
+ * - [`css()`](http://api.jquery.com/css/) - Only retrieves inline-styles, does not call `getComputedStyle()`.
+ * As a setter, does not convert numbers to strings or append 'px', and also does not have automatic property prefixing.
* - [`data()`](http://api.jquery.com/data/)
* - [`detach()`](http://api.jquery.com/detach/)
* - [`empty()`](http://api.jquery.com/empty/)
@@ -2722,16 +2971,16 @@ function publishExternalAPI(angular) {
* - [`parent()`](http://api.jquery.com/parent/) - Does not support selectors
* - [`prepend()`](http://api.jquery.com/prepend/)
* - [`prop()`](http://api.jquery.com/prop/)
- * - [`ready()`](http://api.jquery.com/ready/)
+ * - [`ready()`](http://api.jquery.com/ready/) (_deprecated_, use `angular.element(callback)` instead of `angular.element(document).ready(callback)`)
* - [`remove()`](http://api.jquery.com/remove/)
- * - [`removeAttr()`](http://api.jquery.com/removeAttr/)
- * - [`removeClass()`](http://api.jquery.com/removeClass/)
+ * - [`removeAttr()`](http://api.jquery.com/removeAttr/) - Does not support multiple attributes
+ * - [`removeClass()`](http://api.jquery.com/removeClass/) - Does not support a function as first argument
* - [`removeData()`](http://api.jquery.com/removeData/)
* - [`replaceWith()`](http://api.jquery.com/replaceWith/)
* - [`text()`](http://api.jquery.com/text/)
- * - [`toggleClass()`](http://api.jquery.com/toggleClass/)
- * - [`triggerHandler()`](http://api.jquery.com/triggerHandler/) - Passes a dummy event object to handlers.
- * - [`unbind()`](http://api.jquery.com/unbind/) - Does not support namespaces or event object as parameter
+ * - [`toggleClass()`](http://api.jquery.com/toggleClass/) - Does not support a function as first argument
+ * - [`triggerHandler()`](http://api.jquery.com/triggerHandler/) - Passes a dummy event object to handlers
+ * - [`unbind()`](http://api.jquery.com/unbind/) (_deprecated_, use [`off()`](http://api.jquery.com/off/)) - Does not support namespaces or event object as parameter
* - [`val()`](http://api.jquery.com/val/)
* - [`wrap()`](http://api.jquery.com/wrap/)
*
@@ -2759,6 +3008,9 @@ function publishExternalAPI(angular) {
* - `inheritedData()` - same as `data()`, but walks up the DOM until a value is found or the top
* parent element is reached.
*
+ * @knownIssue You cannot spy on `angular.element` if you are using Jasmine version 1.x. See
+ * https://github.com/angular/angular.js/issues/14251 for more information.
+ *
* @param {string|DOMElement} element HTML string or DOMElement to be wrapped into jQuery.
* @returns {Object} jQuery object.
*/
@@ -2766,13 +3018,7 @@ function publishExternalAPI(angular) {
JQLite.expando = 'ng339';
var jqCache = JQLite.cache = {},
- jqId = 1,
- addEventListenerFn = function(element, type, fn) {
- element.addEventListener(type, fn, false);
- },
- removeEventListenerFn = function(element, type, fn) {
- element.removeEventListener(type, fn, false);
- };
+ jqId = 1;
/*
* !!! This is an undocumented "private" function !!!
@@ -2785,22 +3031,31 @@ JQLite._data = function(node) {
function jqNextId() { return ++jqId; }
-var SPECIAL_CHARS_REGEXP = /([\:\-\_]+(.))/g;
-var MOZ_HACK_REGEXP = /^moz([A-Z])/;
-var MOUSE_EVENT_MAP= { mouseleave: "mouseout", mouseenter: "mouseover"};
+var DASH_LOWERCASE_REGEXP = /-([a-z])/g;
+var MS_HACK_REGEXP = /^-ms-/;
+var MOUSE_EVENT_MAP = { mouseleave: 'mouseout', mouseenter: 'mouseover' };
var jqLiteMinErr = minErr('jqLite');
/**
- * Converts snake_case to camelCase.
- * Also there is special case for Moz prefix starting with upper case letter.
+ * Converts kebab-case to camelCase.
+ * There is also a special case for the ms prefix starting with a lowercase letter.
* @param name Name to normalize
*/
-function camelCase(name) {
- return name.
- replace(SPECIAL_CHARS_REGEXP, function(_, separator, letter, offset) {
- return offset ? letter.toUpperCase() : letter;
- }).
- replace(MOZ_HACK_REGEXP, 'Moz$1');
+function cssKebabToCamel(name) {
+ return kebabToCamel(name.replace(MS_HACK_REGEXP, 'ms-'));
+}
+
+function fnCamelCaseReplace(all, letter) {
+ return letter.toUpperCase();
+}
+
+/**
+ * Converts kebab-case to camelCase.
+ * @param name Name to normalize
+ */
+function kebabToCamel(name) {
+ return name
+ .replace(DASH_LOWERCASE_REGEXP, fnCamelCaseReplace);
}
var SINGLE_TAG_REGEXP = /^<([\w-]+)\s*\/?>(?:<\/\1>|)$/;
@@ -2815,7 +3070,7 @@ var wrapMap = {
'col': [2, '<table><colgroup>', '</colgroup></table>'],
'tr': [2, '<table><tbody>', '</tbody></table>'],
'td': [3, '<table><tbody><tr>', '</tr></tbody></table>'],
- '_default': [0, "", ""]
+ '_default': [0, '', '']
};
wrapMap.optgroup = wrapMap.option;
@@ -2857,10 +3112,10 @@ function jqLiteBuildFragment(html, context) {
nodes.push(context.createTextNode(html));
} else {
// Convert html into DOM nodes
- tmp = tmp || fragment.appendChild(context.createElement("div"));
- tag = (TAG_NAME_REGEXP.exec(html) || ["", ""])[1].toLowerCase();
+ tmp = fragment.appendChild(context.createElement('div'));
+ tag = (TAG_NAME_REGEXP.exec(html) || ['', ''])[1].toLowerCase();
wrap = wrapMap[tag] || wrapMap._default;
- tmp.innerHTML = wrap[1] + html.replace(XHTML_TAG_REGEXP, "<$1></$2>") + wrap[2];
+ tmp.innerHTML = wrap[1] + html.replace(XHTML_TAG_REGEXP, '<$1></$2>') + wrap[2];
// Descend through wrappers to the right content
i = wrap[0];
@@ -2871,12 +3126,12 @@ function jqLiteBuildFragment(html, context) {
nodes = concat(nodes, tmp.childNodes);
tmp = fragment.firstChild;
- tmp.textContent = "";
+ tmp.textContent = '';
}
// Remove wrapper from fragment
- fragment.textContent = "";
- fragment.innerHTML = ""; // Clear inner HTML
+ fragment.textContent = '';
+ fragment.innerHTML = ''; // Clear inner HTML
forEach(nodes, function(node) {
fragment.appendChild(node);
});
@@ -2885,7 +3140,7 @@ function jqLiteBuildFragment(html, context) {
}
function jqLiteParseHTML(html, context) {
- context = context || document;
+ context = context || window.document;
var parsed;
if ((parsed = SINGLE_TAG_REGEXP.exec(html))) {
@@ -2899,12 +3154,21 @@ function jqLiteParseHTML(html, context) {
return [];
}
+function jqLiteWrapNode(node, wrapper) {
+ var parent = node.parentNode;
+
+ if (parent) {
+ parent.replaceChild(wrapper, node);
+ }
+
+ wrapper.appendChild(node);
+}
+
// IE9-11 has no method "contains" in SVG element and in Node.prototype. Bug #10259.
-var jqLiteContains = Node.prototype.contains || function(arg) {
- // jshint bitwise: false
+var jqLiteContains = window.Node.prototype.contains || /** @this */ function(arg) {
+ // eslint-disable-next-line no-bitwise
return !!(this.compareDocumentPosition(arg) & 16);
- // jshint bitwise: true
};
/////////////////////////////////////////////
@@ -2920,7 +3184,7 @@ function JQLite(element) {
argIsString = true;
}
if (!(this instanceof JQLite)) {
- if (argIsString && element.charAt(0) != '<') {
+ if (argIsString && element.charAt(0) !== '<') {
throw jqLiteMinErr('nosel', 'Looking up elements via selectors is not supported by jqLite! See: http://docs.angularjs.org/api/angular.element');
}
return new JQLite(element);
@@ -2928,6 +3192,8 @@ function JQLite(element) {
if (argIsString) {
jqLiteAddNodes(this, jqLiteParseHTML(element));
+ } else if (isFunction(element)) {
+ jqLiteReady(element);
} else {
jqLiteAddNodes(this, element);
}
@@ -2960,7 +3226,7 @@ function jqLiteOff(element, type, fn, unsupported) {
if (!type) {
for (type in events) {
if (type !== '$destroy') {
- removeEventListenerFn(element, type, handle);
+ element.removeEventListener(type, handle);
}
delete events[type];
}
@@ -2972,7 +3238,7 @@ function jqLiteOff(element, type, fn, unsupported) {
arrayRemove(listenerFns || [], fn);
}
if (!(isDefined(fn) && listenerFns && listenerFns.length > 0)) {
- removeEventListenerFn(element, type, handle);
+ element.removeEventListener(type, handle);
delete events[type];
}
};
@@ -3023,6 +3289,7 @@ function jqLiteExpandoStore(element, createIfNecessary) {
function jqLiteData(element, key, value) {
if (jqLiteAcceptsData(element)) {
+ var prop;
var isSimpleSetter = isDefined(value);
var isSimpleGetter = !isSimpleSetter && key && !isObject(key);
@@ -3031,16 +3298,18 @@ function jqLiteData(element, key, value) {
var data = expandoStore && expandoStore.data;
if (isSimpleSetter) { // data('key', value)
- data[key] = value;
+ data[kebabToCamel(key)] = value;
} else {
if (massGetter) { // data()
return data;
} else {
if (isSimpleGetter) { // data('key')
// don't force creation of expandoStore if it doesn't exist yet
- return data && data[key];
+ return data && data[kebabToCamel(key)];
} else { // mass-setter: data({key1: val1, key2: val2})
- extend(data, key);
+ for (prop in key) {
+ data[kebabToCamel(prop)] = key[prop];
+ }
}
}
}
@@ -3049,17 +3318,17 @@ function jqLiteData(element, key, value) {
function jqLiteHasClass(element, selector) {
if (!element.getAttribute) return false;
- return ((" " + (element.getAttribute('class') || '') + " ").replace(/[\n\t]/g, " ").
- indexOf(" " + selector + " ") > -1);
+ return ((' ' + (element.getAttribute('class') || '') + ' ').replace(/[\n\t]/g, ' ').
+ indexOf(' ' + selector + ' ') > -1);
}
function jqLiteRemoveClass(element, cssClasses) {
if (cssClasses && element.setAttribute) {
forEach(cssClasses.split(' '), function(cssClass) {
element.setAttribute('class', trim(
- (" " + (element.getAttribute('class') || '') + " ")
- .replace(/[\n\t]/g, " ")
- .replace(" " + trim(cssClass) + " ", " "))
+ (' ' + (element.getAttribute('class') || '') + ' ')
+ .replace(/[\n\t]/g, ' ')
+ .replace(' ' + trim(cssClass) + ' ', ' '))
);
});
}
@@ -3068,7 +3337,7 @@ function jqLiteRemoveClass(element, cssClasses) {
function jqLiteAddClass(element, cssClasses) {
if (cssClasses && element.setAttribute) {
var existingClasses = (' ' + (element.getAttribute('class') || '') + ' ')
- .replace(/[\n\t]/g, " ");
+ .replace(/[\n\t]/g, ' ');
forEach(cssClasses.split(' '), function(cssClass) {
cssClass = trim(cssClass);
@@ -3115,7 +3384,7 @@ function jqLiteController(element, name) {
function jqLiteInheritedData(element, name, value) {
// if element is the document object work with the html element instead
// this makes $(document).scope() possible
- if (element.nodeType == NODE_TYPE_DOCUMENT) {
+ if (element.nodeType === NODE_TYPE_DOCUMENT) {
element = element.documentElement;
}
var names = isArray(name) ? name : [name];
@@ -3149,7 +3418,7 @@ function jqLiteRemove(element, keepData) {
function jqLiteDocumentLoaded(action, win) {
win = win || window;
if (win.document.readyState === 'complete') {
- // Force the action to be run async for consistent behaviour
+ // Force the action to be run async for consistent behavior
// from the action's point of view
// i.e. it will definitely not be in a $apply
win.setTimeout(action);
@@ -3159,30 +3428,32 @@ function jqLiteDocumentLoaded(action, win) {
}
}
+function jqLiteReady(fn) {
+ function trigger() {
+ window.document.removeEventListener('DOMContentLoaded', trigger);
+ window.removeEventListener('load', trigger);
+ fn();
+ }
+
+ // check if document is already loaded
+ if (window.document.readyState === 'complete') {
+ window.setTimeout(fn);
+ } else {
+ // We can not use jqLite since we are not done loading and jQuery could be loaded later.
+
+ // Works for modern browsers and IE9
+ window.document.addEventListener('DOMContentLoaded', trigger);
+
+ // Fallback to window.onload for others
+ window.addEventListener('load', trigger);
+ }
+}
+
//////////////////////////////////////////
// Functions which are declared directly.
//////////////////////////////////////////
var JQLitePrototype = JQLite.prototype = {
- ready: function(fn) {
- var fired = false;
-
- function trigger() {
- if (fired) return;
- fired = true;
- fn();
- }
-
- // check if document is already loaded
- if (document.readyState === 'complete') {
- setTimeout(trigger);
- } else {
- this.on('DOMContentLoaded', trigger); // works for modern browsers and IE9
- // we can not use jqLite since we are not done loading and jQuery could be loaded later.
- // jshint -W064
- JQLite(window).on('load', trigger); // fallback to window.onload for others
- // jshint +W064
- }
- },
+ ready: jqLiteReady,
toString: function() {
var value = [];
forEach(this, function(e) { value.push('' + e);});
@@ -3217,7 +3488,8 @@ var ALIASED_ATTR = {
'ngMaxlength': 'maxlength',
'ngMin': 'min',
'ngMax': 'max',
- 'ngPattern': 'pattern'
+ 'ngPattern': 'pattern',
+ 'ngStep': 'step'
};
function getBooleanAttrName(element, name) {
@@ -3268,7 +3540,7 @@ forEach({
hasClass: jqLiteHasClass,
css: function(element, name, value) {
- name = camelCase(name);
+ name = cssKebabToCamel(name);
if (isDefined(value)) {
element.style[name] = value;
@@ -3278,33 +3550,33 @@ forEach({
},
attr: function(element, name, value) {
+ var ret;
var nodeType = element.nodeType;
- if (nodeType === NODE_TYPE_TEXT || nodeType === NODE_TYPE_ATTRIBUTE || nodeType === NODE_TYPE_COMMENT) {
+ if (nodeType === NODE_TYPE_TEXT || nodeType === NODE_TYPE_ATTRIBUTE || nodeType === NODE_TYPE_COMMENT ||
+ !element.getAttribute) {
return;
}
+
var lowercasedName = lowercase(name);
- if (BOOLEAN_ATTR[lowercasedName]) {
- if (isDefined(value)) {
- if (!!value) {
- element[name] = true;
- element.setAttribute(name, lowercasedName);
- } else {
- element[name] = false;
- element.removeAttribute(lowercasedName);
- }
+ var isBooleanAttr = BOOLEAN_ATTR[lowercasedName];
+
+ if (isDefined(value)) {
+ // setter
+
+ if (value === null || (value === false && isBooleanAttr)) {
+ element.removeAttribute(name);
} else {
- return (element[name] ||
- (element.attributes.getNamedItem(name) || noop).specified)
- ? lowercasedName
- : undefined;
- }
- } else if (isDefined(value)) {
- element.setAttribute(name, value);
- } else if (element.getAttribute) {
- // the extra argument "2" is to get the right thing for a.href in IE, see jQuery code
- // some elements (e.g. Document) don't have get attribute, so return undefined
- var ret = element.getAttribute(name, 2);
- // normalize non-existing attributes to undefined (as jQuery)
+ element.setAttribute(name, isBooleanAttr ? lowercasedName : value);
+ }
+ } else {
+ // getter
+
+ ret = element.getAttribute(name);
+
+ if (isBooleanAttr && ret !== null) {
+ ret = lowercasedName;
+ }
+ // Normalize non-existing attributes to undefined (as jQuery).
return ret === null ? undefined : ret;
}
},
@@ -3339,7 +3611,7 @@ forEach({
result.push(option.value || option.text);
}
});
- return result.length === 0 ? null : result;
+ return result;
}
return element.value;
}
@@ -3367,7 +3639,7 @@ forEach({
// in a way that survives minification.
// jqLiteEmpty takes no arguments but is a setter.
if (fn !== jqLiteEmpty &&
- (isUndefined((fn.length == 2 && (fn !== jqLiteHasClass && fn !== jqLiteController)) ? arg1 : arg2))) {
+ (isUndefined((fn.length === 2 && (fn !== jqLiteHasClass && fn !== jqLiteController)) ? arg1 : arg2))) {
if (isObject(arg1)) {
// we are a write, but the object properties are the key/values
@@ -3509,7 +3781,7 @@ forEach({
eventFns = events[type] = [];
eventFns.specialHandlerWrapper = specialHandlerWrapper;
if (type !== '$destroy' && !noEventListener) {
- addEventListenerFn(element, type, handle);
+ element.addEventListener(type, handle);
}
}
@@ -3591,12 +3863,7 @@ forEach({
},
wrap: function(element, wrapNode) {
- wrapNode = jqLite(wrapNode).eq(0).clone()[0];
- var parent = element.parentNode;
- if (parent) {
- parent.replaceChild(wrapNode, element);
- }
- wrapNode.appendChild(element);
+ jqLiteWrapNode(element, jqLite(wrapNode).eq(0).clone()[0]);
},
remove: jqLiteRemove,
@@ -3607,12 +3874,15 @@ forEach({
after: function(element, newElement) {
var index = element, parent = element.parentNode;
- newElement = new JQLite(newElement);
- for (var i = 0, ii = newElement.length; i < ii; i++) {
- var node = newElement[i];
- parent.insertBefore(node, index.nextSibling);
- index = node;
+ if (parent) {
+ newElement = new JQLite(newElement);
+
+ for (var i = 0, ii = newElement.length; i < ii; i++) {
+ var node = newElement[i];
+ parent.insertBefore(node, index.nextSibling);
+ index = node;
+ }
}
},
@@ -3706,14 +3976,15 @@ forEach({
}
return isDefined(value) ? value : this;
};
-
- // bind legacy bind/unbind to on/off
- JQLite.prototype.bind = JQLite.prototype.on;
- JQLite.prototype.unbind = JQLite.prototype.off;
});
+// bind legacy bind/unbind to on/off
+JQLite.prototype.bind = JQLite.prototype.on;
+JQLite.prototype.unbind = JQLite.prototype.off;
+
// Provider for private $$jqLite service
+/** @this */
function $$jqLiteProvider() {
this.$get = function $$jqLite() {
return extend(JQLite, {
@@ -3756,7 +4027,7 @@ function hashKey(obj, nextUidFn) {
}
var objType = typeof obj;
- if (objType == 'function' || (objType == 'object' && obj !== null)) {
+ if (objType === 'function' || (objType === 'object' && obj !== null)) {
key = obj.$$hashKey = objType + ':' + (nextUidFn || nextUid)();
} else {
key = objType + ':' + obj;
@@ -3765,50 +4036,70 @@ function hashKey(obj, nextUidFn) {
return key;
}
-/**
- * HashMap which can use objects as keys
- */
-function HashMap(array, isolatedUid) {
- if (isolatedUid) {
- var uid = 0;
- this.nextUid = function() {
- return ++uid;
- };
- }
- forEach(array, this.put, this);
+// A minimal ES2015 Map implementation.
+// Should be bug/feature equivalent to the native implementations of supported browsers
+// (for the features required in Angular).
+// See https://kangax.github.io/compat-table/es6/#test-Map
+var nanKey = Object.create(null);
+function NgMapShim() {
+ this._keys = [];
+ this._values = [];
+ this._lastKey = NaN;
+ this._lastIndex = -1;
}
-HashMap.prototype = {
- /**
- * Store key value pair
- * @param key key to store can be any type
- * @param value value to store can be any type
- */
- put: function(key, value) {
- this[hashKey(key, this.nextUid)] = value;
+NgMapShim.prototype = {
+ _idx: function(key) {
+ if (key === this._lastKey) {
+ return this._lastIndex;
+ }
+ this._lastKey = key;
+ this._lastIndex = this._keys.indexOf(key);
+ return this._lastIndex;
+ },
+ _transformKey: function(key) {
+ return isNumberNaN(key) ? nanKey : key;
},
-
- /**
- * @param key
- * @returns {Object} the value for the key
- */
get: function(key) {
- return this[hashKey(key, this.nextUid)];
+ key = this._transformKey(key);
+ var idx = this._idx(key);
+ if (idx !== -1) {
+ return this._values[idx];
+ }
},
+ set: function(key, value) {
+ key = this._transformKey(key);
+ var idx = this._idx(key);
+ if (idx === -1) {
+ idx = this._lastIndex = this._keys.length;
+ }
+ this._keys[idx] = key;
+ this._values[idx] = value;
- /**
- * Remove the key/value pair
- * @param key
- */
- remove: function(key) {
- var value = this[key = hashKey(key, this.nextUid)];
- delete this[key];
- return value;
+ // Support: IE11
+ // Do not `return this` to simulate the partial IE11 implementation
+ },
+ delete: function(key) {
+ key = this._transformKey(key);
+ var idx = this._idx(key);
+ if (idx === -1) {
+ return false;
+ }
+ this._keys.splice(idx, 1);
+ this._values.splice(idx, 1);
+ this._lastKey = NaN;
+ this._lastIndex = -1;
+ return true;
}
};
-var $$HashMapProvider = [function() {
+// For now, always use `NgMapShim`, even if `window.Map` is available. Some native implementations
+// are still buggy (often in subtle ways) and can cause hard-to-debug failures. When native `Map`
+// implementations get more stable, we can reconsider switching to `window.Map` (when available).
+var NgMap = NgMapShim;
+
+var $$MapProvider = [/** @this */function() {
this.$get = [function() {
- return HashMap;
+ return NgMap;
}];
}];
@@ -3869,20 +4160,25 @@ var $$HashMapProvider = [function() {
/**
* @ngdoc module
* @name auto
+ * @installation
* @description
*
* Implicit module which gets automatically added to each {@link auto.$injector $injector}.
*/
-var ARROW_ARG = /^([^\(]+?)=>/;
-var FN_ARGS = /^[^\(]*\(\s*([^\)]*)\)/m;
+var ARROW_ARG = /^([^(]+?)=>/;
+var FN_ARGS = /^[^(]*\(\s*([^)]*)\)/m;
var FN_ARG_SPLIT = /,/;
var FN_ARG = /^\s*(_?)(\S+?)\1\s*$/;
var STRIP_COMMENTS = /((\/\/.*$)|(\/\*[\s\S]*?\*\/))/mg;
var $injectorMinErr = minErr('$injector');
+function stringifyFn(fn) {
+ return Function.prototype.toString.call(fn);
+}
+
function extractArgs(fn) {
- var fnText = fn.toString().replace(STRIP_COMMENTS, ''),
+ var fnText = stringifyFn(fn).replace(STRIP_COMMENTS, ''),
args = fnText.match(ARROW_ARG) || fnText.match(FN_ARGS);
return args;
}
@@ -3988,6 +4284,28 @@ function annotate(fn, strictDi, name) {
*/
/**
+ * @ngdoc property
+ * @name $injector#modules
+ * @type {Object}
+ * @description
+ * A hash containing all the modules that have been loaded into the
+ * $injector.
+ *
+ * You can use this property to find out information about a module via the
+ * {@link angular.Module#info `myModule.info(...)`} method.
+ *
+ * For example:
+ *
+ * ```
+ * var info = $injector.modules['ngAnimate'].info();
+ * ```
+ *
+ * **Do not use this property to attempt to modify the modules after the application
+ * has been bootstrapped.**
+ */
+
+
+/**
* @ngdoc method
* @name $injector#get
*
@@ -4125,7 +4443,6 @@ function annotate(fn, strictDi, name) {
-
/**
* @ngdoc service
* @name $provide
@@ -4150,18 +4467,20 @@ function annotate(fn, strictDi, name) {
* these cases the {@link auto.$provide $provide} service has additional helper methods to register
* services without specifying a provider.
*
- * * {@link auto.$provide#provider provider(provider)} - registers a **service provider** with the
+ * * {@link auto.$provide#provider provider(name, provider)} - registers a **service provider** with the
* {@link auto.$injector $injector}
- * * {@link auto.$provide#constant constant(obj)} - registers a value/object that can be accessed by
+ * * {@link auto.$provide#constant constant(name, obj)} - registers a value/object that can be accessed by
* providers and services.
- * * {@link auto.$provide#value value(obj)} - registers a value/object that can only be accessed by
+ * * {@link auto.$provide#value value(name, obj)} - registers a value/object that can only be accessed by
* services, not providers.
- * * {@link auto.$provide#factory factory(fn)} - registers a service **factory function**, `fn`,
+ * * {@link auto.$provide#factory factory(name, fn)} - registers a service **factory function**
* that will be wrapped in a **service provider** object, whose `$get` property will contain the
* given factory function.
- * * {@link auto.$provide#service service(class)} - registers a **constructor function**, `class`
+ * * {@link auto.$provide#service service(name, Fn)} - registers a **constructor function**
* that will be wrapped in a **service provider** object, whose `$get` property will instantiate
* a new object using the given constructor function.
+ * * {@link auto.$provide#decorator decorator(name, decorFn)} - registers a **decorator function** that
+ * will be able to modify or replace the implementation of another service.
*
* See the individual methods for more information and examples.
*/
@@ -4303,8 +4622,20 @@ function annotate(fn, strictDi, name) {
*
* Register a **service constructor**, which will be invoked with `new` to create the service
* instance.
- * This is short for registering a service where its provider's `$get` property is the service
- * constructor function that will be used to instantiate the service instance.
+ * This is short for registering a service where its provider's `$get` property is a factory
+ * function that returns an instance instantiated by the injector from the service constructor
+ * function.
+ *
+ * Internally it looks a bit like this:
+ *
+ * ```
+ * {
+ * $get: function() {
+ * return $injector.instantiate(constructor);
+ * }
+ * }
+ * ```
+ *
*
* You should use {@link auto.$provide#service $provide.service(class)} if you define your service
* as a type/class.
@@ -4344,14 +4675,13 @@ function annotate(fn, strictDi, name) {
* @description
*
* Register a **value service** with the {@link auto.$injector $injector}, such as a string, a
- * number, an array, an object or a function. This is short for registering a service where its
+ * number, an array, an object or a function. This is short for registering a service where its
* provider's `$get` property is a factory function that takes no arguments and returns the **value
- * service**.
+ * service**. That also means it is not possible to inject other services into a value service.
*
* Value services are similar to constant services, except that they cannot be injected into a
* module configuration function (see {@link angular.Module#config}) but they can be overridden by
- * an Angular
- * {@link auto.$provide#decorator decorator}.
+ * an Angular {@link auto.$provide#decorator decorator}.
*
* @param {string} name The name of the instance.
* @param {*} value The value.
@@ -4376,8 +4706,11 @@ function annotate(fn, strictDi, name) {
* @name $provide#constant
* @description
*
- * Register a **constant service**, such as a string, a number, an array, an object or a function,
- * with the {@link auto.$injector $injector}. Unlike {@link auto.$provide#value value} it can be
+ * Register a **constant service** with the {@link auto.$injector $injector}, such as a string,
+ * a number, an array, an object or a function. Like the {@link auto.$provide#value value}, it is not
+ * possible to inject other services into a constant.
+ *
+ * But unlike {@link auto.$provide#value value}, a constant can be
* injected into a module configuration function (see {@link angular.Module#config}) and it cannot
* be overridden by an Angular {@link auto.$provide#decorator decorator}.
*
@@ -4404,18 +4737,20 @@ function annotate(fn, strictDi, name) {
* @name $provide#decorator
* @description
*
- * Register a **service decorator** with the {@link auto.$injector $injector}. A service decorator
- * intercepts the creation of a service, allowing it to override or modify the behaviour of the
- * service. The object returned by the decorator may be the original service, or a new service
- * object which replaces or wraps and delegates to the original service.
+ * Register a **decorator function** with the {@link auto.$injector $injector}. A decorator function
+ * intercepts the creation of a service, allowing it to override or modify the behavior of the
+ * service. The return value of the decorator function may be the original service, or a new service
+ * that replaces (or wraps and delegates to) the original service.
+ *
+ * You can find out more about using decorators in the {@link guide/decorators} guide.
*
* @param {string} name The name of the service to decorate.
* @param {Function|Array.<string|Function>} decorator This function will be invoked when the service needs to be
- * instantiated and should return the decorated service instance. The function is called using
+ * provided and should return the decorated service instance. The function is called using
* the {@link auto.$injector#invoke injector.invoke} method and is therefore fully injectable.
* Local injection arguments:
*
- * * `$delegate` - The original service instance, which can be monkey patched, configured,
+ * * `$delegate` - The original service instance, which can be replaced, monkey patched, configured,
* decorated or delegated to.
*
* @example
@@ -4435,7 +4770,7 @@ function createInjector(modulesToLoad, strictDi) {
var INSTANTIATING = {},
providerSuffix = 'Provider',
path = [],
- loadedModules = new HashMap([], true),
+ loadedModules = new NgMap(),
providerCache = {
$provide: {
provider: supportObject(provider),
@@ -4451,7 +4786,7 @@ function createInjector(modulesToLoad, strictDi) {
if (angular.isString(caller)) {
path.push(caller);
}
- throw $injectorMinErr('unpr', "Unknown provider: {0}", path.join(' <- '));
+ throw $injectorMinErr('unpr', 'Unknown provider: {0}', path.join(' <- '));
})),
instanceCache = {},
protoInstanceInjector =
@@ -4463,6 +4798,7 @@ function createInjector(modulesToLoad, strictDi) {
instanceInjector = protoInstanceInjector;
providerCache['$injector' + providerSuffix] = { $get: valueFn(protoInstanceInjector) };
+ instanceInjector.modules = providerInjector.modules = createMap();
var runBlocks = loadModules(modulesToLoad);
instanceInjector = protoInstanceInjector.get('$injector');
instanceInjector.strictDi = strictDi;
@@ -4490,16 +4826,16 @@ function createInjector(modulesToLoad, strictDi) {
provider_ = providerInjector.instantiate(provider_);
}
if (!provider_.$get) {
- throw $injectorMinErr('pget', "Provider '{0}' must define $get factory method.", name);
+ throw $injectorMinErr('pget', 'Provider \'{0}\' must define $get factory method.', name);
}
- return providerCache[name + providerSuffix] = provider_;
+ return (providerCache[name + providerSuffix] = provider_);
}
function enforceReturnValue(name, factory) {
- return function enforcedReturnValue() {
+ return /** @this */ function enforcedReturnValue() {
var result = instanceInjector.invoke(factory, this);
if (isUndefined(result)) {
- throw $injectorMinErr('undef', "Provider '{0}' must return a value from $get factory method.", name);
+ throw $injectorMinErr('undef', 'Provider \'{0}\' must return a value from $get factory method.', name);
}
return result;
};
@@ -4543,7 +4879,7 @@ function createInjector(modulesToLoad, strictDi) {
var runBlocks = [], moduleFn;
forEach(modulesToLoad, function(module) {
if (loadedModules.get(module)) return;
- loadedModules.put(module, true);
+ loadedModules.set(module, true);
function runInvokeQueue(queue) {
var i, ii;
@@ -4558,6 +4894,7 @@ function createInjector(modulesToLoad, strictDi) {
try {
if (isString(module)) {
moduleFn = angularModule(module);
+ instanceInjector.modules[module] = moduleFn;
runBlocks = runBlocks.concat(loadModules(moduleFn.requires)).concat(moduleFn._runBlocks);
runInvokeQueue(moduleFn._invokeQueue);
runInvokeQueue(moduleFn._configBlocks);
@@ -4572,15 +4909,15 @@ function createInjector(modulesToLoad, strictDi) {
if (isArray(module)) {
module = module[module.length - 1];
}
- if (e.message && e.stack && e.stack.indexOf(e.message) == -1) {
+ if (e.message && e.stack && e.stack.indexOf(e.message) === -1) {
// Safari & FF's stack traces don't contain error.message content
// unlike those of Chrome and IE
// So if stack doesn't contain message, we create a new string that contains both.
// Since error.stack is read-only in Safari, I'm overriding e and not e.stack here.
- /* jshint -W022 */
+ // eslint-disable-next-line no-ex-assign
e = e.message + '\n' + e.stack;
}
- throw $injectorMinErr('modulerr', "Failed to instantiate module {0} due to:\n{1}",
+ throw $injectorMinErr('modulerr', 'Failed to instantiate module {0} due to:\n{1}',
module, e.stack || e.message || e);
}
});
@@ -4604,7 +4941,8 @@ function createInjector(modulesToLoad, strictDi) {
try {
path.unshift(serviceName);
cache[serviceName] = INSTANTIATING;
- return cache[serviceName] = factory(serviceName, caller);
+ cache[serviceName] = factory(serviceName, caller);
+ return cache[serviceName];
} catch (err) {
if (cache[serviceName] === INSTANTIATING) {
delete cache[serviceName];
@@ -4616,48 +4954,71 @@ function createInjector(modulesToLoad, strictDi) {
}
}
- function invoke(fn, self, locals, serviceName) {
- if (typeof locals === 'string') {
- serviceName = locals;
- locals = null;
- }
+ function injectionArgs(fn, locals, serviceName) {
var args = [],
- $inject = createInjector.$$annotate(fn, strictDi, serviceName),
- length, i,
- key;
+ $inject = createInjector.$$annotate(fn, strictDi, serviceName);
- for (i = 0, length = $inject.length; i < length; i++) {
- key = $inject[i];
+ for (var i = 0, length = $inject.length; i < length; i++) {
+ var key = $inject[i];
if (typeof key !== 'string') {
throw $injectorMinErr('itkn',
'Incorrect injection token! Expected service name as string, got {0}', key);
}
- args.push(
- locals && locals.hasOwnProperty(key)
- ? locals[key]
- : getService(key, serviceName)
- );
+ args.push(locals && locals.hasOwnProperty(key) ? locals[key] :
+ getService(key, serviceName));
+ }
+ return args;
+ }
+
+ function isClass(func) {
+ // Support: IE 9-11 only
+ // IE 9-11 do not support classes and IE9 leaks with the code below.
+ if (msie || typeof func !== 'function') {
+ return false;
+ }
+ var result = func.$$ngIsClass;
+ if (!isBoolean(result)) {
+ // Support: Edge 12-13 only
+ // See: https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/6156135/
+ result = func.$$ngIsClass = /^(?:class\b|constructor\()/.test(stringifyFn(func));
+ }
+ return result;
+ }
+
+ function invoke(fn, self, locals, serviceName) {
+ if (typeof locals === 'string') {
+ serviceName = locals;
+ locals = null;
}
+
+ var args = injectionArgs(fn, locals, serviceName);
if (isArray(fn)) {
- fn = fn[length];
+ fn = fn[fn.length - 1];
}
- // http://jsperf.com/angularjs-invoke-apply-vs-switch
- // #5388
- return fn.apply(self, args);
+ if (!isClass(fn)) {
+ // http://jsperf.com/angularjs-invoke-apply-vs-switch
+ // #5388
+ return fn.apply(self, args);
+ } else {
+ args.unshift(null);
+ return new (Function.prototype.bind.apply(fn, args))();
+ }
}
+
function instantiate(Type, locals, serviceName) {
// Check if Type is annotated and use just the given function at n-1 as parameter
// e.g. someModule.factory('greeter', ['$window', function(renamed$window) {}]);
- // Object creation: http://jsperf.com/create-constructor/2
- var instance = Object.create((isArray(Type) ? Type[Type.length - 1] : Type).prototype || null);
- var returnedValue = invoke(Type, instance, locals, serviceName);
-
- return isObject(returnedValue) || isFunction(returnedValue) ? returnedValue : instance;
+ var ctor = (isArray(Type) ? Type[Type.length - 1] : Type);
+ var args = injectionArgs(Type, locals, serviceName);
+ // Empty object at position 0 is ignored for invocation with `new`, but required.
+ args.unshift(null);
+ return new (Function.prototype.bind.apply(ctor, args))();
}
+
return {
invoke: invoke,
instantiate: instantiate,
@@ -4675,6 +5036,7 @@ createInjector.$$annotate = annotate;
/**
* @ngdoc provider
* @name $anchorScrollProvider
+ * @this
*
* @description
* Use `$anchorScrollProvider` to disable automatic scrolling whenever
@@ -4713,7 +5075,7 @@ function $AnchorScrollProvider() {
* When called, it scrolls to the element related to the specified `hash` or (if omitted) to the
* current value of {@link ng.$location#hash $location.hash()}, according to the rules specified
* in the
- * [HTML5 spec](http://www.w3.org/html/wg/drafts/html/master/browsers.html#the-indicated-part-of-the-document).
+ * [HTML5 spec](http://www.w3.org/html/wg/drafts/html/master/browsers.html#an-indicated-part-of-the-document).
*
* It also watches the {@link ng.$location#hash $location.hash()} and automatically scrolls to
* match any anchor whenever it changes. This can be disabled by calling
@@ -4746,7 +5108,7 @@ function $AnchorScrollProvider() {
* </div>
*
* @example
- <example module="anchorScrollExample">
+ <example module="anchorScrollExample" name="anchor-scroll">
<file name="index.html">
<div id="scrollArea" ng-controller="ScrollController">
<a ng-click="gotoBottom()">Go to bottom</a>
@@ -4756,7 +5118,7 @@ function $AnchorScrollProvider() {
<file name="script.js">
angular.module('anchorScrollExample', [])
.controller('ScrollController', ['$scope', '$location', '$anchorScroll',
- function ($scope, $location, $anchorScroll) {
+ function($scope, $location, $anchorScroll) {
$scope.gotoBottom = function() {
// set the location.hash to the id of
// the element you wish to scroll to.
@@ -4785,7 +5147,7 @@ function $AnchorScrollProvider() {
* See {@link ng.$anchorScroll#yOffset $anchorScroll.yOffset} for more details.
*
* @example
- <example module="anchorScrollOffsetExample">
+ <example module="anchorScrollOffsetExample" name="anchor-scroll-offset">
<file name="index.html">
<div class="fixed-header" ng-controller="headerCtrl">
<a href="" ng-click="gotoAnchor(x)" ng-repeat="x in [1,2,3,4,5]">
@@ -4802,7 +5164,7 @@ function $AnchorScrollProvider() {
$anchorScroll.yOffset = 50; // always scroll by 50 extra pixels
}])
.controller('headerCtrl', ['$anchorScroll', '$location', '$scope',
- function ($anchorScroll, $location, $scope) {
+ function($anchorScroll, $location, $scope) {
$scope.gotoAnchor = function(x) {
var newHash = 'anchor' + x;
if ($location.hash() !== newHash) {
@@ -4909,7 +5271,8 @@ function $AnchorScrollProvider() {
}
function scroll(hash) {
- hash = isString(hash) ? hash : $location.hash();
+ // Allow numeric hashes
+ hash = isString(hash) ? hash : isNumber(hash) ? hash.toString() : $location.hash();
var elm;
// empty hash, scroll to the top of the page
@@ -4921,7 +5284,7 @@ function $AnchorScrollProvider() {
// first anchor with given name :-D
else if ((elm = getFirstAnchor(document.getElementsByName(hash)))) scrollTo(elm);
- // no element and hash == 'top', scroll to the top of the page
+ // no element and hash === 'top', scroll to the top of the page
else if (hash === 'top') scrollTo(null);
}
@@ -4996,33 +5359,14 @@ function prepareAnimateOptions(options) {
: {};
}
-var $$CoreAnimateRunnerProvider = function() {
- this.$get = ['$q', '$$rAF', function($q, $$rAF) {
- function AnimateRunner() {}
- AnimateRunner.all = noop;
- AnimateRunner.chain = noop;
- AnimateRunner.prototype = {
- end: noop,
- cancel: noop,
- resume: noop,
- pause: noop,
- complete: noop,
- then: function(pass, fail) {
- return $q(function(resolve) {
- $$rAF(function() {
- resolve();
- });
- }).then(pass, fail);
- }
- };
- return AnimateRunner;
- }];
+var $$CoreAnimateJsProvider = /** @this */ function() {
+ this.$get = noop;
};
// this is prefixed with Core since it conflicts with
// the animateQueueProvider defined in ngAnimate/animateQueue.js
-var $$CoreAnimateQueueProvider = function() {
- var postDigestQueue = new HashMap();
+var $$CoreAnimateQueueProvider = /** @this */ function() {
+ var postDigestQueue = new NgMap();
var postDigestElements = [];
this.$get = ['$$AnimateRunner', '$rootScope',
@@ -5034,17 +5378,28 @@ var $$CoreAnimateQueueProvider = function() {
pin: noop,
push: function(element, event, options, domOperation) {
- domOperation && domOperation();
+ if (domOperation) {
+ domOperation();
+ }
options = options || {};
- options.from && element.css(options.from);
- options.to && element.css(options.to);
+ if (options.from) {
+ element.css(options.from);
+ }
+ if (options.to) {
+ element.css(options.to);
+ }
if (options.addClass || options.removeClass) {
addRemoveClassesPostDigest(element, options.addClass, options.removeClass);
}
- return new $$AnimateRunner(); // jshint ignore:line
+ var runner = new $$AnimateRunner();
+
+ // since there are no animations to run the runner needs to be
+ // notified that the animation call is complete.
+ runner.complete();
+ return runner;
}
};
@@ -5083,10 +5438,14 @@ var $$CoreAnimateQueueProvider = function() {
});
forEach(element, function(elm) {
- toAdd && jqLiteAddClass(elm, toAdd);
- toRemove && jqLiteRemoveClass(elm, toRemove);
+ if (toAdd) {
+ jqLiteAddClass(elm, toAdd);
+ }
+ if (toRemove) {
+ jqLiteRemoveClass(elm, toRemove);
+ }
});
- postDigestQueue.remove(element);
+ postDigestQueue.delete(element);
}
});
postDigestElements.length = 0;
@@ -5101,7 +5460,7 @@ var $$CoreAnimateQueueProvider = function() {
if (classesAdded || classesRemoved) {
- postDigestQueue.put(element, data);
+ postDigestQueue.set(element, data);
postDigestElements.push(element);
if (postDigestElements.length === 1) {
@@ -5124,8 +5483,9 @@ var $$CoreAnimateQueueProvider = function() {
*
* To see the functional implementation check out `src/ngAnimate/animate.js`.
*/
-var $AnimateProvider = ['$provide', function($provide) {
+var $AnimateProvider = ['$provide', /** @this */ function($provide) {
var provider = this;
+ var classNameFilter = null;
this.$$registeredAnimations = Object.create(null);
@@ -5170,7 +5530,7 @@ var $AnimateProvider = ['$provide', function($provide) {
*/
this.register = function(name, factory) {
if (name && name.charAt(0) !== '.') {
- throw $animateMinErr('notcsel', "Expecting class selector starting with '.' got '{0}'.", name);
+ throw $animateMinErr('notcsel', 'Expecting class selector starting with \'.\' got \'{0}\'.', name);
}
var key = name + '-animation';
@@ -5194,16 +5554,16 @@ var $AnimateProvider = ['$provide', function($provide) {
*/
this.classNameFilter = function(expression) {
if (arguments.length === 1) {
- this.$$classNameFilter = (expression instanceof RegExp) ? expression : null;
- if (this.$$classNameFilter) {
- var reservedRegex = new RegExp("(\\s+|\\/)" + NG_ANIMATE_CLASSNAME + "(\\s+|\\/)");
- if (reservedRegex.test(this.$$classNameFilter.toString())) {
- throw $animateMinErr('nongcls','$animateProvider.classNameFilter(regex) prohibits accepting a regex value which matches/contains the "{0}" CSS class.', NG_ANIMATE_CLASSNAME);
-
+ classNameFilter = (expression instanceof RegExp) ? expression : null;
+ if (classNameFilter) {
+ var reservedRegex = new RegExp('[(\\s|\\/)]' + NG_ANIMATE_CLASSNAME + '[(\\s|\\/)]');
+ if (reservedRegex.test(classNameFilter.toString())) {
+ classNameFilter = null;
+ throw $animateMinErr('nongcls', '$animateProvider.classNameFilter(regex) prohibits accepting a regex value which matches/contains the "{0}" CSS class.', NG_ANIMATE_CLASSNAME);
}
}
}
- return this.$$classNameFilter;
+ return classNameFilter;
};
this.$get = ['$$animateQueue', function($$animateQueue) {
@@ -5217,7 +5577,11 @@ var $AnimateProvider = ['$provide', function($provide) {
afterElement = null;
}
}
- afterElement ? afterElement.after(element) : parentElement.prepend(element);
+ if (afterElement) {
+ afterElement.after(element);
+ } else {
+ parentElement.prepend(element);
+ }
}
/**
@@ -5283,15 +5647,20 @@ var $AnimateProvider = ['$provide', function($provide) {
* // remove all the animation event listeners listening for `enter`
* $animate.off('enter');
*
+ * // remove listeners for all animation events from the container element
+ * $animate.off(container);
+ *
* // remove all the animation event listeners listening for `enter` on the given element and its children
* $animate.off('enter', container);
*
- * // remove the event listener function provided by `listenerFn` that is set
- * // to listen for `enter` on the given `element` as well as its children
+ * // remove the event listener function provided by `callback` that is set
+ * // to listen for `enter` on the given `container` as well as its children
* $animate.off('enter', container, callback);
* ```
*
- * @param {string} event the animation event (e.g. enter, leave, move, addClass, removeClass, etc...)
+ * @param {string|DOMElement} event|container the animation event (e.g. enter, leave, move,
+ * addClass, removeClass, etc...), or the container element. If it is the element, all other
+ * arguments are ignored.
* @param {DOMElement=} container the container element the event listener was placed on
* @param {Function=} callback the callback function that was registered as the listener
*/
@@ -5355,7 +5724,9 @@ var $AnimateProvider = ['$provide', function($provide) {
* @param {Promise} animationPromise The animation promise that is returned when an animation is started.
*/
cancel: function(runner) {
- runner.end && runner.end();
+ if (runner.end) {
+ runner.end();
+ }
},
/**
@@ -5372,7 +5743,13 @@ var $AnimateProvider = ['$provide', function($provide) {
* @param {DOMElement} parent the parent element which will append the element as
* a child (so long as the after element is not present)
* @param {DOMElement=} after the sibling element after which the element will be appended
- * @param {object=} options an optional collection of options/styles that will be applied to the element
+ * @param {object=} options an optional collection of options/styles that will be applied to the element.
+ * The object can have the following properties:
+ *
+ * - **addClass** - `{string}` - space-separated CSS classes to add to element
+ * - **from** - `{Object}` - CSS properties & values at the beginning of animation. Must have matching `to`
+ * - **removeClass** - `{string}` - space-separated CSS classes to remove from element
+ * - **to** - `{Object}` - CSS properties & values at end of animation. Must have matching `from`
*
* @return {Promise} the animation callback promise
*/
@@ -5398,7 +5775,13 @@ var $AnimateProvider = ['$provide', function($provide) {
* @param {DOMElement} parent the parent element which will append the element as
* a child (so long as the after element is not present)
* @param {DOMElement=} after the sibling element after which the element will be appended
- * @param {object=} options an optional collection of options/styles that will be applied to the element
+ * @param {object=} options an optional collection of options/styles that will be applied to the element.
+ * The object can have the following properties:
+ *
+ * - **addClass** - `{string}` - space-separated CSS classes to add to element
+ * - **from** - `{Object}` - CSS properties & values at the beginning of animation. Must have matching `to`
+ * - **removeClass** - `{string}` - space-separated CSS classes to remove from element
+ * - **to** - `{Object}` - CSS properties & values at end of animation. Must have matching `from`
*
* @return {Promise} the animation callback promise
*/
@@ -5419,7 +5802,13 @@ var $AnimateProvider = ['$provide', function($provide) {
* digest once the animation has completed.
*
* @param {DOMElement} element the element which will be removed from the DOM
- * @param {object=} options an optional collection of options/styles that will be applied to the element
+ * @param {object=} options an optional collection of options/styles that will be applied to the element.
+ * The object can have the following properties:
+ *
+ * - **addClass** - `{string}` - space-separated CSS classes to add to element
+ * - **from** - `{Object}` - CSS properties & values at the beginning of animation. Must have matching `to`
+ * - **removeClass** - `{string}` - space-separated CSS classes to remove from element
+ * - **to** - `{Object}` - CSS properties & values at end of animation. Must have matching `from`
*
* @return {Promise} the animation callback promise
*/
@@ -5443,7 +5832,13 @@ var $AnimateProvider = ['$provide', function($provide) {
*
* @param {DOMElement} element the element which the CSS classes will be applied to
* @param {string} className the CSS class(es) that will be added (multiple classes are separated via spaces)
- * @param {object=} options an optional collection of options/styles that will be applied to the element
+ * @param {object=} options an optional collection of options/styles that will be applied to the element.
+ * The object can have the following properties:
+ *
+ * - **addClass** - `{string}` - space-separated CSS classes to add to element
+ * - **from** - `{Object}` - CSS properties & values at the beginning of animation. Must have matching `to`
+ * - **removeClass** - `{string}` - space-separated CSS classes to remove from element
+ * - **to** - `{Object}` - CSS properties & values at end of animation. Must have matching `from`
*
* @return {Promise} the animation callback promise
*/
@@ -5467,7 +5862,13 @@ var $AnimateProvider = ['$provide', function($provide) {
*
* @param {DOMElement} element the element which the CSS classes will be applied to
* @param {string} className the CSS class(es) that will be removed (multiple classes are separated via spaces)
- * @param {object=} options an optional collection of options/styles that will be applied to the element
+ * @param {object=} options an optional collection of options/styles that will be applied to the element.
+ * The object can have the following properties:
+ *
+ * - **addClass** - `{string}` - space-separated CSS classes to add to element
+ * - **from** - `{Object}` - CSS properties & values at the beginning of animation. Must have matching `to`
+ * - **removeClass** - `{string}` - space-separated CSS classes to remove from element
+ * - **to** - `{Object}` - CSS properties & values at end of animation. Must have matching `from`
*
* @return {Promise} the animation callback promise
*/
@@ -5492,7 +5893,13 @@ var $AnimateProvider = ['$provide', function($provide) {
* @param {DOMElement} element the element which the CSS classes will be applied to
* @param {string} add the CSS class(es) that will be added (multiple classes are separated via spaces)
* @param {string} remove the CSS class(es) that will be removed (multiple classes are separated via spaces)
- * @param {object=} options an optional collection of options/styles that will be applied to the element
+ * @param {object=} options an optional collection of options/styles that will be applied to the element.
+ * The object can have the following properties:
+ *
+ * - **addClass** - `{string}` - space-separated CSS classes to add to element
+ * - **from** - `{Object}` - CSS properties & values at the beginning of animation. Must have matching `to`
+ * - **removeClass** - `{string}` - space-separated CSS classes to remove from element
+ * - **to** - `{Object}` - CSS properties & values at end of animation. Must have matching `from`
*
* @return {Promise} the animation callback promise
*/
@@ -5509,18 +5916,37 @@ var $AnimateProvider = ['$provide', function($provide) {
* @kind function
*
* @description Performs an inline animation on the element which applies the provided to and from CSS styles to the element.
- * If any detected CSS transition, keyframe or JavaScript matches the provided className value then the animation will take
- * on the provided styles. For example, if a transition animation is set for the given className then the provided from and
- * to styles will be applied alongside the given transition. If a JavaScript animation is detected then the provided styles
- * will be given in as function paramters into the `animate` method (or as apart of the `options` parameter).
+ * If any detected CSS transition, keyframe or JavaScript matches the provided className value, then the animation will take
+ * on the provided styles. For example, if a transition animation is set for the given className, then the provided `from` and
+ * `to` styles will be applied alongside the given transition. If the CSS style provided in `from` does not have a corresponding
+ * style in `to`, the style in `from` is applied immediately, and no animation is run.
+ * If a JavaScript animation is detected then the provided styles will be given in as function parameters into the `animate`
+ * method (or as part of the `options` parameter):
+ *
+ * ```js
+ * ngModule.animation('.my-inline-animation', function() {
+ * return {
+ * animate : function(element, from, to, done, options) {
+ * //animation
+ * done();
+ * }
+ * }
+ * });
+ * ```
*
* @param {DOMElement} element the element which the CSS styles will be applied to
* @param {object} from the from (starting) CSS styles that will be applied to the element and across the animation.
* @param {object} to the to (destination) CSS styles that will be applied to the element and across the animation.
* @param {string=} className an optional CSS class that will be applied to the element for the duration of the animation. If
* this value is left as empty then a CSS class of `ng-inline-animate` will be applied to the element.
- * (Note that if no animation is detected then this value will not be appplied to the element.)
- * @param {object=} options an optional collection of options/styles that will be applied to the element
+ * (Note that if no animation is detected then this value will not be applied to the element.)
+ * @param {object=} options an optional collection of options/styles that will be applied to the element.
+ * The object can have the following properties:
+ *
+ * - **addClass** - `{string}` - space-separated CSS classes to add to element
+ * - **from** - `{Object}` - CSS properties & values at the beginning of animation. Must have matching `to`
+ * - **removeClass** - `{string}` - space-separated CSS classes to remove from element
+ * - **to** - `{Object}` - CSS properties & values at end of animation. Must have matching `from`
*
* @return {Promise} the animation callback promise
*/
@@ -5537,10 +5963,201 @@ var $AnimateProvider = ['$provide', function($provide) {
}];
}];
+var $$AnimateAsyncRunFactoryProvider = /** @this */ function() {
+ this.$get = ['$$rAF', function($$rAF) {
+ var waitQueue = [];
+
+ function waitForTick(fn) {
+ waitQueue.push(fn);
+ if (waitQueue.length > 1) return;
+ $$rAF(function() {
+ for (var i = 0; i < waitQueue.length; i++) {
+ waitQueue[i]();
+ }
+ waitQueue = [];
+ });
+ }
+
+ return function() {
+ var passed = false;
+ waitForTick(function() {
+ passed = true;
+ });
+ return function(callback) {
+ if (passed) {
+ callback();
+ } else {
+ waitForTick(callback);
+ }
+ };
+ };
+ }];
+};
+
+var $$AnimateRunnerFactoryProvider = /** @this */ function() {
+ this.$get = ['$q', '$sniffer', '$$animateAsyncRun', '$$isDocumentHidden', '$timeout',
+ function($q, $sniffer, $$animateAsyncRun, $$isDocumentHidden, $timeout) {
+
+ var INITIAL_STATE = 0;
+ var DONE_PENDING_STATE = 1;
+ var DONE_COMPLETE_STATE = 2;
+
+ AnimateRunner.chain = function(chain, callback) {
+ var index = 0;
+
+ next();
+ function next() {
+ if (index === chain.length) {
+ callback(true);
+ return;
+ }
+
+ chain[index](function(response) {
+ if (response === false) {
+ callback(false);
+ return;
+ }
+ index++;
+ next();
+ });
+ }
+ };
+
+ AnimateRunner.all = function(runners, callback) {
+ var count = 0;
+ var status = true;
+ forEach(runners, function(runner) {
+ runner.done(onProgress);
+ });
+
+ function onProgress(response) {
+ status = status && response;
+ if (++count === runners.length) {
+ callback(status);
+ }
+ }
+ };
+
+ function AnimateRunner(host) {
+ this.setHost(host);
+
+ var rafTick = $$animateAsyncRun();
+ var timeoutTick = function(fn) {
+ $timeout(fn, 0, false);
+ };
+
+ this._doneCallbacks = [];
+ this._tick = function(fn) {
+ if ($$isDocumentHidden()) {
+ timeoutTick(fn);
+ } else {
+ rafTick(fn);
+ }
+ };
+ this._state = 0;
+ }
+
+ AnimateRunner.prototype = {
+ setHost: function(host) {
+ this.host = host || {};
+ },
+
+ done: function(fn) {
+ if (this._state === DONE_COMPLETE_STATE) {
+ fn();
+ } else {
+ this._doneCallbacks.push(fn);
+ }
+ },
+
+ progress: noop,
+
+ getPromise: function() {
+ if (!this.promise) {
+ var self = this;
+ this.promise = $q(function(resolve, reject) {
+ self.done(function(status) {
+ if (status === false) {
+ reject();
+ } else {
+ resolve();
+ }
+ });
+ });
+ }
+ return this.promise;
+ },
+
+ then: function(resolveHandler, rejectHandler) {
+ return this.getPromise().then(resolveHandler, rejectHandler);
+ },
+
+ 'catch': function(handler) {
+ return this.getPromise()['catch'](handler);
+ },
+
+ 'finally': function(handler) {
+ return this.getPromise()['finally'](handler);
+ },
+
+ pause: function() {
+ if (this.host.pause) {
+ this.host.pause();
+ }
+ },
+
+ resume: function() {
+ if (this.host.resume) {
+ this.host.resume();
+ }
+ },
+
+ end: function() {
+ if (this.host.end) {
+ this.host.end();
+ }
+ this._resolve(true);
+ },
+
+ cancel: function() {
+ if (this.host.cancel) {
+ this.host.cancel();
+ }
+ this._resolve(false);
+ },
+
+ complete: function(response) {
+ var self = this;
+ if (self._state === INITIAL_STATE) {
+ self._state = DONE_PENDING_STATE;
+ self._tick(function() {
+ self._resolve(response);
+ });
+ }
+ },
+
+ _resolve: function(response) {
+ if (this._state !== DONE_COMPLETE_STATE) {
+ forEach(this._doneCallbacks, function(fn) {
+ fn(response);
+ });
+ this._doneCallbacks.length = 0;
+ this._state = DONE_COMPLETE_STATE;
+ }
+ }
+ };
+
+ return AnimateRunner;
+ }];
+};
+
+/* exported $CoreAnimateCssProvider */
+
/**
* @ngdoc service
* @name $animateCss
* @kind object
+ * @this
*
* @description
* This is the core version of `$animateCss`. By default, only when the `ngAnimate` is included,
@@ -5549,37 +6166,18 @@ var $AnimateProvider = ['$provide', function($provide) {
* Click here {@link ngAnimate.$animateCss to read the documentation for $animateCss}.
*/
var $CoreAnimateCssProvider = function() {
- this.$get = ['$$rAF', '$q', function($$rAF, $q) {
+ this.$get = ['$$rAF', '$q', '$$AnimateRunner', function($$rAF, $q, $$AnimateRunner) {
- var RAFPromise = function() {};
- RAFPromise.prototype = {
- done: function(cancel) {
- this.defer && this.defer[cancel === true ? 'reject' : 'resolve']();
- },
- end: function() {
- this.done();
- },
- cancel: function() {
- this.done(true);
- },
- getPromise: function() {
- if (!this.defer) {
- this.defer = $q.defer();
- }
- return this.defer.promise;
- },
- then: function(f1,f2) {
- return this.getPromise().then(f1,f2);
- },
- 'catch': function(f1) {
- return this.getPromise()['catch'](f1);
- },
- 'finally': function(f1) {
- return this.getPromise()['finally'](f1);
+ return function(element, initialOptions) {
+ // all of the animation functions should create
+ // a copy of the options data, however, if a
+ // parent service has already created a copy then
+ // we should stick to using that
+ var options = initialOptions || {};
+ if (!options.$$prepared) {
+ options = copy(options);
}
- };
- return function(element, options) {
// there is no point in applying the styles since
// there is no animation that goes on at all in
// this version of $animateCss.
@@ -5592,7 +6190,7 @@ var $CoreAnimateCssProvider = function() {
options.from = null;
}
- var closed, runner = new RAFPromise();
+ var closed, runner = new $$AnimateRunner();
return {
start: run,
end: run
@@ -5600,16 +6198,16 @@ var $CoreAnimateCssProvider = function() {
function run() {
$$rAF(function() {
- close();
+ applyAnimationContents();
if (!closed) {
- runner.done();
+ runner.complete();
}
closed = true;
});
return runner;
}
- function close() {
+ function applyAnimationContents() {
if (options.addClass) {
element.addClass(options.addClass);
options.addClass = null;
@@ -5652,7 +6250,6 @@ var $CoreAnimateCssProvider = function() {
*/
function Browser(window, document, $log, $sniffer) {
var self = this,
- rawDocument = document[0],
location = window.location,
history = window.history,
setTimeout = window.setTimeout,
@@ -5715,10 +6312,16 @@ function Browser(window, document, $log, $sniffer) {
var cachedState, lastHistoryState,
lastBrowserUrl = location.href,
baseElement = document.find('base'),
- pendingLocation = null;
+ pendingLocation = null,
+ getCurrentState = !$sniffer.history ? noop : function getCurrentState() {
+ try {
+ return history.state;
+ } catch (e) {
+ // MSIE can reportedly throw when there is no state (UNCONFIRMED).
+ }
+ };
cacheState();
- lastHistoryState = cachedState;
/**
* @name $browser#url
@@ -5772,10 +6375,8 @@ function Browser(window, document, $log, $sniffer) {
if ($sniffer.history && (!sameBase || !sameState)) {
history[replace ? 'replaceState' : 'pushState'](state, '', url);
cacheState();
- // Do the assignment again so that those two variables are referentially identical.
- lastHistoryState = cachedState;
} else {
- if (!sameBase || pendingLocation) {
+ if (!sameBase) {
pendingLocation = url;
}
if (replace) {
@@ -5789,6 +6390,9 @@ function Browser(window, document, $log, $sniffer) {
pendingLocation = url;
}
}
+ if (pendingLocation) {
+ pendingLocation = url;
+ }
return self;
// getter
} else {
@@ -5796,7 +6400,7 @@ function Browser(window, document, $log, $sniffer) {
// the new location.href if a reload happened or if there is a bug like in iOS 9 (see
// https://openradar.appspot.com/22186109).
// - the replacement is a workaround for https://bugzilla.mozilla.org/show_bug.cgi?id=407172
- return pendingLocation || location.href.replace(/%27/g,"'");
+ return pendingLocation || location.href.replace(/%27/g,'\'');
}
};
@@ -5819,16 +6423,7 @@ function Browser(window, document, $log, $sniffer) {
function cacheStateAndFireUrlChange() {
pendingLocation = null;
- cacheState();
- fireUrlChange();
- }
-
- function getCurrentState() {
- try {
- return history.state;
- } catch (e) {
- // MSIE can reportedly throw when there is no state (UNCONFIRMED).
- }
+ fireStateOrUrlChange();
}
// This variable should be used *only* inside the cacheState function.
@@ -5842,11 +6437,16 @@ function Browser(window, document, $log, $sniffer) {
if (equals(cachedState, lastCachedState)) {
cachedState = lastCachedState;
}
+
lastCachedState = cachedState;
+ lastHistoryState = cachedState;
}
- function fireUrlChange() {
- if (lastBrowserUrl === self.url() && lastHistoryState === cachedState) {
+ function fireStateOrUrlChange() {
+ var prevLastHistoryState = lastHistoryState;
+ cacheState();
+
+ if (lastBrowserUrl === self.url() && prevLastHistoryState === cachedState) {
return;
}
@@ -5881,8 +6481,8 @@ function Browser(window, document, $log, $sniffer) {
self.onUrlChange = function(callback) {
// TODO(vojta): refactor to use node's syntax for events
if (!urlChangeInit) {
- // We listen on both (hashchange/popstate) when available, as some browsers (e.g. Opera)
- // don't fire popstate when user change the address bar and don't fire hashchange when url
+ // We listen on both (hashchange/popstate) when available, as some browsers don't
+ // fire popstate when user changes the address bar and don't fire hashchange when url
// changed by push/replaceState
// html5 history api - popstate event
@@ -5912,7 +6512,7 @@ function Browser(window, document, $log, $sniffer) {
* Needs to be exported to be able to check for changes that have been done in sync,
* as hashchange/popstate events fire in async.
*/
- self.$$checkUrlChange = fireUrlChange;
+ self.$$checkUrlChange = fireStateOrUrlChange;
//////////////////////////////////////////////////////////////
// Misc API
@@ -5929,7 +6529,7 @@ function Browser(window, document, $log, $sniffer) {
*/
self.baseHref = function() {
var href = baseElement.attr('href');
- return href ? href.replace(/^(https?\:)?\/\/[^\/]*/, '') : '';
+ return href ? href.replace(/^(https?:)?\/\/[^/]*/, '') : '';
};
/**
@@ -5980,6 +6580,7 @@ function Browser(window, document, $log, $sniffer) {
}
+/** @this */
function $BrowserProvider() {
this.$get = ['$window', '$log', '$sniffer', '$document',
function($window, $log, $sniffer, $document) {
@@ -5990,6 +6591,7 @@ function $BrowserProvider() {
/**
* @ngdoc service
* @name $cacheFactory
+ * @this
*
* @description
* Factory that constructs {@link $cacheFactory.Cache Cache} objects and gives access to
@@ -6026,7 +6628,7 @@ function $BrowserProvider() {
* - `{void}` `destroy()` — Removes references to this cache from $cacheFactory.
*
* @example
- <example module="cacheExampleApp">
+ <example module="cacheExampleApp" name="cache-factory">
<file name="index.html">
<div ng-controller="CacheController">
<input ng-model="newCacheKey" placeholder="Key">
@@ -6075,7 +6677,7 @@ function $CacheFactoryProvider() {
function cacheFactory(cacheId, options) {
if (cacheId in caches) {
- throw minErr('$cacheFactory')('iid', "CacheId '{0}' is already taken!", cacheId);
+ throw minErr('$cacheFactory')('iid', 'CacheId \'{0}\' is already taken!', cacheId);
}
var size = 0,
@@ -6125,7 +6727,7 @@ function $CacheFactoryProvider() {
* }));
* ```
*/
- return caches[cacheId] = {
+ return (caches[cacheId] = {
/**
* @ngdoc method
@@ -6203,8 +6805,8 @@ function $CacheFactoryProvider() {
if (!lruEntry) return;
- if (lruEntry == freshEnd) freshEnd = lruEntry.p;
- if (lruEntry == staleEnd) staleEnd = lruEntry.n;
+ if (lruEntry === freshEnd) freshEnd = lruEntry.p;
+ if (lruEntry === staleEnd) staleEnd = lruEntry.n;
link(lruEntry.n,lruEntry.p);
delete lruHash[key];
@@ -6269,17 +6871,17 @@ function $CacheFactoryProvider() {
info: function() {
return extend({}, stats, {size: size});
}
- };
+ });
/**
* makes the `entry` the freshEnd of the LRU linked list
*/
function refresh(entry) {
- if (entry != freshEnd) {
+ if (entry !== freshEnd) {
if (!staleEnd) {
staleEnd = entry;
- } else if (staleEnd == entry) {
+ } else if (staleEnd === entry) {
staleEnd = entry.n;
}
@@ -6295,7 +6897,7 @@ function $CacheFactoryProvider() {
* bidirectionally links two entries of the LRU linked list
*/
function link(nextEntry, prevEntry) {
- if (nextEntry != prevEntry) {
+ if (nextEntry !== prevEntry) {
if (nextEntry) nextEntry.p = prevEntry; //p stands for previous, 'prev' didn't minify
if (prevEntry) prevEntry.n = nextEntry; //n stands for next, 'next' didn't minify
}
@@ -6343,6 +6945,7 @@ function $CacheFactoryProvider() {
/**
* @ngdoc service
* @name $templateCache
+ * @this
*
* @description
* The first time a template is used, it is loaded in the template cache for quick retrieval. You
@@ -6370,12 +6973,14 @@ function $CacheFactoryProvider() {
* });
* ```
*
- * To retrieve the template later, simply use it in your HTML:
- * ```html
- * <div ng-include=" 'templateId.html' "></div>
+ * To retrieve the template later, simply use it in your component:
+ * ```js
+ * myApp.component('myComponent', {
+ * templateUrl: 'templateId.html'
+ * });
* ```
*
- * or get it via Javascript:
+ * or get it via the `$templateCache` service:
* ```js
* $templateCache.get('templateId.html')
* ```
@@ -6397,7 +7002,7 @@ function $TemplateCacheProvider() {
* *
* Does the change somehow allow for arbitrary javascript to be executed? *
* Or allows for someone to change the prototype of built-in objects? *
- * Or gives undesired access to variables likes document or window? *
+ * Or gives undesired access to variables like document or window? *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/* ! VARIABLE/FUNCTION NAMING CONVENTIONS THAT APPLY TO THIS FILE!
@@ -6441,8 +7046,9 @@ function $TemplateCacheProvider() {
* There are many different options for a directive.
*
* The difference resides in the return value of the factory function.
- * You can either return a "Directive Definition Object" (see below) that defines the directive properties,
- * or just the `postLink` function (all other properties will have the default values).
+ * You can either return a {@link $compile#directive-definition-object Directive Definition Object (see below)}
+ * that defines the directive properties, or just the `postLink` function (all other properties will have
+ * the default values).
*
* <div class="alert alert-success">
* **Best Practice:** It's recommended to use the "directive definition object" form.
@@ -6455,33 +7061,34 @@ function $TemplateCacheProvider() {
*
* myModule.directive('directiveName', function factory(injectables) {
* var directiveDefinitionObject = {
- * priority: 0,
- * template: '<div></div>', // or // function(tElement, tAttrs) { ... },
+ * {@link $compile#-priority- priority}: 0,
+ * {@link $compile#-template- template}: '<div></div>', // or // function(tElement, tAttrs) { ... },
* // or
- * // templateUrl: 'directive.html', // or // function(tElement, tAttrs) { ... },
- * transclude: false,
- * restrict: 'A',
- * templateNamespace: 'html',
- * scope: false,
- * controller: function($scope, $element, $attrs, $transclude, otherInjectables) { ... },
- * controllerAs: 'stringIdentifier',
- * bindToController: false,
- * require: 'siblingDirectiveName', // or // ['^parentDirectiveName', '?optionalDirectiveName', '?^optionalParent'],
- * compile: function compile(tElement, tAttrs, transclude) {
+ * // {@link $compile#-templateurl- templateUrl}: 'directive.html', // or // function(tElement, tAttrs) { ... },
+ * {@link $compile#-transclude- transclude}: false,
+ * {@link $compile#-restrict- restrict}: 'A',
+ * {@link $compile#-templatenamespace- templateNamespace}: 'html',
+ * {@link $compile#-scope- scope}: false,
+ * {@link $compile#-controller- controller}: function($scope, $element, $attrs, $transclude, otherInjectables) { ... },
+ * {@link $compile#-controlleras- controllerAs}: 'stringIdentifier',
+ * {@link $compile#-bindtocontroller- bindToController}: false,
+ * {@link $compile#-require- require}: 'siblingDirectiveName', // or // ['^parentDirectiveName', '?optionalDirectiveName', '?^optionalParent'],
+ * {@link $compile#-multielement- multiElement}: false,
+ * {@link $compile#-compile- compile}: function compile(tElement, tAttrs, transclude) {
* return {
- * pre: function preLink(scope, iElement, iAttrs, controller) { ... },
- * post: function postLink(scope, iElement, iAttrs, controller) { ... }
+ * {@link $compile#pre-linking-function pre}: function preLink(scope, iElement, iAttrs, controller) { ... },
+ * {@link $compile#post-linking-function post}: function postLink(scope, iElement, iAttrs, controller) { ... }
* }
* // or
* // return function postLink( ... ) { ... }
* },
* // or
- * // link: {
- * // pre: function preLink(scope, iElement, iAttrs, controller) { ... },
- * // post: function postLink(scope, iElement, iAttrs, controller) { ... }
+ * // {@link $compile#-link- link}: {
+ * // {@link $compile#pre-linking-function pre}: function preLink(scope, iElement, iAttrs, controller) { ... },
+ * // {@link $compile#post-linking-function post}: function postLink(scope, iElement, iAttrs, controller) { ... }
* // }
* // or
- * // link: function postLink( ... ) { ... }
+ * // {@link $compile#-link- link}: function postLink( ... ) { ... }
* };
* return directiveDefinitionObject;
* });
@@ -6506,6 +7113,126 @@ function $TemplateCacheProvider() {
* });
* ```
*
+ * ### Life-cycle hooks
+ * Directive controllers can provide the following methods that are called by Angular at points in the life-cycle of the
+ * directive:
+ * * `$onInit()` - Called on each controller after all the controllers on an element have been constructed and
+ * had their bindings initialized (and before the pre &amp; post linking functions for the directives on
+ * this element). This is a good place to put initialization code for your controller.
+ * * `$onChanges(changesObj)` - Called whenever one-way (`<`) or interpolation (`@`) bindings are updated. The
+ * `changesObj` is a hash whose keys are the names of the bound properties that have changed, and the values are an
+ * object of the form `{ currentValue, previousValue, isFirstChange() }`. Use this hook to trigger updates within a
+ * component such as cloning the bound value to prevent accidental mutation of the outer value. Note that this will
+ * also be called when your bindings are initialized.
+ * * `$doCheck()` - Called on each turn of the digest cycle. Provides an opportunity to detect and act on
+ * changes. Any actions that you wish to take in response to the changes that you detect must be
+ * invoked from this hook; implementing this has no effect on when `$onChanges` is called. For example, this hook
+ * could be useful if you wish to perform a deep equality check, or to check a Date object, changes to which would not
+ * be detected by Angular's change detector and thus not trigger `$onChanges`. This hook is invoked with no arguments;
+ * if detecting changes, you must store the previous value(s) for comparison to the current values.
+ * * `$onDestroy()` - Called on a controller when its containing scope is destroyed. Use this hook for releasing
+ * external resources, watches and event handlers. Note that components have their `$onDestroy()` hooks called in
+ * the same order as the `$scope.$broadcast` events are triggered, which is top down. This means that parent
+ * components will have their `$onDestroy()` hook called before child components.
+ * * `$postLink()` - Called after this controller's element and its children have been linked. Similar to the post-link
+ * function this hook can be used to set up DOM event handlers and do direct DOM manipulation.
+ * Note that child elements that contain `templateUrl` directives will not have been compiled and linked since
+ * they are waiting for their template to load asynchronously and their own compilation and linking has been
+ * suspended until that occurs.
+ *
+ * #### Comparison with Angular 2 life-cycle hooks
+ * Angular 2 also uses life-cycle hooks for its components. While the Angular 1 life-cycle hooks are similar there are
+ * some differences that you should be aware of, especially when it comes to moving your code from Angular 1 to Angular 2:
+ *
+ * * Angular 1 hooks are prefixed with `$`, such as `$onInit`. Angular 2 hooks are prefixed with `ng`, such as `ngOnInit`.
+ * * Angular 1 hooks can be defined on the controller prototype or added to the controller inside its constructor.
+ * In Angular 2 you can only define hooks on the prototype of the Component class.
+ * * Due to the differences in change-detection, you may get many more calls to `$doCheck` in Angular 1 than you would to
+ * `ngDoCheck` in Angular 2
+ * * Changes to the model inside `$doCheck` will trigger new turns of the digest loop, which will cause the changes to be
+ * propagated throughout the application.
+ * Angular 2 does not allow the `ngDoCheck` hook to trigger a change outside of the component. It will either throw an
+ * error or do nothing depending upon the state of `enableProdMode()`.
+ *
+ * #### Life-cycle hook examples
+ *
+ * This example shows how you can check for mutations to a Date object even though the identity of the object
+ * has not changed.
+ *
+ * <example name="doCheckDateExample" module="do-check-module">
+ * <file name="app.js">
+ * angular.module('do-check-module', [])
+ * .component('app', {
+ * template:
+ * 'Month: <input ng-model="$ctrl.month" ng-change="$ctrl.updateDate()">' +
+ * 'Date: {{ $ctrl.date }}' +
+ * '<test date="$ctrl.date"></test>',
+ * controller: function() {
+ * this.date = new Date();
+ * this.month = this.date.getMonth();
+ * this.updateDate = function() {
+ * this.date.setMonth(this.month);
+ * };
+ * }
+ * })
+ * .component('test', {
+ * bindings: { date: '<' },
+ * template:
+ * '<pre>{{ $ctrl.log | json }}</pre>',
+ * controller: function() {
+ * var previousValue;
+ * this.log = [];
+ * this.$doCheck = function() {
+ * var currentValue = this.date && this.date.valueOf();
+ * if (previousValue !== currentValue) {
+ * this.log.push('doCheck: date mutated: ' + this.date);
+ * previousValue = currentValue;
+ * }
+ * };
+ * }
+ * });
+ * </file>
+ * <file name="index.html">
+ * <app></app>
+ * </file>
+ * </example>
+ *
+ * This example show how you might use `$doCheck` to trigger changes in your component's inputs even if the
+ * actual identity of the component doesn't change. (Be aware that cloning and deep equality checks on large
+ * arrays or objects can have a negative impact on your application performance)
+ *
+ * <example name="doCheckArrayExample" module="do-check-module">
+ * <file name="index.html">
+ * <div ng-init="items = []">
+ * <button ng-click="items.push(items.length)">Add Item</button>
+ * <button ng-click="items = []">Reset Items</button>
+ * <pre>{{ items }}</pre>
+ * <test items="items"></test>
+ * </div>
+ * </file>
+ * <file name="app.js">
+ * angular.module('do-check-module', [])
+ * .component('test', {
+ * bindings: { items: '<' },
+ * template:
+ * '<pre>{{ $ctrl.log | json }}</pre>',
+ * controller: function() {
+ * this.log = [];
+ *
+ * this.$doCheck = function() {
+ * if (this.items_ref !== this.items) {
+ * this.log.push('doCheck: items changed');
+ * this.items_ref = this.items;
+ * }
+ * if (!angular.equals(this.items_clone, this.items)) {
+ * this.log.push('doCheck: items mutated');
+ * this.items_clone = angular.copy(this.items);
+ * }
+ * };
+ * }
+ * });
+ * </file>
+ * </example>
*
*
* ### Directive Definition Object
@@ -6514,10 +7241,10 @@ function $TemplateCacheProvider() {
* compiler}. The attributes are:
*
* #### `multiElement`
- * When this property is set to true, the HTML compiler will collect DOM nodes between
+ * When this property is set to true (default is `false`), the HTML compiler will collect DOM nodes between
* nodes with the attributes `directive-name-start` and `directive-name-end`, and group them
* together as the directive elements. It is recommended that this feature be used on directives
- * which are not strictly behavioural (such as {@link ngClick}), and which
+ * which are not strictly behavioral (such as {@link ngClick}), and which
* do not manipulate or replace child nodes (such as {@link ngInclude}).
*
* #### `priority`
@@ -6535,19 +7262,21 @@ function $TemplateCacheProvider() {
* and other directives used in the directive's template will also be excluded from execution.
*
* #### `scope`
- * The scope property can be `true`, an object or a falsy value:
+ * The scope property can be `false`, `true`, or an object:
*
- * * **falsy:** No scope will be created for the directive. The directive will use its parent's scope.
+ * * **`false` (default):** No scope will be created for the directive. The directive will use its
+ * parent's scope.
*
* * **`true`:** A new child scope that prototypically inherits from its parent will be created for
* the directive's element. If multiple directives on the same element request a new scope,
- * only one new scope is created. The new scope rule does not apply for the root of the template
- * since the root of the template always gets a new scope.
+ * only one new scope is created.
*
- * * **`{...}` (an object hash):** A new "isolate" scope is created for the directive's element. The
- * 'isolate' scope differs from normal scope in that it does not prototypically inherit from its parent
- * scope. This is useful when creating reusable components, which should not accidentally read or modify
- * data in the parent scope.
+ * * **`{...}` (an object hash):** A new "isolate" scope is created for the directive's template.
+ * The 'isolate' scope differs from normal scope in that it does not prototypically
+ * inherit from its parent scope. This is useful when creating reusable components, which should not
+ * accidentally read or modify data in the parent scope. Note that an isolate scope
+ * directive without a `template` or `templateUrl` will not apply the isolate scope
+ * to its children elements.
*
* The 'isolate' scope object hash defines a set of local scope properties derived from attributes on the
* directive's element. These local properties are useful for aliasing values for templates. The keys in
@@ -6555,35 +7284,62 @@ function $TemplateCacheProvider() {
* is bound to the parent scope, via matching attributes on the directive's element:
*
* * `@` or `@attr` - bind a local scope property to the value of DOM attribute. The result is
- * always a string since DOM attributes are strings. If no `attr` name is specified then the
- * attribute name is assumed to be the same as the local name.
- * Given `<widget my-attr="hello {{name}}">` and widget definition
- * of `scope: { localName:'@myAttr' }`, then widget scope property `localName` will reflect
- * the interpolated value of `hello {{name}}`. As the `name` attribute changes so will the
- * `localName` property on the widget scope. The `name` is read from the parent scope (not
- * component scope).
- *
- * * `=` or `=attr` - set up bi-directional binding between a local scope property and the
- * parent scope property of name defined via the value of the `attr` attribute. If no `attr`
- * name is specified then the attribute name is assumed to be the same as the local name.
- * Given `<widget my-attr="parentModel">` and widget definition of
- * `scope: { localModel:'=myAttr' }`, then widget scope property `localModel` will reflect the
+ * always a string since DOM attributes are strings. If no `attr` name is specified then the
+ * attribute name is assumed to be the same as the local name. Given `<my-component
+ * my-attr="hello {{name}}">` and the isolate scope definition `scope: { localName:'@myAttr' }`,
+ * the directive's scope property `localName` will reflect the interpolated value of `hello
+ * {{name}}`. As the `name` attribute changes so will the `localName` property on the directive's
+ * scope. The `name` is read from the parent scope (not the directive's scope).
+ *
+ * * `=` or `=attr` - set up a bidirectional binding between a local scope property and an expression
+ * passed via the attribute `attr`. The expression is evaluated in the context of the parent scope.
+ * If no `attr` name is specified then the attribute name is assumed to be the same as the local
+ * name. Given `<my-component my-attr="parentModel">` and the isolate scope definition `scope: {
+ * localModel: '=myAttr' }`, the property `localModel` on the directive's scope will reflect the
+ * value of `parentModel` on the parent scope. Changes to `parentModel` will be reflected in
+ * `localModel` and vice versa. Optional attributes should be marked as such with a question mark:
+ * `=?` or `=?attr`. If the binding expression is non-assignable, or if the attribute isn't
+ * optional and doesn't exist, an exception ({@link error/$compile/nonassign `$compile:nonassign`})
+ * will be thrown upon discovering changes to the local value, since it will be impossible to sync
+ * them back to the parent scope. By default, the {@link ng.$rootScope.Scope#$watch `$watch`}
+ * method is used for tracking changes, and the equality check is based on object identity.
+ * However, if an object literal or an array literal is passed as the binding expression, the
+ * equality check is done by value (using the {@link angular.equals} function). It's also possible
+ * to watch the evaluated value shallowly with {@link ng.$rootScope.Scope#$watchCollection
+ * `$watchCollection`}: use `=*` or `=*attr` (`=*?` or `=*?attr` if the attribute is optional).
+ *
+ * * `<` or `<attr` - set up a one-way (one-directional) binding between a local scope property and an
+ * expression passed via the attribute `attr`. The expression is evaluated in the context of the
+ * parent scope. If no `attr` name is specified then the attribute name is assumed to be the same as the
+ * local name. You can also make the binding optional by adding `?`: `<?` or `<?attr`.
+ *
+ * For example, given `<my-component my-attr="parentModel">` and directive definition of
+ * `scope: { localModel:'<myAttr' }`, then the isolated scope property `localModel` will reflect the
* value of `parentModel` on the parent scope. Any changes to `parentModel` will be reflected
- * in `localModel` and any changes in `localModel` will reflect in `parentModel`. If the parent
- * scope property doesn't exist, it will throw a NON_ASSIGNABLE_MODEL_EXPRESSION exception. You
- * can avoid this behavior using `=?` or `=?attr` in order to flag the property as optional. If
- * you want to shallow watch for changes (i.e. $watchCollection instead of $watch) you can use
- * `=*` or `=*attr` (`=*?` or `=*?attr` if the property is optional).
- *
- * * `&` or `&attr` - provides a way to execute an expression in the context of the parent scope.
- * If no `attr` name is specified then the attribute name is assumed to be the same as the
- * local name. Given `<widget my-attr="count = count + value">` and widget definition of
- * `scope: { localFn:'&myAttr' }`, then isolate scope property `localFn` will point to
- * a function wrapper for the `count = count + value` expression. Often it's desirable to
- * pass data from the isolated scope via an expression to the parent scope, this can be
- * done by passing a map of local variable names and values into the expression wrapper fn.
- * For example, if the expression is `increment(amount)` then we can specify the amount value
- * by calling the `localFn` as `localFn({amount: 22})`.
+ * in `localModel`, but changes in `localModel` will not reflect in `parentModel`. There are however
+ * two caveats:
+ * 1. one-way binding does not copy the value from the parent to the isolate scope, it simply
+ * sets the same value. That means if your bound value is an object, changes to its properties
+ * in the isolated scope will be reflected in the parent scope (because both reference the same object).
+ * 2. one-way binding watches changes to the **identity** of the parent value. That means the
+ * {@link ng.$rootScope.Scope#$watch `$watch`} on the parent value only fires if the reference
+ * to the value has changed. In most cases, this should not be of concern, but can be important
+ * to know if you one-way bind to an object, and then replace that object in the isolated scope.
+ * If you now change a property of the object in your parent scope, the change will not be
+ * propagated to the isolated scope, because the identity of the object on the parent scope
+ * has not changed. Instead you must assign a new object.
+ *
+ * One-way binding is useful if you do not plan to propagate changes to your isolated scope bindings
+ * back to the parent. However, it does not make this completely impossible.
+ *
+ * * `&` or `&attr` - provides a way to execute an expression in the context of the parent scope. If
+ * no `attr` name is specified then the attribute name is assumed to be the same as the local name.
+ * Given `<my-component my-attr="count = count + value">` and the isolate scope definition `scope: {
+ * localFn:'&myAttr' }`, the isolate scope property `localFn` will point to a function wrapper for
+ * the `count = count + value` expression. Often it's desirable to pass data from the isolated scope
+ * via an expression to the parent scope. This can be done by passing a map of local variable names
+ * and values into the expression wrapper fn. For example, if the expression is `increment(amount)`
+ * then we can specify the amount value by calling the `localFn` as `localFn({amount: 22})`.
*
* In general it's possible to apply more than one directive to one element, but there might be limitations
* depending on the type of scope required by the directives. The following points will help explain these limitations.
@@ -6601,9 +7357,30 @@ function $TemplateCacheProvider() {
*
*
* #### `bindToController`
- * When an isolate scope is used for a component (see above), and `controllerAs` is used, `bindToController: true` will
- * allow a component to have its properties bound to the controller, rather than to scope. When the controller
- * is instantiated, the initial values of the isolate scope bindings are already available.
+ * This property is used to bind scope properties directly to the controller. It can be either
+ * `true` or an object hash with the same format as the `scope` property.
+ *
+ * When an isolate scope is used for a directive (see above), `bindToController: true` will
+ * allow a component to have its properties bound to the controller, rather than to scope.
+ *
+ * After the controller is instantiated, the initial values of the isolate scope bindings will be bound to the controller
+ * properties. You can access these bindings once they have been initialized by providing a controller method called
+ * `$onInit`, which is called after all the controllers on an element have been constructed and had their bindings
+ * initialized.
+ *
+ * <div class="alert alert-warning">
+ * **Deprecation warning:** although bindings for non-ES6 class controllers are currently
+ * bound to `this` before the controller constructor is called, this use is now deprecated. Please place initialization
+ * code that relies upon bindings inside a `$onInit` method on the controller, instead.
+ * </div>
+ *
+ * It is also possible to set `bindToController` to an object hash with the same format as the `scope` property.
+ * This will set up the scope bindings to the controller directly. Note that `scope` can still be used
+ * to define which kind of scope is created. By default, no scope is created. Use `scope: {}` to create an isolate
+ * scope (useful for component directives).
+ *
+ * If both `bindToController` and `scope` are defined and have object hashes, `bindToController` overrides `scope`.
+ *
*
* #### `controller`
* Controller constructor function. The controller is instantiated before the
@@ -6615,25 +7392,41 @@ function $TemplateCacheProvider() {
* * `$element` - Current element
* * `$attrs` - Current attributes object for the element
* * `$transclude` - A transclude linking function pre-bound to the correct transclusion scope:
- * `function([scope], cloneLinkingFn, futureParentElement)`.
- * * `scope`: optional argument to override the scope.
- * * `cloneLinkingFn`: optional argument to create clones of the original transcluded content.
- * * `futureParentElement`:
+ * `function([scope], cloneLinkingFn, futureParentElement, slotName)`:
+ * * `scope`: (optional) override the scope.
+ * * `cloneLinkingFn`: (optional) argument to create clones of the original transcluded content.
+ * * `futureParentElement` (optional):
* * defines the parent to which the `cloneLinkingFn` will add the cloned elements.
* * default: `$element.parent()` resp. `$element` for `transclude:'element'` resp. `transclude:true`.
* * only needed for transcludes that are allowed to contain non html elements (e.g. SVG elements)
- * and when the `cloneLinkinFn` is passed,
+ * and when the `cloneLinkingFn` is passed,
* as those elements need to created and cloned in a special way when they are defined outside their
* usual containers (e.g. like `<svg>`).
* * See also the `directive.templateNamespace` property.
- *
+ * * `slotName`: (optional) the name of the slot to transclude. If falsy (e.g. `null`, `undefined` or `''`)
+ * then the default transclusion is provided.
+ * The `$transclude` function also has a method on it, `$transclude.isSlotFilled(slotName)`, which returns
+ * `true` if the specified slot contains content (i.e. one or more DOM nodes).
*
* #### `require`
* Require another directive and inject its controller as the fourth argument to the linking function. The
- * `require` takes a string name (or array of strings) of the directive(s) to pass in. If an array is used, the
- * injected argument will be an array in corresponding order. If no such directive can be
- * found, or if the directive does not have a controller, then an error is raised (unless no link function
- * is specified, in which case error checking is skipped). The name can be prefixed with:
+ * `require` property can be a string, an array or an object:
+ * * a **string** containing the name of the directive to pass to the linking function
+ * * an **array** containing the names of directives to pass to the linking function. The argument passed to the
+ * linking function will be an array of controllers in the same order as the names in the `require` property
+ * * an **object** whose property values are the names of the directives to pass to the linking function. The argument
+ * passed to the linking function will also be an object with matching keys, whose values will hold the corresponding
+ * controllers.
+ *
+ * If the `require` property is an object and `bindToController` is truthy, then the required controllers are
+ * bound to the controller using the keys of the `require` property. This binding occurs after all the controllers
+ * have been constructed but before `$onInit` is called.
+ * If the name of the required controller is the same as the local name (the key), the name can be
+ * omitted. For example, `{parentDir: '^^'}` is equivalent to `{parentDir: '^^parentDir'}`.
+ * See the {@link $compileProvider#component} helper for an example of how this can be used.
+ * If no such required directive(s) can be found, or if the directive does not have a controller, then an error is
+ * raised (unless no link function is specified and the required controllers are not being bound to the directive
+ * controller, in which case error checking is skipped). The name can be prefixed with:
*
* * (no prefix) - Locate the required controller on the current element. Throw an error if not found.
* * `?` - Attempt to locate the required controller or pass `null` to the `link` fn if not found.
@@ -6726,14 +7519,6 @@ function $TemplateCacheProvider() {
* The contents are compiled and provided to the directive as a **transclusion function**. See the
* {@link $compile#transclusion Transclusion} section below.
*
- * There are two kinds of transclusion depending upon whether you want to transclude just the contents of the
- * directive's element or the entire element:
- *
- * * `true` - transclude the content (i.e. the child nodes) of the directive's element.
- * * `'element'` - transclude the whole of the directive's element including any directives on this
- * element that defined at a lower priority than this directive. When used, the `template`
- * property is ignored.
- *
*
* #### `compile`
*
@@ -6761,7 +7546,7 @@ function $TemplateCacheProvider() {
* <div class="alert alert-warning">
* **Note:** The compile function cannot handle directives that recursively use themselves in their
- * own templates or compile functions. Compiling these directives results in an infinite loop and a
+ * own templates or compile functions. Compiling these directives results in an infinite loop and
* stack overflow errors.
*
* This can be avoided by manually using $compile in the postLink function to imperatively compile
@@ -6820,8 +7605,8 @@ function $TemplateCacheProvider() {
* any other controller.
*
* * `transcludeFn` - A transclude linking function pre-bound to the correct transclusion scope.
- * This is the same as the `$transclude`
- * parameter of directive controllers, see there for details.
+ * This is the same as the `$transclude` parameter of directive controllers,
+ * see {@link ng.$compile#-controller- the controller section for details}.
* `function([scope], cloneLinkingFn, futureParentElement)`.
*
* #### Pre-linking function
@@ -6863,6 +7648,34 @@ function $TemplateCacheProvider() {
* Testing Transclusion Directives}.
* </div>
*
+ * There are three kinds of transclusion depending upon whether you want to transclude just the contents of the
+ * directive's element, the entire element or multiple parts of the element contents:
+ *
+ * * `true` - transclude the content (i.e. the child nodes) of the directive's element.
+ * * `'element'` - transclude the whole of the directive's element including any directives on this
+ * element that defined at a lower priority than this directive. When used, the `template`
+ * property is ignored.
+ * * **`{...}` (an object hash):** - map elements of the content onto transclusion "slots" in the template.
+ *
+ * **Mult-slot transclusion** is declared by providing an object for the `transclude` property.
+ *
+ * This object is a map where the keys are the name of the slot to fill and the value is an element selector
+ * used to match the HTML to the slot. The element selector should be in normalized form (e.g. `myElement`)
+ * and will match the standard element variants (e.g. `my-element`, `my:element`, `data-my-element`, etc).
+ *
+ * For further information check out the guide on {@link guide/directive#matching-directives Matching Directives}
+ *
+ * If the element selector is prefixed with a `?` then that slot is optional.
+ *
+ * For example, the transclude object `{ slotA: '?myCustomElement' }` maps `<my-custom-element>` elements to
+ * the `slotA` slot, which can be accessed via the `$transclude` function or via the {@link ngTransclude} directive.
+ *
+ * Slots that are not marked as optional (`?`) will trigger a compile time error if there are no matching elements
+ * in the transclude content. If you wish to know if an optional slot was filled with content, then you can call
+ * `$transclude.isSlotFilled(slotName)` on the transclude function passed to the directive's link function and
+ * injectable into the directive's controller.
+ *
+ *
* #### Transclusion Functions
*
* When a directive requests transclusion, the compiler extracts its contents and provides a **transclusion
@@ -6880,10 +7693,10 @@ function $TemplateCacheProvider() {
*
* When you call a transclusion function you can pass in a **clone attach function**. This function accepts
* two parameters, `function(clone, scope) { ... }`, where the `clone` is a fresh compiled copy of your transcluded
- * content and the `scope` is the newly created transclusion scope, to which the clone is bound.
+ * content and the `scope` is the newly created transclusion scope, which the clone will be linked to.
*
* <div class="alert alert-info">
- * **Best Practice**: Always provide a `cloneFn` (clone attach function) when you call a translude function
+ * **Best Practice**: Always provide a `cloneFn` (clone attach function) when you call a transclude function
* since you then get a fresh clone of the original DOM and also have access to the new transclusion scope.
* </div>
*
@@ -6915,7 +7728,7 @@ function $TemplateCacheProvider() {
* </div>
*
* The built-in DOM manipulation directives, such as {@link ngIf}, {@link ngSwitch} and {@link ngRepeat}
- * automatically destroy their transluded clones as necessary so you do not need to worry about this if
+ * automatically destroy their transcluded clones as necessary so you do not need to worry about this if
* you are simply using {@link ngTransclude} to inject the transclusion into your directive.
*
*
@@ -6940,19 +7753,19 @@ function $TemplateCacheProvider() {
*
* The `$parent` scope hierarchy will look like this:
*
- * ```
- * - $rootScope
- * - isolate
- * - transclusion
- * ```
+ ```
+ - $rootScope
+ - isolate
+ - transclusion
+ ```
*
* but the scopes will inherit prototypically from different scopes to their `$parent`.
*
- * ```
- * - $rootScope
- * - transclusion
- * - isolate
- * ```
+ ```
+ - $rootScope
+ - transclusion
+ - isolate
+ ```
*
*
* ### Attributes
@@ -6960,10 +7773,9 @@ function $TemplateCacheProvider() {
* The {@link ng.$compile.directive.Attributes Attributes} object - passed as a parameter in the
* `link()` or `compile()` functions. It has a variety of uses.
*
- * accessing *Normalized attribute names:*
- * Directives like 'ngBind' can be expressed in many ways: 'ng:bind', `data-ng-bind`, or 'x-ng-bind'.
- * the attributes object allows for normalized access to
- * the attributes.
+ * * *Accessing normalized attribute names:* Directives like 'ngBind' can be expressed in many ways:
+ * 'ng:bind', `data-ng-bind`, or 'x-ng-bind'. The attributes object allows for normalized access
+ * to the attributes.
*
* * *Directive inter-communication:* All directives share the same instance of the attributes
* object which allows the directives to use the attributes object as inter directive
@@ -6999,7 +7811,7 @@ function $TemplateCacheProvider() {
* to illustrate how `$compile` works.
* </div>
*
- <example module="compileExample">
+ <example module="compileExample" name="compile">
<file name="index.html">
<script>
angular.module('compileExample', [], function($compileProvider) {
@@ -7084,8 +7896,15 @@ function $TemplateCacheProvider() {
* directives; if given, it will be passed through to the link functions of
* directives found in `element` during compilation.
* * `transcludeControllers` - an object hash with keys that map controller names
- * to controller instances; if given, it will make the controllers
- * available to directives.
+ * to a hash with the key `instance`, which maps to the controller instance;
+ * if given, it will make the controllers available to directives on the compileNode:
+ * ```
+ * {
+ * parent: {
+ * instance: parentControllerInstance
+ * }
+ * }
+ * ```
* * `futureParentElement` - defines the parent to which the `cloneAttachFn` will add
* the cloned elements; only needed for transcludes that are allowed to contain non html
* elements (e.g. SVG elements). See also the directive.controller property.
@@ -7121,10 +7940,23 @@ function $TemplateCacheProvider() {
*
* For information on how the compiler works, see the
* {@link guide/compiler Angular HTML Compiler} section of the Developer Guide.
+ *
+ * @knownIssue
+ *
+ * ### Double Compilation
+ *
+ Double compilation occurs when an already compiled part of the DOM gets
+ compiled again. This is an undesired effect and can lead to misbehaving directives, performance issues,
+ and memory leaks. Refer to the Compiler Guide {@link guide/compiler#double-compilation-and-how-to-avoid-it
+ section on double compilation} for an in-depth explanation and ways to avoid it.
+ *
*/
var $compileMinErr = minErr('$compile');
+function UNINITIALIZED_VALUE() {}
+var _UNINITIALIZED_VALUE = new UNINITIALIZED_VALUE();
+
/**
* @ngdoc provider
* @name $compileProvider
@@ -7132,11 +7964,12 @@ var $compileMinErr = minErr('$compile');
* @description
*/
$CompileProvider.$inject = ['$provide', '$$sanitizeUriProvider'];
+/** @this */
function $CompileProvider($provide, $$sanitizeUriProvider) {
var hasDirectives = {},
Suffix = 'Directive',
- COMMENT_DIRECTIVE_REGEXP = /^\s*directive\:\s*([\w\-]+)\s+(.*)$/,
- CLASS_DIRECTIVE_REGEXP = /(([\w\-]+)(?:\:([^;]+))?;?)/,
+ COMMENT_DIRECTIVE_REGEXP = /^\s*directive:\s*([\w-]+)\s+(.*)$/,
+ CLASS_DIRECTIVE_REGEXP = /(([\w-]+)(?::([^;]+))?;?)/,
ALL_OR_NOTHING_ATTRS = makeMap('ngSrc,ngSrcset,src,srcset'),
REQUIRE_PREFIX_REGEXP = /^(?:(\^\^?)?(\?)?(\^\^?)?)?/;
@@ -7144,22 +7977,27 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
// The assumption is that future DOM event attribute names will begin with
// 'on' and be composed of only English letters.
var EVENT_HANDLER_ATTR_REGEXP = /^(on[a-z]+|formaction)$/;
+ var bindingCache = createMap();
function parseIsolateBindings(scope, directiveName, isController) {
- var LOCAL_REGEXP = /^\s*([@&]|=(\*?))(\??)\s*(\w*)\s*$/;
+ var LOCAL_REGEXP = /^\s*([@&<]|=(\*?))(\??)\s*([\w$]*)\s*$/;
- var bindings = {};
+ var bindings = createMap();
forEach(scope, function(definition, scopeName) {
+ if (definition in bindingCache) {
+ bindings[scopeName] = bindingCache[definition];
+ return;
+ }
var match = definition.match(LOCAL_REGEXP);
if (!match) {
throw $compileMinErr('iscp',
- "Invalid {3} for directive '{0}'." +
- " Definition: {... {1}: '{2}' ...}",
+ 'Invalid {3} for directive \'{0}\'.' +
+ ' Definition: {... {1}: \'{2}\' ...}',
directiveName, scopeName, definition,
- (isController ? "controller bindings definition" :
- "isolate scope definition"));
+ (isController ? 'controller bindings definition' :
+ 'isolate scope definition'));
}
bindings[scopeName] = {
@@ -7168,6 +8006,9 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
optional: match[3] === '?',
attrName: match[4] || scopeName
};
+ if (match[4]) {
+ bindingCache[definition] = bindings[scopeName];
+ }
});
return bindings;
@@ -7192,20 +8033,11 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
bindings.bindToController =
parseIsolateBindings(directive.bindToController, directiveName, true);
}
- if (isObject(bindings.bindToController)) {
- var controller = directive.controller;
- var controllerAs = directive.controllerAs;
- if (!controller) {
- // There is no controller, there may or may not be a controllerAs property
- throw $compileMinErr('noctrl',
- "Cannot bind to controller without directive '{0}'s controller.",
- directiveName);
- } else if (!identifierForController(controller, controllerAs)) {
- // There is a controller, but no identifier or controllerAs property
- throw $compileMinErr('noident',
- "Cannot bind to controller without identifier for directive '{0}'.",
- directiveName);
- }
+ if (bindings.bindToController && !directive.controller) {
+ // There is no controller
+ throw $compileMinErr('noctrl',
+ 'Cannot bind to controller without directive \'{0}\'s controller.',
+ directiveName);
}
return bindings;
}
@@ -7213,15 +8045,40 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
function assertValidDirectiveName(name) {
var letter = name.charAt(0);
if (!letter || letter !== lowercase(letter)) {
- throw $compileMinErr('baddir', "Directive name '{0}' is invalid. The first character must be a lowercase letter", name);
+ throw $compileMinErr('baddir', 'Directive/Component name \'{0}\' is invalid. The first character must be a lowercase letter', name);
}
if (name !== name.trim()) {
throw $compileMinErr('baddir',
- "Directive name '{0}' is invalid. The name should not contain leading or trailing whitespaces",
+ 'Directive/Component name \'{0}\' is invalid. The name should not contain leading or trailing whitespaces',
name);
}
}
+ function getDirectiveRequire(directive) {
+ var require = directive.require || (directive.controller && directive.name);
+
+ if (!isArray(require) && isObject(require)) {
+ forEach(require, function(value, key) {
+ var match = value.match(REQUIRE_PREFIX_REGEXP);
+ var name = value.substring(match[0].length);
+ if (!name) require[key] = match[0] + key;
+ });
+ }
+
+ return require;
+ }
+
+ function getDirectiveRestrict(restrict, name) {
+ if (restrict && !(isString(restrict) && /[EACM]/.test(restrict))) {
+ throw $compileMinErr('badrestrict',
+ 'Restrict property \'{0}\' of directive \'{1}\' is invalid',
+ restrict,
+ name);
+ }
+
+ return restrict || 'EA';
+ }
+
/**
* @ngdoc method
* @name $compileProvider#directive
@@ -7233,11 +8090,12 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
* @param {string|Object} name Name of the directive in camel-case (i.e. <code>ngBind</code> which
* will match as <code>ng-bind</code>), or an object map of directives where the keys are the
* names and the values are the factories.
- * @param {Function|Array} directiveFactory An injectable directive factory function. See
- * {@link guide/directive} for more info.
+ * @param {Function|Array} directiveFactory An injectable directive factory function. See the
+ * {@link guide/directive directive guide} and the {@link $compile compile API} for more info.
* @returns {ng.$compileProvider} Self for chaining.
*/
- this.directive = function registerDirective(name, directiveFactory) {
+ this.directive = function registerDirective(name, directiveFactory) {
+ assertArg(name, 'name');
assertNotHasOwnProperty(name, 'directive');
if (isString(name)) {
assertValidDirectiveName(name);
@@ -7258,13 +8116,8 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
directive.priority = directive.priority || 0;
directive.index = index;
directive.name = directive.name || name;
- directive.require = directive.require || (directive.controller && directive.name);
- directive.restrict = directive.restrict || 'EA';
- var bindings = directive.$$bindings =
- parseDirectiveBindings(directive, directive.name);
- if (isObject(bindings.isolateScope)) {
- directive.$$isolateBindings = bindings.isolateScope;
- }
+ directive.require = getDirectiveRequire(directive);
+ directive.restrict = getDirectiveRestrict(directive.restrict, name);
directive.$$moduleName = directiveFactory.$$moduleName;
directives.push(directive);
} catch (e) {
@@ -7281,6 +8134,147 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
return this;
};
+ /**
+ * @ngdoc method
+ * @name $compileProvider#component
+ * @module ng
+ * @param {string} name Name of the component in camelCase (i.e. `myComp` which will match `<my-comp>`)
+ * @param {Object} options Component definition object (a simplified
+ * {@link ng.$compile#directive-definition-object directive definition object}),
+ * with the following properties (all optional):
+ *
+ * - `controller` – `{(string|function()=}` – controller constructor function that should be
+ * associated with newly created scope or the name of a {@link ng.$compile#-controller-
+ * registered controller} if passed as a string. An empty `noop` function by default.
+ * - `controllerAs` – `{string=}` – identifier name for to reference the controller in the component's scope.
+ * If present, the controller will be published to scope under the `controllerAs` name.
+ * If not present, this will default to be `$ctrl`.
+ * - `template` – `{string=|function()=}` – html template as a string or a function that
+ * returns an html template as a string which should be used as the contents of this component.
+ * Empty string by default.
+ *
+ * If `template` is a function, then it is {@link auto.$injector#invoke injected} with
+ * the following locals:
+ *
+ * - `$element` - Current element
+ * - `$attrs` - Current attributes object for the element
+ *
+ * - `templateUrl` – `{string=|function()=}` – path or function that returns a path to an html
+ * template that should be used as the contents of this component.
+ *
+ * If `templateUrl` is a function, then it is {@link auto.$injector#invoke injected} with
+ * the following locals:
+ *
+ * - `$element` - Current element
+ * - `$attrs` - Current attributes object for the element
+ *
+ * - `bindings` – `{object=}` – defines bindings between DOM attributes and component properties.
+ * Component properties are always bound to the component controller and not to the scope.
+ * See {@link ng.$compile#-bindtocontroller- `bindToController`}.
+ * - `transclude` – `{boolean=}` – whether {@link $compile#transclusion content transclusion} is enabled.
+ * Disabled by default.
+ * - `require` - `{Object<string, string>=}` - requires the controllers of other directives and binds them to
+ * this component's controller. The object keys specify the property names under which the required
+ * controllers (object values) will be bound. See {@link ng.$compile#-require- `require`}.
+ * - `$...` – additional properties to attach to the directive factory function and the controller
+ * constructor function. (This is used by the component router to annotate)
+ *
+ * @returns {ng.$compileProvider} the compile provider itself, for chaining of function calls.
+ * @description
+ * Register a **component definition** with the compiler. This is a shorthand for registering a special
+ * type of directive, which represents a self-contained UI component in your application. Such components
+ * are always isolated (i.e. `scope: {}`) and are always restricted to elements (i.e. `restrict: 'E'`).
+ *
+ * Component definitions are very simple and do not require as much configuration as defining general
+ * directives. Component definitions usually consist only of a template and a controller backing it.
+ *
+ * In order to make the definition easier, components enforce best practices like use of `controllerAs`,
+ * `bindToController`. They always have **isolate scope** and are restricted to elements.
+ *
+ * Here are a few examples of how you would usually define components:
+ *
+ * ```js
+ * var myMod = angular.module(...);
+ * myMod.component('myComp', {
+ * template: '<div>My name is {{$ctrl.name}}</div>',
+ * controller: function() {
+ * this.name = 'shahar';
+ * }
+ * });
+ *
+ * myMod.component('myComp', {
+ * template: '<div>My name is {{$ctrl.name}}</div>',
+ * bindings: {name: '@'}
+ * });
+ *
+ * myMod.component('myComp', {
+ * templateUrl: 'views/my-comp.html',
+ * controller: 'MyCtrl',
+ * controllerAs: 'ctrl',
+ * bindings: {name: '@'}
+ * });
+ *
+ * ```
+ * For more examples, and an in-depth guide, see the {@link guide/component component guide}.
+ *
+ * <br />
+ * See also {@link ng.$compileProvider#directive $compileProvider.directive()}.
+ */
+ this.component = function registerComponent(name, options) {
+ var controller = options.controller || function() {};
+
+ function factory($injector) {
+ function makeInjectable(fn) {
+ if (isFunction(fn) || isArray(fn)) {
+ return /** @this */ function(tElement, tAttrs) {
+ return $injector.invoke(fn, this, {$element: tElement, $attrs: tAttrs});
+ };
+ } else {
+ return fn;
+ }
+ }
+
+ var template = (!options.template && !options.templateUrl ? '' : options.template);
+ var ddo = {
+ controller: controller,
+ controllerAs: identifierForController(options.controller) || options.controllerAs || '$ctrl',
+ template: makeInjectable(template),
+ templateUrl: makeInjectable(options.templateUrl),
+ transclude: options.transclude,
+ scope: {},
+ bindToController: options.bindings || {},
+ restrict: 'E',
+ require: options.require
+ };
+
+ // Copy annotations (starting with $) over to the DDO
+ forEach(options, function(val, key) {
+ if (key.charAt(0) === '$') ddo[key] = val;
+ });
+
+ return ddo;
+ }
+
+ // TODO(pete) remove the following `forEach` before we release 1.6.0
+ // The component-router@0.2.0 looks for the annotations on the controller constructor
+ // Nothing in Angular looks for annotations on the factory function but we can't remove
+ // it from 1.5.x yet.
+
+ // Copy any annotation properties (starting with $) over to the factory and controller constructor functions
+ // These could be used by libraries such as the new component router
+ forEach(options, function(val, key) {
+ if (key.charAt(0) === '$') {
+ factory[key] = val;
+ // Don't try to copy over annotations to named controller
+ if (isFunction(controller)) controller[key] = val;
+ }
+ });
+
+ factory.$inject = ['$injector'];
+
+ return this.directive(name, factory);
+ };
+
/**
* @ngdoc method
@@ -7372,13 +8366,172 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
return debugInfoEnabled;
};
+ /**
+ * @ngdoc method
+ * @name $compileProvider#preAssignBindingsEnabled
+ *
+ * @param {boolean=} enabled update the preAssignBindingsEnabled state if provided, otherwise just return the
+ * current preAssignBindingsEnabled state
+ * @returns {*} current value if used as getter or itself (chaining) if used as setter
+ *
+ * @kind function
+ *
+ * @description
+ * Call this method to enable/disable whether directive controllers are assigned bindings before
+ * calling the controller's constructor.
+ * If enabled (true), the compiler assigns the value of each of the bindings to the
+ * properties of the controller object before the constructor of this object is called.
+ *
+ * If disabled (false), the compiler calls the constructor first before assigning bindings.
+ *
+ * The default value is true in Angular 1.5.x but will switch to false in Angular 1.6.x.
+ */
+ var preAssignBindingsEnabled = false;
+ this.preAssignBindingsEnabled = function(enabled) {
+ if (isDefined(enabled)) {
+ preAssignBindingsEnabled = enabled;
+ return this;
+ }
+ return preAssignBindingsEnabled;
+ };
+
+
+ var TTL = 10;
+ /**
+ * @ngdoc method
+ * @name $compileProvider#onChangesTtl
+ * @description
+ *
+ * Sets the number of times `$onChanges` hooks can trigger new changes before giving up and
+ * assuming that the model is unstable.
+ *
+ * The current default is 10 iterations.
+ *
+ * In complex applications it's possible that dependencies between `$onChanges` hooks and bindings will result
+ * in several iterations of calls to these hooks. However if an application needs more than the default 10
+ * iterations to stabilize then you should investigate what is causing the model to continuously change during
+ * the `$onChanges` hook execution.
+ *
+ * Increasing the TTL could have performance implications, so you should not change it without proper justification.
+ *
+ * @param {number} limit The number of `$onChanges` hook iterations.
+ * @returns {number|object} the current limit (or `this` if called as a setter for chaining)
+ */
+ this.onChangesTtl = function(value) {
+ if (arguments.length) {
+ TTL = value;
+ return this;
+ }
+ return TTL;
+ };
+
+ var commentDirectivesEnabledConfig = true;
+ /**
+ * @ngdoc method
+ * @name $compileProvider#commentDirectivesEnabled
+ * @description
+ *
+ * It indicates to the compiler
+ * whether or not directives on comments should be compiled.
+ * Defaults to `true`.
+ *
+ * Calling this function with false disables the compilation of directives
+ * on comments for the whole application.
+ * This results in a compilation performance gain,
+ * as the compiler doesn't have to check comments when looking for directives.
+ * This should however only be used if you are sure that no comment directives are used in
+ * the application (including any 3rd party directives).
+ *
+ * @param {boolean} enabled `false` if the compiler may ignore directives on comments
+ * @returns {boolean|object} the current value (or `this` if called as a setter for chaining)
+ */
+ this.commentDirectivesEnabled = function(value) {
+ if (arguments.length) {
+ commentDirectivesEnabledConfig = value;
+ return this;
+ }
+ return commentDirectivesEnabledConfig;
+ };
+
+
+ var cssClassDirectivesEnabledConfig = true;
+ /**
+ * @ngdoc method
+ * @name $compileProvider#cssClassDirectivesEnabled
+ * @description
+ *
+ * It indicates to the compiler
+ * whether or not directives on element classes should be compiled.
+ * Defaults to `true`.
+ *
+ * Calling this function with false disables the compilation of directives
+ * on element classes for the whole application.
+ * This results in a compilation performance gain,
+ * as the compiler doesn't have to check element classes when looking for directives.
+ * This should however only be used if you are sure that no class directives are used in
+ * the application (including any 3rd party directives).
+ *
+ * @param {boolean} enabled `false` if the compiler may ignore directives on element classes
+ * @returns {boolean|object} the current value (or `this` if called as a setter for chaining)
+ */
+ this.cssClassDirectivesEnabled = function(value) {
+ if (arguments.length) {
+ cssClassDirectivesEnabledConfig = value;
+ return this;
+ }
+ return cssClassDirectivesEnabledConfig;
+ };
+
this.$get = [
'$injector', '$interpolate', '$exceptionHandler', '$templateRequest', '$parse',
- '$controller', '$rootScope', '$document', '$sce', '$animate', '$$sanitizeUri',
+ '$controller', '$rootScope', '$sce', '$animate', '$$sanitizeUri',
function($injector, $interpolate, $exceptionHandler, $templateRequest, $parse,
- $controller, $rootScope, $document, $sce, $animate, $$sanitizeUri) {
+ $controller, $rootScope, $sce, $animate, $$sanitizeUri) {
+
+ var SIMPLE_ATTR_NAME = /^\w/;
+ var specialAttrHolder = window.document.createElement('div');
+
+
+ var commentDirectivesEnabled = commentDirectivesEnabledConfig;
+ var cssClassDirectivesEnabled = cssClassDirectivesEnabledConfig;
+
+
+ var onChangesTtl = TTL;
+ // The onChanges hooks should all be run together in a single digest
+ // When changes occur, the call to trigger their hooks will be added to this queue
+ var onChangesQueue;
+
+ // This function is called in a $$postDigest to trigger all the onChanges hooks in a single digest
+ function flushOnChangesQueue() {
+ try {
+ if (!(--onChangesTtl)) {
+ // We have hit the TTL limit so reset everything
+ onChangesQueue = undefined;
+ throw $compileMinErr('infchng', '{0} $onChanges() iterations reached. Aborting!\n', TTL);
+ }
+ // We must run this hook in an apply since the $$postDigest runs outside apply
+ $rootScope.$apply(function() {
+ var errors = [];
+ for (var i = 0, ii = onChangesQueue.length; i < ii; ++i) {
+ try {
+ onChangesQueue[i]();
+ } catch (e) {
+ errors.push(e);
+ }
+ }
+ // Reset the queue to trigger a new schedule next time there is a change
+ onChangesQueue = undefined;
+ if (errors.length) {
+ throw errors;
+ }
+ });
+ } finally {
+ onChangesTtl++;
+ }
+ }
+
- var Attributes = function(element, attributesToCopy) {
+ function Attributes(element, attributesToCopy) {
if (attributesToCopy) {
var keys = Object.keys(attributesToCopy);
var i, l, key;
@@ -7392,7 +8545,7 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
}
this.$$element = element;
- };
+ }
Attributes.prototype = {
/**
@@ -7517,9 +8670,9 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
(nodeName === 'img' && key === 'src')) {
// sanitize a[href] and img[src] values
this[key] = value = $$sanitizeUri(value, key === 'src');
- } else if (nodeName === 'img' && key === 'srcset') {
+ } else if (nodeName === 'img' && key === 'srcset' && isDefined(value)) {
// sanitize img[srcset] values
- var result = "";
+ var result = '';
// first check if there are spaces because it's not the same pattern
var trimmedSrcset = trim(value);
@@ -7537,7 +8690,7 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
// sanitize the uri
result += $$sanitizeUri(trim(rawUris[innerIdx]), true);
// add the descriptor
- result += (" " + trim(rawUris[innerIdx + 1]));
+ result += (' ' + trim(rawUris[innerIdx + 1]));
}
// split the last item into uri and descriptor
@@ -7548,7 +8701,7 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
// and add the last descriptor if any
if (lastTuple.length === 2) {
- result += (" " + trim(lastTuple[1]));
+ result += (' ' + trim(lastTuple[1]));
}
this[key] = value = result;
}
@@ -7557,19 +8710,25 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
if (value === null || isUndefined(value)) {
this.$$element.removeAttr(attrName);
} else {
- this.$$element.attr(attrName, value);
+ if (SIMPLE_ATTR_NAME.test(attrName)) {
+ this.$$element.attr(attrName, value);
+ } else {
+ setSpecialAttr(this.$$element[0], attrName, value);
+ }
}
}
// fire observers
var $$observers = this.$$observers;
- $$observers && forEach($$observers[observer], function(fn) {
- try {
- fn(value);
- } catch (e) {
- $exceptionHandler(e);
- }
- });
+ if ($$observers) {
+ forEach($$observers[observer], function(fn) {
+ try {
+ fn(value);
+ } catch (e) {
+ $exceptionHandler(e);
+ }
+ });
+ }
},
@@ -7588,7 +8747,8 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
* @param {string} key Normalized key. (ie ngAttribute) .
* @param {function(interpolatedValue)} fn Function that will be called whenever
the interpolated value of the attribute changes.
- * See the {@link guide/directive#text-and-attribute-bindings Directives} guide for more info.
+ * See the {@link guide/interpolation#how-text-and-attribute-bindings-work Interpolation
+ * guide} for more info.
* @returns {function()} Returns a deregistration function for this observer.
*/
$observe: function(key, fn) {
@@ -7610,6 +8770,18 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
}
};
+ function setSpecialAttr(element, attrName, value) {
+ // Attributes names that do not start with letters (such as `(click)`) cannot be set using `setAttribute`
+ // so we have to jump through some hoops to get such an attribute
+ // https://github.com/angular/angular.js/pull/13318
+ specialAttrHolder.innerHTML = '<span ' + attrName + '>';
+ var attributes = specialAttrHolder.firstChild.attributes;
+ var attribute = attributes[0];
+ // We have to remove the attribute from its container element before we can add it to the destination element
+ attributes.removeNamedItem(attribute.name);
+ attribute.value = value;
+ element.attributes.setNamedItem(attribute);
+ }
function safeAddClass($element, className) {
try {
@@ -7623,7 +8795,7 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
var startSymbol = $interpolate.startSymbol(),
endSymbol = $interpolate.endSymbol(),
- denormalizeTemplate = (startSymbol == '{{' || endSymbol == '}}')
+ denormalizeTemplate = (startSymbol === '{{' && endSymbol === '}}')
? identity
: function denormalizeTemplate(template) {
return template.replace(/\{\{/g, startSymbol).replace(/}}/g, endSymbol);
@@ -7656,6 +8828,15 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
safeAddClass($element, isolated ? 'ng-isolate-scope' : 'ng-scope');
} : noop;
+ compile.$$createComment = function(directiveName, comment) {
+ var content = '';
+ if (debugInfoEnabled) {
+ content = ' ' + (directiveName || '') + ': ';
+ if (comment) content += comment + ' ';
+ }
+ return window.document.createComment(content);
+ };
+
return compile;
//================================
@@ -7667,19 +8848,15 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
// modify it.
$compileNodes = jqLite($compileNodes);
}
- // We can not compile top level text elements since text nodes can be merged and we will
- // not be able to attach scope data to them, so we will wrap them in <span>
- forEach($compileNodes, function(node, index) {
- if (node.nodeType == NODE_TYPE_TEXT && node.nodeValue.match(/\S+/) /* non-empty */) {
- $compileNodes[index] = jqLite(node).wrap('<span></span>').parent()[0];
- }
- });
var compositeLinkFn =
compileNodes($compileNodes, transcludeFn, $compileNodes,
maxPriority, ignoreDirective, previousCompileContext);
compile.$$addScopeClass($compileNodes);
var namespace = null;
return function publicLinkFn(scope, cloneConnectFn, options) {
+ if (!$compileNodes) {
+ throw $compileMinErr('multilink', 'This element has already been linked.');
+ }
assertArg(scope, 'scope');
if (previousCompileContext && previousCompileContext.needsNewScope) {
@@ -7734,6 +8911,10 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
if (cloneConnectFn) cloneConnectFn($linkNode, scope);
if (compositeLinkFn) compositeLinkFn(scope, $linkNode, $linkNode, parentBoundTranscludeFn);
+
+ if (!cloneConnectFn) {
+ $compileNodes = compositeLinkFn = null;
+ }
return $linkNode;
};
}
@@ -7744,7 +8925,7 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
if (!node) {
return 'html';
} else {
- return nodeName_(node) !== 'foreignobject' && node.toString().match(/SVG/) ? 'svg' : 'html';
+ return nodeName_(node) !== 'foreignobject' && toString.call(node).match(/SVG/) ? 'svg' : 'html';
}
}
@@ -7766,12 +8947,23 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
function compileNodes(nodeList, transcludeFn, $rootElement, maxPriority, ignoreDirective,
previousCompileContext) {
var linkFns = [],
+ // `nodeList` can be either an element's `.childNodes` (live NodeList)
+ // or a jqLite/jQuery collection or an array
+ notLiveList = isArray(nodeList) || (nodeList instanceof jqLite),
attrs, directives, nodeLinkFn, childNodes, childLinkFn, linkFnFound, nodeLinkFnFound;
+
for (var i = 0; i < nodeList.length; i++) {
attrs = new Attributes();
- // we must always refer to nodeList[i] since the nodes can be replaced underneath us.
+ // Support: IE 11 only
+ // Workaround for #11781 and #14924
+ if (msie === 11) {
+ mergeConsecutiveTextNodes(nodeList, i, notLiveList);
+ }
+
+ // We must always refer to `nodeList[i]` hereafter,
+ // since the nodes can be replaced underneath us.
directives = collectDirectives(nodeList[i], [], attrs, i === 0 ? maxPriority : undefined,
ignoreDirective);
@@ -7818,7 +9010,7 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
stableNodeList = new Array(nodeListLength);
// create a sparse array by only copying the elements which have a linkFn
- for (i = 0; i < linkFns.length; i+=3) {
+ for (i = 0; i < linkFns.length; i += 3) {
idx = linkFns[i];
stableNodeList[idx] = nodeList[idx];
}
@@ -7862,9 +9054,34 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
}
}
- function createBoundTranscludeFn(scope, transcludeFn, previousBoundTranscludeFn) {
+ function mergeConsecutiveTextNodes(nodeList, idx, notLiveList) {
+ var node = nodeList[idx];
+ var parent = node.parentNode;
+ var sibling;
+
+ if (node.nodeType !== NODE_TYPE_TEXT) {
+ return;
+ }
+
+ while (true) {
+ sibling = parent ? node.nextSibling : nodeList[idx + 1];
+ if (!sibling || sibling.nodeType !== NODE_TYPE_TEXT) {
+ break;
+ }
+
+ node.nodeValue = node.nodeValue + sibling.nodeValue;
+
+ if (sibling.parentNode) {
+ sibling.parentNode.removeChild(sibling);
+ }
+ if (notLiveList && sibling === nodeList[idx + 1]) {
+ nodeList.splice(idx + 1, 1);
+ }
+ }
+ }
- var boundTranscludeFn = function(transcludedScope, cloneFn, controllers, futureParentElement, containingScope) {
+ function createBoundTranscludeFn(scope, transcludeFn, previousBoundTranscludeFn) {
+ function boundTranscludeFn(transcludedScope, cloneFn, controllers, futureParentElement, containingScope) {
if (!transcludedScope) {
transcludedScope = scope.$new(false, containingScope);
@@ -7876,13 +9093,17 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
transcludeControllers: controllers,
futureParentElement: futureParentElement
});
- };
+ }
// We need to attach the transclusion slots onto the `boundTranscludeFn`
// so that they are available inside the `controllersBoundTransclude` function
var boundSlots = boundTranscludeFn.$$slots = createMap();
for (var slotName in transcludeFn.$$slots) {
- boundSlots[slotName] = createBoundTranscludeFn(scope, transcludeFn.$$slots[slotName], previousBoundTranscludeFn);
+ if (transcludeFn.$$slots[slotName]) {
+ boundSlots[slotName] = createBoundTranscludeFn(scope, transcludeFn.$$slots[slotName], previousBoundTranscludeFn);
+ } else {
+ boundSlots[slotName] = null;
+ }
}
return boundTranscludeFn;
@@ -7902,13 +9123,17 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
var nodeType = node.nodeType,
attrsMap = attrs.$attr,
match,
+ nodeName,
className;
switch (nodeType) {
case NODE_TYPE_ELEMENT: /* Element */
+
+ nodeName = nodeName_(node);
+
// use the node name: <directive>
addDirective(directives,
- directiveNormalize(nodeName_(node)), 'E', maxPriority, ignoreDirective);
+ directiveNormalize(nodeName), 'E', maxPriority, ignoreDirective);
// iterate over the attributes
for (var attr, name, nName, ngAttrName, value, isNgAttr, nAttrs = node.attributes,
@@ -7918,11 +9143,12 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
attr = nAttrs[j];
name = attr.name;
- value = trim(attr.value);
+ value = attr.value;
// support ngAttr attribute binding
ngAttrName = directiveNormalize(name);
- if (isNgAttr = NG_ATTR_BINDING.test(ngAttrName)) {
+ isNgAttr = NG_ATTR_BINDING.test(ngAttrName);
+ if (isNgAttr) {
name = name.replace(PREFIX_REGEXP, '')
.substr(8).replace(/_(.)/g, function(match, letter) {
return letter.toUpperCase();
@@ -7949,14 +9175,21 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
attrEndName);
}
+ if (nodeName === 'input' && node.getAttribute('type') === 'hidden') {
+ // Hidden input elements can have strange behaviour when navigating back to the page
+ // This tells the browser not to try to cache and reinstate previous values
+ node.setAttribute('autocomplete', 'off');
+ }
+
// use class as directive
+ if (!cssClassDirectivesEnabled) break;
className = node.className;
if (isObject(className)) {
// Maybe SVGAnimatedString
className = className.animVal;
}
if (isString(className) && className !== '') {
- while (match = CLASS_DIRECTIVE_REGEXP.exec(className)) {
+ while ((match = CLASS_DIRECTIVE_REGEXP.exec(className))) {
nName = directiveNormalize(match[2]);
if (addDirective(directives, nName, 'C', maxPriority, ignoreDirective)) {
attrs[nName] = trim(match[3]);
@@ -7966,29 +9199,11 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
}
break;
case NODE_TYPE_TEXT: /* Text Node */
- if (msie === 11) {
- // Workaround for #11781
- while (node.parentNode && node.nextSibling && node.nextSibling.nodeType === NODE_TYPE_TEXT) {
- node.nodeValue = node.nodeValue + node.nextSibling.nodeValue;
- node.parentNode.removeChild(node.nextSibling);
- }
- }
addTextInterpolateDirective(directives, node.nodeValue);
break;
case NODE_TYPE_COMMENT: /* Comment */
- try {
- match = COMMENT_DIRECTIVE_REGEXP.exec(node.nodeValue);
- if (match) {
- nName = directiveNormalize(match[1]);
- if (addDirective(directives, nName, 'M', maxPriority, ignoreDirective)) {
- attrs[nName] = trim(match[2]);
- }
- }
- } catch (e) {
- // turns out that under some circumstances IE9 throws errors when one attempts to read
- // comment's node value.
- // Just ignore it and continue. (Can't seem to reproduce in test case.)
- }
+ if (!commentDirectivesEnabled) break;
+ collectCommentDirectives(node, directives, attrs, maxPriority, ignoreDirective);
break;
}
@@ -7996,8 +9211,26 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
return directives;
}
+ function collectCommentDirectives(node, directives, attrs, maxPriority, ignoreDirective) {
+ // function created because of performance, try/catch disables
+ // the optimization of the whole function #14848
+ try {
+ var match = COMMENT_DIRECTIVE_REGEXP.exec(node.nodeValue);
+ if (match) {
+ var nName = directiveNormalize(match[1]);
+ if (addDirective(directives, nName, 'M', maxPriority, ignoreDirective)) {
+ attrs[nName] = trim(match[2]);
+ }
+ }
+ } catch (e) {
+ // turns out that under some circumstances IE9 throws errors when one attempts to read
+ // comment's node value.
+ // Just ignore it and continue. (Can't seem to reproduce in test case.)
+ }
+ }
+
/**
- * Given a node with an directive-start it collects all of the siblings until it finds
+ * Given a node with a directive-start it collects all of the siblings until it finds
* directive-end.
* @param node
* @param attrStart
@@ -8011,10 +9244,10 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
do {
if (!node) {
throw $compileMinErr('uterdir',
- "Unterminated attribute, found '{0}' but no matching '{1}' found.",
+ 'Unterminated attribute, found \'{0}\' but no matching \'{1}\' found.',
attrStart, attrEnd);
}
- if (node.nodeType == NODE_TYPE_ELEMENT) {
+ if (node.nodeType === NODE_TYPE_ELEMENT) {
if (node.hasAttribute(attrStart)) depth++;
if (node.hasAttribute(attrEnd)) depth--;
}
@@ -8037,7 +9270,7 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
* @returns {Function}
*/
function groupElementsLinkFnWrapper(linkFn, attrStart, attrEnd) {
- return function(scope, element, attrs, controllers, transcludeFn) {
+ return function groupedElementsLink(scope, element, attrs, controllers, transcludeFn) {
element = groupScan(element[0], attrStart, attrEnd);
return linkFn(scope, element, attrs, controllers, transcludeFn);
};
@@ -8055,23 +9288,21 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
* @returns {Function}
*/
function compilationGenerator(eager, $compileNodes, transcludeFn, maxPriority, ignoreDirective, previousCompileContext) {
- if (eager) {
- return compile($compileNodes, transcludeFn, maxPriority, ignoreDirective, previousCompileContext);
- }
-
- var compiled;
+ var compiled;
- return function() {
- if (!compiled) {
- compiled = compile($compileNodes, transcludeFn, maxPriority, ignoreDirective, previousCompileContext);
-
- // Null out all of these references in order to make them eligible for garbage collection
- // since this is a potentially long lived closure
- $compileNodes = transcludeFn = previousCompileContext = null;
- }
+ if (eager) {
+ return compile($compileNodes, transcludeFn, maxPriority, ignoreDirective, previousCompileContext);
+ }
+ return /** @this */ function lazyCompilation() {
+ if (!compiled) {
+ compiled = compile($compileNodes, transcludeFn, maxPriority, ignoreDirective, previousCompileContext);
- return compiled.apply(this, arguments);
- };
+ // Null out all of these references in order to make them eligible for garbage collection
+ // since this is a potentially long lived closure
+ $compileNodes = transcludeFn = previousCompileContext = null;
+ }
+ return compiled.apply(this, arguments);
+ };
}
/**
@@ -8138,7 +9369,9 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
break; // prevent further processing of directives
}
- if (directiveValue = directive.scope) {
+ directiveValue = directive.scope;
+
+ if (directiveValue) {
// skip the check for directives with async templates, we'll check the derived sync
// directive when the template arrives
@@ -8172,7 +9405,7 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
|| (directive.transclude && !directive.$$tlb))) {
var candidateDirective;
- for (var scanningIndex = i + 1; candidateDirective = directives[scanningIndex++];) {
+ for (var scanningIndex = i + 1; (candidateDirective = directives[scanningIndex++]);) {
if ((candidateDirective.transclude && !candidateDirective.$$tlb)
|| (candidateDirective.replace && (candidateDirective.templateUrl || candidateDirective.template))) {
mightHaveMultipleTransclusionError = true;
@@ -8184,14 +9417,15 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
}
if (!directive.templateUrl && directive.controller) {
- directiveValue = directive.controller;
controllerDirectives = controllerDirectives || createMap();
- assertNoDuplicate("'" + directiveName + "' controller",
+ assertNoDuplicate('\'' + directiveName + '\' controller',
controllerDirectives[directiveName], directive, $compileNode);
controllerDirectives[directiveName] = directive;
}
- if (directiveValue = directive.transclude) {
+ directiveValue = directive.transclude;
+
+ if (directiveValue) {
hasTranscludeDirective = true;
// Special case ngIf and ngRepeat so that we don't complain about duplicate transclusion.
@@ -8202,16 +9436,26 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
nonTlbTranscludeDirective = directive;
}
- if (directiveValue == 'element') {
+ if (directiveValue === 'element') {
hasElementTranscludeDirective = true;
terminalPriority = directive.priority;
$template = $compileNode;
$compileNode = templateAttrs.$$element =
- jqLite(document.createComment(' ' + directiveName + ': ' +
- templateAttrs[directiveName] + ' '));
+ jqLite(compile.$$createComment(directiveName, templateAttrs[directiveName]));
compileNode = $compileNode[0];
replaceWith(jqCollection, sliceArgs($template), compileNode);
+ // Support: Chrome < 50
+ // https://github.com/angular/angular.js/issues/14041
+
+ // In the versions of V8 prior to Chrome 50, the document fragment that is created
+ // in the `replaceWith` function is improperly garbage collected despite still
+ // being referenced by the `parentNode` property of all of the child nodes. By adding
+ // a reference to the fragment via a different property, we can avoid that incorrect
+ // behavior.
+ // TODO: remove this line after Chrome 50 has been released
+ $template[0].$$parentNode = $template[0].parentNode;
+
childTranscludeFn = compilationGenerator(mightHaveMultipleTransclusionError, $template, transcludeFn, terminalPriority,
replaceDirective && replaceDirective.name, {
// Don't pass in:
@@ -8226,32 +9470,42 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
} else {
var slots = createMap();
- $template = jqLite(jqLiteClone(compileNode)).contents();
- if (isObject(directiveValue)) {
+ if (!isObject(directiveValue)) {
+ $template = jqLite(jqLiteClone(compileNode)).contents();
+ } else {
- // We have transclusion slots - collect them up and compile them and store their
- // transclusion functions
+ // We have transclusion slots,
+ // collect them up, compile them and store their transclusion functions
$template = [];
- var slotNames = createMap();
+
+ var slotMap = createMap();
var filledSlots = createMap();
- // Parse the slot names: if they start with a ? then they are optional
- forEach(directiveValue, function(slotName, key) {
- var optional = (slotName.charAt(0) === '?');
- slotName = optional ? slotName.substring(1) : slotName;
- slotNames[key] = slotName;
- slots[slotName] = [];
+ // Parse the element selectors
+ forEach(directiveValue, function(elementSelector, slotName) {
+ // If an element selector starts with a ? then it is optional
+ var optional = (elementSelector.charAt(0) === '?');
+ elementSelector = optional ? elementSelector.substring(1) : elementSelector;
+
+ slotMap[elementSelector] = slotName;
+
+ // We explicitly assign `null` since this implies that a slot was defined but not filled.
+ // Later when calling boundTransclusion functions with a slot name we only error if the
+ // slot is `undefined`
+ slots[slotName] = null;
+
// filledSlots contains `true` for all slots that are either optional or have been
// filled. This is used to check that we have not missed any required slots
filledSlots[slotName] = optional;
});
// Add the matching elements into their slot
- forEach($compileNode.children(), function(node) {
- var slotName = slotNames[directiveNormalize(nodeName_(node))];
+ forEach($compileNode.contents(), function(node) {
+ var slotName = slotMap[directiveNormalize(nodeName_(node))];
if (slotName) {
filledSlots[slotName] = true;
+ slots[slotName] = slots[slotName] || [];
slots[slotName].push(node);
} else {
$template.push(node);
@@ -8265,9 +9519,12 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
}
});
- forEach(Object.keys(slots), function(slotName) {
- slots[slotName] = compilationGenerator(mightHaveMultipleTransclusionError, slots[slotName], transcludeFn);
- });
+ for (var slotName in slots) {
+ if (slots[slotName]) {
+ // Only define a transclusion function if the slot was filled
+ slots[slotName] = compilationGenerator(mightHaveMultipleTransclusionError, slots[slotName], transcludeFn);
+ }
+ }
}
$compileNode.empty(); // clear contents
@@ -8297,9 +9554,9 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
}
compileNode = $template[0];
- if ($template.length != 1 || compileNode.nodeType !== NODE_TYPE_ELEMENT) {
+ if ($template.length !== 1 || compileNode.nodeType !== NODE_TYPE_ELEMENT) {
throw $compileMinErr('tplrt',
- "Template for directive '{0}' must have exactly one root element. {1}",
+ 'Template for directive \'{0}\' must have exactly one root element. {1}',
directiveName, '');
}
@@ -8339,6 +9596,7 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
replaceDirective = directive;
}
+ // eslint-disable-next-line no-func-assign
nodeLinkFn = compileTemplateUrl(directives.splice(i, directives.length - i), $compileNode,
templateAttrs, jqCollection, hasTranscludeDirective && childTranscludeFn, preLinkFns, postLinkFns, {
controllerDirectives: controllerDirectives,
@@ -8351,10 +9609,11 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
} else if (directive.compile) {
try {
linkFn = directive.compile($compileNode, templateAttrs, childTranscludeFn);
+ var context = directive.$$originalDirective || directive;
if (isFunction(linkFn)) {
- addLinkFns(null, linkFn, attrStart, attrEnd);
+ addLinkFns(null, bind(context, linkFn), attrStart, attrEnd);
} else if (linkFn) {
- addLinkFns(linkFn.pre, linkFn.post, attrStart, attrEnd);
+ addLinkFns(bind(context, linkFn.pre), bind(context, linkFn.post), attrStart, attrEnd);
}
} catch (e) {
$exceptionHandler(e, startingTag($compileNode));
@@ -8401,80 +9660,9 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
}
}
-
- function getControllers(directiveName, require, $element, elementControllers) {
- var value;
-
- if (isString(require)) {
- var match = require.match(REQUIRE_PREFIX_REGEXP);
- var name = require.substring(match[0].length);
- var inheritType = match[1] || match[3];
- var optional = match[2] === '?';
-
- //If only parents then start at the parent element
- if (inheritType === '^^') {
- $element = $element.parent();
- //Otherwise attempt getting the controller from elementControllers in case
- //the element is transcluded (and has no data) and to avoid .data if possible
- } else {
- value = elementControllers && elementControllers[name];
- value = value && value.instance;
- }
-
- if (!value) {
- var dataName = '$' + name + 'Controller';
- value = inheritType ? $element.inheritedData(dataName) : $element.data(dataName);
- }
-
- if (!value && !optional) {
- throw $compileMinErr('ctreq',
- "Controller '{0}', required by directive '{1}', can't be found!",
- name, directiveName);
- }
- } else if (isArray(require)) {
- value = [];
- for (var i = 0, ii = require.length; i < ii; i++) {
- value[i] = getControllers(directiveName, require[i], $element, elementControllers);
- }
- }
-
- return value || null;
- }
-
- function setupControllers($element, attrs, transcludeFn, controllerDirectives, isolateScope, scope) {
- var elementControllers = createMap();
- for (var controllerKey in controllerDirectives) {
- var directive = controllerDirectives[controllerKey];
- var locals = {
- $scope: directive === newIsolateScopeDirective || directive.$$isolateScope ? isolateScope : scope,
- $element: $element,
- $attrs: attrs,
- $transclude: transcludeFn
- };
-
- var controller = directive.controller;
- if (controller == '@') {
- controller = attrs[directive.name];
- }
-
- var controllerInstance = $controller(controller, locals, true, directive.controllerAs);
-
- // For directives with element transclusion the element is a comment,
- // but jQuery .data doesn't support attaching data to comment nodes as it's hard to
- // clean up (http://bugs.jquery.com/ticket/8335).
- // Instead, we save the controllers for the element in a local hash and attach to .data
- // later, once we have the actual element.
- elementControllers[directive.name] = controllerInstance;
- if (!hasElementTranscludeDirective) {
- $element.data('$' + directive.name + 'Controller', controllerInstance.instance);
- }
- }
- return elementControllers;
- }
-
function nodeLinkFn(childLinkFn, scope, linkNode, $rootElement, boundTranscludeFn) {
- var linkFn, isolateScope, controllerScope, elementControllers, transcludeFn, $element,
- attrs, removeScopeBindingWatches, removeControllerBindingWatches;
+ var i, ii, linkFn, isolateScope, controllerScope, elementControllers, transcludeFn, $element,
+ attrs, scopeBindingInfo;
if (compileNode === linkNode) {
attrs = templateAttrs;
@@ -8496,10 +9684,14 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
// is later passed as `parentBoundTranscludeFn` to `publicLinkFn`
transcludeFn = controllersBoundTransclude;
transcludeFn.$$boundTransclude = boundTranscludeFn;
+ // expose the slots on the `$transclude` function
+ transcludeFn.isSlotFilled = function(slotName) {
+ return !!boundTranscludeFn.$$slots[slotName];
+ };
}
if (controllerDirectives) {
- elementControllers = setupControllers($element, attrs, transcludeFn, controllerDirectives, isolateScope, scope);
+ elementControllers = setupControllers($element, attrs, transcludeFn, controllerDirectives, isolateScope, scope, newIsolateScopeDirective);
}
if (newIsolateScopeDirective) {
@@ -8509,11 +9701,11 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
compile.$$addScopeClass($element, true);
isolateScope.$$isolateBindings =
newIsolateScopeDirective.$$isolateBindings;
- removeScopeBindingWatches = initializeDirectiveBindings(scope, attrs, isolateScope,
+ scopeBindingInfo = initializeDirectiveBindings(scope, attrs, isolateScope,
isolateScope.$$isolateBindings,
newIsolateScopeDirective);
- if (removeScopeBindingWatches) {
- isolateScope.$on('$destroy', removeScopeBindingWatches);
+ if (scopeBindingInfo.removeWatches) {
+ isolateScope.$on('$destroy', scopeBindingInfo.removeWatches);
}
}
@@ -8523,23 +9715,70 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
var controller = elementControllers[name];
var bindings = controllerDirective.$$bindings.bindToController;
- if (controller.identifier && bindings) {
- removeControllerBindingWatches =
- initializeDirectiveBindings(controllerScope, attrs, controller.instance, bindings, controllerDirective);
- }
+ if (preAssignBindingsEnabled) {
+ if (bindings) {
+ controller.bindingInfo =
+ initializeDirectiveBindings(controllerScope, attrs, controller.instance, bindings, controllerDirective);
+ } else {
+ controller.bindingInfo = {};
+ }
- var controllerResult = controller();
- if (controllerResult !== controller.instance) {
- // If the controller constructor has a return value, overwrite the instance
- // from setupControllers
- controller.instance = controllerResult;
- $element.data('$' + controllerDirective.name + 'Controller', controllerResult);
- removeControllerBindingWatches && removeControllerBindingWatches();
- removeControllerBindingWatches =
+ var controllerResult = controller();
+ if (controllerResult !== controller.instance) {
+ // If the controller constructor has a return value, overwrite the instance
+ // from setupControllers
+ controller.instance = controllerResult;
+ $element.data('$' + controllerDirective.name + 'Controller', controllerResult);
+ if (controller.bindingInfo.removeWatches) {
+ controller.bindingInfo.removeWatches();
+ }
+ controller.bindingInfo =
+ initializeDirectiveBindings(controllerScope, attrs, controller.instance, bindings, controllerDirective);
+ }
+ } else {
+ controller.instance = controller();
+ $element.data('$' + controllerDirective.name + 'Controller', controller.instance);
+ controller.bindingInfo =
initializeDirectiveBindings(controllerScope, attrs, controller.instance, bindings, controllerDirective);
}
}
+ // Bind the required controllers to the controller, if `require` is an object and `bindToController` is truthy
+ forEach(controllerDirectives, function(controllerDirective, name) {
+ var require = controllerDirective.require;
+ if (controllerDirective.bindToController && !isArray(require) && isObject(require)) {
+ extend(elementControllers[name].instance, getControllers(name, require, $element, elementControllers));
+ }
+ });
+
+ // Handle the init and destroy lifecycle hooks on all controllers that have them
+ forEach(elementControllers, function(controller) {
+ var controllerInstance = controller.instance;
+ if (isFunction(controllerInstance.$onChanges)) {
+ try {
+ controllerInstance.$onChanges(controller.bindingInfo.initialChanges);
+ } catch (e) {
+ $exceptionHandler(e);
+ }
+ }
+ if (isFunction(controllerInstance.$onInit)) {
+ try {
+ controllerInstance.$onInit();
+ } catch (e) {
+ $exceptionHandler(e);
+ }
+ }
+ if (isFunction(controllerInstance.$doCheck)) {
+ controllerScope.$watch(function() { controllerInstance.$doCheck(); });
+ controllerInstance.$doCheck();
+ }
+ if (isFunction(controllerInstance.$onDestroy)) {
+ controllerScope.$on('$destroy', function callOnDestroyHook() {
+ controllerInstance.$onDestroy();
+ });
+ }
+ });
+
// PRELINKING
for (i = 0, ii = preLinkFns.length; i < ii; i++) {
linkFn = preLinkFns[i];
@@ -8559,7 +9798,9 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
if (newIsolateScopeDirective && (newIsolateScopeDirective.template || newIsolateScopeDirective.templateUrl === null)) {
scopeToChild = isolateScope;
}
- childLinkFn && childLinkFn(scopeToChild, linkNode.childNodes, undefined, boundTranscludeFn);
+ if (childLinkFn) {
+ childLinkFn(scopeToChild, linkNode.childNodes, undefined, boundTranscludeFn);
+ }
// POSTLINKING
for (i = postLinkFns.length - 1; i >= 0; i--) {
@@ -8573,6 +9814,14 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
);
}
+ // Trigger $postLink lifecycle hooks
+ forEach(elementControllers, function(controller) {
+ var controllerInstance = controller.instance;
+ if (isFunction(controllerInstance.$postLink)) {
+ controllerInstance.$postLink();
+ }
+ });
+
// This is the function that is injected as `$transclude`.
// Note: all arguments are optional!
function controllersBoundTransclude(scope, cloneAttachFn, futureParentElement, slotName) {
@@ -8592,20 +9841,98 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
futureParentElement = hasElementTranscludeDirective ? $element.parent() : $element;
}
if (slotName) {
+ // slotTranscludeFn can be one of three things:
+ // * a transclude function - a filled slot
+ // * `null` - an optional slot that was not filled
+ // * `undefined` - a slot that was not declared (i.e. invalid)
var slotTranscludeFn = boundTranscludeFn.$$slots[slotName];
- if (!slotTranscludeFn) {
+ if (slotTranscludeFn) {
+ return slotTranscludeFn(scope, cloneAttachFn, transcludeControllers, futureParentElement, scopeToChild);
+ } else if (isUndefined(slotTranscludeFn)) {
throw $compileMinErr('noslot',
'No parent directive that requires a transclusion with slot name "{0}". ' +
'Element: {1}',
slotName, startingTag($element));
}
- return slotTranscludeFn(scope, cloneAttachFn, transcludeControllers, futureParentElement, scopeToChild);
+ } else {
+ return boundTranscludeFn(scope, cloneAttachFn, transcludeControllers, futureParentElement, scopeToChild);
}
- return boundTranscludeFn(scope, cloneAttachFn, transcludeControllers, futureParentElement, scopeToChild);
}
}
}
+ function getControllers(directiveName, require, $element, elementControllers) {
+ var value;
+
+ if (isString(require)) {
+ var match = require.match(REQUIRE_PREFIX_REGEXP);
+ var name = require.substring(match[0].length);
+ var inheritType = match[1] || match[3];
+ var optional = match[2] === '?';
+
+ //If only parents then start at the parent element
+ if (inheritType === '^^') {
+ $element = $element.parent();
+ //Otherwise attempt getting the controller from elementControllers in case
+ //the element is transcluded (and has no data) and to avoid .data if possible
+ } else {
+ value = elementControllers && elementControllers[name];
+ value = value && value.instance;
+ }
+
+ if (!value) {
+ var dataName = '$' + name + 'Controller';
+ value = inheritType ? $element.inheritedData(dataName) : $element.data(dataName);
+ }
+
+ if (!value && !optional) {
+ throw $compileMinErr('ctreq',
+ 'Controller \'{0}\', required by directive \'{1}\', can\'t be found!',
+ name, directiveName);
+ }
+ } else if (isArray(require)) {
+ value = [];
+ for (var i = 0, ii = require.length; i < ii; i++) {
+ value[i] = getControllers(directiveName, require[i], $element, elementControllers);
+ }
+ } else if (isObject(require)) {
+ value = {};
+ forEach(require, function(controller, property) {
+ value[property] = getControllers(directiveName, controller, $element, elementControllers);
+ });
+ }
+
+ return value || null;
+ }
+
+ function setupControllers($element, attrs, transcludeFn, controllerDirectives, isolateScope, scope, newIsolateScopeDirective) {
+ var elementControllers = createMap();
+ for (var controllerKey in controllerDirectives) {
+ var directive = controllerDirectives[controllerKey];
+ var locals = {
+ $scope: directive === newIsolateScopeDirective || directive.$$isolateScope ? isolateScope : scope,
+ $element: $element,
+ $attrs: attrs,
+ $transclude: transcludeFn
+ };
+
+ var controller = directive.controller;
+ if (controller === '@') {
+ controller = attrs[directive.name];
+ }
+
+ var controllerInstance = $controller(controller, locals, true, directive.controllerAs);
+
+ // For directives with element transclusion the element is a comment.
+ // In this case .data will not attach any data.
+ // Instead, we save the controllers for the element in a local hash and attach to .data
+ // later, once we have the actual element.
+ elementControllers[directive.name] = controllerInstance;
+ $element.data('$' + directive.name + 'Controller', controllerInstance.instance);
+ }
+ return elementControllers;
+ }
+
// Depending upon the context in which a directive finds itself it might need to have a new isolated
// or child scope created. For instance:
// * if the directive has been pulled into a template because another directive with a higher priority
@@ -8639,17 +9966,22 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
if (hasDirectives.hasOwnProperty(name)) {
for (var directive, directives = $injector.get(name + Suffix),
i = 0, ii = directives.length; i < ii; i++) {
- try {
- directive = directives[i];
- if ((isUndefined(maxPriority) || maxPriority > directive.priority) &&
- directive.restrict.indexOf(location) != -1) {
- if (startAttrName) {
- directive = inherit(directive, {$$start: startAttrName, $$end: endAttrName});
+ directive = directives[i];
+ if ((isUndefined(maxPriority) || maxPriority > directive.priority) &&
+ directive.restrict.indexOf(location) !== -1) {
+ if (startAttrName) {
+ directive = inherit(directive, {$$start: startAttrName, $$end: endAttrName});
+ }
+ if (!directive.$$bindings) {
+ var bindings = directive.$$bindings =
+ parseDirectiveBindings(directive, directive.name);
+ if (isObject(bindings.isolateScope)) {
+ directive.$$isolateBindings = bindings.isolateScope;
}
- tDirectives.push(directive);
- match = directive;
}
- } catch (e) { $exceptionHandler(e); }
+ tDirectives.push(directive);
+ match = directive;
+ }
}
}
return match;
@@ -8687,14 +10019,17 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
*/
function mergeTemplateAttributes(dst, src) {
var srcAttr = src.$attr,
- dstAttr = dst.$attr,
- $element = dst.$$element;
+ dstAttr = dst.$attr;
// reapply the old attributes to the new element
forEach(dst, function(value, key) {
- if (key.charAt(0) != '$') {
+ if (key.charAt(0) !== '$') {
if (src[key] && src[key] !== value) {
- value += (key === 'style' ? ';' : ' ') + src[key];
+ if (value.length) {
+ value += (key === 'style' ? ';' : ' ') + src[key];
+ } else {
+ value = src[key];
+ }
}
dst.$set(key, value, true, srcAttr[key]);
}
@@ -8702,18 +10037,16 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
// copy the new attributes on the old attrs object
forEach(src, function(value, key) {
- if (key == 'class') {
- safeAddClass($element, value);
- dst['class'] = (dst['class'] ? dst['class'] + ' ' : '') + value;
- } else if (key == 'style') {
- $element.attr('style', $element.attr('style') + ';' + value);
- dst['style'] = (dst['style'] ? dst['style'] + ';' : '') + value;
- // `dst` will never contain hasOwnProperty as DOM parser won't let it.
- // You will get an "InvalidCharacterError: DOM Exception 5" error if you
- // have an attribute like "has-own-property" or "data-has-own-property", etc.
- } else if (key.charAt(0) != '$' && !dst.hasOwnProperty(key)) {
+ // Check if we already set this attribute in the loop above.
+ // `dst` will never contain hasOwnProperty as DOM parser won't let it.
+ // You will get an "InvalidCharacterError: DOM Exception 5" error if you
+ // have an attribute like "has-own-property" or "data-has-own-property", etc.
+ if (!dst.hasOwnProperty(key) && key.charAt(0) !== '$') {
dst[key] = value;
- dstAttr[key] = srcAttr[key];
+
+ if (key !== 'class' && key !== 'style') {
+ dstAttr[key] = srcAttr[key];
+ }
}
});
}
@@ -8750,9 +10083,9 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
}
compileNode = $template[0];
- if ($template.length != 1 || compileNode.nodeType !== NODE_TYPE_ELEMENT) {
+ if ($template.length !== 1 || compileNode.nodeType !== NODE_TYPE_ELEMENT) {
throw $compileMinErr('tplrt',
- "Template for directive '{0}' must have exactly one root element. {1}",
+ 'Template for directive \'{0}\' must have exactly one root element. {1}',
origAsyncDirective.name, templateUrl);
}
@@ -8778,7 +10111,7 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
childTranscludeFn, $compileNode, origAsyncDirective, preLinkFns, postLinkFns,
previousCompileContext);
forEach($rootElement, function(node, i) {
- if (node == compileNode) {
+ if (node === compileNode) {
$rootElement[i] = $compileNode[0];
}
});
@@ -8815,6 +10148,10 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
childBoundTranscludeFn);
}
linkQueue = null;
+ }).catch(function(error) {
+ if (error instanceof Error) {
+ $exceptionHandler(error);
+ }
});
return function delayedNodeLinkFn(ignoreChildLinkFn, scope, node, rootElement, boundTranscludeFn) {
@@ -8893,7 +10230,7 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
switch (type) {
case 'svg':
case 'math':
- var wrapper = document.createElement('div');
+ var wrapper = window.document.createElement('div');
wrapper.innerHTML = '<' + type + '>' + template + '</' + type + '>';
return wrapper.childNodes[0].childNodes;
default:
@@ -8903,36 +10240,49 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
function getTrustedContext(node, attrNormalizedName) {
- if (attrNormalizedName == "srcdoc") {
+ if (attrNormalizedName === 'srcdoc') {
return $sce.HTML;
}
var tag = nodeName_(node);
+ // All tags with src attributes require a RESOURCE_URL value, except for
+ // img and various html5 media tags.
+ if (attrNormalizedName === 'src' || attrNormalizedName === 'ngSrc') {
+ if (['img', 'video', 'audio', 'source', 'track'].indexOf(tag) === -1) {
+ return $sce.RESOURCE_URL;
+ }
// maction[xlink:href] can source SVG. It's not limited to <maction>.
- if (attrNormalizedName == "xlinkHref" ||
- (tag == "form" && attrNormalizedName == "action") ||
- (tag != "img" && (attrNormalizedName == "src" ||
- attrNormalizedName == "ngSrc"))) {
+ } else if (attrNormalizedName === 'xlinkHref' ||
+ (tag === 'form' && attrNormalizedName === 'action') ||
+ // links can be stylesheets or imports, which can run script in the current origin
+ (tag === 'link' && attrNormalizedName === 'href')
+ ) {
return $sce.RESOURCE_URL;
}
}
- function addAttrInterpolateDirective(node, directives, value, name, allOrNothing) {
+ function addAttrInterpolateDirective(node, directives, value, name, isNgAttr) {
var trustedContext = getTrustedContext(node, name);
- allOrNothing = ALL_OR_NOTHING_ATTRS[name] || allOrNothing;
+ var mustHaveExpression = !isNgAttr;
+ var allOrNothing = ALL_OR_NOTHING_ATTRS[name] || isNgAttr;
- var interpolateFn = $interpolate(value, true, trustedContext, allOrNothing);
+ var interpolateFn = $interpolate(value, mustHaveExpression, trustedContext, allOrNothing);
// no interpolation found -> ignore
if (!interpolateFn) return;
-
- if (name === "multiple" && nodeName_(node) === "select") {
- throw $compileMinErr("selmulti",
- "Binding to the 'multiple' attribute is not supported. Element: {0}",
+ if (name === 'multiple' && nodeName_(node) === 'select') {
+ throw $compileMinErr('selmulti',
+ 'Binding to the \'multiple\' attribute is not supported. Element: {0}',
startingTag(node));
}
+ if (EVENT_HANDLER_ATTR_REGEXP.test(name)) {
+ throw $compileMinErr('nodomevents',
+ 'Interpolations for HTML DOM event attributes are disallowed. Please use the ' +
+ 'ng- versions (such as ng-click instead of onclick) instead.');
+ }
+
directives.push({
priority: 100,
compile: function() {
@@ -8940,12 +10290,6 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
pre: function attrInterpolatePreLinkFn(scope, element, attr) {
var $$observers = (attr.$$observers || (attr.$$observers = createMap()));
- if (EVENT_HANDLER_ATTR_REGEXP.test(name)) {
- throw $compileMinErr('nodomevents',
- "Interpolations for HTML DOM event attributes are disallowed. Please use the " +
- "ng- versions (such as ng-click instead of onclick) instead.");
- }
-
// If the attribute has changed since last $interpolate()ed
var newValue = attr[name];
if (newValue !== value) {
@@ -8974,7 +10318,7 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
//skip animations when the first digest occurs (when
//both the new and the old values are the same) since
//the CSS classes are the non-interpolated values
- if (name === 'class' && newValue != oldValue) {
+ if (name === 'class' && newValue !== oldValue) {
attr.$updateClass(newValue, oldValue);
} else {
attr.$set(name, newValue);
@@ -9005,7 +10349,7 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
if ($rootElement) {
for (i = 0, ii = $rootElement.length; i < ii; i++) {
- if ($rootElement[i] == firstElementToRemove) {
+ if ($rootElement[i] === firstElementToRemove) {
$rootElement[i++] = newNode;
for (var j = i, j2 = j + removeCount - 1,
jj = $rootElement.length;
@@ -9037,7 +10381,7 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
// - remove them from the DOM
// - allow them to still be traversed with .nextSibling
// - allow a single fragment.qSA to fetch all elements being removed
- var fragment = document.createDocumentFragment();
+ var fragment = window.document.createDocumentFragment();
for (i = 0; i < removeCount; i++) {
fragment.appendChild(elementsToRemove[i]);
}
@@ -9079,40 +10423,50 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
}
- // Set up $watches for isolate scope and controller bindings. This process
- // only occurs for isolate scopes and new scopes with controllerAs.
+ // Set up $watches for isolate scope and controller bindings.
function initializeDirectiveBindings(scope, attrs, destination, bindings, directive) {
var removeWatchCollection = [];
- forEach(bindings, function(definition, scopeName) {
+ var initialChanges = {};
+ var changes;
+ forEach(bindings, function initializeBinding(definition, scopeName) {
var attrName = definition.attrName,
optional = definition.optional,
- mode = definition.mode, // @, =, or &
+ mode = definition.mode, // @, =, <, or &
lastValue,
- parentGet, parentSet, compare;
+ parentGet, parentSet, compare, removeWatch;
switch (mode) {
case '@':
if (!optional && !hasOwnProperty.call(attrs, attrName)) {
- destination[scopeName] = attrs[attrName] = void 0;
+ destination[scopeName] = attrs[attrName] = undefined;
}
- attrs.$observe(attrName, function(value) {
- if (isString(value)) {
+ removeWatch = attrs.$observe(attrName, function(value) {
+ if (isString(value) || isBoolean(value)) {
+ var oldValue = destination[scopeName];
+ recordChanges(scopeName, value, oldValue);
destination[scopeName] = value;
}
});
attrs.$$observers[attrName].$$scope = scope;
- if (isString(attrs[attrName])) {
+ lastValue = attrs[attrName];
+ if (isString(lastValue)) {
// If the attribute has been provided then we trigger an interpolation to ensure
// the value is there for use in the link fn
- destination[scopeName] = $interpolate(attrs[attrName])(scope);
+ destination[scopeName] = $interpolate(lastValue)(scope);
+ } else if (isBoolean(lastValue)) {
+ // If the attributes is one of the BOOLEAN_ATTR then Angular will have converted
+ // the value to boolean rather than a string, so we special case this situation
+ destination[scopeName] = lastValue;
}
+ initialChanges[scopeName] = new SimpleChange(_UNINITIALIZED_VALUE, destination[scopeName]);
+ removeWatchCollection.push(removeWatch);
break;
case '=':
if (!hasOwnProperty.call(attrs, attrName)) {
if (optional) break;
- attrs[attrName] = void 0;
+ attrs[attrName] = undefined;
}
if (optional && !attrs[attrName]) break;
@@ -9120,14 +10474,15 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
if (parentGet.literal) {
compare = equals;
} else {
- compare = function(a, b) { return a === b || (a !== a && b !== b); };
+ // eslint-disable-next-line no-self-compare
+ compare = function simpleCompare(a, b) { return a === b || (a !== a && b !== b); };
}
parentSet = parentGet.assign || function() {
// reset the change, or we will throw this exception on every $digest
lastValue = destination[scopeName] = parentGet(scope);
throw $compileMinErr('nonassign',
- "Expression '{0}' used with directive '{1}' is non-assignable!",
- attrs[attrName], directive.name);
+ 'Expression \'{0}\' in attribute \'{1}\' used with directive \'{2}\' is non-assignable!',
+ attrs[attrName], attrName, directive.name);
};
lastValue = destination[scopeName] = parentGet(scope);
var parentValueWatch = function parentValueWatch(parentValue) {
@@ -9141,10 +10496,10 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
parentSet(scope, parentValue = destination[scopeName]);
}
}
- return lastValue = parentValue;
+ lastValue = parentValue;
+ return lastValue;
};
parentValueWatch.$stateful = true;
- var removeWatch;
if (definition.collection) {
removeWatch = scope.$watchCollection(attrs[attrName], parentValueWatch);
} else {
@@ -9153,6 +10508,33 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
removeWatchCollection.push(removeWatch);
break;
+ case '<':
+ if (!hasOwnProperty.call(attrs, attrName)) {
+ if (optional) break;
+ attrs[attrName] = undefined;
+ }
+ if (optional && !attrs[attrName]) break;
+
+ parentGet = $parse(attrs[attrName]);
+ var deepWatch = parentGet.literal;
+
+ var initialValue = destination[scopeName] = parentGet(scope);
+ initialChanges[scopeName] = new SimpleChange(_UNINITIALIZED_VALUE, destination[scopeName]);
+
+ removeWatch = scope.$watch(parentGet, function parentValueWatchAction(newValue, oldValue) {
+ if (oldValue === newValue) {
+ if (oldValue === initialValue || (deepWatch && equals(oldValue, initialValue))) {
+ return;
+ }
+ oldValue = initialValue;
+ }
+ recordChanges(scopeName, newValue, oldValue);
+ destination[scopeName] = newValue;
+ }, deepWatch);
+
+ removeWatchCollection.push(removeWatch);
+ break;
+
case '&':
// Don't assign Object.prototype method to scope
parentGet = attrs.hasOwnProperty(attrName) ? $parse(attrs[attrName]) : noop;
@@ -9167,22 +10549,65 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
}
});
- return removeWatchCollection.length && function removeWatches() {
- for (var i = 0, ii = removeWatchCollection.length; i < ii; ++i) {
- removeWatchCollection[i]();
+ function recordChanges(key, currentValue, previousValue) {
+ if (isFunction(destination.$onChanges) && currentValue !== previousValue &&
+ // eslint-disable-next-line no-self-compare
+ (currentValue === currentValue || previousValue === previousValue)) {
+ // If we have not already scheduled the top level onChangesQueue handler then do so now
+ if (!onChangesQueue) {
+ scope.$$postDigest(flushOnChangesQueue);
+ onChangesQueue = [];
+ }
+ // If we have not already queued a trigger of onChanges for this controller then do so now
+ if (!changes) {
+ changes = {};
+ onChangesQueue.push(triggerOnChangesHook);
+ }
+ // If the has been a change on this property already then we need to reuse the previous value
+ if (changes[key]) {
+ previousValue = changes[key].previousValue;
+ }
+ // Store this change
+ changes[key] = new SimpleChange(previousValue, currentValue);
+ }
+ }
+
+ function triggerOnChangesHook() {
+ destination.$onChanges(changes);
+ // Now clear the changes so that we schedule onChanges when more changes arrive
+ changes = undefined;
+ }
+
+ return {
+ initialChanges: initialChanges,
+ removeWatches: removeWatchCollection.length && function removeWatches() {
+ for (var i = 0, ii = removeWatchCollection.length; i < ii; ++i) {
+ removeWatchCollection[i]();
+ }
}
};
}
}];
}
-var PREFIX_REGEXP = /^((?:x|data)[\:\-_])/i;
+function SimpleChange(previous, current) {
+ this.previousValue = previous;
+ this.currentValue = current;
+}
+SimpleChange.prototype.isFirstChange = function() { return this.previousValue === _UNINITIALIZED_VALUE; };
+
+
+var PREFIX_REGEXP = /^((?:x|data)[:\-_])/i;
+var SPECIAL_CHARS_REGEXP = /[:\-_]+(.)/g;
+
/**
* Converts all accepted directives format into proper directive name.
* @param name Name to normalize
*/
function directiveNormalize(name) {
- return camelCase(name.replace(PREFIX_REGEXP, ''));
+ return name
+ .replace(PREFIX_REGEXP, '')
+ .replace(SPECIAL_CHARS_REGEXP, fnCamelCaseReplace);
}
/**
@@ -9254,7 +10679,7 @@ function tokenDifference(str1, str2) {
for (var i = 0; i < tokens1.length; i++) {
var token = tokens1[i];
for (var j = 0; j < tokens2.length; j++) {
- if (token == tokens2[j]) continue outer;
+ if (token === tokens2[j]) continue outer;
}
values += (values.length > 0 ? ' ' : '') + token;
}
@@ -9271,8 +10696,9 @@ function removeComments(jqNodes) {
while (i--) {
var node = jqNodes[i];
- if (node.nodeType === NODE_TYPE_COMMENT) {
- splice.call(jqNodes, i, 1);
+ if (node.nodeType === NODE_TYPE_COMMENT ||
+ (node.nodeType === NODE_TYPE_TEXT && node.nodeValue.trim() === '')) {
+ splice.call(jqNodes, i, 1);
}
}
return jqNodes;
@@ -9281,7 +10707,7 @@ function removeComments(jqNodes) {
var $controllerMinErr = minErr('$controller');
-var CNTRL_REG = /^(\S+)(\s+as\s+(\w+))?$/;
+var CNTRL_REG = /^(\S+)(\s+as\s+([\w$]+))?$/;
function identifierForController(controller, ident) {
if (ident && isString(ident)) return ident;
if (isString(controller)) {
@@ -9294,6 +10720,8 @@ function identifierForController(controller, ident) {
/**
* @ngdoc provider
* @name $controllerProvider
+ * @this
+ *
* @description
* The {@link ng.$controller $controller service} is used by Angular to create new
* controllers.
@@ -9307,6 +10735,15 @@ function $ControllerProvider() {
/**
* @ngdoc method
+ * @name $controllerProvider#has
+ * @param {string} name Controller name to check.
+ */
+ this.has = function(name) {
+ return controllers.hasOwnProperty(name);
+ };
+
+ /**
+ * @ngdoc method
* @name $controllerProvider#register
* @param {string|Object} name Controller name, or an object map of controllers where the keys are
* the names and the values are the constructors.
@@ -9326,6 +10763,11 @@ function $ControllerProvider() {
* @ngdoc method
* @name $controllerProvider#allowGlobals
* @description If called, allows `$controller` to find controller constructors on `window`
+ *
+ * @deprecated
+ * sinceVersion="v1.3.0"
+ * removeVersion="v1.7.0"
+ * This method of finding controllers has been deprecated.
*/
this.allowGlobals = function() {
globals = true;
@@ -9346,7 +10788,7 @@ function $ControllerProvider() {
* * check if a controller with given name is registered via `$controllerProvider`
* * check if evaluating the string on the current scope returns a constructor
* * if $controllerProvider#allowGlobals, check `window[constructor]` on the global
- * `window` object (not recommended)
+ * `window` object (deprecated, not recommended)
*
* The string can use the `controller as property` syntax, where the controller instance is published
* as the specified property on the `scope`; the `scope` must be injected into `locals` param for this
@@ -9361,7 +10803,7 @@ function $ControllerProvider() {
* It's just a simple call to {@link auto.$injector $injector}, but extracted into
* a service, so that one can override this service with [BC version](https://gist.github.com/1649788).
*/
- return function(expression, locals, later, ident) {
+ return function $controller(expression, locals, later, ident) {
// PRIVATE API:
// param `later` --- indicates that the controller's constructor is invoked at a later time.
// If true, $controller will allocate the object with the correct
@@ -9379,16 +10821,21 @@ function $ControllerProvider() {
match = expression.match(CNTRL_REG);
if (!match) {
throw $controllerMinErr('ctrlfmt',
- "Badly formed controller string '{0}'. " +
- "Must match `__name__ as __id__` or `__name__`.", expression);
+ 'Badly formed controller string \'{0}\'. ' +
+ 'Must match `__name__ as __id__` or `__name__`.', expression);
}
- constructor = match[1],
+ constructor = match[1];
identifier = identifier || match[3];
expression = controllers.hasOwnProperty(constructor)
? controllers[constructor]
: getter(locals.$scope, constructor, true) ||
(globals ? getter($window, constructor, true) : undefined);
+ if (!expression) {
+ throw $controllerMinErr('ctrlreg',
+ 'The controller with the name \'{0}\' is not registered.', constructor);
+ }
+
assertArgFn(expression, constructor, true);
}
@@ -9411,8 +10858,7 @@ function $ControllerProvider() {
addIdentifier(locals, identifier, instance, constructor || expression.name);
}
- var instantiate;
- return instantiate = extend(function() {
+ return extend(function $controllerInit() {
var result = $injector.invoke(expression, instance, locals, constructor);
if (result !== instance && (isObject(result) || isFunction(result))) {
instance = result;
@@ -9440,7 +10886,7 @@ function $ControllerProvider() {
function addIdentifier(locals, identifier, instance, name) {
if (!(locals && isObject(locals.$scope))) {
throw minErr('$controller')('noscp',
- "Cannot export controller '{0}' as '{1}'! No $scope object provided via `locals`.",
+ 'Cannot export controller \'{0}\' as \'{1}\'! No $scope object provided via `locals`.',
name, identifier);
}
@@ -9453,12 +10899,13 @@ function $ControllerProvider() {
* @ngdoc service
* @name $document
* @requires $window
+ * @this
*
* @description
* A {@link angular.element jQuery or jqLite} wrapper for the browser's `window.document` object.
*
* @example
- <example module="documentExample">
+ <example module="documentExample" name="document">
<file name="index.html">
<div ng-controller="ExampleController">
<p>$document title: <b ng-bind="title"></b></p>
@@ -9480,10 +10927,38 @@ function $DocumentProvider() {
}];
}
+
+/**
+ * @private
+ * @this
+ * Listens for document visibility change and makes the current status accessible.
+ */
+function $$IsDocumentHiddenProvider() {
+ this.$get = ['$document', '$rootScope', function($document, $rootScope) {
+ var doc = $document[0];
+ var hidden = doc && doc.hidden;
+
+ $document.on('visibilitychange', changeListener);
+
+ $rootScope.$on('$destroy', function() {
+ $document.off('visibilitychange', changeListener);
+ });
+
+ function changeListener() {
+ hidden = doc.hidden;
+ }
+
+ return function() {
+ return hidden;
+ };
+ }];
+}
+
/**
* @ngdoc service
* @name $exceptionHandler
* @requires ng.$log
+ * @this
*
* @description
* Any uncaught exception in angular expressions is delegated to this service.
@@ -9495,18 +10970,21 @@ function $DocumentProvider() {
*
* ## Example:
*
+ * The example below will overwrite the default `$exceptionHandler` in order to (a) log uncaught
+ * errors to the backend for later inspection by the developers and (b) to use `$log.warn()` instead
+ * of `$log.error()`.
+ *
* ```js
- * angular.module('exceptionOverride', []).factory('$exceptionHandler', function() {
- * return function(exception, cause) {
- * exception.message += ' (caused by "' + cause + '")';
- * throw exception;
- * };
- * });
+ * angular.
+ * module('exceptionOverwrite', []).
+ * factory('$exceptionHandler', ['$log', 'logErrorsToBackend', function($log, logErrorsToBackend) {
+ * return function myExceptionHandler(exception, cause) {
+ * logErrorsToBackend(exception, cause);
+ * $log.warn(exception, cause);
+ * };
+ * }]);
* ```
*
- * This example will override the normal action of `$exceptionHandler`, to make angular
- * exceptions fail hard when they happen, instead of just logging to the console.
- *
* <hr />
* Note, that code executed in event-listeners (even those registered using jqLite's `on`/`bind`
* methods) does not delegate exceptions to the {@link ng.$exceptionHandler $exceptionHandler}
@@ -9516,7 +10994,7 @@ function $DocumentProvider() {
* `try { ... } catch(e) { $exceptionHandler(e); }`
*
* @param {Error} exception Exception associated with the error.
- * @param {string=} cause optional information about the context in which
+ * @param {string=} cause Optional information about the context in which
* the error was thrown.
*
*/
@@ -9528,7 +11006,7 @@ function $ExceptionHandlerProvider() {
}];
}
-var $$ForceReflowProvider = function() {
+var $$ForceReflowProvider = /** @this */ function() {
this.$get = ['$document', function($document) {
return function(domNode) {
//the line below will force the browser to perform a repaint so
@@ -9558,13 +11036,8 @@ var JSON_ENDS = {
'[': /]$/,
'{': /}$/
};
-var JSON_PROTECTION_PREFIX = /^\)\]\}',?\n/;
+var JSON_PROTECTION_PREFIX = /^\)]\}',?\n/;
var $httpMinErr = minErr('$http');
-var $httpMinErrLegacyFn = function(method) {
- return function() {
- throw $httpMinErr('legacy', 'The method `{0}` on the promise returned from `$http` has been disabled.', method);
- };
-};
function serializeValue(v) {
if (isObject(v)) {
@@ -9574,6 +11047,7 @@ function serializeValue(v) {
}
+/** @this */
function $HttpParamSerializerProvider() {
/**
* @ngdoc service
@@ -9586,7 +11060,7 @@ function $HttpParamSerializerProvider() {
* * `{'foo': 'bar'}` results in `foo=bar`
* * `{'foo': Date.now()}` results in `foo=2015-04-01T09%3A50%3A49.262Z` (`toISOString()` and encoded representation of a Date object)
* * `{'foo': ['bar', 'baz']}` results in `foo=bar&foo=baz` (repeated key for each array element)
- * * `{'foo': {'bar':'baz'}}` results in `foo=%7B%22bar%22%3A%22baz%22%7D"` (stringified and encoded representation of an object)
+ * * `{'foo': {'bar':'baz'}}` results in `foo=%7B%22bar%22%3A%22baz%22%7D` (stringified and encoded representation of an object)
*
* Note that serializer will sort the request parameters alphabetically.
* */
@@ -9598,7 +11072,7 @@ function $HttpParamSerializerProvider() {
forEachSorted(params, function(value, key) {
if (value === null || isUndefined(value)) return;
if (isArray(value)) {
- forEach(value, function(v, k) {
+ forEach(value, function(v) {
parts.push(encodeUriQuery(key) + '=' + encodeUriQuery(serializeValue(v)));
});
} else {
@@ -9611,10 +11085,12 @@ function $HttpParamSerializerProvider() {
};
}
+/** @this */
function $HttpParamSerializerJQLikeProvider() {
/**
* @ngdoc service
* @name $httpParamSerializerJQLike
+ *
* @description
*
* Alternative {@link $http `$http`} params serializer that follows
@@ -9743,7 +11219,7 @@ function parseHeaders(headers) {
* @param {(string|Object)} headers Headers to provide access to.
* @returns {function(string=)} Returns a getter function which if called with:
*
- * - if called with single an argument returns a single header value or null
+ * - if called with an argument returns a single header value or null
* - if called with no arguments returns an object containing all headers.
*/
function headersGetter(headers) {
@@ -9754,7 +11230,7 @@ function headersGetter(headers) {
if (name) {
var value = headersObj[lowercase(name)];
- if (value === void 0) {
+ if (value === undefined) {
value = null;
}
return value;
@@ -9797,6 +11273,8 @@ function isSuccess(status) {
/**
* @ngdoc provider
* @name $httpProvider
+ * @this
+ *
* @description
* Use `$httpProvider` to change the default behavior of the {@link ng.$http $http} service.
* */
@@ -9808,10 +11286,9 @@ function $HttpProvider() {
*
* Object containing default values for all {@link ng.$http $http} requests.
*
- * - **`defaults.cache`** - {Object} - an object built with {@link ng.$cacheFactory `$cacheFactory`}
- * that will provide the cache for all requests who set their `cache` property to `true`.
- * If you set the `defaults.cache = false` then only requests that specify their own custom
- * cache object will be cached. See {@link $http#caching $http Caching} for more information.
+ * - **`defaults.cache`** - {boolean|Object} - A boolean value or object created with
+ * {@link ng.$cacheFactory `$cacheFactory`} to enable or disable caching of HTTP responses
+ * by default. See {@link $http#caching $http Caching} for more information.
*
* - **`defaults.xsrfCookieName`** - {string} - Name of cookie containing the XSRF token.
* Defaults value is `'XSRF-TOKEN'`.
@@ -9833,6 +11310,10 @@ function $HttpProvider() {
* If specified as string, it is interpreted as a function registered with the {@link auto.$injector $injector}.
* Defaults to {@link ng.$httpParamSerializer $httpParamSerializer}.
*
+ * - **`defaults.jsonpCallbackParam`** - `{string}` - the name of the query parameter that passes the name of the
+ * callback in a JSONP request. The value of this parameter will be replaced with the expression generated by the
+ * {@link $jsonpCallbacks} service. Defaults to `'callback'`.
+ *
**/
var defaults = this.defaults = {
// transform incoming response data
@@ -9856,7 +11337,9 @@ function $HttpProvider() {
xsrfCookieName: 'XSRF-TOKEN',
xsrfHeaderName: 'X-XSRF-TOKEN',
- paramSerializer: '$httpParamSerializer'
+ paramSerializer: '$httpParamSerializer',
+
+ jsonpCallbackParam: 'callback'
};
var useApplyAsync = false;
@@ -9887,30 +11370,6 @@ function $HttpProvider() {
return useApplyAsync;
};
- var useLegacyPromise = true;
- /**
- * @ngdoc method
- * @name $httpProvider#useLegacyPromiseExtensions
- * @description
- *
- * Configure `$http` service to return promises without the shorthand methods `success` and `error`.
- * This should be used to make sure that applications work without these methods.
- *
- * Defaults to true. If no value is specified, returns the current configured value.
- *
- * @param {boolean=} value If true, `$http` will return a promise with the deprecated legacy `success` and `error` methods.
- *
- * @returns {boolean|Object} If a value is specified, returns the $httpProvider for chaining.
- * otherwise, returns the current configured value.
- **/
- this.useLegacyPromiseExtensions = function(value) {
- if (isDefined(value)) {
- useLegacyPromise = !!value;
- return this;
- }
- return useLegacyPromise;
- };
-
/**
* @ngdoc property
* @name $httpProvider#interceptors
@@ -9926,8 +11385,8 @@ function $HttpProvider() {
**/
var interceptorFactories = this.interceptors = [];
- this.$get = ['$httpBackend', '$$cookieReader', '$cacheFactory', '$rootScope', '$q', '$injector',
- function($httpBackend, $$cookieReader, $cacheFactory, $rootScope, $q, $injector) {
+ this.$get = ['$browser', '$httpBackend', '$$cookieReader', '$cacheFactory', '$rootScope', '$q', '$injector', '$sce',
+ function($browser, $httpBackend, $$cookieReader, $cacheFactory, $rootScope, $q, $injector, $sce) {
var defaultCache = $cacheFactory('$http');
@@ -10002,10 +11461,13 @@ function $HttpProvider() {
* - **config** – `{Object}` – The configuration object that was used to generate the request.
* - **statusText** – `{string}` – HTTP status text of the response.
*
- * A response status code between 200 and 299 is considered a success status and
- * will result in the success callback being called. Note that if the response is a redirect,
- * XMLHttpRequest will transparently follow it, meaning that the error callback will not be
- * called for such responses.
+ * A response status code between 200 and 299 is considered a success status and will result in
+ * the success callback being called. Any response status code outside of that range is
+ * considered an error status and will result in the error callback being called.
+ * Also, status codes less than -1 are normalized to zero. -1 usually means the request was
+ * aborted, e.g. using a `config.timeout`.
+ * Note that if the response is a redirect, XMLHttpRequest will transparently follow it, meaning
+ * that the outcome (success or error) will be determined by the final response status code.
*
*
* ## Shortcut methods
@@ -10041,14 +11503,6 @@ function $HttpProvider() {
* $httpBackend.flush();
* ```
*
- * ## Deprecation Notice
- * <div class="alert alert-danger">
- * The `$http` legacy promise methods `success` and `error` have been deprecated.
- * Use the standard `then` method instead.
- * If {@link $httpProvider#useLegacyPromiseExtensions `$httpProvider.useLegacyPromiseExtensions`} is set to
- * `false` then these methods will throw {@link $http:legacy `$http/legacy`} error.
- * </div>
- *
* ## Setting HTTP Headers
*
* The $http service will automatically add certain HTTP headers to all requests. These defaults
@@ -10056,7 +11510,7 @@ function $HttpProvider() {
* object, which currently contains this default configuration:
*
* - `$httpProvider.defaults.headers.common` (headers that are common for all requests):
- * - `Accept: application/json, text/plain, * / *`
+ * - <code>Accept: application/json, text/plain, \*&#65279;/&#65279;\*</code>
* - `$httpProvider.defaults.headers.post`: (header defaults for POST requests)
* - `Content-Type: application/json`
* - `$httpProvider.defaults.headers.put` (header defaults for PUT requests)
@@ -10102,6 +11556,15 @@ function $HttpProvider() {
* the transformed value (`function(data, headersGetter, status)`) or an array of such transformation functions,
* which allows you to `push` or `unshift` a new transformation function into the transformation chain.
*
+ * <div class="alert alert-warning">
+ * **Note:** Angular does not make a copy of the `data` parameter before it is passed into the `transformRequest` pipeline.
+ * That means changes to the properties of `data` are not local to the transform function (since Javascript passes objects by reference).
+ * For example, when calling `$http.get(url, $scope.myObject)`, modifications to the object's properties in a transformRequest
+ * function will be reflected on the scope and in any templates where the object is data-bound.
+ * To prevent this, transform functions should have no side-effects.
+ * If you need to modify properties, it is recommended to make a copy of the data, or create new object to return.
+ * </div>
+ *
* ### Default Transformations
*
* The `$httpProvider` provider and `$http` service expose `defaults.transformRequest` and
@@ -10126,7 +11589,7 @@ function $HttpProvider() {
*
* ### Overriding the Default Transformations Per Request
*
- * If you wish override the request/response transformations only for a single request then provide
+ * If you wish to override the request/response transformations only for a single request then provide
* `transformRequest` and/or `transformResponse` properties on the configuration object passed
* into `$http`.
*
@@ -10159,26 +11622,35 @@ function $HttpProvider() {
*
* ## Caching
*
- * To enable caching, set the request configuration `cache` property to `true` (to use default
- * cache) or to a custom cache object (built with {@link ng.$cacheFactory `$cacheFactory`}).
- * When the cache is enabled, `$http` stores the response from the server in the specified
- * cache. The next time the same request is made, the response is served from the cache without
- * sending a request to the server.
+ * {@link ng.$http `$http`} responses are not cached by default. To enable caching, you must
+ * set the config.cache value or the default cache value to TRUE or to a cache object (created
+ * with {@link ng.$cacheFactory `$cacheFactory`}). If defined, the value of config.cache takes
+ * precedence over the default cache value.
+ *
+ * In order to:
+ * * cache all responses - set the default cache value to TRUE or to a cache object
+ * * cache a specific response - set config.cache value to TRUE or to a cache object
*
- * Note that even if the response is served from cache, delivery of the data is asynchronous in
- * the same way that real requests are.
+ * If caching is enabled, but neither the default cache nor config.cache are set to a cache object,
+ * then the default `$cacheFactory("$http")` object is used.
*
- * If there are multiple GET requests for the same URL that should be cached using the same
- * cache, but the cache is not populated yet, only one request to the server will be made and
- * the remaining requests will be fulfilled using the response from the first request.
+ * The default cache value can be set by updating the
+ * {@link ng.$http#defaults `$http.defaults.cache`} property or the
+ * {@link $httpProvider#defaults `$httpProvider.defaults.cache`} property.
*
- * You can change the default cache to a new object (built with
- * {@link ng.$cacheFactory `$cacheFactory`}) by updating the
- * {@link ng.$http#defaults `$http.defaults.cache`} property. All requests who set
- * their `cache` property to `true` will now use this cache object.
+ * When caching is enabled, {@link ng.$http `$http`} stores the response from the server using
+ * the relevant cache object. The next time the same request is made, the response is returned
+ * from the cache without sending a request to the server.
+ *
+ * Take note that:
+ *
+ * * Only GET and JSONP requests are cached.
+ * * The cache key is the request URL including search parameters; headers are not considered.
+ * * Cached responses are returned asynchronously, in the same way as responses from the server.
+ * * If multiple identical requests are made using the same cache, which is not yet populated,
+ * one request will be made to the server and remaining requests will return the same response.
+ * * A cache-control header on the response does not affect if or how responses are cached.
*
- * If you set the default cache to `false` then only requests that specify their own custom
- * cache object will be cached.
*
* ## Interceptors
*
@@ -10300,13 +11772,13 @@ function $HttpProvider() {
*
* ### Cross Site Request Forgery (XSRF) Protection
*
- * [XSRF](http://en.wikipedia.org/wiki/Cross-site_request_forgery) is a technique by which
- * an unauthorized site can gain your user's private data. Angular provides a mechanism
- * to counter XSRF. When performing XHR requests, the $http service reads a token from a cookie
- * (by default, `XSRF-TOKEN`) and sets it as an HTTP header (`X-XSRF-TOKEN`). Since only
- * JavaScript that runs on your domain could read the cookie, your server can be assured that
- * the XHR came from JavaScript running on your domain. The header will not be set for
- * cross-domain requests.
+ * [XSRF](http://en.wikipedia.org/wiki/Cross-site_request_forgery) is an attack technique by
+ * which the attacker can trick an authenticated user into unknowingly executing actions on your
+ * website. Angular provides a mechanism to counter XSRF. When performing XHR requests, the
+ * $http service reads a token from a cookie (by default, `XSRF-TOKEN`) and sets it as an HTTP
+ * header (`X-XSRF-TOKEN`). Since only JavaScript that runs on your domain could read the
+ * cookie, your server can be assured that the XHR came from JavaScript running on your domain.
+ * The header will not be set for cross-domain requests.
*
* To take advantage of this, your server needs to set a token in a JavaScript readable session
* cookie called `XSRF-TOKEN` on the first HTTP GET request. On subsequent XHR requests the
@@ -10328,13 +11800,20 @@ function $HttpProvider() {
* processed. The object has following properties:
*
* - **method** – `{string}` – HTTP method (e.g. 'GET', 'POST', etc)
- * - **url** – `{string}` – Absolute or relative URL of the resource that is being requested.
+ * - **url** – `{string|TrustedObject}` – Absolute or relative URL of the resource that is being requested;
+ * or an object created by a call to `$sce.trustAsResourceUrl(url)`.
* - **params** – `{Object.<string|Object>}` – Map of strings or objects which will be serialized
* with the `paramSerializer` and appended as GET parameters.
* - **data** – `{string|Object}` – Data to be sent as the request message data.
* - **headers** – `{Object}` – Map of strings or functions which return strings representing
* HTTP headers to send to the server. If the return value of a function is null, the
* header will not be sent. Functions accept a config object as an argument.
+ * - **eventHandlers** - `{Object}` - Event listeners to be bound to the XMLHttpRequest object.
+ * To bind events to the XMLHttpRequest upload object, use `uploadEventHandlers`.
+ * The handler will be called in the context of a `$apply` block.
+ * - **uploadEventHandlers** - `{Object}` - Event listeners to be bound to the XMLHttpRequest upload
+ * object. To bind events to the XMLHttpRequest object, use `eventHandlers`.
+ * The handler will be called in the context of a `$apply` block.
* - **xsrfHeaderName** – `{string}` – Name of HTTP header to populate with the XSRF token.
* - **xsrfCookieName** – `{string}` – Name of cookie containing the XSRF token.
* - **transformRequest** –
@@ -10348,7 +11827,7 @@ function $HttpProvider() {
* transform function or an array of such functions. The transform function takes the http
* response body, headers and status and returns its transformed (typically deserialized) version.
* See {@link ng.$http#overriding-the-default-transformations-per-request
- * Overriding the Default TransformationjqLiks}
+ * Overriding the Default Transformations}
* - **paramSerializer** - `{string|function(Object<string,string>):string}` - A function used to
* prepare the string representation of request parameters (specified as an object).
* If specified as string, it is interpreted as function registered with the
@@ -10356,10 +11835,9 @@ function $HttpProvider() {
* by registering it as a {@link auto.$provide#service service}.
* The default serializer is the {@link $httpParamSerializer $httpParamSerializer};
* alternatively, you can use the {@link $httpParamSerializerJQLike $httpParamSerializerJQLike}
- * - **cache** – `{boolean|Cache}` – If true, a default $http cache will be used to cache the
- * GET request, otherwise if a cache instance built with
- * {@link ng.$cacheFactory $cacheFactory}, this cache will be used for
- * caching.
+ * - **cache** – `{boolean|Object}` – A boolean value or object created with
+ * {@link ng.$cacheFactory `$cacheFactory`} to enable or disable caching of the HTTP response.
+ * See {@link $http#caching $http Caching} for more information.
* - **timeout** – `{number|Promise}` – timeout in milliseconds, or {@link ng.$q promise}
* that should abort the request when resolved.
* - **withCredentials** - `{boolean}` - whether to set the `withCredentials` flag on the
@@ -10377,7 +11855,7 @@ function $HttpProvider() {
*
*
* @example
-<example module="httpExample">
+<example module="httpExample" name="http-service">
<file name="index.html">
<div ng-controller="FetchController">
<select ng-model="method" aria-label="Request method">
@@ -10389,11 +11867,11 @@ function $HttpProvider() {
<button id="samplegetbtn" ng-click="updateModel('GET', 'http-hello.html')">Sample GET</button>
<button id="samplejsonpbtn"
ng-click="updateModel('JSONP',
- 'https://angularjs.org/greet.php?callback=JSON_CALLBACK&name=Super%20Hero')">
+ 'https://angularjs.org/greet.php?name=Super%20Hero')">
Sample JSONP
</button>
<button id="invalidjsonpbtn"
- ng-click="updateModel('JSONP', 'https://angularjs.org/doesntexist&callback=JSON_CALLBACK')">
+ ng-click="updateModel('JSONP', 'https://angularjs.org/doesntexist')">
Invalid JSONP
</button>
<pre>http status code: {{status}}</pre>
@@ -10402,6 +11880,13 @@ function $HttpProvider() {
</file>
<file name="script.js">
angular.module('httpExample', [])
+ .config(['$sceDelegateProvider', function($sceDelegateProvider) {
+ // We must whitelist the JSONP endpoint that we are using to show that we trust it
+ $sceDelegateProvider.resourceUrlWhitelist([
+ 'self',
+ 'https://angularjs.org/**'
+ ]);
+ }])
.controller('FetchController', ['$scope', '$http', '$templateCache',
function($scope, $http, $templateCache) {
$scope.method = 'GET';
@@ -10416,7 +11901,7 @@ function $HttpProvider() {
$scope.status = response.status;
$scope.data = response.data;
}, function(response) {
- $scope.data = response.data || "Request failed";
+ $scope.data = response.data || 'Request failed';
$scope.status = response.status;
});
};
@@ -10435,7 +11920,6 @@ function $HttpProvider() {
var data = element(by.binding('data'));
var fetchBtn = element(by.id('fetchbtn'));
var sampleGetBtn = element(by.id('samplegetbtn'));
- var sampleJsonpBtn = element(by.id('samplejsonpbtn'));
var invalidJsonpBtn = element(by.id('invalidjsonpbtn'));
it('should make an xhr GET request', function() {
@@ -10447,6 +11931,7 @@ function $HttpProvider() {
// Commented out due to flakes. See https://github.com/angular/angular.js/issues/9185
// it('should make a JSONP request to angularjs.org', function() {
+// var sampleJsonpBtn = element(by.id('samplejsonpbtn'));
// sampleJsonpBtn.click();
// fetchBtn.click();
// expect(status.getText()).toMatch('200');
@@ -10469,92 +11954,62 @@ function $HttpProvider() {
throw minErr('$http')('badreq', 'Http request configuration must be an object. Received: {0}', requestConfig);
}
+ if (!isString($sce.valueOf(requestConfig.url))) {
+ throw minErr('$http')('badreq', 'Http request configuration url must be a string or a $sce trusted object. Received: {0}', requestConfig.url);
+ }
+
var config = extend({
method: 'get',
transformRequest: defaults.transformRequest,
transformResponse: defaults.transformResponse,
- paramSerializer: defaults.paramSerializer
+ paramSerializer: defaults.paramSerializer,
+ jsonpCallbackParam: defaults.jsonpCallbackParam
}, requestConfig);
config.headers = mergeHeaders(requestConfig);
config.method = uppercase(config.method);
config.paramSerializer = isString(config.paramSerializer) ?
- $injector.get(config.paramSerializer) : config.paramSerializer;
+ $injector.get(config.paramSerializer) : config.paramSerializer;
- var serverRequest = function(config) {
- var headers = config.headers;
- var reqData = transformData(config.data, headersGetter(headers), undefined, config.transformRequest);
+ $browser.$$incOutstandingRequestCount();
- // strip content-type if data is undefined
- if (isUndefined(reqData)) {
- forEach(headers, function(value, header) {
- if (lowercase(header) === 'content-type') {
- delete headers[header];
- }
- });
- }
-
- if (isUndefined(config.withCredentials) && !isUndefined(defaults.withCredentials)) {
- config.withCredentials = defaults.withCredentials;
- }
-
- // send request
- return sendReq(config, reqData).then(transformResponse, transformResponse);
- };
-
- var chain = [serverRequest, undefined];
- var promise = $q.when(config);
+ var requestInterceptors = [];
+ var responseInterceptors = [];
+ var promise = $q.resolve(config);
// apply interceptors
forEach(reversedInterceptors, function(interceptor) {
if (interceptor.request || interceptor.requestError) {
- chain.unshift(interceptor.request, interceptor.requestError);
+ requestInterceptors.unshift(interceptor.request, interceptor.requestError);
}
if (interceptor.response || interceptor.responseError) {
- chain.push(interceptor.response, interceptor.responseError);
+ responseInterceptors.push(interceptor.response, interceptor.responseError);
}
});
- while (chain.length) {
- var thenFn = chain.shift();
- var rejectFn = chain.shift();
+ promise = chainInterceptors(promise, requestInterceptors);
+ promise = promise.then(serverRequest);
+ promise = chainInterceptors(promise, responseInterceptors);
+ promise = promise.finally(completeOutstandingRequest);
- promise = promise.then(thenFn, rejectFn);
- }
+ return promise;
- if (useLegacyPromise) {
- promise.success = function(fn) {
- assertArgFn(fn, 'fn');
- promise.then(function(response) {
- fn(response.data, response.status, response.headers, config);
- });
- return promise;
- };
+ function chainInterceptors(promise, interceptors) {
+ for (var i = 0, ii = interceptors.length; i < ii;) {
+ var thenFn = interceptors[i++];
+ var rejectFn = interceptors[i++];
- promise.error = function(fn) {
- assertArgFn(fn, 'fn');
+ promise = promise.then(thenFn, rejectFn);
+ }
- promise.then(null, function(response) {
- fn(response.data, response.status, response.headers, config);
- });
- return promise;
- };
- } else {
- promise.success = $httpMinErrLegacyFn('success');
- promise.error = $httpMinErrLegacyFn('error');
- }
+ interceptors.length = 0;
- return promise;
+ return promise;
+ }
- function transformResponse(response) {
- // make a copy since the response must be cacheable
- var resp = extend({}, response);
- resp.data = transformData(response.data, response.headers, response.status,
- config.transformResponse);
- return (isSuccess(response.status))
- ? resp
- : $q.reject(resp);
+ function completeOutstandingRequest() {
+ $browser.$$completeOutstandingRequest(noop);
}
function executeHeaderFns(headers, config) {
@@ -10581,7 +12036,7 @@ function $HttpProvider() {
defHeaders = extend({}, defHeaders.common, defHeaders[lowercase(config.method)]);
- // using for-in instead of forEach to avoid unecessary iteration after header has been found
+ // using for-in instead of forEach to avoid unnecessary iteration after header has been found
defaultHeadersIteration:
for (defHeaderName in defHeaders) {
lowercaseDefHeaderName = lowercase(defHeaderName);
@@ -10598,6 +12053,37 @@ function $HttpProvider() {
// execute if header value is a function for merged headers
return executeHeaderFns(reqHeaders, shallowCopy(config));
}
+
+ function serverRequest(config) {
+ var headers = config.headers;
+ var reqData = transformData(config.data, headersGetter(headers), undefined, config.transformRequest);
+
+ // strip content-type if data is undefined
+ if (isUndefined(reqData)) {
+ forEach(headers, function(value, header) {
+ if (lowercase(header) === 'content-type') {
+ delete headers[header];
+ }
+ });
+ }
+
+ if (isUndefined(config.withCredentials) && !isUndefined(defaults.withCredentials)) {
+ config.withCredentials = defaults.withCredentials;
+ }
+
+ // send request
+ return sendReq(config, reqData).then(transformResponse, transformResponse);
+ }
+
+ function transformResponse(response) {
+ // make a copy since the response must be cacheable
+ var resp = extend({}, response);
+ resp.data = transformData(response.data, response.headers, response.status,
+ config.transformResponse);
+ return (isSuccess(response.status))
+ ? resp
+ : $q.reject(resp);
+ }
}
$http.pendingRequests = [];
@@ -10609,7 +12095,8 @@ function $HttpProvider() {
* @description
* Shortcut method to perform `GET` request.
*
- * @param {string} url Relative or absolute URL specifying the destination of the request
+ * @param {string|TrustedObject} url Absolute or relative URL of the resource that is being requested;
+ * or an object created by a call to `$sce.trustAsResourceUrl(url)`.
* @param {Object=} config Optional configuration object
* @returns {HttpPromise} Future object
*/
@@ -10621,7 +12108,8 @@ function $HttpProvider() {
* @description
* Shortcut method to perform `DELETE` request.
*
- * @param {string} url Relative or absolute URL specifying the destination of the request
+ * @param {string|TrustedObject} url Absolute or relative URL of the resource that is being requested;
+ * or an object created by a call to `$sce.trustAsResourceUrl(url)`.
* @param {Object=} config Optional configuration object
* @returns {HttpPromise} Future object
*/
@@ -10633,7 +12121,8 @@ function $HttpProvider() {
* @description
* Shortcut method to perform `HEAD` request.
*
- * @param {string} url Relative or absolute URL specifying the destination of the request
+ * @param {string|TrustedObject} url Absolute or relative URL of the resource that is being requested;
+ * or an object created by a call to `$sce.trustAsResourceUrl(url)`.
* @param {Object=} config Optional configuration object
* @returns {HttpPromise} Future object
*/
@@ -10645,8 +12134,33 @@ function $HttpProvider() {
* @description
* Shortcut method to perform `JSONP` request.
*
- * @param {string} url Relative or absolute URL specifying the destination of the request.
- * The name of the callback should be the string `JSON_CALLBACK`.
+ * Note that, since JSONP requests are sensitive because the response is given full access to the browser,
+ * the url must be declared, via {@link $sce} as a trusted resource URL.
+ * You can trust a URL by adding it to the whitelist via
+ * {@link $sceDelegateProvider#resourceUrlWhitelist `$sceDelegateProvider.resourceUrlWhitelist`} or
+ * by explicitly trusting the URL via {@link $sce#trustAsResourceUrl `$sce.trustAsResourceUrl(url)`}.
+ *
+ * JSONP requests must specify a callback to be used in the response from the server. This callback
+ * is passed as a query parameter in the request. You must specify the name of this parameter by
+ * setting the `jsonpCallbackParam` property on the request config object.
+ *
+ * ```
+ * $http.jsonp('some/trusted/url', {jsonpCallbackParam: 'callback'})
+ * ```
+ *
+ * You can also specify a default callback parameter name in `$http.defaults.jsonpCallbackParam`.
+ * Initially this is set to `'callback'`.
+ *
+ * <div class="alert alert-danger">
+ * You can no longer use the `JSON_CALLBACK` string as a placeholder for specifying where the callback
+ * parameter value should go.
+ * </div>
+ *
+ * If you would like to customise where and how the callbacks are stored then try overriding
+ * or decorating the {@link $jsonpCallbacks} service.
+ *
+ * @param {string|TrustedObject} url Absolute or relative URL of the resource that is being requested;
+ * or an object created by a call to `$sce.trustAsResourceUrl(url)`.
* @param {Object=} config Optional configuration object
* @returns {HttpPromise} Future object
*/
@@ -10745,16 +12259,33 @@ function $HttpProvider() {
cache,
cachedResp,
reqHeaders = config.headers,
- url = buildUrl(config.url, config.paramSerializer(config.params));
+ isJsonp = lowercase(config.method) === 'jsonp',
+ url = config.url;
+
+ if (isJsonp) {
+ // JSONP is a pretty sensitive operation where we're allowing a script to have full access to
+ // our DOM and JS space. So we require that the URL satisfies SCE.RESOURCE_URL.
+ url = $sce.getTrustedResourceUrl(url);
+ } else if (!isString(url)) {
+ // If it is not a string then the URL must be a $sce trusted object
+ url = $sce.valueOf(url);
+ }
+
+ url = buildUrl(url, config.paramSerializer(config.params));
+
+ if (isJsonp) {
+ // Check the url and add the JSONP callback placeholder
+ url = sanitizeJsonpCallbackParam(url, config.jsonpCallbackParam);
+ }
$http.pendingRequests.push(config);
promise.then(removePendingReq, removePendingReq);
-
if ((config.cache || defaults.cache) && config.cache !== false &&
(config.method === 'GET' || config.method === 'JSONP')) {
cache = isObject(config.cache) ? config.cache
- : isObject(defaults.cache) ? defaults.cache
+ : isObject(/** @type {?} */ (defaults).cache)
+ ? /** @type {?} */ (defaults).cache
: defaultCache;
}
@@ -10790,11 +12321,35 @@ function $HttpProvider() {
}
$httpBackend(config.method, url, reqData, done, reqHeaders, config.timeout,
- config.withCredentials, config.responseType);
+ config.withCredentials, config.responseType,
+ createApplyHandlers(config.eventHandlers),
+ createApplyHandlers(config.uploadEventHandlers));
}
return promise;
+ function createApplyHandlers(eventHandlers) {
+ if (eventHandlers) {
+ var applyHandlers = {};
+ forEach(eventHandlers, function(eventHandler, key) {
+ applyHandlers[key] = function(event) {
+ if (useApplyAsync) {
+ $rootScope.$applyAsync(callEventHandler);
+ } else if ($rootScope.$$phase) {
+ callEventHandler();
+ } else {
+ $rootScope.$apply(callEventHandler);
+ }
+
+ function callEventHandler() {
+ eventHandler(event);
+ }
+ };
+ });
+ return applyHandlers;
+ }
+ }
+
/**
* Callback registered to $httpBackend():
@@ -10854,8 +12409,26 @@ function $HttpProvider() {
function buildUrl(url, serializedParams) {
if (serializedParams.length > 0) {
- url += ((url.indexOf('?') == -1) ? '?' : '&') + serializedParams;
+ url += ((url.indexOf('?') === -1) ? '?' : '&') + serializedParams;
+ }
+ return url;
+ }
+
+ function sanitizeJsonpCallbackParam(url, key) {
+ if (/[&?][^=]+=JSON_CALLBACK/.test(url)) {
+ // Throw if the url already contains a reference to JSON_CALLBACK
+ throw $httpMinErr('badjsonp', 'Illegal use of JSON_CALLBACK in url, "{0}"', url);
}
+
+ var callbackParamRegex = new RegExp('[&?]' + key + '=');
+ if (callbackParamRegex.test(url)) {
+ // Throw if the callback param was already provided
+ throw $httpMinErr('badjsonp', 'Illegal use of callback param, "{0}", in url, "{1}"', key, url);
+ }
+
+ // Add in the JSON_CALLBACK callback param value
+ url += ((url.indexOf('?') === -1) ? '?' : '&') + key + '=JSON_CALLBACK';
+
return url;
}
}];
@@ -10864,6 +12437,7 @@ function $HttpProvider() {
/**
* @ngdoc service
* @name $xhrFactory
+ * @this
*
* @description
* Factory function used to create XMLHttpRequest objects.
@@ -10893,9 +12467,10 @@ function $xhrFactoryProvider() {
/**
* @ngdoc service
* @name $httpBackend
- * @requires $window
+ * @requires $jsonpCallbacks
* @requires $document
* @requires $xhrFactory
+ * @this
*
* @description
* HTTP backend used by the {@link ng.$http service} that delegates to
@@ -10908,28 +12483,23 @@ function $xhrFactoryProvider() {
* $httpBackend} which can be trained with responses.
*/
function $HttpBackendProvider() {
- this.$get = ['$browser', '$window', '$document', '$xhrFactory', function($browser, $window, $document, $xhrFactory) {
- return createHttpBackend($browser, $xhrFactory, $browser.defer, $window.angular.callbacks, $document[0]);
+ this.$get = ['$browser', '$jsonpCallbacks', '$document', '$xhrFactory', function($browser, $jsonpCallbacks, $document, $xhrFactory) {
+ return createHttpBackend($browser, $xhrFactory, $browser.defer, $jsonpCallbacks, $document[0]);
}];
}
function createHttpBackend($browser, createXhr, $browserDefer, callbacks, rawDocument) {
// TODO(vojta): fix the signature
- return function(method, url, post, callback, headers, timeout, withCredentials, responseType) {
- $browser.$$incOutstandingRequestCount();
+ return function(method, url, post, callback, headers, timeout, withCredentials, responseType, eventHandlers, uploadEventHandlers) {
url = url || $browser.url();
- if (lowercase(method) == 'jsonp') {
- var callbackId = '_' + (callbacks.counter++).toString(36);
- callbacks[callbackId] = function(data) {
- callbacks[callbackId].data = data;
- callbacks[callbackId].called = true;
- };
-
- var jsonpDone = jsonpReq(url.replace('JSON_CALLBACK', 'angular.callbacks.' + callbackId),
- callbackId, function(status, text) {
- completeRequest(callback, status, callbacks[callbackId].data, "", text);
- callbacks[callbackId] = noop;
+ if (lowercase(method) === 'jsonp') {
+ var callbackPath = callbacks.createCallback(url);
+ var jsonpDone = jsonpReq(url, callbackPath, function(status, text) {
+ // jsonpReq only ever sets status to 200 (OK), 404 (ERROR) or -1 (WAITING)
+ var response = (status === 200) && callbacks.getResponse(callbackPath);
+ completeRequest(callback, status, response, '', text);
+ callbacks.removeCallback(callbackPath);
});
} else {
@@ -10956,7 +12526,7 @@ function createHttpBackend($browser, createXhr, $browserDefer, callbacks, rawDoc
// Occurs when accessing file resources or on Android 4.1 stock browser
// while retrieving files from application cache.
if (status === 0) {
- status = response ? 200 : urlResolve(url).protocol == 'file' ? 404 : 0;
+ status = response ? 200 : urlResolve(url).protocol === 'file' ? 404 : 0;
}
completeRequest(callback,
@@ -10974,6 +12544,15 @@ function createHttpBackend($browser, createXhr, $browserDefer, callbacks, rawDoc
xhr.onerror = requestError;
xhr.onabort = requestError;
+ xhr.ontimeout = requestError;
+
+ forEach(eventHandlers, function(value, key) {
+ xhr.addEventListener(key, value);
+ });
+
+ forEach(uploadEventHandlers, function(value, key) {
+ xhr.upload.addEventListener(key, value);
+ });
if (withCredentials) {
xhr.withCredentials = true;
@@ -11007,8 +12586,12 @@ function createHttpBackend($browser, createXhr, $browserDefer, callbacks, rawDoc
function timeoutRequest() {
- jsonpDone && jsonpDone();
- xhr && xhr.abort();
+ if (jsonpDone) {
+ jsonpDone();
+ }
+ if (xhr) {
+ xhr.abort();
+ }
}
function completeRequest(callback, status, response, headersString, statusText) {
@@ -11019,33 +12602,33 @@ function createHttpBackend($browser, createXhr, $browserDefer, callbacks, rawDoc
jsonpDone = xhr = null;
callback(status, response, headersString, statusText);
- $browser.$$completeOutstandingRequest(noop);
}
};
- function jsonpReq(url, callbackId, done) {
+ function jsonpReq(url, callbackPath, done) {
+ url = url.replace('JSON_CALLBACK', callbackPath);
// we can't use jQuery/jqLite here because jQuery does crazy stuff with script elements, e.g.:
// - fetches local scripts via XHR and evals them
// - adds and immediately removes script elements from the document
var script = rawDocument.createElement('script'), callback = null;
- script.type = "text/javascript";
+ script.type = 'text/javascript';
script.src = url;
script.async = true;
callback = function(event) {
- removeEventListenerFn(script, "load", callback);
- removeEventListenerFn(script, "error", callback);
+ script.removeEventListener('load', callback);
+ script.removeEventListener('error', callback);
rawDocument.body.removeChild(script);
script = null;
var status = -1;
- var text = "unknown";
+ var text = 'unknown';
if (event) {
- if (event.type === "load" && !callbacks[callbackId].called) {
- event = { type: "error" };
+ if (event.type === 'load' && !callbacks.wasCalled(callbackPath)) {
+ event = { type: 'error' };
}
text = event.type;
- status = event.type === "error" ? 404 : 200;
+ status = event.type === 'error' ? 404 : 200;
}
if (done) {
@@ -11053,8 +12636,8 @@ function createHttpBackend($browser, createXhr, $browserDefer, callbacks, rawDoc
}
};
- addEventListenerFn(script, "load", callback);
- addEventListenerFn(script, "error", callback);
+ script.addEventListener('load', callback);
+ script.addEventListener('error', callback);
rawDocument.body.appendChild(script);
return callback;
}
@@ -11063,18 +12646,19 @@ function createHttpBackend($browser, createXhr, $browserDefer, callbacks, rawDoc
var $interpolateMinErr = angular.$interpolateMinErr = minErr('$interpolate');
$interpolateMinErr.throwNoconcat = function(text) {
throw $interpolateMinErr('noconcat',
- "Error while interpolating: {0}\nStrict Contextual Escaping disallows " +
- "interpolations that concatenate multiple expressions when a trusted value is " +
- "required. See http://docs.angularjs.org/api/ng.$sce", text);
+ 'Error while interpolating: {0}\nStrict Contextual Escaping disallows ' +
+ 'interpolations that concatenate multiple expressions when a trusted value is ' +
+ 'required. See http://docs.angularjs.org/api/ng.$sce', text);
};
$interpolateMinErr.interr = function(text, err) {
- return $interpolateMinErr('interr', "Can't interpolate: {0}\n{1}", text, err.toString());
+ return $interpolateMinErr('interr', 'Can\'t interpolate: {0}\n{1}', text, err.toString());
};
/**
* @ngdoc provider
* @name $interpolateProvider
+ * @this
*
* @description
*
@@ -11089,7 +12673,7 @@ $interpolateMinErr.interr = function(text, err) {
* </div>
*
* @example
-<example module="customInterpolationApp">
+<example name="custom-interpolation-markup" module="customInterpolationApp">
<file name="index.html">
<script>
var customInterpolationApp = angular.module('customInterpolationApp', []);
@@ -11104,7 +12688,7 @@ $interpolateMinErr.interr = function(text, err) {
this.label = "This binding is brought you by // interpolation symbols.";
});
</script>
-<div ng-app="App" ng-controller="DemoController as demo">
+<div ng-controller="DemoController as demo">
//demo.label//
</div>
</file>
@@ -11171,30 +12755,13 @@ function $InterpolateProvider() {
replace(escapedEndRegexp, endSymbol);
}
- function stringify(value) {
- if (value == null) { // null || undefined
- return '';
- }
- switch (typeof value) {
- case 'string':
- break;
- case 'number':
- value = '' + value;
- break;
- default:
- value = toJson(value);
- }
-
- return value;
- }
-
- //TODO: this is the same as the constantWatchDelegate in parse.js
+ // TODO: this is the same as the constantWatchDelegate in parse.js
function constantWatchDelegate(scope, listener, objectEquality, constantInterp) {
- var unwatch;
- return unwatch = scope.$watch(function constantInterpolateWatch(scope) {
+ var unwatch = scope.$watch(function constantInterpolateWatch(scope) {
unwatch();
return constantInterp(scope);
}, listener, objectEquality);
+ return unwatch;
}
/**
@@ -11240,7 +12807,7 @@ function $InterpolateProvider() {
*
* `allOrNothing` is useful for interpolating URLs. `ngSrc` and `ngSrcset` use this behavior.
*
- * ####Escaped Interpolation
+ * #### Escaped Interpolation
* $interpolate provides a mechanism for escaping interpolation markers. Start and end markers
* can be escaped by preceding each of their characters with a REVERSE SOLIDUS U+005C (backslash).
* It will be rendered as a regular start/end marker, and will not be interpreted as an expression
@@ -11261,7 +12828,7 @@ function $InterpolateProvider() {
* this is typically useful only when user-data is used in rendering a template from the server, or
* when otherwise untrusted data is used by a directive.
*
- * <example>
+ * <example name="interpolation">
* <file name="index.html">
* <div ng-init="username='A user'">
* <p ng-init="apptitle='Escaping demo'">{{apptitle}}: \{\{ username = "defaced value"; \}\}
@@ -11276,6 +12843,30 @@ function $InterpolateProvider() {
* </file>
* </example>
*
+ * @knownIssue
+ * It is currently not possible for an interpolated expression to contain the interpolation end
+ * symbol. For example, `{{ '}}' }}` will be incorrectly interpreted as `{{ ' }}` + `' }}`, i.e.
+ * an interpolated expression consisting of a single-quote (`'`) and the `' }}` string.
+ *
+ * @knownIssue
+ * All directives and components must use the standard `{{` `}}` interpolation symbols
+ * in their templates. If you change the application interpolation symbols the {@link $compile}
+ * service will attempt to denormalize the standard symbols to the custom symbols.
+ * The denormalization process is not clever enough to know not to replace instances of the standard
+ * symbols where they would not normally be treated as interpolation symbols. For example in the following
+ * code snippet the closing braces of the literal object will get incorrectly denormalized:
+ *
+ * ```
+ * <div data-context='{"context":{"id":3,"type":"page"}}">
+ * ```
+ *
+ * The workaround is to ensure that such instances are separated by whitespace:
+ * ```
+ * <div data-context='{"context":{"id":3,"type":"page"} }">
+ * ```
+ *
+ * See https://github.com/angular/angular.js/pull/14610#issuecomment-219401099 for more information.
+ *
* @param {string} text The text with markup to interpolate.
* @param {boolean=} mustHaveExpression if set to true then the interpolation string must have
* embedded expression in order to return an interpolation function. Strings with no
@@ -11317,8 +12908,8 @@ function $InterpolateProvider() {
expressionPositions = [];
while (index < textLength) {
- if (((startIndex = text.indexOf(startSymbol, index)) != -1) &&
- ((endIndex = text.indexOf(endSymbol, startIndex + startSymbolLength)) != -1)) {
+ if (((startIndex = text.indexOf(startSymbol, index)) !== -1) &&
+ ((endIndex = text.indexOf(endSymbol, startIndex + startSymbolLength)) !== -1)) {
if (index !== startIndex) {
concat.push(unescapeText(text.substring(index, startIndex)));
}
@@ -11383,7 +12974,7 @@ function $InterpolateProvider() {
expressions: expressions,
$$watchDelegate: function(scope, listener) {
var lastValue;
- return scope.$watchGroup(parseFns, function interpolateFnWatcher(values, oldValues) {
+ return scope.$watchGroup(parseFns, /** @this */ function interpolateFnWatcher(values, oldValues) {
var currValue = compute(values);
if (isFunction(listener)) {
listener.call(this, currValue, values !== oldValues ? lastValue : currValue, scope);
@@ -11440,6 +13031,7 @@ function $InterpolateProvider() {
}];
}
+/** @this */
function $IntervalProvider() {
this.$get = ['$rootScope', '$window', '$q', '$$q', '$browser',
function($rootScope, $window, $q, $$q, $browser) {
@@ -11472,7 +13064,8 @@ function $IntervalProvider() {
* appropriate moment. See the example below for more details on how and when to do this.
* </div>
*
- * @param {function()} fn A function that should be called repeatedly.
+ * @param {function()} fn A function that should be called repeatedly. If no additional arguments
+ * are passed (see below), the function is called with the current iteration count.
* @param {number} delay Number of milliseconds between each function call.
* @param {number=} [count=0] Number of times to repeat. If not set, or 0, will repeat
* indefinitely.
@@ -11482,7 +13075,7 @@ function $IntervalProvider() {
* @returns {promise} A promise which will be notified on each iteration.
*
* @example
- * <example module="intervalExample">
+ * <example module="intervalExample" name="interval-service">
* <file name="index.html">
* <script>
* angular.module('intervalExample', [])
@@ -11627,6 +13220,8 @@ function $IntervalProvider() {
*/
interval.cancel = function(promise) {
if (promise && promise.$$intervalId in intervals) {
+ // Interval cancels should not report as unhandled promise.
+ intervals[promise.$$intervalId].promise.catch(noop);
intervals[promise.$$intervalId].reject('canceled');
$window.clearInterval(promise.$$intervalId);
delete intervals[promise.$$intervalId];
@@ -11641,6 +13236,87 @@ function $IntervalProvider() {
/**
* @ngdoc service
+ * @name $jsonpCallbacks
+ * @requires $window
+ * @description
+ * This service handles the lifecycle of callbacks to handle JSONP requests.
+ * Override this service if you wish to customise where the callbacks are stored and
+ * how they vary compared to the requested url.
+ */
+var $jsonpCallbacksProvider = /** @this */ function() {
+ this.$get = function() {
+ var callbacks = angular.callbacks;
+ var callbackMap = {};
+
+ function createCallback(callbackId) {
+ var callback = function(data) {
+ callback.data = data;
+ callback.called = true;
+ };
+ callback.id = callbackId;
+ return callback;
+ }
+
+ return {
+ /**
+ * @ngdoc method
+ * @name $jsonpCallbacks#createCallback
+ * @param {string} url the url of the JSONP request
+ * @returns {string} the callback path to send to the server as part of the JSONP request
+ * @description
+ * {@link $httpBackend} calls this method to create a callback and get hold of the path to the callback
+ * to pass to the server, which will be used to call the callback with its payload in the JSONP response.
+ */
+ createCallback: function(url) {
+ var callbackId = '_' + (callbacks.$$counter++).toString(36);
+ var callbackPath = 'angular.callbacks.' + callbackId;
+ var callback = createCallback(callbackId);
+ callbackMap[callbackPath] = callbacks[callbackId] = callback;
+ return callbackPath;
+ },
+ /**
+ * @ngdoc method
+ * @name $jsonpCallbacks#wasCalled
+ * @param {string} callbackPath the path to the callback that was sent in the JSONP request
+ * @returns {boolean} whether the callback has been called, as a result of the JSONP response
+ * @description
+ * {@link $httpBackend} calls this method to find out whether the JSONP response actually called the
+ * callback that was passed in the request.
+ */
+ wasCalled: function(callbackPath) {
+ return callbackMap[callbackPath].called;
+ },
+ /**
+ * @ngdoc method
+ * @name $jsonpCallbacks#getResponse
+ * @param {string} callbackPath the path to the callback that was sent in the JSONP request
+ * @returns {*} the data received from the response via the registered callback
+ * @description
+ * {@link $httpBackend} calls this method to get hold of the data that was provided to the callback
+ * in the JSONP response.
+ */
+ getResponse: function(callbackPath) {
+ return callbackMap[callbackPath].data;
+ },
+ /**
+ * @ngdoc method
+ * @name $jsonpCallbacks#removeCallback
+ * @param {string} callbackPath the path to the callback that was sent in the JSONP request
+ * @description
+ * {@link $httpBackend} calls this method to remove the callback after the JSONP request has
+ * completed or timed-out.
+ */
+ removeCallback: function(callbackPath) {
+ var callback = callbackMap[callbackPath];
+ delete callbacks[callback.id];
+ delete callbackMap[callbackPath];
+ }
+ };
+ };
+};
+
+/**
+ * @ngdoc service
* @name $locale
*
* @description
@@ -11650,7 +13326,7 @@ function $IntervalProvider() {
* * `id` – `{string}` – locale id formatted as `languageId-countryId` (e.g. `en-us`)
*/
-var PATH_MATCH = /^([^\?#]*)(\?([^#]*))?(#(.*))?$/,
+var PATH_MATCH = /^([^?#]*)(\?([^#]*))?(#(.*))?$/,
DEFAULT_PORTS = {'http': 80, 'https': 443, 'ftp': 21};
var $locationMinErr = minErr('$location');
@@ -11680,42 +13356,50 @@ function parseAbsoluteUrl(absoluteUrl, locationObj) {
locationObj.$$port = toInt(parsedUrl.port) || DEFAULT_PORTS[parsedUrl.protocol] || null;
}
+var DOUBLE_SLASH_REGEX = /^\s*[\\/]{2,}/;
+function parseAppUrl(url, locationObj) {
+
+ if (DOUBLE_SLASH_REGEX.test(url)) {
+ throw $locationMinErr('badpath', 'Invalid url "{0}".', url);
+ }
-function parseAppUrl(relativeUrl, locationObj) {
- var prefixed = (relativeUrl.charAt(0) !== '/');
+ var prefixed = (url.charAt(0) !== '/');
if (prefixed) {
- relativeUrl = '/' + relativeUrl;
+ url = '/' + url;
}
- var match = urlResolve(relativeUrl);
+ var match = urlResolve(url);
locationObj.$$path = decodeURIComponent(prefixed && match.pathname.charAt(0) === '/' ?
match.pathname.substring(1) : match.pathname);
locationObj.$$search = parseKeyValue(match.search);
locationObj.$$hash = decodeURIComponent(match.hash);
// make sure path starts with '/';
- if (locationObj.$$path && locationObj.$$path.charAt(0) != '/') {
+ if (locationObj.$$path && locationObj.$$path.charAt(0) !== '/') {
locationObj.$$path = '/' + locationObj.$$path;
}
}
+function startsWith(str, search) {
+ return str.slice(0, search.length) === search;
+}
/**
*
- * @param {string} begin
- * @param {string} whole
- * @returns {string} returns text from whole after begin or undefined if it does not begin with
- * expected string.
+ * @param {string} base
+ * @param {string} url
+ * @returns {string} returns text from `url` after `base` or `undefined` if it does not begin with
+ * the expected string.
*/
-function beginsWith(begin, whole) {
- if (whole.indexOf(begin) === 0) {
- return whole.substr(begin.length);
+function stripBaseUrl(base, url) {
+ if (startsWith(url, base)) {
+ return url.substr(base.length);
}
}
function stripHash(url) {
var index = url.indexOf('#');
- return index == -1 ? url : url.substr(0, index);
+ return index === -1 ? url : url.substr(0, index);
}
function trimEmptyHash(url) {
@@ -11734,13 +13418,13 @@ function serverBase(url) {
/**
- * LocationHtml5Url represents an url
+ * LocationHtml5Url represents a URL
* This object is exposed as $location service when HTML5 mode is enabled and supported
*
* @constructor
* @param {string} appBase application base URL
* @param {string} appBaseNoFile application base URL stripped of any filename
- * @param {string} basePrefix url path prefix
+ * @param {string} basePrefix URL path prefix
*/
function LocationHtml5Url(appBase, appBaseNoFile, basePrefix) {
this.$$html5 = true;
@@ -11749,12 +13433,12 @@ function LocationHtml5Url(appBase, appBaseNoFile, basePrefix) {
/**
- * Parse given html5 (regular) url string into properties
- * @param {string} url HTML5 url
+ * Parse given HTML5 (regular) URL string into properties
+ * @param {string} url HTML5 URL
* @private
*/
this.$$parse = function(url) {
- var pathUrl = beginsWith(appBaseNoFile, url);
+ var pathUrl = stripBaseUrl(appBaseNoFile, url);
if (!isString(pathUrl)) {
throw $locationMinErr('ipthprfx', 'Invalid url "{0}", missing path prefix "{1}".', url,
appBaseNoFile);
@@ -11779,6 +13463,8 @@ function LocationHtml5Url(appBase, appBaseNoFile, basePrefix) {
this.$$url = encodePath(this.$$path) + (search ? '?' + search : '') + hash;
this.$$absUrl = appBaseNoFile + this.$$url.substr(1); // first char is always '/'
+
+ this.$$urlUpdatedByLocation = true;
};
this.$$parseLinkUrl = function(url, relHref) {
@@ -11791,16 +13477,17 @@ function LocationHtml5Url(appBase, appBaseNoFile, basePrefix) {
var appUrl, prevAppUrl;
var rewrittenUrl;
- if (isDefined(appUrl = beginsWith(appBase, url))) {
+
+ if (isDefined(appUrl = stripBaseUrl(appBase, url))) {
prevAppUrl = appUrl;
- if (isDefined(appUrl = beginsWith(basePrefix, appUrl))) {
- rewrittenUrl = appBaseNoFile + (beginsWith('/', appUrl) || appUrl);
+ if (basePrefix && isDefined(appUrl = stripBaseUrl(basePrefix, appUrl))) {
+ rewrittenUrl = appBaseNoFile + (stripBaseUrl('/', appUrl) || appUrl);
} else {
rewrittenUrl = appBase + prevAppUrl;
}
- } else if (isDefined(appUrl = beginsWith(appBaseNoFile, url))) {
+ } else if (isDefined(appUrl = stripBaseUrl(appBaseNoFile, url))) {
rewrittenUrl = appBaseNoFile + appUrl;
- } else if (appBaseNoFile == url + '/') {
+ } else if (appBaseNoFile === url + '/') {
rewrittenUrl = appBaseNoFile;
}
if (rewrittenUrl) {
@@ -11812,7 +13499,7 @@ function LocationHtml5Url(appBase, appBaseNoFile, basePrefix) {
/**
- * LocationHashbangUrl represents url
+ * LocationHashbangUrl represents URL
* This object is exposed as $location service when developer doesn't opt into html5 mode.
* It also serves as the base class for html5 mode fallback on legacy browsers.
*
@@ -11827,19 +13514,19 @@ function LocationHashbangUrl(appBase, appBaseNoFile, hashPrefix) {
/**
- * Parse given hashbang url into properties
- * @param {string} url Hashbang url
+ * Parse given hashbang URL into properties
+ * @param {string} url Hashbang URL
* @private
*/
this.$$parse = function(url) {
- var withoutBaseUrl = beginsWith(appBase, url) || beginsWith(appBaseNoFile, url);
+ var withoutBaseUrl = stripBaseUrl(appBase, url) || stripBaseUrl(appBaseNoFile, url);
var withoutHashUrl;
if (!isUndefined(withoutBaseUrl) && withoutBaseUrl.charAt(0) === '#') {
- // The rest of the url starts with a hash so we have
+ // The rest of the URL starts with a hash so we have
// got either a hashbang path or a plain hash fragment
- withoutHashUrl = beginsWith(hashPrefix, withoutBaseUrl);
+ withoutHashUrl = stripBaseUrl(hashPrefix, withoutBaseUrl);
if (isUndefined(withoutHashUrl)) {
// There was no hashbang prefix so we just have a hash fragment
withoutHashUrl = withoutBaseUrl;
@@ -11855,7 +13542,7 @@ function LocationHashbangUrl(appBase, appBaseNoFile, hashPrefix) {
withoutHashUrl = '';
if (isUndefined(withoutBaseUrl)) {
appBase = url;
- this.replace();
+ /** @type {?} */ (this).replace();
}
}
}
@@ -11887,7 +13574,7 @@ function LocationHashbangUrl(appBase, appBaseNoFile, hashPrefix) {
var firstPathSegmentMatch;
//Get the relative path from the input URL.
- if (url.indexOf(base) === 0) {
+ if (startsWith(url, base)) {
url = url.replace(base, '');
}
@@ -11902,7 +13589,7 @@ function LocationHashbangUrl(appBase, appBaseNoFile, hashPrefix) {
};
/**
- * Compose hashbang url and update `absUrl` property
+ * Compose hashbang URL and update `absUrl` property
* @private
*/
this.$$compose = function() {
@@ -11911,10 +13598,12 @@ function LocationHashbangUrl(appBase, appBaseNoFile, hashPrefix) {
this.$$url = encodePath(this.$$path) + (search ? '?' + search : '') + hash;
this.$$absUrl = appBase + (this.$$url ? hashPrefix + this.$$url : '');
+
+ this.$$urlUpdatedByLocation = true;
};
this.$$parseLinkUrl = function(url, relHref) {
- if (stripHash(appBase) == stripHash(url)) {
+ if (stripHash(appBase) === stripHash(url)) {
this.$$parse(url);
return true;
}
@@ -11924,7 +13613,7 @@ function LocationHashbangUrl(appBase, appBaseNoFile, hashPrefix) {
/**
- * LocationHashbangUrl represents url
+ * LocationHashbangUrl represents URL
* This object is exposed as $location service when html5 history api is enabled but the browser
* does not support it.
*
@@ -11948,9 +13637,9 @@ function LocationHashbangInHtml5Url(appBase, appBaseNoFile, hashPrefix) {
var rewrittenUrl;
var appUrl;
- if (appBase == stripHash(url)) {
+ if (appBase === stripHash(url)) {
rewrittenUrl = url;
- } else if ((appUrl = beginsWith(appBaseNoFile, url))) {
+ } else if ((appUrl = stripBaseUrl(appBaseNoFile, url))) {
rewrittenUrl = appBase + hashPrefix + appUrl;
} else if (appBaseNoFile === url + '/') {
rewrittenUrl = appBaseNoFile;
@@ -11968,6 +13657,8 @@ function LocationHashbangInHtml5Url(appBase, appBaseNoFile, hashPrefix) {
this.$$url = encodePath(this.$$path) + (search ? '?' + search : '') + hash;
// include hashPrefix in $$absUrl when $$url is empty so IE9 does not reload page because of removal of '#'
this.$$absUrl = appBase + hashPrefix + this.$$url;
+
+ this.$$urlUpdatedByLocation = true;
};
}
@@ -11976,6 +13667,12 @@ function LocationHashbangInHtml5Url(appBase, appBaseNoFile, hashPrefix) {
var locationPrototype = {
/**
+ * Ensure absolute URL is initialized.
+ * @private
+ */
+ $$absUrl:'',
+
+ /**
* Are we in html5 mode?
* @private
*/
@@ -11994,17 +13691,17 @@ var locationPrototype = {
* @description
* This method is getter only.
*
- * Return full url representation with all segments encoded according to rules specified in
+ * Return full URL representation with all segments encoded according to rules specified in
* [RFC 3986](http://www.ietf.org/rfc/rfc3986.txt).
*
*
* ```js
- * // given url http://example.com/#/some/path?foo=bar&baz=xoxo
+ * // given URL http://example.com/#/some/path?foo=bar&baz=xoxo
* var absUrl = $location.absUrl();
* // => "http://example.com/#/some/path?foo=bar&baz=xoxo"
* ```
*
- * @return {string} full url
+ * @return {string} full URL
*/
absUrl: locationGetter('$$absUrl'),
@@ -12015,18 +13712,18 @@ var locationPrototype = {
* @description
* This method is getter / setter.
*
- * Return url (e.g. `/path?a=b#hash`) when called without any parameter.
+ * Return URL (e.g. `/path?a=b#hash`) when called without any parameter.
*
* Change path, search and hash, when called with parameter and return `$location`.
*
*
* ```js
- * // given url http://example.com/#/some/path?foo=bar&baz=xoxo
+ * // given URL http://example.com/#/some/path?foo=bar&baz=xoxo
* var url = $location.url();
* // => "/some/path?foo=bar&baz=xoxo"
* ```
*
- * @param {string=} url New url without base prefix (e.g. `/path?a=b#hash`)
+ * @param {string=} url New URL without base prefix (e.g. `/path?a=b#hash`)
* @return {string} url
*/
url: function(url) {
@@ -12049,16 +13746,16 @@ var locationPrototype = {
* @description
* This method is getter only.
*
- * Return protocol of current url.
+ * Return protocol of current URL.
*
*
* ```js
- * // given url http://example.com/#/some/path?foo=bar&baz=xoxo
+ * // given URL http://example.com/#/some/path?foo=bar&baz=xoxo
* var protocol = $location.protocol();
* // => "http"
* ```
*
- * @return {string} protocol of current url
+ * @return {string} protocol of current URL
*/
protocol: locationGetter('$$protocol'),
@@ -12069,24 +13766,24 @@ var locationPrototype = {
* @description
* This method is getter only.
*
- * Return host of current url.
+ * Return host of current URL.
*
* Note: compared to the non-angular version `location.host` which returns `hostname:port`, this returns the `hostname` portion only.
*
*
* ```js
- * // given url http://example.com/#/some/path?foo=bar&baz=xoxo
+ * // given URL http://example.com/#/some/path?foo=bar&baz=xoxo
* var host = $location.host();
* // => "example.com"
*
- * // given url http://user:password@example.com:8080/#/some/path?foo=bar&baz=xoxo
+ * // given URL http://user:password@example.com:8080/#/some/path?foo=bar&baz=xoxo
* host = $location.host();
* // => "example.com"
* host = location.host;
* // => "example.com:8080"
* ```
*
- * @return {string} host of current url.
+ * @return {string} host of current URL.
*/
host: locationGetter('$$host'),
@@ -12097,11 +13794,11 @@ var locationPrototype = {
* @description
* This method is getter only.
*
- * Return port of current url.
+ * Return port of current URL.
*
*
* ```js
- * // given url http://example.com/#/some/path?foo=bar&baz=xoxo
+ * // given URL http://example.com/#/some/path?foo=bar&baz=xoxo
* var port = $location.port();
* // => 80
* ```
@@ -12117,7 +13814,7 @@ var locationPrototype = {
* @description
* This method is getter / setter.
*
- * Return path of current url when called without any parameter.
+ * Return path of current URL when called without any parameter.
*
* Change path when called with parameter and return `$location`.
*
@@ -12126,17 +13823,17 @@ var locationPrototype = {
*
*
* ```js
- * // given url http://example.com/#/some/path?foo=bar&baz=xoxo
+ * // given URL http://example.com/#/some/path?foo=bar&baz=xoxo
* var path = $location.path();
* // => "/some/path"
* ```
*
* @param {(string|number)=} path New path
- * @return {string} path
+ * @return {(string|object)} path if called with no parameters, or `$location` if called with a parameter
*/
path: locationGetterSetter('$$path', function(path) {
path = path !== null ? path.toString() : '';
- return path.charAt(0) == '/' ? path : '/' + path;
+ return path.charAt(0) === '/' ? path : '/' + path;
}),
/**
@@ -12146,13 +13843,13 @@ var locationPrototype = {
* @description
* This method is getter / setter.
*
- * Return search part (as object) of current url when called without any parameter.
+ * Return search part (as object) of current URL when called without any parameter.
*
* Change search part when called with parameter and return `$location`.
*
*
* ```js
- * // given url http://example.com/#/some/path?foo=bar&baz=xoxo
+ * // given URL http://example.com/#/some/path?foo=bar&baz=xoxo
* var searchObject = $location.search();
* // => {foo: 'bar', baz: 'xoxo'}
*
@@ -12168,7 +13865,7 @@ var locationPrototype = {
* of `$location` to the specified value.
*
* If the argument is a hash object containing an array of values, these values will be encoded
- * as duplicate search parameters in the url.
+ * as duplicate search parameters in the URL.
*
* @param {(string|Number|Array<string>|boolean)=} paramValue If `search` is a string or number, then `paramValue`
* will override only a single search property.
@@ -12230,7 +13927,7 @@ var locationPrototype = {
*
*
* ```js
- * // given url http://example.com/#/some/path?foo=bar&baz=xoxo#hashValue
+ * // given URL http://example.com/#/some/path?foo=bar&baz=xoxo#hashValue
* var hash = $location.hash();
* // => "hashValue"
* ```
@@ -12291,6 +13988,7 @@ forEach([LocationHashbangInHtml5Url, LocationHashbangUrl, LocationHtml5Url], fun
// but we're changing the $$state reference to $browser.state() during the $digest
// so the modification window is narrow.
this.$$state = isUndefined(state) ? null : state;
+ this.$$urlUpdatedByLocation = true;
return this;
};
@@ -12298,14 +13996,14 @@ forEach([LocationHashbangInHtml5Url, LocationHashbangUrl, LocationHtml5Url], fun
function locationGetter(property) {
- return function() {
+ return /** @this */ function() {
return this[property];
};
}
function locationGetterSetter(property, preprocess) {
- return function(value) {
+ return /** @this */ function(value) {
if (isUndefined(value)) {
return this[property];
}
@@ -12347,11 +14045,13 @@ function locationGetterSetter(property, preprocess) {
/**
* @ngdoc provider
* @name $locationProvider
+ * @this
+ *
* @description
* Use the `$locationProvider` to configure how the application deep linking paths are stored.
*/
function $LocationProvider() {
- var hashPrefix = '',
+ var hashPrefix = '!',
html5Mode = {
enabled: false,
requireBase: true,
@@ -12362,6 +14062,7 @@ function $LocationProvider() {
* @ngdoc method
* @name $locationProvider#hashPrefix
* @description
+ * The default value for the prefix is `'!'`.
* @param {string=} prefix Prefix for hash part (containing path and search)
* @returns {*} current value if used as getter or itself (chaining) if used as setter
*/
@@ -12388,8 +14089,12 @@ function $LocationProvider() {
* whether or not a <base> tag is required to be present. If `enabled` and `requireBase` are
* true, and a base tag is not present, an error will be thrown when `$location` is injected.
* See the {@link guide/$location $location guide for more information}
- * - **rewriteLinks** - `{boolean}` - (default: `true`) When html5Mode is enabled,
- * enables/disables url rewriting for relative links.
+ * - **rewriteLinks** - `{boolean|string}` - (default: `true`) When html5Mode is enabled,
+ * enables/disables URL rewriting for relative links. If set to a string, URL rewriting will
+ * only happen on links with an attribute that matches the given string. For example, if set
+ * to `'internal-link'`, then the URL will only be rewritten for `<a internal-link>` links.
+ * Note that [attribute name normalization](guide/directive#normalization) does not apply
+ * here, so `'internalLink'` will **not** match `'internal-link'`.
*
* @returns {Object} html5Mode object if used as getter or itself (chaining) if used as setter
*/
@@ -12407,7 +14112,7 @@ function $LocationProvider() {
html5Mode.requireBase = mode.requireBase;
}
- if (isBoolean(mode.rewriteLinks)) {
+ if (isBoolean(mode.rewriteLinks) || isString(mode.rewriteLinks)) {
html5Mode.rewriteLinks = mode.rewriteLinks;
}
@@ -12467,7 +14172,7 @@ function $LocationProvider() {
if (html5Mode.enabled) {
if (!baseHref && html5Mode.requireBase) {
throw $locationMinErr('nobase',
- "$location in HTML5 mode requires a <base> tag to be present!");
+ '$location in HTML5 mode requires a <base> tag to be present!');
}
appBase = serverBase(initialUrl) + (baseHref || '/');
LocationMode = $sniffer.history ? LocationHtml5Url : LocationHashbangInHtml5Url;
@@ -12504,10 +14209,11 @@ function $LocationProvider() {
}
$rootElement.on('click', function(event) {
+ var rewriteLinks = html5Mode.rewriteLinks;
// TODO(vojta): rewrite link when opening in new tab/window (in legacy browser)
// currently we open nice url link and redirect then
- if (!html5Mode.rewriteLinks || event.ctrlKey || event.metaKey || event.shiftKey || event.which == 2 || event.button == 2) return;
+ if (!rewriteLinks || event.ctrlKey || event.metaKey || event.shiftKey || event.which === 2 || event.button === 2) return;
var elm = jqLite(event.target);
@@ -12517,6 +14223,8 @@ function $LocationProvider() {
if (elm[0] === $rootElement[0] || !(elm = elm.parent())[0]) return;
}
+ if (isString(rewriteLinks) && isUndefined(elm.attr(rewriteLinks))) return;
+
var absHref = elm.prop('href');
// get the actual href attribute - see
// http://msdn.microsoft.com/en-us/library/ie/dd347148(v=vs.85).aspx
@@ -12538,7 +14246,7 @@ function $LocationProvider() {
// getting double entries in the location history.
event.preventDefault();
// update location manually
- if ($location.absUrl() != $browser.url()) {
+ if ($location.absUrl() !== $browser.url()) {
$rootScope.$apply();
// hack to work around FF6 bug 684208 when scenario runner clicks on links
$window.angular['ff-684208-preventDefault'] = true;
@@ -12549,7 +14257,7 @@ function $LocationProvider() {
// rewrite hashbang url <> html5 url
- if (trimEmptyHash($location.absUrl()) != trimEmptyHash(initialUrl)) {
+ if (trimEmptyHash($location.absUrl()) !== trimEmptyHash(initialUrl)) {
$browser.url($location.absUrl(), true);
}
@@ -12558,7 +14266,7 @@ function $LocationProvider() {
// update $location when $browser url changes
$browser.onUrlChange(function(newUrl, newState) {
- if (isUndefined(beginsWith(appBaseNoFile, newUrl))) {
+ if (!startsWith(newUrl, appBaseNoFile)) {
// If we are navigating outside of the app then force a reload
$window.location.href = newUrl;
return;
@@ -12593,36 +14301,40 @@ function $LocationProvider() {
// update browser
$rootScope.$watch(function $locationWatch() {
- var oldUrl = trimEmptyHash($browser.url());
- var newUrl = trimEmptyHash($location.absUrl());
- var oldState = $browser.state();
- var currentReplace = $location.$$replace;
- var urlOrStateChanged = oldUrl !== newUrl ||
- ($location.$$html5 && $sniffer.history && oldState !== $location.$$state);
+ if (initializing || $location.$$urlUpdatedByLocation) {
+ $location.$$urlUpdatedByLocation = false;
- if (initializing || urlOrStateChanged) {
- initializing = false;
+ var oldUrl = trimEmptyHash($browser.url());
+ var newUrl = trimEmptyHash($location.absUrl());
+ var oldState = $browser.state();
+ var currentReplace = $location.$$replace;
+ var urlOrStateChanged = oldUrl !== newUrl ||
+ ($location.$$html5 && $sniffer.history && oldState !== $location.$$state);
- $rootScope.$evalAsync(function() {
- var newUrl = $location.absUrl();
- var defaultPrevented = $rootScope.$broadcast('$locationChangeStart', newUrl, oldUrl,
- $location.$$state, oldState).defaultPrevented;
+ if (initializing || urlOrStateChanged) {
+ initializing = false;
- // if the location was changed by a `$locationChangeStart` handler then stop
- // processing this location change
- if ($location.absUrl() !== newUrl) return;
+ $rootScope.$evalAsync(function() {
+ var newUrl = $location.absUrl();
+ var defaultPrevented = $rootScope.$broadcast('$locationChangeStart', newUrl, oldUrl,
+ $location.$$state, oldState).defaultPrevented;
- if (defaultPrevented) {
- $location.$$parse(oldUrl);
- $location.$$state = oldState;
- } else {
- if (urlOrStateChanged) {
- setBrowserUrlWithFallback(newUrl, currentReplace,
- oldState === $location.$$state ? null : $location.$$state);
+ // if the location was changed by a `$locationChangeStart` handler then stop
+ // processing this location change
+ if ($location.absUrl() !== newUrl) return;
+
+ if (defaultPrevented) {
+ $location.$$parse(oldUrl);
+ $location.$$state = oldState;
+ } else {
+ if (urlOrStateChanged) {
+ setBrowserUrlWithFallback(newUrl, currentReplace,
+ oldState === $location.$$state ? null : $location.$$state);
+ }
+ afterLocationChange(oldUrl, oldState);
}
- afterLocationChange(oldUrl, oldState);
- }
- });
+ });
+ }
}
$location.$$replace = false;
@@ -12655,7 +14367,7 @@ function $LocationProvider() {
* {@link ng.$logProvider ng.$logProvider#debugEnabled} to change this.
*
* @example
- <example module="logExample">
+ <example module="logExample" name="log-service">
<file name="script.js">
angular.module('logExample', [])
.controller('LogController', ['$scope', '$log', function($scope, $log) {
@@ -12681,6 +14393,8 @@ function $LocationProvider() {
/**
* @ngdoc provider
* @name $logProvider
+ * @this
+ *
* @description
* Use the `$logProvider` to configure how the application logs messages
*/
@@ -12698,13 +14412,22 @@ function $LogProvider() {
this.debugEnabled = function(flag) {
if (isDefined(flag)) {
debug = flag;
- return this;
+ return this;
} else {
return debug;
}
};
this.$get = ['$window', function($window) {
+ // Support: IE 9-11, Edge 12-14+
+ // IE/Edge display errors in such a way that it requires the user to click in 4 places
+ // to see the stack trace. There is no way to feature-detect it so there's a chance
+ // of the user agent sniffing to go wrong but since it's only about logging, this shouldn't
+ // break apps. Other browsers display errors in a sensible way and some of them map stack
+ // traces along source maps if available so it makes sense to let browsers display it
+ // as they want.
+ var formatStackTrace = msie || /\bEdge\//.test($window.navigator && $window.navigator.userAgent);
+
return {
/**
* @ngdoc method
@@ -12757,12 +14480,12 @@ function $LogProvider() {
fn.apply(self, arguments);
}
};
- }())
+ })()
};
function formatError(arg) {
if (arg instanceof Error) {
- if (arg.stack) {
+ if (arg.stack && formatStackTrace) {
arg = (arg.message && arg.stack.indexOf(arg.message) === -1)
? 'Error: ' + arg.message + '\n' + arg.stack
: arg.stack;
@@ -12782,7 +14505,7 @@ function $LogProvider() {
// The reason behind this is that console.log has type "object" in IE8...
try {
hasApply = !!logFn.apply;
- } catch (e) {}
+ } catch (e) { /* empty */ }
if (hasApply) {
return function() {
@@ -12816,118 +14539,45 @@ function $LogProvider() {
var $parseMinErr = minErr('$parse');
+var objectValueOf = {}.constructor.prototype.valueOf;
+
// Sandboxing Angular Expressions
// ------------------------------
-// Angular expressions are generally considered safe because these expressions only have direct
-// access to `$scope` and locals. However, one can obtain the ability to execute arbitrary JS code by
-// obtaining a reference to native JS functions such as the Function constructor.
+// Angular expressions are no longer sandboxed. So it is now even easier to access arbitrary JS code by
+// various means such as obtaining a reference to native JS functions like the Function constructor.
//
// As an example, consider the following Angular expression:
//
// {}.toString.constructor('alert("evil JS code")')
//
-// This sandboxing technique is not perfect and doesn't aim to be. The goal is to prevent exploits
-// against the expression language, but not to prevent exploits that were enabled by exposing
-// sensitive JavaScript or browser APIs on Scope. Exposing such objects on a Scope is never a good
-// practice and therefore we are not even trying to protect against interaction with an object
-// explicitly exposed in this way.
-//
-// In general, it is not possible to access a Window object from an angular expression unless a
-// window or some DOM object that has a reference to window is published onto a Scope.
-// Similarly we prevent invocations of function known to be dangerous, as well as assignments to
-// native objects.
+// It is important to realize that if you create an expression from a string that contains user provided
+// content then it is possible that your application contains a security vulnerability to an XSS style attack.
//
// See https://docs.angularjs.org/guide/security
-function ensureSafeMemberName(name, fullExpression) {
- if (name === "__defineGetter__" || name === "__defineSetter__"
- || name === "__lookupGetter__" || name === "__lookupSetter__"
- || name === "__proto__") {
- throw $parseMinErr('isecfld',
- 'Attempting to access a disallowed field in Angular expressions! '
- + 'Expression: {0}', fullExpression);
- }
- return name;
-}
-
-function getStringValue(name, fullExpression) {
- // From the JavaScript docs:
+function getStringValue(name) {
// Property names must be strings. This means that non-string objects cannot be used
// as keys in an object. Any non-string object, including a number, is typecasted
// into a string via the toString method.
+ // -- MDN, https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Operators/Property_accessors#Property_names
//
- // So, to ensure that we are checking the same `name` that JavaScript would use,
- // we cast it to a string, if possible.
- // Doing `name + ''` can cause a repl error if the result to `toString` is not a string,
- // this is, this will handle objects that misbehave.
- name = name + '';
- if (!isString(name)) {
- throw $parseMinErr('iseccst',
- 'Cannot convert object to primitive value! '
- + 'Expression: {0}', fullExpression);
- }
- return name;
-}
-
-function ensureSafeObject(obj, fullExpression) {
- // nifty check if obj is Function that is fast and works across iframes and other contexts
- if (obj) {
- if (obj.constructor === obj) {
- throw $parseMinErr('isecfn',
- 'Referencing Function in Angular expressions is disallowed! Expression: {0}',
- fullExpression);
- } else if (// isWindow(obj)
- obj.window === obj) {
- throw $parseMinErr('isecwindow',
- 'Referencing the Window in Angular expressions is disallowed! Expression: {0}',
- fullExpression);
- } else if (// isElement(obj)
- obj.children && (obj.nodeName || (obj.prop && obj.attr && obj.find))) {
- throw $parseMinErr('isecdom',
- 'Referencing DOM nodes in Angular expressions is disallowed! Expression: {0}',
- fullExpression);
- } else if (// block Object so that we can't get hold of dangerous Object.* methods
- obj === Object) {
- throw $parseMinErr('isecobj',
- 'Referencing Object in Angular expressions is disallowed! Expression: {0}',
- fullExpression);
- }
- }
- return obj;
-}
-
-var CALL = Function.prototype.call;
-var APPLY = Function.prototype.apply;
-var BIND = Function.prototype.bind;
-
-function ensureSafeFunction(obj, fullExpression) {
- if (obj) {
- if (obj.constructor === obj) {
- throw $parseMinErr('isecfn',
- 'Referencing Function in Angular expressions is disallowed! Expression: {0}',
- fullExpression);
- } else if (obj === CALL || obj === APPLY || obj === BIND) {
- throw $parseMinErr('isecff',
- 'Referencing call, apply or bind in Angular expressions is disallowed! Expression: {0}',
- fullExpression);
- }
- }
+ // So, to ensure that we are checking the same `name` that JavaScript would use, we cast it
+ // to a string. It's not always possible. If `name` is an object and its `toString` method is
+ // 'broken' (doesn't return a string, isn't a function, etc.), an error will be thrown:
+ //
+ // TypeError: Cannot convert object to primitive value
+ //
+ // For performance reasons, we don't catch this error here and allow it to propagate up the call
+ // stack. Note that you'll get the same error in JavaScript if you try to access a property using
+ // such a 'broken' object as a key.
+ return name + '';
}
-function ensureSafeAssignContext(obj, fullExpression) {
- if (obj) {
- if (obj === (0).constructor || obj === (false).constructor || obj === ''.constructor ||
- obj === {}.constructor || obj === [].constructor || obj === Function.constructor) {
- throw $parseMinErr('isecaf',
- 'Assigning to a constructor is disallowed! Expression: {0}', fullExpression);
- }
- }
-}
var OPERATORS = createMap();
forEach('+ - * / % === !== == != < > <= >= && || ! = |'.split(' '), function(operator) { OPERATORS[operator] = true; });
-var ESCAPE = {"n":"\n", "f":"\f", "r":"\r", "t":"\t", "v":"\v", "'":"'", '"':'"'};
+var ESCAPE = {'n':'\n', 'f':'\f', 'r':'\r', 't':'\t', 'v':'\v', '\'':'\'', '"':'"'};
/////////////////////////////////////////
@@ -12936,7 +14586,7 @@ var ESCAPE = {"n":"\n", "f":"\f", "r":"\r", "t":"\t", "v":"\v", "'":"'", '"':'"'
/**
* @constructor
*/
-var Lexer = function(options) {
+var Lexer = function Lexer(options) {
this.options = options;
};
@@ -12950,11 +14600,11 @@ Lexer.prototype = {
while (this.index < this.text.length) {
var ch = this.text.charAt(this.index);
- if (ch === '"' || ch === "'") {
+ if (ch === '"' || ch === '\'') {
this.readString(ch);
} else if (this.isNumber(ch) || ch === '.' && this.isNumber(this.peek())) {
this.readNumber();
- } else if (this.isIdent(ch)) {
+ } else if (this.isIdentifierStart(this.peekMultichar())) {
this.readIdent();
} else if (this.is(ch, '(){}[].,;:?')) {
this.tokens.push({index: this.index, text: ch});
@@ -12989,7 +14639,7 @@ Lexer.prototype = {
},
isNumber: function(ch) {
- return ('0' <= ch && ch <= '9') && typeof ch === "string";
+ return ('0' <= ch && ch <= '9') && typeof ch === 'string';
},
isWhitespace: function(ch) {
@@ -12998,12 +14648,48 @@ Lexer.prototype = {
ch === '\n' || ch === '\v' || ch === '\u00A0');
},
- isIdent: function(ch) {
+ isIdentifierStart: function(ch) {
+ return this.options.isIdentifierStart ?
+ this.options.isIdentifierStart(ch, this.codePointAt(ch)) :
+ this.isValidIdentifierStart(ch);
+ },
+
+ isValidIdentifierStart: function(ch) {
return ('a' <= ch && ch <= 'z' ||
'A' <= ch && ch <= 'Z' ||
'_' === ch || ch === '$');
},
+ isIdentifierContinue: function(ch) {
+ return this.options.isIdentifierContinue ?
+ this.options.isIdentifierContinue(ch, this.codePointAt(ch)) :
+ this.isValidIdentifierContinue(ch);
+ },
+
+ isValidIdentifierContinue: function(ch, cp) {
+ return this.isValidIdentifierStart(ch, cp) || this.isNumber(ch);
+ },
+
+ codePointAt: function(ch) {
+ if (ch.length === 1) return ch.charCodeAt(0);
+ // eslint-disable-next-line no-bitwise
+ return (ch.charCodeAt(0) << 10) + ch.charCodeAt(1) - 0x35FDC00;
+ },
+
+ peekMultichar: function() {
+ var ch = this.text.charAt(this.index);
+ var peek = this.peek();
+ if (!peek) {
+ return ch;
+ }
+ var cp1 = ch.charCodeAt(0);
+ var cp2 = peek.charCodeAt(0);
+ if (cp1 >= 0xD800 && cp1 <= 0xDBFF && cp2 >= 0xDC00 && cp2 <= 0xDFFF) {
+ return ch + peek;
+ }
+ return ch;
+ },
+
isExpOperator: function(ch) {
return (ch === '-' || ch === '+' || this.isNumber(ch));
},
@@ -13022,19 +14708,19 @@ Lexer.prototype = {
var start = this.index;
while (this.index < this.text.length) {
var ch = lowercase(this.text.charAt(this.index));
- if (ch == '.' || this.isNumber(ch)) {
+ if (ch === '.' || this.isNumber(ch)) {
number += ch;
} else {
var peekCh = this.peek();
- if (ch == 'e' && this.isExpOperator(peekCh)) {
+ if (ch === 'e' && this.isExpOperator(peekCh)) {
number += ch;
} else if (this.isExpOperator(ch) &&
peekCh && this.isNumber(peekCh) &&
- number.charAt(number.length - 1) == 'e') {
+ number.charAt(number.length - 1) === 'e') {
number += ch;
} else if (this.isExpOperator(ch) &&
(!peekCh || !this.isNumber(peekCh)) &&
- number.charAt(number.length - 1) == 'e') {
+ number.charAt(number.length - 1) === 'e') {
this.throwError('Invalid exponent');
} else {
break;
@@ -13052,12 +14738,13 @@ Lexer.prototype = {
readIdent: function() {
var start = this.index;
+ this.index += this.peekMultichar().length;
while (this.index < this.text.length) {
- var ch = this.text.charAt(this.index);
- if (!(this.isIdent(ch) || this.isNumber(ch))) {
+ var ch = this.peekMultichar();
+ if (!this.isIdentifierContinue(ch)) {
break;
}
- this.index++;
+ this.index += ch.length;
}
this.tokens.push({
index: start,
@@ -13108,7 +14795,7 @@ Lexer.prototype = {
}
};
-var AST = function(lexer, options) {
+var AST = function AST(lexer, options) {
this.lexer = lexer;
this.options = options;
};
@@ -13128,6 +14815,7 @@ AST.ArrayExpression = 'ArrayExpression';
AST.Property = 'Property';
AST.ObjectExpression = 'ObjectExpression';
AST.ThisExpression = 'ThisExpression';
+AST.LocalsExpression = 'LocalsExpression';
// Internal use only
AST.NGValueParameter = 'NGValueParameter';
@@ -13163,8 +14851,7 @@ AST.prototype = {
filterChain: function() {
var left = this.expression();
- var token;
- while ((token = this.expect('|'))) {
+ while (this.expect('|')) {
left = this.filter(left);
}
return left;
@@ -13177,6 +14864,10 @@ AST.prototype = {
assignment: function() {
var result = this.ternary();
if (this.expect('=')) {
+ if (!isAssignable(result)) {
+ throw $parseMinErr('lval', 'Trying to assign a value to a non l-value');
+ }
+
result = { type: AST.AssignmentExpression, left: result, right: this.assignment(), operator: '='};
}
return result;
@@ -13266,8 +14957,10 @@ AST.prototype = {
primary = this.arrayDeclaration();
} else if (this.expect('{')) {
primary = this.object();
- } else if (this.constants.hasOwnProperty(this.peek().text)) {
- primary = copy(this.constants[this.consume().text]);
+ } else if (this.selfReferential.hasOwnProperty(this.peek().text)) {
+ primary = copy(this.selfReferential[this.consume().text]);
+ } else if (this.options.literals.hasOwnProperty(this.peek().text)) {
+ primary = { type: AST.Literal, value: this.options.literals[this.consume().text]};
} else if (this.peek().identifier) {
primary = this.identifier();
} else if (this.peek().constant) {
@@ -13308,7 +15001,7 @@ AST.prototype = {
var args = [];
if (this.peekToken().text !== ')') {
do {
- args.push(this.expression());
+ args.push(this.filterChain());
} while (this.expect(','));
}
return args;
@@ -13354,13 +15047,28 @@ AST.prototype = {
property = {type: AST.Property, kind: 'init'};
if (this.peek().constant) {
property.key = this.constant();
+ property.computed = false;
+ this.consume(':');
+ property.value = this.expression();
} else if (this.peek().identifier) {
property.key = this.identifier();
+ property.computed = false;
+ if (this.peek(':')) {
+ this.consume(':');
+ property.value = this.expression();
+ } else {
+ property.value = property.key;
+ }
+ } else if (this.peek('[')) {
+ this.consume('[');
+ property.key = this.expression();
+ this.consume(']');
+ property.computed = true;
+ this.consume(':');
+ property.value = this.expression();
} else {
- this.throwError("invalid key", this.peek());
+ this.throwError('invalid key', this.peek());
}
- this.consume(':');
- property.value = this.expression();
properties.push(property);
} while (this.expect(','));
}
@@ -13419,16 +15127,9 @@ AST.prototype = {
return false;
},
-
- /* `undefined` is not a constant, it is an identifier,
- * but using it as an identifier is not supported
- */
- constants: {
- 'true': { type: AST.Literal, value: true },
- 'false': { type: AST.Literal, value: false },
- 'null': { type: AST.Literal, value: null },
- 'undefined': {type: AST.Literal, value: undefined },
- 'this': {type: AST.ThisExpression }
+ selfReferential: {
+ 'this': {type: AST.ThisExpression },
+ '$locals': {type: AST.LocalsExpression }
}
};
@@ -13450,6 +15151,7 @@ function isStateless($filter, filterName) {
function findConstantAndWatchExpressions(ast, $filter) {
var allConstants;
var argsToWatch;
+ var isStatelessFilter;
switch (ast.type) {
case AST.Program:
allConstants = true;
@@ -13500,7 +15202,8 @@ function findConstantAndWatchExpressions(ast, $filter) {
ast.toWatch = [ast];
break;
case AST.CallExpression:
- allConstants = ast.filter ? isStateless($filter, ast.callee.name) : false;
+ isStatelessFilter = ast.filter ? isStateless($filter, ast.callee.name) : false;
+ allConstants = isStatelessFilter;
argsToWatch = [];
forEach(ast.arguments, function(expr) {
findConstantAndWatchExpressions(expr, $filter);
@@ -13510,7 +15213,7 @@ function findConstantAndWatchExpressions(ast, $filter) {
}
});
ast.constant = allConstants;
- ast.toWatch = ast.filter && isStateless($filter, ast.callee.name) ? argsToWatch : [ast];
+ ast.toWatch = isStatelessFilter ? argsToWatch : [ast];
break;
case AST.AssignmentExpression:
findConstantAndWatchExpressions(ast.left, $filter);
@@ -13536,10 +15239,17 @@ function findConstantAndWatchExpressions(ast, $filter) {
argsToWatch = [];
forEach(ast.properties, function(property) {
findConstantAndWatchExpressions(property.value, $filter);
- allConstants = allConstants && property.value.constant;
+ allConstants = allConstants && property.value.constant && !property.computed;
if (!property.value.constant) {
argsToWatch.push.apply(argsToWatch, property.value.toWatch);
}
+ if (property.computed) {
+ findConstantAndWatchExpressions(property.key, $filter);
+ if (!property.key.constant) {
+ argsToWatch.push.apply(argsToWatch, property.key.toWatch);
+ }
+ }
+
});
ast.constant = allConstants;
ast.toWatch = argsToWatch;
@@ -13548,11 +15258,15 @@ function findConstantAndWatchExpressions(ast, $filter) {
ast.constant = false;
ast.toWatch = [];
break;
+ case AST.LocalsExpression:
+ ast.constant = false;
+ ast.toWatch = [];
+ break;
}
}
function getInputs(body) {
- if (body.length != 1) return;
+ if (body.length !== 1) return;
var lastExpression = body[0].expression;
var candidate = lastExpression.toWatch;
if (candidate.length !== 1) return candidate;
@@ -13587,13 +15301,12 @@ function ASTCompiler(astBuilder, $filter) {
}
ASTCompiler.prototype = {
- compile: function(expression, expensiveChecks) {
+ compile: function(expression) {
var self = this;
var ast = this.astBuilder.ast(expression);
this.state = {
nextId: 0,
filters: {},
- expensiveChecks: expensiveChecks,
fn: {vars: [], body: [], own: {}},
assign: {vars: [], body: [], own: {}},
inputs: []
@@ -13634,27 +15347,16 @@ ASTCompiler.prototype = {
this.watchFns() +
'return fn;';
- /* jshint -W054 */
+ // eslint-disable-next-line no-new-func
var fn = (new Function('$filter',
- 'ensureSafeMemberName',
- 'ensureSafeObject',
- 'ensureSafeFunction',
'getStringValue',
- 'ensureSafeAssignContext',
'ifDefined',
'plus',
- 'text',
fnString))(
this.$filter,
- ensureSafeMemberName,
- ensureSafeObject,
- ensureSafeFunction,
getStringValue,
- ensureSafeAssignContext,
ifDefined,
- plusFn,
- expression);
- /* jshint +W054 */
+ plusFn);
this.state = this.stage = undefined;
fn.literal = isLiteral(ast);
fn.constant = isConstant(ast);
@@ -13704,7 +15406,7 @@ ASTCompiler.prototype = {
},
recurse: function(ast, intoId, nameId, recursionFn, create, skipWatchIdCheck) {
- var left, right, self = this, args, expression;
+ var left, right, self = this, args, expression, computed;
recursionFn = recursionFn || noop;
if (!skipWatchIdCheck && isDefined(ast.watchId)) {
intoId = intoId || this.nextId();
@@ -13728,7 +15430,7 @@ ASTCompiler.prototype = {
case AST.Literal:
expression = this.escape(ast.value);
this.assign(intoId, expression);
- recursionFn(expression);
+ recursionFn(intoId || expression);
break;
case AST.UnaryExpression:
this.recurse(ast.argument, undefined, undefined, function(expr) { right = expr; });
@@ -13768,22 +15470,18 @@ ASTCompiler.prototype = {
nameId.computed = false;
nameId.name = ast.name;
}
- ensureSafeMemberName(ast.name);
self.if_(self.stage === 'inputs' || self.not(self.getHasOwnProperty('l', ast.name)),
function() {
self.if_(self.stage === 'inputs' || 's', function() {
if (create && create !== 1) {
self.if_(
- self.not(self.nonComputedMember('s', ast.name)),
+ self.isNull(self.nonComputedMember('s', ast.name)),
self.lazyAssign(self.nonComputedMember('s', ast.name), '{}'));
}
self.assign(intoId, self.nonComputedMember('s', ast.name));
});
}, intoId && self.lazyAssign(intoId, self.nonComputedMember('l', ast.name))
);
- if (self.state.expensiveChecks || isPossiblyDangerousMemberName(ast.name)) {
- self.addEnsureSafeObject(intoId);
- }
recursionFn(intoId);
break;
case AST.MemberExpression:
@@ -13795,25 +15493,20 @@ ASTCompiler.prototype = {
right = self.nextId();
self.recurse(ast.property, right);
self.getStringValue(right);
- self.addEnsureSafeMemberName(right);
if (create && create !== 1) {
self.if_(self.not(self.computedMember(left, right)), self.lazyAssign(self.computedMember(left, right), '{}'));
}
- expression = self.ensureSafeObject(self.computedMember(left, right));
+ expression = self.computedMember(left, right);
self.assign(intoId, expression);
if (nameId) {
nameId.computed = true;
nameId.name = right;
}
} else {
- ensureSafeMemberName(ast.property.name);
if (create && create !== 1) {
- self.if_(self.not(self.nonComputedMember(left, ast.property.name)), self.lazyAssign(self.nonComputedMember(left, ast.property.name), '{}'));
+ self.if_(self.isNull(self.nonComputedMember(left, ast.property.name)), self.lazyAssign(self.nonComputedMember(left, ast.property.name), '{}'));
}
expression = self.nonComputedMember(left, ast.property.name);
- if (self.state.expensiveChecks || isPossiblyDangerousMemberName(ast.property.name)) {
- expression = self.ensureSafeObject(expression);
- }
self.assign(intoId, expression);
if (nameId) {
nameId.computed = false;
@@ -13845,21 +15538,16 @@ ASTCompiler.prototype = {
args = [];
self.recurse(ast.callee, right, left, function() {
self.if_(self.notNull(right), function() {
- self.addEnsureSafeFunction(right);
forEach(ast.arguments, function(expr) {
- self.recurse(expr, self.nextId(), undefined, function(argument) {
- args.push(self.ensureSafeObject(argument));
+ self.recurse(expr, ast.constant ? undefined : self.nextId(), undefined, function(argument) {
+ args.push(argument);
});
});
if (left.name) {
- if (!self.state.expensiveChecks) {
- self.addEnsureSafeObject(left.context);
- }
expression = self.member(left.context, left.name, left.computed) + '(' + args.join(',') + ')';
} else {
expression = right + '(' + args.join(',') + ')';
}
- expression = self.ensureSafeObject(expression);
self.assign(intoId, expression);
}, function() {
self.assign(intoId, 'undefined');
@@ -13871,14 +15559,9 @@ ASTCompiler.prototype = {
case AST.AssignmentExpression:
right = this.nextId();
left = {};
- if (!isAssignable(ast.left)) {
- throw $parseMinErr('lval', 'Trying to assign a value to a non l-value');
- }
this.recurse(ast.left, undefined, left, function() {
self.if_(self.notNull(left.context), function() {
self.recurse(ast.right, right);
- self.addEnsureSafeObject(self.member(left.context, left.name, left.computed));
- self.addEnsureSafeAssignContext(left.context);
expression = self.member(left.context, left.name, left.computed) + ast.operator + right;
self.assign(intoId, expression);
recursionFn(intoId || expression);
@@ -13888,35 +15571,63 @@ ASTCompiler.prototype = {
case AST.ArrayExpression:
args = [];
forEach(ast.elements, function(expr) {
- self.recurse(expr, self.nextId(), undefined, function(argument) {
+ self.recurse(expr, ast.constant ? undefined : self.nextId(), undefined, function(argument) {
args.push(argument);
});
});
expression = '[' + args.join(',') + ']';
this.assign(intoId, expression);
- recursionFn(expression);
+ recursionFn(intoId || expression);
break;
case AST.ObjectExpression:
args = [];
+ computed = false;
forEach(ast.properties, function(property) {
- self.recurse(property.value, self.nextId(), undefined, function(expr) {
- args.push(self.escape(
- property.key.type === AST.Identifier ? property.key.name :
- ('' + property.key.value)) +
- ':' + expr);
- });
+ if (property.computed) {
+ computed = true;
+ }
});
- expression = '{' + args.join(',') + '}';
- this.assign(intoId, expression);
- recursionFn(expression);
+ if (computed) {
+ intoId = intoId || this.nextId();
+ this.assign(intoId, '{}');
+ forEach(ast.properties, function(property) {
+ if (property.computed) {
+ left = self.nextId();
+ self.recurse(property.key, left);
+ } else {
+ left = property.key.type === AST.Identifier ?
+ property.key.name :
+ ('' + property.key.value);
+ }
+ right = self.nextId();
+ self.recurse(property.value, right);
+ self.assign(self.member(intoId, left, property.computed), right);
+ });
+ } else {
+ forEach(ast.properties, function(property) {
+ self.recurse(property.value, ast.constant ? undefined : self.nextId(), undefined, function(expr) {
+ args.push(self.escape(
+ property.key.type === AST.Identifier ? property.key.name :
+ ('' + property.key.value)) +
+ ':' + expr);
+ });
+ });
+ expression = '{' + args.join(',') + '}';
+ this.assign(intoId, expression);
+ }
+ recursionFn(intoId || expression);
break;
case AST.ThisExpression:
this.assign(intoId, 's');
- recursionFn('s');
+ recursionFn(intoId || 's');
+ break;
+ case AST.LocalsExpression:
+ this.assign(intoId, 'l');
+ recursionFn(intoId || 'l');
break;
case AST.NGValueParameter:
this.assign(intoId, 'v');
- recursionFn('v');
+ recursionFn(intoId || 'v');
break;
}
},
@@ -13975,12 +15686,22 @@ ASTCompiler.prototype = {
return '!(' + expression + ')';
},
+ isNull: function(expression) {
+ return expression + '==null';
+ },
+
notNull: function(expression) {
return expression + '!=null';
},
nonComputedMember: function(left, right) {
- return left + '.' + right;
+ var SAFE_IDENTIFIER = /^[$_a-zA-Z][$_a-zA-Z0-9]*$/;
+ var UNSAFE_CHARACTERS = /[^$_a-zA-Z0-9]/g;
+ if (SAFE_IDENTIFIER.test(right)) {
+ return left + '.' + right;
+ } else {
+ return left + '["' + right.replace(UNSAFE_CHARACTERS, this.stringEscapeFn) + '"]';
+ }
},
computedMember: function(left, right) {
@@ -13992,40 +15713,8 @@ ASTCompiler.prototype = {
return this.nonComputedMember(left, right);
},
- addEnsureSafeObject: function(item) {
- this.current().body.push(this.ensureSafeObject(item), ';');
- },
-
- addEnsureSafeMemberName: function(item) {
- this.current().body.push(this.ensureSafeMemberName(item), ';');
- },
-
- addEnsureSafeFunction: function(item) {
- this.current().body.push(this.ensureSafeFunction(item), ';');
- },
-
- addEnsureSafeAssignContext: function(item) {
- this.current().body.push(this.ensureSafeAssignContext(item), ';');
- },
-
- ensureSafeObject: function(item) {
- return 'ensureSafeObject(' + item + ',text)';
- },
-
- ensureSafeMemberName: function(item) {
- return 'ensureSafeMemberName(' + item + ',text)';
- },
-
- ensureSafeFunction: function(item) {
- return 'ensureSafeFunction(' + item + ',text)';
- },
-
getStringValue: function(item) {
- this.assign(item, 'getStringValue(' + item + ',text)');
- },
-
- ensureSafeAssignContext: function(item) {
- return 'ensureSafeAssignContext(' + item + ',text)';
+ this.assign(item, 'getStringValue(' + item + ')');
},
lazyRecurse: function(ast, intoId, nameId, recursionFn, create, skipWatchIdCheck) {
@@ -14049,7 +15738,7 @@ ASTCompiler.prototype = {
},
escape: function(value) {
- if (isString(value)) return "'" + value.replace(this.stringEscapeRegex, this.stringEscapeFn) + "'";
+ if (isString(value)) return '\'' + value.replace(this.stringEscapeRegex, this.stringEscapeFn) + '\'';
if (isNumber(value)) return value.toString();
if (value === true) return 'true';
if (value === false) return 'false';
@@ -14079,11 +15768,9 @@ function ASTInterpreter(astBuilder, $filter) {
}
ASTInterpreter.prototype = {
- compile: function(expression, expensiveChecks) {
+ compile: function(expression) {
var self = this;
var ast = this.astBuilder.ast(expression);
- this.expression = expression;
- this.expensiveChecks = expensiveChecks;
findConstantAndWatchExpressions(ast, self.$filter);
var assignable;
var assign;
@@ -14105,7 +15792,7 @@ ASTInterpreter.prototype = {
forEach(ast.body, function(expression) {
expressions.push(self.recurse(expression.expression));
});
- var fn = ast.body.length === 0 ? function() {} :
+ var fn = ast.body.length === 0 ? noop :
ast.body.length === 1 ? expressions[0] :
function(scope, locals) {
var lastValue;
@@ -14128,7 +15815,7 @@ ASTInterpreter.prototype = {
},
recurse: function(ast, context, create) {
- var left, right, self = this, args, expression;
+ var left, right, self = this, args;
if (ast.input) {
return this.inputs(ast.input, ast.watchId);
}
@@ -14154,20 +15841,16 @@ ASTInterpreter.prototype = {
context
);
case AST.Identifier:
- ensureSafeMemberName(ast.name, self.expression);
- return self.identifier(ast.name,
- self.expensiveChecks || isPossiblyDangerousMemberName(ast.name),
- context, create, self.expression);
+ return self.identifier(ast.name, context, create);
case AST.MemberExpression:
left = this.recurse(ast.object, false, !!create);
if (!ast.computed) {
- ensureSafeMemberName(ast.property.name, self.expression);
right = ast.property.name;
}
if (ast.computed) right = this.recurse(ast.property);
return ast.computed ?
- this.computedMember(left, right, context, create, self.expression) :
- this.nonComputedMember(left, right, self.expensiveChecks, context, create, self.expression);
+ this.computedMember(left, right, context, create) :
+ this.nonComputedMember(left, right, context, create);
case AST.CallExpression:
args = [];
forEach(ast.arguments, function(expr) {
@@ -14188,13 +15871,11 @@ ASTInterpreter.prototype = {
var rhs = right(scope, locals, assign, inputs);
var value;
if (rhs.value != null) {
- ensureSafeObject(rhs.context, self.expression);
- ensureSafeFunction(rhs.value, self.expression);
var values = [];
for (var i = 0; i < args.length; ++i) {
- values.push(ensureSafeObject(args[i](scope, locals, assign, inputs), self.expression));
+ values.push(args[i](scope, locals, assign, inputs));
}
- value = ensureSafeObject(rhs.value.apply(rhs.context, values), self.expression);
+ value = rhs.value.apply(rhs.context, values);
}
return context ? {value: value} : value;
};
@@ -14204,8 +15885,6 @@ ASTInterpreter.prototype = {
return function(scope, locals, assign, inputs) {
var lhs = left(scope, locals, assign, inputs);
var rhs = right(scope, locals, assign, inputs);
- ensureSafeObject(lhs.value, self.expression);
- ensureSafeAssignContext(lhs.context);
lhs.context[lhs.name] = rhs;
return context ? {value: rhs} : rhs;
};
@@ -14224,16 +15903,28 @@ ASTInterpreter.prototype = {
case AST.ObjectExpression:
args = [];
forEach(ast.properties, function(property) {
- args.push({key: property.key.type === AST.Identifier ?
- property.key.name :
- ('' + property.key.value),
- value: self.recurse(property.value)
- });
+ if (property.computed) {
+ args.push({key: self.recurse(property.key),
+ computed: true,
+ value: self.recurse(property.value)
+ });
+ } else {
+ args.push({key: property.key.type === AST.Identifier ?
+ property.key.name :
+ ('' + property.key.value),
+ computed: false,
+ value: self.recurse(property.value)
+ });
+ }
});
return function(scope, locals, assign, inputs) {
var value = {};
for (var i = 0; i < args.length; ++i) {
- value[args[i].key] = args[i].value(scope, locals, assign, inputs);
+ if (args[i].computed) {
+ value[args[i].key(scope, locals, assign, inputs)] = args[i].value(scope, locals, assign, inputs);
+ } else {
+ value[args[i].key] = args[i].value(scope, locals, assign, inputs);
+ }
}
return context ? {value: value} : value;
};
@@ -14241,8 +15932,12 @@ ASTInterpreter.prototype = {
return function(scope) {
return context ? {value: scope} : scope;
};
+ case AST.LocalsExpression:
+ return function(scope, locals) {
+ return context ? {value: locals} : locals;
+ };
case AST.NGValueParameter:
- return function(scope, locals, assign, inputs) {
+ return function(scope, locals, assign) {
return context ? {value: assign} : assign;
};
}
@@ -14265,7 +15960,7 @@ ASTInterpreter.prototype = {
if (isDefined(arg)) {
arg = -arg;
} else {
- arg = 0;
+ arg = -0;
}
return context ? {value: arg} : arg;
};
@@ -14324,12 +16019,14 @@ ASTInterpreter.prototype = {
},
'binary==': function(left, right, context) {
return function(scope, locals, assign, inputs) {
+ // eslint-disable-next-line eqeqeq
var arg = left(scope, locals, assign, inputs) == right(scope, locals, assign, inputs);
return context ? {value: arg} : arg;
};
},
'binary!=': function(left, right, context) {
return function(scope, locals, assign, inputs) {
+ // eslint-disable-next-line eqeqeq
var arg = left(scope, locals, assign, inputs) != right(scope, locals, assign, inputs);
return context ? {value: arg} : arg;
};
@@ -14379,16 +16076,13 @@ ASTInterpreter.prototype = {
value: function(value, context) {
return function() { return context ? {context: undefined, name: undefined, value: value} : value; };
},
- identifier: function(name, expensiveChecks, context, create, expression) {
+ identifier: function(name, context, create) {
return function(scope, locals, assign, inputs) {
var base = locals && (name in locals) ? locals : scope;
- if (create && create !== 1 && base && !(base[name])) {
+ if (create && create !== 1 && base && base[name] == null) {
base[name] = {};
}
var value = base ? base[name] : undefined;
- if (expensiveChecks) {
- ensureSafeObject(value, expression);
- }
if (context) {
return {context: base, name: name, value: value};
} else {
@@ -14396,7 +16090,7 @@ ASTInterpreter.prototype = {
}
};
},
- computedMember: function(left, right, context, create, expression) {
+ computedMember: function(left, right, context, create) {
return function(scope, locals, assign, inputs) {
var lhs = left(scope, locals, assign, inputs);
var rhs;
@@ -14404,12 +16098,12 @@ ASTInterpreter.prototype = {
if (lhs != null) {
rhs = right(scope, locals, assign, inputs);
rhs = getStringValue(rhs);
- ensureSafeMemberName(rhs, expression);
- if (create && create !== 1 && lhs && !(lhs[rhs])) {
- lhs[rhs] = {};
+ if (create && create !== 1) {
+ if (lhs && !(lhs[rhs])) {
+ lhs[rhs] = {};
+ }
}
value = lhs[rhs];
- ensureSafeObject(value, expression);
}
if (context) {
return {context: lhs, name: rhs, value: value};
@@ -14418,16 +16112,15 @@ ASTInterpreter.prototype = {
}
};
},
- nonComputedMember: function(left, right, expensiveChecks, context, create, expression) {
+ nonComputedMember: function(left, right, context, create) {
return function(scope, locals, assign, inputs) {
var lhs = left(scope, locals, assign, inputs);
- if (create && create !== 1 && lhs && !(lhs[right])) {
- lhs[right] = {};
+ if (create && create !== 1) {
+ if (lhs && lhs[right] == null) {
+ lhs[right] = {};
+ }
}
var value = lhs != null ? lhs[right] : undefined;
- if (expensiveChecks || isPossiblyDangerousMemberName(right)) {
- ensureSafeObject(value, expression);
- }
if (context) {
return {context: lhs, name: right, value: value};
} else {
@@ -14446,11 +16139,11 @@ ASTInterpreter.prototype = {
/**
* @constructor
*/
-var Parser = function(lexer, $filter, options) {
+var Parser = function Parser(lexer, $filter, options) {
this.lexer = lexer;
this.$filter = $filter;
this.options = options;
- this.ast = new AST(this.lexer);
+ this.ast = new AST(lexer, options);
this.astCompiler = options.csp ? new ASTInterpreter(this.ast, $filter) :
new ASTCompiler(this.ast, $filter);
};
@@ -14459,19 +16152,10 @@ Parser.prototype = {
constructor: Parser,
parse: function(text) {
- return this.astCompiler.compile(text, this.options.expensiveChecks);
+ return this.astCompiler.compile(text);
}
};
-var getterFnCacheDefault = createMap();
-var getterFnCacheExpensive = createMap();
-
-function isPossiblyDangerousMemberName(name) {
- return name == 'constructor';
-}
-
-var objectValueOf = Object.prototype.valueOf;
-
function getValueOf(value) {
return isFunction(value.valueOf) ? value.valueOf() : objectValueOf.call(value);
}
@@ -14522,27 +16206,78 @@ function getValueOf(value) {
/**
* @ngdoc provider
* @name $parseProvider
+ * @this
*
* @description
* `$parseProvider` can be used for configuring the default behavior of the {@link ng.$parse $parse}
* service.
*/
function $ParseProvider() {
- var cacheDefault = createMap();
- var cacheExpensive = createMap();
+ var cache = createMap();
+ var literals = {
+ 'true': true,
+ 'false': false,
+ 'null': null,
+ 'undefined': undefined
+ };
+ var identStart, identContinue;
+
+ /**
+ * @ngdoc method
+ * @name $parseProvider#addLiteral
+ * @description
+ *
+ * Configure $parse service to add literal values that will be present as literal at expressions.
+ *
+ * @param {string} literalName Token for the literal value. The literal name value must be a valid literal name.
+ * @param {*} literalValue Value for this literal. All literal values must be primitives or `undefined`.
+ *
+ **/
+ this.addLiteral = function(literalName, literalValue) {
+ literals[literalName] = literalValue;
+ };
+
+ /**
+ * @ngdoc method
+ * @name $parseProvider#setIdentifierFns
+ *
+ * @description
+ *
+ * Allows defining the set of characters that are allowed in Angular expressions. The function
+ * `identifierStart` will get called to know if a given character is a valid character to be the
+ * first character for an identifier. The function `identifierContinue` will get called to know if
+ * a given character is a valid character to be a follow-up identifier character. The functions
+ * `identifierStart` and `identifierContinue` will receive as arguments the single character to be
+ * identifier and the character code point. These arguments will be `string` and `numeric`. Keep in
+ * mind that the `string` parameter can be two characters long depending on the character
+ * representation. It is expected for the function to return `true` or `false`, whether that
+ * character is allowed or not.
+ *
+ * Since this function will be called extensively, keep the implementation of these functions fast,
+ * as the performance of these functions have a direct impact on the expressions parsing speed.
+ *
+ * @param {function=} identifierStart The function that will decide whether the given character is
+ * a valid identifier start character.
+ * @param {function=} identifierContinue The function that will decide whether the given character is
+ * a valid identifier continue character.
+ */
+ this.setIdentifierFns = function(identifierStart, identifierContinue) {
+ identStart = identifierStart;
+ identContinue = identifierContinue;
+ return this;
+ };
this.$get = ['$filter', function($filter) {
var noUnsafeEval = csp().noUnsafeEval;
var $parseOptions = {
csp: noUnsafeEval,
- expensiveChecks: false
- },
- $parseOptionsExpensive = {
- csp: noUnsafeEval,
- expensiveChecks: true
+ literals: copy(literals),
+ isIdentifierStart: isFunction(identStart) && identStart,
+ isIdentifierContinue: isFunction(identContinue) && identContinue
};
+ return $parse;
- return function $parse(exp, interceptorFn, expensiveChecks) {
+ function $parse(exp, interceptorFn) {
var parsedExpression, oneTime, cacheKey;
switch (typeof exp) {
@@ -14550,7 +16285,6 @@ function $ParseProvider() {
exp = exp.trim();
cacheKey = exp;
- var cache = (expensiveChecks ? cacheExpensive : cacheDefault);
parsedExpression = cache[cacheKey];
if (!parsedExpression) {
@@ -14558,9 +16292,8 @@ function $ParseProvider() {
oneTime = true;
exp = exp.substring(2);
}
- var parseOptions = expensiveChecks ? $parseOptionsExpensive : $parseOptions;
- var lexer = new Lexer(parseOptions);
- var parser = new Parser(lexer, $filter, parseOptions);
+ var lexer = new Lexer($parseOptions);
+ var parser = new Parser(lexer, $filter, $parseOptions);
parsedExpression = parser.parse(exp);
if (parsedExpression.constant) {
parsedExpression.$$watchDelegate = constantWatchDelegate;
@@ -14578,17 +16311,17 @@ function $ParseProvider() {
return addInterceptor(exp, interceptorFn);
default:
- return noop;
+ return addInterceptor(noop, interceptorFn);
}
- };
+ }
- function expressionInputDirtyCheck(newValue, oldValueOfValue) {
+ function expressionInputDirtyCheck(newValue, oldValueOfValue, compareObjectIdentity) {
if (newValue == null || oldValueOfValue == null) { // null/undefined
return newValue === oldValueOfValue;
}
- if (typeof newValue === 'object') {
+ if (typeof newValue === 'object' && !compareObjectIdentity) {
// attempt to convert the value to a primitive type
// TODO(docs): add a note to docs that by implementing valueOf even objects and arrays can
@@ -14604,6 +16337,7 @@ function $ParseProvider() {
}
//Primitive or NaN
+ // eslint-disable-next-line no-self-compare
return newValue === oldValueOfValue || (newValue !== newValue && oldValueOfValue !== oldValueOfValue);
}
@@ -14616,7 +16350,7 @@ function $ParseProvider() {
inputExpressions = inputExpressions[0];
return scope.$watch(function expressionInputWatch(scope) {
var newInputValue = inputExpressions(scope);
- if (!expressionInputDirtyCheck(newInputValue, oldInputValueOf)) {
+ if (!expressionInputDirtyCheck(newInputValue, oldInputValueOf, parsedExpression.literal)) {
lastResult = parsedExpression(scope, undefined, undefined, [newInputValue]);
oldInputValueOf = newInputValue && getValueOf(newInputValue);
}
@@ -14636,7 +16370,7 @@ function $ParseProvider() {
for (var i = 0, ii = inputExpressions.length; i < ii; i++) {
var newInputValue = inputExpressions[i](scope);
- if (changed || (changed = !expressionInputDirtyCheck(newInputValue, oldInputValueOfValues[i]))) {
+ if (changed || (changed = !expressionInputDirtyCheck(newInputValue, oldInputValueOfValues[i], parsedExpression.literal))) {
oldInputValues[i] = newInputValue;
oldInputValueOfValues[i] = newInputValue && getValueOf(newInputValue);
}
@@ -14650,14 +16384,22 @@ function $ParseProvider() {
}, listener, objectEquality, prettyPrintExpression);
}
- function oneTimeWatchDelegate(scope, listener, objectEquality, parsedExpression) {
+ function oneTimeWatchDelegate(scope, listener, objectEquality, parsedExpression, prettyPrintExpression) {
var unwatch, lastValue;
- return unwatch = scope.$watch(function oneTimeWatch(scope) {
+ if (parsedExpression.inputs) {
+ unwatch = inputsWatchDelegate(scope, oneTimeListener, objectEquality, parsedExpression, prettyPrintExpression);
+ } else {
+ unwatch = scope.$watch(oneTimeWatch, oneTimeListener, objectEquality);
+ }
+ return unwatch;
+
+ function oneTimeWatch(scope) {
return parsedExpression(scope);
- }, function oneTimeListener(value, old, scope) {
+ }
+ function oneTimeListener(value, old, scope) {
lastValue = value;
if (isFunction(listener)) {
- listener.apply(this, arguments);
+ listener(value, old, scope);
}
if (isDefined(value)) {
scope.$$postDigest(function() {
@@ -14666,17 +16408,17 @@ function $ParseProvider() {
}
});
}
- }, objectEquality);
+ }
}
function oneTimeLiteralWatchDelegate(scope, listener, objectEquality, parsedExpression) {
var unwatch, lastValue;
- return unwatch = scope.$watch(function oneTimeWatch(scope) {
+ unwatch = scope.$watch(function oneTimeWatch(scope) {
return parsedExpression(scope);
}, function oneTimeListener(value, old, scope) {
lastValue = value;
if (isFunction(listener)) {
- listener.call(this, value, old, scope);
+ listener(value, old, scope);
}
if (isAllDefined(value)) {
scope.$$postDigest(function() {
@@ -14685,6 +16427,8 @@ function $ParseProvider() {
}
}, objectEquality);
+ return unwatch;
+
function isAllDefined(value) {
var allDefined = true;
forEach(value, function(val) {
@@ -14695,11 +16439,11 @@ function $ParseProvider() {
}
function constantWatchDelegate(scope, listener, objectEquality, parsedExpression) {
- var unwatch;
- return unwatch = scope.$watch(function constantWatch(scope) {
+ var unwatch = scope.$watch(function constantWatch(scope) {
unwatch();
return parsedExpression(scope);
}, listener, objectEquality);
+ return unwatch;
}
function addInterceptor(parsedExpression, interceptorFn) {
@@ -14723,14 +16467,15 @@ function $ParseProvider() {
};
// Propagate $$watchDelegates other then inputsWatchDelegate
+ useInputs = !parsedExpression.inputs;
if (parsedExpression.$$watchDelegate &&
parsedExpression.$$watchDelegate !== inputsWatchDelegate) {
fn.$$watchDelegate = parsedExpression.$$watchDelegate;
+ fn.inputs = parsedExpression.inputs;
} else if (!interceptorFn.$stateful) {
// If there is an interceptor, but no watchDelegate then treat the interceptor like
// we treat filters - it is assumed to be a pure function unless flagged with $stateful
fn.$$watchDelegate = inputsWatchDelegate;
- useInputs = !parsedExpression.inputs;
fn.inputs = parsedExpression.inputs ? parsedExpression.inputs : [parsedExpression];
}
@@ -14748,19 +16493,19 @@ function $ParseProvider() {
* A service that helps you run functions asynchronously, and use their return values (or exceptions)
* when they are done processing.
*
- * This is an implementation of promises/deferred objects inspired by
- * [Kris Kowal's Q](https://github.com/kriskowal/q).
+ * This is a [Promises/A+](https://promisesaplus.com/)-compliant implementation of promises/deferred
+ * objects inspired by [Kris Kowal's Q](https://github.com/kriskowal/q).
*
* $q can be used in two fashions --- one which is more similar to Kris Kowal's Q or jQuery's Deferred
- * implementations, and the other which resembles ES6 promises to some degree.
+ * implementations, and the other which resembles ES6 (ES2015) promises to some degree.
*
* # $q constructor
*
* The streamlined ES6 style promise is essentially just using $q as a constructor which takes a `resolver`
- * function as the first argument. This is similar to the native Promise implementation from ES6 Harmony,
+ * function as the first argument. This is similar to the native Promise implementation from ES6,
* see [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise).
*
- * While the constructor-style use is supported, not all of the supporting methods from ES6 Harmony promises are
+ * While the constructor-style use is supported, not all of the supporting methods from ES6 promises are
* available yet.
*
* It can be used like so:
@@ -14792,7 +16537,7 @@ function $ParseProvider() {
*
* Note: progress/notify callbacks are not currently supported via the ES6-style interface.
*
- * Note: unlike ES6 behaviour, an exception thrown in the constructor function will NOT implicitly reject the promise.
+ * Note: unlike ES6 behavior, an exception thrown in the constructor function will NOT implicitly reject the promise.
*
* However, the more traditional CommonJS-style usage is still available, and documented below.
*
@@ -14874,7 +16619,7 @@ function $ParseProvider() {
*
* **Methods**
*
- * - `then(successCallback, errorCallback, notifyCallback)` – regardless of when the promise was or
+ * - `then(successCallback, [errorCallback], [notifyCallback])` – regardless of when the promise was or
* will be resolved or rejected, `then` calls one of the success or error callbacks asynchronously
* as soon as the result is available. The callbacks are called with a single argument: the result
* or rejection reason. Additionally, the notify callback may be called zero or more times to
@@ -14885,7 +16630,8 @@ function $ParseProvider() {
* with the value which is resolved in that promise using
* [promise chaining](http://www.html5rocks.com/en/tutorials/es6/promises/#toc-promises-queues)).
* It also notifies via the return value of the `notifyCallback` method. The promise cannot be
- * resolved or rejected from the notifyCallback method.
+ * resolved or rejected from the notifyCallback method. The errorCallback and notifyCallback
+ * arguments are optional.
*
* - `catch(errorCallback)` – shorthand for `promise.then(null, errorCallback)`
*
@@ -14925,7 +16671,7 @@ function $ParseProvider() {
* - Q has many more features than $q, but that comes at a cost of bytes. $q is tiny, but contains
* all the important functionality needed for common async tasks.
*
- * # Testing
+ * # Testing
*
* ```js
* it('should simulate promise', inject(function($q, $rootScope) {
@@ -14955,21 +16701,61 @@ function $ParseProvider() {
*
* @returns {Promise} The newly created promise.
*/
+/**
+ * @ngdoc provider
+ * @name $qProvider
+ * @this
+ *
+ * @description
+ */
function $QProvider() {
-
+ var errorOnUnhandledRejections = true;
this.$get = ['$rootScope', '$exceptionHandler', function($rootScope, $exceptionHandler) {
return qFactory(function(callback) {
$rootScope.$evalAsync(callback);
- }, $exceptionHandler);
+ }, $exceptionHandler, errorOnUnhandledRejections);
}];
+
+ /**
+ * @ngdoc method
+ * @name $qProvider#errorOnUnhandledRejections
+ * @kind function
+ *
+ * @description
+ * Retrieves or overrides whether to generate an error when a rejected promise is not handled.
+ * This feature is enabled by default.
+ *
+ * @param {boolean=} value Whether to generate an error when a rejected promise is not handled.
+ * @returns {boolean|ng.$qProvider} Current value when called without a new value or self for
+ * chaining otherwise.
+ */
+ this.errorOnUnhandledRejections = function(value) {
+ if (isDefined(value)) {
+ errorOnUnhandledRejections = value;
+ return this;
+ } else {
+ return errorOnUnhandledRejections;
+ }
+ };
}
+/** @this */
function $$QProvider() {
+ var errorOnUnhandledRejections = true;
this.$get = ['$browser', '$exceptionHandler', function($browser, $exceptionHandler) {
return qFactory(function(callback) {
$browser.defer(callback);
- }, $exceptionHandler);
+ }, $exceptionHandler, errorOnUnhandledRejections);
}];
+
+ this.errorOnUnhandledRejections = function(value) {
+ if (isDefined(value)) {
+ errorOnUnhandledRejections = value;
+ return this;
+ } else {
+ return errorOnUnhandledRejections;
+ }
+ };
}
/**
@@ -14978,10 +16764,14 @@ function $$QProvider() {
* @param {function(function)} nextTick Function for executing functions in the next turn.
* @param {function(...*)} exceptionHandler Function into which unexpected exceptions are passed for
* debugging purposes.
+ @ param {=boolean} errorOnUnhandledRejections Whether an error should be generated on unhandled
+ * promises rejections.
* @returns {object} Promise manager.
*/
-function qFactory(nextTick, exceptionHandler) {
+function qFactory(nextTick, exceptionHandler, errorOnUnhandledRejections) {
var $qMinErr = minErr('$q', TypeError);
+ var queueSize = 0;
+ var checkQueue = [];
/**
* @ngdoc method
@@ -14993,14 +16783,18 @@ function qFactory(nextTick, exceptionHandler) {
*
* @returns {Deferred} Returns a new instance of deferred.
*/
- var defer = function() {
- var d = new Deferred();
- //Necessary to support unbound execution :/
- d.resolve = simpleBind(d, d.resolve);
- d.reject = simpleBind(d, d.reject);
- d.notify = simpleBind(d, d.notify);
- return d;
- };
+ function defer() {
+ return new Deferred();
+ }
+
+ function Deferred() {
+ var promise = this.promise = new Promise();
+ //Non prototype methods necessary to support unbound execution :/
+ this.resolve = function(val) { resolvePromise(promise, val); };
+ this.reject = function(reason) { rejectPromise(promise, reason); };
+ this.notify = function(progress) { notifyPromise(promise, progress); };
+ }
+
function Promise() {
this.$$state = { status: 0 };
@@ -15011,144 +16805,162 @@ function qFactory(nextTick, exceptionHandler) {
if (isUndefined(onFulfilled) && isUndefined(onRejected) && isUndefined(progressBack)) {
return this;
}
- var result = new Deferred();
+ var result = new Promise();
this.$$state.pending = this.$$state.pending || [];
this.$$state.pending.push([result, onFulfilled, onRejected, progressBack]);
if (this.$$state.status > 0) scheduleProcessQueue(this.$$state);
- return result.promise;
+ return result;
},
- "catch": function(callback) {
+ 'catch': function(callback) {
return this.then(null, callback);
},
- "finally": function(callback, progressBack) {
+ 'finally': function(callback, progressBack) {
return this.then(function(value) {
- return handleCallback(value, true, callback);
+ return handleCallback(value, resolve, callback);
}, function(error) {
- return handleCallback(error, false, callback);
+ return handleCallback(error, reject, callback);
}, progressBack);
}
});
- //Faster, more basic than angular.bind http://jsperf.com/angular-bind-vs-custom-vs-native
- function simpleBind(context, fn) {
- return function(value) {
- fn.call(context, value);
- };
- }
-
function processQueue(state) {
- var fn, deferred, pending;
+ var fn, promise, pending;
pending = state.pending;
state.processScheduled = false;
state.pending = undefined;
- for (var i = 0, ii = pending.length; i < ii; ++i) {
- deferred = pending[i][0];
- fn = pending[i][state.status];
- try {
- if (isFunction(fn)) {
- deferred.resolve(fn(state.value));
- } else if (state.status === 1) {
- deferred.resolve(state.value);
+ try {
+ for (var i = 0, ii = pending.length; i < ii; ++i) {
+ state.pur = true;
+ promise = pending[i][0];
+ fn = pending[i][state.status];
+ try {
+ if (isFunction(fn)) {
+ resolvePromise(promise, fn(state.value));
+ } else if (state.status === 1) {
+ resolvePromise(promise, state.value);
+ } else {
+ rejectPromise(promise, state.value);
+ }
+ } catch (e) {
+ rejectPromise(promise, e);
+ }
+ }
+ } finally {
+ --queueSize;
+ if (errorOnUnhandledRejections && queueSize === 0) {
+ nextTick(processChecks);
+ }
+ }
+ }
+
+ function processChecks() {
+ // eslint-disable-next-line no-unmodified-loop-condition
+ while (!queueSize && checkQueue.length) {
+ var toCheck = checkQueue.shift();
+ if (!toCheck.pur) {
+ toCheck.pur = true;
+ var errorMessage = 'Possibly unhandled rejection: ' + toDebugString(toCheck.value);
+ if (toCheck.value instanceof Error) {
+ exceptionHandler(toCheck.value, errorMessage);
} else {
- deferred.reject(state.value);
+ exceptionHandler(errorMessage);
}
- } catch (e) {
- deferred.reject(e);
- exceptionHandler(e);
}
}
}
function scheduleProcessQueue(state) {
+ if (errorOnUnhandledRejections && !state.pending && state.status === 2 && !state.pur) {
+ if (queueSize === 0 && checkQueue.length === 0) {
+ nextTick(processChecks);
+ }
+ checkQueue.push(state);
+ }
if (state.processScheduled || !state.pending) return;
state.processScheduled = true;
+ ++queueSize;
nextTick(function() { processQueue(state); });
}
- function Deferred() {
- this.promise = new Promise();
+ function resolvePromise(promise, val) {
+ if (promise.$$state.status) return;
+ if (val === promise) {
+ $$reject(promise, $qMinErr(
+ 'qcycle',
+ 'Expected promise to be resolved with value other than itself \'{0}\'',
+ val));
+ } else {
+ $$resolve(promise, val);
+ }
+
}
- extend(Deferred.prototype, {
- resolve: function(val) {
- if (this.promise.$$state.status) return;
- if (val === this.promise) {
- this.$$reject($qMinErr(
- 'qcycle',
- "Expected promise to be resolved with value other than itself '{0}'",
- val));
+ function $$resolve(promise, val) {
+ var then;
+ var done = false;
+ try {
+ if (isObject(val) || isFunction(val)) then = val.then;
+ if (isFunction(then)) {
+ promise.$$state.status = -1;
+ then.call(val, doResolve, doReject, doNotify);
} else {
- this.$$resolve(val);
- }
-
- },
-
- $$resolve: function(val) {
- var then;
- var that = this;
- var done = false;
- try {
- if ((isObject(val) || isFunction(val))) then = val && val.then;
- if (isFunction(then)) {
- this.promise.$$state.status = -1;
- then.call(val, resolvePromise, rejectPromise, simpleBind(this, this.notify));
- } else {
- this.promise.$$state.value = val;
- this.promise.$$state.status = 1;
- scheduleProcessQueue(this.promise.$$state);
- }
- } catch (e) {
- rejectPromise(e);
- exceptionHandler(e);
+ promise.$$state.value = val;
+ promise.$$state.status = 1;
+ scheduleProcessQueue(promise.$$state);
}
+ } catch (e) {
+ doReject(e);
+ }
- function resolvePromise(val) {
- if (done) return;
- done = true;
- that.$$resolve(val);
- }
- function rejectPromise(val) {
- if (done) return;
- done = true;
- that.$$reject(val);
- }
- },
+ function doResolve(val) {
+ if (done) return;
+ done = true;
+ $$resolve(promise, val);
+ }
+ function doReject(val) {
+ if (done) return;
+ done = true;
+ $$reject(promise, val);
+ }
+ function doNotify(progress) {
+ notifyPromise(promise, progress);
+ }
+ }
- reject: function(reason) {
- if (this.promise.$$state.status) return;
- this.$$reject(reason);
- },
+ function rejectPromise(promise, reason) {
+ if (promise.$$state.status) return;
+ $$reject(promise, reason);
+ }
- $$reject: function(reason) {
- this.promise.$$state.value = reason;
- this.promise.$$state.status = 2;
- scheduleProcessQueue(this.promise.$$state);
- },
+ function $$reject(promise, reason) {
+ promise.$$state.value = reason;
+ promise.$$state.status = 2;
+ scheduleProcessQueue(promise.$$state);
+ }
- notify: function(progress) {
- var callbacks = this.promise.$$state.pending;
+ function notifyPromise(promise, progress) {
+ var callbacks = promise.$$state.pending;
- if ((this.promise.$$state.status <= 0) && callbacks && callbacks.length) {
- nextTick(function() {
- var callback, result;
- for (var i = 0, ii = callbacks.length; i < ii; i++) {
- result = callbacks[i][0];
- callback = callbacks[i][3];
- try {
- result.notify(isFunction(callback) ? callback(progress) : progress);
- } catch (e) {
- exceptionHandler(e);
- }
+ if ((promise.$$state.status <= 0) && callbacks && callbacks.length) {
+ nextTick(function() {
+ var callback, result;
+ for (var i = 0, ii = callbacks.length; i < ii; i++) {
+ result = callbacks[i][0];
+ callback = callbacks[i][3];
+ try {
+ notifyPromise(result, isFunction(callback) ? callback(progress) : progress);
+ } catch (e) {
+ exceptionHandler(e);
}
- });
- }
+ }
+ });
}
- });
+ }
/**
* @ngdoc method
@@ -15186,39 +16998,27 @@ function qFactory(nextTick, exceptionHandler) {
* @param {*} reason Constant, message, exception or an object representing the rejection reason.
* @returns {Promise} Returns a promise that was already resolved as rejected with the `reason`.
*/
- var reject = function(reason) {
- var result = new Deferred();
- result.reject(reason);
- return result.promise;
- };
-
- var makePromise = function makePromise(value, resolved) {
- var result = new Deferred();
- if (resolved) {
- result.resolve(value);
- } else {
- result.reject(value);
- }
- return result.promise;
- };
+ function reject(reason) {
+ var result = new Promise();
+ rejectPromise(result, reason);
+ return result;
+ }
- var handleCallback = function handleCallback(value, isResolved, callback) {
+ function handleCallback(value, resolver, callback) {
var callbackOutput = null;
try {
if (isFunction(callback)) callbackOutput = callback();
} catch (e) {
- return makePromise(e, false);
+ return reject(e);
}
if (isPromiseLike(callbackOutput)) {
return callbackOutput.then(function() {
- return makePromise(value, isResolved);
- }, function(error) {
- return makePromise(error, false);
- });
+ return resolver(value);
+ }, reject);
} else {
- return makePromise(value, isResolved);
+ return resolver(value);
}
- };
+ }
/**
* @ngdoc method
@@ -15238,11 +17038,11 @@ function qFactory(nextTick, exceptionHandler) {
*/
- var when = function(value, callback, errback, progressBack) {
- var result = new Deferred();
- result.resolve(value);
- return result.promise.then(callback, errback, progressBack);
- };
+ function when(value, callback, errback, progressBack) {
+ var result = new Promise();
+ resolvePromise(result, value);
+ return result.then(callback, errback, progressBack);
+ }
/**
* @ngdoc method
@@ -15277,63 +17077,86 @@ function qFactory(nextTick, exceptionHandler) {
*/
function all(promises) {
- var deferred = new Deferred(),
+ var result = new Promise(),
counter = 0,
results = isArray(promises) ? [] : {};
forEach(promises, function(promise, key) {
counter++;
when(promise).then(function(value) {
- if (results.hasOwnProperty(key)) return;
results[key] = value;
- if (!(--counter)) deferred.resolve(results);
+ if (!(--counter)) resolvePromise(result, results);
}, function(reason) {
- if (results.hasOwnProperty(key)) return;
- deferred.reject(reason);
+ rejectPromise(result, reason);
});
});
if (counter === 0) {
- deferred.resolve(results);
+ resolvePromise(result, results);
}
+ return result;
+ }
+
+ /**
+ * @ngdoc method
+ * @name $q#race
+ * @kind function
+ *
+ * @description
+ * Returns a promise that resolves or rejects as soon as one of those promises
+ * resolves or rejects, with the value or reason from that promise.
+ *
+ * @param {Array.<Promise>|Object.<Promise>} promises An array or hash of promises.
+ * @returns {Promise} a promise that resolves or rejects as soon as one of the `promises`
+ * resolves or rejects, with the value or reason from that promise.
+ */
+
+ function race(promises) {
+ var deferred = defer();
+
+ forEach(promises, function(promise) {
+ when(promise).then(deferred.resolve, deferred.reject);
+ });
+
return deferred.promise;
}
- var $Q = function Q(resolver) {
+ function $Q(resolver) {
if (!isFunction(resolver)) {
- throw $qMinErr('norslvr', "Expected resolverFn, got '{0}'", resolver);
- }
-
- if (!(this instanceof Q)) {
- // More useful when $Q is the Promise itself.
- return new Q(resolver);
+ throw $qMinErr('norslvr', 'Expected resolverFn, got \'{0}\'', resolver);
}
- var deferred = new Deferred();
+ var promise = new Promise();
function resolveFn(value) {
- deferred.resolve(value);
+ resolvePromise(promise, value);
}
function rejectFn(reason) {
- deferred.reject(reason);
+ rejectPromise(promise, reason);
}
resolver(resolveFn, rejectFn);
- return deferred.promise;
- };
+ return promise;
+ }
+
+ // Let's make the instanceof operator work for promises, so that
+ // `new $q(fn) instanceof $q` would evaluate to true.
+ $Q.prototype = Promise.prototype;
$Q.defer = defer;
$Q.reject = reject;
$Q.when = when;
$Q.resolve = resolve;
$Q.all = all;
+ $Q.race = race;
return $Q;
}
+/** @this */
function $$RAFProvider() { //rAF
this.$get = ['$window', '$timeout', function($window, $timeout) {
var requestAnimationFrame = $window.requestAnimationFrame ||
@@ -15423,6 +17246,8 @@ function $$RAFProvider() { //rAF
/**
* @ngdoc service
* @name $rootScope
+ * @this
+ *
* @description
*
* Every application has a single root {@link ng.$rootScope.Scope scope}.
@@ -15467,14 +17292,19 @@ function $RootScopeProvider() {
function cleanUpScope($scope) {
+ // Support: IE 9 only
if (msie === 9) {
// There is a memory leak in IE9 if all child scopes are not disconnected
// completely when a scope is destroyed. So this code will recurse up through
// all this scopes children
//
// See issue https://github.com/angular/angular.js/issues/10706
- $scope.$$childHead && cleanUpScope($scope.$$childHead);
- $scope.$$nextSibling && cleanUpScope($scope.$$nextSibling);
+ if ($scope.$$childHead) {
+ cleanUpScope($scope.$$childHead);
+ }
+ if ($scope.$$nextSibling) {
+ cleanUpScope($scope.$$nextSibling);
+ }
}
// The code below works around IE9 and V8's memory leaks
@@ -15626,7 +17456,7 @@ function $RootScopeProvider() {
// prototypically. In all other cases, this property needs to be set
// when the parent scope is destroyed.
// The listener needs to be added after the parent is set
- if (isolate || parent != this) child.$on('$destroy', destroyChildScope);
+ if (isolate || parent !== this) child.$on('$destroy', destroyChildScope);
return child;
},
@@ -15643,7 +17473,7 @@ function $RootScopeProvider() {
* $digest()} and should return the value that will be watched. (`watchExpression` should not change
* its value when executed multiple times with the same input because it may be executed multiple
* times by {@link ng.$rootScope.Scope#$digest $digest()}. That is, `watchExpression` should be
- * [idempotent](http://en.wikipedia.org/wiki/Idempotence).
+ * [idempotent](http://en.wikipedia.org/wiki/Idempotence).)
* - The `listener` is called only when the value from the current `watchExpression` and the
* previous call to `watchExpression` are not equal (with the exception of the initial run,
* see below). Inequality is determined according to reference inequality,
@@ -15654,6 +17484,8 @@ function $RootScopeProvider() {
* according to the {@link angular.equals} function. To save the value of the object for
* later comparison, the {@link angular.copy} function is used. This therefore means that
* watching complex objects will have adverse memory and performance implications.
+ * - This should not be used to watch for changes in objects that are
+ * or contain [File](https://developer.mozilla.org/docs/Web/API/File) objects due to limitations with {@link angular.copy `angular.copy`}.
* - The watch `listener` may change the model, which may trigger other `listener`s to fire.
* This is achieved by rerunning the watchers until no changes are detected. The rerun
* iteration limit is 10 to prevent an infinite loop deadlock.
@@ -15771,15 +17603,21 @@ function $RootScopeProvider() {
if (!array) {
array = scope.$$watchers = [];
+ array.$$digestWatchIndex = -1;
}
// we use unshift since we use a while loop in $digest for speed.
// the while loop reads in reverse order.
array.unshift(watcher);
+ array.$$digestWatchIndex++;
incrementWatchersCount(this, 1);
return function deregisterWatch() {
- if (arrayRemove(array, watcher) >= 0) {
+ var index = arrayRemove(array, watcher);
+ if (index >= 0) {
incrementWatchersCount(scope, -1);
+ if (index < array.$$digestWatchIndex) {
+ array.$$digestWatchIndex--;
+ }
}
lastDirtyWatch = null;
};
@@ -15794,8 +17632,8 @@ function $RootScopeProvider() {
* A variant of {@link ng.$rootScope.Scope#$watch $watch()} where it watches an array of `watchExpressions`.
* If any one expression in the collection changes the `listener` is executed.
*
- * - The items in the `watchExpressions` array are observed via standard $watch operation and are examined on every
- * call to $digest() to see if any items changes.
+ * - The items in the `watchExpressions` array are observed via the standard `$watch` operation. Their return
+ * values are examined for changes on every call to `$digest`.
* - The `listener` is called whenever any expression in the `watchExpressions` array changes.
*
* @param {Array.<string|Function(scope)>} watchExpressions Array of expressions that will be individually
@@ -15976,6 +17814,7 @@ function $RootScopeProvider() {
oldItem = oldValue[i];
newItem = newValue[i];
+ // eslint-disable-next-line no-self-compare
bothNaN = (oldItem !== oldItem) && (newItem !== newItem);
if (!bothNaN && (oldItem !== newItem)) {
changeDetected++;
@@ -15998,6 +17837,7 @@ function $RootScopeProvider() {
oldItem = oldValue[key];
if (key in oldValue) {
+ // eslint-disable-next-line no-self-compare
bothNaN = (oldItem !== oldItem) && (newItem !== newItem);
if (!bothNaN && (oldItem !== newItem)) {
changeDetected++;
@@ -16108,13 +17948,12 @@ function $RootScopeProvider() {
*
*/
$digest: function() {
- var watch, value, last,
+ var watch, value, last, fn, get,
watchers,
- length,
dirty, ttl = TTL,
next, current, target = this,
watchLog = [],
- logIdx, logMsg, asyncTask;
+ logIdx, asyncTask;
beginPhase('$digest');
// Check for changes to browser url that happened in sync before the call to $digest
@@ -16133,36 +17972,42 @@ function $RootScopeProvider() {
dirty = false;
current = target;
- while (asyncQueue.length) {
+ // It's safe for asyncQueuePosition to be a local variable here because this loop can't
+ // be reentered recursively. Calling $digest from a function passed to $evalAsync would
+ // lead to a '$digest already in progress' error.
+ for (var asyncQueuePosition = 0; asyncQueuePosition < asyncQueue.length; asyncQueuePosition++) {
try {
- asyncTask = asyncQueue.shift();
- asyncTask.scope.$eval(asyncTask.expression, asyncTask.locals);
+ asyncTask = asyncQueue[asyncQueuePosition];
+ fn = asyncTask.fn;
+ fn(asyncTask.scope, asyncTask.locals);
} catch (e) {
$exceptionHandler(e);
}
lastDirtyWatch = null;
}
+ asyncQueue.length = 0;
traverseScopesLoop:
do { // "traverse the scopes" loop
if ((watchers = current.$$watchers)) {
// process our watches
- length = watchers.length;
- while (length--) {
+ watchers.$$digestWatchIndex = watchers.length;
+ while (watchers.$$digestWatchIndex--) {
try {
- watch = watchers[length];
+ watch = watchers[watchers.$$digestWatchIndex];
// Most common watches are on primitives, in which case we can short
// circuit it with === operator, only when === fails do we use .equals
if (watch) {
- if ((value = watch.get(current)) !== (last = watch.last) &&
+ get = watch.get;
+ if ((value = get(current)) !== (last = watch.last) &&
!(watch.eq
? equals(value, last)
- : (typeof value === 'number' && typeof last === 'number'
- && isNaN(value) && isNaN(last)))) {
+ : (isNumberNaN(value) && isNumberNaN(last)))) {
dirty = true;
lastDirtyWatch = watch;
watch.last = watch.eq ? copy(value, null) : value;
- watch.fn(value, ((last === initWatchVal) ? value : last), current);
+ fn = watch.fn;
+ fn(value, ((last === initWatchVal) ? value : last), current);
if (ttl < 5) {
logIdx = 4 - ttl;
if (!watchLog[logIdx]) watchLog[logIdx] = [];
@@ -16210,13 +18055,19 @@ function $RootScopeProvider() {
clearPhase();
- while (postDigestQueue.length) {
+ // postDigestQueuePosition isn't local here because this loop can be reentered recursively.
+ while (postDigestQueuePosition < postDigestQueue.length) {
try {
- postDigestQueue.shift()();
+ postDigestQueue[postDigestQueuePosition++]();
} catch (e) {
$exceptionHandler(e);
}
}
+ postDigestQueue.length = postDigestQueuePosition = 0;
+
+ // Check for changes to browser url that happened during the $digest
+ // (for which no event is fired; e.g. via `history.pushState()`)
+ $browser.$$checkUrlChange();
},
@@ -16274,8 +18125,8 @@ function $RootScopeProvider() {
// sever all the references to parent scopes (after this cleanup, the current scope should
// not be retained by any of our references and should be eligible for garbage collection)
- if (parent && parent.$$childHead == this) parent.$$childHead = this.$$nextSibling;
- if (parent && parent.$$childTail == this) parent.$$childTail = this.$$prevSibling;
+ if (parent && parent.$$childHead === this) parent.$$childHead = this.$$nextSibling;
+ if (parent && parent.$$childTail === this) parent.$$childTail = this.$$prevSibling;
if (this.$$prevSibling) this.$$prevSibling.$$nextSibling = this.$$nextSibling;
if (this.$$nextSibling) this.$$nextSibling.$$prevSibling = this.$$prevSibling;
@@ -16362,7 +18213,7 @@ function $RootScopeProvider() {
});
}
- asyncQueue.push({scope: this, expression: expr, locals: locals});
+ asyncQueue.push({scope: this, fn: $parse(expr), locals: locals});
},
$$postDigest: function(fn) {
@@ -16429,6 +18280,7 @@ function $RootScopeProvider() {
$rootScope.$digest();
} catch (e) {
$exceptionHandler(e);
+ // eslint-disable-next-line no-unsafe-finally
throw e;
}
}
@@ -16453,7 +18305,10 @@ function $RootScopeProvider() {
*/
$applyAsync: function(expr) {
var scope = this;
- expr && applyAsyncQueue.push($applyAsyncExpression);
+ if (expr) {
+ applyAsyncQueue.push($applyAsyncExpression);
+ }
+ expr = $parse(expr);
scheduleApplyAsync();
function $applyAsyncExpression() {
@@ -16670,6 +18525,8 @@ function $RootScopeProvider() {
var postDigestQueue = $rootScope.$$postDigestQueue = [];
var applyAsyncQueue = $rootScope.$$applyAsyncQueue = [];
+ var postDigestQueuePosition = 0;
+
return $rootScope;
@@ -16729,6 +18586,22 @@ function $RootScopeProvider() {
}
/**
+ * @ngdoc service
+ * @name $rootElement
+ *
+ * @description
+ * The root element of Angular application. This is either the element where {@link
+ * ng.directive:ngApp ngApp} was declared or the element passed into
+ * {@link angular.bootstrap}. The element represents the root element of application. It is also the
+ * location where the application's {@link auto.$injector $injector} service gets
+ * published, and can be retrieved using `$rootElement.injector()`.
+ */
+
+
+// the implementation is in angular.bootstrap
+
+/**
+ * @this
* @description
* Private service to sanitize uris for links and images. Used by $compile and $sanitize.
*/
@@ -16809,6 +18682,8 @@ function $$SanitizeUriProvider() {
* Or gives undesired access to variables likes document or window? *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
+/* exported $SceProvider, $SceDelegateProvider */
+
var $sceMinErr = minErr('$sce');
var SCE_CONTEXTS = {
@@ -16823,6 +18698,13 @@ var SCE_CONTEXTS = {
// Helper functions follow.
+var UNDERSCORE_LOWERCASE_REGEXP = /_([a-z])/g;
+
+function snakeToCamel(name) {
+ return name
+ .replace(UNDERSCORE_LOWERCASE_REGEXP, fnCamelCaseReplace);
+}
+
function adjustMatcher(matcher) {
if (matcher === 'self') {
return matcher;
@@ -16836,8 +18718,8 @@ function adjustMatcher(matcher) {
'Illegal sequence *** in string matcher. String: {0}', matcher);
}
matcher = escapeForRegexp(matcher).
- replace('\\*\\*', '.*').
- replace('\\*', '[^:/.?&;]*');
+ replace(/\\\*\\\*/g, '.*').
+ replace(/\\\*/g, '[^:/.?&;]*');
return new RegExp('^' + matcher + '$');
} else if (isRegExp(matcher)) {
// The only other type of matcher allowed is a Regexp.
@@ -16892,6 +18774,8 @@ function adjustMatchers(matchers) {
/**
* @ngdoc provider
* @name $sceDelegateProvider
+ * @this
+ *
* @description
*
* The `$sceDelegateProvider` provider allows developers to configure the {@link ng.$sceDelegate
@@ -16907,7 +18791,7 @@ function adjustMatchers(matchers) {
*
* - your app is hosted at url `http://myapp.example.com/`
* - but some of your templates are hosted on other domains you control such as
- * `http://srv01.assets.example.com/`,  `http://srv02.assets.example.com/`, etc.
+ * `http://srv01.assets.example.com/`, `http://srv02.assets.example.com/`, etc.
* - and you have an open redirect at `http://myapp.example.com/clickThru?...`.
*
* Here is what a secure configuration for this scenario might look like:
@@ -16942,13 +18826,15 @@ function $SceDelegateProvider() {
* @kind function
*
* @param {Array=} whitelist When provided, replaces the resourceUrlWhitelist with the value
- * provided. This must be an array or null. A snapshot of this array is used so further
- * changes to the array are ignored.
+ * provided. This must be an array or null. A snapshot of this array is used so further
+ * changes to the array are ignored.
*
- * Follow {@link ng.$sce#resourceUrlPatternItem this link} for a description of the items
- * allowed in this array.
+ * Follow {@link ng.$sce#resourceUrlPatternItem this link} for a description of the items
+ * allowed in this array.
*
- * Note: **an empty whitelist array will block all URLs**!
+ * <div class="alert alert-warning">
+ * **Note:** an empty whitelist array will block all URLs!
+ * </div>
*
* @return {Array} the currently set whitelist array.
*
@@ -16971,17 +18857,17 @@ function $SceDelegateProvider() {
* @kind function
*
* @param {Array=} blacklist When provided, replaces the resourceUrlBlacklist with the value
- * provided. This must be an array or null. A snapshot of this array is used so further
- * changes to the array are ignored.
+ * provided. This must be an array or null. A snapshot of this array is used so further
+ * changes to the array are ignored.
*
- * Follow {@link ng.$sce#resourceUrlPatternItem this link} for a description of the items
- * allowed in this array.
+ * Follow {@link ng.$sce#resourceUrlPatternItem this link} for a description of the items
+ * allowed in this array.
*
- * The typical usage for the blacklist is to **block
- * [open redirects](http://cwe.mitre.org/data/definitions/601.html)** served by your domain as
- * these would otherwise be trusted but actually return content from the redirected domain.
+ * The typical usage for the blacklist is to **block
+ * [open redirects](http://cwe.mitre.org/data/definitions/601.html)** served by your domain as
+ * these would otherwise be trusted but actually return content from the redirected domain.
*
- * Finally, **the blacklist overrides the whitelist** and has the final say.
+ * Finally, **the blacklist overrides the whitelist** and has the final say.
*
* @return {Array} the currently set blacklist array.
*
@@ -17186,6 +19072,8 @@ function $SceDelegateProvider() {
/**
* @ngdoc provider
* @name $sceProvider
+ * @this
+ *
* @description
*
* The $sceProvider provider allows developers to configure the {@link ng.$sce $sce} service.
@@ -17195,8 +19083,6 @@ function $SceDelegateProvider() {
* Read more about {@link ng.$sce Strict Contextual Escaping (SCE)}.
*/
-/* jshint maxlen: false*/
-
/**
* @ngdoc service
* @name $sce
@@ -17221,7 +19107,7 @@ function $SceDelegateProvider() {
* You can ensure your document is in standards mode and not quirks mode by adding `<!doctype html>`
* to the top of your HTML document.
*
- * SCE assists in writing code in way that (a) is secure by default and (b) makes auditing for
+ * SCE assists in writing code in a way that (a) is secure by default and (b) makes auditing for
* security vulnerabilities such as XSS, clickjacking, etc. a lot easier.
*
* Here's an example of a binding in a privileged context:
@@ -17329,7 +19215,7 @@ function $SceDelegateProvider() {
* | `$sce.HTML` | For HTML that's safe to source into the application. The {@link ng.directive:ngBindHtml ngBindHtml} directive uses this context for bindings. If an unsafe value is encountered and the {@link ngSanitize $sanitize} module is present this will sanitize the value instead of throwing an error. |
* | `$sce.CSS` | For CSS that's safe to source into the application. Currently unused. Feel free to use it in your own directives. |
* | `$sce.URL` | For URLs that are safe to follow as links. Currently unused (`<a href=` and `<img src=` sanitize their urls and don't constitute an SCE context. |
- * | `$sce.RESOURCE_URL` | For URLs that are not only safe to follow as links, but whose contents are also safe to include in your application. Examples include `ng-include`, `src` / `ngSrc` bindings for tags other than `IMG` (e.g. `IFRAME`, `OBJECT`, etc.) <br><br>Note that `$sce.RESOURCE_URL` makes a stronger statement about the URL than `$sce.URL` does and therefore contexts requiring values trusted for `$sce.RESOURCE_URL` can be used anywhere that values trusted for `$sce.URL` are required. |
+ * | `$sce.RESOURCE_URL` | For URLs that are not only safe to follow as links, but whose contents are also safe to include in your application. Examples include `ng-include`, `src` / `ngSrc` bindings for tags other than `IMG`, `VIDEO`, `AUDIO`, `SOURCE`, and `TRACK` (e.g. `IFRAME`, `OBJECT`, etc.) <br><br>Note that `$sce.RESOURCE_URL` makes a stronger statement about the URL than `$sce.URL` does and therefore contexts requiring values trusted for `$sce.RESOURCE_URL` can be used anywhere that values trusted for `$sce.URL` are required. |
* | `$sce.JS` | For JavaScript that is safe to execute in your application's context. Currently unused. Feel free to use it in your own directives. |
*
* ## Format of items in {@link ng.$sceDelegateProvider#resourceUrlWhitelist resourceUrlWhitelist}/{@link ng.$sceDelegateProvider#resourceUrlBlacklist Blacklist} <a name="resourceUrlPatternItem"></a>
@@ -17381,7 +19267,7 @@ function $SceDelegateProvider() {
*
* ## Show me an example using SCE.
*
- * <example module="mySceApp" deps="angular-sanitize.js">
+ * <example module="mySceApp" deps="angular-sanitize.js" name="sce-service">
* <file name="index.html">
* <div ng-controller="AppController as myCtrl">
* <i ng-bind-html="myCtrl.explicitlyTrustedHtml" id="explicitlyTrustedHtml"></i><br><br>
@@ -17402,10 +19288,10 @@ function $SceDelegateProvider() {
* <file name="script.js">
* angular.module('mySceApp', ['ngSanitize'])
* .controller('AppController', ['$http', '$templateCache', '$sce',
- * function($http, $templateCache, $sce) {
+ * function AppController($http, $templateCache, $sce) {
* var self = this;
- * $http.get("test_data.json", {cache: $templateCache}).success(function(userComments) {
- * self.userComments = userComments;
+ * $http.get('test_data.json', {cache: $templateCache}).then(function(response) {
+ * self.userComments = response.data;
* });
* self.explicitlyTrustedHtml = $sce.trustAsHtml(
* '<span onmouseover="this.textContent=&quot;Explicitly trusted HTML bypasses ' +
@@ -17428,12 +19314,12 @@ function $SceDelegateProvider() {
* <file name="protractor.js" type="protractor">
* describe('SCE doc demo', function() {
* it('should sanitize untrusted values', function() {
- * expect(element.all(by.css('.htmlComment')).first().getInnerHtml())
+ * expect(element.all(by.css('.htmlComment')).first().getAttribute('innerHTML'))
* .toBe('<span>Is <i>anyone</i> reading this?</span>');
* });
*
* it('should NOT sanitize explicitly trusted values', function() {
- * expect(element(by.id('explicitlyTrustedHtml')).getInnerHtml()).toBe(
+ * expect(element(by.id('explicitlyTrustedHtml')).getAttribute('innerHTML')).toBe(
* '<span onmouseover="this.textContent=&quot;Explicitly trusted HTML bypasses ' +
* 'sanitization.&quot;">Hover over this text.</span>');
* });
@@ -17462,7 +19348,6 @@ function $SceDelegateProvider() {
* ```
*
*/
-/* jshint maxlen: 100 */
function $SceProvider() {
var enabled = true;
@@ -17534,6 +19419,7 @@ function $SceProvider() {
this.$get = ['$parse', '$sceDelegate', function(
$parse, $sceDelegate) {
+ // Support: IE 9-11 only
// Prereq: Ensure that we're not running in IE<11 quirks mode. In that mode, IE < 11 allow
// the "expression(javascript expression)" syntax which is insecure.
if (enabled && msie < 8) {
@@ -17847,13 +19733,13 @@ function $SceProvider() {
forEach(SCE_CONTEXTS, function(enumValue, name) {
var lName = lowercase(name);
- sce[camelCase("parse_as_" + lName)] = function(expr) {
+ sce[snakeToCamel('parse_as_' + lName)] = function(expr) {
return parse(enumValue, expr);
};
- sce[camelCase("get_trusted_" + lName)] = function(value) {
+ sce[snakeToCamel('get_trusted_' + lName)] = function(value) {
return getTrusted(enumValue, value);
};
- sce[camelCase("trust_as_" + lName)] = function(value) {
+ sce[snakeToCamel('trust_as_' + lName)] = function(value) {
return trustAs(enumValue, value);
};
});
@@ -17862,12 +19748,15 @@ function $SceProvider() {
}];
}
+/* exported $SnifferProvider */
+
/**
* !!! This is an undocumented "private" service !!!
*
* @name $sniffer
* @requires $window
* @requires $document
+ * @this
*
* @property {boolean} history Does the browser support html5 history api ?
* @property {boolean} transitions Does the browser support CSS transition events ?
@@ -17879,37 +19768,32 @@ function $SceProvider() {
function $SnifferProvider() {
this.$get = ['$window', '$document', function($window, $document) {
var eventSupport = {},
+ // Chrome Packaged Apps are not allowed to access `history.pushState`.
+ // If not sandboxed, they can be detected by the presence of `chrome.app.runtime`
+ // (see https://developer.chrome.com/apps/api_index). If sandboxed, they can be detected by
+ // the presence of an extension runtime ID and the absence of other Chrome runtime APIs
+ // (see https://developer.chrome.com/apps/manifest/sandbox).
+ // (NW.js apps have access to Chrome APIs, but do support `history`.)
+ isNw = $window.nw && $window.nw.process,
+ isChromePackagedApp =
+ !isNw &&
+ $window.chrome &&
+ ($window.chrome.app && $window.chrome.app.runtime ||
+ !$window.chrome.app && $window.chrome.runtime && $window.chrome.runtime.id),
+ hasHistoryPushState = !isChromePackagedApp && $window.history && $window.history.pushState,
android =
toInt((/android (\d+)/.exec(lowercase(($window.navigator || {}).userAgent)) || [])[1]),
boxee = /Boxee/i.test(($window.navigator || {}).userAgent),
document = $document[0] || {},
- vendorPrefix,
- vendorRegex = /^(Moz|webkit|ms)(?=[A-Z])/,
bodyStyle = document.body && document.body.style,
transitions = false,
- animations = false,
- match;
+ animations = false;
if (bodyStyle) {
- for (var prop in bodyStyle) {
- if (match = vendorRegex.exec(prop)) {
- vendorPrefix = match[0];
- vendorPrefix = vendorPrefix.substr(0, 1).toUpperCase() + vendorPrefix.substr(1);
- break;
- }
- }
-
- if (!vendorPrefix) {
- vendorPrefix = ('WebkitOpacity' in bodyStyle) && 'webkit';
- }
-
- transitions = !!(('transition' in bodyStyle) || (vendorPrefix + 'Transition' in bodyStyle));
- animations = !!(('animation' in bodyStyle) || (vendorPrefix + 'Animation' in bodyStyle));
-
- if (android && (!transitions || !animations)) {
- transitions = isString(bodyStyle.webkitTransition);
- animations = isString(bodyStyle.webkitAnimation);
- }
+ // Support: Android <5, Blackberry Browser 10, default Chrome in Android 4.4.x
+ // Mentioned browsers need a -webkit- prefix for transitions & animations.
+ transitions = !!('transition' in bodyStyle || 'webkitTransition' in bodyStyle);
+ animations = !!('animation' in bodyStyle || 'webkitAnimation' in bodyStyle);
}
@@ -17922,16 +19806,15 @@ function $SnifferProvider() {
// older webkit browser (533.9) on Boxee box has exactly the same problem as Android has
// so let's not use the history API also
// We are purposefully using `!(android < 4)` to cover the case when `android` is undefined
- // jshint -W018
- history: !!($window.history && $window.history.pushState && !(android < 4) && !boxee),
- // jshint +W018
+ history: !!(hasHistoryPushState && !(android < 4) && !boxee),
hasEvent: function(event) {
+ // Support: IE 9-11 only
// IE9 implements 'input' event it's so fubared that we rather pretend that it doesn't have
// it. In particular the event is not fired when backspace or delete key are pressed or
// when cut operation is performed.
// IE10+ implements 'input' event but it erroneously fires under various situations,
// e.g. when placeholder changes, or a form is focused.
- if (event === 'input' && msie <= 11) return false;
+ if (event === 'input' && msie) return false;
if (isUndefined(eventSupport[event])) {
var divElm = document.createElement('div');
@@ -17941,7 +19824,6 @@ function $SnifferProvider() {
return eventSupport[event];
},
csp: csp(),
- vendorPrefix: vendorPrefix,
transitions: transitions,
animations: animations,
android: android
@@ -17949,11 +19831,13 @@ function $SnifferProvider() {
}];
}
-var $compileMinErr = minErr('$compile');
+var $templateRequestMinErr = minErr('$compile');
/**
* @ngdoc provider
* @name $templateRequestProvider
+ * @this
+ *
* @description
* Used to configure the options passed to the {@link $http} service when making a template request.
*
@@ -18007,57 +19891,64 @@ function $TemplateRequestProvider() {
*
* @property {number} totalPendingRequests total amount of pending template requests being downloaded.
*/
- this.$get = ['$templateCache', '$http', '$q', '$sce', function($templateCache, $http, $q, $sce) {
-
- function handleRequestFn(tpl, ignoreRequestError) {
- handleRequestFn.totalPendingRequests++;
-
- // We consider the template cache holds only trusted templates, so
- // there's no need to go through whitelisting again for keys that already
- // are included in there. This also makes Angular accept any script
- // directive, no matter its name. However, we still need to unwrap trusted
- // types.
- if (!isString(tpl) || !$templateCache.get(tpl)) {
- tpl = $sce.getTrustedResourceUrl(tpl);
- }
+ this.$get = ['$exceptionHandler', '$templateCache', '$http', '$q', '$sce',
+ function($exceptionHandler, $templateCache, $http, $q, $sce) {
+
+ function handleRequestFn(tpl, ignoreRequestError) {
+ handleRequestFn.totalPendingRequests++;
+
+ // We consider the template cache holds only trusted templates, so
+ // there's no need to go through whitelisting again for keys that already
+ // are included in there. This also makes Angular accept any script
+ // directive, no matter its name. However, we still need to unwrap trusted
+ // types.
+ if (!isString(tpl) || isUndefined($templateCache.get(tpl))) {
+ tpl = $sce.getTrustedResourceUrl(tpl);
+ }
- var transformResponse = $http.defaults && $http.defaults.transformResponse;
+ var transformResponse = $http.defaults && $http.defaults.transformResponse;
- if (isArray(transformResponse)) {
- transformResponse = transformResponse.filter(function(transformer) {
- return transformer !== defaultHttpResponseTransform;
- });
- } else if (transformResponse === defaultHttpResponseTransform) {
- transformResponse = null;
- }
+ if (isArray(transformResponse)) {
+ transformResponse = transformResponse.filter(function(transformer) {
+ return transformer !== defaultHttpResponseTransform;
+ });
+ } else if (transformResponse === defaultHttpResponseTransform) {
+ transformResponse = null;
+ }
- return $http.get(tpl, extend({
- cache: $templateCache,
- transformResponse: transformResponse
- }, httpOptions))
- ['finally'](function() {
- handleRequestFn.totalPendingRequests--;
- })
- .then(function(response) {
- $templateCache.put(tpl, response.data);
- return response.data;
- }, handleError);
+ return $http.get(tpl, extend({
+ cache: $templateCache,
+ transformResponse: transformResponse
+ }, httpOptions))
+ .finally(function() {
+ handleRequestFn.totalPendingRequests--;
+ })
+ .then(function(response) {
+ $templateCache.put(tpl, response.data);
+ return response.data;
+ }, handleError);
+
+ function handleError(resp) {
+ if (!ignoreRequestError) {
+ resp = $templateRequestMinErr('tpload',
+ 'Failed to load template: {0} (HTTP status: {1} {2})',
+ tpl, resp.status, resp.statusText);
+
+ $exceptionHandler(resp);
+ }
- function handleError(resp) {
- if (!ignoreRequestError) {
- throw $compileMinErr('tpload', 'Failed to load template: {0} (HTTP status: {1} {2})',
- tpl, resp.status, resp.statusText);
+ return $q.reject(resp);
}
- return $q.reject(resp);
}
- }
- handleRequestFn.totalPendingRequests = 0;
+ handleRequestFn.totalPendingRequests = 0;
- return handleRequestFn;
- }];
+ return handleRequestFn;
+ }
+ ];
}
+/** @this */
function $$TestabilityProvider() {
this.$get = ['$rootScope', '$browser', '$location',
function($rootScope, $browser, $location) {
@@ -18096,7 +19987,7 @@ function $$TestabilityProvider() {
matches.push(binding);
}
} else {
- if (bindingName.indexOf(expression) != -1) {
+ if (bindingName.indexOf(expression) !== -1) {
matches.push(binding);
}
}
@@ -18173,6 +20064,7 @@ function $$TestabilityProvider() {
}];
}
+/** @this */
function $TimeoutProvider() {
this.$get = ['$rootScope', '$browser', '$q', '$$q', '$exceptionHandler',
function($rootScope, $browser, $q, $$q, $exceptionHandler) {
@@ -18205,8 +20097,8 @@ function $TimeoutProvider() {
* @param {boolean=} [invokeApply=true] If set to `false` skips model dirty checking, otherwise
* will invoke `fn` within the {@link ng.$rootScope.Scope#$apply $apply} block.
* @param {...*=} Pass additional parameters to the executed function.
- * @returns {Promise} Promise that will be resolved when the timeout is reached. The value this
- * promise will be resolved with is the return value of the `fn` function.
+ * @returns {Promise} Promise that will be resolved when the timeout is reached. The promise
+ * will be resolved with the return value of the `fn` function.
*
*/
function timeout(fn, delay, invokeApply) {
@@ -18228,8 +20120,7 @@ function $TimeoutProvider() {
} catch (e) {
deferred.reject(e);
$exceptionHandler(e);
- }
- finally {
+ } finally {
delete deferreds[promise.$$timeoutId];
}
@@ -18257,6 +20148,8 @@ function $TimeoutProvider() {
*/
timeout.cancel = function(promise) {
if (promise && promise.$$timeoutId in deferreds) {
+ // Timeout cancels should not report an unhandled promise.
+ deferreds[promise.$$timeoutId].promise.catch(noop);
deferreds[promise.$$timeoutId].reject('canceled');
delete deferreds[promise.$$timeoutId];
return $browser.defer.cancel(promise.$$timeoutId);
@@ -18275,7 +20168,7 @@ function $TimeoutProvider() {
// doesn't know about mocked locations and resolves URLs to the real document - which is
// exactly the behavior needed here. There is little value is mocking these out for this
// service.
-var urlParsingNode = document.createElement("a");
+var urlParsingNode = window.document.createElement('a');
var originUrl = urlResolve(window.location.href);
@@ -18288,7 +20181,7 @@ var originUrl = urlResolve(window.location.href);
* URL will be resolved into an absolute URL in the context of the application document.
* Parsing means that the anchor node's host, hostname, protocol, port, pathname and related
* properties are all populated to reflect the normalized URL. This approach has wide
- * compatibility - Safari 1+, Mozilla 1+, Opera 7+,e etc. See
+ * compatibility - Safari 1+, Mozilla 1+ etc. See
* http://www.aptana.com/reference/html/api/HTMLAnchorElement.html
*
* Implementation Notes for IE
@@ -18327,10 +20220,11 @@ var originUrl = urlResolve(window.location.href);
function urlResolve(url) {
var href = url;
+ // Support: IE 9-11 only
if (msie) {
// Normalize before parse. Refer Implementation Notes on why this is
// done in two steps on IE.
- urlParsingNode.setAttribute("href", href);
+ urlParsingNode.setAttribute('href', href);
href = urlParsingNode.href;
}
@@ -18367,6 +20261,7 @@ function urlIsSameOrigin(requestUrl) {
/**
* @ngdoc service
* @name $window
+ * @this
*
* @description
* A reference to the browser's `window` object. While `window`
@@ -18380,7 +20275,7 @@ function urlIsSameOrigin(requestUrl) {
* expression.
*
* @example
- <example module="windowExample">
+ <example module="windowExample" name="window-service">
<file name="index.html">
<script>
angular.module('windowExample', [])
@@ -18423,6 +20318,14 @@ function $$CookieReader($document) {
var lastCookies = {};
var lastCookieString = '';
+ function safeGetCookie(rawDocument) {
+ try {
+ return rawDocument.cookie || '';
+ } catch (e) {
+ return '';
+ }
+ }
+
function safeDecodeURIComponent(str) {
try {
return decodeURIComponent(str);
@@ -18433,7 +20336,7 @@ function $$CookieReader($document) {
return function() {
var cookieArray, cookie, i, index, name;
- var currentCookieString = rawDocument.cookie || '';
+ var currentCookieString = safeGetCookie(rawDocument);
if (currentCookieString !== lastCookieString) {
lastCookieString = currentCookieString;
@@ -18460,6 +20363,7 @@ function $$CookieReader($document) {
$$CookieReader.$inject = ['$document'];
+/** @this */
function $$CookieReaderProvider() {
this.$get = $$CookieReader;
}
@@ -18539,9 +20443,15 @@ function $$CookieReaderProvider() {
* @description
* Filters are used for formatting data displayed to the user.
*
+ * They can be used in view templates, controllers or services.Angular comes
+ * with a collection of [built-in filters](api/ng/filter), but it is easy to
+ * define your own as well.
+ *
* The general syntax in templates is as follows:
*
- * {{ expression [| filter_name[:parameter_value] ... ] }}
+ * ```html
+ * {{ expression [| filter_name[:parameter_value] ... ] }}
+ * ```
*
* @param {String} name Name of the filter function to retrieve
* @return {Function} the filter function
@@ -18564,6 +20474,7 @@ function $$CookieReaderProvider() {
</example>
*/
$FilterProvider.$inject = ['$provide'];
+/** @this */
function $FilterProvider($provide) {
var suffix = 'Filter';
@@ -18613,7 +20524,7 @@ function $FilterProvider($provide) {
lowercaseFilter: false,
numberFilter: false,
orderByFilter: false,
- uppercaseFilter: false,
+ uppercaseFilter: false
*/
register('currency', currencyFilter);
@@ -18636,6 +20547,9 @@ function $FilterProvider($provide) {
* Selects a subset of items from `array` and returns it as a new array.
*
* @param {Array} array The source array.
+ * <div class="alert alert-info">
+ * **Note**: If the array contains objects that reference themselves, filtering is not possible.
+ * </div>
* @param {string|Object|function()} expression The predicate to be used for selecting items from
* `array`.
*
@@ -18649,10 +20563,11 @@ function $FilterProvider($provide) {
* - `Object`: A pattern object can be used to filter specific properties on objects contained
* by `array`. For example `{name:"M", phone:"1"}` predicate will return an array of items
* which have property `name` containing "M" and property `phone` containing "1". A special
- * property name `$` can be used (as in `{$:"text"}`) to accept a match against any
- * property of the object or its nested object properties. That's equivalent to the simple
- * substring match with a `string` as described above. The predicate can be negated by prefixing
- * the string with `!`.
+ * property name (`$` by default) can be used (e.g. as in `{$: "text"}`) to accept a match
+ * against any property of the object or its nested object properties. That's equivalent to the
+ * simple substring match with a `string` as described above. The special property name can be
+ * overwritten, using the `anyPropertyKey` parameter.
+ * The predicate can be negated by prefixing the string with `!`.
* For example `{name: "!M"}` predicate will return an array of items which have property `name`
* not containing "M".
*
@@ -18667,7 +20582,7 @@ function $FilterProvider($provide) {
*
* The final result is an array of those elements that the predicate returned true for.
*
- * @param {function(actual, expected)|true|undefined} comparator Comparator which is used in
+ * @param {function(actual, expected)|true|false} [comparator] Comparator which is used in
* determining if the expected value (from the filter expression) and actual value (from
* the object in the array) should be considered a match.
*
@@ -18680,14 +20595,18 @@ function $FilterProvider($provide) {
* - `true`: A shorthand for `function(actual, expected) { return angular.equals(actual, expected)}`.
* This is essentially strict comparison of expected and actual.
*
- * - `false|undefined`: A short hand for a function which will look for a substring match in case
- * insensitive way.
+ * - `false`: A short hand for a function which will look for a substring match in a case
+ * insensitive way. Primitive values are converted to strings. Objects are not compared against
+ * primitives, unless they have a custom `toString` method (e.g. `Date` objects).
+ *
+ *
+ * Defaults to `false`.
*
- * Primitive values are converted to strings. Objects are not compared against primitives,
- * unless they have a custom `toString` method (e.g. `Date` objects).
+ * @param {string} [anyPropertyKey] The special property name that matches against any property.
+ * By default `$`.
*
* @example
- <example>
+ <example name="filter-filter">
<file name="index.html">
<div ng-init="friends = [{name:'John', phone:'555-1276'},
{name:'Mary', phone:'800-BIG-MARY'},
@@ -18754,8 +20673,9 @@ function $FilterProvider($provide) {
</file>
</example>
*/
+
function filterFilter() {
- return function(array, expression, comparator) {
+ return function(array, expression, comparator, anyPropertyKey) {
if (!isArrayLike(array)) {
if (array == null) {
return array;
@@ -18764,6 +20684,7 @@ function filterFilter() {
}
}
+ anyPropertyKey = anyPropertyKey || '$';
var expressionType = getTypeForFilter(expression);
var predicateFn;
var matchAgainstAnyProp;
@@ -18777,10 +20698,9 @@ function filterFilter() {
case 'number':
case 'string':
matchAgainstAnyProp = true;
- //jshint -W086
+ // falls through
case 'object':
- //jshint +W086
- predicateFn = createPredicateFn(expression, comparator, matchAgainstAnyProp);
+ predicateFn = createPredicateFn(expression, comparator, anyPropertyKey, matchAgainstAnyProp);
break;
default:
return array;
@@ -18791,8 +20711,8 @@ function filterFilter() {
}
// Helper functions for `filterFilter`
-function createPredicateFn(expression, comparator, matchAgainstAnyProp) {
- var shouldMatchPrimitives = isObject(expression) && ('$' in expression);
+function createPredicateFn(expression, comparator, anyPropertyKey, matchAgainstAnyProp) {
+ var shouldMatchPrimitives = isObject(expression) && (anyPropertyKey in expression);
var predicateFn;
if (comparator === true) {
@@ -18820,25 +20740,25 @@ function createPredicateFn(expression, comparator, matchAgainstAnyProp) {
predicateFn = function(item) {
if (shouldMatchPrimitives && !isObject(item)) {
- return deepCompare(item, expression.$, comparator, false);
+ return deepCompare(item, expression[anyPropertyKey], comparator, anyPropertyKey, false);
}
- return deepCompare(item, expression, comparator, matchAgainstAnyProp);
+ return deepCompare(item, expression, comparator, anyPropertyKey, matchAgainstAnyProp);
};
return predicateFn;
}
-function deepCompare(actual, expected, comparator, matchAgainstAnyProp, dontMatchWholeObject) {
+function deepCompare(actual, expected, comparator, anyPropertyKey, matchAgainstAnyProp, dontMatchWholeObject) {
var actualType = getTypeForFilter(actual);
var expectedType = getTypeForFilter(expected);
if ((expectedType === 'string') && (expected.charAt(0) === '!')) {
- return !deepCompare(actual, expected.substring(1), comparator, matchAgainstAnyProp);
+ return !deepCompare(actual, expected.substring(1), comparator, anyPropertyKey, matchAgainstAnyProp);
} else if (isArray(actual)) {
// In case `actual` is an array, consider it a match
// if ANY of it's items matches `expected`
return actual.some(function(item) {
- return deepCompare(item, expected, comparator, matchAgainstAnyProp);
+ return deepCompare(item, expected, comparator, anyPropertyKey, matchAgainstAnyProp);
});
}
@@ -18847,11 +20767,14 @@ function deepCompare(actual, expected, comparator, matchAgainstAnyProp, dontMatc
var key;
if (matchAgainstAnyProp) {
for (key in actual) {
- if ((key.charAt(0) !== '$') && deepCompare(actual[key], expected, comparator, true)) {
+ // Under certain, rare, circumstances, key may not be a string and `charAt` will be undefined
+ // See: https://github.com/angular/angular.js/issues/15644
+ if (key.charAt && (key.charAt(0) !== '$') &&
+ deepCompare(actual[key], expected, comparator, anyPropertyKey, true)) {
return true;
}
}
- return dontMatchWholeObject ? false : deepCompare(actual, expected, comparator, false);
+ return dontMatchWholeObject ? false : deepCompare(actual, expected, comparator, anyPropertyKey, false);
} else if (expectedType === 'object') {
for (key in expected) {
var expectedVal = expected[key];
@@ -18859,9 +20782,9 @@ function deepCompare(actual, expected, comparator, matchAgainstAnyProp, dontMatc
continue;
}
- var matchAnyProperty = key === '$';
+ var matchAnyProperty = key === anyPropertyKey;
var actualVal = matchAnyProperty ? actual : actual[key];
- if (!deepCompare(actualVal, expectedVal, comparator, matchAnyProperty, matchAnyProperty)) {
+ if (!deepCompare(actualVal, expectedVal, comparator, anyPropertyKey, matchAnyProperty, matchAnyProperty)) {
return false;
}
}
@@ -18869,7 +20792,6 @@ function deepCompare(actual, expected, comparator, matchAgainstAnyProp, dontMatc
} else {
return comparator(actual, expected);
}
- break;
case 'function':
return false;
default:
@@ -18882,6 +20804,10 @@ function getTypeForFilter(val) {
return (val === null) ? 'null' : typeof val;
}
+var MAX_DIGITS = 22;
+var DECIMAL_SEP = '.';
+var ZERO_CHAR = '0';
+
/**
* @ngdoc filter
* @name currency
@@ -18898,7 +20824,7 @@ function getTypeForFilter(val) {
*
*
* @example
- <example module="currencyExample">
+ <example module="currencyExample" name="currency-filter">
<file name="index.html">
<script>
angular.module('currencyExample', [])
@@ -18909,7 +20835,7 @@ function getTypeForFilter(val) {
<div ng-controller="ExampleController">
<input type="number" ng-model="amount" aria-label="amount"> <br>
default currency symbol ($): <span id="currency-default">{{amount | currency}}</span><br>
- custom currency identifier (USD$): <span id="currency-custom">{{amount | currency:"USD$"}}</span>
+ custom currency identifier (USD$): <span id="currency-custom">{{amount | currency:"USD$"}}</span><br>
no fractions (0): <span id="currency-no-fractions">{{amount | currency:"USD$":0}}</span>
</div>
</file>
@@ -18920,7 +20846,7 @@ function getTypeForFilter(val) {
expect(element(by.id('currency-no-fractions')).getText()).toBe('USD$1,235');
});
it('should update', function() {
- if (browser.params.browser == 'safari') {
+ if (browser.params.browser === 'safari') {
// Safari does not understand the minus key. See
// https://github.com/angular/protractor/issues/481
return;
@@ -18963,7 +20889,7 @@ function currencyFilter($locale) {
* Formats a number as text.
*
* If the input is null or undefined, it will just be returned.
- * If the input is infinite (Infinity/-Infinity) the Infinity symbol '∞' is returned.
+ * If the input is infinite (Infinity or -Infinity), the Infinity symbol '∞' or '-∞' is returned, respectively.
* If the input is not a number an empty string is returned.
*
*
@@ -18971,10 +20897,12 @@ function currencyFilter($locale) {
* @param {(number|string)=} fractionSize Number of decimal places to round the number to.
* If this is not provided then the fraction size is computed from the current locale's number
* formatting pattern. In the case of the default locale, it will be 3.
- * @returns {string} Number rounded to decimalPlaces and places a “,” after each third digit.
+ * @returns {string} Number rounded to `fractionSize` appropriately formatted based on the current
+ * locale (e.g., in the en_US locale it will have "." as the decimal separator and
+ * include "," group separators after each third digit).
*
* @example
- <example module="numberFilterExample">
+ <example module="numberFilterExample" name="number-filter">
<file name="index.html">
<script>
angular.module('numberFilterExample', [])
@@ -19006,8 +20934,6 @@ function currencyFilter($locale) {
</file>
</example>
*/
-
-
numberFilter.$inject = ['$locale'];
function numberFilter($locale) {
var formats = $locale.NUMBER_FORMATS;
@@ -19021,103 +20947,227 @@ function numberFilter($locale) {
};
}
-var DECIMAL_SEP = '.';
-function formatNumber(number, pattern, groupSep, decimalSep, fractionSize) {
- if (isObject(number)) return '';
+/**
+ * Parse a number (as a string) into three components that can be used
+ * for formatting the number.
+ *
+ * (Significant bits of this parse algorithm came from https://github.com/MikeMcl/big.js/)
+ *
+ * @param {string} numStr The number to parse
+ * @return {object} An object describing this number, containing the following keys:
+ * - d : an array of digits containing leading zeros as necessary
+ * - i : the number of the digits in `d` that are to the left of the decimal point
+ * - e : the exponent for numbers that would need more than `MAX_DIGITS` digits in `d`
+ *
+ */
+function parse(numStr) {
+ var exponent = 0, digits, numberOfIntegerDigits;
+ var i, j, zeros;
- var isNegative = number < 0;
- number = Math.abs(number);
+ // Decimal point?
+ if ((numberOfIntegerDigits = numStr.indexOf(DECIMAL_SEP)) > -1) {
+ numStr = numStr.replace(DECIMAL_SEP, '');
+ }
- var isInfinity = number === Infinity;
- if (!isInfinity && !isFinite(number)) return '';
+ // Exponential form?
+ if ((i = numStr.search(/e/i)) > 0) {
+ // Work out the exponent.
+ if (numberOfIntegerDigits < 0) numberOfIntegerDigits = i;
+ numberOfIntegerDigits += +numStr.slice(i + 1);
+ numStr = numStr.substring(0, i);
+ } else if (numberOfIntegerDigits < 0) {
+ // There was no decimal point or exponent so it is an integer.
+ numberOfIntegerDigits = numStr.length;
+ }
- var numStr = number + '',
- formatedText = '',
- hasExponent = false,
- parts = [];
+ // Count the number of leading zeros.
+ for (i = 0; numStr.charAt(i) === ZERO_CHAR; i++) { /* empty */ }
- if (isInfinity) formatedText = '\u221e';
+ if (i === (zeros = numStr.length)) {
+ // The digits are all zero.
+ digits = [0];
+ numberOfIntegerDigits = 1;
+ } else {
+ // Count the number of trailing zeros
+ zeros--;
+ while (numStr.charAt(zeros) === ZERO_CHAR) zeros--;
- if (!isInfinity && numStr.indexOf('e') !== -1) {
- var match = numStr.match(/([\d\.]+)e(-?)(\d+)/);
- if (match && match[2] == '-' && match[3] > fractionSize + 1) {
- number = 0;
- } else {
- formatedText = numStr;
- hasExponent = true;
+ // Trailing zeros are insignificant so ignore them
+ numberOfIntegerDigits -= i;
+ digits = [];
+ // Convert string to array of digits without leading/trailing zeros.
+ for (j = 0; i <= zeros; i++, j++) {
+ digits[j] = +numStr.charAt(i);
}
}
- if (!isInfinity && !hasExponent) {
- var fractionLen = (numStr.split(DECIMAL_SEP)[1] || '').length;
+ // If the number overflows the maximum allowed digits then use an exponent.
+ if (numberOfIntegerDigits > MAX_DIGITS) {
+ digits = digits.splice(0, MAX_DIGITS - 1);
+ exponent = numberOfIntegerDigits - 1;
+ numberOfIntegerDigits = 1;
+ }
- // determine fractionSize if it is not specified
- if (isUndefined(fractionSize)) {
- fractionSize = Math.min(Math.max(pattern.minFrac, fractionLen), pattern.maxFrac);
- }
+ return { d: digits, e: exponent, i: numberOfIntegerDigits };
+}
+
+/**
+ * Round the parsed number to the specified number of decimal places
+ * This function changed the parsedNumber in-place
+ */
+function roundNumber(parsedNumber, fractionSize, minFrac, maxFrac) {
+ var digits = parsedNumber.d;
+ var fractionLen = digits.length - parsedNumber.i;
- // safely round numbers in JS without hitting imprecisions of floating-point arithmetics
- // inspired by:
- // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math/round
- number = +(Math.round(+(number.toString() + 'e' + fractionSize)).toString() + 'e' + -fractionSize);
+ // determine fractionSize if it is not specified; `+fractionSize` converts it to a number
+ fractionSize = (isUndefined(fractionSize)) ? Math.min(Math.max(minFrac, fractionLen), maxFrac) : +fractionSize;
- var fraction = ('' + number).split(DECIMAL_SEP);
- var whole = fraction[0];
- fraction = fraction[1] || '';
+ // The index of the digit to where rounding is to occur
+ var roundAt = fractionSize + parsedNumber.i;
+ var digit = digits[roundAt];
- var i, pos = 0,
- lgroup = pattern.lgSize,
- group = pattern.gSize;
+ if (roundAt > 0) {
+ // Drop fractional digits beyond `roundAt`
+ digits.splice(Math.max(parsedNumber.i, roundAt));
- if (whole.length >= (lgroup + group)) {
- pos = whole.length - lgroup;
- for (i = 0; i < pos; i++) {
- if ((pos - i) % group === 0 && i !== 0) {
- formatedText += groupSep;
+ // Set non-fractional digits beyond `roundAt` to 0
+ for (var j = roundAt; j < digits.length; j++) {
+ digits[j] = 0;
+ }
+ } else {
+ // We rounded to zero so reset the parsedNumber
+ fractionLen = Math.max(0, fractionLen);
+ parsedNumber.i = 1;
+ digits.length = Math.max(1, roundAt = fractionSize + 1);
+ digits[0] = 0;
+ for (var i = 1; i < roundAt; i++) digits[i] = 0;
+ }
+
+ if (digit >= 5) {
+ if (roundAt - 1 < 0) {
+ for (var k = 0; k > roundAt; k--) {
+ digits.unshift(0);
+ parsedNumber.i++;
}
- formatedText += whole.charAt(i);
+ digits.unshift(1);
+ parsedNumber.i++;
+ } else {
+ digits[roundAt - 1]++;
}
}
- for (i = pos; i < whole.length; i++) {
- if ((whole.length - i) % lgroup === 0 && i !== 0) {
- formatedText += groupSep;
- }
- formatedText += whole.charAt(i);
- }
+ // Pad out with zeros to get the required fraction length
+ for (; fractionLen < Math.max(0, fractionSize); fractionLen++) digits.push(0);
+
- // format fraction part.
- while (fraction.length < fractionSize) {
- fraction += '0';
+ // Do any carrying, e.g. a digit was rounded up to 10
+ var carry = digits.reduceRight(function(carry, d, i, digits) {
+ d = d + carry;
+ digits[i] = d % 10;
+ return Math.floor(d / 10);
+ }, 0);
+ if (carry) {
+ digits.unshift(carry);
+ parsedNumber.i++;
}
+}
+
+/**
+ * Format a number into a string
+ * @param {number} number The number to format
+ * @param {{
+ * minFrac, // the minimum number of digits required in the fraction part of the number
+ * maxFrac, // the maximum number of digits required in the fraction part of the number
+ * gSize, // number of digits in each group of separated digits
+ * lgSize, // number of digits in the last group of digits before the decimal separator
+ * negPre, // the string to go in front of a negative number (e.g. `-` or `(`))
+ * posPre, // the string to go in front of a positive number
+ * negSuf, // the string to go after a negative number (e.g. `)`)
+ * posSuf // the string to go after a positive number
+ * }} pattern
+ * @param {string} groupSep The string to separate groups of number (e.g. `,`)
+ * @param {string} decimalSep The string to act as the decimal separator (e.g. `.`)
+ * @param {[type]} fractionSize The size of the fractional part of the number
+ * @return {string} The number formatted as a string
+ */
+function formatNumber(number, pattern, groupSep, decimalSep, fractionSize) {
+
+ if (!(isString(number) || isNumber(number)) || isNaN(number)) return '';
- if (fractionSize && fractionSize !== "0") formatedText += decimalSep + fraction.substr(0, fractionSize);
+ var isInfinity = !isFinite(number);
+ var isZero = false;
+ var numStr = Math.abs(number) + '',
+ formattedText = '',
+ parsedNumber;
+
+ if (isInfinity) {
+ formattedText = '\u221e';
} else {
- if (fractionSize > 0 && number < 1) {
- formatedText = number.toFixed(fractionSize);
- number = parseFloat(formatedText);
- formatedText = formatedText.replace(DECIMAL_SEP, decimalSep);
+ parsedNumber = parse(numStr);
+
+ roundNumber(parsedNumber, fractionSize, pattern.minFrac, pattern.maxFrac);
+
+ var digits = parsedNumber.d;
+ var integerLen = parsedNumber.i;
+ var exponent = parsedNumber.e;
+ var decimals = [];
+ isZero = digits.reduce(function(isZero, d) { return isZero && !d; }, true);
+
+ // pad zeros for small numbers
+ while (integerLen < 0) {
+ digits.unshift(0);
+ integerLen++;
}
- }
- if (number === 0) {
- isNegative = false;
- }
+ // extract decimals digits
+ if (integerLen > 0) {
+ decimals = digits.splice(integerLen, digits.length);
+ } else {
+ decimals = digits;
+ digits = [0];
+ }
+
+ // format the integer digits with grouping separators
+ var groups = [];
+ if (digits.length >= pattern.lgSize) {
+ groups.unshift(digits.splice(-pattern.lgSize, digits.length).join(''));
+ }
+ while (digits.length > pattern.gSize) {
+ groups.unshift(digits.splice(-pattern.gSize, digits.length).join(''));
+ }
+ if (digits.length) {
+ groups.unshift(digits.join(''));
+ }
+ formattedText = groups.join(groupSep);
+
+ // append the decimal digits
+ if (decimals.length) {
+ formattedText += decimalSep + decimals.join('');
+ }
- parts.push(isNegative ? pattern.negPre : pattern.posPre,
- formatedText,
- isNegative ? pattern.negSuf : pattern.posSuf);
- return parts.join('');
+ if (exponent) {
+ formattedText += 'e+' + exponent;
+ }
+ }
+ if (number < 0 && !isZero) {
+ return pattern.negPre + formattedText + pattern.negSuf;
+ } else {
+ return pattern.posPre + formattedText + pattern.posSuf;
+ }
}
-function padNumber(num, digits, trim) {
+function padNumber(num, digits, trim, negWrap) {
var neg = '';
- if (num < 0) {
- neg = '-';
- num = -num;
+ if (num < 0 || (negWrap && num <= 0)) {
+ if (negWrap) {
+ num = -num + 1;
+ } else {
+ num = -num;
+ neg = '-';
+ }
}
num = '' + num;
- while (num.length < digits) num = '0' + num;
+ while (num.length < digits) num = ZERO_CHAR + num;
if (trim) {
num = num.substr(num.length - digits);
}
@@ -19125,22 +21175,23 @@ function padNumber(num, digits, trim) {
}
-function dateGetter(name, size, offset, trim) {
+function dateGetter(name, size, offset, trim, negWrap) {
offset = offset || 0;
return function(date) {
var value = date['get' + name]();
if (offset > 0 || value > -offset) {
value += offset;
}
- if (value === 0 && offset == -12) value = 12;
- return padNumber(value, size, trim);
+ if (value === 0 && offset === -12) value = 12;
+ return padNumber(value, size, trim, negWrap);
};
}
-function dateStrGetter(name, shortForm) {
+function dateStrGetter(name, shortForm, standAlone) {
return function(date, formats) {
var value = date['get' + name]();
- var get = uppercase(shortForm ? ('SHORT' + name) : name);
+ var propPrefix = (standAlone ? 'STANDALONE' : '') + (shortForm ? 'SHORT' : '');
+ var get = uppercase(propPrefix + name);
return formats[get][value];
};
@@ -19148,7 +21199,7 @@ function dateStrGetter(name, shortForm) {
function timeZoneGetter(date, formats, offset) {
var zone = -1 * offset;
- var paddedZone = (zone >= 0) ? "+" : "";
+ var paddedZone = (zone >= 0) ? '+' : '';
paddedZone += padNumber(Math[zone > 0 ? 'floor' : 'ceil'](zone / 60), 2) +
padNumber(Math.abs(zone % 60), 2);
@@ -19195,13 +21246,14 @@ function longEraGetter(date, formats) {
}
var DATE_FORMATS = {
- yyyy: dateGetter('FullYear', 4),
- yy: dateGetter('FullYear', 2, 0, true),
- y: dateGetter('FullYear', 1),
+ yyyy: dateGetter('FullYear', 4, 0, false, true),
+ yy: dateGetter('FullYear', 2, 0, true, true),
+ y: dateGetter('FullYear', 1, 0, false, true),
MMMM: dateStrGetter('Month'),
MMM: dateStrGetter('Month', true),
MM: dateGetter('Month', 2, 1),
M: dateGetter('Month', 1, 1),
+ LLLL: dateStrGetter('Month', false, true),
dd: dateGetter('Date', 2),
d: dateGetter('Date', 1),
HH: dateGetter('Hours', 2),
@@ -19227,8 +21279,8 @@ var DATE_FORMATS = {
GGGG: longEraGetter
};
-var DATE_FORMATS_SPLIT = /((?:[^yMdHhmsaZEwG']+)|(?:'(?:[^']|'')*')|(?:E+|y+|M+|d+|H+|h+|m+|s+|a|Z|G+|w+))(.*)/,
- NUMBER_STRING = /^\-?\d+$/;
+var DATE_FORMATS_SPLIT = /((?:[^yMLdHhmsaZEwG']+)|(?:'(?:[^']|'')*')|(?:E+|y+|M+|L+|d+|H+|h+|m+|s+|a|Z|G+|w+))(.*)/,
+ NUMBER_STRING = /^-?\d+$/;
/**
* @ngdoc filter
@@ -19247,6 +21299,7 @@ var DATE_FORMATS_SPLIT = /((?:[^yMdHhmsaZEwG']+)|(?:'(?:[^']|'')*')|(?:E+|y+|M+|
* * `'MMM'`: Month in year (Jan-Dec)
* * `'MM'`: Month in year, padded (01-12)
* * `'M'`: Month in year (1-12)
+ * * `'LLLL'`: Stand-alone month in year (January-December)
* * `'dd'`: Day in month, padded (01-31)
* * `'d'`: Day in month (1-31)
* * `'EEEE'`: Day in Week,(Sunday-Saturday)
@@ -19298,7 +21351,7 @@ var DATE_FORMATS_SPLIT = /((?:[^yMdHhmsaZEwG']+)|(?:'(?:[^']|'')*')|(?:E+|y+|M+|
* @returns {string} Formatted string or the input if input is not recognized as date/millis.
*
* @example
- <example>
+ <example name="filter-date">
<file name="index.html">
<span ng-non-bindable>{{1288323623006 | date:'medium'}}</span>:
<span>{{1288323623006 | date:'medium'}}</span><br>
@@ -19314,7 +21367,7 @@ var DATE_FORMATS_SPLIT = /((?:[^yMdHhmsaZEwG']+)|(?:'(?:[^']|'')*')|(?:E+|y+|M+|
expect(element(by.binding("1288323623006 | date:'medium'")).getText()).
toMatch(/Oct 2\d, 2010 \d{1,2}:\d{2}:\d{2} (AM|PM)/);
expect(element(by.binding("1288323623006 | date:'yyyy-MM-dd HH:mm:ss Z'")).getText()).
- toMatch(/2010\-10\-2\d \d{2}:\d{2}:\d{2} (\-|\+)?\d{4}/);
+ toMatch(/2010-10-2\d \d{2}:\d{2}:\d{2} (-|\+)?\d{4}/);
expect(element(by.binding("'1288323623006' | date:'MM/dd/yyyy @ h:mma'")).getText()).
toMatch(/10\/2\d\/2010 @ \d{1,2}:\d{2}(AM|PM)/);
expect(element(by.binding("'1288323623006' | date:\"MM/dd/yyyy 'at' h:mma\"")).getText()).
@@ -19331,7 +21384,7 @@ function dateFilter($locale) {
// 1 2 3 4 5 6 7 8 9 10 11
function jsonStringToDate(string) {
var match;
- if (match = string.match(R_ISO8601_STR)) {
+ if ((match = string.match(R_ISO8601_STR))) {
var date = new Date(0),
tzHour = 0,
tzMin = 0,
@@ -19386,13 +21439,13 @@ function dateFilter($locale) {
var dateTimezoneOffset = date.getTimezoneOffset();
if (timezone) {
- dateTimezoneOffset = timezoneToOffset(timezone, date.getTimezoneOffset());
+ dateTimezoneOffset = timezoneToOffset(timezone, dateTimezoneOffset);
date = convertTimezoneToLocal(date, timezone, true);
}
forEach(parts, function(value) {
fn = DATE_FORMATS[value];
text += fn ? fn(date, $locale.DATETIME_FORMATS, dateTimezoneOffset)
- : value.replace(/(^'|'$)/g, '').replace(/''/g, "'");
+ : value === '\'\'' ? '\'' : value.replace(/(^'|'$)/g, '').replace(/''/g, '\'');
});
return text;
@@ -19417,15 +21470,15 @@ function dateFilter($locale) {
*
*
* @example
- <example>
+ <example name="filter-json">
<file name="index.html">
<pre id="default-spacing">{{ {'name':'value'} | json }}</pre>
<pre id="custom-spacing">{{ {'name':'value'} | json:4 }}</pre>
</file>
<file name="protractor.js" type="protractor">
it('should jsonify filtered objects', function() {
- expect(element(by.id('default-spacing')).getText()).toMatch(/\{\n "name": ?"value"\n}/);
- expect(element(by.id('custom-spacing')).getText()).toMatch(/\{\n "name": ?"value"\n}/);
+ expect(element(by.id('default-spacing')).getText()).toMatch(/\{\n {2}"name": ?"value"\n}/);
+ expect(element(by.id('custom-spacing')).getText()).toMatch(/\{\n {4}"name": ?"value"\n}/);
});
</file>
</example>
@@ -19468,24 +21521,25 @@ var uppercaseFilter = valueFn(uppercase);
* @kind function
*
* @description
- * Creates a new array or string containing only a specified number of elements. The elements
- * are taken from either the beginning or the end of the source array, string or number, as specified by
- * the value and sign (positive or negative) of `limit`. If a number is used as input, it is
- * converted to a string.
- *
- * @param {Array|string|number} input Source array, string or number to be limited.
- * @param {string|number} limit The length of the returned array or string. If the `limit` number
+ * Creates a new array or string containing only a specified number of elements. The elements are
+ * taken from either the beginning or the end of the source array, string or number, as specified by
+ * the value and sign (positive or negative) of `limit`. Other array-like objects are also supported
+ * (e.g. array subclasses, NodeLists, jqLite/jQuery collections etc). If a number is used as input,
+ * it is converted to a string.
+ *
+ * @param {Array|ArrayLike|string|number} input - Array/array-like, string or number to be limited.
+ * @param {string|number} limit - The length of the returned array or string. If the `limit` number
* is positive, `limit` number of items from the beginning of the source array/string are copied.
* If the number is negative, `limit` number of items from the end of the source array/string
* are copied. The `limit` will be trimmed if it exceeds `array.length`. If `limit` is undefined,
* the input will be returned unchanged.
- * @param {(string|number)=} begin Index at which to begin limitation. As a negative index, `begin`
- * indicates an offset from the end of `input`. Defaults to `0`.
- * @returns {Array|string} A new sub-array or substring of length `limit` or less if input array
- * had less than `limit` elements.
+ * @param {(string|number)=} begin - Index at which to begin limitation. As a negative index,
+ * `begin` indicates an offset from the end of `input`. Defaults to `0`.
+ * @returns {Array|string} A new sub-array or substring of length `limit` or less if the input had
+ * less than `limit` elements.
*
* @example
- <example module="limitToExample">
+ <example module="limitToExample" name="limit-to-filter">
<file name="index.html">
<script>
angular.module('limitToExample', [])
@@ -19567,81 +21621,163 @@ function limitToFilter() {
} else {
limit = toInt(limit);
}
- if (isNaN(limit)) return input;
+ if (isNumberNaN(limit)) return input;
if (isNumber(input)) input = input.toString();
- if (!isArray(input) && !isString(input)) return input;
+ if (!isArrayLike(input)) return input;
begin = (!begin || isNaN(begin)) ? 0 : toInt(begin);
begin = (begin < 0) ? Math.max(0, input.length + begin) : begin;
if (limit >= 0) {
- return input.slice(begin, begin + limit);
+ return sliceFn(input, begin, begin + limit);
} else {
if (begin === 0) {
- return input.slice(limit, input.length);
+ return sliceFn(input, limit, input.length);
} else {
- return input.slice(Math.max(0, begin + limit), begin);
+ return sliceFn(input, Math.max(0, begin + limit), begin);
}
}
};
}
+function sliceFn(input, begin, end) {
+ if (isString(input)) return input.slice(begin, end);
+
+ return slice.call(input, begin, end);
+}
+
/**
* @ngdoc filter
* @name orderBy
* @kind function
*
* @description
- * Orders a specified `array` by the `expression` predicate. It is ordered alphabetically
- * for strings and numerically for numbers. Note: if you notice numbers are not being sorted
- * as expected, make sure they are actually being saved as numbers and not strings.
- * Array-like values (e.g. NodeLists, jQuery objects, TypedArrays, Strings, etc) are also supported.
+ * Returns an array containing the items from the specified `collection`, ordered by a `comparator`
+ * function based on the values computed using the `expression` predicate.
+ *
+ * For example, `[{id: 'foo'}, {id: 'bar'}] | orderBy:'id'` would result in
+ * `[{id: 'bar'}, {id: 'foo'}]`.
+ *
+ * The `collection` can be an Array or array-like object (e.g. NodeList, jQuery object, TypedArray,
+ * String, etc).
+ *
+ * The `expression` can be a single predicate, or a list of predicates each serving as a tie-breaker
+ * for the preceding one. The `expression` is evaluated against each item and the output is used
+ * for comparing with other items.
+ *
+ * You can change the sorting order by setting `reverse` to `true`. By default, items are sorted in
+ * ascending order.
*
- * @param {Array} array The array (or array-like object) to sort.
- * @param {function(*)|string|Array.<(function(*)|string)>=} expression A predicate to be
- * used by the comparator to determine the order of elements.
+ * The comparison is done using the `comparator` function. If none is specified, a default, built-in
+ * comparator is used (see below for details - in a nutshell, it compares numbers numerically and
+ * strings alphabetically).
+ *
+ * ### Under the hood
+ *
+ * Ordering the specified `collection` happens in two phases:
+ *
+ * 1. All items are passed through the predicate (or predicates), and the returned values are saved
+ * along with their type (`string`, `number` etc). For example, an item `{label: 'foo'}`, passed
+ * through a predicate that extracts the value of the `label` property, would be transformed to:
+ * ```
+ * {
+ * value: 'foo',
+ * type: 'string',
+ * index: ...
+ * }
+ * ```
+ * 2. The comparator function is used to sort the items, based on the derived values, types and
+ * indices.
+ *
+ * If you use a custom comparator, it will be called with pairs of objects of the form
+ * `{value: ..., type: '...', index: ...}` and is expected to return `0` if the objects are equal
+ * (as far as the comparator is concerned), `-1` if the 1st one should be ranked higher than the
+ * second, or `1` otherwise.
+ *
+ * In order to ensure that the sorting will be deterministic across platforms, if none of the
+ * specified predicates can distinguish between two items, `orderBy` will automatically introduce a
+ * dummy predicate that returns the item's index as `value`.
+ * (If you are using a custom comparator, make sure it can handle this predicate as well.)
+ *
+ * Finally, in an attempt to simplify things, if a predicate returns an object as the extracted
+ * value for an item, `orderBy` will try to convert that object to a primitive value, before passing
+ * it to the comparator. The following rules govern the conversion:
+ *
+ * 1. If the object has a `valueOf()` method that returns a primitive, its return value will be
+ * used instead.<br />
+ * (If the object has a `valueOf()` method that returns another object, then the returned object
+ * will be used in subsequent steps.)
+ * 2. If the object has a custom `toString()` method (i.e. not the one inherited from `Object`) that
+ * returns a primitive, its return value will be used instead.<br />
+ * (If the object has a `toString()` method that returns another object, then the returned object
+ * will be used in subsequent steps.)
+ * 3. No conversion; the object itself is used.
+ *
+ * ### The default comparator
+ *
+ * The default, built-in comparator should be sufficient for most usecases. In short, it compares
+ * numbers numerically, strings alphabetically (and case-insensitively), for objects falls back to
+ * using their index in the original collection, and sorts values of different types by type.
+ *
+ * More specifically, it follows these steps to determine the relative order of items:
+ *
+ * 1. If the compared values are of different types, compare the types themselves alphabetically.
+ * 2. If both values are of type `string`, compare them alphabetically in a case- and
+ * locale-insensitive way.
+ * 3. If both values are objects, compare their indices instead.
+ * 4. Otherwise, return:
+ * - `0`, if the values are equal (by strict equality comparison, i.e. using `===`).
+ * - `-1`, if the 1st value is "less than" the 2nd value (compared using the `<` operator).
+ * - `1`, otherwise.
+ *
+ * **Note:** If you notice numbers not being sorted as expected, make sure they are actually being
+ * saved as numbers and not strings.
+ * **Note:** For the purpose of sorting, `null` values are treated as the string `'null'` (i.e.
+ * `type: 'string'`, `value: 'null'`). This may cause unexpected sort order relative to
+ * other values.
+ *
+ * @param {Array|ArrayLike} collection - The collection (array or array-like object) to sort.
+ * @param {(Function|string|Array.<Function|string>)=} expression - A predicate (or list of
+ * predicates) to be used by the comparator to determine the order of elements.
*
* Can be one of:
*
- * - `function`: Getter function. The result of this function will be sorted using the
- * `<`, `===`, `>` operator.
- * - `string`: An Angular expression. The result of this expression is used to compare elements
- * (for example `name` to sort by a property called `name` or `name.substr(0, 3)` to sort by
- * 3 first characters of a property called `name`). The result of a constant expression
- * is interpreted as a property name to be used in comparisons (for example `"special name"`
- * to sort object by the value of their `special name` property). An expression can be
- * optionally prefixed with `+` or `-` to control ascending or descending sort order
- * (for example, `+name` or `-name`). If no property is provided, (e.g. `'+'`) then the array
- * element itself is used to compare where sorting.
- * - `Array`: An array of function or string predicates. The first predicate in the array
- * is used for sorting, but when two items are equivalent, the next predicate is used.
+ * - `Function`: A getter function. This function will be called with each item as argument and
+ * the return value will be used for sorting.
+ * - `string`: An Angular expression. This expression will be evaluated against each item and the
+ * result will be used for sorting. For example, use `'label'` to sort by a property called
+ * `label` or `'label.substring(0, 3)'` to sort by the first 3 characters of the `label`
+ * property.<br />
+ * (The result of a constant expression is interpreted as a property name to be used for
+ * comparison. For example, use `'"special name"'` (note the extra pair of quotes) to sort by a
+ * property called `special name`.)<br />
+ * An expression can be optionally prefixed with `+` or `-` to control the sorting direction,
+ * ascending or descending. For example, `'+label'` or `'-label'`. If no property is provided,
+ * (e.g. `'+'` or `'-'`), the collection element itself is used in comparisons.
+ * - `Array`: An array of function and/or string predicates. If a predicate cannot determine the
+ * relative order of two items, the next predicate is used as a tie-breaker.
+ *
+ * **Note:** If the predicate is missing or empty then it defaults to `'+'`.
*
- * If the predicate is missing or empty then it defaults to `'+'`.
+ * @param {boolean=} reverse - If `true`, reverse the sorting order.
+ * @param {(Function)=} comparator - The comparator function used to determine the relative order of
+ * value pairs. If omitted, the built-in comparator will be used.
*
- * @param {boolean=} reverse Reverse the order of the array.
- * @returns {Array} Sorted copy of the source array.
+ * @returns {Array} - The sorted array.
*
*
* @example
- * The example below demonstrates a simple ngRepeat, where the data is sorted
- * by age in descending order (predicate is set to `'-age'`).
- * `reverse` is not set, which means it defaults to `false`.
- <example module="orderByExample">
+ * ### Ordering a table with `ngRepeat`
+ *
+ * The example below demonstrates a simple {@link ngRepeat ngRepeat}, where the data is sorted by
+ * age in descending order (expression is set to `'-age'`). The `comparator` is not set, which means
+ * it defaults to the built-in comparator.
+ *
+ <example name="orderBy-static" module="orderByExample1">
<file name="index.html">
- <script>
- angular.module('orderByExample', [])
- .controller('ExampleController', ['$scope', function($scope) {
- $scope.friends =
- [{name:'John', phone:'555-1212', age:10},
- {name:'Mary', phone:'555-9876', age:19},
- {name:'Mike', phone:'555-4321', age:21},
- {name:'Adam', phone:'555-5678', age:35},
- {name:'Julie', phone:'555-8765', age:29}];
- }]);
- </script>
<div ng-controller="ExampleController">
- <table class="friend">
+ <table class="friends">
<tr>
<th>Name</th>
<th>Phone Number</th>
@@ -19655,58 +21791,78 @@ function limitToFilter() {
</table>
</div>
</file>
+ <file name="script.js">
+ angular.module('orderByExample1', [])
+ .controller('ExampleController', ['$scope', function($scope) {
+ $scope.friends = [
+ {name: 'John', phone: '555-1212', age: 10},
+ {name: 'Mary', phone: '555-9876', age: 19},
+ {name: 'Mike', phone: '555-4321', age: 21},
+ {name: 'Adam', phone: '555-5678', age: 35},
+ {name: 'Julie', phone: '555-8765', age: 29}
+ ];
+ }]);
+ </file>
+ <file name="style.css">
+ .friends {
+ border-collapse: collapse;
+ }
+
+ .friends th {
+ border-bottom: 1px solid;
+ }
+ .friends td, .friends th {
+ border-left: 1px solid;
+ padding: 5px 10px;
+ }
+ .friends td:first-child, .friends th:first-child {
+ border-left: none;
+ }
+ </file>
+ <file name="protractor.js" type="protractor">
+ // Element locators
+ var names = element.all(by.repeater('friends').column('friend.name'));
+
+ it('should sort friends by age in reverse order', function() {
+ expect(names.get(0).getText()).toBe('Adam');
+ expect(names.get(1).getText()).toBe('Julie');
+ expect(names.get(2).getText()).toBe('Mike');
+ expect(names.get(3).getText()).toBe('Mary');
+ expect(names.get(4).getText()).toBe('John');
+ });
+ </file>
</example>
+ * <hr />
*
- * The predicate and reverse parameters can be controlled dynamically through scope properties,
- * as shown in the next example.
* @example
- <example module="orderByExample">
+ * ### Changing parameters dynamically
+ *
+ * All parameters can be changed dynamically. The next example shows how you can make the columns of
+ * a table sortable, by binding the `expression` and `reverse` parameters to scope properties.
+ *
+ <example name="orderBy-dynamic" module="orderByExample2">
<file name="index.html">
- <script>
- angular.module('orderByExample', [])
- .controller('ExampleController', ['$scope', function($scope) {
- $scope.friends =
- [{name:'John', phone:'555-1212', age:10},
- {name:'Mary', phone:'555-9876', age:19},
- {name:'Mike', phone:'555-4321', age:21},
- {name:'Adam', phone:'555-5678', age:35},
- {name:'Julie', phone:'555-8765', age:29}];
- $scope.predicate = 'age';
- $scope.reverse = true;
- $scope.order = function(predicate) {
- $scope.reverse = ($scope.predicate === predicate) ? !$scope.reverse : false;
- $scope.predicate = predicate;
- };
- }]);
- </script>
- <style type="text/css">
- .sortorder:after {
- content: '\25b2';
- }
- .sortorder.reverse:after {
- content: '\25bc';
- }
- </style>
<div ng-controller="ExampleController">
- <pre>Sorting predicate = {{predicate}}; reverse = {{reverse}}</pre>
+ <pre>Sort by = {{propertyName}}; reverse = {{reverse}}</pre>
+ <hr/>
+ <button ng-click="propertyName = null; reverse = false">Set to unsorted</button>
<hr/>
- [ <a href="" ng-click="predicate=''">unsorted</a> ]
- <table class="friend">
+ <table class="friends">
<tr>
<th>
- <a href="" ng-click="order('name')">Name</a>
- <span class="sortorder" ng-show="predicate === 'name'" ng-class="{reverse:reverse}"></span>
+ <button ng-click="sortBy('name')">Name</button>
+ <span class="sortorder" ng-show="propertyName === 'name'" ng-class="{reverse: reverse}"></span>
</th>
<th>
- <a href="" ng-click="order('phone')">Phone Number</a>
- <span class="sortorder" ng-show="predicate === 'phone'" ng-class="{reverse:reverse}"></span>
+ <button ng-click="sortBy('phone')">Phone Number</button>
+ <span class="sortorder" ng-show="propertyName === 'phone'" ng-class="{reverse: reverse}"></span>
</th>
<th>
- <a href="" ng-click="order('age')">Age</a>
- <span class="sortorder" ng-show="predicate === 'age'" ng-class="{reverse:reverse}"></span>
+ <button ng-click="sortBy('age')">Age</button>
+ <span class="sortorder" ng-show="propertyName === 'age'" ng-class="{reverse: reverse}"></span>
</th>
</tr>
- <tr ng-repeat="friend in friends | orderBy:predicate:reverse">
+ <tr ng-repeat="friend in friends | orderBy:propertyName:reverse">
<td>{{friend.name}}</td>
<td>{{friend.phone}}</td>
<td>{{friend.age}}</td>
@@ -19714,56 +21870,336 @@ function limitToFilter() {
</table>
</div>
</file>
+ <file name="script.js">
+ angular.module('orderByExample2', [])
+ .controller('ExampleController', ['$scope', function($scope) {
+ var friends = [
+ {name: 'John', phone: '555-1212', age: 10},
+ {name: 'Mary', phone: '555-9876', age: 19},
+ {name: 'Mike', phone: '555-4321', age: 21},
+ {name: 'Adam', phone: '555-5678', age: 35},
+ {name: 'Julie', phone: '555-8765', age: 29}
+ ];
+
+ $scope.propertyName = 'age';
+ $scope.reverse = true;
+ $scope.friends = friends;
+
+ $scope.sortBy = function(propertyName) {
+ $scope.reverse = ($scope.propertyName === propertyName) ? !$scope.reverse : false;
+ $scope.propertyName = propertyName;
+ };
+ }]);
+ </file>
+ <file name="style.css">
+ .friends {
+ border-collapse: collapse;
+ }
+
+ .friends th {
+ border-bottom: 1px solid;
+ }
+ .friends td, .friends th {
+ border-left: 1px solid;
+ padding: 5px 10px;
+ }
+ .friends td:first-child, .friends th:first-child {
+ border-left: none;
+ }
+
+ .sortorder:after {
+ content: '\25b2'; // BLACK UP-POINTING TRIANGLE
+ }
+ .sortorder.reverse:after {
+ content: '\25bc'; // BLACK DOWN-POINTING TRIANGLE
+ }
+ </file>
+ <file name="protractor.js" type="protractor">
+ // Element locators
+ var unsortButton = element(by.partialButtonText('unsorted'));
+ var nameHeader = element(by.partialButtonText('Name'));
+ var phoneHeader = element(by.partialButtonText('Phone'));
+ var ageHeader = element(by.partialButtonText('Age'));
+ var firstName = element(by.repeater('friends').column('friend.name').row(0));
+ var lastName = element(by.repeater('friends').column('friend.name').row(4));
+
+ it('should sort friends by some property, when clicking on the column header', function() {
+ expect(firstName.getText()).toBe('Adam');
+ expect(lastName.getText()).toBe('John');
+
+ phoneHeader.click();
+ expect(firstName.getText()).toBe('John');
+ expect(lastName.getText()).toBe('Mary');
+
+ nameHeader.click();
+ expect(firstName.getText()).toBe('Adam');
+ expect(lastName.getText()).toBe('Mike');
+
+ ageHeader.click();
+ expect(firstName.getText()).toBe('John');
+ expect(lastName.getText()).toBe('Adam');
+ });
+
+ it('should sort friends in reverse order, when clicking on the same column', function() {
+ expect(firstName.getText()).toBe('Adam');
+ expect(lastName.getText()).toBe('John');
+
+ ageHeader.click();
+ expect(firstName.getText()).toBe('John');
+ expect(lastName.getText()).toBe('Adam');
+
+ ageHeader.click();
+ expect(firstName.getText()).toBe('Adam');
+ expect(lastName.getText()).toBe('John');
+ });
+
+ it('should restore the original order, when clicking "Set to unsorted"', function() {
+ expect(firstName.getText()).toBe('Adam');
+ expect(lastName.getText()).toBe('John');
+
+ unsortButton.click();
+ expect(firstName.getText()).toBe('John');
+ expect(lastName.getText()).toBe('Julie');
+ });
+ </file>
</example>
+ * <hr />
*
- * It's also possible to call the orderBy filter manually, by injecting `$filter`, retrieving the
- * filter routine with `$filter('orderBy')`, and calling the returned filter routine with the
- * desired parameters.
+ * @example
+ * ### Using `orderBy` inside a controller
*
- * Example:
+ * It is also possible to call the `orderBy` filter manually, by injecting `orderByFilter`, and
+ * calling it with the desired parameters. (Alternatively, you could inject the `$filter` factory
+ * and retrieve the `orderBy` filter with `$filter('orderBy')`.)
+ *
+ <example name="orderBy-call-manually" module="orderByExample3">
+ <file name="index.html">
+ <div ng-controller="ExampleController">
+ <pre>Sort by = {{propertyName}}; reverse = {{reverse}}</pre>
+ <hr/>
+ <button ng-click="sortBy(null)">Set to unsorted</button>
+ <hr/>
+ <table class="friends">
+ <tr>
+ <th>
+ <button ng-click="sortBy('name')">Name</button>
+ <span class="sortorder" ng-show="propertyName === 'name'" ng-class="{reverse: reverse}"></span>
+ </th>
+ <th>
+ <button ng-click="sortBy('phone')">Phone Number</button>
+ <span class="sortorder" ng-show="propertyName === 'phone'" ng-class="{reverse: reverse}"></span>
+ </th>
+ <th>
+ <button ng-click="sortBy('age')">Age</button>
+ <span class="sortorder" ng-show="propertyName === 'age'" ng-class="{reverse: reverse}"></span>
+ </th>
+ </tr>
+ <tr ng-repeat="friend in friends">
+ <td>{{friend.name}}</td>
+ <td>{{friend.phone}}</td>
+ <td>{{friend.age}}</td>
+ </tr>
+ </table>
+ </div>
+ </file>
+ <file name="script.js">
+ angular.module('orderByExample3', [])
+ .controller('ExampleController', ['$scope', 'orderByFilter', function($scope, orderBy) {
+ var friends = [
+ {name: 'John', phone: '555-1212', age: 10},
+ {name: 'Mary', phone: '555-9876', age: 19},
+ {name: 'Mike', phone: '555-4321', age: 21},
+ {name: 'Adam', phone: '555-5678', age: 35},
+ {name: 'Julie', phone: '555-8765', age: 29}
+ ];
+
+ $scope.propertyName = 'age';
+ $scope.reverse = true;
+ $scope.friends = orderBy(friends, $scope.propertyName, $scope.reverse);
+
+ $scope.sortBy = function(propertyName) {
+ $scope.reverse = (propertyName !== null && $scope.propertyName === propertyName)
+ ? !$scope.reverse : false;
+ $scope.propertyName = propertyName;
+ $scope.friends = orderBy(friends, $scope.propertyName, $scope.reverse);
+ };
+ }]);
+ </file>
+ <file name="style.css">
+ .friends {
+ border-collapse: collapse;
+ }
+
+ .friends th {
+ border-bottom: 1px solid;
+ }
+ .friends td, .friends th {
+ border-left: 1px solid;
+ padding: 5px 10px;
+ }
+ .friends td:first-child, .friends th:first-child {
+ border-left: none;
+ }
+
+ .sortorder:after {
+ content: '\25b2'; // BLACK UP-POINTING TRIANGLE
+ }
+ .sortorder.reverse:after {
+ content: '\25bc'; // BLACK DOWN-POINTING TRIANGLE
+ }
+ </file>
+ <file name="protractor.js" type="protractor">
+ // Element locators
+ var unsortButton = element(by.partialButtonText('unsorted'));
+ var nameHeader = element(by.partialButtonText('Name'));
+ var phoneHeader = element(by.partialButtonText('Phone'));
+ var ageHeader = element(by.partialButtonText('Age'));
+ var firstName = element(by.repeater('friends').column('friend.name').row(0));
+ var lastName = element(by.repeater('friends').column('friend.name').row(4));
+
+ it('should sort friends by some property, when clicking on the column header', function() {
+ expect(firstName.getText()).toBe('Adam');
+ expect(lastName.getText()).toBe('John');
+
+ phoneHeader.click();
+ expect(firstName.getText()).toBe('John');
+ expect(lastName.getText()).toBe('Mary');
+
+ nameHeader.click();
+ expect(firstName.getText()).toBe('Adam');
+ expect(lastName.getText()).toBe('Mike');
+
+ ageHeader.click();
+ expect(firstName.getText()).toBe('John');
+ expect(lastName.getText()).toBe('Adam');
+ });
+
+ it('should sort friends in reverse order, when clicking on the same column', function() {
+ expect(firstName.getText()).toBe('Adam');
+ expect(lastName.getText()).toBe('John');
+
+ ageHeader.click();
+ expect(firstName.getText()).toBe('John');
+ expect(lastName.getText()).toBe('Adam');
+
+ ageHeader.click();
+ expect(firstName.getText()).toBe('Adam');
+ expect(lastName.getText()).toBe('John');
+ });
+
+ it('should restore the original order, when clicking "Set to unsorted"', function() {
+ expect(firstName.getText()).toBe('Adam');
+ expect(lastName.getText()).toBe('John');
+
+ unsortButton.click();
+ expect(firstName.getText()).toBe('John');
+ expect(lastName.getText()).toBe('Julie');
+ });
+ </file>
+ </example>
+ * <hr />
*
* @example
- <example module="orderByExample">
- <file name="index.html">
- <div ng-controller="ExampleController">
- <table class="friend">
- <tr>
- <th><a href="" ng-click="reverse=false;order('name', false)">Name</a>
- (<a href="" ng-click="order('-name',false)">^</a>)</th>
- <th><a href="" ng-click="reverse=!reverse;order('phone', reverse)">Phone Number</a></th>
- <th><a href="" ng-click="reverse=!reverse;order('age',reverse)">Age</a></th>
- </tr>
- <tr ng-repeat="friend in friends">
- <td>{{friend.name}}</td>
- <td>{{friend.phone}}</td>
- <td>{{friend.age}}</td>
- </tr>
- </table>
- </div>
- </file>
+ * ### Using a custom comparator
+ *
+ * If you have very specific requirements about the way items are sorted, you can pass your own
+ * comparator function. For example, you might need to compare some strings in a locale-sensitive
+ * way. (When specifying a custom comparator, you also need to pass a value for the `reverse`
+ * argument - passing `false` retains the default sorting order, i.e. ascending.)
+ *
+ <example name="orderBy-custom-comparator" module="orderByExample4">
+ <file name="index.html">
+ <div ng-controller="ExampleController">
+ <div class="friends-container custom-comparator">
+ <h3>Locale-sensitive Comparator</h3>
+ <table class="friends">
+ <tr>
+ <th>Name</th>
+ <th>Favorite Letter</th>
+ </tr>
+ <tr ng-repeat="friend in friends | orderBy:'favoriteLetter':false:localeSensitiveComparator">
+ <td>{{friend.name}}</td>
+ <td>{{friend.favoriteLetter}}</td>
+ </tr>
+ </table>
+ </div>
+ <div class="friends-container default-comparator">
+ <h3>Default Comparator</h3>
+ <table class="friends">
+ <tr>
+ <th>Name</th>
+ <th>Favorite Letter</th>
+ </tr>
+ <tr ng-repeat="friend in friends | orderBy:'favoriteLetter'">
+ <td>{{friend.name}}</td>
+ <td>{{friend.favoriteLetter}}</td>
+ </tr>
+ </table>
+ </div>
+ </div>
+ </file>
+ <file name="script.js">
+ angular.module('orderByExample4', [])
+ .controller('ExampleController', ['$scope', function($scope) {
+ $scope.friends = [
+ {name: 'John', favoriteLetter: 'Ä'},
+ {name: 'Mary', favoriteLetter: 'Ü'},
+ {name: 'Mike', favoriteLetter: 'Ö'},
+ {name: 'Adam', favoriteLetter: 'H'},
+ {name: 'Julie', favoriteLetter: 'Z'}
+ ];
+
+ $scope.localeSensitiveComparator = function(v1, v2) {
+ // If we don't get strings, just compare by index
+ if (v1.type !== 'string' || v2.type !== 'string') {
+ return (v1.index < v2.index) ? -1 : 1;
+ }
- <file name="script.js">
- angular.module('orderByExample', [])
- .controller('ExampleController', ['$scope', '$filter', function($scope, $filter) {
- var orderBy = $filter('orderBy');
- $scope.friends = [
- { name: 'John', phone: '555-1212', age: 10 },
- { name: 'Mary', phone: '555-9876', age: 19 },
- { name: 'Mike', phone: '555-4321', age: 21 },
- { name: 'Adam', phone: '555-5678', age: 35 },
- { name: 'Julie', phone: '555-8765', age: 29 }
- ];
- $scope.order = function(predicate, reverse) {
- $scope.friends = orderBy($scope.friends, predicate, reverse);
- };
- $scope.order('-age',false);
- }]);
- </file>
-</example>
+ // Compare strings alphabetically, taking locale into account
+ return v1.value.localeCompare(v2.value);
+ };
+ }]);
+ </file>
+ <file name="style.css">
+ .friends-container {
+ display: inline-block;
+ margin: 0 30px;
+ }
+
+ .friends {
+ border-collapse: collapse;
+ }
+
+ .friends th {
+ border-bottom: 1px solid;
+ }
+ .friends td, .friends th {
+ border-left: 1px solid;
+ padding: 5px 10px;
+ }
+ .friends td:first-child, .friends th:first-child {
+ border-left: none;
+ }
+ </file>
+ <file name="protractor.js" type="protractor">
+ // Element locators
+ var container = element(by.css('.custom-comparator'));
+ var names = container.all(by.repeater('friends').column('friend.name'));
+
+ it('should sort friends by favorite letter (in correct alphabetical order)', function() {
+ expect(names.get(0).getText()).toBe('John');
+ expect(names.get(1).getText()).toBe('Adam');
+ expect(names.get(2).getText()).toBe('Mike');
+ expect(names.get(3).getText()).toBe('Mary');
+ expect(names.get(4).getText()).toBe('Julie');
+ });
+ </file>
+ </example>
+ *
*/
orderByFilter.$inject = ['$parse'];
function orderByFilter($parse) {
- return function(array, sortPredicate, reverseOrder) {
+ return function(array, sortPredicate, reverseOrder, compareFn) {
if (array == null) return array;
if (!isArrayLike(array)) {
@@ -19773,11 +22209,12 @@ function orderByFilter($parse) {
if (!isArray(sortPredicate)) { sortPredicate = [sortPredicate]; }
if (sortPredicate.length === 0) { sortPredicate = ['+']; }
- var predicates = processPredicates(sortPredicate, reverseOrder);
- // Add a predicate at the end that evaluates to the element index. This makes the
- // sort stable as it works as a tie-breaker when all the input predicates cannot
- // distinguish between two elements.
- predicates.push({ get: function() { return {}; }, descending: reverseOrder ? -1 : 1});
+ var predicates = processPredicates(sortPredicate);
+
+ var descending = reverseOrder ? -1 : 1;
+
+ // Define the `compare()` function. Use a default comparator if none is specified.
+ var compare = isFunction(compareFn) ? compareFn : defaultCompare;
// The next three lines are a version of a Swartzian Transform idiom from Perl
// (sometimes called the Decorate-Sort-Undecorate idiom)
@@ -19789,8 +22226,12 @@ function orderByFilter($parse) {
return array;
function getComparisonObject(value, index) {
+ // NOTE: We are adding an extra `tieBreaker` value based on the element's index.
+ // This will be used to keep the sort stable when none of the input predicates can
+ // distinguish between two elements.
return {
value: value,
+ tieBreaker: {value: index, type: 'number', index: index},
predicateValues: predicates.map(function(predicate) {
return getPredicateValue(predicate.get(value), index);
})
@@ -19798,25 +22239,26 @@ function orderByFilter($parse) {
}
function doComparison(v1, v2) {
- var result = 0;
- for (var index=0, length = predicates.length; index < length; ++index) {
- result = compare(v1.predicateValues[index], v2.predicateValues[index]) * predicates[index].descending;
- if (result) break;
+ for (var i = 0, ii = predicates.length; i < ii; i++) {
+ var result = compare(v1.predicateValues[i], v2.predicateValues[i]);
+ if (result) {
+ return result * predicates[i].descending * descending;
+ }
}
- return result;
+
+ return compare(v1.tieBreaker, v2.tieBreaker) * descending;
}
};
- function processPredicates(sortPredicate, reverseOrder) {
- reverseOrder = reverseOrder ? -1 : 1;
- return sortPredicate.map(function(predicate) {
+ function processPredicates(sortPredicates) {
+ return sortPredicates.map(function(predicate) {
var descending = 1, get = identity;
if (isFunction(predicate)) {
get = predicate;
} else if (isString(predicate)) {
- if ((predicate.charAt(0) == '+' || predicate.charAt(0) == '-')) {
- descending = predicate.charAt(0) == '-' ? -1 : 1;
+ if ((predicate.charAt(0) === '+' || predicate.charAt(0) === '-')) {
+ descending = predicate.charAt(0) === '-' ? -1 : 1;
predicate = predicate.substring(1);
}
if (predicate !== '') {
@@ -19827,7 +22269,7 @@ function orderByFilter($parse) {
}
}
}
- return { get: get, descending: descending * reverseOrder };
+ return {get: get, descending: descending};
});
}
@@ -19842,9 +22284,9 @@ function orderByFilter($parse) {
}
}
- function objectValue(value, index) {
+ function objectValue(value) {
// If `valueOf` is a valid function use that
- if (typeof value.valueOf === 'function') {
+ if (isFunction(value.valueOf)) {
value = value.valueOf();
if (isPrimitive(value)) return value;
}
@@ -19853,8 +22295,8 @@ function orderByFilter($parse) {
value = value.toString();
if (isPrimitive(value)) return value;
}
- // We have a basic object so we use the position of the object in the collection
- return index;
+
+ return value;
}
function getPredicateValue(value, index) {
@@ -19862,23 +22304,39 @@ function orderByFilter($parse) {
if (value === null) {
type = 'string';
value = 'null';
- } else if (type === 'string') {
- value = value.toLowerCase();
} else if (type === 'object') {
- value = objectValue(value, index);
+ value = objectValue(value);
}
- return { value: value, type: type };
+ return {value: value, type: type, index: index};
}
- function compare(v1, v2) {
+ function defaultCompare(v1, v2) {
var result = 0;
- if (v1.type === v2.type) {
- if (v1.value !== v2.value) {
- result = v1.value < v2.value ? -1 : 1;
+ var type1 = v1.type;
+ var type2 = v2.type;
+
+ if (type1 === type2) {
+ var value1 = v1.value;
+ var value2 = v2.value;
+
+ if (type1 === 'string') {
+ // Compare strings case-insensitively
+ value1 = value1.toLowerCase();
+ value2 = value2.toLowerCase();
+ } else if (type1 === 'object') {
+ // For basic objects, use the position of the object
+ // in the collection instead of the value
+ if (isObject(value1)) value1 = v1.index;
+ if (isObject(value2)) value2 = v2.index;
+ }
+
+ if (value1 !== value2) {
+ result = value1 < value2 ? -1 : 1;
}
} else {
- result = v1.type < v2.type ? -1 : 1;
+ result = type1 < type2 ? -1 : 1;
}
+
return result;
}
}
@@ -19899,12 +22357,10 @@ function ngDirective(directive) {
* @restrict E
*
* @description
- * Modifies the default behavior of the html A tag so that the default action is prevented when
+ * Modifies the default behavior of the html a tag so that the default action is prevented when
* the href attribute is empty.
*
- * This change permits the easy creation of action links with the `ngClick` directive
- * without changing the location or causing page reloads, e.g.:
- * `<a href="" ng-click="list.addItem()">Add Item</a>`
+ * For dynamically creating `href` attributes for a tags, see the {@link ng.ngHref `ngHref`} directive.
*/
var htmlAnchorDirective = valueFn({
restrict: 'E',
@@ -19958,7 +22414,7 @@ var htmlAnchorDirective = valueFn({
* @example
* This example shows various combinations of `href`, `ng-href` and `ng-click` attributes
* in links and their different behaviors:
- <example>
+ <example name="ng-href">
<file name="index.html">
<input ng-model="value" /><br />
<a id="link-1" href ng-click="value = 1">link 1</a> (link, don't reload)<br />
@@ -20087,27 +22543,15 @@ var htmlAnchorDirective = valueFn({
*
* @description
*
- * This directive sets the `disabled` attribute on the element if the
+ * This directive sets the `disabled` attribute on the element (typically a form control,
+ * e.g. `input`, `button`, `select` etc.) if the
* {@link guide/expression expression} inside `ngDisabled` evaluates to truthy.
*
* A special directive is necessary because we cannot use interpolation inside the `disabled`
- * attribute. The following example would make the button enabled on Chrome/Firefox
- * but not on older IEs:
- *
- * ```html
- * <!-- See below for an example of ng-disabled being used correctly -->
- * <div ng-init="isDisabled = false">
- * <button disabled="{{isDisabled}}">Disabled</button>
- * </div>
- * ```
- *
- * This is because the HTML specification does not require browsers to preserve the values of
- * boolean attributes such as `disabled` (Their presence means true and their absence means false.)
- * If we put an Angular interpolation expression into such an attribute then the
- * binding information would be lost when the browser removes the attribute.
+ * attribute. See the {@link guide/interpolation interpolation guide} for more info.
*
* @example
- <example>
+ <example name="ng-disabled">
<file name="index.html">
<label>Click me to toggle: <input type="checkbox" ng-model="checked"></label><br/>
<button ng-model="button" ng-disabled="checked">Button</button>
@@ -20139,17 +22583,11 @@ var htmlAnchorDirective = valueFn({
* Note that this directive should not be used together with {@link ngModel `ngModel`},
* as this can lead to unexpected behavior.
*
- * ### Why do we need `ngChecked`?
+ * A special directive is necessary because we cannot use interpolation inside the `checked`
+ * attribute. See the {@link guide/interpolation interpolation guide} for more info.
*
- * The HTML specification does not require browsers to preserve the values of boolean attributes
- * such as checked. (Their presence means true and their absence means false.)
- * If we put an Angular interpolation expression into such an attribute then the
- * binding information would be lost when the browser removes the attribute.
- * The `ngChecked` directive solves this problem for the `checked` attribute.
- * This complementary directive is not removed by the browser and so provides
- * a permanent reliable place to store the binding information.
* @example
- <example>
+ <example name="ng-checked">
<file name="index.html">
<label>Check me to check both: <input type="checkbox" ng-model="master"></label><br/>
<input id="checkSlave" type="checkbox" ng-checked="master" aria-label="Slave input">
@@ -20176,15 +22614,16 @@ var htmlAnchorDirective = valueFn({
* @priority 100
*
* @description
- * The HTML specification does not require browsers to preserve the values of boolean attributes
- * such as readonly. (Their presence means true and their absence means false.)
- * If we put an Angular interpolation expression into such an attribute then the
- * binding information would be lost when the browser removes the attribute.
- * The `ngReadonly` directive solves this problem for the `readonly` attribute.
- * This complementary directive is not removed by the browser and so provides
- * a permanent reliable place to store the binding information.
+ *
+ * Sets the `readonly` attribute on the element, if the expression inside `ngReadonly` is truthy.
+ * Note that `readonly` applies only to `input` elements with specific types. [See the input docs on
+ * MDN](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#attr-readonly) for more information.
+ *
+ * A special directive is necessary because we cannot use interpolation inside the `readonly`
+ * attribute. See the {@link guide/interpolation interpolation guide} for more info.
+ *
* @example
- <example>
+ <example name="ng-readonly">
<file name="index.html">
<label>Check me to make text readonly: <input type="checkbox" ng-model="checked"></label><br/>
<input type="text" ng-readonly="checked" value="I'm Angular" aria-label="Readonly field" />
@@ -20211,16 +22650,21 @@ var htmlAnchorDirective = valueFn({
* @priority 100
*
* @description
- * The HTML specification does not require browsers to preserve the values of boolean attributes
- * such as selected. (Their presence means true and their absence means false.)
- * If we put an Angular interpolation expression into such an attribute then the
- * binding information would be lost when the browser removes the attribute.
- * The `ngSelected` directive solves this problem for the `selected` attribute.
- * This complementary directive is not removed by the browser and so provides
- * a permanent reliable place to store the binding information.
+ *
+ * Sets the `selected` attribute on the element, if the expression inside `ngSelected` is truthy.
+ *
+ * A special directive is necessary because we cannot use interpolation inside the `selected`
+ * attribute. See the {@link guide/interpolation interpolation guide} for more info.
+ *
+ * <div class="alert alert-warning">
+ * **Note:** `ngSelected` does not interact with the `select` and `ngModel` directives, it only
+ * sets the `selected` attribute on the element. If you are using `ngModel` on the select, you
+ * should not use `ngSelected` on the options, as `ngModel` will set the select value and
+ * selected options.
+ * </div>
*
* @example
- <example>
+ <example name="ng-selected">
<file name="index.html">
<label>Check me to select: <input type="checkbox" ng-model="selected"></label><br/>
<select aria-label="ngSelected demo">
@@ -20249,15 +22693,19 @@ var htmlAnchorDirective = valueFn({
* @priority 100
*
* @description
- * The HTML specification does not require browsers to preserve the values of boolean attributes
- * such as open. (Their presence means true and their absence means false.)
- * If we put an Angular interpolation expression into such an attribute then the
- * binding information would be lost when the browser removes the attribute.
- * The `ngOpen` directive solves this problem for the `open` attribute.
- * This complementary directive is not removed by the browser and so provides
- * a permanent reliable place to store the binding information.
+ *
+ * Sets the `open` attribute on the element, if the expression inside `ngOpen` is truthy.
+ *
+ * A special directive is necessary because we cannot use interpolation inside the `open`
+ * attribute. See the {@link guide/interpolation interpolation guide} for more info.
+ *
+ * ## A note about browser compatibility
+ *
+ * Edge, Firefox, and Internet Explorer do not support the `details` element, it is
+ * recommended to use {@link ng.ngShow} and {@link ng.ngHide} instead.
+ *
* @example
- <example>
+ <example name="ng-open">
<file name="index.html">
<label>Check me check multiple: <input type="checkbox" ng-model="open"></label><br/>
<details id="details" ng-open="open">
@@ -20283,7 +22731,7 @@ var ngAttributeAliasDirectives = {};
// boolean attrs are evaluated
forEach(BOOLEAN_ATTR, function(propName, attrName) {
// binding to multiple is not supported
- if (propName == "multiple") return;
+ if (propName === 'multiple') return;
function defaultLinkFn(scope, element, attr) {
scope.$watch(attr[normalized], function ngBooleanAttrWatchAction(value) {
@@ -20320,10 +22768,10 @@ forEach(ALIASED_ATTR, function(htmlAttr, ngAttr) {
link: function(scope, element, attr) {
//special case ngPattern when a literal regular expression value
//is used as the expression (this way we don't have to watch anything).
- if (ngAttr === "ngPattern" && attr.ngPattern.charAt(0) == "/") {
+ if (ngAttr === 'ngPattern' && attr.ngPattern.charAt(0) === '/') {
var match = attr.ngPattern.match(REGEX_STRING_REGEXP);
if (match) {
- attr.$set("ngPattern", new RegExp(match[1], match[2]));
+ attr.$set('ngPattern', new RegExp(match[1], match[2]));
return;
}
}
@@ -20363,10 +22811,11 @@ forEach(['src', 'srcset', 'href'], function(attrName) {
attr.$set(name, value);
- // on IE, if "ng:src" directive declaration is used and "src" attribute doesn't exist
+ // Support: IE 9-11 only
+ // On IE, if "ng:src" directive declaration is used and "src" attribute doesn't exist
// then calling element.setAttribute('src', 'foo') doesn't do anything, so we need
// to set the property as well to achieve the desired effect.
- // we use attr[attrName] value since $set can sanitize the url.
+ // We use attr[attrName] value since $set can sanitize the url.
if (msie && propName) element.prop(propName, attr[name]);
});
}
@@ -20374,7 +22823,7 @@ forEach(['src', 'srcset', 'href'], function(attrName) {
};
});
-/* global -nullFormCtrl, -SUBMITTED_CLASS, addSetValidityMethod: true
+/* global -nullFormCtrl, -PENDING_CLASS, -SUBMITTED_CLASS
*/
var nullFormCtrl = {
$addControl: noop,
@@ -20385,6 +22834,7 @@ var nullFormCtrl = {
$setPristine: noop,
$setSubmitted: noop
},
+PENDING_CLASS = 'ng-pending',
SUBMITTED_CLASS = 'ng-submitted';
function nullFormRenameControl(control, name) {
@@ -20435,22 +22885,28 @@ function nullFormRenameControl(control, name) {
*/
//asks for $scope to fool the BC controller module
FormController.$inject = ['$element', '$attrs', '$scope', '$animate', '$interpolate'];
-function FormController(element, attrs, $scope, $animate, $interpolate) {
- var form = this,
- controls = [];
+function FormController($element, $attrs, $scope, $animate, $interpolate) {
+ this.$$controls = [];
// init state
- form.$error = {};
- form.$$success = {};
- form.$pending = undefined;
- form.$name = $interpolate(attrs.name || attrs.ngForm || '')($scope);
- form.$dirty = false;
- form.$pristine = true;
- form.$valid = true;
- form.$invalid = false;
- form.$submitted = false;
- form.$$parentForm = nullFormCtrl;
+ this.$error = {};
+ this.$$success = {};
+ this.$pending = undefined;
+ this.$name = $interpolate($attrs.name || $attrs.ngForm || '')($scope);
+ this.$dirty = false;
+ this.$pristine = true;
+ this.$valid = true;
+ this.$invalid = false;
+ this.$submitted = false;
+ this.$$parentForm = nullFormCtrl;
+
+ this.$$element = $element;
+ this.$$animate = $animate;
+ setupValidity(this);
+}
+
+FormController.prototype = {
/**
* @ngdoc method
* @name form.FormController#$rollbackViewValue
@@ -20462,11 +22918,11 @@ function FormController(element, attrs, $scope, $animate, $interpolate) {
* event defined in `ng-model-options`. This method is typically needed by the reset button of
* a form that uses `ng-model-options` to pend updates.
*/
- form.$rollbackViewValue = function() {
- forEach(controls, function(control) {
+ $rollbackViewValue: function() {
+ forEach(this.$$controls, function(control) {
control.$rollbackViewValue();
});
- };
+ },
/**
* @ngdoc method
@@ -20479,11 +22935,11 @@ function FormController(element, attrs, $scope, $animate, $interpolate) {
* event defined in `ng-model-options`. This method is rarely needed as `NgModelController`
* usually handles calling this in response to input events.
*/
- form.$commitViewValue = function() {
- forEach(controls, function(control) {
+ $commitViewValue: function() {
+ forEach(this.$$controls, function(control) {
control.$commitViewValue();
});
- };
+ },
/**
* @ngdoc method
@@ -20501,34 +22957,34 @@ function FormController(element, attrs, $scope, $animate, $interpolate) {
*
* However, if the method is used programmatically, for example by adding dynamically created controls,
* or controls that have been previously removed without destroying their corresponding DOM element,
- * it's the developers responsiblity to make sure the current state propagates to the parent form.
+ * it's the developers responsibility to make sure the current state propagates to the parent form.
*
* For example, if an input control is added that is already `$dirty` and has `$error` properties,
* calling `$setDirty()` and `$validate()` afterwards will propagate the state to the parent form.
*/
- form.$addControl = function(control) {
+ $addControl: function(control) {
// Breaking change - before, inputs whose name was "hasOwnProperty" were quietly ignored
// and not added to the scope. Now we throw an error.
assertNotHasOwnProperty(control.$name, 'input');
- controls.push(control);
+ this.$$controls.push(control);
if (control.$name) {
- form[control.$name] = control;
+ this[control.$name] = control;
}
- control.$$parentForm = form;
- };
+ control.$$parentForm = this;
+ },
// Private API: rename a form control
- form.$$renameControl = function(control, newName) {
+ $$renameControl: function(control, newName) {
var oldName = control.$name;
- if (form[oldName] === control) {
- delete form[oldName];
+ if (this[oldName] === control) {
+ delete this[oldName];
}
- form[newName] = control;
+ this[newName] = control;
control.$name = newName;
- };
+ },
/**
* @ngdoc method
@@ -20546,60 +23002,26 @@ function FormController(element, attrs, $scope, $animate, $interpolate) {
* different from case to case. For example, removing the only `$dirty` control from a form may or
* may not mean that the form is still `$dirty`.
*/
- form.$removeControl = function(control) {
- if (control.$name && form[control.$name] === control) {
- delete form[control.$name];
- }
- forEach(form.$pending, function(value, name) {
- form.$setValidity(name, null, control);
- });
- forEach(form.$error, function(value, name) {
- form.$setValidity(name, null, control);
- });
- forEach(form.$$success, function(value, name) {
- form.$setValidity(name, null, control);
- });
-
- arrayRemove(controls, control);
+ $removeControl: function(control) {
+ if (control.$name && this[control.$name] === control) {
+ delete this[control.$name];
+ }
+ forEach(this.$pending, function(value, name) {
+ // eslint-disable-next-line no-invalid-this
+ this.$setValidity(name, null, control);
+ }, this);
+ forEach(this.$error, function(value, name) {
+ // eslint-disable-next-line no-invalid-this
+ this.$setValidity(name, null, control);
+ }, this);
+ forEach(this.$$success, function(value, name) {
+ // eslint-disable-next-line no-invalid-this
+ this.$setValidity(name, null, control);
+ }, this);
+
+ arrayRemove(this.$$controls, control);
control.$$parentForm = nullFormCtrl;
- };
-
-
- /**
- * @ngdoc method
- * @name form.FormController#$setValidity
- *
- * @description
- * Sets the validity of a form control.
- *
- * This method will also propagate to parent forms.
- */
- addSetValidityMethod({
- ctrl: this,
- $element: element,
- set: function(object, property, controller) {
- var list = object[property];
- if (!list) {
- object[property] = [controller];
- } else {
- var index = list.indexOf(controller);
- if (index === -1) {
- list.push(controller);
- }
- }
- },
- unset: function(object, property, controller) {
- var list = object[property];
- if (!list) {
- return;
- }
- arrayRemove(list, controller);
- if (list.length === 0) {
- delete object[property];
- }
- },
- $animate: $animate
- });
+ },
/**
* @ngdoc method
@@ -20611,13 +23033,13 @@ function FormController(element, attrs, $scope, $animate, $interpolate) {
* This method can be called to add the 'ng-dirty' class and set the form to a dirty
* state (ng-dirty class). This method will also propagate to parent forms.
*/
- form.$setDirty = function() {
- $animate.removeClass(element, PRISTINE_CLASS);
- $animate.addClass(element, DIRTY_CLASS);
- form.$dirty = true;
- form.$pristine = false;
- form.$$parentForm.$setDirty();
- };
+ $setDirty: function() {
+ this.$$animate.removeClass(this.$$element, PRISTINE_CLASS);
+ this.$$animate.addClass(this.$$element, DIRTY_CLASS);
+ this.$dirty = true;
+ this.$pristine = false;
+ this.$$parentForm.$setDirty();
+ },
/**
* @ngdoc method
@@ -20626,22 +23048,24 @@ function FormController(element, attrs, $scope, $animate, $interpolate) {
* @description
* Sets the form to its pristine state.
*
- * This method can be called to remove the 'ng-dirty' class and set the form to its pristine
- * state (ng-pristine class). This method will also propagate to all the controls contained
- * in this form.
+ * This method sets the form's `$pristine` state to true, the `$dirty` state to false, removes
+ * the `ng-dirty` class and adds the `ng-pristine` class. Additionally, it sets the `$submitted`
+ * state to false.
+ *
+ * This method will also propagate to all the controls contained in this form.
*
* Setting a form back to a pristine state is often useful when we want to 'reuse' a form after
* saving or resetting it.
*/
- form.$setPristine = function() {
- $animate.setClass(element, PRISTINE_CLASS, DIRTY_CLASS + ' ' + SUBMITTED_CLASS);
- form.$dirty = false;
- form.$pristine = true;
- form.$submitted = false;
- forEach(controls, function(control) {
+ $setPristine: function() {
+ this.$$animate.setClass(this.$$element, PRISTINE_CLASS, DIRTY_CLASS + ' ' + SUBMITTED_CLASS);
+ this.$dirty = false;
+ this.$pristine = true;
+ this.$submitted = false;
+ forEach(this.$$controls, function(control) {
control.$setPristine();
});
- };
+ },
/**
* @ngdoc method
@@ -20656,11 +23080,11 @@ function FormController(element, attrs, $scope, $animate, $interpolate) {
* Setting a form controls back to their untouched state is often useful when setting the form
* back to its pristine state.
*/
- form.$setUntouched = function() {
- forEach(controls, function(control) {
+ $setUntouched: function() {
+ forEach(this.$$controls, function(control) {
control.$setUntouched();
});
- };
+ },
/**
* @ngdoc method
@@ -20669,12 +23093,46 @@ function FormController(element, attrs, $scope, $animate, $interpolate) {
* @description
* Sets the form to its submitted state.
*/
- form.$setSubmitted = function() {
- $animate.addClass(element, SUBMITTED_CLASS);
- form.$submitted = true;
- form.$$parentForm.$setSubmitted();
- };
-}
+ $setSubmitted: function() {
+ this.$$animate.addClass(this.$$element, SUBMITTED_CLASS);
+ this.$submitted = true;
+ this.$$parentForm.$setSubmitted();
+ }
+};
+
+/**
+ * @ngdoc method
+ * @name form.FormController#$setValidity
+ *
+ * @description
+ * Sets the validity of a form control.
+ *
+ * This method will also propagate to parent forms.
+ */
+addSetValidityMethod({
+ clazz: FormController,
+ set: function(object, property, controller) {
+ var list = object[property];
+ if (!list) {
+ object[property] = [controller];
+ } else {
+ var index = list.indexOf(controller);
+ if (index === -1) {
+ list.push(controller);
+ }
+ }
+ },
+ unset: function(object, property, controller) {
+ var list = object[property];
+ if (!list) {
+ return;
+ }
+ arrayRemove(list, controller);
+ if (list.length === 0) {
+ delete object[property];
+ }
+ }
+});
/**
* @ngdoc directive
@@ -20711,13 +23169,9 @@ function FormController(element, attrs, $scope, $animate, $interpolate) {
*
* In Angular, forms can be nested. This means that the outer form is valid when all of the child
* forms are valid as well. However, browsers do not allow nesting of `<form>` elements, so
- * Angular provides the {@link ng.directive:ngForm `ngForm`} directive which behaves identically to
- * `<form>` but can be nested. This allows you to have nested forms, which is very useful when
- * using Angular validation directives in forms that are dynamically generated using the
- * {@link ng.directive:ngRepeat `ngRepeat`} directive. Since you cannot dynamically generate the `name`
- * attribute of input elements using interpolation, you have to wrap each set of repeated inputs in an
- * `ngForm` directive and nest these in an outer `form` element.
- *
+ * Angular provides the {@link ng.directive:ngForm `ngForm`} directive, which behaves identically to
+ * `form` but can be nested. Nested forms can be useful, for example, if the validity of a sub-group
+ * of controls needs to be determined.
*
* # CSS classes
* - `ng-valid` is set if the form is valid.
@@ -20788,7 +23242,7 @@ function FormController(element, attrs, $scope, $animate, $interpolate) {
* </pre>
*
* @example
- <example deps="angular-animate.js" animations="true" fixBase="true" module="formExample">
+ <example name="ng-form" deps="angular-animate.js" animations="true" fixBase="true" module="formExample">
<file name="index.html">
<script>
angular.module('formExample', [])
@@ -20875,13 +23329,13 @@ var formDirectiveFactory = function(isNgForm) {
event.preventDefault();
};
- addEventListenerFn(formElement[0], 'submit', handleFormSubmission);
+ formElement[0].addEventListener('submit', handleFormSubmission);
// unregister the preventDefault listener so that we don't not leak memory but in a
// way that will achieve the prevention of the default action.
formElement.on('$destroy', function() {
$timeout(function() {
- removeEventListenerFn(formElement[0], 'submit', handleFormSubmission);
+ formElement[0].removeEventListener('submit', handleFormSubmission);
}, 0, false);
});
}
@@ -20926,27 +23380,149 @@ var formDirectiveFactory = function(isNgForm) {
var formDirective = formDirectiveFactory();
var ngFormDirective = formDirectiveFactory(true);
-/* global VALID_CLASS: false,
+
+
+// helper methods
+function setupValidity(instance) {
+ instance.$$classCache = {};
+ instance.$$classCache[INVALID_CLASS] = !(instance.$$classCache[VALID_CLASS] = instance.$$element.hasClass(VALID_CLASS));
+}
+function addSetValidityMethod(context) {
+ var clazz = context.clazz,
+ set = context.set,
+ unset = context.unset;
+
+ clazz.prototype.$setValidity = function(validationErrorKey, state, controller) {
+ if (isUndefined(state)) {
+ createAndSet(this, '$pending', validationErrorKey, controller);
+ } else {
+ unsetAndCleanup(this, '$pending', validationErrorKey, controller);
+ }
+ if (!isBoolean(state)) {
+ unset(this.$error, validationErrorKey, controller);
+ unset(this.$$success, validationErrorKey, controller);
+ } else {
+ if (state) {
+ unset(this.$error, validationErrorKey, controller);
+ set(this.$$success, validationErrorKey, controller);
+ } else {
+ set(this.$error, validationErrorKey, controller);
+ unset(this.$$success, validationErrorKey, controller);
+ }
+ }
+ if (this.$pending) {
+ cachedToggleClass(this, PENDING_CLASS, true);
+ this.$valid = this.$invalid = undefined;
+ toggleValidationCss(this, '', null);
+ } else {
+ cachedToggleClass(this, PENDING_CLASS, false);
+ this.$valid = isObjectEmpty(this.$error);
+ this.$invalid = !this.$valid;
+ toggleValidationCss(this, '', this.$valid);
+ }
+
+ // re-read the state as the set/unset methods could have
+ // combined state in this.$error[validationError] (used for forms),
+ // where setting/unsetting only increments/decrements the value,
+ // and does not replace it.
+ var combinedState;
+ if (this.$pending && this.$pending[validationErrorKey]) {
+ combinedState = undefined;
+ } else if (this.$error[validationErrorKey]) {
+ combinedState = false;
+ } else if (this.$$success[validationErrorKey]) {
+ combinedState = true;
+ } else {
+ combinedState = null;
+ }
+
+ toggleValidationCss(this, validationErrorKey, combinedState);
+ this.$$parentForm.$setValidity(validationErrorKey, combinedState, this);
+ };
+
+ function createAndSet(ctrl, name, value, controller) {
+ if (!ctrl[name]) {
+ ctrl[name] = {};
+ }
+ set(ctrl[name], value, controller);
+ }
+
+ function unsetAndCleanup(ctrl, name, value, controller) {
+ if (ctrl[name]) {
+ unset(ctrl[name], value, controller);
+ }
+ if (isObjectEmpty(ctrl[name])) {
+ ctrl[name] = undefined;
+ }
+ }
+
+ function cachedToggleClass(ctrl, className, switchValue) {
+ if (switchValue && !ctrl.$$classCache[className]) {
+ ctrl.$$animate.addClass(ctrl.$$element, className);
+ ctrl.$$classCache[className] = true;
+ } else if (!switchValue && ctrl.$$classCache[className]) {
+ ctrl.$$animate.removeClass(ctrl.$$element, className);
+ ctrl.$$classCache[className] = false;
+ }
+ }
+
+ function toggleValidationCss(ctrl, validationErrorKey, isValid) {
+ validationErrorKey = validationErrorKey ? '-' + snake_case(validationErrorKey, '-') : '';
+
+ cachedToggleClass(ctrl, VALID_CLASS + validationErrorKey, isValid === true);
+ cachedToggleClass(ctrl, INVALID_CLASS + validationErrorKey, isValid === false);
+ }
+}
+
+function isObjectEmpty(obj) {
+ if (obj) {
+ for (var prop in obj) {
+ if (obj.hasOwnProperty(prop)) {
+ return false;
+ }
+ }
+ }
+ return true;
+}
+
+/* global
+ VALID_CLASS: false,
INVALID_CLASS: false,
PRISTINE_CLASS: false,
DIRTY_CLASS: false,
- UNTOUCHED_CLASS: false,
- TOUCHED_CLASS: false,
- ngModelMinErr: false,
+ ngModelMinErr: false
*/
-// Regex code is obtained from SO: https://stackoverflow.com/questions/3143070/javascript-regex-iso-datetime#answer-3143231
-var ISO_DATE_REGEXP = /\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+([+-][0-2]\d:[0-5]\d|Z)/;
+// Regex code was initially obtained from SO prior to modification: https://stackoverflow.com/questions/3143070/javascript-regex-iso-datetime#answer-3143231
+var ISO_DATE_REGEXP = /^\d{4,}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+(?:[+-][0-2]\d:[0-5]\d|Z)$/;
// See valid URLs in RFC3987 (http://tools.ietf.org/html/rfc3987)
-var URL_REGEXP = /^[A-Za-z][A-Za-z\d.+-]*:\/*(?:\w+(?::\w+)?@)?[^\s/]+(?::\d+)?(?:\/[\w#!:.?+=&%@\-/]*)?$/;
-var EMAIL_REGEXP = /^[a-z0-9!#$%&'*+\/=?^_`{|}~.-]+@[a-z0-9]([a-z0-9-]*[a-z0-9])?(\.[a-z0-9]([a-z0-9-]*[a-z0-9])?)*$/i;
-var NUMBER_REGEXP = /^\s*(\-|\+)?(\d+|(\d*(\.\d*)))([eE][+-]?\d+)?\s*$/;
-var DATE_REGEXP = /^(\d{4})-(\d{2})-(\d{2})$/;
-var DATETIMELOCAL_REGEXP = /^(\d{4})-(\d\d)-(\d\d)T(\d\d):(\d\d)(?::(\d\d)(\.\d{1,3})?)?$/;
-var WEEK_REGEXP = /^(\d{4})-W(\d\d)$/;
-var MONTH_REGEXP = /^(\d{4})-(\d\d)$/;
+// Note: We are being more lenient, because browsers are too.
+// 1. Scheme
+// 2. Slashes
+// 3. Username
+// 4. Password
+// 5. Hostname
+// 6. Port
+// 7. Path
+// 8. Query
+// 9. Fragment
+// 1111111111111111 222 333333 44444 55555555555555555555555 666 77777777 8888888 999
+var URL_REGEXP = /^[a-z][a-z\d.+-]*:\/*(?:[^:@]+(?::[^@]+)?@)?(?:[^\s:/?#]+|\[[a-f\d:]+])(?::\d+)?(?:\/[^?#]*)?(?:\?[^#]*)?(?:#.*)?$/i;
+// eslint-disable-next-line max-len
+var EMAIL_REGEXP = /^(?=.{1,254}$)(?=.{1,64}@)[-!#$%&'*+/0-9=?A-Z^_`a-z{|}~]+(\.[-!#$%&'*+/0-9=?A-Z^_`a-z{|}~]+)*@[A-Za-z0-9]([A-Za-z0-9-]{0,61}[A-Za-z0-9])?(\.[A-Za-z0-9]([A-Za-z0-9-]{0,61}[A-Za-z0-9])?)*$/;
+var NUMBER_REGEXP = /^\s*(-|\+)?(\d+|(\d*(\.\d*)))([eE][+-]?\d+)?\s*$/;
+var DATE_REGEXP = /^(\d{4,})-(\d{2})-(\d{2})$/;
+var DATETIMELOCAL_REGEXP = /^(\d{4,})-(\d\d)-(\d\d)T(\d\d):(\d\d)(?::(\d\d)(\.\d{1,3})?)?$/;
+var WEEK_REGEXP = /^(\d{4,})-W(\d\d)$/;
+var MONTH_REGEXP = /^(\d{4,})-(\d\d)$/;
var TIME_REGEXP = /^(\d\d):(\d\d)(?::(\d\d)(\.\d{1,3})?)?$/;
+var PARTIAL_VALIDATION_EVENTS = 'keydown wheel mousedown';
+var PARTIAL_VALIDATION_TYPES = createMap();
+forEach('date,datetime-local,month,time,week'.split(','), function(type) {
+ PARTIAL_VALIDATION_TYPES[type] = true;
+});
+
var inputType = {
/**
@@ -20971,8 +23547,8 @@ var inputType = {
* @param {string=} pattern Similar to `ngPattern` except that the attribute value is the actual string
* that contains the regular expression body that will be converted to a regular expression
* as in the ngPattern directive.
- * @param {string=} ngPattern Sets `pattern` validation error key if the ngModel value does not match
- * a RegExp found by evaluating the Angular expression given in the attribute value.
+ * @param {string=} ngPattern Sets `pattern` validation error key if the ngModel {@link ngModel.NgModelController#$viewValue $viewValue}
+ * does not match a RegExp found by evaluating the Angular expression given in the attribute value.
* If the expression evaluates to a RegExp object, then this is used directly.
* If the expression evaluates to a string, then it will be converted to a RegExp
* after wrapping it in `^` and `$` characters. For instance, `"abc"` will be converted to
@@ -21009,11 +23585,11 @@ var inputType = {
<span class="error" ng-show="myForm.input.$error.pattern">
Single word only!</span>
</div>
- <tt>text = {{example.text}}</tt><br/>
- <tt>myForm.input.$valid = {{myForm.input.$valid}}</tt><br/>
- <tt>myForm.input.$error = {{myForm.input.$error}}</tt><br/>
- <tt>myForm.$valid = {{myForm.$valid}}</tt><br/>
- <tt>myForm.$error.required = {{!!myForm.$error.required}}</tt><br/>
+ <code>text = {{example.text}}</code><br/>
+ <code>myForm.input.$valid = {{myForm.input.$valid}}</code><br/>
+ <code>myForm.input.$error = {{myForm.input.$error}}</code><br/>
+ <code>myForm.$valid = {{myForm.$valid}}</code><br/>
+ <code>myForm.$error.required = {{!!myForm.$error.required}}</code><br/>
</form>
</file>
<file name="protractor.js" type="protractor">
@@ -21114,7 +23690,6 @@ var inputType = {
<file name="protractor.js" type="protractor">
var value = element(by.binding('example.value | date: "yyyy-MM-dd"'));
var valid = element(by.binding('myForm.input.$valid'));
- var input = element(by.model('example.value'));
// currently protractor/webdriver does not support
// sending keys to all known HTML5 input controls
@@ -21217,7 +23792,6 @@ var inputType = {
<file name="protractor.js" type="protractor">
var value = element(by.binding('example.value | date: "yyyy-MM-ddTHH:mm:ss"'));
var valid = element(by.binding('myForm.input.$valid'));
- var input = element(by.model('example.value'));
// currently protractor/webdriver does not support
// sending keys to all known HTML5 input controls
@@ -21302,7 +23876,7 @@ var inputType = {
}]);
</script>
<form name="myForm" ng-controller="DateController as dateCtrl">
- <label for="exampleInput">Pick a between 8am and 5pm:</label>
+ <label for="exampleInput">Pick a time between 8am and 5pm:</label>
<input type="time" id="exampleInput" name="input" ng-model="example.value"
placeholder="HH:mm:ss" min="08:00:00" max="17:00:00" required />
<div role="alert">
@@ -21321,7 +23895,6 @@ var inputType = {
<file name="protractor.js" type="protractor">
var value = element(by.binding('example.value | date: "HH:mm:ss"'));
var valid = element(by.binding('myForm.input.$valid'));
- var input = element(by.model('example.value'));
// currently protractor/webdriver does not support
// sending keys to all known HTML5 input controls
@@ -21426,7 +23999,6 @@ var inputType = {
<file name="protractor.js" type="protractor">
var value = element(by.binding('example.value | date: "yyyy-Www"'));
var valid = element(by.binding('myForm.input.$valid'));
- var input = element(by.model('example.value'));
// currently protractor/webdriver does not support
// sending keys to all known HTML5 input controls
@@ -21530,7 +24102,6 @@ var inputType = {
<file name="protractor.js" type="protractor">
var value = element(by.binding('example.value | date: "yyyy-MM"'));
var valid = element(by.binding('myForm.input.$valid'));
- var input = element(by.model('example.value'));
// currently protractor/webdriver does not support
// sending keys to all known HTML5 input controls
@@ -21593,7 +24164,17 @@ var inputType = {
* @param {string} ngModel Assignable angular expression to data-bind to.
* @param {string=} name Property name of the form under which the control is published.
* @param {string=} min Sets the `min` validation error key if the value entered is less than `min`.
+ * Can be interpolated.
* @param {string=} max Sets the `max` validation error key if the value entered is greater than `max`.
+ * Can be interpolated.
+ * @param {string=} ngMin Like `min`, sets the `min` validation error key if the value entered is less than `ngMin`,
+ * but does not trigger HTML5 native validation. Takes an expression.
+ * @param {string=} ngMax Like `max`, sets the `max` validation error key if the value entered is greater than `ngMax`,
+ * but does not trigger HTML5 native validation. Takes an expression.
+ * @param {string=} step Sets the `step` validation error key if the value entered does not fit the `step` constraint.
+ * Can be interpolated.
+ * @param {string=} ngStep Like `step`, sets the `step` validation error key if the value entered does not fit the `ngStep` constraint,
+ * but does not trigger HTML5 native validation. Takes an expression.
* @param {string=} required Sets `required` validation error key if the value is not entered.
* @param {string=} ngRequired Adds `required` attribute and `required` validation constraint to
* the element when the ngRequired expression evaluates to true. Use `ngRequired` instead of
@@ -21606,8 +24187,8 @@ var inputType = {
* @param {string=} pattern Similar to `ngPattern` except that the attribute value is the actual string
* that contains the regular expression body that will be converted to a regular expression
* as in the ngPattern directive.
- * @param {string=} ngPattern Sets `pattern` validation error key if the ngModel value does not match
- * a RegExp found by evaluating the Angular expression given in the attribute value.
+ * @param {string=} ngPattern Sets `pattern` validation error key if the ngModel {@link ngModel.NgModelController#$viewValue $viewValue}
+ * does not match a RegExp found by evaluating the Angular expression given in the attribute value.
* If the expression evaluates to a RegExp object, then this is used directly.
* If the expression evaluates to a string, then it will be converted to a RegExp
* after wrapping it in `^` and `$` characters. For instance, `"abc"` will be converted to
@@ -21704,8 +24285,8 @@ var inputType = {
* @param {string=} pattern Similar to `ngPattern` except that the attribute value is the actual string
* that contains the regular expression body that will be converted to a regular expression
* as in the ngPattern directive.
- * @param {string=} ngPattern Sets `pattern` validation error key if the ngModel value does not match
- * a RegExp found by evaluating the Angular expression given in the attribute value.
+ * @param {string=} ngPattern Sets `pattern` validation error key if the ngModel {@link ngModel.NgModelController#$viewValue $viewValue}
+ * does not match a RegExp found by evaluating the Angular expression given in the attribute value.
* If the expression evaluates to a RegExp object, then this is used directly.
* If the expression evaluates to a string, then it will be converted to a RegExp
* after wrapping it in `^` and `$` characters. For instance, `"abc"` will be converted to
@@ -21803,8 +24384,8 @@ var inputType = {
* @param {string=} pattern Similar to `ngPattern` except that the attribute value is the actual string
* that contains the regular expression body that will be converted to a regular expression
* as in the ngPattern directive.
- * @param {string=} ngPattern Sets `pattern` validation error key if the ngModel value does not match
- * a RegExp found by evaluating the Angular expression given in the attribute value.
+ * @param {string=} ngPattern Sets `pattern` validation error key if the ngModel {@link ngModel.NgModelController#$viewValue $viewValue}
+ * does not match a RegExp found by evaluating the Angular expression given in the attribute value.
* If the expression evaluates to a RegExp object, then this is used directly.
* If the expression evaluates to a string, then it will be converted to a RegExp
* after wrapping it in `^` and `$` characters. For instance, `"abc"` will be converted to
@@ -21925,19 +24506,140 @@ var inputType = {
</file>
<file name="protractor.js" type="protractor">
it('should change state', function() {
+ var inputs = element.all(by.model('color.name'));
var color = element(by.binding('color.name'));
expect(color.getText()).toContain('blue');
- element.all(by.model('color.name')).get(0).click();
-
+ inputs.get(0).click();
expect(color.getText()).toContain('red');
+
+ inputs.get(1).click();
+ expect(color.getText()).toContain('green');
});
</file>
</example>
*/
'radio': radioInputType,
+ /**
+ * @ngdoc input
+ * @name input[range]
+ *
+ * @description
+ * Native range input with validation and transformation.
+ *
+ * The model for the range input must always be a `Number`.
+ *
+ * IE9 and other browsers that do not support the `range` type fall back
+ * to a text input without any default values for `min`, `max` and `step`. Model binding,
+ * validation and number parsing are nevertheless supported.
+ *
+ * Browsers that support range (latest Chrome, Safari, Firefox, Edge) treat `input[range]`
+ * in a way that never allows the input to hold an invalid value. That means:
+ * - any non-numerical value is set to `(max + min) / 2`.
+ * - any numerical value that is less than the current min val, or greater than the current max val
+ * is set to the min / max val respectively.
+ * - additionally, the current `step` is respected, so the nearest value that satisfies a step
+ * is used.
+ *
+ * See the [HTML Spec on input[type=range]](https://www.w3.org/TR/html5/forms.html#range-state-(type=range))
+ * for more info.
+ *
+ * This has the following consequences for Angular:
+ *
+ * Since the element value should always reflect the current model value, a range input
+ * will set the bound ngModel expression to the value that the browser has set for the
+ * input element. For example, in the following input `<input type="range" ng-model="model.value">`,
+ * if the application sets `model.value = null`, the browser will set the input to `'50'`.
+ * Angular will then set the model to `50`, to prevent input and model value being out of sync.
+ *
+ * That means the model for range will immediately be set to `50` after `ngModel` has been
+ * initialized. It also means a range input can never have the required error.
+ *
+ * This does not only affect changes to the model value, but also to the values of the `min`,
+ * `max`, and `step` attributes. When these change in a way that will cause the browser to modify
+ * the input value, Angular will also update the model value.
+ *
+ * Automatic value adjustment also means that a range input element can never have the `required`,
+ * `min`, or `max` errors.
+ *
+ * However, `step` is currently only fully implemented by Firefox. Other browsers have problems
+ * when the step value changes dynamically - they do not adjust the element value correctly, but
+ * instead may set the `stepMismatch` error. If that's the case, the Angular will set the `step`
+ * error on the input, and set the model to `undefined`.
+ *
+ * Note that `input[range]` is not compatible with`ngMax`, `ngMin`, and `ngStep`, because they do
+ * not set the `min` and `max` attributes, which means that the browser won't automatically adjust
+ * the input value based on their values, and will always assume min = 0, max = 100, and step = 1.
+ *
+ * @param {string} ngModel Assignable angular expression to data-bind to.
+ * @param {string=} name Property name of the form under which the control is published.
+ * @param {string=} min Sets the `min` validation to ensure that the value entered is greater
+ * than `min`. Can be interpolated.
+ * @param {string=} max Sets the `max` validation to ensure that the value entered is less than `max`.
+ * Can be interpolated.
+ * @param {string=} step Sets the `step` validation to ensure that the value entered matches the `step`
+ * Can be interpolated.
+ * @param {string=} ngChange Angular expression to be executed when the ngModel value changes due
+ * to user interaction with the input element.
+ * @param {expression=} ngChecked If the expression is truthy, then the `checked` attribute will be set on the
+ * element. **Note** : `ngChecked` should not be used alongside `ngModel`.
+ * Checkout {@link ng.directive:ngChecked ngChecked} for usage.
+ *
+ * @example
+ <example name="range-input-directive" module="rangeExample">
+ <file name="index.html">
+ <script>
+ angular.module('rangeExample', [])
+ .controller('ExampleController', ['$scope', function($scope) {
+ $scope.value = 75;
+ $scope.min = 10;
+ $scope.max = 90;
+ }]);
+ </script>
+ <form name="myForm" ng-controller="ExampleController">
+
+ Model as range: <input type="range" name="range" ng-model="value" min="{{min}}" max="{{max}}">
+ <hr>
+ Model as number: <input type="number" ng-model="value"><br>
+ Min: <input type="number" ng-model="min"><br>
+ Max: <input type="number" ng-model="max"><br>
+ value = <code>{{value}}</code><br/>
+ myForm.range.$valid = <code>{{myForm.range.$valid}}</code><br/>
+ myForm.range.$error = <code>{{myForm.range.$error}}</code>
+ </form>
+ </file>
+ </example>
+
+ * ## Range Input with ngMin & ngMax attributes
+
+ * @example
+ <example name="range-input-directive-ng" module="rangeExample">
+ <file name="index.html">
+ <script>
+ angular.module('rangeExample', [])
+ .controller('ExampleController', ['$scope', function($scope) {
+ $scope.value = 75;
+ $scope.min = 10;
+ $scope.max = 90;
+ }]);
+ </script>
+ <form name="myForm" ng-controller="ExampleController">
+ Model as range: <input type="range" name="range" ng-model="value" ng-min="min" ng-max="max">
+ <hr>
+ Model as number: <input type="number" ng-model="value"><br>
+ Min: <input type="number" ng-model="min"><br>
+ Max: <input type="number" ng-model="max"><br>
+ value = <code>{{value}}</code><br/>
+ myForm.range.$valid = <code>{{myForm.range.$valid}}</code><br/>
+ myForm.range.$error = <code>{{myForm.range.$error}}</code>
+ </form>
+ </file>
+ </example>
+
+ */
+ 'range': rangeInputType,
/**
* @ngdoc input
@@ -22017,13 +24719,13 @@ function textInputType(scope, element, attr, ctrl, $sniffer, $browser) {
function baseInputType(scope, element, attr, ctrl, $sniffer, $browser) {
var type = lowercase(element[0].type);
- // In composition mode, users are still inputing intermediate text buffer,
+ // In composition mode, users are still inputting intermediate text buffer,
// hold the listener until composition is done.
// More about composition events: https://developer.mozilla.org/en-US/docs/Web/API/CompositionEvent
if (!$sniffer.android) {
var composing = false;
- element.on('compositionstart', function(data) {
+ element.on('compositionstart', function() {
composing = true;
});
@@ -22033,6 +24735,8 @@ function baseInputType(scope, element, attr, ctrl, $sniffer, $browser) {
});
}
+ var timeout;
+
var listener = function(ev) {
if (timeout) {
$browser.defer.cancel(timeout);
@@ -22062,8 +24766,6 @@ function baseInputType(scope, element, attr, ctrl, $sniffer, $browser) {
if ($sniffer.hasEvent('input')) {
element.on('input', listener);
} else {
- var timeout;
-
var deferListener = function(ev, input, origValue) {
if (!timeout) {
timeout = $browser.defer(function() {
@@ -22075,7 +24777,7 @@ function baseInputType(scope, element, attr, ctrl, $sniffer, $browser) {
}
};
- element.on('keydown', function(event) {
+ element.on('keydown', /** @this */ function(event) {
var key = event.keyCode;
// ignore
@@ -22095,6 +24797,26 @@ function baseInputType(scope, element, attr, ctrl, $sniffer, $browser) {
// or form autocomplete on newer browser, we need "change" event to catch it
element.on('change', listener);
+ // Some native input types (date-family) have the ability to change validity without
+ // firing any input/change events.
+ // For these event types, when native validators are present and the browser supports the type,
+ // check for validity changes on various DOM events.
+ if (PARTIAL_VALIDATION_TYPES[type] && ctrl.$$hasNativeValidators && type === attr.type) {
+ element.on(PARTIAL_VALIDATION_EVENTS, /** @this */ function(ev) {
+ if (!timeout) {
+ var validity = this[VALIDITY_STATE_PROPERTY];
+ var origBadInput = validity.badInput;
+ var origTypeMismatch = validity.typeMismatch;
+ timeout = $browser.defer(function() {
+ timeout = null;
+ if (validity.badInput !== origBadInput || validity.typeMismatch !== origTypeMismatch) {
+ listener(ev);
+ }
+ });
+ }
+ });
+ }
+
ctrl.$render = function() {
// Workaround for Firefox validation #12102.
var value = ctrl.$isEmpty(ctrl.$viewValue) ? '' : ctrl.$viewValue;
@@ -22148,7 +24870,7 @@ function createDateParser(regexp, mapping) {
// When a date is JSON'ified to wraps itself inside of an extra
// set of double quotes. This makes the date parsing code unable
// to match the date string and parse it as a date.
- if (iso.charAt(0) == '"' && iso.charAt(iso.length - 1) == '"') {
+ if (iso.charAt(0) === '"' && iso.charAt(iso.length - 1) === '"') {
iso = iso.substring(1, iso.length - 1);
}
if (ISO_DATE_REGEXP.test(iso)) {
@@ -22190,7 +24912,7 @@ function createDateInputType(type, regexp, parseDate, format) {
return function dynamicDateInputType(scope, element, attr, ctrl, $sniffer, $browser, $filter) {
badInputChecker(scope, element, attr, ctrl);
baseInputType(scope, element, attr, ctrl, $sniffer, $browser);
- var timezone = ctrl && ctrl.$options && ctrl.$options.timezone;
+ var timezone = ctrl && ctrl.$options.getOption('timezone');
var previousDate;
ctrl.$$parserName = type;
@@ -22269,10 +24991,7 @@ function badInputChecker(scope, element, attr, ctrl) {
}
}
-function numberInputType(scope, element, attr, ctrl, $sniffer, $browser) {
- badInputChecker(scope, element, attr, ctrl);
- baseInputType(scope, element, attr, ctrl, $sniffer, $browser);
-
+function numberFormatterParser(ctrl) {
ctrl.$$parserName = 'number';
ctrl.$parsers.push(function(value) {
if (ctrl.$isEmpty(value)) return null;
@@ -22289,40 +25008,255 @@ function numberInputType(scope, element, attr, ctrl, $sniffer, $browser) {
}
return value;
});
+}
+
+function parseNumberAttrVal(val) {
+ if (isDefined(val) && !isNumber(val)) {
+ val = parseFloat(val);
+ }
+ return !isNumberNaN(val) ? val : undefined;
+}
+
+function isNumberInteger(num) {
+ // See http://stackoverflow.com/questions/14636536/how-to-check-if-a-variable-is-an-integer-in-javascript#14794066
+ // (minus the assumption that `num` is a number)
+
+ // eslint-disable-next-line no-bitwise
+ return (num | 0) === num;
+}
+
+function countDecimals(num) {
+ var numString = num.toString();
+ var decimalSymbolIndex = numString.indexOf('.');
+
+ if (decimalSymbolIndex === -1) {
+ if (-1 < num && num < 1) {
+ // It may be in the exponential notation format (`1e-X`)
+ var match = /e-(\d+)$/.exec(numString);
+
+ if (match) {
+ return Number(match[1]);
+ }
+ }
+
+ return 0;
+ }
+
+ return numString.length - decimalSymbolIndex - 1;
+}
+
+function isValidForStep(viewValue, stepBase, step) {
+ // At this point `stepBase` and `step` are expected to be non-NaN values
+ // and `viewValue` is expected to be a valid stringified number.
+ var value = Number(viewValue);
+
+ var isNonIntegerValue = !isNumberInteger(value);
+ var isNonIntegerStepBase = !isNumberInteger(stepBase);
+ var isNonIntegerStep = !isNumberInteger(step);
+
+ // Due to limitations in Floating Point Arithmetic (e.g. `0.3 - 0.2 !== 0.1` or
+ // `0.5 % 0.1 !== 0`), we need to convert all numbers to integers.
+ if (isNonIntegerValue || isNonIntegerStepBase || isNonIntegerStep) {
+ var valueDecimals = isNonIntegerValue ? countDecimals(value) : 0;
+ var stepBaseDecimals = isNonIntegerStepBase ? countDecimals(stepBase) : 0;
+ var stepDecimals = isNonIntegerStep ? countDecimals(step) : 0;
+
+ var decimalCount = Math.max(valueDecimals, stepBaseDecimals, stepDecimals);
+ var multiplier = Math.pow(10, decimalCount);
+
+ value = value * multiplier;
+ stepBase = stepBase * multiplier;
+ step = step * multiplier;
+
+ if (isNonIntegerValue) value = Math.round(value);
+ if (isNonIntegerStepBase) stepBase = Math.round(stepBase);
+ if (isNonIntegerStep) step = Math.round(step);
+ }
+
+ return (value - stepBase) % step === 0;
+}
+
+function numberInputType(scope, element, attr, ctrl, $sniffer, $browser) {
+ badInputChecker(scope, element, attr, ctrl);
+ numberFormatterParser(ctrl);
+ baseInputType(scope, element, attr, ctrl, $sniffer, $browser);
+
+ var minVal;
+ var maxVal;
if (isDefined(attr.min) || attr.ngMin) {
- var minVal;
ctrl.$validators.min = function(value) {
return ctrl.$isEmpty(value) || isUndefined(minVal) || value >= minVal;
};
attr.$observe('min', function(val) {
- if (isDefined(val) && !isNumber(val)) {
- val = parseFloat(val, 10);
- }
- minVal = isNumber(val) && !isNaN(val) ? val : undefined;
+ minVal = parseNumberAttrVal(val);
// TODO(matsko): implement validateLater to reduce number of validations
ctrl.$validate();
});
}
if (isDefined(attr.max) || attr.ngMax) {
- var maxVal;
ctrl.$validators.max = function(value) {
return ctrl.$isEmpty(value) || isUndefined(maxVal) || value <= maxVal;
};
attr.$observe('max', function(val) {
- if (isDefined(val) && !isNumber(val)) {
- val = parseFloat(val, 10);
- }
- maxVal = isNumber(val) && !isNaN(val) ? val : undefined;
+ maxVal = parseNumberAttrVal(val);
+ // TODO(matsko): implement validateLater to reduce number of validations
+ ctrl.$validate();
+ });
+ }
+
+ if (isDefined(attr.step) || attr.ngStep) {
+ var stepVal;
+ ctrl.$validators.step = function(modelValue, viewValue) {
+ return ctrl.$isEmpty(viewValue) || isUndefined(stepVal) ||
+ isValidForStep(viewValue, minVal || 0, stepVal);
+ };
+
+ attr.$observe('step', function(val) {
+ stepVal = parseNumberAttrVal(val);
// TODO(matsko): implement validateLater to reduce number of validations
ctrl.$validate();
});
}
}
+function rangeInputType(scope, element, attr, ctrl, $sniffer, $browser) {
+ badInputChecker(scope, element, attr, ctrl);
+ numberFormatterParser(ctrl);
+ baseInputType(scope, element, attr, ctrl, $sniffer, $browser);
+
+ var supportsRange = ctrl.$$hasNativeValidators && element[0].type === 'range',
+ minVal = supportsRange ? 0 : undefined,
+ maxVal = supportsRange ? 100 : undefined,
+ stepVal = supportsRange ? 1 : undefined,
+ validity = element[0].validity,
+ hasMinAttr = isDefined(attr.min),
+ hasMaxAttr = isDefined(attr.max),
+ hasStepAttr = isDefined(attr.step);
+
+ var originalRender = ctrl.$render;
+
+ ctrl.$render = supportsRange && isDefined(validity.rangeUnderflow) && isDefined(validity.rangeOverflow) ?
+ //Browsers that implement range will set these values automatically, but reading the adjusted values after
+ //$render would cause the min / max validators to be applied with the wrong value
+ function rangeRender() {
+ originalRender();
+ ctrl.$setViewValue(element.val());
+ } :
+ originalRender;
+
+ if (hasMinAttr) {
+ ctrl.$validators.min = supportsRange ?
+ // Since all browsers set the input to a valid value, we don't need to check validity
+ function noopMinValidator() { return true; } :
+ // non-support browsers validate the min val
+ function minValidator(modelValue, viewValue) {
+ return ctrl.$isEmpty(viewValue) || isUndefined(minVal) || viewValue >= minVal;
+ };
+
+ setInitialValueAndObserver('min', minChange);
+ }
+
+ if (hasMaxAttr) {
+ ctrl.$validators.max = supportsRange ?
+ // Since all browsers set the input to a valid value, we don't need to check validity
+ function noopMaxValidator() { return true; } :
+ // non-support browsers validate the max val
+ function maxValidator(modelValue, viewValue) {
+ return ctrl.$isEmpty(viewValue) || isUndefined(maxVal) || viewValue <= maxVal;
+ };
+
+ setInitialValueAndObserver('max', maxChange);
+ }
+
+ if (hasStepAttr) {
+ ctrl.$validators.step = supportsRange ?
+ function nativeStepValidator() {
+ // Currently, only FF implements the spec on step change correctly (i.e. adjusting the
+ // input element value to a valid value). It's possible that other browsers set the stepMismatch
+ // validity error instead, so we can at least report an error in that case.
+ return !validity.stepMismatch;
+ } :
+ // ngStep doesn't set the setp attr, so the browser doesn't adjust the input value as setting step would
+ function stepValidator(modelValue, viewValue) {
+ return ctrl.$isEmpty(viewValue) || isUndefined(stepVal) ||
+ isValidForStep(viewValue, minVal || 0, stepVal);
+ };
+
+ setInitialValueAndObserver('step', stepChange);
+ }
+
+ function setInitialValueAndObserver(htmlAttrName, changeFn) {
+ // interpolated attributes set the attribute value only after a digest, but we need the
+ // attribute value when the input is first rendered, so that the browser can adjust the
+ // input value based on the min/max value
+ element.attr(htmlAttrName, attr[htmlAttrName]);
+ attr.$observe(htmlAttrName, changeFn);
+ }
+
+ function minChange(val) {
+ minVal = parseNumberAttrVal(val);
+ // ignore changes before model is initialized
+ if (isNumberNaN(ctrl.$modelValue)) {
+ return;
+ }
+
+ if (supportsRange) {
+ var elVal = element.val();
+ // IE11 doesn't set the el val correctly if the minVal is greater than the element value
+ if (minVal > elVal) {
+ elVal = minVal;
+ element.val(elVal);
+ }
+ ctrl.$setViewValue(elVal);
+ } else {
+ // TODO(matsko): implement validateLater to reduce number of validations
+ ctrl.$validate();
+ }
+ }
+
+ function maxChange(val) {
+ maxVal = parseNumberAttrVal(val);
+ // ignore changes before model is initialized
+ if (isNumberNaN(ctrl.$modelValue)) {
+ return;
+ }
+
+ if (supportsRange) {
+ var elVal = element.val();
+ // IE11 doesn't set the el val correctly if the maxVal is less than the element value
+ if (maxVal < elVal) {
+ element.val(maxVal);
+ // IE11 and Chrome don't set the value to the minVal when max < min
+ elVal = maxVal < minVal ? minVal : maxVal;
+ }
+ ctrl.$setViewValue(elVal);
+ } else {
+ // TODO(matsko): implement validateLater to reduce number of validations
+ ctrl.$validate();
+ }
+ }
+
+ function stepChange(val) {
+ stepVal = parseNumberAttrVal(val);
+ // ignore changes before model is initialized
+ if (isNumberNaN(ctrl.$modelValue)) {
+ return;
+ }
+
+ // Some browsers don't adjust the input value correctly, but set the stepMismatch error
+ if (supportsRange && ctrl.$viewValue !== element.val()) {
+ ctrl.$setViewValue(element.val());
+ } else {
+ // TODO(matsko): implement validateLater to reduce number of validations
+ ctrl.$validate();
+ }
+ }
+}
+
function urlInputType(scope, element, attr, ctrl, $sniffer, $browser) {
// Note: no badInputChecker here by purpose as `url` is only a validation
// in browsers, i.e. we can always read out input.value even if it is not valid!
@@ -22350,14 +25284,20 @@ function emailInputType(scope, element, attr, ctrl, $sniffer, $browser) {
}
function radioInputType(scope, element, attr, ctrl) {
+ var doTrim = !attr.ngTrim || trim(attr.ngTrim) !== 'false';
// make the name unique, if not defined
if (isUndefined(attr.name)) {
element.attr('name', nextUid());
}
var listener = function(ev) {
+ var value;
if (element[0].checked) {
- ctrl.$setViewValue(attr.value, ev && ev.type);
+ value = attr.value;
+ if (doTrim) {
+ value = trim(value);
+ }
+ ctrl.$setViewValue(value, ev && ev.type);
}
};
@@ -22365,7 +25305,10 @@ function radioInputType(scope, element, attr, ctrl) {
ctrl.$render = function() {
var value = attr.value;
- element[0].checked = (value == ctrl.$viewValue);
+ if (doTrim) {
+ value = trim(value);
+ }
+ element[0].checked = (value === ctrl.$viewValue);
};
attr.$observe('value', ctrl.$render);
@@ -22436,8 +25379,8 @@ function checkboxInputType(scope, element, attr, ctrl, $sniffer, $browser, $filt
* @param {number=} ngMaxlength Sets `maxlength` validation error key if the value is longer than
* maxlength. Setting the attribute to a negative or non-numeric value, allows view values of any
* length.
- * @param {string=} ngPattern Sets `pattern` validation error key if the ngModel value does not match
- * a RegExp found by evaluating the Angular expression given in the attribute value.
+ * @param {string=} ngPattern Sets `pattern` validation error key if the ngModel {@link ngModel.NgModelController#$viewValue $viewValue}
+ * does not match a RegExp found by evaluating the Angular expression given in the attribute value.
* If the expression evaluates to a RegExp object, then this is used directly.
* If the expression evaluates to a string, then it will be converted to a RegExp
* after wrapping it in `^` and `$` characters. For instance, `"abc"` will be converted to
@@ -22448,6 +25391,20 @@ function checkboxInputType(scope, element, attr, ctrl, $sniffer, $browser, $filt
* @param {string=} ngChange Angular expression to be executed when input changes due to user
* interaction with the input element.
* @param {boolean=} [ngTrim=true] If set to false Angular will not automatically trim the input.
+ *
+ * @knownIssue
+ *
+ * When specifying the `placeholder` attribute of `<textarea>`, Internet Explorer will temporarily
+ * insert the placeholder value as the textarea's content. If the placeholder value contains
+ * interpolation (`{{ ... }}`), an error will be logged in the console when Angular tries to update
+ * the value of the by-then-removed text node. This doesn't affect the functionality of the
+ * textarea, but can be undesirable.
+ *
+ * You can work around this Internet Explorer issue by using `ng-attr-placeholder` instead of
+ * `placeholder` on textareas, whenever you need interpolation in the placeholder value. You can
+ * find more details on `ngAttr` in the
+ * [Interpolation](guide/interpolation#-ngattr-for-binding-to-arbitrary-attributes) section of the
+ * Developer Guide.
*/
@@ -22475,8 +25432,8 @@ function checkboxInputType(scope, element, attr, ctrl, $sniffer, $browser, $filt
* @param {number=} ngMaxlength Sets `maxlength` validation error key if the value is longer than
* maxlength. Setting the attribute to a negative or non-numeric value, allows view values of any
* length.
- * @param {string=} ngPattern Sets `pattern` validation error key if the ngModel value does not match
- * a RegExp found by evaluating the Angular expression given in the attribute value.
+ * @param {string=} ngPattern Sets `pattern` validation error key if the ngModel {@link ngModel.NgModelController#$viewValue $viewValue}
+ * value does not match a RegExp found by evaluating the Angular expression given in the attribute value.
* If the expression evaluates to a RegExp object, then this is used directly.
* If the expression evaluates to a string, then it will be converted to a RegExp
* after wrapping it in `^` and `$` characters. For instance, `"abc"` will be converted to
@@ -22612,21 +25569,19 @@ var CONSTANT_VALUE_REGEXP = /^(true|false|\d+)$/;
* @name ngValue
*
* @description
- * Binds the given expression to the value of `<option>` or {@link input[radio] `input[radio]`},
- * so that when the element is selected, the {@link ngModel `ngModel`} of that element is set to
- * the bound value.
+ * Binds the given expression to the value of the element.
*
- * `ngValue` is useful when dynamically generating lists of radio buttons using
- * {@link ngRepeat `ngRepeat`}, as shown below.
+ * It is mainly used on {@link input[radio] `input[radio]`} and option elements,
+ * so that when the element is selected, the {@link ngModel `ngModel`} of that element (or its
+ * {@link select `select`} parent element) is set to the bound value. It is especially useful
+ * for dynamically generated lists using {@link ngRepeat `ngRepeat`}, as shown below.
*
- * Likewise, `ngValue` can be used to generate `<option>` elements for
- * the {@link select `select`} element. In that case however, only strings are supported
- * for the `value `attribute, so the resulting `ngModel` will always be a string.
- * Support for `select` models with non-string values is available via `ngOptions`.
+ * It can also be used to achieve one-way binding of a given expression to an input element
+ * such as an `input[text]` or a `textarea`, when that element does not use ngModel.
*
* @element input
* @param {string=} ngValue angular expression, whose value will be bound to the `value` attribute
- * of the `input` element
+ * and `value` property of the element.
*
* @example
<example name="ngValue-directive" module="valueExample">
@@ -22665,18 +25620,33 @@ var CONSTANT_VALUE_REGEXP = /^(true|false|\d+)$/;
</example>
*/
var ngValueDirective = function() {
+ /**
+ * inputs use the value attribute as their default value if the value property is not set.
+ * Once the value property has been set (by adding input), it will not react to changes to
+ * the value attribute anymore. Setting both attribute and property fixes this behavior, and
+ * makes it possible to use ngValue as a sort of one-way bind.
+ */
+ function updateElementValue(element, attr, value) {
+ // Support: IE9 only
+ // In IE9 values are converted to string (e.g. `input.value = null` results in `input.value === 'null'`).
+ var propValue = isDefined(value) ? value : (msie === 9) ? '' : null;
+ element.prop('value', propValue);
+ attr.$set('value', value);
+ }
+
return {
restrict: 'A',
priority: 100,
compile: function(tpl, tplAttr) {
if (CONSTANT_VALUE_REGEXP.test(tplAttr.ngValue)) {
return function ngValueConstantLink(scope, elm, attr) {
- attr.$set('value', scope.$eval(attr.ngValue));
+ var value = scope.$eval(attr.ngValue);
+ updateElementValue(elm, attr, value);
};
} else {
return function ngValueLink(scope, elm, attr) {
scope.$watch(attr.ngValue, function valueWatchAction(value) {
- attr.$set('value', value);
+ updateElementValue(elm, attr, value);
});
};
}
@@ -22710,7 +25680,7 @@ var ngValueDirective = function() {
*
* @example
* Enter a name in the Live Preview text box; the greeting below the text box changes instantly.
- <example module="bindExample">
+ <example module="bindExample" name="ng-bind">
<file name="index.html">
<script>
angular.module('bindExample', [])
@@ -22744,7 +25714,7 @@ var ngBindDirective = ['$compile', function($compile) {
$compile.$$addBindingInfo(element, attr.ngBind);
element = element[0];
scope.$watch(attr.ngBind, function ngBindWatchAction(value) {
- element.textContent = isUndefined(value) ? '' : value;
+ element.textContent = stringify(value);
});
};
}
@@ -22770,7 +25740,7 @@ var ngBindDirective = ['$compile', function($compile) {
*
* @example
* Try it here: enter text in text box and watch the greeting change.
- <example module="bindExample">
+ <example module="bindExample" name="ng-bind-template">
<file name="index.html">
<script>
angular.module('bindExample', [])
@@ -22843,7 +25813,7 @@ var ngBindTemplateDirective = ['$interpolate', '$compile', function($interpolate
*
* @example
- <example module="bindHtmlExample" deps="angular-sanitize.js">
+ <example module="bindHtmlExample" deps="angular-sanitize.js" name="ng-bind-html">
<file name="index.html">
<div ng-controller="ExampleController">
<p ng-bind-html="myHTML"></p>
@@ -22872,8 +25842,9 @@ var ngBindHtmlDirective = ['$sce', '$parse', '$compile', function($sce, $parse,
restrict: 'A',
compile: function ngBindHtmlCompile(tElement, tAttrs) {
var ngBindHtmlGetter = $parse(tAttrs.ngBindHtml);
- var ngBindHtmlWatch = $parse(tAttrs.ngBindHtml, function getStringValue(value) {
- return (value || '').toString();
+ var ngBindHtmlWatch = $parse(tAttrs.ngBindHtml, function sceValueOf(val) {
+ // Unwrap the value to compare the actual inner safe value, not the wrapper object.
+ return $sce.valueOf(val);
});
$compile.$$addBindingClass(tElement);
@@ -22881,9 +25852,9 @@ var ngBindHtmlDirective = ['$sce', '$parse', '$compile', function($sce, $parse,
$compile.$$addBindingInfo(element, attr.ngBindHtml);
scope.$watch(ngBindHtmlWatch, function ngBindHtmlWatchAction() {
- // we re-evaluate the expr because we want a TrustedValueHolderType
- // for $sce, not a string
- element.html($sce.getTrustedHtml(ngBindHtmlGetter(scope)) || '');
+ // The watched value is the unwrapped value. To avoid re-escaping, use the direct getter.
+ var value = ngBindHtmlGetter(scope);
+ element.html($sce.getTrustedHtml(value) || '');
});
};
}
@@ -22967,50 +25938,79 @@ var ngChangeDirective = valueFn({
}
});
+/* exported
+ ngClassDirective,
+ ngClassEvenDirective,
+ ngClassOddDirective
+*/
+
function classDirective(name, selector) {
name = 'ngClass' + name;
- return ['$animate', function($animate) {
+ var indexWatchExpression;
+
+ return ['$parse', function($parse) {
return {
restrict: 'AC',
link: function(scope, element, attr) {
- var oldVal;
+ var expression = attr[name].trim();
+ var isOneTime = (expression.charAt(0) === ':') && (expression.charAt(1) === ':');
- scope.$watch(attr[name], ngClassWatchAction, true);
+ var watchInterceptor = isOneTime ? toFlatValue : toClassString;
+ var watchExpression = $parse(expression, watchInterceptor);
+ var watchAction = isOneTime ? ngClassOneTimeWatchAction : ngClassWatchAction;
- attr.$observe('class', function(value) {
- ngClassWatchAction(scope.$eval(attr[name]));
- });
+ var classCounts = element.data('$classCounts');
+ var oldModulo = true;
+ var oldClassString;
+ if (!classCounts) {
+ // Use createMap() to prevent class assumptions involving property
+ // names in Object.prototype
+ classCounts = createMap();
+ element.data('$classCounts', classCounts);
+ }
if (name !== 'ngClass') {
- scope.$watch('$index', function($index, old$index) {
- // jshint bitwise: false
- var mod = $index & 1;
- if (mod !== (old$index & 1)) {
- var classes = arrayClasses(scope.$eval(attr[name]));
- mod === selector ?
- addClasses(classes) :
- removeClasses(classes);
- }
- });
+ if (!indexWatchExpression) {
+ indexWatchExpression = $parse('$index', function moduloTwo($index) {
+ // eslint-disable-next-line no-bitwise
+ return $index & 1;
+ });
+ }
+
+ scope.$watch(indexWatchExpression, ngClassIndexWatchAction);
}
- function addClasses(classes) {
- var newClasses = digestClassCounts(classes, 1);
- attr.$addClass(newClasses);
+ scope.$watch(watchExpression, watchAction, isOneTime);
+
+ function addClasses(classString) {
+ classString = digestClassCounts(split(classString), 1);
+ attr.$addClass(classString);
}
- function removeClasses(classes) {
- var newClasses = digestClassCounts(classes, -1);
- attr.$removeClass(newClasses);
+ function removeClasses(classString) {
+ classString = digestClassCounts(split(classString), -1);
+ attr.$removeClass(classString);
}
- function digestClassCounts(classes, count) {
- // Use createMap() to prevent class assumptions involving property
- // names in Object.prototype
- var classCounts = element.data('$classCounts') || createMap();
+ function updateClasses(oldClassString, newClassString) {
+ var oldClassArray = split(oldClassString);
+ var newClassArray = split(newClassString);
+
+ var toRemoveArray = arrayDifference(oldClassArray, newClassArray);
+ var toAddArray = arrayDifference(newClassArray, oldClassArray);
+
+ var toRemoveString = digestClassCounts(toRemoveArray, -1);
+ var toAddString = digestClassCounts(toAddArray, 1);
+
+ attr.$addClass(toAddString);
+ attr.$removeClass(toRemoveString);
+ }
+
+ function digestClassCounts(classArray, count) {
var classesToUpdate = [];
- forEach(classes, function(className) {
+
+ forEach(classArray, function(className) {
if (count > 0 || classCounts[className]) {
classCounts[className] = (classCounts[className] || 0) + count;
if (classCounts[className] === +(count > 0)) {
@@ -23018,72 +26018,106 @@ function classDirective(name, selector) {
}
}
});
- element.data('$classCounts', classCounts);
+
return classesToUpdate.join(' ');
}
- function updateClasses(oldClasses, newClasses) {
- var toAdd = arrayDifference(newClasses, oldClasses);
- var toRemove = arrayDifference(oldClasses, newClasses);
- toAdd = digestClassCounts(toAdd, 1);
- toRemove = digestClassCounts(toRemove, -1);
- if (toAdd && toAdd.length) {
- $animate.addClass(element, toAdd);
+ function ngClassIndexWatchAction(newModulo) {
+ // This watch-action should run before the `ngClass[OneTime]WatchAction()`, thus it
+ // adds/removes `oldClassString`. If the `ngClass` expression has changed as well, the
+ // `ngClass[OneTime]WatchAction()` will update the classes.
+ if (newModulo === selector) {
+ addClasses(oldClassString);
+ } else {
+ removeClasses(oldClassString);
}
- if (toRemove && toRemove.length) {
- $animate.removeClass(element, toRemove);
+
+ oldModulo = newModulo;
+ }
+
+ function ngClassOneTimeWatchAction(newClassValue) {
+ var newClassString = toClassString(newClassValue);
+
+ if (newClassString !== oldClassString) {
+ ngClassWatchAction(newClassString);
}
}
- function ngClassWatchAction(newVal) {
- if (selector === true || scope.$index % 2 === selector) {
- var newClasses = arrayClasses(newVal || []);
- if (!oldVal) {
- addClasses(newClasses);
- } else if (!equals(newVal,oldVal)) {
- var oldClasses = arrayClasses(oldVal);
- updateClasses(oldClasses, newClasses);
- }
+ function ngClassWatchAction(newClassString) {
+ if (oldModulo === selector) {
+ updateClasses(oldClassString, newClassString);
}
- oldVal = shallowCopy(newVal);
+
+ oldClassString = newClassString;
}
}
};
+ }];
- function arrayDifference(tokens1, tokens2) {
- var values = [];
+ // Helpers
+ function arrayDifference(tokens1, tokens2) {
+ if (!tokens1 || !tokens1.length) return [];
+ if (!tokens2 || !tokens2.length) return tokens1;
- outer:
- for (var i = 0; i < tokens1.length; i++) {
- var token = tokens1[i];
- for (var j = 0; j < tokens2.length; j++) {
- if (token == tokens2[j]) continue outer;
- }
- values.push(token);
+ var values = [];
+
+ outer:
+ for (var i = 0; i < tokens1.length; i++) {
+ var token = tokens1[i];
+ for (var j = 0; j < tokens2.length; j++) {
+ if (token === tokens2[j]) continue outer;
}
- return values;
+ values.push(token);
}
- function arrayClasses(classVal) {
- var classes = [];
- if (isArray(classVal)) {
- forEach(classVal, function(v) {
- classes = classes.concat(arrayClasses(v));
- });
- return classes;
- } else if (isString(classVal)) {
- return classVal.split(' ');
- } else if (isObject(classVal)) {
- forEach(classVal, function(v, k) {
- if (v) {
- classes = classes.concat(k.split(' '));
- }
- });
- return classes;
+ return values;
+ }
+
+ function split(classString) {
+ return classString && classString.split(' ');
+ }
+
+ function toClassString(classValue) {
+ var classString = classValue;
+
+ if (isArray(classValue)) {
+ classString = classValue.map(toClassString).join(' ');
+ } else if (isObject(classValue)) {
+ classString = Object.keys(classValue).
+ filter(function(key) { return classValue[key]; }).
+ join(' ');
+ }
+
+ return classString;
+ }
+
+ function toFlatValue(classValue) {
+ var flatValue = classValue;
+
+ if (isArray(classValue)) {
+ flatValue = classValue.map(toFlatValue);
+ } else if (isObject(classValue)) {
+ var hasUndefined = false;
+
+ flatValue = Object.keys(classValue).filter(function(key) {
+ var value = classValue[key];
+
+ if (!hasUndefined && isUndefined(value)) {
+ hasUndefined = true;
+ }
+
+ return value;
+ });
+
+ if (hasUndefined) {
+ // Prevent the `oneTimeLiteralWatchInterceptor` from unregistering
+ // the watcher, by including at least one `undefined` value.
+ flatValue.push(undefined);
}
- return classVal;
}
- }];
+
+ return flatValue;
+ }
}
/**
@@ -23114,10 +26148,16 @@ function classDirective(name, selector) {
* When the expression changes, the previously added classes are removed and only then are the
* new classes added.
*
- * @animations
- * **add** - happens just before the class is applied to the elements
+ * @knownIssue
+ * You should not use {@link guide/interpolation interpolation} in the value of the `class`
+ * attribute, when using the `ngClass` directive on the same element.
+ * See {@link guide/interpolation#known-issues here} for more info.
*
- * **remove** - happens just before the class is removed from the element
+ * @animations
+ * | Animation | Occurs |
+ * |----------------------------------|-------------------------------------|
+ * | {@link ng.$animate#addClass addClass} | just before the class is applied to the element |
+ * | {@link ng.$animate#removeClass removeClass} | just before the class is removed from the element |
*
* @element ANY
* @param {expression} ngClass {@link guide/expression Expression} to eval. The result
@@ -23127,7 +26167,7 @@ function classDirective(name, selector) {
* element.
*
* @example Example that demonstrates basic bindings via ngClass directive.
- <example>
+ <example name="ng-class">
<file name="index.html">
<p ng-class="{strike: deleted, bold: important, 'has-error': error}">Map Syntax Example</p>
<label>
@@ -23220,7 +26260,7 @@ function classDirective(name, selector) {
The example below demonstrates how to perform animations using ngClass.
- <example module="ngAnimate" deps="angular-animate.js" animations="true">
+ <example module="ngAnimate" deps="angular-animate.js" animations="true" name="ng-class">
<file name="index.html">
<input id="setbtn" type="button" value="set" ng-click="myVar='my-class'">
<input id="clearbtn" type="button" value="clear" ng-click="myVar=''">
@@ -23283,7 +26323,7 @@ var ngClassDirective = classDirective('', true);
* of the evaluation can be a string representing space delimited class names or an array.
*
* @example
- <example>
+ <example name="ng-class-odd">
<file name="index.html">
<ol ng-init="names=['John', 'Mary', 'Cate', 'Suz']">
<li ng-repeat="name in names">
@@ -23331,7 +26371,7 @@ var ngClassOddDirective = classDirective('Odd', 0);
* result of the evaluation can be a string representing space delimited class names or an array.
*
* @example
- <example>
+ <example name="ng-class-even">
<file name="index.html">
<ol ng-init="names=['John', 'Mary', 'Cate', 'Suz']">
<li ng-repeat="name in names">
@@ -23397,7 +26437,7 @@ var ngClassEvenDirective = classDirective('Even', 1);
* @element ANY
*
* @example
- <example>
+ <example name="ng-cloak">
<file name="index.html">
<div id="template1" ng-cloak>{{ 'hello' }}</div>
<div id="template2" class="ng-cloak">{{ 'world' }}</div>
@@ -23453,7 +26493,7 @@ var ngCloakDirective = ngDirective({
*
* If the current `$controllerProvider` is configured to use globals (via
* {@link ng.$controllerProvider#allowGlobals `$controllerProvider.allowGlobals()` }), this may
- * also be the name of a globally accessible constructor function (not recommended).
+ * also be the name of a globally accessible constructor function (deprecated, not recommended).
*
* @example
* Here is a simple form for editing user contact information. Adding, removing, clearing, and
@@ -23506,10 +26546,11 @@ var ngCloakDirective = ngDirective({
* .controller('SettingsController1', SettingsController1);
*
* function SettingsController1() {
- * this.name = "John Smith";
+ * this.name = 'John Smith';
* this.contacts = [
* {type: 'phone', value: '408 555 1212'},
- * {type: 'email', value: 'john.smith@example.org'} ];
+ * {type: 'email', value: 'john.smith@example.org'}
+ * ];
* }
*
* SettingsController1.prototype.greet = function() {
@@ -23589,10 +26630,11 @@ var ngCloakDirective = ngDirective({
* .controller('SettingsController2', ['$scope', SettingsController2]);
*
* function SettingsController2($scope) {
- * $scope.name = "John Smith";
+ * $scope.name = 'John Smith';
* $scope.contacts = [
* {type:'phone', value:'408 555 1212'},
- * {type:'email', value:'john.smith@example.org'} ];
+ * {type:'email', value:'john.smith@example.org'}
+ * ];
*
* $scope.greet = function() {
* alert($scope.name);
@@ -23659,31 +26701,38 @@ var ngControllerDirective = [function() {
* @ngdoc directive
* @name ngCsp
*
- * @element html
+ * @restrict A
+ * @element ANY
* @description
*
- * Angular has some features that can break certain
+ * Angular has some features that can conflict with certain restrictions that are applied when using
* [CSP (Content Security Policy)](https://developer.mozilla.org/en/Security/CSP) rules.
*
- * If you intend to implement these rules then you must tell Angular not to use these features.
+ * If you intend to implement CSP with these rules then you must tell Angular not to use these
+ * features.
*
* This is necessary when developing things like Google Chrome Extensions or Universal Windows Apps.
*
*
- * The following rules affect Angular:
+ * The following default rules in CSP affect Angular:
*
- * * `unsafe-eval`: this rule forbids apps to use `eval` or `Function(string)` generated functions
- * (among other things). Angular makes use of this in the {@link $parse} service to provide a 30%
- * increase in the speed of evaluating Angular expressions.
+ * * The use of `eval()`, `Function(string)` and similar functions to dynamically create and execute
+ * code from strings is forbidden. Angular makes use of this in the {@link $parse} service to
+ * provide a 30% increase in the speed of evaluating Angular expressions. (This CSP rule can be
+ * disabled with the CSP keyword `unsafe-eval`, but it is generally not recommended as it would
+ * weaken the protections offered by CSP.)
*
- * * `unsafe-inline`: this rule forbids apps from inject custom styles into the document. Angular
- * makes use of this to include some CSS rules (e.g. {@link ngCloak} and {@link ngHide}).
- * To make these directives work when a CSP rule is blocking inline styles, you must link to the
- * `angular-csp.css` in your HTML manually.
+ * * The use of inline resources, such as inline `<script>` and `<style>` elements, are forbidden.
+ * This prevents apps from injecting custom styles directly into the document. Angular makes use of
+ * this to include some CSS rules (e.g. {@link ngCloak} and {@link ngHide}). To make these
+ * directives work when a CSP rule is blocking inline styles, you must link to the `angular-csp.css`
+ * in your HTML manually. (This CSP rule can be disabled with the CSP keyword `unsafe-inline`, but
+ * it is generally not recommended as it would weaken the protections offered by CSP.)
*
- * If you do not provide `ngCsp` then Angular tries to autodetect if CSP is blocking unsafe-eval
- * and automatically deactivates this feature in the {@link $parse} service. This autodetection,
- * however, triggers a CSP error to be logged in the console:
+ * If you do not provide `ngCsp` then Angular tries to autodetect if CSP is blocking dynamic code
+ * creation from strings (e.g., `unsafe-eval` not specified in CSP header) and automatically
+ * deactivates this feature in the {@link $parse} service. This autodetection, however, triggers a
+ * CSP error to be logged in the console:
*
* ```
* Refused to evaluate a string as JavaScript because 'unsafe-eval' is not an allowed source of
@@ -23702,24 +26751,24 @@ var ngControllerDirective = [function() {
*
* * no-inline-style: this stops Angular from injecting CSS styles into the DOM
*
- * * no-unsafe-eval: this stops Angular from optimising $parse with unsafe eval of strings
+ * * no-unsafe-eval: this stops Angular from optimizing $parse with unsafe eval of strings
*
* You can use these values in the following combinations:
*
*
* * No declaration means that Angular will assume that you can do inline styles, but it will do
- * a runtime check for unsafe-eval. E.g. `<body>`. This is backwardly compatible with previous versions
- * of Angular.
+ * a runtime check for unsafe-eval. E.g. `<body>`. This is backwardly compatible with previous
+ * versions of Angular.
*
* * A simple `ng-csp` (or `data-ng-csp`) attribute will tell Angular to deactivate both inline
- * styles and unsafe eval. E.g. `<body ng-csp>`. This is backwardly compatible with previous versions
- * of Angular.
+ * styles and unsafe eval. E.g. `<body ng-csp>`. This is backwardly compatible with previous
+ * versions of Angular.
*
- * * Specifying only `no-unsafe-eval` tells Angular that we must not use eval, but that we can inject
- * inline styles. E.g. `<body ng-csp="no-unsafe-eval">`.
+ * * Specifying only `no-unsafe-eval` tells Angular that we must not use eval, but that we can
+ * inject inline styles. E.g. `<body ng-csp="no-unsafe-eval">`.
*
* * Specifying only `no-inline-style` tells Angular that we must not inject styles, but that we can
- * run eval - no automcatic check for unsafe eval will occur. E.g. `<body ng-csp="no-inline-style">`
+ * run eval - no automatic check for unsafe eval will occur. E.g. `<body ng-csp="no-inline-style">`
*
* * Specifying both `no-unsafe-eval` and `no-inline-style` tells Angular that we must not inject
* styles nor use eval, which is the same as an empty: ng-csp.
@@ -23735,8 +26784,7 @@ var ngControllerDirective = [function() {
</html>
```
* @example
- // Note: the suffix `.csp` in the example name triggers
- // csp mode in our http server!
+ <!-- Note: the `.csp` suffix in the example name triggers CSP mode in our http server! -->
<example name="example.csp" module="cspExample" ng-csp="true">
<file name="index.html">
<div ng-controller="MainController as ctrl">
@@ -23757,15 +26805,14 @@ var ngControllerDirective = [function() {
</file>
<file name="script.js">
angular.module('cspExample', [])
- .controller('MainController', function() {
+ .controller('MainController', function MainController() {
this.counter = 0;
this.inc = function() {
this.counter++;
};
this.evil = function() {
- // jshint evil:true
try {
- eval('1+2');
+ eval('1+2'); // eslint-disable-line no-eval
} catch (e) {
this.evilError = e.message;
}
@@ -23817,7 +26864,7 @@ var ngControllerDirective = [function() {
beforeEach(function() {
util = require('util');
- webdriver = require('protractor/node_modules/selenium-webdriver');
+ webdriver = require('selenium-webdriver');
});
// For now, we only test on Chrome,
@@ -23854,9 +26901,9 @@ var ngControllerDirective = [function() {
</example>
*/
-// ngCsp is not implemented as a proper directive any more, because we need it be processed while we
-// bootstrap the system (before $parse is instantiated), for this reason we just have
-// the csp() fn that looks for the `ng-csp` attribute anywhere in the current doc
+// `ngCsp` is not implemented as a proper directive any more, because we need it be processed while
+// we bootstrap the app (before `$parse` is instantiated). For this reason, we just have the `csp()`
+// fn that looks for the `ng-csp` attribute anywhere in the current doc.
/**
* @ngdoc directive
@@ -23872,7 +26919,7 @@ var ngControllerDirective = [function() {
* click. ({@link guide/expression#-event- Event object is available as `$event`})
*
* @example
- <example>
+ <example name="ng-click">
<file name="index.html">
<button ng-click="count = count + 1" ng-init="count=0">
Increment
@@ -23911,15 +26958,15 @@ forEach(
return {
restrict: 'A',
compile: function($element, attr) {
- // We expose the powerful $event object on the scope that provides access to the Window,
- // etc. that isn't protected by the fast paths in $parse. We explicitly request better
- // checks at the cost of speed since event handler expressions are not executed as
- // frequently as regular change detection.
- var fn = $parse(attr[directiveName], /* interceptorFn */ null, /* expensiveChecks */ true);
+ // NOTE:
+ // We expose the powerful `$event` object on the scope that provides access to the Window,
+ // etc. This is OK, because expressions are not sandboxed any more (and the expression
+ // sandbox was never meant to be a security feature anyway).
+ var fn = $parse(attr[directiveName]);
return function ngEventHandler(scope, element) {
element.on(eventName, function(event) {
var callback = function() {
- fn(scope, {$event:event});
+ fn(scope, {$event: event});
};
if (forceAsyncEvents[eventName] && $rootScope.$$phase) {
scope.$evalAsync(callback);
@@ -23947,7 +26994,7 @@ forEach(
* a dblclick. (The Event object is available as `$event`)
*
* @example
- <example>
+ <example name="ng-dblclick">
<file name="index.html">
<button ng-dblclick="count = count + 1" ng-init="count=0">
Increment (on double click)
@@ -23971,7 +27018,7 @@ forEach(
* mousedown. ({@link guide/expression#-event- Event object is available as `$event`})
*
* @example
- <example>
+ <example name="ng-mousedown">
<file name="index.html">
<button ng-mousedown="count = count + 1" ng-init="count=0">
Increment (on mouse down)
@@ -23995,7 +27042,7 @@ forEach(
* mouseup. ({@link guide/expression#-event- Event object is available as `$event`})
*
* @example
- <example>
+ <example name="ng-mouseup">
<file name="index.html">
<button ng-mouseup="count = count + 1" ng-init="count=0">
Increment (on mouse up)
@@ -24018,7 +27065,7 @@ forEach(
* mouseover. ({@link guide/expression#-event- Event object is available as `$event`})
*
* @example
- <example>
+ <example name="ng-mouseover">
<file name="index.html">
<button ng-mouseover="count = count + 1" ng-init="count=0">
Increment (when mouse is over)
@@ -24042,7 +27089,7 @@ forEach(
* mouseenter. ({@link guide/expression#-event- Event object is available as `$event`})
*
* @example
- <example>
+ <example name="ng-mouseenter">
<file name="index.html">
<button ng-mouseenter="count = count + 1" ng-init="count=0">
Increment (when mouse enters)
@@ -24066,7 +27113,7 @@ forEach(
* mouseleave. ({@link guide/expression#-event- Event object is available as `$event`})
*
* @example
- <example>
+ <example name="ng-mouseleave">
<file name="index.html">
<button ng-mouseleave="count = count + 1" ng-init="count=0">
Increment (when mouse leaves)
@@ -24090,7 +27137,7 @@ forEach(
* mousemove. ({@link guide/expression#-event- Event object is available as `$event`})
*
* @example
- <example>
+ <example name="ng-mousemove">
<file name="index.html">
<button ng-mousemove="count = count + 1" ng-init="count=0">
Increment (when mouse moves)
@@ -24114,7 +27161,7 @@ forEach(
* keydown. (Event object is available as `$event` and can be interrogated for keyCode, altKey, etc.)
*
* @example
- <example>
+ <example name="ng-keydown">
<file name="index.html">
<input ng-keydown="count = count + 1" ng-init="count=0">
key down count: {{count}}
@@ -24136,7 +27183,7 @@ forEach(
* keyup. (Event object is available as `$event` and can be interrogated for keyCode, altKey, etc.)
*
* @example
- <example>
+ <example name="ng-keyup">
<file name="index.html">
<p>Typing in the input box below updates the key count</p>
<input ng-keyup="count = count + 1" ng-init="count=0"> key up count: {{count}}
@@ -24163,7 +27210,7 @@ forEach(
* and can be interrogated for keyCode, altKey, etc.)
*
* @example
- <example>
+ <example name="ng-keypress">
<file name="index.html">
<input ng-keypress="count = count + 1" ng-init="count=0">
key press count: {{count}}
@@ -24196,7 +27243,7 @@ forEach(
* ({@link guide/expression#-event- Event object is available as `$event`})
*
* @example
- <example module="submitExample">
+ <example module="submitExample" name="ng-submit">
<file name="index.html">
<script>
angular.module('submitExample', [])
@@ -24292,7 +27339,7 @@ forEach(
* copy. ({@link guide/expression#-event- Event object is available as `$event`})
*
* @example
- <example>
+ <example name="ng-copy">
<file name="index.html">
<input ng-copy="copied=true" ng-init="copied=false; value='copy me'" ng-model="value">
copied: {{copied}}
@@ -24313,7 +27360,7 @@ forEach(
* cut. ({@link guide/expression#-event- Event object is available as `$event`})
*
* @example
- <example>
+ <example name="ng-cut">
<file name="index.html">
<input ng-cut="cut=true" ng-init="cut=false; value='cut me'" ng-model="value">
cut: {{cut}}
@@ -24334,7 +27381,7 @@ forEach(
* paste. ({@link guide/expression#-event- Event object is available as `$event`})
*
* @example
- <example>
+ <example name="ng-paste">
<file name="index.html">
<input ng-paste="paste=true" ng-init="paste=false" placeholder='paste here'>
pasted: {{paste}}
@@ -24376,8 +27423,10 @@ forEach(
* and `leave` effects.
*
* @animations
- * enter - happens just after the `ngIf` contents change and a new DOM element is created and injected into the `ngIf` container
- * leave - happens just before the `ngIf` contents are removed from the DOM
+ * | Animation | Occurs |
+ * |----------------------------------|-------------------------------------|
+ * | {@link ng.$animate#enter enter} | just after the `ngIf` contents change and a new DOM element is created and injected into the `ngIf` container |
+ * | {@link ng.$animate#leave leave} | just before the `ngIf` contents are removed from the DOM |
*
* @element ANY
* @scope
@@ -24387,7 +27436,7 @@ forEach(
* element is added to the DOM tree.
*
* @example
- <example module="ngAnimate" deps="angular-animate.js" animations="true">
+ <example module="ngAnimate" deps="angular-animate.js" animations="true" name="ng-if">
<file name="index.html">
<label>Click me: <input type="checkbox" ng-model="checked" ng-init="checked=true" /></label><br/>
Show when checked:
@@ -24418,7 +27467,7 @@ forEach(
</file>
</example>
*/
-var ngIfDirective = ['$animate', function($animate) {
+var ngIfDirective = ['$animate', '$compile', function($animate, $compile) {
return {
multiElement: true,
transclude: 'element',
@@ -24434,7 +27483,7 @@ var ngIfDirective = ['$animate', function($animate) {
if (!childScope) {
$transclude(function(clone, newScope) {
childScope = newScope;
- clone[clone.length++] = document.createComment(' end ngIf: ' + $attr.ngIf + ' ');
+ clone[clone.length++] = $compile.$$createComment('end ngIf', $attr.ngIf);
// Note: We only need the first/last node of the cloned nodes.
// However, we need to keep the reference to the jqlite wrapper as it might be changed later
// by a directive with templateUrl when its template arrives.
@@ -24455,8 +27504,8 @@ var ngIfDirective = ['$animate', function($animate) {
}
if (block) {
previousElements = getBlockNodes(block.clone);
- $animate.leave(previousElements).then(function() {
- previousElements = null;
+ $animate.leave(previousElements).done(function(response) {
+ if (response !== false) previousElements = null;
});
block = null;
}
@@ -24489,8 +27538,10 @@ var ngIfDirective = ['$animate', function($animate) {
* access on some browsers.
*
* @animations
- * enter - animation is used to bring new content into the browser.
- * leave - animation is used to animate existing content away.
+ * | Animation | Occurs |
+ * |----------------------------------|-------------------------------------|
+ * | {@link ng.$animate#enter enter} | when the expression changes, on the new include |
+ * | {@link ng.$animate#leave leave} | when the expression changes, on the old include |
*
* The enter and leave animation occur concurrently.
*
@@ -24515,7 +27566,7 @@ var ngIfDirective = ['$animate', function($animate) {
* - Otherwise enable scrolling only if the expression evaluates to truthy value.
*
* @example
- <example module="includeExample" deps="angular-animate.js" animations="true">
+ <example module="includeExample" deps="angular-animate.js" animations="true" name="ng-include">
<file name="index.html">
<div ng-controller="ExampleController">
<select ng-model="template" ng-options="t.name for t in templates">
@@ -24532,8 +27583,8 @@ var ngIfDirective = ['$animate', function($animate) {
angular.module('includeExample', ['ngAnimate'])
.controller('ExampleController', ['$scope', function($scope) {
$scope.templates =
- [ { name: 'template1.html', url: 'template1.html'},
- { name: 'template2.html', url: 'template2.html'} ];
+ [{ name: 'template1.html', url: 'template1.html'},
+ { name: 'template2.html', url: 'template2.html'}];
$scope.template = $scope.templates[0];
}]);
</file>
@@ -24591,7 +27642,7 @@ var ngIfDirective = ['$animate', function($animate) {
});
it('should load template2.html', function() {
- if (browser.params.browser == 'firefox') {
+ if (browser.params.browser === 'firefox') {
// Firefox can't handle using selects
// See https://github.com/angular/protractor/issues/480
return;
@@ -24602,7 +27653,7 @@ var ngIfDirective = ['$animate', function($animate) {
});
it('should change to blank', function() {
- if (browser.params.browser == 'firefox') {
+ if (browser.params.browser === 'firefox') {
// Firefox can't handle using selects
return;
}
@@ -24678,8 +27729,8 @@ var ngIncludeDirective = ['$templateRequest', '$anchorScroll', '$animate',
currentScope = null;
}
if (currentElement) {
- $animate.leave(currentElement).then(function() {
- previousElement = null;
+ $animate.leave(currentElement).done(function(response) {
+ if (response !== false) previousElement = null;
});
previousElement = currentElement;
currentElement = null;
@@ -24687,9 +27738,10 @@ var ngIncludeDirective = ['$templateRequest', '$anchorScroll', '$animate',
};
scope.$watch(srcExp, function ngIncludeWatchAction(src) {
- var afterAnimation = function() {
- if (isDefined(autoScrollExp) && (!autoScrollExp || scope.$eval(autoScrollExp))) {
- $anchorScroll();
+ var afterAnimation = function(response) {
+ if (response !== false && isDefined(autoScrollExp) &&
+ (!autoScrollExp || scope.$eval(autoScrollExp))) {
+ $anchorScroll();
}
};
var thisChangeId = ++changeCounter;
@@ -24698,6 +27750,8 @@ var ngIncludeDirective = ['$templateRequest', '$anchorScroll', '$animate',
//set the 2nd param to true to ignore the template request error so that the inner
//contents and scope can be cleaned up.
$templateRequest(src, true).then(function(response) {
+ if (scope.$$destroyed) return;
+
if (thisChangeId !== changeCounter) return;
var newScope = scope.$new();
ctrl.template = response;
@@ -24710,7 +27764,7 @@ var ngIncludeDirective = ['$templateRequest', '$anchorScroll', '$animate',
// directives to non existing elements.
var clone = $transclude(newScope, function(clone) {
cleanupLastIncludeContent();
- $animate.enter(clone, null, $element).then(afterAnimation);
+ $animate.enter(clone, null, $element).done(afterAnimation);
});
currentScope = newScope;
@@ -24719,6 +27773,8 @@ var ngIncludeDirective = ['$templateRequest', '$anchorScroll', '$animate',
currentScope.$emit('$includeContentLoaded', src);
scope.$eval(onloadExp);
}, function() {
+ if (scope.$$destroyed) return;
+
if (thisChangeId === changeCounter) {
cleanupLastIncludeContent();
scope.$emit('$includeContentError', src);
@@ -24747,12 +27803,12 @@ var ngIncludeFillContentDirective = ['$compile',
priority: -400,
require: 'ngInclude',
link: function(scope, $element, $attr, ctrl) {
- if (/SVG/.test($element[0].toString())) {
+ if (toString.call($element[0]).match(/SVG/)) {
// WebKit: https://bugs.webkit.org/show_bug.cgi?id=135698 --- SVG elements do not
// support innerHTML, so detect this here and try to generate the contents
// specially.
$element.empty();
- $compile(jqLiteBuildFragment(ctrl.template, document).childNodes)(scope,
+ $compile(jqLiteBuildFragment(ctrl.template, window.document).childNodes)(scope,
function namespaceAdaptedClone(clone) {
$element.append(clone);
}, {futureParentElement: $element});
@@ -24796,7 +27852,7 @@ var ngIncludeFillContentDirective = ['$compile',
* @param {expression} ngInit {@link guide/expression Expression} to eval.
*
* @example
- <example module="initExample">
+ <example module="initExample" name="ng-init">
<file name="index.html">
<script>
angular.module('initExample', [])
@@ -24924,9 +27980,7 @@ var ngListDirective = function() {
priority: 100,
require: 'ngModel',
link: function(scope, element, attr, ctrl) {
- // We want to control whitespace trimming so we use this convoluted approach
- // to access the ngList attribute, which doesn't pre-trim the attribute
- var ngList = element.attr(attr.$attr.ngList) || ', ';
+ var ngList = attr.ngList || ', ';
var trimValues = attr.ngTrim !== 'false';
var separator = trimValues ? trim(ngList) : ngList;
@@ -24968,15 +28022,19 @@ var ngListDirective = function() {
DIRTY_CLASS: true,
UNTOUCHED_CLASS: true,
TOUCHED_CLASS: true,
+ PENDING_CLASS: true,
+ addSetValidityMethod: true,
+ setupValidity: true,
+ defaultModelOptions: false
*/
+
var VALID_CLASS = 'ng-valid',
INVALID_CLASS = 'ng-invalid',
PRISTINE_CLASS = 'ng-pristine',
DIRTY_CLASS = 'ng-dirty',
UNTOUCHED_CLASS = 'ng-untouched',
TOUCHED_CLASS = 'ng-touched',
- PENDING_CLASS = 'ng-pending',
EMPTY_CLASS = 'ng-empty',
NOT_EMPTY_CLASS = 'ng-not-empty';
@@ -24989,32 +28047,57 @@ var ngModelMinErr = minErr('ngModel');
* @property {*} $viewValue The actual value from the control's view. For `input` elements, this is a
* String. See {@link ngModel.NgModelController#$setViewValue} for information about when the $viewValue
* is set.
+ *
* @property {*} $modelValue The value in the model that the control is bound to.
+ *
* @property {Array.<Function>} $parsers Array of functions to execute, as a pipeline, whenever
- the control reads value from the DOM. The functions are called in array order, each passing
- its return value through to the next. The last return value is forwarded to the
- {@link ngModel.NgModelController#$validators `$validators`} collection.
+ * the control updates the ngModelController with a new {@link ngModel.NgModelController#$viewValue
+ `$viewValue`} from the DOM, usually via user input.
+ See {@link ngModel.NgModelController#$setViewValue `$setViewValue()`} for a detailed lifecycle explanation.
+ Note that the `$parsers` are not called when the bound ngModel expression changes programmatically.
-Parsers are used to sanitize / convert the {@link ngModel.NgModelController#$viewValue
-`$viewValue`}.
+ The functions are called in array order, each passing
+ its return value through to the next. The last return value is forwarded to the
+ {@link ngModel.NgModelController#$validators `$validators`} collection.
-Returning `undefined` from a parser means a parse error occurred. In that case,
-no {@link ngModel.NgModelController#$validators `$validators`} will run and the `ngModel`
-will be set to `undefined` unless {@link ngModelOptions `ngModelOptions.allowInvalid`}
-is set to `true`. The parse error is stored in `ngModel.$error.parse`.
+ Parsers are used to sanitize / convert the {@link ngModel.NgModelController#$viewValue
+ `$viewValue`}.
+
+ Returning `undefined` from a parser means a parse error occurred. In that case,
+ no {@link ngModel.NgModelController#$validators `$validators`} will run and the `ngModel`
+ will be set to `undefined` unless {@link ngModelOptions `ngModelOptions.allowInvalid`}
+ is set to `true`. The parse error is stored in `ngModel.$error.parse`.
+
+ This simple example shows a parser that would convert text input value to lowercase:
+ * ```js
+ * function parse(value) {
+ * if (value) {
+ * return value.toLowerCase();
+ * }
+ * }
+ * ngModelController.$parsers.push(parse);
+ * ```
*
* @property {Array.<Function>} $formatters Array of functions to execute, as a pipeline, whenever
- the model value changes. The functions are called in reverse array order, each passing the value through to the
- next. The last return value is used as the actual DOM value.
- Used to format / convert values for display in the control.
+ the bound ngModel expression changes programmatically. The `$formatters` are not called when the
+ value of the control is changed by user interaction.
+
+ Formatters are used to format / convert the {@link ngModel.NgModelController#$modelValue
+ `$modelValue`} for display in the control.
+
+ The functions are called in reverse array order, each passing the value through to the
+ next. The last return value is used as the actual DOM value.
+
+ This simple example shows a formatter that would convert the model value to uppercase:
+
* ```js
- * function formatter(value) {
+ * function format(value) {
* if (value) {
* return value.toUpperCase();
* }
* }
- * ngModel.$formatters.push(formatter);
+ * ngModel.$formatters.push(format);
* ```
*
* @property {Object.<string, function>} $validators A collection of validators that are applied
@@ -25140,7 +28223,7 @@ is set to `true`. The parse error is stored in `ngModel.$error.parse`.
var html = element.html();
// When we clear the content editable the browser leaves a <br> behind
// If strip-br attribute is provided then we strip this out
- if ( attrs.stripBr && html == '<br>' ) {
+ if (attrs.stripBr && html === '<br>') {
html = '';
}
ngModel.$setViewValue(html);
@@ -25162,7 +28245,7 @@ is set to `true`. The parse error is stored in `ngModel.$error.parse`.
</file>
<file name="protractor.js" type="protractor">
it('should data-bind and become invalid', function() {
- if (browser.params.browser == 'safari' || browser.params.browser == 'firefox') {
+ if (browser.params.browser === 'safari' || browser.params.browser === 'firefox') {
// SafariDriver can't handle contenteditable
// and Firefox driver can't clear contenteditables very well
return;
@@ -25182,8 +28265,8 @@ is set to `true`. The parse error is stored in `ngModel.$error.parse`.
*
*
*/
-var NgModelController = ['$scope', '$exceptionHandler', '$attrs', '$element', '$parse', '$animate', '$timeout', '$rootScope', '$q', '$interpolate',
- function($scope, $exceptionHandler, $attr, $element, $parse, $animate, $timeout, $rootScope, $q, $interpolate) {
+NgModelController.$inject = ['$scope', '$exceptionHandler', '$attrs', '$element', '$parse', '$animate', '$timeout', '$q', '$interpolate'];
+function NgModelController($scope, $exceptionHandler, $attr, $element, $parse, $animate, $timeout, $q, $interpolate) {
this.$viewValue = Number.NaN;
this.$modelValue = Number.NaN;
this.$$rawModelValue = undefined; // stores the parsed modelValue / model set from scope regardless of validity.
@@ -25203,40 +28286,56 @@ var NgModelController = ['$scope', '$exceptionHandler', '$attrs', '$element', '$
this.$pending = undefined; // keep pending keys here
this.$name = $interpolate($attr.name || '', false)($scope);
this.$$parentForm = nullFormCtrl;
+ this.$options = defaultModelOptions;
+
+ this.$$parsedNgModel = $parse($attr.ngModel);
+ this.$$parsedNgModelAssign = this.$$parsedNgModel.assign;
+ this.$$ngModelGet = this.$$parsedNgModel;
+ this.$$ngModelSet = this.$$parsedNgModelAssign;
+ this.$$pendingDebounce = null;
+ this.$$parserValid = undefined;
+
+ this.$$currentValidationRunId = 0;
+
+ this.$$scope = $scope;
+ this.$$attr = $attr;
+ this.$$element = $element;
+ this.$$animate = $animate;
+ this.$$timeout = $timeout;
+ this.$$parse = $parse;
+ this.$$q = $q;
+ this.$$exceptionHandler = $exceptionHandler;
+
+ setupValidity(this);
+ setupModelWatcher(this);
+}
- var parsedNgModel = $parse($attr.ngModel),
- parsedNgModelAssign = parsedNgModel.assign,
- ngModelGet = parsedNgModel,
- ngModelSet = parsedNgModelAssign,
- pendingDebounce = null,
- parserValid,
- ctrl = this;
-
- this.$$setOptions = function(options) {
- ctrl.$options = options;
- if (options && options.getterSetter) {
- var invokeModelGetter = $parse($attr.ngModel + '()'),
- invokeModelSetter = $parse($attr.ngModel + '($$$p)');
-
- ngModelGet = function($scope) {
- var modelValue = parsedNgModel($scope);
+NgModelController.prototype = {
+ $$initGetterSetters: function() {
+ if (this.$options.getOption('getterSetter')) {
+ var invokeModelGetter = this.$$parse(this.$$attr.ngModel + '()'),
+ invokeModelSetter = this.$$parse(this.$$attr.ngModel + '($$$p)');
+
+ this.$$ngModelGet = function($scope) {
+ var modelValue = this.$$parsedNgModel($scope);
if (isFunction(modelValue)) {
modelValue = invokeModelGetter($scope);
}
return modelValue;
};
- ngModelSet = function($scope, newValue) {
- if (isFunction(parsedNgModel($scope))) {
- invokeModelSetter($scope, {$$$p: ctrl.$modelValue});
+ this.$$ngModelSet = function($scope, newValue) {
+ if (isFunction(this.$$parsedNgModel($scope))) {
+ invokeModelSetter($scope, {$$$p: newValue});
} else {
- parsedNgModelAssign($scope, ctrl.$modelValue);
+ this.$$parsedNgModelAssign($scope, newValue);
}
};
- } else if (!parsedNgModel.assign) {
- throw ngModelMinErr('nonassign', "Expression '{0}' is non-assignable. Element: {1}",
- $attr.ngModel, startingTag($element));
+ } else if (!this.$$parsedNgModel.assign) {
+ throw ngModelMinErr('nonassign', 'Expression \'{0}\' is non-assignable. Element: {1}',
+ this.$$attr.ngModel, startingTag(this.$$element));
}
- };
+ },
+
/**
* @ngdoc method
@@ -25254,11 +28353,11 @@ var NgModelController = ['$scope', '$exceptionHandler', '$attrs', '$element', '$
* the `$viewValue` are different from last time.
*
* Since `ng-model` does not do a deep watch, `$render()` is only invoked if the values of
- * `$modelValue` and `$viewValue` are actually different from their previous value. If `$modelValue`
+ * `$modelValue` and `$viewValue` are actually different from their previous values. If `$modelValue`
* or `$viewValue` are objects (rather than a string or number) then `$render()` will not be
* invoked if you only change a property on the objects.
*/
- this.$render = noop;
+ $render: noop,
/**
* @ngdoc method
@@ -25278,56 +28377,20 @@ var NgModelController = ['$scope', '$exceptionHandler', '$attrs', '$element', '$
* @param {*} value The value of the input to check for emptiness.
* @returns {boolean} True if `value` is "empty".
*/
- this.$isEmpty = function(value) {
+ $isEmpty: function(value) {
+ // eslint-disable-next-line no-self-compare
return isUndefined(value) || value === '' || value === null || value !== value;
- };
+ },
- this.$$updateEmptyClasses = function(value) {
- if (ctrl.$isEmpty(value)) {
- $animate.removeClass($element, NOT_EMPTY_CLASS);
- $animate.addClass($element, EMPTY_CLASS);
+ $$updateEmptyClasses: function(value) {
+ if (this.$isEmpty(value)) {
+ this.$$animate.removeClass(this.$$element, NOT_EMPTY_CLASS);
+ this.$$animate.addClass(this.$$element, EMPTY_CLASS);
} else {
- $animate.removeClass($element, EMPTY_CLASS);
- $animate.addClass($element, NOT_EMPTY_CLASS);
+ this.$$animate.removeClass(this.$$element, EMPTY_CLASS);
+ this.$$animate.addClass(this.$$element, NOT_EMPTY_CLASS);
}
- };
-
-
- var currentValidationRunId = 0;
-
- /**
- * @ngdoc method
- * @name ngModel.NgModelController#$setValidity
- *
- * @description
- * Change the validity state, and notify the form.
- *
- * This method can be called within $parsers/$formatters or a custom validation implementation.
- * However, in most cases it should be sufficient to use the `ngModel.$validators` and
- * `ngModel.$asyncValidators` collections which will call `$setValidity` automatically.
- *
- * @param {string} validationErrorKey Name of the validator. The `validationErrorKey` will be assigned
- * to either `$error[validationErrorKey]` or `$pending[validationErrorKey]`
- * (for unfulfilled `$asyncValidators`), so that it is available for data-binding.
- * The `validationErrorKey` should be in camelCase and will get converted into dash-case
- * for class name. Example: `myError` will result in `ng-valid-my-error` and `ng-invalid-my-error`
- * class and can be bound to as `{{someForm.someControl.$error.myError}}` .
- * @param {boolean} isValid Whether the current state is valid (true), invalid (false), pending (undefined),
- * or skipped (null). Pending is used for unfulfilled `$asyncValidators`.
- * Skipped is used by Angular when validators do not run because of parse errors and
- * when `$asyncValidators` do not run because any of the `$validators` failed.
- */
- addSetValidityMethod({
- ctrl: this,
- $element: $element,
- set: function(object, property) {
- object[property] = true;
- },
- unset: function(object, property) {
- delete object[property];
- },
- $animate: $animate
- });
+ },
/**
* @ngdoc method
@@ -25340,12 +28403,12 @@ var NgModelController = ['$scope', '$exceptionHandler', '$attrs', '$element', '$
* state (`ng-pristine` class). A model is considered to be pristine when the control
* has not been changed from when first compiled.
*/
- this.$setPristine = function() {
- ctrl.$dirty = false;
- ctrl.$pristine = true;
- $animate.removeClass($element, DIRTY_CLASS);
- $animate.addClass($element, PRISTINE_CLASS);
- };
+ $setPristine: function() {
+ this.$dirty = false;
+ this.$pristine = true;
+ this.$$animate.removeClass(this.$$element, DIRTY_CLASS);
+ this.$$animate.addClass(this.$$element, PRISTINE_CLASS);
+ },
/**
* @ngdoc method
@@ -25358,13 +28421,13 @@ var NgModelController = ['$scope', '$exceptionHandler', '$attrs', '$element', '$
* state (`ng-dirty` class). A model is considered to be dirty when the control has been changed
* from when first compiled.
*/
- this.$setDirty = function() {
- ctrl.$dirty = true;
- ctrl.$pristine = false;
- $animate.removeClass($element, PRISTINE_CLASS);
- $animate.addClass($element, DIRTY_CLASS);
- ctrl.$$parentForm.$setDirty();
- };
+ $setDirty: function() {
+ this.$dirty = true;
+ this.$pristine = false;
+ this.$$animate.removeClass(this.$$element, PRISTINE_CLASS);
+ this.$$animate.addClass(this.$$element, DIRTY_CLASS);
+ this.$$parentForm.$setDirty();
+ },
/**
* @ngdoc method
@@ -25378,11 +28441,11 @@ var NgModelController = ['$scope', '$exceptionHandler', '$attrs', '$element', '$
* by default, however this function can be used to restore that state if the model has
* already been touched by the user.
*/
- this.$setUntouched = function() {
- ctrl.$touched = false;
- ctrl.$untouched = true;
- $animate.setClass($element, UNTOUCHED_CLASS, TOUCHED_CLASS);
- };
+ $setUntouched: function() {
+ this.$touched = false;
+ this.$untouched = true;
+ this.$$animate.setClass(this.$$element, UNTOUCHED_CLASS, TOUCHED_CLASS);
+ },
/**
* @ngdoc method
@@ -25395,11 +28458,11 @@ var NgModelController = ['$scope', '$exceptionHandler', '$attrs', '$element', '$
* touched state (`ng-touched` class). A model is considered to be touched when the user has
* first focused the control element and then shifted focus away from the control (blur event).
*/
- this.$setTouched = function() {
- ctrl.$touched = true;
- ctrl.$untouched = false;
- $animate.setClass($element, TOUCHED_CLASS, UNTOUCHED_CLASS);
- };
+ $setTouched: function() {
+ this.$touched = true;
+ this.$untouched = false;
+ this.$$animate.setClass(this.$$element, TOUCHED_CLASS, UNTOUCHED_CLASS);
+ },
/**
* @ngdoc method
@@ -25407,14 +28470,17 @@ var NgModelController = ['$scope', '$exceptionHandler', '$attrs', '$element', '$
*
* @description
* Cancel an update and reset the input element's value to prevent an update to the `$modelValue`,
- * which may be caused by a pending debounced event or because the input is waiting for a some
+ * which may be caused by a pending debounced event or because the input is waiting for some
* future event.
*
- * If you have an input that uses `ng-model-options` to set up debounced events or events such
- * as blur you can have a situation where there is a period when the `$viewValue`
- * is out of synch with the ngModel's `$modelValue`.
+ * If you have an input that uses `ng-model-options` to set up debounced updates or updates that
+ * depend on special events such as `blur`, there can be a period when the `$viewValue` is out of
+ * sync with the ngModel's `$modelValue`.
+ *
+ * In this case, you can use `$rollbackViewValue()` to manually cancel the debounced / future update
+ * and reset the input to the last committed view value.
*
- * In this case, you can run into difficulties if you try to update the ngModel's `$modelValue`
+ * It is also possible that you run into difficulties if you try to update the ngModel's `$modelValue`
* programmatically before these debounced/future events have resolved/occurred, because Angular's
* dirty checking mechanism is not able to tell whether the model has actually changed or not.
*
@@ -25427,46 +28493,70 @@ var NgModelController = ['$scope', '$exceptionHandler', '$attrs', '$element', '$
* angular.module('cancel-update-example', [])
*
* .controller('CancelUpdateController', ['$scope', function($scope) {
- * $scope.resetWithCancel = function(e) {
- * if (e.keyCode == 27) {
- * $scope.myForm.myInput1.$rollbackViewValue();
- * $scope.myValue = '';
- * }
- * };
- * $scope.resetWithoutCancel = function(e) {
- * if (e.keyCode == 27) {
- * $scope.myValue = '';
+ * $scope.model = {value1: '', value2: ''};
+ *
+ * $scope.setEmpty = function(e, value, rollback) {
+ * if (e.keyCode === 27) {
+ * e.preventDefault();
+ * if (rollback) {
+ * $scope.myForm[value].$rollbackViewValue();
+ * }
+ * $scope.model[value] = '';
* }
* };
* }]);
* </file>
* <file name="index.html">
* <div ng-controller="CancelUpdateController">
- * <p>Try typing something in each input. See that the model only updates when you
- * blur off the input.
- * </p>
- * <p>Now see what happens if you start typing then press the Escape key</p>
+ * <p>Both of these inputs are only updated if they are blurred. Hitting escape should
+ * empty them. Follow these steps and observe the difference:</p>
+ * <ol>
+ * <li>Type something in the input. You will see that the model is not yet updated</li>
+ * <li>Press the Escape key.
+ * <ol>
+ * <li> In the first example, nothing happens, because the model is already '', and no
+ * update is detected. If you blur the input, the model will be set to the current view.
+ * </li>
+ * <li> In the second example, the pending update is cancelled, and the input is set back
+ * to the last committed view value (''). Blurring the input does nothing.
+ * </li>
+ * </ol>
+ * </li>
+ * </ol>
*
* <form name="myForm" ng-model-options="{ updateOn: 'blur' }">
- * <p id="inputDescription1">With $rollbackViewValue()</p>
- * <input name="myInput1" aria-describedby="inputDescription1" ng-model="myValue"
- * ng-keydown="resetWithCancel($event)"><br/>
- * myValue: "{{ myValue }}"
- *
- * <p id="inputDescription2">Without $rollbackViewValue()</p>
- * <input name="myInput2" aria-describedby="inputDescription2" ng-model="myValue"
- * ng-keydown="resetWithoutCancel($event)"><br/>
- * myValue: "{{ myValue }}"
+ * <div>
+ * <p id="inputDescription1">Without $rollbackViewValue():</p>
+ * <input name="value1" aria-describedby="inputDescription1" ng-model="model.value1"
+ * ng-keydown="setEmpty($event, 'value1')">
+ * value1: "{{ model.value1 }}"
+ * </div>
+ *
+ * <div>
+ * <p id="inputDescription2">With $rollbackViewValue():</p>
+ * <input name="value2" aria-describedby="inputDescription2" ng-model="model.value2"
+ * ng-keydown="setEmpty($event, 'value2', true)">
+ * value2: "{{ model.value2 }}"
+ * </div>
* </form>
* </div>
* </file>
+ <file name="style.css">
+ div {
+ display: table-cell;
+ }
+ div:nth-child(1) {
+ padding-right: 30px;
+ }
+
+ </file>
* </example>
*/
- this.$rollbackViewValue = function() {
- $timeout.cancel(pendingDebounce);
- ctrl.$viewValue = ctrl.$$lastCommittedViewValue;
- ctrl.$render();
- };
+ $rollbackViewValue: function() {
+ this.$$timeout.cancel(this.$$pendingDebounce);
+ this.$viewValue = this.$$lastCommittedViewValue;
+ this.$render();
+ },
/**
* @ngdoc method
@@ -25480,45 +28570,46 @@ var NgModelController = ['$scope', '$exceptionHandler', '$attrs', '$element', '$
* If the validity changes to valid, it will set the model to the last available valid
* `$modelValue`, i.e. either the last parsed value or the last value set from the scope.
*/
- this.$validate = function() {
+ $validate: function() {
// ignore $validate before model is initialized
- if (isNumber(ctrl.$modelValue) && isNaN(ctrl.$modelValue)) {
+ if (isNumberNaN(this.$modelValue)) {
return;
}
- var viewValue = ctrl.$$lastCommittedViewValue;
+ var viewValue = this.$$lastCommittedViewValue;
// Note: we use the $$rawModelValue as $modelValue might have been
// set to undefined during a view -> model update that found validation
// errors. We can't parse the view here, since that could change
// the model although neither viewValue nor the model on the scope changed
- var modelValue = ctrl.$$rawModelValue;
+ var modelValue = this.$$rawModelValue;
- var prevValid = ctrl.$valid;
- var prevModelValue = ctrl.$modelValue;
+ var prevValid = this.$valid;
+ var prevModelValue = this.$modelValue;
- var allowInvalid = ctrl.$options && ctrl.$options.allowInvalid;
+ var allowInvalid = this.$options.getOption('allowInvalid');
- ctrl.$$runValidators(modelValue, viewValue, function(allValid) {
+ var that = this;
+ this.$$runValidators(modelValue, viewValue, function(allValid) {
// If there was no change in validity, don't update the model
// This prevents changing an invalid modelValue to undefined
if (!allowInvalid && prevValid !== allValid) {
- // Note: Don't check ctrl.$valid here, as we could have
+ // Note: Don't check this.$valid here, as we could have
// external validators (e.g. calculated on the server),
// that just call $setValidity and need the model value
// to calculate their validity.
- ctrl.$modelValue = allValid ? modelValue : undefined;
+ that.$modelValue = allValid ? modelValue : undefined;
- if (ctrl.$modelValue !== prevModelValue) {
- ctrl.$$writeModelToScope();
+ if (that.$modelValue !== prevModelValue) {
+ that.$$writeModelToScope();
}
}
});
+ },
- };
-
- this.$$runValidators = function(modelValue, viewValue, doneCallback) {
- currentValidationRunId++;
- var localValidationRunId = currentValidationRunId;
+ $$runValidators: function(modelValue, viewValue, doneCallback) {
+ this.$$currentValidationRunId++;
+ var localValidationRunId = this.$$currentValidationRunId;
+ var that = this;
// check parser error
if (!processParseErrors()) {
@@ -25532,34 +28623,34 @@ var NgModelController = ['$scope', '$exceptionHandler', '$attrs', '$element', '$
processAsyncValidators();
function processParseErrors() {
- var errorKey = ctrl.$$parserName || 'parse';
- if (isUndefined(parserValid)) {
+ var errorKey = that.$$parserName || 'parse';
+ if (isUndefined(that.$$parserValid)) {
setValidity(errorKey, null);
} else {
- if (!parserValid) {
- forEach(ctrl.$validators, function(v, name) {
+ if (!that.$$parserValid) {
+ forEach(that.$validators, function(v, name) {
setValidity(name, null);
});
- forEach(ctrl.$asyncValidators, function(v, name) {
+ forEach(that.$asyncValidators, function(v, name) {
setValidity(name, null);
});
}
// Set the parse error last, to prevent unsetting it, should a $validators key == parserName
- setValidity(errorKey, parserValid);
- return parserValid;
+ setValidity(errorKey, that.$$parserValid);
+ return that.$$parserValid;
}
return true;
}
function processSyncValidators() {
var syncValidatorsValid = true;
- forEach(ctrl.$validators, function(validator, name) {
- var result = validator(modelValue, viewValue);
+ forEach(that.$validators, function(validator, name) {
+ var result = Boolean(validator(modelValue, viewValue));
syncValidatorsValid = syncValidatorsValid && result;
setValidity(name, result);
});
if (!syncValidatorsValid) {
- forEach(ctrl.$asyncValidators, function(v, name) {
+ forEach(that.$asyncValidators, function(v, name) {
setValidity(name, null);
});
return false;
@@ -25570,16 +28661,16 @@ var NgModelController = ['$scope', '$exceptionHandler', '$attrs', '$element', '$
function processAsyncValidators() {
var validatorPromises = [];
var allValid = true;
- forEach(ctrl.$asyncValidators, function(validator, name) {
+ forEach(that.$asyncValidators, function(validator, name) {
var promise = validator(modelValue, viewValue);
if (!isPromiseLike(promise)) {
- throw ngModelMinErr("$asyncValidators",
- "Expected asynchronous validator to return a promise but got '{0}' instead.", promise);
+ throw ngModelMinErr('nopromise',
+ 'Expected asynchronous validator to return a promise but got \'{0}\' instead.', promise);
}
setValidity(name, undefined);
validatorPromises.push(promise.then(function() {
setValidity(name, true);
- }, function(error) {
+ }, function() {
allValid = false;
setValidity(name, false);
}));
@@ -25587,25 +28678,25 @@ var NgModelController = ['$scope', '$exceptionHandler', '$attrs', '$element', '$
if (!validatorPromises.length) {
validationDone(true);
} else {
- $q.all(validatorPromises).then(function() {
+ that.$$q.all(validatorPromises).then(function() {
validationDone(allValid);
}, noop);
}
}
function setValidity(name, isValid) {
- if (localValidationRunId === currentValidationRunId) {
- ctrl.$setValidity(name, isValid);
+ if (localValidationRunId === that.$$currentValidationRunId) {
+ that.$setValidity(name, isValid);
}
}
function validationDone(allValid) {
- if (localValidationRunId === currentValidationRunId) {
+ if (localValidationRunId === that.$$currentValidationRunId) {
doneCallback(allValid);
}
}
- };
+ },
/**
* @ngdoc method
@@ -25618,84 +28709,87 @@ var NgModelController = ['$scope', '$exceptionHandler', '$attrs', '$element', '$
* event defined in `ng-model-options`. this method is rarely needed as `NgModelController`
* usually handles calling this in response to input events.
*/
- this.$commitViewValue = function() {
- var viewValue = ctrl.$viewValue;
+ $commitViewValue: function() {
+ var viewValue = this.$viewValue;
- $timeout.cancel(pendingDebounce);
+ this.$$timeout.cancel(this.$$pendingDebounce);
// If the view value has not changed then we should just exit, except in the case where there is
// a native validator on the element. In this case the validation state may have changed even though
// the viewValue has stayed empty.
- if (ctrl.$$lastCommittedViewValue === viewValue && (viewValue !== '' || !ctrl.$$hasNativeValidators)) {
+ if (this.$$lastCommittedViewValue === viewValue && (viewValue !== '' || !this.$$hasNativeValidators)) {
return;
}
- ctrl.$$updateEmptyClasses(viewValue);
- ctrl.$$lastCommittedViewValue = viewValue;
+ this.$$updateEmptyClasses(viewValue);
+ this.$$lastCommittedViewValue = viewValue;
// change to dirty
- if (ctrl.$pristine) {
+ if (this.$pristine) {
this.$setDirty();
}
this.$$parseAndValidate();
- };
+ },
- this.$$parseAndValidate = function() {
- var viewValue = ctrl.$$lastCommittedViewValue;
+ $$parseAndValidate: function() {
+ var viewValue = this.$$lastCommittedViewValue;
var modelValue = viewValue;
- parserValid = isUndefined(modelValue) ? undefined : true;
+ var that = this;
- if (parserValid) {
- for (var i = 0; i < ctrl.$parsers.length; i++) {
- modelValue = ctrl.$parsers[i](modelValue);
+ this.$$parserValid = isUndefined(modelValue) ? undefined : true;
+
+ if (this.$$parserValid) {
+ for (var i = 0; i < this.$parsers.length; i++) {
+ modelValue = this.$parsers[i](modelValue);
if (isUndefined(modelValue)) {
- parserValid = false;
+ this.$$parserValid = false;
break;
}
}
}
- if (isNumber(ctrl.$modelValue) && isNaN(ctrl.$modelValue)) {
- // ctrl.$modelValue has not been touched yet...
- ctrl.$modelValue = ngModelGet($scope);
+ if (isNumberNaN(this.$modelValue)) {
+ // this.$modelValue has not been touched yet...
+ this.$modelValue = this.$$ngModelGet(this.$$scope);
}
- var prevModelValue = ctrl.$modelValue;
- var allowInvalid = ctrl.$options && ctrl.$options.allowInvalid;
- ctrl.$$rawModelValue = modelValue;
+ var prevModelValue = this.$modelValue;
+ var allowInvalid = this.$options.getOption('allowInvalid');
+ this.$$rawModelValue = modelValue;
if (allowInvalid) {
- ctrl.$modelValue = modelValue;
+ this.$modelValue = modelValue;
writeToModelIfNeeded();
}
// Pass the $$lastCommittedViewValue here, because the cached viewValue might be out of date.
// This can happen if e.g. $setViewValue is called from inside a parser
- ctrl.$$runValidators(modelValue, ctrl.$$lastCommittedViewValue, function(allValid) {
+ this.$$runValidators(modelValue, this.$$lastCommittedViewValue, function(allValid) {
if (!allowInvalid) {
- // Note: Don't check ctrl.$valid here, as we could have
+ // Note: Don't check this.$valid here, as we could have
// external validators (e.g. calculated on the server),
// that just call $setValidity and need the model value
// to calculate their validity.
- ctrl.$modelValue = allValid ? modelValue : undefined;
+ that.$modelValue = allValid ? modelValue : undefined;
writeToModelIfNeeded();
}
});
function writeToModelIfNeeded() {
- if (ctrl.$modelValue !== prevModelValue) {
- ctrl.$$writeModelToScope();
+ if (that.$modelValue !== prevModelValue) {
+ that.$$writeModelToScope();
}
}
- };
+ },
- this.$$writeModelToScope = function() {
- ngModelSet($scope, ctrl.$modelValue);
- forEach(ctrl.$viewChangeListeners, function(listener) {
+ $$writeModelToScope: function() {
+ this.$$ngModelSet(this.$$scope, this.$modelValue);
+ forEach(this.$viewChangeListeners, function(listener) {
try {
listener();
} catch (e) {
- $exceptionHandler(e);
+ // eslint-disable-next-line no-invalid-this
+ this.$$exceptionHandler(e);
}
- });
- };
+ }, this);
+ },
/**
* @ngdoc method
@@ -25711,9 +28805,10 @@ var NgModelController = ['$scope', '$exceptionHandler', '$attrs', '$element', '$
*
* When `$setViewValue` is called, the new `value` will be staged for committing through the `$parsers`
* and `$validators` pipelines. If there are no special {@link ngModelOptions} specified then the staged
- * value sent directly for processing, finally to be applied to `$modelValue` and then the
- * **expression** specified in the `ng-model` attribute. Lastly, all the registered change listeners,
- * in the `$viewChangeListeners` list, are called.
+ * value is sent directly for processing through the `$parsers` pipeline. After this, the `$validators` and
+ * `$asyncValidators` are called and the value is applied to `$modelValue`.
+ * Finally, the value is set to the **expression** specified in the `ng-model` attribute and
+ * all the registered change listeners, in the `$viewChangeListeners` list are called.
*
* In case the {@link ng.directive:ngModelOptions ngModelOptions} directive is used with `updateOn`
* and the `default` trigger is not listed, all those actions will remain pending until one of the
@@ -25728,7 +28823,7 @@ var NgModelController = ['$scope', '$exceptionHandler', '$attrs', '$element', '$
* However, custom controls might also pass objects to this method. In this case, we should make
* a copy of the object before passing it to `$setViewValue`. This is because `ngModel` does not
* perform a deep watch of objects, it only looks for a change of identity. If you only change
- * the property of the object then ngModel will not realise that the object has changed and
+ * the property of the object then ngModel will not realize that the object has changed and
* will not invoke the `$parsers` and `$validators` pipelines. For this reason, you should
* not change properties of the copy once it has been passed to `$setViewValue`.
* Otherwise you may cause the model value on the scope to change incorrectly.
@@ -25747,43 +28842,62 @@ var NgModelController = ['$scope', '$exceptionHandler', '$attrs', '$element', '$
* @param {*} value value from the view.
* @param {string} trigger Event that triggered the update.
*/
- this.$setViewValue = function(value, trigger) {
- ctrl.$viewValue = value;
- if (!ctrl.$options || ctrl.$options.updateOnDefault) {
- ctrl.$$debounceViewValueCommit(trigger);
+ $setViewValue: function(value, trigger) {
+ this.$viewValue = value;
+ if (this.$options.getOption('updateOnDefault')) {
+ this.$$debounceViewValueCommit(trigger);
}
- };
+ },
- this.$$debounceViewValueCommit = function(trigger) {
- var debounceDelay = 0,
- options = ctrl.$options,
- debounce;
+ $$debounceViewValueCommit: function(trigger) {
+ var debounceDelay = this.$options.getOption('debounce');
- if (options && isDefined(options.debounce)) {
- debounce = options.debounce;
- if (isNumber(debounce)) {
- debounceDelay = debounce;
- } else if (isNumber(debounce[trigger])) {
- debounceDelay = debounce[trigger];
- } else if (isNumber(debounce['default'])) {
- debounceDelay = debounce['default'];
- }
+ if (isNumber(debounceDelay[trigger])) {
+ debounceDelay = debounceDelay[trigger];
+ } else if (isNumber(debounceDelay['default'])) {
+ debounceDelay = debounceDelay['default'];
}
- $timeout.cancel(pendingDebounce);
- if (debounceDelay) {
- pendingDebounce = $timeout(function() {
- ctrl.$commitViewValue();
+ this.$$timeout.cancel(this.$$pendingDebounce);
+ var that = this;
+ if (debounceDelay > 0) { // this fails if debounceDelay is an object
+ this.$$pendingDebounce = this.$$timeout(function() {
+ that.$commitViewValue();
}, debounceDelay);
- } else if ($rootScope.$$phase) {
- ctrl.$commitViewValue();
+ } else if (this.$$scope.$root.$$phase) {
+ this.$commitViewValue();
} else {
- $scope.$apply(function() {
- ctrl.$commitViewValue();
+ this.$$scope.$apply(function() {
+ that.$commitViewValue();
});
}
- };
+ },
+ /**
+ * @ngdoc method
+ *
+ * @name ngModel.NgModelController#$overrideModelOptions
+ *
+ * @description
+ *
+ * Override the current model options settings programmatically.
+ *
+ * The previous `ModelOptions` value will not be modified. Instead, a
+ * new `ModelOptions` object will inherit from the previous one overriding
+ * or inheriting settings that are defined in the given parameter.
+ *
+ * See {@link ngModelOptions} for information about what options can be specified
+ * and how model option inheritance works.
+ *
+ * @param {Object} options a hash of settings to override the previous options
+ *
+ */
+ $overrideModelOptions: function(options) {
+ this.$options = this.$options.createChild(options);
+ }
+};
+
+function setupModelWatcher(ctrl) {
// model -> value
// Note: we cannot use a normal scope.$watch as we want to detect the following:
// 1. scope value is 'a'
@@ -25792,17 +28906,18 @@ var NgModelController = ['$scope', '$exceptionHandler', '$attrs', '$element', '$
// -> scope value did not change since the last digest as
// ng-change executes in apply phase
// 4. view should be changed back to 'a'
- $scope.$watch(function ngModelWatch() {
- var modelValue = ngModelGet($scope);
+ ctrl.$$scope.$watch(function ngModelWatch() {
+ var modelValue = ctrl.$$ngModelGet(ctrl.$$scope);
// if scope model value and ngModel value are out of sync
// TODO(perf): why not move this to the action fn?
if (modelValue !== ctrl.$modelValue &&
// checks for NaN is needed to allow setting the model to NaN when there's an asyncValidator
+ // eslint-disable-next-line no-self-compare
(ctrl.$modelValue === ctrl.$modelValue || modelValue === modelValue)
) {
ctrl.$modelValue = ctrl.$$rawModelValue = modelValue;
- parserValid = undefined;
+ ctrl.$$parserValid = undefined;
var formatters = ctrl.$formatters,
idx = formatters.length;
@@ -25816,13 +28931,46 @@ var NgModelController = ['$scope', '$exceptionHandler', '$attrs', '$element', '$
ctrl.$viewValue = ctrl.$$lastCommittedViewValue = viewValue;
ctrl.$render();
- ctrl.$$runValidators(modelValue, viewValue, noop);
+ // It is possible that model and view value have been updated during render
+ ctrl.$$runValidators(ctrl.$modelValue, ctrl.$viewValue, noop);
}
}
return modelValue;
});
-}];
+}
+
+/**
+ * @ngdoc method
+ * @name ngModel.NgModelController#$setValidity
+ *
+ * @description
+ * Change the validity state, and notify the form.
+ *
+ * This method can be called within $parsers/$formatters or a custom validation implementation.
+ * However, in most cases it should be sufficient to use the `ngModel.$validators` and
+ * `ngModel.$asyncValidators` collections which will call `$setValidity` automatically.
+ *
+ * @param {string} validationErrorKey Name of the validator. The `validationErrorKey` will be assigned
+ * to either `$error[validationErrorKey]` or `$pending[validationErrorKey]`
+ * (for unfulfilled `$asyncValidators`), so that it is available for data-binding.
+ * The `validationErrorKey` should be in camelCase and will get converted into dash-case
+ * for class name. Example: `myError` will result in `ng-valid-my-error` and `ng-invalid-my-error`
+ * class and can be bound to as `{{someForm.someControl.$error.myError}}` .
+ * @param {boolean} isValid Whether the current state is valid (true), invalid (false), pending (undefined),
+ * or skipped (null). Pending is used for unfulfilled `$asyncValidators`.
+ * Skipped is used by Angular when validators do not run because of parse errors and
+ * when `$asyncValidators` do not run because any of the `$validators` failed.
+ */
+addSetValidityMethod({
+ clazz: NgModelController,
+ set: function(object, property) {
+ object[property] = true;
+ },
+ unset: function(object, property) {
+ delete object[property];
+ }
+});
/**
@@ -25872,6 +29020,22 @@ var NgModelController = ['$scope', '$exceptionHandler', '$attrs', '$element', '$
* - {@link ng.directive:select select}
* - {@link ng.directive:textarea textarea}
*
+ * # Complex Models (objects or collections)
+ *
+ * By default, `ngModel` watches the model by reference, not value. This is important to know when
+ * binding inputs to models that are objects (e.g. `Date`) or collections (e.g. arrays). If only properties of the
+ * object or collection change, `ngModel` will not be notified and so the input will not be re-rendered.
+ *
+ * The model must be assigned an entirely new object or collection before a re-rendering will occur.
+ *
+ * Some directives have options that will cause them to use a custom `$watchCollection` on the model expression
+ * - for example, `ngOptions` will do so when a `track by` clause is included in the comprehension expression or
+ * if the select is given the `multiple` attribute.
+ *
+ * The `$watchCollection()` method only does a shallow comparison, meaning that changing properties deeper than the
+ * first level of the object (or only changing the properties of an item in the collection if it's an array) will still
+ * not trigger a re-rendering of the model.
+ *
* # CSS classes
* The following CSS classes are added and removed on the associated input/select/textarea element
* depending on the validity of the model.
@@ -25916,7 +29080,7 @@ var NgModelController = ['$scope', '$exceptionHandler', '$attrs', '$element', '$
* </pre>
*
* @example
- * <example deps="angular-animate.js" animations="true" fixBase="true" module="inputExample">
+ * <example deps="angular-animate.js" animations="true" fixBase="true" module="inputExample" name="ng-model">
<file name="index.html">
<script>
angular.module('inputExample', [])
@@ -26012,9 +29176,14 @@ var ngModelDirective = ['$rootScope', function($rootScope) {
return {
pre: function ngModelPreLink(scope, element, attr, ctrls) {
var modelCtrl = ctrls[0],
- formCtrl = ctrls[1] || modelCtrl.$$parentForm;
+ formCtrl = ctrls[1] || modelCtrl.$$parentForm,
+ optionsCtrl = ctrls[2];
+
+ if (optionsCtrl) {
+ modelCtrl.$options = optionsCtrl.$options;
+ }
- modelCtrl.$$setOptions(ctrls[2] && ctrls[2].$options);
+ modelCtrl.$$initGetterSetters();
// notify others, especially parent forms
formCtrl.$addControl(modelCtrl);
@@ -26031,19 +29200,23 @@ var ngModelDirective = ['$rootScope', function($rootScope) {
},
post: function ngModelPostLink(scope, element, attr, ctrls) {
var modelCtrl = ctrls[0];
- if (modelCtrl.$options && modelCtrl.$options.updateOn) {
- element.on(modelCtrl.$options.updateOn, function(ev) {
+ if (modelCtrl.$options.getOption('updateOn')) {
+ element.on(modelCtrl.$options.getOption('updateOn'), function(ev) {
modelCtrl.$$debounceViewValueCommit(ev && ev.type);
});
}
- element.on('blur', function(ev) {
+ function setTouched() {
+ modelCtrl.$setTouched();
+ }
+
+ element.on('blur', function() {
if (modelCtrl.$touched) return;
if ($rootScope.$$phase) {
- scope.$evalAsync(modelCtrl.$setTouched);
+ scope.$evalAsync(setTouched);
} else {
- scope.$apply(modelCtrl.$setTouched);
+ scope.$apply(setTouched);
}
});
}
@@ -26052,23 +29225,173 @@ var ngModelDirective = ['$rootScope', function($rootScope) {
};
}];
+/* exported defaultModelOptions */
+var defaultModelOptions;
var DEFAULT_REGEXP = /(\s+|^)default(\s+|$)/;
/**
+ * @ngdoc type
+ * @name ModelOptions
+ * @description
+ * A container for the options set by the {@link ngModelOptions} directive
+ */
+function ModelOptions(options) {
+ this.$$options = options;
+}
+
+ModelOptions.prototype = {
+
+ /**
+ * @ngdoc method
+ * @name ModelOptions#getOption
+ * @param {string} name the name of the option to retrieve
+ * @returns {*} the value of the option
+ * @description
+ * Returns the value of the given option
+ */
+ getOption: function(name) {
+ return this.$$options[name];
+ },
+
+ /**
+ * @ngdoc method
+ * @name ModelOptions#createChild
+ * @param {Object} options a hash of options for the new child that will override the parent's options
+ * @return {ModelOptions} a new `ModelOptions` object initialized with the given options.
+ */
+ createChild: function(options) {
+ var inheritAll = false;
+
+ // make a shallow copy
+ options = extend({}, options);
+
+ // Inherit options from the parent if specified by the value `"$inherit"`
+ forEach(options, /* @this */ function(option, key) {
+ if (option === '$inherit') {
+ if (key === '*') {
+ inheritAll = true;
+ } else {
+ options[key] = this.$$options[key];
+ // `updateOn` is special so we must also inherit the `updateOnDefault` option
+ if (key === 'updateOn') {
+ options.updateOnDefault = this.$$options.updateOnDefault;
+ }
+ }
+ } else {
+ if (key === 'updateOn') {
+ // If the `updateOn` property contains the `default` event then we have to remove
+ // it from the event list and set the `updateOnDefault` flag.
+ options.updateOnDefault = false;
+ options[key] = trim(option.replace(DEFAULT_REGEXP, function() {
+ options.updateOnDefault = true;
+ return ' ';
+ }));
+ }
+ }
+ }, this);
+
+ if (inheritAll) {
+ // We have a property of the form: `"*": "$inherit"`
+ delete options['*'];
+ defaults(options, this.$$options);
+ }
+
+ // Finally add in any missing defaults
+ defaults(options, defaultModelOptions.$$options);
+
+ return new ModelOptions(options);
+ }
+};
+
+
+defaultModelOptions = new ModelOptions({
+ updateOn: '',
+ updateOnDefault: true,
+ debounce: 0,
+ getterSetter: false,
+ allowInvalid: false,
+ timezone: null
+});
+
+
+/**
* @ngdoc directive
* @name ngModelOptions
*
* @description
- * Allows tuning how model updates are done. Using `ngModelOptions` you can specify a custom list of
- * events that will trigger a model update and/or a debouncing delay so that the actual update only
- * takes place when a timer expires; this timer will be reset after another change takes place.
+ * This directive allows you to modify the behaviour of {@link ngModel} directives within your
+ * application. You can specify an `ngModelOptions` directive on any element. All {@link ngModel}
+ * directives will use the options of their nearest `ngModelOptions` ancestor.
+ *
+ * The `ngModelOptions` settings are found by evaluating the value of the attribute directive as
+ * an Angular expression. This expression should evaluate to an object, whose properties contain
+ * the settings. For example: `<div "ng-model-options"="{ debounce: 100 }"`.
+ *
+ * ## Inheriting Options
+ *
+ * You can specify that an `ngModelOptions` setting should be inherited from a parent `ngModelOptions`
+ * directive by giving it the value of `"$inherit"`.
+ * Then it will inherit that setting from the first `ngModelOptions` directive found by traversing up the
+ * DOM tree. If there is no ancestor element containing an `ngModelOptions` directive then default settings
+ * will be used.
+ *
+ * For example given the following fragment of HTML
+ *
+ *
+ * ```html
+ * <div ng-model-options="{ allowInvalid: true, debounce: 200 }">
+ * <form ng-model-options="{ updateOn: 'blur', allowInvalid: '$inherit' }">
+ * <input ng-model-options="{ updateOn: 'default', allowInvalid: '$inherit' }" />
+ * </form>
+ * </div>
+ * ```
+ *
+ * the `input` element will have the following settings
+ *
+ * ```js
+ * { allowInvalid: true, updateOn: 'default', debounce: 0 }
+ * ```
+ *
+ * Notice that the `debounce` setting was not inherited and used the default value instead.
+ *
+ * You can specify that all undefined settings are automatically inherited from an ancestor by
+ * including a property with key of `"*"` and value of `"$inherit"`.
+ *
+ * For example given the following fragment of HTML
+ *
+ *
+ * ```html
+ * <div ng-model-options="{ allowInvalid: true, debounce: 200 }">
+ * <form ng-model-options="{ updateOn: 'blur', "*": '$inherit' }">
+ * <input ng-model-options="{ updateOn: 'default', "*": '$inherit' }" />
+ * </form>
+ * </div>
+ * ```
+ *
+ * the `input` element will have the following settings
+ *
+ * ```js
+ * { allowInvalid: true, updateOn: 'default', debounce: 200 }
+ * ```
+ *
+ * Notice that the `debounce` setting now inherits the value from the outer `<div>` element.
+ *
+ * If you are creating a reusable component then you should be careful when using `"*": "$inherit"`
+ * since you may inadvertently inherit a setting in the future that changes the behavior of your component.
+ *
+ *
+ * ## Triggering and debouncing model updates
+ *
+ * The `updateOn` and `debounce` properties allow you to specify a custom list of events that will
+ * trigger a model update and/or a debouncing delay so that the actual update only takes place when
+ * a timer expires; this timer will be reset after another change takes place.
*
* Given the nature of `ngModelOptions`, the value displayed inside input fields in the view might
* be different from the value in the actual model. This means that if you update the model you
- * should also invoke {@link ngModel.NgModelController `$rollbackViewValue`} on the relevant input field in
+ * should also invoke {@link ngModel.NgModelController#$rollbackViewValue} on the relevant input field in
* order to make sure it is synchronized with the model and that any debounced action is canceled.
*
- * The easiest way to reference the control's {@link ngModel.NgModelController `$rollbackViewValue`}
+ * The easiest way to reference the control's {@link ngModel.NgModelController#$rollbackViewValue}
* method is by making sure the input is placed inside a form that has a `name` attribute. This is
* important because `form` controllers are published to the related scope under the name in their
* `name` attribute.
@@ -26077,271 +29400,194 @@ var DEFAULT_REGEXP = /(\s+|^)default(\s+|$)/;
* `submit` event. Note that `ngClick` events will occur before the model is updated. Use `ngSubmit`
* to have access to the updated model.
*
- * `ngModelOptions` has an effect on the element it's declared on and its descendants.
+ * The following example shows how to override immediate updates. Changes on the inputs within the
+ * form will update the model only when the control loses focus (blur event). If `escape` key is
+ * pressed while the input field is focused, the value is reset to the value in the current model.
+ *
+ * <example name="ngModelOptions-directive-blur" module="optionsExample">
+ * <file name="index.html">
+ * <div ng-controller="ExampleController">
+ * <form name="userForm">
+ * <label>
+ * Name:
+ * <input type="text" name="userName"
+ * ng-model="user.name"
+ * ng-model-options="{ updateOn: 'blur' }"
+ * ng-keyup="cancel($event)" />
+ * </label><br />
+ * <label>
+ * Other data:
+ * <input type="text" ng-model="user.data" />
+ * </label><br />
+ * </form>
+ * <pre>user.name = <span ng-bind="user.name"></span></pre>
+ * </div>
+ * </file>
+ * <file name="app.js">
+ * angular.module('optionsExample', [])
+ * .controller('ExampleController', ['$scope', function($scope) {
+ * $scope.user = { name: 'say', data: '' };
+ *
+ * $scope.cancel = function(e) {
+ * if (e.keyCode === 27) {
+ * $scope.userForm.userName.$rollbackViewValue();
+ * }
+ * };
+ * }]);
+ * </file>
+ * <file name="protractor.js" type="protractor">
+ * var model = element(by.binding('user.name'));
+ * var input = element(by.model('user.name'));
+ * var other = element(by.model('user.data'));
+ *
+ * it('should allow custom events', function() {
+ * input.sendKeys(' hello');
+ * input.click();
+ * expect(model.getText()).toEqual('say');
+ * other.click();
+ * expect(model.getText()).toEqual('say hello');
+ * });
*
- * @param {Object} ngModelOptions options to apply to the current model. Valid keys are:
+ * it('should $rollbackViewValue when model changes', function() {
+ * input.sendKeys(' hello');
+ * expect(input.getAttribute('value')).toEqual('say hello');
+ * input.sendKeys(protractor.Key.ESCAPE);
+ * expect(input.getAttribute('value')).toEqual('say');
+ * other.click();
+ * expect(model.getText()).toEqual('say');
+ * });
+ * </file>
+ * </example>
+ *
+ * The next example shows how to debounce model changes. Model will be updated only 1 sec after last change.
+ * If the `Clear` button is pressed, any debounced action is canceled and the value becomes empty.
+ *
+ * <example name="ngModelOptions-directive-debounce" module="optionsExample">
+ * <file name="index.html">
+ * <div ng-controller="ExampleController">
+ * <form name="userForm">
+ * Name:
+ * <input type="text" name="userName"
+ * ng-model="user.name"
+ * ng-model-options="{ debounce: 1000 }" />
+ * <button ng-click="userForm.userName.$rollbackViewValue(); user.name=''">Clear</button><br />
+ * </form>
+ * <pre>user.name = <span ng-bind="user.name"></span></pre>
+ * </div>
+ * </file>
+ * <file name="app.js">
+ * angular.module('optionsExample', [])
+ * .controller('ExampleController', ['$scope', function($scope) {
+ * $scope.user = { name: 'say' };
+ * }]);
+ * </file>
+ * </example>
+ *
+ * ## Model updates and validation
+ *
+ * The default behaviour in `ngModel` is that the model value is set to `undefined` when the
+ * validation determines that the value is invalid. By setting the `allowInvalid` property to true,
+ * the model will still be updated even if the value is invalid.
+ *
+ *
+ * ## Connecting to the scope
+ *
+ * By setting the `getterSetter` property to true you are telling ngModel that the `ngModel` expression
+ * on the scope refers to a "getter/setter" function rather than the value itself.
+ *
+ * The following example shows how to bind to getter/setters:
+ *
+ * <example name="ngModelOptions-directive-getter-setter" module="getterSetterExample">
+ * <file name="index.html">
+ * <div ng-controller="ExampleController">
+ * <form name="userForm">
+ * <label>
+ * Name:
+ * <input type="text" name="userName"
+ * ng-model="user.name"
+ * ng-model-options="{ getterSetter: true }" />
+ * </label>
+ * </form>
+ * <pre>user.name = <span ng-bind="user.name()"></span></pre>
+ * </div>
+ * </file>
+ * <file name="app.js">
+ * angular.module('getterSetterExample', [])
+ * .controller('ExampleController', ['$scope', function($scope) {
+ * var _name = 'Brian';
+ * $scope.user = {
+ * name: function(newName) {
+ * return angular.isDefined(newName) ? (_name = newName) : _name;
+ * }
+ * };
+ * }]);
+ * </file>
+ * </example>
+ *
+ *
+ * ## Specifying timezones
+ *
+ * You can specify the timezone that date/time input directives expect by providing its name in the
+ * `timezone` property.
+ *
+ * @param {Object} ngModelOptions options to apply to {@link ngModel} directives on this element and
+ * and its descendents. Valid keys are:
* - `updateOn`: string specifying which event should the input be bound to. You can set several
* events using an space delimited list. There is a special event called `default` that
- * matches the default events belonging of the control.
+ * matches the default events belonging to the control.
* - `debounce`: integer value which contains the debounce model update value in milliseconds. A
* value of 0 triggers an immediate update. If an object is supplied instead, you can specify a
* custom value for each event. For example:
- * `ng-model-options="{ updateOn: 'default blur', debounce: { 'default': 500, 'blur': 0 } }"`
+ * ```
+ * ng-model-options="{
+ * updateOn: 'default blur',
+ * debounce: { 'default': 500, 'blur': 0 }
+ * }"
+ * ```
* - `allowInvalid`: boolean value which indicates that the model can be set with values that did
* not validate correctly instead of the default behavior of setting the model to undefined.
* - `getterSetter`: boolean value which determines whether or not to treat functions bound to
- `ngModel` as getters/setters.
+ * `ngModel` as getters/setters.
* - `timezone`: Defines the timezone to be used to read/write the `Date` instance in the model for
- * `<input type="date">`, `<input type="time">`, ... . It understands UTC/GMT and the
+ * `<input type="date" />`, `<input type="time" />`, ... . It understands UTC/GMT and the
* continental US time zone abbreviations, but for general use, use a time zone offset, for
* example, `'+0430'` (4 hours, 30 minutes east of the Greenwich meridian)
* If not specified, the timezone of the browser will be used.
*
- * @example
-
- The following example shows how to override immediate updates. Changes on the inputs within the
- form will update the model only when the control loses focus (blur event). If `escape` key is
- pressed while the input field is focused, the value is reset to the value in the current model.
-
- <example name="ngModelOptions-directive-blur" module="optionsExample">
- <file name="index.html">
- <div ng-controller="ExampleController">
- <form name="userForm">
- <label>Name:
- <input type="text" name="userName"
- ng-model="user.name"
- ng-model-options="{ updateOn: 'blur' }"
- ng-keyup="cancel($event)" />
- </label><br />
- <label>Other data:
- <input type="text" ng-model="user.data" />
- </label><br />
- </form>
- <pre>user.name = <span ng-bind="user.name"></span></pre>
- <pre>user.data = <span ng-bind="user.data"></span></pre>
- </div>
- </file>
- <file name="app.js">
- angular.module('optionsExample', [])
- .controller('ExampleController', ['$scope', function($scope) {
- $scope.user = { name: 'John', data: '' };
-
- $scope.cancel = function(e) {
- if (e.keyCode == 27) {
- $scope.userForm.userName.$rollbackViewValue();
- }
- };
- }]);
- </file>
- <file name="protractor.js" type="protractor">
- var model = element(by.binding('user.name'));
- var input = element(by.model('user.name'));
- var other = element(by.model('user.data'));
-
- it('should allow custom events', function() {
- input.sendKeys(' Doe');
- input.click();
- expect(model.getText()).toEqual('John');
- other.click();
- expect(model.getText()).toEqual('John Doe');
- });
-
- it('should $rollbackViewValue when model changes', function() {
- input.sendKeys(' Doe');
- expect(input.getAttribute('value')).toEqual('John Doe');
- input.sendKeys(protractor.Key.ESCAPE);
- expect(input.getAttribute('value')).toEqual('John');
- other.click();
- expect(model.getText()).toEqual('John');
- });
- </file>
- </example>
-
- This one shows how to debounce model changes. Model will be updated only 1 sec after last change.
- If the `Clear` button is pressed, any debounced action is canceled and the value becomes empty.
-
- <example name="ngModelOptions-directive-debounce" module="optionsExample">
- <file name="index.html">
- <div ng-controller="ExampleController">
- <form name="userForm">
- <label>Name:
- <input type="text" name="userName"
- ng-model="user.name"
- ng-model-options="{ debounce: 1000 }" />
- </label>
- <button ng-click="userForm.userName.$rollbackViewValue(); user.name=''">Clear</button>
- <br />
- </form>
- <pre>user.name = <span ng-bind="user.name"></span></pre>
- </div>
- </file>
- <file name="app.js">
- angular.module('optionsExample', [])
- .controller('ExampleController', ['$scope', function($scope) {
- $scope.user = { name: 'Igor' };
- }]);
- </file>
- </example>
-
- This one shows how to bind to getter/setters:
-
- <example name="ngModelOptions-directive-getter-setter" module="getterSetterExample">
- <file name="index.html">
- <div ng-controller="ExampleController">
- <form name="userForm">
- <label>Name:
- <input type="text" name="userName"
- ng-model="user.name"
- ng-model-options="{ getterSetter: true }" />
- </label>
- </form>
- <pre>user.name = <span ng-bind="user.name()"></span></pre>
- </div>
- </file>
- <file name="app.js">
- angular.module('getterSetterExample', [])
- .controller('ExampleController', ['$scope', function($scope) {
- var _name = 'Brian';
- $scope.user = {
- name: function(newName) {
- // Note that newName can be undefined for two reasons:
- // 1. Because it is called as a getter and thus called with no arguments
- // 2. Because the property should actually be set to undefined. This happens e.g. if the
- // input is invalid
- return arguments.length ? (_name = newName) : _name;
- }
- };
- }]);
- </file>
- </example>
*/
var ngModelOptionsDirective = function() {
- return {
- restrict: 'A',
- controller: ['$scope', '$attrs', function($scope, $attrs) {
- var that = this;
- this.$options = copy($scope.$eval($attrs.ngModelOptions));
- // Allow adding/overriding bound events
- if (isDefined(this.$options.updateOn)) {
- this.$options.updateOnDefault = false;
- // extract "default" pseudo-event from list of events that can trigger a model update
- this.$options.updateOn = trim(this.$options.updateOn.replace(DEFAULT_REGEXP, function() {
- that.$options.updateOnDefault = true;
- return ' ';
- }));
- } else {
- this.$options.updateOnDefault = true;
- }
- }]
- };
-};
-
-
-
-// helper methods
-function addSetValidityMethod(context) {
- var ctrl = context.ctrl,
- $element = context.$element,
- classCache = {},
- set = context.set,
- unset = context.unset,
- $animate = context.$animate;
-
- classCache[INVALID_CLASS] = !(classCache[VALID_CLASS] = $element.hasClass(VALID_CLASS));
-
- ctrl.$setValidity = setValidity;
-
- function setValidity(validationErrorKey, state, controller) {
- if (isUndefined(state)) {
- createAndSet('$pending', validationErrorKey, controller);
- } else {
- unsetAndCleanup('$pending', validationErrorKey, controller);
- }
- if (!isBoolean(state)) {
- unset(ctrl.$error, validationErrorKey, controller);
- unset(ctrl.$$success, validationErrorKey, controller);
- } else {
- if (state) {
- unset(ctrl.$error, validationErrorKey, controller);
- set(ctrl.$$success, validationErrorKey, controller);
- } else {
- set(ctrl.$error, validationErrorKey, controller);
- unset(ctrl.$$success, validationErrorKey, controller);
- }
- }
- if (ctrl.$pending) {
- cachedToggleClass(PENDING_CLASS, true);
- ctrl.$valid = ctrl.$invalid = undefined;
- toggleValidationCss('', null);
- } else {
- cachedToggleClass(PENDING_CLASS, false);
- ctrl.$valid = isObjectEmpty(ctrl.$error);
- ctrl.$invalid = !ctrl.$valid;
- toggleValidationCss('', ctrl.$valid);
- }
-
- // re-read the state as the set/unset methods could have
- // combined state in ctrl.$error[validationError] (used for forms),
- // where setting/unsetting only increments/decrements the value,
- // and does not replace it.
- var combinedState;
- if (ctrl.$pending && ctrl.$pending[validationErrorKey]) {
- combinedState = undefined;
- } else if (ctrl.$error[validationErrorKey]) {
- combinedState = false;
- } else if (ctrl.$$success[validationErrorKey]) {
- combinedState = true;
- } else {
- combinedState = null;
- }
-
- toggleValidationCss(validationErrorKey, combinedState);
- ctrl.$$parentForm.$setValidity(validationErrorKey, combinedState, ctrl);
+ NgModelOptionsController.$inject = ['$attrs', '$scope'];
+ function NgModelOptionsController($attrs, $scope) {
+ this.$$attrs = $attrs;
+ this.$$scope = $scope;
}
+ NgModelOptionsController.prototype = {
+ $onInit: function() {
+ var parentOptions = this.parentCtrl ? this.parentCtrl.$options : defaultModelOptions;
+ var modelOptionsDefinition = this.$$scope.$eval(this.$$attrs.ngModelOptions);
- function createAndSet(name, value, controller) {
- if (!ctrl[name]) {
- ctrl[name] = {};
+ this.$options = parentOptions.createChild(modelOptionsDefinition);
}
- set(ctrl[name], value, controller);
- }
-
- function unsetAndCleanup(name, value, controller) {
- if (ctrl[name]) {
- unset(ctrl[name], value, controller);
- }
- if (isObjectEmpty(ctrl[name])) {
- ctrl[name] = undefined;
- }
- }
-
- function cachedToggleClass(className, switchValue) {
- if (switchValue && !classCache[className]) {
- $animate.addClass($element, className);
- classCache[className] = true;
- } else if (!switchValue && classCache[className]) {
- $animate.removeClass($element, className);
- classCache[className] = false;
- }
- }
+ };
- function toggleValidationCss(validationErrorKey, isValid) {
- validationErrorKey = validationErrorKey ? '-' + snake_case(validationErrorKey, '-') : '';
+ return {
+ restrict: 'A',
+ // ngModelOptions needs to run before ngModel and input directives
+ priority: 10,
+ require: {parentCtrl: '?^^ngModelOptions'},
+ bindToController: true,
+ controller: NgModelOptionsController
+ };
+};
- cachedToggleClass(VALID_CLASS + validationErrorKey, isValid === true);
- cachedToggleClass(INVALID_CLASS + validationErrorKey, isValid === false);
- }
-}
-function isObjectEmpty(obj) {
- if (obj) {
- for (var prop in obj) {
- if (obj.hasOwnProperty(prop)) {
- return false;
- }
+// shallow copy over values from `src` that are not already specified on `dst`
+function defaults(dst, src) {
+ forEach(src, function(value, key) {
+ if (!isDefined(dst[key])) {
+ dst[key] = value;
}
- }
- return true;
+ });
}
/**
@@ -26363,7 +29609,7 @@ function isObjectEmpty(obj) {
* but the one wrapped in `ngNonBindable` is left alone.
*
* @example
- <example>
+ <example name="ng-non-bindable">
<file name="index.html">
<div>Normal: {{1 + 2}}</div>
<div ng-non-bindable>Ignored: {{1 + 2}}</div>
@@ -26378,6 +29624,8 @@ function isObjectEmpty(obj) {
*/
var ngNonBindableDirective = ngDirective({ terminal: true, priority: 1000 });
+/* exported ngOptionsDirective */
+
/* global jqLiteRemove */
var ngOptionsMinErr = minErr('ngOptions');
@@ -26393,13 +29641,12 @@ var ngOptionsMinErr = minErr('ngOptions');
* elements for the `<select>` element using the array or object obtained by evaluating the
* `ngOptions` comprehension expression.
*
- * In many cases, `ngRepeat` can be used on `<option>` elements instead of `ngOptions` to achieve a
- * similar result. However, `ngOptions` provides some benefits such as reducing memory and
- * increasing speed by not creating a new scope for each repeated instance, as well as providing
- * more flexibility in how the `<select>`'s model is assigned via the `select` **`as`** part of the
- * comprehension expression. `ngOptions` should be used when the `<select>` model needs to be bound
- * to a non-string value. This is because an option element can only be bound to string values at
- * present.
+ * In many cases, {@link ng.directive:ngRepeat ngRepeat} can be used on `<option>` elements instead of
+ * `ngOptions` to achieve a similar result. However, `ngOptions` provides some benefits:
+ * - more flexibility in how the `<select>`'s model is assigned via the `select` **`as`** part of the
+ * comprehension expression
+ * - reduced memory consumption by not creating a new scope for each repeated instance
+ * - increased render speed by creating the options in a documentFragment instead of individually
*
* When an item in the `<select>` menu is selected, the array element or object property
* represented by the selected option will be bound to the model identified by the `ngModel`
@@ -26488,13 +29735,8 @@ var ngOptionsMinErr = minErr('ngOptions');
* is not matched against any `<option>` and the `<select>` appears as having no selected value.
*
*
- * @param {string} ngModel Assignable angular expression to data-bind to.
- * @param {string=} name Property name of the form under which the control is published.
- * @param {string=} required The control is considered valid only if value is entered.
- * @param {string=} ngRequired Adds `required` attribute and `required` validation constraint to
- * the element when the ngRequired expression evaluates to true. Use `ngRequired` instead of
- * `required` when you want to data-bind to the `required` attribute.
- * @param {comprehension_expression=} ngOptions in one of the following forms:
+ * @param {string} ngModel Assignable AngularJS expression to data-bind to.
+ * @param {comprehension_expression} ngOptions in one of the following forms:
*
* * for array data sources:
* * `label` **`for`** `value` **`in`** `array`
@@ -26533,9 +29775,16 @@ var ngOptionsMinErr = minErr('ngOptions');
* used to identify the objects in the array. The `trackexpr` will most likely refer to the
* `value` variable (e.g. `value.propertyName`). With this the selection is preserved
* even when the options are recreated (e.g. reloaded from the server).
+ * @param {string=} name Property name of the form under which the control is published.
+ * @param {string=} required The control is considered valid only if value is entered.
+ * @param {string=} ngRequired Adds `required` attribute and `required` validation constraint to
+ * the element when the ngRequired expression evaluates to true. Use `ngRequired` instead of
+ * `required` when you want to data-bind to the `required` attribute.
+ * @param {string=} ngAttrSize sets the size of the select element dynamically. Uses the
+ * {@link guide/interpolation#-ngattr-for-binding-to-arbitrary-attributes ngAttr} directive.
*
* @example
- <example module="selectExample">
+ <example module="selectExample" name="select">
<file name="index.html">
<script>
angular.module('selectExample', [])
@@ -26608,9 +29857,9 @@ var ngOptionsMinErr = minErr('ngOptions');
</example>
*/
-// jshint maxlen: false
-// //00001111111111000000000002222222222000000000000000000000333333333300000000000000000000000004444444444400000000000005555555555555550000000006666666666666660000000777777777777777000000000000000888888888800000000000000000009999999999
-var NG_OPTIONS_REGEXP = /^\s*([\s\S]+?)(?:\s+as\s+([\s\S]+?))?(?:\s+group\s+by\s+([\s\S]+?))?(?:\s+disable\s+when\s+([\s\S]+?))?\s+for\s+(?:([\$\w][\$\w]*)|(?:\(\s*([\$\w][\$\w]*)\s*,\s*([\$\w][\$\w]*)\s*\)))\s+in\s+([\s\S]+?)(?:\s+track\s+by\s+([\s\S]+?))?$/;
+/* eslint-disable max-len */
+// //00001111111111000000000002222222222000000000000000000000333333333300000000000000000000000004444444444400000000000005555555555555000000000666666666666600000007777777777777000000000000000888888888800000000000000000009999999999
+var NG_OPTIONS_REGEXP = /^\s*([\s\S]+?)(?:\s+as\s+([\s\S]+?))?(?:\s+group\s+by\s+([\s\S]+?))?(?:\s+disable\s+when\s+([\s\S]+?))?\s+for\s+(?:([$\w][$\w]*)|(?:\(\s*([$\w][$\w]*)\s*,\s*([$\w][$\w]*)\s*\)))\s+in\s+([\s\S]+?)(?:\s+track\s+by\s+([\s\S]+?))?$/;
// 1: value expression (valueFn)
// 2: label expression (displayFn)
// 3: group by expression (groupByFn)
@@ -26620,19 +29869,19 @@ var NG_OPTIONS_REGEXP = /^\s*([\s\S]+?)(?:\s+as\s+([\s\S]+?))?(?:\s+group\s+by\s
// 7: object item value variable name
// 8: collection expression
// 9: track by expression
-// jshint maxlen: 100
+/* eslint-enable */
-var ngOptionsDirective = ['$compile', '$parse', function($compile, $parse) {
+var ngOptionsDirective = ['$compile', '$document', '$parse', function($compile, $document, $parse) {
function parseOptionsExpression(optionsExp, selectElement, scope) {
var match = optionsExp.match(NG_OPTIONS_REGEXP);
if (!(match)) {
throw ngOptionsMinErr('iexp',
- "Expected expression in form of " +
- "'_select_ (as _label_)? for (_key_,)?_value_ in _collection_'" +
- " but got '{0}'. Element: {1}",
+ 'Expected expression in form of ' +
+ '\'_select_ (as _label_)? for (_key_,)?_value_ in _collection_\'' +
+ ' but got \'{0}\'. Element: {1}',
optionsExp, startingTag(selectElement));
}
@@ -26720,8 +29969,8 @@ var ngOptionsDirective = ['$compile', '$parse', function($compile, $parse) {
var key = (optionValues === optionValuesKeys) ? index : optionValuesKeys[index];
var value = optionValues[key];
- var locals = getLocals(optionValues[key], key);
- var selectValue = getTrackByValueFn(optionValues[key], locals);
+ var locals = getLocals(value, key);
+ var selectValue = getTrackByValueFn(value, locals);
watchedArray.push(selectValue);
// Only need to watch the displayFn if there is a specific label expression
@@ -26774,7 +30023,7 @@ var ngOptionsDirective = ['$compile', '$parse', function($compile, $parse) {
getViewValueFromOption: function(option) {
// If the viewValue could be an object that may be mutated by the application,
// we need to make a copy and not return the reference to the value on the option.
- return trackBy ? angular.copy(option.viewValue) : option.viewValue;
+ return trackBy ? copy(option.viewValue) : option.viewValue;
}
};
}
@@ -26784,8 +30033,8 @@ var ngOptionsDirective = ['$compile', '$parse', function($compile, $parse) {
// we can't just jqLite('<option>') since jqLite is not smart enough
// to create it in <select> and IE barfs otherwise.
- var optionTemplate = document.createElement('option'),
- optGroupTemplate = document.createElement('optgroup');
+ var optionTemplate = window.document.createElement('option'),
+ optGroupTemplate = window.document.createElement('optgroup');
function ngOptionsPostLink(scope, selectElement, attr, ctrls) {
@@ -26795,72 +30044,65 @@ var ngOptionsDirective = ['$compile', '$parse', function($compile, $parse) {
// The emptyOption allows the application developer to provide their own custom "empty"
// option when the viewValue does not match any of the option values.
- var emptyOption;
for (var i = 0, children = selectElement.children(), ii = children.length; i < ii; i++) {
if (children[i].value === '') {
- emptyOption = children.eq(i);
+ selectCtrl.hasEmptyOption = true;
+ selectCtrl.emptyOption = children.eq(i);
break;
}
}
- var providedEmptyOption = !!emptyOption;
+ var providedEmptyOption = !!selectCtrl.emptyOption;
var unknownOption = jqLite(optionTemplate.cloneNode(false));
unknownOption.val('?');
var options;
var ngOptions = parseOptionsExpression(attr.ngOptions, selectElement, scope);
-
-
- var renderEmptyOption = function() {
- if (!providedEmptyOption) {
- selectElement.prepend(emptyOption);
- }
- selectElement.val('');
- emptyOption.prop('selected', true); // needed for IE
- emptyOption.attr('selected', true);
- };
-
- var removeEmptyOption = function() {
- if (!providedEmptyOption) {
- emptyOption.remove();
- }
- };
-
-
- var renderUnknownOption = function() {
- selectElement.prepend(unknownOption);
- selectElement.val('?');
- unknownOption.prop('selected', true); // needed for IE
- unknownOption.attr('selected', true);
- };
-
- var removeUnknownOption = function() {
- unknownOption.remove();
+ // This stores the newly created options before they are appended to the select.
+ // Since the contents are removed from the fragment when it is appended,
+ // we only need to create it once.
+ var listFragment = $document[0].createDocumentFragment();
+
+ // Overwrite the implementation. ngOptions doesn't use hashes
+ selectCtrl.generateUnknownOptionValue = function(val) {
+ return '?';
};
// Update the controller methods for multiple selectable options
if (!multiple) {
selectCtrl.writeValue = function writeNgOptionsValue(value) {
+ var selectedOption = options.selectValueMap[selectElement.val()];
var option = options.getOptionFromViewValue(value);
- if (option && !option.disabled) {
+ // Make sure to remove the selected attribute from the previously selected option
+ // Otherwise, screen readers might get confused
+ if (selectedOption) selectedOption.element.removeAttribute('selected');
+
+ if (option) {
+ // Don't update the option when it is already selected.
+ // For example, the browser will select the first option by default. In that case,
+ // most properties are set automatically - except the `selected` attribute, which we
+ // set always
+
if (selectElement[0].value !== option.selectValue) {
- removeUnknownOption();
- removeEmptyOption();
+ selectCtrl.removeUnknownOption();
+ selectCtrl.unselectEmptyOption();
selectElement[0].value = option.selectValue;
option.element.selected = true;
- option.element.setAttribute('selected', 'selected');
}
+
+ option.element.setAttribute('selected', 'selected');
} else {
- if (value === null || providedEmptyOption) {
- removeUnknownOption();
- renderEmptyOption();
+
+ if (providedEmptyOption) {
+ selectCtrl.selectEmptyOption();
+ } else if (selectCtrl.unknownOption.parent().length) {
+ selectCtrl.updateUnknownOption(value);
} else {
- removeEmptyOption();
- renderUnknownOption();
+ selectCtrl.renderUnknownOption(value);
}
}
};
@@ -26870,8 +30112,8 @@ var ngOptionsDirective = ['$compile', '$parse', function($compile, $parse) {
var selectedOption = options.selectValueMap[selectElement.val()];
if (selectedOption && !selectedOption.disabled) {
- removeEmptyOption();
- removeUnknownOption();
+ selectCtrl.unselectEmptyOption();
+ selectCtrl.removeUnknownOption();
return options.getViewValueFromOption(selectedOption);
}
return null;
@@ -26879,6 +30121,7 @@ var ngOptionsDirective = ['$compile', '$parse', function($compile, $parse) {
// If we are using `track by` then we must watch the tracked value on the model
// since ngModel only watches for object identity change
+ // FIXME: When a user selects an option, this watch will fire needlessly
if (ngOptions.trackBy) {
scope.$watch(
function() { return ngOptions.getTrackByValue(ngModelCtrl.$viewValue); },
@@ -26888,22 +30131,17 @@ var ngOptionsDirective = ['$compile', '$parse', function($compile, $parse) {
} else {
- ngModelCtrl.$isEmpty = function(value) {
- return !value || value.length === 0;
- };
+ selectCtrl.writeValue = function writeNgOptionsMultiple(values) {
+ // Only set `<option>.selected` if necessary, in order to prevent some browsers from
+ // scrolling to `<option>` elements that are outside the `<select>` element's viewport.
+ var selectedOptions = values && values.map(getAndUpdateSelectedOption) || [];
- selectCtrl.writeValue = function writeNgOptionsMultiple(value) {
options.items.forEach(function(option) {
- option.element.selected = false;
+ if (option.element.selected && !includes(selectedOptions, option)) {
+ option.element.selected = false;
+ }
});
-
- if (value) {
- value.forEach(function(item) {
- var option = options.getOptionFromViewValue(item);
- if (option && !option.disabled) option.element.selected = true;
- });
- }
};
@@ -26936,23 +30174,48 @@ var ngOptionsDirective = ['$compile', '$parse', function($compile, $parse) {
}
}
-
if (providedEmptyOption) {
// we need to remove it before calling selectElement.empty() because otherwise IE will
// remove the label from the element. wtf?
- emptyOption.remove();
+ selectCtrl.emptyOption.remove();
// compile the element since there might be bindings in it
- $compile(emptyOption)(scope);
+ $compile(selectCtrl.emptyOption)(scope);
+
+ if (selectCtrl.emptyOption[0].nodeType === NODE_TYPE_COMMENT) {
+ // This means the empty option has currently no actual DOM node, probably because
+ // it has been modified by a transclusion directive.
+ selectCtrl.hasEmptyOption = false;
+
+ // Redefine the registerOption function, which will catch
+ // options that are added by ngIf etc. (rendering of the node is async because of
+ // lazy transclusion)
+ selectCtrl.registerOption = function(optionScope, optionEl) {
+ if (optionEl.val() === '') {
+ selectCtrl.hasEmptyOption = true;
+ selectCtrl.emptyOption = optionEl;
+ selectCtrl.emptyOption.removeClass('ng-scope');
+ // This ensures the new empty option is selected if previously no option was selected
+ ngModelCtrl.$render();
+
+ optionEl.on('$destroy', function() {
+ selectCtrl.hasEmptyOption = false;
+ selectCtrl.emptyOption = undefined;
+ });
+ }
+ };
+
+ } else {
+ // remove the class, which is added automatically because we recompile the element and it
+ // becomes the compilation root
+ selectCtrl.emptyOption.removeClass('ng-scope');
+ }
- // remove the class, which is added automatically because we recompile the element and it
- // becomes the compilation root
- emptyOption.removeClass('ng-scope');
- } else {
- emptyOption = jqLite(optionTemplate.cloneNode(false));
}
+ selectElement.empty();
+
// We need to do this here to ensure that the options object is defined
// when we first hit it in writeNgOptionsValue
updateOptions();
@@ -26962,6 +30225,20 @@ var ngOptionsDirective = ['$compile', '$parse', function($compile, $parse) {
// ------------------------------------------------------------------ //
+ function addOptionElement(option, parent) {
+ var optionElement = optionTemplate.cloneNode(false);
+ parent.appendChild(optionElement);
+ updateOptionElement(option, optionElement);
+ }
+
+ function getAndUpdateSelectedOption(viewValue) {
+ var option = options.getOptionFromViewValue(viewValue);
+ var element = option && option.element;
+
+ if (element && !element.selected) element.selected = true;
+
+ return option;
+ }
function updateOptionElement(option, element) {
option.element = element;
@@ -26975,143 +30252,78 @@ var ngOptionsDirective = ['$compile', '$parse', function($compile, $parse) {
element.label = option.label;
element.textContent = option.label;
}
- if (option.value !== element.value) element.value = option.selectValue;
- }
-
- function addOrReuseElement(parent, current, type, templateElement) {
- var element;
- // Check whether we can reuse the next element
- if (current && lowercase(current.nodeName) === type) {
- // The next element is the right type so reuse it
- element = current;
- } else {
- // The next element is not the right type so create a new one
- element = templateElement.cloneNode(false);
- if (!current) {
- // There are no more elements so just append it to the select
- parent.appendChild(element);
- } else {
- // The next element is not a group so insert the new one
- parent.insertBefore(element, current);
- }
- }
- return element;
- }
-
-
- function removeExcessElements(current) {
- var next;
- while (current) {
- next = current.nextSibling;
- jqLiteRemove(current);
- current = next;
- }
+ element.value = option.selectValue;
}
+ function updateOptions() {
+ var previousValue = options && selectCtrl.readValue();
- function skipEmptyAndUnknownOptions(current) {
- var emptyOption_ = emptyOption && emptyOption[0];
- var unknownOption_ = unknownOption && unknownOption[0];
-
- // We cannot rely on the extracted empty option being the same as the compiled empty option,
- // because the compiled empty option might have been replaced by a comment because
- // it had an "element" transclusion directive on it (such as ngIf)
- if (emptyOption_ || unknownOption_) {
- while (current &&
- (current === emptyOption_ ||
- current === unknownOption_ ||
- current.nodeType === NODE_TYPE_COMMENT ||
- current.value === '')) {
- current = current.nextSibling;
+ // We must remove all current options, but cannot simply set innerHTML = null
+ // since the providedEmptyOption might have an ngIf on it that inserts comments which we
+ // must preserve.
+ // Instead, iterate over the current option elements and remove them or their optgroup
+ // parents
+ if (options) {
+
+ for (var i = options.items.length - 1; i >= 0; i--) {
+ var option = options.items[i];
+ if (isDefined(option.group)) {
+ jqLiteRemove(option.element.parentNode);
+ } else {
+ jqLiteRemove(option.element);
+ }
}
}
- return current;
- }
-
-
- function updateOptions() {
-
- var previousValue = options && selectCtrl.readValue();
options = ngOptions.getOptions();
- var groupMap = {};
- var currentElement = selectElement[0].firstChild;
+ var groupElementMap = {};
// Ensure that the empty option is always there if it was explicitly provided
if (providedEmptyOption) {
- selectElement.prepend(emptyOption);
+ selectElement.prepend(selectCtrl.emptyOption);
}
- currentElement = skipEmptyAndUnknownOptions(currentElement);
-
- options.items.forEach(function updateOption(option) {
- var group;
+ options.items.forEach(function addOption(option) {
var groupElement;
- var optionElement;
if (isDefined(option.group)) {
// This option is to live in a group
// See if we have already created this group
- group = groupMap[option.group];
+ groupElement = groupElementMap[option.group];
- if (!group) {
+ if (!groupElement) {
- // We have not already created this group
- groupElement = addOrReuseElement(selectElement[0],
- currentElement,
- 'optgroup',
- optGroupTemplate);
- // Move to the next element
- currentElement = groupElement.nextSibling;
+ groupElement = optGroupTemplate.cloneNode(false);
+ listFragment.appendChild(groupElement);
// Update the label on the group element
- groupElement.label = option.group;
+ // "null" is special cased because of Safari
+ groupElement.label = option.group === null ? 'null' : option.group;
// Store it for use later
- group = groupMap[option.group] = {
- groupElement: groupElement,
- currentOptionElement: groupElement.firstChild
- };
-
+ groupElementMap[option.group] = groupElement;
}
- // So now we have a group for this option we add the option to the group
- optionElement = addOrReuseElement(group.groupElement,
- group.currentOptionElement,
- 'option',
- optionTemplate);
- updateOptionElement(option, optionElement);
- // Move to the next element
- group.currentOptionElement = optionElement.nextSibling;
+ addOptionElement(option, groupElement);
} else {
// This option is not in a group
- optionElement = addOrReuseElement(selectElement[0],
- currentElement,
- 'option',
- optionTemplate);
- updateOptionElement(option, optionElement);
- // Move to the next element
- currentElement = optionElement.nextSibling;
+ addOptionElement(option, listFragment);
}
});
-
- // Now remove all excess options and group
- Object.keys(groupMap).forEach(function(key) {
- removeExcessElements(groupMap[key].currentOptionElement);
- });
- removeExcessElements(currentElement);
+ selectElement[0].appendChild(listFragment);
ngModelCtrl.$render();
// Check to see if the value has changed due to the update to the options
if (!ngModelCtrl.$isEmpty(previousValue)) {
var nextValue = selectCtrl.readValue();
- if (ngOptions.trackBy ? !equals(previousValue, nextValue) : previousValue !== nextValue) {
+ var isNotPrimitive = ngOptions.trackBy || multiple;
+ if (isNotPrimitive ? !equals(previousValue, nextValue) : previousValue !== nextValue) {
ngModelCtrl.$setViewValue(nextValue);
ngModelCtrl.$render();
}
@@ -27228,7 +30440,7 @@ var ngOptionsDirective = ['$compile', '$parse', function($compile, $parse) {
* @param {number=} offset Offset to deduct from the total number.
*
* @example
- <example module="pluralizeExample">
+ <example module="pluralizeExample" name="ng-pluralize">
<file name="index.html">
<script>
angular.module('pluralizeExample', [])
@@ -27342,7 +30554,7 @@ var ngPluralizeDirective = ['$locale', '$interpolate', '$log', function($locale,
scope.$watch(numberExp, function ngPluralizeWatchAction(newVal) {
var count = parseFloat(newVal);
- var countIsNaN = isNaN(count);
+ var countIsNaN = isNumberNaN(count);
if (!countIsNaN && !(count in whens)) {
// If an explicit number rule such as 1, 2, 3... is defined, just use it.
@@ -27351,13 +30563,13 @@ var ngPluralizeDirective = ['$locale', '$interpolate', '$log', function($locale,
}
// If both `count` and `lastCount` are NaN, we don't need to re-register a watch.
- // In JS `NaN !== NaN`, so we have to exlicitly check.
- if ((count !== lastCount) && !(countIsNaN && isNumber(lastCount) && isNaN(lastCount))) {
+ // In JS `NaN !== NaN`, so we have to explicitly check.
+ if ((count !== lastCount) && !(countIsNaN && isNumberNaN(lastCount))) {
watchRemover();
var whenExpFn = whensExpFns[count];
if (isUndefined(whenExpFn)) {
if (newVal != null) {
- $log.debug("ngPluralize: no rule defined for '" + count + "' in " + whenExp);
+ $log.debug('ngPluralize: no rule defined for \'' + count + '\' in ' + whenExp);
}
watchRemover = noop;
updateElementText();
@@ -27375,10 +30587,13 @@ var ngPluralizeDirective = ['$locale', '$interpolate', '$log', function($locale,
};
}];
+/* exported ngRepeatDirective */
+
/**
* @ngdoc directive
* @name ngRepeat
* @multiElement
+ * @restrict A
*
* @description
* The `ngRepeat` directive instantiates a template once per item from a collection. Each template
@@ -27411,17 +30626,23 @@ var ngPluralizeDirective = ['$locale', '$interpolate', '$log', function($locale,
* <div ng-repeat="(key, value) in myObj"> ... </div>
* ```
*
- * You need to be aware that the JavaScript specification does not define the order of keys
- * returned for an object. (To mitigate this in Angular 1.3 the `ngRepeat` directive
- * used to sort the keys alphabetically.)
+ * However, there are a few limitations compared to array iteration:
*
- * Version 1.4 removed the alphabetic sorting. We now rely on the order returned by the browser
- * when running `for key in myObj`. It seems that browsers generally follow the strategy of providing
- * keys in the order in which they were defined, although there are exceptions when keys are deleted
- * and reinstated. See the [MDN page on `delete` for more info](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/delete#Cross-browser_notes).
+ * - The JavaScript specification does not define the order of keys
+ * returned for an object, so Angular relies on the order returned by the browser
+ * when running `for key in myObj`. Browsers generally follow the strategy of providing
+ * keys in the order in which they were defined, although there are exceptions when keys are deleted
+ * and reinstated. See the
+ * [MDN page on `delete` for more info](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/delete#Cross-browser_notes).
*
- * If this is not desired, the recommended workaround is to convert your object into an array
- * that is sorted into the order that you prefer before providing it to `ngRepeat`. You could
+ * - `ngRepeat` will silently *ignore* object keys starting with `$`, because
+ * it's a prefix used by Angular for public (`$`) and private (`$$`) properties.
+ *
+ * - The built-in filters {@link ng.orderBy orderBy} and {@link ng.filter filter} do not work with
+ * objects, and will throw an error if used with one.
+ *
+ * If you are hitting any of these limitations, the recommended workaround is to convert your object into an array
+ * that is sorted into the order that you prefer before providing it to `ngRepeat`. You could
* do this with a filter such as [toArrayFilter](http://ngmodules.org/modules/angular-toArrayFilter)
* or implement a `$watch` on the object yourself.
*
@@ -27429,7 +30650,7 @@ var ngPluralizeDirective = ['$locale', '$interpolate', '$log', function($locale,
* # Tracking and Duplicates
*
* `ngRepeat` uses {@link $rootScope.Scope#$watchCollection $watchCollection} to detect changes in
- * the collection. When a change happens, ngRepeat then makes the corresponding changes to the DOM:
+ * the collection. When a change happens, `ngRepeat` then makes the corresponding changes to the DOM:
*
* * When an item is added, a new instance of the template is added to the DOM.
* * When an item is removed, its template instance is removed from the DOM.
@@ -27437,7 +30658,7 @@ var ngPluralizeDirective = ['$locale', '$interpolate', '$log', function($locale,
*
* To minimize creation of DOM elements, `ngRepeat` uses a function
* to "keep track" of all items in the collection and their corresponding DOM elements.
- * For example, if an item is added to the collection, ngRepeat will know that all other items
+ * For example, if an item is added to the collection, `ngRepeat` will know that all other items
* already have DOM elements, and will not re-render them.
*
* The default tracking function (which tracks items by their identity) does not allow
@@ -27464,19 +30685,29 @@ var ngPluralizeDirective = ['$locale', '$interpolate', '$log', function($locale,
* ```
*
* <div class="alert alert-success">
- * If you are working with objects that have an identifier property, you should track
- * by the identifier instead of the whole object. Should you reload your data later, `ngRepeat`
+ * If you are working with objects that have a unique identifier property, you should track
+ * by this identifier instead of the object instance. Should you reload your data later, `ngRepeat`
* will not have to rebuild the DOM elements for items it has already rendered, even if the
* JavaScript objects in the collection have been substituted for new ones. For large collections,
- * this signifincantly improves rendering performance. If you don't have a unique identifier,
+ * this significantly improves rendering performance. If you don't have a unique identifier,
* `track by $index` can also provide a performance boost.
* </div>
+ *
* ```html
* <div ng-repeat="model in collection track by model.id">
* {{model.name}}
* </div>
* ```
*
+ * <br />
+ * <div class="alert alert-warning">
+ * Avoid using `track by $index` when the repeated template contains
+ * {@link guide/expression#one-time-binding one-time bindings}. In such cases, the `nth` DOM
+ * element will always be matched with the `nth` item of the array, so the bindings on that element
+ * will not be updated even when the corresponding item changes, essentially causing the view to get
+ * out-of-sync with the underlying data.
+ * </div>
+ *
* When no `track by` expression is provided, it is equivalent to tracking by the built-in
* `$id` function, which tracks items by their identity:
* ```html
@@ -27485,15 +30716,17 @@ var ngPluralizeDirective = ['$locale', '$interpolate', '$log', function($locale,
* </div>
* ```
*
+ * <br />
* <div class="alert alert-warning">
* **Note:** `track by` must always be the last expression:
* </div>
* ```
- * <div ng-repeat="model in collection | orderBy: 'id' as filtered_result track by model.id">
- * {{model.name}}
- * </div>
+ * <div ng-repeat="model in collection | orderBy: 'id' as filtered_result track by model.id">
+ * {{model.name}}
+ * </div>
* ```
*
+ *
* # Special repeat start and end points
* To repeat a series of elements instead of just one parent element, ngRepeat (as well as other ng directives) supports extending
* the range of the repeater by defining explicit start and end points by using **ng-repeat-start** and **ng-repeat-end** respectively.
@@ -27539,11 +30772,13 @@ var ngPluralizeDirective = ['$locale', '$interpolate', '$log', function($locale,
* as **data-ng-repeat-start**, **x-ng-repeat-start** and **ng:repeat-start**).
*
* @animations
- * **.enter** - when a new item is added to the list or when an item is revealed after a filter
- *
- * **.leave** - when an item is removed from the list or when an item is filtered out
+ * | Animation | Occurs |
+ * |----------------------------------|-------------------------------------|
+ * | {@link ng.$animate#enter enter} | when a new item is added to the list or when an item is revealed after a filter |
+ * | {@link ng.$animate#leave leave} | when an item is removed from the list or when an item is filtered out |
+ * | {@link ng.$animate#move move } | when an adjacent item is filtered out causing a reorder or when the item contents are reordered |
*
- * **.move** - when an adjacent item is filtered out causing a reorder or when the item contents are reordered
+ * See the example below for defining CSS animations with ngRepeat.
*
* @element ANY
* @scope
@@ -27597,34 +30832,39 @@ var ngPluralizeDirective = ['$locale', '$interpolate', '$log', function($locale,
* For example: `item in items | filter : x | orderBy : order | limitTo : limit as results` .
*
* @example
- * This example initializes the scope to a list of names and
- * then uses `ngRepeat` to display every person:
- <example module="ngAnimate" deps="angular-animate.js" animations="true">
+ * This example uses `ngRepeat` to display a list of people. A filter is used to restrict the displayed
+ * results by name or by age. New (entering) and removed (leaving) items are animated.
+ <example module="ngRepeat" name="ngRepeat" deps="angular-animate.js" animations="true" name="ng-repeat">
<file name="index.html">
- <div ng-init="friends = [
- {name:'John', age:25, gender:'boy'},
- {name:'Jessie', age:30, gender:'girl'},
- {name:'Johanna', age:28, gender:'girl'},
- {name:'Joy', age:15, gender:'girl'},
- {name:'Mary', age:28, gender:'girl'},
- {name:'Peter', age:95, gender:'boy'},
- {name:'Sebastian', age:50, gender:'boy'},
- {name:'Erika', age:27, gender:'girl'},
- {name:'Patrick', age:40, gender:'boy'},
- {name:'Samantha', age:60, gender:'girl'}
- ]">
+ <div ng-controller="repeatController">
I have {{friends.length}} friends. They are:
<input type="search" ng-model="q" placeholder="filter friends..." aria-label="filter friends" />
<ul class="example-animate-container">
<li class="animate-repeat" ng-repeat="friend in friends | filter:q as results">
[{{$index + 1}}] {{friend.name}} who is {{friend.age}} years old.
</li>
- <li class="animate-repeat" ng-if="results.length == 0">
+ <li class="animate-repeat" ng-if="results.length === 0">
<strong>No results found...</strong>
</li>
</ul>
</div>
</file>
+ <file name="script.js">
+ angular.module('ngRepeat', ['ngAnimate']).controller('repeatController', function($scope) {
+ $scope.friends = [
+ {name:'John', age:25, gender:'boy'},
+ {name:'Jessie', age:30, gender:'girl'},
+ {name:'Johanna', age:28, gender:'girl'},
+ {name:'Joy', age:15, gender:'girl'},
+ {name:'Mary', age:28, gender:'girl'},
+ {name:'Peter', age:95, gender:'boy'},
+ {name:'Sebastian', age:50, gender:'boy'},
+ {name:'Erika', age:27, gender:'girl'},
+ {name:'Patrick', age:40, gender:'boy'},
+ {name:'Samantha', age:60, gender:'girl'}
+ ];
+ });
+ </file>
<file name="animations.css">
.example-animate-container {
background:white;
@@ -27635,7 +30875,7 @@ var ngPluralizeDirective = ['$locale', '$interpolate', '$log', function($locale,
}
.animate-repeat {
- line-height:40px;
+ line-height:30px;
list-style:none;
box-sizing:border-box;
}
@@ -27657,7 +30897,7 @@ var ngPluralizeDirective = ['$locale', '$interpolate', '$log', function($locale,
.animate-repeat.ng-move.ng-move-active,
.animate-repeat.ng-enter.ng-enter-active {
opacity:1;
- max-height:40px;
+ max-height:30px;
}
</file>
<file name="protractor.js" type="protractor">
@@ -27684,7 +30924,7 @@ var ngPluralizeDirective = ['$locale', '$interpolate', '$log', function($locale,
</file>
</example>
*/
-var ngRepeatDirective = ['$parse', '$animate', function($parse, $animate) {
+var ngRepeatDirective = ['$parse', '$animate', '$compile', function($parse, $animate, $compile) {
var NG_REMOVED = '$$NG_REMOVED';
var ngRepeatMinErr = minErr('ngRepeat');
@@ -27696,9 +30936,8 @@ var ngRepeatDirective = ['$parse', '$animate', function($parse, $animate) {
scope.$first = (index === 0);
scope.$last = (index === (arrayLength - 1));
scope.$middle = !(scope.$first || scope.$last);
- // jshint bitwise: false
- scope.$odd = !(scope.$even = (index&1) === 0);
- // jshint bitwise: true
+ // eslint-disable-next-line no-bitwise
+ scope.$odd = !(scope.$even = (index & 1) === 0);
};
var getBlockStart = function(block) {
@@ -27719,12 +30958,12 @@ var ngRepeatDirective = ['$parse', '$animate', function($parse, $animate) {
$$tlb: true,
compile: function ngRepeatCompile($element, $attr) {
var expression = $attr.ngRepeat;
- var ngRepeatEndComment = document.createComment(' end ngRepeat: ' + expression + ' ');
+ var ngRepeatEndComment = $compile.$$createComment('end ngRepeat', expression);
var match = expression.match(/^\s*([\s\S]+?)\s+in\s+([\s\S]+?)(?:\s+as\s+([\s\S]+?))?(?:\s+track\s+by\s+([\s\S]+?))?\s*$/);
if (!match) {
- throw ngRepeatMinErr('iexp', "Expected expression in form of '_item_ in _collection_[ track by _id_]' but got '{0}'.",
+ throw ngRepeatMinErr('iexp', 'Expected expression in form of \'_item_ in _collection_[ track by _id_]\' but got \'{0}\'.',
expression);
}
@@ -27733,10 +30972,10 @@ var ngRepeatDirective = ['$parse', '$animate', function($parse, $animate) {
var aliasAs = match[3];
var trackByExp = match[4];
- match = lhs.match(/^(?:(\s*[\$\w]+)|\(\s*([\$\w]+)\s*,\s*([\$\w]+)\s*\))$/);
+ match = lhs.match(/^(?:(\s*[$\w]+)|\(\s*([$\w]+)\s*,\s*([$\w]+)\s*\))$/);
if (!match) {
- throw ngRepeatMinErr('iidexp', "'_item_' in '_item_ in _collection_' should be an identifier or '(_key_, _value_)' expression, but got '{0}'.",
+ throw ngRepeatMinErr('iidexp', '\'_item_\' in \'_item_ in _collection_\' should be an identifier or \'(_key_, _value_)\' expression, but got \'{0}\'.',
lhs);
}
var valueIdentifier = match[3] || match[1];
@@ -27744,7 +30983,7 @@ var ngRepeatDirective = ['$parse', '$animate', function($parse, $animate) {
if (aliasAs && (!/^[$a-zA-Z_][$a-zA-Z0-9_]*$/.test(aliasAs) ||
/^(null|undefined|this|\$index|\$first|\$middle|\$last|\$even|\$odd|\$parent|\$root|\$id)$/.test(aliasAs))) {
- throw ngRepeatMinErr('badident', "alias '{0}' is invalid --- must be a valid JS identifier which is not a reserved name.",
+ throw ngRepeatMinErr('badident', 'alias \'{0}\' is invalid --- must be a valid JS identifier which is not a reserved name.',
aliasAs);
}
@@ -27840,7 +31079,7 @@ var ngRepeatDirective = ['$parse', '$animate', function($parse, $animate) {
if (block && block.scope) lastBlockMap[block.id] = block;
});
throw ngRepeatMinErr('dupes',
- "Duplicates in a repeater are not allowed. Use 'track by' expression to specify unique keys. Repeater: {0}, Duplicate key: {1}, Duplicate value: {2}",
+ 'Duplicates in a repeater are not allowed. Use \'track by\' expression to specify unique keys. Repeater: {0}, Duplicate key: {1}, Duplicate value: {2}',
expression, trackById, value);
} else {
// new never before seen block
@@ -27881,9 +31120,9 @@ var ngRepeatDirective = ['$parse', '$animate', function($parse, $animate) {
nextNode = nextNode.nextSibling;
} while (nextNode && nextNode[NG_REMOVED]);
- if (getBlockStart(block) != nextNode) {
+ if (getBlockStart(block) !== nextNode) {
// existing item which got moved
- $animate.move(getBlockNodes(block.clone), null, jqLite(previousNode));
+ $animate.move(getBlockNodes(block.clone), null, previousNode);
}
previousNode = getBlockEnd(block);
updateScope(block.scope, index, valueIdentifier, value, keyIdentifier, key, collectionLength);
@@ -27895,8 +31134,7 @@ var ngRepeatDirective = ['$parse', '$animate', function($parse, $animate) {
var endNode = ngRepeatEndComment.cloneNode(false);
clone[clone.length++] = endNode;
- // TODO(perf): support naked previousNode in `enter` to avoid creation of jqLite wrapper?
- $animate.enter(clone, null, jqLite(previousNode));
+ $animate.enter(clone, null, previousNode);
previousNode = endNode;
// Note: We only need the first/last node of the cloned nodes.
// However, we need to keep the reference to the jqlite wrapper as it might be changed later
@@ -27922,11 +31160,13 @@ var NG_HIDE_IN_PROGRESS_CLASS = 'ng-hide-animate';
* @multiElement
*
* @description
- * The `ngShow` directive shows or hides the given HTML element based on the expression
- * provided to the `ngShow` attribute. The element is shown or hidden by removing or adding
- * the `.ng-hide` CSS class onto the element. The `.ng-hide` CSS class is predefined
- * in AngularJS and sets the display style to none (using an !important flag).
- * For CSP mode please add `angular-csp.css` to your html file (see {@link ng.directive:ngCsp ngCsp}).
+ * The `ngShow` directive shows or hides the given HTML element based on the expression provided to
+ * the `ngShow` attribute.
+ *
+ * The element is shown or hidden by removing or adding the `.ng-hide` CSS class onto the element.
+ * The `.ng-hide` CSS class is predefined in AngularJS and sets the display style to none (using an
+ * `!important` flag). For CSP mode please add `angular-csp.css` to your HTML file (see
+ * {@link ng.directive:ngCsp ngCsp}).
*
* ```html
* <!-- when $scope.myValue is truthy (element is visible) -->
@@ -27936,31 +31176,32 @@ var NG_HIDE_IN_PROGRESS_CLASS = 'ng-hide-animate';
* <div ng-show="myValue" class="ng-hide"></div>
* ```
*
- * When the `ngShow` expression evaluates to a falsy value then the `.ng-hide` CSS class is added to the class
- * attribute on the element causing it to become hidden. When truthy, the `.ng-hide` CSS class is removed
- * from the element causing the element not to appear hidden.
+ * When the `ngShow` expression evaluates to a falsy value then the `.ng-hide` CSS class is added
+ * to the class attribute on the element causing it to become hidden. When truthy, the `.ng-hide`
+ * CSS class is removed from the element causing the element not to appear hidden.
*
- * ## Why is !important used?
+ * ## Why is `!important` used?
*
- * You may be wondering why !important is used for the `.ng-hide` CSS class. This is because the `.ng-hide` selector
- * can be easily overridden by heavier selectors. For example, something as simple
- * as changing the display style on a HTML list item would make hidden elements appear visible.
- * This also becomes a bigger issue when dealing with CSS frameworks.
+ * You may be wondering why `!important` is used for the `.ng-hide` CSS class. This is because the
+ * `.ng-hide` selector can be easily overridden by heavier selectors. For example, something as
+ * simple as changing the display style on a HTML list item would make hidden elements appear
+ * visible. This also becomes a bigger issue when dealing with CSS frameworks.
*
- * By using !important, the show and hide behavior will work as expected despite any clash between CSS selector
- * specificity (when !important isn't used with any conflicting styles). If a developer chooses to override the
- * styling to change how to hide an element then it is just a matter of using !important in their own CSS code.
+ * By using `!important`, the show and hide behavior will work as expected despite any clash between
+ * CSS selector specificity (when `!important` isn't used with any conflicting styles). If a
+ * developer chooses to override the styling to change how to hide an element then it is just a
+ * matter of using `!important` in their own CSS code.
*
* ### Overriding `.ng-hide`
*
- * By default, the `.ng-hide` class will style the element with `display: none!important`. If you wish to change
- * the hide behavior with ngShow/ngHide then this can be achieved by restating the styles for the `.ng-hide`
- * class CSS. Note that the selector that needs to be used is actually `.ng-hide:not(.ng-hide-animate)` to cope
- * with extra animation classes that can be added.
+ * By default, the `.ng-hide` class will style the element with `display: none !important`. If you
+ * wish to change the hide behavior with `ngShow`/`ngHide`, you can simply overwrite the styles for
+ * the `.ng-hide` CSS class. Note that the selector that needs to be used is actually
+ * `.ng-hide:not(.ng-hide-animate)` to cope with extra animation classes that can be added.
*
* ```css
* .ng-hide:not(.ng-hide-animate) {
- * /&#42; this is just another form of hiding an element &#42;/
+ * /&#42; These are just alternative ways of hiding an element &#42;/
* display: block!important;
* position: absolute;
* top: -9999px;
@@ -27968,29 +31209,20 @@ var NG_HIDE_IN_PROGRESS_CLASS = 'ng-hide-animate';
* }
* ```
*
- * By default you don't need to override in CSS anything and the animations will work around the display style.
+ * By default you don't need to override anything in CSS and the animations will work around the
+ * display style.
*
* ## A note about animations with `ngShow`
*
- * Animations in ngShow/ngHide work with the show and hide events that are triggered when the directive expression
- * is true and false. This system works like the animation system present with ngClass except that
- * you must also include the !important flag to override the display property
- * so that you can perform an animation when the element is hidden during the time of the animation.
+ * Animations in `ngShow`/`ngHide` work with the show and hide events that are triggered when the
+ * directive expression is true and false. This system works like the animation system present with
+ * `ngClass` except that you must also include the `!important` flag to override the display
+ * property so that the elements are not actually hidden during the animation.
*
* ```css
- * //
- * //a working example can be found at the bottom of this page
- * //
+ * /&#42; A working example can be found at the bottom of this page. &#42;/
* .my-element.ng-hide-add, .my-element.ng-hide-remove {
- * /&#42; this is required as of 1.3x to properly
- * apply all styling in a show/hide animation &#42;/
- * transition: 0s linear all;
- * }
- *
- * .my-element.ng-hide-add-active,
- * .my-element.ng-hide-remove-active {
- * /&#42; the transition is defined in the active class &#42;/
- * transition: 1s linear all;
+ * transition: all 0.5s linear;
* }
*
* .my-element.ng-hide-add { ... }
@@ -27999,74 +31231,108 @@ var NG_HIDE_IN_PROGRESS_CLASS = 'ng-hide-animate';
* .my-element.ng-hide-remove.ng-hide-remove-active { ... }
* ```
*
- * Keep in mind that, as of AngularJS version 1.3.0-beta.11, there is no need to change the display
- * property to block during animation states--ngAnimate will handle the style toggling automatically for you.
+ * Keep in mind that, as of AngularJS version 1.3, there is no need to change the display property
+ * to block during animation states - ngAnimate will automatically handle the style toggling for you.
*
* @animations
- * addClass: `.ng-hide` - happens after the `ngShow` expression evaluates to a truthy value and the just before contents are set to visible
- * removeClass: `.ng-hide` - happens after the `ngShow` expression evaluates to a non truthy value and just before the contents are set to hidden
+ * | Animation | Occurs |
+ * |-----------------------------------------------------|---------------------------------------------------------------------------------------------------------------|
+ * | {@link $animate#addClass addClass} `.ng-hide` | After the `ngShow` expression evaluates to a non truthy value and just before the contents are set to hidden. |
+ * | {@link $animate#removeClass removeClass} `.ng-hide` | After the `ngShow` expression evaluates to a truthy value and just before contents are set to visible. |
*
* @element ANY
- * @param {expression} ngShow If the {@link guide/expression expression} is truthy
- * then the element is shown or hidden respectively.
+ * @param {expression} ngShow If the {@link guide/expression expression} is truthy/falsy then the
+ * element is shown/hidden respectively.
*
* @example
- <example module="ngAnimate" deps="angular-animate.js" animations="true">
+ * A simple example, animating the element's opacity:
+ *
+ <example module="ngAnimate" deps="angular-animate.js" animations="true" name="ng-show-simple">
<file name="index.html">
- Click me: <input type="checkbox" ng-model="checked" aria-label="Toggle ngHide"><br/>
- <div>
- Show:
- <div class="check-element animate-show" ng-show="checked">
- <span class="glyphicon glyphicon-thumbs-up"></span> I show up when your checkbox is checked.
- </div>
+ Show: <input type="checkbox" ng-model="checked" aria-label="Toggle ngShow"><br />
+ <div class="check-element animate-show-hide" ng-show="checked">
+ I show up when your checkbox is checked.
</div>
- <div>
- Hide:
- <div class="check-element animate-show" ng-hide="checked">
- <span class="glyphicon glyphicon-thumbs-down"></span> I hide when your checkbox is checked.
- </div>
- </div>
- </file>
- <file name="glyphicons.css">
- @import url(../../components/bootstrap-3.1.1/css/bootstrap.css);
</file>
<file name="animations.css">
- .animate-show {
- line-height: 20px;
+ .animate-show-hide.ng-hide {
+ opacity: 0;
+ }
+
+ .animate-show-hide.ng-hide-add,
+ .animate-show-hide.ng-hide-remove {
+ transition: all linear 0.5s;
+ }
+
+ .check-element {
+ border: 1px solid black;
opacity: 1;
padding: 10px;
- border: 1px solid black;
- background: white;
}
+ </file>
+ <file name="protractor.js" type="protractor">
+ it('should check ngShow', function() {
+ var checkbox = element(by.model('checked'));
+ var checkElem = element(by.css('.check-element'));
- .animate-show.ng-hide-add, .animate-show.ng-hide-remove {
- transition: all linear 0.5s;
+ expect(checkElem.isDisplayed()).toBe(false);
+ checkbox.click();
+ expect(checkElem.isDisplayed()).toBe(true);
+ });
+ </file>
+ </example>
+ *
+ * <hr />
+ * @example
+ * A more complex example, featuring different show/hide animations:
+ *
+ <example module="ngAnimate" deps="angular-animate.js" animations="true" name="ng-show-complex">
+ <file name="index.html">
+ Show: <input type="checkbox" ng-model="checked" aria-label="Toggle ngShow"><br />
+ <div class="check-element funky-show-hide" ng-show="checked">
+ I show up when your checkbox is checked.
+ </div>
+ </file>
+ <file name="animations.css">
+ body {
+ overflow: hidden;
+ perspective: 1000px;
}
- .animate-show.ng-hide {
- line-height: 0;
- opacity: 0;
- padding: 0 10px;
+ .funky-show-hide.ng-hide-add {
+ transform: rotateZ(0);
+ transform-origin: right;
+ transition: all 0.5s ease-in-out;
+ }
+
+ .funky-show-hide.ng-hide-add.ng-hide-add-active {
+ transform: rotateZ(-135deg);
+ }
+
+ .funky-show-hide.ng-hide-remove {
+ transform: rotateY(90deg);
+ transform-origin: left;
+ transition: all 0.5s ease;
+ }
+
+ .funky-show-hide.ng-hide-remove.ng-hide-remove-active {
+ transform: rotateY(0);
}
.check-element {
- padding: 10px;
border: 1px solid black;
- background: white;
+ opacity: 1;
+ padding: 10px;
}
</file>
<file name="protractor.js" type="protractor">
- var thumbsUp = element(by.css('span.glyphicon-thumbs-up'));
- var thumbsDown = element(by.css('span.glyphicon-thumbs-down'));
-
- it('should check ng-show / ng-hide', function() {
- expect(thumbsUp.isDisplayed()).toBeFalsy();
- expect(thumbsDown.isDisplayed()).toBeTruthy();
-
- element(by.model('checked')).click();
+ it('should check ngShow', function() {
+ var checkbox = element(by.model('checked'));
+ var checkElem = element(by.css('.check-element'));
- expect(thumbsUp.isDisplayed()).toBeTruthy();
- expect(thumbsDown.isDisplayed()).toBeFalsy();
+ expect(checkElem.isDisplayed()).toBe(false);
+ checkbox.click();
+ expect(checkElem.isDisplayed()).toBe(true);
});
</file>
</example>
@@ -28096,11 +31362,13 @@ var ngShowDirective = ['$animate', function($animate) {
* @multiElement
*
* @description
- * The `ngHide` directive shows or hides the given HTML element based on the expression
- * provided to the `ngHide` attribute. The element is shown or hidden by removing or adding
- * the `ng-hide` CSS class onto the element. The `.ng-hide` CSS class is predefined
- * in AngularJS and sets the display style to none (using an !important flag).
- * For CSP mode please add `angular-csp.css` to your html file (see {@link ng.directive:ngCsp ngCsp}).
+ * The `ngHide` directive shows or hides the given HTML element based on the expression provided to
+ * the `ngHide` attribute.
+ *
+ * The element is shown or hidden by removing or adding the `.ng-hide` CSS class onto the element.
+ * The `.ng-hide` CSS class is predefined in AngularJS and sets the display style to none (using an
+ * `!important` flag). For CSP mode please add `angular-csp.css` to your HTML file (see
+ * {@link ng.directive:ngCsp ngCsp}).
*
* ```html
* <!-- when $scope.myValue is truthy (element is hidden) -->
@@ -28110,30 +31378,32 @@ var ngShowDirective = ['$animate', function($animate) {
* <div ng-hide="myValue"></div>
* ```
*
- * When the `ngHide` expression evaluates to a truthy value then the `.ng-hide` CSS class is added to the class
- * attribute on the element causing it to become hidden. When falsy, the `.ng-hide` CSS class is removed
- * from the element causing the element not to appear hidden.
+ * When the `ngHide` expression evaluates to a truthy value then the `.ng-hide` CSS class is added
+ * to the class attribute on the element causing it to become hidden. When falsy, the `.ng-hide`
+ * CSS class is removed from the element causing the element not to appear hidden.
*
- * ## Why is !important used?
+ * ## Why is `!important` used?
*
- * You may be wondering why !important is used for the `.ng-hide` CSS class. This is because the `.ng-hide` selector
- * can be easily overridden by heavier selectors. For example, something as simple
- * as changing the display style on a HTML list item would make hidden elements appear visible.
- * This also becomes a bigger issue when dealing with CSS frameworks.
+ * You may be wondering why `!important` is used for the `.ng-hide` CSS class. This is because the
+ * `.ng-hide` selector can be easily overridden by heavier selectors. For example, something as
+ * simple as changing the display style on a HTML list item would make hidden elements appear
+ * visible. This also becomes a bigger issue when dealing with CSS frameworks.
*
- * By using !important, the show and hide behavior will work as expected despite any clash between CSS selector
- * specificity (when !important isn't used with any conflicting styles). If a developer chooses to override the
- * styling to change how to hide an element then it is just a matter of using !important in their own CSS code.
+ * By using `!important`, the show and hide behavior will work as expected despite any clash between
+ * CSS selector specificity (when `!important` isn't used with any conflicting styles). If a
+ * developer chooses to override the styling to change how to hide an element then it is just a
+ * matter of using `!important` in their own CSS code.
*
* ### Overriding `.ng-hide`
*
- * By default, the `.ng-hide` class will style the element with `display: none!important`. If you wish to change
- * the hide behavior with ngShow/ngHide then this can be achieved by restating the styles for the `.ng-hide`
- * class in CSS:
+ * By default, the `.ng-hide` class will style the element with `display: none !important`. If you
+ * wish to change the hide behavior with `ngShow`/`ngHide`, you can simply overwrite the styles for
+ * the `.ng-hide` CSS class. Note that the selector that needs to be used is actually
+ * `.ng-hide:not(.ng-hide-animate)` to cope with extra animation classes that can be added.
*
* ```css
- * .ng-hide {
- * /&#42; this is just another form of hiding an element &#42;/
+ * .ng-hide:not(.ng-hide-animate) {
+ * /&#42; These are just alternative ways of hiding an element &#42;/
* display: block!important;
* position: absolute;
* top: -9999px;
@@ -28141,20 +31411,20 @@ var ngShowDirective = ['$animate', function($animate) {
* }
* ```
*
- * By default you don't need to override in CSS anything and the animations will work around the display style.
+ * By default you don't need to override in CSS anything and the animations will work around the
+ * display style.
*
* ## A note about animations with `ngHide`
*
- * Animations in ngShow/ngHide work with the show and hide events that are triggered when the directive expression
- * is true and false. This system works like the animation system present with ngClass, except that the `.ng-hide`
- * CSS class is added and removed for you instead of your own CSS class.
+ * Animations in `ngShow`/`ngHide` work with the show and hide events that are triggered when the
+ * directive expression is true and false. This system works like the animation system present with
+ * `ngClass` except that you must also include the `!important` flag to override the display
+ * property so that the elements are not actually hidden during the animation.
*
* ```css
- * //
- * //a working example can be found at the bottom of this page
- * //
+ * /&#42; A working example can be found at the bottom of this page. &#42;/
* .my-element.ng-hide-add, .my-element.ng-hide-remove {
- * transition: 0.5s linear all;
+ * transition: all 0.5s linear;
* }
*
* .my-element.ng-hide-add { ... }
@@ -28163,71 +31433,109 @@ var ngShowDirective = ['$animate', function($animate) {
* .my-element.ng-hide-remove.ng-hide-remove-active { ... }
* ```
*
- * Keep in mind that, as of AngularJS version 1.3.0-beta.11, there is no need to change the display
- * property to block during animation states--ngAnimate will handle the style toggling automatically for you.
+ * Keep in mind that, as of AngularJS version 1.3, there is no need to change the display property
+ * to block during animation states - ngAnimate will automatically handle the style toggling for you.
*
* @animations
- * removeClass: `.ng-hide` - happens after the `ngHide` expression evaluates to a truthy value and just before the contents are set to hidden
- * addClass: `.ng-hide` - happens after the `ngHide` expression evaluates to a non truthy value and just before the contents are set to visible
+ * | Animation | Occurs |
+ * |-----------------------------------------------------|------------------------------------------------------------------------------------------------------------|
+ * | {@link $animate#addClass addClass} `.ng-hide` | After the `ngHide` expression evaluates to a truthy value and just before the contents are set to hidden. |
+ * | {@link $animate#removeClass removeClass} `.ng-hide` | After the `ngHide` expression evaluates to a non truthy value and just before contents are set to visible. |
+ *
*
* @element ANY
- * @param {expression} ngHide If the {@link guide/expression expression} is truthy then
- * the element is shown or hidden respectively.
+ * @param {expression} ngHide If the {@link guide/expression expression} is truthy/falsy then the
+ * element is hidden/shown respectively.
*
* @example
- <example module="ngAnimate" deps="angular-animate.js" animations="true">
+ * A simple example, animating the element's opacity:
+ *
+ <example module="ngAnimate" deps="angular-animate.js" animations="true" name="ng-hide-simple">
<file name="index.html">
- Click me: <input type="checkbox" ng-model="checked" aria-label="Toggle ngShow"><br/>
- <div>
- Show:
- <div class="check-element animate-hide" ng-show="checked">
- <span class="glyphicon glyphicon-thumbs-up"></span> I show up when your checkbox is checked.
- </div>
- </div>
- <div>
- Hide:
- <div class="check-element animate-hide" ng-hide="checked">
- <span class="glyphicon glyphicon-thumbs-down"></span> I hide when your checkbox is checked.
- </div>
+ Hide: <input type="checkbox" ng-model="checked" aria-label="Toggle ngHide"><br />
+ <div class="check-element animate-show-hide" ng-hide="checked">
+ I hide when your checkbox is checked.
</div>
</file>
- <file name="glyphicons.css">
- @import url(../../components/bootstrap-3.1.1/css/bootstrap.css);
- </file>
<file name="animations.css">
- .animate-hide {
+ .animate-show-hide.ng-hide {
+ opacity: 0;
+ }
+
+ .animate-show-hide.ng-hide-add,
+ .animate-show-hide.ng-hide-remove {
transition: all linear 0.5s;
- line-height: 20px;
+ }
+
+ .check-element {
+ border: 1px solid black;
opacity: 1;
padding: 10px;
- border: 1px solid black;
- background: white;
}
+ </file>
+ <file name="protractor.js" type="protractor">
+ it('should check ngHide', function() {
+ var checkbox = element(by.model('checked'));
+ var checkElem = element(by.css('.check-element'));
- .animate-hide.ng-hide {
- line-height: 0;
- opacity: 0;
- padding: 0 10px;
+ expect(checkElem.isDisplayed()).toBe(true);
+ checkbox.click();
+ expect(checkElem.isDisplayed()).toBe(false);
+ });
+ </file>
+ </example>
+ *
+ * <hr />
+ * @example
+ * A more complex example, featuring different show/hide animations:
+ *
+ <example module="ngAnimate" deps="angular-animate.js" animations="true" name="ng-hide-complex">
+ <file name="index.html">
+ Hide: <input type="checkbox" ng-model="checked" aria-label="Toggle ngHide"><br />
+ <div class="check-element funky-show-hide" ng-hide="checked">
+ I hide when your checkbox is checked.
+ </div>
+ </file>
+ <file name="animations.css">
+ body {
+ overflow: hidden;
+ perspective: 1000px;
+ }
+
+ .funky-show-hide.ng-hide-add {
+ transform: rotateZ(0);
+ transform-origin: right;
+ transition: all 0.5s ease-in-out;
+ }
+
+ .funky-show-hide.ng-hide-add.ng-hide-add-active {
+ transform: rotateZ(-135deg);
+ }
+
+ .funky-show-hide.ng-hide-remove {
+ transform: rotateY(90deg);
+ transform-origin: left;
+ transition: all 0.5s ease;
+ }
+
+ .funky-show-hide.ng-hide-remove.ng-hide-remove-active {
+ transform: rotateY(0);
}
.check-element {
- padding: 10px;
border: 1px solid black;
- background: white;
+ opacity: 1;
+ padding: 10px;
}
</file>
<file name="protractor.js" type="protractor">
- var thumbsUp = element(by.css('span.glyphicon-thumbs-up'));
- var thumbsDown = element(by.css('span.glyphicon-thumbs-down'));
-
- it('should check ng-show / ng-hide', function() {
- expect(thumbsUp.isDisplayed()).toBeFalsy();
- expect(thumbsDown.isDisplayed()).toBeTruthy();
+ it('should check ngHide', function() {
+ var checkbox = element(by.model('checked'));
+ var checkElem = element(by.css('.check-element'));
- element(by.model('checked')).click();
-
- expect(thumbsUp.isDisplayed()).toBeTruthy();
- expect(thumbsDown.isDisplayed()).toBeFalsy();
+ expect(checkElem.isDisplayed()).toBe(true);
+ checkbox.click();
+ expect(checkElem.isDisplayed()).toBe(false);
});
</file>
</example>
@@ -28256,6 +31564,11 @@ var ngHideDirective = ['$animate', function($animate) {
* @description
* The `ngStyle` directive allows you to set CSS style on an HTML element conditionally.
*
+ * @knownIssue
+ * You should not use {@link guide/interpolation interpolation} in the value of the `style`
+ * attribute, when using the `ngStyle` directive on the same element.
+ * See {@link guide/interpolation#known-issues here} for more info.
+ *
* @element ANY
* @param {expression} ngStyle
*
@@ -28267,7 +31580,7 @@ var ngHideDirective = ['$animate', function($animate) {
* See the 'background-color' style in the example below.
*
* @example
- <example>
+ <example name="ng-style">
<file name="index.html">
<input type="button" value="set color" ng-click="myStyle={color:'red'}">
<input type="button" value="set background" ng-click="myStyle={'background-color':'blue'}">
@@ -28330,8 +31643,10 @@ var ngStyleDirective = ngDirective(function(scope, element, attr) {
* </div>
* @animations
- * enter - happens after the ngSwitch contents change and the matched child element is placed inside the container
- * leave - happens just after the ngSwitch contents change and just before the former contents are removed from the DOM
+ * | Animation | Occurs |
+ * |----------------------------------|-------------------------------------|
+ * | {@link ng.$animate#enter enter} | after the ngSwitch contents change and the matched child element is placed inside the container |
+ * | {@link ng.$animate#leave leave} | after the ngSwitch contents change and just before the former contents are removed from the DOM |
*
* @usage
*
@@ -28351,14 +31666,18 @@ var ngStyleDirective = ngDirective(function(scope, element, attr) {
*
* * `ngSwitchWhen`: the case statement to match against. If match then this
* case will be displayed. If the same match appears multiple times, all the
- * elements will be displayed.
+ * elements will be displayed. It is possible to associate multiple values to
+ * the same `ngSwitchWhen` by defining the optional attribute
+ * `ngSwitchWhenSeparator`. The separator will be used to split the value of
+ * the `ngSwitchWhen` attribute into multiple tokens, and the element will show
+ * if any of the `ngSwitch` evaluates to any of these tokens.
* * `ngSwitchDefault`: the default case when no other case match. If there
* are multiple default cases, all of them will be displayed when no other
* case match.
*
*
* @example
- <example module="switchExample" deps="angular-animate.js" animations="true">
+ <example module="switchExample" deps="angular-animate.js" animations="true" name="ng-switch">
<file name="index.html">
<div ng-controller="ExampleController">
<select ng-model="selection" ng-options="item for item in items">
@@ -28367,7 +31686,7 @@ var ngStyleDirective = ngDirective(function(scope, element, attr) {
<hr/>
<div class="animate-switch-container"
ng-switch on="selection">
- <div class="animate-switch" ng-switch-when="settings">Settings Div</div>
+ <div class="animate-switch" ng-switch-when="settings|options" ng-switch-when-separator="|">Settings Div</div>
<div class="animate-switch" ng-switch-when="home">Home Span</div>
<div class="animate-switch" ng-switch-default>default</div>
</div>
@@ -28376,7 +31695,7 @@ var ngStyleDirective = ngDirective(function(scope, element, attr) {
<file name="script.js">
angular.module('switchExample', ['ngAnimate'])
.controller('ExampleController', ['$scope', function($scope) {
- $scope.items = ['settings', 'home', 'other'];
+ $scope.items = ['settings', 'home', 'options', 'other'];
$scope.selection = $scope.items[0];
}]);
</file>
@@ -28423,19 +31742,23 @@ var ngStyleDirective = ngDirective(function(scope, element, attr) {
select.all(by.css('option')).get(1).click();
expect(switchElem.getText()).toMatch(/Home Span/);
});
- it('should select default', function() {
+ it('should change to settings via "options"', function() {
select.all(by.css('option')).get(2).click();
+ expect(switchElem.getText()).toMatch(/Settings Div/);
+ });
+ it('should select default', function() {
+ select.all(by.css('option')).get(3).click();
expect(switchElem.getText()).toMatch(/default/);
});
</file>
</example>
*/
-var ngSwitchDirective = ['$animate', function($animate) {
+var ngSwitchDirective = ['$animate', '$compile', function($animate, $compile) {
return {
require: 'ngSwitch',
// asks for $scope to fool the BC controller module
- controller: ['$scope', function ngSwitchController() {
+ controller: ['$scope', function NgSwitchController() {
this.cases = {};
}],
link: function(scope, element, attr, ngSwitchController) {
@@ -28446,21 +31769,24 @@ var ngSwitchDirective = ['$animate', function($animate) {
selectedScopes = [];
var spliceFactory = function(array, index) {
- return function() { array.splice(index, 1); };
+ return function(response) {
+ if (response !== false) array.splice(index, 1);
+ };
};
scope.$watch(watchExpr, function ngSwitchWatchAction(value) {
var i, ii;
- for (i = 0, ii = previousLeaveAnimations.length; i < ii; ++i) {
- $animate.cancel(previousLeaveAnimations[i]);
+
+ // Start with the last, in case the array is modified during the loop
+ while (previousLeaveAnimations.length) {
+ $animate.cancel(previousLeaveAnimations.pop());
}
- previousLeaveAnimations.length = 0;
for (i = 0, ii = selectedScopes.length; i < ii; ++i) {
var selected = getBlockNodes(selectedElements[i].clone);
selectedScopes[i].$destroy();
- var promise = previousLeaveAnimations[i] = $animate.leave(selected);
- promise.then(spliceFactory(previousLeaveAnimations, i));
+ var runner = previousLeaveAnimations[i] = $animate.leave(selected);
+ runner.done(spliceFactory(previousLeaveAnimations, i));
}
selectedElements.length = 0;
@@ -28471,7 +31797,7 @@ var ngSwitchDirective = ['$animate', function($animate) {
selectedTransclude.transclude(function(caseElement, selectedScope) {
selectedScopes.push(selectedScope);
var anchor = selectedTransclude.element;
- caseElement[caseElement.length++] = document.createComment(' end ngSwitchWhen: ');
+ caseElement[caseElement.length++] = $compile.$$createComment('end ngSwitchWhen');
var block = { clone: caseElement };
selectedElements.push(block);
@@ -28490,8 +31816,16 @@ var ngSwitchWhenDirective = ngDirective({
require: '^ngSwitch',
multiElement: true,
link: function(scope, element, attrs, ctrl, $transclude) {
- ctrl.cases['!' + attrs.ngSwitchWhen] = (ctrl.cases['!' + attrs.ngSwitchWhen] || []);
- ctrl.cases['!' + attrs.ngSwitchWhen].push({ transclude: $transclude, element: element });
+
+ var cases = attrs.ngSwitchWhen.split(attrs.ngSwitchWhenSeparator).sort().filter(
+ // Filter duplicate cases
+ function(element, index, array) { return array[index - 1] !== element; }
+ );
+
+ forEach(cases, function(whenCase) {
+ ctrl.cases['!' + whenCase] = (ctrl.cases['!' + whenCase] || []);
+ ctrl.cases['!' + whenCase].push({ transclude: $transclude, element: element });
+ });
}
});
@@ -28517,124 +31851,220 @@ var ngSwitchDefaultDirective = ngDirective({
* You can specify that you want to insert a named transclusion slot, instead of the default slot, by providing the slot name
* as the value of the `ng-transclude` or `ng-transclude-slot` attribute.
*
- * Any existing content of the element that this directive is placed on will be removed before the transcluded content is inserted.
+ * If the transcluded content is not empty (i.e. contains one or more DOM nodes, including whitespace text nodes), any existing
+ * content of this element will be removed before the transcluded content is inserted.
+ * If the transcluded content is empty (or only whitespace), the existing content is left intact. This lets you provide fallback
+ * content in the case that no transcluded content is provided.
*
* @element ANY
*
- * @param {string} ngTransclude|ngTranscludeSlot the name of the slot to insert at this point. If this is not provided or empty then
- * the default slot is used.
+ * @param {string} ngTransclude|ngTranscludeSlot the name of the slot to insert at this point. If this is not provided, is empty
+ * or its value is the same as the name of the attribute then the default slot is used.
*
* @example
- * ### Default transclusion
- * This example demonstrates simple transclusion.
- <example name="simpleTranscludeExample" module="transcludeExample">
- <file name="index.html">
- <script>
- angular.module('transcludeExample', [])
- .directive('pane', function(){
- return {
- restrict: 'E',
- transclude: true,
- scope: { title:'@' },
- template: '<div style="border: 1px solid black;">' +
- '<div style="background-color: gray">{{title}}</div>' +
- '<ng-transclude></ng-transclude>' +
- '</div>'
- };
- })
- .controller('ExampleController', ['$scope', function($scope) {
- $scope.title = 'Lorem Ipsum';
- $scope.text = 'Neque porro quisquam est qui dolorem ipsum quia dolor...';
- }]);
- </script>
- <div ng-controller="ExampleController">
- <input ng-model="title" aria-label="title"> <br/>
- <textarea ng-model="text" aria-label="text"></textarea> <br/>
- <pane title="{{title}}">{{text}}</pane>
- </div>
- </file>
- <file name="protractor.js" type="protractor">
- it('should have transcluded', function() {
- var titleElement = element(by.model('title'));
- titleElement.clear();
- titleElement.sendKeys('TITLE');
- var textElement = element(by.model('text'));
- textElement.clear();
- textElement.sendKeys('TEXT');
- expect(element(by.binding('title')).getText()).toEqual('TITLE');
- expect(element(by.binding('text')).getText()).toEqual('TEXT');
- });
- </file>
- </example>
+ * ### Basic transclusion
+ * This example demonstrates basic transclusion of content into a component directive.
+ * <example name="simpleTranscludeExample" module="transcludeExample">
+ * <file name="index.html">
+ * <script>
+ * angular.module('transcludeExample', [])
+ * .directive('pane', function(){
+ * return {
+ * restrict: 'E',
+ * transclude: true,
+ * scope: { title:'@' },
+ * template: '<div style="border: 1px solid black;">' +
+ * '<div style="background-color: gray">{{title}}</div>' +
+ * '<ng-transclude></ng-transclude>' +
+ * '</div>'
+ * };
+ * })
+ * .controller('ExampleController', ['$scope', function($scope) {
+ * $scope.title = 'Lorem Ipsum';
+ * $scope.text = 'Neque porro quisquam est qui dolorem ipsum quia dolor...';
+ * }]);
+ * </script>
+ * <div ng-controller="ExampleController">
+ * <input ng-model="title" aria-label="title"> <br/>
+ * <textarea ng-model="text" aria-label="text"></textarea> <br/>
+ * <pane title="{{title}}"><span>{{text}}</span></pane>
+ * </div>
+ * </file>
+ * <file name="protractor.js" type="protractor">
+ * it('should have transcluded', function() {
+ * var titleElement = element(by.model('title'));
+ * titleElement.clear();
+ * titleElement.sendKeys('TITLE');
+ * var textElement = element(by.model('text'));
+ * textElement.clear();
+ * textElement.sendKeys('TEXT');
+ * expect(element(by.binding('title')).getText()).toEqual('TITLE');
+ * expect(element(by.binding('text')).getText()).toEqual('TEXT');
+ * });
+ * </file>
+ * </example>
+ *
+ * @example
+ * ### Transclude fallback content
+ * This example shows how to use `NgTransclude` with fallback content, that
+ * is displayed if no transcluded content is provided.
+ *
+ * <example module="transcludeFallbackContentExample" name="ng-transclude">
+ * <file name="index.html">
+ * <script>
+ * angular.module('transcludeFallbackContentExample', [])
+ * .directive('myButton', function(){
+ * return {
+ * restrict: 'E',
+ * transclude: true,
+ * scope: true,
+ * template: '<button style="cursor: pointer;">' +
+ * '<ng-transclude>' +
+ * '<b style="color: red;">Button1</b>' +
+ * '</ng-transclude>' +
+ * '</button>'
+ * };
+ * });
+ * </script>
+ * <!-- fallback button content -->
+ * <my-button id="fallback"></my-button>
+ * <!-- modified button content -->
+ * <my-button id="modified">
+ * <i style="color: green;">Button2</i>
+ * </my-button>
+ * </file>
+ * <file name="protractor.js" type="protractor">
+ * it('should have different transclude element content', function() {
+ * expect(element(by.id('fallback')).getText()).toBe('Button1');
+ * expect(element(by.id('modified')).getText()).toBe('Button2');
+ * });
+ * </file>
+ * </example>
*
* @example
* ### Multi-slot transclusion
- <example name="multiSlotTranscludeExample" module="multiSlotTranscludeExample">
- <file name="index.html">
- <div ng-controller="ExampleController">
- <input ng-model="title" aria-label="title"> <br/>
- <textarea ng-model="text" aria-label="text"></textarea> <br/>
- <pane>
- <pane-title><a ng-href="{{link}}">{{title}}</a></pane-title>
- <pane-body><p>{{text}}</p></pane-body>
- </pane>
- </div>
- </file>
- <file name="app.js">
- angular.module('multiSlotTranscludeExample', [])
- .directive('pane', function(){
- return {
- restrict: 'E',
- transclude: {
- 'paneTitle': '?title',
- 'paneBody': 'body'
- },
- template: '<div style="border: 1px solid black;">' +
- '<div ng-transclude="title" style="background-color: gray"></div>' +
- '<div ng-transclude="body"></div>' +
- '</div>'
- };
- })
- .controller('ExampleController', ['$scope', function($scope) {
- $scope.title = 'Lorem Ipsum';
- $scope.link = "https://google.com";
- $scope.text = 'Neque porro quisquam est qui dolorem ipsum quia dolor...';
- }]);
- </file>
- <file name="protractor.js" type="protractor">
- it('should have transcluded the title and the body', function() {
- var titleElement = element(by.model('title'));
- titleElement.clear();
- titleElement.sendKeys('TITLE');
- var textElement = element(by.model('text'));
- textElement.clear();
- textElement.sendKeys('TEXT');
- expect(element(by.binding('title')).getText()).toEqual('TITLE');
- expect(element(by.binding('text')).getText()).toEqual('TEXT');
- });
- </file>
- </example> */
+ * This example demonstrates using multi-slot transclusion in a component directive.
+ * <example name="multiSlotTranscludeExample" module="multiSlotTranscludeExample">
+ * <file name="index.html">
+ * <style>
+ * .title, .footer {
+ * background-color: gray
+ * }
+ * </style>
+ * <div ng-controller="ExampleController">
+ * <input ng-model="title" aria-label="title"> <br/>
+ * <textarea ng-model="text" aria-label="text"></textarea> <br/>
+ * <pane>
+ * <pane-title><a ng-href="{{link}}">{{title}}</a></pane-title>
+ * <pane-body><p>{{text}}</p></pane-body>
+ * </pane>
+ * </div>
+ * </file>
+ * <file name="app.js">
+ * angular.module('multiSlotTranscludeExample', [])
+ * .directive('pane', function() {
+ * return {
+ * restrict: 'E',
+ * transclude: {
+ * 'title': '?paneTitle',
+ * 'body': 'paneBody',
+ * 'footer': '?paneFooter'
+ * },
+ * template: '<div style="border: 1px solid black;">' +
+ * '<div class="title" ng-transclude="title">Fallback Title</div>' +
+ * '<div ng-transclude="body"></div>' +
+ * '<div class="footer" ng-transclude="footer">Fallback Footer</div>' +
+ * '</div>'
+ * };
+ * })
+ * .controller('ExampleController', ['$scope', function($scope) {
+ * $scope.title = 'Lorem Ipsum';
+ * $scope.link = 'https://google.com';
+ * $scope.text = 'Neque porro quisquam est qui dolorem ipsum quia dolor...';
+ * }]);
+ * </file>
+ * <file name="protractor.js" type="protractor">
+ * it('should have transcluded the title and the body', function() {
+ * var titleElement = element(by.model('title'));
+ * titleElement.clear();
+ * titleElement.sendKeys('TITLE');
+ * var textElement = element(by.model('text'));
+ * textElement.clear();
+ * textElement.sendKeys('TEXT');
+ * expect(element(by.css('.title')).getText()).toEqual('TITLE');
+ * expect(element(by.binding('text')).getText()).toEqual('TEXT');
+ * expect(element(by.css('.footer')).getText()).toEqual('Fallback Footer');
+ * });
+ * </file>
+ * </example>
+ */
var ngTranscludeMinErr = minErr('ngTransclude');
-var ngTranscludeDirective = ngDirective({
- restrict: 'EAC',
- link: function($scope, $element, $attrs, controller, $transclude) {
+var ngTranscludeDirective = ['$compile', function($compile) {
+ return {
+ restrict: 'EAC',
+ terminal: true,
+ compile: function ngTranscludeCompile(tElement) {
- function ngTranscludeCloneAttachFn(clone) {
- $element.empty();
- $element.append(clone);
- }
+ // Remove and cache any original content to act as a fallback
+ var fallbackLinkFn = $compile(tElement.contents());
+ tElement.empty();
- if (!$transclude) {
- throw ngTranscludeMinErr('orphan',
- 'Illegal use of ngTransclude directive in the template! ' +
- 'No parent directive that requires a transclusion found. ' +
- 'Element: {0}',
- startingTag($element));
- }
+ return function ngTranscludePostLink($scope, $element, $attrs, controller, $transclude) {
- $transclude(ngTranscludeCloneAttachFn, null, $attrs.ngTransclude || $attrs.ngTranscludeSlot);
- }
-});
+ if (!$transclude) {
+ throw ngTranscludeMinErr('orphan',
+ 'Illegal use of ngTransclude directive in the template! ' +
+ 'No parent directive that requires a transclusion found. ' +
+ 'Element: {0}',
+ startingTag($element));
+ }
+
+
+ // If the attribute is of the form: `ng-transclude="ng-transclude"` then treat it like the default
+ if ($attrs.ngTransclude === $attrs.$attr.ngTransclude) {
+ $attrs.ngTransclude = '';
+ }
+ var slotName = $attrs.ngTransclude || $attrs.ngTranscludeSlot;
+
+ // If the slot is required and no transclusion content is provided then this call will throw an error
+ $transclude(ngTranscludeCloneAttachFn, null, slotName);
+
+ // If the slot is optional and no transclusion content is provided then use the fallback content
+ if (slotName && !$transclude.isSlotFilled(slotName)) {
+ useFallbackContent();
+ }
+
+ function ngTranscludeCloneAttachFn(clone, transcludedScope) {
+ if (clone.length && notWhitespace(clone)) {
+ $element.append(clone);
+ } else {
+ useFallbackContent();
+ // There is nothing linked against the transcluded scope since no content was available,
+ // so it should be safe to clean up the generated scope.
+ transcludedScope.$destroy();
+ }
+ }
+
+ function useFallbackContent() {
+ // Since this is the fallback content rather than the transcluded content,
+ // we link against the scope of this directive rather than the transcluded scope
+ fallbackLinkFn($scope, function(clone) {
+ $element.append(clone);
+ });
+ }
+
+ function notWhitespace(nodes) {
+ for (var i = 0, ii = nodes.length; i < ii; i++) {
+ var node = nodes[i];
+ if (node.nodeType !== NODE_TYPE_TEXT || node.nodeValue.trim()) {
+ return true;
+ }
+ }
+ }
+ };
+ }
+ };
+}];
/**
* @ngdoc directive
@@ -28652,7 +32082,7 @@ var ngTranscludeDirective = ngDirective({
* @param {string} id Cache name of the template.
*
* @example
- <example>
+ <example name="script-tag">
<file name="index.html">
<script type="text/ng-template" id="/tpl.html">
Content of the template.
@@ -28674,7 +32104,7 @@ var scriptDirective = ['$templateCache', function($templateCache) {
restrict: 'E',
terminal: true,
compile: function(element, attr) {
- if (attr.type == 'text/ng-template') {
+ if (attr.type === 'text/ng-template') {
var templateUrl = attr.id,
text = element[0].text;
@@ -28684,15 +32114,20 @@ var scriptDirective = ['$templateCache', function($templateCache) {
};
}];
+/* exported selectDirective, optionDirective */
+
var noopNgModelController = { $setViewValue: noop, $render: noop };
-function chromeHack(optionElement) {
- // Workaround for https://code.google.com/p/chromium/issues/detail?id=381459
- // Adding an <option selected="selected"> element to a <select required="required"> should
- // automatically select the new element
- if (optionElement[0].hasAttribute('selected')) {
- optionElement[0].selected = true;
- }
+function setOptionSelectedStatus(optionEl, value) {
+ optionEl.prop('selected', value); // needed for IE
+ /**
+ * When unselecting an option, setting the property to null / false should be enough
+ * However, screenreaders might react to the selected attribute instead, see
+ * https://github.com/angular/angular.js/issues/14419
+ * Note: "selected" is a boolean attr and will be removed when the "value" arg in attr() is false
+ * or null
+ */
+ optionEl.attr('selected', value);
}
/**
@@ -28704,13 +32139,16 @@ function chromeHack(optionElement) {
* added `<option>` elements, perhaps by an `ngRepeat` directive.
*/
var SelectController =
- ['$element', '$scope', '$attrs', function($element, $scope, $attrs) {
+ ['$element', '$scope', /** @this */ function($element, $scope) {
var self = this,
- optionsMap = new HashMap();
+ optionsMap = new NgMap();
+
+ self.selectValueMap = {}; // Keys are the hashed values, values the original values
// If the ngModel doesn't get provided then provide a dummy noop version to prevent errors
self.ngModelCtrl = noopNgModelController;
+ self.multiple = false;
// The "unknown" option is one that is prepended to the list if the viewValue
// does not match any of the options. When it is rendered the value of the unknown
@@ -28718,43 +32156,95 @@ var SelectController =
//
// We can't just jqLite('<option>') since jqLite is not smart enough
// to create it in <select> and IE barfs otherwise.
- self.unknownOption = jqLite(document.createElement('option'));
+ self.unknownOption = jqLite(window.document.createElement('option'));
+
+ // The empty option is an option with the value '' that te application developer can
+ // provide inside the select. When the model changes to a value that doesn't match an option,
+ // it is selected - so if an empty option is provided, no unknown option is generated.
+ // However, the empty option is not removed when the model matches an option. It is always selectable
+ // and indicates that a "null" selection has been made.
+ self.hasEmptyOption = false;
+ self.emptyOption = undefined;
+
self.renderUnknownOption = function(val) {
- var unknownVal = '? ' + hashKey(val) + ' ?';
+ var unknownVal = self.generateUnknownOptionValue(val);
self.unknownOption.val(unknownVal);
$element.prepend(self.unknownOption);
+ setOptionSelectedStatus(self.unknownOption, true);
$element.val(unknownVal);
};
- $scope.$on('$destroy', function() {
- // disable unknown option so that we don't do work when the whole select is being destroyed
- self.renderUnknownOption = noop;
- });
+ self.updateUnknownOption = function(val) {
+ var unknownVal = self.generateUnknownOptionValue(val);
+ self.unknownOption.val(unknownVal);
+ setOptionSelectedStatus(self.unknownOption, true);
+ $element.val(unknownVal);
+ };
+
+ self.generateUnknownOptionValue = function(val) {
+ return '? ' + hashKey(val) + ' ?';
+ };
self.removeUnknownOption = function() {
if (self.unknownOption.parent()) self.unknownOption.remove();
};
+ self.selectEmptyOption = function() {
+ if (self.emptyOption) {
+ $element.val('');
+ setOptionSelectedStatus(self.emptyOption, true);
+ }
+ };
+
+ self.unselectEmptyOption = function() {
+ if (self.hasEmptyOption) {
+ self.emptyOption.removeAttr('selected');
+ }
+ };
+
+ $scope.$on('$destroy', function() {
+ // disable unknown option so that we don't do work when the whole select is being destroyed
+ self.renderUnknownOption = noop;
+ });
// Read the value of the select control, the implementation of this changes depending
// upon whether the select can have multiple values and whether ngOptions is at work.
self.readValue = function readSingleValue() {
- self.removeUnknownOption();
- return $element.val();
+ var val = $element.val();
+ // ngValue added option values are stored in the selectValueMap, normal interpolations are not
+ var realVal = val in self.selectValueMap ? self.selectValueMap[val] : val;
+
+ if (self.hasOption(realVal)) {
+ return realVal;
+ }
+
+ return null;
};
// Write the value to the select control, the implementation of this changes depending
// upon whether the select can have multiple values and whether ngOptions is at work.
self.writeValue = function writeSingleValue(value) {
+ // Make sure to remove the selected attribute from the previously selected option
+ // Otherwise, screen readers might get confused
+ var currentlySelectedOption = $element[0].options[$element[0].selectedIndex];
+ if (currentlySelectedOption) setOptionSelectedStatus(jqLite(currentlySelectedOption), false);
+
if (self.hasOption(value)) {
self.removeUnknownOption();
- $element.val(value);
- if (value === '') self.emptyOption.prop('selected', true); // to make IE9 happy
+
+ var hashedVal = hashKey(value);
+ $element.val(hashedVal in self.selectValueMap ? hashedVal : value);
+
+ // Set selected attribute and property on selected option for screen readers
+ var selectedOption = $element[0].options[$element[0].selectedIndex];
+ setOptionSelectedStatus(jqLite(selectedOption), true);
} else {
if (value == null && self.emptyOption) {
self.removeUnknownOption();
- $element.val('');
+ self.selectEmptyOption();
+ } else if (self.unknownOption.parent().length) {
+ self.updateUnknownOption(value);
} else {
self.renderUnknownOption(value);
}
@@ -28764,14 +32254,19 @@ var SelectController =
// Tell the select control that an option, with the given value, has been added
self.addOption = function(value, element) {
+ // Skip comment nodes, as they only pollute the `optionsMap`
+ if (element[0].nodeType === NODE_TYPE_COMMENT) return;
+
assertNotHasOwnProperty(value, '"option value"');
if (value === '') {
+ self.hasEmptyOption = true;
self.emptyOption = element;
}
var count = optionsMap.get(value) || 0;
- optionsMap.put(value, count + 1);
- self.ngModelCtrl.$render();
- chromeHack(element);
+ optionsMap.set(value, count + 1);
+ // Only render at the end of a digest. This improves render performance when many options
+ // are added during a digest and ensures all relevant options are correctly marked as selected
+ scheduleRender();
};
// Tell the select control that an option, with the given value, has been removed
@@ -28779,12 +32274,13 @@ var SelectController =
var count = optionsMap.get(value);
if (count) {
if (count === 1) {
- optionsMap.remove(value);
+ optionsMap.delete(value);
if (value === '') {
+ self.hasEmptyOption = false;
self.emptyOption = undefined;
}
} else {
- optionsMap.put(value, count - 1);
+ optionsMap.set(value, count - 1);
}
}
};
@@ -28795,35 +32291,131 @@ var SelectController =
};
+ var renderScheduled = false;
+ function scheduleRender() {
+ if (renderScheduled) return;
+ renderScheduled = true;
+ $scope.$$postDigest(function() {
+ renderScheduled = false;
+ self.ngModelCtrl.$render();
+ });
+ }
+
+ var updateScheduled = false;
+ function scheduleViewValueUpdate(renderAfter) {
+ if (updateScheduled) return;
+
+ updateScheduled = true;
+
+ $scope.$$postDigest(function() {
+ if ($scope.$$destroyed) return;
+
+ updateScheduled = false;
+ self.ngModelCtrl.$setViewValue(self.readValue());
+ if (renderAfter) self.ngModelCtrl.$render();
+ });
+ }
+
+
self.registerOption = function(optionScope, optionElement, optionAttrs, interpolateValueFn, interpolateTextFn) {
- if (interpolateValueFn) {
+ if (optionAttrs.$attr.ngValue) {
+ // The value attribute is set by ngValue
+ var oldVal, hashedVal = NaN;
+ optionAttrs.$observe('value', function valueAttributeObserveAction(newVal) {
+
+ var removal;
+ var previouslySelected = optionElement.prop('selected');
+
+ if (isDefined(hashedVal)) {
+ self.removeOption(oldVal);
+ delete self.selectValueMap[hashedVal];
+ removal = true;
+ }
+
+ hashedVal = hashKey(newVal);
+ oldVal = newVal;
+ self.selectValueMap[hashedVal] = newVal;
+ self.addOption(newVal, optionElement);
+ // Set the attribute directly instead of using optionAttrs.$set - this stops the observer
+ // from firing a second time. Other $observers on value will also get the result of the
+ // ngValue expression, not the hashed value
+ optionElement.attr('value', hashedVal);
+
+ if (removal && previouslySelected) {
+ scheduleViewValueUpdate();
+ }
+
+ });
+ } else if (interpolateValueFn) {
// The value attribute is interpolated
- var oldVal;
optionAttrs.$observe('value', function valueAttributeObserveAction(newVal) {
+ // This method is overwritten in ngOptions and has side-effects!
+ self.readValue();
+
+ var removal;
+ var previouslySelected = optionElement.prop('selected');
+
if (isDefined(oldVal)) {
self.removeOption(oldVal);
+ removal = true;
}
oldVal = newVal;
self.addOption(newVal, optionElement);
+
+ if (removal && previouslySelected) {
+ scheduleViewValueUpdate();
+ }
});
} else if (interpolateTextFn) {
// The text content is interpolated
optionScope.$watch(interpolateTextFn, function interpolateWatchAction(newVal, oldVal) {
optionAttrs.$set('value', newVal);
+ var previouslySelected = optionElement.prop('selected');
if (oldVal !== newVal) {
self.removeOption(oldVal);
}
self.addOption(newVal, optionElement);
+
+ if (oldVal && previouslySelected) {
+ scheduleViewValueUpdate();
+ }
});
} else {
// The value attribute is static
self.addOption(optionAttrs.value, optionElement);
}
+
+ optionAttrs.$observe('disabled', function(newVal) {
+
+ // Since model updates will also select disabled options (like ngOptions),
+ // we only have to handle options becoming disabled, not enabled
+
+ if (newVal === 'true' || newVal && optionElement.prop('selected')) {
+ if (self.multiple) {
+ scheduleViewValueUpdate(true);
+ } else {
+ self.ngModelCtrl.$setViewValue(null);
+ self.ngModelCtrl.$render();
+ }
+ }
+ });
+
optionElement.on('$destroy', function() {
- self.removeOption(optionAttrs.value);
- self.ngModelCtrl.$render();
+ var currentValue = self.readValue();
+ var removeValue = optionAttrs.value;
+
+ self.removeOption(removeValue);
+ scheduleRender();
+
+ if (self.multiple && currentValue && currentValue.indexOf(removeValue) !== -1 ||
+ currentValue === removeValue
+ ) {
+ // When multiple (selected) options are destroyed at the same time, we don't want
+ // to run a model update for each of them. Instead, run a single update in the $$postDigest
+ scheduleViewValueUpdate(true);
+ }
});
};
}];
@@ -28834,24 +32426,34 @@ var SelectController =
* @restrict E
*
* @description
- * HTML `SELECT` element with angular data-binding.
+ * HTML `select` element with angular data-binding.
*
* The `select` directive is used together with {@link ngModel `ngModel`} to provide data-binding
* between the scope and the `<select>` control (including setting default values).
- * Ìt also handles dynamic `<option>` elements, which can be added using the {@link ngRepeat `ngRepeat}` or
+ * It also handles dynamic `<option>` elements, which can be added using the {@link ngRepeat `ngRepeat}` or
* {@link ngOptions `ngOptions`} directives.
*
* When an item in the `<select>` menu is selected, the value of the selected option will be bound
* to the model identified by the `ngModel` directive. With static or repeated options, this is
* the content of the `value` attribute or the textContent of the `<option>`, if the value attribute is missing.
- * If you want dynamic value attributes, you can use interpolation inside the value attribute.
+ * Value and textContent can be interpolated.
*
- * <div class="alert alert-warning">
- * Note that the value of a `select` directive used without `ngOptions` is always a string.
- * When the model needs to be bound to a non-string value, you must either explictly convert it
- * using a directive (see example below) or use `ngOptions` to specify the set of options.
- * This is because an option element can only be bound to string values at present.
- * </div>
+ * ## Matching model and option values
+ *
+ * In general, the match between the model and an option is evaluated by strictly comparing the model
+ * value against the value of the available options.
+ *
+ * If you are setting the option value with the option's `value` attribute, or textContent, the
+ * value will always be a `string` which means that the model value must also be a string.
+ * Otherwise the `select` directive cannot match them correctly.
+ *
+ * To bind the model to a non-string value, you can use one of the following strategies:
+ * - the {@link ng.ngOptions `ngOptions`} directive
+ * ({@link ng.select#using-select-with-ngoptions-and-setting-a-default-value})
+ * - the {@link ng.ngValue `ngValue`} directive, which allows arbitrary expressions to be
+ * option values ({@link ng.select#using-ngvalue-to-bind-the-model-to-an-array-of-objects Example})
+ * - model $parsers / $formatters to convert the string value
+ * ({@link ng.select#binding-select-to-a-non-string-value-via-ngmodel-parsing-formatting Example})
*
* If the viewValue of `ngModel` does not match any of the options, then the control
* will automatically add an "unknown" option, which it then removes when the mismatch is resolved.
@@ -28860,13 +32462,17 @@ var SelectController =
* be nested into the `<select>` element. This element will then represent the `null` or "not selected"
* option. See example below for demonstration.
*
- * <div class="alert alert-info">
+ * ## Choosing between `ngRepeat` and `ngOptions`
+ *
* In many cases, `ngRepeat` can be used on `<option>` elements instead of {@link ng.directive:ngOptions
- * ngOptions} to achieve a similar result. However, `ngOptions` provides some benefits, such as
- * more flexibility in how the `<select>`'s model is assigned via the `select` **`as`** part of the
- * comprehension expression, and additionally in reducing memory and increasing speed by not creating
- * a new scope for each repeated instance.
- * </div>
+ * ngOptions} to achieve a similar result. However, `ngOptions` provides some benefits:
+ * - more flexibility in how the `<select>`'s model is assigned via the `select` **`as`** part of the
+ * comprehension expression
+ * - reduced memory consumption by not creating a new scope for each repeated instance
+ * - increased render speed by creating the options in a documentFragment instead of individually
+ *
+ * Specifically, select with repeated options slows down significantly starting at 2000 options in
+ * Chrome and Internet Explorer / Edge.
*
*
* @param {string} ngModel Assignable angular expression to data-bind to.
@@ -28881,6 +32487,8 @@ var SelectController =
* interaction with the select element.
* @param {string=} ngOptions sets the options that the select is populated with and defines what is
* set on the model on selection. See {@link ngOptions `ngOptions`}.
+ * @param {string=} ngAttrSize sets the size of the select element dynamically. Uses the
+ * {@link guide/interpolation#-ngattr-for-binding-to-arbitrary-attributes ngAttr} directive.
*
* @example
* ### Simple `select` elements with static options
@@ -28921,7 +32529,7 @@ var SelectController =
* $scope.data = {
* singleSelect: null,
* multipleSelect: [],
- * option1: 'option-1',
+ * option1: 'option-1'
* };
*
* $scope.forceUnknownOption = function() {
@@ -28932,34 +32540,65 @@ var SelectController =
*</example>
*
* ### Using `ngRepeat` to generate `select` options
- * <example name="ngrepeat-select" module="ngrepeatSelect">
+ * <example name="select-ngrepeat" module="ngrepeatSelect">
* <file name="index.html">
* <div ng-controller="ExampleController">
* <form name="myForm">
* <label for="repeatSelect"> Repeat select: </label>
- * <select name="repeatSelect" id="repeatSelect" ng-model="data.repeatSelect">
+ * <select name="repeatSelect" id="repeatSelect" ng-model="data.model">
* <option ng-repeat="option in data.availableOptions" value="{{option.id}}">{{option.name}}</option>
* </select>
* </form>
* <hr>
- * <tt>repeatSelect = {{data.repeatSelect}}</tt><br/>
+ * <tt>model = {{data.model}}</tt><br/>
* </div>
* </file>
* <file name="app.js">
* angular.module('ngrepeatSelect', [])
* .controller('ExampleController', ['$scope', function($scope) {
* $scope.data = {
- * repeatSelect: null,
+ * model: null,
* availableOptions: [
* {id: '1', name: 'Option A'},
* {id: '2', name: 'Option B'},
* {id: '3', name: 'Option C'}
- * ],
+ * ]
* };
* }]);
* </file>
*</example>
*
+ * ### Using `ngValue` to bind the model to an array of objects
+ * <example name="select-ngvalue" module="ngvalueSelect">
+ * <file name="index.html">
+ * <div ng-controller="ExampleController">
+ * <form name="myForm">
+ * <label for="ngvalueselect"> ngvalue select: </label>
+ * <select size="6" name="ngvalueselect" ng-model="data.model" multiple>
+ * <option ng-repeat="option in data.availableOptions" ng-value="option.value">{{option.name}}</option>
+ * </select>
+ * </form>
+ * <hr>
+ * <pre>model = {{data.model | json}}</pre><br/>
+ * </div>
+ * </file>
+ * <file name="app.js">
+ * angular.module('ngvalueSelect', [])
+ * .controller('ExampleController', ['$scope', function($scope) {
+ * $scope.data = {
+ * model: null,
+ * availableOptions: [
+ {value: 'myString', name: 'string'},
+ {value: 1, name: 'integer'},
+ {value: true, name: 'boolean'},
+ {value: null, name: 'null'},
+ {value: {prop: 'value'}, name: 'object'},
+ {value: ['a'], name: 'array'}
+ * ]
+ * };
+ * }]);
+ * </file>
+ *</example>
*
* ### Using `select` with `ngOptions` and setting a default value
* See the {@link ngOptions ngOptions documentation} for more `ngOptions` usage examples.
@@ -29025,7 +32664,6 @@ var SelectController =
* </file>
* <file name="protractor.js" type="protractor">
* it('should initialize to model', function() {
- * var select = element(by.css('select'));
* expect(element(by.model('model.id')).$('option:checked').getText()).toEqual('Two');
* });
* </file>
@@ -29040,31 +32678,31 @@ var selectDirective = function() {
controller: SelectController,
priority: 1,
link: {
- pre: selectPreLink
+ pre: selectPreLink,
+ post: selectPostLink
}
};
function selectPreLink(scope, element, attr, ctrls) {
- // if ngModel is not defined, we don't need to do anything
+ var selectCtrl = ctrls[0];
var ngModelCtrl = ctrls[1];
- if (!ngModelCtrl) return;
- var selectCtrl = ctrls[0];
+ // if ngModel is not defined, we don't need to do anything but set the registerOption
+ // function to noop, so options don't get added internally
+ if (!ngModelCtrl) {
+ selectCtrl.registerOption = noop;
+ return;
+ }
- selectCtrl.ngModelCtrl = ngModelCtrl;
- // We delegate rendering to the `writeValue` method, which can be changed
- // if the select can have multiple selected values or if the options are being
- // generated by `ngOptions`
- ngModelCtrl.$render = function() {
- selectCtrl.writeValue(ngModelCtrl.$viewValue);
- };
+ selectCtrl.ngModelCtrl = ngModelCtrl;
// When the selected item(s) changes we delegate getting the value of the select control
// to the `readValue` method, which can be changed if the select can have multiple
// selected values or if the options are being generated by `ngOptions`
element.on('change', function() {
+ selectCtrl.removeUnknownOption();
scope.$apply(function() {
ngModelCtrl.$setViewValue(selectCtrl.readValue());
});
@@ -29075,13 +32713,15 @@ var selectDirective = function() {
// we have to add an extra watch since ngModel doesn't work well with arrays - it
// doesn't trigger rendering if only an item in the array changes.
if (attr.multiple) {
+ selectCtrl.multiple = true;
// Read value now needs to check each option to see if it is selected
selectCtrl.readValue = function readMultipleValue() {
var array = [];
forEach(element.find('option'), function(option) {
- if (option.selected) {
- array.push(option.value);
+ if (option.selected && !option.disabled) {
+ var val = option.value;
+ array.push(val in selectCtrl.selectValueMap ? selectCtrl.selectValueMap[val] : val);
}
});
return array;
@@ -29089,9 +32729,21 @@ var selectDirective = function() {
// Write value now needs to set the selected property of each matching option
selectCtrl.writeValue = function writeMultipleValue(value) {
- var items = new HashMap(value);
forEach(element.find('option'), function(option) {
- option.selected = isDefined(items.get(option.value));
+ var shouldBeSelected = !!value && (includes(value, option.value) ||
+ includes(value, selectCtrl.selectValueMap[option.value]));
+ var currentlySelected = option.selected;
+
+ // IE and Edge, adding options to the selection via shift+click/UP/DOWN,
+ // will de-select already selected options if "selected" on those options was set
+ // more than once (i.e. when the options were already selected)
+ // So we only modify the selected property if neccessary.
+ // Note: this behavior cannot be replicated via unit tests because it only shows in the
+ // actual user interface.
+ if (shouldBeSelected !== currentlySelected) {
+ setOptionSelectedStatus(jqLite(option), shouldBeSelected);
+ }
+
});
};
@@ -29114,6 +32766,23 @@ var selectDirective = function() {
}
}
+
+ function selectPostLink(scope, element, attrs, ctrls) {
+ // if ngModel is not defined, we don't need to do anything
+ var ngModelCtrl = ctrls[1];
+ if (!ngModelCtrl) return;
+
+ var selectCtrl = ctrls[0];
+
+ // We delegate rendering to the `writeValue` method, which can be changed
+ // if the select can have multiple selected values or if the options are being
+ // generated by `ngOptions`.
+ // This must be done in the postLink fn to prevent $render to be called before
+ // all nodes have been linked correctly.
+ ngModelCtrl.$render = function() {
+ selectCtrl.writeValue(ngModelCtrl.$viewValue);
+ };
+ }
};
@@ -29125,21 +32794,23 @@ var optionDirective = ['$interpolate', function($interpolate) {
restrict: 'E',
priority: 100,
compile: function(element, attr) {
+ var interpolateValueFn, interpolateTextFn;
- if (isDefined(attr.value)) {
+ if (isDefined(attr.ngValue)) {
+ // Will be handled by registerOption
+ } else if (isDefined(attr.value)) {
// If the value attribute is defined, check if it contains an interpolation
- var interpolateValueFn = $interpolate(attr.value, true);
+ interpolateValueFn = $interpolate(attr.value, true);
} else {
// If the value attribute is not defined then we fall back to the
// text content of the option element, which may be interpolated
- var interpolateTextFn = $interpolate(element.text(), true);
+ interpolateTextFn = $interpolate(element.text(), true);
if (!interpolateTextFn) {
attr.$set('value', element.text());
}
}
return function(scope, element, attr) {
-
// This is an optimization over using ^^ since we don't want to have to search
// all the way to the root of the DOM for every single option element
var selectCtrlName = '$selectController',
@@ -29155,11 +32826,65 @@ var optionDirective = ['$interpolate', function($interpolate) {
};
}];
-var styleDirective = valueFn({
- restrict: 'E',
- terminal: false
-});
+/**
+ * @ngdoc directive
+ * @name ngRequired
+ * @restrict A
+ *
+ * @description
+ *
+ * ngRequired adds the required {@link ngModel.NgModelController#$validators `validator`} to {@link ngModel `ngModel`}.
+ * It is most often used for {@link input `input`} and {@link select `select`} controls, but can also be
+ * applied to custom controls.
+ *
+ * The directive sets the `required` attribute on the element if the Angular expression inside
+ * `ngRequired` evaluates to true. A special directive for setting `required` is necessary because we
+ * cannot use interpolation inside `required`. See the {@link guide/interpolation interpolation guide}
+ * for more info.
+ *
+ * The validator will set the `required` error key to true if the `required` attribute is set and
+ * calling {@link ngModel.NgModelController#$isEmpty `NgModelController.$isEmpty`} with the
+ * {@link ngModel.NgModelController#$viewValue `ngModel.$viewValue`} returns `true`. For example, the
+ * `$isEmpty()` implementation for `input[text]` checks the length of the `$viewValue`. When developing
+ * custom controls, `$isEmpty()` can be overwritten to account for a $viewValue that is not string-based.
+ *
+ * @example
+ * <example name="ngRequiredDirective" module="ngRequiredExample">
+ * <file name="index.html">
+ * <script>
+ * angular.module('ngRequiredExample', [])
+ * .controller('ExampleController', ['$scope', function($scope) {
+ * $scope.required = true;
+ * }]);
+ * </script>
+ * <div ng-controller="ExampleController">
+ * <form name="form">
+ * <label for="required">Toggle required: </label>
+ * <input type="checkbox" ng-model="required" id="required" />
+ * <br>
+ * <label for="input">This input must be filled if `required` is true: </label>
+ * <input type="text" ng-model="model" id="input" name="input" ng-required="required" /><br>
+ * <hr>
+ * required error set? = <code>{{form.input.$error.required}}</code><br>
+ * model = <code>{{model}}</code>
+ * </form>
+ * </div>
+ * </file>
+ * <file name="protractor.js" type="protractor">
+ var required = element(by.binding('form.input.$error.required'));
+ var model = element(by.binding('model'));
+ var input = element(by.id('input'));
+ it('should set the required error', function() {
+ expect(required.getText()).toContain('true');
+
+ input.sendKeys('123');
+ expect(required.getText()).not.toContain('true');
+ expect(model.getText()).toContain('123');
+ });
+ * </file>
+ * </example>
+ */
var requiredDirective = function() {
return {
restrict: 'A',
@@ -29179,7 +32904,81 @@ var requiredDirective = function() {
};
};
+/**
+ * @ngdoc directive
+ * @name ngPattern
+ *
+ * @description
+ *
+ * ngPattern adds the pattern {@link ngModel.NgModelController#$validators `validator`} to {@link ngModel `ngModel`}.
+ * It is most often used for text-based {@link input `input`} controls, but can also be applied to custom text-based controls.
+ *
+ * The validator sets the `pattern` error key if the {@link ngModel.NgModelController#$viewValue `ngModel.$viewValue`}
+ * does not match a RegExp which is obtained by evaluating the Angular expression given in the
+ * `ngPattern` attribute value:
+ * * If the expression evaluates to a RegExp object, then this is used directly.
+ * * If the expression evaluates to a string, then it will be converted to a RegExp after wrapping it
+ * in `^` and `$` characters. For instance, `"abc"` will be converted to `new RegExp('^abc$')`.
+ *
+ * <div class="alert alert-info">
+ * **Note:** Avoid using the `g` flag on the RegExp, as it will cause each successive search to
+ * start at the index of the last search's match, thus not taking the whole input value into
+ * account.
+ * </div>
+ *
+ * <div class="alert alert-info">
+ * **Note:** This directive is also added when the plain `pattern` attribute is used, with two
+ * differences:
+ * <ol>
+ * <li>
+ * `ngPattern` does not set the `pattern` attribute and therefore HTML5 constraint validation is
+ * not available.
+ * </li>
+ * <li>
+ * The `ngPattern` attribute must be an expression, while the `pattern` value must be
+ * interpolated.
+ * </li>
+ * </ol>
+ * </div>
+ *
+ * @example
+ * <example name="ngPatternDirective" module="ngPatternExample">
+ * <file name="index.html">
+ * <script>
+ * angular.module('ngPatternExample', [])
+ * .controller('ExampleController', ['$scope', function($scope) {
+ * $scope.regex = '\\d+';
+ * }]);
+ * </script>
+ * <div ng-controller="ExampleController">
+ * <form name="form">
+ * <label for="regex">Set a pattern (regex string): </label>
+ * <input type="text" ng-model="regex" id="regex" />
+ * <br>
+ * <label for="input">This input is restricted by the current pattern: </label>
+ * <input type="text" ng-model="model" id="input" name="input" ng-pattern="regex" /><br>
+ * <hr>
+ * input valid? = <code>{{form.input.$valid}}</code><br>
+ * model = <code>{{model}}</code>
+ * </form>
+ * </div>
+ * </file>
+ * <file name="protractor.js" type="protractor">
+ var model = element(by.binding('model'));
+ var input = element(by.id('input'));
+ it('should validate the input with the default pattern', function() {
+ input.sendKeys('aaa');
+ expect(model.getText()).not.toContain('aaa');
+
+ input.clear().then(function() {
+ input.sendKeys('123');
+ expect(model.getText()).toContain('123');
+ });
+ });
+ * </file>
+ * </example>
+ */
var patternDirective = function() {
return {
restrict: 'A',
@@ -29211,7 +33010,72 @@ var patternDirective = function() {
};
};
+/**
+ * @ngdoc directive
+ * @name ngMaxlength
+ *
+ * @description
+ *
+ * ngMaxlength adds the maxlength {@link ngModel.NgModelController#$validators `validator`} to {@link ngModel `ngModel`}.
+ * It is most often used for text-based {@link input `input`} controls, but can also be applied to custom text-based controls.
+ *
+ * The validator sets the `maxlength` error key if the {@link ngModel.NgModelController#$viewValue `ngModel.$viewValue`}
+ * is longer than the integer obtained by evaluating the Angular expression given in the
+ * `ngMaxlength` attribute value.
+ *
+ * <div class="alert alert-info">
+ * **Note:** This directive is also added when the plain `maxlength` attribute is used, with two
+ * differences:
+ * <ol>
+ * <li>
+ * `ngMaxlength` does not set the `maxlength` attribute and therefore HTML5 constraint
+ * validation is not available.
+ * </li>
+ * <li>
+ * The `ngMaxlength` attribute must be an expression, while the `maxlength` value must be
+ * interpolated.
+ * </li>
+ * </ol>
+ * </div>
+ *
+ * @example
+ * <example name="ngMaxlengthDirective" module="ngMaxlengthExample">
+ * <file name="index.html">
+ * <script>
+ * angular.module('ngMaxlengthExample', [])
+ * .controller('ExampleController', ['$scope', function($scope) {
+ * $scope.maxlength = 5;
+ * }]);
+ * </script>
+ * <div ng-controller="ExampleController">
+ * <form name="form">
+ * <label for="maxlength">Set a maxlength: </label>
+ * <input type="number" ng-model="maxlength" id="maxlength" />
+ * <br>
+ * <label for="input">This input is restricted by the current maxlength: </label>
+ * <input type="text" ng-model="model" id="input" name="input" ng-maxlength="maxlength" /><br>
+ * <hr>
+ * input valid? = <code>{{form.input.$valid}}</code><br>
+ * model = <code>{{model}}</code>
+ * </form>
+ * </div>
+ * </file>
+ * <file name="protractor.js" type="protractor">
+ var model = element(by.binding('model'));
+ var input = element(by.id('input'));
+
+ it('should validate the input with the default maxlength', function() {
+ input.sendKeys('abcdef');
+ expect(model.getText()).not.toContain('abcdef');
+ input.clear().then(function() {
+ input.sendKeys('abcde');
+ expect(model.getText()).toContain('abcde');
+ });
+ });
+ * </file>
+ * </example>
+ */
var maxlengthDirective = function() {
return {
restrict: 'A',
@@ -29222,7 +33086,7 @@ var maxlengthDirective = function() {
var maxlength = -1;
attr.$observe('maxlength', function(value) {
var intVal = toInt(value);
- maxlength = isNaN(intVal) ? -1 : intVal;
+ maxlength = isNumberNaN(intVal) ? -1 : intVal;
ctrl.$validate();
});
ctrl.$validators.maxlength = function(modelValue, viewValue) {
@@ -29232,6 +33096,70 @@ var maxlengthDirective = function() {
};
};
+/**
+ * @ngdoc directive
+ * @name ngMinlength
+ *
+ * @description
+ *
+ * ngMinlength adds the minlength {@link ngModel.NgModelController#$validators `validator`} to {@link ngModel `ngModel`}.
+ * It is most often used for text-based {@link input `input`} controls, but can also be applied to custom text-based controls.
+ *
+ * The validator sets the `minlength` error key if the {@link ngModel.NgModelController#$viewValue `ngModel.$viewValue`}
+ * is shorter than the integer obtained by evaluating the Angular expression given in the
+ * `ngMinlength` attribute value.
+ *
+ * <div class="alert alert-info">
+ * **Note:** This directive is also added when the plain `minlength` attribute is used, with two
+ * differences:
+ * <ol>
+ * <li>
+ * `ngMinlength` does not set the `minlength` attribute and therefore HTML5 constraint
+ * validation is not available.
+ * </li>
+ * <li>
+ * The `ngMinlength` value must be an expression, while the `minlength` value must be
+ * interpolated.
+ * </li>
+ * </ol>
+ * </div>
+ *
+ * @example
+ * <example name="ngMinlengthDirective" module="ngMinlengthExample">
+ * <file name="index.html">
+ * <script>
+ * angular.module('ngMinlengthExample', [])
+ * .controller('ExampleController', ['$scope', function($scope) {
+ * $scope.minlength = 3;
+ * }]);
+ * </script>
+ * <div ng-controller="ExampleController">
+ * <form name="form">
+ * <label for="minlength">Set a minlength: </label>
+ * <input type="number" ng-model="minlength" id="minlength" />
+ * <br>
+ * <label for="input">This input is restricted by the current minlength: </label>
+ * <input type="text" ng-model="model" id="input" name="input" ng-minlength="minlength" /><br>
+ * <hr>
+ * input valid? = <code>{{form.input.$valid}}</code><br>
+ * model = <code>{{model}}</code>
+ * </form>
+ * </div>
+ * </file>
+ * <file name="protractor.js" type="protractor">
+ var model = element(by.binding('model'));
+ var input = element(by.id('input'));
+
+ it('should validate the input with the default minlength', function() {
+ input.sendKeys('ab');
+ expect(model.getText()).not.toContain('ab');
+
+ input.sendKeys('abc');
+ expect(model.getText()).toContain('abc');
+ });
+ * </file>
+ * </example>
+ */
var minlengthDirective = function() {
return {
restrict: 'A',
@@ -29252,13 +33180,15 @@ var minlengthDirective = function() {
};
if (window.angular.bootstrap) {
- //AngularJS is already loaded, so we can return here...
- console.log('WARNING: Tried to load angular more than once.');
+ // AngularJS is already loaded, so we can return here...
+ if (window.console) {
+ console.log('WARNING: Tried to load angular more than once.');
+ }
return;
}
-//try to bind to jquery now so that one can write jqLite(document).ready()
-//but we will rebind on bootstrap again.
+// try to bind to jquery now so that one can write jqLite(fn)
+// but we will rebind on bootstrap again.
bindJQuery();
publishExternalAPI(angular);
@@ -29344,6 +33274,20 @@ $provide.value("$locale", {
"Nov",
"Dec"
],
+ "STANDALONEMONTH": [
+ "January",
+ "February",
+ "March",
+ "April",
+ "May",
+ "June",
+ "July",
+ "August",
+ "September",
+ "October",
+ "November",
+ "December"
+ ],
"WEEKENDRANGE": [
5,
6
@@ -29387,14 +33331,15 @@ $provide.value("$locale", {
]
},
"id": "en-us",
+ "localeID": "en_US",
"pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;}
});
}]);
- jqLite(document).ready(function() {
- angularInit(document, bootstrap);
+ jqLite(function() {
+ angularInit(window.document, bootstrap);
});
-})(window, document);
+})(window);
!window.angular.$$csp().noInlineStyle && window.angular.element(document.head).prepend('<style type="text/css">@charset "UTF-8";[ng\\:cloak],[ng-cloak],[data-ng-cloak],[x-ng-cloak],.ng-cloak,.x-ng-cloak,.ng-hide:not(.ng-hide-animate){display:none !important;}ng\\:form{display:block;}.ng-animate-shim{visibility:hidden;}.ng-anchor{position:absolute;}</style>'); \ No newline at end of file
diff --git a/ecomp-sdk/epsdk-core/pom.xml b/ecomp-sdk/epsdk-core/pom.xml
index 64409326..0e8fc4cf 100644
--- a/ecomp-sdk/epsdk-core/pom.xml
+++ b/ecomp-sdk/epsdk-core/pom.xml
@@ -312,7 +312,7 @@
<dependency>
<groupId>commons-codec</groupId>
<artifactId>commons-codec</artifactId>
- <version>1.10</version>
+ <version>1.12</version>
</dependency>
<dependency>
<groupId>commons-lang</groupId>
@@ -337,7 +337,7 @@
<dependency>
<groupId>org.bouncycastle</groupId>
<artifactId>bcprov-jdk15on</artifactId>
- <version>1.59</version>
+ <version>1.60</version>
</dependency>
<!-- Elastic Search -->
@@ -464,7 +464,7 @@
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
- <version>3.14</version>
+ <version>3.17</version>
<exclusions>
<exclusion>
<groupId>commons-logging</groupId>
@@ -494,7 +494,7 @@
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-scratchpad</artifactId>
- <version>3.14</version>
+ <version>3.17</version>
<exclusions>
<exclusion>
<groupId>commons-logging</groupId>
diff --git a/ecomp-sdk/epsdk-core/src/main/java/org/onap/portalsdk/core/controller/FusionBaseController.java b/ecomp-sdk/epsdk-core/src/main/java/org/onap/portalsdk/core/controller/FusionBaseController.java
index bad77424..93fb63c2 100644
--- a/ecomp-sdk/epsdk-core/src/main/java/org/onap/portalsdk/core/controller/FusionBaseController.java
+++ b/ecomp-sdk/epsdk-core/src/main/java/org/onap/portalsdk/core/controller/FusionBaseController.java
@@ -80,7 +80,6 @@ public abstract class FusionBaseController implements SecurityInterface {
private AppService appService;
@SuppressWarnings({ "unchecked", "rawtypes" })
- @ModelAttribute("menu")
public Map<String, Object> getMenu(HttpServletRequest request) {
HttpSession session = null;
Map<String, Object> model = new HashMap<>();
diff --git a/ecomp-sdk/epsdk-fw/src/test/java/org/onap/portalsdk/core/onboarding/util/AuthUtilTest.java b/ecomp-sdk/epsdk-fw/src/test/java/org/onap/portalsdk/core/onboarding/util/AuthUtilTest.java
new file mode 100644
index 00000000..35f0b026
--- /dev/null
+++ b/ecomp-sdk/epsdk-fw/src/test/java/org/onap/portalsdk/core/onboarding/util/AuthUtilTest.java
@@ -0,0 +1,106 @@
+/*
+ * ============LICENSE_START==========================================
+ * ONAP Portal SDK
+ * ===================================================================
+ * Copyright 2017 AT&T Intellectual Property. All rights reserved.
+ * ===================================================================
+ *
+ * Unless otherwise specified, all software contained herein is licensed
+ * under the Apache License, Version 2.0 (the "License");
+ * you may not use this software except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * Unless otherwise specified, all documentation contained herein is licensed
+ * under the Creative Commons License, Attribution 4.0 Intl. (the "License");
+ * you may not use this documentation except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://creativecommons.org/licenses/by/4.0/
+ *
+ * Unless required by applicable law or agreed to in writing, documentation
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * ============LICENSE_END============================================
+ *
+ *
+ */
+package org.onap.portalsdk.core.onboarding.util;
+
+import static org.junit.Assert.*;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import javax.servlet.http.HttpServletRequest;
+
+import org.junit.Test;
+import org.mockito.InjectMocks;
+import org.mockito.Mockito;
+import org.onap.aaf.cadi.CadiWrap;
+import org.onap.portalsdk.core.onboarding.exception.PortalAPIException;
+
+public class AuthUtilTest {
+
+ @InjectMocks
+ AuthUtil authUtil = new AuthUtil();
+
+ HttpServletRequest request = Mockito.mock(HttpServletRequest.class);
+
+ CadiWrap wrapReq = Mockito.mock(CadiWrap.class);
+
+ @Test
+ public void matchPatternTestSuccessCase1() {
+ assertTrue(AuthUtil.matchPattern("api/v3/test", "api/v3/*"));
+ }
+
+ @Test
+ public void matchPatternTestSuccessCase2() {
+ assertTrue(AuthUtil.matchPattern("test", "*"));
+ }
+
+ @Test
+ public void matchPatternTestSuccessCase3() {
+ assertTrue(AuthUtil.matchPattern("test", "test"));
+ }
+
+ @Test(expected = PortalAPIException.class)
+ public void isAccessAllowedExceptionTest() throws PortalAPIException {
+ Map<String, String> appCreds = new HashMap<>();
+ appCreds.put("username", "test");
+ appCreds.put("password", "test1");
+ AuthUtil.isAccessAllowed(request, "com.test", appCreds);
+ }
+
+ @Test
+ public void isAccessAllowedTest() throws PortalAPIException {
+ Mockito.when(request.getHeader("username")).thenReturn("test");
+ Mockito.when(request.getHeader("password")).thenReturn("test1");
+ Map<String, String> appCreds = new HashMap<>();
+ appCreds.put("username", "test");
+ appCreds.put("password", "test1");
+ assertTrue(AuthUtil.isAccessAllowed(request, "com.test", appCreds));
+ }
+
+ @Test
+ public void isAccessAllowedFalseTest() throws PortalAPIException {
+ Mockito.when(request.getHeader("username")).thenReturn("test");
+ Mockito.when(request.getHeader("password")).thenReturn("test1");
+ Map<String, String> appCreds = new HashMap<>();
+ appCreds.put("username", "test");
+ appCreds.put("password", "test123");
+ appCreds.put("appName", "testApp");
+ assertFalse(AuthUtil.isAccessAllowed(request, "com.test", appCreds));
+ }
+
+}
diff --git a/ecomp-sdk/epsdk-music/pom.xml b/ecomp-sdk/epsdk-music/pom.xml
index 513891c6..9c4a966b 100644
--- a/ecomp-sdk/epsdk-music/pom.xml
+++ b/ecomp-sdk/epsdk-music/pom.xml
@@ -120,7 +120,7 @@
<dependency>
<groupId>org.onap.music</groupId>
<artifactId>MUSIC</artifactId>
- <version>2.5.7</version>
+ <version>2.5.10-SNAPSHOT</version>
</dependency>
<!-- Mapper -->
diff --git a/ecomp-sdk/pom.xml b/ecomp-sdk/pom.xml
index 4710ad2f..6f718c59 100644
--- a/ecomp-sdk/pom.xml
+++ b/ecomp-sdk/pom.xml
@@ -34,7 +34,7 @@
<properties>
<encoding>UTF-8</encoding>
- <springframework.version>4.3.20.RELEASE</springframework.version>
+ <springframework.version>4.3.24.RELEASE</springframework.version>
<hibernate.version>4.3.11.Final</hibernate.version>
<skiptests>false</skiptests>
<nexusproxy>https://nexus.onap.org</nexusproxy>